<?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>184363</bug_id>
          
          <creation_ts>2018-04-06 12:38:33 -0700</creation_ts>
          <short_desc>Add support for Navigation Timing Level 2</short_desc>
          <delta_ts>2021-05-19 17:33:13 -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>WebCore Misc.</component>
          <version>Safari 11</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218996</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, WPTImpact</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>cvazac</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>bugmail</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>clint.stevenson3</cc>
    
    <cc>clopez</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>galpeter</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jakub.g.opensource</cc>
    
    <cc>japhet</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philipj</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1412449</commentid>
    <comment_count>0</comment_count>
    <who name="">cvazac</who>
    <bug_when>2018-04-06 12:38:33 -0700</bug_when>
    <thetext>While working on https://bugs.webkit.org/show_bug.cgi?id=175569, I found that there is not yet support for PerformanceNavigationTiming, aka performance.getEntriesByType(&apos;navigation&apos;).

Spec (editors draft):
https://w3c.github.io/navigation-timing

WPT results, see (&quot;nav2*&quot;):
https://wpt.fyi/navigation-timing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1503950</commentid>
    <comment_count>1</comment_count>
    <who name="Clint Stevenson">clint.stevenson3</who>
    <bug_when>2019-02-07 14:43:05 -0800</bug_when>
    <thetext>Seconded. We do have PerformanceTiming, but that&apos;s been deprecated since (2014?):
https://w3c.github.io/navigation-timing/#the-performancetiming-interface</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705753</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-09 10:12:01 -0800</bug_when>
    <thetext>&lt;rdar://problem/71197716&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719087</commentid>
    <comment_count>3</comment_count>
      <attachid>417477</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-01-12 12:23:49 -0800</bug_when>
    <thetext>Created attachment 417477
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719088</commentid>
    <comment_count>4</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-01-12 12:24:42 -0800</bug_when>
    <thetext>This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719183</commentid>
    <comment_count>5</comment_count>
      <attachid>417502</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-01-12 17:43:56 -0800</bug_when>
    <thetext>Created attachment 417502
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719192</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-01-12 20:02:41 -0800</bug_when>
    <thetext>Looks like the test failures are legitimate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719340</commentid>
    <comment_count>7</comment_count>
      <attachid>417502</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-01-13 10:40:24 -0800</bug_when>
    <thetext>Comment on attachment 417502
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        I noted that exposing transfer size is prolematic, and some of the tests for reading transfer size still fail.

Noticed a typo/spelling error (&quot;prolematic&quot;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729111</commentid>
    <comment_count>8</comment_count>
    <who name="Jakub G (dailymotion)">jakub.g.opensource</who>
    <bug_when>2021-02-15 03:35:40 -0800</bug_when>
    <thetext>Note (orthogonal but somehow related):

When shipping this, it would be great to also enable `serverTiming` which as far as I can tell is still disabled, both on `resource`-s and `navigation`-s.

https://bugs.webkit.org/show_bug.cgi?id=190609</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760394</commentid>
    <comment_count>9</comment_count>
      <attachid>428722</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-15 00:24:34 -0700</bug_when>
    <thetext>Created attachment 428722
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760395</commentid>
    <comment_count>10</comment_count>
      <attachid>428723</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-15 00:30:34 -0700</bug_when>
    <thetext>Created attachment 428723
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760418</commentid>
    <comment_count>11</comment_count>
      <attachid>428729</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-15 10:24:51 -0700</bug_when>
    <thetext>Created attachment 428729
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760426</commentid>
    <comment_count>12</comment_count>
      <attachid>428731</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-15 10:58:19 -0700</bug_when>
    <thetext>Created attachment 428731
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760477</commentid>
    <comment_count>13</comment_count>
      <attachid>428745</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-15 15:14:45 -0700</bug_when>
    <thetext>Created attachment 428745
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760988</commentid>
    <comment_count>14</comment_count>
      <attachid>428745</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-17 18:25:26 -0700</bug_when>
    <thetext>Comment on attachment 428745
Patch

Can we add a runtime flag for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761219</commentid>
    <comment_count>15</comment_count>
      <attachid>428956</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-18 11:09:47 -0700</bug_when>
    <thetext>Created attachment 428956
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761223</commentid>
    <comment_count>16</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-18 11:40:14 -0700</bug_when>
    <thetext>Good idea, Ryosuke.  I verified the experimental feature is off by default and can be turned on.  I turned it on for tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761268</commentid>
    <comment_count>17</comment_count>
      <attachid>428956</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-18 13:08:44 -0700</bug_when>
    <thetext>Comment on attachment 428956
Patch

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

&gt; Source/WebCore/dom/Document.cpp:1391
&gt;              m_documentTiming.domComplete = MonotonicTime::now();

How about calling MonotonicTime::now() above switch so that we can have the identical value for
m_documentTiming.domComplete and m_documentTiming.domInteractive in fall-through case?

&gt; Source/WebCore/loader/DocumentLoader.cpp:423
&gt; +    if (auto* document = this-&gt;document()) {

Use makeRefPtr?

&gt; Source/WebCore/loader/DocumentLoader.cpp:424
&gt; +        if (auto* domWindow = document-&gt;domWindow()) {

Ditto; also, why not check RuntimeEnabledFeatures here at the same time:
if (auto domWindow = makeRefPtr(document-&gt;domWindow()); RuntimeEnabledFeatures::sharedFeatures().performanceNavigationTimingAPIEnabled())

&gt; Source/WebCore/page/Performance.cpp:232
&gt; +    m_navigationTiming = PerformanceNavigationTiming::create(m_timeOrigin, resource, timing, metrics, document.timing(), document.securityOrigin(), documentLoader.triggeringAction().type());

Can we assert that the runtime flag is enabled here?

&gt; Source/WebCore/page/PerformanceNavigationTiming.cpp:65
&gt; +double PerformanceNavigationTiming::millisecondsSinceOrigin(MonotonicTime time, Optional&lt;MonotonicTime&gt; timeOrigin) const
&gt; +{
&gt; +    if (!time)
&gt; +        return 0;
&gt; +    return Performance::reduceTimeResolution(time - (timeOrigin ? *timeOrigin : m_timeOrigin)).milliseconds();
&gt; +}

Can we just use Performance::relativeTimeFromTimeOriginInReducedResolution?
We can make Performance inherit from CanMakeWeak.

&gt; Source/WebCore/page/PerformanceResourceTiming.cpp:105
&gt; -    if (!m_shouldReportDetails)
&gt; +    if (!m_resourceTiming.allowTimingDetails())

Do we also need to check redirect conditions here?

&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_redirect_chain_xserver_partial_opt_in-expected.txt:9
&gt; -
&gt; +FAIL Navigation Timing 2 WPT TypeError: undefined is not an object (evaluating &apos;frame_performance.getEntriesByType(&quot;navigation&quot;)[0].type&apos;)

Is this FAIL expected?

&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_redirect_server-expected.txt:8
&gt; +FAIL Navigation Timing 2 WPT Error: assert_true: Expected startTime to be no greater than redirectStart. expected true got false

Hm... maybe this test needs to be updated upstream?

&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_redirect_xserver-expected.txt:9
&gt; -
&gt; +FAIL Navigation Timing 2 WPT TypeError: undefined is not an object (evaluating &apos;performanceNamespace.getEntriesByType(&quot;navigation&quot;)[0].type&apos;)

Is this failure expected??

&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_unique_nav_instances-expected.txt:6
&gt; +FAIL Each window has a unique nav timing 2 instance. assert_equals: Only one nav timing instance exists. expected 1 but got 0

Looks like we&apos;re failing to insert navigation entry in iframe?
That seems to be the common theme with these failing tests.

&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/secure_connection_start_non_zero.https-expected.txt:6
&gt; -FAIL Test that secureConnectionStart is not zero undefined is not an object (evaluating &apos;entry.secureConnectionStart&apos;)
&gt; +FAIL Test that secureConnectionStart is not zero assert_greater_than: secureConnectionStart is non-zero expected a number greater than 0 but got 0

Why is this failing?

&gt; LayoutTests/imported/w3c/web-platform-tests/performance-timeline/supportedEntryTypes.any-expected.txt:3
&gt;  PASS supportedEntryTypes exists and returns entries in alphabetical order
&gt; +FAIL supportedEntryTypes caches result assert_true: expected true got false

Huh, I think we need [CachedAttribute] on supportedEntryTypes.

&gt; LayoutTests/imported/w3c/web-platform-tests/performance-timeline/supportedEntryTypes.any.worker-expected.txt:3
&gt; +FAIL supportedEntryTypes caches result assert_true: expected true got false

Same issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761289</commentid>
    <comment_count>18</comment_count>
      <attachid>428956</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-18 13:39:30 -0700</bug_when>
    <thetext>Comment on attachment 428956
Patch

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

&gt;&gt; Source/WebCore/dom/Document.cpp:1391
&gt;&gt;              m_documentTiming.domComplete = MonotonicTime::now();
&gt; 
&gt; How about calling MonotonicTime::now() above switch so that we can have the identical value for
&gt; m_documentTiming.domComplete and m_documentTiming.domInteractive in fall-through case?

Great idea.

&gt;&gt; Source/WebCore/loader/DocumentLoader.cpp:424
&gt;&gt; +        if (auto* domWindow = document-&gt;domWindow()) {
&gt; 
&gt; Ditto; also, why not check RuntimeEnabledFeatures here at the same time:
&gt; if (auto domWindow = makeRefPtr(document-&gt;domWindow()); RuntimeEnabledFeatures::sharedFeatures().performanceNavigationTimingAPIEnabled())

That doesn&apos;t null check domWindow.  I&apos;d need a &quot;domWindow &amp;&amp; &quot; after the semicolon

&gt;&gt; Source/WebCore/page/Performance.cpp:232
&gt;&gt; +    m_navigationTiming = PerformanceNavigationTiming::create(m_timeOrigin, resource, timing, metrics, document.timing(), document.securityOrigin(), documentLoader.triggeringAction().type());
&gt; 
&gt; Can we assert that the runtime flag is enabled here?

Good idea.

&gt;&gt; Source/WebCore/page/PerformanceNavigationTiming.cpp:65
&gt;&gt; +}
&gt; 
&gt; Can we just use Performance::relativeTimeFromTimeOriginInReducedResolution?
&gt; We can make Performance inherit from CanMakeWeak.

No, that uses Performance::m_timeOrigin, not PerformanceNavigationTiming::m_timeOrigin.
I need to redo all our time origins I think.

&gt;&gt; Source/WebCore/page/PerformanceResourceTiming.cpp:105
&gt;&gt; +    if (!m_resourceTiming.allowTimingDetails())
&gt; 
&gt; Do we also need to check redirect conditions here?

possibly.  That should be its own change, though.

&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_redirect_chain_xserver_partial_opt_in-expected.txt:9
&gt;&gt; +FAIL Navigation Timing 2 WPT TypeError: undefined is not an object (evaluating &apos;frame_performance.getEntriesByType(&quot;navigation&quot;)[0].type&apos;)
&gt; 
&gt; Is this FAIL expected?

Yes.  As explained in the change log, this uses www.localhost, which our test infrastructure doesn&apos;t support.

&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_redirect_xserver-expected.txt:9
&gt;&gt; +FAIL Navigation Timing 2 WPT TypeError: undefined is not an object (evaluating &apos;performanceNamespace.getEntriesByType(&quot;navigation&quot;)[0].type&apos;)
&gt; 
&gt; Is this failure expected??

ditto

&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/nav2_test_unique_nav_instances-expected.txt:6
&gt;&gt; +FAIL Each window has a unique nav timing 2 instance. assert_equals: Only one nav timing instance exists. expected 1 but got 0
&gt; 
&gt; Looks like we&apos;re failing to insert navigation entry in iframe?
&gt; That seems to be the common theme with these failing tests.

That&apos;s the part of this that is yet to be implemented.

&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/navigation-timing/secure_connection_start_non_zero.https-expected.txt:6
&gt;&gt; +FAIL Test that secureConnectionStart is not zero assert_greater_than: secureConnectionStart is non-zero expected a number greater than 0 but got 0
&gt; 
&gt; Why is this failing?

This is flaky.  It assumes there&apos;s no reused connection at the beginning of the test, which isn&apos;t a good assumption in our test infrastructure.  I have an idea how to do a bunch of &quot;Connection: close&quot; responses before this to clear out any cached connections there may be, but I&apos;m planning to upstream that separately if it does work.  I wanted to leave all the tests as they are upstream in this import/implementation.

&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/performance-timeline/supportedEntryTypes.any-expected.txt:3
&gt;&gt; +FAIL supportedEntryTypes caches result assert_true: expected true got false
&gt; 
&gt; Huh, I think we need [CachedAttribute] on supportedEntryTypes.

And we need to change our bindings generator to do it right on a static attribute like this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761322</commentid>
    <comment_count>19</comment_count>
      <attachid>428956</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-18 14:40:33 -0700</bug_when>
    <thetext>Comment on attachment 428956
Patch

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

&gt;&gt;&gt; Source/WebCore/dom/Document.cpp:1391
&gt;&gt;&gt;              m_documentTiming.domComplete = MonotonicTime::now();
&gt;&gt; 
&gt;&gt; How about calling MonotonicTime::now() above switch so that we can have the identical value for
&gt;&gt; m_documentTiming.domComplete and m_documentTiming.domInteractive in fall-through case?
&gt; 
&gt; Great idea.

I think that may increase the calls to MonotonicTime::now, which would mildly hurt performance.
I&apos;m going to keep this as it is since it is quite rare for both calls to be hit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761334</commentid>
    <comment_count>20</comment_count>
      <attachid>428984</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-18 15:05:20 -0700</bug_when>
    <thetext>Created attachment 428984
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761335</commentid>
    <comment_count>21</comment_count>
      <attachid>428985</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-18 15:06:21 -0700</bug_when>
    <thetext>Created attachment 428985
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761356</commentid>
    <comment_count>22</comment_count>
      <attachid>428985</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-05-18 16:14:56 -0700</bug_when>
    <thetext>Comment on attachment 428985
Patch

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

&gt; Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml:789
&gt; +  webcoreBinding: RuntimeEnabledFeatures

If this can be made a Setting, please use that instead. I am working on removing RuntimeEnabledFeatures and adding more just increases that work. If Setting won&apos;t work for this, that&apos;s ok, just please let me know what issue you ran into so I can try to fix that.

&gt; Tools/DumpRenderTree/TestOptions.cpp:95
&gt; +            { &quot;PerformanceNavigationTimingAPIEnabled&quot;, true },

This is not necessary. All Experimental features are on by default in the tests. (except in Windows DRT, so you may have to add it below to keep the windows bots happy).

&gt; Tools/WebKitTestRunner/TestOptions.cpp:105
&gt; +            { &quot;PerformanceNavigationTimingAPIEnabled&quot;, true },

This is not necessary. All Experimental features are on by default in the tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761562</commentid>
    <comment_count>23</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-19 09:51:46 -0700</bug_when>
    <thetext>Aha!
It might be worth renaming RuntimeEnabledFeatures to DeprecatedRuntimeEnabledFeatures</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761577</commentid>
    <comment_count>24</comment_count>
      <attachid>429059</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-19 10:11:11 -0700</bug_when>
    <thetext>Created attachment 429059
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761590</commentid>
    <comment_count>25</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-05-19 10:25:40 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #23)
&gt; Aha!
&gt; It might be worth renaming RuntimeEnabledFeatures to
&gt; DeprecatedRuntimeEnabledFeatures

Good point. Will do (and merge with the other similar named one).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761654</commentid>
    <comment_count>26</comment_count>
      <attachid>429085</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-19 12:30:34 -0700</bug_when>
    <thetext>Created attachment 429085
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761793</commentid>
    <comment_count>27</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-19 17:33:13 -0700</bug_when>
    <thetext>r277767</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417477</attachid>
            <date>2021-01-12 12:23:49 -0800</date>
            <delta_ts>2021-01-12 17:43:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210112122348.patch</filename>
            <type>text/plain</type>
            <size>167057</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3MTM4MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEwMyBAQAorMjAyMS0wMS0xMiAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBw
b3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3IHNo
YXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5uYXZp
Z2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVzdCBv
ZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQgaGF2
ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2aWdh
dGlvbi4KKworICAgICAgICBUaW1pbmctQWxsb3ctT3JpZ2luIGlzIG5vdCBpbXBsZW1lbnRlZCB5
ZXQsIHNvIHNvbWUgb2YgdGhlIGNyb3NzLXNlcnZlciByZWRpcmVjdCB0ZXN0cyBzdGlsbCBmYWls
LgorICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBpcyBwcm9sZW1h
dGljLCBhbmQgc29tZSBvZiB0aGUgdGVzdHMgZm9yIHJlYWRpbmcgdHJhbnNmZXIgc2l6ZSBzdGls
bCBmYWlsLgorICAgICAgICBSZWRpcmVjdCB0aW1pbmcgd2FzIG5vdCBleHBvc2VkLCBhbmQgdGhp
cyBwYXRjaCBpcyBub3QgaW50ZW5kZWQgdG8gZXhwb3NlIG5ldyBpbmZvcm1hdGlvbiwgc28gSSBs
ZWF2ZSBmaXhpbmcgdGhvc2UgdGVzdHMgZm9yIGEgZnV0dXJlIHBhdGNoLgorICAgICAgICBBY2Nl
c3NpbmcgdGhlIG5hdmlnYXRpb24gdGltaW5nIGluc2lkZSBvbmxvYWQgZG9lc24ndCB3b3JrIHll
dCBhbmQgdGhlcmUgYXJlIGEgZmV3IHNtYWxsIHF1aXJrcyB5ZXQgdG8gYmUgZml4ZWQKKyAgICAg
ICAgbGlrZSB3aGV0aGVyIHN1cHBvcnRlZEVudHJ5VHlwZXMgPT09IHRoZSByZXN1bHQgb2YgYW5v
dGhlciBjYWxsIHRvIHN1cHBvcnRlZEVudHJ5VHlwZXMgaW5zdGVhZCBvZiBqdXN0ID09LCBidXQg
b3RoZXIgdGhhbiB0aGF0IGl0IHNob3VsZCBiZSBnb29kIHRvIGdvLgorCisgICAgICAgIFRlc3Rz
OiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9t
ZWRpYV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0
bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
ZV9pZnJhbWUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRl
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3Jp
Z2luYWxfb3JpZ2luLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAorICAgICAgICAgICAg
ICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1u
YXZpZ2F0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0
cHMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dl
dC1pbnZhbGlkLWVudHJpZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAorICAg
ICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1vYnNlcnZlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAorICAg
ICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAg
ICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdz
L2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pT
TmV3bHlDcmVhdGVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnQ6OnNldFJlYWR5U3RhdGUpOgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVu
dExvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bm90aWZ5Rmlu
aXNoZWQpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZVRpbWluZy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQpOgorICAgICAgICAqIHBhZ2UvUGVyZm9y
bWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXMgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5cGUgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVkRW50cmll
c0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6YWRkTmF2aWdh
dGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6cmVnaXN0ZXJQZXJm
b3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpxdWV1ZUVu
dHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJZk5lZWRl
ZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAgICAgICAqIHBhZ2UvUGVyZm9y
bWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeTo6aXNSZXNv
dXJjZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5
Ojppc01hcmsgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VF
bnRyeTo6aXNNZWFzdXJlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlRW50cnk6OmlzUGFpbnQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2VNYXJrLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAgICAqIHBh
Z2UvUGVyZm9ybWFuY2VNZWFzdXJlLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBl
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6UGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4gY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0IGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5s
b2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29u
dGVudExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5
cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
OjpyZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5pZGw6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3Jkcyk6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIpOgorICAgICAgICAo
V2ViQ29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6c3VwcG9ydGVkRW50cnlUeXBlcyk6CisgICAg
ICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmg6CisgICAgICAgICogcGFnZS9QZXJmb3Jt
YW5jZU9ic2VydmVyLmlkbDoKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRy
eUxpc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlz
dDo6Z2V0RW50cmllc0J5TmFtZSBjb25zdCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVBh
aW50VGltaW5nLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKToKKyAgICAgICAg
KiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaDoKKyAgICAgICAgKGlzVHlwZSk6IERl
bGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbDoKKwog
MjAyMS0wMS0xMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgog
CiAgICAgICAgIFVzZSBzZW5kV2l0aEFzeW5jUmVwbHkgaW5zdGVhZCBvZiBkYXRhQ2FsbGJhY2sg
Zm9yIGljb24gbG9hZGluZwpJbmRleDogU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQJKHJldmlzaW9uIDI3MTM4
MykKKysrIFNvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0x
MTIyLDYgKzExMjIsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIHBhZ2Uv
UGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlckVudHJ5TGlzdC5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwKKyAg
ICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKICAgICBwYWdlL1BlcmZvcm1h
bmNlUGFpbnRUaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlk
bAogICAgIHBhZ2UvUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmcuaWRsCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QJKHJldmlzaW9uIDI3MTM4
MykKKysrIFNvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QJKHdv
cmtpbmcgY29weSkKQEAgLTExMDAsNiArMTEwMCw3IEBAICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVy
Zm9ybWFuY2VNYXJrT3B0aW8KICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJl
LmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbAog
JChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCiskKFBST0pFQ1Rf
RElSKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKICQoUFJPSkVDVF9ESVIp
L3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9y
bWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5j
ZU9ic2VydmVyRW50cnlMaXN0LmlkbApJbmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMtb3V0cHV0LnhjZmlsZWxpc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QJKHJldmlzaW9uIDI3MTM4MykKKysrIFNvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CSh3b3JraW5nIGNvcHkpCkBA
IC0xNTY5LDYgKzE1NjksOCBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZv
cm1hbmNlTWVhc3VyZU9wdGlvbnMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCiAkKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5oCisk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFu
Y2VPYnNlcnZlci5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQkocmV2aXNpb24gMjcxMzgzKQorKysgU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQkod29ya2luZyBjb3B5KQpAQCAtMTAzNiw2ICsxMDM2LDcgQEAgSlNfQklO
RElOR19JRExTIDo9IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmlk
bCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZU9wdGlvbnMuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCBcCisgICAgJChX
ZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwgXAogICAgICQoV2Vi
Q29yZSkvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAkocmV2
aXNpb24gMjcxMzgzKQorKysgU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQJKHdvcmtpbmcgY29w
eSkKQEAgLTE3MTAsNiArMTcxMCw3IEBAIHBhZ2UvUGVyZm9ybWFuY2VNYXJrLmNwcAogcGFnZS9Q
ZXJmb3JtYW5jZU1lYXN1cmUuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTW9uaXRvci5jcHAKIHBhZ2Uv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJFbnRyeUxpc3QuY3BwCiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBA
IC0zMjg5LDYgKzMyOTAsNyBAQCBKU1BlcmZvcm1hbmNlTWFya09wdGlvbnMuY3BwCiBKU1BlcmZv
cm1hbmNlTWVhc3VyZS5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5jcHAKIEpTUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorSlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3Bw
CiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFj
ay5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9u
IDI3MTQxMCkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTU4MDgsNiArMTU4MDgsOSBAQAogCQlERUNBN0ZGNDFG
OUZFOUI5MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1NS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU1LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjU1LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCURFQ0E3RkY1MUY5RkU5QkEwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjU2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNTYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNTYuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJREYxOUUyQUEyNDc3MjlBNjAwN0JEQUNCIC8qIFNo
b3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA0MjVBOTg0QzgwMDVEREI4QyAvKiBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREYz
NjVEMDYyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY0RTM4REMyNTI3OTU5MzAwMkE3NDgx
IC8qIFZlcnNpb25DaGVja3MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBWZXJzaW9uQ2hlY2tzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjRF
MzhERTI1Mjc5NTk0MDAyQTc0ODEgLyogVmVyc2lvbkNoZWNrcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBWZXJzaW9uQ2hlY2tzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCURGN0U5QTI5NEM3QUFDRTBBRDg5QjNERCAvKiBNYXRoTUxPcGVyYXRvckRpY3Rpb25h
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MT3BlcmF0b3JEaWN0
aW9uYXJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMjE1Niw2ICsyMjE1OSw5
IEBACiAJCQkJOEFGNEU1NTIxMURDNUEzNjAwMEVEM0RFIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlv
bi5jcHAgKi8sCiAJCQkJOEFGNEU1NTMxMURDNUEzNjAwMEVEM0RFIC8qIFBlcmZvcm1hbmNlTmF2
aWdhdGlvbi5oICovLAogCQkJCThBRjRFNTU0MTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5j
ZU5hdmlnYXRpb24uaWRsICovLAorCQkJCURGMzY1RDA0MjVBOTg0QzgwMDVEREI4QyAvKiBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwICovLAorCQkJCURGMzY1RDA2MjVBOTg0QzgwMDVE
REI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCAqLywKKwkJCQlERjM2NUQwNzI1
QTk4NEM5MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCAqLywKIAkJ
CQlBNUE5OTMzNTFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAgKi8s
CiAJCQkJQTVBOTkzMzYxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaCAq
LywKIAkJCQlBNUE5OTMzNzFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlci5p
ZGwgKi8sCkBAIC0zMzA0Niw3ICszMzA1Miw2IEBACiAJCQkJRTQ0NjE0MTkwQ0Q2ODI2OTAwRkFE
QTc1IC8qIEpTTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RGNzU2QTMyMTVDMjlF
OTAwRUZDQjUwIC8qIEpTTWVkaWFLZXlFbmNyeXB0aW9uU2NoZW1lLmggaW4gSGVhZGVycyAqLywK
IAkJCQkyRDlCRjcyODFEQkZEQjBEMDA3QTdEOTkgLyogSlNNZWRpYUtleU1lc3NhZ2VFdmVudC5o
IGluIEhlYWRlcnMgKi8sCi0JCQkJRTQ0MEZENTMyNUE0QUZERjAwRjdDODQ5IC8qIE1hcmtlZFRl
eHRTdHlsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5QkY3MjkxREJGREIxMDAwN0E3RDk5IC8q
IEpTTWVkaWFLZXlzLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDlCRjcyQTFEQkZEQjEzMDA3QTdE
OTkgLyogSlNNZWRpYUtleVNlc3Npb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUNERjRCNzFFMUUw
MUUxMUEwMEUyMzVBMiAvKiBKU01lZGlhS2V5U2Vzc2lvblR5cGUuaCBpbiBIZWFkZXJzICovLApA
QCAtMzM2MTMsNiArMzM2MTgsNyBAQAogCQkJCTdBRTZDOTNDMUJFMEM2MDEwMEUxOUUwMyAvKiBN
YWluVGhyZWFkU2hhcmVkVGltZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0NTFDNjMyMjM5NDAz
MUEwMDk5MzE5MCAvKiBNYXJnaW5UeXBlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0UxODY2NDUx
RjcyRTVCNDAwQTBDQUI2IC8qIE1hcmtlZFRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDBG
RDUzMjVBNEFGREYwMEY3Qzg0OSAvKiBNYXJrZWRUZXh0U3R5bGUuaCBpbiBIZWFkZXJzICovLAog
CQkJCTkzMzA5REY4MDk5RTY0OTIwMDU2RTU4MSAvKiBtYXJrdXAuaCBpbiBIZWFkZXJzICovLAog
CQkJCTk3MjhDMzE0MTI2OEU0MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1bXVsYXRvci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMDBDNjBFM0YxM0Q3NkQ3RTAwOTJBMjc1IC8qIE1hcmt1cFRva2VuaXpl
cklubGluZXMuaCBpbiBIZWFkZXJzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCShyZXZpc2lvbiAy
NzEzODMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlD
dXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxMCArMzUsMTIgQEAKICNpbmNsdWRlICJK
U0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUg
IkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCIKICNpbmNs
dWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5j
ZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUuaCIKKyNpbmNsdWRlICJQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVBhaW50VGlt
aW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgogCkBAIC00OCwx
OCArNTAsMjAgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogSlNWYWx1ZSB0b0pTTmV3bHlDcmVh
dGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUmVm
PFBlcmZvcm1hbmNlRW50cnk+JiYgZW50cnkpCiB7Ci0gICAgaWYgKGlzPFBlcmZvcm1hbmNlUGFp
bnRUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFu
Y2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAo
aXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZW50cnkpKQotICAgICAgICByZXR1cm4gY3Jl
YXRlV3JhcHBlcjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmplY3QsIFdURk1v
dmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1hcms+KGVudHJ5KSkKKyAgICBz
d2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSB7CisgICAgY2FzZSBQZXJmb3Jt
YW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uOgorICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBl
cjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRy
eSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TWFyazoKICAgICAgICAgcmV0
dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VNYXJrPihnbG9iYWxPYmplY3QsIFdURk1vdmUo
ZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1lYXN1cmU+KGVudHJ5KSkKKyAgICBj
YXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1lYXN1cmU6CiAgICAgICAgIHJldHVybiBjcmVh
dGVXcmFwcGVyPFBlcmZvcm1hbmNlTWVhc3VyZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5
KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpSZXNvdXJjZToKKyAgICAgICAg
cmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpQ
YWludDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VQYWludFRpbWlu
Zz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgfQogCisgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VFbnRyeT4o
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmNwcAkocmV2aXNpb24gMjcxMzgzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM1NywxMyArMTM1NywxMyBAQCB2b2lkIERvY3VtZW50
OjpzZXRSZWFkeVN0YXRlKFJlYWR5U3RhdGUgCiAgICAgICAgIGlmICghbV9kb2N1bWVudFRpbWlu
Zy5kb21Mb2FkaW5nKQogICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21Mb2FkaW5nID0g
TW9ub3RvbmljVGltZTo6bm93KCk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgSW50ZXJhY3Rp
dmU6Ci0gICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKLSAgICAg
ICAgICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpu
b3coKTsKLSAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb21wbGV0ZToKICAgICAgICAgaWYgKCFt
X2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlKQogICAgICAgICAgICAgbV9kb2N1bWVudFRpbWlu
Zy5kb21Db21wbGV0ZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOworICAgICAgICBGQUxMVEhST1VH
SDsKKyAgICBjYXNlIEludGVyYWN0aXZlOgorICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcu
ZG9tSW50ZXJhY3RpdmUpCisgICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0
aXZlID0gTW9ub3RvbmljVGltZTo6bm93KCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApJbmRl
eDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCShyZXZpc2lvbiAyNzEz
ODMpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC03Miw2ICs3Miw3IEBACiAjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgi
CiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgor
I2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSAiUGluZ0xvYWRlci5oIgogI2luY2x1
ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgogI2luY2x1ZGUgIlBvbGljeUNoZWNrZXIuaCIKQEAg
LTQxMCw3ICs0MTEsNyBAQCBib29sIERvY3VtZW50TG9hZGVyOjppc0xvYWRpbmcoKSBjb25zdAog
ICAgIHJldHVybiBpc0xvYWRpbmdNYWluUmVzb3VyY2UoKSB8fCAhbV9zdWJyZXNvdXJjZUxvYWRl
cnMuaXNFbXB0eSgpIHx8ICFtX3BsdWdJblN0cmVhbUxvYWRlcnMuaXNFbXB0eSgpOwogfQogCi12
b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3Vy
Y2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCit2b2lkIERvY3VtZW50TG9hZGVyOjpub3Rp
ZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbWV0cmljcykKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogI2lmIEVOQUJM
RShDT05URU5UX0ZJTFRFUklORykKQEAgLTQxOCw2ICs0MTksMTEgQEAgdm9pZCBEb2N1bWVudExv
YWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaAogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAorICAg
IGlmIChhdXRvKiBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgaWYgKGF1
dG8qIGRvbVdpbmRvdyA9IGRvY3VtZW50LT5kb21XaW5kb3coKSkKKyAgICAgICAgICAgIGRvbVdp
bmRvdy0+cGVyZm9ybWFuY2UoKS5hZGROYXZpZ2F0aW9uVGltaW5nKCp0aGlzLCAqZG9jdW1lbnQs
IHJlc291cmNlLCB0aW1pbmcoKSwgbWV0cmljcyk7CisgICAgfQorCiAgICAgQVNTRVJUX1VOVVNF
RChyZXNvdXJjZSwgbV9tYWluUmVzb3VyY2UgPT0gJnJlc291cmNlKTsKICAgICBBU1NFUlQobV9t
YWluUmVzb3VyY2UpOwogICAgIGlmICghbV9tYWluUmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAm
JiAhbV9tYWluUmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
bG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAkocmV2aXNpb24gMjcxMzgzKQorKysgU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjQsNyAr
NjQsNyBAQCBSZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbUNhY2hlCiAKIFJlc291
cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3Vy
Y2UsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5n
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2Vj
dXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQogewotICAgIHJldHVybiBSZXNvdXJjZVRpbWlu
ZyhyZXNvdXJjZS5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKSwgaW5pdGlhdG9yLCBsb2FkVGltaW5n
LCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2lu
KTsKKyAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcocmVzb3VyY2UucmVzcG9uc2UoKS51cmwoKSwg
aW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3Bv
bnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKIH0KIAogUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1p
bmc6OmZyb21TeW5jaHJvbm91c0xvYWQoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgaW5p
dGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBzZWN1cml0eU9yaWdpbikKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2UuY3BwCShyZXZpc2lvbiAyNzEzODMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIsNiArNDIsNyBAQAog
I2luY2x1ZGUgIlBlcmZvcm1hbmNlTWFya09wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5j
ZU1lYXN1cmVPcHRpb25zLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgiCisj
aW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9y
bWFuY2VPYnNlcnZlci5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCkBAIC0xMjQsNiArMTI1LDkgQEAg
VmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybQogewogICAgIFZlY3RvcjxS
ZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9u
VGltaW5nKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAg
ICAgZW50cmllcy5hcHBlbmRWZWN0b3IobV9yZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKICAgICBp
ZiAobV91c2VyVGltaW5nKSB7CkBAIC0xNDIsNiArMTQ2LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5Pj4gUGVyZm9ybQogewogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlw
ZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRp
bWluZyk7CisgICAgCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBl
bnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMTg2LDYg
KzE5Myw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm0KIAogdm9p
ZCBQZXJmb3JtYW5jZTo6YXBwZW5kQnVmZmVyZWRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYg
ZW50cnlUeXBlLCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiYgZW50cmllcykgY29u
c3QKIHsKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlwZSA9PSAibmF2aWdh
dGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAg
ICBpZiAoZW50cnlUeXBlID09ICJyZXNvdXJjZSIpCiAgICAgICAgIGVudHJpZXMuYXBwZW5kVmVj
dG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCkBAIC0yMTYsNiArMjI2LDEzIEBAIHZvaWQg
UGVyZm9ybWFuY2U6OnJlcG9ydEZpcnN0Q29udGVudGZ1bFAKICAgICBxdWV1ZUVudHJ5KCptX2Zp
cnN0Q29udGVudGZ1bFBhaW50KTsKIH0KIAordm9pZCBQZXJmb3JtYW5jZTo6YWRkTmF2aWdhdGlv
blRpbWluZyhEb2N1bWVudExvYWRlciYgZG9jdW1lbnRMb2FkZXIsIERvY3VtZW50JiBkb2N1bWVu
dCwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBMb2FkVGltaW5nJiB0aW1pbmcsIGNv
bnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKK3sKKyAgICBBU1NFUlQoIW1fbmF2aWdh
dGlvblRpbWluZyk7CisgICAgbV9uYXZpZ2F0aW9uVGltaW5nID0gUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOjpjcmVhdGUobV90aW1lT3JpZ2luLCByZXNvdXJjZSwgdGltaW5nLCBtZXRyaWNz
LCBkb2N1bWVudC50aW1pbmcoKSwgZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRM
b2FkZXIudHJpZ2dlcmluZ0FjdGlvbigpLnR5cGUoKSk7CisgICAgcXVldWVFbnRyeSgqbV9uYXZp
Z2F0aW9uVGltaW5nKTsKK30KKwogdm9pZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VUaW1pbmco
UmVzb3VyY2VUaW1pbmcmJiByZXNvdXJjZVRpbWluZykKIHsKICAgICBBU1NFUlQoc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCgpKTsKQEAgLTM0OCw2ICszNjUsMTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6
cmVtb3ZlQWxsT2JzZXJ2ZXJzKCkKIHZvaWQgUGVyZm9ybWFuY2U6OnJlZ2lzdGVyUGVyZm9ybWFu
Y2VPYnNlcnZlcihQZXJmb3JtYW5jZU9ic2VydmVyJiBvYnNlcnZlcikKIHsKICAgICBtX29ic2Vy
dmVycy5hZGQoJm9ic2VydmVyKTsKKworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgb2Jz
ZXJ2ZXIudHlwZUZpbHRlcigpLmNvbnRhaW5zKFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok5hdmln
YXRpb24pKSB7CisgICAgICAgIG9ic2VydmVyLnF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWlu
Zyk7CisgICAgICAgIHNjaGVkdWxlVGFza0lmTmVlZGVkKCk7CisgICAgfQogfQogCiB2b2lkIFBl
cmZvcm1hbmNlOjp1bnJlZ2lzdGVyUGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5jZU9ic2Vy
dmVyJiBvYnNlcnZlcikKQEAgLTM1OSw3ICszODEsNyBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1
ZUVudHJ5KFBlcmZvcm1hbmNlCiB7CiAgICAgYm9vbCBzaG91bGRTY2hlZHVsZVRhc2sgPSBmYWxz
ZTsKICAgICBmb3IgKGF1dG8mIG9ic2VydmVyIDogbV9vYnNlcnZlcnMpIHsKLSAgICAgICAgaWYg
KG9ic2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkudHlwZSgpKSkgeworICAgICAg
ICBpZiAob2JzZXJ2ZXItPnR5cGVGaWx0ZXIoKS5jb250YWlucyhlbnRyeS5wZXJmb3JtYW5jZUVu
dHJ5VHlwZSgpKSkgewogICAgICAgICAgICAgb2JzZXJ2ZXItPnF1ZXVlRW50cnkoZW50cnkpOwog
ICAgICAgICAgICAgc2hvdWxkU2NoZWR1bGVUYXNrID0gdHJ1ZTsKICAgICAgICAgfQpAQCAtMzY3
LDcgKzM4OSwxMiBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlCiAK
ICAgICBpZiAoIXNob3VsZFNjaGVkdWxlVGFzaykKICAgICAgICAgcmV0dXJuOworICAgIAorICAg
IHNjaGVkdWxlVGFza0lmTmVlZGVkKCk7Cit9CiAKK3ZvaWQgUGVyZm9ybWFuY2U6OnNjaGVkdWxl
VGFza0lmTmVlZGVkKCkKK3sKICAgICBpZiAobV9wZXJmb3JtYW5jZVRpbWVsaW5lVGFza1F1ZXVl
Lmhhc1BlbmRpbmdUYXNrcygpKQogICAgICAgICByZXR1cm47CiAKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlLmgJKHJldmlzaW9uIDI3MTM4MykKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2UuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsMTIgKzQ3LDE3IEBAIGNsYXNzIEpT
R2xvYmFsT2JqZWN0OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291
cmNlOworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRU
aW1pbmc7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJpY3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJU
aW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZUVudHJ5OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwog
Y2xhc3MgUGVyZm9ybWFuY2VNZWFzdXJlOwogY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOwor
Y2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNl
cnZlcjsKIGNsYXNzIFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRp
bWluZzsKQEAgLTg5LDYgKzk0LDcgQEAgcHVibGljOgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJm
b3JtYW5jZU1lYXN1cmU+PiBtZWFzdXJlKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJp
bmcmIG1lYXN1cmVOYW1lLCBPcHRpb25hbDxTdGFydE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0
IFN0cmluZyYgZW5kTWFyayk7CiAgICAgdm9pZCBjbGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYg
bWVhc3VyZU5hbWUpOwogCisgICAgdm9pZCBhZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9h
ZGVyJiwgRG9jdW1lbnQmLCBDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25z
dCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291
cmNlVGltaW5nJiYpOwogCiAgICAgdm9pZCByZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpA
QCAtMTIwLDYgKzEyNiw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZl
ckZ1bGxUaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRy
eSYpOworICAgIHZvaWQgc2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVm
UHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVm
UHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3RpbWluZzsKQEAgLTEzNyw2ICsxNDQsNyBAQCBwcml2
YXRlOgogCiAgICAgTW9ub3RvbmljVGltZSBtX3RpbWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBtX25hdmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRy
PFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+IG1fZmlyc3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPFBlcmZvcm1hbmNlVXNlclRpbWluZz4gbV91c2VyVGltaW5nOwogCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAkocmV2aXNpb24gMjcxMzgzKQor
KysgU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ3LDcgKzQ3LDcgQEAgcHVibGljOgogICAgIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7
IHJldHVybiBtX3N0YXJ0VGltZTsgfQogICAgIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fZHVyYXRpb247IH0KIAotICAgIGVudW0gY2xhc3MgVHlwZSB7CisgICAgZW51bSBjbGFz
cyBUeXBlIDogdWludDhfdCB7CiAgICAgICAgIE5hdmlnYXRpb24gID0gMSA8PCAwLAogICAgICAg
ICBNYXJrICAgICAgICA9IDEgPDwgMSwKICAgICAgICAgTWVhc3VyZSAgICAgPSAxIDw8IDIsCkBA
IC01NSwxNiArNTUsMTEgQEAgcHVibGljOgogICAgICAgICBQYWludCAgICAgICA9IDEgPDwgNAog
ICAgIH07CiAKLSAgICB2aXJ0dWFsIFR5cGUgdHlwZSgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBBU0NJ
SUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgPSAwOwogCiAgICAgc3RhdGljIE9wdGlvbmFsPFR5
cGU+IHBhcnNlRW50cnlUeXBlU3RyaW5nKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKIAotICAg
IGJvb2wgaXNSZXNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpSZXNvdXJj
ZTsgfQotICAgIGJvb2wgaXNNYXJrKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6Ok1h
cms7IH0KLSAgICBib29sIGlzTWVhc3VyZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBl
OjpNZWFzdXJlOyB9Ci0gICAgYm9vbCBpc1BhaW50KCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09
IFR5cGU6OlBhaW50OyB9Ci0KICAgICBzdGF0aWMgYm9vbCBzdGFydFRpbWVDb21wYXJlTGVzc1Ro
YW4oY29uc3QgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+JiBhLCBjb25zdCBSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeT4mIGIpCiAgICAgewogICAgICAgICByZXR1cm4gYS0+c3RhcnRUaW1lKCkgPCBi
LT5zdGFydFRpbWUoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJr
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaAko
cmV2aXNpb24gMjcxMzgzKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsu
aAkod29ya2luZyBjb3B5KQpAQCAtNDgsMTQgKzQ4LDEwIEBAIHByaXZhdGU6CiAgICAgUGVyZm9y
bWFuY2VNYXJrKGNvbnN0IFN0cmluZyYgbmFtZSwgZG91YmxlIHN0YXJ0VGltZSwgUmVmPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4mJik7CiAgICAgflBlcmZvcm1hbmNlTWFyaygpOwogCi0gICAgVHlw
ZSB0eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWFyazsgfQorICAgIFR5cGUgcGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJrOyB9CiAg
ICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJtYXJrIl9z
OyB9CiAKICAgICBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBtX3NlcmlhbGl6ZWREZXRhaWw7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNf
QkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VNYXJrKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShj
b25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNN
YXJrKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAkocmV2aXNpb24gMjcxMzgzKQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAkod29ya2luZyBjb3B5KQpAQCAtNDgs
MTQgKzQ4LDEwIEBAIHByaXZhdGU6CiAgICAgUGVyZm9ybWFuY2VNZWFzdXJlKGNvbnN0IFN0cmlu
ZyYgbmFtZSwgZG91YmxlIHN0YXJ0VGltZSwgZG91YmxlIGVuZFRpbWUsIFJlZjxTZXJpYWxpemVk
U2NyaXB0VmFsdWU+JiYgZGV0YWlsKTsKICAgICB+UGVyZm9ybWFuY2VNZWFzdXJlKCk7CiAKLSAg
ICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNZWFzdXJlOyB9CisgICAg
VHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1l
YXN1cmU7IH0KICAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gIm1lYXN1cmUiX3M7IH0KIAogICAgIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1fc2Vy
aWFsaXplZERldGFpbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTEla
RV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZU1lYXN1cmUpCi0gICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7
IHJldHVybiBlbnRyeS5pc01lYXN1cmUoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQo
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmNwcAkobm9uZXhpc3RlbnQpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMTcg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJjb25m
aWcuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKKworI2luY2x1
ZGUgIkNhY2hlZFJlc291cmNlLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VUaW1pbmcuaCIKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpO
YXZpZ2F0aW9uVHlwZSB0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBl
KE5hdmlnYXRpb25UeXBlIG5hdmlnYXRpb25UeXBlKQoreworICAgIHN3aXRjaCAobmF2aWdhdGlv
blR5cGUpIHsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpCYWNrRm9yd2FyZDoKKyAgICAgICAg
cmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6OkJhY2tf
Zm9yd2FyZDsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpSZWxvYWQ6CisgICAgICAgIHJldHVy
biBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpSZWxvYWQ7Cisg
ICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6TGlua0NsaWNrZWQ6CisgICAgY2FzZSBOYXZpZ2F0aW9u
VHlwZTo6Rm9ybVN1Ym1pdHRlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtUmVzdWJt
aXR0ZWQ6CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6T3RoZXI6CisgICAgICAgIHJldHVybiBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpOYXZpZ2F0ZTsKKyAg
ICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6Ok5hdmlnYXRlOworfQorCitQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmc6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyhNb25vdG9uaWNU
aW1lIHRpbWVPcmlnaW4sIENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTG9hZFRpbWlu
ZyYgbG9hZFRpbWluZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzLCBjb25zdCBE
b2N1bWVudFRpbWluZyYgZG9jdW1lbnRUaW1pbmcsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBvcmln
aW4sIFdlYkNvcmU6Ok5hdmlnYXRpb25UeXBlIG5hdmlnYXRpb25UeXBlKQorICAgIDogUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZyh0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQo
cmVzb3VyY2UsICJuYXZpZ2F0aW9uIl9zLCBsb2FkVGltaW5nLCBtZXRyaWNzLCBvcmlnaW4pLCAw
LCBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihsb2FkVGltaW5nLmxvYWRFdmVudEVuZCgpLCB0aW1l
T3JpZ2luKSkKKyAgICAsIG1fZG9jdW1lbnRUaW1pbmcoZG9jdW1lbnRUaW1pbmcpCisgICAgLCBt
X25hdmlnYXRpb25UeXBlKHRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5
cGUobmF2aWdhdGlvblR5cGUpKSB7IH0KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp+
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKCkgPSBkZWZhdWx0OworCitkb3VibGUgUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nOjptaWxsaXNlY29uZHNTaW5jZU9yaWdpbihNb25vdG9uaWNU
aW1lIHRpbWUsIE9wdGlvbmFsPE1vbm90b25pY1RpbWU+IHRpbWVPcmlnaW4pIGNvbnN0Cit7Cisg
ICAgaWYgKCF0aW1lKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2U6
OnJlZHVjZVRpbWVSZXNvbHV0aW9uKHRpbWUgLSAodGltZU9yaWdpbiA/ICp0aW1lT3JpZ2luIDog
bV90aW1lT3JpZ2luKSkubWlsbGlzZWNvbmRzKCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50U3RhcnQoKSBjb25zdAoreworICAgIHJldHVybiBt
aWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2xvYWRUaW1pbmcudW5sb2FkRXZlbnRTdGFydCgpKTsK
K30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQo
KSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2xvYWRUaW1p
bmcudW5sb2FkRXZlbnRFbmQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6OmRvbUludGVyYWN0aXZlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRz
U2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSk7Cit9CisKK2RvdWJs
ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0
KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9kb2N1bWVu
dFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCk7Cit9CisKK2RvdWJsZSBQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcuZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6ZG9tQ29tcGxldGUoKSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNT
aW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlKTsKK30KKworZG91YmxlIFBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50U3RhcnQoKSBjb25zdAoreworICAg
IHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2xvYWRUaW1pbmcubG9hZEV2ZW50U3Rh
cnQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVu
dEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fbG9h
ZFRpbWluZy5sb2FkRXZlbnRFbmQoKSk7Cit9CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6TmF2aWdhdGlvblR5cGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp0eXBlKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9uYXZpZ2F0aW9uVHlwZTsKK30KKwordW5zaWduZWQgc2hvcnQg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpyZWRpcmVjdENvdW50KCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbV9sb2FkVGltaW5nLnJlZGlyZWN0Q291bnQoKTsKK30KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5oCShub25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw3
MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkRv
Y3VtZW50VGltaW5nLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgor
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSA6
IHVpbnQ4X3Q7CisKK2NsYXNzIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyBmaW5hbCA6IHB1
YmxpYyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIHsKK3B1YmxpYzoKKyAgICBlbnVtIGNsYXNz
IE5hdmlnYXRpb25UeXBlIDogdWludDhfdCB7CisgICAgICAgIE5hdmlnYXRlLAorICAgICAgICBS
ZWxvYWQsCisgICAgICAgIEJhY2tfZm9yd2FyZCwKKyAgICAgICAgUHJlcmVuZGVyLAorICAgIH07
CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBBcmdzPiBzdGF0aWMgUmVmPFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZz4gY3JlYXRlKEFyZ3MmJi4uLiBhcmdzKSB7IHJldHVybiBhZG9wdFJl
ZigqbmV3IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyhzdGQ6OmZvcndhcmQ8QXJncz4oYXJn
cykuLi4pKTsgfQorICAgIH5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoKTsKKworICAgIFR5
cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpOYXZp
Z2F0aW9uOyB9CisgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuICJuYXZpZ2F0aW9uIl9zOyB9CisKKyAgICBkb3VibGUgdW5sb2FkRXZlbnRTdGFydCgpIGNv
bnN0OworICAgIGRvdWJsZSB1bmxvYWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21J
bnRlcmFjdGl2ZSgpIGNvbnN0OworICAgIGRvdWJsZSBkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21Db250ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdDsK
KyAgICBkb3VibGUgZG9tQ29tcGxldGUoKSBjb25zdDsKKyAgICBkb3VibGUgbG9hZEV2ZW50U3Rh
cnQoKSBjb25zdDsKKyAgICBkb3VibGUgbG9hZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgTmF2aWdh
dGlvblR5cGUgdHlwZSgpIGNvbnN0OworICAgIHVuc2lnbmVkIHNob3J0IHJlZGlyZWN0Q291bnQo
KSBjb25zdDsKKworcHJpdmF0ZToKKyAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcm
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBEb2N1bWVudFRpbWluZyYsIGNvbnN0
IFNlY3VyaXR5T3JpZ2luJiwgV2ViQ29yZTo6TmF2aWdhdGlvblR5cGUpOworICAgIAorICAgIGRv
dWJsZSBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihNb25vdG9uaWNUaW1lLCBPcHRpb25hbDxNb25v
dG9uaWNUaW1lPiB0aW1lT3JpZ2luID0gV1RGOjpudWxsb3B0KSBjb25zdDsKKworICAgIERvY3Vt
ZW50VGltaW5nIG1fZG9jdW1lbnRUaW1pbmc7CisgICAgTmF2aWdhdGlvblR5cGUgbV9uYXZpZ2F0
aW9uVHlwZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwJKG5vbmV4
aXN0ZW50KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisvLyBo
dHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jZG9tLXBlcmZvcm1hbmNl
bmF2aWdhdGlvbnRpbWluZworCit0eXBlZGVmIGRvdWJsZSBET01IaWdoUmVzVGltZVN0YW1wOwor
CitlbnVtIE5hdmlnYXRpb25UeXBlIHsKKyAgICAibmF2aWdhdGUiLAorICAgICJyZWxvYWQiLAor
ICAgICJiYWNrX2ZvcndhcmQiLAorICAgICJwcmVyZW5kZXIiCit9OworCitbCisgICAgRXhwb3Nl
ZD1XaW5kb3cKK10gaW50ZXJmYWNlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyA6IFBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcgeworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBh
dHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudEVuZDsKKyAgICByZWFkb25s
eSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tSW50ZXJhY3RpdmU7Cisg
ICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbnRl
bnRMb2FkZWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGln
aFJlc1RpbWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAg
ICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbXBsZXRlOworICAgIHJlYWRv
bmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBsb2FkRXZlbnRTdGFydDsK
KyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgbG9hZEV2
ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgTmF2aWdhdGlvblR5cGUgICAg
ICB0eXBlOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgICAg
ICByZWRpcmVjdENvdW50OworICAgIFtEZWZhdWx0XSBvYmplY3QgdG9KU09OKCk7Cit9OwpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCShyZXZpc2lv
biAyNzEzODMpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xMDcsNiArMTA3LDExIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IFBl
cmZvcm1hbmNlT2JzZXJ2ZXI6Om8KICAgICByZXR1cm4geyB9OwogfQogCitWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3JkcygpCit7
CisgICAgcmV0dXJuIHN0ZDo6ZXhjaGFuZ2UobV9lbnRyaWVzVG9EZWxpdmVyLCB7IH0pOworfQor
CiB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QoKQogewogICAgIGlmIChtX3Bl
cmZvcm1hbmNlKQpAQCAtMTE0LDYgKzExOSw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6
ZGlzY29ubmVjdCgpCiAKICAgICBtX3JlZ2lzdGVyZWQgPSBmYWxzZTsKICAgICBtX2VudHJpZXNU
b0RlbGl2ZXIuY2xlYXIoKTsKKyAgICBtX3R5cGVGaWx0ZXIgPSB7IH07CiB9CiAKIHZvaWQgUGVy
Zm9ybWFuY2VPYnNlcnZlcjo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkKQEAg
LTEzMCw3ICsxMzYsNyBAQCB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIoKQogICAg
IGlmICghY29udGV4dCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgVmVjdG9yPFJlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5Pj4gZW50cmllcyA9IFdURk1vdmUobV9lbnRyaWVzVG9EZWxpdmVyKTsKKyAg
ICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzID0gc3RkOjpleGNoYW5n
ZShtX2VudHJpZXNUb0RlbGl2ZXIsIHsgfSk7CiAgICAgYXV0byBsaXN0ID0gUGVyZm9ybWFuY2VP
YnNlcnZlckVudHJ5TGlzdDo6Y3JlYXRlKFdURk1vdmUoZW50cmllcykpOwogCiAgICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsRmlyZU9ic2VydmVyQ2FsbGJhY2soKmNvbnRleHQsICJQ
ZXJmb3JtYW5jZU9ic2VydmVyIl9zKTsKQEAgLTE0MSwxMCArMTQ3LDkgQEAgdm9pZCBQZXJmb3Jt
YW5jZU9ic2VydmVyOjpkZWxpdmVyKCkKIFZlY3RvcjxTdHJpbmc+IFBlcmZvcm1hbmNlT2JzZXJ2
ZXI6OnN1cHBvcnRlZEVudHJ5VHlwZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkK
IHsKICAgICBWZWN0b3I8U3RyaW5nPiBlbnRyeVR5cGVzID0gewotICAgICAgICAvLyBGSVhNRTog
PGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4NDM2Mz4gQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24g
VGltaW5nIExldmVsIDIKLSAgICAgICAgLy8gIm5hdmlnYXRpb24iX3MsCiAgICAgICAgICJtYXJr
Il9zLAotICAgICAgICAibWVhc3VyZSJfcworICAgICAgICAibWVhc3VyZSJfcywKKyAgICAgICAg
Im5hdmlnYXRpb24iX3MsCiAgICAgfTsKIAogICAgIGlmIChpczxEb2N1bWVudD4oY29udGV4dCkg
JiYgZG93bmNhc3Q8RG9jdW1lbnQ+KGNvbnRleHQpLnN1cHBvcnRzUGFpbnRUaW1pbmcoKSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCShyZXZpc2lvbiAy
NzEzODMpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaAkod29y
a2luZyBjb3B5KQpAQCAtNTcsNiArNTcsNyBAQCBwdWJsaWM6CiAKICAgICBFeGNlcHRpb25Pcjx2
b2lkPiBvYnNlcnZlKEluaXQmJik7CiAgICAgdm9pZCBkaXNjb25uZWN0KCk7CisgICAgVmVjdG9y
PFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gdGFrZVJlY29yZHMoKTsKIAogICAgIE9wdGlvblNl
dDxQZXJmb3JtYW5jZUVudHJ5OjpUeXBlPiB0eXBlRmlsdGVyKCkgY29uc3QgeyByZXR1cm4gbV90
eXBlRmlsdGVyOyB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9i
c2VydmVyLmlkbAkocmV2aXNpb24gMjcxMzgzKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU9ic2VydmVyLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzMsOCArMzMsOSBAQAogXSBp
bnRlcmZhY2UgUGVyZm9ybWFuY2VPYnNlcnZlciB7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1
dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKFBlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjayBjYWxs
YmFjayk7CiAKLSAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHVuZGVmaW5lZCBvYnNlcnZlKFBlcmZv
cm1hbmNlT2JzZXJ2ZXJJbml0IG9wdGlvbnMpOworICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gdW5k
ZWZpbmVkIG9ic2VydmUob3B0aW9uYWwgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7
CiAgICAgdW5kZWZpbmVkIGRpc2Nvbm5lY3QoKTsKKyAgICBzZXF1ZW5jZTxQZXJmb3JtYW5jZUVu
dHJ5PiB0YWtlUmVjb3JkcygpOwogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0
XSBzdGF0aWMgcmVhZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5PERPTVN0cmluZz4gc3VwcG9y
dGVkRW50cnlUeXBlczsKIH07CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAkocmV2aXNpb24gMjcxMzgzKQorKysg
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjQsNyArNjQsNyBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50
cnk+PiBQZXJmb3JtCiAgICAgZm9yIChhdXRvJiBlbnRyeSA6IG1fZW50cmllcykgewogICAgICAg
ICBpZiAoIW5hbWUuaXNOdWxsKCkgJiYgZW50cnktPm5hbWUoKSAhPSBuYW1lKQogICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgIGlmICh0eXBlICYmIGVudHJ5LT50eXBlKCkgIT0gKnR5cGUp
CisgICAgICAgIGlmICh0eXBlICYmIGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpICE9ICp0
eXBlKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGVudHJpZXMuYXBwZW5kKGVudHJ5
LmNvcHlSZWYoKSk7CiAgICAgfQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZVBhaW50VGltaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVBhaW50VGltaW5nLmgJKHJldmlzaW9uIDI3MTM4MykKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCwxMyArNDQs
OSBAQCBwcml2YXRlOgogICAgIH0KIAogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiAicGFpbnQiX3M7IH0KLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBUeXBlOjpQYWludDsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpQYWludDsgfQogCiAgICAgflBlcmZvcm1hbmNl
UGFpbnRUaW1pbmcoKSA9IGRlZmF1bHQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VQYWludFRp
bWluZykKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzUGFpbnQoKTsgfQotU1BFQ0lBTElaRV9UWVBF
X1RSQUlUU19FTkQoKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuY3BwCShyZXZpc2lvbiAyNzEzODMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03
OSw4ICs3OSw4IEBAIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBQZXJmb3JtYW4KICAg
ICByZXR1cm4gYWRvcHRSZWYoKm5ldyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKHRpbWVPcmln
aW4sIFdURk1vdmUocmVzb3VyY2VUaW1pbmcpKSk7CiB9CiAKLVBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2lu
LCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQotICAgIDogUGVyZm9ybWFuY2VFbnRy
eShyZXNvdXJjZVRpbWluZy51cmwoKS5zdHJpbmcoKSwgZW50cnlTdGFydFRpbWUodGltZU9yaWdp
biwgcmVzb3VyY2VUaW1pbmcpLCBlbnRyeUVuZFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1p
bmcpKQorUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
ZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYgcmVzb3VyY2VUaW1p
bmcsIE9wdGlvbmFsPGRvdWJsZT4gc3RhcnRUaW1lLCBPcHRpb25hbDxkb3VibGU+IGVuZFRpbWUp
CisgICAgOiBQZXJmb3JtYW5jZUVudHJ5KHJlc291cmNlVGltaW5nLnVybCgpLnN0cmluZygpLCBz
dGFydFRpbWUgPyAqc3RhcnRUaW1lIDogZW50cnlTdGFydFRpbWUodGltZU9yaWdpbiwgcmVzb3Vy
Y2VUaW1pbmcpLCBlbmRUaW1lID8gKmVuZFRpbWUgOiBlbnRyeUVuZFRpbWUodGltZU9yaWdpbiwg
cmVzb3VyY2VUaW1pbmcpKQogICAgICwgbV9pbml0aWF0b3JUeXBlKHJlc291cmNlVGltaW5nLmlu
aXRpYXRvcigpKQogICAgICwgbV90aW1lT3JpZ2luKHRpbWVPcmlnaW4pCiAgICAgLCBtX2xvYWRU
aW1pbmcocmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpKQpJbmRleDogU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgJKHJldmlzaW9uIDI3MTM4MykK
KysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00Miw3ICs0Miw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFBl
cmZvcm1hbmNlU2VydmVyVGltaW5nOwogY2xhc3MgUmVzb3VyY2VUaW1pbmc7CiAKLWNsYXNzIFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgZmluYWwgOiBwdWJsaWMgUGVyZm9ybWFuY2VFbnRyeSB7
CitjbGFzcyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIDogcHVibGljIFBlcmZvcm1hbmNlRW50
cnkgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4g
Y3JlYXRlKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJik7CiAKQEAg
LTYxLDEzICs2MSwxNCBAQCBwdWJsaWM6CiAgICAgZG91YmxlIHJlcXVlc3RTdGFydCgpIGNvbnN0
OwogICAgIGRvdWJsZSByZXNwb25zZVN0YXJ0KCkgY29uc3Q7CiAgICAgZG91YmxlIHJlc3BvbnNl
RW5kKCkgY29uc3Q7CisKICAgICBjb25zdCBWZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGlt
aW5nPj4mIHNlcnZlclRpbWluZygpIGNvbnN0IHsgcmV0dXJuIG1fc2VydmVyVGltaW5nOyB9CiAK
LSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpSZXNvdXJjZTsgfQot
ICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAicmVzb3Vy
Y2UiX3M7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3Qgb3ZlcnJpZGUg
eyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KKyAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gInJlc291cmNlIl9zOyB9CiAKLXByaXZhdGU6Ci0gICAg
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291
cmNlVGltaW5nJiYpOworcHJvdGVjdGVkOgorICAgIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmco
TW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmLCBPcHRpb25hbDxkb3Vi
bGU+IHN0YXJ0VGltZSA9IFdURjo6bnVsbG9wdCwgT3B0aW9uYWw8ZG91YmxlPiBlbmRUaW1lID0g
V1RGOjpudWxsb3B0KTsKICAgICB+UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZygpOwogCiAgICAg
ZG91YmxlIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChTZWNvbmRzKSBjb25z
dDsKQEAgLTgxLDcgKzgyLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJm
b3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNSZXNvdXJjZSgpOyB9Ci1TUEVD
SUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwJKHJldmlzaW9uIDI3MTM4MykKKysrIFNv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwJKHdvcmtpbmcg
Y29weSkKQEAgLTUwLDYgKzUwLDExIEBAIHR5cGVkZWYgZG91YmxlIERPTUhpZ2hSZXNUaW1lU3Rh
bXA7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVxdWVzdFN0
YXJ0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHJlc3BvbnNl
U3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9u
c2VFbmQ7CisKKyAgICAvLyBOb3RlOiB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSwgYW5k
IGRlY29kZWRCb2R5U2l6ZSBhcmUgaW50ZW50aW9uYWxseSBvbWl0dGVkCisgICAgLy8gYmVjYXVz
ZSBvZiBwcml2YWN5IGNvbmNlcm5zIHN1Y2ggYXMgaHR0cHM6Ly9naXRodWIuY29tL3czYy9yZXNv
dXJjZS10aW1pbmcvaXNzdWVzLzIzOAorCisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3Nl
cnZlci10aW1pbmcvI2V4dGVuc2lvbi10by10aGUtcGVyZm9ybWFuY2VyZXNvdXJjZXRpbWluZy1p
bnRlcmZhY2UKICAgICBbRW5hYmxlZEF0UnVudGltZT1TZXJ2ZXJUaW1pbmddIHJlYWRvbmx5IGF0
dHJpYnV0ZSBGcm96ZW5BcnJheTxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4gc2VydmVyVGltaW5n
OwogCiAgICAgW0RlZmF1bHRdIG9iamVjdCB0b0pTT04oKTsKSW5kZXg6IExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwkocmV2aXNpb24gMjcxNDA5KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDExNyBAQAorMjAyMS0wMS0x
MiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAg
IEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFj
dGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNf
dmFsdWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sOgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9j
dW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2Zy
YW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9z
dGFydC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0
bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2Fj
Y2Vzc29ycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGVfaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5odG1sOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9y
d2FyZC5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVf
cmVsb2FkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
bm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVl
X25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2Vz
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbDogQWRkZWQu
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNl
cy93ZWJwZXJmdGVzdGhhcm5lc3MuanM6CisgICAgICAgICh0ZXN0X25hbWVzcGFjZSk6CisgICAg
ICAgICh0ZXN0X2F0dHJpYnV0ZV9leGlzdHMpOgorICAgICAgICAodGVzdF9lbnVtKToKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQt
cmV1c2UuaHR0cHMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlv
bl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90
ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLmh0bWw6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxh
Zy1hZnRlci10aW1lb3V0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0LnQudC5z
dGVwX3RpbWVvdXQpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qczogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJp
ZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5h
bnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmMgaWRsX2FycmF5KToKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxh
Zy1vYnNlcnZlcnMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKHByb21pc2VfdGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJs
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZh
bHNlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0LnQudC5zdGVwX3RpbWVvdXQp
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wZXJm
b3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanM6IEFkZGVkLgorICAgICAgICAodGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNr
LW11dGF0ZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVt
b3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRp
c2Nvbm5lY3QuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAo
dGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLWVudHJpZXMtc29ydC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVu
dHJpZXMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55
LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVz
dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291
cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVu
dHJpZXMuanM6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanM6
IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBv
cnRlZEVudHJ5VHlwZXMuYW55LmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9uLmFueS5qczogQWRkZWQuCisgICAg
ICAgICh0ZXN0VGltZVJlc29sdXRpb24pOgorICAgICAgICAodGltZUJ5VXNlclRpbWluZyk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13
aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZv
cm1hbmNlLW9ic2VydmVyLmh0bWw6IEFkZGVkLgorCiAyMDIxLTAxLTEyICBNYW51ZWwgUmVnbyBD
YXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIFVwZGF0
ZSB0ZXN0cyBmcm9tIFdQVApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L01FVEEueW1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWwJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw1IEBACitzcGVjOiBodHRwczovL3czYy5naXRodWIuaW8vbmF2aWdhdGlvbi10
aW1pbmcvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhlZ2FyCisgIC0gaWdyaWdvcmlr
CisgIC0geW9hdndlaXNzCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVu
dC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2Vf
ZG9jdW1lbnQtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDggQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdHMgdGhhdCBhIGltYWdlIGRvY3VtZW50IGhh
cyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS4KKworCisKK1BBU1MgVGVzdCBkb21JbnRl
cmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudAorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9p
bWFnZV9kb2N1bWVudC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2lt
YWdlX2RvY3VtZW50Lmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVf
aW1hZ2VfZG9jdW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI1IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1
dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9j
dW1lbnQuPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUi
IGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVs
cCIgaHJlZj0iaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvYnJvd3Npbmct
dGhlLXdlYi5odG1sI3JlYWQtbWVkaWEiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxz
Y3JpcHQ+CisgICAgICAgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IGRvbUludGVyYWN0aXZl
IG9uIGltYWdlIGRvY3VtZW50Iik7CisgICAgICAgIGZ1bmN0aW9uIGZyYW1lTG9hZGVkKCkgewor
ICAgICAgICAgICAgY29uc3QgdGltaW5nID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaWZyYW1l
IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmc7CisgICAgICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuKHRpbWluZy5kb21JbnRlcmFjdGl2ZSwgMCwKKyAgICAgICAgICAgICAgICAi
RXhwZWN0IGRvbUludGVyYWN0aXZlIHRvIGJlIHBvc2l0aXZlIHZhbHVlLiIpOworICAgICAgICAg
ICAgdC5kb25lKCk7CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IGEgaW1h
Z2UgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLjwvcD4KKyAgICAg
ICAgPGlmcmFtZSBzcmM9Ii4uL2ltYWdlcy9zbWlsZXkucG5nIiBvbmxvYWQ9ImZyYW1lTG9hZGVk
KCkiPjwvaWZyYW1lPgorICAgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVy
YWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2Rv
bV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQor
KysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0
IGEgbWVkaWEgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisK
KworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50CisKSW5kZXg6IExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAg
ICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBkb21JbnRl
cmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudC48L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1
dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAg
ICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3Jn
L211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
KyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5jX3Rlc3Qo
IlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1lbnQiKTsKKyAgICAgICAgZnVuY3Rp
b24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRpbWluZzsK
KyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0aXZlLCAw
LAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9zaXRpdmUg
dmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0
PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5U
aGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50
ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0iLi4vbWVkaWEvQTQubXA0IiBvbmxv
YWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZyYW1lPgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMJKHJldmlzaW9uIDI3MTM4MykK
KysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMJKHdvcmtpbmcgY29weSkKQEAgLTEsMjEgKzEs
MjAgQEAKIC8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcwogLy8gTUVU
QTogc2NyaXB0PS9yZXNvdXJjZXMvaWRsaGFybmVzcy5qcworLy8gTUVUQTogdGltZW91dD1sb25n
CiAKICd1c2Ugc3RyaWN0JzsKIAogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10
aW1pbmcvCiAKIGlkbF90ZXN0KAotICBbJ25hdmlnYXRpb24tdGltaW5nJ10sCi0gIFsncmVzb3Vy
Y2UtdGltaW5nJywgJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJywgJ2hyLXRpbWUnLCAnZG9tJ10sCi0g
IGlkbF9hcnJheSA9PiB7Ci0gICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsKKyAgWyduYXZpZ2F0
aW9uLXRpbWluZycsICdoci10aW1lJ10sCisgIFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZvcm1h
bmNlLXRpbWVsaW5lJywgJ2RvbScsICdodG1sJ10sCisgIGlkbEFycmF5ID0+IHsKKyAgICBpZGxB
cnJheS5hZGRfb2JqZWN0cyh7CiAgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3JtYW5jZSddLAog
ICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOiBbJ3BlcmZvcm1hbmNlLm5hdmlnYXRpb24nXSwK
ICAgICAgIFBlcmZvcm1hbmNlVGltaW5nOiBbJ3BlcmZvcm1hbmNlLnRpbWluZyddLAotICAgICAg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiBbCi0gICAgICAgICdwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nCi0gICAgICBdCisgICAgICBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmc6IFsncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdJ10KICAgICB9KTsKICAgfQogKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJp
YnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0
dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2IHRpbWluZyAyIGluc3RhbmNlIGFuZCB0aGF0IHRo
ZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBleGlzdCAoYnV0
IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhlIHZhbHVlcyBhcmUgY29ycmVjdCkuCisKKworRkFJ
TCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlLiBh
c3NlcnRfdHJ1ZTogRXhwZWN0ZWQgYXR0cmlidXRlOiBkZWNvZGVkQm9keVNpemUuIGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCisKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3Qu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwJ
KG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxl
Pk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRo
b3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAg
ICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlv
bi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+Cisg
ICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU9ic2VydmVyIGNh
biBvYnNlcnZlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhhdCB0aGUgZXhwZWN0ZWQgYXR0
cmlidXRlcyBpbiBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3QgKGJ1dCBkb2VzIG5vdCB2YWxp
ZGF0ZSB0aGF0IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLjwvcD4KKworICAgICAgICA8c2NyaXB0
PgorICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAnY29u
bmVjdEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdkZWNv
ZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAgICdk
b21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRF
dmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAn
ZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAg
ICAgICAgICAnZHVyYXRpb24nLAorICAgICAgICAgICAgJ2VuY29kZWRCb2R5U2l6ZScsCisgICAg
ICAgICAgICAnZW50cnlUeXBlJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAg
ICAgICdpbml0aWF0b3JUeXBlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAg
ICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICduYW1lJywKKyAgICAgICAgICAg
ICduZXh0SG9wUHJvdG9jb2wnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAg
ICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAg
ICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAg
ICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3Rh
cnQnLAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisg
ICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3Rh
cnQnLAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworICAgICAgICBhc3lu
Y190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVy
Zm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAo
ZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBlbnRyaWVzID0gZW50cnlMaXN0
LmdldEVudHJpZXMoKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVz
Lmxlbmd0aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUaGVyZSBzaG91bGQgYmUgb25s
eSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKG5hdlRpbWluZzJBdHRyaWJ1dGVz
W2ldIGluIGVudHJpZXNbMF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVk
IGF0dHJpYnV0ZTogIiArIG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ldICsgIi4iKTsKKyAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7
CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAg
ICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJu
YXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1p
bmcgZW50cmllcyBhcmUgb2JzZXJ2YWJsZS4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9i
b2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVz
LWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVz
X3ZhbHVlcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw3IEBACitEZXNj
cmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGlt
aW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWlu
IG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJTCBQ
ZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFi
bGUuIGFzc2VydF90cnVlOiBFeHBlY3RlZCB0cmFuc2ZlclNpemUgdG8gYmUgZ3JlYXRlciB0aGFu
IGVuY29kZWRCb2R5U2l6ZSBpbiB1bmNhY2hlZCBuYXZpZ2F0aW9uLiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwJKG5vbmV4
aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDEzNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8
aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIg
dGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAg
PGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRp
bWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+
CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGlt
aW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWlu
IG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuPC9wPgorCisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgIC8vIEhvc3QgbmFtZXMgYW5kIHBvcnRzIG1heSBiZSBjb25m
aWd1cmVkIGF0IHRlc3QgZXhlY3V0aW9uIHRpbWUuIFRoZQorICAgICAgICAvLyB3ZWItcGxhdGZv
cm0tdGVzdHMgc2VydmVyIG9mZmVycyB0d28gbWVjaGFuaXNtcyBmb3IgcmV0cmlldmluZyB0aGVz
ZQorICAgICAgICAvLyB2YWx1ZXMgZHluYW1pY2FsbHk6IGRpcmVjdCB0ZXh0IHN1YnN0aXR1dGlv
biBhbmQgdGhlIGBnZXQtaG9zdC1pbmZvYAorICAgICAgICAvLyBzY3JpcHQuIFRoZSBmb3JtZXIg
aXMgaW5hcHByb3ByYXRlIGZvciB0aGlzIHRlc3QgYmVjYXVzZSBpdAorICAgICAgICAvLyBpbmZs
dWVuY2VzIHRoZSBzaXplIG9mIHRoZSBkb2N1bWVudCwgYW5kIHRoaXMgdGVzdCBpbmNsdWRlcyBz
dGF0aWMKKyAgICAgICAgLy8gYXNzZXJ0aW9ucyBmb3IgdGhhdCB2YWx1ZS4KKyAgICAgICAgdmFy
IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKKyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0g
Imh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJTkFMX0hPU1QgKyAiOiIgKworICAgICAgICAgICAg
aG9zdF9pbmZvLkhUVFBfUE9SVCArCisgICAgICAgICAgICAiL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIjsKKyAgICAgICAgdmFyIG5hdlRpbWluZzJF
dmVudE9yZGVyMSA9IFsKKyAgICAgICAgICAgICdzdGFydFRpbWUnLAorICAgICAgICAgICAgJ3Jl
ZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAg
ICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRFbmQnLAorICAg
ICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywK
KyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFy
dCcsCisgICAgICAgICAgICAvLydzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAg
J2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAn
cmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAg
J2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAg
ICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2
ZW50T3JkZXIyID0gWworICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAg
J3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAg
ICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcKKyAgICAgICAg
XTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIzID0gWworICAgICAgICAgICAg
J2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAg
ICAgICAgICAgICdjb25uZWN0RW5kJworICAgICAgICBdOworCisgICAgICAgIC8vIE5hdmlnYXRp
b24gVGltaW5nIGF0dHJpYnV0ZXMgZm9yIGNvbXBhcmlzb24uCisgICAgICAgIHZhciBuYXZUaW1p
bmcxRXZlbnRPcmRlciA9IFsKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAg
ICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAg
ICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcsCisg
ICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywK
KyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisg
ICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcK
KyAgICAgICAgXTsKKworICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2
ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsrKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3Ry
dWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPD0gdGltaW5nRW50cnlbZXZlbnRPcmRlcltp
ICsgMV1dLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50T3JkZXJbaV0g
KyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltpICsgMV0gKyAiLiIpOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
CisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAg
ICAgICAgICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICJu
YXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBlbnRyeVR5cGUg
dG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZW50cmllc1swXS5uYW1lLCBleHBlY3RlZFVybCk7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cmllc1swXS5zdGFydFRpbWUsIDAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAiRXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlOiAwLiIpOworICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZHVyYXRpb24sIGVudHJpZXNbMF0ubG9hZEV2ZW50RW5k
LAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGR1cmF0aW9uIHRvIGJlIGVxdWFs
IHRvIGxvYWRFdmVudEVuZC4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyaWVzWzBdLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICJFeHBlY3RlZCBpbml0aWF0b3JUeXBlIHRvIGJlOiBuYXZpZ2F0aW9uLiIpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0ubmV4dEhvcFByb3RvY29s
LCAiaHR0cC8xLjEiKTsKKyAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyB0ZXN0IG1heSBmYWls
IHdoZW4gcmVzcG9uc2UgaXMgZnJvbSBjYWNoLiBEaXNhYmxlIG9yIGNsZWFuIGNhY2ggYmVmb3Jl
CisgICAgICAgICAgICAgICAgICAgIC8vIHJ1bm5pbmcgdGhpcyB0ZXN0LgorICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZShlbnRyaWVzWzBdLnRyYW5zZmVyU2l6ZSA+IGVudHJpZXNbMF0u
ZW5jb2RlZEJvZHlTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHRyYW5z
ZmVyU2l6ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5h
dmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1sw
XS5lbmNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGVudHJpZXNbMF0uZGVjb2RlZEJvZHlTaXplLCA1OTU1KTsKKyAgICAgICAgICAgICAgICAg
ICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRl
cjEpOworICAgICAgICAgICAgICAgICAgICAvLyBWZXJpZnkgaWYgdGhlIHJlcG9ydGVkIHRpbWlu
ZyBpcyBub3QgdGhhdCBkaWZmZXJlbnQKKyAgICAgICAgICAgICAgICAgICAgLy8gZnJvbSB3aGF0
IGlzIHJlcG9ydGVkIGJ5IE5hdmlnYXRpb24gVGltaW5nIDEuCisgICAgICAgICAgICAgICAgICAg
IG5hdlRpbWluZzFFdmVudE9yZGVyLmZvckVhY2goCisgICAgICAgICAgICAgICAgICAgICAgZnVu
Y3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nW2V2ZW50XSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgPiAwKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cmllc1swXVtldmVudF0sIDAsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50ICsgIiB0byBi
ZSBncmVhdGVyIHRoYW4gMCIpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgLy8gV2hlbiB1bmxvYWRFdmVudCBo
YXBwZW5zCisgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdWyJ1bmxvYWRFdmVudFN0
YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRP
cmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjIpOworICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gYSBzZWN1cmUgdHJhbnNwb3J0IGlz
IHVzZWQKKyAgICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInNlY3VyZUNvbm5lY3Rp
b25TdGFydCJdICE9IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2
ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIzKTsKKyAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAg
ICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZp
Z2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcg
aW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMjcxMzgzKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
b3Blbi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSwzIEBACi1DT05TT0xF
IE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ3RpbWluZ1tuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0nKQogRGVzY3JpcHRpb24KIAogVGhp
cyB0ZXN0IHZhbGlkYXRlcyB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpIHJlbWFpbnMgY29uc3RhbnQgd2hlbiBhIGRvY3VtZW50IGlzIHJlcGxhY2VkIHVz
aW5nIGRvY3VtZW50Lm9wZW4uCkBAIC05LDYgKzgsNSBAQCBUaGUgdGVzdCBwYXNzZXMgaWYgYWxs
IG9mIHRoZSBjaGVja3MgdG8gCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWlu
Z1tuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIg
V1BUCiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwJKHJldmlzaW9uIDI3MTM4MykK
KysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
OCw2ICs4LDggQEAKICAgICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
cy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgICAgdmFyIG5h
dlRpbWluZzJBdHRyaWJ1dGVzID0gWwogICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAog
ICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9k
b2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzEzODMpCisrKyBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMTMgKzEsMTEgQEAKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5s
b2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhh
bmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIo
cykKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAncG50MS50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxp
ZGF0ZXMgdGhhdCBhIFBlcmZvcm1hbmNlTmF2aWdhdGluZ1RpbWluZyBjb3JyZXNwb25kaW5nIHRv
IGEgZGV0YWNoZWQgZG9jdW1lbnQgY2FuJ3QgYWNjZXNzIGEgZGlmZmVyZW50IGRvY3VtZW50J3Mg
c3RhdGUuCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEudHlwZScpCi0KK1BB
U1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1l
bnRfcmVwbGFjZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9y
ZXBsYWNlZC5odG1sCShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVu
dF9yZXBsYWNlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC04LDYgKzgsOCBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUg
fSk7CisKICAgICAgICAgICAgIHZhciBuYXZpZ2F0aW9uX2ZyYW1lOwogICAgICAgICAgICAgdmFy
IHBudDE7CiAgICAgICAgICAgICB2YXIgc3RlcCA9IDE7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9m
cmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9m
cmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjcxMzgzKQorKysgTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTQsNSAr
NCw1IEBAIERlc2NyaXB0aW9uCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjp0eXBlKCkncyBkZWZhdWx0IHZhbHVlIGlzIG5hdmlnYXRlCiAKIAot
RkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAncG50LnR5cGUnKQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCklu
ZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3Np
YmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjcxMzgzKQorKysgTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nIGluc3RhbmNlIGV4aXN0cyB3aXRoIHJlYXNvbmFibGUgdmFsdWVzLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nIGluc3RhbmNlIGV4aXN0cyB3aXRoIHJlYXNvbmFibGUgdmFsdWVzLgogCkluZGV4
OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3Ro
ZV9zdGFydC5odG1sCShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyAr
NCw3IEBACiA8c2NyaXB0PgogdGVzdChmdW5jdGlvbigpIHsKICAgdmFyIG5hdmlnYXRpb25UaW1p
bmcyID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ25hdmlnYXRpb24nKVsw
XTsKLSAgYXNzZXJ0X3RydWUobmF2aWdhdGlvblRpbWluZzIgIT09IHVuZGVmaW5lZCk7CisgIGFz
c2VydF9ub3RfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLCB1bmRlZmluZWQpOwogICBhc3NlcnRf
ZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iKTsKICAgYXNz
ZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5zdGFydFRpbWUsIDApOwogICBhc3NlcnRfZXF1
YWxzKG5hdmlnYXRpb25UaW1pbmcyLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIik7CkluZGV4
OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQJKG5v
bmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMg
dGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYgdGltaW5nIDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2Vk
IGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nlc3NvcnMgb25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVu
dHJpZXNCeU5hbWUoImRvY3VtZW50IikKKworCitGQUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24g
dGltaW5nIGVudHJpZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZmZXJlbnQgYWNj
ZXNzb3JzLiBhc3NlcnRfZXF1YWxzOiBFeHBlY3RlZCB0aGVyZSBpcyBvbmx5IG9uZSBuYXZpZ2F0
aW9uIHRpbWluZyBpbnN0YW5jZS4gZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpJbmRleDogTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw3
OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEg
Y2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8
L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0i
aHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVm
PSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2Nv
bW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxi
b2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3Qg
dmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0
aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVz
QnlOYW1lKCJkb2N1bWVudCIpPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBo
b3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJo
dHRwOi8vIiArIGhvc3RfaW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhv
c3RfaW5mby5IVFRQX1BPUlQgKyAiL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NvcnMuaHRtbCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsK
KyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAor
ICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUn
LAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZl
JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxv
b2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAgICAnZW5jb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNo
U3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgJ2xvYWRF
dmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25h
bWUnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0
RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0
U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdyZXNwb25z
ZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAg
ICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAndW5s
b2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMSA9IHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMiA9IHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGluc3RhbmNlMyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwp
WzBdOworCisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlz
IG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRV
cmwpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGlt
aW5nIGluc3RhbmNlLiIpOworCisgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwg
aW5zdGFuY2UyW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJB
dHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGluc3RhbmNlMVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGluc3RhbmNlM1tuYXZU
aW1pbmcyQXR0cmlidXRlc1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAg
IH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxl
IHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZy
YW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9p
ZnJhbWUtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRlX2lmcmFtZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0IEBACisK
KworUEFTUyBuYXZpZ2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlmcmFtZSBVUkwgY2hhbmdlcwor
CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCww
ICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8bWV0YSBj
aGFyc2V0PXV0Zi04PgorICAgIDx0aXRsZT5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcubmFt
ZSB1cGRhdGVkIGluIGlmcmFtZXM8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAg
PHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbiAodCkgeworICB2YXIgaWZyID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoaWZyKTsKKworICBpZnIuc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1s
IjsKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9ubG9hZCA9IGZ1
bmN0aW9uKCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25seSBvbmUg
bmF2aWdhdGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50
V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1l
LCBpZnIuY29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdhdGlvbiBuYW1l
IG1hdGNoZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3RydWUoaWZyLmNv
bnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
Lm5hbWUuZW5kc1dpdGgoImJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1l
IGlzIGJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAg
fSk7CisKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgc2V0VGltZW91dChyZXNv
bHZlLCAxMDApOyB9KTsKKyAgaWZyLnNyYyA9InJlc291cmNlcy9ibGFua19wYWdlX3llbGxvdy5o
dG1sIjsKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2Fk
ID0gZnVuY3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5
IG9uZSBuYXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNv
bnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
Lm5hbWUsIGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9u
IG5hbWUgbWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShp
ZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF0ubmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpLCAibmF2aWdhdGlv
biBuYW1lIGlzIGJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKTsKKyAgICAgIHJlc29sdmUoKTsKKyAg
ICB9CisgIH0pOworfSwgIm5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBj
aGFuZ2VzIik7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMjcxMzgzKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2Rv
Y3VtZW50LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICsxLDcgQEAKLUNPTlNP
TEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAndGltaW5nW3Byb3BlcnR5XScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1
bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS4KIAogCi1IYXJuZXNzIEVycm9y
IChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5n
IDIgV1BUCiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVu
dC5odG1sCShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRo
aW5fZG9jdW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNiArMTMsOCBAQAogICAgICAg
ICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hh
bmdlZCBhZnRlciBhbiBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdl
KS48L3A+CiAKICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rl
c3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsK
ICAgICAgICAgICAgICAgICAnY29ubmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RT
dGFydCcsCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3MTM4MykKKysrIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNiArMSw3IEBACiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVu
bG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBo
YW5kbGVyKHMpCi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4i
IC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXS50eXBlIHdpdGggYSBmb3J3YXJkIGFuZCBiYWNrIG5hdmlnYXRpb24uCkBAIC0x
Myw2ICsxNCw1IEBAIFRoaXMgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8KIAog
CiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9mcmFtZS5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK1BBU1MgTmF2aWdh
dGlvbiBUaW1pbmcgMiBXUFQKIApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X2JhY2tmb3J3YXJkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX2JhY2tmb3J3YXJkLmh0bWwJKHJldmlzaW9uIDI3MTM4MykKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC04
LDYgKzgsNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVw
KHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90
ZXN0KCkKICAgICAgICAgICAgIHsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLgorCisKK1BBU1MgTmF2aWdhdGlvbiB0eXBl
IHRvIGJlIG5hdmlnYXRlLgorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVf
bmF2aWdhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfbmF2aWdhdGUuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
aW9uX3R5cGVfbmF2aWdhdGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDMyIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0
PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRs
ZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6
Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0
cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvI3NlYy1uYXZpZ2F0aW9uLXRpbWlu
Zy1pbnRlcmZhY2UiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0g
bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5j
KGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXMoKVswXS50eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0
ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgICAg
ICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworCisgICAgICAgICAgICB9LCAiTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOwor
ICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgx
PgorICAgICAgICAgICAgRGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD4KKyAgICAgICAgICAg
IFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBuYXZpZ2F0ZS48L3A+CisK
KyAgICA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfcmVsb2FkLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjcxMzgzKQorKysgTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKIERl
c2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0uKHR5cGUvdW5sb2FkRXZl
bnRFbmQvdW5sb2FkRXZlbnRTdGFydCkgd2l0aCBhIHJlbG9hZGVkIG5hdmlnYXRpb24uCkBAIC0x
MCw2ICs5LDUgQEAgVGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKAogVGhl
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2Fk
RXZlbnRFbmQgPiAwIGFmdGVyIHJlbG9hZAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNz
YWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
bmV3TmF2VGltaW5nLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKSW5k
ZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwJKHJldmlzaW9u
IDI3MTM4MykKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtOCw2ICs4LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+
CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAg
ICB2YXIgcmVsb2FkX2ZyYW1lOwogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFp
bl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9v
cmlnaW4tZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDExIEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL3d3dy5sb2NhbGhvc3Q6ODgwMC9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5P2xv
Y2F0aW9uPWh0dHA6Ly9sb2NhbGhvc3Q6ODgwMC9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMv
YmxhbmtfcGFnZV9ncmVlbi5odG1sCitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMg
Zm9yIGEgY3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0
aGUgZmluYWwgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi4KKwor
CisKK0hhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCitOT1RSVU4gTmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQKKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5o
dG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2
ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw1
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEg
Y2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQ
VDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVm
PSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
Y29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAg
IHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG9u
bG9hZF90ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBjb25zdCBmcmFtZV9w
ZXJmb3JtYW5jZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250
ZW50V2luZG93LnBlcmZvcm1hbmNlOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJh
bWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUsCisg
ICAgICAgICAgICAgICAgICAgICJuYXZpZ2F0ZSIsCisgICAgICAgICAgICAgICAgICAgICJFeHBl
Y3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0ucmVkaXJlY3RDb3VudCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVk
IHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRp
cmVjdFN0YXJ0LCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFy
dCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0RW5kLCAwLAor
ICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUgMC4iKTsKKyAg
ICAgICAgICAgICAgICBkb25lKCk7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3Vu
dCBhbmQgdGhlCisgICAgICAgICAgIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgY3Jvc3Mtb3Jp
Z2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmluYWwKKyAgICAg
ICAgICAgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi48L3A+CisK
KyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250ZXh0IiBzcmM9IiIgc3R5bGU9IndpZHRoOiAy
NTBweDsgaGVpZ2h0OiAyNTBweDsiPjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0PgorICAgICAg
ICAgICAgLy8gY29tYmluZSB0aGUgcGFnZSBvcmlnaW4gYW5kIHJlZGlyZWN0IG9yaWdpbiBpbnRv
IHRoZSBJRlJBTUUncyBzcmMgVVJMCisgICAgICAgICAgICBjb25zdCBkZXN0VXJsX2ZpcnN0ID0g
bWFrZV9hYnNvbHV0ZV91cmwoe3N1YmRvbWFpbjogInd3dyIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVjdC1vcHQtaW4u
cHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlcnk6
ICJsb2NhdGlvbj0iICsgbWFrZV9hYnNvbHV0ZV91cmwoCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGF0aDogIi9uYXZpZ2F0aW9uLXRp
bWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIn0pCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIGNvbnN0IGRlc3RV
cmwgPSBtYWtlX2Fic29sdXRlX3VybCh7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVjdC5weSIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVyeTogImxvY2F0aW9uPSIgKyBkZXN0
VXJsX2ZpcnN0fSk7CisgICAgICAgICAgICBsZXQgZnJhbWVDb250ZXh0ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpOworICAgICAgICAgICAgZnJhbWVDb250ZXh0Lm9u
bG9hZCA9IG9ubG9hZF90ZXN0OworICAgICAgICAgICAgZnJhbWVDb250ZXh0LnNyYyA9IGRlc3RV
cmw7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJf
cGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtNiw2ICs2LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUg
dmFsdWVzIG9mIHRoZSB3aQogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZB
SUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLnR5cGUnKQogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sCShyZXZpc2lv
biAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRp
YWxfb3B0X2luLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTMgKzksNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAg
ICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KICAgICAgICAg
PHNjcmlwdD4KLQotICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihl
dmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgewotICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAw
OyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKLSAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X3RydWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPCB0aW1pbmdFbnRyeVtldmVu
dE9yZGVyW2kgKyAxXV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2
ZW50T3JkZXJbaV0gKyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltpICsg
MV0gKyAiLiIpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9u
bG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X25vbmUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X25vbmUtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X25vbmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNyBAQAorRGVz
Y3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZSBvZiB0aGUgd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVj
dENvdW50IGF0dHJpYnV0ZSwgYXMgd2VsbCBhcyB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0IGFuZCByZWRpcmVjdEVu
ZCBhdHRyaWJ1dGVzIG9uIGEgbm9uLXJlZGlyZWN0ZWQgbmF2aWdhdGlvbi4KKworCitQQVNTIE5h
aXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4KKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfbm9uZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUu
aHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gx
PgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSB3
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGly
ZWN0Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQgYW5kIHJlZGlyZWN0
RW5kIGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLjwvcD4KKworICAg
ICAgICA8c2NyaXB0PgorCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAg
ICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIG5hdlRpbWluZyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcu
cmVkaXJlY3RDb3VudCwgMCwgIkV4cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVkaXJlY3RTdGFydCwg
MCwgIkV4cGVjdGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVkaXJlY3RFbmQsIDAsICJFeHBlY3RlZCByZWRp
cmVjdEVuZCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25u
ZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBl
czogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiTmFpdmF0aW9uIHdpdGhvdXQgcmVk
aXJlY3RzLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2Vy
dmVyLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9z
ZXJ2ZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDEwICsxLDgg
QEAKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRo
aXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLnJl
ZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3Rh
cnQvRW5kIHRpbWVzIGZvciBhIHNhbWUtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmln
YXRpb24uCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZW50cnku
dHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApJbmRleDogTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3Rfc2VydmVyLmh0bWwJKHJldmlzaW9uIDI3MTM4MykKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X3NlcnZlci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDEwICs5LDExIEBACiAg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KIAogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVz
dDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRl
cihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgewogICAgICAgICAgICAgICAgIGZvciAobGV0IGkg
PSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKLSAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X3RydWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPCB0aW1pbmdFbnRyeVtl
dmVudE9yZGVyW2kgKyAxXV0sCisgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWlu
Z0VudHJ5W2V2ZW50T3JkZXJbaV1dIDw9IHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIg
dG8gYmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7CiAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtMjcsMTIgKzI4LDEyIEBACiAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uX2VudHJ5LnJlZGlyZWN0Q291bnQsIDEs
ICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDEuIik7CiAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhuYXZpZ2F0aW9uX2VudHJ5Lm5hbWUsICdodHRwOi8vJyArIGRvY3VtZW50Lmxv
Y2F0aW9uLmhvc3QgKyAnL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy9ibGFua19wYWdlX2dy
ZWVuLmh0bWwnKTsKIAotICAgICAgICAgICAgICAgIHZhciB0aW1naW5nRXZlbnRzID0gWworICAg
ICAgICAgICAgICAgIHZhciB0aW1pbmdFdmVudHMgPSBbCiAgICAgICAgICAgICAgICAgICAgICdz
dGFydFRpbWUnLAogICAgICAgICAgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCiAgICAgICAg
ICAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgXTsKLSAgICAgICAg
ICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKHRpbWdpbmdFdmVudHMsIGZyYW1lX3BlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSk7CisgICAgICAgICAgICAg
ICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcih0aW1pbmdFdmVudHMsIGZyYW1lX3BlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSk7CiAgICAgICAgICAgICAgICAgZG9u
ZSgpOwogICAgICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzEzODMpCisr
KyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVkLnR4dAkod29ya2luZyBj
b3B5KQpAQCAtNiw2ICs2LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRo
ZSB3aQogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFj
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdh
dGlvbiBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAncGVyZm9ybWFuY2VOYW1lc3BhY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLnR5cGUnKQogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVy
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1s
CShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTksNiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dCBzcmM9Ii9jb21tb24vdXRpbHMuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAg
ICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVu
Y3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpJbmRleDogTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
dW5pcXVlX25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisr
KyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy1leHBlY3RlZC50eHQJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgZWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4K
KworCitGQUlMIEVhY2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2Uu
IGFzc2VydF9lcXVhbHM6IE9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiBleHBl
Y3RlZCAxIGJ1dCBnb3QgMAorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3Rh
bmNlcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFu
Y2VzLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0
YW5jZXMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDc2IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4K
KyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5v
cmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
ZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNj
cmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBlYWNoIHdp
bmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLjwvcD4KKyAgICAgICAgPGlm
cmFtZSBpZD0iZnJhbWVDb250ZXh0IiBzcmM9InJlc291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0
bWwiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ijs+PC9pZnJhbWU+CisgICAgICAgIDxzY3JpcHQ+CisK
KyAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICAg
ICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAg
ICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAgICAgJ2RvbUNvbXBsZXRl
JywKKyAgICAgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAg
ICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICdk
b21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAg
ICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZHVyYXRp
b24nLAorICAgICAgICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAg
ICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAg
ICAgICAnaW5pdGlhdG9yVHlwZScsCisgICAgICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisg
ICAgICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnbmFtZScs
CisgICAgICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgICAgICdyZWRp
cmVjdEVuZCcsCisgICAgICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAg
ICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAg
ICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgICAgICdzZWN1cmVDb25u
ZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgICAgICd0cmFuc2ZlclNpemUnLAorICAgICAgICAg
ICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAg
ICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnd29ya2VyU3Rh
cnQnCisgICAgICAgICAgICBdOworCisgICAgICAgICAgICBmdW5jdGlvbiBub3Rfc2FtZV9pbnN0
YW5jZShpbnN0YW5jZTEsIGluc3RhbmNlMiwgYXR0cmlidXRlcykgeworICAgICAgICAgICAgICAg
IGZvciAodmFyIGkgaW4gYXR0cmlidXRlcykgeworICAgICAgICAgICAgICAgICAgICBpZiAoaW5z
dGFuY2UxW2F0dHJpYnV0ZXNbaV1dICE9IGluc3RhbmNlMlthdHRyaWJ1dGVzW2ldXSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGFz
eW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMo
ZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwg
Ik9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiIpOworICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250
ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIikubGVuZ3RoLCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPbmx5IG9uZSBu
YXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZh
ciBtYWluX2ZyYW1lX2luc3RhbmNlID0gZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpZnJhbWVfaW5zdGFuY2Ug
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAg
ICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShub3Rfc2FtZV9pbnN0YW5jZShtYWluX2ZyYW1lX2lu
c3RhbmNlLCBpZnJhbWVfaW5zdGFuY2UsIG5hdlRpbWluZzJBdHRyaWJ1dGVzKSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAiVHdvIG5hdiB0aW1pbmcgaW5zdGFuY2VzIGFyZSBub3QgdGhl
IHNhbWUgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNj
b25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAg
ICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2VydmVy
Lm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAgIH0s
ICJFYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLiIpOworICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmln
YXRpb24tZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBl
Y3RlZC50eHQJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBu
YXZpZ2F0aW9uCisKK05hdmlnYXRpb24gd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisK
KworUEFTUyBuYXZpZ2F0aW9uIGVudHJ5IGlzIG9ic2VydmFibGUKKwpJbmRleDogTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1u
YXZpZ2F0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwJKG5v
bmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSwyOSBAQAorPCFET0NUWVBFIEhUTUw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRp
dGxlPlBlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBuYXZpZ2F0aW9uPC90aXRsZT4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9i
c2VydmVyczogbmF2aWdhdGlvbjwvaDE+Cis8cD4KK05hdmlnYXRpb24gd2lsbCA8YSBocmVmPSJo
dHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvI2Rmbi1xdWV1ZS1hLXBl
cmZvcm1hbmNlZW50cnkiPnF1ZXVlIGEgUGVyZm9ybWFuY2VFbnRyeTwvYT4uCis8L3A+Cis8ZGl2
IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgewor
ICAgIGZ1bmN0aW9uIGNoZWNrRW50cnkocGVzKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlcy5s
ZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyeSIpOworICAgICAgYXNz
ZXJ0X2VxdWFscyhwZXNbMF0uZW50cnlUeXBlLCAibmF2aWdhdGlvbiIsICJlbnRyeVR5cGUgaXMg
XCJuYXZpZ2F0aW9uXCIiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMocGVzWzBdLm5hbWUsIHdpbmRv
dy5sb2NhdGlvbi50b1N0cmluZygpLCAibmFtZSBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgZG9jdW1l
bnQiKTsKKyAgICB9CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
CisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAg
ICAgIGNoZWNrRW50cnkoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgY2hlY2tF
bnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpKTsKKyAgICAgICAg
ICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKHdpbmRvdy5sb2NhdGlvbi50
b1N0cmluZygpKSk7CisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAg
IHQuZG9uZSgpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworICB9LCAibmF2aWdhdGlvbiBlbnRyeSBpcyBv
YnNlcnZhYmxlIik7Cis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3Rh
cnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNv
bm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysr
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0CSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0IHNlY3VyZUNv
bm5lY3Rpb25TdGFydCB2YWx1ZSBpcyBhcyBleHBlY3RlZCB3aGVuIHJldXNlZAorCkluZGV4OiBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCShub25leGlz
dGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKzx0aXRsZT5OYXZpZ2F0aW9uIFRpbWlu
ZyBzZWN1cmVjb25uZWN0aW9uc3RhcnQgcmV1c2U8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2NvbnN0IHQgPSBhc3lu
Y190ZXN0KCJUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZhbHVlIGlzIGFzIGV4cGVj
dGVkIHdoZW4gcmV1c2VkIik7Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHQu
c3RlcF9mdW5jX2RvbmUoZSA9PiB7CisgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIpOwor
fSkpOworPC9zY3JpcHQ+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL3NlY3VyZS1jb25uZWN0aW9u
LWludGVyaW0uaHRtbCI+CisKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9u
X3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5l
Y3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzEzODMp
CisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMyw1ICszLDUgQEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0
cyB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBoYXMgYSBub24temVybyB2YWx1ZS4KIAogCi1G
QUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFy
dCcpCitGQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gYXNz
ZXJ0X2dyZWF0ZXJfdGhhbjogc2VjdXJlQ29ubmVjdGlvblN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVj
dGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBnb3QgMAogCkluZGV4OiBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBv
cnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjcx
MzgzKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw0IEBACiAKLUZBSUwgc3VwcG9ydGVkRW50cnlUeXBl
cyBjb250YWlucyAnbmF2aWdhdGlvbicuIGFzc2VydF90cnVlOiBUaGVyZSBzaG91bGQgYmUgYW4g
ZW50cnkgJ25hdmlnYXRpb24nIGluIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlU
eXBlcyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNv
bnRhaW5zICduYXZpZ2F0aW9uJy4KK1BBU1MgJ25hdmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJl
IG9ic2VydmFibGUuCiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnku
d29ya2VyLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0
aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3MTM4MykKKysrIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDYgQEAKIAotRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNv
bnRhaW5zICduYXZpZ2F0aW9uJy4gYXNzZXJ0X3RydWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRy
eSAnbmF2aWdhdGlvbicgaW4gUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVz
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2Fn
ZSA9IG51bGwKKworUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9u
Jy4KK1RJTUVPVVQgJ25hdmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRl
c3QgdGltZWQgb3V0CiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0
CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0
IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVjb2Rl
ZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQgaW4g
dGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2
ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCBhc3NlcnRfZ3JlYXRlcl90
aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKK0ZBSUwg
VGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9ubG9h
ZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEg
InVuZGVmaW5lZCIKKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbAkobm9uZXhpc3RlbnQpCisr
KyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSw0OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1l
dGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5h
dmlnYXRpb24gYXR0cmlidXRlczwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0
aXRsZT0iTW96aWxsYSIgaHJlZj0iaHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAg
ICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9u
LXRpbWluZy0yLyNwcm9jZXNzaW5nLW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iL2NvbW1vbi9wZXJmb3JtYW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwv
aDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBl
bmNvZGVkQm9keVNpemUgYW5kIGRlY29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVj
dCB2YWx1ZXMgd2hlbiBjaGVja2VkIGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAg
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZl
bnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4gewor
ICAgICAgICAgICAgICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuKGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAx
MDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihl
bnRyeS5kZWNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0p
KTsKKyAgICAgICAgICAgIH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3Bl
ciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVu
ZXIoImxvYWQiLCB0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAg
bGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50
cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXpl
LCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlv
biAodCkgeworICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19k
b25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUs
IDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRl
cl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXpl
LCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAg
ICAgICAgICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVy
IHZhbHVlIGR1cmluZyBhIHRhc2sgYWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkp
OworICAgICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVy
IHZhbHVlIGR1cmluZyBvbmxvYWQiKTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hl
Y2stZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1z
YW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTQsMTYgKzQs
MTYgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgdwogCiAKIAotRkFJ
TCBSZWRpcmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0LWluIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgUmVk
aXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBTYW1lLWNyb3NzLXNh
bWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgY3Jvc3MtY3Jv
c3Mtc2FtZSBSZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2
aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBz
YW1lIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgU2Ft
ZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJyki
Ci1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmlnaW4gcmVkaXJlY3QgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScp
IgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBl
JykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0
IHdpdGggcGFydGlhbCBUQU8gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNy
b3NzIG9yaWdpbiByZWRpcmVjdCB3aXRoIFRBTyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCitGQUlMIFJlZGlyZWN0IGNoYWluIHdp
dGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHVubG9hZEV2ZW50
U3RhcnQgdG8gYmUgMC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgUmVkaXJlY3QgY2hh
aW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHVubG9hZEV2ZW50
U3RhcnQgdG8gYmUgMC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgU2FtZS1jcm9zcy1z
YW1lIHJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbiBhc3NlcnRfdHJ1ZTogRXhwZWN0
ZWQgdW5sb2FkRXZlbnRTdGFydCB0byBiZSAwLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJ
TCBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbiBhc3Nl
cnRfdHJ1ZTogRXhwZWN0ZWQgdW5sb2FkRXZlbnRTdGFydCB0byBiZSAwLiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQorRkFJTCBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4gYXNzZXJ0X3Ry
dWU6IEV4cGVjdGVkIHVubG9hZEV2ZW50U3RhcnQgdG8gYmUgMC4gZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4KK0ZBSUwgTm8gcHJldmlv
dXMgZG9jdW1lbnQgYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHVubG9hZEV2ZW50U3RhcnQgdG8gYmUg
MC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9j
dW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdAorRkFJTCBObyBwcmV2aW91cyBkb2N1bWVu
dCB3aXRoIHNhbWUgb3JpZ2luIHJlZGlyZWN0IGFzc2VydF90cnVlOiBFeHBlY3RlZCB1bmxvYWRF
dmVudFN0YXJ0IHRvIGJlIDAuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIE5vIHByZXZp
b3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IGFzc2VydF90cnVlOiBFeHBl
Y3RlZCB1bmxvYWRFdmVudFN0YXJ0IHRvIGJlIDAuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitG
QUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGgg
cGFydGlhbCBUQU8gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHVubG9hZEV2ZW50U3RhcnQgdG8gYmUg
MC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0
aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHVu
bG9hZEV2ZW50U3RhcnQgdG8gYmUgMC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApJbmRleDog
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay5odG1sCShyZXZpc2lvbiAyNzEzODMp
CisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC05Miw3ICs5Miw3IEBACiAgICAgICAgICAgICAgICAgY29uc3QgZW50cnkgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CiAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhlbnRyeS50eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlv
biB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOwogICAgICAgICAgICAgICAgIGlmICghdW5sb2FkX2V4
cG9zZWQpIHsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS51bmxvYWRF
dmVudFN0YXJ0LCAwLCAiRXhwZWN0ZWQgdW5sb2FkRXZlbnRTdGFydCB0byBiZSAwLiIpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShlbnRyeS51bmxvYWRFdmVudFN0YXJ0ID09IDAs
ICJFeHBlY3RlZCB1bmxvYWRFdmVudFN0YXJ0IHRvIGJlIDAuIik7CiAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMoZW50cnkudW5sb2FkRXZlbnRFbmQsIDAsICJFeHBlY3RlZCB1bmxv
YWRFdmVudEVuZCB0byBiZSAwLiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkudW5sb2FkRXZlbnRTdGFydCwg
MCwgIkV4cGVjdGVkIHVubG9hZEV2ZW50U3RhcnQgdG8gbm90IGJlIDAuIik7CkluZGV4OiBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNv
dXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jl
c291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMJKHdvcmtpbmcgY29weSkKQEAgLTQyLDI1ICs0
MiwyNSBAQCBmdW5jdGlvbiB0ZXN0X25hbWVzcGFjZShjaGlsZF9uYW1lLCBza2lwCiB7CiAgICAg
aWYgKHNraXBfcm9vdCA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgIHZhciBtc2cgPSAnd2luZG93
LnBlcmZvcm1hbmNlIGlzIGRlZmluZWQnOwotICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uICgpIHsg
YXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1lc3BhY2UgIT09IHVuZGVmaW5lZCwgbXNnKTsgfSwg
bXNnKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbiAoKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBl
cmZvcm1hbmNlTmFtZXNwYWNlLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZyk7CiAgICAgfQogCiAg
ICAgaWYgKGNoaWxkX25hbWUgIT09IHVuZGVmaW5lZCkgewogICAgICAgICB2YXIgbXNnMiA9ICd3
aW5kb3cucGVyZm9ybWFuY2UuJyArIGNoaWxkX25hbWUgKyAnIGlzIGRlZmluZWQnOwotICAgICAg
ICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtj
aGlsZF9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cyKTsgfSwgbXNnMik7CisgICAgICAgIHdwX3Rl
c3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2No
aWxkX25hbWVdLCB1bmRlZmluZWQsIG1zZzIpOyB9LCBtc2cyKTsKICAgICB9CiB9CiAKIGZ1bmN0
aW9uIHRlc3RfYXR0cmlidXRlX2V4aXN0cyhwYXJlbnRfbmFtZSwgYXR0cmlidXRlX25hbWUsIHBy
b3BlcnRpZXMpCiB7CiAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIHBhcmVu
dF9uYW1lICsgJy4nICsgYXR0cmlidXRlX25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAgICB3cF90
ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRf
bmFtZV1bYXR0cmlidXRlX25hbWVdICE9PSB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVy
dGllcyk7CisgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9y
bWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2F0dHJpYnV0ZV9uYW1lXSwgdW5kZWZpbmVkLCBt
c2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQogCiBmdW5jdGlvbiB0ZXN0X2VudW0ocGFyZW50
X25hbWUsIGVudW1fbmFtZSwgdmFsdWUsIHByb3BlcnRpZXMpCiB7CiAgICAgdmFyIG1zZyA9ICd3
aW5kb3cucGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsgJy4nICsgZW51bV9uYW1lICsgJyBp
cyBkZWZpbmVkLic7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9y
bWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2VudW1fbmFtZV0gIT09IHVuZGVmaW5lZCwgbXNn
KTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRf
bm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9uYW1lXSwg
dW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogCiAgICAgbXNnID0gJ3dpbmRv
dy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBlbnVtX25hbWUgKyAnID0gJyAr
IHZhbHVlOwogICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9lcXVhbHMocGVyZm9ybWFu
Y2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2VudW1fbmFtZV0sIHZhbHVlLCBtc2cpOyB9LCBtc2cs
IHByb3BlcnRpZXMpOwpAQCAtMTIyLDUgKzEyMiw1IEBAIGZ1bmN0aW9uIHRlc3RfZ3JlYXRlcl9v
cl9lcXVhbHModmFsdWUsIGcKIAogZnVuY3Rpb24gdGVzdF9ub3RfZXF1YWxzKHZhbHVlLCBub3Rl
cXVhbHMsIG1zZywgcHJvcGVydGllcykKIHsKLSAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3Nl
cnRfdHJ1ZSh2YWx1ZSAhPT0gbm90ZXF1YWxzLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwor
ICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHZhbHVlLCBub3RlcXVh
bHMsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9NRVRBLnltbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQgQEAKK3NwZWM6IGh0dHBzOi8v
dzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8KK3N1Z2dlc3RlZF9yZXZpZXdlcnM6
CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxh
Zy1hZnRlci10aW1lb3V0LmFueS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZs
YWctYWZ0ZXItdGltZW91dC5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJl
ZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTEg
QEAKK2FzeW5jX3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB0LnN0
ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8gQWZ0ZXIgYSB0aW1lb3V0LCBQZXJmb3JtYW5jZU9i
c2VydmVyIHNob3VsZCBzdGlsbCByZWNlaXZlIGVudHJ5IGlmIHVzaW5nIHRoZSBidWZmZXJlZCBm
bGFnLgorICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHQuc3RlcF9mdW5jX2RvbmUobGlzdCA9
PiB7CisgICAgICBjb25zdCBlbnRyaWVzID0gbGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICBhc3Nl
cnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLCAnVGhlcmUgc2hvdWxkIGJlIDEgbWFyayBlbnRy
eS4nKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICdtYXJrJyk7
CisgICAgfSkpLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAgfSwg
MTAwKTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzZWVzIGVu
dHJ5IGFmdGVyIHRpbWVvdXQnKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1vYnNlcnZl
ci5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFu
eS5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55
LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTUgQEAKK2FzeW5jX3Rlc3QoIHQ9PiB7Cisg
IGZvciAobGV0IGkgPSAwOyBpIDwgNTA7IGkrKykKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdmb28n
ICsgaSk7CisgIGxldCBtYXJrc0NyZWF0ZWQgPSA1MDsKKyAgbGV0IG1hcmtzUmVjZWl2ZWQgPSAw
OworICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICBtYXJrc1JlY2VpdmVk
ICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICBpZiAobWFya3NDcmVhdGVkIDwgMTAw
KSB7CisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCdiYXInICsgbWFya3NDcmVhdGVkKTsKKyAgICAg
IG1hcmtzQ3JlYXRlZCsrOworICAgIH0KKyAgICBpZiAobWFya3NSZWNlaXZlZCA9PSAxMDApCisg
ICAgICB0LmRvbmUoKTsKKyAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1
ZX0pOworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNob3VsZCBz
ZWUgcGFzdCBhbmQgZnV0dXJlIGVudHJpZXMuJyk7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlk
LWVudHJpZXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQt
ZW50cmllcy1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxp
ZC1lbnRyaWVzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDMgQEAKKwor
UEFTUyBHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cuCisKSW5kZXg6
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
Z2V0LWludmFsaWQtZW50cmllcy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWlu
dmFsaWQtZW50cmllcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjcgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2FzeW5jX3Rl
c3QoZnVuY3Rpb24odCkgeworICBwZXJmb3JtYW5jZS5tYXJrKCd3aW5kb3dNYXJrJyk7CisgIGNv
bnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoInJlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVz
LmpzIik7CisgIHdvcmtlci5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkgeworICAgIGFzc2Vy
dF9lcXVhbHMoZXZlbnQuZGF0YVsnaW52YWxpZCddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUg
MCBpbnZhbGlkIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhWydtYXJr
J10sIDEsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5kYXRhWydtZWFzdXJlJ10sIDAsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAw
IG1lYXN1cmUgZW50cmllcy4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoJ2ludmFsaWQnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0
IGhhdmUgMCBpbnZhbGlkIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCdtYXJrJykubGVuZ3RoLCAxLAorICAgICAgJ1RoZSB3aW5kb3cg
bXVzdCBoYXZlIDEgbWFyayBlbnRyeS4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoJ21lYXN1cmUnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRv
dyBtdXN0IGhhdmUgMCBtZWFzdXJlIGVudHJpZXMuJykKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwg
J0dldCBpbnZhbGlkIGVudHJpZXMgZnJvbSB3b3JrZXIgYW5kIHdpbmRvdy4nKTsKKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzCShub25leGlzdGVudCkKKysrIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvaWRsaGFybmVzcy5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAor
Ly8gTUVUQTogZ2xvYmFsPXdpbmRvdyx3b3JrZXIKKy8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2Vz
L1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvaWRsaGFybmVzcy5q
cworCisvLyBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvCisKKyd1
c2Ugc3RyaWN0JzsKKworaWRsX3Rlc3QoCisgIFsncGVyZm9ybWFuY2UtdGltZWxpbmUnXSwKKyAg
Wydoci10aW1lJywgJ2RvbSddLAorICBhc3luYyBpZGxfYXJyYXkgPT4geworICAgIGlkbF9hcnJh
eS5hZGRfb2JqZWN0cyh7CisgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3JtYW5jZSddLAorICAg
ICAgUGVyZm9ybWFuY2VPYnNlcnZlcjogWydvYnNlcnZlciddLAorICAgICAgUGVyZm9ybWFuY2VP
YnNlcnZlckVudHJ5TGlzdDogWydlbnRyeUxpc3QnXSwKKyAgICB9KTsKKworICAgIHNlbGYuZW50
cnlMaXN0ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAg
c2VsZi5vYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHJlc29sdmUpOworICAgICAg
b2JzZXJ2ZXIub2JzZXJ2ZSh7IGVudHJ5VHlwZXM6IFsnbWFyayddIH0pOworICAgICAgcGVyZm9y
bWFuY2UubWFyaygndGVzdCcpOworICAgIH0pOworICB9CispOwpJbmRleDogTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0
aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMJKG5vbmV4aXN0ZW50KQor
KysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSwzMiBAQAorcHJvbWlzZV90ZXN0KCgpID0+IHsKKyAgLy8gVGhl
IGZpcnN0IHByb21pc2Ugd2FpdHMgZm9yIG9uZSBidWZmZXJlZCBmbGFnIG9ic2VydmVyIHRvIHJl
Y2VpdmUgMyBlbnRyaWVzLgorICBjb25zdCBwcm9taXNlMSA9IG5ldyBQcm9taXNlKHJlc29sdmUx
ID0+IHsKKyAgICBsZXQgbnVtT2JzZXJ2ZWQxID0gMDsKKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigoZW50cnlMaXN0LCBvYnMpID0+IHsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBv
YnNlcnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBhIHJlZ3VsYXIgb2JzZXJ2ZXIgZGV0ZWN0cyBh
IG1hcmsuCisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAg
bnVtT2JzZXJ2ZWQxICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51
bU9ic2VydmVkMSA9PSAzKQorICAgICAgICAgIHJlc29sdmUxKCk7CisgICAgICB9KS5vYnNlcnZl
KHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgICBvYnMuZGlzY29ubmVjdCgp
OworICAgIH0pLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgcGVyZm9ybWFu
Y2UubWFyaygnZm9vJyk7CisgIH0pOworICAvLyBUaGUgc2Vjb25kIHByb21pc2Ugd2FpdHMgZm9y
IGFub3RoZXIgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAg
Y29uc3QgcHJvbWlzZTIgPSBuZXcgUHJvbWlzZShyZXNvbHZlMiA9PiB7CisgICAgc3RlcF90aW1l
b3V0KCgpID0+IHsKKyAgICAgIGxldCBudW1PYnNlcnZlZDIgPSAwOworICAgICAgLy8gVGhpcyBi
dWZmZXJlZCBmbGFnIG9ic2VydmVyIGlzIGNvbnN0cnVjdGVkIGFmdGVyIGEgZGVsYXkgb2YgMTAw
bXMuCisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVt
T2JzZXJ2ZWQyICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9i
c2VydmVkMiA9PSAzKQorICAgICAgICAgIHJlc29sdmUyKCk7CisgICAgICB9KS5vYnNlcnZlKHt0
eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgfSwgMTAwKTsKKyAgICBwZXJmb3Jt
YW5jZS5tYXJrKCdiYXInKTsKKyAgfSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ21lb3cnKTsKKyAg
Ly8gUGFzcyBpZiBhbmQgb25seSBpZiBib3RoIGJ1ZmZlcmVkIG9ic2VydmVycyByZWNlaXZlZCBh
bGwgMyBtYXJrIGVudHJpZXMuCisgIHJldHVybiBQcm9taXNlLmFsbChbcHJvbWlzZTEsIHByb21p
c2UyXSk7Cit9LCAnTXVsdGlwbGUgUGVyZm9ybWFuY2VPYnNlcnZlcnMgd2l0aCBidWZmZXJlZCBm
bGFnIHNlZSBhbGwgZW50cmllcycpOwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dAko
bm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS1leHBlY3RlZC50eHQJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgYSBwb3N0TWVzc2Fn
ZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZhaWxzCisKSW5kZXg6IExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25h
YmxlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAkobm9uZXhp
c3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsMTAgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgY29uc3QgdCA9IGFzeW5jX3Rlc3Qo
IlRlc3QgdGhhdCBhIHBvc3RNZXNzYWdlIG9mIGEgcGVyZm9ybWFuY2UgZW50cnkgZmFpbHMiKTsK
KyAgYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9PiB7Cisg
ICAgYXNzZXJ0X2VxdWFscyhlLmRhdGEsICJQQVNTIik7CisgIH0pKTsKKzwvc2NyaXB0PgorPGlm
cmFtZSBzcmM9InJlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIj48L2lmcmFtZT4KSW5k
ZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCShub25leGlzdGVudCkKKysr
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsMTIgQEAKK2FzeW5jX3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2Zv
bycpOworICAvLyBVc2UgYSB0aW1lb3V0IHRvIGVuc3VyZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB0
ZXN0IHJ1bnMgYWZ0ZXIgdGhlIGVudHJ5IGlzIGNyZWF0ZWQuCisgIHQuc3RlcF90aW1lb3V0KCgp
ID0+IHsKKyAgICAvLyBPYnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcgc2V0IHRvIGZhbHNlIHNo
b3VsZCBub3Qgc2VlIGVudHJ5LgorICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCgpID0+IHsK
KyAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1Nob3VsZCBub3QgaGF2ZSBvYnNlcnZlZCBhbnkgZW50
cnkhJyk7CisgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogZmFsc2V9KTsK
KyAgICAvLyBVc2UgYSB0aW1lb3V0IHRvIGdpdmUgdGltZSB0byB0aGUgb2JzZXJ2ZXIuCisgICAg
dC5zdGVwX3RpbWVvdXQodC5zdGVwX2Z1bmNfZG9uZSgoKSA9PiB7fSksIDEwMCk7CisgIH0sIDAp
OworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIgd2l0aG91dCBidWZmZXJlZCBmbGFnIHNldCB0byBm
YWxzZSBjYW5ub3Qgc2VlIHBhc3QgZW50cmllcy4nKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFu
Y2VlbnRyeS10b2pzb24uYW55LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2Vl
bnRyeS10b2pzb24uYW55LmpzCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2Vl
bnRyeS10b2pzb24uYW55LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjEgQEAKK3Rlc3Qo
KCkgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdtYXJrTmFtZScpOworICBwZXJmb3JtYW5jZS5t
ZWFzdXJlKCdtZWFzdXJlTmFtZScpOworCisgIGNvbnN0IGVudHJpZXMgPSBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKCk7CisgIGNvbnN0IHBlcmZvcm1hbmNlRW50cnlLZXlzID0gWworICAgICduYW1l
JywKKyAgICAnZW50cnlUeXBlJywKKyAgICAnc3RhcnRUaW1lJywKKyAgICAnZHVyYXRpb24nCisg
IF07CisgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7ICsraSkgeworICAgIGFz
c2VydF9lcXVhbHModHlwZW9mKGVudHJpZXNbaV0udG9KU09OKSwgJ2Z1bmN0aW9uJyk7CisgICAg
Y29uc3QganNvbiA9IGVudHJpZXNbaV0udG9KU09OKCk7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBl
b2YoanNvbiksICdvYmplY3QnKTsKKyAgICBmb3IgKGNvbnN0IGtleSBvZiBwZXJmb3JtYW5jZUVu
dHJ5S2V5cykgeworICAgICAgYXNzZXJ0X2VxdWFscyhqc29uW2tleV0sIGVudHJpZXNbaV1ba2V5
XSwKKyAgICAgICAgYGVudHJpZXNbJHtpfV0udG9KU09OKCkuJHtrZXl9IHNob3VsZCBtYXRjaCBl
bnRyaWVzWyR7aX1dLiR7a2V5fWApOworICAgIH0KKyAgfQorfSwgJ1Rlc3QgdG9KU09OKCkgaW4g
UGVyZm9ybWFuY2VFbnRyeScpOwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcwkobm9u
ZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanMJKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw2NiBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2
ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBjYWxsYmFja0Nv
dW50ID0gMDsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAg
ICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAg
Y2FsbGJhY2tDb3VudCsrOworCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDEpIHsK
KyAgICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAg
ICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAg
ICAgICAgICBdKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsi
bWFyayJdfSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7Cisg
ICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQg
PT09IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygp
LCBbCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisg
ICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1i
ZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0
ZS10by1tZWFzdXJlIik7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVz
OiBbIm1lYXN1cmUiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJr
MyIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFj
a0NvdW50ID09PSAzKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVu
dHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJt
ZWFzdXJlMyJ9LAorICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJr
LWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIn0sCisgICAgICAgICAgICBd
KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdl
LW9ic2VydmUtc3RhdGUtdG8tYm90aCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5t
ZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIik7Cisg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3Vy
ZSJdfSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcms0Iik7CisgICAg
ICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmU0Iik7CisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09
IDQpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBb
CisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtYmVm
b3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgifSwKKyAgICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTQifSwKKyAgICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazQifSwKKyAgICAgICAgICAgIF0pOworICAgICAgICAg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrLWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAg
ICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYmVmb3JlLWRpc2Nvbm5l
Y3QiKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyay1hZnRlci1kaXNjb25uZWN0Iik7CisgICAgICAgICAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYWZ0ZXItZGlzY29ubmVjdCIpOwor
ICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQor
CisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhlIGNhbGxiYWNrIG11c3Qgbm90IGJlIGlu
dm9rZWQgYWZ0ZXIgZGlzY29ubmVjdGluZyIpOworICAgICAgICB9KQorICAgICAgKTsKKworICAg
IG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgi
bWVhc3VyZTEiKTsKKyAgfSwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXIgbW9kaWZpY2F0aW9ucyBpbnNp
ZGUgY2FsbGJhY2sgc2hvdWxkIHVwZGF0ZSBmaWx0ZXJpbmcgYW5kIG5vdCBjbGVhciBidWZmZXIi
KTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFu
eS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZl
ZC10eXBlcy5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJl
bW92ZXMtb2JzZXJ2ZWQtdHlwZXMuYW55LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTkg
QEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCithc3luY190ZXN0
KGZ1bmN0aW9uICh0KSB7CisgIGNvbnN0IG9ic2VydmVyICA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAv
LyBUaGVyZSBzaG91bGQgYmUgbm8gbWFyayBlbnRyeS4KKyAgICAgICAgY2hlY2tFbnRyaWVzKGVu
dHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWVhc3VyZSIs
IG5hbWU6ICJiIn1dKTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9KQorICAgICk7CisgIG9i
c2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIn0pOworICAvLyBEaXNjb25uZWN0IHRoZSBvYnNl
cnZlci4KKyAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAvLyBOb3csIG9ubHkgb2JzZXJ2ZSBt
ZWFzdXJlLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWVhc3VyZSJ9KTsKKyAgcGVyZm9y
bWFuY2UubWFyaygiYSIpOworICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJiIik7Cit9LCAiVHlwZXMg
b2JzZXJ2ZWQgYXJlIGZvcmdvdHRlbiB3aGVuIGRpc2Nvbm5lY3QoKSBpcyBjYWxsZWQuIik7Cklu
ZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tZGlzY29ubmVjdC5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25u
ZWN0LmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM3IEBACisvLyBNRVRBOiBzY3Jp
cHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7
CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQu
c3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGFzc2VydF91
bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBub3QgYmUgaW52b2tlZCIpOworICAgICAgICB9
KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAi
bWVhc3VyZSIsICJuYXZpZ2F0aW9uIl19KTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7Cisg
ICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgImRpc2Nvbm5lY3RlZCBjYWxsYmFj
a3MgbXVzdCBub3QgYmUgaW52b2tlZCIpOworCisgIHRlc3QoZnVuY3Rpb24gKCkgeworICAgIHZh
ciBvYnMgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoKSB7IHJldHVybiB0cnVl
OyB9KTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOworICAgIG9icy5kaXNjb25uZWN0KCk7CisgIH0s
ICJkaXNjb25uZWN0aW5nIGFuIHVuY29ubmVjdGVkIG9ic2VydmVyIGlzIGEgbm8tb3AiKTsKKwor
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qs
IG9icykgeworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBu
b3QgYmUgaW52b2tlZCIpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNl
cnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygi
bWFyazEiKTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tYXJrKCJtYXJrMiIpOworICAgIHQuc3RlcF90aW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAg
IHQuZG9uZSgpOworICAgIH0sIDIwMDApOworICB9LCAiQW4gb2JzZXJ2ZXIgZGlzY29ubmVjdGVk
IGFmdGVyIGEgbWFyayBtdXN0IG5vdCBoYXZlIGl0cyBjYWxsYmFjayBpbnZva2VkIik7CkluZGV4
OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1lbnRyaWVzLXNvcnQuYW55LmpzCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmll
cy1zb3J0LmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDY0IEBACisvLyBNRVRBOiBz
Y3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIHN0b3JlZF9lbnRyaWVz
X2J5X3R5cGUgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisKKyAg
ICAgICAgICBzdG9yZWRfZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICAg
ICAgc3RvcmVkX2VudHJpZXNfYnlfdHlwZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJt
YXJrIik7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNfYnlfbmFtZSA9IGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlOYW1lKCJuYW1lLXJlcGVhdCIpOworICAgICAgICAgIHZhciBzdGFydFRpbWVPZk1h
cmsyID0gZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIilbMF0uc3RhcnRUaW1lOwor
CisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXMpOworICAgICAgICAgIGNoZWNr
RW50cmllcyhzdG9yZWRfZW50cmllcywgWworICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1
cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJl
IiwgbmFtZTogIm1lYXN1cmUyIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIs
IG5hbWU6ICJtZWFzdXJlMyJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBu
YW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm1hcmsxIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJr
MiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1t
YXRjaGluZy1tYXJrMi0xIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5h
bWU6ICJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAi
bWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAg
Y2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfdHlwZSk7CisgICAgICAgICAgY2hlY2tFbnRy
aWVzKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5h
bWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFt
ZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUt
cmVwZWF0In0sCisgICAgICAgICAgXSk7CisKKyAgICAgICAgICBjaGVja1NvcnRlZChzdG9yZWRf
ZW50cmllc19ieV9uYW1lKTsKKyAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXNf
YnlfbmFtZSwgWworICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibmFt
ZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUt
cmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJl
cGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayIsICJtZWFzdXJlIl19KTsKKworICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1
cmUoIm1lYXN1cmUxIik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbWFyazEgIT09IG1hcmsyIHN0
YXJ0VGltZSBieSBtYWtpbmcgc3VyZSBwZXJmb3JtYW5jZS5ub3cgYWR2YW5jZXMuCisgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3Vy
ZSgibWVhc3VyZTIiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtbWF0
Y2hpbmctbWFyazItMSIsICJtYXJrMiIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsyICE9
PSBtYXJrMyBzdGFydFRpbWUgYnkgbWFraW5nIHN1cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2Vz
LgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1yZXBlYXQiKTsKKyAgICBzZWxmLnBl
cmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUzIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFz
dXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTIiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7IC8v
IEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2lsbCBkaWZmZXIuCisgICAgc2VsZi5wZXJm
b3JtYW5jZS5tYXJrKCJuYW1lLXJlcGVhdCIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG5hbWUt
cmVwZWF0IHN0YXJ0VGltZSB3aWxsIGRpZmZlci4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1
cmUoIm5hbWUtcmVwZWF0Iik7CisgIH0sICJnZXRFbnRyaWVzLCBnZXRFbnRyaWVzQnlUeXBlLCBn
ZXRFbnRyaWVzQnlOYW1lIHNvcnQgb3JkZXIiKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmll
cy5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwkobm9u
ZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55LmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsMzggQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5q
cworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcg
UGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1dLCAi
Z2V0RW50cmllcyIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlUeXBlKCJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5VHlwZSIpOworICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAg
ICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKyAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCIyMzQ1NjciKS5s
ZW5ndGgsIDAsCisgICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQg
ZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5
TmFtZSgibWFyazEiKSwKKyAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bWFyazEifV0sICJnZXRFbnRyaWVzQnlOYW1lIik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiKS5sZW5ndGgsIDAsCisgICAgICAgICAg
ICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgiMjM0NTY3IikubGVuZ3Ro
LCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRy
eSIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1l
KCJtYXJrMSIsICJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSIpOworICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiwgIm1lYXN1
cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlw
ZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRy
eUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiLCAibWVhc3VyZSIpLmxlbmd0aCwgMCwKKyAg
ICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8gZXhwZWN0ZWQg
ZW50cnkiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlO
YW1lKCJtYXJrMSIsICIyMzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmll
c0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAg
ICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0p
CisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7
CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICB9LCAiZ2V0RW50cmllcywg
Z2V0RW50cmllc0J5VHlwZSBhbmQgZ2V0RW50cmllc0J5TmFtZSB3b3JrIik7CkluZGV4OiBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJr
LW1lYXN1cmUuYW55LmpzCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJl
LmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDYxIEBACisvLyBNRVRBOiBzY3JpcHQ9
cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyICA9IG5ldyBQZXJm
b3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0
LCBvYnMpIHsKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRf
ZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKHN0
b3JlZF9lbnRyaWVzLmxlbmd0aCA+PSA0KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoc3Rv
cmVkX2VudHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bWFyazEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsy
In0sCisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJl
MSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3Vy
ZTIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAg
dC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZl
ci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisgIH0sICJlbnRy
aWVzIGFyZSBvYnNlcnZhYmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAg
IHZhciBtYXJrX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2Jz
KSB7CisgICAgICAgICAgbWFya19lbnRyaWVzID0KKyAgICAgICAgICAgIG1hcmtfZW50cmllcy5j
b25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKG1hcmtfZW50cmll
cy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKG1hcmtfZW50cmllcywK
KyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAg
ICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifV0pOworICAgICAg
ICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAg
ICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsK
KyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7CisgIH0sICJtYXJrIGVudHJpZXMg
YXJlIG9ic2VydmFibGUiKTsKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFy
IG1lYXN1cmVfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5j
ZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMp
IHsKKyAgICAgICAgICBtZWFzdXJlX2VudHJpZXMgPQorICAgICAgICAgICAgbWVhc3VyZV9lbnRy
aWVzLmNvbmNhdChlbnRyeUxpc3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBpZiAobWVhc3Vy
ZV9lbnRyaWVzLmxlbmd0aCA+PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMobWVhc3Vy
ZV9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTog
Im1lYXN1cmUxIn0sCisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6
ICJtZWFzdXJlMiJ9XSk7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
ICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAg
IG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVh
c3VyZSgibWVhc3VyZTIiKTsKKyAgfSwgIm1lYXN1cmUgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIp
OwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw3IEBACitQ
ZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQKKwor
UGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3Vz
bHkgYnVmZmVyZWQgZW50cmllcworCisKK1BBU1MgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVm
ZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcworCkluZGV4
OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzCShub25leGlzdGVudCkKKysr
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qcwkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDE3IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMK
KworYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVy
Zm9ybWFuY2VPYnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qp
IHsKKyAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAg
ICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJlYXJseSJ9XSk7CisgICAgICAgIG9ic2Vy
dmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9KQorICAgICk7Cisg
IHBlcmZvcm1hbmNlLm1hcmsoImVhcmx5Iik7CisgIC8vIFRoaXMgY2FsbCB3aWxsIG5vdCB0cmln
Z2VyIGFueXRoaW5nLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8g
VGhpcyBjYWxsIHNob3VsZCBvdmVycmlkZSB0aGUgcHJldmlvdXMgY2FsbCBhbmQgZGV0ZWN0IHRo
ZSBlYXJseSBtYXJrLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayIsIGJ1ZmZlcmVk
OiB0cnVlfSk7Cit9LCAiVHdvIGNhbGxzIG9mIG9ic2VydmUoKSB3aXRoIHRoZSBzYW1lICd0eXBl
JyBjYXVzZSBvdmVycmlkZS4iKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCShub25leGlzdGVudCkKKysrIExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tb2JzZXJ2ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsODYgQEAKKzwhRE9D
VFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2Vy
dmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8L3RpdGxlPgorPG1ldGEgbmFt
ZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
c3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icGVyZm9ybWFuY2VvYnNlcnZlcnMu
anMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBQZXJmb3JtYW5jZU9ic2Vy
dmVySW5pdC5idWZmZXJlZDwvaDE+Cis8cD4KK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZl
cmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKzwvcD4KKzxk
aXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7
CisgICAgZnVuY3Rpb24gaW5pdFRlc3QoKSB7CisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgICBlbnRyeUxpc3QuZ2V0
RW50cmllcygpLmZvckVhY2goZnVuY3Rpb24oZW50cnkpIHsKKyAgICAgICAgICBpZiAoc2hvdWxk
RXhjbHVkZShlbnRyeSkpIHsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAg
ICAgICAgICBvYnNlcnZlZEVudHJpZXMucHVzaChlbnRyeSk7CisgICAgICAgICAgaWYgKG9ic2Vy
dmVkRW50cmllcy5sZW5ndGggPT09IGVudHJ5VHlwZXMubGVuZ3RoKSB7CisgICAgICAgICAgICBv
YnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBydW5UZXN0KCk7CisgICAgICAgICAg
fQorICAgICAgICB9KTsKKyAgICAgIH0pLm9ic2VydmUoe2VudHJ5VHlwZXN9KTsKKworICAgICAg
Ly8gY3JlYXRlcyBhIGByZXNvdXJjZWAgZW50cnkKKyAgICAgIHZhciBpbWcgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICAgIGltZy5zcmMgPSAiLi9yZXNvdXJjZXMvc3F1YXJl
LnBuZyI7CisgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CisKKyAgICAgIHBl
cmZvcm1hbmNlLm1hcmsoIm1hcmtOYW1lIik7IC8vIGNyZWF0ZXMgYSBgbWFya2AgZW50cnkKKyAg
ICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmVOYW1lIik7IC8vIGNyZWF0ZXMgYSBgbWVh
c3VyZWAgZW50cnkKKyAgICB9CisgICAgZnVuY3Rpb24gc2hvdWxkRXhjbHVkZShlbnRyeSkgewor
ICAgICAgLy8gZXhjbHVkZSBhbGwgYHJlc291cmNlYCBlbnRyaWVzIHRoYXQgYXJlbid0IGZvciAi
c3F1YXJlLnBuZyIKKyAgICAgIHJldHVybiBlbnRyeS5lbnRyeVR5cGUgPT09ICJyZXNvdXJjZSIg
JiYKKyAgICAgICAgICAgICBlbnRyeS5uYW1lLmluZGV4T2YoInNxdWFyZS5wbmciKSA9PT0gLTE7
CisgICAgfQorICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAvLyB0aGlzIFBlcmZvcm1h
bmNlT2JzZXJ2ZXIgaXMgYSBub3AgYmVjYXVzZSB3ZSd2ZSBhbHJlYWR5IGJlZW4gbm90aWZpZWQg
YWJvdXQgYWxsIG9mIG91ciBgZW50cnlUeXBlc2AKKyAgICAgIHZhciBwb19ub3AgPSBuZXcgUGVy
Zm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAg
ICBpZiAoZW50cnlMaXN0LmdldEVudHJpZXMoKS5maW5kKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAg
ICAgICAgcmV0dXJuICFzaG91bGRFeGNsdWRlKGVudHJ5KTsKKyAgICAgICAgfSkpIHsKKyAgICAg
ICAgICBhc3NlcnRfdW5yZWFjaGVkKCJ0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FsbGJhY2sg
c2hvdWxkIG5ldmVyIGJlIGNhbGxlZCIpOworICAgICAgICB9CisgICAgICB9KTsKKyAgICAgIHBv
X25vcC5vYnNlcnZlKHsKKyAgICAgICAgZW50cnlUeXBlcywKKyAgICAgIH0pOworCisgICAgICAv
LyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgc2hvdWxkIGJlIG5vdGlmaWVkIGFib3V0IHRoZSBw
cmV2aW91c2x5CisgICAgICAvLyBidWZmZXJlZCBtYXJrIGVudHJ5IG9ubHkKKyAgICAgIGNvbnN0
IGJ1ZmZlcmVkRW50cmllcyA9IFtdOworICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVu
Y3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgZW50cnlMaXN0LmdldEVudHJp
ZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAgICAgaWYgKHNob3VsZEV4Y2x1
ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAg
ICAgYnVmZmVyZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAgICAgIGlmIChidWZmZXJlZEVu
dHJpZXMubGVuZ3RoID09PSAxKSB7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7
CisgICAgICAgICAgICBwb19ub3AuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgZm9yIChpID0g
MDsgaSA8IGJ1ZmZlcmVkRW50cmllcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKGJ1ZmZlcmVkRW50cmllc1tpXS5lbnRyeVR5cGUsICJtYXJrIikKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSk7Cisg
ICAgICB9KS5vYnNlcnZlKHsKKyAgICAgICAgdHlwZTogIm1hcmsiLAorICAgICAgICBidWZmZXJl
ZDogdHJ1ZQorICAgICAgfSk7CisgICAgfQorCisgICAgY29uc3QgZW50cnlUeXBlcyA9IFsibmF2
aWdhdGlvbiIsICJyZXNvdXJjZSIsICJtYXJrIiwgIm1lYXN1cmUiXTsKKyAgICBjb25zdCBvYnNl
cnZlZEVudHJpZXMgPSBbXTsKKyAgICBpbml0VGVzdCgpOworICB9LCAiUGVyZm9ybWFuY2VPYnNl
cnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50
cmllcyIpOworCis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0CShub25l
eGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlCisKK05l
dyByZXNvdXJjZXMgd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKworUEFTUyByZXNv
dXJjZSBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlCisKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2Uu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwJKG5vbmV4aXN0ZW50
KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
NDggQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJm
b3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1hbmNlb2Jz
ZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8
L2gxPgorPHA+CitOZXcgcmVzb3VyY2VzIHdpbGwgPGEgaHJlZj0iaHR0cHM6Ly93M2MuZ2l0aHVi
LmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4tcXVldWUtYS1wZXJmb3JtYW5jZWVudHJ5Ij5x
dWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+LgorPC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4K
KzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBmdW5jdGlvbiBwYXRo
KHBhdGhuYW1lKSB7CisgICAgICB2YXIgZmlsZW5hbWUgPSBwYXRobmFtZS5zdWJzdHJpbmcocGF0
aG5hbWUubGFzdEluZGV4T2YoJy8nKSsxKTsKKyAgICAgIHJldHVybiBwYXRobmFtZS5zdWJzdHJp
bmcoMCwgcGF0aG5hbWUubGVuZ3RoIC0gZmlsZW5hbWUubGVuZ3RoKTsKKyAgICB9CisgICAgdmFy
IGdVbmlxdWVDb3VudGVyID0gMDsKKyAgICBmdW5jdGlvbiBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygp
IHsKKyAgICAgIHJldHVybiBEYXRlLm5vdygpICsgIi0iICsgKCsrZ1VuaXF1ZUNvdW50ZXIpOwor
ICAgIH0KKyAgICB2YXIgc3RvcmVkX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgaW1nX2xvY2F0aW9u
ID0gZG9jdW1lbnQubG9jYXRpb24ub3JpZ2luICsgcGF0aChkb2N1bWVudC5sb2NhdGlvbi5wYXRo
bmFtZSkKKyAgICAgICArICJyZXNvdXJjZXMvc3F1YXJlLnBuZz9yYW5kb209IjsKKyAgICB2YXIg
aW1nMSA9IGltZ19sb2NhdGlvbiArIGdlbmVyYXRlVW5pcXVlVmFsdWVzKCk7CisgICAgdmFyIGlt
ZzIgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpOworICAgIHZhciBvYnNl
cnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5j
dGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9CisgICAg
ICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUo
InJlc291cmNlIikpOworICAgICAgICAgIGlmIChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gMikg
eworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAg
ICBbeyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIsIG5hbWU6IGltZzF9LAorICAgICAgICAgICAgICAg
eyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIsIG5hbWU6IGltZzJ9XSk7CisgICAgICAgICAgICBvYnNl
cnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9Cisg
ICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsi
cmVzb3VyY2UiXX0pOworICAgIHZhciBpbWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWci
KTsKKyAgICBpbWcuc3JjID0gaW1nMTsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlt
Zyk7CisgICAgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNy
YyA9IGltZzI7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworICB9LCAicmVz
b3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOworPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXRha2VSZWNvcmRzLmFueS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNv
cmRzLmFueS5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5q
cwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM0IEBACisvLyBNRVRBOiB0aXRsZT1QZXJmb3Jt
YW5jZU9ic2VydmVyOiB0YWtlUmVjb3JkcworLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2Jz
ZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBjb25zdCBvYnNlcnZl
ciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVy
KSB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdUaGlzIGNhbGxiYWNrIHNob3VsZCBub3QgaGF2
ZSBiZWVuIGNhbGxlZC4nKQorICAgIH0pOworICAgIGxldCBlbnRyaWVzID0gb2JzZXJ2ZXIudGFr
ZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRzIGJl
Zm9yZSBvYnNlcnZlJyk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWydtYXJr
J119KTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihvYnNlcnZlci50YWtlUmVjb3JkcyksICdm
dW5jdGlvbicpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNo
ZWNrRW50cmllcyhlbnRyaWVzLCBbXSwgJ05vIHJlY29yZHMganVzdCBmcm9tIG9ic2VydmUnKTsK
KyAgICBwZXJmb3JtYW5jZS5tYXJrKCdhJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYicpOwor
ICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhl
bnRyaWVzLCBbCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdhJ30sCisgICAgICB7
ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdiJ30KKyAgICBdKTsKKyAgICBwZXJmb3JtYW5jZS5t
YXJrKCdjJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZCcpOworICAgIHBlcmZvcm1hbmNlLm1h
cmsoJ2UnKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVj
a0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYyd9
LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZCd9LAorICAgICAge2VudHJ5VHlw
ZTogJ21hcmsnLCBuYW1lOiAnZSd9CisgICAgXSk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRh
a2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8gZW50cmllcyBy
aWdodCBhZnRlciB0YWtlUmVjb3JkcycpOworICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAg
ICB0LmRvbmUoKTsKKyAgfSwgIlRlc3QgUGVyZm9ybWFuY2VPYnNlcnZlcidzIHRha2VSZWNvcmRz
KCkiKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBw
b3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNh
bCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50
cnlUeXBlcy5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVz
LmFueS5qcwkocmV2aXNpb24gMjcxMzgzKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVz
LmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMTAsMyArMTAsMTAgQEAgdGVzdCgoKSA9PiB7CiAg
ICAgICAiJyBhcmUgcmVwZWF0ZWQgb3IgdGhleSBhcmUgbm90IGluIGFscGhhYmV0aWNhbCBvcmRl
ci4iKQogICB9CiB9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5kIHJldHVybnMgZW50
cmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIiKTsKKwordGVzdCgoKSA9PiB7CisgIGlmICh0eXBl
b2YgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzID09PSAidW5kZWZpbmVk
IikKKyAgICBhc3NlcnRfdW5yZWFjaGVkKCJzdXBwb3J0ZWRFbnRyeVR5cGVzIGlzIG5vdCBzdXBw
b3J0ZWQuIik7CisgIGFzc2VydF90cnVlKFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50
cnlUeXBlcyA9PT0KKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBl
cyk7Cit9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0Iik7CkluZGV4OiBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAyNzEzODMpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndv
cmtlci1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw0IEBACiAKIFBBU1Mg
c3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5kIHJldHVybnMgZW50cmllcyBpbiBhbHBoYWJl
dGljYWwgb3JkZXIKK0ZBSUwgc3VwcG9ydGVkRW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0IGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWlu
Zy1yZXNvbHV0aW9uLmFueS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNv
bHV0aW9uLmFueS5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0
aW9uLmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI1IEBACitmdW5jdGlvbiB0ZXN0
VGltZVJlc29sdXRpb24oaGlnaFJlc1RpbWVGdW5jLCBmdW5jU3RyaW5nKSB7CisgICAgdGVzdCgo
KSA9PiB7CisgICAgICAgIGNvbnN0IHQwID0gaGlnaFJlc1RpbWVGdW5jKCk7CisgICAgICAgIGxl
dCB0MSA9IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICB3aGlsZSAodDAgPT0gdDEpIHsKKyAg
ICAgICAgICAgIHQxID0gaGlnaFJlc1RpbWVGdW5jKCk7CisgICAgICAgIH0KKyAgICAgICAgY29u
c3QgZXBzaWxvbiA9IDFlLTU7CisgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwodDEg
LSB0MCwgMC4wMDUgLSBlcHNpbG9uLCAnVGhlIHNlY29uZCAnICsgZnVuY1N0cmluZyArICcgc2hv
dWxkIGJlIG11Y2ggZ3JlYXRlciB0aGFuIHRoZSBmaXJzdCcpOworICAgIH0sICdWZXJpZmllcyB0
aGUgcmVzb2x1dGlvbiBvZiAnICsgZnVuY1N0cmluZyArICcgaXMgYXQgbGVhc3QgNSBtaWNyb3Nl
Y29uZHMuJyk7Cit9CisKK2Z1bmN0aW9uIHRpbWVCeVBlcmZvcm1hbmNlTm93KCkgeworICAgIHJl
dHVybiBwZXJmb3JtYW5jZS5ub3coKTsKK30KKworZnVuY3Rpb24gdGltZUJ5VXNlclRpbWluZygp
IHsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCd0aW1lcicpOworICAgIGNvbnN0IHRpbWUgPSBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCd0aW1lcicpWzBdLnN0YXJ0VGltZTsKKyAgICBwZXJm
b3JtYW5jZS5jbGVhck1hcmtzKCd0aW1lcicpOworICAgIHJldHVybiB0aW1lOworfQorCit0ZXN0
VGltZVJlc29sdXRpb24odGltZUJ5UGVyZm9ybWFuY2VOb3csICdwZXJmb3JtYW5jZS5ub3coKScp
OwordGVzdFRpbWVSZXNvbHV0aW9uKHRpbWVCeVVzZXJUaW1pbmcsICdlbnRyeS5zdGFydFRpbWUn
KTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2Jz
ZXJ2ZXItZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgt
cGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsMyBAQAorCitQQVNTIFdvcmtlcjogVGVzdCBQZXJmb3JtYW5jZSBPYnNlcnZlciBpbnNpZGUg
YSB3b3JrZXIuCisKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2
ZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3Jt
YW5jZS1vYnNlcnZlci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTggQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2FzeW5jX3Rl
c3QoZnVuY3Rpb24odCkgeworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMv
d29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMiKTsKKyAgd29ya2VyLm9ubWVzc2Fn
ZSA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgdC5zdGVwKCgpID0+IGFzc2VydF9lcXVhbHMoZXZl
bnQuZGF0YSwgJ1NVQ0NFU1MnKSk7CisgICAgdC5kb25lKCk7CisgIH0KK30sICdXb3JrZXI6IFRl
c3QgUGVyZm9ybWFuY2UgT2JzZXJ2ZXIgaW5zaWRlIGEgd29ya2VyLicpOworPC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRy
eS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5
Lmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50
cnkuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE3IEBACis8IWRvY3R5cGUgaHRtbD4K
KzxzY3JpcHQ+CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4geworICBjb25zdCBlbnRy
eSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgdHJ5
IHsKKyAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKGVudHJ5LCAiKiIpOworICB9IGNhdGNoKGVy
cm9yKSB7CisgICAgaWYgKGVycm9yLm5hbWUgPT0gIkRhdGFDbG9uZUVycm9yIikgeworICAgICAg
d2luZG93LnRvcC5wb3N0TWVzc2FnZSgiUEFTUyIsICIqIik7CisgICAgfSBlbHNlIHsKKyAgICAg
IHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBXcm9uZyBleGNlcHRpb24gbmFtZTogIiAr
IGVycm9yLm5hbWUsICIqIik7CisgICAgfQorICB9CisgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2Uo
IkZBSUwgLSBObyBleGNlcHRpb24gdGhyb3duIiwgIioiKTsKK30pOworCis8L3NjcmlwdD4KSW5k
ZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMuanMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcwkobm9uZXhp
c3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNiBAQAorcGVyZm9ybWFuY2UubWFyaygnd29ya2VyTWFy
aycpOworcG9zdE1lc3NhZ2UoeworICAnaW52YWxpZCcgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLAorICAnbWFyaycgOiBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCdtYXJrJykubGVuZ3RoLAorICAnbWVhc3VyZScgOiBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoCit9KTsKSW5kZXg6IExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3Vy
Y2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzCShub25l
eGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNiBAQAordHJ5IHsKKyAgbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoKCkgPT4gdHJ1ZSk7CisgIHBvc3RNZXNzYWdlKCJTVUNDRVNTIik7
Cit9IGNhdGNoIChleCkgeworICBwb3N0TWVzc2FnZSgiRkFJTFVSRSIpOworfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417502</attachid>
            <date>2021-01-12 17:43:56 -0800</date>
            <delta_ts>2021-05-15 00:24:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210112174355.patch</filename>
            <type>text/plain</type>
            <size>189964</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNDEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmVhM2IyYTU3ODMzODhh
YTZiNmM3OTA1MGE0Yjc5OWU0NDU4YjY2OS4uOTQyYjMxMjA4M2Q1ZWM2NWIzOWU1MjVjZWI5OTk3
Yjc2NzJjNjg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwMCBAQAorMjAyMS0wMS0xMiAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9sZW1hdGljLCBhbmQgc29tZSBvZiB0aGUgdGVzdHMgZm9yIHJlYWRpbmcgdHJhbnNmZXIg
c2l6ZSBzdGlsbCBmYWlsLgorICAgICAgICBUaGVyZSBhcmUgc3RpbGwgYSBmZXcgdGVzdCBmYWls
dXJlcyB0byBmaXggaW4gZnV0dXJlIHBhdGNoZXMuCisKKyAgICAgICAgVGVzdHM6IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZl
X2ltYWdlX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3Vt
ZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbAorICAgICAg
ICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5z
dGFuY2VfYWNjZXNzb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5o
dG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbAorICAg
ICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmln
aW4uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sCisgICAgICAgICAg
ICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24u
aHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCisg
ICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQt
ZW50cmllcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dv
cmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKKworICAgICAgICAqIENNYWtlTGlz
dHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3Q6CisgICAg
ICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0
ZWQpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6c2V0UmVhZHlTdGF0ZSk6CisgICAgICAgICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZCk6Cisg
ICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6Z2V0RW50cmllcyBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5VHlwZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6YXBwZW5kQnVmZmVyZWRFbnRyaWVzQnlUeXBlIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5n
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkpOgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OnNjaGVkdWxlVGFza0lmTmVlZGVkKToKKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlLmg6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5
Lmg6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojppc1Jlc291cmNlIGNvbnN0
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmlzTWFyayBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojppc01l
YXN1cmUgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRy
eTo6aXNQYWludCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU1h
cmsuaDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3Jt
YW5jZU1lYXN1cmUuaDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogcGFn
ZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OnRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmcpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nOjptaWxsaXNlY29uZHNTaW5jZU9yaWdpbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50U3RhcnQgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVu
ZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OmRvbUludGVyYWN0aXZlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVk
RXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpkb21Db21wbGV0ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnJlZGlyZWN0
Q291bnQgY29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Lmg6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlk
bDogQWRkZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnRha2VSZWNvcmRzKToKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcik6CisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKToKKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaDoKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaWRsOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRy
aWVzQnlOYW1lIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcu
aDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcpOgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOgorCiAyMDIxLTAxLTEy
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gU3Vw
cG9ydCBrZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1z
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJD
b3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDY0M2Q3ZDliZjc5NGQzNmNlYmNmNjYzNmI2MDZlNDg3
ZDE5MGU0ZWUuLmE4OTI0MzBjNDQyZDNiMGRkOWVjNTI0ZjFkMGExNWRmNGUwZTI3YTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CkBAIC0xMTIyLDYgKzExMjIsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZH
X0lETF9GSUxFUwogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogICAg
IHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKICAgICBwYWdlL1BlcmZvcm1h
bmNlTmF2aWdhdGlvbi5pZGwKKyAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5p
ZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmcu
aWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApp
bmRleCA4MzE3ZDU1ZGJhYThkNzVlM2QxOTUyZmU1ZDkwYjYyNmVkZjc2ODUzLi43ZDBjOWZiNTQ3
NTgwMmU5MjhlZWE1YjY2ODNiNDlhOWRmNDU4YmZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTExMDAsNiArMTEwMCw3IEBAICQoUFJP
SkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIp
L3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3Jt
YW5jZU1lYXN1cmVPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsCiskKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKICQo
UFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogJChQUk9K
RUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAzMmUwYTI5
MWY4MTc2MjRhYWE1ZjFhMGNkZjE3YzU0ODg3NTBiYTc5Li5mNjE0OTFmMWY2NmZkOGNlZjg0MWJh
NzI0N2U1MDk1MTk1MTVmMmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1vdXRwdXQueGNmaWxlbGlzdApAQCAtMTU2OSw2ICsxNTY5LDggQEAgJChCVUlMVF9QUk9EVUNU
U19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25z
LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJm
b3JtYW5jZU1lYXN1cmVPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291
cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAogJChCVUlMVF9QUk9EVUNU
U19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaAor
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCiAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3Bw
CiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1h
bmNlT2JzZXJ2ZXIuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZQppbmRleCA5NTFhYjZiMGZjNDRiY2ZhZGNhMTBlM2Q4Y2NiNzliNzdjNjEwZjI3Li44
NmExMDlmMjk3YmExNzI0ODQyMGQyNGY4ZmQ0MGNiYjBhYTVhMGFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UKQEAgLTEwMzYsNiArMTAzNiw3IEBAIEpTX0JJTkRJTkdfSURMUyA6PSBc
CiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwgXAogICAgICQoV2Vi
Q29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9Q
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU9i
c2VydmVyQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlckVudHJ5TGlzdC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50
eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCAxYjlmMGQ4Mzc4MjliZGYzZGE1
ODVlN2ZkMjNlMzEyMzY2YTdhNWZmLi4zMjc0MjVmMjdiNzZiZTE3ZWJhYzliNmY3M2Q5MmU5MzFh
ZjJiNjA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTcxMCw2ICsxNzEwLDcgQEAgcGFnZS9QZXJmb3Jt
YW5jZU1hcmsuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIHBhZ2UvUGVyZm9ybWFu
Y2VNb25pdG9yLmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitwYWdlL1BlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAK
IHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMyODksNiArMzI5MCw3IEBAIEpTUGVyZm9ybWFuY2VNYXJr
T3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQZXJmb3JtYW5jZU1lYXN1
cmVPcHRpb25zLmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitKU1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKIEpTUGVyZm9y
bWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IDQxOWEwOTExODQzMWIzYmZiZWY1ZjAwNjZjMDEzMDQyMmYwNDdlY2YuLjg1N2Jl
NmZiZTcyODcwNzNjNDRkYzA0NzZjODczZDhkMjVkNGFjMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1ODA4LDYgKzE1ODA4
LDkgQEAKIAkJREVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1NS5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTI1NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlE
RUNBN0ZGNTFGOUZFOUJBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ni5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU2LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjU2
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCURGMTlFMkFBMjQ3
NzI5QTYwMDdCREFDQiAvKiBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRSZWxheFRoaXJkUGFydHlDb29r
aWVCbG9ja2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNDI1QTk4
NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCURGMzY1RDA2MjVBOTg0QzgwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA3MjVBOTg0QzkwMDVE
REI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUz
OERDMjUyNzk1OTMwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJREY0RTM4REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZlcnNpb25DaGVja3Mu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjdFOUEyOTRDN0FBQ0UwQUQ4OUIzREQgLyogTWF0
aE1MT3BlcmF0b3JEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMjIxNTYsNiArMjIxNTksOSBAQAogCQkJCThBRjRFNTUyMTFEQzVBMzYwMDBFRDNERSAvKiBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAogCQkJCThBRjRFNTUzMTFEQzVBMzYwMDBFRDNE
RSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKIAkJCQk4QUY0RTU1NDExREM1QTM2MDAw
RUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCAqLywKKwkJCQlERjM2NUQwNDI1QTk4
NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCAqLywKKwkJCQlE
RjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgg
Ki8sCisJCQkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5pZGwgKi8sCiAJCQkJQTVBOTkzMzUxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1h
bmNlT2JzZXJ2ZXIuY3BwICovLAogCQkJCUE1QTk5MzM2MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJm
b3JtYW5jZU9ic2VydmVyLmggKi8sCiAJCQkJQTVBOTkzMzcxRTM3RkFGRDAwNUI1RTREIC8qIFBl
cmZvcm1hbmNlT2JzZXJ2ZXIuaWRsICovLApAQCAtMzMwNDYsNyArMzMwNTIsNiBAQAogCQkJCUU0
NDYxNDE5MENENjgyNjkwMEZBREE3NSAvKiBKU01lZGlhRXJyb3IuaCBpbiBIZWFkZXJzICovLAog
CQkJCUNERjc1NkEzMjE1QzI5RTkwMEVGQ0I1MCAvKiBKU01lZGlhS2V5RW5jcnlwdGlvblNjaGVt
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5QkY3MjgxREJGREIwRDAwN0E3RDk5IC8qIEpTTWVk
aWFLZXlNZXNzYWdlRXZlbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCUU0NDBGRDUzMjVBNEFGREYw
MEY3Qzg0OSAvKiBNYXJrZWRUZXh0U3R5bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEOUJGNzI5
MURCRkRCMTAwMDdBN0Q5OSAvKiBKU01lZGlhS2V5cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5
QkY3MkExREJGREIxMzAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTZXNzaW9uLmggaW4gSGVhZGVycyAq
LywKIAkJCQlDREY0QjcxRTFFMDFFMTFBMDBFMjM1QTIgLyogSlNNZWRpYUtleVNlc3Npb25UeXBl
LmggaW4gSGVhZGVycyAqLywKQEAgLTMzNjEzLDYgKzMzNjE4LDcgQEAKIAkJCQk3QUU2QzkzQzFC
RTBDNjAxMDBFMTlFMDMgLyogTWFpblRocmVhZFNoYXJlZFRpbWVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlFNDUxQzYzMjIzOTQwMzFBMDA5OTMxOTAgLyogTWFyZ2luVHlwZXMuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUNFMTg2NjQ1MUY3MkU1QjQwMEEwQ0FCNiAvKiBNYXJrZWRUZXh0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFNDQwRkQ1MzI1QTRBRkRGMDBGN0M4NDkgLyogTWFya2VkVGV4dFN0eWxl
LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOURGODA5OUU2NDkyMDA1NkU1ODEgLyogbWFya3Vw
LmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzI4QzMxNDEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3Vw
QWNjdW11bGF0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTAwQzYwRTNGMTNENzZEN0UwMDkyQTI3
NSAvKiBNYXJrdXBUb2tlbml6ZXJJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3Bw
CmluZGV4IGJiZjgxMTE0MmRhYjllNmE5MmNiNWM2Y2ZhYjA2YjI0NThiYTcxNDAuLmRmY2Q4YzFl
Yjk2NDQ5MTMxNDQ3ZTJmMjdjOWQ2YmVjNWFjNjc5YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcApAQCAtMzUs
MTAgKzM1LDEyIEBACiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJm
b3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3VyZS5oIgorI2luY2x1
ZGUgIkpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3Jt
YW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VN
ZWFzdXJlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5j
bHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaCIKIApAQCAtNDgsMTggKzUwLDIwIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7
CiAKIEpTVmFsdWUgdG9KU05ld2x5Q3JlYXRlZChKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxQZXJmb3JtYW5jZUVudHJ5PiYmIGVudHJ5KQogewot
ICAgIGlmIChpczxQZXJmb3JtYW5jZVBhaW50VGltaW5nPihlbnRyeSkpCi0gICAgICAgIHJldHVy
biBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RG
TW92ZShlbnRyeSkpOwotCi0gICAgaWYgKGlzPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGVu
dHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9y
bWFuY2VNYXJrPihlbnRyeSkpCisgICAgc3dpdGNoIChlbnRyeS0+cGVyZm9ybWFuY2VFbnRyeVR5
cGUoKSkgeworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2aWdhdGlvbjoKKyAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPihn
bG9iYWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6
OlR5cGU6Ok1hcms6CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWFy
az4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFu
Y2VNZWFzdXJlPihlbnRyeSkpCisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpNZWFz
dXJlOgogICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU1lYXN1cmU+KGds
b2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6
VHlwZTo6UmVzb3VyY2U6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2Ug
UGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UGFpbnQ6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFw
cGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkp
OworICAgIH0KIAorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBjcmVhdGVX
cmFwcGVyPFBlcmZvcm1hbmNlRW50cnk+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBlZWM2YjRhYWY3OTU0YTZmZGNkMjk3ZWVk
YzM0MDYxY2U5NDM2NTZlLi4zYWE2ODE1MTdkMzY4MzE0YTA5YTU5ZTI1MDU3MWQ0OWNiMTM4OGFh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTEzNTcsMTMgKzEzNTcsMTMgQEAgdm9pZCBE
b2N1bWVudDo6c2V0UmVhZHlTdGF0ZShSZWFkeVN0YXRlIHJlYWR5U3RhdGUpCiAgICAgICAgIGlm
ICghbV9kb2N1bWVudFRpbWluZy5kb21Mb2FkaW5nKQogICAgICAgICAgICAgbV9kb2N1bWVudFRp
bWluZy5kb21Mb2FkaW5nID0gTW9ub3RvbmljVGltZTo6bm93KCk7CiAgICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgSW50ZXJhY3RpdmU6Ci0gICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21J
bnRlcmFjdGl2ZSkKLSAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUg
PSBNb25vdG9uaWNUaW1lOjpub3coKTsKLSAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb21wbGV0
ZToKICAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlKQogICAgICAgICAg
ICAgbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwor
ICAgICAgICBGQUxMVEhST1VHSDsKKyAgICBjYXNlIEludGVyYWN0aXZlOgorICAgICAgICBpZiAo
IW1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpCisgICAgICAgICAgICBtX2RvY3VtZW50
VGltaW5nLmRvbUludGVyYWN0aXZlID0gTW9ub3RvbmljVGltZTo6bm93KCk7CiAgICAgICAgIGJy
ZWFrOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKaW5k
ZXggZDY4ZmFlN2UxYWNjYjY3OGQzODhhMjQwMTAxZTUwMWVmZjAxYTlhOC4uOTQwMjllMTBmMWI5
MjQ2ZGM5ZjEzNDA5NmU0ZmRmYjdkZDhlNjQ4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwCkBAIC03Miw2ICs3Miw3IEBACiAjaW5jbHVkZSAiTmV0d29ya0xvYWRN
ZXRyaWNzLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAi
UGFnZS5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSAiUGluZ0xvYWRlci5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgogI2luY2x1ZGUgIlBvbGljeUNoZWNr
ZXIuaCIKQEAgLTQxMCw3ICs0MTEsNyBAQCBib29sIERvY3VtZW50TG9hZGVyOjppc0xvYWRpbmco
KSBjb25zdAogICAgIHJldHVybiBpc0xvYWRpbmdNYWluUmVzb3VyY2UoKSB8fCAhbV9zdWJyZXNv
dXJjZUxvYWRlcnMuaXNFbXB0eSgpIHx8ICFtX3BsdWdJblN0cmVhbUxvYWRlcnMuaXNFbXB0eSgp
OwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJj
ZSYgcmVzb3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCit2b2lkIERvY3VtZW50TG9h
ZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5ldHdv
cmtMb2FkTWV0cmljcyYgbWV0cmljcykKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwog
I2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKQEAgLTQxOCw2ICs0MTksMTEgQEAgdm9pZCBE
b2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBj
b25zdCBOZXR3b3JrTG9hZE0KICAgICAgICAgcmV0dXJuOwogI2VuZGlmCiAKKyAgICBpZiAoYXV0
byogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKSB7CisgICAgICAgIGlmIChhdXRvKiBkb21X
aW5kb3cgPSBkb2N1bWVudC0+ZG9tV2luZG93KCkpCisgICAgICAgICAgICBkb21XaW5kb3ctPnBl
cmZvcm1hbmNlKCkuYWRkTmF2aWdhdGlvblRpbWluZygqdGhpcywgKmRvY3VtZW50LCByZXNvdXJj
ZSwgdGltaW5nKCksIG1ldHJpY3MpOworICAgIH0KKwogICAgIEFTU0VSVF9VTlVTRUQocmVzb3Vy
Y2UsIG1fbWFpblJlc291cmNlID09ICZyZXNvdXJjZSk7CiAgICAgQVNTRVJUKG1fbWFpblJlc291
cmNlKTsKICAgICBpZiAoIW1fbWFpblJlc291cmNlLT5lcnJvck9jY3VycmVkKCkgJiYgIW1fbWFp
blJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNl
VGltaW5nLmNwcAppbmRleCAxNjgyMzRmNDdiY2JlMDc5NTA2MDU0MGE5YTFhYWU2ZWRiNDUxNmE3
Li41Yzc2NWExNDVjNTk4MjFjYzcxNTE2ZjRmMWNlZjgwODBhNjhjZDY3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKQEAgLTYyLDkgKzYyLDkgQEAgUmVzb3VyY2VU
aW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21DYWNoZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiBpbml0aWF0b3IKICAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3Is
IGxvYWRUaW1pbmcsIHJlc3BvbnNlLCBzZWN1cml0eU9yaWdpbik7CiB9CiAKLVJlc291cmNlVGlt
aW5nIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNv
bnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25z
dCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlP
cmlnaW4mIHNlY3VyaXR5T3JpZ2luKQorUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZy
b21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3
b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlPcmlnaW4m
IHNlY3VyaXR5T3JpZ2luKQogewotICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyhyZXNvdXJjZS5y
ZXNvdXJjZVJlcXVlc3QoKS51cmwoKSwgaW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3b3JrTG9h
ZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKKyAgICByZXR1
cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5ldHdvcmtMb2Fk
TWV0cmljcywgcmVzb3VyY2UucmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOwogfQogCiBSZXNv
dXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbVN5bmNocm9ub3VzTG9hZChjb25zdCBVUkwm
IHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1p
bmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5
T3JpZ2luKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5n
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAppbmRleCA2NGY4N2Ni
M2JmZGI1MTVkNmM0ZTM4Mzk0ZmJjNGUzYWQ1M2UzMGI3Li45Y2RjNzk0MTNkYmI1NjU0NTFkOGVm
MDExMjM0MjM0MTUxM2IwZmZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcu
aApAQCAtNDEsMTMgKzQxLDEzIEBAIGNsYXNzIFJlc291cmNlVGltaW5nIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJv
bUNhY2hlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGlt
aW5nJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7Ci0g
ICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3Qg
U3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOworICAgIHN0YXRpYyBSZXNvdXJjZVRpbWlu
ZyBmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5p
dGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29u
c3QgU2VjdXJpdHlPcmlnaW4mKTsKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbVN5bmNo
cm9ub3VzTG9hZChjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9h
ZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwogCiAgICAgVVJMIHVybCgpIGNvbnN0IHsgcmV0
dXJuIG1fdXJsOyB9CiAgICAgU3RyaW5nIGluaXRpYXRvcigpIGNvbnN0IHsgcmV0dXJuIG1faW5p
dGlhdG9yOyB9Ci0gICAgTG9hZFRpbWluZyBsb2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9s
b2FkVGltaW5nOyB9Ci0gICAgTmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljcygp
IGNvbnN0IHsgcmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzOyB9CisgICAgY29uc3QgTG9hZFRp
bWluZyYgbG9hZFRpbWluZygpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQorICAgIGNv
bnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QgeyByZXR1
cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3M7IH0KICAgICBib29sIGFsbG93VGltaW5nRGV0YWlscygp
IGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dUaW1pbmdEZXRhaWxzOyB9CiAgICAgVmVjdG9yPFJlZjxQ
ZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCk7CiAgICAgUmVz
b3VyY2VUaW1pbmcgaXNvbGF0ZWRDb3B5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCAyMDBlNmQ5MTk1NTZhNWFjMmE2ZDcwZGI1YmVh
ZmRhY2VhYWMyNWM1Li43YWU2NWRkNmYxYjg1NWNmZTFlNDhiNzZmZjA4ZGY1MDUyOGMyMTNlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg3MSw3
ICs4NzEsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpyZXBvcnRSZXNvdXJjZVRpbWluZyhj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMbwogICAgICAgICByZXR1cm47CiAKICAg
ICBTZWN1cml0eU9yaWdpbiYgb3JpZ2luID0gbV9vcmlnaW4gPyAqbV9vcmlnaW4gOiBkb2N1bWVu
dC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBhdXRvIHJlc291cmNlVGltaW5nID0gUmVzb3VyY2VU
aW1pbmc6OmZyb21Mb2FkKCptX3Jlc291cmNlLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCks
IG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOworICAgIGF1dG8gcmVz
b3VyY2VUaW1pbmcgPSBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoKm1fcmVzb3VyY2UsIG1fcmVz
b3VyY2UtPnJlc291cmNlUmVxdWVzdCgpLnVybCgpLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1l
KCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOwogCiAgICAgLy8g
V29ya2VyIHJlc291cmNlcyBsb2FkZWQgaGVyZSBhcmUgYWxsIENhY2hlZFJhd1Jlc291cmNlcyBs
b2FkZWQgdGhyb3VnaCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyLgogICAgIC8vIFBhc3MgdGhlIFJl
c291cmNlVGltaW5nIGluZm9ybWF0aW9uIG9uIHNvIHRoYXQgV29ya2VyVGhyZWFkYWJsZUxvYWRl
ciBtYXkgYWRkIHRoZW0gdG8gdGhlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCmluZGV4
IGE0Yjk2OWUwZmEzYzgyY2U3ODUxYTAxYWU2MDcyMWYzZmY3ZGE1MTcuLjg3NDBmZWY1NGRiYWU3
YWE4Mzc4M2M1NTE5YmQ3ZmIwNTM2ZTM3MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2Uu
Y3BwCkBAIC00Miw2ICs0Miw3IEBACiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5o
IgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWVhc3VyZU9wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJm
b3JtYW5jZU5hdmlnYXRpb24uaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU9ic2VydmVyLmgiCiAjaW5jbHVkZSAiUGVyZm9y
bWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
aCIKQEAgLTEyNCw2ICsxMjUsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQ
ZXJmb3JtYW5jZTo6Z2V0RW50cmllcygpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcpCisg
ICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAgICBlbnRyaWVz
LmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIAogICAgIGlmIChtX3VzZXJU
aW1pbmcpIHsKQEAgLTE0Miw2ICsxNDYsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50
cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudAogewog
ICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAo
bV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAg
IGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisgICAgCiAgICAgaWYgKGVudHJ5
VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291
cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMTYzLDYgKzE3MCw5IEBAIFZlY3RvcjxSZWZQdHI8UGVy
Zm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmlu
ZyYgbmFtCiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllczsK
IAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBl
bnRyeVR5cGUgPT0gIm5hdmlnYXRpb24iKSAmJiBuYW1lID09IG1fbmF2aWdhdGlvblRpbWluZy0+
bmFtZSgpKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAg
ICAgaWYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUgPT0gInJlc291cmNlIikgewog
ICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewog
ICAgICAgICAgICAgaWYgKHJlc291cmNlLT5uYW1lKCkgPT0gbmFtZSkKQEAgLTE4Niw2ICsxOTYs
OSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50
cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbQogCiB2b2lkIFBlcmZvcm1hbmNlOjphcHBlbmRC
dWZmZXJlZEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUsIFZlY3RvcjxSZWZQ
dHI8UGVyZm9ybWFuY2VFbnRyeT4+JiBlbnRyaWVzKSBjb25zdAogeworICAgIGlmIChtX25hdmln
YXRpb25UaW1pbmcgJiYgZW50cnlUeXBlID09ICJuYXZpZ2F0aW9uIikKKyAgICAgICAgZW50cmll
cy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsKKwogICAgIGlmIChlbnRyeVR5cGUgPT0gInJl
c291cmNlIikKICAgICAgICAgZW50cmllcy5hcHBlbmRWZWN0b3IobV9yZXNvdXJjZVRpbWluZ0J1
ZmZlcik7CiAKQEAgLTIxNiw2ICsyMjksMTMgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cmVwb3J0Rmly
c3RDb250ZW50ZnVsUGFpbnQoKQogICAgIHF1ZXVlRW50cnkoKm1fZmlyc3RDb250ZW50ZnVsUGFp
bnQpOwogfQogCit2b2lkIFBlcmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50
TG9hZGVyJiBkb2N1bWVudExvYWRlciwgRG9jdW1lbnQmIGRvY3VtZW50LCBDYWNoZWRSZXNvdXJj
ZSYgcmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIHRpbWluZywgY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiBtZXRyaWNzKQoreworICAgIEFTU0VSVCghbV9uYXZpZ2F0aW9uVGltaW5nKTsKKyAg
ICBtX25hdmlnYXRpb25UaW1pbmcgPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmNyZWF0
ZShtX3RpbWVPcmlnaW4sIHJlc291cmNlLCB0aW1pbmcsIG1ldHJpY3MsIGRvY3VtZW50LnRpbWlu
ZygpLCBkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBkb2N1bWVudExvYWRlci50cmlnZ2VyaW5n
QWN0aW9uKCkudHlwZSgpKTsKKyAgICBxdWV1ZUVudHJ5KCptX25hdmlnYXRpb25UaW1pbmcpOwor
fQorCiB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhSZXNvdXJjZVRpbWluZyYm
IHJlc291cmNlVGltaW5nKQogewogICAgIEFTU0VSVChzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkp
OwpAQCAtMzQ4LDYgKzM2OCwxMSBAQCB2b2lkIFBlcmZvcm1hbmNlOjpyZW1vdmVBbGxPYnNlcnZl
cnMoKQogdm9pZCBQZXJmb3JtYW5jZTo6cmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKFBlcmZv
cm1hbmNlT2JzZXJ2ZXImIG9ic2VydmVyKQogewogICAgIG1fb2JzZXJ2ZXJzLmFkZCgmb2JzZXJ2
ZXIpOworCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiBvYnNlcnZlci50eXBlRmlsdGVy
KCkuY29udGFpbnMoUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2aWdhdGlvbikpIHsKKyAgICAg
ICAgb2JzZXJ2ZXIucXVldWVFbnRyeSgqbV9uYXZpZ2F0aW9uVGltaW5nKTsKKyAgICAgICAgc2No
ZWR1bGVUYXNrSWZOZWVkZWQoKTsKKyAgICB9CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2U6OnVucmVn
aXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKFBlcmZvcm1hbmNlT2JzZXJ2ZXImIG9ic2VydmVyKQpA
QCAtMzU5LDcgKzM4NCw3IEBAIHZvaWQgUGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkoUGVyZm9ybWFu
Y2VFbnRyeSYgZW50cnkpCiB7CiAgICAgYm9vbCBzaG91bGRTY2hlZHVsZVRhc2sgPSBmYWxzZTsK
ICAgICBmb3IgKGF1dG8mIG9ic2VydmVyIDogbV9vYnNlcnZlcnMpIHsKLSAgICAgICAgaWYgKG9i
c2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkudHlwZSgpKSkgeworICAgICAgICBp
ZiAob2JzZXJ2ZXItPnR5cGVGaWx0ZXIoKS5jb250YWlucyhlbnRyeS5wZXJmb3JtYW5jZUVudHJ5
VHlwZSgpKSkgewogICAgICAgICAgICAgb2JzZXJ2ZXItPnF1ZXVlRW50cnkoZW50cnkpOwogICAg
ICAgICAgICAgc2hvdWxkU2NoZWR1bGVUYXNrID0gdHJ1ZTsKICAgICAgICAgfQpAQCAtMzY3LDcg
KzM5MiwxMiBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkm
IGVudHJ5KQogCiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZVRhc2spCiAgICAgICAgIHJldHVybjsK
KyAgICAKKyAgICBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOworfQogCit2b2lkIFBlcmZvcm1hbmNl
OjpzY2hlZHVsZVRhc2tJZk5lZWRlZCgpCit7CiAgICAgaWYgKG1fcGVyZm9ybWFuY2VUaW1lbGlu
ZVRhc2tRdWV1ZS5oYXNQZW5kaW5nVGFza3MoKSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmgKaW5kZXggNDhjMTI3ZDZlYzYwZmI3YzkzZTMxNjJhMzA5OGEzMzU4
MGU2ZmZhMy4uZjI3OWJiZmExNjk2Y2Y2NTQ4MzU0MTQ3NDU3ZWM1MjJkODgxMzkxNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuaApAQCAtNDcsMTIgKzQ3LDE3IEBAIGNsYXNzIEpTR2xvYmFs
T2JqZWN0OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291cmNlOwor
Y2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRUaW1pbmc7
CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJpY3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJUaW1pbmc7
CiBjbGFzcyBQZXJmb3JtYW5jZUVudHJ5OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwogY2xhc3Mg
UGVyZm9ybWFuY2VNZWFzdXJlOwogY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOworY2xhc3Mg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNlcnZlcjsK
IGNsYXNzIFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRpbWluZzsK
QEAgLTg5LDYgKzk0LDcgQEAgcHVibGljOgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJmb3JtYW5j
ZU1lYXN1cmU+PiBtZWFzdXJlKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJpbmcmIG1l
YXN1cmVOYW1lLCBPcHRpb25hbDxTdGFydE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0IFN0cmlu
ZyYgZW5kTWFyayk7CiAgICAgdm9pZCBjbGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYgbWVhc3Vy
ZU5hbWUpOwogCisgICAgdm9pZCBhZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiwg
RG9jdW1lbnQmLCBDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3
b3JrTG9hZE1ldHJpY3MmKTsKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGlt
aW5nJiYpOwogCiAgICAgdm9pZCByZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpAQCAtMTIw
LDYgKzEyNiw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGxU
aW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYpOwor
ICAgIHZvaWQgc2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVmUHRyPFBl
cmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBl
cmZvcm1hbmNlVGltaW5nPiBtX3RpbWluZzsKQEAgLTEzNyw2ICsxNDQsNyBAQCBwcml2YXRlOgog
CiAgICAgTW9ub3RvbmljVGltZSBtX3RpbWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nPiBtX25hdmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRyPFBlcmZv
cm1hbmNlUGFpbnRUaW1pbmc+IG1fZmlyc3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3RkOjp1bmlx
dWVfcHRyPFBlcmZvcm1hbmNlVXNlclRpbWluZz4gbV91c2VyVGltaW5nOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCmluZGV4IGFmYWNmYjA5MGIyMWNiYTYxNGQ3OGNlODhh
Yzc1M2UyNjczZTEyNjUuLmI4YTgyZTAwNmZkYTA3YWQ1ODcxNzBlNTkyOTQxOWVjZjIwNjIxMDcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCkBAIC00Nyw3ICs0Nyw3IEBA
IHB1YmxpYzoKICAgICBkb3VibGUgc3RhcnRUaW1lKCkgY29uc3QgeyByZXR1cm4gbV9zdGFydFRp
bWU7IH0KICAgICBkb3VibGUgZHVyYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9uOyB9
CiAKLSAgICBlbnVtIGNsYXNzIFR5cGUgeworICAgIGVudW0gY2xhc3MgVHlwZSA6IHVpbnQ4X3Qg
ewogICAgICAgICBOYXZpZ2F0aW9uICA9IDEgPDwgMCwKICAgICAgICAgTWFyayAgICAgICAgPSAx
IDw8IDEsCiAgICAgICAgIE1lYXN1cmUgICAgID0gMSA8PCAyLApAQCAtNTUsMTYgKzU1LDExIEBA
IHB1YmxpYzoKICAgICAgICAgUGFpbnQgICAgICAgPSAxIDw8IDQKICAgICB9OwogCi0gICAgdmly
dHVhbCBUeXBlIHR5cGUoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBUeXBlIHBlcmZvcm1hbmNl
RW50cnlUeXBlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgQVNDSUlMaXRlcmFsIGVudHJ5VHlw
ZSgpIGNvbnN0ID0gMDsKIAogICAgIHN0YXRpYyBPcHRpb25hbDxUeXBlPiBwYXJzZUVudHJ5VHlw
ZVN0cmluZyhjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7CiAKLSAgICBib29sIGlzUmVzb3VyY2Uo
KSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBib29sIGlz
TWFyaygpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpNYXJrOyB9Ci0gICAgYm9vbCBp
c01lYXN1cmUoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6TWVhc3VyZTsgfQotICAg
IGJvb2wgaXNQYWludCgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpQYWludDsgfQot
CiAgICAgc3RhdGljIGJvb2wgc3RhcnRUaW1lQ29tcGFyZUxlc3NUaGFuKGNvbnN0IFJlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5PiYgYSwgY29uc3QgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+JiBiKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIGEtPnN0YXJ0VGltZSgpIDwgYi0+c3RhcnRUaW1lKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaAppbmRleCBjNzNiMjMxMmYzMmEwNGM4MjFj
OGQwZWNhODc3ZWFiYjMzZmU0ZTJmLi5iNzUxNGYwMTUzNTgwOWRhYjUzY2NhYzA2NGM1MmIwZjE4
ZWI2YzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJrLmgKQEAgLTQ4LDE0ICs0
OCwxMCBAQCBwcml2YXRlOgogICAgIFBlcmZvcm1hbmNlTWFyayhjb25zdCBTdHJpbmcmIG5hbWUs
IGRvdWJsZSBzdGFydFRpbWUsIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYpOwogICAgIH5Q
ZXJmb3JtYW5jZU1hcmsoKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IFR5cGU6Ok1hcms7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gVHlwZTo6TWFyazsgfQogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBj
b25zdCBmaW5hbCB7IHJldHVybiAibWFyayJfczsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWFy
aykKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRy
eSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWFyaygpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJB
SVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVh
c3VyZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAppbmRleCAz
NWRiNmExNjZiNTdlZTg2ZTYzMDgzMmRmNDI2ODU1ZDk3YTdmYmY1Li4yZDJhYTNlZTEyOTUyMTJl
MTZlZGU2ZTNkZGM4MGZjNjRkZTI2ZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlTWVhc3VyZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VNZWFzdXJlLmgKQEAgLTQ4LDE0ICs0OCwxMCBAQCBwcml2YXRlOgogICAgIFBlcmZvcm1hbmNl
TWVhc3VyZShjb25zdCBTdHJpbmcmIG5hbWUsIGRvdWJsZSBzdGFydFRpbWUsIGRvdWJsZSBlbmRU
aW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIGRldGFpbCk7CiAgICAgflBlcmZvcm1h
bmNlTWVhc3VyZSgpOwogCi0gICAgVHlwZSB0eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlw
ZTo6TWVhc3VyZTsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBUeXBlOjpNZWFzdXJlOyB9CiAgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuICJtZWFzdXJlIl9zOyB9CiAKICAgICBSZWY8U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlPiBtX3NlcmlhbGl6ZWREZXRhaWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFu
Y2VNZWFzdXJlKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3Jt
YW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNNZWFzdXJlKCk7IH0KLVNQRUNJQUxJ
WkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMTg3ZDQ3ZmQ3YjIwMzgzOTAy
ODk4NWRjZmU5YzlhYjI5Y2JhOTc0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCkBAIC0wLDAgKzEsMTIzIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiY29uZmlnLmgi
CisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCisKKyNpbmNsdWRlICJD
YWNoZWRSZXNvdXJjZS5oIgorI2luY2x1ZGUgIlJlc291cmNlVGltaW5nLmgiCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworc3RhdGljIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdh
dGlvblR5cGUgdG9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZShOYXZp
Z2F0aW9uVHlwZSBuYXZpZ2F0aW9uVHlwZSkKK3sKKyAgICBzd2l0Y2ggKG5hdmlnYXRpb25UeXBl
KSB7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6QmFja0ZvcndhcmQ6CisgICAgICAgIHJldHVy
biBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpCYWNrX2Zvcndh
cmQ7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgorICAgICAgICByZXR1cm4gUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OkxpbmtDbGlja2VkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6
OkZvcm1TdWJtaXR0ZWQ6CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVJlc3VibWl0dGVk
OgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6Ok90aGVyOgorICAgICAgICByZXR1cm4gUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7CisgICAgfQor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpOYXZpZ2F0ZTsKK30KKworUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoTW9ub3RvbmljVGltZSB0
aW1lT3JpZ2luLCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIGxv
YWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcywgY29uc3QgRG9jdW1l
bnRUaW1pbmcmIGRvY3VtZW50VGltaW5nLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgb3JpZ2luLCBX
ZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSBuYXZpZ2F0aW9uVHlwZSkKKyAgICA6IFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcodGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKHJlc291
cmNlLCByZXNvdXJjZS5yZXNwb25zZSgpLnVybCgpLCAibmF2aWdhdGlvbiJfcywgbG9hZFRpbWlu
ZywgbWV0cmljcywgb3JpZ2luKSwgbG9hZFRpbWluZy51bmxvYWRFdmVudFN0YXJ0KCkpCisgICAg
LCBtX2RvY3VtZW50VGltaW5nKGRvY3VtZW50VGltaW5nKQorICAgICwgbV9uYXZpZ2F0aW9uVHlw
ZSh0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBlKG5hdmlnYXRpb25U
eXBlKSkgeyB9CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6flBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZygpID0gZGVmYXVsdDsKKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSB0aW1lLCBPcHRp
b25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2luKSBjb25zdAoreworICAgIGlmICghdGltZSkK
KyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpyZWR1Y2VUaW1lUmVz
b2x1dGlvbih0aW1lIC0gKHRpbWVPcmlnaW4gPyAqdGltZU9yaWdpbiA6IG1fdGltZU9yaWdpbikp
Lm1pbGxpc2Vjb25kcygpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojp1bmxvYWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2lu
Y2VPcmlnaW4obV9sb2FkVGltaW5nLnVubG9hZEV2ZW50U3RhcnQoKSk7Cit9CisKK2RvdWJsZSBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9sb2FkVGltaW5nLnVubG9hZEV2ZW50
RW5kKCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRl
cmFjdGl2ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1f
ZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCgpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29u
dGVudExvYWRlZEV2ZW50U3RhcnQpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdAoreworICAgIHJldHVybiBt
aWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbnRlbnRMb2FkZWRF
dmVudEVuZCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNv
bXBsZXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9k
b2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OmxvYWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlz
ZWNvbmRzU2luY2VPcmlnaW4obV9sb2FkVGltaW5nLmxvYWRFdmVudFN0YXJ0KCkpOworfQorCitk
b3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRFbmQoKSBjb25zdAor
eworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2xvYWRUaW1pbmcubG9hZEV2
ZW50RW5kKCkpOworfQorCitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25U
eXBlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fbmF2aWdhdGlvblR5cGU7Cit9CisKK3Vuc2lnbmVkIHNob3J0IFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6cmVkaXJlY3RDb3VudCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3Nob3Vs
ZFJlcG9ydERldGFpbHMpCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKG1fbG9hZFRpbWlu
Zy5oYXNDcm9zc09yaWdpblJlZGlyZWN0KCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgcmV0
dXJuIG1fbG9hZFRpbWluZy5yZWRpcmVjdENvdW50KCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjU4MWU2N2ViODI2ODQ2YThlOTgwOTNmZmJhMDQzNGQxZGQ1ZDFk
YjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5oCkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBP
V05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
CisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJEb2N1bWVudFRpbWluZy5oIgorI2luY2x1ZGUgIlBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5o
PgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQ2FjaGVkUmVzb3VyY2U7Citj
bGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOworY2xhc3MgU2VjdXJp
dHlPcmlnaW47CitlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhfdDsKKworY2xhc3Mg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIGZpbmFsIDogcHVibGljIFBlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcgeworcHVibGljOgorICAgIGVudW0gY2xhc3MgTmF2aWdhdGlvblR5cGUgOiB1
aW50OF90IHsKKyAgICAgICAgTmF2aWdhdGUsCisgICAgICAgIFJlbG9hZCwKKyAgICAgICAgQmFj
a19mb3J3YXJkLAorICAgICAgICBQcmVyZW5kZXIsCisgICAgfTsKKworICAgIHRlbXBsYXRlPHR5
cGVuYW1lLi4uIEFyZ3M+IHN0YXRpYyBSZWY8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBj
cmVhdGUoQXJncyYmLi4uIGFyZ3MpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nKHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLikpOyB9CisgICAgflBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZygpOworCisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5
VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok5hdmlnYXRpb247IH0KKyAgICBBU0NJ
SUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm5hdmlnYXRpb24iX3M7
IH0KKworICAgIGRvdWJsZSB1bmxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAgZG91YmxlIHVu
bG9hZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUludGVyYWN0aXZlKCkgY29uc3Q7
CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAgZG91
YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21Db21w
bGV0ZSgpIGNvbnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRv
dWJsZSBsb2FkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBOYXZpZ2F0aW9uVHlwZSB0eXBlKCkgY29u
c3Q7CisgICAgdW5zaWduZWQgc2hvcnQgcmVkaXJlY3RDb3VudCgpIGNvbnN0OworCitwcml2YXRl
OgorICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIENhY2hlZFJlc291cmNlJiwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYsIGNvbnN0IERvY3VtZW50VGltaW5nJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mLCBX
ZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSk7CisgICAgCisgICAgZG91YmxlIG1pbGxpc2Vjb25kc1Np
bmNlT3JpZ2luKE1vbm90b25pY1RpbWUsIE9wdGlvbmFsPE1vbm90b25pY1RpbWU+IHRpbWVPcmln
aW4gPSBXVEY6Om51bGxvcHQpIGNvbnN0OworCisgICAgRG9jdW1lbnRUaW1pbmcgbV9kb2N1bWVu
dFRpbWluZzsKKyAgICBOYXZpZ2F0aW9uVHlwZSBtX25hdmlnYXRpb25UeXBlOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBlODFlN2YxODcyMmRjZmFiYTkx
OWIzNmViZTg3NzkxNGZiOThjMzkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKQEAgLTAsMCArMSw1MSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKy8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNk
b20tcGVyZm9ybWFuY2VuYXZpZ2F0aW9udGltaW5nCisKK3R5cGVkZWYgZG91YmxlIERPTUhpZ2hS
ZXNUaW1lU3RhbXA7CisKK2VudW0gTmF2aWdhdGlvblR5cGUgeworICAgICJuYXZpZ2F0ZSIsCisg
ICAgInJlbG9hZCIsCisgICAgImJhY2tfZm9yd2FyZCIsCisgICAgInByZXJlbmRlciIKK307CisK
K1sKKyAgICBFeHBvc2VkPVdpbmRvdworXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nIDogUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7CisgICAgcmVhZG9ubHkgICAgICAg
IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50U3RhcnQ7CisgICAgcmVh
ZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50RW5k
OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBkb21J
bnRlcmFjdGl2ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1l
U3RhbXAgZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0
dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZDsKKyAg
ICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tQ29tcGxl
dGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGxv
YWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1Rp
bWVTdGFtcCBsb2FkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBOYXZp
Z2F0aW9uVHlwZSAgICAgIHR5cGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSB1bnNp
Z25lZCBzaG9ydCAgICAgIHJlZGlyZWN0Q291bnQ7CisgICAgW0RlZmF1bHRdIG9iamVjdCB0b0pT
T04oKTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcApp
bmRleCA0NjQ3MjY3ZDEyODlkYmI2YTUzMjBhNGFmZWIyMDQ2MGFiZjI4NzYxLi41NmYzMmE1ZGVk
MWNhNGNhYzMxN2ViMWM5YTk5MDc4MDcyYjVkMmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKQEAgLTEwNyw2ICsxMDcsMTEgQEAgRXhjZXB0aW9uT3I8
dm9pZD4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6b2JzZXJ2ZShJbml0JiYgaW5pdCkKICAgICByZXR1
cm4geyB9OwogfQogCitWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5j
ZU9ic2VydmVyOjp0YWtlUmVjb3JkcygpCit7CisgICAgcmV0dXJuIHN0ZDo6ZXhjaGFuZ2UobV9l
bnRyaWVzVG9EZWxpdmVyLCB7IH0pOworfQorCiB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRp
c2Nvbm5lY3QoKQogewogICAgIGlmIChtX3BlcmZvcm1hbmNlKQpAQCAtMTE0LDYgKzExOSw3IEBA
IHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCgpCiAKICAgICBtX3JlZ2lzdGVy
ZWQgPSBmYWxzZTsKICAgICBtX2VudHJpZXNUb0RlbGl2ZXIuY2xlYXIoKTsKKyAgICBtX3R5cGVG
aWx0ZXIgPSB7IH07CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6cXVldWVFbnRyeShQ
ZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkKQEAgLTEzMCw3ICsxMzYsNyBAQCB2b2lkIFBlcmZvcm1h
bmNlT2JzZXJ2ZXI6OmRlbGl2ZXIoKQogICAgIGlmICghY29udGV4dCkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllcyA9IFdURk1v
dmUobV9lbnRyaWVzVG9EZWxpdmVyKTsKKyAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50
cnk+PiBlbnRyaWVzID0gc3RkOjpleGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIsIHsgfSk7CiAg
ICAgYXV0byBsaXN0ID0gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Y3JlYXRlKFdURk1v
dmUoZW50cmllcykpOwogCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsRmlyZU9i
c2VydmVyQ2FsbGJhY2soKmNvbnRleHQsICJQZXJmb3JtYW5jZU9ic2VydmVyIl9zKTsKQEAgLTE0
MSwxMCArMTQ3LDkgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkZWxpdmVyKCkKIFZlY3Rv
cjxTdHJpbmc+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlwZXMoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKIHsKICAgICBWZWN0b3I8U3RyaW5nPiBlbnRyeVR5
cGVzID0gewotICAgICAgICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4NDM2Mz4g
QWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKLSAgICAgICAgLy8gIm5h
dmlnYXRpb24iX3MsCiAgICAgICAgICJtYXJrIl9zLAotICAgICAgICAibWVhc3VyZSJfcworICAg
ICAgICAibWVhc3VyZSJfcywKKyAgICAgICAgIm5hdmlnYXRpb24iX3MsCiAgICAgfTsKIAogICAg
IGlmIChpczxEb2N1bWVudD4oY29udGV4dCkgJiYgZG93bmNhc3Q8RG9jdW1lbnQ+KGNvbnRleHQp
LnN1cHBvcnRzUGFpbnRUaW1pbmcoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VPYnNlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9i
c2VydmVyLmgKaW5kZXggMjg3MmYxN2FhYjViNTc2NmJmYzQ4Y2M0ODAwMDRhZGQ4YmRlMWZmOS4u
NDE5MzA1ZDQ3YzIxNTI3ZDhlMWNiZWI1N2JjZTVjMGQ4MmMyYTdkOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKQEAgLTU3LDYgKzU3LDcgQEAgcHVibGljOgog
CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gb2JzZXJ2ZShJbml0JiYpOwogICAgIHZvaWQgZGlzY29u
bmVjdCgpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IHRha2VSZWNvcmRz
KCk7CiAKICAgICBPcHRpb25TZXQ8UGVyZm9ybWFuY2VFbnRyeTo6VHlwZT4gdHlwZUZpbHRlcigp
IGNvbnN0IHsgcmV0dXJuIG1fdHlwZUZpbHRlcjsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyLmlkbAppbmRleCBlZjYyOTNiZmQ5MGY5OWY0YjlmOThhMTcxZTUz
MTUwYzBhOWY1NmFlLi5kNWZjMjFiOWYxMjIxY2RjN2QzZDVlMDMwNGM0N2I0ODgxZTRkZWJmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKQEAgLTMzLDgg
KzMzLDkgQEAKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgewogICAgIFtDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihQZXJmb3JtYW5jZU9ic2VydmVy
Q2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgW01heVRocm93RXhjZXB0aW9uXSB1bmRlZmluZWQg
b2JzZXJ2ZShQZXJmb3JtYW5jZU9ic2VydmVySW5pdCBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dF
eGNlcHRpb25dIHVuZGVmaW5lZCBvYnNlcnZlKG9wdGlvbmFsIFBlcmZvcm1hbmNlT2JzZXJ2ZXJJ
bml0IG9wdGlvbnMpOwogICAgIHVuZGVmaW5lZCBkaXNjb25uZWN0KCk7CisgICAgc2VxdWVuY2U8
UGVyZm9ybWFuY2VFbnRyeT4gdGFrZVJlY29yZHMoKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dF0gc3RhdGljIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJheTxET01T
dHJpbmc+IHN1cHBvcnRlZEVudHJ5VHlwZXM7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAppbmRleCBlMDM2NjVhYWNi
NzBiYjhmODYzOWFmNGJjN2FlMWQwNjBkYmIxZTQ2Li5kZDdmYzk3Y2EzOGY4M2UyNDU1ZTkyNzA4
MjM1MTUwMDNlOWE5Y2U5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgVmVjdG9yPFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Z2V0RW50
cmllc0J5TmFtZSgKICAgICBmb3IgKGF1dG8mIGVudHJ5IDogbV9lbnRyaWVzKSB7CiAgICAgICAg
IGlmICghbmFtZS5pc051bGwoKSAmJiBlbnRyeS0+bmFtZSgpICE9IG5hbWUpCiAgICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnR5cGUoKSAhPSAqdHlwZSkK
KyAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnBlcmZvcm1hbmNlRW50cnlUeXBlKCkgIT0gKnR5
cGUpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgZW50cmllcy5hcHBlbmQoZW50cnku
Y29weVJlZigpKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUGFpbnRUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWlu
dFRpbWluZy5oCmluZGV4IGEyODFiYTM4MjI0OGY4MjM2MGYzNzc4YjFiZmZmNTVlMzk2ZTI1Y2Yu
LjcwZjgwODVmOWNjNzU4NzkwNDYyOTEwYzgwYWE3NGE2YmM3NzQwMmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCkBAIC00NCwxMyArNDQsOSBAQCBw
cml2YXRlOgogICAgIH0KIAogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAicGFpbnQiX3M7IH0KLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBUeXBlOjpQYWludDsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBUeXBlOjpQYWludDsgfQogCiAgICAgflBlcmZvcm1hbmNlUGFpbnRU
aW1pbmcoKSA9IGRlZmF1bHQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJ
QUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VQYWludFRpbWluZykK
LSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYg
ZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzUGFpbnQoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5jcHAKaW5kZXggYmJkMDRiNTliMTZhMDAyNWNkYTFkNDU4MjMxYTM1YWZlYTY2ZTgxNC4u
NzZiOTBiZTdkYWFhZThjZTdmNTRhMWE3Yzc1MDhkNjdmM2ZjNDRlZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC01MywxOCAr
NTMsMjAgQEAgc3RhdGljIGRvdWJsZSBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgTW9ub3QKICAgICByZXR1cm4gUGVyZm9ybWFuY2U6
OnJlZHVjZVRpbWVSZXNvbHV0aW9uKHNlY29uZHMpLm1pbGxpc2Vjb25kcygpOwogfQogCi1zdGF0
aWMgZG91YmxlIGVudHJ5U3RhcnRUaW1lKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgY29uc3Qg
UmVzb3VyY2VUaW1pbmcmIHJlc291cmNlVGltaW5nKQorc3RhdGljIGRvdWJsZSBlbnRyeVN0YXJ0
VGltZShNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5nJiByZXNv
dXJjZVRpbWluZywgY29uc3QgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRpb25Vbmxv
YWRFdmVudFN0YXJ0KQogewotICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRh
aWxzKCkpCi0gICAgICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KHRpbWVPcmlnaW4sIHJlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwor
ICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpIHsKKyAgICAgICAg
TW9ub3RvbmljVGltZSBzdGFydFRpbWUgPSBuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydCA/ICpu
YXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydCA6IHJlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5m
ZXRjaFN0YXJ0KCk7CisgICAgICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKHRpbWVPcmlnaW4sIHN0YXJ0VGltZSk7CisgICAgfQogCiAgICAgcmV0dXJuIG1vbm90
b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcu
bG9hZFRpbWluZygpLnN0YXJ0VGltZSgpKTsKIH0KIAotc3RhdGljIGRvdWJsZSBlbnRyeUVuZFRp
bWUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBjb25zdCBSZXNvdXJjZVRpbWluZyYgcmVzb3Vy
Y2VUaW1pbmcpCitzdGF0aWMgZG91YmxlIGVudHJ5RW5kVGltZShNb25vdG9uaWNUaW1lIHRpbWVP
cmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5nJiByZXNvdXJjZVRpbWluZywgY29uc3QgT3B0aW9u
YWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRpb25VbmxvYWRFdmVudFN0YXJ0KQogewogICAgIGlm
ICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCi0gICAgICAgIHJldHVybiBl
bnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZyk7CisgICAgICAgIHJldHVy
biBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVu
bG9hZEV2ZW50U3RhcnQpOwogCiAgICAgaWYgKHJlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0
cmljcygpLmlzQ29tcGxldGUoKSkgewogICAgICAgICBTZWNvbmRzIGVuZFRpbWUgPSAocmVzb3Vy
Y2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3RhcnQoKSArIHJlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKSAtIHRpbWVPcmlnaW47CkBAIC03NCwxNSArNzYs
MjcgQEAgc3RhdGljIGRvdWJsZSBlbnRyeUVuZFRpbWUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2lu
LCBjb25zdCBSZXNvdXJjZVRpbWluZyYgcmVzb3UKICAgICByZXR1cm4gbW9ub3RvbmljVGltZVRv
RE9NSGlnaFJlc1RpbWVTdGFtcCh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZy5sb2FkVGltaW5n
KCkucmVzcG9uc2VFbmQoKSk7CiB9CiAKK3N0YXRpYyBNb25vdG9uaWNUaW1lIGVudHJ5VGltZU9y
aWdpbihNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5nJiByZXNv
dXJjZVRpbWluZywgY29uc3QgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRpb25Vbmxv
YWRFdmVudFN0YXJ0KQoreworICAgIGlmIChuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydCkgewor
ICAgICAgICBhdXRvJiBsb2FkVGltaW5nID0gcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpOwor
ICAgICAgICBpZiAoIXJlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpCisgICAgICAg
ICAgICB8fCBsb2FkVGltaW5nLmhhc0Nyb3NzT3JpZ2luUmVkaXJlY3QoKQorICAgICAgICAgICAg
fHwgIWxvYWRUaW1pbmcuaGFzU2FtZU9yaWdpbkFzUHJldmlvdXNEb2N1bWVudCgpKQorICAgICAg
ICAgICAgcmV0dXJuICpuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydDsKKyAgICB9CisgICAgcmV0
dXJuIHRpbWVPcmlnaW47Cit9CisKIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBS
ZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQogewogICAgIHJldHVybiBhZG9wdFJlZigq
bmV3IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcodGltZU9yaWdpbiwgV1RGTW92ZShyZXNvdXJj
ZVRpbWluZykpKTsKIH0KIAotUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYg
cmVzb3VyY2VUaW1pbmcpCi0gICAgOiBQZXJmb3JtYW5jZUVudHJ5KHJlc291cmNlVGltaW5nLnVy
bCgpLnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZyks
IGVudHJ5RW5kVGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZykpCitQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJiByZXNvdXJjZVRpbWluZywgT3B0aW9uYWw8TW9ub3Rv
bmljVGltZT4gbmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQpCisgICAgOiBQZXJmb3JtYW5jZUVu
dHJ5KHJlc291cmNlVGltaW5nLnVybCgpLnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0aW1lT3Jp
Z2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQpLCBlbnRyeUVu
ZFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcsIG5hdmlnYXRpb25VbmxvYWRFdmVudFN0
YXJ0KSkKICAgICAsIG1faW5pdGlhdG9yVHlwZShyZXNvdXJjZVRpbWluZy5pbml0aWF0b3IoKSkK
LSAgICAsIG1fdGltZU9yaWdpbih0aW1lT3JpZ2luKQorICAgICwgbV90aW1lT3JpZ2luKGVudHJ5
VGltZU9yaWdpbih0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVubG9hZEV2
ZW50U3RhcnQpKQogICAgICwgbV9sb2FkVGltaW5nKHJlc291cmNlVGltaW5nLmxvYWRUaW1pbmco
KSkKICAgICAsIG1fbmV0d29ya0xvYWRNZXRyaWNzKHJlc291cmNlVGltaW5nLm5ldHdvcmtMb2Fk
TWV0cmljcygpKQogICAgICwgbV9zaG91bGRSZXBvcnREZXRhaWxzKHJlc291cmNlVGltaW5nLmFs
bG93VGltaW5nRGV0YWlscygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaAppbmRleCA1ZDA3OWY0YzY2NTY1MjMxNWEwMDEyNDYzYzhjZGY5Y2U1
MmVjNWExLi5kMTZmNjc0OTk5ZTdhM2UwNjIyNDNlM2RkN2EyNWI2MmE2YzBjYTM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaApAQCAtNDIs
NyArNDIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBQZXJmb3JtYW5jZVNlcnZlclRp
bWluZzsKIGNsYXNzIFJlc291cmNlVGltaW5nOwogCi1jbGFzcyBQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nIGZpbmFsIDogcHVibGljIFBlcmZvcm1hbmNlRW50cnkgeworY2xhc3MgUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZyA6IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKIHB1YmxpYzoKICAg
ICBzdGF0aWMgUmVmPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+IGNyZWF0ZShNb25vdG9uaWNU
aW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYpOwogCkBAIC02MSwxMyArNjEsMTQgQEAg
cHVibGljOgogICAgIGRvdWJsZSByZXF1ZXN0U3RhcnQoKSBjb25zdDsKICAgICBkb3VibGUgcmVz
cG9uc2VTdGFydCgpIGNvbnN0OwogICAgIGRvdWJsZSByZXNwb25zZUVuZCgpIGNvbnN0OworCiAg
ICAgY29uc3QgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+JiBzZXJ2ZXJUaW1p
bmcoKSBjb25zdCB7IHJldHVybiBtX3NlcnZlclRpbWluZzsgfQogCi0gICAgVHlwZSB0eXBlKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBBU0NJSUxpdGVyYWwg
ZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gInJlc291cmNlIl9zOyB9CisgICAgVHlw
ZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIFR5cGU6OlJl
c291cmNlOyB9CisgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuICJyZXNvdXJjZSJfczsgfQogCi1wcml2YXRlOgotICAgIFBlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmKTsKK3By
b3RlY3RlZDoKKyAgICBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1RpbWUgdGlt
ZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJiwgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4gbmF2aWdh
dGlvblVubG9hZEV2ZW50U3RhcnQgPSBXVEY6Om51bGxvcHQpOwogICAgIH5QZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nKCk7CiAKICAgICBkb3VibGUgbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVz
VGltZVN0YW1wKFNlY29uZHMpIGNvbnN0OwpAQCAtODEsNyArODIsMyBAQCBwcml2YXRlOgogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lO
KFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcpCi0gICAgc3RhdGljIGJvb2wgaXNU
eXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRy
eS5pc1Jlc291cmNlKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCmluZGV4IDQ2
YThmMGYyNTExY2ViNWMwYzdkZDMxMTZjMmY4ZmE3N2ZjOGQ3ZGQuLmYwNjU2NmQ1ZTBmYTdlMWZk
MGI0NTk3ZjEwYjVmMjJlZjY2YTE2ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtNTAsNiArNTAsMTEgQEAgdHlwZWRlZiBk
b3VibGUgRE9NSGlnaFJlc1RpbWVTdGFtcDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NSGln
aFJlc1RpbWVTdGFtcCByZXF1ZXN0U3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUhp
Z2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VTdGFydDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCByZXNwb25zZUVuZDsKKworICAgIC8vIE5vdGU6IHRyYW5zZmVyU2l6
ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFyZSBpbnRlbnRpb25hbGx5
IG9taXR0ZWQKKyAgICAvLyBiZWNhdXNlIG9mIHByaXZhY3kgY29uY2VybnMgc3VjaCBhcyBodHRw
czovL2dpdGh1Yi5jb20vdzNjL3Jlc291cmNlLXRpbWluZy9pc3N1ZXMvMjM4CisKKyAgICAvLyBo
dHRwczovL3d3dy53My5vcmcvVFIvc2VydmVyLXRpbWluZy8jZXh0ZW5zaW9uLXRvLXRoZS1wZXJm
b3JtYW5jZXJlc291cmNldGltaW5nLWludGVyZmFjZQogICAgIFtFbmFibGVkQXRSdW50aW1lPVNl
cnZlclRpbWluZ10gcmVhZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5PFBlcmZvcm1hbmNlU2Vy
dmVyVGltaW5nPiBzZXJ2ZXJUaW1pbmc7CiAKICAgICBbRGVmYXVsdF0gb2JqZWN0IHRvSlNPTigp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggZWE1YWFlM2ZjN2RiYzY0NGIzZDJm
ZGJmYzkwYjRjOGJkZTRkNGYxMS4uM2VkN2NkNzdlNjAzYTI2ZGE0ZGE3NDU0M2VkMTNmY2Q1OTc4
YjI1ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTE3IEBACisy
MDIxLTAxLTEyICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2Rv
Y3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9t
X2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9t
ZWRpYV9kb2N1bWVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanM6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0
cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0
bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5o
dG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zy
b21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5z
dGFuY2VfYWNjZXNzb3JzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5f
ZG9jdW1lbnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWw6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X2JhY2tmb3J3YXJkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1s
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2lu
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWw6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1s
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWw6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF91bmlxdWVfbmF2X2luc3RhbmNlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9p
bnN0YW5jZXMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
cmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qczoKKyAgICAgICAgKHRlc3RfbmFtZXNwYWNl
KToKKyAgICAgICAgKHRlc3RfYXR0cmlidXRlX2V4aXN0cyk6CisgICAgICAgICh0ZXN0X2VudW0p
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUt
Y29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlv
bi1zdGFydC1yZXVzZS5odHRwcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8u
aHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9u
YXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4t
Y2hlY2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWw6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZm
ZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rl
c3QudC50LnN0ZXBfdGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFs
aWQtZW50cmllcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxo
YXJuZXNzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luYyBpZGxfYXJyYXkpOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZm
ZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanM6IEFkZGVkLgorICAgICAgICAocHJvbWlzZV90ZXN0
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90
LWNsb25hYmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVm
ZmVyZWQtZmFsc2UuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBf
dGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
Y2FsbGJhY2stbXV0YXRlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29u
bmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3lu
Y190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tZGlzY29ubmVjdC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6Cisg
ICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190
ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tZ2V0ZW50cmllcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVh
c3VyZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qczogQWRkZWQuCisgICAgICAgIChh
c3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tb2JzZXJ2ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVz
b3VyY2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3lu
Y190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWlu
dmFsaWQtZW50cmllcy5qczogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNl
cnZlci5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanM6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlU
eXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzOiBBZGRl
ZC4KKyAgICAgICAgKHRlc3RUaW1lUmVzb2x1dGlvbik6CisgICAgICAgICh0aW1lQnlVc2VyVGlt
aW5nKToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
d29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdp
dGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbDogQWRkZWQuCisKIDIwMjEtMDEtMTIgIE1hbnVl
bCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAKICAgICAgICAgW3NlbGVjdG9y
c10gVXBkYXRlIHRlc3RzIGZyb20gV1BUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9NRVRBLnltbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZmIwZTBmMWY2N2E5YzZhYTJlN2U5MjFiMDllODVmOGQ5
NzBiMjkwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApAQCAtMCwwICsxLDUgQEAK
K3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9uYXZpZ2F0aW9uLXRpbWluZy8KK3N1Z2dlc3Rl
ZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKKyAgLSB5b2F2d2Vpc3MK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5iMjhjMTBjZTM2YzNjNzQ0ODQ4OTdlNWQyNGRhZmY5MTczOTVlYjU2Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEg
aW1hZ2UgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKwor
UEFTUyBUZXN0IGRvbUludGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50CisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRl
cmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5YjNjNGQ0ODZhYjNiMGU3
MjUyMTQ1ZDM3OGE4YWY5ZTM3ZjYzNDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRl
cmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAv
PgorICAgICAgICA8dGl0bGU+VGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudC48
L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0i
aHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVm
PSJodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2Vi
Lmh0bWwjcmVhZC1tZWRpYSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4K
KyAgICAgICAgY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1h
Z2UgZG9jdW1lbnQiKTsKKyAgICAgICAgZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAg
ICAgICBjb25zdCB0aW1pbmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250
ZW50V2luZG93LnBlcmZvcm1hbmNlLnRpbWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVy
X3RoYW4odGltaW5nLmRvbUludGVyYWN0aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3Qg
ZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9zaXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRv
bmUoKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+
RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1
bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZy
YW1lIHNyYz0iLi4vaW1hZ2VzL3NtaWxleS5wbmciIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9p
ZnJhbWU+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJh
Y3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVf
bWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3ZjY3MmRiODI3MzQ5OTZi
YWE2ZDQxMmQ2MTljZWY3YmRiODFlY2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRl
cmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNj
cmlwdGlvbgorCitUaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUt
dmFsdWUgZG9tSW50ZXJhY3RpdmUuCisKKworCitQQVNTIFRlc3QgZG9tSW50ZXJhY3RpdmUgb24g
bWVkaWEgZG9jdW1lbnQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFf
ZG9jdW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZTRlNDU3MjVkODM2MDViNTE5Y2U3NGVhOGZmNDU2MWRjZDNkNzU5NQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwK
QEAgLTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5UZXN0IGRvbUlu
dGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50LjwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5v
cmcvbXVsdGlwYWdlL2Jyb3dzaW5nLXRoZS13ZWIuaHRtbCNyZWFkLW1lZGlhIi8+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorICAgIDwvaGVhZD4KKyAgICA8c2NyaXB0PgorICAgICAgICBjb25zdCB0ID0gYXN5bmNfdGVz
dCgiVGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudCIpOworICAgICAgICBmdW5j
dGlvbiBmcmFtZUxvYWRlZCgpIHsKKyAgICAgICAgICAgIGNvbnN0IHRpbWluZyA9IGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoImlmcmFtZSIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UudGltaW5n
OworICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbih0aW1pbmcuZG9tSW50ZXJhY3RpdmUs
IDAsCisgICAgICAgICAgICAgICAgIkV4cGVjdCBkb21JbnRlcmFjdGl2ZSB0byBiZSBwb3NpdGl2
ZSB2YWx1ZS4iKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9CisgICAgPC9zY3Jp
cHQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxw
PlRoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21J
bnRlcmFjdGl2ZS48L3A+CisgICAgICAgIDxpZnJhbWUgc3JjPSIuLi9tZWRpYS9BNC5tcDQiIG9u
bG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5k
b3cuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzCmluZGV4IDhjYzM1NDZiM2MyN2E5ZDkz
ZWU1NjIxNTg0ZDgzZDU2YTMwODUxM2MuLjcyY2YwYzNhM2QzYzhjYjc3NTQxNjI1YTA1NTRkODQ2
NGQ3YzExMmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9pZGxoYXJuZXNzLndpbmRvdy5qcwpAQCAtMSwyMSArMSwyMCBAQAogLy8gTUVUQTogc2NyaXB0
PS9yZXNvdXJjZXMvV2ViSURMUGFyc2VyLmpzCiAvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9p
ZGxoYXJuZXNzLmpzCisvLyBNRVRBOiB0aW1lb3V0PWxvbmcKIAogJ3VzZSBzdHJpY3QnOwogCiAv
LyBodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy8KIAogaWRsX3Rlc3QoCi0g
IFsnbmF2aWdhdGlvbi10aW1pbmcnXSwKLSAgWydyZXNvdXJjZS10aW1pbmcnLCAncGVyZm9ybWFu
Y2UtdGltZWxpbmUnLCAnaHItdGltZScsICdkb20nXSwKLSAgaWRsX2FycmF5ID0+IHsKLSAgICBp
ZGxfYXJyYXkuYWRkX29iamVjdHMoeworICBbJ25hdmlnYXRpb24tdGltaW5nJywgJ2hyLXRpbWUn
XSwKKyAgWydyZXNvdXJjZS10aW1pbmcnLCAncGVyZm9ybWFuY2UtdGltZWxpbmUnLCAnZG9tJywg
J2h0bWwnXSwKKyAgaWRsQXJyYXkgPT4geworICAgIGlkbEFycmF5LmFkZF9vYmplY3RzKHsKICAg
ICAgIFBlcmZvcm1hbmNlOiBbJ3BlcmZvcm1hbmNlJ10sCiAgICAgICBQZXJmb3JtYW5jZU5hdmln
YXRpb246IFsncGVyZm9ybWFuY2UubmF2aWdhdGlvbiddLAogICAgICAgUGVyZm9ybWFuY2VUaW1p
bmc6IFsncGVyZm9ybWFuY2UudGltaW5nJ10sCi0gICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6IFsKLSAgICAgICAgJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXScKLSAgICAgIF0KKyAgICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzogWydw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nXQogICAgIH0pOwog
ICB9CiApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44YjIzYjc2MDVkOTIyZGEzODcyYWI1NmRjZmVhYzU4M2MyZWU0MmIyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRo
YXQgUGVyZm9ybWFuY2VPYnNlcnZlciBjYW4gb2JzZXJ2ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2Ug
YW5kIHRoYXQgdGhlIGV4cGVjdGVkIGF0dHJpYnV0ZXMgaW4gbmF2IHRpbWluZyAyIGluc3RhbmNl
IGV4aXN0IChidXQgZG9lcyBub3QgdmFsaWRhdGUgdGhhdCB0aGUgdmFsdWVzIGFyZSBjb3JyZWN0
KS4KKworCitGQUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIG9i
c2VydmFibGUuIGFzc2VydF90cnVlOiBFeHBlY3RlZCBhdHRyaWJ1dGU6IGRlY29kZWRCb2R5U2l6
ZS4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
YXR0cmlidXRlc19leGlzdC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmI2MDQ4ZTA2MWJhMDU3Y2Q5NzFiMDhlMDMyYmU3MTdmMGFkMDRkMGQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwK
QEAgLTAsMCArMSw2NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBU
aW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdv
b2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVs
PSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNz
ZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2
IHRpbWluZyAyIGluc3RhbmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5h
diB0aW1pbmcgMiBpbnN0YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhl
IHZhbHVlcyBhcmUgY29ycmVjdCkuPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZh
ciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScs
CisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2Fk
ZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAor
ICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBF
bmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJh
dGlvbicsCisgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRy
eVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRv
clR5cGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2
ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAgICAgJ25leHRIb3BQcm90
b2NvbCcsCisgICAgICAgICAgICAncmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJl
Y3RFbmQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVl
c3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3Bv
bnNlU3RhcnQnLAorICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAg
ICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1
bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAg
ICAgICAnd29ya2VyU3RhcnQnCisgICAgICAgIF07CisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygp
OworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIlRoZXJlIHNob3VsZCBiZSBvbmx5IG9uZSBuYXZpZ2F0
aW9uIHRpbWluZyBpbnN0YW5jZS4iKTsKKyAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmlidXRlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X3RydWUobmF2VGltaW5nMkF0dHJpYnV0ZXNbaV0gaW4gZW50cmll
c1swXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgYXR0cmlidXRlOiAi
ICsgbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV0gKyAiLiIpOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAg
ICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7Cisg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFy
ZSBvYnNlcnZhYmxlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYjQ5OWY4YWVkZGM5YmYzNmUzZWI1MWNiNjhiNjk3Nzg4ODIwYjAyYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0
aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJp
YnV0ZXMgYXJlIGluIGNlcnRhaW4gb3JkZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVk
IHZhbHVlcy4KKworCitGQUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNl
J3MgdmFsdWUgaXMgcmVhc29uYWJsZS4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHRyYW5zZmVyU2l6
ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5hdmlnYXRp
b24uIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVl
cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjc5ODA5ZTQxZGRkN2Y2OGIxZDNmYTY5NzljYTBkNmZiMTUzOGE0
ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5o
dG1sCkBAIC0wLDAgKzEsMTM3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRs
ZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGlu
ayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5n
LTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzIj48L3NjcmlwdD4KKyAg
ICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAg
ICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcg
MiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4gb3Jk
ZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy48L3A+CisKKyAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgLy8gSG9zdCBuYW1lcyBhbmQgcG9ydHMgbWF5IGJlIGNvbmZpZ3Vy
ZWQgYXQgdGVzdCBleGVjdXRpb24gdGltZS4gVGhlCisgICAgICAgIC8vIHdlYi1wbGF0Zm9ybS10
ZXN0cyBzZXJ2ZXIgb2ZmZXJzIHR3byBtZWNoYW5pc21zIGZvciByZXRyaWV2aW5nIHRoZXNlCisg
ICAgICAgIC8vIHZhbHVlcyBkeW5hbWljYWxseTogZGlyZWN0IHRleHQgc3Vic3RpdHV0aW9uIGFu
ZCB0aGUgYGdldC1ob3N0LWluZm9gCisgICAgICAgIC8vIHNjcmlwdC4gVGhlIGZvcm1lciBpcyBp
bmFwcHJvcHJhdGUgZm9yIHRoaXMgdGVzdCBiZWNhdXNlIGl0CisgICAgICAgIC8vIGluZmx1ZW5j
ZXMgdGhlIHNpemUgb2YgdGhlIGRvY3VtZW50LCBhbmQgdGhpcyB0ZXN0IGluY2x1ZGVzIHN0YXRp
YworICAgICAgICAvLyBhc3NlcnRpb25zIGZvciB0aGF0IHZhbHVlLgorICAgICAgICB2YXIgaG9z
dF9pbmZvID0gZ2V0X2hvc3RfaW5mbygpOworICAgICAgICB2YXIgZXhwZWN0ZWRVcmwgPSAiaHR0
cDovLyIgKyBob3N0X2luZm8uT1JJR0lOQUxfSE9TVCArICI6IiArCisgICAgICAgICAgICBob3N0
X2luZm8uSFRUUF9QT1JUICsKKyAgICAgICAgICAgICIvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwiOworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50
T3JkZXIxID0gWworICAgICAgICAgICAgJ3N0YXJ0VGltZScsCisgICAgICAgICAgICAncmVkaXJl
Y3RTdGFydCcsCisgICAgICAgICAgICAvLyd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAg
ICdyZWRpcmVjdEVuZCcsCisgICAgICAgICAgICAvLyd1bmxvYWRFdmVudEVuZCcsCisgICAgICAg
ICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAg
ICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywK
KyAgICAgICAgICAgIC8vJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAnY29u
bmVjdEVuZCcsCisgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNw
b25zZVN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAnZG9t
SW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywK
KyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2Rv
bUNvbXBsZXRlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAn
bG9hZEV2ZW50RW5kJworICAgICAgICBdOworCisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRP
cmRlcjIgPSBbCisgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAndW5s
b2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAg
J3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JworICAgICAgICBdOwor
CisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRPcmRlcjMgPSBbCisgICAgICAgICAgICAnY29u
bmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAg
ICAgICAgJ2Nvbm5lY3RFbmQnCisgICAgICAgIF07CisKKyAgICAgICAgLy8gTmF2aWdhdGlvbiBU
aW1pbmcgYXR0cmlidXRlcyBmb3IgY29tcGFyaXNvbi4KKyAgICAgICAgdmFyIG5hdlRpbWluZzFF
dmVudE9yZGVyID0gWworICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAg
ICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAg
ICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAg
ICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAg
ICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21D
b250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAg
ICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJworICAg
ICAgICBdOworCisgICAgICAgIGZ1bmN0aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRP
cmRlciwgdGltaW5nRW50cnkpIHsKKyAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZl
bnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0
aW1pbmdFbnRyeVtldmVudE9yZGVyW2ldXSA8PSB0aW1pbmdFbnRyeVtldmVudE9yZGVyW2kgKyAx
XV0sCisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIg
dG8gYmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7
CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAg
ICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciBlbnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVudHJ5VHlwZSwgIm5hdmln
YXRpb24iLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGVudHJ5VHlwZSB0byBi
ZTogbmF2aWdhdGlvbi4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRy
aWVzWzBdLm5hbWUsIGV4cGVjdGVkVXJsKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyaWVzWzBdLnN0YXJ0VGltZSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJF
eHBlY3RlZCBzdGFydFRpbWUgdG8gYmU6IDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cmllc1swXS5kdXJhdGlvbiwgZW50cmllc1swXS5sb2FkRXZlbnRFbmQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgZHVyYXRpb24gdG8gYmUgZXF1YWwgdG8g
bG9hZEV2ZW50RW5kLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJp
ZXNbMF0uaW5pdGlhdG9yVHlwZSwgIm5hdmlnYXRpb24iLAorICAgICAgICAgICAgICAgICAgICAg
ICAgIkV4cGVjdGVkIGluaXRpYXRvclR5cGUgdG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5uZXh0SG9wUHJvdG9jb2wsICJo
dHRwLzEuMSIpOworICAgICAgICAgICAgICAgICAgICAvLyBUaGlzIHRlc3QgbWF5IGZhaWwgd2hl
biByZXNwb25zZSBpcyBmcm9tIGNhY2guIERpc2FibGUgb3IgY2xlYW4gY2FjaCBiZWZvcmUKKyAg
ICAgICAgICAgICAgICAgICAgLy8gcnVubmluZyB0aGlzIHRlc3QuCisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF90cnVlKGVudHJpZXNbMF0udHJhbnNmZXJTaXplID4gZW50cmllc1swXS5lbmNv
ZGVkQm9keVNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgdHJhbnNmZXJT
aXplIHRvIGJlIGdyZWF0ZXIgdGhhbiBlbmNvZGVkQm9keVNpemUgaW4gdW5jYWNoZWQgbmF2aWdh
dGlvbi4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVu
Y29kZWRCb2R5U2l6ZSwgNTk1NSk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZW50cmllc1swXS5kZWNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICB2
ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMSk7
CisgICAgICAgICAgICAgICAgICAgIC8vIFZlcmlmeSBpZiB0aGUgcmVwb3J0ZWQgdGltaW5nIGlz
IG5vdCB0aGF0IGRpZmZlcmVudAorICAgICAgICAgICAgICAgICAgICAvLyBmcm9tIHdoYXQgaXMg
cmVwb3J0ZWQgYnkgTmF2aWdhdGlvbiBUaW1pbmcgMS4KKyAgICAgICAgICAgICAgICAgICAgbmF2
VGltaW5nMUV2ZW50T3JkZXIuZm9yRWFjaCgKKyAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlv
bihldmVudCkgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmdbZXZlbnRdIC0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCA+IDApIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyaWVzWzBdW2V2ZW50XSwgMCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnQgKyAiIHRvIGJlIGdy
ZWF0ZXIgdGhhbiAwIik7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgICAgICAgICAvLyBXaGVuIHVubG9hZEV2ZW50IGhhcHBl
bnMKKyAgICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInVubG9hZEV2ZW50U3RhcnQi
XSAhPSAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVy
KGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMik7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgLy8gV2hlbiBhIHNlY3VyZSB0cmFuc3BvcnQgaXMgdXNl
ZAorICAgICAgICAgICAgICAgICAgICBpZiAoZW50cmllc1swXVsic2VjdXJlQ29ubmVjdGlvblN0
YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRP
cmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjMpOworICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAg
ICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAg
ICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRp
b24iXX0pOworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0
YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4t
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQK
aW5kZXggNDk5OTlkODk0MTEwNDk3OWIzMjZhN2ZmYTZiODkwMTg1YThmYTY4ZS4uMDVmMjMwYjlm
YjBmYWI4ZDhkN2NiNTg1ZWM5ODVjMjA4MTExOWZkNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1l
bnRfb3Blbi1leHBlY3RlZC50eHQKQEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5
cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1tu
YXZUaW1pbmcyQXR0cmlidXRlc1tpXV0nKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlk
YXRlcyB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIHJl
bWFpbnMgY29uc3RhbnQgd2hlbiBhIGRvY3VtZW50IGlzIHJlcGxhY2VkIHVzaW5nIGRvY3VtZW50
Lm9wZW4uCkBAIC05LDYgKzgsNSBAQCBUaGUgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVj
a3MgdG8gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbgogCiAKIAotSGFy
bmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykK
LQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9kb2N1bWVudF9vcGVuLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0
bWwKaW5kZXggYmMwNmVkNTg0MGE3NTU1ZDFlMmE2MjU4MGNmNWE5ODhjYTU4YTcxOC4uYWExMDk3
MjQ4ZGQxMzNlNWU2MWIxN2M2ZjkyZjE0Mzc1NzliNTg4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29w
ZW4uaHRtbApAQCAtOCw2ICs4LDggQEAKICAgICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQ+
CisgICAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAg
ICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWwogICAgICAgICAgICAgICAgICAgJ2Nv
bm5lY3RFbmQnLAogICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKaW5kZXggYTk3Yzg2YmNiNGY2
N2Y1MjRiMWJjZTM4OThjZTVlZDMwNzQ3OGNiZS4uMzVhNTZhM2ZlNTc3Mjk4MWJkYzJiYzVhY2Uw
NzkzYzEwMzEyNWZkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFj
ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4
cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMSBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251
bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQg
aGFuZGxlcihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdwbnQxLnR5cGUnKQogRGVzY3JpcHRpb24KIAogVGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGF0IGEgUGVyZm9ybWFuY2VOYXZpZ2F0aW5nVGltaW5nIGNvcnJlc3Bv
bmRpbmcgdG8gYSBkZXRhY2hlZCBkb2N1bWVudCBjYW4ndCBhY2Nlc3MgYSBkaWZmZXJlbnQgZG9j
dW1lbnQncyBzdGF0ZS4KIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBl
JykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
cmVwbGFjZWQuaHRtbAppbmRleCBiOTEwZjQ1M2QxMjk1MWQwMWNiNTg0ODk5NzY2YjY0ZmUwOGU4
MzZjLi41OTcyZjIwZTliZDdmZmRmMjdkMzJiNWIzMGI2MzkxM2NlZWVlZDA5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsK
KwogICAgICAgICAgICAgdmFyIG5hdmlnYXRpb25fZnJhbWU7CiAgICAgICAgICAgICB2YXIgcG50
MTsKICAgICAgICAgICAgIHZhciBzdGVwID0gMTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3Zl
ZC1leHBlY3RlZC50eHQKaW5kZXggYjVmOGJlZWYzOWY2MDk5NTIzMjQzZWNlMTk5YmRkZmJkMDFm
MTY5MS4uOTc3M2RkYTU5YjNmY2E2Yjg4ZjM0Njg4ZGM2ODgxNGIwNzdkNTc5OSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKQEAgLTQsNSArNCw1IEBAIERlc2Ny
aXB0aW9uCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nOjp0eXBlKCkncyBkZWZhdWx0IHZhbHVlIGlzIG5hdmlnYXRlCiAKIAotRkFJTCBOYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVCB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
cG50LnR5cGUnKQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQt
ZXhwZWN0ZWQudHh0CmluZGV4IDZjMzFhZmQwYjI5YjEwZTkzODhiNGZjMjE5NzNjZTJjNmUxNGNh
MjAuLjM3N2NlOTg2ODA2YTQ5ZjI4MWM2MWVjMTZiMGYxMTIxY2IxZGRlMzAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZyBpbnN0YW5jZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZyBpbnN0YW5jZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4KIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFy
dC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFy
dC5odG1sCmluZGV4IDc3OTAwODFkMDFjN2I4MjYyYzUzNGQzOTUwODU2OTBlYmUyZGZmZTguLmFk
NTBjNmE4N2QyYjQ2NjI5N2RjMGYyZWJjZWY5MmEzNzY1NWIwMTMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKQEAg
LTQsNyArNCw3IEBACiA8c2NyaXB0PgogdGVzdChmdW5jdGlvbigpIHsKICAgdmFyIG5hdmlnYXRp
b25UaW1pbmcyID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ25hdmlnYXRp
b24nKVswXTsKLSAgYXNzZXJ0X3RydWUobmF2aWdhdGlvblRpbWluZzIgIT09IHVuZGVmaW5lZCk7
CisgIGFzc2VydF9ub3RfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLCB1bmRlZmluZWQpOwogICBh
c3NlcnRfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iKTsK
ICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5zdGFydFRpbWUsIDApOwogICBhc3Nl
cnRfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hMTg0ODYyOTE1MDFiNWNjNGYxNzEwMzAxNjVkOTZlMDRjN2FmZWNiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhh
dCBuYXYgdGltaW5nIDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVu
dCBhY2Nlc3NvcnMgb25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KCkvZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3Vt
ZW50IikKKworCitQQVNTIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJl
IGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzLgorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE4ZmJmYjRhMzA2MjU0MjRl
OGU4NDJlYjJiODA2MmRhNGUzZTg5MzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbApAQCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cisg
ICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxs
aW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5j
b20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3Jn
L1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmci
Lz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8u
c3ViLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5E
ZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYg
dGltaW5nIDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nl
c3NvcnMgb25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3VtZW50Iik8
L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0
X2luZm8oKTsKKyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0gImh0dHA6Ly8iICsgaG9zdF9pbmZv
Lk9SSUdJTkFMX0hPU1QgKyAiOiIgKworICAgICAgICAgICAgaG9zdF9pbmZvLkhUVFBfUE9SVCAr
ICIvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sIjsK
KyAgICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5l
Y3RFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZl
bnRTdGFydCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAg
ICAgICAgJ2R1cmF0aW9uJywKKyAgICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAg
ICAgICAgJ2VudHJ5VHlwZScsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAg
ICAnaW5pdGlhdG9yVHlwZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAn
cmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAg
J3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAg
ICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAg
ICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAndHJhbnNmZXJTaXplJywK
KyAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisg
ICAgICAgIF07CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAg
ICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAg
ICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAg
ICB2YXIgaW5zdGFuY2UxID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdOworICAgICAgICAg
ICAgICAgICAgICB2YXIgaW5zdGFuY2UyID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICB2YXIgaW5zdGFuY2UzID0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShleHBlY3RlZFVybClbMF07CisKKyAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIikubGVuZ3RoLCAxLCAiRXhwZWN0ZWQgdGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlv
biB0aW1pbmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShleHBlY3RlZFVybCkubGVuZ3RoLCAxLCAiRXhw
ZWN0ZWQgdGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisK
KyAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmli
dXRlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhpbnN0YW5jZTFbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dLCBpbnN0YW5jZTJbbmF2VGltaW5n
MkF0dHJpYnV0ZXNbaV1dKTsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAg
ICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBp
KyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25h
dlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwgaW5zdGFuY2UzW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ld
XSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAg
ICAgICB9KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2Vu
dHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgfSwgIlBlcmZvcm1hbmNlIG5h
dmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZm
ZXJlbnQgYWNjZXNzb3JzLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hN2YzNTZkZjExNmM5MjU3MjYyOTA4M2UwOTEwODA0NmM3OTEyNzk0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQgQEAKKworCitQQVNTIG5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1l
IFVSTCBjaGFuZ2VzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFt
ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MGMxNDRiZGE0NTRiZTg2MTgwYmJmYmE1MDNjNGQxZGE5NDU3MzNlNAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sCkBAIC0wLDAgKzEsNDAgQEAK
KzwhRE9DVFlQRSBIVE1MPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDxtZXRhIGNoYXJzZXQ9dXRm
LTg+CisgICAgPHRpdGxlPlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5uYW1lIHVwZGF0ZWQg
aW4gaWZyYW1lczwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2NyaXB0Pgor
cHJvbWlzZV90ZXN0KGFzeW5jIGZ1bmN0aW9uICh0KSB7CisgIHZhciBpZnIgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIp
OworCisgIGlmci5zcmM9InJlc291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwiOworICBhd2Fp
dCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVuY3Rpb24oKSB7
CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9u
IHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUsIGlmci5jb250
ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0
aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29udGVudFdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRz
V2l0aCgiYmxhbmtfcGFnZV9ncmVlbi5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMgYmxhbmtf
cGFnZV9ncmVlbi5odG1sIik7CisgICAgICByZXNvbHZlKCk7CisgICAgfQorICB9KTsKKworCisg
IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geyBzZXRUaW1lb3V0KHJlc29sdmUsIDEwMCk7
IH0pOworICBpZnIuc3JjID0icmVzb3VyY2VzL2JsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiOworCisg
IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIGlmci5vbmxvYWQgPSBmdW5jdGlv
bigpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdmln
YXRpb24gdGltZSBlbnRyeSIpOworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZSwgaWZy
LmNvbnRlbnRXaW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hdmlnYXRpb24gbmFtZSBtYXRj
aGVzIHRoZSB3aW5kb3cubG9jYXRpb24iKTsKKyAgICAgIGFzc2VydF90cnVlKGlmci5jb250ZW50
V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1l
LmVuZHNXaXRoKCJibGFua19wYWdlX3llbGxvdy5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMg
YmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7
Cit9LCAibmF2aWdhdGlvbi5uYW1lIHVwZGF0ZWQgd2hlbiBpZnJhbWUgVVJMIGNoYW5nZXMiKTsK
KyAgICA8L3NjcmlwdD4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKaW5kZXggNGIyMGVjNmY5
YjIwOGM3M2Q4NWE5NDRkODlhMWI3YjhkODQwZWE5MC4uZWRhYTkyODhhOWFmYjZlMmNjY2ExYzQz
N2Q1ZGFjYTU5ZmZhYWZhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0
aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93
aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsNyBAQAotQ09OU09MRSBNRVNT
QUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0
aW1pbmdbcHJvcGVydHldJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhh
dCBhbGwgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIikgYXR0cmlidXRlcyByZW1haW4gdW5jaGFuZ2VkIGFmdGVyIGFuIGluIGRvY3VtZW50IG5h
dmlnYXRpb24gKFVSTCBmcmFnbWVudCBjaGFuZ2UpLgogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwp
LCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAndGltaW5nW3Byb3BlcnR5XScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbAppbmRleCBm
MzljYTA1NzY5NTU5OTllY2E4YTA4MzMxZTU1Y2MyOTI1ODE2ZjM2Li43NWU2ZTExM2I2ZGJhMzY4
N2RmMWM4ZmRiZjljOTgzYTlmYWU4YTY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93
aXRoaW5fZG9jdW1lbnQuaHRtbApAQCAtMTMsNiArMTMsOCBAQAogICAgICAgICA8cD5UaGlzIHRl
c3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBh
biBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS48L3A+CiAKICAg
ICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7
CisKICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAg
ICAgICAnY29ubmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVj
dGVkLnR4dAppbmRleCA5ZTJjYWE2MjBmNWFkZWI5ZGFkYTRjODJkZDFkNjgzN2NjYTdmMTI1Li4y
YzA0NjMwYmFlMTU2ZGE3OWUwNTAxN2YzZWJhNTliY2ZjOWE3YWE0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQK
QEAgLTEsNiArMSw3IEBACiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBo
YW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVy
KHMpCi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251
bmxvYWQgaGFuZGxlcihzKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUg
dmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KVswXS50eXBlIHdpdGggYSBmb3J3YXJkIGFuZCBiYWNrIG5hdmlnYXRpb24uCkBAIC0xMyw2ICsx
NCw1IEBAIFRoaXMgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8gdGhlIHdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlM
KSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKaW5kZXgg
YzRiNTc1ODEwNjkxMTAzZGI2OWM2MTBiOWVjNjk0MjUxMTBkNzYzNS4uZDAwNDU0MTViODljNDVl
ZDlhMWE4ODllOGJlMGFiYzgxMjMwOTJkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsK
IAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzMwZGNlNDRkODMxMTAzN2NiNWM3OWNlMjkxOWYzMDZmYjQwYTZhOQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3Qg
dmFsaWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUgdG8gYmUgbmF2aWdhdGUuCisKKworUEFTUyBOYXZpZ2F0
aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX25hdmlnYXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWZhZWYxZWMwYmJiODhlNWZiMTVjMmEzMWZk
NWY5MzNjMTZhMDlmNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9uYXZpZ2F0ZS5odG1sCkBAIC0wLDAgKzEsMzIgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAg
ICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGlu
ayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29t
LyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9U
Ui9uYXZpZ2F0aW9uLXRpbWluZy8jc2VjLW5hdmlnYXRpb24tdGltaW5nLWludGVyZmFjZSIvPgor
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCkgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllcygpWzBdLnR5cGUsICJuYXZpZ2F0ZSIsICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5
cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5k
aXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAg
ICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAg
IH0sICJOYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgIDwvc2NyaXB0
PgorCisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+CisgICAgICAgICAgICBE
ZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPgorICAgICAgICAgICAgVGhpcyB0ZXN0IHZhbGlk
YXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLjwvcD4KKworICAgIDwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBl
Y3RlZC50eHQKaW5kZXggNzFjNDdlNWI4ZGY3YTUxZWU4ZWJkZTY5OGFlODU2ZWE2NzIzYTU4MC4u
YTRkNmJkYTZkNDQ5ZjFhZTFmNmJiNThkYzU4MjY1ZTM2ZWFhYWU3YiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNCAr
MSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRo
aXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0uKHR5cGUvdW5sb2FkRXZlbnRFbmQvdW5sb2FkRXZl
bnRTdGFydCkgd2l0aCBhIHJlbG9hZGVkIG5hdmlnYXRpb24uCkBAIC0xMCw2ICs5LDUgQEAgVGhl
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2Fk
RXZlbnRTdGFydCA+IDAgYWZ0ZXIKIFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpLnVubG9hZEV2ZW50RW5kID4gMCBhZnRlciByZWxvYWQKIAogCi1I
YXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKLQorUEFTUyBOYXZp
Z2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
aW9uX3R5cGVfcmVsb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVs
b2FkLmh0bWwKaW5kZXggNzRiODVjOWRiYjVlMDMyNjZjMGJhMDE0NWFkNDVkNjdhMDI1ZmQwYy4u
MGYwM2YwN2M1N2M5YzFhYzNjODY4NzQxYTIzZDlmMmU2ZWJiMmIyYiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICAgICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVl
IH0pOwogCiAgICAgICAgICAgICB2YXIgcmVsb2FkX2ZyYW1lOwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFs
X29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWQzODk4NzYxYjg3MTUw
ZDBhNzY1YWIzMWMyZTYxOTc2ZDkyMTYxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDExIEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0
cDovL3d3dy5sb2NhbGhvc3Q6ODgwMC9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5P2xvY2F0aW9u
PWh0dHA6Ly9sb2NhbGhvc3Q6ODgwMC9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtf
cGFnZV9ncmVlbi5odG1sCitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2
YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEg
Y3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmlu
YWwgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi4KKworCisKK0hh
cm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCitOT1RSVU4gTmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZmRlZmEyMDI1MDBhNDQ5NzE2ZWFhYjVkMmQ3NTYxNmFjNDczMDVhMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2lu
YWxfb3JpZ2luLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KKyAg
ICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7
CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBjb25zdCBmcmFtZV9wZXJmb3JtYW5jZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlOworICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUsCisgICAgICAgICAgICAgICAgICAgICJuYXZpZ2F0ZSIs
CisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2
aWdhdGUuIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCwgMCwKKyAg
ICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0LCAwLAorICAgICAgICAgICAgICAg
ICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLnJlZGlyZWN0RW5kLCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQg
cmVkaXJlY3RFbmQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBkb25lKCk7CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorCisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVz
IHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlCisgICAgICAgICAgIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFy
dC9FbmQgdGltZXMgZm9yIGEgY3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmln
YXRpb24gd2hlbiB0aGUgZmluYWwKKyAgICAgICAgICAgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMg
dGhlIG9yaWdpbmFsIG9yaWdpbi48L3A+CisKKyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250
ZXh0IiBzcmM9IiIgc3R5bGU9IndpZHRoOiAyNTBweDsgaGVpZ2h0OiAyNTBweDsiPjwvaWZyYW1l
PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgLy8gY29tYmluZSB0aGUgcGFnZSBvcmln
aW4gYW5kIHJlZGlyZWN0IG9yaWdpbiBpbnRvIHRoZSBJRlJBTUUncyBzcmMgVVJMCisgICAgICAg
ICAgICBjb25zdCBkZXN0VXJsX2ZpcnN0ID0gbWFrZV9hYnNvbHV0ZV91cmwoe3N1YmRvbWFpbjog
Ind3dyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRo
OiAiL2NvbW1vbi9yZWRpcmVjdC1vcHQtaW4ucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgbWFrZV9hYnNvbHV0ZV91
cmwoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB7cGF0aDogIi9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVl
bi5odG1sIn0pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgIGNvbnN0IGRlc3RVcmwgPSBtYWtlX2Fic29sdXRlX3VybCh7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9y
ZWRpcmVjdC5weSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBxdWVyeTogImxvY2F0aW9uPSIgKyBkZXN0VXJsX2ZpcnN0fSk7CisgICAgICAgICAgICBsZXQg
ZnJhbWVDb250ZXh0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpOwor
ICAgICAgICAgICAgZnJhbWVDb250ZXh0Lm9ubG9hZCA9IG9ubG9hZF90ZXN0OworICAgICAgICAg
ICAgZnJhbWVDb250ZXh0LnNyYyA9IGRlc3RVcmw7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWlu
X3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKaW5kZXggNzFl
ZDQ3ZmUzNWExNDJlNDBmZjQ3OTA1Zjc3ODhhMWRjNWFjYTBmYi4uNGU3OWE3ZmRiYTA4NjE2Zjk0
NTA4ZGJmZmU4MmM1NjkwNGM0YmJkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50
eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUg
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAKIAogCi1IYXJuZXNz
IEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ2ZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRf
aW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9v
cHRfaW4uaHRtbAppbmRleCBjMGRkMjQ5NTQ1YTY0MGVjMGNkZDc1OWIyMTE0YWI3MjVhNjA5MDM5
Li4wZmViM2JmYTdmMWMwMTM4ZTRjOWY5ZTNmZDRkMzgzZTVlZjY1ODVkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9p
bi5odG1sCkBAIC05LDEzICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL2Nv
bW1vbi91dGlscy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+Ci0KLSAgICAgICAgICAg
IGZ1bmN0aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50cnkp
IHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3Ro
IC0gMTsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWluZ0VudHJ5
W2V2ZW50T3JkZXJbaV1dIDwgdGltaW5nRW50cnlbZXZlbnRPcmRlcltpICsgMV1dLAotICAgICAg
ICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkICIgKyBldmVudE9yZGVyW2ldICsgIiB0byBiZSBu
byBncmVhdGVyIHRoYW4gIiArIGV2ZW50T3JkZXJbaSArIDFdICsgIi4iKTsKLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0
cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCiAgICAgICAgICAg
ICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmU3MWFlOTQwNDFhYWFjNzM5NDNkMjFjMmI0MjM1OGY3OTc5YTRkMmEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUg
b2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0ucmVkaXJlY3RDb3VudCBhdHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQg
cmVkaXJlY3RFbmQgYXR0cmlidXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uCisK
KworUEFTUyBOYWl2YXRpb24gd2l0aG91dCByZWRpcmVjdHMuCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25v
bmUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45NzQzN2UxYTVlZjJiNjFhZTY1NzYyYmZhMzUxNjMwZWI0NzE0
Y2RmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1s
CkBAIC0wLDAgKzEsMzMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+Cisg
ICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9
Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsg
cmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0y
LyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVh
ZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+
VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZSBvZiB0aGUgd2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGF0dHJp
YnV0ZSwgYXMgd2VsbCBhcyB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0IGFuZCByZWRpcmVjdEVuZCBhdHRyaWJ1dGVz
IG9uIGEgbm9uLXJlZGlyZWN0ZWQgbmF2aWdhdGlvbi48L3A+CisKKyAgICAgICAgPHNjcmlwdD4K
KworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2Jz
ZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBf
ZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBuYXZU
aW1pbmcgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0Q291bnQs
IDAsICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0U3RhcnQsIDAsICJFeHBlY3RlZCBy
ZWRpcmVjdFN0YXJ0IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMobmF2VGltaW5nLnJlZGlyZWN0RW5kLCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUg
MC4iKTsKKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAg
ICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAg
KTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlv
biJdfSk7CisKKyAgICAgICAgfSwgIk5haXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4iKTsKKyAg
ICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDA0YTI0OGNkZTUwMWQyNjg5NGIyMjA3ZmU5YWY1ZjU1MGQyMGNiYzcuLjRmYjE1Y2FmY2U3
ZTYxNzJlZDJlZjliOWYxM2M4NDcxZjU5NjNlOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfc2VydmVyLWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSw5IEBACi1DT05TT0xFIE1FU1NBR0U6
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRpb25fZW50cnkudHlwZScpCitDT05TT0xFIE1FU1NBR0U6IEVycm9yOiBhc3NlcnRfdHJ1ZTog
RXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiByZWRpcmVjdFN0YXJ0LiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UucmVkaXJlY3RDb3VudCBhbmQg
dGhlIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9y
IGEgc2FtZS1vcmlnaW4gc2VydmVyIHNpZGUgcmVkaXJlY3QgbmF2aWdhdGlvbi4KIAogCiAKLUhh
cm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKLQorRkFJTCBO
YXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBFcnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0YXJ0
VGltZSB0byBiZSBubyBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbAppbmRleCAxZDdmNmM5Mjhj
ZTYzYzk0ZWRjMTQ5MWQyODgzYzg3MzMxZTM4NzIyLi44NWI4MThiM2RkYzlkNjFjZWNkNDQ2ZjM1
Yjg4NWE3M2VhZWM3MTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2
ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbApAQCAtOSw2
ICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgogCiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7
IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1p
bmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CiAgICAgICAgICAgICAgICAg
Zm9yIChsZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgewpAQCAtMjcs
MTIgKzI4LDEyIEBACiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uX2Vu
dHJ5LnJlZGlyZWN0Q291bnQsIDEsICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDEuIik7
CiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uX2VudHJ5Lm5hbWUsICdo
dHRwOi8vJyArIGRvY3VtZW50LmxvY2F0aW9uLmhvc3QgKyAnL25hdmlnYXRpb24tdGltaW5nL3Jl
c291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwnKTsKIAotICAgICAgICAgICAgICAgIHZhciB0
aW1naW5nRXZlbnRzID0gWworICAgICAgICAgICAgICAgIHZhciB0aW1pbmdFdmVudHMgPSBbCiAg
ICAgICAgICAgICAgICAgICAgICdzdGFydFRpbWUnLAogICAgICAgICAgICAgICAgICAgICAncmVk
aXJlY3RTdGFydCcsCiAgICAgICAgICAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCiAgICAgICAg
ICAgICAgICAgXTsKLSAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKHRpbWdp
bmdFdmVudHMsIGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KVswXSk7CisgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcih0aW1pbmdFdmVu
dHMsIGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSk7
CiAgICAgICAgICAgICAgICAgZG9uZSgpOwogICAgICAgICAgICAgfQogICAgICAgICA8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKaW5kZXgg
YTA5MTZjNDU4YzYyODJkMzFkNTM4NDhkNzlmNTM3NGNlZjQyNzVjNi4uZTgxY2NlZGE5ZWJmM2Vk
NzU4MzAzNzI2MTU5OWZkOTkxOTNkMWM4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
eHNlcnZlci1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMg
dGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BlcmZvcm1hbmNlTmFtZXNwYWNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hz
ZXJ2ZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbAppbmRleCAw
NmM5YjdmM2I2NzhhMjI3NTFhMWU4ZTFhNTcwMjgyMTZhYjIxODc5Li5kOGFjYzgwNTRkODdhOTcy
ZDAwNTk2ZDk3OTQ4NTg0N2NmNmNmNGU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRp
cmVjdF94c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5o
dG1sCkBAIC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9u
L3V0aWxzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVw
KHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90
ZXN0KCkKICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9u
YXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5z
dGFuY2VzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzY4YzUwMDQ2NWQ3N2I1ZDFhOTgzYmM0
NjZiZTFhZGU0N2ZlOTgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVl
X25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24K
KworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYg
dGltaW5nIDIgaW5zdGFuY2UuCisKKworRkFJTCBFYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2
IHRpbWluZyAyIGluc3RhbmNlLiBhc3NlcnRfZXF1YWxzOiBPbmx5IG9uZSBuYXYgdGltaW5nIGlu
c3RhbmNlIGV4aXN0cy4gZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1
ZV9uYXZfaW5zdGFuY2VzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3N2FiNmJhZTEwMWI3MDRkMTI2N2U4
YjAzNDE2MDExZjI4ZDY3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1
ZV9uYXZfaW5zdGFuY2VzLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAg
ICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5r
IHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20v
IiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RS
L25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4K
KyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+
PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRp
b248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFjaCB3aW5kb3cg
aGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS48L3A+CisgICAgICAgIDxpZnJhbWUg
aWQ9ImZyYW1lQ29udGV4dCIgc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIiBz
dHlsZT0iZGlzcGxheTpub25lOyI7PjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0PgorCisgICAg
ICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAgICAgJ2Nv
bm5lY3RFbmQnLAorICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAg
ICAgICdkZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisg
ICAgICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAg
ICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZG9tSW50
ZXJhY3RpdmUnLAorICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAg
ICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAgICAgJ2R1cmF0aW9uJywK
KyAgICAgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICAgICAnZW50
cnlUeXBlJywKKyAgICAgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAgICAg
J2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAg
ICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ25hbWUnLAorICAg
ICAgICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICAgICAncmVkaXJlY3RF
bmQnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAn
cmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAg
ICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlv
blN0YXJ0JywKKyAgICAgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICAg
ICAndHlwZScsCisgICAgICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAg
ICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ3dvcmtlclN0YXJ0Jwor
ICAgICAgICAgICAgXTsKKworICAgICAgICAgICAgZnVuY3Rpb24gbm90X3NhbWVfaW5zdGFuY2Uo
aW5zdGFuY2UxLCBpbnN0YW5jZTIsIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICBmb3Ig
KHZhciBpIGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGluc3RhbmNl
MVthdHRyaWJ1dGVzW2ldXSAhPSBpbnN0YW5jZTJbYXR0cmlidXRlc1tpXV0pCisgICAgICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0
aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5
IG9uZSBuYXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIp
LmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
Lmxlbmd0aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT25seSBvbmUgbmF2IHRp
bWluZyBpbnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWFp
bl9mcmFtZV9pbnN0YW5jZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF07CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaWZyYW1lX2luc3RhbmNlID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X3RydWUobm90X3NhbWVfaW5zdGFuY2UobWFpbl9mcmFtZV9pbnN0YW5j
ZSwgaWZyYW1lX2luc3RhbmNlLCBuYXZUaW1pbmcyQXR0cmlidXRlcyksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIlR3byBuYXYgdGltaW5nIGluc3RhbmNlcyBhcmUgbm90IHRoZSBzYW1l
IGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVj
dCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAg
ICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNl
cnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAgICB9LCAiRWFj
aCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4iKTsKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZp
Z2F0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjBlYjFmNWZiMjQ0MjAwYzNiZjUwYTVlYWQ4ODZkNzg0Y2NhYjcyOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3
IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbgorCitOYXZpZ2F0aW9uIHdpbGwg
cXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgbmF2aWdhdGlvbiBlbnRyeSBpcyBv
YnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9w
by1uYXZpZ2F0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0ZmIyYWZmOGVhYjc0ZTU5YzVhODRmYzJi
Y2Y0ODdmMTIyZWM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1s
CkBAIC0wLDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4K
Kzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbjwvdGl0bGU+Cis8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFu
Y2VPYnNlcnZlcnM6IG5hdmlnYXRpb248L2gxPgorPHA+CitOYXZpZ2F0aW9uIHdpbGwgPGEgaHJl
Zj0iaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4tcXVldWUt
YS1wZXJmb3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+LgorPC9wPgor
PGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQp
IHsKKyAgICBmdW5jdGlvbiBjaGVja0VudHJ5KHBlcykgeworICAgICAgYXNzZXJ0X2VxdWFscyhw
ZXMubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgZW50cnkiKTsKKyAgICAg
IGFzc2VydF9lcXVhbHMocGVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLCAiZW50cnlUeXBl
IGlzIFwibmF2aWdhdGlvblwiIik7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlc1swXS5uYW1lLCB3
aW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hbWUgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIGRv
Y3VtZW50Iik7CisgICAgfQorICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAg
ICAgICAgICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGNo
ZWNrRW50cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSk7CisgICAg
ICAgICAgY2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSh3aW5kb3cubG9jYXRp
b24udG9TdHJpbmcoKSkpOworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAg
ICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2
ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKyAgfSwgIm5hdmlnYXRpb24gZW50cnkg
aXMgb2JzZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93
ZWJwZXJmdGVzdGhhcm5lc3MuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3Mu
anMKaW5kZXggM2VmYjUyNzgzZjFlNWRjYjBkNDJhYWQxMWFlYzJhOWU0NzI1N2QzMy4uMGMyN2My
ZWUzMDdmNGI4MDk5YTZiNGM1YjA0OTdiYWY1MGI2MTEwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNv
dXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0
ZXN0aGFybmVzcy5qcwpAQCAtNDIsMjUgKzQyLDI1IEBAIGZ1bmN0aW9uIHRlc3RfbmFtZXNwYWNl
KGNoaWxkX25hbWUsIHNraXBfcm9vdCkKIHsKICAgICBpZiAoc2tpcF9yb290ID09PSB1bmRlZmlu
ZWQpIHsKICAgICAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UgaXMgZGVmaW5lZCc7
Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5h
bWVzcGFjZSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cpOworICAgICAgICB3cF90ZXN0KGZ1
bmN0aW9uICgpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2UsIHVuZGVm
aW5lZCwgbXNnKTsgfSwgbXNnKTsKICAgICB9CiAKICAgICBpZiAoY2hpbGRfbmFtZSAhPT0gdW5k
ZWZpbmVkKSB7CiAgICAgICAgIHZhciBtc2cyID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgY2hp
bGRfbmFtZSArICcgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFz
c2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdICE9PSB1bmRlZmluZWQs
IG1zZzIpOyB9LCBtc2cyKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25v
dF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0sIHVuZGVmaW5lZCwgbXNn
Mik7IH0sIG1zZzIpOwogICAgIH0KIH0KIAogZnVuY3Rpb24gdGVzdF9hdHRyaWJ1dGVfZXhpc3Rz
KHBhcmVudF9uYW1lLCBhdHRyaWJ1dGVfbmFtZSwgcHJvcGVydGllcykKIHsKICAgICB2YXIgbXNn
ID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBhdHRyaWJ1dGVf
bmFtZSArICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90
cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVfbmFtZV0gIT09
IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0
aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFt
ZV1bYXR0cmlidXRlX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7
CiB9CiAKIGZ1bmN0aW9uIHRlc3RfZW51bShwYXJlbnRfbmFtZSwgZW51bV9uYW1lLCB2YWx1ZSwg
cHJvcGVydGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFy
ZW50X25hbWUgKyAnLicgKyBlbnVtX25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAgICB3cF90ZXN0
KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFt
ZV1bZW51bV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwor
ICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFt
ZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywg
cHJvcGVydGllcyk7CiAKICAgICBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRf
bmFtZSArICcuJyArIGVudW1fbmFtZSArICcgPSAnICsgdmFsdWU7CiAgICAgd3BfdGVzdChmdW5j
dGlvbigpIHsgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1b
ZW51bV9uYW1lXSwgdmFsdWUsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CkBAIC0xMjIsNSAr
MTIyLDUgQEAgZnVuY3Rpb24gdGVzdF9ncmVhdGVyX29yX2VxdWFscyh2YWx1ZSwgZ3JlYXRlcl90
aGFuLCBtc2csIHByb3BlcnRpZXMpCiAKIGZ1bmN0aW9uIHRlc3Rfbm90X2VxdWFscyh2YWx1ZSwg
bm90ZXF1YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsg
YXNzZXJ0X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVz
KTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyh2YWx1ZSwgbm90
ZXF1YWxzLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
ZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Nl
Y3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mMTA4ZDJlODMzNjRhZDE0ZmRmMmEzMDRmN2Q1NDgyODc4MGQ5ZWEyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0
YXJ0IHZhbHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNv
bm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTJhMjU5ZWNkNDI1
YzIxMmQ4OWViMTE0OTgxZDRmMTJlODBmMzA1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1
cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgor
PHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIHNlY3VyZWNvbm5lY3Rpb25zdGFydCByZXVzZTwvdGl0
bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0PgorY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9u
U3RhcnQgdmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVzZWQiKTsKK3dpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1bmNfZG9uZShlID0+IHsKKyAgYXNzZXJ0X2Vx
dWFscyhlLmRhdGEsICJQQVNTIik7Cit9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNv
dXJjZXMvc2VjdXJlLWNvbm5lY3Rpb24taW50ZXJpbS5odG1sIj4KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9zZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dApp
bmRleCA4MjIwNGQwNjUxNjY5NTdhYTkwMDk4OWNlYzdkYWNjYWNkZTM4NDg2Li41MTgyNzU4M2Fk
MzdlMWUxMmMxYWJmNWYyMWM4Y2U2MjUwZTMxMDBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9j
b25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Nl
Y3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMyw1
ICszLDUgQEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFy
dCBoYXMgYSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0
aW9uU3RhcnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ2VudHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitGQUlMIFRlc3QgdGhhdCBzZWN1cmVD
b25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dyZWF0ZXJfdGhhbjogc2VjdXJlQ29u
bmVjdGlvblN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAw
IGJ1dCBnb3QgMAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUu
YW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhw
ZWN0ZWQudHh0CmluZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0MWEyNWZjNTAu
LmQyZWE5NTA0NzZkOTFiZTU2MDQ2ZDAzM2QxZmNkNjYxZDQ3OTgwZjkgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBA
QAogCi1GQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLiBhc3Nl
cnRfdHJ1ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICduYXZpZ2F0aW9uJyBpbiBQZXJmb3Jt
YW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K1BBU1Mgc3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuCitQQVNTICdu
YXZpZ2F0aW9uJyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZhYmxlLgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5k
ZXggNTc5NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uMzQzODM1YTQyODQ1
M2UwYjFjZjY1ZDg0ZGI4MzNmOTFhYmM4MzYxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRf
bmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9y
dGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDYg
QEAKIAotRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4gYXNz
ZXJ0X3RydWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicgaW4gUGVyZm9y
bWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworUEFTUyBzdXBwb3J0
ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1RJTUVPVVQgJ25hdmlnYXRpb24n
IGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3QgdGltZWQgb3V0CiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2Rv
Y3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU5YTM4NGE1YmIzNzAwNGU4
ZjcwNDI4NWIzNTJlZWFiNDkxM2NlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1
bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKwor
VGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBh
bmQgZGVjb2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNo
ZWNrZWQgaW4gdGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJp
YnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCBhc3NlcnRf
Z3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5l
ZCIKK0ZBSUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVy
aW5nIG9ubG9hZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBi
dXQgZ290IGEgInVuZGVmaW5lZCIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29u
bG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdj
YzE4NDkxZDYyMDI0ZjFkNGZhM2QyMGM1MTczYjMxMzI2OWIzZTgKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKQEAgLTAsMCArMSw0OCBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRm
LTgiPgorICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gYXR0cmli
dXRlczwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iTW96aWxsYSIg
aHJlZj0iaHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAgICA8bGluayByZWw9Imhl
bHAiIGhyZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNwcm9j
ZXNzaW5nLW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9w
ZXJmb3JtYW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8L2hl
YWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxw
PlRoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNpemUg
YW5kIGRlY29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hlbiBj
aGVja2VkIGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAgICA8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0
aW9uICh0KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9N
Q29udGVudExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAgICAg
ICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVu
dHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsK
KyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVkQm9k
eVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAgICAg
IH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcg
RE9NQ29udGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCB0LnN0
ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEw
MDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVu
dHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAg
IGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3Ii
KTsKKyAgICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIp
OworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVu
Y29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgICAgICAg
IGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3Ii
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAgICAgICAgICAg
fSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBh
IHRhc2sgYWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkpOworICAgICAgICAgICAg
fSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBv
bmxvYWQiKTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQKaW5kZXgg
ZGE1MjYwYTIyM2QyMmFkMWFjNGQ1ZDI5NzI2YzRhZTI3M2ViMWIyOC4uM2ZlZWFkMWZkZTcyMDMz
NzM2ZGVmMWYwNGU1YjQ3MTA5OGIwZDM4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQt
c2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNh
bWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwxNiBAQCBUaGlzIHRlc3Qg
dmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aQogCiAKIAotRkFJTCBSZWRpcmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBU
QU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J2VudHJ5LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlw
ZScpIgotRkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0
LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRB
TyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
ZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgot
RkFJTCBQcmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3Vz
IGRvY3VtZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J2VudHJ5LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBz
YW1lIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGgg
c2FtZSBvcmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRo
IGNyb3NzIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdp
dGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBw
cmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRoIFRBTyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJyki
CitQQVNTIFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4KK1BBU1MgUmVk
aXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BBU1MgU2FtZS1jcm9zcy1zYW1lIHJl
ZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBjcm9zcy1jcm9zcy1zYW1lIFJl
ZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBQcmV2aW91cyBkb2N1bWVudCBj
cm9zcyBvcmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4KK1BBU1MgTm8g
cHJldmlvdXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0
aCBzYW1lIG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNh
bWUgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mg
b3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3Jp
Z2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQg
d2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8KIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91
bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNh
bWUtb3JpZ2luLWNoZWNrLmh0bWwKaW5kZXggMzE5ZDA0NDYyZGViYTgyYjU0OGQ0NDI5MTA0MmQy
OTZhZmFmMzZhNy4uMDI0ZDhiNDUzMmNmMjIwZDE3NDgyNzdmMjFkOTA3Y2NhZTc4M2QyYiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay5odG1sCkBAIC05Miw3ICs5Miw3IEBA
CiAgICAgICAgICAgICAgICAgY29uc3QgZW50cnkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF07CiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS50
eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRl
LiIpOwogICAgICAgICAgICAgICAgIGlmICghdW5sb2FkX2V4cG9zZWQpIHsKLSAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS51bmxvYWRFdmVudFN0YXJ0LCAwLCAiRXhwZWN0
ZWQgdW5sb2FkRXZlbnRTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfdHJ1ZShlbnRyeS51bmxvYWRFdmVudFN0YXJ0ID09IDAsICJFeHBlY3RlZCB1bmxvYWRFdmVu
dFN0YXJ0IHRvIGJlIDAuIik7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50
cnkudW5sb2FkRXZlbnRFbmQsIDAsICJFeHBlY3RlZCB1bmxvYWRFdmVudEVuZCB0byBiZSAwLiIp
OwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9n
cmVhdGVyX3RoYW4oZW50cnkudW5sb2FkRXZlbnRTdGFydCwgMCwgIkV4cGVjdGVkIHVubG9hZEV2
ZW50U3RhcnQgdG8gbm90IGJlIDAuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9NRVRBLnltbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OWZhZTFkYjBkOWI3YWZkMjAyNzM3ZTM0NzU0
YjRlODkzMjk4ZDQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbApAQCAtMCww
ICsxLDQgQEAKK3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGlu
ZS8KK3N1Z2dlc3RlZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOGIz
ZTMyMzE0NjU4NTdjZjI0OGU0YWNlOGVmNTc0NDY5YTE0ODY0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCkBAIC0wLDAgKzEsMTEg
QEAKK2FzeW5jX3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB0LnN0
ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8gQWZ0ZXIgYSB0aW1lb3V0LCBQZXJmb3JtYW5jZU9i
c2VydmVyIHNob3VsZCBzdGlsbCByZWNlaXZlIGVudHJ5IGlmIHVzaW5nIHRoZSBidWZmZXJlZCBm
bGFnLgorICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHQuc3RlcF9mdW5jX2RvbmUobGlzdCA9
PiB7CisgICAgICBjb25zdCBlbnRyaWVzID0gbGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICBhc3Nl
cnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLCAnVGhlcmUgc2hvdWxkIGJlIDEgbWFyayBlbnRy
eS4nKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICdtYXJrJyk7
CisgICAgfSkpLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAgfSwg
MTAwKTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzZWVzIGVu
dHJ5IGFmdGVyIHRpbWVvdXQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1v
YnNlcnZlci5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjMxZGMzOWMxMjhhZDU1YzEzZWVmNjY1ODNhNjg4ODYyMmY4NmJmNjMKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCkBAIC0w
LDAgKzEsMTUgQEAKK2FzeW5jX3Rlc3QoIHQ9PiB7CisgIGZvciAobGV0IGkgPSAwOyBpIDwgNTA7
IGkrKykKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nICsgaSk7CisgIGxldCBtYXJrc0NyZWF0
ZWQgPSA1MDsKKyAgbGV0IG1hcmtzUmVjZWl2ZWQgPSAwOworICBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcihsaXN0ID0+IHsKKyAgICBtYXJrc1JlY2VpdmVkICs9IGxpc3QuZ2V0RW50cmllcygpLmxl
bmd0aDsKKyAgICBpZiAobWFya3NDcmVhdGVkIDwgMTAwKSB7CisgICAgICBwZXJmb3JtYW5jZS5t
YXJrKCdiYXInICsgbWFya3NDcmVhdGVkKTsKKyAgICAgIG1hcmtzQ3JlYXRlZCsrOworICAgIH0K
KyAgICBpZiAobWFya3NSZWNlaXZlZCA9PSAxMDApCisgICAgICB0LmRvbmUoKTsKKyAgfSkub2Jz
ZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgJ1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNob3VsZCBzZWUgcGFzdCBhbmQgZnV0dXJlIGVudHJp
ZXMuJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li45NjkxOTA4MTlmNTNlYjQ1MzdkYTAxOWM5MGNjMzNiZDBkYTNkOGRmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDMgQEAKKworUEFTUyBHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cu
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzNkNjU4OWUyNzVlMjY1MTgw
ZTA1NzFjYTMxMDNkYmY5YWExNzliOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWlu
dmFsaWQtZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2FzeW5jX3Rlc3QoZnVuY3Rpb24odCkg
eworICBwZXJmb3JtYW5jZS5tYXJrKCd3aW5kb3dNYXJrJyk7CisgIGNvbnN0IHdvcmtlciA9IG5l
dyBXb3JrZXIoInJlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzIik7CisgIHdvcmtl
ci5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkgeworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQu
ZGF0YVsnaW52YWxpZCddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBpbnZhbGlkIGVudHJp
ZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhWydtYXJrJ10sIDEsICdUaGUgd29y
a2VyIG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5k
YXRhWydtZWFzdXJlJ10sIDAsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAwIG1lYXN1cmUgZW50cmll
cy4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ2lu
dmFsaWQnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBpbnZhbGlk
IGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCdtYXJrJykubGVuZ3RoLCAxLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDEgbWFy
ayBlbnRyeS4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoJ21lYXN1cmUnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBt
ZWFzdXJlIGVudHJpZXMuJykKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ0dldCBpbnZhbGlkIGVu
dHJpZXMgZnJvbSB3b3JrZXIgYW5kIHdpbmRvdy4nKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRs
aGFybmVzcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzJlZmViZTk4ZmZkNDcyZWUxMDEwMDI3ZmY5NjZh
MWVmOTA3ZjE3ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMK
QEAgLTAsMCArMSwyNSBAQAorLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyx3b3JrZXIKKy8vIE1FVEE6
IHNjcmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0PS9yZXNv
dXJjZXMvaWRsaGFybmVzcy5qcworCisvLyBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFu
Y2UtdGltZWxpbmUvCisKKyd1c2Ugc3RyaWN0JzsKKworaWRsX3Rlc3QoCisgIFsncGVyZm9ybWFu
Y2UtdGltZWxpbmUnXSwKKyAgWydoci10aW1lJywgJ2RvbSddLAorICBhc3luYyBpZGxfYXJyYXkg
PT4geworICAgIGlkbF9hcnJheS5hZGRfb2JqZWN0cyh7CisgICAgICBQZXJmb3JtYW5jZTogWydw
ZXJmb3JtYW5jZSddLAorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlcjogWydvYnNlcnZlciddLAor
ICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDogWydlbnRyeUxpc3QnXSwKKyAgICB9
KTsKKworICAgIHNlbGYuZW50cnlMaXN0ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJl
amVjdCkgPT4geworICAgICAgc2VsZi5vYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KHJlc29sdmUpOworICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7IGVudHJ5VHlwZXM6IFsnbWFyaydd
IH0pOworICAgICAgcGVyZm9ybWFuY2UubWFyaygndGVzdCcpOworICAgIH0pOworICB9CispOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnku
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWctb2JzZXJ2ZXJzLmFueS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41ZGQ0NGZiMThmYmRiOWMzYzMyZjQ1MzhkMmVmN2VjMmNhYzQ3MzAyCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnku
anMKQEAgLTAsMCArMSwzMiBAQAorcHJvbWlzZV90ZXN0KCgpID0+IHsKKyAgLy8gVGhlIGZpcnN0
IHByb21pc2Ugd2FpdHMgZm9yIG9uZSBidWZmZXJlZCBmbGFnIG9ic2VydmVyIHRvIHJlY2VpdmUg
MyBlbnRyaWVzLgorICBjb25zdCBwcm9taXNlMSA9IG5ldyBQcm9taXNlKHJlc29sdmUxID0+IHsK
KyAgICBsZXQgbnVtT2JzZXJ2ZWQxID0gMDsKKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigo
ZW50cnlMaXN0LCBvYnMpID0+IHsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNlcnZl
ciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBhIHJlZ3VsYXIgb2JzZXJ2ZXIgZGV0ZWN0cyBhIG1hcmsu
CisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2Jz
ZXJ2ZWQxICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2Vy
dmVkMSA9PSAzKQorICAgICAgICAgIHJlc29sdmUxKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBl
OiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgICBvYnMuZGlzY29ubmVjdCgpOworICAg
IH0pLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgcGVyZm9ybWFuY2UubWFy
aygnZm9vJyk7CisgIH0pOworICAvLyBUaGUgc2Vjb25kIHByb21pc2Ugd2FpdHMgZm9yIGFub3Ro
ZXIgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3Qg
cHJvbWlzZTIgPSBuZXcgUHJvbWlzZShyZXNvbHZlMiA9PiB7CisgICAgc3RlcF90aW1lb3V0KCgp
ID0+IHsKKyAgICAgIGxldCBudW1PYnNlcnZlZDIgPSAwOworICAgICAgLy8gVGhpcyBidWZmZXJl
ZCBmbGFnIG9ic2VydmVyIGlzIGNvbnN0cnVjdGVkIGFmdGVyIGEgZGVsYXkgb2YgMTAwbXMuCisg
ICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2JzZXJ2
ZWQyICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2VydmVk
MiA9PSAzKQorICAgICAgICAgIHJlc29sdmUyKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBlOiAn
bWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgfSwgMTAwKTsKKyAgICBwZXJmb3JtYW5jZS5t
YXJrKCdiYXInKTsKKyAgfSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ21lb3cnKTsKKyAgLy8gUGFz
cyBpZiBhbmQgb25seSBpZiBib3RoIGJ1ZmZlcmVkIG9ic2VydmVycyByZWNlaXZlZCBhbGwgMyBt
YXJrIGVudHJpZXMuCisgIHJldHVybiBQcm9taXNlLmFsbChbcHJvbWlzZTEsIHByb21pc2UyXSk7
Cit9LCAnTXVsdGlwbGUgUGVyZm9ybWFuY2VPYnNlcnZlcnMgd2l0aCBidWZmZXJlZCBmbGFnIHNl
ZSBhbGwgZW50cmllcycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1
NDJjZjdjNGFhY2YwMjkxNjY1YThmNDk3NjVhZGQ4ODVlYmM0MmQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL25vdC1jbG9uYWJsZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKwor
UEFTUyBUZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZhaWxz
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1j
bG9uYWJsZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ2NTE3NzZlNWY0Yjk0NTMyOGU5ZGUyNjUxYjhhNTlm
MTFiNTM0MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCkBA
IC0wLDAgKzEsMTAgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgY29uc3QgdCA9IGFzeW5jX3Rl
c3QoIlRlc3QgdGhhdCBhIHBvc3RNZXNzYWdlIG9mIGEgcGVyZm9ybWFuY2UgZW50cnkgZmFpbHMi
KTsKKyAgYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9PiB7
CisgICAgYXNzZXJ0X2VxdWFscyhlLmRhdGEsICJQQVNTIik7CisgIH0pKTsKKzwvc2NyaXB0Pgor
PGlmcmFtZSBzcmM9InJlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIj48L2lmcmFtZT4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9vYnNlcnZlci1idWZmZXJlZC1mYWxzZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTI4MTAwYjBm
ZGJhMmUwMDU3OTgwOWE1ODE5MzVkMzEyY2YxMjQ1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCkBAIC0wLDAgKzEsMTIgQEAKK2FzeW5j
X3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICAvLyBVc2UgYSB0aW1l
b3V0IHRvIGVuc3VyZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB0ZXN0IHJ1bnMgYWZ0ZXIgdGhlIGVu
dHJ5IGlzIGNyZWF0ZWQuCisgIHQuc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICAvLyBPYnNlcnZl
ciB3aXRoIGJ1ZmZlcmVkIGZsYWcgc2V0IHRvIGZhbHNlIHNob3VsZCBub3Qgc2VlIGVudHJ5Lgor
ICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCgpID0+IHsKKyAgICAgIGFzc2VydF91bnJlYWNo
ZWQoJ1Nob3VsZCBub3QgaGF2ZSBvYnNlcnZlZCBhbnkgZW50cnkhJyk7CisgICAgfSkub2JzZXJ2
ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogZmFsc2V9KTsKKyAgICAvLyBVc2UgYSB0aW1lb3V0
IHRvIGdpdmUgdGltZSB0byB0aGUgb2JzZXJ2ZXIuCisgICAgdC5zdGVwX3RpbWVvdXQodC5zdGVw
X2Z1bmNfZG9uZSgoKSA9PiB7fSksIDEwMCk7CisgIH0sIDApOworfSwgJ1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXIgd2l0aG91dCBidWZmZXJlZCBmbGFnIHNldCB0byBmYWxzZSBjYW5ub3Qgc2VlIHBhc3Qg
ZW50cmllcy4nKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24u
YW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNDRmMDE1NmVlYzE5MjQxOTcwMDI4YzI4ZTU4OTdiZTRkNmYxY2I4MQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCkBAIC0wLDAgKzEs
MjEgQEAKK3Rlc3QoKCkgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdtYXJrTmFtZScpOworICBw
ZXJmb3JtYW5jZS5tZWFzdXJlKCdtZWFzdXJlTmFtZScpOworCisgIGNvbnN0IGVudHJpZXMgPSBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCk7CisgIGNvbnN0IHBlcmZvcm1hbmNlRW50cnlLZXlzID0g
WworICAgICduYW1lJywKKyAgICAnZW50cnlUeXBlJywKKyAgICAnc3RhcnRUaW1lJywKKyAgICAn
ZHVyYXRpb24nCisgIF07CisgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7ICsr
aSkgeworICAgIGFzc2VydF9lcXVhbHModHlwZW9mKGVudHJpZXNbaV0udG9KU09OKSwgJ2Z1bmN0
aW9uJyk7CisgICAgY29uc3QganNvbiA9IGVudHJpZXNbaV0udG9KU09OKCk7CisgICAgYXNzZXJ0
X2VxdWFscyh0eXBlb2YoanNvbiksICdvYmplY3QnKTsKKyAgICBmb3IgKGNvbnN0IGtleSBvZiBw
ZXJmb3JtYW5jZUVudHJ5S2V5cykgeworICAgICAgYXNzZXJ0X2VxdWFscyhqc29uW2tleV0sIGVu
dHJpZXNbaV1ba2V5XSwKKyAgICAgICAgYGVudHJpZXNbJHtpfV0udG9KU09OKCkuJHtrZXl9IHNo
b3VsZCBtYXRjaCBlbnRyaWVzWyR7aX1dLiR7a2V5fWApOworICAgIH0KKyAgfQorfSwgJ1Rlc3Qg
dG9KU09OKCkgaW4gUGVyZm9ybWFuY2VFbnRyeScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1j
YWxsYmFjay1tdXRhdGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjhmMWIwOWJjMzc3MTIwODAyNDAxZGUxYjI0N2FhNTdkYjc0MTRjNjgKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanMKQEAgLTAs
MCArMSw2NiBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAg
YXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBjYWxsYmFja0NvdW50ID0gMDsKKyAg
ICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVw
X2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2FsbGJhY2tDb3Vu
dCsrOworCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDEpIHsKKyAgICAgICAgICAg
IGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICBdKTsK
KyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7Cisg
ICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7CisgICAgICAgICAgICBz
ZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDIpIHsKKyAg
ICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAgICBd
KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdl
LW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJl
Iik7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUi
XX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMyIpOworICAgICAg
ICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAz
KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWwor
ICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAor
ICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrLWJlZm9yZS1jaGFu
Z2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIn0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAg
ICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3Rh
dGUtdG8tYm90aCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFz
dXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIik7CisgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisgICAg
ICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcms0Iik7CisgICAgICAgICAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmU0Iik7CisgICAgICAgICAgICByZXR1cm47Cisg
ICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDQpIHsKKyAgICAg
ICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAg
ICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtYmVmb3JlLWNoYW5nZS1v
YnNlcnZlLXN0YXRlLXRvLWJvdGgifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1
cmUiLCBuYW1lOiAibWVhc3VyZTQifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibWFyazQifSwKKyAgICAgICAgICAgIF0pOworICAgICAgICAgICAgc2VsZi5wZXJm
b3JtYW5jZS5tYXJrKCJtYXJrLWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYmVmb3JlLWRpc2Nvbm5lY3QiKTsKKyAgICAg
ICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFu
Y2UubWFyaygibWFyay1hZnRlci1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAgICAg
dC5kb25lKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAg
YXNzZXJ0X3VucmVhY2hlZCgiVGhlIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQgYWZ0ZXIg
ZGlzY29ubmVjdGluZyIpOworICAgICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2VydmVyLm9i
c2VydmUoe2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5t
YXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsK
KyAgfSwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXIgbW9kaWZpY2F0aW9ucyBpbnNpZGUgY2FsbGJhY2sg
c2hvdWxkIHVwZGF0ZSBmaWx0ZXJpbmcgYW5kIG5vdCBjbGVhciBidWZmZXIiKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jYWM5N2JlYTA3NTVjMTE4Mjk1NmZkZjk0Yzk4ZWU3OGNhNDBiMDE3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlwZXMu
YW55LmpzCkBAIC0wLDAgKzEsMTkgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2Vy
dmVycy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgIGNvbnN0IG9ic2VydmVyICA9
IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVu
dHJ5TGlzdCkgeworICAgICAgICAvLyBUaGVyZSBzaG91bGQgYmUgbm8gbWFyayBlbnRyeS4KKyAg
ICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sg
ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJiIn1dKTsKKyAgICAgICAgdC5kb25lKCk7Cisg
ICAgICB9KQorICAgICk7CisgIG9ic2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIn0pOworICAv
LyBEaXNjb25uZWN0IHRoZSBvYnNlcnZlci4KKyAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAv
LyBOb3csIG9ubHkgb2JzZXJ2ZSBtZWFzdXJlLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAi
bWVhc3VyZSJ9KTsKKyAgcGVyZm9ybWFuY2UubWFyaygiYSIpOworICBwZXJmb3JtYW5jZS5tZWFz
dXJlKCJiIik7Cit9LCAiVHlwZXMgb2JzZXJ2ZWQgYXJlIGZvcmdvdHRlbiB3aGVuIGRpc2Nvbm5l
Y3QoKSBpcyBjYWxsZWQuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZjVmYjVhYTQz
YmE0NjI2OGY4YzM1NWZkYzkzYzZmMTgyOTk2OGI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby1kaXNjb25uZWN0LmFueS5qcwpAQCAtMCwwICsxLDM3IEBACisvLyBNRVRBOiBzY3JpcHQ9
cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3Rl
cF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGFzc2VydF91bnJl
YWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBub3QgYmUgaW52b2tlZCIpOworICAgICAgICB9KQor
ICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVh
c3VyZSIsICJuYXZpZ2F0aW9uIl19KTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
c2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVh
c3VyZSgibWVhc3VyZTEiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7CisgICAg
ICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgImRpc2Nvbm5lY3RlZCBjYWxsYmFja3Mg
bXVzdCBub3QgYmUgaW52b2tlZCIpOworCisgIHRlc3QoZnVuY3Rpb24gKCkgeworICAgIHZhciBv
YnMgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoKSB7IHJldHVybiB0cnVlOyB9
KTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOworICAgIG9icy5kaXNjb25uZWN0KCk7CisgIH0sICJk
aXNjb25uZWN0aW5nIGFuIHVuY29ubmVjdGVkIG9ic2VydmVyIGlzIGEgbm8tb3AiKTsKKworICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9i
cykgeworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBub3Qg
YmUgaW52b2tlZCIpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZl
KHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFy
azEiKTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5t
YXJrKCJtYXJrMiIpOworICAgIHQuc3RlcF90aW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAgIHQu
ZG9uZSgpOworICAgIH0sIDIwMDApOworICB9LCAiQW4gb2JzZXJ2ZXIgZGlzY29ubmVjdGVkIGFm
dGVyIGEgbWFyayBtdXN0IG5vdCBoYXZlIGl0cyBjYWxsYmFjayBpbnZva2VkIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMt
c29ydC5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjBjNzgxYTNjMGMwM2JmODFlODIwMTY4YmRmNzBiNTM2
Mjc1MDQwYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5q
cwpAQCAtMCwwICsxLDY0IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMu
anMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRyaWVz
ID0gW107CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBbXTsKKyAgICB2YXIgb2Jz
ZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVu
Y3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9IGVu
dHJ5TGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNfYnlfdHlwZSA9
IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIik7CisgICAgICAgICAgc3RvcmVkX2Vu
dHJpZXNfYnlfbmFtZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJuYW1lLXJlcGVhdCIp
OworICAgICAgICAgIHZhciBzdGFydFRpbWVPZk1hcmsyID0gZW50cnlMaXN0LmdldEVudHJpZXNC
eU5hbWUoIm1hcmsyIilbMF0uc3RhcnRUaW1lOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3Rv
cmVkX2VudHJpZXMpOworICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywgWwor
ICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAg
ICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn0sCisgICAg
ICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAorICAgICAg
ICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICB7
ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlw
ZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0xIn0sCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLW1hdGNoaW5nLW1hcmsy
LTIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0
In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9
LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNf
YnlfdHlwZSk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUs
IFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAg
ICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAg
e2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgXSk7CisK
KyAgICAgICAgICBjaGVja1NvcnRlZChzdG9yZWRfZW50cmllc19ieV9uYW1lKTsKKyAgICAgICAg
ICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSwgWworICAgICAgICAgICAge2Vu
dHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisg
ICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOworICAg
ICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsi
bWFyayIsICJtZWFzdXJlIl19KTsKKworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEi
KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgd2FpdCgp
OyAvLyBFbnN1cmUgbWFyazEgIT09IG1hcmsyIHN0YXJ0VGltZSBieSBtYWtpbmcgc3VyZSBwZXJm
b3JtYW5jZS5ub3cgYWR2YW5jZXMuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIp
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgICBzZWxmLnBl
cmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSIsICJtYXJrMiIpOwor
ICAgIHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsyICE9PSBtYXJrMyBzdGFydFRpbWUgYnkgbWFraW5n
IHN1cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFy
aygibmFtZS1yZXBlYXQiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUz
Iik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsy
LTIiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRp
bWUgd2lsbCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJuYW1lLXJlcGVhdCIp
OworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG5hbWUtcmVwZWF0IHN0YXJ0VGltZSB3aWxsIGRpZmZl
ci4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm5hbWUtcmVwZWF0Iik7CisgIH0sICJn
ZXRFbnRyaWVzLCBnZXRFbnRyaWVzQnlUeXBlLCBnZXRFbnRyaWVzQnlOYW1lIHNvcnQgb3JkZXIi
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanMgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LWdldGVudHJpZXMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2MTY5ZDVkYmQ2ZTBlMjA1MDZkMjAxNDY1
ODVkYmM4OWU3NTBjMjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMu
YW55LmpzCkBAIC0wLDAgKzEsMzggQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2Vy
dmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2ZXIg
PSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRF
bnRyaWVzKCksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsx
In1dLCAiZ2V0RW50cmllcyIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5n
ZXRFbnRyaWVzQnlUeXBlKCJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJr
IiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5VHlwZSIpOworICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm1lYXN1cmUiKS5sZW5ndGgsIDAs
CisgICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsK
KyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCIyMzQ1
NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhw
ZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50
cmllc0J5TmFtZSgibWFyazEiKSwKKyAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBu
YW1lOiAibWFyazEifV0sICJnZXRFbnRyaWVzQnlOYW1lIik7CisgICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiKS5sZW5ndGgsIDAsCisgICAg
ICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAg
ICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgiMjM0NTY3Iiku
bGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3Rl
ZCBlbnRyeSIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVz
QnlOYW1lKCJtYXJrMSIsICJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJr
IiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSIpOworICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiwg
Im1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRo
IGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiLCAibWVhc3VyZSIpLmxlbmd0aCwg
MCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8gZXhw
ZWN0ZWQgZW50cnkiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlOYW1lKCJtYXJrMSIsICIyMzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0
RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAg
ICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgdC5kb25lKCk7CisgICAg
ICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFy
ayJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICB9LCAiZ2V0RW50
cmllcywgZ2V0RW50cmllc0J5VHlwZSBhbmQgZ2V0RW50cmllc0J5TmFtZSB3b3JrIik7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmst
bWVhc3VyZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGIyMDVlMDk0Yzc1ZTEwYmMxYjkzZmY5NjZhZWEw
ZmQyM2E1ODZmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFu
eS5qcwpAQCAtMCwwICsxLDYxIEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZl
cnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRy
aWVzID0gW107CisgICAgdmFyIG9ic2VydmVyICA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAor
ICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAg
ICBzdG9yZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQoZW50
cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKHN0b3JlZF9lbnRyaWVzLmxlbmd0
aCA+PSA0KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsCisgICAg
ICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAgICAg
ICAgICAgeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAgICAg
IHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAg
ICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAg
ICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAg
ICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5
cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisgIH0sICJlbnRyaWVzIGFyZSBvYnNlcnZhYmxl
Iik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBtYXJrX2VudHJpZXMg
PSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAg
ICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgbWFy
a19lbnRyaWVzID0KKyAgICAgICAgICAgIG1hcmtfZW50cmllcy5jb25jYXQoZW50cnlMaXN0Lmdl
dEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKG1hcmtfZW50cmllcy5sZW5ndGggPj0gMikgewor
ICAgICAgICAgICAgY2hlY2tFbnRyaWVzKG1hcmtfZW50cmllcywKKyAgICAgICAgICAgICAgW3sg
ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5
VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlz
Y29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9
KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0p
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1hcmsoIm1hcmsyIik7CisgIH0sICJtYXJrIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsK
KworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG1lYXN1cmVfZW50cmllcyA9
IFtdOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAg
ICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBtZWFz
dXJlX2VudHJpZXMgPQorICAgICAgICAgICAgbWVhc3VyZV9lbnRyaWVzLmNvbmNhdChlbnRyeUxp
c3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBpZiAobWVhc3VyZV9lbnRyaWVzLmxlbmd0aCA+
PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMobWVhc3VyZV9lbnRyaWVzLAorICAgICAg
ICAgICAgICBbeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAg
ICAgICAgICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9XSk7Cisg
ICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUoKTsK
KyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUo
e2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJl
KCJtZWFzdXJlMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsK
KyAgfSwgIm1lYXN1cmUgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZGY4NWU1ODU2Y2U4NzNmMTIxZGM1MTU0NGM1NDRiNDE0MzlmYTI2
YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw3IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlcklu
aXQuYnVmZmVyZWQKKworUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJl
dHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcworCisKK1BBU1MgUGVyZm9ybWFuY2VP
YnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQg
ZW50cmllcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5h
bnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMmJiYTM5NmE2YjY5ZWJhZDU2YWQ0ZjFiMTM1Y2I4YWQ0OWQzMjFiNwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qcwpAQCAtMCwwICsx
LDE3IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAg
ICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sgZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJlYXJseSJ9XSk7CisgICAgICAgIG9ic2VydmVyLmRpc2Nv
bm5lY3QoKTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9KQorICAgICk7CisgIHBlcmZvcm1h
bmNlLm1hcmsoImVhcmx5Iik7CisgIC8vIFRoaXMgY2FsbCB3aWxsIG5vdCB0cmlnZ2VyIGFueXRo
aW5nLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gVGhpcyBjYWxs
IHNob3VsZCBvdmVycmlkZSB0aGUgcHJldmlvdXMgY2FsbCBhbmQgZGV0ZWN0IHRoZSBlYXJseSBt
YXJrLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayIsIGJ1ZmZlcmVkOiB0cnVlfSk7
Cit9LCAiVHdvIGNhbGxzIG9mIG9ic2VydmUoKSB3aXRoIHRoZSBzYW1lICd0eXBlJyBjYXVzZSBv
dmVycmlkZS4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby1vYnNlcnZlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTQ4ZjBmMzc2NGJkYTRjZWI4OGIyYThiZTRk
NjVmMTY4MzYyNjI3YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1s
CkBAIC0wLDAgKzEsODYgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4K
Kzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVm
ZmVyZWQ8L3RpdGxlPgorPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+Cis8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0icGVyZm9ybWFuY2VvYnNlcnZlcnMuanMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJzOiBQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZDwvaDE+Cis8cD4KK1BlcmZv
cm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1
ZmZlcmVkIGVudHJpZXMKKzwvcD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVuY3Rpb24gaW5pdFRlc3QoKSB7CisgICAg
ICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikg
eworICAgICAgICBlbnRyeUxpc3QuZ2V0RW50cmllcygpLmZvckVhY2goZnVuY3Rpb24oZW50cnkp
IHsKKyAgICAgICAgICBpZiAoc2hvdWxkRXhjbHVkZShlbnRyeSkpIHsKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBvYnNlcnZlZEVudHJpZXMucHVzaChlbnRy
eSk7CisgICAgICAgICAgaWYgKG9ic2VydmVkRW50cmllcy5sZW5ndGggPT09IGVudHJ5VHlwZXMu
bGVuZ3RoKSB7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAg
ICBydW5UZXN0KCk7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKyAgICAgIH0pLm9ic2VydmUo
e2VudHJ5VHlwZXN9KTsKKworICAgICAgLy8gY3JlYXRlcyBhIGByZXNvdXJjZWAgZW50cnkKKyAg
ICAgIHZhciBpbWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICAgIGltZy5z
cmMgPSAiLi9yZXNvdXJjZXMvc3F1YXJlLnBuZyI7CisgICAgICBkb2N1bWVudC5ib2R5LmFwcGVu
ZENoaWxkKGltZyk7CisKKyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoIm1hcmtOYW1lIik7IC8vIGNy
ZWF0ZXMgYSBgbWFya2AgZW50cnkKKyAgICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmVO
YW1lIik7IC8vIGNyZWF0ZXMgYSBgbWVhc3VyZWAgZW50cnkKKyAgICB9CisgICAgZnVuY3Rpb24g
c2hvdWxkRXhjbHVkZShlbnRyeSkgeworICAgICAgLy8gZXhjbHVkZSBhbGwgYHJlc291cmNlYCBl
bnRyaWVzIHRoYXQgYXJlbid0IGZvciAic3F1YXJlLnBuZyIKKyAgICAgIHJldHVybiBlbnRyeS5l
bnRyeVR5cGUgPT09ICJyZXNvdXJjZSIgJiYKKyAgICAgICAgICAgICBlbnRyeS5uYW1lLmluZGV4
T2YoInNxdWFyZS5wbmciKSA9PT0gLTE7CisgICAgfQorICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7
CisgICAgICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgaXMgYSBub3AgYmVjYXVzZSB3ZSd2
ZSBhbHJlYWR5IGJlZW4gbm90aWZpZWQgYWJvdXQgYWxsIG9mIG91ciBgZW50cnlUeXBlc2AKKyAg
ICAgIHZhciBwb19ub3AgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlM
aXN0LCBvYnNlcnZlcikgeworICAgICAgICBpZiAoZW50cnlMaXN0LmdldEVudHJpZXMoKS5maW5k
KGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAgICAgcmV0dXJuICFzaG91bGRFeGNsdWRlKGVudHJ5
KTsKKyAgICAgICAgfSkpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJ0aGlzIFBlcmZv
cm1hbmNlT2JzZXJ2ZXIgY2FsbGJhY2sgc2hvdWxkIG5ldmVyIGJlIGNhbGxlZCIpOworICAgICAg
ICB9CisgICAgICB9KTsKKyAgICAgIHBvX25vcC5vYnNlcnZlKHsKKyAgICAgICAgZW50cnlUeXBl
cywKKyAgICAgIH0pOworCisgICAgICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgc2hvdWxk
IGJlIG5vdGlmaWVkIGFib3V0IHRoZSBwcmV2aW91c2x5CisgICAgICAvLyBidWZmZXJlZCBtYXJr
IGVudHJ5IG9ubHkKKyAgICAgIGNvbnN0IGJ1ZmZlcmVkRW50cmllcyA9IFtdOworICAgICAgbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAg
ICAgICAgZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7Cisg
ICAgICAgICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgfQorCisgICAgICAgICAgYnVmZmVyZWRFbnRyaWVzLnB1c2goZW50cnkpOwor
ICAgICAgICAgIGlmIChidWZmZXJlZEVudHJpZXMubGVuZ3RoID09PSAxKSB7CisgICAgICAgICAg
ICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBwb19ub3AuZGlzY29ubmVjdCgp
OworICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGJ1ZmZlcmVkRW50cmllcy5sZW5ndGg7IGkr
KykgeworICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGJ1ZmZlcmVkRW50cmllc1tpXS5lbnRy
eVR5cGUsICJtYXJrIikKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHQuZG9uZSgpOworICAg
ICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9KS5vYnNlcnZlKHsKKyAgICAgICAgdHlwZTog
Im1hcmsiLAorICAgICAgICBidWZmZXJlZDogdHJ1ZQorICAgICAgfSk7CisgICAgfQorCisgICAg
Y29uc3QgZW50cnlUeXBlcyA9IFsibmF2aWdhdGlvbiIsICJyZXNvdXJjZSIsICJtYXJrIiwgIm1l
YXN1cmUiXTsKKyAgICBjb25zdCBvYnNlcnZlZEVudHJpZXMgPSBbXTsKKyAgICBpbml0VGVzdCgp
OworICB9LCAiUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZl
IHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcyIpOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWVlZTY1ZTlmOWFiNWZiMjMzNzNlYjlkOGE3MGEzMzlj
MDVhMDIzNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlCisKK05l
dyByZXNvdXJjZXMgd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKworUEFTUyByZXNv
dXJjZSBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVz
b3VyY2UuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMGMxNzNl
ZWFlOTIxZmJlY2MzZWVlYTU0ZDhhZGZhNmI5ZWQ1MzY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1yZXNvdXJjZS5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBIVE1MPgor
PG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVzb3Vy
Y2U8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxo
MT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8L2gxPgorPHA+CitOZXcgcmVzb3VyY2Vz
IHdpbGwgPGEgaHJlZj0iaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5l
LyNkZm4tcXVldWUtYS1wZXJmb3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8
L2E+LgorPC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3Qo
ZnVuY3Rpb24gKHQpIHsKKyAgICBmdW5jdGlvbiBwYXRoKHBhdGhuYW1lKSB7CisgICAgICB2YXIg
ZmlsZW5hbWUgPSBwYXRobmFtZS5zdWJzdHJpbmcocGF0aG5hbWUubGFzdEluZGV4T2YoJy8nKSsx
KTsKKyAgICAgIHJldHVybiBwYXRobmFtZS5zdWJzdHJpbmcoMCwgcGF0aG5hbWUubGVuZ3RoIC0g
ZmlsZW5hbWUubGVuZ3RoKTsKKyAgICB9CisgICAgdmFyIGdVbmlxdWVDb3VudGVyID0gMDsKKyAg
ICBmdW5jdGlvbiBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpIHsKKyAgICAgIHJldHVybiBEYXRlLm5v
dygpICsgIi0iICsgKCsrZ1VuaXF1ZUNvdW50ZXIpOworICAgIH0KKyAgICB2YXIgc3RvcmVkX2Vu
dHJpZXMgPSBbXTsKKyAgICB2YXIgaW1nX2xvY2F0aW9uID0gZG9jdW1lbnQubG9jYXRpb24ub3Jp
Z2luICsgcGF0aChkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSkKKyAgICAgICArICJyZXNvdXJj
ZXMvc3F1YXJlLnBuZz9yYW5kb209IjsKKyAgICB2YXIgaW1nMSA9IGltZ19sb2NhdGlvbiArIGdl
bmVyYXRlVW5pcXVlVmFsdWVzKCk7CisgICAgdmFyIGltZzIgPSBpbWdfbG9jYXRpb24gKyBnZW5l
cmF0ZVVuaXF1ZVZhbHVlcygpOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsK
KyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5j
b25jYXQoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikpOworICAgICAgICAg
IGlmIChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRy
aWVzKHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJyZXNvdXJj
ZSIsIG5hbWU6IGltZzF9LAorICAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIs
IG5hbWU6IGltZzJ9XSk7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
ICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAg
IG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsicmVzb3VyY2UiXX0pOworICAgIHZhciBp
bWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICBpbWcuc3JjID0gaW1nMTsK
KyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CisgICAgaW1nID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9IGltZzI7CisgICAgZG9jdW1lbnQu
Ym9keS5hcHBlbmRDaGlsZChpbWcpOworICB9LCAicmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2
YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFu
eS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tdGFrZVJlY29yZHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2YWQzOTdi
MGE1YzM3OWQwMTI5ZDQzYzkyOTUyYmM2YzhjNWMwY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBNRVRBOiB0aXRs
ZT1QZXJmb3JtYW5jZU9ic2VydmVyOiB0YWtlUmVjb3JkcworLy8gTUVUQTogc2NyaXB0PXBlcmZv
cm1hbmNlb2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBjb25z
dCBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3Qs
IG9ic2VydmVyKSB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdUaGlzIGNhbGxiYWNrIHNob3Vs
ZCBub3QgaGF2ZSBiZWVuIGNhbGxlZC4nKQorICAgIH0pOworICAgIGxldCBlbnRyaWVzID0gb2Jz
ZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyBy
ZWNvcmRzIGJlZm9yZSBvYnNlcnZlJyk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBl
czogWydtYXJrJ119KTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihvYnNlcnZlci50YWtlUmVj
b3JkcyksICdmdW5jdGlvbicpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3Jkcygp
OworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBbXSwgJ05vIHJlY29yZHMganVzdCBmcm9tIG9i
c2VydmUnKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdhJyk7CisgICAgcGVyZm9ybWFuY2UubWFy
aygnYicpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNr
RW50cmllcyhlbnRyaWVzLCBbCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdhJ30s
CisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdiJ30KKyAgICBdKTsKKyAgICBwZXJm
b3JtYW5jZS5tYXJrKCdjJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZCcpOworICAgIHBlcmZv
cm1hbmNlLm1hcmsoJ2UnKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsK
KyAgICBjaGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBu
YW1lOiAnYyd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZCd9LAorICAgICAg
e2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZSd9CisgICAgXSk7CisgICAgZW50cmllcyA9IG9i
c2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8g
ZW50cmllcyByaWdodCBhZnRlciB0YWtlUmVjb3JkcycpOworICAgIG9ic2VydmVyLmRpc2Nvbm5l
Y3QoKTsKKyAgICB0LmRvbmUoKTsKKyAgfSwgIlRlc3QgUGVyZm9ybWFuY2VPYnNlcnZlcidzIHRh
a2VSZWNvcmRzKCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdl
LWVudHJ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmVmNWJlNzMzOTViNDlkODk1YTI1ODliZTU0N2E3ZjM5NTBmNDE2YmEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sCkBA
IC0wLDAgKzEsMTcgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2FkZEV2ZW50TGlzdGVu
ZXIoImxvYWQiLCAoKSA9PiB7CisgIGNvbnN0IGVudHJ5ID0gcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICB0cnkgeworICAgIHdpbmRvdy50b3AucG9zdE1l
c3NhZ2UoZW50cnksICIqIik7CisgIH0gY2F0Y2goZXJyb3IpIHsKKyAgICBpZiAoZXJyb3IubmFt
ZSA9PSAiRGF0YUNsb25lRXJyb3IiKSB7CisgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKCJQ
QVNTIiwgIioiKTsKKyAgICB9IGVsc2UgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgi
RkFJTCAtIFdyb25nIGV4Y2VwdGlvbiBuYW1lOiAiICsgZXJyb3IubmFtZSwgIioiKTsKKyAgICB9
CisgIH0KKyAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiRkFJTCAtIE5vIGV4Y2VwdGlvbiB0aHJv
d24iLCAiKiIpOworfSk7CisKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJj
ZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1p
bnZhbGlkLWVudHJpZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmQ3ZmJhMmNjZjRiNmFiN2U2MDQyNzNjMjUw
MTBlMzFlNDQzZTM3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtl
ci1pbnZhbGlkLWVudHJpZXMuanMKQEAgLTAsMCArMSw2IEBACitwZXJmb3JtYW5jZS5tYXJrKCd3
b3JrZXJNYXJrJyk7Citwb3N0TWVzc2FnZSh7CisgICdpbnZhbGlkJyA6IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoJ2ludmFsaWQnKS5sZW5ndGgsCisgICdtYXJrJyA6IHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoJ21hcmsnKS5sZW5ndGgsCisgICdtZWFzdXJlJyA6IHBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoJ21lYXN1cmUnKS5sZW5ndGgKK30pOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hNzJmZTgxYzQ3ZmVhY2U3NjU2MTNhMDk2MmYyYTdlNjNmNzFmYTI1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2Jz
ZXJ2ZXIuanMKQEAgLTAsMCArMSw2IEBACit0cnkgeworICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cigoKSA9PiB0cnVlKTsKKyAgcG9zdE1lc3NhZ2UoIlNVQ0NFU1MiKTsKK30gY2F0Y2ggKGV4KSB7
CisgIHBvc3RNZXNzYWdlKCJGQUlMVVJFIik7Cit9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBv
cnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlU
eXBlcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDEzOGJkZTY2MTk2MjQzZTY3MDMwZDFhZTE0MmJk
YTQxMTQ4ZTIzMGIuLmU1ZWIxMThhYjIyNDNkMWNhMzQ1NzUwOTU0MGEyMDgyODAyODlkOTYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMg
KzEsNCBAQAogCiBQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVu
dHJpZXMgaW4gYWxwaGFiZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2Fj
aGVzIHJlc3VsdCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnkuanMKaW5kZXggYTAyMjVhZDJmNzZmZGNmZWJiMGE3YzlhZmY5YmQw
MDMwZWNmODZhYS4uMjVmMTk1OTM5ZTdiNjkyNTA5NjI1YjgxMzFlNTM3MTY0Y2RmNTZjMCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCkBAIC0xMCwzICsxMCwxMCBAQCB0ZXN0KCgpID0+
IHsKICAgICAgICInIGFyZSByZXBlYXRlZCBvciB0aGV5IGFyZSBub3QgaW4gYWxwaGFiZXRpY2Fs
IG9yZGVyLiIpCiAgIH0KIH0sICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJu
cyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlciIpOworCit0ZXN0KCgpID0+IHsKKyAgaWYg
KHR5cGVvZiBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgPT09ICJ1bmRl
ZmluZWQiKQorICAgIGFzc2VydF91bnJlYWNoZWQoInN1cHBvcnRlZEVudHJ5VHlwZXMgaXMgbm90
IHN1cHBvcnRlZC4iKTsKKyAgYXNzZXJ0X3RydWUoUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0
ZWRFbnRyeVR5cGVzID09PQorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRy
eVR5cGVzKTsKK30sICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQiKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApp
bmRleCAxMzhiZGU2NjE5NjI0M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIy
MjQzZDFjYTM0NTc1MDk1NDBhMjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBv
cnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBw
b3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAog
CiBQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJpZXMgaW4g
YWxwaGFiZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJlc3Vs
dCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNv
bHV0aW9uLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kODY5YzdjNTJkNTVkNjllMjEyM2Y2NGQ0ODZlZDFl
MzIzNWQzZmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlv
bi5hbnkuanMKQEAgLTAsMCArMSwyNSBAQAorZnVuY3Rpb24gdGVzdFRpbWVSZXNvbHV0aW9uKGhp
Z2hSZXNUaW1lRnVuYywgZnVuY1N0cmluZykgeworICAgIHRlc3QoKCkgPT4geworICAgICAgICBj
b25zdCB0MCA9IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICBsZXQgdDEgPSBoaWdoUmVzVGlt
ZUZ1bmMoKTsKKyAgICAgICAgd2hpbGUgKHQwID09IHQxKSB7CisgICAgICAgICAgICB0MSA9IGhp
Z2hSZXNUaW1lRnVuYygpOworICAgICAgICB9CisgICAgICAgIGNvbnN0IGVwc2lsb24gPSAxZS01
OworICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKHQxIC0gdDAsIDAuMDA1IC0gZXBz
aWxvbiwgJ1RoZSBzZWNvbmQgJyArIGZ1bmNTdHJpbmcgKyAnIHNob3VsZCBiZSBtdWNoIGdyZWF0
ZXIgdGhhbiB0aGUgZmlyc3QnKTsKKyAgICB9LCAnVmVyaWZpZXMgdGhlIHJlc29sdXRpb24gb2Yg
JyArIGZ1bmNTdHJpbmcgKyAnIGlzIGF0IGxlYXN0IDUgbWljcm9zZWNvbmRzLicpOworfQorCitm
dW5jdGlvbiB0aW1lQnlQZXJmb3JtYW5jZU5vdygpIHsKKyAgICByZXR1cm4gcGVyZm9ybWFuY2Uu
bm93KCk7Cit9CisKK2Z1bmN0aW9uIHRpbWVCeVVzZXJUaW1pbmcoKSB7CisgICAgcGVyZm9ybWFu
Y2UubWFyaygndGltZXInKTsKKyAgICBjb25zdCB0aW1lID0gcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5TmFtZSgndGltZXInKVswXS5zdGFydFRpbWU7CisgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJr
cygndGltZXInKTsKKyAgICByZXR1cm4gdGltZTsKK30KKwordGVzdFRpbWVSZXNvbHV0aW9uKHRp
bWVCeVBlcmZvcm1hbmNlTm93LCAncGVyZm9ybWFuY2Uubm93KCknKTsKK3Rlc3RUaW1lUmVzb2x1
dGlvbih0aW1lQnlVc2VyVGltaW5nLCAnZW50cnkuc3RhcnRUaW1lJyk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjY4MjZiOWNiZGFmMmM1ZmQ0NDEzNGMxMjE3ZGEzNGUyNDM2NGI3MDgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKworUEFTUyBXb3JrZXI6IFRlc3QgUGVyZm9ybWFuY2Ug
T2JzZXJ2ZXIgaW5zaWRlIGEgd29ya2VyLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13
aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZv
cm1hbmNlLW9ic2VydmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmM5MmJjOTcxMDAzZjJlYTkyZmJkMTY5
ZDhkZDdhNjRkMDYyMDYyZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgt
cGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbApAQCAtMCwwICsxLDE4IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0
aW9uKHQpIHsKKyAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcigicmVzb3VyY2VzL3dvcmtlci13
aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzIik7CisgIHdvcmtlci5vbm1lc3NhZ2UgPSBmdW5j
dGlvbihldmVudCkgeworICAgIHQuc3RlcCgoKSA9PiBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGEs
ICdTVUNDRVNTJykpOworICAgIHQuZG9uZSgpOworICB9Cit9LCAnV29ya2VyOiBUZXN0IFBlcmZv
cm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4nKTsKKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcu
aHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcu
aHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDczMDA4MWY0ZDY3YjA2NDFkZTgwMGUyYTg4MWFmMDI3
MmIyMmI5YjIuLjY0ZTdlMjVjMjBkY2Q4OWRhZmZjNzIyMTc0MmQ5NTBjODcyNjc5YWUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBl
Y3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxl
ZCBuYXZpZ2F0aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlv
bjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZy53b3JrZXJT
dGFydCcpIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQotRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250
cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sgYXNzZXJ0X3VucmVhY2hl
ZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICd0aW1pbmdbdGltaW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxl
IGNvZGUKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBy
ZWRpcmVjdCBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1t0aW1pbmdFdmVudE9yZGVyW2ld
XScpIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9s
bGVkIG5hdmlnYXRpb24gdGltaW5nIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0
aW9uOiBhc3NlcnRfZ3JlYXRlcl90aGFuOiBleHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRoYW4g
MCBidXQgZ290IDAgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIFNlcnZpY2Ugd29ya2Vy
IGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgbmV0d29yayBmYWxsYmFjaworUEFTUyBTZXJ2
aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIHJlZGlyZWN0CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFu
Y2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZp
cnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0CmluZGV4IDdmZmIzODU4M2RhODRiNjQ2
OTQ1NWFlNzQwNGQyMjRjNGI1NzMwZGEuLjRlYmRjY2Y1YjJiZDQ3ZGE0ZDVkMjE1ZDFlOGEyNzgx
YTRjMmRlMDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10
aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJm
b3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKIFBBU1MgZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50IGlzIHRydWUK
LVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCBpcyAxCitQQVNTIHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKS5sZW5ndGggaXMgMgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoIGlzIDEKIFBBU1MgcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIsICJwYWludCIp
Lmxlbmd0aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInBhaW50Iiku
bGVuZ3RoIGlzIDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWlu
dC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1s
IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1v
YnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKaW5kZXggMDA3OGE0MzU0NWI5ZjRi
NmNmYWJmODE3MTY2MWIzYjYwMWM0YWE3OS4uMWYyODBiNDA3NzVlMmE5YTgyZjhkM2I2NmU3OThm
NzBhNzU1N2UyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50
LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAg
d2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogICAgIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0
ID0gJ1RFWFQyJzsKICAgICBhd2FpdCB3YWl0Rm9yRkNQKCk7CiAgICAgc2hvdWxkQmVUcnVlKCdk
aWRSZWNlaXZlRmlyc3RDb250ZW50ZnVsUGFpbnQnKTsKLSAgICBzaG91bGRCZSgncGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpLmxlbmd0aCcsICIxIik7CisgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNl
LmdldEVudHJpZXMoKS5sZW5ndGgnLCAiMiIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoJywgIjEiKTsK
ICAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVu
dGZ1bC1wYWludCIsICJwYWludCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikubGVuZ3RoJywgIjEiKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGkt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9i
c2VydmVyLWFwaS1leHBlY3RlZC50eHQKaW5kZXggNzY0OWE4NDMxY2E0NDJiMTYwN2UyOGVlZDZk
NDZhYzllNmNkZjBkYS4uM2E2N2RjMGJiNjNkNjA5ZGE4MjE0NmI3NjJlM2RlOGNkZjBhOTQ0ZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2Vy
dmVyLWFwaS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Bl
cmZvcm1hbmNlLW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQKQEAgLTExLDcgKzExLDcgQEAgUEFT
UyBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29uc3Ry
dWN0b3IgcmVxdWlyZXMgJ25ldycKIFBBU1MgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQg
MSAoJ2NhbGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVz
dCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KGZ1bmN0aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBvYnNlcnZlci5v
YnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMu
CitQQVNTIG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0
eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgi
bWFyayIpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIG9ic2Vy
dmVyLm9ic2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50
cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVz
OiJtYXJrIn0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVl
bmNlLgpAQCAtMzksNyArMzksNyBAQCBQQVNTIFtXb3JrZXJdIFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBDb25zdHJ1Y3RvciByZXF1aQogUEFTUyBbV29y
a2VyXSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBbV29ya2VyXSBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigxKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAxICgnY2FsbGJhY2sn
KSB0byB0aGUgUGVyZm9ybWFuY2VPYnNlcnZlciBjb25zdHJ1Y3RvciBtdXN0IGJlIGEgZnVuY3Rp
b24uCiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVu
Y3Rpb24oKSB7fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCi1QQVNTIFtXb3JrZXJdIG9ic2Vy
dmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3Vt
ZW50cy4KK1BBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBbV29y
a2VyXSBvYnNlcnZlci5vYnNlcnZlKCJtYXJrIikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSh7fSkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQ
QVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6Im1hcmsifSkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVmFsdWUgaXMgbm90IGEgc2VxdWVuY2UuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1l
bGluZS1hcGktZXhwZWN0ZWQudHh0CmluZGV4IGVkMDFhZTAwMzFmNGU1ZThmNzZlNjAxNWRiMjM4
ODIyNjQ0YjkxMmQuLmMxNDYyMTRlZjJkNmE4YWIxZDZiOGFlMzg3ODY1ZTEwN2JhM2Y3MGMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGlu
ZS1hcGktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJm
b3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0CkBAIC0xNiwxNCArMTYsMTQgQEAgUEFT
UyBQZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllcyBpcyBkZWZpbmVkLgogUEFTUyBQZXJm
b3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5VHlwZSBpcyBkZWZpbmVkLgogUEFTUyBQZXJm
b3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5TmFtZSBpcyBkZWZpbmVkLgogUEFTUyBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCi1QQVNTIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5j
ZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpWzBdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNTIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyB0eXBlb2YgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQotUEFT
UyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVy
IiBpcyB0cnVlCitQQVNTIHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBl
eGNlcHRpb24uCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDIgaXMg
dHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5jZW9m
IFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClb
bWFya0luZGV4XS5uYW1lIGlzICJ0ZXN0IgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClb
bWFya0luZGV4XS5lbnRyeVR5cGUgaXMgIm1hcmsiCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKClbbWFya0luZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKK1BB
U1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9uID09
PSAibnVtYmVyIiBpcyB0cnVlCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoKSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDAgaXMgdHJ1
ZQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIikubGVuZ3RoID09PSAx
IGlzIHRydWUKQEAgLTYwLDExICs2MCwxMSBAQCBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdl
dEVudHJpZXMoKSBpbnN0YW5jZW9mIEFycmF5IGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBl
cmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIFtX
b3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQotUEFT
UyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJmb3Jt
YW5jZUVudHJ5IGlzIHRydWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
WzBdLm5hbWUgaXMgInRlc3QiCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVswXS5lbnRyeVR5cGUgaXMgIm1hcmsiCi1QQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCi1QQVNTIFtX
b3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24gPT09ICJu
dW1iZXIiIGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21h
cmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgW1dvcmtl
cl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BB
U1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBl
IGlzICJtYXJrIgorUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
W21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJd
IHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0g
Im51bWJlciIgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQ
QVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVu
Z3RoID09PSAwIGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcyBiL0xheW91dFRlc3Rz
L3BlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCmluZGV4IDFlZjdhYTVj
NTg0MmZkZTllMWJkMjAzZjFkMjU3Mzg3Yjk1MzYwNGQuLmI4YzI5OTQwMjZjZjk0ZTA3NDllZmI5
NDIxYmMxZGJjYmIyMDMyM2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFw
aS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNl
LWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCkBAIC00LDYgKzQsOCBAQCBpZiAoc2VsZi5p
bXBvcnRTY3JpcHRzKQogaWYgKHNlbGYud2luZG93KQogICAgIGRlc2NyaXB0aW9uKCJCYXNpYyBJ
bnRlcmZhY2UgdGVzdCBmb3IgcGVyZm9ybWFuY2UtdGltZWxpbmUgQVBJcy4iKTsKIAorbGV0IHJ1
bm5pbmdJbldvcmtlciA9ICEhc2VsZi5pbXBvcnRTY3JpcHRzOworCiBkZWJ1ZygiUGVyZm9ybWFu
Y2VFbnRyeSIpOwogc2hvdWxkQmVEZWZpbmVkKCJQZXJmb3JtYW5jZUVudHJ5Iik7CiBzaG91bGRC
ZVRydWUoYCJuYW1lIiBpbiBQZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZWApOwpAQCAtMjEsMTQg
KzIzLDI1IEBAIHNob3VsZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJp
ZXNCeVR5cGVgKTsKIHNob3VsZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVu
dHJpZXNCeU5hbWVgKTsKIAogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkg
aW5zdGFuY2VvZiBBcnJheWApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KCkubGVuZ3RoID09PSAwYCk7CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgLy8gV29ya2Vy
cyBkb24ndCBoYXZlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy4KKyAgICBzaG91bGRCZVRy
dWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDBgKTsKK30gZWxzZSB7Cisg
ICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7
Cit9CiBzaG91bGROb3RUaHJvdyhgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpO2ApOwotc2hvdWxk
QmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Ci1zaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNl
RW50cnlgKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
WzBdLm5hbWVgLCAidGVzdCIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlYCwgIm1hcmsiKTsKLXNob3VsZEJlVHJ1ZShgdHlwZW9m
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiYCk7Ci1z
aG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24g
PT09ICJudW1iZXIiYCk7CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgbWFya0luZGV4ID0g
MDsKKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09
IDFgKTsKK30gZWxzZSB7CisgICAgbWFya0luZGV4ID0gMTsKKyAgICBzaG91bGRCZVRydWUoYHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDJgKTsKK30KK3Nob3VsZEJlVHJ1ZShg
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5j
ZUVudHJ5YCk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVttYXJrSW5kZXhdLm5hbWVgLCAidGVzdCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5lbnRyeVR5cGVgLCAibWFyayIpOworc2hv
dWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3Rh
cnRUaW1lID09PSAibnVtYmVyImApOworc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiYCk7CiAKIHNob3Vs
ZFRocm93KGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKClgKTsKIHNob3VsZEJlVHJ1ZShg
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDBgKTsK
QEAgLTUwLDUgKzYzLDUgQEAgc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5TmFtZSgidGVzdCIpWzBdLmR1cmF0aW9uID09PSAibnVtYmUKIHNob3VsZEJlVHJ1ZShg
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJub3QtcmVhbCIpLmxlbmd0aCA9
PT0gMGApOwogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJ0ZXN0
IiwgIm1hcmsiKS5sZW5ndGggPT09IDFgKTsKIAotaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykKK2lm
IChydW5uaW5nSW5Xb3JrZXIpCiAgICAgZmluaXNoSlNUZXN0KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428722</attachid>
            <date>2021-05-15 00:24:34 -0700</date>
            <delta_ts>2021-05-15 00:44:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210515002433.patch</filename>
            <type>text/plain</type>
            <size>208548</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJjYjMzNTkxY2FhM2Zh
NTkwMTk2NTZmMTlkMWYzYThjYzZmYmU5My4uYjI5YTIyZGIxNjliODgxYjZhNDdhYWNjNDY5ZGYw
ZWE4ODQ3OTk0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzOSBAQAorMjAyMS0wNS0xNCAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9sZW1hdGljLCBhbmQgc29tZSBvZiB0aGUgdGVzdHMgZm9yIHJlYWRpbmcgdHJhbnNmZXIg
c2l6ZSBzdGlsbCBmYWlsLgorICAgICAgICBUaGVyZSBhcmUgc3RpbGwgYSBmZXcgdGVzdCBmYWls
dXJlcyB0byBmaXggaW4gZnV0dXJlIHBhdGNoZXMuCisKKyAgICAgICAgVGVzdHM6IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZl
X2ltYWdlX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3Vt
ZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbAorICAgICAg
ICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5z
dGFuY2VfYWNjZXNzb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5o
dG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbAorICAg
ICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmln
aW4uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sCisgICAgICAgICAg
ICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24u
aHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCisg
ICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQt
ZW50cmllcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dv
cmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKKworICAgICAgICAqIENNYWtlTGlz
dHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3Q6CisgICAg
ICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0
ZWQpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6c2V0UmVhZHlTdGF0ZSk6CisgICAgICAgIFNvbWV0aW1lcyB0aGUgcmVhZHkgc3RhdGUg
anVtcHMgcmlnaHQgdG8gQ29tcGxldGUgd2l0aG91dCBoaXR0aW5nIEludGVyYWN0aXZlIGFsb25n
IHRoZSB3YXkuCisgICAgICAgIFdoZW4gdGhpcyBoYXBwZW5zLCB3ZSB3YW50IHRvIG1hcmsgYm90
aCBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlIGFuZCBtX2RvY3VtZW50VGltaW5nLmRvbUlu
dGVyYWN0aXZlLgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQpOgorICAgICAgICBDYWxs
IGFkZE5hdmlnYXRpb25UaW1pbmcgaW4gbm90aWZ5RmluaXNoZWQgdG8gY3JlYXRlIHRoZSBuYXZp
Z2F0aW9uIHRpbWluZyBvYmplY3Qgd2hlbiB3ZSBhcmUgZG9uZSBuYXZpZ2F0aW5nLgorICAgICAg
ICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFkZCBhIFVSTCBwYXJh
bWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3QncyBVUkwgYW5kIHNv
bWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0dGVuIGF0IGRpZmZl
cmVudCB0aW1lcy4KKyAgICAgICAgKiBsb2FkZXIvUmVzb3VyY2VUaW1pbmcuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3MgY29uc3QpOgorICAgICAg
ICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdWJy
ZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5cGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5hbWUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVkRW50
cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6YWRkTmF2
aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6cmVnaXN0ZXJQ
ZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpxdWV1
ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJZk5l
ZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeTo6aXNS
ZXNvdXJjZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVu
dHJ5Ojppc01hcmsgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VFbnRyeTo6aXNNZWFzdXJlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlRW50cnk6OmlzUGFpbnQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VNYXJrLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAgICBT
UEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VORCBkb2Vzbid0IHdvcmsgd2VsbCB3aXRoIFBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyB3aGljaCBpbmhlcml0cyBmcm9tIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcgd2hpY2ggYm90aCBoYXZlIGRpc3RpbmN0IHR5cGVzLgorICAgICAgICBp
czxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBkb2Vzbid0IGdpdmUgdXMgdGhlIGluZm8gd2Ug
bmVlZC4gIEkgcmVwbGFjZWQgdGhhdCB3aXRoICJzd2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVu
dHJ5VHlwZSgpKSIgaW4gdGhlIG9uZSBwbGFjZSBpdCdzIHVzZWQsIGFuZCBpdCB3b3JrcyBsaWtl
IGEgY2hhcm0uCisgICAgICAgIEFsc28gcmVuYW1lZCB0eXBlIHRvIHBlcmZvcm1hbmNlRW50cnlU
eXBlIHNvIGl0IGRvZXNuJ3QgY29uZmxpY3Qgd2l0aCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnR5cGUsIHdoaWNoIGlzIHNwZWNpZmllZCBpbiB0aGUgaWRsLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VNZWFzdXJlLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAg
ICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcDogQWRkZWQuCisgICAgICAg
IChXZWJDb3JlOjp0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBlKToK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6UGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4gY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2Fk
RXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0IGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29udGVu
dExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpy
ZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5pZGw6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnRha2VSZWNvcmRzKToKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcik6CisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKToKKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaDoKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaWRsOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRy
aWVzQnlOYW1lIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcu
aDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmVudHJ5U3RhcnRUaW1lKToK
KyAgICAgICAgKFdlYkNvcmU6OmVudHJ5RW5kVGltZSk6CisgICAgICAgIChXZWJDb3JlOjplbnRy
eVRpbWVPcmlnaW4pOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zzo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyk6CisgICAgICAgIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZyBzdGFydHMgYXQgdGhlIHByZXZpb3VzIGRvY3VtZW50J3MgdW5sb2FkIGlmIHRo
ZSBvcmlnaW5zIGFsbG93LiAgVG8gbWFrZSB0aGUgYmVnaW4gYW5kIGVuZCB0aW1lcyBjb3JyZWN0
LCB3ZSBwYXNzIGluIHRoYXQgdGltZSB0byB1c2UgaW4gdGhlIGNhbGN1bGF0aW9ucworICAgICAg
ICBmcm9tIHRoZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgY29uc3RydWN0b3IuCisgICAg
ICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmg6CisgICAgICAgIChpc1R5cGUp
OiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6ZG9Ob3RpZnlGaW5pc2gpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvTmV0d29ya0xvYWRNZXRyaWNzLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNv
dXJjZUhhbmRsZUNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDbGll
bnQ6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvU3luY2hy
b25vdXNMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3luY2hyb25vdXNMb2Fk
ZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
U3luY2hyb25vdXNMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2Nm
L1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxl
Z2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIFBhc3Mg
bWV0cmljcyBpbmNsdWRpbmcgdGhlIHJlc3BvbnNlIGVuZCB0aW1lIGZyb20gTlNVUkxDb25uZWN0
aW9uIHNvIHdlIGRvbid0IGFzc2VydCBpbiBXZWJLaXRMZWdhY3kuCisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW06CisgICAgICAgIChXZWJDb3Jl
Ojpjb3B5VGltaW5nRGF0YSk6CisgICAgICAgIFVzZSBjdXJyZW50UmVxdWVzdCBpbnN0ZWFkIG9m
IHBhc3NpbmcgaW4gdGhlIHJlc3BvbnNlIHNvIHdlIGNhbiBjYWxsIGl0IGZyb20gZGlkRmluaXNo
TG9hZGluZywgd2hlcmUgd2UgZG9uJ3QgaGF2ZSBhIHJlc3BvbnNlIHN0b3JlZCBhbnl3aGVyZS4K
KyAgICAgICAgV2UncmUganVzdCBsb29raW5nIGZvciB3aGV0aGVyIGl0J3MgaHR0cCBvciBodHRw
cywgc28gdGhlIGN1cnJlbnRSZXF1ZXN0ICh3aGljaCBpcyB0aGUgcmVxdWVzdCBhZnRlciBhbGwg
dGhlIHJlZGlyZWN0cykgZml0cyBvdXIgcHVycG9zZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW06
CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0
ZSBjb25uZWN0aW9uOmRpZFJlY2VpdmVSZXNwb25zZTpdKToKKyAgICAgICAgKC1bV2ViQ29yZVJl
c291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hM
b2FkaW5nOl0pOgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9u
U3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBkZDI4
MWE4OWY3ZTQ3MTIxOTZiMWQ4MTM1MjNkM2JhNGFlODIzMjkuLmJhOWNjOTJjYzJmNTcwMjJkYTIy
YWVjZmQ3MmM5ZmI4Yzg0OGMxZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDUt
MTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoLVtXS05ldHdvcmtTZXNzaW9uRGVs
ZWdhdGUgVVJMU2Vzc2lvbjp0YXNrOmRpZEZpbmlzaENvbGxlY3RpbmdNZXRyaWNzOl0pOgorICAg
ICAgICBNYXJrIHJldXNlZCBUTFMgY29ubmVjdGlvbnMgaW4gY29tcGxldGUgbWV0cmljcyBsaWtl
IEkgZGlkIGluIGluY29tcGxldGUgbWV0cmljcyBpbiByMjc3NDkzLgorCiAyMDIxLTA1LTE0ICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVz
b3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlv
biBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDNkYjUxYmE2NmVkNjkzODM3N2M5
NGRhZDY2NjZmYTk5NzE2MTg0ZGMuLmY1MDQ3ODcwZGIzZjEzZmJlNGVmMTM5ZjM5OWQ2ZTA3YTg5
ZDA3MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMTM1LDYgKzExMzUsNyBAQCBzZXQoV2Vi
Q29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxi
YWNrLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKICAgICBw
YWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwKKyAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaWRsCiAgICAg
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VT
ZXJ2ZXJUaW1pbmcuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQu
eGNmaWxlbGlzdAppbmRleCA2NjIyOTIxZmU4MDc5YTMwMDhiYTQzODIxNDMyY2U5ZjQ1NmM4ZGRh
Li43MTA3NDY5NTE5MGJmZGU0NjA0MjM4MGYzY2ZiYTAzNTY2ZGEyYTdkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTEyMDEsNiArMTIw
MSw3IEBAICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5pZGwKICQo
UFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmlkbAogJChQUk9KRUNUX0RJUikv
cGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9Q
ZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCiskKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNr
LmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0Lmlk
bApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmls
ZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApp
bmRleCBkZDJiZGRlMzY5ZTM5ZmI1YTlkNjhhZTcwY2I2YzFkYmFhYTFmMDI2Li5lYjUzNGQzZDJj
Mzc1MGZjZTU0MzkxMWUwNzk0OTY5YjVlY2M5ZjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtMTYwNCw2ICsxNjA0LDggQEAgJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1l
YXN1cmVPcHRpb25zLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5h
dmlnYXRpb24uaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCAyMjkyNmJjNjJjMzc1ZGM0M2Y3ZjdjZGJjMTBiYTJi
N2ZkZDkzY2ZmLi4zNjg3YTdmNTYyZTNiODE3YzhiNmNkZjA0ZWU0MTk3NzEwMGEyZmE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTEwNTQsNiArMTA1NCw3IEBAIEpTX0JJTkRJ
TkdfSURMUyA6PSBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwg
XAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgXAorICAgICQoV2Vi
Q29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCAyN2YyOTli
NmJlMjE0MGI4NTgyZWU3M2Y0NzMzZWRjODQxMmQ5Mjg0Li40ZjhlOWFkMzExYmM4NjgxNzVmYjAz
Zjg4Y2MyOWMxY2I5YjdiODI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTczNiw2ICsxNzM2LDcgQEAg
cGFnZS9QZXJmb3JtYW5jZU1hcmsuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIHBh
Z2UvUGVyZm9ybWFuY2VNb25pdG9yLmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uY3Bw
CitwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBhZ2Uv
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMzNTksNiArMzM2MCw3IEBAIEpTUGVy
Zm9ybWFuY2VNYXJrT3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQZXJm
b3JtYW5jZU1lYXN1cmVPcHRpb25zLmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitK
U1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5j
cHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9ic2Vy
dmVyRW50cnlMaXN0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDFjMzU5MTkwMmIxMjBiZDNhYjA2MGJkOGM1YjFiN2YyYWIz
YzE3YjkuLmE2MjNkNGIwODMwZWJiYzRmNmIzMTg0OTRhM2ExNTAzMmEyYjI4NzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2
MDQ2LDYgKzE2MDQ2LDkgQEAKIAkJREVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyNTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTI1NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTI1NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OwogCQlERUNBN0ZGNTFGOUZFOUJBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ni5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU2
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMjU2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJ
CURGMTlFMkFBMjQ3NzI5QTYwMDdCREFDQiAvKiBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVC
bG9ja2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRSZWxheFRo
aXJkUGFydHlDb29raWVCbG9ja2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlE
RjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA2MjVBOTg0QzgwMDVEREI4QyAvKiBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA3
MjVBOTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCURGNEUzOERDMjUyNzk1OTMwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY0RTM4REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZl
cnNpb25DaGVja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVyc2lvbkNo
ZWNrcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjdFOUEyOTRDN0FBQ0UwQUQ4
OUIzREQgLyogTWF0aE1MT3BlcmF0b3JEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjI0NTAsNiArMjI0NTMsOSBAQAogCQkJCThBRjRFNTUyMTFEQzVBMzYw
MDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAogCQkJCThBRjRFNTUzMTFE
QzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKIAkJCQk4QUY0RTU1
NDExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCAqLywKKwkJCQlE
RjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCAqLywKKwkJCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmggKi8sCisJCQkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZy5pZGwgKi8sCiAJCQkJQTVBOTkzMzUxRTM3RkFGRDAwNUI1RTRE
IC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwICovLAogCQkJCUE1QTk5MzM2MUUzN0ZBRkQwMDVC
NUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmggKi8sCiAJCQkJQTVBOTkzMzcxRTM3RkFGRDAw
NUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsICovLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKaW5kZXgg
YmJmODExMTQyZGFiOWU2YTkyY2I1YzZjZmFiMDZiMjQ1OGJhNzE0MC4uZGZjZDhjMWViOTY0NDkx
MzE0NDdlMmYyN2M5ZDZiZWM1YWM2NzlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBAIC0zNSwxMCArMzUs
MTIgQEAKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNl
TWFyay5oIgogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiSlNQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUGFp
bnRUaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUu
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oIgogCkBAIC00OCwxOCArNTAsMjAgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogSlNW
YWx1ZSB0b0pTTmV3bHlDcmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgUmVmPFBlcmZvcm1hbmNlRW50cnk+JiYgZW50cnkpCiB7Ci0gICAgaWYg
KGlzPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0
ZVdyYXBwZXI8UGVyZm9ybWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVu
dHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZW50cnkpKQot
ICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihn
bG9iYWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1h
cms+KGVudHJ5KSkKKyAgICBzd2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSB7
CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uOgorICAgICAgICBy
ZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+KGdsb2JhbE9i
amVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6
TWFyazoKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VNYXJrPihnbG9i
YWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1lYXN1
cmU+KGVudHJ5KSkKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1lYXN1cmU6CiAg
ICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWVhc3VyZT4oZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpS
ZXNvdXJjZToKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3Jt
YW5jZUVudHJ5OjpUeXBlOjpQYWludDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVy
Zm9ybWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAg
fQogCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8
UGVyZm9ybWFuY2VFbnRyeT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IGVhNDJmMzM0MWE2YTU3ZWEwYzVhOWUxMTE4MjRmNWU1
MTIwZGYwMWIuLjIzZGY2ZjA3NTkzOWU4OTJjMWM3OTM4MjQ4NzYxYzQ1MTQ2OTMxYjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMTM5MCwxMyArMTM5MCwxMyBAQCB2b2lkIERvY3VtZW50
OjpzZXRSZWFkeVN0YXRlKFJlYWR5U3RhdGUgcmVhZHlTdGF0ZSkKICAgICAgICAgaWYgKCFtX2Rv
Y3VtZW50VGltaW5nLmRvbUxvYWRpbmcpCiAgICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRv
bUxvYWRpbmcgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBJbnRlcmFjdGl2ZToKLSAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0
aXZlKQotICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSA9IE1vbm90
b25pY1RpbWU6Om5vdygpOwotICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlOgogICAg
ICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUpCiAgICAgICAgICAgICBtX2Rv
Y3VtZW50VGltaW5nLmRvbUNvbXBsZXRlID0gTW9ub3RvbmljVGltZTo6bm93KCk7CisgICAgICAg
IEZBTExUSFJPVUdIOworICAgIGNhc2UgSW50ZXJhY3RpdmU6CisgICAgICAgIGlmICghbV9kb2N1
bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKKyAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcu
ZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7CiAg
ICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCBlMzI1
ZjJkMDkxNDMyZTAzNmM3YWI1YTkxNTEyZDAwOTkxYmFkYzhlLi43ZjExOWYxMTU4ZjFhYjY5M2Nl
MmNmMTRhNDBkYjkxNGE5ZmMwNWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExv
YWRlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAKICNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3Mu
aCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQYWdlLmgi
CisjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5j
bHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUG9saWN5Q2hlY2tlci5oIgpA
QCAtNDExLDcgKzQxMiw3IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZygpIGNvbnN0
CiAgICAgcmV0dXJuIGlzTG9hZGluZ01haW5SZXNvdXJjZSgpIHx8ICFtX3N1YnJlc291cmNlTG9h
ZGVycy5pc0VtcHR5KCkgfHwgIW1fcGx1Z0luU3RyZWFtTG9hZGVycy5pc0VtcHR5KCk7CiB9CiAK
LXZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNv
dXJjZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6Om5v
dGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAjaWYgRU5B
QkxFKENPTlRFTlRfRklMVEVSSU5HKQpAQCAtNDE5LDYgKzQyMCwxMSBAQCB2b2lkIERvY3VtZW50
TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5l
dHdvcmtMb2FkTQogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAorICAgIGlmIChhdXRvKiBkb2N1
bWVudCA9IHRoaXMtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIGRvbVdpbmRvdyA9
IGRvY3VtZW50LT5kb21XaW5kb3coKSkKKyAgICAgICAgICAgIGRvbVdpbmRvdy0+cGVyZm9ybWFu
Y2UoKS5hZGROYXZpZ2F0aW9uVGltaW5nKCp0aGlzLCAqZG9jdW1lbnQsIHJlc291cmNlLCB0aW1p
bmcoKSwgbWV0cmljcyk7CisgICAgfQorCiAgICAgQVNTRVJUX1VOVVNFRChyZXNvdXJjZSwgbV9t
YWluUmVzb3VyY2UgPT0gJnJlc291cmNlKTsKICAgICBBU1NFUlQobV9tYWluUmVzb3VyY2UpOwog
ICAgIGlmICghbV9tYWluUmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhbV9tYWluUmVzb3Vy
Y2UtPndhc0NhbmNlbGVkKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIu
Y3BwCmluZGV4IDA3NWZiMWZhZWRmZWYzNDIwOGE4MWFiYzNiZjEyOTE0MzI3NGEyNDMuLjI0Njcz
MDI3YjcwNjM1YjEyOWQwMWI5ZTQyZTU5YmM0MWU5MzYyNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNzMzLDEwICs3MzMsOSBAQCB2b2lkIFJlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZl
cj4mJiBidWZmZQogICAgIGRpZFJlY2VpdmVCdWZmZXIoV1RGTW92ZShidWZmZXIpLCBlbmNvZGVk
RGF0YUxlbmd0aCwgRGF0YVBheWxvYWRCeXRlcyk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkZXI6
OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKQordm9pZCBSZXNvdXJjZUxvYWRlcjo6
ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmlj
cyYgbWV0cmljcykKIHsKLSAgICBOZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAg
IGRpZEZpbmlzaExvYWRpbmcoZW1wdHlNZXRyaWNzKTsKKyAgICBkaWRGaW5pc2hMb2FkaW5nKG1l
dHJpY3MpOwogfQogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxl
KiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZUxvYWRlci5oCmluZGV4IGIyZjZhNWVjYjNiZWEwNGU5YmZhOGQxZWU3NjYyYzMyYzFkZjNkMTUu
LmE0Mzc2ZDUwMTFiZjgyODZmYjQ3ZmMzMzg0ZjI5YjVjM2RjMzI2NTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCkBAIC0yMDAsNyArMjAwLDcgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIHdpbGxTZW5kUmVxdWVzdEFzeW5jKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1
ZXN0JiYsIFJlc291cmNlUmVzcG9uc2UmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZXNvdXJj
ZVJlcXVlc3QmJik+JiYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3Vy
Y2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkg
b3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVm
PFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVuY29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJp
Y3MmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBS
ZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAgICAgdm9pZCB3YXNCbG9ja2VkKFJlc291cmNlSGFu
ZGxlKikgb3ZlcnJpZGU7CiAgICAgdm9pZCBjYW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikg
b3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1p
bmcuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAppbmRleCAx
NjgyMzRmNDdiY2JlMDc5NTA2MDU0MGE5YTFhYWU2ZWRiNDUxNmE3Li41Yzc2NWExNDVjNTk4MjFj
YzcxNTE2ZjRmMWNlZjgwODBhNjhjZDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZVRpbWluZy5jcHAKQEAgLTYyLDkgKzYyLDkgQEAgUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1p
bmc6OmZyb21DYWNoZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IKICAg
ICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIHJlc3Bv
bnNlLCBzZWN1cml0eU9yaWdpbik7CiB9CiAKLVJlc291cmNlVGltaW5nIFJlc291cmNlVGltaW5n
Ojpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IFN0cmluZyYgaW5pdGlh
dG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJp
Y3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3Jp
Z2luKQorUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKENhY2hlZFJlc291
cmNlJiByZXNvdXJjZSwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBj
b25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQog
ewotICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyhyZXNvdXJjZS5yZXNvdXJjZVJlcXVlc3QoKS51
cmwoKSwgaW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJlc291cmNl
LnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKKyAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmco
dXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2Uu
cmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOwogfQogCiBSZXNvdXJjZVRpbWluZyBSZXNvdXJj
ZVRpbWluZzo6ZnJvbVN5bmNocm9ub3VzTG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtM
b2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAppbmRleCA2NGY4N2NiM2JmZGI1MTVkNmM0ZTM4Mzk0
ZmJjNGUzYWQ1M2UzMGI3Li45Y2RjNzk0MTNkYmI1NjU0NTFkOGVmMDExMjM0MjM0MTUxM2IwZmZm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaApAQCAtNDEsMTMgKzQxLDEz
IEBAIGNsYXNzIFJlc291cmNlVGltaW5nIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
IHB1YmxpYzoKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUNhY2hlKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7Ci0gICAgc3RhdGljIFJlc291cmNl
VGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3Is
IGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBTZWN1
cml0eU9yaWdpbiYpOworICAgIHN0YXRpYyBSZXNvdXJjZVRpbWluZyBmcm9tTG9hZChDYWNoZWRS
ZXNvdXJjZSYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2Fk
VGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4m
KTsKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbVN5bmNocm9ub3VzTG9hZChjb25zdCBV
UkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBTZWN1cml0
eU9yaWdpbiYpOwogCiAgICAgVVJMIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CiAgICAg
U3RyaW5nIGluaXRpYXRvcigpIGNvbnN0IHsgcmV0dXJuIG1faW5pdGlhdG9yOyB9Ci0gICAgTG9h
ZFRpbWluZyBsb2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9sb2FkVGltaW5nOyB9Ci0gICAg
TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0IHsgcmV0dXJuIG1f
bmV0d29ya0xvYWRNZXRyaWNzOyB9CisgICAgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWluZygp
IGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQorICAgIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrTG9hZE1l
dHJpY3M7IH0KICAgICBib29sIGFsbG93VGltaW5nRGV0YWlscygpIGNvbnN0IHsgcmV0dXJuIG1f
YWxsb3dUaW1pbmdEZXRhaWxzOyB9CiAgICAgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRp
bWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCk7CiAgICAgUmVzb3VyY2VUaW1pbmcgaXNvbGF0
ZWRDb3B5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVz
b3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVy
LmNwcAppbmRleCAwMGM5ZDg3MDMzNzc5MDU2ODdmYTZkMDM0NTUxNjQwMjc2NWQyNDI2Li5hNmIz
MTEwNDQ5ODQ3YmEyMTM5NzUwMmIxMzcyOWYyZjU3ZWM2OTM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg5Niw3ICs4OTYsNyBAQCB2b2lkIFN1
YnJlc291cmNlTG9hZGVyOjpyZXBvcnRSZXNvdXJjZVRpbWluZyhjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMbwogICAgICAgICByZXR1cm47CiAKICAgICBTZWN1cml0eU9yaWdpbiYg
b3JpZ2luID0gbV9vcmlnaW4gPyAqbV9vcmlnaW4gOiBkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4o
KTsKLSAgICBhdXRvIHJlc291cmNlVGltaW5nID0gUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKCpt
X3Jlc291cmNlLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0
d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOworICAgIGF1dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNv
dXJjZVRpbWluZzo6ZnJvbUxvYWQoKm1fcmVzb3VyY2UsIG1fcmVzb3VyY2UtPnJlc291cmNlUmVx
dWVzdCgpLnVybCgpLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywg
bmV0d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOwogCiAgICAgLy8gV29ya2VyIHJlc291cmNlcyBs
b2FkZWQgaGVyZSBhcmUgYWxsIENhY2hlZFJhd1Jlc291cmNlcyBsb2FkZWQgdGhyb3VnaCBXb3Jr
ZXJUaHJlYWRhYmxlTG9hZGVyLgogICAgIC8vIFBhc3MgdGhlIFJlc291cmNlVGltaW5nIGluZm9y
bWF0aW9uIG9uIHNvIHRoYXQgV29ya2VyVGhyZWFkYWJsZUxvYWRlciBtYXkgYWRkIHRoZW0gdG8g
dGhlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCmluZGV4IDc2NjkwODVlNWQ4ZjgyMmRk
M2IxNzI2ZjBkYWM0ZTZkZjI2YzFmMTEuLmMyYWU2ZmM1ZGJiYzJmNmFkMDc1ZmU0ODc3NDRiMTQy
YjRkYWE5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCkBAIC00Myw2ICs0Myw3
IEBACiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZv
cm1hbmNlTWVhc3VyZU9wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb24u
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZU9ic2VydmVyLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5o
IgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKQEAgLTEyMiw2ICsxMjMs
OSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50
cmllcygpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50
cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcpCisgICAgICAgIGVudHJpZXMuYXBw
ZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jl
c291cmNlVGltaW5nQnVmZmVyKTsKIAogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE0MCw2
ICsxNDQsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6
Z2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudAogewogICAgIFZlY3RvcjxSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5n
ICYmIGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1f
bmF2aWdhdGlvblRpbWluZyk7CisgICAgCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2Ui
KQogICAgICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsK
IApAQCAtMTYxLDYgKzE2OCw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBl
cmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtCiB7CiAgICAgVmVj
dG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmln
YXRpb25UaW1pbmcgJiYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUgPT0gIm5hdmln
YXRpb24iKSAmJiBuYW1lID09IG1fbmF2aWdhdGlvblRpbWluZy0+bmFtZSgpKQorICAgICAgICBl
bnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAgICAgaWYgKGVudHJ5VHlwZS5p
c051bGwoKSB8fCBlbnRyeVR5cGUgPT0gInJlc291cmNlIikgewogICAgICAgICBmb3IgKGF1dG8m
IHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAgICAgaWYgKHJl
c291cmNlLT5uYW1lKCkgPT0gbmFtZSkKQEAgLTE4NCw2ICsxOTQsOSBAQCBWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5TmFtZShjb25zdCBT
dHJpbmcmIG5hbQogCiB2b2lkIFBlcmZvcm1hbmNlOjphcHBlbmRCdWZmZXJlZEVudHJpZXNCeVR5
cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUsIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eT4+JiBlbnRyaWVzKSBjb25zdAogeworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50
cnlUeXBlID09ICJuYXZpZ2F0aW9uIikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0
aW9uVGltaW5nKTsKKwogICAgIGlmIChlbnRyeVR5cGUgPT0gInJlc291cmNlIikKICAgICAgICAg
ZW50cmllcy5hcHBlbmRWZWN0b3IobV9yZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKQEAgLTIxNCw2
ICsyMjcsMTIgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQo
KQogICAgIHF1ZXVlRW50cnkoKm1fZmlyc3RDb250ZW50ZnVsUGFpbnQpOwogfQogCit2b2lkIFBl
cmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiBkb2N1bWVudExv
YWRlciwgRG9jdW1lbnQmIGRvY3VtZW50LCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0
IExvYWRUaW1pbmcmIHRpbWluZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQor
eworICAgIG1fbmF2aWdhdGlvblRpbWluZyA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6
Y3JlYXRlKG1fdGltZU9yaWdpbiwgcmVzb3VyY2UsIHRpbWluZywgbWV0cmljcywgZG9jdW1lbnQu
dGltaW5nKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLnRyaWdn
ZXJpbmdBY3Rpb24oKS50eXBlKCkpOworICAgIHF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWlu
Zyk7Cit9CisKIHZvaWQgUGVyZm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGlt
aW5nJiYgcmVzb3VyY2VUaW1pbmcpCiB7CiAgICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKSk7CkBAIC0zNDYsNiArMzY1LDExIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnJlbW92ZUFsbE9i
c2VydmVycygpCiB2b2lkIFBlcmZvcm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIo
UGVyZm9ybWFuY2VPYnNlcnZlciYgb2JzZXJ2ZXIpCiB7CiAgICAgbV9vYnNlcnZlcnMuYWRkKCZv
YnNlcnZlcik7CisKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIG9ic2VydmVyLnR5cGVG
aWx0ZXIoKS5jb250YWlucyhQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uKSkgewor
ICAgICAgICBvYnNlcnZlci5xdWV1ZUVudHJ5KCptX25hdmlnYXRpb25UaW1pbmcpOworICAgICAg
ICBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOworICAgIH0KIH0KIAogdm9pZCBQZXJmb3JtYW5jZTo6
dW5yZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIoUGVyZm9ybWFuY2VPYnNlcnZlciYgb2JzZXJ2
ZXIpCkBAIC0zNTcsNyArMzgxLDcgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJm
b3JtYW5jZUVudHJ5JiBlbnRyeSkKIHsKICAgICBib29sIHNob3VsZFNjaGVkdWxlVGFzayA9IGZh
bHNlOwogICAgIGZvciAoYXV0byYgb2JzZXJ2ZXIgOiBtX29ic2VydmVycykgewotICAgICAgICBp
ZiAob2JzZXJ2ZXItPnR5cGVGaWx0ZXIoKS5jb250YWlucyhlbnRyeS50eXBlKCkpKSB7CisgICAg
ICAgIGlmIChvYnNlcnZlci0+dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnBlcmZvcm1hbmNl
RW50cnlUeXBlKCkpKSB7CiAgICAgICAgICAgICBvYnNlcnZlci0+cXVldWVFbnRyeShlbnRyeSk7
CiAgICAgICAgICAgICBzaG91bGRTY2hlZHVsZVRhc2sgPSB0cnVlOwogICAgICAgICB9CkBAIC0z
NjYsNiArMzkwLDExIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkoUGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpCiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZVRhc2spCiAgICAgICAgIHJldHVy
bjsKIAorICAgIHNjaGVkdWxlVGFza0lmTmVlZGVkKCk7Cit9CisKK3ZvaWQgUGVyZm9ybWFuY2U6
OnNjaGVkdWxlVGFza0lmTmVlZGVkKCkKK3sKICAgICBpZiAobV9oYXNTY2hlZHVsZWRUaW1pbmdC
dWZmZXJEZWxpdmVyeVRhc2spCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZS5oCmluZGV4IDk5ZjI1NGIzYzk1MDk2YTVjZmQzNGMyZTkwZjlkY2RjMzg3NDY0YzguLjVl
NDY4NjRiZmQwNzcxMTQzNDk4ZmVjYTRlNTUwOTU1NjMzODYzNmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlLmgKQEAgLTQ4LDEyICs0OCwxNyBAQCBjbGFzcyBKU0dsb2JhbE9iamVjdDsKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBDYWNoZWRSZXNvdXJjZTsKK2NsYXNzIERvY3Vt
ZW50OworY2xhc3MgRG9jdW1lbnRMb2FkZXI7CiBjbGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0
d29ya0xvYWRNZXRyaWNzOwogY2xhc3MgUGVyZm9ybWFuY2VVc2VyVGltaW5nOwogY2xhc3MgUGVy
Zm9ybWFuY2VFbnRyeTsKIGNsYXNzIFBlcmZvcm1hbmNlTWFyazsKIGNsYXNzIFBlcmZvcm1hbmNl
TWVhc3VyZTsKIGNsYXNzIFBlcmZvcm1hbmNlTmF2aWdhdGlvbjsKK2NsYXNzIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzsKIGNsYXNzIFBlcmZvcm1hbmNlT2JzZXJ2ZXI7CiBjbGFzcyBQZXJm
b3JtYW5jZVBhaW50VGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VUaW1pbmc7CkBAIC05MCw2ICs5
NSw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxSZWY8UGVyZm9ybWFuY2VNZWFzdXJlPj4g
bWVhc3VyZShKU0M6OkpTR2xvYmFsT2JqZWN0JiwgY29uc3QgU3RyaW5nJiBtZWFzdXJlTmFtZSwg
T3B0aW9uYWw8U3RhcnRPck1lYXN1cmVPcHRpb25zPiYmLCBjb25zdCBTdHJpbmcmIGVuZE1hcmsp
OwogICAgIHZvaWQgY2xlYXJNZWFzdXJlcyhjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lKTsKIAor
ICAgIHZvaWQgYWRkTmF2aWdhdGlvblRpbWluZyhEb2N1bWVudExvYWRlciYsIERvY3VtZW50Jiwg
Q2FjaGVkUmVzb3VyY2UmLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJik7CiAgICAgdm9pZCBhZGRSZXNvdXJjZVRpbWluZyhSZXNvdXJjZVRpbWluZyYmKTsKIAog
ICAgIHZvaWQgcmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQoKTsKQEAgLTEyMSw2ICsxMjcsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgcmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsVGltZXJGaXJlZCgp
OwogCiAgICAgdm9pZCBxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkmKTsKKyAgICB2b2lkIHNj
aGVkdWxlVGFza0lmTmVlZGVkKCk7CiAKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZU5h
dmlnYXRpb24+IG1fbmF2aWdhdGlvbjsKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZVRp
bWluZz4gbV90aW1pbmc7CkBAIC0xMzksNiArMTQ2LDcgQEAgcHJpdmF0ZToKIAogICAgIE1vbm90
b25pY1RpbWUgbV90aW1lT3JpZ2luOwogCisgICAgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZz4gbV9uYXZpZ2F0aW9uVGltaW5nOwogICAgIFJlZlB0cjxQZXJmb3JtYW5jZVBhaW50
VGltaW5nPiBtX2ZpcnN0Q29udGVudGZ1bFBhaW50OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxQZXJm
b3JtYW5jZVVzZXJUaW1pbmc+IG1fdXNlclRpbWluZzsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnkuaAppbmRleCBhZmFjZmIwOTBiMjFjYmE2MTRkNzhjZTg4YWM3NTNlMjY3M2Ux
MjY1Li5iOGE4MmUwMDZmZGEwN2FkNTg3MTcwZTU5Mjk0MTllY2YyMDYyMTA3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaApAQCAtNDcsNyArNDcsNyBAQCBwdWJsaWM6CiAg
ICAgZG91YmxlIHN0YXJ0VGltZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9CiAgICAg
ZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQogCi0gICAgZW51
bSBjbGFzcyBUeXBlIHsKKyAgICBlbnVtIGNsYXNzIFR5cGUgOiB1aW50OF90IHsKICAgICAgICAg
TmF2aWdhdGlvbiAgPSAxIDw8IDAsCiAgICAgICAgIE1hcmsgICAgICAgID0gMSA8PCAxLAogICAg
ICAgICBNZWFzdXJlICAgICA9IDEgPDwgMiwKQEAgLTU1LDE2ICs1NSwxMSBAQCBwdWJsaWM6CiAg
ICAgICAgIFBhaW50ICAgICAgID0gMSA8PCA0CiAgICAgfTsKIAotICAgIHZpcnR1YWwgVHlwZSB0
eXBlKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgp
IGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCA9
IDA7CiAKICAgICBzdGF0aWMgT3B0aW9uYWw8VHlwZT4gcGFyc2VFbnRyeVR5cGVTdHJpbmcoY29u
c3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0gICAgYm9vbCBpc1Jlc291cmNlKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZSgpID09IFR5cGU6OlJlc291cmNlOyB9Ci0gICAgYm9vbCBpc01hcmsoKSBjb25z
dCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6TWFyazsgfQotICAgIGJvb2wgaXNNZWFzdXJlKCkg
Y29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6Ok1lYXN1cmU7IH0KLSAgICBib29sIGlzUGFp
bnQoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6UGFpbnQ7IH0KLQogICAgIHN0YXRp
YyBib29sIHN0YXJ0VGltZUNvbXBhcmVMZXNzVGhhbihjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeT4mIGEsIGNvbnN0IFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5PiYgYikKICAgICB7CiAgICAg
ICAgIHJldHVybiBhLT5zdGFydFRpbWUoKSA8IGItPnN0YXJ0VGltZSgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VNYXJrLmgKaW5kZXggYzczYjIzMTJmMzJhMDRjODIxYzhkMGVjYTg3N2Vh
YmIzM2ZlNGUyZi4uYjc1MTRmMDE1MzU4MDlkYWI1M2NjYWMwNjRjNTJiMGYxOGViNmM2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJp
dmF0ZToKICAgICBQZXJmb3JtYW5jZU1hcmsoY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3Rh
cnRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmKTsKICAgICB+UGVyZm9ybWFuY2VN
YXJrKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJr
OyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IFR5cGU6Ok1hcms7IH0KICAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gIm1hcmsiX3M7IH0KIAogICAgIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1f
c2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lB
TElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZU1hcmspCi0gICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7
IHJldHVybiBlbnRyeS5pc01hcmsoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKaW5kZXggMzVkYjZhMTY2YjU3
ZWU4NmU2MzA4MzJkZjQyNjg1NWQ5N2E3ZmJmNS4uMmQyYWEzZWUxMjk1MjEyZTE2ZWRlNmUzZGRj
ODBmYzY0ZGUyNmY2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU1lYXN1cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5o
CkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToKICAgICBQZXJmb3JtYW5jZU1lYXN1cmUoY29u
c3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRUaW1lLCBkb3VibGUgZW5kVGltZSwgUmVmPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkZXRhaWwpOwogICAgIH5QZXJmb3JtYW5jZU1lYXN1cmUo
KTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7
IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
VHlwZTo6TWVhc3VyZTsgfQogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAibWVhc3VyZSJfczsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1T
UEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWVhc3VyZSkK
LSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYg
ZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWVhc3VyZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJB
SVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjE4N2Q0N2ZkN2IyMDM4MzkwMjg5ODVkY2ZlOWM5
YWIyOWNiYTk3NAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApAQCAtMCwwICsxLDEyMyBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oIgorCisjaW5jbHVkZSAiQ2FjaGVkUmVzb3Vy
Y2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVRpbWluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK3N0YXRpYyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlIHRv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUoTmF2aWdhdGlvblR5cGUg
bmF2aWdhdGlvblR5cGUpCit7CisgICAgc3dpdGNoIChuYXZpZ2F0aW9uVHlwZSkgeworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3YXJkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6QmFja19mb3J3YXJkOworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OlJlbG9hZDoKKyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6OlJlbG9hZDsKKyAgICBjYXNlIE5hdmlnYXRp
b25UeXBlOjpMaW5rQ2xpY2tlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtU3VibWl0
dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1SZXN1Ym1pdHRlZDoKKyAgICBjYXNl
IE5hdmlnYXRpb25UeXBlOjpPdGhlcjoKKyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6Ok5hdmlnYXRlOworICAgIH0KKyAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpO
YXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7Cit9CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
Q2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MsIGNvbnN0IERvY3VtZW50VGltaW5nJiBk
b2N1bWVudFRpbWluZywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbiwgV2ViQ29yZTo6TmF2
aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCisgICAgOiBQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nKHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChyZXNvdXJjZSwgcmVzb3Vy
Y2UucmVzcG9uc2UoKS51cmwoKSwgIm5hdmlnYXRpb24iX3MsIGxvYWRUaW1pbmcsIG1ldHJpY3Ms
IG9yaWdpbiksIGxvYWRUaW1pbmcudW5sb2FkRXZlbnRTdGFydCgpKQorICAgICwgbV9kb2N1bWVu
dFRpbWluZyhkb2N1bWVudFRpbWluZykKKyAgICAsIG1fbmF2aWdhdGlvblR5cGUodG9QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZShuYXZpZ2F0aW9uVHlwZSkpIHsgfQor
CitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6On5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcoKSA9IGRlZmF1bHQ7CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Om1p
bGxpc2Vjb25kc1NpbmNlT3JpZ2luKE1vbm90b25pY1RpbWUgdGltZSwgT3B0aW9uYWw8TW9ub3Rv
bmljVGltZT4gdGltZU9yaWdpbikgY29uc3QKK3sKKyAgICBpZiAoIXRpbWUpCisgICAgICAgIHJl
dHVybiAwOworICAgIHJldHVybiBQZXJmb3JtYW5jZTo6cmVkdWNlVGltZVJlc29sdXRpb24odGlt
ZSAtICh0aW1lT3JpZ2luID8gKnRpbWVPcmlnaW4gOiBtX3RpbWVPcmlnaW4pKS5taWxsaXNlY29u
ZHMoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZl
bnRTdGFydCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1f
bG9hZFRpbWluZy51bmxvYWRFdmVudFN0YXJ0KCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1p
bGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fbG9hZFRpbWluZy51bmxvYWRFdmVudEVuZCgpKTsKK30K
KworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tSW50ZXJhY3RpdmUoKSBj
b25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGlt
aW5nLmRvbUludGVyYWN0aXZlKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQoKSBjb25zdAoreworICAgIHJldHVybiBt
aWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbnRlbnRMb2FkZWRF
dmVudFN0YXJ0KTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRz
U2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQpOwor
fQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db21wbGV0ZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1p
bmcuZG9tQ29tcGxldGUpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojpsb2FkRXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNl
T3JpZ2luKG1fbG9hZFRpbWluZy5sb2FkRXZlbnRTdGFydCgpKTsKK30KKworZG91YmxlIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9sb2FkVGltaW5nLmxvYWRFdmVudEVuZCgpKTsK
K30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZSBQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUoKSBjb25zdAoreworICAgIHJldHVybiBtX25hdmln
YXRpb25UeXBlOworfQorCit1bnNpZ25lZCBzaG9ydCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnJlZGlyZWN0Q291bnQoKSBjb25zdAoreworICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRh
aWxzKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChtX2xvYWRUaW1pbmcuaGFzQ3Jvc3NP
cmlnaW5SZWRpcmVjdCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBtX2xvYWRU
aW1pbmcucmVkaXJlY3RDb3VudCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41ODFlNjdlYjgyNjg0NmE4ZTk4MDkzZmZiYTA0MzRkMWRkNWQxZGI5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuaApAQCAtMCwwICsxLDc3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSAiRG9jdW1lbnRUaW1pbmcuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmgiCisjaW5jbHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4KKyNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIENhY2hlZFJlc291cmNlOworY2xhc3MgTG9hZFRp
bWluZzsKK2NsYXNzIE5ldHdvcmtMb2FkTWV0cmljczsKK2NsYXNzIFNlY3VyaXR5T3JpZ2luOwor
ZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSA6IHVpbnQ4X3Q7CisKK2NsYXNzIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZyBmaW5hbCA6IHB1YmxpYyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
IHsKK3B1YmxpYzoKKyAgICBlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhfdCB7Cisg
ICAgICAgIE5hdmlnYXRlLAorICAgICAgICBSZWxvYWQsCisgICAgICAgIEJhY2tfZm9yd2FyZCwK
KyAgICAgICAgUHJlcmVuZGVyLAorICAgIH07CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBB
cmdzPiBzdGF0aWMgUmVmPFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZz4gY3JlYXRlKEFyZ3Mm
Ji4uLiBhcmdzKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZyhzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4pKTsgfQorICAgIH5QZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcoKTsKKworICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBUeXBlOjpOYXZpZ2F0aW9uOyB9CisgICAgQVNDSUlMaXRlcmFsIGVu
dHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJuYXZpZ2F0aW9uIl9zOyB9CisKKyAgICBk
b3VibGUgdW5sb2FkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRvdWJsZSB1bmxvYWRFdmVudEVu
ZCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21JbnRlcmFjdGl2ZSgpIGNvbnN0OworICAgIGRvdWJs
ZSBkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21Db250
ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29tcGxldGUoKSBjb25z
dDsKKyAgICBkb3VibGUgbG9hZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgbG9hZEV2
ZW50RW5kKCkgY29uc3Q7CisgICAgTmF2aWdhdGlvblR5cGUgdHlwZSgpIGNvbnN0OworICAgIHVu
c2lnbmVkIHNob3J0IHJlZGlyZWN0Q291bnQoKSBjb25zdDsKKworcHJpdmF0ZToKKyAgICBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNoZWRS
ZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBj
b25zdCBEb2N1bWVudFRpbWluZyYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiwgV2ViQ29yZTo6TmF2
aWdhdGlvblR5cGUpOworICAgIAorICAgIGRvdWJsZSBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihN
b25vdG9uaWNUaW1lLCBPcHRpb25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2luID0gV1RGOjpu
dWxsb3B0KSBjb25zdDsKKworICAgIERvY3VtZW50VGltaW5nIG1fZG9jdW1lbnRUaW1pbmc7Cisg
ICAgTmF2aWdhdGlvblR5cGUgbV9uYXZpZ2F0aW9uVHlwZTsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZTgxZTdmMTg3MjJkY2ZhYmE5MTliMzZlYmU4Nzc5
MTRmYjk4YzM5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisv
LyBodHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jZG9tLXBlcmZvcm1h
bmNlbmF2aWdhdGlvbnRpbWluZworCit0eXBlZGVmIGRvdWJsZSBET01IaWdoUmVzVGltZVN0YW1w
OworCitlbnVtIE5hdmlnYXRpb25UeXBlIHsKKyAgICAibmF2aWdhdGUiLAorICAgICJyZWxvYWQi
LAorICAgICJiYWNrX2ZvcndhcmQiLAorICAgICJwcmVyZW5kZXIiCit9OworCitbCisgICAgRXhw
b3NlZD1XaW5kb3cKK10gaW50ZXJmYWNlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyA6IFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgeworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUg
RE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAg
ICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudEVuZDsKKyAgICByZWFk
b25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tSW50ZXJhY3RpdmU7
CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkg
ICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbXBsZXRlOworICAgIHJl
YWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBsb2FkRXZlbnRTdGFy
dDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgbG9h
ZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgTmF2aWdhdGlvblR5cGUg
ICAgICB0eXBlOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQg
ICAgICByZWRpcmVjdENvdW50OworICAgIFtEZWZhdWx0XSBvYmplY3QgdG9KU09OKCk7Cit9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKaW5kZXggNDY0NzI2
N2QxMjg5ZGJiNmE1MzIwYTRhZmViMjA0NjBhYmYyODc2MS4uNTZmMzJhNWRlZDFjYTRjYWMzMTdl
YjFjOWE5OTA3ODA3MmI1ZDJmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU9ic2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwCkBAIC0xMDcsNiArMTA3LDExIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IFBlcmZv
cm1hbmNlT2JzZXJ2ZXI6Om9ic2VydmUoSW5pdCYmIGluaXQpCiAgICAgcmV0dXJuIHsgfTsKIH0K
IAorVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6
dGFrZVJlY29yZHMoKQoreworICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdlKG1fZW50cmllc1RvRGVs
aXZlciwgeyB9KTsKK30KKwogdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KCkK
IHsKICAgICBpZiAobV9wZXJmb3JtYW5jZSkKQEAgLTExNCw2ICsxMTksNyBAQCB2b2lkIFBlcmZv
cm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QoKQogCiAgICAgbV9yZWdpc3RlcmVkID0gZmFsc2U7
CiAgICAgbV9lbnRyaWVzVG9EZWxpdmVyLmNsZWFyKCk7CisgICAgbV90eXBlRmlsdGVyID0geyB9
OwogfQogCiB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnF1ZXVlRW50cnkoUGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpCkBAIC0xMzAsNyArMTM2LDcgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVy
OjpkZWxpdmVyKCkKICAgICBpZiAoIWNvbnRleHQpCiAgICAgICAgIHJldHVybjsKIAotICAgIFZl
Y3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXMgPSBXVEZNb3ZlKG1fZW50cmll
c1RvRGVsaXZlcik7CisgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmll
cyA9IHN0ZDo6ZXhjaGFuZ2UobV9lbnRyaWVzVG9EZWxpdmVyLCB7IH0pOwogICAgIGF1dG8gbGlz
dCA9IFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmNyZWF0ZShXVEZNb3ZlKGVudHJpZXMp
KTsKIAogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbEZpcmVPYnNlcnZlckNhbGxi
YWNrKCpjb250ZXh0LCAiUGVyZm9ybWFuY2VPYnNlcnZlciJfcyk7CkBAIC0xNDEsMTAgKzE0Nyw5
IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcigpCiBWZWN0b3I8U3RyaW5nPiBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpCiB7CiAgICAgVmVjdG9yPFN0cmluZz4gZW50cnlUeXBlcyA9IHsKLSAg
ICAgICAgLy8gRklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8xODQzNjM+IEFkZCBzdXBwb3J0
IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCi0gICAgICAgIC8vICJuYXZpZ2F0aW9uIl9z
LAogICAgICAgICAibWFyayJfcywKLSAgICAgICAgIm1lYXN1cmUiX3MKKyAgICAgICAgIm1lYXN1
cmUiX3MsCisgICAgICAgICJuYXZpZ2F0aW9uIl9zLAogICAgIH07CiAKICAgICBpZiAoaXM8RG9j
dW1lbnQ+KGNvbnRleHQpICYmIGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0KS5zdXBwb3J0c1Bh
aW50VGltaW5nKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCmlu
ZGV4IDI4NzJmMTdhYWI1YjU3NjZiZmM0OGNjNDgwMDA0YWRkOGJkZTFmZjkuLjQxOTMwNWQ0N2My
MTUyN2Q4ZTFjYmViNTdiY2U1YzBkODJjMmE3ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlci5oCkBAIC01Nyw2ICs1Nyw3IEBAIHB1YmxpYzoKIAogICAgIEV4Y2Vw
dGlvbk9yPHZvaWQ+IG9ic2VydmUoSW5pdCYmKTsKICAgICB2b2lkIGRpc2Nvbm5lY3QoKTsKKyAg
ICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiB0YWtlUmVjb3JkcygpOwogCiAgICAg
T3B0aW9uU2V0PFBlcmZvcm1hbmNlRW50cnk6OlR5cGU+IHR5cGVGaWx0ZXIoKSBjb25zdCB7IHJl
dHVybiBtX3R5cGVGaWx0ZXI7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5pZGwKaW5kZXggYjcwN2Y2NjAyZTMwOTdhYzIzN2NlYWM3MmU0YTdkMDY3MjYzNjUx
My4uNjgzYTJiZWEwMTQ1OTQzMjU3ZjljN2YyMDJlNmY1NWMzZGI0YmQwYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCkBAIC0zMyw4ICszMyw5IEBACiBd
IGludGVyZmFjZSBQZXJmb3JtYW5jZU9ic2VydmVyIHsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dF0gY29uc3RydWN0b3IoUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrIGNh
bGxiYWNrKTsKIAotICAgIHVuZGVmaW5lZCBvYnNlcnZlKFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0
IG9wdGlvbnMpOworICAgIHVuZGVmaW5lZCBvYnNlcnZlKG9wdGlvbmFsIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJJbml0IG9wdGlvbnMpOwogICAgIHVuZGVmaW5lZCBkaXNjb25uZWN0KCk7CisgICAgc2Vx
dWVuY2U8UGVyZm9ybWFuY2VFbnRyeT4gdGFrZVJlY29yZHMoKTsKICAgICBbQ2FsbFdpdGg9U2Ny
aXB0RXhlY3V0aW9uQ29udGV4dF0gc3RhdGljIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJh
eTxET01TdHJpbmc+IHN1cHBvcnRlZEVudHJ5VHlwZXM7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAppbmRleCBlMDM2
NjVhYWNiNzBiYjhmODYzOWFmNGJjN2FlMWQwNjBkYmIxZTQ2Li5kZDdmYzk3Y2EzOGY4M2UyNDU1
ZTkyNzA4MjM1MTUwMDNlOWE5Y2U5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgVmVjdG9y
PFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6
Z2V0RW50cmllc0J5TmFtZSgKICAgICBmb3IgKGF1dG8mIGVudHJ5IDogbV9lbnRyaWVzKSB7CiAg
ICAgICAgIGlmICghbmFtZS5pc051bGwoKSAmJiBlbnRyeS0+bmFtZSgpICE9IG5hbWUpCiAgICAg
ICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnR5cGUoKSAhPSAq
dHlwZSkKKyAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnBlcmZvcm1hbmNlRW50cnlUeXBlKCkg
IT0gKnR5cGUpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgZW50cmllcy5hcHBlbmQo
ZW50cnkuY29weVJlZigpKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VQYWludFRpbWluZy5oCmluZGV4IGEyODFiYTM4MjI0OGY4MjM2MGYzNzc4YjFiZmZmNTVlMzk2
ZTI1Y2YuLjcwZjgwODVmOWNjNzU4NzkwNDYyOTEwYzgwYWE3NGE2YmM3NzQwMmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCkBAIC00NCwxMyArNDQs
OSBAQCBwcml2YXRlOgogICAgIH0KIAogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiAicGFpbnQiX3M7IH0KLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBUeXBlOjpQYWludDsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpQYWludDsgfQogCiAgICAgflBlcmZvcm1hbmNl
UGFpbnRUaW1pbmcoKSA9IGRlZmF1bHQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VQYWludFRp
bWluZykKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzUGFpbnQoKTsgfQotU1BFQ0lBTElaRV9UWVBF
X1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAKaW5kZXggZGQ3MWFhN2NiMTc4YjNiMDg1ZTNhYTllMmM1YmIzY2YyMzdl
YjBhOS4uZjc3NDM0MzA5MzhiOWRhYjM5ZGY2NmI5MzkxMDE2MTNmMDY2NWRhYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC01
MywxOCArNTMsMjAgQEAgc3RhdGljIGRvdWJsZSBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgTW9ub3QKICAgICByZXR1cm4gUGVyZm9y
bWFuY2U6OnJlZHVjZVRpbWVSZXNvbHV0aW9uKHNlY29uZHMpLm1pbGxpc2Vjb25kcygpOwogfQog
Ci1zdGF0aWMgZG91YmxlIGVudHJ5U3RhcnRUaW1lKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
Y29uc3QgUmVzb3VyY2VUaW1pbmcmIHJlc291cmNlVGltaW5nKQorc3RhdGljIGRvdWJsZSBlbnRy
eVN0YXJ0VGltZShNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5n
JiByZXNvdXJjZVRpbWluZywgY29uc3QgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRp
b25VbmxvYWRFdmVudFN0YXJ0KQogewotICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1p
bmdEZXRhaWxzKCkpCi0gICAgICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKHRpbWVPcmlnaW4sIHJlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0
KCkpOworICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpIHsKKyAg
ICAgICAgTW9ub3RvbmljVGltZSBzdGFydFRpbWUgPSBuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFy
dCA/ICpuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydCA6IHJlc291cmNlVGltaW5nLmxvYWRUaW1p
bmcoKS5mZXRjaFN0YXJ0KCk7CisgICAgICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdo
UmVzVGltZVN0YW1wKHRpbWVPcmlnaW4sIHN0YXJ0VGltZSk7CisgICAgfQogCiAgICAgcmV0dXJu
IG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAodGltZU9yaWdpbiwgcmVzb3VyY2VU
aW1pbmcubG9hZFRpbWluZygpLnN0YXJ0VGltZSgpKTsKIH0KIAotc3RhdGljIGRvdWJsZSBlbnRy
eUVuZFRpbWUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBjb25zdCBSZXNvdXJjZVRpbWluZyYg
cmVzb3VyY2VUaW1pbmcpCitzdGF0aWMgZG91YmxlIGVudHJ5RW5kVGltZShNb25vdG9uaWNUaW1l
IHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5nJiByZXNvdXJjZVRpbWluZywgY29uc3Qg
T3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRpb25VbmxvYWRFdmVudFN0YXJ0KQogewog
ICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCi0gICAgICAgIHJl
dHVybiBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZyk7CisgICAgICAg
IHJldHVybiBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdh
dGlvblVubG9hZEV2ZW50U3RhcnQpOwogCiAgICAgaWYgKHJlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSkgewogICAgICAgICBTZWNvbmRzIGVuZFRpbWUgPSAo
cmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3RhcnQoKSArIHJlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKSAtIHRpbWVPcmlnaW47CkBAIC03NCwx
NSArNzYsMjcgQEAgc3RhdGljIGRvdWJsZSBlbnRyeUVuZFRpbWUoTW9ub3RvbmljVGltZSB0aW1l
T3JpZ2luLCBjb25zdCBSZXNvdXJjZVRpbWluZyYgcmVzb3UKICAgICByZXR1cm4gbW9ub3Rvbmlj
VGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcCh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZy5sb2Fk
VGltaW5nKCkucmVzcG9uc2VFbmQoKSk7CiB9CiAKK3N0YXRpYyBNb25vdG9uaWNUaW1lIGVudHJ5
VGltZU9yaWdpbihNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5n
JiByZXNvdXJjZVRpbWluZywgY29uc3QgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRp
b25VbmxvYWRFdmVudFN0YXJ0KQoreworICAgIGlmIChuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFy
dCkgeworICAgICAgICBhdXRvJiBsb2FkVGltaW5nID0gcmVzb3VyY2VUaW1pbmcubG9hZFRpbWlu
ZygpOworICAgICAgICBpZiAoIXJlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpCisg
ICAgICAgICAgICB8fCBsb2FkVGltaW5nLmhhc0Nyb3NzT3JpZ2luUmVkaXJlY3QoKQorICAgICAg
ICAgICAgfHwgIWxvYWRUaW1pbmcuaGFzU2FtZU9yaWdpbkFzUHJldmlvdXNEb2N1bWVudCgpKQor
ICAgICAgICAgICAgcmV0dXJuICpuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydDsKKyAgICB9Cisg
ICAgcmV0dXJuIHRpbWVPcmlnaW47Cit9CisKIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
PiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3RvbmljVGltZSB0aW1lT3Jp
Z2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQogewogICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcodGltZU9yaWdpbiwgV1RGTW92ZShy
ZXNvdXJjZVRpbWluZykpKTsKIH0KIAotUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGlt
aW5nJiYgcmVzb3VyY2VUaW1pbmcpCi0gICAgOiBQZXJmb3JtYW5jZUVudHJ5KHJlc291cmNlVGlt
aW5nLnVybCgpLnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRp
bWluZyksIGVudHJ5RW5kVGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZykpCitQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1Rp
bWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJiByZXNvdXJjZVRpbWluZywgT3B0aW9uYWw8
TW9ub3RvbmljVGltZT4gbmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQpCisgICAgOiBQZXJmb3Jt
YW5jZUVudHJ5KHJlc291cmNlVGltaW5nLnVybCgpLnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0
aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQpLCBl
bnRyeUVuZFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcsIG5hdmlnYXRpb25VbmxvYWRF
dmVudFN0YXJ0KSkKICAgICAsIG1faW5pdGlhdG9yVHlwZShyZXNvdXJjZVRpbWluZy5pbml0aWF0
b3IoKSkKLSAgICAsIG1fdGltZU9yaWdpbih0aW1lT3JpZ2luKQorICAgICwgbV90aW1lT3JpZ2lu
KGVudHJ5VGltZU9yaWdpbih0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVu
bG9hZEV2ZW50U3RhcnQpKQogICAgICwgbV9sb2FkVGltaW5nKHJlc291cmNlVGltaW5nLmxvYWRU
aW1pbmcoKSkKICAgICAsIG1fbmV0d29ya0xvYWRNZXRyaWNzKHJlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpKQogICAgICwgbV9zaG91bGRSZXBvcnREZXRhaWxzKHJlc291cmNlVGlt
aW5nLmFsbG93VGltaW5nRGV0YWlscygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaAppbmRleCA1ZDA3OWY0YzY2NTY1MjMxNWEwMDEyNDYzYzhj
ZGY5Y2U1MmVjNWExLi5kMTZmNjc0OTk5ZTdhM2UwNjIyNDNlM2RkN2EyNWI2MmE2YzBjYTM4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaApA
QCAtNDIsNyArNDIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBQZXJmb3JtYW5jZVNl
cnZlclRpbWluZzsKIGNsYXNzIFJlc291cmNlVGltaW5nOwogCi1jbGFzcyBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nIGZpbmFsIDogcHVibGljIFBlcmZvcm1hbmNlRW50cnkgeworY2xhc3MgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZyA6IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+IGNyZWF0ZShNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYpOwogCkBAIC02MSwxMyArNjEs
MTQgQEAgcHVibGljOgogICAgIGRvdWJsZSByZXF1ZXN0U3RhcnQoKSBjb25zdDsKICAgICBkb3Vi
bGUgcmVzcG9uc2VTdGFydCgpIGNvbnN0OwogICAgIGRvdWJsZSByZXNwb25zZUVuZCgpIGNvbnN0
OworCiAgICAgY29uc3QgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+JiBzZXJ2
ZXJUaW1pbmcoKSBjb25zdCB7IHJldHVybiBtX3NlcnZlclRpbWluZzsgfQogCi0gICAgVHlwZSB0
eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBBU0NJSUxp
dGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gInJlc291cmNlIl9zOyB9Cisg
ICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIFR5
cGU6OlJlc291cmNlOyB9CisgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IG92ZXJy
aWRlIHsgcmV0dXJuICJyZXNvdXJjZSJfczsgfQogCi1wcml2YXRlOgotICAgIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYm
KTsKK3Byb3RlY3RlZDoKKyAgICBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1Rp
bWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJiwgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4g
bmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQgPSBXVEY6Om51bGxvcHQpOwogICAgIH5QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nKCk7CiAKICAgICBkb3VibGUgbmV0d29ya0xvYWRUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKFNlY29uZHMpIGNvbnN0OwpAQCAtODEsNyArODIsMyBAQCBwcml2YXRl
OgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcpCi0gICAgc3RhdGljIGJv
b2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVy
biBlbnRyeS5pc1Jlc291cmNlKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCmlu
ZGV4IDQ2YThmMGYyNTExY2ViNWMwYzdkZDMxMTZjMmY4ZmE3N2ZjOGQ3ZGQuLmYwNjU2NmQ1ZTBm
YTdlMWZkMGI0NTk3ZjEwYjVmMjJlZjY2YTE2ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtNTAsNiArNTAsMTEgQEAgdHlw
ZWRlZiBkb3VibGUgRE9NSGlnaFJlc1RpbWVTdGFtcDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
RE9NSGlnaFJlc1RpbWVTdGFtcCByZXF1ZXN0U3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VTdGFydDsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCByZXNwb25zZUVuZDsKKworICAgIC8vIE5vdGU6IHRyYW5z
ZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFyZSBpbnRlbnRp
b25hbGx5IG9taXR0ZWQKKyAgICAvLyBiZWNhdXNlIG9mIHByaXZhY3kgY29uY2VybnMgc3VjaCBh
cyBodHRwczovL2dpdGh1Yi5jb20vdzNjL3Jlc291cmNlLXRpbWluZy9pc3N1ZXMvMjM4CisKKyAg
ICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvc2VydmVyLXRpbWluZy8jZXh0ZW5zaW9uLXRvLXRo
ZS1wZXJmb3JtYW5jZXJlc291cmNldGltaW5nLWludGVyZmFjZQogICAgIFtFbmFibGVkQXRSdW50
aW1lPVNlcnZlclRpbWluZ10gcmVhZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5PFBlcmZvcm1h
bmNlU2VydmVyVGltaW5nPiBzZXJ2ZXJUaW1pbmc7CiAKICAgICBbRGVmYXVsdF0gb2JqZWN0IHRv
SlNPTigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9i
UmVzb3VyY2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9i
UmVzb3VyY2VIYW5kbGUuY3BwCmluZGV4IDlmZjIzMzYyMzA0NWE4OTk0NDU1MmQ4MmJmM2E3MmYx
MjFiZDk4NzUuLjE0Nzc0ZjIzMjMyN2UxMTk4ZTM3NGJjMTg3NmFhOWU3OWM5NjhjYjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhh
bmRsZS5jcHAKQEAgLTYzNCw3ICs2MzQsNyBAQCBzdGF0aWMgdm9pZCBkb05vdGlmeUZpbmlzaChC
bG9iUmVzb3VyY2VIYW5kbGUmIGhhbmRsZSkKICAgICBpZiAoIWhhbmRsZS5jbGllbnQoKSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgaGFuZGxlLmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZo
YW5kbGUpOworICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmaGFuZGxlLCB7
IH0pOwogfQogCiB2b2lkIEJsb2JSZXNvdXJjZUhhbmRsZTo6bm90aWZ5RmluaXNoKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNz
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5o
CmluZGV4IGQ3MTA3YWE0NTY3ODE3YmUzYTVmNzkyMDQ0MzA2ZmVmNzBiOWJjYTEuLjE2OTY1ZWU5
YTUxN2E0NTU5NjE1MzY3Njc5NmY5OWJjYjM2ZjI1ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaApAQCAtMjAwLDcgKzIw
MCw3IEBAIHB1YmxpYzoKIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKLUJveDxOZXR3b3JrTG9h
ZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqLCBOU1VSTFJlc3BvbnNl
ICopOworQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0
aW9uICopOwogV0VCQ09SRV9FWFBPUlQgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWlu
Z0RhdGEoTlNVUkxTZXNzaW9uVGFza1RyYW5zYWN0aW9uTWV0cmljcyAqaW5jb21wbGV0ZU1ldHJp
Y3MpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaAppbmRleCA5YTgwZTExM2ZiNDgyODI5NGQ3YWZmY2Fl
MDI5ZWYwY2FmODVkZDE1Li5mYmEwMjMzYmVmYTJjZDRjMTYxNGY3MDU2YjRiMDc1Mzc5MzFlY2Vm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFu
ZGxlQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJj
ZUhhbmRsZUNsaWVudC5oCkBAIC00NCw2ICs0NCw3IEBAIE9CSkNfQ0xBU1MgTlNDYWNoZWRVUkxS
ZXNwb25zZTsKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlOwogY2xhc3MgQ3JlZGVudGlhbDsKK2NsYXNzIE5ldHdvcmtMb2FkTWV0cmljczsKIGNsYXNz
IFByb3RlY3Rpb25TcGFjZTsKIGNsYXNzIFJlc291cmNlSGFuZGxlOwogY2xhc3MgUmVzb3VyY2VF
cnJvcjsKQEAgLTY3LDcgKzY4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNl
aXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCB1bnNpZ25lZCwgaW50IC8qZW5j
b2RlZERhdGFMZW5ndGgqLykgeyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVCdWZmZXIoUmVzb3VyY2VIYW5kbGUqLCBSZWY8U2hhcmVkQnVmZmVyPiYmLCBpbnQg
ZW5jb2RlZERhdGFMZW5ndGgpOwogICAgIAotICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKFJlc291cmNlSGFuZGxlKikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRp
bmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSB7IH0KICAgICB2
aXJ0dWFsIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3Im
KSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgd2FzQmxvY2tlZChSZXNvdXJjZUhhbmRsZSopIHsgfQog
ICAgIHZpcnR1YWwgdm9pZCBjYW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikgeyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVy
Q2xpZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuY3BwCmluZGV4IGM3YzEyY2U4ZTc1MWE1MmJiNDUxN2RkMDJkNmY1OGFkZTY5
MTIwZWQuLjJhN2Y4ODQxMWI0YTEzOTViN2YzMTYwMDIxNjJhZTkzNzFmNGZlYjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGll
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuY3BwCkBAIC03Niw3ICs3Niw3IEBAIHZvaWQgU3luY2hyb25vdXNMb2FkZXJD
bGllbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhciogZGF0YSwK
ICAgICBtX2RhdGEuYXBwZW5kKGRhdGEsIGxlbmd0aCk7CiB9CiAKLXZvaWQgU3luY2hyb25vdXNM
b2FkZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSkKK3Zv
aWQgU3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5k
bGUqIGhhbmRsZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikKIHsKICAgICBtX21lc3NhZ2VR
dWV1ZS0+a2lsbCgpOwogI2lmIFBMQVRGT1JNKENPQ09BKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oCmluZGV4
IDhkMmE5NzcxOTMxNGZjODkyNWMyMmRiZmRlYzU4ZWY5MmIzMjdkYzQuLmY4OGRmZjdmOTM1YjYz
NTVlYTI3MTA0YWFlNWU0MmNmNmI0MjRkNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKQEAgLTY3LDcg
KzY3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3Zl
cnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VBc3luYyhSZXNvdXJjZUhhbmRsZSos
IFJlc291cmNlUmVzcG9uc2UmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKSBvdmVycmlk
ZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhcios
IHVuc2lnbmVkLCBpbnQgLyplbmNvZGVkRGF0YUxlbmd0aCovKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
ZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3Mm
KSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNv
dXJjZUVycm9yJikgb3ZlcnJpZGU7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxM
QkFDSykKICAgICB2b2lkIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2VBc3lu
YyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRl
V2l0aE9wZXJhdGlvblF1ZXVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1
ZS5jcHAKaW5kZXggM2M4MmJjM2I0YzY4NTliOGJhOTRhMzJiZTlhNDI2YTgzOTk2ZWM1MC4uMjRk
MTQ4NTgyMDVlMTIyZDJmYmVkZjFhMzkzZDdhODBlY2YyYzgxYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlv
bkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRo
T3BlcmF0aW9uUXVldWUuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiTUlNRVR5
cGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUg
IlJlc291cmNlSGFuZGxlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVDbGllbnQuaCIKICNp
bmNsdWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCkBAIC0yMzgsNyArMjM5LDcgQEAgdm9pZCBSZXNv
dXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRG
aW5pc2hMb2FkaW5nKCkKIAogICAgICAgICBMT0coTmV0d29yaywgIkNGTmV0IC0gUmVzb3VyY2VI
YW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNo
TG9hZGluZyhoYW5kbGU9JXApICglcykiLCBoYW5kbGUsIGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCku
dXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAKLSAgICAgICAgaGFuZGxlLT5jbGllbnQo
KS0+ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUpOworICAgICAgICBoYW5kbGUtPmNsaWVudCgpLT5k
aWRGaW5pc2hMb2FkaW5nKGhhbmRsZSwgTmV0d29ya0xvYWRNZXRyaWNzIHsgfSk7CiAgICAgICAg
IGlmIChwcm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1ZSkgewogICAgICAgICAgICAgcHJvdGVj
dGVkVGhpcy0+bV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICAgICAgICAgICAgIHByb3RlY3RlZFRo
aXMtPm1fbWVzc2FnZVF1ZXVlID0gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0KaW5kZXgg
NWIzYzg5OGJkMzAyN2RkZDU3MjQ5MTY2YWMxNGJlZWIxZTcwN2IyYS4uNjRhZWE0ZmQ1MmY5ZDVl
MmUzZDBiMzljNjMyMGRjOTZhN2ZkYTdmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0KQEAgLTY3
LDcgKzY3LDcgQEAgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxT
ZXNzaW9uVGFza1RyYW5zYWN0aW9uTWV0cmljcyAqaW5jb20KICAgICApOwogfQogCi1Cb3g8TmV0
d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rp
b24sIE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKQorQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29w
eVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25uZWN0aW9uKQogewogICAgIE5TRGljdGlv
bmFyeSAqdGltaW5nRGF0YSA9IFtjb25uZWN0aW9uIF90aW1pbmdEYXRhXTsKICAgICBpZiAoIXRp
bWluZ0RhdGEpCkBAIC04OSw3ICs4OSw3IEBAIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlU
aW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbiwgTlNVUkxSZXNwb25zCiAgICAg
ICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0RhdGEsIEAiX2tDRk5UaW1pbmdEYXRhUmVxdWVzdFN0YXJ0
IiksCiAgICAgICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0RhdGEsIEAiX2tDRk5UaW1pbmdEYXRhUmVz
cG9uc2VTdGFydCIpLAogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGlt
aW5nRGF0YUNvbm5lY3Rpb25SZXVzZWQiKSwKLSAgICAgICAgcmVzcG9uc2UuVVJMLnNjaGVtZQor
ICAgICAgICBjb25uZWN0aW9uLmN1cnJlbnRSZXF1ZXN0LlVSTC5zY2hlbWUKICAgICApOwogfQog
ICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2Vi
Q29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRp
b25RdWV1ZURlbGVnYXRlLm1tCmluZGV4IGQ0OTc4NjBkODc0NWNjMjIyNWZkMTNlZTZkMGQzMjgy
Njc0YTVjYTYuLjg0YmUzNGRmZjdjMjJlNDY4NTFmNTRlZDNjMDdhNTk2MGQ0NDA2NmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJj
ZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVl
RGVsZWdhdGUubW0KQEAgLTI1Miw3ICsyNTIsNyBAQCBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVO
VEFUSU9OU19FTkQKIAogICAgICAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc291cmNlUmVzcG9uc2Uo
ci5nZXQoKSk7CiAgICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0U291cmNlKFJlc291cmNlUmVz
cG9uc2U6OlNvdXJjZTo6TmV0d29yayk7Ci0gICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0RGVw
cmVjYXRlZE5ldHdvcmtMb2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgp
LCByLmdldCgpKSk7CisgICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0RGVwcmVjYXRlZE5ldHdv
cmtMb2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpKSk7CiAKICAgICAg
ICAgbV9oYW5kbGUtPmRpZFJlY2VpdmVSZXNwb25zZShXVEZNb3ZlKHJlc291cmNlUmVzcG9uc2Up
LCBbc2VsZiwgcHJvdGVjdGVkU2VsZiA9IFdURk1vdmUocHJvdGVjdGVkU2VsZildIHsKICAgICAg
ICAgICAgIG1fc2VtYXBob3JlLnNpZ25hbCgpOwpAQCAtMzE0LDExICszMTQsMjEgQEAgQUxMT1df
REVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKICAgICBMT0coTmV0d29yaywgIkhhbmRs
ZSAlcCBkZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzolcCIsIG1faGFuZGxlLCBj
b25uZWN0aW9uKTsKIAotICAgIGF1dG8gd29yayA9IFtzZWxmID0gc2VsZiwgcHJvdGVjdGVkU2Vs
ZiA9IHJldGFpblB0cihzZWxmKV0gKCkgbXV0YWJsZSB7CisgICAgYXV0byB3b3JrID0gW3NlbGYg
PSBzZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpLCBjb25uZWN0aW9uID0gcmV0
YWluUHRyKGNvbm5lY3Rpb24pXSAoKSBtdXRhYmxlIHsKICAgICAgICAgaWYgKCFtX2hhbmRsZSB8
fCAhbV9oYW5kbGUtPmNsaWVudCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIG1f
aGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSk7CisgICAgICAgIGlm
IChhdXRvIG1ldHJpY3MgPSBjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpKSkgeworICAg
ICAgICAgICAgZG91YmxlIHJlc3BvbnNlRW5kVGltZSA9IFtbW2Nvbm5lY3Rpb24gX3RpbWluZ0Rh
dGFdIG9iamVjdEZvcktleTpAIl9rQ0ZOVGltaW5nRGF0YVJlc3BvbnNlRW5kIl0gZG91YmxlVmFs
dWVdOworICAgICAgICAgICAgbWV0cmljcy0+cmVzcG9uc2VFbmQgPSBTZWNvbmRzKHJlc3BvbnNl
RW5kVGltZSA8PSAwID8gMCA6IHJlc3BvbnNlRW5kVGltZSAtIG1ldHJpY3MtPmZldGNoU3RhcnQu
dmFsdWUoKSk7CisgICAgICAgICAgICBtZXRyaWNzLT5tYXJrQ29tcGxldGUoKTsKKyAgICAgICAg
ICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSwgKm1ldHJp
Y3MpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVt
cHR5TWV0cmljczsKKyAgICAgICAgICAgIGVtcHR5TWV0cmljcy5tYXJrQ29tcGxldGUoKTsKKyAg
ICAgICAgICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSwg
ZW1wdHlNZXRyaWNzKTsKKyAgICAgICAgfQorCiAgICAgICAgIGlmIChtX21lc3NhZ2VRdWV1ZSkg
ewogICAgICAgICAgICAgbV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICAgICAgICAgICAgIG1fbWVz
c2FnZVF1ZXVlID0gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQppbmRleCBmMzVjNWYzYTY1M2Rl
MGJjZDE0NGRlY2E1Njg1MjdhZWE3MGQ1NGJmLi43MjYxNWFjOWNmYzY3ZDU4OGY4NzFlMzdhNTQz
NDk1OThiYzM3NGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2Nv
Y29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCkBAIC03OTAsNyArNzkwLDEwIEBAIHN0
YXRpYyBpbmxpbmUgdm9pZCBwcm9jZXNzU2VydmVyVHJ1c3RFdmFsdWF0aW9uKE5ldHdvcmtTZXNz
aW9uQ29jb2EmIHNlc3Npb24sIFNlCiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5kb21haW5M
b29rdXBTdGFydCA9IFNlY29uZHMoZG9tYWluTG9va3VwU3RhcnRJbnRlcnZhbCk7CiAgICAgICAg
IG5ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBFbmQgPSBTZWNvbmRzKGRvbWFpbkxvb2t1
cEVuZEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCA9
IFNlY29uZHMoY29ubmVjdFN0YXJ0SW50ZXJ2YWwpOwotICAgICAgICBuZXR3b3JrTG9hZE1ldHJp
Y3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gU2Vjb25kcyhzZWN1cmVDb25uZWN0aW9uU3RhcnRJ
bnRlcnZhbCk7CisgICAgICAgIGlmIChtLnJldXNlZENvbm5lY3Rpb24gJiYgW20ucmVzcG9uc2Uu
VVJMLnNjaGVtZSBpc0VxdWFsVG9TdHJpbmc6QCJodHRwcyJdKQorICAgICAgICAgICAgbmV0d29y
a0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFdlYkNvcmU6OnJldXNlZFRMU0Nv
bm5lY3Rpb25TZW50aW5lbDsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbmV0d29ya0xvYWRN
ZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFNlY29uZHMoc2VjdXJlQ29ubmVjdGlvblN0
YXJ0SW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA9IFNl
Y29uZHMoY29ubmVjdEVuZEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJl
cXVlc3RTdGFydCA9IFNlY29uZHMocmVxdWVzdFN0YXJ0SW50ZXJ2YWwpOwogICAgICAgICBuZXR3
b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA9IFNlY29uZHMocmVzcG9uc2VTdGFydEludGVy
dmFsKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCAxNWZhNzhkZWRmZTkwNWIzMDA2MWJlZjlkYzYzOGM0MTY1NWY4MDUyLi5m
OTM4YjFiYmYzOTNkN2ZjZDY1MjYzOTRjMTY2NTNhY2YxNWY4NDVkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTYgQEAKKzIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0
Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwg
MgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwZXJm
b3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRl
bnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wYWlu
dC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1s
OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGlu
ZS1hcGktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMv
dGltZWxpbmUtYXBpLmpzOgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25u
ZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA0NzM0MDdhYTZiMDk5ZDAwOTllYTU4YmE4MTQ5OTE3ODQy
ZTFjZGE4Li42YjMzNjljMzMyMDlhMTE1NWZlMzNlZTZiYzAzMjNkMWE2NGRhOTk5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMTggQEAKKzIwMjEtMDUtMTQgIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQg
c3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvTUVUQS55bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVf
bWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9pZGxoYXJuZXNzLndpbmRvdy5qczoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVl
cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9k
b2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50
X3JlcGxhY2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWw6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9y
ZW1vdmVkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sOgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
aW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3Nv
cnMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQu
aHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9h
ZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWw6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbDogQ29waWVk
IGZyb20gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9p
bi5odG1sLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWw6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9ub25lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1sOgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWw6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlx
dWVfbmF2X2luc3RhbmNlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5j
ZXMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3Vy
Y2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qczoKKyAgICAgICAgKHRlc3RfbmFtZXNwYWNlKToKKyAg
ICAgICAgKHRlc3RfYXR0cmlidXRlX2V4aXN0cyk6CisgICAgICAgICh0ZXN0X2VudW0pOgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVj
dGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFy
dC1yZXVzZS5odHRwcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0
aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2st
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWw6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1m
bGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50
LnN0ZXBfdGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzOiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50
cmllcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNz
LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luYyBpZGxfYXJyYXkpOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1m
bGFnLW9ic2VydmVycy5hbnkuanM6IEFkZGVkLgorICAgICAgICAocHJvbWlzZV90ZXN0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25h
YmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQt
ZmFsc2UuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBfdGltZW91
dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bl
cmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJh
Y2stbXV0YXRlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1y
ZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
ZGlzY29ubmVjdC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAg
ICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tZW50cmllcy1zb3J0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0
ZW50cmllcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5h
bnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190
ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tb2JzZXJ2ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2Uu
aHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVz
b3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFsaWQt
ZW50cmllcy5qczogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5q
czogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3Vw
cG9ydGVkRW50cnlUeXBlcy5hbnkuanM6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5h
bnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzOiBBZGRlZC4KKyAg
ICAgICAgKHRlc3RUaW1lUmVzb2x1dGlvbik6CisgICAgICAgICh0aW1lQnlVc2VyVGltaW5nKToK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2Vy
LXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVy
Zm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRw
cy1leHBlY3RlZC50eHQ6CisKIDIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0
ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXNvdXJjZSBUaW1pbmc6IHNlY3VyZUNvbm5l
Y3Rpb25TdGFydCA9PSAwIHdoZW4gYSBjb25uZWN0aW9uIGlzIHJlLXVzZWQKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IGU5MGJhNTQ2NmEwYTllMGZiYTQ5YzgyZjVkMWEzNTJiNzhiNzNlMGYuLmNjMzg5
ODViY2U0ZDdlM2U2MmI5NmFkZmVjMjdkMTI0ZjgzNzkwYmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpA
QCAtOTQwLDYgKzk0MCw3IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3Vy
Y2UtdGltaW5nL2Nyb3Nzb3JpZ2luLXNhbmR3aWNoLW5vLVRBTy5zdWIuCiBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jb3JzLXByZWZsaWdodC5hbnkuaHRt
bCBbIEZhaWx1cmUgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291
cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5kd2ljaC1UQU8uc3ViLmh0bWwgWyBQYXNzIEZhaWx1
cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY3Jv
c3NvcmlnaW4tc2FuZHdpY2gtcGFydGlhbC1UQU8uc3ViLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQor
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVf
Y29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtc3RyZWFtcy9NZWRp
YVN0cmVhbS1kZWZhdWx0LWZlYXR1cmUtcG9saWN5Lmh0dHBzLmh0bWwgWyBEdW1wSlNDb25zb2xl
TG9nSW5TdGRFcnIgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1
cmUtcmVjb3JkL3Bhc3N0aHJvdWdoL01lZGlhUmVjb3JkZXItcGFzc3Rocm91Z2guaHR0cHMuaHRt
bCBbIEZhaWx1cmUgVGltZW91dCBQYXNzIF0KQEAgLTQ5NTEsNCArNDk1Miw0IEBAIHdlYmtpdC5v
cmcvYi8yMDg5ODggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJ4ci94cldlYkdM
TGF5ZXJfZnJhbWVidWZmCiB3ZWJraXQub3JnL2IvMjA4OTg4IGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2VieHIveHJXZWJHTExheWVyX29wYXF1ZV9mcmFtZWJ1ZmZlci5odHRwcy5o
dG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMjA4OTg4IGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2VieHIveHJTdGF0aW9uYXJ5UmVmZXJlbmNlU3BhY2VfZmxvb3JsZXZlbF91cGRh
dGVzLmh0dHBzLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDg5ODggaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJ4ci94clNlc3Npb25fY2FuY2VsQW5pbWF0aW9uRnJhbWVf
aW52YWxpZGhhbmRsZS5odHRwcy5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMjA4OTg4IGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VieHIveHJXZWJHTExheWVyX29wYXF1ZV9m
cmFtZWJ1ZmZlcl9zdGVuY2lsLmh0dHBzLmh0bWwgWyBTa2lwIF0KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCit3ZWJraXQub3JnL2IvMjA4OTg4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2VieHIveHJXZWJHTExheWVyX29wYXF1ZV9mcmFtZWJ1ZmZlcl9zdGVuY2lsLmh0dHBz
Lmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmJmYjBlMGYxZjY3YTljNmFhMmU3ZTkyMWIwOWU4NWY4ZDk3MGIyOTAKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sCkBAIC0wLDAgKzEsNSBAQAorc3BlYzogaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL25hdmlnYXRpb24tdGltaW5nLworc3VnZ2VzdGVkX3Jldmlld2Vy
czoKKyAgLSBwbGVoZWdhcgorICAtIGlncmlnb3JpaworICAtIHlvYXZ3ZWlzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmIyOGMxMGNlMzZjM2M3NDQ4NDg5N2U1ZDI0ZGFmZjkxNzM5NWViNTYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw4IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1
bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuCisKKworCitQQVNTIFRlc3Qg
ZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1lbnQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21f
aW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2lt
YWdlX2RvY3VtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzliM2M0ZDQ4NmFiM2IwZTcyNTIxNDVkMzc4
YThhZjllMzdmNjM0MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2lt
YWdlX2RvY3VtZW50Lmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAg
IDx0aXRsZT5UZXN0IGRvbUludGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50LjwvdGl0bGU+Cisg
ICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3
Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8v
aHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Jyb3dzaW5nLXRoZS13ZWIuaHRtbCNyZWFk
LW1lZGlhIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8c2NyaXB0PgorICAgICAgICBj
b25zdCB0ID0gYXN5bmNfdGVzdCgiVGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVu
dCIpOworICAgICAgICBmdW5jdGlvbiBmcmFtZUxvYWRlZCgpIHsKKyAgICAgICAgICAgIGNvbnN0
IHRpbWluZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlmcmFtZSIpLmNvbnRlbnRXaW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nOworICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbih0aW1p
bmcuZG9tSW50ZXJhY3RpdmUsIDAsCisgICAgICAgICAgICAgICAgIkV4cGVjdCBkb21JbnRlcmFj
dGl2ZSB0byBiZSBwb3NpdGl2ZSB2YWx1ZS4iKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAg
ICAgICB9CisgICAgPC9zY3JpcHQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlv
bjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBhIGltYWdlIGRvY3VtZW50IGhhcyBw
b3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS48L3A+CisgICAgICAgIDxpZnJhbWUgc3JjPSIu
Li9pbWFnZXMvc21pbGV5LnBuZyIgb25sb2FkPSJmcmFtZUxvYWRlZCgpIj48L2lmcmFtZT4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRp
YV9kb2N1bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1
bWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzdmNjcyZGI4MjczNDk5NmJhYTZkNDEyZDYx
OWNlZjdiZGI4MWVjYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21l
ZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK0Rlc2NyaXB0aW9uCisK
K1RoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21J
bnRlcmFjdGl2ZS4KKworCisKK1BBU1MgVGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1
bWVudAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lNGU0NTcyNWQ4MzYwNWI1MTljZTc0ZWE4ZmY0NTYxZGNkM2Q3NTk1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQuaHRtbApAQCAtMCwwICsx
LDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0
YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPlRlc3QgZG9tSW50ZXJhY3RpdmUg
b24gbWVkaWEgZG9jdW1lbnQuPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRp
dGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxs
aW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBh
Z2UvYnJvd3NpbmctdGhlLXdlYi5odG1sI3JlYWQtbWVkaWEiLz4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9o
ZWFkPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IGRv
bUludGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50Iik7CisgICAgICAgIGZ1bmN0aW9uIGZyYW1l
TG9hZGVkKCkgeworICAgICAgICAgICAgY29uc3QgdGltaW5nID0gZG9jdW1lbnQucXVlcnlTZWxl
Y3RvcigiaWZyYW1lIikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmc7CisgICAgICAg
ICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy5kb21JbnRlcmFjdGl2ZSwgMCwKKyAgICAg
ICAgICAgICAgICAiRXhwZWN0IGRvbUludGVyYWN0aXZlIHRvIGJlIHBvc2l0aXZlIHZhbHVlLiIp
OworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0
cyB0aGF0IGEgbWVkaWEgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZl
LjwvcD4KKyAgICAgICAgPGlmcmFtZSBzcmM9Ii4uL21lZGlhL0E0Lm1wNCIgb25sb2FkPSJmcmFt
ZUxvYWRlZCgpIj48L2lmcmFtZT4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvaWRsaGFybmVzcy53aW5kb3cuanMKaW5kZXggOGNjMzU0NmIzYzI3YTlkOTNlZTU2MjE1ODRk
ODNkNTZhMzA4NTEzYy4uNzJjZjBjM2EzZDNjOGNiNzc1NDE2MjVhMDU1NGQ4NDY0ZDdjMTEyYiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qcworKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5l
c3Mud2luZG93LmpzCkBAIC0xLDIxICsxLDIwIEBACiAvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNl
cy9XZWJJRExQYXJzZXIuanMKIC8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL2lkbGhhcm5lc3Mu
anMKKy8vIE1FVEE6IHRpbWVvdXQ9bG9uZwogCiAndXNlIHN0cmljdCc7CiAKIC8vIGh0dHA6Ly93
d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLwogCiBpZGxfdGVzdCgKLSAgWyduYXZpZ2F0
aW9uLXRpbWluZyddLAotICBbJ3Jlc291cmNlLXRpbWluZycsICdwZXJmb3JtYW5jZS10aW1lbGlu
ZScsICdoci10aW1lJywgJ2RvbSddLAotICBpZGxfYXJyYXkgPT4gewotICAgIGlkbF9hcnJheS5h
ZGRfb2JqZWN0cyh7CisgIFsnbmF2aWdhdGlvbi10aW1pbmcnLCAnaHItdGltZSddLAorICBbJ3Jl
c291cmNlLXRpbWluZycsICdwZXJmb3JtYW5jZS10aW1lbGluZScsICdkb20nLCAnaHRtbCddLAor
ICBpZGxBcnJheSA9PiB7CisgICAgaWRsQXJyYXkuYWRkX29iamVjdHMoewogICAgICAgUGVyZm9y
bWFuY2U6IFsncGVyZm9ybWFuY2UnXSwKICAgICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvbjogWydw
ZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJ10sCiAgICAgICBQZXJmb3JtYW5jZVRpbWluZzogWydwZXJm
b3JtYW5jZS50aW1pbmcnXSwKLSAgICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzogWwot
ICAgICAgICAncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdJwot
ICAgICAgXQorICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiBbJ3BlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSddCiAgICAgfSk7CiAgIH0KICk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjhiMjNiNzYwNWQ5MjJkYTM4NzJhYjU2ZGNmZWFjNTgzYzJlZTQyYjIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3Jt
YW5jZU9ic2VydmVyIGNhbiBvYnNlcnZlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhhdCB0
aGUgZXhwZWN0ZWQgYXR0cmlidXRlcyBpbiBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3QgKGJ1
dCBkb2VzIG5vdCB2YWxpZGF0ZSB0aGF0IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLgorCisKK0ZB
SUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgZW50cmllcyBhcmUgb2JzZXJ2YWJsZS4g
YXNzZXJ0X3RydWU6IEV4cGVjdGVkIGF0dHJpYnV0ZTogZGVjb2RlZEJvZHlTaXplLiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVz
X2V4aXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYjYwNDhlMDYxYmEwNTdjZDk3MWIwOGUwMzJiZTcxN2YwYWQwNGQwZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbApAQCAtMCwwICsx
LDY3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQ
VDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVm
PSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5
PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFs
aWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VPYnNlcnZlciBjYW4gb2JzZXJ2ZSBuYXYgdGltaW5nIDIg
aW5zdGFuY2UgYW5kIHRoYXQgdGhlIGV4cGVjdGVkIGF0dHJpYnV0ZXMgaW4gbmF2IHRpbWluZyAy
IGluc3RhbmNlIGV4aXN0IChidXQgZG9lcyBub3QgdmFsaWRhdGUgdGhhdCB0aGUgdmFsdWVzIGFy
ZSBjb3JyZWN0KS48L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIG5hdlRpbWlu
ZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAg
J2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2RlZEJvZHlTaXplJywKKyAgICAgICAg
ICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5k
JywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAg
ICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAg
ICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgJ2R1cmF0aW9uJywKKyAg
ICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2VudHJ5VHlwZScsCisg
ICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnaW5pdGlhdG9yVHlwZScsCisg
ICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcs
CisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAnbmV4dEhvcFByb3RvY29sJywKKyAg
ICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisg
ICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywK
KyAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcs
CisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICd0cmFu
c2ZlclNpemUnLAorICAgICAgICAgICAgJ3R5cGUnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50
RW5kJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICd3b3Jr
ZXJTdGFydCcKKyAgICAgICAgXTsKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgewor
ICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAg
ICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAg
ICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllcy5sZW5ndGgsIDEsCisgICAgICAgICAg
ICAgICAgICAgICAgICAiVGhlcmUgc2hvdWxkIGJlIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5n
IGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5h
dlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfdHJ1ZShuYXZUaW1pbmcyQXR0cmlidXRlc1tpXSBpbiBlbnRyaWVzWzBdLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBhdHRyaWJ1dGU6ICIgKyBuYXZUaW1p
bmcyQXR0cmlidXRlc1tpXSArICIuIik7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAg
IG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAg
ICAgfSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIG9ic2VydmFi
bGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNDk5
ZjhhZWRkYzliZjM2ZTNlYjUxY2I2OGI2OTc3ODg4MjBiMDJiCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMg
b2YgbmF2IHRpbWluZyAyIGluc3RhbmNlJ3MgdGltaW5nLXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUg
aW4gY2VydGFpbiBvcmRlciBhbmQgdGhlIG90aGVycyBhcmUgb2YgZXhwZWN0ZWQgdmFsdWVzLgor
CisKK0ZBSUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UncyB2YWx1ZSBp
cyByZWFzb25hYmxlLiBhc3NlcnRfdHJ1ZTogRXhwZWN0ZWQgdHJhbnNmZXJTaXplIHRvIGJlIGdy
ZWF0ZXIgdGhhbiBlbmNvZGVkQm9keVNpemUgaW4gdW5jYWNoZWQgbmF2aWdhdGlvbi4gZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRl
c192YWx1ZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMzk1MDNhZjAzNzFmMWYyZjhiNDczNTdlYjExYTQ3MTEwYjBjNGQ4NgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKQEAgLTAs
MCArMSwxMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAg
IDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5n
IDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUi
IGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVs
cCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgbmF2IHRpbWluZyAyIGluc3RhbmNl
J3MgdGltaW5nLXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUgaW4gY2VydGFpbiBvcmRlciBhbmQgdGhl
IG90aGVycyBhcmUgb2YgZXhwZWN0ZWQgdmFsdWVzLjwvcD4KKworICAgICAgICA8c2NyaXB0Pgor
ICAgICAgICAvLyBIb3N0IG5hbWVzIGFuZCBwb3J0cyBtYXkgYmUgY29uZmlndXJlZCBhdCB0ZXN0
IGV4ZWN1dGlvbiB0aW1lLiBUaGUKKyAgICAgICAgLy8gd2ViLXBsYXRmb3JtLXRlc3RzIHNlcnZl
ciBvZmZlcnMgdHdvIG1lY2hhbmlzbXMgZm9yIHJldHJpZXZpbmcgdGhlc2UKKyAgICAgICAgLy8g
dmFsdWVzIGR5bmFtaWNhbGx5OiBkaXJlY3QgdGV4dCBzdWJzdGl0dXRpb24gYW5kIHRoZSBgZ2V0
LWhvc3QtaW5mb2AKKyAgICAgICAgLy8gc2NyaXB0LiBUaGUgZm9ybWVyIGlzIGluYXBwcm9wcmF0
ZSBmb3IgdGhpcyB0ZXN0IGJlY2F1c2UgaXQKKyAgICAgICAgLy8gaW5mbHVlbmNlcyB0aGUgc2l6
ZSBvZiB0aGUgZG9jdW1lbnQsIGFuZCB0aGlzIHRlc3QgaW5jbHVkZXMgc3RhdGljCisgICAgICAg
IC8vIGFzc2VydGlvbnMgZm9yIHRoYXQgdmFsdWUuCisgICAgICAgIHZhciBob3N0X2luZm8gPSBn
ZXRfaG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJodHRwOi8vIiArIGhv
c3RfaW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhvc3RfaW5mby5IVFRQ
X1BPUlQgKworICAgICAgICAgICAgIi9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmli
dXRlc192YWx1ZXMuaHRtbCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRPcmRlcjEgPSBb
CisgICAgICAgICAgICAnc3RhcnRUaW1lJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywK
KyAgICAgICAgICAgIC8vJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0
RW5kJywKKyAgICAgICAgICAgIC8vJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdmZXRj
aFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAn
ZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAg
ICAgLy8nc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywK
KyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQn
LAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2
ZScsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUn
LAorICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdsb2FkRXZlbnRF
bmQnCisgICAgICAgIF07CisKKyAgICAgICAgdmFyIG5hdlRpbWluZzJFdmVudE9yZGVyMiA9IFsK
KyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudFN0
YXJ0JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisgICAgICAgICAgICAndW5sb2FkRXZl
bnRFbmQnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnCisgICAgICAgIF07CisKKyAgICAgICAg
dmFyIG5hdlRpbWluZzJFdmVudE9yZGVyMyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQn
LAorICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAnY29u
bmVjdEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICAvLyBOYXZpZ2F0aW9uIFRpbWluZyBhdHRy
aWJ1dGVzIGZvciBjb21wYXJpc29uLgorICAgICAgICB2YXIgbmF2VGltaW5nMUV2ZW50T3JkZXIg
PSBbCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3Vw
U3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnY29u
bmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdyZXF1
ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgJ3Jl
c3BvbnNlRW5kJywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2Fk
ZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2xv
YWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnCisgICAgICAgIF07CisK
KyAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0aW1p
bmdFbnRyeSkgeworICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxl
bmd0aCAtIDE7IGkrKykgeworICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWluZ0VudHJ5
W2V2ZW50T3JkZXJbaV1dIDw9IHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwKKyAgICAg
ICAgICAgICAgICAgICAgIkV4cGVjdGVkICIgKyBldmVudE9yZGVyW2ldICsgIiB0byBiZSBubyBn
cmVhdGVyIHRoYW4gIiArIGV2ZW50T3JkZXJbaSArIDFdICsgIi4iKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgfQorCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAg
ICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAg
ICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlUeXBlLCAibmF2aWdhdGlvbiIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgZW50cnlUeXBlIHRvIGJlOiBuYXZpZ2F0
aW9uLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0ubmFt
ZSwgZXhwZWN0ZWRVcmwpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJp
ZXNbMF0uc3RhcnRUaW1lLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHN0
YXJ0VGltZSB0byBiZTogMC4iKTsKKyAgICAgICAgICAgICAgICAgICAgLy9hc3NlcnRfZXF1YWxz
KGVudHJpZXNbMF0uZHVyYXRpb24sIGVudHJpZXNbMF0ubG9hZEV2ZW50RW5kLAorICAgICAgICAg
ICAgICAgICAgICAvLyAgICAiRXhwZWN0ZWQgZHVyYXRpb24gdG8gYmUgZXF1YWwgdG8gbG9hZEV2
ZW50RW5kLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0u
aW5pdGlhdG9yVHlwZSwgIm5hdmlnYXRpb24iLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4
cGVjdGVkIGluaXRpYXRvclR5cGUgdG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5uZXh0SG9wUHJvdG9jb2wsICJodHRwLzEu
MSIpOworICAgICAgICAgICAgICAgICAgICAvLyBUaGlzIHRlc3QgbWF5IGZhaWwgd2hlbiByZXNw
b25zZSBpcyBmcm9tIGNhY2guIERpc2FibGUgb3IgY2xlYW4gY2FjaCBiZWZvcmUKKyAgICAgICAg
ICAgICAgICAgICAgLy8gcnVubmluZyB0aGlzIHRlc3QuCisgICAgICAgICAgICAgICAgICAgIGFz
c2VydF90cnVlKGVudHJpZXNbMF0udHJhbnNmZXJTaXplID4gZW50cmllc1swXS5lbmNvZGVkQm9k
eVNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgdHJhbnNmZXJTaXplIHRv
IGJlIGdyZWF0ZXIgdGhhbiBlbmNvZGVkQm9keVNpemUgaW4gdW5jYWNoZWQgbmF2aWdhdGlvbi4i
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVuY29kZWRC
b2R5U2l6ZSwgNTk1NSk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmll
c1swXS5kZWNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICB2ZXJpZnlU
aW1pbmdFdmVudE9yZGVyKGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMSk7CisgICAg
ICAgICAgICAgICAgICAgIC8vIFZlcmlmeSBpZiB0aGUgcmVwb3J0ZWQgdGltaW5nIGlzIG5vdCB0
aGF0IGRpZmZlcmVudAorICAgICAgICAgICAgICAgICAgICAvLyBmcm9tIHdoYXQgaXMgcmVwb3J0
ZWQgYnkgTmF2aWdhdGlvbiBUaW1pbmcgMS4KKyAgICAgICAgICAgICAgICAgICAgbmF2VGltaW5n
MUV2ZW50T3JkZXIuZm9yRWFjaCgKKyAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbihldmVu
dCkgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmdbZXZlbnRdIC0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cucGVyZm9ybWFu
Y2UudGltaW5nLm5hdmlnYXRpb25TdGFydCA+IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyaWVzWzBdW2V2ZW50XSwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnQgKyAiIHRvIGJlIGdyZWF0ZXIg
dGhhbiAwIik7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
IH0pOworICAgICAgICAgICAgICAgICAgICAvLyBXaGVuIHVubG9hZEV2ZW50IGhhcHBlbnMKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInVubG9hZEV2ZW50U3RhcnQiXSAhPSAw
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGVudHJp
ZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMik7CisgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgLy8gV2hlbiBhIHNlY3VyZSB0cmFuc3BvcnQgaXMgdXNlZAorICAg
ICAgICAgICAgICAgICAgICBpZiAoZW50cmllc1swXVsic2VjdXJlQ29ubmVjdGlvblN0YXJ0Il0g
IT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihl
bnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjMpOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAg
ICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7Cisg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdz
IHZhbHVlIGlzIHJlYXNvbmFibGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQKaW5kZXgg
NDk5OTlkODk0MTEwNDk3OWIzMjZhN2ZmYTZiODkwMTg1YThmYTY4ZS4uMDVmMjMwYjlmYjBmYWI4
ZDhkN2NiNTg1ZWM5ODVjMjA4MTExOWZkNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9j
dW1lbnRfb3Blbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Bl
bi1leHBlY3RlZC50eHQKQEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1tuYXZUaW1p
bmcyQXR0cmlidXRlc1tpXV0nKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB3
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIHJlbWFpbnMg
Y29uc3RhbnQgd2hlbiBhIGRvY3VtZW50IGlzIHJlcGxhY2VkIHVzaW5nIGRvY3VtZW50Lm9wZW4u
CkBAIC05LDYgKzgsNSBAQCBUaGUgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8g
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbgogCiAKIAotSGFybmVzcyBF
cnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykKLQorUEFT
UyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9k
b2N1bWVudF9vcGVuLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKaW5k
ZXggYmMwNmVkNTg0MGE3NTU1ZDFlMmE2MjU4MGNmNWE5ODhjYTU4YTcxOC4uYWExMDk3MjQ4ZGQx
MzNlNWU2MWIxN2M2ZjkyZjE0Mzc1NzliNTg4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
ZG9jdW1lbnRfb3Blbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRt
bApAQCAtOCw2ICs4LDggQEAKICAgICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQ+CisgICAg
ICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgICAg
dmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWwogICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RF
bmQnLAogICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKaW5kZXggYTk3Yzg2YmNiNGY2N2Y1MjRi
MWJjZTM4OThjZTVlZDMwNzQ3OGNiZS4uMzVhNTZhM2ZlNTc3Mjk4MWJkYzJiYzVhY2UwNzkzYzEw
MzEyNWZkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVk
LnR4dApAQCAtMSwxMyArMSwxMSBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251
bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQg
aGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxl
cihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICdwbnQxLnR5cGUnKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZh
bGlkYXRlcyB0aGF0IGEgUGVyZm9ybWFuY2VOYXZpZ2F0aW5nVGltaW5nIGNvcnJlc3BvbmRpbmcg
dG8gYSBkZXRhY2hlZCBkb2N1bWVudCBjYW4ndCBhY2Nlc3MgYSBkaWZmZXJlbnQgZG9jdW1lbnQn
cyBzdGF0ZS4KIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBlJykKLQor
UEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9kb2N1bWVudF9yZXBsYWNlZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFj
ZWQuaHRtbAppbmRleCBiOTEwZjQ1M2QxMjk1MWQwMWNiNTg0ODk5NzY2YjY0ZmUwOGU4MzZjLi41
OTcyZjIwZTliZDdmZmRmMjdkMzJiNWIzMGI2MzkxM2NlZWVlZDA5IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2Rv
Y3VtZW50X3JlcGxhY2VkLmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKKwogICAg
ICAgICAgICAgdmFyIG5hdmlnYXRpb25fZnJhbWU7CiAgICAgICAgICAgICB2YXIgcG50MTsKICAg
ICAgICAgICAgIHZhciBzdGVwID0gMTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1l
X3JlbW92ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBl
Y3RlZC50eHQKaW5kZXggYjVmOGJlZWYzOWY2MDk5NTIzMjQzZWNlMTk5YmRkZmJkMDFmMTY5MS4u
OTc3M2RkYTU5YjNmY2E2Yjg4ZjM0Njg4ZGM2ODgxNGIwNzdkNTc5OSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKQEAgLTQsNSArNCw1IEBAIERlc2NyaXB0aW9u
CiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp0
eXBlKCkncyBkZWZhdWx0IHZhbHVlIGlzIG5hdmlnYXRlCiAKIAotRkFJTCBOYXZpZ2F0aW9uIFRp
bWluZyAyIFdQVCB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50LnR5
cGUnKQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0
ZWQudHh0CmluZGV4IDZjMzFhZmQwYjI5YjEwZTkzODhiNGZjMjE5NzNjZTJjNmUxNGNhMjAuLjM3
N2NlOTg2ODA2YTQ5ZjI4MWM2MWVjMTZiMGYxMTIxY2IxZGRlMzAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZyBpbnN0YW5jZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZyBpbnN0YW5jZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4KIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1s
CmluZGV4IDc3OTAwODFkMDFjN2I4MjYyYzUzNGQzOTUwODU2OTBlYmUyZGZmZTguLmFkNTBjNmE4
N2QyYjQ2NjI5N2RjMGYyZWJjZWY5MmEzNzY1NWIwMTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKQEAgLTQsNyAr
NCw3IEBACiA8c2NyaXB0PgogdGVzdChmdW5jdGlvbigpIHsKICAgdmFyIG5hdmlnYXRpb25UaW1p
bmcyID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ25hdmlnYXRpb24nKVsw
XTsKLSAgYXNzZXJ0X3RydWUobmF2aWdhdGlvblRpbWluZzIgIT09IHVuZGVmaW5lZCk7CisgIGFz
c2VydF9ub3RfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLCB1bmRlZmluZWQpOwogICBhc3NlcnRf
ZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iKTsKICAgYXNz
ZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5zdGFydFRpbWUsIDApOwogICBhc3NlcnRfZXF1
YWxzKG5hdmlnYXRpb25UaW1pbmcyLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIik7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5hMTg0ODYyOTE1MDFiNWNjNGYxNzEwMzAxNjVkOTZlMDRjN2FmZWNiCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYg
dGltaW5nIDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nl
c3NvcnMgb25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3VtZW50IikK
KworCitQQVNTIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIGFjY2Vz
c2libGUgdGhyb3VnaCB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzLgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2lu
c3RhbmNlX2FjY2Vzc29ycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE4ZmJmYjRhMzA2MjU0MjRlOGU4NDJl
YjJiODA2MmRhNGUzZTg5MzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0
YW5jZV9hY2Nlc3NvcnMuaHRtbApAQCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAg
IDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJl
bD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAv
PgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25h
dmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgor
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpz
Ij48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlw
dGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYgdGltaW5n
IDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nlc3NvcnMg
b25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3VtZW50Iik8L3A+CisK
KyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8o
KTsKKyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0gImh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJ
TkFMX0hPU1QgKyAiOiIgKworICAgICAgICAgICAgaG9zdF9pbmZvLkhUVFBfUE9SVCArICIvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sIjsKKyAgICAg
ICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5lY3RFbmQn
LAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2RlZEJvZHlT
aXplJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9tQ29udGVu
dExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbWFpbkxv
b2t1cEVuZCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAg
J2R1cmF0aW9uJywKKyAgICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAg
J2VudHJ5VHlwZScsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnaW5p
dGlhdG9yVHlwZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICds
b2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAncmVkaXJl
Y3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgJ3JlZGly
ZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVz
cG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgJ3Nl
Y3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAg
ICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAg
ICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisgICAgICAg
IF07CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFy
IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIg
aW5zdGFuY2UxID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdOworICAgICAgICAgICAgICAg
ICAgICB2YXIgaW5zdGFuY2UyID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICB2YXIgaW5zdGFuY2UzID0gcGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5TmFtZShleHBlY3RlZFVybClbMF07CisKKyAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IikubGVuZ3RoLCAxLCAiRXhwZWN0ZWQgdGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1p
bmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5TmFtZShleHBlY3RlZFVybCkubGVuZ3RoLCAxLCAiRXhwZWN0ZWQg
dGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisKKyAgICAg
ICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmlidXRlcy5s
ZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhpbnN0
YW5jZTFbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dLCBpbnN0YW5jZTJbbmF2VGltaW5nMkF0dHJp
YnV0ZXNbaV1dKTsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25hdlRpbWlu
ZzJBdHRyaWJ1dGVzW2ldXSwgaW5zdGFuY2UzW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSk7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29u
bmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9
KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlw
ZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgfSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRp
b24gdGltaW5nIGVudHJpZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZmZXJlbnQg
YWNjZXNzb3JzLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
N2YzNTZkZjExNmM5MjU3MjYyOTA4M2UwOTEwODA0NmM3OTEyNzk0Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDQgQEAKKworCitQQVNTIG5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBj
aGFuZ2VzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGMxNDRi
ZGE0NTRiZTg2MTgwYmJmYmE1MDNjNGQxZGE5NDU3MzNlNAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sCkBAIC0wLDAgKzEsNDAgQEAKKzwhRE9D
VFlQRSBIVE1MPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDxtZXRhIGNoYXJzZXQ9dXRmLTg+Cisg
ICAgPHRpdGxlPlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5uYW1lIHVwZGF0ZWQgaW4gaWZy
YW1lczwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2NyaXB0PgorcHJvbWlz
ZV90ZXN0KGFzeW5jIGZ1bmN0aW9uICh0KSB7CisgIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJpZnJhbWUiKTsKKyAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOworCisg
IGlmci5zcmM9InJlc291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwiOworICBhd2FpdCBuZXcg
UHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAg
ICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWUg
ZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUsIGlmci5jb250ZW50V2lu
ZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0aGUgd2lu
ZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29udGVudFdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRzV2l0aCgi
YmxhbmtfcGFnZV9ncmVlbi5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMgYmxhbmtfcGFnZV9n
cmVlbi5odG1sIik7CisgICAgICByZXNvbHZlKCk7CisgICAgfQorICB9KTsKKworCisgIGF3YWl0
IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geyBzZXRUaW1lb3V0KHJlc29sdmUsIDEwMCk7IH0pOwor
ICBpZnIuc3JjID0icmVzb3VyY2VzL2JsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiOworCisgIGF3YWl0
IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIGlmci5vbmxvYWQgPSBmdW5jdGlvbigpIHsK
KyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdmlnYXRpb24g
dGltZSBlbnRyeSIpOworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZSwgaWZyLmNvbnRl
bnRXaW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hdmlnYXRpb24gbmFtZSBtYXRjaGVzIHRo
ZSB3aW5kb3cubG9jYXRpb24iKTsKKyAgICAgIGFzc2VydF90cnVlKGlmci5jb250ZW50V2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1lLmVuZHNX
aXRoKCJibGFua19wYWdlX3llbGxvdy5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMgYmxhbmtf
cGFnZV95ZWxsb3cuaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7Cit9LCAi
bmF2aWdhdGlvbi5uYW1lIHVwZGF0ZWQgd2hlbiBpZnJhbWUgVVJMIGNoYW5nZXMiKTsKKyAgICA8
L3NjcmlwdD4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKaW5kZXggNGIyMGVjNmY5YjIwOGM3
M2Q4NWE5NDRkODlhMWI3YjhkODQwZWE5MC4uZWRhYTkyODhhOWFmYjZlMmNjY2ExYzQzN2Q1ZGFj
YTU5ZmZhYWZhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2Rv
Y3VtZW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5f
ZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsNyBAQAotQ09OU09MRSBNRVNTQUdFOiBU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdb
cHJvcGVydHldJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhbGwg
b2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikg
YXR0cmlidXRlcyByZW1haW4gdW5jaGFuZ2VkIGFmdGVyIGFuIGluIGRvY3VtZW50IG5hdmlnYXRp
b24gKFVSTCBmcmFnbWVudCBjaGFuZ2UpLgogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNz
YWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
dGltaW5nW3Byb3BlcnR5XScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbAppbmRleCBmMzljYTA1
NzY5NTU5OTllY2E4YTA4MzMxZTU1Y2MyOTI1ODE2ZjM2Li43NWU2ZTExM2I2ZGJhMzY4N2RmMWM4
ZmRiZjljOTgzYTlmYWU4YTY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93
aXRoaW5fZG9jdW1lbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5f
ZG9jdW1lbnQuaHRtbApAQCAtMTMsNiArMTMsOCBAQAogICAgICAgICA8cD5UaGlzIHRlc3QgdmFs
aWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBk
b2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS48L3A+CiAKICAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAg
ICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAgICAgICAn
Y29ubmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4
dAppbmRleCA5ZTJjYWE2MjBmNWFkZWI5ZGFkYTRjODJkZDFkNjgzN2NjYTdmMTI1Li4yYzA0NjMw
YmFlMTU2ZGE3OWUwNTAxN2YzZWJhNTliY2ZjOWE3YWE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQKQEAgLTEs
NiArMSw3IEBACiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVy
KHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCi1D
T05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLnR5cGUnKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251
bmxvYWQgaGFuZGxlcihzKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQg
aGFuZGxlcihzKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUg
b2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50
eXBlIHdpdGggYSBmb3J3YXJkIGFuZCBiYWNrIG5hdmlnYXRpb24uCkBAIC0xMyw2ICsxNCw1IEBA
IFRoaXMgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8gdGhlIHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVz
c2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKaW5kZXggYzRiNTc1
ODEwNjkxMTAzZGI2OWM2MTBiOWVjNjk0MjUxMTBkNzYzNS4uZDAwNDU0MTViODljNDVlZDlhMWE4
ODllOGJlMGFiYzgxMjMwOTJkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX2JhY2tmb3J3YXJkLmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAg
ICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYzMwZGNlNDRkODMxMTAzN2NiNWM3OWNlMjkxOWYzMDZmYjQwYTZhOQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnR5cGUgdG8gYmUgbmF2aWdhdGUuCisKKworUEFTUyBOYXZpZ2F0aW9uIHR5
cGUgdG8gYmUgbmF2aWdhdGUuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9uYXZpZ2F0ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25h
dmlnYXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWZhZWYxZWMwYmJiODhlNWZiMTVjMmEzMWZkNWY5MzNj
MTZhMDlmNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9uYXZpZ2F0ZS5odG1sCkBAIC0wLDAgKzEsMzIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8
dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9
ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4K
KyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZp
Z2F0aW9uLXRpbWluZy8jc2VjLW5hdmlnYXRpb24tdGltaW5nLWludGVyZmFjZSIvPgorICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQp
IHsKKyAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cigKKyAgICAgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkg
eworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50
cmllcygpWzBdLnR5cGUsICJuYXZpZ2F0ZSIsICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8g
YmUgbmF2aWdhdGUuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25u
ZWN0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAg
ICAgICAgfSkKKyAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2VydmVyLm9i
c2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAgIH0sICJO
YXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorCisg
ICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+CisgICAgICAgICAgICBEZXNjcmlw
dGlvbjwvaDE+CisgICAgICAgIDxwPgorICAgICAgICAgICAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0
aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLjwvcD4KKworICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50
eHQKaW5kZXggNzFjNDdlNWI4ZGY3YTUxZWU4ZWJkZTY5OGFlODU2ZWE2NzIzYTU4MC4uYTRkNmJk
YTZkNDQ5ZjFhZTFmNmJiNThkYzU4MjY1ZTM2ZWFhYWU3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSwzIEBA
Ci1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVz
dCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF0uKHR5cGUvdW5sb2FkRXZlbnRFbmQvdW5sb2FkRXZlbnRTdGFy
dCkgd2l0aCBhIHJlbG9hZGVkIG5hdmlnYXRpb24uCkBAIC0xMCw2ICs5LDUgQEAgVGhlIHdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2FkRXZlbnRT
dGFydCA+IDAgYWZ0ZXIKIFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpLnVubG9hZEV2ZW50RW5kID4gMCBhZnRlciByZWxvYWQKIAogCi1IYXJuZXNz
IEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9u
IFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfcmVsb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0
bWwKaW5kZXggNzRiODVjOWRiYjVlMDMyNjZjMGJhMDE0NWFkNDVkNjdhMDI1ZmQwYy4uMGYwM2Yw
N2M1N2M5YzFhYzNjODY4NzQxYTIzZDlmMmU2ZWJiMmIyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICAgICAgPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwog
CiAgICAgICAgICAgICB2YXIgcmVsb2FkX2ZyYW1lOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdp
bmFsX29yaWdpbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWQzODk4NzYxYjg3MTUwZDBhNzY1
YWIzMWMyZTYxOTc2ZDkyMTYxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDExIEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL3d3
dy5sb2NhbGhvc3Q6ODgwMC9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5P2xvY2F0aW9uPWh0dHA6
Ly9sb2NhbGhvc3Q6ODgwMC9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9n
cmVlbi5odG1sCitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMg
b2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgY3Jvc3Mt
b3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmluYWwgZG9j
dW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi4KKworCisKK0hhcm5lc3Mg
RXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCitOT1RSVU4gTmF2aWdhdGlvbiBUaW1p
bmcgMiBXUFQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNl
cnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmRl
ZmEyMDI1MDBhNDQ5NzE2ZWFhYjVkMmQ3NTYxNmFjNDczMDVhMQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3Jp
Z2luLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8
aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5O
YXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9y
IiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAg
ICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24t
dGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKKyAg
ICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBjb25zdCBmcmFtZV9wZXJmb3JtYW5jZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJmcmFtZUNvbnRleHQiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlOworICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnR5cGUsCisgICAgICAgICAgICAgICAgICAgICJuYXZpZ2F0ZSIsCisgICAg
ICAgICAgICAgICAgICAgICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUu
Iik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCwgMCwKKyAgICAgICAg
ICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAgICAgICAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0LCAwLAorICAgICAgICAgICAgICAgICAgICAi
RXhwZWN0ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
WzBdLnJlZGlyZWN0RW5kLCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJl
Y3RFbmQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBkb25lKCk7CisgICAgICAgICAgICB9
CisgICAgICAgIDwvc2NyaXB0PgorCisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8
aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2
YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlCisgICAgICAgICAgIHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQg
dGltZXMgZm9yIGEgY3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24g
d2hlbiB0aGUgZmluYWwKKyAgICAgICAgICAgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9y
aWdpbmFsIG9yaWdpbi48L3A+CisKKyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250ZXh0IiBz
cmM9IiIgc3R5bGU9IndpZHRoOiAyNTBweDsgaGVpZ2h0OiAyNTBweDsiPjwvaWZyYW1lPgorICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgLy8gY29tYmluZSB0aGUgcGFnZSBvcmlnaW4gYW5k
IHJlZGlyZWN0IG9yaWdpbiBpbnRvIHRoZSBJRlJBTUUncyBzcmMgVVJMCisgICAgICAgICAgICBj
b25zdCBkZXN0VXJsX2ZpcnN0ID0gbWFrZV9hYnNvbHV0ZV91cmwoe3N1YmRvbWFpbjogInd3dyIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2Nv
bW1vbi9yZWRpcmVjdC1vcHQtaW4ucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgbWFrZV9hYnNvbHV0ZV91cmwoCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
cGF0aDogIi9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1s
In0pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAg
ICAgICAgICAgIGNvbnN0IGRlc3RVcmwgPSBtYWtlX2Fic29sdXRlX3VybCh7CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVj
dC5weSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVy
eTogImxvY2F0aW9uPSIgKyBkZXN0VXJsX2ZpcnN0fSk7CisgICAgICAgICAgICBsZXQgZnJhbWVD
b250ZXh0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpOworICAgICAg
ICAgICAgZnJhbWVDb250ZXh0Lm9ubG9hZCA9IG9ubG9hZF90ZXN0OworICAgICAgICAgICAgZnJh
bWVDb250ZXh0LnNyYyA9IGRlc3RVcmw7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2
ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
Y2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKaW5kZXggNzFlZDQ3ZmUz
NWExNDJlNDBmZjQ3OTA1Zjc3ODhhMWRjNWFjYTBmYi4uNGU3OWE3ZmRiYTA4NjE2Zjk0NTA4ZGJm
ZmU4MmM1NjkwNGM0YmJkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKQEAg
LTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAKIAogCi1IYXJuZXNzIEVycm9y
IChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ2ZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4u
aHRtbAppbmRleCBjMGRkMjQ5NTQ1YTY0MGVjMGNkZDc1OWIyMTE0YWI3MjVhNjA5MDM5Li4wZmVi
M2JmYTdmMWMwMTM4ZTRjOWY5ZTNmZDRkMzgzZTVlZjY1ODVkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1s
CkBAIC05LDEzICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91
dGlscy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50cnkpIHsKLSAg
ICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsg
aSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWluZ0VudHJ5W2V2ZW50
T3JkZXJbaV1dIDwgdGltaW5nRW50cnlbZXZlbnRPcmRlcltpICsgMV1dLAotICAgICAgICAgICAg
ICAgICAgICAgICAgIkV4cGVjdGVkICIgKyBldmVudE9yZGVyW2ldICsgIiB0byBiZSBubyBncmVh
dGVyIHRoYW4gIiArIGV2ZW50T3JkZXJbaSArIDFdICsgIi4iKTsKLSAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0p
OwogCiAgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCiAgICAgICAgICAgICB7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU3MWFl
OTQwNDFhYWFjNzM5NDNkMjFjMmI0MjM1OGY3OTc5YTRkMmEKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAK
K0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUgb2YgdGhl
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVk
aXJlY3RDb3VudCBhdHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQgcmVkaXJl
Y3RFbmQgYXR0cmlidXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uCisKKworUEFT
UyBOYWl2YXRpb24gd2l0aG91dCByZWRpcmVjdHMuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3JlZGlyZWN0X25vbmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi45NzQzN2UxYTVlZjJiNjFhZTY1NzYyYmZhMzUxNjMwZWI0NzE0Y2RmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sCkBAIC0w
LDAgKzEsMzMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAg
IDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1p
bmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2ds
ZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJo
ZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMt
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZSBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGF0dHJpYnV0ZSwg
YXMgd2VsbCBhcyB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0IGFuZCByZWRpcmVjdEVuZCBhdHRyaWJ1dGVzIG9uIGEg
bm9uLXJlZGlyZWN0ZWQgbmF2aWdhdGlvbi48L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKworICAg
ICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIg
PSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhm
dW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcg
PSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0Q291bnQsIDAsICJF
eHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0U3RhcnQsIDAsICJFeHBlY3RlZCByZWRpcmVj
dFN0YXJ0IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2
VGltaW5nLnJlZGlyZWN0RW5kLCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUgMC4iKTsK
KyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAg
ICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgKTsKKyAg
ICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7
CisKKyAgICAgICAgfSwgIk5haXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4iKTsKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CmluZGV4IDA0
YTI0OGNkZTUwMWQyNjg5NGIyMjA3ZmU5YWY1ZjU1MGQyMGNiYzcuLjRmYjE1Y2FmY2U3ZTYxNzJl
ZDJlZjliOWYxM2M4NDcxZjU5NjNlOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X3NlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2Vy
dmVyLWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSw5IEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25f
ZW50cnkudHlwZScpCitDT05TT0xFIE1FU1NBR0U6IEVycm9yOiBhc3NlcnRfdHJ1ZTogRXhwZWN0
ZWQgc3RhcnRUaW1lIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiByZWRpcmVjdFN0YXJ0LiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUg
dmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdp
bmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgc2Ft
ZS1vcmlnaW4gc2VydmVyIHNpZGUgcmVkaXJlY3QgbmF2aWdhdGlvbi4KIAogCiAKLUhhcm5lc3Mg
RXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKLQorRkFJTCBOYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVCBFcnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0YXJ0VGltZSB0
byBiZSBubyBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbAppbmRleCAxZDdmNmM5MjhjZTYzYzk0
ZWRjMTQ5MWQyODgzYzg3MzMxZTM4NzIyLi44NWI4MThiM2RkYzlkNjFjZWNkNDQ2ZjM1Yjg4NWE3
M2VhZWM3MTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbApAQCAtOSw2ICs5LDcg
QEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgogCiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmds
ZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVu
dE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CiAgICAgICAgICAgICAgICAgZm9yIChs
ZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgewpAQCAtMjcsMTIgKzI4
LDEyIEBACiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uX2VudHJ5LnJl
ZGlyZWN0Q291bnQsIDEsICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDEuIik7CiAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uX2VudHJ5Lm5hbWUsICdodHRwOi8v
JyArIGRvY3VtZW50LmxvY2F0aW9uLmhvc3QgKyAnL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNl
cy9ibGFua19wYWdlX2dyZWVuLmh0bWwnKTsKIAotICAgICAgICAgICAgICAgIHZhciB0aW1naW5n
RXZlbnRzID0gWworICAgICAgICAgICAgICAgIHZhciB0aW1pbmdFdmVudHMgPSBbCiAgICAgICAg
ICAgICAgICAgICAgICdzdGFydFRpbWUnLAogICAgICAgICAgICAgICAgICAgICAncmVkaXJlY3RT
dGFydCcsCiAgICAgICAgICAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCiAgICAgICAgICAgICAg
ICAgXTsKLSAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKHRpbWdpbmdFdmVu
dHMsIGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSk7
CisgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcih0aW1pbmdFdmVudHMsIGZy
YW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSk7CiAgICAg
ICAgICAgICAgICAgZG9uZSgpOwogICAgICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKaW5kZXggYTA5MTZj
NDU4YzYyODJkMzFkNTM4NDhkNzlmNTM3NGNlZjQyNzVjNi4uZTgxY2NlZGE5ZWJmM2VkNzU4MzAz
NzI2MTU5OWZkOTkxOTNkMWM4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
eHNlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZl
ci1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZh
bHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAK
IAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BlcmZvcm1hbmNlTmFtZXNwYWNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRp
bWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbAppbmRleCAwNmM5Yjdm
M2I2NzhhMjI3NTFhMWU4ZTFhNTcwMjgyMTZhYjIxODc5Li5kOGFjYzgwNTRkODdhOTcyZDAwNTk2
ZDk3OTQ4NTg0N2NmNmNmNGU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94
c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sCkBA
IC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
c3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxz
LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2lu
Z2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkK
ICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5z
dGFuY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2Vz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzY4YzUwMDQ2NWQ3N2I1ZDFhOTgzYmM0NjZiZTFh
ZGU0N2ZlOTgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9p
bnN0YW5jZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5n
IDIgaW5zdGFuY2UuCisKKworRkFJTCBFYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWlu
ZyAyIGluc3RhbmNlLiBhc3NlcnRfZXF1YWxzOiBPbmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNl
IGV4aXN0cy4gZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3N2FiNmJhZTEwMWI3MDRkMTI2N2U4YjAzNDE2
MDExZjI4ZDY3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gx
PgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFjaCB3aW5kb3cgaGFzIGEg
dW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS48L3A+CisgICAgICAgIDxpZnJhbWUgaWQ9ImZy
YW1lQ29udGV4dCIgc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIiBzdHlsZT0i
ZGlzcGxheTpub25lOyI7PjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0PgorCisgICAgICAgICAg
ICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RF
bmQnLAorICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgICAgICdk
ZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAg
ICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAgICAgJ2Rv
bUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZG9tSW50ZXJhY3Rp
dmUnLAorICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgICAg
ICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAgICAgJ2R1cmF0aW9uJywKKyAgICAg
ICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICAgICAnZW50cnlUeXBl
JywKKyAgICAgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAgICAgJ2luaXRp
YXRvclR5cGUnLAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAg
ICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAor
ICAgICAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVxdWVz
dFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgICAg
ICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0
JywKKyAgICAgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICAgICAndHlw
ZScsCisgICAgICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAn
dW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAg
ICAgICAgXTsKKworICAgICAgICAgICAgZnVuY3Rpb24gbm90X3NhbWVfaW5zdGFuY2UoaW5zdGFu
Y2UxLCBpbnN0YW5jZTIsIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICBmb3IgKHZhciBp
IGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlMVthdHRy
aWJ1dGVzW2ldXSAhPSBpbnN0YW5jZTJbYXR0cmlidXRlc1tpXV0pCisgICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlM
aXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBu
YXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRl
bnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0
aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT25seSBvbmUgbmF2IHRpbWluZyBp
bnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWFpbl9mcmFt
ZV9pbnN0YW5jZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07
CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaWZyYW1lX2luc3RhbmNlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X3RydWUobm90X3NhbWVfaW5zdGFuY2UobWFpbl9mcmFtZV9pbnN0YW5jZSwgaWZy
YW1lX2luc3RhbmNlLCBuYXZUaW1pbmcyQXR0cmlidXRlcyksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIlR3byBuYXYgdGltaW5nIGluc3RhbmNlcyBhcmUgbm90IHRoZSBzYW1lIGluc3Rh
bmNlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAgICB9LCAiRWFjaCB3aW5k
b3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4iKTsKKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjBlYjFmNWZiMjQ0MjAwYzNiZjUwYTVlYWQ4ODZkNzg0Y2NhYjcyOAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitQ
ZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbgorCitOYXZpZ2F0aW9uIHdpbGwgcXVldWUg
YSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgbmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZh
YmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZp
Z2F0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0ZmIyYWZmOGVhYjc0ZTU5YzVhODRmYzJiY2Y0ODdm
MTIyZWM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sCkBAIC0w
LDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRs
ZT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNl
cnZlcnM6IG5hdmlnYXRpb248L2gxPgorPHA+CitOYXZpZ2F0aW9uIHdpbGwgPGEgaHJlZj0iaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4tcXVldWUtYS1wZXJm
b3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+LgorPC9wPgorPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAg
ICBmdW5jdGlvbiBjaGVja0VudHJ5KHBlcykgeworICAgICAgYXNzZXJ0X2VxdWFscyhwZXMubGVu
Z3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgZW50cnkiKTsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMocGVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLCAiZW50cnlUeXBlIGlzIFwi
bmF2aWdhdGlvblwiIik7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlc1swXS5uYW1lLCB3aW5kb3cu
bG9jYXRpb24udG9TdHJpbmcoKSwgIm5hbWUgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIGRvY3VtZW50
Iik7CisgICAgfQorICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAor
ICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAg
ICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGNoZWNrRW50
cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSk7CisgICAgICAgICAg
Y2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSh3aW5kb3cubG9jYXRpb24udG9T
dHJpbmcoKSkpOworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKyAgfSwgIm5hdmlnYXRpb24gZW50cnkgaXMgb2Jz
ZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJm
dGVzdGhhcm5lc3MuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMKaW5k
ZXggM2VmYjUyNzgzZjFlNWRjYjBkNDJhYWQxMWFlYzJhOWU0NzI1N2QzMy4uMGMyN2MyZWUzMDdm
NGI4MDk5YTZiNGM1YjA0OTdiYWY1MGI2MTEwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMv
d2VicGVyZnRlc3RoYXJuZXNzLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFy
bmVzcy5qcwpAQCAtNDIsMjUgKzQyLDI1IEBAIGZ1bmN0aW9uIHRlc3RfbmFtZXNwYWNlKGNoaWxk
X25hbWUsIHNraXBfcm9vdCkKIHsKICAgICBpZiAoc2tpcF9yb290ID09PSB1bmRlZmluZWQpIHsK
ICAgICAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UgaXMgZGVmaW5lZCc7Ci0gICAg
ICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFj
ZSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cpOworICAgICAgICB3cF90ZXN0KGZ1bmN0aW9u
ICgpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2UsIHVuZGVmaW5lZCwg
bXNnKTsgfSwgbXNnKTsKICAgICB9CiAKICAgICBpZiAoY2hpbGRfbmFtZSAhPT0gdW5kZWZpbmVk
KSB7CiAgICAgICAgIHZhciBtc2cyID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgY2hpbGRfbmFt
ZSArICcgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90
cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdICE9PSB1bmRlZmluZWQsIG1zZzIp
OyB9LCBtc2cyKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVh
bHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0sIHVuZGVmaW5lZCwgbXNnMik7IH0s
IG1zZzIpOwogICAgIH0KIH0KIAogZnVuY3Rpb24gdGVzdF9hdHRyaWJ1dGVfZXhpc3RzKHBhcmVu
dF9uYW1lLCBhdHRyaWJ1dGVfbmFtZSwgcHJvcGVydGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dp
bmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBhdHRyaWJ1dGVfbmFtZSAr
ICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90cnVlKHBl
cmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVfbmFtZV0gIT09IHVuZGVm
aW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkg
eyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bYXR0
cmlidXRlX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CiB9CiAK
IGZ1bmN0aW9uIHRlc3RfZW51bShwYXJlbnRfbmFtZSwgZW51bV9uYW1lLCB2YWx1ZSwgcHJvcGVy
dGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25h
bWUgKyAnLicgKyBlbnVtX25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAgICB3cF90ZXN0KGZ1bmN0
aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51
bV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdw
X3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNl
W3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVy
dGllcyk7CiAKICAgICBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSAr
ICcuJyArIGVudW1fbmFtZSArICcgPSAnICsgdmFsdWU7CiAgICAgd3BfdGVzdChmdW5jdGlvbigp
IHsgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9u
YW1lXSwgdmFsdWUsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CkBAIC0xMjIsNSArMTIyLDUg
QEAgZnVuY3Rpb24gdGVzdF9ncmVhdGVyX29yX2VxdWFscyh2YWx1ZSwgZ3JlYXRlcl90aGFuLCBt
c2csIHByb3BlcnRpZXMpCiAKIGZ1bmN0aW9uIHRlc3Rfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1
YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0
X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAg
ICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1YWxz
LCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUt
Y29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1j
b25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMTA4
ZDJlODMzNjRhZDE0ZmRmMmEzMDRmN2Q1NDgyODc4MGQ5ZWEyCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZh
bHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
LWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTJhMjU5ZWNkNDI1YzIxMmQ4
OWViMTE0OTgxZDRmMTJlODBmMzA1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29u
bmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorPHRpdGxl
Pk5hdmlnYXRpb24gVGltaW5nIHNlY3VyZWNvbm5lY3Rpb25zdGFydCByZXVzZTwvdGl0bGU+Cis8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
PgorY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQg
dmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVzZWQiKTsKK3dpbmRvdy5hZGRFdmVudExpc3Rl
bmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1bmNfZG9uZShlID0+IHsKKyAgYXNzZXJ0X2VxdWFscyhl
LmRhdGEsICJQQVNTIik7Cit9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMv
c2VjdXJlLWNvbm5lY3Rpb24taW50ZXJpbS5odG1sIj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1
cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Nl
Y3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4
MjIwNGQwNjUxNjY5NTdhYTkwMDk4OWNlYzdkYWNjYWNkZTM4NDg2Li41MTgyNzU4M2FkMzdlMWUx
MmMxYWJmNWYyMWM4Y2U2MjUwZTMxMDBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0
aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9j
b25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUg
QEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBoYXMg
YSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3Rh
cnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2Vu
dHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitGQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0
aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dyZWF0ZXJfdGhhbjogc2VjdXJlQ29ubmVjdGlv
blN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBn
b3QgMAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0MWEyNWZjNTAuLmQyZWE5
NTA0NzZkOTFiZTU2MDQ2ZDAzM2QxZmNkNjYxZDQ3OTgwZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3Vw
cG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9y
dGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCi1G
QUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLiBhc3NlcnRfdHJ1
ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICduYXZpZ2F0aW9uJyBpbiBQZXJmb3JtYW5jZU9i
c2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1Mg
c3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuCitQQVNTICduYXZpZ2F0
aW9uJyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZhYmxlLgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1
cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1
cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTc5
NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uMzQzODM1YTQyODQ1M2UwYjFj
ZjY1ZDg0ZGI4MzNmOTFhYmM4MzYxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdh
dGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25h
dmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDYgQEAKIAot
RkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4gYXNzZXJ0X3Ry
dWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicgaW4gUGVyZm9ybWFuY2VP
YnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitIYXJu
ZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworUEFTUyBzdXBwb3J0ZWRFbnRy
eVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1RJTUVPVVQgJ25hdmlnYXRpb24nIGVudHJp
ZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3QgdGltZWQgb3V0CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50
X29ubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU5YTM4NGE1YmIzNzAwNGU4ZjcwNDI4
NWIzNTJlZWFiNDkxM2NlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9v
bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVj
b2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQg
aW4gdGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMg
aGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCBhc3NlcnRfZ3JlYXRl
cl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKK0ZB
SUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9u
bG9hZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290
IGEgInVuZGVmaW5lZCIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjYzE4NDkx
ZDYyMDI0ZjFkNGZhM2QyMGM1MTczYjMxMzI2OWIzZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKQEAgLTAsMCArMSw0OCBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgor
ICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gYXR0cmlidXRlczwv
dGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iTW96aWxsYSIgaHJlZj0i
aHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNwcm9jZXNzaW5n
LW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9wZXJmb3Jt
YW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+Cisg
ICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMg
dGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNpemUgYW5kIGRl
Y29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hlbiBjaGVja2Vk
IGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVu
dExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAgICAgICAgICBs
ZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnRy
YW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9n
cmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVkQm9keVNpemUs
IDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAgICAgIH0sICJU
ZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29u
dGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCB0LnN0ZXBfZnVu
Y19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJk
ZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVu
Y29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAg
ICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRC
b2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAgICAgICAgICAgfSwgIlRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBhIHRhc2sg
YWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkpOworICAgICAgICAgICAgfSwgIlRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBvbmxvYWQi
KTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQKaW5kZXggZGE1MjYw
YTIyM2QyMmFkMWFjNGQ1ZDI5NzI2YzRhZTI3M2ViMWIyOC4uM2ZlZWFkMWZkZTcyMDMzNzM2ZGVm
MWYwNGU1YjQ3MTA5OGIwZDM4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1v
cmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3Jp
Z2luLWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwxNiBAQCBUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgdGhlIHZhbHVlcyBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aQogCiAKIAotRkFJTCBSZWRpcmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0
LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgot
RkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUn
KSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQt
aW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnku
dHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQ
cmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3Vt
ZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9y
aWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBv
cmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3Nz
IG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jv
c3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91
cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRoIFRBTyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCitQQVNT
IFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4KK1BBU1MgUmVkaXJlY3Qg
Y2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BBU1MgU2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0
IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0
IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBv
cmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4KK1BBU1MgTm8gcHJldmlv
dXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1l
IG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3Jp
Z2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2lu
IHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJl
ZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBj
cm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQt
ZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3Jp
Z2luLWNoZWNrLmh0bWwKaW5kZXggMzE5ZDA0NDYyZGViYTgyYjU0OGQ0NDI5MTA0MmQyOTZhZmFm
MzZhNy4uMDI0ZDhiNDUzMmNmMjIwZDE3NDgyNzdmMjFkOTA3Y2NhZTc4M2QyYiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Vu
bG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay5odG1sCkBAIC05Miw3ICs5Miw3IEBACiAgICAg
ICAgICAgICAgICAgY29uc3QgZW50cnkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVD
b250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIilbMF07CiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS50eXBlLCAi
bmF2aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOwog
ICAgICAgICAgICAgICAgIGlmICghdW5sb2FkX2V4cG9zZWQpIHsKLSAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhlbnRyeS51bmxvYWRFdmVudFN0YXJ0LCAwLCAiRXhwZWN0ZWQgdW5s
b2FkRXZlbnRTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1
ZShlbnRyeS51bmxvYWRFdmVudFN0YXJ0ID09IDAsICJFeHBlY3RlZCB1bmxvYWRFdmVudFN0YXJ0
IHRvIGJlIDAuIik7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnkudW5s
b2FkRXZlbnRFbmQsIDAsICJFeHBlY3RlZCB1bmxvYWRFdmVudEVuZCB0byBiZSAwLiIpOwogICAg
ICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVy
X3RoYW4oZW50cnkudW5sb2FkRXZlbnRTdGFydCwgMCwgIkV4cGVjdGVkIHVubG9hZEV2ZW50U3Rh
cnQgdG8gbm90IGJlIDAuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9NRVRBLnltbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OWZhZTFkYjBkOWI3YWZkMjAyNzM3ZTM0NzU0YjRlODkz
Mjk4ZDQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbApAQCAtMCwwICsxLDQg
QEAKK3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8KK3N1
Z2dlc3RlZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
YnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOGIzZTMyMzE0
NjU4NTdjZjI0OGU0YWNlOGVmNTc0NDY5YTE0ODY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCkBAIC0wLDAgKzEsMTEgQEAKK2Fz
eW5jX3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB0LnN0ZXBfdGlt
ZW91dCgoKSA9PiB7CisgICAgLy8gQWZ0ZXIgYSB0aW1lb3V0LCBQZXJmb3JtYW5jZU9ic2VydmVy
IHNob3VsZCBzdGlsbCByZWNlaXZlIGVudHJ5IGlmIHVzaW5nIHRoZSBidWZmZXJlZCBmbGFnLgor
ICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHQuc3RlcF9mdW5jX2RvbmUobGlzdCA9PiB7Cisg
ICAgICBjb25zdCBlbnRyaWVzID0gbGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICBhc3NlcnRfZXF1
YWxzKGVudHJpZXMubGVuZ3RoLCAxLCAnVGhlcmUgc2hvdWxkIGJlIDEgbWFyayBlbnRyeS4nKTsK
KyAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICdtYXJrJyk7CisgICAg
fSkpLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAgfSwgMTAwKTsK
K30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzZWVzIGVudHJ5IGFm
dGVyIHRpbWVvdXQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1vYnNlcnZl
ci5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjMxZGMzOWMxMjhhZDU1YzEzZWVmNjY1ODNhNjg4ODYyMmY4NmJmNjMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCkBAIC0wLDAgKzEs
MTUgQEAKK2FzeW5jX3Rlc3QoIHQ9PiB7CisgIGZvciAobGV0IGkgPSAwOyBpIDwgNTA7IGkrKykK
KyAgICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nICsgaSk7CisgIGxldCBtYXJrc0NyZWF0ZWQgPSA1
MDsKKyAgbGV0IG1hcmtzUmVjZWl2ZWQgPSAwOworICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihs
aXN0ID0+IHsKKyAgICBtYXJrc1JlY2VpdmVkICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsK
KyAgICBpZiAobWFya3NDcmVhdGVkIDwgMTAwKSB7CisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCdi
YXInICsgbWFya3NDcmVhdGVkKTsKKyAgICAgIG1hcmtzQ3JlYXRlZCsrOworICAgIH0KKyAgICBp
ZiAobWFya3NSZWNlaXZlZCA9PSAxMDApCisgICAgICB0LmRvbmUoKTsKKyAgfSkub2JzZXJ2ZSh7
dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIg
d2l0aCBidWZmZXJlZCBmbGFnIHNob3VsZCBzZWUgcGFzdCBhbmQgZnV0dXJlIGVudHJpZXMuJyk7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45Njkx
OTA4MTlmNTNlYjQ1MzdkYTAxOWM5MGNjMzNiZDBkYTNkOGRmCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAK
KworUEFTUyBHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cuCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQt
aW52YWxpZC1lbnRyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzNkNjU4OWUyNzVlMjY1MTgwZTA1NzFj
YTMxMDNkYmY5YWExNzliOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQt
ZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2FzeW5jX3Rlc3QoZnVuY3Rpb24odCkgeworICBw
ZXJmb3JtYW5jZS5tYXJrKCd3aW5kb3dNYXJrJyk7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3Jr
ZXIoInJlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzIik7CisgIHdvcmtlci5vbm1l
c3NhZ2UgPSBmdW5jdGlvbihldmVudCkgeworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsn
aW52YWxpZCddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBpbnZhbGlkIGVudHJpZXMuJyk7
CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhWydtYXJrJ10sIDEsICdUaGUgd29ya2VyIG11
c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhWydt
ZWFzdXJlJ10sIDAsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAwIG1lYXN1cmUgZW50cmllcy4nKTsK
KyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ2ludmFsaWQn
KS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBpbnZhbGlkIGVudHJp
ZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdt
YXJrJykubGVuZ3RoLCAxLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDEgbWFyayBlbnRy
eS4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ21l
YXN1cmUnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBtZWFzdXJl
IGVudHJpZXMuJykKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ0dldCBpbnZhbGlkIGVudHJpZXMg
ZnJvbSB3b3JrZXIgYW5kIHdpbmRvdy4nKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVz
cy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMzJlZmViZTk4ZmZkNDcyZWUxMDEwMDI3ZmY5NjZhMWVmOTA3
ZjE3ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMKQEAgLTAs
MCArMSwyNSBAQAorLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyx3b3JrZXIKKy8vIE1FVEE6IHNjcmlw
dD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMv
aWRsaGFybmVzcy5qcworCisvLyBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvCisKKyd1c2Ugc3RyaWN0JzsKKworaWRsX3Rlc3QoCisgIFsncGVyZm9ybWFuY2UtdGlt
ZWxpbmUnXSwKKyAgWydoci10aW1lJywgJ2RvbSddLAorICBhc3luYyBpZGxfYXJyYXkgPT4gewor
ICAgIGlkbF9hcnJheS5hZGRfb2JqZWN0cyh7CisgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3Jt
YW5jZSddLAorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlcjogWydvYnNlcnZlciddLAorICAgICAg
UGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDogWydlbnRyeUxpc3QnXSwKKyAgICB9KTsKKwor
ICAgIHNlbGYuZW50cnlMaXN0ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkg
PT4geworICAgICAgc2VsZi5vYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHJlc29s
dmUpOworICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7IGVudHJ5VHlwZXM6IFsnbWFyayddIH0pOwor
ICAgICAgcGVyZm9ybWFuY2UubWFyaygndGVzdCcpOworICAgIH0pOworICB9CispOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWctb2JzZXJ2ZXJzLmFueS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41ZGQ0NGZiMThmYmRiOWMzYzMyZjQ1MzhkMmVmN2VjMmNhYzQ3MzAyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMKQEAg
LTAsMCArMSwzMiBAQAorcHJvbWlzZV90ZXN0KCgpID0+IHsKKyAgLy8gVGhlIGZpcnN0IHByb21p
c2Ugd2FpdHMgZm9yIG9uZSBidWZmZXJlZCBmbGFnIG9ic2VydmVyIHRvIHJlY2VpdmUgMyBlbnRy
aWVzLgorICBjb25zdCBwcm9taXNlMSA9IG5ldyBQcm9taXNlKHJlc29sdmUxID0+IHsKKyAgICBs
ZXQgbnVtT2JzZXJ2ZWQxID0gMDsKKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoZW50cnlM
aXN0LCBvYnMpID0+IHsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBj
b25zdHJ1Y3RlZCBhZnRlciBhIHJlZ3VsYXIgb2JzZXJ2ZXIgZGV0ZWN0cyBhIG1hcmsuCisgICAg
ICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2JzZXJ2ZWQx
ICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2VydmVkMSA9
PSAzKQorICAgICAgICAgIHJlc29sdmUxKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBlOiAnbWFy
aycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgICBvYnMuZGlzY29ubmVjdCgpOworICAgIH0pLm9i
c2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZm9v
Jyk7CisgIH0pOworICAvLyBUaGUgc2Vjb25kIHByb21pc2Ugd2FpdHMgZm9yIGFub3RoZXIgYnVm
ZmVyZWQgZmxhZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJvbWlz
ZTIgPSBuZXcgUHJvbWlzZShyZXNvbHZlMiA9PiB7CisgICAgc3RlcF90aW1lb3V0KCgpID0+IHsK
KyAgICAgIGxldCBudW1PYnNlcnZlZDIgPSAwOworICAgICAgLy8gVGhpcyBidWZmZXJlZCBmbGFn
IG9ic2VydmVyIGlzIGNvbnN0cnVjdGVkIGFmdGVyIGEgZGVsYXkgb2YgMTAwbXMuCisgICAgICBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2JzZXJ2ZWQyICs9
IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2VydmVkMiA9PSAz
KQorICAgICAgICAgIHJlc29sdmUyKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBlOiAnbWFyaycs
IGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgfSwgMTAwKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdi
YXInKTsKKyAgfSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ21lb3cnKTsKKyAgLy8gUGFzcyBpZiBh
bmQgb25seSBpZiBib3RoIGJ1ZmZlcmVkIG9ic2VydmVycyByZWNlaXZlZCBhbGwgMyBtYXJrIGVu
dHJpZXMuCisgIHJldHVybiBQcm9taXNlLmFsbChbcHJvbWlzZTEsIHByb21pc2UyXSk7Cit9LCAn
TXVsdGlwbGUgUGVyZm9ybWFuY2VPYnNlcnZlcnMgd2l0aCBidWZmZXJlZCBmbGFnIHNlZSBhbGwg
ZW50cmllcycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1NDJjZjdj
NGFhY2YwMjkxNjY1YThmNDk3NjVhZGQ4ODVlYmM0MmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL25vdC1jbG9uYWJsZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBU
ZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZhaWxzCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJs
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ2NTE3NzZlNWY0Yjk0NTMyOGU5ZGUyNjUxYjhhNTlmMTFiNTM0
MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCkBAIC0wLDAg
KzEsMTAgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRl
c3QgdGhhdCBhIHBvc3RNZXNzYWdlIG9mIGEgcGVyZm9ybWFuY2UgZW50cnkgZmFpbHMiKTsKKyAg
YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9PiB7CisgICAg
YXNzZXJ0X2VxdWFscyhlLmRhdGEsICJQQVNTIik7CisgIH0pKTsKKzwvc2NyaXB0PgorPGlmcmFt
ZSBzcmM9InJlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIj48L2lmcmFtZT4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9v
YnNlcnZlci1idWZmZXJlZC1mYWxzZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTI4MTAwYjBmZGJhMmUw
MDU3OTgwOWE1ODE5MzVkMzEyY2YxMjQ1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2Jz
ZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCkBAIC0wLDAgKzEsMTIgQEAKK2FzeW5jX3Rlc3Qo
dCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICAvLyBVc2UgYSB0aW1lb3V0IHRv
IGVuc3VyZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB0ZXN0IHJ1bnMgYWZ0ZXIgdGhlIGVudHJ5IGlz
IGNyZWF0ZWQuCisgIHQuc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICAvLyBPYnNlcnZlciB3aXRo
IGJ1ZmZlcmVkIGZsYWcgc2V0IHRvIGZhbHNlIHNob3VsZCBub3Qgc2VlIGVudHJ5LgorICAgIG5l
dyBQZXJmb3JtYW5jZU9ic2VydmVyKCgpID0+IHsKKyAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1No
b3VsZCBub3QgaGF2ZSBvYnNlcnZlZCBhbnkgZW50cnkhJyk7CisgICAgfSkub2JzZXJ2ZSh7dHlw
ZTogJ21hcmsnLCBidWZmZXJlZDogZmFsc2V9KTsKKyAgICAvLyBVc2UgYSB0aW1lb3V0IHRvIGdp
dmUgdGltZSB0byB0aGUgb2JzZXJ2ZXIuCisgICAgdC5zdGVwX3RpbWVvdXQodC5zdGVwX2Z1bmNf
ZG9uZSgoKSA9PiB7fSksIDEwMCk7CisgIH0sIDApOworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIg
d2l0aG91dCBidWZmZXJlZCBmbGFnIHNldCB0byBmYWxzZSBjYW5ub3Qgc2VlIHBhc3QgZW50cmll
cy4nKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55Lmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRm
MDE1NmVlYzE5MjQxOTcwMDI4YzI4ZTU4OTdiZTRkNmYxY2I4MQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCkBAIC0wLDAgKzEsMjEgQEAK
K3Rlc3QoKCkgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdtYXJrTmFtZScpOworICBwZXJmb3Jt
YW5jZS5tZWFzdXJlKCdtZWFzdXJlTmFtZScpOworCisgIGNvbnN0IGVudHJpZXMgPSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKCk7CisgIGNvbnN0IHBlcmZvcm1hbmNlRW50cnlLZXlzID0gWworICAg
ICduYW1lJywKKyAgICAnZW50cnlUeXBlJywKKyAgICAnc3RhcnRUaW1lJywKKyAgICAnZHVyYXRp
b24nCisgIF07CisgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7ICsraSkgewor
ICAgIGFzc2VydF9lcXVhbHModHlwZW9mKGVudHJpZXNbaV0udG9KU09OKSwgJ2Z1bmN0aW9uJyk7
CisgICAgY29uc3QganNvbiA9IGVudHJpZXNbaV0udG9KU09OKCk7CisgICAgYXNzZXJ0X2VxdWFs
cyh0eXBlb2YoanNvbiksICdvYmplY3QnKTsKKyAgICBmb3IgKGNvbnN0IGtleSBvZiBwZXJmb3Jt
YW5jZUVudHJ5S2V5cykgeworICAgICAgYXNzZXJ0X2VxdWFscyhqc29uW2tleV0sIGVudHJpZXNb
aV1ba2V5XSwKKyAgICAgICAgYGVudHJpZXNbJHtpfV0udG9KU09OKCkuJHtrZXl9IHNob3VsZCBt
YXRjaCBlbnRyaWVzWyR7aX1dLiR7a2V5fWApOworICAgIH0KKyAgfQorfSwgJ1Rlc3QgdG9KU09O
KCkgaW4gUGVyZm9ybWFuY2VFbnRyeScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFj
ay1tdXRhdGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55LmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjhmMWIwOWJjMzc3MTIwODAyNDAxZGUxYjI0N2FhNTdkYjc0MTRjNjgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanMKQEAgLTAsMCArMSw2
NiBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBjYWxsYmFja0NvdW50ID0gMDsKKyAgICB2YXIg
b2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMo
ZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2FsbGJhY2tDb3VudCsrOwor
CisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDEpIHsKKyAgICAgICAgICAgIGNoZWNr
RW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtlbnRyeVR5
cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICBdKTsKKyAgICAg
ICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7CisgICAgICAg
ICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDIpIHsKKyAgICAgICAg
ICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAgICBdKTsKKyAg
ICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdlLW9ic2Vy
dmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFz
dXJlKCJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIik7Cisg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOwor
ICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMyIpOworICAgICAgICAgICAg
c2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAzKSB7Cisg
ICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAg
ICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAorICAgICAg
ICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrLWJlZm9yZS1jaGFuZ2Utb2Jz
ZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIn0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8t
Ym90aCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJl
Zm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIik7CisgICAgICAgICAgICBvYnNlcnZl
ci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisgICAgICAgICAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcms0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm1lYXN1cmU0Iik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
ICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDQpIHsKKyAgICAgICAgICAg
IGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtYmVmb3JlLWNoYW5nZS1vYnNlcnZl
LXN0YXRlLXRvLWJvdGgifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBu
YW1lOiAibWVhc3VyZTQifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1l
OiAibWFyazQifSwKKyAgICAgICAgICAgIF0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tYXJrKCJtYXJrLWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYmVmb3JlLWRpc2Nvbm5lY3QiKTsKKyAgICAgICAgICAg
IG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFy
aygibWFyay1hZnRlci1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1lYXN1cmUoIm1lYXN1cmUtYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAgICAgdC5kb25l
KCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgYXNzZXJ0
X3VucmVhY2hlZCgiVGhlIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQgYWZ0ZXIgZGlzY29u
bmVjdGluZyIpOworICAgICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2VydmVyLm9ic2VydmUo
e2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJt
YXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgfSwg
IlBlcmZvcm1hbmNlT2JzZXJ2ZXIgbW9kaWZpY2F0aW9ucyBpbnNpZGUgY2FsbGJhY2sgc2hvdWxk
IHVwZGF0ZSBmaWx0ZXJpbmcgYW5kIG5vdCBjbGVhciBidWZmZXIiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jYWM5N2JlYTA3NTVjMTE4Mjk1NmZkZjk0Yzk4ZWU3OGNhNDBiMDE3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlwZXMuYW55Lmpz
CkBAIC0wLDAgKzEsMTkgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5q
cworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgIGNvbnN0IG9ic2VydmVyICA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlz
dCkgeworICAgICAgICAvLyBUaGVyZSBzaG91bGQgYmUgbm8gbWFyayBlbnRyeS4KKyAgICAgICAg
Y2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sgZW50cnlU
eXBlOiAibWVhc3VyZSIsIG5hbWU6ICJiIn1dKTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9
KQorICAgICk7CisgIG9ic2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIn0pOworICAvLyBEaXNj
b25uZWN0IHRoZSBvYnNlcnZlci4KKyAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAvLyBOb3cs
IG9ubHkgb2JzZXJ2ZSBtZWFzdXJlLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWVhc3Vy
ZSJ9KTsKKyAgcGVyZm9ybWFuY2UubWFyaygiYSIpOworICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJi
Iik7Cit9LCAiVHlwZXMgb2JzZXJ2ZWQgYXJlIGZvcmdvdHRlbiB3aGVuIGRpc2Nvbm5lY3QoKSBp
cyBjYWxsZWQuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZjVmYjVhYTQzYmE0NjI2
OGY4YzM1NWZkYzkzYzZmMTgyOTk2OGI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1k
aXNjb25uZWN0LmFueS5qcwpAQCAtMCwwICsxLDM3IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9y
bWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFy
IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5j
KGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQo
IlRoaXMgY2FsbGJhY2sgbXVzdCBub3QgYmUgaW52b2tlZCIpOworICAgICAgICB9KQorICAgICAg
KTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSIs
ICJuYXZpZ2F0aW9uIl19KTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgi
bWVhc3VyZTEiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7CisgICAgICB0LmRv
bmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgImRpc2Nvbm5lY3RlZCBjYWxsYmFja3MgbXVzdCBu
b3QgYmUgaW52b2tlZCIpOworCisgIHRlc3QoZnVuY3Rpb24gKCkgeworICAgIHZhciBvYnMgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoKSB7IHJldHVybiB0cnVlOyB9KTsKKyAg
ICBvYnMuZGlzY29ubmVjdCgpOworICAgIG9icy5kaXNjb25uZWN0KCk7CisgIH0sICJkaXNjb25u
ZWN0aW5nIGFuIHVuY29ubmVjdGVkIG9ic2VydmVyIGlzIGEgbm8tb3AiKTsKKworICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgewor
ICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBub3QgYmUgaW52
b2tlZCIpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsK
KyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJt
YXJrMiIpOworICAgIHQuc3RlcF90aW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAgIHQuZG9uZSgp
OworICAgIH0sIDIwMDApOworICB9LCAiQW4gb2JzZXJ2ZXIgZGlzY29ubmVjdGVkIGFmdGVyIGEg
bWFyayBtdXN0IG5vdCBoYXZlIGl0cyBjYWxsYmFjayBpbnZva2VkIik7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5h
bnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYjBjNzgxYTNjMGMwM2JmODFlODIwMTY4YmRmNzBiNTM2Mjc1MDQw
YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qcwpAQCAt
MCwwICsxLDY0IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKwor
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107
CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIg
PSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzKSB7CisKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9IGVudHJ5TGlz
dC5nZXRFbnRyaWVzKCk7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNfYnlfdHlwZSA9IGVudHJ5
TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIik7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNf
YnlfbmFtZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJuYW1lLXJlcGVhdCIpOworICAg
ICAgICAgIHZhciBzdGFydFRpbWVPZk1hcmsyID0gZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUo
Im1hcmsyIilbMF0uc3RhcnRUaW1lOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2Vu
dHJpZXMpOworICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywgWworICAgICAg
ICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAgICAg
ICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn0sCisgICAgICAgICAg
ICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAorICAgICAgICAgICAg
e2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICB7ZW50cnlU
eXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1l
YXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0xIn0sCisgICAgICAgICAgICB7
ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTIifSwK
KyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisg
ICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAg
ICAgICAgIF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfdHlw
ZSk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUsIFsKKyAg
ICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAg
ICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5
cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgXSk7CisKKyAgICAg
ICAgICBjaGVja1NvcnRlZChzdG9yZWRfZW50cmllc19ieV9uYW1lKTsKKyAgICAgICAgICBjaGVj
a0VudHJpZXMoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSwgWworICAgICAgICAgICAge2VudHJ5VHlw
ZTogIm1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5
cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAg
ICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9
KQorICAgICAgKTsKKworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayIs
ICJtZWFzdXJlIl19KTsKKworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgd2FpdCgpOyAvLyBF
bnN1cmUgbWFyazEgIT09IG1hcmsyIHN0YXJ0VGltZSBieSBtYWtpbmcgc3VyZSBwZXJmb3JtYW5j
ZS5ub3cgYWR2YW5jZXMuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAg
IHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1lYXN1cmUoIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSIsICJtYXJrMiIpOworICAgIHdh
aXQoKTsgLy8gRW5zdXJlIG1hcmsyICE9PSBtYXJrMyBzdGFydFRpbWUgYnkgbWFraW5nIHN1cmUg
cGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFt
ZS1yZXBlYXQiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUzIik7Cisg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTIiLCAi
bWFyazIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2ls
bCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJuYW1lLXJlcGVhdCIpOworICAg
IHdhaXQoKTsgLy8gRW5zdXJlIG5hbWUtcmVwZWF0IHN0YXJ0VGltZSB3aWxsIGRpZmZlci4KKyAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm5hbWUtcmVwZWF0Iik7CisgIH0sICJnZXRFbnRy
aWVzLCBnZXRFbnRyaWVzQnlUeXBlLCBnZXRFbnRyaWVzQnlOYW1lIHNvcnQgb3JkZXIiKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVu
dHJpZXMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2MTY5ZDVkYmQ2ZTBlMjA1MDZkMjAxNDY1ODVkYmM4
OWU3NTBjMjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55Lmpz
CkBAIC0wLDAgKzEsMzggQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5q
cworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcg
UGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1dLCAi
Z2V0RW50cmllcyIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlUeXBlKCJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5VHlwZSIpOworICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAg
ICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKyAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCIyMzQ1NjciKS5s
ZW5ndGgsIDAsCisgICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQg
ZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5
TmFtZSgibWFyazEiKSwKKyAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bWFyazEifV0sICJnZXRFbnRyaWVzQnlOYW1lIik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiKS5sZW5ndGgsIDAsCisgICAgICAgICAg
ICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgiMjM0NTY3IikubGVuZ3Ro
LCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRy
eSIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1l
KCJtYXJrMSIsICJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSIpOworICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiwgIm1lYXN1
cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlw
ZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRy
eUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiLCAibWVhc3VyZSIpLmxlbmd0aCwgMCwKKyAg
ICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8gZXhwZWN0ZWQg
ZW50cnkiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlO
YW1lKCJtYXJrMSIsICIyMzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmll
c0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAg
ICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0p
CisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7
CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICB9LCAiZ2V0RW50cmllcywg
Z2V0RW50cmllc0J5VHlwZSBhbmQgZ2V0RW50cmllc0J5TmFtZSB3b3JrIik7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3Vy
ZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMGIyMDVlMDk0Yzc1ZTEwYmMxYjkzZmY5NjZhZWEwZmQyM2E1
ODZmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qcwpA
QCAtMCwwICsxLDYxIEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMK
KworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0g
W107CisgICAgdmFyIG9ic2VydmVyICA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAg
ICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBzdG9y
ZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQoZW50cnlMaXN0
LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKHN0b3JlZF9lbnRyaWVzLmxlbmd0aCA+PSA0
KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsCisgICAgICAgICAg
ICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAgICAgICAgICAg
eyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAgICAgIHsgZW50
cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgICB7IGVu
dHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAgICAgb2Jz
ZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQor
ICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBb
Im1hcmsiLCAibWVhc3VyZSJdfSk7CisgIH0sICJlbnRyaWVzIGFyZSBvYnNlcnZhYmxlIik7CisK
KyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBtYXJrX2VudHJpZXMgPSBbXTsK
KyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgbWFya19lbnRy
aWVzID0KKyAgICAgICAgICAgIG1hcmtfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJp
ZXMoKSk7CisgICAgICAgICAgaWYgKG1hcmtfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAg
ICAgICAgY2hlY2tFbnRyaWVzKG1hcmtfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlU
eXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTog
Im1hcmsiLCBuYW1lOiAibWFyazIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVj
dCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAg
ICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAg
IHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1h
cmsoIm1hcmsyIik7CisgIH0sICJtYXJrIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKKworICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG1lYXN1cmVfZW50cmllcyA9IFtdOwor
ICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0
ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBtZWFzdXJlX2Vu
dHJpZXMgPQorICAgICAgICAgICAgbWVhc3VyZV9lbnRyaWVzLmNvbmNhdChlbnRyeUxpc3QuZ2V0
RW50cmllcygpKTsKKyAgICAgICAgICBpZiAobWVhc3VyZV9lbnRyaWVzLmxlbmd0aCA+PSAyKSB7
CisgICAgICAgICAgICBjaGVja0VudHJpZXMobWVhc3VyZV9lbnRyaWVzLAorICAgICAgICAgICAg
ICBbeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAg
ICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9XSk7CisgICAgICAg
ICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAg
ICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5
VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFz
dXJlMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgfSwg
Im1lYXN1cmUgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1vYnNlcnZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZGY4NWU1ODU2Y2U4NzNmMTIxZGM1MTU0NGM1NDRiNDE0MzlmYTI2YgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw3IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVm
ZmVyZWQKKworUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZl
IHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcworCisKK1BBU1MgUGVyZm9ybWFuY2VPYnNlcnZl
ckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmll
cworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmJi
YTM5NmE2YjY5ZWJhZDU2YWQ0ZjFiMTM1Y2I4YWQ0OWQzMjFiNwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qcwpAQCAtMCwwICsxLDE3IEBA
CisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgY2hl
Y2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJlYXJseSJ9XSk7CisgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9KQorICAgICk7CisgIHBlcmZvcm1hbmNlLm1h
cmsoImVhcmx5Iik7CisgIC8vIFRoaXMgY2FsbCB3aWxsIG5vdCB0cmlnZ2VyIGFueXRoaW5nLgor
ICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gVGhpcyBjYWxsIHNob3Vs
ZCBvdmVycmlkZSB0aGUgcHJldmlvdXMgY2FsbCBhbmQgZGV0ZWN0IHRoZSBlYXJseSBtYXJrLgor
ICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayIsIGJ1ZmZlcmVkOiB0cnVlfSk7Cit9LCAi
VHdvIGNhbGxzIG9mIG9ic2VydmUoKSB3aXRoIHRoZSBzYW1lICd0eXBlJyBjYXVzZSBvdmVycmlk
ZS4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1v
YnNlcnZlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTQ4ZjBmMzc2NGJkYTRjZWI4OGIyYThiZTRkNjVmMTY4
MzYyNjI3YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCkBAIC0w
LDAgKzEsODYgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRs
ZT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8
L3RpdGxlPgorPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+Cis8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icGVy
Zm9ybWFuY2VvYnNlcnZlcnMuanMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNlT2JzZXJ2ZXJz
OiBQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZDwvaDE+Cis8cD4KK1BlcmZvcm1hbmNl
T2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVk
IGVudHJpZXMKKzwvcD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVuY3Rpb24gaW5pdFRlc3QoKSB7CisgICAgICBuZXcg
UGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgeworICAg
ICAgICBlbnRyeUxpc3QuZ2V0RW50cmllcygpLmZvckVhY2goZnVuY3Rpb24oZW50cnkpIHsKKyAg
ICAgICAgICBpZiAoc2hvdWxkRXhjbHVkZShlbnRyeSkpIHsKKyAgICAgICAgICAgIHJldHVybjsK
KyAgICAgICAgICB9CisKKyAgICAgICAgICBvYnNlcnZlZEVudHJpZXMucHVzaChlbnRyeSk7Cisg
ICAgICAgICAgaWYgKG9ic2VydmVkRW50cmllcy5sZW5ndGggPT09IGVudHJ5VHlwZXMubGVuZ3Ro
KSB7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBydW5U
ZXN0KCk7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKyAgICAgIH0pLm9ic2VydmUoe2VudHJ5
VHlwZXN9KTsKKworICAgICAgLy8gY3JlYXRlcyBhIGByZXNvdXJjZWAgZW50cnkKKyAgICAgIHZh
ciBpbWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICAgIGltZy5zcmMgPSAi
Li9yZXNvdXJjZXMvc3F1YXJlLnBuZyI7CisgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxk
KGltZyk7CisKKyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoIm1hcmtOYW1lIik7IC8vIGNyZWF0ZXMg
YSBgbWFya2AgZW50cnkKKyAgICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmVOYW1lIik7
IC8vIGNyZWF0ZXMgYSBgbWVhc3VyZWAgZW50cnkKKyAgICB9CisgICAgZnVuY3Rpb24gc2hvdWxk
RXhjbHVkZShlbnRyeSkgeworICAgICAgLy8gZXhjbHVkZSBhbGwgYHJlc291cmNlYCBlbnRyaWVz
IHRoYXQgYXJlbid0IGZvciAic3F1YXJlLnBuZyIKKyAgICAgIHJldHVybiBlbnRyeS5lbnRyeVR5
cGUgPT09ICJyZXNvdXJjZSIgJiYKKyAgICAgICAgICAgICBlbnRyeS5uYW1lLmluZGV4T2YoInNx
dWFyZS5wbmciKSA9PT0gLTE7CisgICAgfQorICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAg
ICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgaXMgYSBub3AgYmVjYXVzZSB3ZSd2ZSBhbHJl
YWR5IGJlZW4gbm90aWZpZWQgYWJvdXQgYWxsIG9mIG91ciBgZW50cnlUeXBlc2AKKyAgICAgIHZh
ciBwb19ub3AgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBv
YnNlcnZlcikgeworICAgICAgICBpZiAoZW50cnlMaXN0LmdldEVudHJpZXMoKS5maW5kKGZ1bmN0
aW9uKGVudHJ5KSB7CisgICAgICAgICAgcmV0dXJuICFzaG91bGRFeGNsdWRlKGVudHJ5KTsKKyAg
ICAgICAgfSkpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJ0aGlzIFBlcmZvcm1hbmNl
T2JzZXJ2ZXIgY2FsbGJhY2sgc2hvdWxkIG5ldmVyIGJlIGNhbGxlZCIpOworICAgICAgICB9Cisg
ICAgICB9KTsKKyAgICAgIHBvX25vcC5vYnNlcnZlKHsKKyAgICAgICAgZW50cnlUeXBlcywKKyAg
ICAgIH0pOworCisgICAgICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgc2hvdWxkIGJlIG5v
dGlmaWVkIGFib3V0IHRoZSBwcmV2aW91c2x5CisgICAgICAvLyBidWZmZXJlZCBtYXJrIGVudHJ5
IG9ubHkKKyAgICAgIGNvbnN0IGJ1ZmZlcmVkRW50cmllcyA9IFtdOworICAgICAgbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAg
ZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAg
ICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgICAgfQorCisgICAgICAgICAgYnVmZmVyZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAg
ICAgIGlmIChidWZmZXJlZEVudHJpZXMubGVuZ3RoID09PSAxKSB7CisgICAgICAgICAgICBvYnNl
cnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBwb19ub3AuZGlzY29ubmVjdCgpOworICAg
ICAgICAgICAgZm9yIChpID0gMDsgaSA8IGJ1ZmZlcmVkRW50cmllcy5sZW5ndGg7IGkrKykgewor
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGJ1ZmZlcmVkRW50cmllc1tpXS5lbnRyeVR5cGUs
ICJtYXJrIikKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAg
IH0KKyAgICAgICAgfSk7CisgICAgICB9KS5vYnNlcnZlKHsKKyAgICAgICAgdHlwZTogIm1hcmsi
LAorICAgICAgICBidWZmZXJlZDogdHJ1ZQorICAgICAgfSk7CisgICAgfQorCisgICAgY29uc3Qg
ZW50cnlUeXBlcyA9IFsibmF2aWdhdGlvbiIsICJyZXNvdXJjZSIsICJtYXJrIiwgIm1lYXN1cmUi
XTsKKyAgICBjb25zdCBvYnNlcnZlZEVudHJpZXMgPSBbXTsKKyAgICBpbml0VGVzdCgpOworICB9
LCAiUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZp
b3VzbHkgYnVmZmVyZWQgZW50cmllcyIpOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMWVlZTY1ZTlmOWFiNWZiMjMzNzNlYjlkOGE3MGEzMzljMDVhMDIz
NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlCisKK05ldyByZXNv
dXJjZXMgd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKworUEFTUyByZXNvdXJjZSBl
bnRyaWVzIGFyZSBvYnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2Uu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMGMxNzNlZWFlOTIx
ZmJlY2MzZWVlYTU0ZDhhZGZhNmI5ZWQ1MzY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1yZXNvdXJjZS5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEg
Y2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8L3Rp
dGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJm
b3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8L2gxPgorPHA+CitOZXcgcmVzb3VyY2VzIHdpbGwg
PGEgaHJlZj0iaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4t
cXVldWUtYS1wZXJmb3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+Lgor
PC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICBmdW5jdGlvbiBwYXRoKHBhdGhuYW1lKSB7CisgICAgICB2YXIgZmlsZW5h
bWUgPSBwYXRobmFtZS5zdWJzdHJpbmcocGF0aG5hbWUubGFzdEluZGV4T2YoJy8nKSsxKTsKKyAg
ICAgIHJldHVybiBwYXRobmFtZS5zdWJzdHJpbmcoMCwgcGF0aG5hbWUubGVuZ3RoIC0gZmlsZW5h
bWUubGVuZ3RoKTsKKyAgICB9CisgICAgdmFyIGdVbmlxdWVDb3VudGVyID0gMDsKKyAgICBmdW5j
dGlvbiBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpIHsKKyAgICAgIHJldHVybiBEYXRlLm5vdygpICsg
Ii0iICsgKCsrZ1VuaXF1ZUNvdW50ZXIpOworICAgIH0KKyAgICB2YXIgc3RvcmVkX2VudHJpZXMg
PSBbXTsKKyAgICB2YXIgaW1nX2xvY2F0aW9uID0gZG9jdW1lbnQubG9jYXRpb24ub3JpZ2luICsg
cGF0aChkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSkKKyAgICAgICArICJyZXNvdXJjZXMvc3F1
YXJlLnBuZz9yYW5kb209IjsKKyAgICB2YXIgaW1nMSA9IGltZ19sb2NhdGlvbiArIGdlbmVyYXRl
VW5pcXVlVmFsdWVzKCk7CisgICAgdmFyIGltZzIgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVu
aXF1ZVZhbHVlcygpOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAg
ICAgICBzdG9yZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQo
ZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikpOworICAgICAgICAgIGlmIChz
dG9yZWRfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0
b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIsIG5h
bWU6IGltZzF9LAorICAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIsIG5hbWU6
IGltZzJ9XSk7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAg
ICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsicmVzb3VyY2UiXX0pOworICAgIHZhciBpbWcgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICBpbWcuc3JjID0gaW1nMTsKKyAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CisgICAgaW1nID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9IGltZzI7CisgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChpbWcpOworICB9LCAicmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIp
OworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tdGFrZVJlY29yZHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2YWQzOTdiMGE1YzM3
OWQwMTI5ZDQzYzkyOTUyYmM2YzhjNWMwY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LXRha2VSZWNvcmRzLmFueS5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBNRVRBOiB0aXRsZT1QZXJm
b3JtYW5jZU9ic2VydmVyOiB0YWtlUmVjb3JkcworLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNl
b2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBjb25zdCBvYnNl
cnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2Vy
dmVyKSB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdUaGlzIGNhbGxiYWNrIHNob3VsZCBub3Qg
aGF2ZSBiZWVuIGNhbGxlZC4nKQorICAgIH0pOworICAgIGxldCBlbnRyaWVzID0gb2JzZXJ2ZXIu
dGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRz
IGJlZm9yZSBvYnNlcnZlJyk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWydt
YXJrJ119KTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihvYnNlcnZlci50YWtlUmVjb3Jkcyks
ICdmdW5jdGlvbicpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAg
IGNoZWNrRW50cmllcyhlbnRyaWVzLCBbXSwgJ05vIHJlY29yZHMganVzdCBmcm9tIG9ic2VydmUn
KTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdhJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYicp
OworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmll
cyhlbnRyaWVzLCBbCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdhJ30sCisgICAg
ICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdiJ30KKyAgICBdKTsKKyAgICBwZXJmb3JtYW5j
ZS5tYXJrKCdjJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZCcpOworICAgIHBlcmZvcm1hbmNl
Lm1hcmsoJ2UnKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBj
aGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAn
Yyd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZCd9LAorICAgICAge2VudHJ5
VHlwZTogJ21hcmsnLCBuYW1lOiAnZSd9CisgICAgXSk7CisgICAgZW50cmllcyA9IG9ic2VydmVy
LnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8gZW50cmll
cyByaWdodCBhZnRlciB0YWtlUmVjb3JkcycpOworICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsK
KyAgICB0LmRvbmUoKTsKKyAgfSwgIlRlc3QgUGVyZm9ybWFuY2VPYnNlcnZlcidzIHRha2VSZWNv
cmRzKCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmVmNWJlNzMzOTViNDlkODk1YTI1ODliZTU0N2E3ZjM5NTBmNDE2YmEKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sCkBAIC0wLDAg
KzEsMTcgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2FkZEV2ZW50TGlzdGVuZXIoImxv
YWQiLCAoKSA9PiB7CisgIGNvbnN0IGVudHJ5ID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdOworICB0cnkgeworICAgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2Uo
ZW50cnksICIqIik7CisgIH0gY2F0Y2goZXJyb3IpIHsKKyAgICBpZiAoZXJyb3IubmFtZSA9PSAi
RGF0YUNsb25lRXJyb3IiKSB7CisgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKCJQQVNTIiwg
IioiKTsKKyAgICB9IGVsc2UgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiRkFJTCAt
IFdyb25nIGV4Y2VwdGlvbiBuYW1lOiAiICsgZXJyb3IubmFtZSwgIioiKTsKKyAgICB9CisgIH0K
KyAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiRkFJTCAtIE5vIGV4Y2VwdGlvbiB0aHJvd24iLCAi
KiIpOworfSk7CisKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29y
a2VyLWludmFsaWQtZW50cmllcy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlk
LWVudHJpZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmQ3ZmJhMmNjZjRiNmFiN2U2MDQyNzNjMjUwMTBlMzFl
NDQzZTM3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZh
bGlkLWVudHJpZXMuanMKQEAgLTAsMCArMSw2IEBACitwZXJmb3JtYW5jZS5tYXJrKCd3b3JrZXJN
YXJrJyk7Citwb3N0TWVzc2FnZSh7CisgICdpbnZhbGlkJyA6IHBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoJ2ludmFsaWQnKS5sZW5ndGgsCisgICdtYXJrJyA6IHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoJ21hcmsnKS5sZW5ndGgsCisgICdtZWFzdXJlJyA6IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoJ21lYXN1cmUnKS5sZW5ndGgKK30pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5hNzJmZTgxYzQ3ZmVhY2U3NjU2MTNhMDk2MmYyYTdlNjNmNzFmYTI1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIu
anMKQEAgLTAsMCArMSw2IEBACit0cnkgeworICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoKSA9
PiB0cnVlKTsKKyAgcG9zdE1lc3NhZ2UoIlNVQ0NFU1MiKTsKK30gY2F0Y2ggKGV4KSB7CisgIHBv
c3RNZXNzYWdlKCJGQUlMVVJFIik7Cit9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVu
dHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5h
bnktZXhwZWN0ZWQudHh0CmluZGV4IDEzOGJkZTY2MTk2MjQzZTY3MDMwZDFhZTE0MmJkYTQxMTQ4
ZTIzMGIuLmU1ZWIxMThhYjIyNDNkMWNhMzQ1NzUwOTU0MGEyMDgyODAyODlkOTYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBA
QAogCiBQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJpZXMg
aW4gYWxwaGFiZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJl
c3VsdCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50
cnlUeXBlcy5hbnkuanMKaW5kZXggYTAyMjVhZDJmNzZmZGNmZWJiMGE3YzlhZmY5YmQwMDMwZWNm
ODZhYS4uMjVmMTk1OTM5ZTdiNjkyNTA5NjI1YjgxMzFlNTM3MTY0Y2RmNTZjMCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcworKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBv
cnRlZEVudHJ5VHlwZXMuYW55LmpzCkBAIC0xMCwzICsxMCwxMCBAQCB0ZXN0KCgpID0+IHsKICAg
ICAgICInIGFyZSByZXBlYXRlZCBvciB0aGV5IGFyZSBub3QgaW4gYWxwaGFiZXRpY2FsIG9yZGVy
LiIpCiAgIH0KIH0sICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRy
aWVzIGluIGFscGhhYmV0aWNhbCBvcmRlciIpOworCit0ZXN0KCgpID0+IHsKKyAgaWYgKHR5cGVv
ZiBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgPT09ICJ1bmRlZmluZWQi
KQorICAgIGFzc2VydF91bnJlYWNoZWQoInN1cHBvcnRlZEVudHJ5VHlwZXMgaXMgbm90IHN1cHBv
cnRlZC4iKTsKKyAgYXNzZXJ0X3RydWUoUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRy
eVR5cGVzID09PQorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVz
KTsKK30sICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQiKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAx
MzhiZGU2NjE5NjI0M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIyMjQzZDFj
YTM0NTc1MDk1NDBhMjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVu
dHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRF
bnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCiBQQVNT
IHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJpZXMgaW4gYWxwaGFi
ZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJlc3VsdCBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9u
LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5kODY5YzdjNTJkNTVkNjllMjEyM2Y2NGQ0ODZlZDFlMzIzNWQz
ZmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnku
anMKQEAgLTAsMCArMSwyNSBAQAorZnVuY3Rpb24gdGVzdFRpbWVSZXNvbHV0aW9uKGhpZ2hSZXNU
aW1lRnVuYywgZnVuY1N0cmluZykgeworICAgIHRlc3QoKCkgPT4geworICAgICAgICBjb25zdCB0
MCA9IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICBsZXQgdDEgPSBoaWdoUmVzVGltZUZ1bmMo
KTsKKyAgICAgICAgd2hpbGUgKHQwID09IHQxKSB7CisgICAgICAgICAgICB0MSA9IGhpZ2hSZXNU
aW1lRnVuYygpOworICAgICAgICB9CisgICAgICAgIGNvbnN0IGVwc2lsb24gPSAxZS01OworICAg
ICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKHQxIC0gdDAsIDAuMDA1IC0gZXBzaWxvbiwg
J1RoZSBzZWNvbmQgJyArIGZ1bmNTdHJpbmcgKyAnIHNob3VsZCBiZSBtdWNoIGdyZWF0ZXIgdGhh
biB0aGUgZmlyc3QnKTsKKyAgICB9LCAnVmVyaWZpZXMgdGhlIHJlc29sdXRpb24gb2YgJyArIGZ1
bmNTdHJpbmcgKyAnIGlzIGF0IGxlYXN0IDUgbWljcm9zZWNvbmRzLicpOworfQorCitmdW5jdGlv
biB0aW1lQnlQZXJmb3JtYW5jZU5vdygpIHsKKyAgICByZXR1cm4gcGVyZm9ybWFuY2Uubm93KCk7
Cit9CisKK2Z1bmN0aW9uIHRpbWVCeVVzZXJUaW1pbmcoKSB7CisgICAgcGVyZm9ybWFuY2UubWFy
aygndGltZXInKTsKKyAgICBjb25zdCB0aW1lID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFt
ZSgndGltZXInKVswXS5zdGFydFRpbWU7CisgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcygndGlt
ZXInKTsKKyAgICByZXR1cm4gdGltZTsKK30KKwordGVzdFRpbWVSZXNvbHV0aW9uKHRpbWVCeVBl
cmZvcm1hbmNlTm93LCAncGVyZm9ybWFuY2Uubm93KCknKTsKK3Rlc3RUaW1lUmVzb2x1dGlvbih0
aW1lQnlVc2VyVGltaW5nLCAnZW50cnkuc3RhcnRUaW1lJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
d29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjY4MjZiOWNiZGFmMmM1ZmQ0NDEzNGMxMjE3ZGEzNGUyNDM2NGI3MDgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDMgQEAKKworUEFTUyBXb3JrZXI6IFRlc3QgUGVyZm9ybWFuY2UgT2JzZXJ2
ZXIgaW5zaWRlIGEgd29ya2VyLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBl
cmZvcm1hbmNlLW9ic2VydmVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNl
LW9ic2VydmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmM5MmJjOTcxMDAzZjJlYTkyZmJkMTY5ZDhkZDdh
NjRkMDYyMDYyZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9y
bWFuY2Utb2JzZXJ2ZXIuaHRtbApAQCAtMCwwICsxLDE4IEBACis8IWRvY3R5cGUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0aW9uKHQp
IHsKKyAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcigicmVzb3VyY2VzL3dvcmtlci13aXRoLXBl
cmZvcm1hbmNlLW9ic2VydmVyLmpzIik7CisgIHdvcmtlci5vbm1lc3NhZ2UgPSBmdW5jdGlvbihl
dmVudCkgeworICAgIHQuc3RlcCgoKSA9PiBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGEsICdTVUND
RVNTJykpOworICAgIHQuZG9uZSgpOworICB9Cit9LCAnV29ya2VyOiBUZXN0IFBlcmZvcm1hbmNl
IE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4nKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDczMDA4MWY0ZDY3YjA2NDFkZTgwMGUyYTg4MWFmMDI3MmIyMmI5
YjIuLjY0ZTdlMjVjMjBkY2Q4OWRhZmZjNzIyMTc0MmQ5NTBjODcyNjc5YWUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50
eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZp
Z2F0aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZy53b3JrZXJTdGFydCcp
IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQotRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVk
IG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sgYXNzZXJ0X3VucmVhY2hlZDogdW5l
eHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICd0aW1pbmdbdGltaW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUK
LUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVj
dCBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1t0aW1pbmdFdmVudE9yZGVyW2ldXScpIFJl
YWNoZWQgdW5yZWFjaGFibGUgY29kZQorRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5h
dmlnYXRpb24gdGltaW5nIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiBh
c3NlcnRfZ3JlYXRlcl90aGFuOiBleHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRoYW4gMCBidXQg
Z290IDAgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIFNlcnZpY2Ugd29ya2VyIGNvbnRy
b2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgbmV0d29yayBmYWxsYmFjaworUEFTUyBTZXJ2aWNlIHdv
cmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIHJlZGlyZWN0CiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2Jz
ZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
ZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNv
bnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0CmluZGV4IDdmZmIzODU4M2RhODRiNjQ2OTQ1NWFl
NzQwNGQyMjRjNGI1NzMwZGEuLjRlYmRjY2Y1YjJiZDQ3ZGE0ZDVkMjE1ZDFlOGEyNzgxYTRjMmRl
MDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcv
cGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsx
LDUgQEAKIFBBU1MgZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50IGlzIHRydWUKLVBBU1Mg
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCBpcyAxCitQQVNTIHBlcmZvcm1hbmNlLmdl
dEVudHJpZXMoKS5sZW5ndGggaXMgMgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1l
KCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoIGlzIDEKIFBBU1MgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIsICJwYWludCIpLmxlbmd0
aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikubGVuZ3Ro
IGlzIDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1p
bmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sIGIvTGF5
b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZl
ci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKaW5kZXggMDA3OGE0MzU0NWI5ZjRiNmNmYWJm
ODE3MTY2MWIzYjYwMWM0YWE3OS4uMWYyODBiNDA3NzVlMmE5YTgyZjhkM2I2NmU3OThmNzBhNzU1
N2UyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWlu
Zy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNl
cnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAgd2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogICAgIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0ID0gJ1RF
WFQyJzsKICAgICBhd2FpdCB3YWl0Rm9yRkNQKCk7CiAgICAgc2hvdWxkQmVUcnVlKCdkaWRSZWNl
aXZlRmlyc3RDb250ZW50ZnVsUGFpbnQnKTsKLSAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpLmxlbmd0aCcsICIxIik7CisgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKS5sZW5ndGgnLCAiMiIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoJywgIjEiKTsKICAgICBz
aG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1w
YWludCIsICJwYWludCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoInBhaW50IikubGVuZ3RoJywgIjEiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVy
LWFwaS1leHBlY3RlZC50eHQKaW5kZXggNzY0OWE4NDMxY2E0NDJiMTYwN2UyOGVlZDZkNDZhYzll
NmNkZjBkYS4uM2E2N2RjMGJiNjNkNjA5ZGE4MjE0NmI3NjJlM2RlOGNkZjBhOTQ0ZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVyLWFw
aS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1h
bmNlLW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQKQEAgLTExLDcgKzExLDcgQEAgUEFTUyBQZXJm
b3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29uc3RydWN0b3Ig
cmVxdWlyZXMgJ25ldycKIFBBU1MgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2Nh
bGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBh
IGZ1bmN0aW9uLgogUEFTUyBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0
aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBvYnNlcnZlci5vYnNlcnZl
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNT
IG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9y
IGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgibWFyayIp
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIG9ic2VydmVyLm9i
c2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBl
cyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJr
In0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpA
QCAtMzksNyArMzksNyBAQCBQQVNTIFtXb3JrZXJdIFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBDb25zdHJ1Y3RvciByZXF1aQogUEFTUyBbV29ya2VyXSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBl
bm91Z2ggYXJndW1lbnRzLgogUEFTUyBbV29ya2VyXSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigx
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAxICgnY2FsbGJhY2snKSB0byB0
aGUgUGVyZm9ybWFuY2VPYnNlcnZlciBjb25zdHJ1Y3RvciBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQ
QVNTIFtXb3JrZXJdIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24o
KSB7fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCi1QQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9i
c2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4K
K1BBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBbV29ya2VyXSBv
YnNlcnZlci5vYnNlcnZlKCJtYXJrIikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSh7fSkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQQVNTIFtX
b3JrZXJdIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6Im1hcmsifSkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVmFsdWUgaXMgbm90IGEgc2VxdWVuY2UuCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1h
cGktZXhwZWN0ZWQudHh0CmluZGV4IGVkMDFhZTAwMzFmNGU1ZThmNzZlNjAxNWRiMjM4ODIyNjQ0
YjkxMmQuLmMxNDYyMTRlZjJkNmE4YWIxZDZiOGFlMzg3ODY1ZTEwN2JhM2Y3MGMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1hcGkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5j
ZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0CkBAIC0xNiwxNCArMTYsMTQgQEAgUEFTUyBQZXJm
b3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllcyBpcyBkZWZpbmVkLgogUEFTUyBQZXJmb3JtYW5j
ZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5VHlwZSBpcyBkZWZpbmVkLgogUEFTUyBQZXJmb3JtYW5j
ZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5TmFtZSBpcyBkZWZpbmVkLgogUEFTUyBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5tYXJr
KCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpWzBdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyB0eXBlb2YgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQotUEFTUyB0eXBl
b2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0
cnVlCitQQVNTIHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDIgaXMgdHJ1ZQor
UEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5jZW9mIFBlcmZv
cm1hbmNlRW50cnkgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0lu
ZGV4XS5uYW1lIGlzICJ0ZXN0IgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0lu
ZGV4XS5lbnRyeVR5cGUgaXMgIm1hcmsiCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKClbbWFya0luZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKK1BBU1MgdHlw
ZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9uID09PSAibnVt
YmVyIiBpcyB0cnVlCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoKSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgcGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFT
UyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIikubGVuZ3RoID09PSAxIGlzIHRy
dWUKQEAgLTYwLDExICs2MCwxMSBAQCBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKSBpbnN0YW5jZW9mIEFycmF5IGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1h
bmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIFtXb3JrZXJd
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQotUEFTUyBbV29y
a2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVu
dHJ5IGlzIHRydWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLm5h
bWUgaXMgInRlc3QiCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5l
bnRyeVR5cGUgaXMgIm1hcmsiCi1QQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCi1QQVNTIFtXb3JrZXJd
IHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24gPT09ICJudW1iZXIi
IGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRl
eF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgW1dv
cmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlzICJt
YXJrIgorUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJ
bmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHR5cGVv
ZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJl
ciIgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIFtX
b3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09
PSAwIGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJm
b3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcyBiL0xheW91dFRlc3RzL3BlcmZv
cm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCmluZGV4IDFlZjdhYTVjNTg0MmZk
ZTllMWJkMjAzZjFkMjU3Mzg3Yjk1MzYwNGQuLmI4YzI5OTQwMjZjZjk0ZTA3NDllZmI5NDIxYmMx
ZGJjYmIyMDMyM2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9yZXNv
dXJjZXMvdGltZWxpbmUtYXBpLmpzCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9y
ZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCkBAIC00LDYgKzQsOCBAQCBpZiAoc2VsZi5pbXBvcnRT
Y3JpcHRzKQogaWYgKHNlbGYud2luZG93KQogICAgIGRlc2NyaXB0aW9uKCJCYXNpYyBJbnRlcmZh
Y2UgdGVzdCBmb3IgcGVyZm9ybWFuY2UtdGltZWxpbmUgQVBJcy4iKTsKIAorbGV0IHJ1bm5pbmdJ
bldvcmtlciA9ICEhc2VsZi5pbXBvcnRTY3JpcHRzOworCiBkZWJ1ZygiUGVyZm9ybWFuY2VFbnRy
eSIpOwogc2hvdWxkQmVEZWZpbmVkKCJQZXJmb3JtYW5jZUVudHJ5Iik7CiBzaG91bGRCZVRydWUo
YCJuYW1lIiBpbiBQZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZWApOwpAQCAtMjEsMTQgKzIzLDI1
IEBAIHNob3VsZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeVR5
cGVgKTsKIHNob3VsZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNC
eU5hbWVgKTsKIAogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFu
Y2VvZiBBcnJheWApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAwYCk7CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgLy8gV29ya2VycyBkb24n
dCBoYXZlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy4KKyAgICBzaG91bGRCZVRydWUoYHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDBgKTsKK30gZWxzZSB7CisgICAgc2hv
dWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Cit9CiBz
aG91bGROb3RUaHJvdyhgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpO2ApOwotc2hvdWxkQmVUcnVl
KGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Ci1zaG91bGRCZVRydWUo
YHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnlg
KTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLm5h
bWVgLCAidGVzdCIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKClbMF0uZW50cnlUeXBlYCwgIm1hcmsiKTsKLXNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiYCk7Ci1zaG91bGRC
ZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24gPT09ICJu
dW1iZXIiYCk7CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgbWFya0luZGV4ID0gMDsKKyAg
ICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDFgKTsK
K30gZWxzZSB7CisgICAgbWFya0luZGV4ID0gMTsKKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDJgKTsKK30KK3Nob3VsZEJlVHJ1ZShgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5
YCk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJr
SW5kZXhdLm5hbWVgLCAidGVzdCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5lbnRyeVR5cGVgLCAibWFyayIpOworc2hvdWxkQmVU
cnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1l
ID09PSAibnVtYmVyImApOworc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiYCk7CiAKIHNob3VsZFRocm93
KGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKClgKTsKIHNob3VsZEJlVHJ1ZShgcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDBgKTsKQEAgLTUw
LDUgKzYzLDUgQEAgc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
TmFtZSgidGVzdCIpWzBdLmR1cmF0aW9uID09PSAibnVtYmUKIHNob3VsZEJlVHJ1ZShgcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJub3QtcmVhbCIpLmxlbmd0aCA9PT0gMGAp
Owogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJ0ZXN0IiwgIm1h
cmsiKS5sZW5ndGggPT09IDFgKTsKIAotaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykKK2lmIChydW5u
aW5nSW5Xb3JrZXIpCiAgICAgZmluaXNoSlNUZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjk5OGQ0ZWQzY2UxODRjNjhkMzMxODYxM2Y4ZDIwZmUyNzJkNTJlMzkK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJp
YnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisK
K1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcgMiBpbnN0
YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4gb3JkZXIgYW5k
IHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy4KKworCitGQUlMIFBlcmZvcm1hbmNl
IG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVhc29uYWJsZS4gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgImh0dHAvMS4xIiBidXQgZ290ICIiCisK
</data>
<flag name="commit-queue"
          id="449731"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428723</attachid>
            <date>2021-05-15 00:30:34 -0700</date>
            <delta_ts>2021-05-15 10:24:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210515003033.patch</filename>
            <type>text/plain</type>
            <size>209341</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJjYjMzNTkxY2FhM2Zh
NTkwMTk2NTZmMTlkMWYzYThjYzZmYmU5My4uYjI5YTIyZGIxNjliODgxYjZhNDdhYWNjNDY5ZGYw
ZWE4ODQ3OTk0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzOSBAQAorMjAyMS0wNS0xNCAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9sZW1hdGljLCBhbmQgc29tZSBvZiB0aGUgdGVzdHMgZm9yIHJlYWRpbmcgdHJhbnNmZXIg
c2l6ZSBzdGlsbCBmYWlsLgorICAgICAgICBUaGVyZSBhcmUgc3RpbGwgYSBmZXcgdGVzdCBmYWls
dXJlcyB0byBmaXggaW4gZnV0dXJlIHBhdGNoZXMuCisKKyAgICAgICAgVGVzdHM6IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZl
X2ltYWdlX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3Vt
ZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbAorICAgICAg
ICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5z
dGFuY2VfYWNjZXNzb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5o
dG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbAorICAg
ICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmln
aW4uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sCisgICAgICAgICAg
ICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24u
aHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCisg
ICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQt
ZW50cmllcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sCisgICAgICAgICAgICAg
ICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dv
cmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKKworICAgICAgICAqIENNYWtlTGlz
dHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3Q6CisgICAg
ICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZl
ZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0
ZWQpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6c2V0UmVhZHlTdGF0ZSk6CisgICAgICAgIFNvbWV0aW1lcyB0aGUgcmVhZHkgc3RhdGUg
anVtcHMgcmlnaHQgdG8gQ29tcGxldGUgd2l0aG91dCBoaXR0aW5nIEludGVyYWN0aXZlIGFsb25n
IHRoZSB3YXkuCisgICAgICAgIFdoZW4gdGhpcyBoYXBwZW5zLCB3ZSB3YW50IHRvIG1hcmsgYm90
aCBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlIGFuZCBtX2RvY3VtZW50VGltaW5nLmRvbUlu
dGVyYWN0aXZlLgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQpOgorICAgICAgICBDYWxs
IGFkZE5hdmlnYXRpb25UaW1pbmcgaW4gbm90aWZ5RmluaXNoZWQgdG8gY3JlYXRlIHRoZSBuYXZp
Z2F0aW9uIHRpbWluZyBvYmplY3Qgd2hlbiB3ZSBhcmUgZG9uZSBuYXZpZ2F0aW5nLgorICAgICAg
ICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFkZCBhIFVSTCBwYXJh
bWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3QncyBVUkwgYW5kIHNv
bWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0dGVuIGF0IGRpZmZl
cmVudCB0aW1lcy4KKyAgICAgICAgKiBsb2FkZXIvUmVzb3VyY2VUaW1pbmcuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3MgY29uc3QpOgorICAgICAg
ICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdWJy
ZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5cGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5hbWUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVkRW50
cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6YWRkTmF2
aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6cmVnaXN0ZXJQ
ZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpxdWV1
ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJZk5l
ZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeTo6aXNS
ZXNvdXJjZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVu
dHJ5Ojppc01hcmsgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VFbnRyeTo6aXNNZWFzdXJlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlRW50cnk6OmlzUGFpbnQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VNYXJrLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAgICBT
UEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VORCBkb2Vzbid0IHdvcmsgd2VsbCB3aXRoIFBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyB3aGljaCBpbmhlcml0cyBmcm9tIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcgd2hpY2ggYm90aCBoYXZlIGRpc3RpbmN0IHR5cGVzLgorICAgICAgICBp
czxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBkb2Vzbid0IGdpdmUgdXMgdGhlIGluZm8gd2Ug
bmVlZC4gIEkgcmVwbGFjZWQgdGhhdCB3aXRoICJzd2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVu
dHJ5VHlwZSgpKSIgaW4gdGhlIG9uZSBwbGFjZSBpdCdzIHVzZWQsIGFuZCBpdCB3b3JrcyBsaWtl
IGEgY2hhcm0uCisgICAgICAgIEFsc28gcmVuYW1lZCB0eXBlIHRvIHBlcmZvcm1hbmNlRW50cnlU
eXBlIHNvIGl0IGRvZXNuJ3QgY29uZmxpY3Qgd2l0aCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnR5cGUsIHdoaWNoIGlzIHNwZWNpZmllZCBpbiB0aGUgaWRsLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VNZWFzdXJlLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAg
ICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcDogQWRkZWQuCisgICAgICAg
IChXZWJDb3JlOjp0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBlKToK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6UGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4gY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2Fk
RXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0IGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29udGVu
dExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpy
ZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5pZGw6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnRha2VSZWNvcmRzKToKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcik6CisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKToKKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaDoKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaWRsOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRy
aWVzQnlOYW1lIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcu
aDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmVudHJ5U3RhcnRUaW1lKToK
KyAgICAgICAgKFdlYkNvcmU6OmVudHJ5RW5kVGltZSk6CisgICAgICAgIChXZWJDb3JlOjplbnRy
eVRpbWVPcmlnaW4pOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zzo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyk6CisgICAgICAgIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZyBzdGFydHMgYXQgdGhlIHByZXZpb3VzIGRvY3VtZW50J3MgdW5sb2FkIGlmIHRo
ZSBvcmlnaW5zIGFsbG93LiAgVG8gbWFrZSB0aGUgYmVnaW4gYW5kIGVuZCB0aW1lcyBjb3JyZWN0
LCB3ZSBwYXNzIGluIHRoYXQgdGltZSB0byB1c2UgaW4gdGhlIGNhbGN1bGF0aW9ucworICAgICAg
ICBmcm9tIHRoZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgY29uc3RydWN0b3IuCisgICAg
ICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmg6CisgICAgICAgIChpc1R5cGUp
OiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6ZG9Ob3RpZnlGaW5pc2gpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvTmV0d29ya0xvYWRNZXRyaWNzLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNv
dXJjZUhhbmRsZUNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDbGll
bnQ6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvU3luY2hy
b25vdXNMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3luY2hyb25vdXNMb2Fk
ZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
U3luY2hyb25vdXNMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2Nm
L1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxl
Z2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIFBhc3Mg
bWV0cmljcyBpbmNsdWRpbmcgdGhlIHJlc3BvbnNlIGVuZCB0aW1lIGZyb20gTlNVUkxDb25uZWN0
aW9uIHNvIHdlIGRvbid0IGFzc2VydCBpbiBXZWJLaXRMZWdhY3kuCisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW06CisgICAgICAgIChXZWJDb3Jl
Ojpjb3B5VGltaW5nRGF0YSk6CisgICAgICAgIFVzZSBjdXJyZW50UmVxdWVzdCBpbnN0ZWFkIG9m
IHBhc3NpbmcgaW4gdGhlIHJlc3BvbnNlIHNvIHdlIGNhbiBjYWxsIGl0IGZyb20gZGlkRmluaXNo
TG9hZGluZywgd2hlcmUgd2UgZG9uJ3QgaGF2ZSBhIHJlc3BvbnNlIHN0b3JlZCBhbnl3aGVyZS4K
KyAgICAgICAgV2UncmUganVzdCBsb29raW5nIGZvciB3aGV0aGVyIGl0J3MgaHR0cCBvciBodHRw
cywgc28gdGhlIGN1cnJlbnRSZXF1ZXN0ICh3aGljaCBpcyB0aGUgcmVxdWVzdCBhZnRlciBhbGwg
dGhlIHJlZGlyZWN0cykgZml0cyBvdXIgcHVycG9zZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW06
CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0
ZSBjb25uZWN0aW9uOmRpZFJlY2VpdmVSZXNwb25zZTpdKToKKyAgICAgICAgKC1bV2ViQ29yZVJl
c291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hM
b2FkaW5nOl0pOgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9u
U3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBkZDI4
MWE4OWY3ZTQ3MTIxOTZiMWQ4MTM1MjNkM2JhNGFlODIzMjkuLmJhOWNjOTJjYzJmNTcwMjJkYTIy
YWVjZmQ3MmM5ZmI4Yzg0OGMxZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDUt
MTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoLVtXS05ldHdvcmtTZXNzaW9uRGVs
ZWdhdGUgVVJMU2Vzc2lvbjp0YXNrOmRpZEZpbmlzaENvbGxlY3RpbmdNZXRyaWNzOl0pOgorICAg
ICAgICBNYXJrIHJldXNlZCBUTFMgY29ubmVjdGlvbnMgaW4gY29tcGxldGUgbWV0cmljcyBsaWtl
IEkgZGlkIGluIGluY29tcGxldGUgbWV0cmljcyBpbiByMjc3NDkzLgorCiAyMDIxLTA1LTE0ICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVz
b3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlv
biBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDNkYjUxYmE2NmVkNjkzODM3N2M5
NGRhZDY2NjZmYTk5NzE2MTg0ZGMuLmY1MDQ3ODcwZGIzZjEzZmJlNGVmMTM5ZjM5OWQ2ZTA3YTg5
ZDA3MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMTM1LDYgKzExMzUsNyBAQCBzZXQoV2Vi
Q29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxi
YWNrLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKICAgICBw
YWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwKKyAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaWRsCiAgICAg
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VT
ZXJ2ZXJUaW1pbmcuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQu
eGNmaWxlbGlzdAppbmRleCA2NjIyOTIxZmU4MDc5YTMwMDhiYTQzODIxNDMyY2U5ZjQ1NmM4ZGRh
Li43MTA3NDY5NTE5MGJmZGU0NjA0MjM4MGYzY2ZiYTAzNTY2ZGEyYTdkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTEyMDEsNiArMTIw
MSw3IEBAICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5pZGwKICQo
UFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmlkbAogJChQUk9KRUNUX0RJUikv
cGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9Q
ZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCiskKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNr
LmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0Lmlk
bApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmls
ZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApp
bmRleCBkZDJiZGRlMzY5ZTM5ZmI1YTlkNjhhZTcwY2I2YzFkYmFhYTFmMDI2Li5lYjUzNGQzZDJj
Mzc1MGZjZTU0MzkxMWUwNzk0OTY5YjVlY2M5ZjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtMTYwNCw2ICsxNjA0LDggQEAgJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1l
YXN1cmVPcHRpb25zLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5h
dmlnYXRpb24uaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCAyMjkyNmJjNjJjMzc1ZGM0M2Y3ZjdjZGJjMTBiYTJi
N2ZkZDkzY2ZmLi4zNjg3YTdmNTYyZTNiODE3YzhiNmNkZjA0ZWU0MTk3NzEwMGEyZmE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTEwNTQsNiArMTA1NCw3IEBAIEpTX0JJTkRJ
TkdfSURMUyA6PSBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwg
XAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgXAorICAgICQoV2Vi
Q29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCAyN2YyOTli
NmJlMjE0MGI4NTgyZWU3M2Y0NzMzZWRjODQxMmQ5Mjg0Li40ZjhlOWFkMzExYmM4NjgxNzVmYjAz
Zjg4Y2MyOWMxY2I5YjdiODI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTczNiw2ICsxNzM2LDcgQEAg
cGFnZS9QZXJmb3JtYW5jZU1hcmsuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIHBh
Z2UvUGVyZm9ybWFuY2VNb25pdG9yLmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uY3Bw
CitwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBhZ2Uv
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMzNTksNiArMzM2MCw3IEBAIEpTUGVy
Zm9ybWFuY2VNYXJrT3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQZXJm
b3JtYW5jZU1lYXN1cmVPcHRpb25zLmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitK
U1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5j
cHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9ic2Vy
dmVyRW50cnlMaXN0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDFjMzU5MTkwMmIxMjBiZDNhYjA2MGJkOGM1YjFiN2YyYWIz
YzE3YjkuLmE2MjNkNGIwODMwZWJiYzRmNmIzMTg0OTRhM2ExNTAzMmEyYjI4NzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2
MDQ2LDYgKzE2MDQ2LDkgQEAKIAkJREVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyNTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTI1NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTI1NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OwogCQlERUNBN0ZGNTFGOUZFOUJBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ni5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU2
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMjU2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJ
CURGMTlFMkFBMjQ3NzI5QTYwMDdCREFDQiAvKiBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVC
bG9ja2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRSZWxheFRo
aXJkUGFydHlDb29raWVCbG9ja2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlE
RjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA2MjVBOTg0QzgwMDVEREI4QyAvKiBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA3
MjVBOTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCURGNEUzOERDMjUyNzk1OTMwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY0RTM4REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZl
cnNpb25DaGVja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVyc2lvbkNo
ZWNrcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjdFOUEyOTRDN0FBQ0UwQUQ4
OUIzREQgLyogTWF0aE1MT3BlcmF0b3JEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjI0NTAsNiArMjI0NTMsOSBAQAogCQkJCThBRjRFNTUyMTFEQzVBMzYw
MDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAogCQkJCThBRjRFNTUzMTFE
QzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKIAkJCQk4QUY0RTU1
NDExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCAqLywKKwkJCQlE
RjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCAqLywKKwkJCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmggKi8sCisJCQkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZy5pZGwgKi8sCiAJCQkJQTVBOTkzMzUxRTM3RkFGRDAwNUI1RTRE
IC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwICovLAogCQkJCUE1QTk5MzM2MUUzN0ZBRkQwMDVC
NUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmggKi8sCiAJCQkJQTVBOTkzMzcxRTM3RkFGRDAw
NUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsICovLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKaW5kZXgg
YmJmODExMTQyZGFiOWU2YTkyY2I1YzZjZmFiMDZiMjQ1OGJhNzE0MC4uZGZjZDhjMWViOTY0NDkx
MzE0NDdlMmYyN2M5ZDZiZWM1YWM2NzlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBAIC0zNSwxMCArMzUs
MTIgQEAKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNl
TWFyay5oIgogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiSlNQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUGFp
bnRUaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUu
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oIgogCkBAIC00OCwxOCArNTAsMjAgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogSlNW
YWx1ZSB0b0pTTmV3bHlDcmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgUmVmPFBlcmZvcm1hbmNlRW50cnk+JiYgZW50cnkpCiB7Ci0gICAgaWYg
KGlzPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0
ZVdyYXBwZXI8UGVyZm9ybWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVu
dHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZW50cnkpKQot
ICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihn
bG9iYWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1h
cms+KGVudHJ5KSkKKyAgICBzd2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSB7
CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uOgorICAgICAgICBy
ZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+KGdsb2JhbE9i
amVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6
TWFyazoKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VNYXJrPihnbG9i
YWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1lYXN1
cmU+KGVudHJ5KSkKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1lYXN1cmU6CiAg
ICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWVhc3VyZT4oZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpS
ZXNvdXJjZToKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3Jt
YW5jZUVudHJ5OjpUeXBlOjpQYWludDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVy
Zm9ybWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAg
fQogCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8
UGVyZm9ybWFuY2VFbnRyeT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IGVhNDJmMzM0MWE2YTU3ZWEwYzVhOWUxMTE4MjRmNWU1
MTIwZGYwMWIuLjIzZGY2ZjA3NTkzOWU4OTJjMWM3OTM4MjQ4NzYxYzQ1MTQ2OTMxYjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMTM5MCwxMyArMTM5MCwxMyBAQCB2b2lkIERvY3VtZW50
OjpzZXRSZWFkeVN0YXRlKFJlYWR5U3RhdGUgcmVhZHlTdGF0ZSkKICAgICAgICAgaWYgKCFtX2Rv
Y3VtZW50VGltaW5nLmRvbUxvYWRpbmcpCiAgICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRv
bUxvYWRpbmcgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBJbnRlcmFjdGl2ZToKLSAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0
aXZlKQotICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSA9IE1vbm90
b25pY1RpbWU6Om5vdygpOwotICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlOgogICAg
ICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUpCiAgICAgICAgICAgICBtX2Rv
Y3VtZW50VGltaW5nLmRvbUNvbXBsZXRlID0gTW9ub3RvbmljVGltZTo6bm93KCk7CisgICAgICAg
IEZBTExUSFJPVUdIOworICAgIGNhc2UgSW50ZXJhY3RpdmU6CisgICAgICAgIGlmICghbV9kb2N1
bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKKyAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcu
ZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7CiAg
ICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCBlMzI1
ZjJkMDkxNDMyZTAzNmM3YWI1YTkxNTEyZDAwOTkxYmFkYzhlLi43ZjExOWYxMTU4ZjFhYjY5M2Nl
MmNmMTRhNDBkYjkxNGE5ZmMwNWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExv
YWRlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAKICNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3Mu
aCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQYWdlLmgi
CisjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5j
bHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUG9saWN5Q2hlY2tlci5oIgpA
QCAtNDExLDcgKzQxMiw3IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZygpIGNvbnN0
CiAgICAgcmV0dXJuIGlzTG9hZGluZ01haW5SZXNvdXJjZSgpIHx8ICFtX3N1YnJlc291cmNlTG9h
ZGVycy5pc0VtcHR5KCkgfHwgIW1fcGx1Z0luU3RyZWFtTG9hZGVycy5pc0VtcHR5KCk7CiB9CiAK
LXZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNv
dXJjZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6Om5v
dGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAjaWYgRU5B
QkxFKENPTlRFTlRfRklMVEVSSU5HKQpAQCAtNDE5LDYgKzQyMCwxMSBAQCB2b2lkIERvY3VtZW50
TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5l
dHdvcmtMb2FkTQogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAorICAgIGlmIChhdXRvKiBkb2N1
bWVudCA9IHRoaXMtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIGRvbVdpbmRvdyA9
IGRvY3VtZW50LT5kb21XaW5kb3coKSkKKyAgICAgICAgICAgIGRvbVdpbmRvdy0+cGVyZm9ybWFu
Y2UoKS5hZGROYXZpZ2F0aW9uVGltaW5nKCp0aGlzLCAqZG9jdW1lbnQsIHJlc291cmNlLCB0aW1p
bmcoKSwgbWV0cmljcyk7CisgICAgfQorCiAgICAgQVNTRVJUX1VOVVNFRChyZXNvdXJjZSwgbV9t
YWluUmVzb3VyY2UgPT0gJnJlc291cmNlKTsKICAgICBBU1NFUlQobV9tYWluUmVzb3VyY2UpOwog
ICAgIGlmICghbV9tYWluUmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhbV9tYWluUmVzb3Vy
Y2UtPndhc0NhbmNlbGVkKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIu
Y3BwCmluZGV4IDA3NWZiMWZhZWRmZWYzNDIwOGE4MWFiYzNiZjEyOTE0MzI3NGEyNDMuLjI0Njcz
MDI3YjcwNjM1YjEyOWQwMWI5ZTQyZTU5YmM0MWU5MzYyNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNzMzLDEwICs3MzMsOSBAQCB2b2lkIFJlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZl
cj4mJiBidWZmZQogICAgIGRpZFJlY2VpdmVCdWZmZXIoV1RGTW92ZShidWZmZXIpLCBlbmNvZGVk
RGF0YUxlbmd0aCwgRGF0YVBheWxvYWRCeXRlcyk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkZXI6
OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKQordm9pZCBSZXNvdXJjZUxvYWRlcjo6
ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmlj
cyYgbWV0cmljcykKIHsKLSAgICBOZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAg
IGRpZEZpbmlzaExvYWRpbmcoZW1wdHlNZXRyaWNzKTsKKyAgICBkaWRGaW5pc2hMb2FkaW5nKG1l
dHJpY3MpOwogfQogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxl
KiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZUxvYWRlci5oCmluZGV4IGIyZjZhNWVjYjNiZWEwNGU5YmZhOGQxZWU3NjYyYzMyYzFkZjNkMTUu
LmE0Mzc2ZDUwMTFiZjgyODZmYjQ3ZmMzMzg0ZjI5YjVjM2RjMzI2NTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCkBAIC0yMDAsNyArMjAwLDcgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIHdpbGxTZW5kUmVxdWVzdEFzeW5jKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1
ZXN0JiYsIFJlc291cmNlUmVzcG9uc2UmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZXNvdXJj
ZVJlcXVlc3QmJik+JiYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3Vy
Y2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkg
b3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVm
PFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVuY29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2
b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJp
Y3MmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBS
ZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAgICAgdm9pZCB3YXNCbG9ja2VkKFJlc291cmNlSGFu
ZGxlKikgb3ZlcnJpZGU7CiAgICAgdm9pZCBjYW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikg
b3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1p
bmcuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAppbmRleCAx
NjgyMzRmNDdiY2JlMDc5NTA2MDU0MGE5YTFhYWU2ZWRiNDUxNmE3Li41Yzc2NWExNDVjNTk4MjFj
YzcxNTE2ZjRmMWNlZjgwODBhNjhjZDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZVRpbWluZy5jcHAKQEAgLTYyLDkgKzYyLDkgQEAgUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1p
bmc6OmZyb21DYWNoZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IKICAg
ICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIHJlc3Bv
bnNlLCBzZWN1cml0eU9yaWdpbik7CiB9CiAKLVJlc291cmNlVGltaW5nIFJlc291cmNlVGltaW5n
Ojpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IFN0cmluZyYgaW5pdGlh
dG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJp
Y3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3Jp
Z2luKQorUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKENhY2hlZFJlc291
cmNlJiByZXNvdXJjZSwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBj
b25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQog
ewotICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyhyZXNvdXJjZS5yZXNvdXJjZVJlcXVlc3QoKS51
cmwoKSwgaW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJlc291cmNl
LnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKKyAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmco
dXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2Uu
cmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOwogfQogCiBSZXNvdXJjZVRpbWluZyBSZXNvdXJj
ZVRpbWluZzo6ZnJvbVN5bmNocm9ub3VzTG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtM
b2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAppbmRleCA2NGY4N2NiM2JmZGI1MTVkNmM0ZTM4Mzk0
ZmJjNGUzYWQ1M2UzMGI3Li45Y2RjNzk0MTNkYmI1NjU0NTFkOGVmMDExMjM0MjM0MTUxM2IwZmZm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaApAQCAtNDEsMTMgKzQxLDEz
IEBAIGNsYXNzIFJlc291cmNlVGltaW5nIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
IHB1YmxpYzoKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUNhY2hlKGNvbnN0IFVSTCYs
IGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7Ci0gICAgc3RhdGljIFJlc291cmNl
VGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3Is
IGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBTZWN1
cml0eU9yaWdpbiYpOworICAgIHN0YXRpYyBSZXNvdXJjZVRpbWluZyBmcm9tTG9hZChDYWNoZWRS
ZXNvdXJjZSYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2Fk
VGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4m
KTsKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbVN5bmNocm9ub3VzTG9hZChjb25zdCBV
UkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBTZWN1cml0
eU9yaWdpbiYpOwogCiAgICAgVVJMIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CiAgICAg
U3RyaW5nIGluaXRpYXRvcigpIGNvbnN0IHsgcmV0dXJuIG1faW5pdGlhdG9yOyB9Ci0gICAgTG9h
ZFRpbWluZyBsb2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9sb2FkVGltaW5nOyB9Ci0gICAg
TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0IHsgcmV0dXJuIG1f
bmV0d29ya0xvYWRNZXRyaWNzOyB9CisgICAgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWluZygp
IGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQorICAgIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrTG9hZE1l
dHJpY3M7IH0KICAgICBib29sIGFsbG93VGltaW5nRGV0YWlscygpIGNvbnN0IHsgcmV0dXJuIG1f
YWxsb3dUaW1pbmdEZXRhaWxzOyB9CiAgICAgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRp
bWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCk7CiAgICAgUmVzb3VyY2VUaW1pbmcgaXNvbGF0
ZWRDb3B5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVz
b3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVy
LmNwcAppbmRleCAwMGM5ZDg3MDMzNzc5MDU2ODdmYTZkMDM0NTUxNjQwMjc2NWQyNDI2Li5hNmIz
MTEwNDQ5ODQ3YmEyMTM5NzUwMmIxMzcyOWYyZjU3ZWM2OTM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTg5Niw3ICs4OTYsNyBAQCB2b2lkIFN1
YnJlc291cmNlTG9hZGVyOjpyZXBvcnRSZXNvdXJjZVRpbWluZyhjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMbwogICAgICAgICByZXR1cm47CiAKICAgICBTZWN1cml0eU9yaWdpbiYg
b3JpZ2luID0gbV9vcmlnaW4gPyAqbV9vcmlnaW4gOiBkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4o
KTsKLSAgICBhdXRvIHJlc291cmNlVGltaW5nID0gUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKCpt
X3Jlc291cmNlLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0
d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOworICAgIGF1dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNv
dXJjZVRpbWluZzo6ZnJvbUxvYWQoKm1fcmVzb3VyY2UsIG1fcmVzb3VyY2UtPnJlc291cmNlUmVx
dWVzdCgpLnVybCgpLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywg
bmV0d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOwogCiAgICAgLy8gV29ya2VyIHJlc291cmNlcyBs
b2FkZWQgaGVyZSBhcmUgYWxsIENhY2hlZFJhd1Jlc291cmNlcyBsb2FkZWQgdGhyb3VnaCBXb3Jr
ZXJUaHJlYWRhYmxlTG9hZGVyLgogICAgIC8vIFBhc3MgdGhlIFJlc291cmNlVGltaW5nIGluZm9y
bWF0aW9uIG9uIHNvIHRoYXQgV29ya2VyVGhyZWFkYWJsZUxvYWRlciBtYXkgYWRkIHRoZW0gdG8g
dGhlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCmluZGV4IDc2NjkwODVlNWQ4ZjgyMmRk
M2IxNzI2ZjBkYWM0ZTZkZjI2YzFmMTEuLmMyYWU2ZmM1ZGJiYzJmNmFkMDc1ZmU0ODc3NDRiMTQy
YjRkYWE5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCkBAIC00Myw2ICs0Myw3
IEBACiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZv
cm1hbmNlTWVhc3VyZU9wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb24u
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZU9ic2VydmVyLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5o
IgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKQEAgLTEyMiw2ICsxMjMs
OSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50
cmllcygpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50
cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcpCisgICAgICAgIGVudHJpZXMuYXBw
ZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jl
c291cmNlVGltaW5nQnVmZmVyKTsKIAogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE0MCw2
ICsxNDQsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6
Z2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudAogewogICAgIFZlY3RvcjxSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5n
ICYmIGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1f
bmF2aWdhdGlvblRpbWluZyk7CisgICAgCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2Ui
KQogICAgICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsK
IApAQCAtMTYxLDYgKzE2OCw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBl
cmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtCiB7CiAgICAgVmVj
dG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmln
YXRpb25UaW1pbmcgJiYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUgPT0gIm5hdmln
YXRpb24iKSAmJiBuYW1lID09IG1fbmF2aWdhdGlvblRpbWluZy0+bmFtZSgpKQorICAgICAgICBl
bnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAgICAgaWYgKGVudHJ5VHlwZS5p
c051bGwoKSB8fCBlbnRyeVR5cGUgPT0gInJlc291cmNlIikgewogICAgICAgICBmb3IgKGF1dG8m
IHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAgICAgaWYgKHJl
c291cmNlLT5uYW1lKCkgPT0gbmFtZSkKQEAgLTE4NCw2ICsxOTQsOSBAQCBWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5TmFtZShjb25zdCBT
dHJpbmcmIG5hbQogCiB2b2lkIFBlcmZvcm1hbmNlOjphcHBlbmRCdWZmZXJlZEVudHJpZXNCeVR5
cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUsIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eT4+JiBlbnRyaWVzKSBjb25zdAogeworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50
cnlUeXBlID09ICJuYXZpZ2F0aW9uIikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0
aW9uVGltaW5nKTsKKwogICAgIGlmIChlbnRyeVR5cGUgPT0gInJlc291cmNlIikKICAgICAgICAg
ZW50cmllcy5hcHBlbmRWZWN0b3IobV9yZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKQEAgLTIxNCw2
ICsyMjcsMTIgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQo
KQogICAgIHF1ZXVlRW50cnkoKm1fZmlyc3RDb250ZW50ZnVsUGFpbnQpOwogfQogCit2b2lkIFBl
cmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiBkb2N1bWVudExv
YWRlciwgRG9jdW1lbnQmIGRvY3VtZW50LCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0
IExvYWRUaW1pbmcmIHRpbWluZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQor
eworICAgIG1fbmF2aWdhdGlvblRpbWluZyA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6
Y3JlYXRlKG1fdGltZU9yaWdpbiwgcmVzb3VyY2UsIHRpbWluZywgbWV0cmljcywgZG9jdW1lbnQu
dGltaW5nKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLnRyaWdn
ZXJpbmdBY3Rpb24oKS50eXBlKCkpOworICAgIHF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWlu
Zyk7Cit9CisKIHZvaWQgUGVyZm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGlt
aW5nJiYgcmVzb3VyY2VUaW1pbmcpCiB7CiAgICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQoKSk7CkBAIC0zNDYsNiArMzY1LDExIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnJlbW92ZUFsbE9i
c2VydmVycygpCiB2b2lkIFBlcmZvcm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIo
UGVyZm9ybWFuY2VPYnNlcnZlciYgb2JzZXJ2ZXIpCiB7CiAgICAgbV9vYnNlcnZlcnMuYWRkKCZv
YnNlcnZlcik7CisKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIG9ic2VydmVyLnR5cGVG
aWx0ZXIoKS5jb250YWlucyhQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uKSkgewor
ICAgICAgICBvYnNlcnZlci5xdWV1ZUVudHJ5KCptX25hdmlnYXRpb25UaW1pbmcpOworICAgICAg
ICBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOworICAgIH0KIH0KIAogdm9pZCBQZXJmb3JtYW5jZTo6
dW5yZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIoUGVyZm9ybWFuY2VPYnNlcnZlciYgb2JzZXJ2
ZXIpCkBAIC0zNTcsNyArMzgxLDcgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJm
b3JtYW5jZUVudHJ5JiBlbnRyeSkKIHsKICAgICBib29sIHNob3VsZFNjaGVkdWxlVGFzayA9IGZh
bHNlOwogICAgIGZvciAoYXV0byYgb2JzZXJ2ZXIgOiBtX29ic2VydmVycykgewotICAgICAgICBp
ZiAob2JzZXJ2ZXItPnR5cGVGaWx0ZXIoKS5jb250YWlucyhlbnRyeS50eXBlKCkpKSB7CisgICAg
ICAgIGlmIChvYnNlcnZlci0+dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnBlcmZvcm1hbmNl
RW50cnlUeXBlKCkpKSB7CiAgICAgICAgICAgICBvYnNlcnZlci0+cXVldWVFbnRyeShlbnRyeSk7
CiAgICAgICAgICAgICBzaG91bGRTY2hlZHVsZVRhc2sgPSB0cnVlOwogICAgICAgICB9CkBAIC0z
NjYsNiArMzkwLDExIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkoUGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpCiAgICAgaWYgKCFzaG91bGRTY2hlZHVsZVRhc2spCiAgICAgICAgIHJldHVy
bjsKIAorICAgIHNjaGVkdWxlVGFza0lmTmVlZGVkKCk7Cit9CisKK3ZvaWQgUGVyZm9ybWFuY2U6
OnNjaGVkdWxlVGFza0lmTmVlZGVkKCkKK3sKICAgICBpZiAobV9oYXNTY2hlZHVsZWRUaW1pbmdC
dWZmZXJEZWxpdmVyeVRhc2spCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZS5oCmluZGV4IDk5ZjI1NGIzYzk1MDk2YTVjZmQzNGMyZTkwZjlkY2RjMzg3NDY0YzguLjVl
NDY4NjRiZmQwNzcxMTQzNDk4ZmVjYTRlNTUwOTU1NjMzODYzNmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlLmgKQEAgLTQ4LDEyICs0OCwxNyBAQCBjbGFzcyBKU0dsb2JhbE9iamVjdDsKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBDYWNoZWRSZXNvdXJjZTsKK2NsYXNzIERvY3Vt
ZW50OworY2xhc3MgRG9jdW1lbnRMb2FkZXI7CiBjbGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0
d29ya0xvYWRNZXRyaWNzOwogY2xhc3MgUGVyZm9ybWFuY2VVc2VyVGltaW5nOwogY2xhc3MgUGVy
Zm9ybWFuY2VFbnRyeTsKIGNsYXNzIFBlcmZvcm1hbmNlTWFyazsKIGNsYXNzIFBlcmZvcm1hbmNl
TWVhc3VyZTsKIGNsYXNzIFBlcmZvcm1hbmNlTmF2aWdhdGlvbjsKK2NsYXNzIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzsKIGNsYXNzIFBlcmZvcm1hbmNlT2JzZXJ2ZXI7CiBjbGFzcyBQZXJm
b3JtYW5jZVBhaW50VGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VUaW1pbmc7CkBAIC05MCw2ICs5
NSw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxSZWY8UGVyZm9ybWFuY2VNZWFzdXJlPj4g
bWVhc3VyZShKU0M6OkpTR2xvYmFsT2JqZWN0JiwgY29uc3QgU3RyaW5nJiBtZWFzdXJlTmFtZSwg
T3B0aW9uYWw8U3RhcnRPck1lYXN1cmVPcHRpb25zPiYmLCBjb25zdCBTdHJpbmcmIGVuZE1hcmsp
OwogICAgIHZvaWQgY2xlYXJNZWFzdXJlcyhjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lKTsKIAor
ICAgIHZvaWQgYWRkTmF2aWdhdGlvblRpbWluZyhEb2N1bWVudExvYWRlciYsIERvY3VtZW50Jiwg
Q2FjaGVkUmVzb3VyY2UmLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJik7CiAgICAgdm9pZCBhZGRSZXNvdXJjZVRpbWluZyhSZXNvdXJjZVRpbWluZyYmKTsKIAog
ICAgIHZvaWQgcmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQoKTsKQEAgLTEyMSw2ICsxMjcsNyBA
QCBwcml2YXRlOgogICAgIHZvaWQgcmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsVGltZXJGaXJlZCgp
OwogCiAgICAgdm9pZCBxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkmKTsKKyAgICB2b2lkIHNj
aGVkdWxlVGFza0lmTmVlZGVkKCk7CiAKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZU5h
dmlnYXRpb24+IG1fbmF2aWdhdGlvbjsKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZVRp
bWluZz4gbV90aW1pbmc7CkBAIC0xMzksNiArMTQ2LDcgQEAgcHJpdmF0ZToKIAogICAgIE1vbm90
b25pY1RpbWUgbV90aW1lT3JpZ2luOwogCisgICAgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZz4gbV9uYXZpZ2F0aW9uVGltaW5nOwogICAgIFJlZlB0cjxQZXJmb3JtYW5jZVBhaW50
VGltaW5nPiBtX2ZpcnN0Q29udGVudGZ1bFBhaW50OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxQZXJm
b3JtYW5jZVVzZXJUaW1pbmc+IG1fdXNlclRpbWluZzsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnkuaAppbmRleCBhZmFjZmIwOTBiMjFjYmE2MTRkNzhjZTg4YWM3NTNlMjY3M2Ux
MjY1Li5iOGE4MmUwMDZmZGEwN2FkNTg3MTcwZTU5Mjk0MTllY2YyMDYyMTA3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaApAQCAtNDcsNyArNDcsNyBAQCBwdWJsaWM6CiAg
ICAgZG91YmxlIHN0YXJ0VGltZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9CiAgICAg
ZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQogCi0gICAgZW51
bSBjbGFzcyBUeXBlIHsKKyAgICBlbnVtIGNsYXNzIFR5cGUgOiB1aW50OF90IHsKICAgICAgICAg
TmF2aWdhdGlvbiAgPSAxIDw8IDAsCiAgICAgICAgIE1hcmsgICAgICAgID0gMSA8PCAxLAogICAg
ICAgICBNZWFzdXJlICAgICA9IDEgPDwgMiwKQEAgLTU1LDE2ICs1NSwxMSBAQCBwdWJsaWM6CiAg
ICAgICAgIFBhaW50ICAgICAgID0gMSA8PCA0CiAgICAgfTsKIAotICAgIHZpcnR1YWwgVHlwZSB0
eXBlKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgp
IGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCA9
IDA7CiAKICAgICBzdGF0aWMgT3B0aW9uYWw8VHlwZT4gcGFyc2VFbnRyeVR5cGVTdHJpbmcoY29u
c3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0gICAgYm9vbCBpc1Jlc291cmNlKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZSgpID09IFR5cGU6OlJlc291cmNlOyB9Ci0gICAgYm9vbCBpc01hcmsoKSBjb25z
dCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6TWFyazsgfQotICAgIGJvb2wgaXNNZWFzdXJlKCkg
Y29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6Ok1lYXN1cmU7IH0KLSAgICBib29sIGlzUGFp
bnQoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6UGFpbnQ7IH0KLQogICAgIHN0YXRp
YyBib29sIHN0YXJ0VGltZUNvbXBhcmVMZXNzVGhhbihjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeT4mIGEsIGNvbnN0IFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5PiYgYikKICAgICB7CiAgICAg
ICAgIHJldHVybiBhLT5zdGFydFRpbWUoKSA8IGItPnN0YXJ0VGltZSgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VNYXJrLmgKaW5kZXggYzczYjIzMTJmMzJhMDRjODIxYzhkMGVjYTg3N2Vh
YmIzM2ZlNGUyZi4uYjc1MTRmMDE1MzU4MDlkYWI1M2NjYWMwNjRjNTJiMGYxOGViNmM2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJp
dmF0ZToKICAgICBQZXJmb3JtYW5jZU1hcmsoY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3Rh
cnRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmKTsKICAgICB+UGVyZm9ybWFuY2VN
YXJrKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJr
OyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IFR5cGU6Ok1hcms7IH0KICAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gIm1hcmsiX3M7IH0KIAogICAgIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1f
c2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lB
TElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZU1hcmspCi0gICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7
IHJldHVybiBlbnRyeS5pc01hcmsoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKaW5kZXggMzVkYjZhMTY2YjU3
ZWU4NmU2MzA4MzJkZjQyNjg1NWQ5N2E3ZmJmNS4uMmQyYWEzZWUxMjk1MjEyZTE2ZWRlNmUzZGRj
ODBmYzY0ZGUyNmY2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU1lYXN1cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5o
CkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToKICAgICBQZXJmb3JtYW5jZU1lYXN1cmUoY29u
c3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRUaW1lLCBkb3VibGUgZW5kVGltZSwgUmVmPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkZXRhaWwpOwogICAgIH5QZXJmb3JtYW5jZU1lYXN1cmUo
KTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7
IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
VHlwZTo6TWVhc3VyZTsgfQogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAibWVhc3VyZSJfczsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1T
UEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWVhc3VyZSkK
LSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYg
ZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWVhc3VyZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJB
SVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjE4N2Q0N2ZkN2IyMDM4MzkwMjg5ODVkY2ZlOWM5
YWIyOWNiYTk3NAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApAQCAtMCwwICsxLDEyMyBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oIgorCisjaW5jbHVkZSAiQ2FjaGVkUmVzb3Vy
Y2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVRpbWluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK3N0YXRpYyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlIHRv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUoTmF2aWdhdGlvblR5cGUg
bmF2aWdhdGlvblR5cGUpCit7CisgICAgc3dpdGNoIChuYXZpZ2F0aW9uVHlwZSkgeworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3YXJkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6QmFja19mb3J3YXJkOworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OlJlbG9hZDoKKyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6OlJlbG9hZDsKKyAgICBjYXNlIE5hdmlnYXRp
b25UeXBlOjpMaW5rQ2xpY2tlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtU3VibWl0
dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1SZXN1Ym1pdHRlZDoKKyAgICBjYXNl
IE5hdmlnYXRpb25UeXBlOjpPdGhlcjoKKyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6Ok5hdmlnYXRlOworICAgIH0KKyAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpO
YXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7Cit9CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
Q2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MsIGNvbnN0IERvY3VtZW50VGltaW5nJiBk
b2N1bWVudFRpbWluZywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbiwgV2ViQ29yZTo6TmF2
aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCisgICAgOiBQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nKHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChyZXNvdXJjZSwgcmVzb3Vy
Y2UucmVzcG9uc2UoKS51cmwoKSwgIm5hdmlnYXRpb24iX3MsIGxvYWRUaW1pbmcsIG1ldHJpY3Ms
IG9yaWdpbiksIGxvYWRUaW1pbmcudW5sb2FkRXZlbnRTdGFydCgpKQorICAgICwgbV9kb2N1bWVu
dFRpbWluZyhkb2N1bWVudFRpbWluZykKKyAgICAsIG1fbmF2aWdhdGlvblR5cGUodG9QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZShuYXZpZ2F0aW9uVHlwZSkpIHsgfQor
CitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6On5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcoKSA9IGRlZmF1bHQ7CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Om1p
bGxpc2Vjb25kc1NpbmNlT3JpZ2luKE1vbm90b25pY1RpbWUgdGltZSwgT3B0aW9uYWw8TW9ub3Rv
bmljVGltZT4gdGltZU9yaWdpbikgY29uc3QKK3sKKyAgICBpZiAoIXRpbWUpCisgICAgICAgIHJl
dHVybiAwOworICAgIHJldHVybiBQZXJmb3JtYW5jZTo6cmVkdWNlVGltZVJlc29sdXRpb24odGlt
ZSAtICh0aW1lT3JpZ2luID8gKnRpbWVPcmlnaW4gOiBtX3RpbWVPcmlnaW4pKS5taWxsaXNlY29u
ZHMoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZl
bnRTdGFydCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1f
bG9hZFRpbWluZy51bmxvYWRFdmVudFN0YXJ0KCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1p
bGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fbG9hZFRpbWluZy51bmxvYWRFdmVudEVuZCgpKTsKK30K
KworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tSW50ZXJhY3RpdmUoKSBj
b25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGlt
aW5nLmRvbUludGVyYWN0aXZlKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQoKSBjb25zdAoreworICAgIHJldHVybiBt
aWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbnRlbnRMb2FkZWRF
dmVudFN0YXJ0KTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRz
U2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQpOwor
fQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db21wbGV0ZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1p
bmcuZG9tQ29tcGxldGUpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojpsb2FkRXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNl
T3JpZ2luKG1fbG9hZFRpbWluZy5sb2FkRXZlbnRTdGFydCgpKTsKK30KKworZG91YmxlIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9sb2FkVGltaW5nLmxvYWRFdmVudEVuZCgpKTsK
K30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZSBQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUoKSBjb25zdAoreworICAgIHJldHVybiBtX25hdmln
YXRpb25UeXBlOworfQorCit1bnNpZ25lZCBzaG9ydCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnJlZGlyZWN0Q291bnQoKSBjb25zdAoreworICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRh
aWxzKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChtX2xvYWRUaW1pbmcuaGFzQ3Jvc3NP
cmlnaW5SZWRpcmVjdCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBtX2xvYWRU
aW1pbmcucmVkaXJlY3RDb3VudCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41ODFlNjdlYjgyNjg0NmE4ZTk4MDkzZmZiYTA0MzRkMWRkNWQxZGI5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuaApAQCAtMCwwICsxLDc3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSAiRG9jdW1lbnRUaW1pbmcuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmgiCisjaW5jbHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4KKyNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIENhY2hlZFJlc291cmNlOworY2xhc3MgTG9hZFRp
bWluZzsKK2NsYXNzIE5ldHdvcmtMb2FkTWV0cmljczsKK2NsYXNzIFNlY3VyaXR5T3JpZ2luOwor
ZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSA6IHVpbnQ4X3Q7CisKK2NsYXNzIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZyBmaW5hbCA6IHB1YmxpYyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
IHsKK3B1YmxpYzoKKyAgICBlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhfdCB7Cisg
ICAgICAgIE5hdmlnYXRlLAorICAgICAgICBSZWxvYWQsCisgICAgICAgIEJhY2tfZm9yd2FyZCwK
KyAgICAgICAgUHJlcmVuZGVyLAorICAgIH07CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBB
cmdzPiBzdGF0aWMgUmVmPFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZz4gY3JlYXRlKEFyZ3Mm
Ji4uLiBhcmdzKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZyhzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4pKTsgfQorICAgIH5QZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcoKTsKKworICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBUeXBlOjpOYXZpZ2F0aW9uOyB9CisgICAgQVNDSUlMaXRlcmFsIGVu
dHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJuYXZpZ2F0aW9uIl9zOyB9CisKKyAgICBk
b3VibGUgdW5sb2FkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRvdWJsZSB1bmxvYWRFdmVudEVu
ZCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21JbnRlcmFjdGl2ZSgpIGNvbnN0OworICAgIGRvdWJs
ZSBkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21Db250
ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29tcGxldGUoKSBjb25z
dDsKKyAgICBkb3VibGUgbG9hZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgbG9hZEV2
ZW50RW5kKCkgY29uc3Q7CisgICAgTmF2aWdhdGlvblR5cGUgdHlwZSgpIGNvbnN0OworICAgIHVu
c2lnbmVkIHNob3J0IHJlZGlyZWN0Q291bnQoKSBjb25zdDsKKworcHJpdmF0ZToKKyAgICBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNoZWRS
ZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBj
b25zdCBEb2N1bWVudFRpbWluZyYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiwgV2ViQ29yZTo6TmF2
aWdhdGlvblR5cGUpOworICAgIAorICAgIGRvdWJsZSBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihN
b25vdG9uaWNUaW1lLCBPcHRpb25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2luID0gV1RGOjpu
dWxsb3B0KSBjb25zdDsKKworICAgIERvY3VtZW50VGltaW5nIG1fZG9jdW1lbnRUaW1pbmc7Cisg
ICAgTmF2aWdhdGlvblR5cGUgbV9uYXZpZ2F0aW9uVHlwZTsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZTgxZTdmMTg3MjJkY2ZhYmE5MTliMzZlYmU4Nzc5
MTRmYjk4YzM5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisv
LyBodHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jZG9tLXBlcmZvcm1h
bmNlbmF2aWdhdGlvbnRpbWluZworCit0eXBlZGVmIGRvdWJsZSBET01IaWdoUmVzVGltZVN0YW1w
OworCitlbnVtIE5hdmlnYXRpb25UeXBlIHsKKyAgICAibmF2aWdhdGUiLAorICAgICJyZWxvYWQi
LAorICAgICJiYWNrX2ZvcndhcmQiLAorICAgICJwcmVyZW5kZXIiCit9OworCitbCisgICAgRXhw
b3NlZD1XaW5kb3cKK10gaW50ZXJmYWNlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyA6IFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgeworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUg
RE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAg
ICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudEVuZDsKKyAgICByZWFk
b25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tSW50ZXJhY3RpdmU7
CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkg
ICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbXBsZXRlOworICAgIHJl
YWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBsb2FkRXZlbnRTdGFy
dDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgbG9h
ZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgTmF2aWdhdGlvblR5cGUg
ICAgICB0eXBlOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQg
ICAgICByZWRpcmVjdENvdW50OworICAgIFtEZWZhdWx0XSBvYmplY3QgdG9KU09OKCk7Cit9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKaW5kZXggNDY0NzI2
N2QxMjg5ZGJiNmE1MzIwYTRhZmViMjA0NjBhYmYyODc2MS4uNTZmMzJhNWRlZDFjYTRjYWMzMTdl
YjFjOWE5OTA3ODA3MmI1ZDJmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU9ic2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwCkBAIC0xMDcsNiArMTA3LDExIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IFBlcmZv
cm1hbmNlT2JzZXJ2ZXI6Om9ic2VydmUoSW5pdCYmIGluaXQpCiAgICAgcmV0dXJuIHsgfTsKIH0K
IAorVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6
dGFrZVJlY29yZHMoKQoreworICAgIHJldHVybiBzdGQ6OmV4Y2hhbmdlKG1fZW50cmllc1RvRGVs
aXZlciwgeyB9KTsKK30KKwogdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KCkK
IHsKICAgICBpZiAobV9wZXJmb3JtYW5jZSkKQEAgLTExNCw2ICsxMTksNyBAQCB2b2lkIFBlcmZv
cm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QoKQogCiAgICAgbV9yZWdpc3RlcmVkID0gZmFsc2U7
CiAgICAgbV9lbnRyaWVzVG9EZWxpdmVyLmNsZWFyKCk7CisgICAgbV90eXBlRmlsdGVyID0geyB9
OwogfQogCiB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnF1ZXVlRW50cnkoUGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpCkBAIC0xMzAsNyArMTM2LDcgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVy
OjpkZWxpdmVyKCkKICAgICBpZiAoIWNvbnRleHQpCiAgICAgICAgIHJldHVybjsKIAotICAgIFZl
Y3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXMgPSBXVEZNb3ZlKG1fZW50cmll
c1RvRGVsaXZlcik7CisgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmll
cyA9IHN0ZDo6ZXhjaGFuZ2UobV9lbnRyaWVzVG9EZWxpdmVyLCB7IH0pOwogICAgIGF1dG8gbGlz
dCA9IFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmNyZWF0ZShXVEZNb3ZlKGVudHJpZXMp
KTsKIAogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbEZpcmVPYnNlcnZlckNhbGxi
YWNrKCpjb250ZXh0LCAiUGVyZm9ybWFuY2VPYnNlcnZlciJfcyk7CkBAIC0xNDEsMTAgKzE0Nyw5
IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcigpCiBWZWN0b3I8U3RyaW5nPiBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpCiB7CiAgICAgVmVjdG9yPFN0cmluZz4gZW50cnlUeXBlcyA9IHsKLSAg
ICAgICAgLy8gRklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8xODQzNjM+IEFkZCBzdXBwb3J0
IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCi0gICAgICAgIC8vICJuYXZpZ2F0aW9uIl9z
LAogICAgICAgICAibWFyayJfcywKLSAgICAgICAgIm1lYXN1cmUiX3MKKyAgICAgICAgIm1lYXN1
cmUiX3MsCisgICAgICAgICJuYXZpZ2F0aW9uIl9zLAogICAgIH07CiAKICAgICBpZiAoaXM8RG9j
dW1lbnQ+KGNvbnRleHQpICYmIGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0KS5zdXBwb3J0c1Bh
aW50VGltaW5nKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCmlu
ZGV4IDI4NzJmMTdhYWI1YjU3NjZiZmM0OGNjNDgwMDA0YWRkOGJkZTFmZjkuLjQxOTMwNWQ0N2My
MTUyN2Q4ZTFjYmViNTdiY2U1YzBkODJjMmE3ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlci5oCkBAIC01Nyw2ICs1Nyw3IEBAIHB1YmxpYzoKIAogICAgIEV4Y2Vw
dGlvbk9yPHZvaWQ+IG9ic2VydmUoSW5pdCYmKTsKICAgICB2b2lkIGRpc2Nvbm5lY3QoKTsKKyAg
ICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiB0YWtlUmVjb3JkcygpOwogCiAgICAg
T3B0aW9uU2V0PFBlcmZvcm1hbmNlRW50cnk6OlR5cGU+IHR5cGVGaWx0ZXIoKSBjb25zdCB7IHJl
dHVybiBtX3R5cGVGaWx0ZXI7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5pZGwKaW5kZXggYjcwN2Y2NjAyZTMwOTdhYzIzN2NlYWM3MmU0YTdkMDY3MjYzNjUx
My4uNjgzYTJiZWEwMTQ1OTQzMjU3ZjljN2YyMDJlNmY1NWMzZGI0YmQwYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCkBAIC0zMyw4ICszMyw5IEBACiBd
IGludGVyZmFjZSBQZXJmb3JtYW5jZU9ic2VydmVyIHsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dF0gY29uc3RydWN0b3IoUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrIGNh
bGxiYWNrKTsKIAotICAgIHVuZGVmaW5lZCBvYnNlcnZlKFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0
IG9wdGlvbnMpOworICAgIHVuZGVmaW5lZCBvYnNlcnZlKG9wdGlvbmFsIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJJbml0IG9wdGlvbnMpOwogICAgIHVuZGVmaW5lZCBkaXNjb25uZWN0KCk7CisgICAgc2Vx
dWVuY2U8UGVyZm9ybWFuY2VFbnRyeT4gdGFrZVJlY29yZHMoKTsKICAgICBbQ2FsbFdpdGg9U2Ny
aXB0RXhlY3V0aW9uQ29udGV4dF0gc3RhdGljIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJh
eTxET01TdHJpbmc+IHN1cHBvcnRlZEVudHJ5VHlwZXM7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAppbmRleCBlMDM2
NjVhYWNiNzBiYjhmODYzOWFmNGJjN2FlMWQwNjBkYmIxZTQ2Li5kZDdmYzk3Y2EzOGY4M2UyNDU1
ZTkyNzA4MjM1MTUwMDNlOWE5Y2U5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgVmVjdG9y
PFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6
Z2V0RW50cmllc0J5TmFtZSgKICAgICBmb3IgKGF1dG8mIGVudHJ5IDogbV9lbnRyaWVzKSB7CiAg
ICAgICAgIGlmICghbmFtZS5pc051bGwoKSAmJiBlbnRyeS0+bmFtZSgpICE9IG5hbWUpCiAgICAg
ICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnR5cGUoKSAhPSAq
dHlwZSkKKyAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnBlcmZvcm1hbmNlRW50cnlUeXBlKCkg
IT0gKnR5cGUpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgZW50cmllcy5hcHBlbmQo
ZW50cnkuY29weVJlZigpKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VQYWludFRpbWluZy5oCmluZGV4IGEyODFiYTM4MjI0OGY4MjM2MGYzNzc4YjFiZmZmNTVlMzk2
ZTI1Y2YuLjcwZjgwODVmOWNjNzU4NzkwNDYyOTEwYzgwYWE3NGE2YmM3NzQwMmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCkBAIC00NCwxMyArNDQs
OSBAQCBwcml2YXRlOgogICAgIH0KIAogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiAicGFpbnQiX3M7IH0KLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBUeXBlOjpQYWludDsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpQYWludDsgfQogCiAgICAgflBlcmZvcm1hbmNl
UGFpbnRUaW1pbmcoKSA9IGRlZmF1bHQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VQYWludFRp
bWluZykKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VF
bnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzUGFpbnQoKTsgfQotU1BFQ0lBTElaRV9UWVBF
X1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAKaW5kZXggZGQ3MWFhN2NiMTc4YjNiMDg1ZTNhYTllMmM1YmIzY2YyMzdl
YjBhOS4uZjc3NDM0MzA5MzhiOWRhYjM5ZGY2NmI5MzkxMDE2MTNmMDY2NWRhYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC01
MywxOCArNTMsMjAgQEAgc3RhdGljIGRvdWJsZSBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgTW9ub3QKICAgICByZXR1cm4gUGVyZm9y
bWFuY2U6OnJlZHVjZVRpbWVSZXNvbHV0aW9uKHNlY29uZHMpLm1pbGxpc2Vjb25kcygpOwogfQog
Ci1zdGF0aWMgZG91YmxlIGVudHJ5U3RhcnRUaW1lKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
Y29uc3QgUmVzb3VyY2VUaW1pbmcmIHJlc291cmNlVGltaW5nKQorc3RhdGljIGRvdWJsZSBlbnRy
eVN0YXJ0VGltZShNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5n
JiByZXNvdXJjZVRpbWluZywgY29uc3QgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRp
b25VbmxvYWRFdmVudFN0YXJ0KQogewotICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1p
bmdEZXRhaWxzKCkpCi0gICAgICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKHRpbWVPcmlnaW4sIHJlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0
KCkpOworICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpIHsKKyAg
ICAgICAgTW9ub3RvbmljVGltZSBzdGFydFRpbWUgPSBuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFy
dCA/ICpuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydCA6IHJlc291cmNlVGltaW5nLmxvYWRUaW1p
bmcoKS5mZXRjaFN0YXJ0KCk7CisgICAgICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdo
UmVzVGltZVN0YW1wKHRpbWVPcmlnaW4sIHN0YXJ0VGltZSk7CisgICAgfQogCiAgICAgcmV0dXJu
IG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAodGltZU9yaWdpbiwgcmVzb3VyY2VU
aW1pbmcubG9hZFRpbWluZygpLnN0YXJ0VGltZSgpKTsKIH0KIAotc3RhdGljIGRvdWJsZSBlbnRy
eUVuZFRpbWUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBjb25zdCBSZXNvdXJjZVRpbWluZyYg
cmVzb3VyY2VUaW1pbmcpCitzdGF0aWMgZG91YmxlIGVudHJ5RW5kVGltZShNb25vdG9uaWNUaW1l
IHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5nJiByZXNvdXJjZVRpbWluZywgY29uc3Qg
T3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRpb25VbmxvYWRFdmVudFN0YXJ0KQogewog
ICAgIGlmICghcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCi0gICAgICAgIHJl
dHVybiBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZyk7CisgICAgICAg
IHJldHVybiBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdh
dGlvblVubG9hZEV2ZW50U3RhcnQpOwogCiAgICAgaWYgKHJlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSkgewogICAgICAgICBTZWNvbmRzIGVuZFRpbWUgPSAo
cmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3RhcnQoKSArIHJlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKSAtIHRpbWVPcmlnaW47CkBAIC03NCwx
NSArNzYsMjcgQEAgc3RhdGljIGRvdWJsZSBlbnRyeUVuZFRpbWUoTW9ub3RvbmljVGltZSB0aW1l
T3JpZ2luLCBjb25zdCBSZXNvdXJjZVRpbWluZyYgcmVzb3UKICAgICByZXR1cm4gbW9ub3Rvbmlj
VGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcCh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZy5sb2Fk
VGltaW5nKCkucmVzcG9uc2VFbmQoKSk7CiB9CiAKK3N0YXRpYyBNb25vdG9uaWNUaW1lIGVudHJ5
VGltZU9yaWdpbihNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIGNvbnN0IFJlc291cmNlVGltaW5n
JiByZXNvdXJjZVRpbWluZywgY29uc3QgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4mIG5hdmlnYXRp
b25VbmxvYWRFdmVudFN0YXJ0KQoreworICAgIGlmIChuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFy
dCkgeworICAgICAgICBhdXRvJiBsb2FkVGltaW5nID0gcmVzb3VyY2VUaW1pbmcubG9hZFRpbWlu
ZygpOworICAgICAgICBpZiAoIXJlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpCisg
ICAgICAgICAgICB8fCBsb2FkVGltaW5nLmhhc0Nyb3NzT3JpZ2luUmVkaXJlY3QoKQorICAgICAg
ICAgICAgfHwgIWxvYWRUaW1pbmcuaGFzU2FtZU9yaWdpbkFzUHJldmlvdXNEb2N1bWVudCgpKQor
ICAgICAgICAgICAgcmV0dXJuICpuYXZpZ2F0aW9uVW5sb2FkRXZlbnRTdGFydDsKKyAgICB9Cisg
ICAgcmV0dXJuIHRpbWVPcmlnaW47Cit9CisKIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
PiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3RvbmljVGltZSB0aW1lT3Jp
Z2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQogewogICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcodGltZU9yaWdpbiwgV1RGTW92ZShy
ZXNvdXJjZVRpbWluZykpKTsKIH0KIAotUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGlt
aW5nJiYgcmVzb3VyY2VUaW1pbmcpCi0gICAgOiBQZXJmb3JtYW5jZUVudHJ5KHJlc291cmNlVGlt
aW5nLnVybCgpLnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRp
bWluZyksIGVudHJ5RW5kVGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZykpCitQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1Rp
bWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJiByZXNvdXJjZVRpbWluZywgT3B0aW9uYWw8
TW9ub3RvbmljVGltZT4gbmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQpCisgICAgOiBQZXJmb3Jt
YW5jZUVudHJ5KHJlc291cmNlVGltaW5nLnVybCgpLnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0
aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQpLCBl
bnRyeUVuZFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcsIG5hdmlnYXRpb25VbmxvYWRF
dmVudFN0YXJ0KSkKICAgICAsIG1faW5pdGlhdG9yVHlwZShyZXNvdXJjZVRpbWluZy5pbml0aWF0
b3IoKSkKLSAgICAsIG1fdGltZU9yaWdpbih0aW1lT3JpZ2luKQorICAgICwgbV90aW1lT3JpZ2lu
KGVudHJ5VGltZU9yaWdpbih0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZywgbmF2aWdhdGlvblVu
bG9hZEV2ZW50U3RhcnQpKQogICAgICwgbV9sb2FkVGltaW5nKHJlc291cmNlVGltaW5nLmxvYWRU
aW1pbmcoKSkKICAgICAsIG1fbmV0d29ya0xvYWRNZXRyaWNzKHJlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpKQogICAgICwgbV9zaG91bGRSZXBvcnREZXRhaWxzKHJlc291cmNlVGlt
aW5nLmFsbG93VGltaW5nRGV0YWlscygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaAppbmRleCA1ZDA3OWY0YzY2NTY1MjMxNWEwMDEyNDYzYzhj
ZGY5Y2U1MmVjNWExLi5kMTZmNjc0OTk5ZTdhM2UwNjIyNDNlM2RkN2EyNWI2MmE2YzBjYTM4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaApA
QCAtNDIsNyArNDIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBQZXJmb3JtYW5jZVNl
cnZlclRpbWluZzsKIGNsYXNzIFJlc291cmNlVGltaW5nOwogCi1jbGFzcyBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nIGZpbmFsIDogcHVibGljIFBlcmZvcm1hbmNlRW50cnkgeworY2xhc3MgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZyA6IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+IGNyZWF0ZShNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYpOwogCkBAIC02MSwxMyArNjEs
MTQgQEAgcHVibGljOgogICAgIGRvdWJsZSByZXF1ZXN0U3RhcnQoKSBjb25zdDsKICAgICBkb3Vi
bGUgcmVzcG9uc2VTdGFydCgpIGNvbnN0OwogICAgIGRvdWJsZSByZXNwb25zZUVuZCgpIGNvbnN0
OworCiAgICAgY29uc3QgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+JiBzZXJ2
ZXJUaW1pbmcoKSBjb25zdCB7IHJldHVybiBtX3NlcnZlclRpbWluZzsgfQogCi0gICAgVHlwZSB0
eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBBU0NJSUxp
dGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gInJlc291cmNlIl9zOyB9Cisg
ICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIFR5
cGU6OlJlc291cmNlOyB9CisgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IG92ZXJy
aWRlIHsgcmV0dXJuICJyZXNvdXJjZSJfczsgfQogCi1wcml2YXRlOgotICAgIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYm
KTsKK3Byb3RlY3RlZDoKKyAgICBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1Rp
bWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJiwgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4g
bmF2aWdhdGlvblVubG9hZEV2ZW50U3RhcnQgPSBXVEY6Om51bGxvcHQpOwogICAgIH5QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nKCk7CiAKICAgICBkb3VibGUgbmV0d29ya0xvYWRUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKFNlY29uZHMpIGNvbnN0OwpAQCAtODEsNyArODIsMyBAQCBwcml2YXRl
OgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcpCi0gICAgc3RhdGljIGJv
b2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVy
biBlbnRyeS5pc1Jlc291cmNlKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCmlu
ZGV4IDQ2YThmMGYyNTExY2ViNWMwYzdkZDMxMTZjMmY4ZmE3N2ZjOGQ3ZGQuLmYwNjU2NmQ1ZTBm
YTdlMWZkMGI0NTk3ZjEwYjVmMjJlZjY2YTE2ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtNTAsNiArNTAsMTEgQEAgdHlw
ZWRlZiBkb3VibGUgRE9NSGlnaFJlc1RpbWVTdGFtcDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
RE9NSGlnaFJlc1RpbWVTdGFtcCByZXF1ZXN0U3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VTdGFydDsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCByZXNwb25zZUVuZDsKKworICAgIC8vIE5vdGU6IHRyYW5z
ZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFyZSBpbnRlbnRp
b25hbGx5IG9taXR0ZWQKKyAgICAvLyBiZWNhdXNlIG9mIHByaXZhY3kgY29uY2VybnMgc3VjaCBh
cyBodHRwczovL2dpdGh1Yi5jb20vdzNjL3Jlc291cmNlLXRpbWluZy9pc3N1ZXMvMjM4CisKKyAg
ICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvc2VydmVyLXRpbWluZy8jZXh0ZW5zaW9uLXRvLXRo
ZS1wZXJmb3JtYW5jZXJlc291cmNldGltaW5nLWludGVyZmFjZQogICAgIFtFbmFibGVkQXRSdW50
aW1lPVNlcnZlclRpbWluZ10gcmVhZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5PFBlcmZvcm1h
bmNlU2VydmVyVGltaW5nPiBzZXJ2ZXJUaW1pbmc7CiAKICAgICBbRGVmYXVsdF0gb2JqZWN0IHRv
SlNPTigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9i
UmVzb3VyY2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9i
UmVzb3VyY2VIYW5kbGUuY3BwCmluZGV4IDlmZjIzMzYyMzA0NWE4OTk0NDU1MmQ4MmJmM2E3MmYx
MjFiZDk4NzUuLjE0Nzc0ZjIzMjMyN2UxMTk4ZTM3NGJjMTg3NmFhOWU3OWM5NjhjYjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhh
bmRsZS5jcHAKQEAgLTYzNCw3ICs2MzQsNyBAQCBzdGF0aWMgdm9pZCBkb05vdGlmeUZpbmlzaChC
bG9iUmVzb3VyY2VIYW5kbGUmIGhhbmRsZSkKICAgICBpZiAoIWhhbmRsZS5jbGllbnQoKSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgaGFuZGxlLmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZo
YW5kbGUpOworICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmaGFuZGxlLCB7
IH0pOwogfQogCiB2b2lkIEJsb2JSZXNvdXJjZUhhbmRsZTo6bm90aWZ5RmluaXNoKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNz
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5o
CmluZGV4IGQ3MTA3YWE0NTY3ODE3YmUzYTVmNzkyMDQ0MzA2ZmVmNzBiOWJjYTEuLjE2OTY1ZWU5
YTUxN2E0NTU5NjE1MzY3Njc5NmY5OWJjYjM2ZjI1ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaApAQCAtMjAwLDcgKzIw
MCw3IEBAIHB1YmxpYzoKIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKLUJveDxOZXR3b3JrTG9h
ZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqLCBOU1VSTFJlc3BvbnNl
ICopOworQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0
aW9uICopOwogV0VCQ09SRV9FWFBPUlQgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWlu
Z0RhdGEoTlNVUkxTZXNzaW9uVGFza1RyYW5zYWN0aW9uTWV0cmljcyAqaW5jb21wbGV0ZU1ldHJp
Y3MpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaAppbmRleCA5YTgwZTExM2ZiNDgyODI5NGQ3YWZmY2Fl
MDI5ZWYwY2FmODVkZDE1Li5mYmEwMjMzYmVmYTJjZDRjMTYxNGY3MDU2YjRiMDc1Mzc5MzFlY2Vm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFu
ZGxlQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJj
ZUhhbmRsZUNsaWVudC5oCkBAIC00NCw2ICs0NCw3IEBAIE9CSkNfQ0xBU1MgTlNDYWNoZWRVUkxS
ZXNwb25zZTsKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlOwogY2xhc3MgQ3JlZGVudGlhbDsKK2NsYXNzIE5ldHdvcmtMb2FkTWV0cmljczsKIGNsYXNz
IFByb3RlY3Rpb25TcGFjZTsKIGNsYXNzIFJlc291cmNlSGFuZGxlOwogY2xhc3MgUmVzb3VyY2VF
cnJvcjsKQEAgLTY3LDcgKzY4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNl
aXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCB1bnNpZ25lZCwgaW50IC8qZW5j
b2RlZERhdGFMZW5ndGgqLykgeyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVCdWZmZXIoUmVzb3VyY2VIYW5kbGUqLCBSZWY8U2hhcmVkQnVmZmVyPiYmLCBpbnQg
ZW5jb2RlZERhdGFMZW5ndGgpOwogICAgIAotICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKFJlc291cmNlSGFuZGxlKikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRp
bmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSB7IH0KICAgICB2
aXJ0dWFsIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3Im
KSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgd2FzQmxvY2tlZChSZXNvdXJjZUhhbmRsZSopIHsgfQog
ICAgIHZpcnR1YWwgdm9pZCBjYW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikgeyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVy
Q2xpZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuY3BwCmluZGV4IGM3YzEyY2U4ZTc1MWE1MmJiNDUxN2RkMDJkNmY1OGFkZTY5
MTIwZWQuLjJhN2Y4ODQxMWI0YTEzOTViN2YzMTYwMDIxNjJhZTkzNzFmNGZlYjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGll
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuY3BwCkBAIC03Niw3ICs3Niw3IEBAIHZvaWQgU3luY2hyb25vdXNMb2FkZXJD
bGllbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhciogZGF0YSwK
ICAgICBtX2RhdGEuYXBwZW5kKGRhdGEsIGxlbmd0aCk7CiB9CiAKLXZvaWQgU3luY2hyb25vdXNM
b2FkZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSkKK3Zv
aWQgU3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5k
bGUqIGhhbmRsZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikKIHsKICAgICBtX21lc3NhZ2VR
dWV1ZS0+a2lsbCgpOwogI2lmIFBMQVRGT1JNKENPQ09BKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oCmluZGV4
IDhkMmE5NzcxOTMxNGZjODkyNWMyMmRiZmRlYzU4ZWY5MmIzMjdkYzQuLmY4OGRmZjdmOTM1YjYz
NTVlYTI3MTA0YWFlNWU0MmNmNmI0MjRkNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKQEAgLTY3LDcg
KzY3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3Zl
cnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VBc3luYyhSZXNvdXJjZUhhbmRsZSos
IFJlc291cmNlUmVzcG9uc2UmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKSBvdmVycmlk
ZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhcios
IHVuc2lnbmVkLCBpbnQgLyplbmNvZGVkRGF0YUxlbmd0aCovKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGRp
ZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3Mm
KSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNv
dXJjZUVycm9yJikgb3ZlcnJpZGU7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxM
QkFDSykKICAgICB2b2lkIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2VBc3lu
YyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRl
V2l0aE9wZXJhdGlvblF1ZXVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1
ZS5jcHAKaW5kZXggM2M4MmJjM2I0YzY4NTliOGJhOTRhMzJiZTlhNDI2YTgzOTk2ZWM1MC4uMjRk
MTQ4NTgyMDVlMTIyZDJmYmVkZjFhMzkzZDdhODBlY2YyYzgxYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlv
bkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRo
T3BlcmF0aW9uUXVldWUuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiTUlNRVR5
cGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUg
IlJlc291cmNlSGFuZGxlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVDbGllbnQuaCIKICNp
bmNsdWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCkBAIC0yMzgsNyArMjM5LDcgQEAgdm9pZCBSZXNv
dXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRG
aW5pc2hMb2FkaW5nKCkKIAogICAgICAgICBMT0coTmV0d29yaywgIkNGTmV0IC0gUmVzb3VyY2VI
YW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNo
TG9hZGluZyhoYW5kbGU9JXApICglcykiLCBoYW5kbGUsIGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCku
dXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAKLSAgICAgICAgaGFuZGxlLT5jbGllbnQo
KS0+ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUpOworICAgICAgICBoYW5kbGUtPmNsaWVudCgpLT5k
aWRGaW5pc2hMb2FkaW5nKGhhbmRsZSwgTmV0d29ya0xvYWRNZXRyaWNzIHsgfSk7CiAgICAgICAg
IGlmIChwcm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1ZSkgewogICAgICAgICAgICAgcHJvdGVj
dGVkVGhpcy0+bV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICAgICAgICAgICAgIHByb3RlY3RlZFRo
aXMtPm1fbWVzc2FnZVF1ZXVlID0gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0KaW5kZXgg
NWIzYzg5OGJkMzAyN2RkZDU3MjQ5MTY2YWMxNGJlZWIxZTcwN2IyYS4uNjRhZWE0ZmQ1MmY5ZDVl
MmUzZDBiMzljNjMyMGRjOTZhN2ZkYTdmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0KQEAgLTY3
LDcgKzY3LDcgQEAgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxT
ZXNzaW9uVGFza1RyYW5zYWN0aW9uTWV0cmljcyAqaW5jb20KICAgICApOwogfQogCi1Cb3g8TmV0
d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rp
b24sIE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKQorQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29w
eVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25uZWN0aW9uKQogewogICAgIE5TRGljdGlv
bmFyeSAqdGltaW5nRGF0YSA9IFtjb25uZWN0aW9uIF90aW1pbmdEYXRhXTsKICAgICBpZiAoIXRp
bWluZ0RhdGEpCkBAIC04OSw3ICs4OSw3IEBAIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlU
aW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbiwgTlNVUkxSZXNwb25zCiAgICAg
ICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0RhdGEsIEAiX2tDRk5UaW1pbmdEYXRhUmVxdWVzdFN0YXJ0
IiksCiAgICAgICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0RhdGEsIEAiX2tDRk5UaW1pbmdEYXRhUmVz
cG9uc2VTdGFydCIpLAogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGlt
aW5nRGF0YUNvbm5lY3Rpb25SZXVzZWQiKSwKLSAgICAgICAgcmVzcG9uc2UuVVJMLnNjaGVtZQor
ICAgICAgICBjb25uZWN0aW9uLmN1cnJlbnRSZXF1ZXN0LlVSTC5zY2hlbWUKICAgICApOwogfQog
ICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jl
c291cmNlSGFuZGxlQ3VybC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcAppbmRleCA4ZjE3NWI2NTQyZWEyZjBjODY4ZjcwMWQ1
NjI4MDRiZjdlMmZkNTk3Li5jN2UxYTI0ZmU5NTU5ZTk4ZjViYzU2ZmYyMjcwMGExZTRhZTU5MzE3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3Vy
Y2VIYW5kbGVDdXJsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcApAQCAtMzksNiArMzksNyBAQAogI2luY2x1ZGUgIkN1
cmxSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKICNpbmNsdWRlICJMb2dnaW5n
LmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0
b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5oIgogI2lu
Y2x1ZGUgIlNhbWVTaXRlSW5mby5oIgpAQCAtNTgyLDcgKzU4Myw3IEBAIHZvaWQgUmVzb3VyY2VI
YW5kbGU6OmhhbmRsZURhdGFVUkwoKQogICAgIH0KIAogICAgIGlmIChjbGllbnQoKSkKLSAgICAg
ICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcodGhpcyk7CisgICAgICAgIGNsaWVudCgpLT5k
aWRGaW5pc2hMb2FkaW5nKHRoaXMsIHsgfSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVS
ZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVl
dWVEZWxlZ2F0ZS5tbQppbmRleCBkNDk3ODYwZDg3NDVjYzIyMjVmZDEzZWU2ZDBkMzI4MjY3NGE1
Y2E2Li44NGJlMzRkZmY3YzIyZTQ2ODUxZjU0ZWQzYzA3YTU5NjBkNDQwNjZlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5k
bGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVn
YXRlLm1tCkBAIC0yNTIsNyArMjUyLDcgQEAgQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElP
TlNfRU5ECiAKICAgICAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNvdXJjZVJlc3BvbnNlKHIuZ2V0
KCkpOwogICAgICAgICByZXNvdXJjZVJlc3BvbnNlLnNldFNvdXJjZShSZXNvdXJjZVJlc3BvbnNl
OjpTb3VyY2U6Ok5ldHdvcmspOwotICAgICAgICByZXNvdXJjZVJlc3BvbnNlLnNldERlcHJlY2F0
ZWROZXR3b3JrTG9hZE1ldHJpY3MoY29weVRpbWluZ0RhdGEoY29ubmVjdGlvbi5nZXQoKSwgci5n
ZXQoKSkpOworICAgICAgICByZXNvdXJjZVJlc3BvbnNlLnNldERlcHJlY2F0ZWROZXR3b3JrTG9h
ZE1ldHJpY3MoY29weVRpbWluZ0RhdGEoY29ubmVjdGlvbi5nZXQoKSkpOwogCiAgICAgICAgIG1f
aGFuZGxlLT5kaWRSZWNlaXZlUmVzcG9uc2UoV1RGTW92ZShyZXNvdXJjZVJlc3BvbnNlKSwgW3Nl
bGYsIHByb3RlY3RlZFNlbGYgPSBXVEZNb3ZlKHByb3RlY3RlZFNlbGYpXSB7CiAgICAgICAgICAg
ICBtX3NlbWFwaG9yZS5zaWduYWwoKTsKQEAgLTMxNCwxMSArMzE0LDIxIEBAIEFMTE9XX0RFUFJF
Q0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogCiAgICAgTE9HKE5ldHdvcmssICJIYW5kbGUgJXAg
ZGVsZWdhdGUgY29ubmVjdGlvbkRpZEZpbmlzaExvYWRpbmc6JXAiLCBtX2hhbmRsZSwgY29ubmVj
dGlvbik7CiAKLSAgICBhdXRvIHdvcmsgPSBbc2VsZiA9IHNlbGYsIHByb3RlY3RlZFNlbGYgPSBy
ZXRhaW5QdHIoc2VsZildICgpIG11dGFibGUgeworICAgIGF1dG8gd29yayA9IFtzZWxmID0gc2Vs
ZiwgcHJvdGVjdGVkU2VsZiA9IHJldGFpblB0cihzZWxmKSwgY29ubmVjdGlvbiA9IHJldGFpblB0
cihjb25uZWN0aW9uKV0gKCkgbXV0YWJsZSB7CiAgICAgICAgIGlmICghbV9oYW5kbGUgfHwgIW1f
aGFuZGxlLT5jbGllbnQoKSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBtX2hhbmRs
ZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcobV9oYW5kbGUpOworICAgICAgICBpZiAoYXV0
byBtZXRyaWNzID0gY29weVRpbWluZ0RhdGEoY29ubmVjdGlvbi5nZXQoKSkpIHsKKyAgICAgICAg
ICAgIGRvdWJsZSByZXNwb25zZUVuZFRpbWUgPSBbW1tjb25uZWN0aW9uIF90aW1pbmdEYXRhXSBv
YmplY3RGb3JLZXk6QCJfa0NGTlRpbWluZ0RhdGFSZXNwb25zZUVuZCJdIGRvdWJsZVZhbHVlXTsK
KyAgICAgICAgICAgIG1ldHJpY3MtPnJlc3BvbnNlRW5kID0gU2Vjb25kcyhyZXNwb25zZUVuZFRp
bWUgPD0gMCA/IDAgOiByZXNwb25zZUVuZFRpbWUgLSBtZXRyaWNzLT5mZXRjaFN0YXJ0LnZhbHVl
KCkpOworICAgICAgICAgICAgbWV0cmljcy0+bWFya0NvbXBsZXRlKCk7CisgICAgICAgICAgICBt
X2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcobV9oYW5kbGUsICptZXRyaWNzKTsK
KyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBlbXB0eU1l
dHJpY3M7CisgICAgICAgICAgICBlbXB0eU1ldHJpY3MubWFya0NvbXBsZXRlKCk7CisgICAgICAg
ICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcobV9oYW5kbGUsIGVtcHR5
TWV0cmljcyk7CisgICAgICAgIH0KKwogICAgICAgICBpZiAobV9tZXNzYWdlUXVldWUpIHsKICAg
ICAgICAgICAgIG1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAgICAgICAgICAgICBtX21lc3NhZ2VR
dWV1ZSA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KaW5kZXggZjM1YzVmM2E2NTNkZTBiY2Qx
NDRkZWNhNTY4NTI3YWVhNzBkNTRiZi4uNzI2MTVhYzljZmM2N2Q1ODhmODcxZTM3YTU0MzQ5NTk4
YmMzNzRiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrU2Vzc2lvbkNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Y29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQpAQCAtNzkwLDcgKzc5MCwxMCBAQCBzdGF0aWMg
aW5saW5lIHZvaWQgcHJvY2Vzc1NlcnZlclRydXN0RXZhbHVhdGlvbihOZXR3b3JrU2Vzc2lvbkNv
Y29hJiBzZXNzaW9uLCBTZQogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3Vw
U3RhcnQgPSBTZWNvbmRzKGRvbWFpbkxvb2t1cFN0YXJ0SW50ZXJ2YWwpOwogICAgICAgICBuZXR3
b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5kID0gU2Vjb25kcyhkb21haW5Mb29rdXBFbmRJ
bnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPSBTZWNv
bmRzKGNvbm5lY3RTdGFydEludGVydmFsKTsKLSAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnNl
Y3VyZUNvbm5lY3Rpb25TdGFydCA9IFNlY29uZHMoc2VjdXJlQ29ubmVjdGlvblN0YXJ0SW50ZXJ2
YWwpOworICAgICAgICBpZiAobS5yZXVzZWRDb25uZWN0aW9uICYmIFttLnJlc3BvbnNlLlVSTC5z
Y2hlbWUgaXNFcXVhbFRvU3RyaW5nOkAiaHR0cHMiXSkKKyAgICAgICAgICAgIG5ldHdvcmtMb2Fk
TWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBXZWJDb3JlOjpyZXVzZWRUTFNDb25uZWN0
aW9uU2VudGluZWw7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmlj
cy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBTZWNvbmRzKHNlY3VyZUNvbm5lY3Rpb25TdGFydElu
dGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPSBTZWNvbmRz
KGNvbm5lY3RFbmRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0
U3RhcnQgPSBTZWNvbmRzKHJlcXVlc3RTdGFydEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xv
YWRNZXRyaWNzLnJlc3BvbnNlU3RhcnQgPSBTZWNvbmRzKHJlc3BvbnNlU3RhcnRJbnRlcnZhbCk7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggMTVmYTc4ZGVkZmU5MDViMzAwNjFiZWY5ZGM2MzhjNDE2NTVmODA1Mi4uZjkzOGIx
YmJmMzkzZDdmY2Q2NTI2Mzk0YzE2NjUzYWNmMTVmODQ1ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBA
CisyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGVyZm9ybWFu
Y2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVs
LXBhaW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGlt
aW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRtbDoKKyAg
ICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBp
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVs
aW5lLWFwaS5qczoKKwogMjAyMS0wNS0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlc291cmNlIFRpbWluZzogc2VjdXJlQ29ubmVjdGlv
blN0YXJ0ID09IDAgd2hlbiBhIGNvbm5lY3Rpb24gaXMgcmUtdXNlZApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKaW5kZXggNDczNDA3YWE2YjA5OWQwMDk5ZWE1OGJhODE0OTkxNzg0MmUxY2Rh
OC4uNmIzMzY5YzMzMjA5YTExNTVmZTMzZWU2YmMwMzIzZDFhNjRkYTk5OSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTE4IEBACisyMDIxLTA1LTE0ICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBv
cnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL01FVEEueW1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlh
X2RvY3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
aWRsaGFybmVzcy53aW5kb3cuanM6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1l
bnRfb3Blbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWw6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBs
YWNlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3Zl
ZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3Rh
bmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
ZV9pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWw6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFj
a2ZvcndhcmQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWw6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9uYXZpZ2F0ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sOgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5f
eHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWw6IENvcGllZCBmcm9t
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRt
bC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9u
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X3NlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X3hzZXJ2ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25h
dl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93
ZWJwZXJmdGVzdGhhcm5lc3MuanM6CisgICAgICAgICh0ZXN0X25hbWVzcGFjZSk6CisgICAgICAg
ICh0ZXN0X2F0dHJpYnV0ZV9leGlzdHMpOgorICAgICAgICAodGVzdF9lbnVtKToKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24t
c3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1
c2UuaHR0cHMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90
eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0
X2RvY3VtZW50X29ubG9hZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
dW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sOiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1h
ZnRlci10aW1lb3V0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0LnQudC5zdGVw
X3RpbWVvdXQpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qczogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnku
anM6IEFkZGVkLgorICAgICAgICAoYXN5bmMgaWRsX2FycmF5KToKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1v
YnNlcnZlcnMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKHByb21pc2VfdGVzdCk6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNl
LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0LnQudC5zdGVwX3RpbWVvdXQpOgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wZXJmb3Jt
YW5jZWVudHJ5LXRvanNvbi5hbnkuanM6IEFkZGVkLgorICAgICAgICAodGVzdCk6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11
dGF0ZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zl
cy1vYnNlcnZlZC10eXBlcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nv
bm5lY3QuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAodGVz
dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LWVudHJpZXMtc29ydC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJp
ZXMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55Lmpz
OiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9i
c2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9i
c2VydmUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby10YWtlUmVjb3Jkcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNl
cy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJp
ZXMuanM6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanM6IEFk
ZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRl
ZEVudHJ5VHlwZXMuYW55LmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndv
cmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9uLmFueS5qczogQWRkZWQuCisgICAgICAg
ICh0ZXN0VGltZVJlc29sdXRpb24pOgorICAgICAgICAodGltZUJ5VXNlclRpbWluZyk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRo
LXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1h
bmNlLW9ic2VydmVyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhw
ZWN0ZWQudHh0OgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9u
U3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpp
bmRleCBlOTBiYTU0NjZhMGE5ZTBmYmE0OWM4MmY1ZDFhMzUyYjc4YjczZTBmLi5jYzM4OTg1YmNl
NGQ3ZTNlNjJiOTZhZGZlYzI3ZDEyNGY4Mzc5MGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTk0
MCw2ICs5NDAsNyBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRp
bWluZy9jcm9zc29yaWdpbi1zYW5kd2ljaC1uby1UQU8uc3ViLgogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY29ycy1wcmVmbGlnaHQuYW55Lmh0bWwgWyBG
YWlsdXJlIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10
aW1pbmcvY3Jvc3NvcmlnaW4tc2FuZHdpY2gtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0K
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3Jp
Z2luLXNhbmR3aWNoLXBhcnRpYWwtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5l
Y3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXN0cmVhbXMvTWVkaWFTdHJl
YW0tZGVmYXVsdC1mZWF0dXJlLXBvbGljeS5odHRwcy5odG1sIFsgRHVtcEpTQ29uc29sZUxvZ0lu
U3RkRXJyIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXJl
Y29yZC9wYXNzdGhyb3VnaC9NZWRpYVJlY29yZGVyLXBhc3N0aHJvdWdoLmh0dHBzLmh0bWwgWyBG
YWlsdXJlIFRpbWVvdXQgUGFzcyBdCkBAIC00OTUxLDQgKzQ5NTIsNCBAQCB3ZWJraXQub3JnL2Iv
MjA4OTg4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VieHIveHJXZWJHTExheWVy
X2ZyYW1lYnVmZgogd2Via2l0Lm9yZy9iLzIwODk4OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYnhyL3hyV2ViR0xMYXllcl9vcGFxdWVfZnJhbWVidWZmZXIuaHR0cHMuaHRtbCBb
IFNraXAgXQogd2Via2l0Lm9yZy9iLzIwODk4OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYnhyL3hyU3RhdGlvbmFyeVJlZmVyZW5jZVNwYWNlX2Zsb29ybGV2ZWxfdXBkYXRlcy5o
dHRwcy5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMjA4OTg4IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2VieHIveHJTZXNzaW9uX2NhbmNlbEFuaW1hdGlvbkZyYW1lX2ludmFs
aWRoYW5kbGUuaHR0cHMuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzIwODk4OCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnhyL3hyV2ViR0xMYXllcl9vcGFxdWVfZnJhbWVi
dWZmZXJfc3RlbmNpbC5odHRwcy5odG1sIFsgU2tpcCBdClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQord2Via2l0Lm9yZy9iLzIwODk4OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYnhyL3hyV2ViR0xMYXllcl9vcGFxdWVfZnJhbWVidWZmZXJfc3RlbmNpbC5odHRwcy5odG1s
IFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iZmIwZTBmMWY2N2E5YzZhYTJlN2U5MjFiMDllODVmOGQ5NzBiMjkwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApAQCAtMCwwICsxLDUgQEAKK3NwZWM6IGh0dHBzOi8v
dzNjLmdpdGh1Yi5pby9uYXZpZ2F0aW9uLXRpbWluZy8KK3N1Z2dlc3RlZF9yZXZpZXdlcnM6Cisg
IC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKKyAgLSB5b2F2d2Vpc3MKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9t
X2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMjhj
MTBjZTM2YzNjNzQ0ODQ4OTdlNWQyNGRhZmY5MTczOTVlYjU2Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgaW1hZ2UgZG9jdW1lbnQg
aGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0IGRvbUlu
dGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVy
YWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9k
b2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5YjNjNGQ0ODZhYjNiMGU3MjUyMTQ1ZDM3OGE4YWY5
ZTM3ZjYzNDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9k
b2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0
bGU+VGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudC48L3RpdGxlPgorICAgICAg
ICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29n
bGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2h0bWwu
c3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVhZC1tZWRp
YSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgY29uc3Qg
dCA9IGFzeW5jX3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1lbnQiKTsK
KyAgICAgICAgZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25zdCB0aW1p
bmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLmRv
bUludGVyYWN0aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJhY3RpdmUg
dG8gYmUgcG9zaXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAg
fQorICAgIDwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gx
PgorICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1bWVudCBoYXMgcG9zaXRp
dmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0iLi4vaW1h
Z2VzL3NtaWxleS5wbmciIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+CisgICAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3ZjY3MmRiODI3MzQ5OTZiYWE2ZDQxMmQ2MTljZWY3
YmRiODFlY2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9k
b2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNjcmlwdGlvbgorCitUaGlz
IHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJh
Y3RpdmUuCisKKworCitQQVNTIFRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1lbnQK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTRl
NDU3MjVkODM2MDViNTE5Y2U3NGVhOGZmNDU2MWRjZDNkNzU5NQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKQEAgLTAsMCArMSwyNSBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hh
cnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5UZXN0IGRvbUludGVyYWN0aXZlIG9uIG1l
ZGlhIGRvY3VtZW50LjwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0i
R29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayBy
ZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Jy
b3dzaW5nLXRoZS13ZWIuaHRtbCNyZWFkLW1lZGlhIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8c2NyaXB0PgorICAgICAgICBjb25zdCB0ID0gYXN5bmNfdGVzdCgiVGVzdCBkb21JbnRl
cmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudCIpOworICAgICAgICBmdW5jdGlvbiBmcmFtZUxvYWRl
ZCgpIHsKKyAgICAgICAgICAgIGNvbnN0IHRpbWluZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
ImlmcmFtZSIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UudGltaW5nOworICAgICAgICAgICAg
YXNzZXJ0X2dyZWF0ZXJfdGhhbih0aW1pbmcuZG9tSW50ZXJhY3RpdmUsIDAsCisgICAgICAgICAg
ICAgICAgIkV4cGVjdCBkb21JbnRlcmFjdGl2ZSB0byBiZSBwb3NpdGl2ZSB2YWx1ZS4iKTsKKyAg
ICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgICAgPGJvZHk+
CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdHMgdGhh
dCBhIG1lZGlhIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS48L3A+
CisgICAgICAgIDxpZnJhbWUgc3JjPSIuLi9tZWRpYS9BNC5tcDQiIG9ubG9hZD0iZnJhbWVMb2Fk
ZWQoKSI+PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lk
bGhhcm5lc3Mud2luZG93LmpzCmluZGV4IDhjYzM1NDZiM2MyN2E5ZDkzZWU1NjIxNTg0ZDgzZDU2
YTMwODUxM2MuLjcyY2YwYzNhM2QzYzhjYjc3NTQxNjI1YTA1NTRkODQ2NGQ3YzExMmIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndp
bmRvdy5qcwpAQCAtMSwyMSArMSwyMCBAQAogLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvV2Vi
SURMUGFyc2VyLmpzCiAvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9pZGxoYXJuZXNzLmpzCisv
LyBNRVRBOiB0aW1lb3V0PWxvbmcKIAogJ3VzZSBzdHJpY3QnOwogCiAvLyBodHRwOi8vd3d3Lncz
Lm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy8KIAogaWRsX3Rlc3QoCi0gIFsnbmF2aWdhdGlvbi10
aW1pbmcnXSwKLSAgWydyZXNvdXJjZS10aW1pbmcnLCAncGVyZm9ybWFuY2UtdGltZWxpbmUnLCAn
aHItdGltZScsICdkb20nXSwKLSAgaWRsX2FycmF5ID0+IHsKLSAgICBpZGxfYXJyYXkuYWRkX29i
amVjdHMoeworICBbJ25hdmlnYXRpb24tdGltaW5nJywgJ2hyLXRpbWUnXSwKKyAgWydyZXNvdXJj
ZS10aW1pbmcnLCAncGVyZm9ybWFuY2UtdGltZWxpbmUnLCAnZG9tJywgJ2h0bWwnXSwKKyAgaWRs
QXJyYXkgPT4geworICAgIGlkbEFycmF5LmFkZF9vYmplY3RzKHsKICAgICAgIFBlcmZvcm1hbmNl
OiBbJ3BlcmZvcm1hbmNlJ10sCiAgICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb246IFsncGVyZm9y
bWFuY2UubmF2aWdhdGlvbiddLAogICAgICAgUGVyZm9ybWFuY2VUaW1pbmc6IFsncGVyZm9ybWFu
Y2UudGltaW5nJ10sCi0gICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6IFsKLSAgICAg
ICAgJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXScKLSAgICAg
IF0KKyAgICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzogWydwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nXQogICAgIH0pOwogICB9CiApOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjIz
Yjc2MDVkOTIyZGEzODcyYWI1NmRjZmVhYzU4M2MyZWU0MmIyCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3
IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VP
YnNlcnZlciBjYW4gb2JzZXJ2ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UgYW5kIHRoYXQgdGhlIGV4
cGVjdGVkIGF0dHJpYnV0ZXMgaW4gbmF2IHRpbWluZyAyIGluc3RhbmNlIGV4aXN0IChidXQgZG9l
cyBub3QgdmFsaWRhdGUgdGhhdCB0aGUgdmFsdWVzIGFyZSBjb3JyZWN0KS4KKworCitGQUlMIFBl
cmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIG9ic2VydmFibGUuIGFzc2Vy
dF90cnVlOiBFeHBlY3RlZCBhdHRyaWJ1dGU6IGRlY29kZWRCb2R5U2l6ZS4gZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlz
dC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmI2MDQ4ZTA2MWJhMDU3Y2Q5NzFiMDhlMDMyYmU3MTdmMGFkMDRkMGQKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwKQEAgLTAsMCArMSw2NyBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hh
cnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3Rp
dGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0
cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJo
dHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAg
ICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2IHRpbWluZyAyIGluc3Rh
bmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5hdiB0aW1pbmcgMiBpbnN0
YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhlIHZhbHVlcyBhcmUgY29y
cmVjdCkuPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0
cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25u
ZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAn
ZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisg
ICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2Rv
bUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAg
ICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAg
ICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAg
ICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAg
ICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAg
ICAgICAgICAgJ25hbWUnLAorICAgICAgICAgICAgJ25leHRIb3BQcm90b2NvbCcsCisgICAgICAg
ICAgICAncmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAg
ICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAg
ICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAg
ICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAndHJhbnNmZXJT
aXplJywKKyAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcs
CisgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnd29ya2VyU3Rh
cnQnCisgICAgICAgIF07CisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAg
ICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLAorICAgICAgICAgICAgICAg
ICAgICAgICAgIlRoZXJlIHNob3VsZCBiZSBvbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0
YW5jZS4iKTsKKyAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1p
bmcyQXR0cmlidXRlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X3RydWUobmF2VGltaW5nMkF0dHJpYnV0ZXNbaV0gaW4gZW50cmllc1swXSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgYXR0cmlidXRlOiAiICsgbmF2VGltaW5nMkF0
dHJpYnV0ZXNbaV0gKyAiLiIpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25l
KCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNl
cnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0s
ICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlLiIp
OworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjQ5OWY4YWVk
ZGM5YmYzNmUzZWI1MWNiNjhiNjk3Nzg4ODIwYjAyYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAK
K0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5h
diB0aW1pbmcgMiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNl
cnRhaW4gb3JkZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy4KKworCitG
QUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVh
c29uYWJsZS4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHRyYW5zZmVyU2l6ZSB0byBiZSBncmVhdGVy
IHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5hdmlnYXRpb24uIGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFs
dWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjM5NTAzYWYwMzcxZjFmMmY4YjQ3MzU3ZWIxMWE0NzExMGIwYzRkODYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCkBAIC0wLDAgKzEs
MTM3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQ
VDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVm
PSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
Y29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAg
PGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVz
dCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSdzIHRp
bWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4gb3JkZXIgYW5kIHRoZSBvdGhl
cnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy48L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAg
ICAgLy8gSG9zdCBuYW1lcyBhbmQgcG9ydHMgbWF5IGJlIGNvbmZpZ3VyZWQgYXQgdGVzdCBleGVj
dXRpb24gdGltZS4gVGhlCisgICAgICAgIC8vIHdlYi1wbGF0Zm9ybS10ZXN0cyBzZXJ2ZXIgb2Zm
ZXJzIHR3byBtZWNoYW5pc21zIGZvciByZXRyaWV2aW5nIHRoZXNlCisgICAgICAgIC8vIHZhbHVl
cyBkeW5hbWljYWxseTogZGlyZWN0IHRleHQgc3Vic3RpdHV0aW9uIGFuZCB0aGUgYGdldC1ob3N0
LWluZm9gCisgICAgICAgIC8vIHNjcmlwdC4gVGhlIGZvcm1lciBpcyBpbmFwcHJvcHJhdGUgZm9y
IHRoaXMgdGVzdCBiZWNhdXNlIGl0CisgICAgICAgIC8vIGluZmx1ZW5jZXMgdGhlIHNpemUgb2Yg
dGhlIGRvY3VtZW50LCBhbmQgdGhpcyB0ZXN0IGluY2x1ZGVzIHN0YXRpYworICAgICAgICAvLyBh
c3NlcnRpb25zIGZvciB0aGF0IHZhbHVlLgorICAgICAgICB2YXIgaG9zdF9pbmZvID0gZ2V0X2hv
c3RfaW5mbygpOworICAgICAgICB2YXIgZXhwZWN0ZWRVcmwgPSAiaHR0cDovLyIgKyBob3N0X2lu
Zm8uT1JJR0lOQUxfSE9TVCArICI6IiArCisgICAgICAgICAgICBob3N0X2luZm8uSFRUUF9QT1JU
ICsKKyAgICAgICAgICAgICIvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNf
dmFsdWVzLmh0bWwiOworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIxID0gWworICAg
ICAgICAgICAgJ3N0YXJ0VGltZScsCisgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAg
ICAgICAgICAvLyd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcs
CisgICAgICAgICAgICAvLyd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZmV0Y2hTdGFy
dCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFp
bkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgIC8v
J3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAg
ICAgICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAg
ICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAor
ICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdk
b21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAg
ICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJwor
ICAgICAgICBdOworCisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRPcmRlcjIgPSBbCisgICAg
ICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcs
CisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5k
JywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JworICAgICAgICBdOworCisgICAgICAgIHZhciBu
YXZUaW1pbmcyRXZlbnRPcmRlcjMgPSBbCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAg
ICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RF
bmQnCisgICAgICAgIF07CisKKyAgICAgICAgLy8gTmF2aWdhdGlvbiBUaW1pbmcgYXR0cmlidXRl
cyBmb3IgY29tcGFyaXNvbi4KKyAgICAgICAgdmFyIG5hdlRpbWluZzFFdmVudE9yZGVyID0gWwor
ICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0
JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RT
dGFydCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAncmVxdWVzdFN0
YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25z
ZUVuZCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZl
bnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAgICdsb2FkRXZl
bnRTdGFydCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJworICAgICAgICBdOworCisgICAg
ICAgIGZ1bmN0aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50
cnkpIHsKKyAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGgg
LSAxOyBpKyspIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmdFbnRyeVtldmVu
dE9yZGVyW2ldXSA8PSB0aW1pbmdFbnRyeVtldmVudE9yZGVyW2kgKyAxXV0sCisgICAgICAgICAg
ICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIgdG8gYmUgbm8gZ3JlYXRl
ciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2
YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0
LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBlbnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLAorICAgICAg
ICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGVudHJ5VHlwZSB0byBiZTogbmF2aWdhdGlvbi4i
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLm5hbWUsIGV4
cGVjdGVkVXJsKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBd
LnN0YXJ0VGltZSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBzdGFydFRp
bWUgdG8gYmU6IDAuIik7CisgICAgICAgICAgICAgICAgICAgIC8vYXNzZXJ0X2VxdWFscyhlbnRy
aWVzWzBdLmR1cmF0aW9uLCBlbnRyaWVzWzBdLmxvYWRFdmVudEVuZCwKKyAgICAgICAgICAgICAg
ICAgICAgLy8gICAgIkV4cGVjdGVkIGR1cmF0aW9uIHRvIGJlIGVxdWFsIHRvIGxvYWRFdmVudEVu
ZC4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmluaXRp
YXRvclR5cGUsICJuYXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3Rl
ZCBpbml0aWF0b3JUeXBlIHRvIGJlOiBuYXZpZ2F0aW9uLiIpOworICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0ubmV4dEhvcFByb3RvY29sLCAiaHR0cC8xLjEiKTsK
KyAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyB0ZXN0IG1heSBmYWlsIHdoZW4gcmVzcG9uc2Ug
aXMgZnJvbSBjYWNoLiBEaXNhYmxlIG9yIGNsZWFuIGNhY2ggYmVmb3JlCisgICAgICAgICAgICAg
ICAgICAgIC8vIHJ1bm5pbmcgdGhpcyB0ZXN0LgorICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
dHJ1ZShlbnRyaWVzWzBdLnRyYW5zZmVyU2l6ZSA+IGVudHJpZXNbMF0uZW5jb2RlZEJvZHlTaXpl
LAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHRyYW5zZmVyU2l6ZSB0byBiZSBn
cmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5hdmlnYXRpb24uIik7Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbmNvZGVkQm9keVNp
emUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0u
ZGVjb2RlZEJvZHlTaXplLCA1OTU1KTsKKyAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5n
RXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjEpOworICAgICAgICAg
ICAgICAgICAgICAvLyBWZXJpZnkgaWYgdGhlIHJlcG9ydGVkIHRpbWluZyBpcyBub3QgdGhhdCBk
aWZmZXJlbnQKKyAgICAgICAgICAgICAgICAgICAgLy8gZnJvbSB3aGF0IGlzIHJlcG9ydGVkIGJ5
IE5hdmlnYXRpb24gVGltaW5nIDEuCisgICAgICAgICAgICAgICAgICAgIG5hdlRpbWluZzFFdmVu
dE9yZGVyLmZvckVhY2goCisgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24oZXZlbnQpIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nW2V2
ZW50XSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZy5uYXZpZ2F0aW9uU3RhcnQgPiAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9ncmVhdGVyX3RoYW4oZW50cmllc1swXVtldmVudF0sIDAsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50ICsgIiB0byBiZSBncmVhdGVyIHRoYW4g
MCIpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgICAgICAgICAgICAgLy8gV2hlbiB1bmxvYWRFdmVudCBoYXBwZW5zCisgICAgICAg
ICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdWyJ1bmxvYWRFdmVudFN0YXJ0Il0gIT0gMCkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBd
LCBuYXZUaW1pbmcyRXZlbnRPcmRlcjIpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgICAgIC8vIFdoZW4gYSBzZWN1cmUgdHJhbnNwb3J0IGlzIHVzZWQKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInNlY3VyZUNvbm5lY3Rpb25TdGFydCJdICE9IDAp
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZW50cmll
c1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIzKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAg
ICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICApOworICAgICAg
ICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKwor
ICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UncyB2YWx1
ZSBpcyByZWFzb25hYmxlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CmluZGV4IDQ5OTk5
ZDg5NDExMDQ5NzliMzI2YTdmZmE2Yjg5MDE4NWE4ZmE2OGUuLjA1ZjIzMGI5ZmIwZmFiOGQ4ZDdj
YjU4NWVjOTg1YzIwODExMTlmZDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50
X29wZW4tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhw
ZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0
dHJpYnV0ZXNbaV1dJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgd2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSByZW1haW5zIGNvbnN0
YW50IHdoZW4gYSBkb2N1bWVudCBpcyByZXBsYWNlZCB1c2luZyBkb2N1bWVudC5vcGVuLgpAQCAt
OSw2ICs4LDUgQEAgVGhlIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIHBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24KIAogCiAKLUhhcm5lc3MgRXJyb3Ig
KEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAndGltaW5nW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXScpCi0KK1BBU1MgTmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1l
bnRfb3Blbi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sCmluZGV4IGJj
MDZlZDU4NDBhNzU1NWQxZTJhNjI1ODBjZjVhOTg4Y2E1OGE3MTguLmFhMTA5NzI0OGRkMTMzZTVl
NjFiMTdjNmY5MmYxNDM3NTc5YjU4OGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3Vt
ZW50X29wZW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKQEAg
LTgsNiArOCw4IEBACiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgICA8c2NyaXB0PgorICAgICAgICAg
ICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAgICAgICAgICAgIHZhciBu
YXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAgICAgICAgICdjb25uZWN0RW5kJywK
ICAgICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9j
dW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0CmluZGV4IGE5N2M4NmJjYjRmNjdmNTI0YjFiY2Uz
ODk4Y2U1ZWQzMDc0NzhjYmUuLjM1YTU2YTNmZTU3NzI5ODFiZGMyYmM1YWNlMDc5M2MxMDMxMjVm
ZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQK
QEAgLTEsMTMgKzEsMTEgQEAKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2Fk
IGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRs
ZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykK
LUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAncG50MS50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0
ZXMgdGhhdCBhIFBlcmZvcm1hbmNlTmF2aWdhdGluZ1RpbWluZyBjb3JyZXNwb25kaW5nIHRvIGEg
ZGV0YWNoZWQgZG9jdW1lbnQgY2FuJ3QgYWNjZXNzIGEgZGlmZmVyZW50IGRvY3VtZW50J3Mgc3Rh
dGUuCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEudHlwZScpCi0KK1BBU1Mg
TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9j
dW1lbnRfcmVwbGFjZWQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0
bWwKaW5kZXggYjkxMGY0NTNkMTI5NTFkMDFjYjU4NDg5OTc2NmI2NGZlMDhlODM2Yy4uNTk3MmYy
MGU5YmQ3ZmZkZjI3ZDMyYjViMzBiNjM5MTNjZWVlZWQwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVu
dF9yZXBsYWNlZC5odG1sCkBAIC04LDYgKzgsOCBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAg
ICAgIHZhciBuYXZpZ2F0aW9uX2ZyYW1lOwogICAgICAgICAgICAgdmFyIHBudDE7CiAgICAgICAg
ICAgICB2YXIgc3RlcCA9IDE7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1v
dmVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQu
dHh0CmluZGV4IGI1ZjhiZWVmMzlmNjA5OTUyMzI0M2VjZTE5OWJkZGZiZDAxZjE2OTEuLjk3NzNk
ZGE1OWIzZmNhNmI4OGYzNDY4OGRjNjg4MTRiMDc3ZDU3OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2Zy
YW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CkBAIC00LDUgKzQsNSBAQCBEZXNjcmlwdGlvbgogVGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgp
J3MgZGVmYXVsdCB2YWx1ZSBpcyBuYXZpZ2F0ZQogCiAKLUZBSUwgTmF2aWdhdGlvbiBUaW1pbmcg
MiBXUFQgdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudC50eXBlJykK
K1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4
dAppbmRleCA2YzMxYWZkMGIyOWIxMGU5Mzg4YjRmYzIxOTczY2UyYzZlMTRjYTIwLi4zNzdjZTk4
NjgwNmE0OWYyODFjNjFlYzE2YjBmMTEyMWNiMWRkZTMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVj
dGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcg
aW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMuCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAppbmRl
eCA3NzkwMDgxZDAxYzdiODI2MmM1MzRkMzk1MDg1NjkwZWJlMmRmZmU4Li5hZDUwYzZhODdkMmI0
NjYyOTdkYzBmMmViY2VmOTJhMzc2NTViMDEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9p
bnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sCkBAIC00LDcgKzQsNyBA
QAogPHNjcmlwdD4KIHRlc3QoZnVuY3Rpb24oKSB7CiAgIHZhciBuYXZpZ2F0aW9uVGltaW5nMiA9
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCduYXZpZ2F0aW9uJylbMF07Ci0g
IGFzc2VydF90cnVlKG5hdmlnYXRpb25UaW1pbmcyICE9PSB1bmRlZmluZWQpOworICBhc3NlcnRf
bm90X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMiwgdW5kZWZpbmVkKTsKICAgYXNzZXJ0X2VxdWFs
cyhuYXZpZ2F0aW9uVGltaW5nMi5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIik7CiAgIGFzc2VydF9l
cXVhbHMobmF2aWdhdGlvblRpbWluZzIuc3RhcnRUaW1lLCAwKTsKICAgYXNzZXJ0X2VxdWFscyhu
YXZpZ2F0aW9uVGltaW5nMi5pbml0aWF0b3JUeXBlLCAibmF2aWdhdGlvbiIpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTE4
NDg2MjkxNTAxYjVjYzRmMTcxMDMwMTY1ZDk2ZTA0YzdhZmVjYgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgbmF2IHRpbWlu
ZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3Jz
IG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygpL2dldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVudCIpCisKKwor
UEFTUyBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxl
IHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NvcnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGZiZmI0YTMwNjI1NDI0ZThlODQyZWIyYjgw
NjJkYTRlM2U4OTMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2Vf
YWNjZXNzb3JzLmh0bWwKQEAgLTAsMCArMSw3OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0
bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1
dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAg
ICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0
aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9z
Y3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248
L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGlu
c3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2Ug
YXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5
cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVudCIpPC9wPgorCisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7Cisg
ICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJodHRwOi8vIiArIGhvc3RfaW5mby5PUklHSU5BTF9I
T1NUICsgIjoiICsKKyAgICAgICAgICAgIGhvc3RfaW5mby5IVFRQX1BPUlQgKyAiL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbCI7CisgICAgICAgIHZh
ciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScs
CisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2Fk
ZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAor
ICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBF
bmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJh
dGlvbicsCisgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRy
eVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRv
clR5cGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2
ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291
bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0
YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNl
RW5kJywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVD
b25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAg
ICAndHlwZScsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3Vu
bG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOwor
CisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNl
cnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9m
dW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3Rh
bmNlMSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGluc3RhbmNlMiA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMyA9IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwpWzBdOworCisgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxl
bmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGlu
c3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJl
IGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworCisgICAgICAgICAg
ICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3Ro
OyBpKyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2Ux
W25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwgaW5zdGFuY2UyW25hdlRpbWluZzJBdHRyaWJ1dGVz
W2ldXSk7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGluc3RhbmNlMVtuYXZUaW1pbmcyQXR0
cmlidXRlc1tpXV0sIGluc3RhbmNlM1tuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0pOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAg
ICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBb
Im5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRp
bWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vz
c29ycy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTdmMzU2
ZGYxMTZjOTI1NzI2MjkwODNlMDkxMDgwNDZjNzkxMjc5NAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBA
CisKKworUEFTUyBuYXZpZ2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlmcmFtZSBVUkwgY2hhbmdl
cworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjMTQ0YmRhNDU0
YmU4NjE4MGJiZmJhNTAzYzRkMWRhOTQ1NzMzZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUg
SFRNTD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8bWV0YSBjaGFyc2V0PXV0Zi04PgorICAgIDx0
aXRsZT5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcubmFtZSB1cGRhdGVkIGluIGlmcmFtZXM8
L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+
PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdD4KK3Byb21pc2VfdGVz
dChhc3luYyBmdW5jdGlvbiAodCkgeworICB2YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiaWZyYW1lIik7CisgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaWZyKTsKKworICBpZnIu
c3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIjsKKyAgYXdhaXQgbmV3IFByb21p
c2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9ubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgICAgYXNz
ZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1lIGVudHJ5
Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1lLCBpZnIuY29udGVudFdpbmRvdy5s
b2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdhdGlvbiBuYW1lIG1hdGNoZXMgdGhlIHdpbmRvdy5s
b2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3RydWUoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUuZW5kc1dpdGgoImJsYW5r
X3BhZ2VfZ3JlZW4uaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1lIGlzIGJsYW5rX3BhZ2VfZ3JlZW4u
aHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7CisKKworICBhd2FpdCBuZXcg
UHJvbWlzZShyZXNvbHZlID0+IHsgc2V0VGltZW91dChyZXNvbHZlLCAxMDApOyB9KTsKKyAgaWZy
LnNyYyA9InJlc291cmNlcy9ibGFua19wYWdlX3llbGxvdy5odG1sIjsKKworICBhd2FpdCBuZXcg
UHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAg
ICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWUg
ZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUsIGlmci5jb250ZW50V2lu
ZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0aGUgd2lu
ZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29udGVudFdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRzV2l0aCgi
YmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1lIGlzIGJsYW5rX3BhZ2Vf
eWVsbG93Lmh0bWwiKTsKKyAgICAgIHJlc29sdmUoKTsKKyAgICB9CisgIH0pOworfSwgIm5hdmln
YXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBjaGFuZ2VzIik7CisgICAgPC9zY3Jp
cHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0CmluZGV4IDRiMjBlYzZmOWIyMDhjNzNkODVh
OTQ0ZDg5YTFiN2I4ZDg0MGVhOTAuLmVkYWE5Mjg4YTlhZmI2ZTJjY2NhMWM0MzdkNWRhY2E1OWZm
YWFmYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVu
dC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3Vt
ZW50LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDcgQEAKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3Byb3Bl
cnR5XScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRo
ZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJp
YnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChV
UkwgZnJhZ21lbnQgY2hhbmdlKS4KIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWlu
Z1twcm9wZXJ0eV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKaW5kZXggZjM5Y2EwNTc2OTU1
OTk5ZWNhOGEwODMzMWU1NWNjMjkyNTgxNmYzNi4uNzVlNmUxMTNiNmRiYTM2ODdkZjFjOGZkYmY5
Yzk4M2E5ZmFlOGE2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGlu
X2RvY3VtZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3Vt
ZW50Lmh0bWwKQEAgLTEzLDYgKzEzLDggQEAKICAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGF0IGFsbCBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKSBhdHRyaWJ1dGVzIHJlbWFpbiB1bmNoYW5nZWQgYWZ0ZXIgYW4gaW4gZG9jdW1l
bnQgbmF2aWdhdGlvbiAoVVJMIGZyYWdtZW50IGNoYW5nZSkuPC9wPgogCiAgICAgICAgIDxzY3Jp
cHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAgICAg
ICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCiAgICAgICAgICAgICAgICAgJ2Nvbm5l
Y3RFbmQnLAogICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQKaW5k
ZXggOWUyY2FhNjIwZjVhZGViOWRhZGE0YzgyZGQxZDY4MzdjY2E3ZjEyNS4uMmMwNDYzMGJhZTE1
NmRhNzllMDUwMTdmM2ViYTU5YmNmYzlhN2FhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEs
NyBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQog
ZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQotQ09OU09M
RSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXS50eXBlJykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2Fk
IGhhbmRsZXIocykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRs
ZXIocykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdp
bmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB3
aXRoIGEgZm9yd2FyZCBhbmQgYmFjayBuYXZpZ2F0aW9uLgpAQCAtMTMsNiArMTQsNSBAQCBUaGlz
IHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIHRoZSB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZQogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2Ug
PSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XS50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCmluZGV4IGM0YjU3NTgxMDY5
MTEwM2RiNjljNjEwYjllYzY5NDI1MTEwZDc2MzUuLmQwMDQ1NDE1Yjg5YzQ1ZWQ5YTFhODg5ZThi
ZTBhYmM4MTIzMDkyZDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9iYWNrZm9yd2FyZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9i
YWNrZm9yd2FyZC5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAg
ICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmMzMGRjZTQ0ZDgzMTEwMzdjYjVjNzljZTI5MTlmMzA2ZmI0MGE2YTkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0
aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLgorCisKK1BBU1MgTmF2aWdhdGlvbiB0eXBlIHRv
IGJlIG5hdmlnYXRlLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfbmF2aWdhdGUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmVmYWVmMWVjMGJiYjg4ZTVmYjE1YzJhMzFmZDVmOTMzYzE2YTA5
ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2
aWdhdGUuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxl
Pk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRo
b3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAg
ICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlv
bi10aW1pbmcvI3NlYy1uYXZpZ2F0aW9uLXRpbWluZy1pbnRlcmZhY2UiLz4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisg
ICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXMo
KVswXS50eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5h
dmlnYXRlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAg
IH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZl
KHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAgICB9LCAiTmF2aWdh
dGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICA8L3NjcmlwdD4KKworICAgIDwv
aGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPgorICAgICAgICAgICAgRGVzY3JpcHRpb248
L2gxPgorICAgICAgICA8cD4KKyAgICAgICAgICAgIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZh
bHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0udHlwZSB0byBiZSBuYXZpZ2F0ZS48L3A+CisKKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDcxYzQ3ZTViOGRmN2E1MWVlOGViZGU2OThhZTg1NmVhNjcyM2E1ODAuLmE0ZDZiZGE2ZDQ0
OWYxYWUxZjZiYjU4ZGM1ODI2NWUzNmVhYWFlN2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAotQ09O
U09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFs
aWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLih0eXBlL3VubG9hZEV2ZW50RW5kL3VubG9hZEV2ZW50U3RhcnQpIHdp
dGggYSByZWxvYWRlZCBuYXZpZ2F0aW9uLgpAQCAtMTAsNiArOSw1IEBAIFRoZSB3aW5kb3cucGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLnVubG9hZEV2ZW50U3RhcnQg
PiAwIGFmdGVyCiBUaGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKS51bmxvYWRFdmVudEVuZCA+IDAgYWZ0ZXIgcmVsb2FkCiAKIAotSGFybmVzcyBFcnJv
ciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1p
bmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3Jl
bG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCmlu
ZGV4IDc0Yjg1YzlkYmI1ZTAzMjY2YzBiYTAxNDVhZDQ1ZDY3YTAyNWZkMGMuLjBmMDNmMDdjNTdj
OWMxYWMzYzg2ODc0MWEyM2Q5ZjJlNmViYjJiMmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
aW9uX3R5cGVfcmVsb2FkLmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAg
ICAgICAgICAgdmFyIHJlbG9hZF9mcmFtZTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9v
cmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFkMzg5ODc2MWI4NzE1MGQwYTc2NWFiMzFj
MmU2MTk3NmQ5MjE2MTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly93d3cubG9j
YWxob3N0Ojg4MDAvY29tbW9uL3JlZGlyZWN0LW9wdC1pbi5weT9sb2NhdGlvbj1odHRwOi8vbG9j
YWxob3N0Ojg4MDAvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4u
aHRtbAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRo
ZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJl
ZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9yaWdp
biBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4gdGhlIGZpbmFsIGRvY3VtZW50
IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uCisKKworCitIYXJuZXNzIEVycm9y
IChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworTk9UUlVOIE5hdmlnYXRpb24gVGltaW5nIDIg
V1BUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJf
ZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFp
bl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkZWZhMjAy
NTAwYTQ0OTcxNmVhYWI1ZDJkNzU2MTZhYzQ3MzA1YTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5o
dG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdh
dGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0
bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxp
bmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWlu
Zy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAg
ICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCisgICAgICAg
ICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgY29uc3QgZnJhbWVfcGVyZm9ybWFuY2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJh
bWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZTsKKyAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXS50eXBlLAorICAgICAgICAgICAgICAgICAgICAibmF2aWdhdGUiLAorICAgICAgICAg
ICAgICAgICAgICAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOwor
ICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQsIDAsCisgICAgICAgICAgICAg
ICAgICAgICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVj
dGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5y
ZWRpcmVjdEVuZCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0RW5k
IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgZG9uZSgpOworICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRl
c2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVz
IG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
WzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZQorICAgICAgICAgICB3aW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVz
IGZvciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4g
dGhlIGZpbmFsCisgICAgICAgICAgIGRvY3VtZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5h
bCBvcmlnaW4uPC9wPgorCisgICAgICAgIDxpZnJhbWUgaWQ9ImZyYW1lQ29udGV4dCIgc3JjPSIi
IHN0eWxlPSJ3aWR0aDogMjUwcHg7IGhlaWdodDogMjUwcHg7Ij48L2lmcmFtZT4KKyAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgICAgIC8vIGNvbWJpbmUgdGhlIHBhZ2Ugb3JpZ2luIGFuZCByZWRp
cmVjdCBvcmlnaW4gaW50byB0aGUgSUZSQU1FJ3Mgc3JjIFVSTAorICAgICAgICAgICAgY29uc3Qg
ZGVzdFVybF9maXJzdCA9IG1ha2VfYWJzb2x1dGVfdXJsKHtzdWJkb21haW46ICJ3d3ciLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogIi9jb21tb24v
cmVkaXJlY3Qtb3B0LWluLnB5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHF1ZXJ5OiAibG9jYXRpb249IiArIG1ha2VfYWJzb2x1dGVfdXJsKAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BhdGg6
ICIvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbCJ9KQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAg
ICAgICBjb25zdCBkZXN0VXJsID0gbWFrZV9hYnNvbHV0ZV91cmwoeworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogIi9jb21tb24vcmVkaXJlY3QucHki
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlcnk6ICJs
b2NhdGlvbj0iICsgZGVzdFVybF9maXJzdH0pOworICAgICAgICAgICAgbGV0IGZyYW1lQ29udGV4
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKTsKKyAgICAgICAgICAg
IGZyYW1lQ29udGV4dC5vbmxvYWQgPSBvbmxvYWRfdGVzdDsKKyAgICAgICAgICAgIGZyYW1lQ29u
dGV4dC5zcmMgPSBkZXN0VXJsOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3Bh
cnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWlu
X3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CmluZGV4IDcxZWQ0N2ZlMzVhMTQy
ZTQwZmY0NzkwNWY3Nzg4YTFkYzVhY2EwZmIuLjRlNzlhN2ZkYmEwODYxNmY5NDUwOGRiZmZlODJj
NTY5MDRjNGJiZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hz
ZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CkBAIC02LDYg
KzYsNSBAQCBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZwogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJ
TCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICdmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0udHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVfcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwK
aW5kZXggYzBkZDI0OTU0NWE2NDBlYzBjZGQ3NTliMjExNGFiNzI1YTYwOTAzOS4uMGZlYjNiZmE3
ZjFjMDEzOGU0YzlmOWUzZmQ0ZDM4M2U1ZWY2NTg1ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbApAQCAt
OSwxMyArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vdXRpbHMu
anMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgotCi0gICAgICAgICAgICBmdW5jdGlvbiB2
ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7Ci0gICAgICAg
ICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykg
ewotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmdFbnRyeVtldmVudE9yZGVy
W2ldXSA8IHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIgdG8gYmUgbm8gZ3JlYXRlciB0
aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgfQorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAog
ICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNzFhZTk0MDQx
YWFhYzczOTQzZDIxYzJiNDIzNThmNzk3OWE0ZDJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNj
cmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSB3aW5k
b3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0
Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQgYW5kIHJlZGlyZWN0RW5k
IGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLgorCisKK1BBU1MgTmFp
dmF0aW9uIHdpdGhvdXQgcmVkaXJlY3RzLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9ub25lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTc0MzdlMWE1ZWYyYjYxYWU2NTc2MmJmYTM1MTYzMGViNDcxNGNkZgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbApAQCAtMCwwICsx
LDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0
YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIg
V1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhy
ZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIg
aHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJv
ZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhdHRyaWJ1dGUsIGFzIHdl
bGwgYXMgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF0ucmVkaXJlY3RTdGFydCBhbmQgcmVkaXJlY3RFbmQgYXR0cmlidXRlcyBvbiBhIG5vbi1y
ZWRpcmVjdGVkIG5hdmlnYXRpb24uPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAg
YXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rp
b24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIgbmF2VGltaW5nID0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdENvdW50LCAwLCAiRXhwZWN0
ZWQgcmVkaXJlY3RDb3VudCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdFN0YXJ0LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFy
dCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWlu
Zy5yZWRpcmVjdEVuZCwgMCwgIkV4cGVjdGVkIHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7CisgICAg
ICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAg
ICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAg
ICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisg
ICAgICAgIH0sICJOYWl2YXRpb24gd2l0aG91dCByZWRpcmVjdHMuIik7CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4dAppbmRleCAwNGEyNDhj
ZGU1MDFkMjY4OTRiMjIwN2ZlOWFmNWY1NTBkMjBjYmM3Li40ZmIxNWNhZmNlN2U2MTcyZWQyZWY5
YjlmMTNjODQ3MWY1OTYzZTk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9z
ZXJ2ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1l
eHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsOSBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2VudHJ5
LnR5cGUnKQorQ09OU09MRSBNRVNTQUdFOiBFcnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0
YXJ0VGltZSB0byBiZSBubyBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVl
cyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLnJlZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZvciBhIHNhbWUtb3Jp
Z2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24uCiAKIAogCi1IYXJuZXNzIEVycm9y
IChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZW50cnkudHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBU
aW1pbmcgMiBXUFQgRXJyb3I6IGFzc2VydF90cnVlOiBFeHBlY3RlZCBzdGFydFRpbWUgdG8gYmUg
bm8gZ3JlYXRlciB0aGFuIHJlZGlyZWN0U3RhcnQuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKaW5kZXggMWQ3ZjZjOTI4Y2U2M2M5NGVkYzE0
OTFkMjg4M2M4NzMzMWUzODcyMi4uODViODE4YjNkZGM5ZDYxY2VjZDQ0NmYzNWI4ODVhNzNlYWVj
NzE3ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKQEAgLTksNiArOSw3IEBACiAg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KIAogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVz
dDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRl
cihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgewogICAgICAgICAgICAgICAgIGZvciAobGV0IGkg
PSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKQEAgLTI3LDEyICsyOCwxMiBA
QAogICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvbl9lbnRyeS5yZWRpcmVj
dENvdW50LCAxLCAiRXhwZWN0ZWQgcmVkaXJlY3RDb3VudCB0byBiZSAxLiIpOwogICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvbl9lbnRyeS5uYW1lLCAnaHR0cDovLycgKyBk
b2N1bWVudC5sb2NhdGlvbi5ob3N0ICsgJy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxh
bmtfcGFnZV9ncmVlbi5odG1sJyk7CiAKLSAgICAgICAgICAgICAgICB2YXIgdGltZ2luZ0V2ZW50
cyA9IFsKKyAgICAgICAgICAgICAgICB2YXIgdGltaW5nRXZlbnRzID0gWwogICAgICAgICAgICAg
ICAgICAgICAnc3RhcnRUaW1lJywKICAgICAgICAgICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQn
LAogICAgICAgICAgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAogICAgICAgICAgICAgICAgIF07
Ci0gICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcih0aW1naW5nRXZlbnRzLCBm
cmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0pOworICAg
ICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIodGltaW5nRXZlbnRzLCBmcmFtZV9w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0pOwogICAgICAgICAg
ICAgICAgIGRvbmUoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0CmluZGV4IGEwOTE2YzQ1OGM2
MjgyZDMxZDUzODQ4ZDc5ZjUzNzRjZWY0Mjc1YzYuLmU4MWNjZWRhOWViZjNlZDc1ODMwMzcyNjE1
OTlmZDk5MTkzZDFjOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhw
ZWN0ZWQudHh0CkBAIC02LDYgKzYsNSBAQCBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMg
b2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZwogCiAKIAot
SGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVz
QnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcg
MiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
cGVyZm9ybWFuY2VOYW1lc3BhY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5
cGUnKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKaW5kZXggMDZjOWI3ZjNiNjc4
YTIyNzUxYTFlOGUxYTU3MDI4MjE2YWIyMTg3OS4uZDhhY2M4MDU0ZDg3YTk3MmQwMDU5NmQ5Nzk0
ODU4NDdjZjZjZjRlNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZl
ci5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbApAQCAtOSw2
ICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91dGlscy5qcyI+
PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90
ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCiAgICAg
ICAgICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNl
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDc2OGM1MDA0NjVkNzdiNWQxYTk4M2JjNDY2YmUxYWRlNDdm
ZTk4MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFu
Y2VzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVz
dCB2YWxpZGF0ZXMgdGhhdCBlYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGlu
c3RhbmNlLgorCisKK0ZBSUwgRWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBp
bnN0YW5jZS4gYXNzZXJ0X2VxdWFsczogT25seSBvbmUgbmF2IHRpbWluZyBpbnN0YW5jZSBleGlz
dHMuIGV4cGVjdGVkIDEgYnV0IGdvdCAwCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Vu
aXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3Rh
bmNlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkNzdhYjZiYWUxMDFiNzA0ZDEyNjdlOGIwMzQxNjAxMWYy
OGQ2NzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3Rh
bmNlcy5odG1sCkBAIC0wLDAgKzEsNzYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAg
PGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+
TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhv
ciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAg
ICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9u
LXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAg
ICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93IGhhcyBhIHVuaXF1
ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuPC9wPgorICAgICAgICA8aWZyYW1lIGlkPSJmcmFtZUNv
bnRleHQiIHNyYz0icmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIgc3R5bGU9ImRpc3Bs
YXk6bm9uZTsiOz48L2lmcmFtZT4KKyAgICAgICAgPHNjcmlwdD4KKworICAgICAgICAgICAgdmFy
IG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgICAgICdjb25uZWN0RW5kJywK
KyAgICAgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZGVjb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAg
ICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgICAgICdkb21Db250
ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywK
KyAgICAgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICAgICAnZG9t
YWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAg
ICAgICAgJ2VuY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAgICAgJ2VudHJ5VHlwZScsCisg
ICAgICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgICAgICdpbml0aWF0b3JU
eXBlJywKKyAgICAgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAn
bG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICduYW1lJywKKyAgICAgICAgICAgICAg
ICAncmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAg
ICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAgICAgJ3JlcXVlc3RTdGFy
dCcsCisgICAgICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICAgICAncmVz
cG9uc2VTdGFydCcsCisgICAgICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisg
ICAgICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAgICAgJ3R5cGUnLAor
ICAgICAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAgICAgJ3VubG9h
ZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICd3b3JrZXJTdGFydCcKKyAgICAgICAgICAg
IF07CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG5vdF9zYW1lX2luc3RhbmNlKGluc3RhbmNlMSwg
aW5zdGFuY2UyLCBhdHRyaWJ1dGVzKSB7CisgICAgICAgICAgICAgICAgZm9yICh2YXIgaSBpbiBh
dHRyaWJ1dGVzKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChpbnN0YW5jZTFbYXR0cmlidXRl
c1tpXV0gIT0gaW5zdGFuY2UyW2F0dHJpYnV0ZXNbaV1dKQorICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlv
biAodCkgeworICAgICAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKAorICAgICAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlM
aXN0KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2IHRp
bWluZyBpbnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250ZW50V2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFu
Y2UgZXhpc3RzLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG1haW5fZnJhbWVfaW5z
dGFuY2UgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAg
ICAgICAgICAgICAgICAgICAgICAgdmFyIGlmcmFtZV9pbnN0YW5jZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF90cnVlKG5vdF9zYW1lX2luc3RhbmNlKG1haW5fZnJhbWVfaW5zdGFuY2UsIGlmcmFtZV9p
bnN0YW5jZSwgbmF2VGltaW5nMkF0dHJpYnV0ZXMpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICJUd28gbmF2IHRpbWluZyBpbnN0YW5jZXMgYXJlIG5vdCB0aGUgc2FtZSBpbnN0YW5jZS4i
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgICAgICB9KQorICAg
ICAgICAgICAgICAgICk7CisgICAgICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlU
eXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICAgICAgfSwgIkVhY2ggd2luZG93IGhh
cyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuIik7CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIw
ZWIxZjVmYjI0NDIwMGMzYmY1MGE1ZWFkODg2ZDc4NGNjYWI3MjgKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9y
bWFuY2VPYnNlcnZlcnM6IG5hdmlnYXRpb24KKworTmF2aWdhdGlvbiB3aWxsIHF1ZXVlIGEgUGVy
Zm9ybWFuY2VFbnRyeS4KKworCitQQVNTIG5hdmlnYXRpb24gZW50cnkgaXMgb2JzZXJ2YWJsZQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlv
bi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmE1NGZiMmFmZjhlYWI3NGU1OWM1YTg0ZmMyYmNmNDg3ZjEyMmVj
NDkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbApAQCAtMCwwICsx
LDI5IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVy
Zm9ybWFuY2VPYnNlcnZlcnM6IG5hdmlnYXRpb248L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNlT2JzZXJ2ZXJz
OiBuYXZpZ2F0aW9uPC9oMT4KKzxwPgorTmF2aWdhdGlvbiB3aWxsIDxhIGhyZWY9Imh0dHBzOi8v
dzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8jZGZuLXF1ZXVlLWEtcGVyZm9ybWFu
Y2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5PC9hPi4KKzwvcD4KKzxkaXYgaWQ9Imxv
ZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVu
Y3Rpb24gY2hlY2tFbnRyeShwZXMpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMocGVzLmxlbmd0aCwg
MSwgIk9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1
YWxzKHBlc1swXS5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIiwgImVudHJ5VHlwZSBpcyBcIm5hdmln
YXRpb25cIiIpOworICAgICAgYXNzZXJ0X2VxdWFscyhwZXNbMF0ubmFtZSwgd2luZG93LmxvY2F0
aW9uLnRvU3RyaW5nKCksICJuYW1lIGlzIHRoZSBhZGRyZXNzIG9mIHRoZSBkb2N1bWVudCIpOwor
ICAgIH0KKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAg
ICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2hl
Y2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBjaGVja0VudHJ5KGVu
dHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikpOworICAgICAgICAgIGNoZWNr
RW50cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUod2luZG93LmxvY2F0aW9uLnRvU3RyaW5n
KCkpKTsKKyAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgdC5kb25l
KCk7CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlw
ZXM6IFsibmF2aWdhdGlvbiJdfSk7CisgIH0sICJuYXZpZ2F0aW9uIGVudHJ5IGlzIG9ic2VydmFi
bGUiKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3Ro
YXJuZXNzLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCmluZGV4IDNl
ZmI1Mjc4M2YxZTVkY2IwZDQyYWFkMTFhZWMyYTllNDcyNTdkMzMuLjBjMjdjMmVlMzA3ZjRiODA5
OWE2YjRjNWIwNDk3YmFmNTBiNjExMDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBl
cmZ0ZXN0aGFybmVzcy5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3Mu
anMKQEAgLTQyLDI1ICs0MiwyNSBAQCBmdW5jdGlvbiB0ZXN0X25hbWVzcGFjZShjaGlsZF9uYW1l
LCBza2lwX3Jvb3QpCiB7CiAgICAgaWYgKHNraXBfcm9vdCA9PT0gdW5kZWZpbmVkKSB7CiAgICAg
ICAgIHZhciBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlIGlzIGRlZmluZWQnOwotICAgICAgICB3
cF90ZXN0KGZ1bmN0aW9uICgpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1lc3BhY2UgIT09
IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbiAoKSB7
IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlLCB1bmRlZmluZWQsIG1zZyk7
IH0sIG1zZyk7CiAgICAgfQogCiAgICAgaWYgKGNoaWxkX25hbWUgIT09IHVuZGVmaW5lZCkgewog
ICAgICAgICB2YXIgbXNnMiA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIGNoaWxkX25hbWUgKyAn
IGlzIGRlZmluZWQnOwotICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShw
ZXJmb3JtYW5jZU5hbWVzcGFjZVtjaGlsZF9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cyKTsgfSwg
bXNnMik7CisgICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBl
cmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdLCB1bmRlZmluZWQsIG1zZzIpOyB9LCBtc2cy
KTsKICAgICB9CiB9CiAKIGZ1bmN0aW9uIHRlc3RfYXR0cmlidXRlX2V4aXN0cyhwYXJlbnRfbmFt
ZSwgYXR0cmlidXRlX25hbWUsIHByb3BlcnRpZXMpCiB7CiAgICAgdmFyIG1zZyA9ICd3aW5kb3cu
cGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsgJy4nICsgYXR0cmlidXRlX25hbWUgKyAnIGlz
IGRlZmluZWQuJzsKLSAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3Jt
YW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bYXR0cmlidXRlX25hbWVdICE9PSB1bmRlZmluZWQs
IG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CisgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNz
ZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2F0dHJpYnV0
ZV9uYW1lXSwgdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQogCiBmdW5j
dGlvbiB0ZXN0X2VudW0ocGFyZW50X25hbWUsIGVudW1fbmFtZSwgdmFsdWUsIHByb3BlcnRpZXMp
CiB7CiAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsg
Jy4nICsgZW51bV9uYW1lICsgJyBpcyBkZWZpbmVkLic7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigp
IHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2VudW1fbmFt
ZV0gIT09IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0
KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJl
bnRfbmFtZV1bZW51bV9uYW1lXSwgdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMp
OwogCiAgICAgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicg
KyBlbnVtX25hbWUgKyAnID0gJyArIHZhbHVlOwogICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFz
c2VydF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2VudW1fbmFtZV0s
IHZhbHVlLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwpAQCAtMTIyLDUgKzEyMiw1IEBAIGZ1
bmN0aW9uIHRlc3RfZ3JlYXRlcl9vcl9lcXVhbHModmFsdWUsIGdyZWF0ZXJfdGhhbiwgbXNnLCBw
cm9wZXJ0aWVzKQogCiBmdW5jdGlvbiB0ZXN0X25vdF9lcXVhbHModmFsdWUsIG5vdGVxdWFscywg
bXNnLCBwcm9wZXJ0aWVzKQogewotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90cnVl
KHZhbHVlICE9PSBub3RlcXVhbHMsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CisgICAgd3Bf
dGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVhbHModmFsdWUsIG5vdGVxdWFscywgbXNn
KTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5l
Y3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVj
dGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjEwOGQyZTgz
MzY0YWQxNGZkZjJhMzA0ZjdkNTQ4Mjg3ODBkOWVhMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCB2YWx1ZSBp
cyBhcyBleHBlY3RlZCB3aGVuIHJldXNlZAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25u
ZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0
YXJ0LXJldXNlLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjUyYTI1OWVjZDQyNWMyMTJkODllYjEx
NDk4MWQ0ZjEyZTgwZjMwNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKzx0aXRsZT5OYXZp
Z2F0aW9uIFRpbWluZyBzZWN1cmVjb25uZWN0aW9uc3RhcnQgcmV1c2U8L3RpdGxlPgorPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2Nv
bnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZhbHVl
IGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkIik7Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigi
bWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9PiB7CisgIGFzc2VydF9lcXVhbHMoZS5kYXRh
LCAiUEFTUyIpOworfSkpOworPC9zY3JpcHQ+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL3NlY3Vy
ZS1jb25uZWN0aW9uLWludGVyaW0uaHRtbCI+CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nv
bm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVf
Y29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggODIyMDRk
MDY1MTY2OTU3YWE5MDA5ODljZWM3ZGFjY2FjZGUzODQ4Ni4uNTE4Mjc1ODNhZDM3ZTFlMTJjMWFi
ZjVmMjFjOGNlNjI1MGUzMTAwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVfY29ubmVjdGlvbl9z
dGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVfY29ubmVj
dGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQKQEAgLTMsNSArMyw1IEBAIERl
c2NyaXB0aW9uCiBUaGUgdGVzdHMgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaGFzIGEgbm9u
LXplcm8gdmFsdWUuCiAKIAotRkFJTCBUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IGlz
IG5vdCB6ZXJvIHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS5z
ZWN1cmVDb25uZWN0aW9uU3RhcnQnKQorRkFJTCBUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0
YXJ0IGlzIG5vdCB6ZXJvIGFzc2VydF9ncmVhdGVyX3RoYW46IHNlY3VyZUNvbm5lY3Rpb25TdGFy
dCBpcyBub24temVybyBleHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRoYW4gMCBidXQgZ290IDAK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dApp
bmRleCA1Nzk3OGJmMjZkYjBlNDEzY2JmMmQ0YzJmMzg2MzljNDFhMjVmYzUwLi5kMmVhOTUwNDc2
ZDkxYmU1NjA0NmQwMzNkMWZjZDY2MWQ0Nzk4MGY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRl
ZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9u
YXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQgQEAKIAotRkFJTCBz
dXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4gYXNzZXJ0X3RydWU6IFRo
ZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicgaW4gUGVyZm9ybWFuY2VPYnNlcnZl
ci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIHN1cHBv
cnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLgorUEFTUyAnbmF2aWdhdGlvbicg
ZW50cmllcyBzaG91bGQgYmUgb2JzZXJ2YWJsZS4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0
ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0
ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4IDU3OTc4YmYy
NmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0MWEyNWZjNTAuLjM0MzgzNWE0Mjg0NTNlMGIxY2Y2NWQ4
NGRiODMzZjkxYWJjODM2MTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25f
dHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0
aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSw2IEBACiAKLUZBSUwg
c3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuIGFzc2VydF90cnVlOiBU
aGVyZSBzaG91bGQgYmUgYW4gZW50cnkgJ25hdmlnYXRpb24nIGluIFBlcmZvcm1hbmNlT2JzZXJ2
ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorSGFybmVzcyBF
cnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKK1BBU1Mgc3VwcG9ydGVkRW50cnlUeXBl
cyBjb250YWlucyAnbmF2aWdhdGlvbicuCitUSU1FT1VUICduYXZpZ2F0aW9uJyBlbnRyaWVzIHNo
b3VsZCBiZSBvYnNlcnZhYmxlLiBUZXN0IHRpbWVkIG91dAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rl
c3RfZG9jdW1lbnRfb25sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxv
YWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlOWEzODRhNWJiMzcwMDRlOGY3MDQyODViMzUy
ZWVhYjQ5MTNjZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2Fk
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCBj
aGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNpemUgYW5kIGRlY29kZWRC
b2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hlbiBjaGVja2VkIGluIHRo
ZSBvbmxvYWQgaGFuZGxlcgorCisKK0ZBSUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUg
YSBwcm9wZXIgdmFsdWUgZHVyaW5nIERPTUNvbnRlbnRMb2FkZWQgYXNzZXJ0X2dyZWF0ZXJfdGhh
bjogZGVzY3IgZXhwZWN0ZWQgYSBudW1iZXIgYnV0IGdvdCBhICJ1bmRlZmluZWQiCitGQUlMIFRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBvbmxvYWQg
YXNzZXJ0X2dyZWF0ZXJfdGhhbjogZGVzY3IgZXhwZWN0ZWQgYSBudW1iZXIgYnV0IGdvdCBhICJ1
bmRlZmluZWQiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43Y2MxODQ5MWQ2MjAy
NGYxZDRmYTNkMjBjNTE3M2IzMTMyNjliM2U4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0
X2RvY3VtZW50X29ubG9hZC5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAg
ICAgPHRpdGxlPndpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIGF0dHJpYnV0ZXM8L3RpdGxl
PgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ik1vemlsbGEiIGhyZWY9Imh0dHBz
Oi8vd3d3Lm1vemlsbGEub3JnLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJo
dHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jcHJvY2Vzc2luZy1tb2Rl
bCIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vcGVyZm9ybWFuY2Ut
dGltZWxpbmUtdXRpbHMuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3Vy
Y2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxi
b2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgdGhlIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplIGFuZCBkZWNvZGVk
Qm9keVNpemUgYXR0cmlidXRlcyBoYXZlIGNvcnJlY3QgdmFsdWVzIHdoZW4gY2hlY2tlZCBpbiB0
aGUgb25sb2FkIGhhbmRsZXI8L3A+CisKKyAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KKwor
ICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgewor
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2Fk
ZWQiLCB0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVu
dHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2Zl
clNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRl
cl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAw
LCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICB9KSk7CisgICAgICAgICAgICB9LCAiVGVzdCB0
aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIERPTUNvbnRlbnRM
b2FkZWQiKTsKKworICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAg
ICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgdC5zdGVwX2Z1bmNfZG9u
ZSgoKSA9PiB7CisgICAgICAgICAgICAgICAgICAgIGxldCBlbnRyeSA9IHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkudHJhbnNmZXJTaXplLCAxMDAwLCAiZGVzY3Ii
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5lbmNvZGVk
Qm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3Jl
YXRlcl90aGFuKGVudHJ5LmRlY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAg
ICAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHNldFRpbWVvdXQodC5zdGVwX2Z1bmNfZG9uZSgoKSA9PiB7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgIGxldCBlbnRyeSA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9n
cmVhdGVyX3RoYW4oZW50cnkudHJhbnNmZXJTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5lbmNvZGVkQm9keVNp
emUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3Jl
YXRlcl90aGFuKGVudHJ5LmRlY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAg
ICAgICAgICAgICAgICAgICB9KSwgMCk7CisgICAgICAgICAgICAgICAgICAgIH0sICJUZXN0IHRo
YXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgYSB0YXNrIGFmdGVy
IG9ubG9hZCIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAgICAgIH0sICJUZXN0IHRo
YXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgb25sb2FkIik7CisK
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxv
YWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CmluZGV4IGRhNTI2MGEyMjNk
MjJhZDFhYzRkNWQyOTcyNmM0YWUyNzNlYjFiMjguLjNmZWVhZDFmZGU3MjAzMzczNmRlZjFmMDRl
NWI0NzEwOThiMGQzOGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2lu
LWNoZWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1j
aGVjay1leHBlY3RlZC50eHQKQEAgLTQsMTYgKzQsMTYgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0
aGF0IHRoZSB2YWx1ZXMgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmkKIAogCiAKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBhIHBhcnRpYWwgVEFPIG9wdC1pbiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBl
JykiCi1GQUlMIFJlZGlyZWN0IGNoYWluIHdpdGggZnVsbCBUQU8gb3B0LWluIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwg
U2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1G
QUlMIGNyb3NzLWNyb3NzLXNhbWUgUmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUn
KSIKLUZBSUwgUHJldmlvdXMgZG9jdW1lbnQgY3Jvc3Mgb3JpZ2luIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgUHJldmlv
dXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBl
JykiCi1GQUlMIFNhbWUgb3JpZ2luIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmlnaW4g
cmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
ZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3JpZ2lu
IHJlZGlyZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmln
aW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9y
aWdpbiByZWRpcmVjdCB3aXRoIHBhcnRpYWwgVEFPIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9j
dW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgorUEFTUyBSZWRp
cmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0LWluCitQQVNTIFJlZGlyZWN0IGNoYWlu
IHdpdGggZnVsbCBUQU8gb3B0LWluCitQQVNTIFNhbWUtY3Jvc3Mtc2FtZSByZWRpcmVjdCBjaGFp
biB3aXRoIG5vIFRBTyBvcHQtaW4KK1BBU1MgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRpcmVjdCBjaGFp
biB3aXRoIG5vIFRBTyBvcHQtaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgY3Jvc3Mgb3JpZ2lu
CitQQVNTIFByZXZpb3VzIGRvY3VtZW50IHNhbWUgb3JpZ2luCitQQVNTIE5vIHByZXZpb3VzIGRv
Y3VtZW50CitQQVNTIFNhbWUgb3JpZ2luIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmln
aW4gcmVkaXJlY3QKK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiBy
ZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRp
cmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVj
dCB3aXRoIHBhcnRpYWwgVEFPCitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mg
b3JpZ2luIHJlZGlyZWN0IHdpdGggVEFPCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50
LXNhbWUtb3JpZ2luLWNoZWNrLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1j
aGVjay5odG1sCmluZGV4IDMxOWQwNDQ2MmRlYmE4MmI1NDhkNDQyOTEwNDJkMjk2YWZhZjM2YTcu
LjAyNGQ4YjQ1MzJjZjIyMGQxNzQ4Mjc3ZjIxZDkwN2NjYWU3ODNkMmIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQt
ZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbApAQCAtOTIsNyArOTIsNyBAQAogICAgICAgICAg
ICAgICAgIGNvbnN0IGVudHJ5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4
dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdOwogICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnkudHlwZSwgIm5hdmln
YXRlIiwgIkV4cGVjdGVkIG5hdmlnYXRpb24gdHlwZSB0byBiZSBuYXZpZ2F0ZS4iKTsKICAgICAg
ICAgICAgICAgICBpZiAoIXVubG9hZF9leHBvc2VkKSB7Ci0gICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZW50cnkudW5sb2FkRXZlbnRTdGFydCwgMCwgIkV4cGVjdGVkIHVubG9hZEV2
ZW50U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoZW50
cnkudW5sb2FkRXZlbnRTdGFydCA9PSAwLCAiRXhwZWN0ZWQgdW5sb2FkRXZlbnRTdGFydCB0byBi
ZSAwLiIpOwogICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5LnVubG9hZEV2
ZW50RW5kLCAwLCAiRXhwZWN0ZWQgdW5sb2FkRXZlbnRFbmQgdG8gYmUgMC4iKTsKICAgICAgICAg
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFu
KGVudHJ5LnVubG9hZEV2ZW50U3RhcnQsIDAsICJFeHBlY3RlZCB1bmxvYWRFdmVudFN0YXJ0IHRv
IG5vdCBiZSAwLiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVU
QS55bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uODlmYWUxZGIwZDliN2FmZDIwMjczN2UzNDc1NGI0ZTg5MzI5OGQ0
OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwKQEAgLTAsMCArMSw0IEBACitz
cGVjOiBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvCitzdWdnZXN0
ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhlZ2FyCisgIC0gaWdyaWdvcmlrCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZl
cmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDhiM2UzMjMxNDY1ODU3
Y2YyNDhlNGFjZThlZjU3NDQ2OWExNDg2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVm
ZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwpAQCAtMCwwICsxLDExIEBACithc3luY190
ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsKKyAgdC5zdGVwX3RpbWVvdXQo
KCkgPT4geworICAgIC8vIEFmdGVyIGEgdGltZW91dCwgUGVyZm9ybWFuY2VPYnNlcnZlciBzaG91
bGQgc3RpbGwgcmVjZWl2ZSBlbnRyeSBpZiB1c2luZyB0aGUgYnVmZmVyZWQgZmxhZy4KKyAgICBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcih0LnN0ZXBfZnVuY19kb25lKGxpc3QgPT4geworICAgICAg
Y29uc3QgZW50cmllcyA9IGxpc3QuZ2V0RW50cmllcygpOworICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyaWVzLmxlbmd0aCwgMSwgJ1RoZXJlIHNob3VsZCBiZSAxIG1hcmsgZW50cnkuJyk7CisgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlUeXBlLCAnbWFyaycpOworICAgIH0pKS5v
YnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgIH0sIDEwMCk7Cit9LCAn
UGVyZm9ybWFuY2VPYnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcgc2VlcyBlbnRyeSBhZnRlciB0
aW1lb3V0Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
MWRjMzljMTI4YWQ1NWMxM2VlZjY2NTgzYTY4ODg2MjJmODZiZjYzCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qcwpAQCAtMCwwICsxLDE1IEBA
Cithc3luY190ZXN0KCB0PT4geworICBmb3IgKGxldCBpID0gMDsgaSA8IDUwOyBpKyspCisgICAg
cGVyZm9ybWFuY2UubWFyaygnZm9vJyArIGkpOworICBsZXQgbWFya3NDcmVhdGVkID0gNTA7Cisg
IGxldCBtYXJrc1JlY2VpdmVkID0gMDsKKyAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9
PiB7CisgICAgbWFya3NSZWNlaXZlZCArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAg
aWYgKG1hcmtzQ3JlYXRlZCA8IDEwMCkgeworICAgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyAr
IG1hcmtzQ3JlYXRlZCk7CisgICAgICBtYXJrc0NyZWF0ZWQrKzsKKyAgICB9CisgICAgaWYgKG1h
cmtzUmVjZWl2ZWQgPT0gMTAwKQorICAgICAgdC5kb25lKCk7CisgIH0pLm9ic2VydmUoe3R5cGU6
ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGgg
YnVmZmVyZWQgZmxhZyBzaG91bGQgc2VlIHBhc3QgYW5kIGZ1dHVyZSBlbnRyaWVzLicpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTY5MTkwODE5
ZjUzZWI0NTM3ZGEwMTljOTBjYzMzYmQwZGEzZDhkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BB
U1MgR2V0IGludmFsaWQgZW50cmllcyBmcm9tIHdvcmtlciBhbmQgd2luZG93LgorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFs
aWQtZW50cmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMzZDY1ODllMjc1ZTI2NTE4MGUwNTcxY2EzMTAz
ZGJmOWFhMTc5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJp
ZXMuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgcGVyZm9y
bWFuY2UubWFyaygnd2luZG93TWFyaycpOworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCJy
ZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcyIpOworICB3b3JrZXIub25tZXNzYWdl
ID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGFbJ2ludmFs
aWQnXSwgMCwgJ1RoZSB3b3JrZXIgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAg
IGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWFyayddLCAxLCAnVGhlIHdvcmtlciBtdXN0IGhh
dmUgMSBtYXJrIGVudHJ5LicpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWVhc3Vy
ZSddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBtZWFzdXJlIGVudHJpZXMuJyk7CisgICAg
YXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVu
Z3RoLCAwLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicp
OworICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWFyaycp
Lmxlbmd0aCwgMSwKKyAgICAgICdUaGUgd2luZG93IG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7
CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJl
JykubGVuZ3RoLCAwLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAgbWVhc3VyZSBlbnRy
aWVzLicpCisgICAgdC5kb25lKCk7CisgIH0KK30sICdHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20g
d29ya2VyIGFuZCB3aW5kb3cuJyk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjMyZWZlYmU5OGZmZDQ3MmVlMTAxMDAyN2ZmOTY2YTFlZjkwN2YxN2QK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzCkBAIC0wLDAgKzEs
MjUgQEAKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csd29ya2VyCisvLyBNRVRBOiBzY3JpcHQ9L3Jl
c291cmNlcy9XZWJJRExQYXJzZXIuanMKKy8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL2lkbGhh
cm5lc3MuanMKKworLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5l
LworCisndXNlIHN0cmljdCc7CisKK2lkbF90ZXN0KAorICBbJ3BlcmZvcm1hbmNlLXRpbWVsaW5l
J10sCisgIFsnaHItdGltZScsICdkb20nXSwKKyAgYXN5bmMgaWRsX2FycmF5ID0+IHsKKyAgICBp
ZGxfYXJyYXkuYWRkX29iamVjdHMoeworICAgICAgUGVyZm9ybWFuY2U6IFsncGVyZm9ybWFuY2Un
XSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6IFsnb2JzZXJ2ZXInXSwKKyAgICAgIFBlcmZv
cm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6IFsnZW50cnlMaXN0J10sCisgICAgfSk7CisKKyAgICBz
ZWxmLmVudHJ5TGlzdCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsK
KyAgICAgIHNlbGYub2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihyZXNvbHZlKTsK
KyAgICAgIG9ic2VydmVyLm9ic2VydmUoeyBlbnRyeVR5cGVzOiBbJ21hcmsnXSB9KTsKKyAgICAg
IHBlcmZvcm1hbmNlLm1hcmsoJ3Rlc3QnKTsKKyAgICB9KTsKKyAgfQorKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWRk
NDRmYjE4ZmJkYjljM2MzMmY0NTM4ZDJlZjdlYzJjYWM0NzMwMgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzCkBAIC0wLDAg
KzEsMzIgQEAKK3Byb21pc2VfdGVzdCgoKSA9PiB7CisgIC8vIFRoZSBmaXJzdCBwcm9taXNlIHdh
aXRzIGZvciBvbmUgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4K
KyAgY29uc3QgcHJvbWlzZTEgPSBuZXcgUHJvbWlzZShyZXNvbHZlMSA9PiB7CisgICAgbGV0IG51
bU9ic2VydmVkMSA9IDA7CisgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKGVudHJ5TGlzdCwg
b2JzKSA9PiB7CisgICAgICAvLyBUaGlzIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgaXMgY29uc3Ry
dWN0ZWQgYWZ0ZXIgYSByZWd1bGFyIG9ic2VydmVyIGRldGVjdHMgYSBtYXJrLgorICAgICAgbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAgIG51bU9ic2VydmVkMSArPSBs
aXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChudW1PYnNlcnZlZDEgPT0gMykK
KyAgICAgICAgICByZXNvbHZlMSgpOworICAgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBi
dWZmZXJlZDogdHJ1ZX0pOworICAgICAgb2JzLmRpc2Nvbm5lY3QoKTsKKyAgICB9KS5vYnNlcnZl
KHtlbnRyeVR5cGVzOiBbJ21hcmsnXX0pOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOwor
ICB9KTsKKyAgLy8gVGhlIHNlY29uZCBwcm9taXNlIHdhaXRzIGZvciBhbm90aGVyIGJ1ZmZlcmVk
IGZsYWcgb2JzZXJ2ZXIgdG8gcmVjZWl2ZSAzIGVudHJpZXMuCisgIGNvbnN0IHByb21pc2UyID0g
bmV3IFByb21pc2UocmVzb2x2ZTIgPT4geworICAgIHN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAg
ICBsZXQgbnVtT2JzZXJ2ZWQyID0gMDsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNl
cnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBhIGRlbGF5IG9mIDEwMG1zLgorICAgICAgbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAgIG51bU9ic2VydmVkMiArPSBsaXN0
LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChudW1PYnNlcnZlZDIgPT0gMykKKyAg
ICAgICAgICByZXNvbHZlMigpOworICAgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZm
ZXJlZDogdHJ1ZX0pOworICAgIH0sIDEwMCk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyk7
CisgIH0pOworICBwZXJmb3JtYW5jZS5tYXJrKCdtZW93Jyk7CisgIC8vIFBhc3MgaWYgYW5kIG9u
bHkgaWYgYm90aCBidWZmZXJlZCBvYnNlcnZlcnMgcmVjZWl2ZWQgYWxsIDMgbWFyayBlbnRyaWVz
LgorICByZXR1cm4gUHJvbWlzZS5hbGwoW3Byb21pc2UxLCBwcm9taXNlMl0pOworfSwgJ011bHRp
cGxlIFBlcmZvcm1hbmNlT2JzZXJ2ZXJzIHdpdGggYnVmZmVyZWQgZmxhZyBzZWUgYWxsIGVudHJp
ZXMnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTQyY2Y3YzRhYWNm
MDI5MTY2NWE4ZjQ5NzY1YWRkODg1ZWJjNDJkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9u
b3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0
aGF0IGEgcG9zdE1lc3NhZ2Ugb2YgYSBwZXJmb3JtYW5jZSBlbnRyeSBmYWlscworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5kNjUxNzc2ZTVmNGI5NDUzMjhlOWRlMjY1MWI4YTU5ZjExYjUzNDI2Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbApAQCAtMCwwICsxLDEw
IEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IHRo
YXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZhaWxzIik7CisgIGFkZEV2
ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0LnN0ZXBfZnVuY19kb25lKGUgPT4geworICAgIGFzc2Vy
dF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIpOworICB9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3Jj
PSJyZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2
ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyODEwMGIwZmRiYTJlMDA1Nzk4
MDlhNTgxOTM1ZDMxMmNmMTI0NWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVy
LWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwpAQCAtMCwwICsxLDEyIEBACithc3luY190ZXN0KHQgPT4g
eworICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsKKyAgLy8gVXNlIGEgdGltZW91dCB0byBlbnN1
cmUgdGhlIHJlbWFpbmRlciBvZiB0aGUgdGVzdCBydW5zIGFmdGVyIHRoZSBlbnRyeSBpcyBjcmVh
dGVkLgorICB0LnN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8gT2JzZXJ2ZXIgd2l0aCBidWZm
ZXJlZCBmbGFnIHNldCB0byBmYWxzZSBzaG91bGQgbm90IHNlZSBlbnRyeS4KKyAgICBuZXcgUGVy
Zm9ybWFuY2VPYnNlcnZlcigoKSA9PiB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdTaG91bGQg
bm90IGhhdmUgb2JzZXJ2ZWQgYW55IGVudHJ5IScpOworICAgIH0pLm9ic2VydmUoe3R5cGU6ICdt
YXJrJywgYnVmZmVyZWQ6IGZhbHNlfSk7CisgICAgLy8gVXNlIGEgdGltZW91dCB0byBnaXZlIHRp
bWUgdG8gdGhlIG9ic2VydmVyLgorICAgIHQuc3RlcF90aW1lb3V0KHQuc3RlcF9mdW5jX2RvbmUo
KCkgPT4ge30pLCAxMDApOworICB9LCAwKTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGhv
dXQgYnVmZmVyZWQgZmxhZyBzZXQgdG8gZmFsc2UgY2Fubm90IHNlZSBwYXN0IGVudHJpZXMuJyk7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0ZjAxNTZl
ZWMxOTI0MTk3MDAyOGMyOGU1ODk3YmU0ZDZmMWNiODEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcwpAQCAtMCwwICsxLDIxIEBACit0ZXN0
KCgpID0+IHsKKyAgcGVyZm9ybWFuY2UubWFyaygnbWFya05hbWUnKTsKKyAgcGVyZm9ybWFuY2Uu
bWVhc3VyZSgnbWVhc3VyZU5hbWUnKTsKKworICBjb25zdCBlbnRyaWVzID0gcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpOworICBjb25zdCBwZXJmb3JtYW5jZUVudHJ5S2V5cyA9IFsKKyAgICAnbmFt
ZScsCisgICAgJ2VudHJ5VHlwZScsCisgICAgJ3N0YXJ0VGltZScsCisgICAgJ2R1cmF0aW9uJwor
ICBdOworICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyArK2kpIHsKKyAgICBh
c3NlcnRfZXF1YWxzKHR5cGVvZihlbnRyaWVzW2ldLnRvSlNPTiksICdmdW5jdGlvbicpOworICAg
IGNvbnN0IGpzb24gPSBlbnRyaWVzW2ldLnRvSlNPTigpOworICAgIGFzc2VydF9lcXVhbHModHlw
ZW9mKGpzb24pLCAnb2JqZWN0Jyk7CisgICAgZm9yIChjb25zdCBrZXkgb2YgcGVyZm9ybWFuY2VF
bnRyeUtleXMpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoanNvbltrZXldLCBlbnRyaWVzW2ldW2tl
eV0sCisgICAgICAgIGBlbnRyaWVzWyR7aX1dLnRvSlNPTigpLiR7a2V5fSBzaG91bGQgbWF0Y2gg
ZW50cmllc1ske2l9XS4ke2tleX1gKTsKKyAgICB9CisgIH0KK30sICdUZXN0IHRvSlNPTigpIGlu
IFBlcmZvcm1hbmNlRW50cnknKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0
YXRlLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44ZjFiMDliYzM3NzEyMDgwMjQwMWRlMWIyNDdhYTU3ZGI3NDE0YzY4Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55LmpzCkBAIC0wLDAgKzEsNjYgQEAK
Ky8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3Qo
ZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgY2FsbGJhY2tDb3VudCA9IDA7CisgICAgdmFyIG9ic2Vy
dmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0
aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNhbGxiYWNrQ291bnQrKzsKKworICAg
ICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAxKSB7CisgICAgICAgICAgICBjaGVja0VudHJp
ZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAi
bWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAg
ICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgICAgICAgICAg
c2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3Jt
YW5jZS5tZWFzdXJlKCJtZWFzdXJlMiIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
IH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAyKSB7CisgICAgICAgICAgICBj
aGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAg
ICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0
YXRlLXRvLW1lYXN1cmUiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgi
bWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAg
ICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtZWFzdXJlIl19KTsKKyAgICAg
ICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazMiKTsKKyAgICAgICAgICAgIHNlbGYu
cGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTMiKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgICB9CisKKyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3VudCA9PT0gMykgeworICAgICAg
ICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksIFsKKyAgICAgICAgICAg
ICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAg
ICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUt
c3RhdGUtdG8tbWVhc3VyZSJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgi
KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUt
Y2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tYm90aCIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2Jz
ZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0pOworICAgICAgICAgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrNCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tZWFzdXJlKCJtZWFzdXJlNCIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0K
KworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSA0KSB7CisgICAgICAgICAgICBjaGVj
a0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlU
eXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0
ZS10by1ib3RoIn0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTog
Im1lYXN1cmU0In0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1h
cms0In0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFy
aygibWFyay1iZWZvcmUtZGlzY29ubmVjdCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBvYnNl
cnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1h
cmstYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFz
dXJlKCJtZWFzdXJlLWFmdGVyLWRpc2Nvbm5lY3QiKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGFzc2VydF91bnJl
YWNoZWQoIlRoZSBjYWxsYmFjayBtdXN0IG5vdCBiZSBpbnZva2VkIGFmdGVyIGRpc2Nvbm5lY3Rp
bmciKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEi
KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgIH0sICJQZXJm
b3JtYW5jZU9ic2VydmVyIG1vZGlmaWNhdGlvbnMgaW5zaWRlIGNhbGxiYWNrIHNob3VsZCB1cGRh
dGUgZmlsdGVyaW5nIGFuZCBub3QgY2xlYXIgYnVmZmVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanMgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2Fj
OTdiZWEwNzU1YzExODI5NTZmZGY5NGM5OGVlNzhjYTQwYjAxNwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpAQCAt
MCwwICsxLDE5IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKwor
YXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsK
KyAgICAgICAgLy8gVGhlcmUgc2hvdWxkIGJlIG5vIG1hcmsgZW50cnkuCisgICAgICAgIGNoZWNr
RW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTog
Im1lYXN1cmUiLCBuYW1lOiAiYiJ9XSk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAgfSkKKyAg
ICApOworICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gRGlzY29ubmVj
dCB0aGUgb2JzZXJ2ZXIuCisgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgLy8gTm93LCBvbmx5
IG9ic2VydmUgbWVhc3VyZS4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1lYXN1cmUifSk7
CisgIHBlcmZvcm1hbmNlLm1hcmsoImEiKTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgiYiIpOwor
fSwgIlR5cGVzIG9ic2VydmVkIGFyZSBmb3Jnb3R0ZW4gd2hlbiBkaXNjb25uZWN0KCkgaXMgY2Fs
bGVkLiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tZGlzY29ubmVjdC5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY1ZmI1YWE0M2JhNDYyNjhmOGMz
NTVmZGM5M2M2ZjE4Mjk5NjhiNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29u
bmVjdC5hbnkuanMKQEAgLTAsMCArMSwzNyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNl
b2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBvYnNl
cnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5j
dGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlz
IGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7Cisg
ICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiLCAibmF2
aWdhdGlvbiJdfSk7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmUxIik7CisgICAgdC5zdGVwX3RpbWVvdXQoZnVuY3Rpb24gKCkgeworICAgICAgdC5kb25lKCk7
CisgICAgfSwgMjAwMCk7CisgIH0sICJkaXNjb25uZWN0ZWQgY2FsbGJhY2tzIG11c3Qgbm90IGJl
IGludm9rZWQiKTsKKworICB0ZXN0KGZ1bmN0aW9uICgpIHsKKyAgICB2YXIgb2JzID0gbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKCkgeyByZXR1cm4gdHJ1ZTsgfSk7CisgICAgb2Jz
LmRpc2Nvbm5lY3QoKTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOworICB9LCAiZGlzY29ubmVjdGlu
ZyBhbiB1bmNvbm5lY3RlZCBvYnNlcnZlciBpcyBhIG5vLW9wIik7CisKKyAgYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAg
ICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQi
KTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBl
czogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAg
b2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIi
KTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7CisgICAgICB0LmRvbmUoKTsKKyAg
ICB9LCAyMDAwKTsKKyAgfSwgIkFuIG9ic2VydmVyIGRpc2Nvbm5lY3RlZCBhZnRlciBhIG1hcmsg
bXVzdCBub3QgaGF2ZSBpdHMgY2FsbGJhY2sgaW52b2tlZCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby1lbnRyaWVzLXNvcnQuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmIwYzc4MWEzYzBjMDNiZjgxZTgyMDE2OGJkZjcwYjUzNjI3NTA0MGIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMKQEAgLTAsMCAr
MSw2NCBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5
bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAg
IHZhciBzdG9yZWRfZW50cmllc19ieV90eXBlID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRy
eUxpc3QsIG9icykgeworCisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPSBlbnRyeUxpc3QuZ2V0
RW50cmllcygpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBlbnRyeUxpc3Qu
Z2V0RW50cmllc0J5VHlwZSgibWFyayIpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X25h
bWUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibmFtZS1yZXBlYXQiKTsKKyAgICAgICAg
ICB2YXIgc3RhcnRUaW1lT2ZNYXJrMiA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJr
MiIpWzBdLnN0YXJ0VGltZTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVz
KTsKKyAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsIFsKKyAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICB7
ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9LAorICAgICAgICAgICAge2Vu
dHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgIHtlbnRy
eVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTog
Im1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJl
IiwgbmFtZTogIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSJ9LAorICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIn0sCisgICAg
ICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAg
ICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAg
ICBdKTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUpOwor
ICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllc19ieV90eXBlLCBbCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2Vu
dHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAi
bWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAg
Y2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSk7CisgICAgICAgICAgY2hlY2tFbnRy
aWVzKHN0b3JlZF9lbnRyaWVzX2J5X25hbWUsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJt
ZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAi
bWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1h
cmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIG9i
c2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAg
ICAgICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVh
c3VyZSJdfSk7CisKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJl
IG1hcmsxICE9PSBtYXJrMiBzdGFydFRpbWUgYnkgbWFraW5nIHN1cmUgcGVyZm9ybWFuY2Uubm93
IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5t
ZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTEiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7
IC8vIEVuc3VyZSBtYXJrMiAhPT0gbWFyazMgc3RhcnRUaW1lIGJ5IG1ha2luZyBzdXJlIHBlcmZv
cm1hbmNlLm5vdyBhZHZhbmNlcy4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm5hbWUtcmVw
ZWF0Iik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgIHNl
bGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIiwgIm1hcmsy
Iik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbmFtZS1yZXBlYXQgc3RhcnRUaW1lIHdpbGwgZGlm
ZmVyLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1yZXBlYXQiKTsKKyAgICB3YWl0
KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2lsbCBkaWZmZXIuCisgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJuYW1lLXJlcGVhdCIpOworICB9LCAiZ2V0RW50cmllcywg
Z2V0RW50cmllc0J5VHlwZSwgZ2V0RW50cmllc0J5TmFtZSBzb3J0IG9yZGVyIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVz
LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4zNjE2OWQ1ZGJkNmUwZTIwNTA2ZDIwMTQ2NTg1ZGJjODllNzUw
YzI1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpAQCAt
MCwwICsxLDM4IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKwor
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qs
IG9icykgeworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAor
ICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVu
dHJpZXMiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5
VHlwZSgibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJt
YXJrMSJ9XSwgImdldEVudHJpZXNCeVR5cGUiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVu
dHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAg
ICAiZ2V0RW50cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgiMjM0NTY3IikubGVuZ3Ro
LCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5
Iik7CisKKyAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUo
Im1hcmsxIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsx
In1dLCAiZ2V0RW50cmllc0J5TmFtZSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlM
aXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdl
dEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIjIzNDU2NyIpLmxlbmd0aCwgMCwK
KyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsK
KworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFy
azEiLCAibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJt
YXJrMSJ9XSwgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUiKTsKKyAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMSIsICJtZWFzdXJlIiku
bGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0
aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0
LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIiwgIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAgICAg
ICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5
Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgi
bWFyazEiLCAiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5h
bWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworCisgICAgICAgICAgb2Jz
ZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9KQorICAg
ICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAg
IHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgfSwgImdldEVudHJpZXMsIGdldEVu
dHJpZXNCeVR5cGUgYW5kIGdldEVudHJpZXNCeU5hbWUgd29yayIpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjBiMjA1ZTA5NGM3NWUxMGJjMWI5M2ZmOTY2YWVhMGZkMjNhNTg2ZjgK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMKQEAgLTAs
MCArMSw2MSBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAg
YXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOwor
ICAgIHZhciBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2Vu
dHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRF
bnRyaWVzKCkpOworICAgICAgICAgIGlmIChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gNCkgewor
ICAgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBb
eyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICAgIHsgZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlw
ZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5
cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVy
LmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAg
ICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJr
IiwgIm1lYXN1cmUiXX0pOworICB9LCAiZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOworCisgIGFz
eW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgbWFya19lbnRyaWVzID0gW107CisgICAg
dmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9m
dW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIG1hcmtfZW50cmllcyA9
CisgICAgICAgICAgICBtYXJrX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkp
OworICAgICAgICAgIGlmIChtYXJrX2VudHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAg
IGNoZWNrRW50cmllcyhtYXJrX2VudHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTog
Im1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtYXJr
IiwgbmFtZTogIm1hcmsyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsK
KyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7
CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJt
YXJrMiIpOworICB9LCAibWFyayBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlIik7CisKKyAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBtZWFzdXJlX2VudHJpZXMgPSBbXTsKKyAgICB2
YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1
bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgbWVhc3VyZV9lbnRyaWVz
ID0KKyAgICAgICAgICAgIG1lYXN1cmVfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJp
ZXMoKSk7CisgICAgICAgICAgaWYgKG1lYXN1cmVfZW50cmllcy5sZW5ndGggPj0gMikgeworICAg
ICAgICAgICAgY2hlY2tFbnRyaWVzKG1lYXN1cmVfZW50cmllcywKKyAgICAgICAgICAgICAgW3sg
ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgICB7
IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAgICAg
b2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAg
fQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVz
OiBbIm1lYXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEi
KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgIH0sICJtZWFz
dXJlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2Jz
ZXJ2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmRmODVlNTg1NmNlODczZjEyMWRjNTE1NDRjNTQ0YjQxNDM5ZmEyNmIKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBA
QAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVk
CisKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2
aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKworCitQQVNTIFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0
LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJiYmEzOTZh
NmI2OWViYWQ1NmFkNGYxYjEzNWNiOGFkNDlkMzIxYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKQEAgLTAsMCArMSwxNyBAQAorLy8g
TUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgY29uc3Qgb2JzZXJ2ZXIgID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisg
ICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgIGNoZWNrRW50
cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1h
cmsiLCBuYW1lOiAiZWFybHkifV0pOworICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgIHQuZG9uZSgpOworICAgICAgfSkKKyAgICApOworICBwZXJmb3JtYW5jZS5tYXJrKCJl
YXJseSIpOworICAvLyBUaGlzIGNhbGwgd2lsbCBub3QgdHJpZ2dlciBhbnl0aGluZy4KKyAgb2Jz
ZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1hcmsifSk7CisgIC8vIFRoaXMgY2FsbCBzaG91bGQgb3Zl
cnJpZGUgdGhlIHByZXZpb3VzIGNhbGwgYW5kIGRldGVjdCB0aGUgZWFybHkgbWFyay4KKyAgb2Jz
ZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1hcmsiLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgIlR3byBj
YWxscyBvZiBvYnNlcnZlKCkgd2l0aCB0aGUgc2FtZSAndHlwZScgY2F1c2Ugb3ZlcnJpZGUuIik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmE0OGYwZjM3NjRiZGE0Y2ViODhiMmE4YmU0ZDY1ZjE2ODM2MjYy
N2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbApAQCAtMCwwICsx
LDg2IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVy
Zm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkPC90aXRs
ZT4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgorPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1h
bmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVy
Zm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8L2gxPgorPHA+CitQZXJmb3JtYW5jZU9ic2Vy
dmVySW5pdC5idWZmZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlvdXNseSBidWZmZXJlZCBlbnRy
aWVzCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9uIGluaXRUZXN0KCkgeworICAgICAgbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAg
ZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAg
ICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgICAgfQorCisgICAgICAgICAgb2JzZXJ2ZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAg
ICAgIGlmIChvYnNlcnZlZEVudHJpZXMubGVuZ3RoID09PSBlbnRyeVR5cGVzLmxlbmd0aCkgewor
ICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcnVuVGVzdCgp
OworICAgICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVz
fSk7CisKKyAgICAgIC8vIGNyZWF0ZXMgYSBgcmVzb3VyY2VgIGVudHJ5CisgICAgICB2YXIgaW1n
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgICBpbWcuc3JjID0gIi4vcmVz
b3VyY2VzL3NxdWFyZS5wbmciOworICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcp
OworCisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCJtYXJrTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1h
cmtgIGVudHJ5CisgICAgICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlTmFtZSIpOyAvLyBj
cmVhdGVzIGEgYG1lYXN1cmVgIGVudHJ5CisgICAgfQorICAgIGZ1bmN0aW9uIHNob3VsZEV4Y2x1
ZGUoZW50cnkpIHsKKyAgICAgIC8vIGV4Y2x1ZGUgYWxsIGByZXNvdXJjZWAgZW50cmllcyB0aGF0
IGFyZW4ndCBmb3IgInNxdWFyZS5wbmciCisgICAgICByZXR1cm4gZW50cnkuZW50cnlUeXBlID09
PSAicmVzb3VyY2UiICYmCisgICAgICAgICAgICAgZW50cnkubmFtZS5pbmRleE9mKCJzcXVhcmUu
cG5nIikgPT09IC0xOworICAgIH0KKyAgICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgLy8g
dGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIGlzIGEgbm9wIGJlY2F1c2Ugd2UndmUgYWxyZWFkeSBi
ZWVuIG5vdGlmaWVkIGFib3V0IGFsbCBvZiBvdXIgYGVudHJ5VHlwZXNgCisgICAgICB2YXIgcG9f
bm9wID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2
ZXIpIHsKKyAgICAgICAgaWYgKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZmluZChmdW5jdGlvbihl
bnRyeSkgeworICAgICAgICAgIHJldHVybiAhc2hvdWxkRXhjbHVkZShlbnRyeSk7CisgICAgICAg
IH0pKSB7CisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgidGhpcyBQZXJmb3JtYW5jZU9ic2Vy
dmVyIGNhbGxiYWNrIHNob3VsZCBuZXZlciBiZSBjYWxsZWQiKTsKKyAgICAgICAgfQorICAgICAg
fSk7CisgICAgICBwb19ub3Aub2JzZXJ2ZSh7CisgICAgICAgIGVudHJ5VHlwZXMsCisgICAgICB9
KTsKKworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIHNob3VsZCBiZSBub3RpZmll
ZCBhYm91dCB0aGUgcHJldmlvdXNseQorICAgICAgLy8gYnVmZmVyZWQgbWFyayBlbnRyeSBvbmx5
CisgICAgICBjb25zdCBidWZmZXJlZEVudHJpZXMgPSBbXTsKKyAgICAgIG5ldyBQZXJmb3JtYW5j
ZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVyKSB7CisgICAgICAgIGVudHJ5
TGlzdC5nZXRFbnRyaWVzKCkuZm9yRWFjaChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIGlm
IChzaG91bGRFeGNsdWRlKGVudHJ5KSkgeworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
IH0KKworICAgICAgICAgIGJ1ZmZlcmVkRW50cmllcy5wdXNoKGVudHJ5KTsKKyAgICAgICAgICBp
ZiAoYnVmZmVyZWRFbnRyaWVzLmxlbmd0aCA9PT0gMSkgeworICAgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcG9fbm9wLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAg
ICAgIGZvciAoaSA9IDA7IGkgPCBidWZmZXJlZEVudHJpZXMubGVuZ3RoOyBpKyspIHsKKyAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhidWZmZXJlZEVudHJpZXNbaV0uZW50cnlUeXBlLCAibWFy
ayIpCisgICAgICAgICAgICB9CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9Cisg
ICAgICAgIH0pOworICAgICAgfSkub2JzZXJ2ZSh7CisgICAgICAgIHR5cGU6ICJtYXJrIiwKKyAg
ICAgICAgYnVmZmVyZWQ6IHRydWUKKyAgICAgIH0pOworICAgIH0KKworICAgIGNvbnN0IGVudHJ5
VHlwZXMgPSBbIm5hdmlnYXRpb24iLCAicmVzb3VyY2UiLCAibWFyayIsICJtZWFzdXJlIl07Cisg
ICAgY29uc3Qgb2JzZXJ2ZWRFbnRyaWVzID0gW107CisgICAgaW5pdFRlc3QoKTsKKyAgfSwgIlBl
cmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5
IGJ1ZmZlcmVkIGVudHJpZXMiKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LXJlc291cmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjFlZWU2NWU5ZjlhYjVmYjIzMzczZWI5ZDhhNzBhMzM5YzA1YTAyMzcKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiByZXNvdXJjZQorCitOZXcgcmVzb3VyY2Vz
IHdpbGwgcXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgcmVzb3VyY2UgZW50cmll
cyBhcmUgb2JzZXJ2YWJsZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDBjMTczZWVhZTkyMWZiZWNj
M2VlZWE1NGQ4YWRmYTZiOWVkNTM2NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVz
b3VyY2UuaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJz
ZXQ9dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC90aXRsZT4K
KzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJwZXJmb3JtYW5jZW9ic2VydmVycy5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFu
Y2VPYnNlcnZlcnM6IHJlc291cmNlPC9oMT4KKzxwPgorTmV3IHJlc291cmNlcyB3aWxsIDxhIGhy
ZWY9Imh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8jZGZuLXF1ZXVl
LWEtcGVyZm9ybWFuY2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5PC9hPi4KKzwvcD4K
KzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgZnVuY3Rpb24gcGF0aChwYXRobmFtZSkgeworICAgICAgdmFyIGZpbGVuYW1lID0g
cGF0aG5hbWUuc3Vic3RyaW5nKHBhdGhuYW1lLmxhc3RJbmRleE9mKCcvJykrMSk7CisgICAgICBy
ZXR1cm4gcGF0aG5hbWUuc3Vic3RyaW5nKDAsIHBhdGhuYW1lLmxlbmd0aCAtIGZpbGVuYW1lLmxl
bmd0aCk7CisgICAgfQorICAgIHZhciBnVW5pcXVlQ291bnRlciA9IDA7CisgICAgZnVuY3Rpb24g
Z2VuZXJhdGVVbmlxdWVWYWx1ZXMoKSB7CisgICAgICByZXR1cm4gRGF0ZS5ub3coKSArICItIiAr
ICgrK2dVbmlxdWVDb3VudGVyKTsKKyAgICB9CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107
CisgICAgdmFyIGltZ19sb2NhdGlvbiA9IGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbiArIHBhdGgo
ZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUpCisgICAgICAgKyAicmVzb3VyY2VzL3NxdWFyZS5w
bmc/cmFuZG9tPSI7CisgICAgdmFyIGltZzEgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVuaXF1
ZVZhbHVlcygpOworICAgIHZhciBpbWcyID0gaW1nX2xvY2F0aW9uICsgZ2VuZXJhdGVVbmlxdWVW
YWx1ZXMoKTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAg
ICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAg
c3RvcmVkX2VudHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5
TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpKTsKKyAgICAgICAgICBpZiAoc3RvcmVk
X2VudHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRf
ZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBp
bWcxfSwKKyAgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcy
fV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbInJlc291cmNlIl19KTsKKyAgICB2YXIgaW1nID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9IGltZzE7CisgICAgZG9jdW1l
bnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworICAgIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImltZyIpOworICAgIGltZy5zcmMgPSBpbWcyOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoaW1nKTsKKyAgfSwgInJlc291cmNlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKKzwv
c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NmFkMzk3YjBhNWMzNzlkMDEy
OWQ0M2M5Mjk1MmJjNmM4YzVjMGNmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtl
UmVjb3Jkcy5hbnkuanMKQEAgLTAsMCArMSwzNCBAQAorLy8gTUVUQTogdGl0bGU9UGVyZm9ybWFu
Y2VPYnNlcnZlcjogdGFrZVJlY29yZHMKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2Vy
dmVycy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgY29uc3Qgb2JzZXJ2ZXIg
PSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikg
eworICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVGhpcyBjYWxsYmFjayBzaG91bGQgbm90IGhhdmUg
YmVlbiBjYWxsZWQuJykKKyAgICB9KTsKKyAgICBsZXQgZW50cmllcyA9IG9ic2VydmVyLnRha2VS
ZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8gcmVjb3JkcyBiZWZv
cmUgb2JzZXJ2ZScpOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyaydd
fSk7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2Yob2JzZXJ2ZXIudGFrZVJlY29yZHMpLCAnZnVu
Y3Rpb24nKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVj
a0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRzIGp1c3QgZnJvbSBvYnNlcnZlJyk7Cisg
ICAgcGVyZm9ybWFuY2UubWFyaygnYScpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2InKTsKKyAg
ICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50
cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYSd9LAorICAgICAge2Vu
dHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYid9CisgICAgXSk7CisgICAgcGVyZm9ybWFuY2UubWFy
aygnYycpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2QnKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJr
KCdlJyk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tF
bnRyaWVzKGVudHJpZXMsIFsKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2MnfSwK
KyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2QnfSwKKyAgICAgIHtlbnRyeVR5cGU6
ICdtYXJrJywgbmFtZTogJ2UnfQorICAgIF0pOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtl
UmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBbXSwgJ05vIGVudHJpZXMgcmln
aHQgYWZ0ZXIgdGFrZVJlY29yZHMnKTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
dC5kb25lKCk7CisgIH0sICJUZXN0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIncyB0YWtlUmVjb3Jkcygp
Iik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5l
ZjViZTczMzk1YjQ5ZDg5NWEyNTg5YmU1NDdhN2YzOTUwZjQxNmJhCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbApAQCAtMCwwICsxLDE3
IEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQ+CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
KCkgPT4geworICBjb25zdCBlbnRyeSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXTsKKyAgdHJ5IHsKKyAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKGVudHJ5
LCAiKiIpOworICB9IGNhdGNoKGVycm9yKSB7CisgICAgaWYgKGVycm9yLm5hbWUgPT0gIkRhdGFD
bG9uZUVycm9yIikgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiUEFTUyIsICIqIik7
CisgICAgfSBlbHNlIHsKKyAgICAgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBXcm9u
ZyBleGNlcHRpb24gbmFtZTogIiArIGVycm9yLm5hbWUsICIqIik7CisgICAgfQorICB9CisgIHdp
bmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBObyBleGNlcHRpb24gdGhyb3duIiwgIioiKTsK
K30pOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1p
bnZhbGlkLWVudHJpZXMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRy
aWVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJkN2ZiYTJjY2Y0YjZhYjdlNjA0MjczYzI1MDEwZTMxZTQ0M2Uz
NzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1l
bnRyaWVzLmpzCkBAIC0wLDAgKzEsNiBAQAorcGVyZm9ybWFuY2UubWFyaygnd29ya2VyTWFyaycp
OworcG9zdE1lc3NhZ2UoeworICAnaW52YWxpZCcgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCdpbnZhbGlkJykubGVuZ3RoLAorICAnbWFyaycgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCdtYXJrJykubGVuZ3RoLAorICAnbWVhc3VyZScgOiBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoCit9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVz
b3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNv
dXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTcy
ZmU4MWM0N2ZlYWNlNzY1NjEzYTA5NjJmMmE3ZTYzZjcxZmEyNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzCkBA
IC0wLDAgKzEsNiBAQAordHJ5IHsKKyAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKCkgPT4gdHJ1
ZSk7CisgIHBvc3RNZXNzYWdlKCJTVUNDRVNTIik7Cit9IGNhdGNoIChleCkgeworICBwb3N0TWVz
c2FnZSgiRkFJTFVSRSIpOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5
cGVzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4
cGVjdGVkLnR4dAppbmRleCAxMzhiZGU2NjE5NjI0M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBi
Li5lNWViMTE4YWIyMjQzZDFjYTM0NTc1MDk1NDBhMjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQgQEAKIAog
UEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFs
cGhhYmV0aWNhbCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQg
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlw
ZXMuYW55LmpzCmluZGV4IGEwMjI1YWQyZjc2ZmRjZmViYjBhN2M5YWZmOWJkMDAzMGVjZjg2YWEu
LjI1ZjE5NTkzOWU3YjY5MjUwOTYyNWI4MTMxZTUzNzE2NGNkZjU2YzAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRF
bnRyeVR5cGVzLmFueS5qcwpAQCAtMTAsMyArMTAsMTAgQEAgdGVzdCgoKSA9PiB7CiAgICAgICAi
JyBhcmUgcmVwZWF0ZWQgb3IgdGhleSBhcmUgbm90IGluIGFscGhhYmV0aWNhbCBvcmRlci4iKQog
ICB9CiB9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5kIHJldHVybnMgZW50cmllcyBp
biBhbHBoYWJldGljYWwgb3JkZXIiKTsKKwordGVzdCgoKSA9PiB7CisgIGlmICh0eXBlb2YgUGVy
Zm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzID09PSAidW5kZWZpbmVkIikKKyAg
ICBhc3NlcnRfdW5yZWFjaGVkKCJzdXBwb3J0ZWRFbnRyeVR5cGVzIGlzIG5vdCBzdXBwb3J0ZWQu
Iik7CisgIGFzc2VydF90cnVlKFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBl
cyA9PT0KKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyk7Cit9
LCAic3VwcG9ydGVkRW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0Iik7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMTM4YmRl
NjYxOTYyNDNlNjcwMzBkMWFlMTQyYmRhNDExNDhlMjMwYi4uZTVlYjExOGFiMjI0M2QxY2EzNDU3
NTA5NTQwYTIwODI4MDI4OWQ5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5
cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlU
eXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBw
b3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNh
bCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGlt
aW5nLXJlc29sdXRpb24uYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnku
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZDg2OWM3YzUyZDU1ZDY5ZTIxMjNmNjRkNDg2ZWQxZTMyMzVkM2ZiNwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzCkBA
IC0wLDAgKzEsMjUgQEAKK2Z1bmN0aW9uIHRlc3RUaW1lUmVzb2x1dGlvbihoaWdoUmVzVGltZUZ1
bmMsIGZ1bmNTdHJpbmcpIHsKKyAgICB0ZXN0KCgpID0+IHsKKyAgICAgICAgY29uc3QgdDAgPSBo
aWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgbGV0IHQxID0gaGlnaFJlc1RpbWVGdW5jKCk7Cisg
ICAgICAgIHdoaWxlICh0MCA9PSB0MSkgeworICAgICAgICAgICAgdDEgPSBoaWdoUmVzVGltZUZ1
bmMoKTsKKyAgICAgICAgfQorICAgICAgICBjb25zdCBlcHNpbG9uID0gMWUtNTsKKyAgICAgICAg
YXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbCh0MSAtIHQwLCAwLjAwNSAtIGVwc2lsb24sICdUaGUg
c2Vjb25kICcgKyBmdW5jU3RyaW5nICsgJyBzaG91bGQgYmUgbXVjaCBncmVhdGVyIHRoYW4gdGhl
IGZpcnN0Jyk7CisgICAgfSwgJ1ZlcmlmaWVzIHRoZSByZXNvbHV0aW9uIG9mICcgKyBmdW5jU3Ry
aW5nICsgJyBpcyBhdCBsZWFzdCA1IG1pY3Jvc2Vjb25kcy4nKTsKK30KKworZnVuY3Rpb24gdGlt
ZUJ5UGVyZm9ybWFuY2VOb3coKSB7CisgICAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpOworfQor
CitmdW5jdGlvbiB0aW1lQnlVc2VyVGltaW5nKCkgeworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3Rp
bWVyJyk7CisgICAgY29uc3QgdGltZSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoJ3Rp
bWVyJylbMF0uc3RhcnRUaW1lOworICAgIHBlcmZvcm1hbmNlLmNsZWFyTWFya3MoJ3RpbWVyJyk7
CisgICAgcmV0dXJuIHRpbWU7Cit9CisKK3Rlc3RUaW1lUmVzb2x1dGlvbih0aW1lQnlQZXJmb3Jt
YW5jZU5vdywgJ3BlcmZvcm1hbmNlLm5vdygpJyk7Cit0ZXN0VGltZVJlc29sdXRpb24odGltZUJ5
VXNlclRpbWluZywgJ2VudHJ5LnN0YXJ0VGltZScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3Jr
ZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ODI2
YjljYmRhZjJjNWZkNDQxMzRjMTIxN2RhMzRlMjQzNjRiNzA4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwzIEBACisKK1BBU1MgV29ya2VyOiBUZXN0IFBlcmZvcm1hbmNlIE9ic2VydmVyIGlu
c2lkZSBhIHdvcmtlci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3Jt
YW5jZS1vYnNlcnZlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNl
cnZlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZjOTJiYzk3MTAwM2YyZWE5MmZiZDE2OWQ4ZGQ3YTY0ZDA2
MjA2MmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNl
LW9ic2VydmVyLmh0bWwKQEAgLTAsMCArMSwxOCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorYXN5bmNfdGVzdChmdW5jdGlvbih0KSB7Cisg
IGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoInJlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3Jt
YW5jZS1vYnNlcnZlci5qcyIpOworICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICB0LnN0ZXAoKCkgPT4gYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhLCAnU1VDQ0VTUycp
KTsKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ1dvcmtlcjogVGVzdCBQZXJmb3JtYW5jZSBPYnNl
cnZlciBpbnNpZGUgYSB3b3JrZXIuJyk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dAppbmRleCA3MzAwODFmNGQ2N2IwNjQxZGU4MDBlMmE4ODFhZjAyNzJiMjJiOWIyLi42
NGU3ZTI1YzIwZGNkODlkYWZmYzcyMjE3NDJkOTUwYzg3MjY3OWFlIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0CkBA
IC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlv
biB0aW1pbmcgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmcud29ya2VyU3RhcnQnKSBSZWFj
aGVkIHVucmVhY2hhYmxlIGNvZGUKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZp
Z2F0aW9uIHRpbWluZyBuZXR3b3JrIGZhbGxiYWNrIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0
ZWQgcmVqZWN0aW9uOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGlt
aW5nW3RpbWluZ0V2ZW50T3JkZXJbaV1dJykgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlM
IFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgcmVkaXJlY3QgYXNz
ZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbdGltaW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVk
IHVucmVhY2hhYmxlIGNvZGUKK0ZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0
aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0
X2dyZWF0ZXJfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAw
IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVk
IG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sKK1BBU1MgU2VydmljZSB3b3JrZXIg
Y29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdAogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVy
LWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9y
bWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50
ZnVsLXBhaW50LWV4cGVjdGVkLnR4dAppbmRleCA3ZmZiMzg1ODNkYTg0YjY0Njk0NTVhZTc0MDRk
MjI0YzRiNTczMGRhLi40ZWJkY2NmNWIyYmQ0N2RhNGQ1ZDIxNWQxZThhMjc4MWE0YzJkZTAxIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZv
cm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2Jz
ZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBA
CiBQQVNTIGRpZFJlY2VpdmVGaXJzdENvbnRlbnRmdWxQYWludCBpcyB0cnVlCi1QQVNTIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggaXMgMQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkubGVuZ3RoIGlzIDIKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmly
c3QtY29udGVudGZ1bC1wYWludCIpLmxlbmd0aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiLCAicGFpbnQiKS5sZW5ndGggaXMg
MQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpLmxlbmd0aCBpcyAx
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3Bl
cmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRtbCBiL0xheW91dFRl
c3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmly
c3QtY29udGVudGZ1bC1wYWludC5odG1sCmluZGV4IDAwNzhhNDM1NDViOWY0YjZjZmFiZjgxNzE2
NjFiM2I2MDFjNGFhNzkuLjFmMjgwYjQwNzc1ZTJhOWE4MmY4ZDNiNjZlNzk4ZjcwYTc1NTdlMjIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVy
Zm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCisrKyBiL0xheW91
dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXIt
Zmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCkBAIC0zNiw3ICszNiw3IEBAIHdpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gdHJ1ZTsKICAgICBkb2N1bWVudC5ib2R5LmlubmVyVGV4dCA9ICdURVhUMic7
CiAgICAgYXdhaXQgd2FpdEZvckZDUCgpOwogICAgIHNob3VsZEJlVHJ1ZSgnZGlkUmVjZWl2ZUZp
cnN0Q29udGVudGZ1bFBhaW50Jyk7Ci0gICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKS5sZW5ndGgnLCAiMSIpOworICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KCkubGVuZ3RoJywgIjIiKTsKICAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxk
QmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQi
LCAicGFpbnQiKS5sZW5ndGgnLCAiMSIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJwYWludCIpLmxlbmd0aCcsICIxIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGkt
ZXhwZWN0ZWQudHh0CmluZGV4IDc2NDlhODQzMWNhNDQyYjE2MDdlMjhlZWQ2ZDQ2YWM5ZTZjZGYw
ZGEuLjNhNjdkYzBiYjYzZDYwOWRhODIxNDZiNzYyZTNkZThjZGYwYTk0NGUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1v
YnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CkBAIC0xMSw3ICsxMSw3IEBAIFBBU1MgUGVyZm9ybWFu
Y2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IENvbnN0cnVjdG9yIHJlcXVp
cmVzICduZXcnCiBQQVNTIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKDEpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDEgKCdjYWxsYmFj
aycpIHRvIHRoZSBQZXJmb3JtYW5jZU9ic2VydmVyIGNvbnN0cnVjdG9yIG11c3QgYmUgYSBmdW5j
dGlvbi4KIFBBU1Mgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbigp
IHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KLVBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgorUEFTUyBvYnNl
cnZlci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRy
eVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQQVNTIG9ic2VydmVyLm9ic2VydmUoIm1hcmsiKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgogUEFTUyBvYnNlcnZlci5vYnNlcnZl
KHt9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2Vy
ZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczoibWFyayJ9KSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBWYWx1ZSBpcyBub3QgYSBzZXF1ZW5jZS4KQEAgLTM5
LDcgKzM5LDcgQEAgUEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogQ29uc3RydWN0b3IgcmVxdWkKIFBBU1MgW1dvcmtlcl0gbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdo
IGFyZ3VtZW50cy4KIFBBU1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoMSkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2NhbGxiYWNrJykgdG8gdGhlIFBl
cmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBb
V29ya2VyXSBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uKCkge30p
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZl
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNT
IFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBu
byB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2
ZXIub2JzZXJ2ZSgibWFyayIpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3Iu
CiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBbV29ya2Vy
XSBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJrIn0pIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4
cGVjdGVkLnR4dAppbmRleCBlZDAxYWUwMDMxZjRlNWU4Zjc2ZTYwMTVkYjIzODgyMjY0NGI5MTJk
Li5jMTQ2MjE0ZWYyZDZhOGFiMWQ2YjhhZTM4Nzg2NWUxMDdiYTNmNzBjIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUtYXBpLWV4cGVjdGVkLnR4dApAQCAtMTYsMTQgKzE2LDE0IEBAIFBBU1MgUGVyZm9ybWFu
Y2UucHJvdG90eXBlLmdldEVudHJpZXMgaXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJv
dG90eXBlLmdldEVudHJpZXNCeVR5cGUgaXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJv
dG90eXBlLmdldEVudHJpZXNCeU5hbWUgaXMgZGVmaW5lZC4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpIGluc3RhbmNlb2YgQXJyYXkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKCkubGVuZ3RoID09PSAwIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UubWFyaygidGVz
dCIpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVsw
XSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKClbMF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKLVBBU1MgdHlwZW9mIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQor
UEFTUyBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgor
UEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAyIGlzIHRydWUKK1BBU1Mg
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5j
ZUVudHJ5IGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0u
bmFtZSBpcyAidGVzdCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0u
ZW50cnlUeXBlIGlzICJtYXJrIgorUEFTUyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
W21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIHR5cGVvZiBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJlciIg
aXMgdHJ1ZQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKIFBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCkBA
IC02MCwxMSArNjAsMTEgQEAgUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkg
aW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5t
YXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBbV29ya2VyXSBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRydWUKLVBBU1MgW1dvcmtlcl0g
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBp
cyB0cnVlCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lIGlz
ICJ0ZXN0IgotUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZW50cnlU
eXBlIGlzICJtYXJrIgotUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpWzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQotUEFTUyBbV29ya2VyXSB0eXBl
b2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0
cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdIGlu
c3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLm5hbWUgaXMgInRlc3QiCitQQVNTIFtXb3JrZXJd
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmVudHJ5VHlwZSBpcyAibWFyayIK
K1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhd
LnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiIGlz
IHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgpIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBbV29ya2Vy
XSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJub3QtcmVhbCIpLmxlbmd0aCA9PT0gMCBp
cyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1hcmsi
KS5sZW5ndGggPT09IDEgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFu
Y2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5j
ZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcwppbmRleCAxZWY3YWE1YzU4NDJmZGU5ZTFi
ZDIwM2YxZDI1NzM4N2I5NTM2MDRkLi5iOGMyOTk0MDI2Y2Y5NGUwNzQ5ZWZiOTQyMWJjMWRiY2Ji
MjAzMjNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2Vz
L3RpbWVsaW5lLWFwaS5qcworKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3Vy
Y2VzL3RpbWVsaW5lLWFwaS5qcwpAQCAtNCw2ICs0LDggQEAgaWYgKHNlbGYuaW1wb3J0U2NyaXB0
cykKIGlmIChzZWxmLndpbmRvdykKICAgICBkZXNjcmlwdGlvbigiQmFzaWMgSW50ZXJmYWNlIHRl
c3QgZm9yIHBlcmZvcm1hbmNlLXRpbWVsaW5lIEFQSXMuIik7CiAKK2xldCBydW5uaW5nSW5Xb3Jr
ZXIgPSAhIXNlbGYuaW1wb3J0U2NyaXB0czsKKwogZGVidWcoIlBlcmZvcm1hbmNlRW50cnkiKTsK
IHNob3VsZEJlRGVmaW5lZCgiUGVyZm9ybWFuY2VFbnRyeSIpOwogc2hvdWxkQmVUcnVlKGAibmFt
ZSIgaW4gUGVyZm9ybWFuY2VFbnRyeS5wcm90b3R5cGVgKTsKQEAgLTIxLDE0ICsyMywyNSBAQCBz
aG91bGRCZURlZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlUeXBlYCk7
CiBzaG91bGRCZURlZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlOYW1l
YCk7CiAKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2Yg
QXJyYXlgKTsKLXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9
PT0gMGApOworaWYgKHJ1bm5pbmdJbldvcmtlcikgeworICAgIC8vIFdvcmtlcnMgZG9uJ3QgaGF2
ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuCisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwYCk7Cit9IGVsc2UgeworICAgIHNob3VsZEJl
VHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMWApOworfQogc2hvdWxk
Tm90VGhyb3coYHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTtgKTsKLXNob3VsZEJlVHJ1ZShgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMWApOwotc2hvdWxkQmVUcnVlKGBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5YCk7Ci1z
aG91bGRCZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lYCwg
InRlc3QiKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
WzBdLmVudHJ5VHlwZWAsICJtYXJrIik7Ci1zaG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVyImApOwotc2hvdWxkQmVUcnVl
KGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVy
ImApOworaWYgKHJ1bm5pbmdJbldvcmtlcikgeworICAgIG1hcmtJbmRleCA9IDA7CisgICAgc2hv
dWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Cit9IGVs
c2UgeworICAgIG1hcmtJbmRleCA9IDE7CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKCkubGVuZ3RoID09PSAyYCk7Cit9CitzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeWApOwor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4
XS5uYW1lYCwgInRlc3QiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlYCwgIm1hcmsiKTsKK3Nob3VsZEJlVHJ1ZShg
dHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0g
Im51bWJlciJgKTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVttYXJrSW5kZXhdLmR1cmF0aW9uID09PSAibnVtYmVyImApOwogCiBzaG91bGRUaHJvdyhgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgpYCk7CiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwYCk7CkBAIC01MCw1ICs2
Myw1IEBAIHNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUo
InRlc3QiKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlCiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeU5hbWUoInRlc3QiLCAibm90LXJlYWwiKS5sZW5ndGggPT09IDBgKTsKIHNo
b3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJtYXJrIiku
bGVuZ3RoID09PSAxYCk7CiAKLWlmIChzZWxmLmltcG9ydFNjcmlwdHMpCitpZiAocnVubmluZ0lu
V29ya2VyKQogICAgIGZpbmlzaEpTVGVzdCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi45OThkNGVkM2NlMTg0YzY4ZDMzMTg2MTNmOGQyMGZlMjcyZDUyZTM5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVz
X3ZhbHVlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlz
IHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2Un
cyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUg
b3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZp
Z2F0aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkICJodHRwLzEuMSIgYnV0IGdvdCAiIgorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428729</attachid>
            <date>2021-05-15 10:24:51 -0700</date>
            <delta_ts>2021-05-15 11:02:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210515102450.patch</filename>
            <type>text/plain</type>
            <size>216625</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJjYjMzNTkxY2FhM2Zh
NTkwMTk2NTZmMTlkMWYzYThjYzZmYmU5My4uZjJkNzhkYWQxNTc0NjA3ODBhMmM2ODllMjE3YzBl
ODIyYmY0Y2JlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xNSAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9ibGVtYXRpYywgYW5kIHNvbWUgb2YgdGhlIHRlc3RzIGZvciByZWFkaW5nIHRyYW5zZmVy
IHNpemUgc3RpbGwgZmFpbC4KKyAgICAgICAgVGhlcmUgYXJlIHN0aWxsIGEgZmV3IHRlc3QgZmFp
bHVyZXMgdG8gZml4IGluIGZ1dHVyZSBwYXRjaGVzLgorCisgICAgICAgIFRlc3RzOiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2
ZV9pbWFnZV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1
bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwKKyAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2lu
c3RhbmNlX2FjY2Vzc29ycy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUu
aHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWwKKyAg
ICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3Jp
Z2luLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9u
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlk
LWVudHJpZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAorICAgICAgICAgICAg
ICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1vYnNlcnZlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAorICAgICAgICAgICAg
ICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCisKKyAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERlcml2
ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUGVy
Zm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVh
dGVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OnNldFJlYWR5U3RhdGUpOgorICAgICAgICBTb21ldGltZXMgdGhlIHJlYWR5IHN0YXRl
IGp1bXBzIHJpZ2h0IHRvIENvbXBsZXRlIHdpdGhvdXQgaGl0dGluZyBJbnRlcmFjdGl2ZSBhbG9u
ZyB0aGUgd2F5LgorICAgICAgICBXaGVuIHRoaXMgaGFwcGVucywgd2Ugd2FudCB0byBtYXJrIGJv
dGggbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSBhbmQgbV9kb2N1bWVudFRpbWluZy5kb21J
bnRlcmFjdGl2ZS4KKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKToKKyAgICAgICAgQ2Fs
bCBhZGROYXZpZ2F0aW9uVGltaW5nIGluIG5vdGlmeUZpbmlzaGVkIHRvIGNyZWF0ZSB0aGUgbmF2
aWdhdGlvbiB0aW1pbmcgb2JqZWN0IHdoZW4gd2UgYXJlIGRvbmUgbmF2aWdhdGluZworICAgICAg
ICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFkZCBhIFVSTCBwYXJh
bWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3QncyBVUkwgYW5kIHNv
bWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0dGVuIGF0IGRpZmZl
cmVudCB0aW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpwb3B1bGF0ZVNl
cnZlclRpbWluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6cG9w
dWxhdGVTZXJ2ZXJUaW1pbmcpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZVRp
bWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OnVybCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6aW5pdGlhdG9yIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3MgY29uc3QpOgorICAg
ICAgICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJp
ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5
cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5h
bWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVk
RW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6YWRk
TmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6cmVnaXN0
ZXJQZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpx
dWV1ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJ
Zk5lZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeTo6
c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmR1
cmF0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmlzUmVz
b3VyY2UgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRy
eTo6aXNNYXJrIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
RW50cnk6OmlzTWVhc3VyZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZUVudHJ5Ojppc1BhaW50IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlTWFyay5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgU1BF
Q0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTi9FTkQgZG9lc24ndCB3b3JrIHdlbGwgd2l0aCBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgd2hpY2ggaW5oZXJpdHMgZnJvbSBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nIHdoaWNoIGJvdGggaGF2ZSBkaXN0aW5jdCB0eXBlcy4KKyAgICAgICAgaXM8
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gZG9lc24ndCBnaXZlIHVzIHRoZSBpbmZvIHdlIG5l
ZWQuICBJIHJlcGxhY2VkIHRoYXQgd2l0aCAic3dpdGNoIChlbnRyeS0+cGVyZm9ybWFuY2VFbnRy
eVR5cGUoKSkiIGluIHRoZSBvbmUgcGxhY2UgaXQncyB1c2VkLCBhbmQgaXQgd29ya3MgbGlrZSBh
IGNoYXJtLgorICAgICAgICBBbHNvIHJlbmFtZWQgdHlwZSB0byBwZXJmb3JtYW5jZUVudHJ5VHlw
ZSBzbyBpdCBkb2Vzbid0IGNvbmZsaWN0IHdpdGggUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojp0eXBlLCB3aGljaCBpcyBzcGVjaWZpZWQgaW4gdGhlIGlkbC4KKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlTWVhc3VyZS5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAg
KiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6dG9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OlBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6Om1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNoZWNrRmFpbHMgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxv
YWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRF
dmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRTdGFy
dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OnR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjpyZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZHVyYXRpb24gY29uc3QpOgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmg6IEFkZGVkLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbDogQ29waWVkIGZyb20g
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbC4KKyAgICAgICAgKiBw
YWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VPYnNlcnZlcjo6dGFrZVJlY29yZHMpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VP
YnNlcnZlcjo6ZGlzY29ubmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2Vy
dmVyOjpkZWxpdmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1
cHBvcnRlZEVudHJ5VHlwZXMpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5o
OgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGw6CisgICAgICAgICogcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUgY29uc3QpOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oOgorICAgICAgICAoaXNUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nOjpuZXh0SG9wUHJvdG9jb2wgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0YXJ0IGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1
cFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmc6OmRvbWFpbkxvb2t1cEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpzZWN1cmVDb25uZWN0aW9uU3RhcnQg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVx
dWVzdFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmc6OnJlc3BvbnNlU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmluaXRpYXRv
clR5cGUgY29uc3QpOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmRvTm90aWZ5Rmlu
aXNoKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oOgor
ICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5n
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50Lmg6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVj
dGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICBQYXNzIG1ldHJpY3MgaW5jbHVkaW5nIHRoZSByZXNw
b25zZSBlbmQgdGltZSBmcm9tIE5TVVJMQ29ubmVjdGlvbiBzbyB3ZSBkb24ndCBhc3NlcnQgaW4g
V2ViS2l0TGVnYWN5LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xv
YWRNZXRyaWNzLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29weVRpbWluZ0RhdGEpOgorICAgICAg
ICBVc2UgY3VycmVudFJlcXVlc3QgaW5zdGVhZCBvZiBwYXNzaW5nIGluIHRoZSByZXNwb25zZSBz
byB3ZSBjYW4gY2FsbCBpdCBmcm9tIGRpZEZpbmlzaExvYWRpbmcsIHdoZXJlIHdlIGRvbid0IGhh
dmUgYSByZXNwb25zZSBzdG9yZWQgYW55d2hlcmUuCisgICAgICAgIFdlJ3JlIGp1c3QgbG9va2lu
ZyBmb3Igd2hldGhlciBpdCdzIGh0dHAgb3IgaHR0cHMsIHNvIHRoZSBjdXJyZW50UmVxdWVzdCAo
d2hpY2ggaXMgdGhlIHJlcXVlc3QgYWZ0ZXIgYWxsIHRoZSByZWRpcmVjdHMpIGZpdHMgb3VyIHB1
cnBvc2UuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3Vy
bC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6aGFuZGxlRGF0YVVSTCk6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNP
cGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tOgorICAgICAgICAoLVtXZWJDb3JlUmVzb3VyY2VIYW5k
bGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUgY29ubmVjdGlvbjpkaWRSZWNlaXZlUmVzcG9uc2U6
XSk6CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxl
Z2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzpdKToKKwogMjAyMS0wNS0xNCAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlc291cmNl
IFRpbWluZzogc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IDAgd2hlbiBhIGNvbm5lY3Rpb24gaXMg
cmUtdXNlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwppbmRleCAwZGQyODFhODlmN2U0NzEyMTk2YjFkODEzNTIzZDNiYTRhZTgy
MzI5Li5iYTljYzkyY2MyZjU3MDIyZGEyMmFlY2ZkNzJjOWZiOGM4NDhjMWVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGlt
aW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbToKKyAgICAg
ICAgKC1bV0tOZXR3b3JrU2Vzc2lvbkRlbGVnYXRlIFVSTFNlc3Npb246dGFzazpkaWRGaW5pc2hD
b2xsZWN0aW5nTWV0cmljczpdKToKKyAgICAgICAgTWFyayByZXVzZWQgVExTIGNvbm5lY3Rpb25z
IGluIGNvbXBsZXRlIG1ldHJpY3MgbGlrZSBJIGRpZCBpbiBpbmNvbXBsZXRlIG1ldHJpY3MgaW4g
cjI3NzQ5My4KKwogMjAyMS0wNS0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgogCiAgICAgICAgIFJlc291cmNlIFRpbWluZzogc2VjdXJlQ29ubmVjdGlvblN0
YXJ0ID09IDAgd2hlbiBhIGNvbm5lY3Rpb24gaXMgcmUtdXNlZApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApp
bmRleCAzZGI1MWJhNjZlZDY5MzgzNzdjOTRkYWQ2NjY2ZmE5OTcxNjE4NGRjLi5mNTA0Nzg3MGRi
M2YxM2ZiZTRlZjEzOWYzOTlkNmUwN2E4OWQwNzEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAt
MTEzNSw2ICsxMTM1LDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBwYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJFbnRyeUxpc3QuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCisg
ICAgcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3Jt
YW5jZVBhaW50VGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5p
ZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlU2VydmVyVGltaW5nLmlkbApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggNjYyMjkyMWZlODA3OWEz
MDA4YmE0MzgyMTQzMmNlOWY0NTZjOGRkYS4uNzEwNzQ2OTUxOTBiZmRlNDYwNDIzODBmM2NmYmEw
MzU2NmRhMmE3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5w
dXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CkBAIC0xMjAxLDYgKzEyMDEsNyBAQCAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZv
cm1hbmNlTWFya09wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTWVh
c3VyZS5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5p
ZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbAorJChQUk9K
RUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCiAkKFBST0pFQ1Rf
RElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9y
bWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggZGQyYmRkZTM2OWUzOWZiNWE5ZDY4YWU3MGNi
NmMxZGJhYWExZjAyNi4uZWI1MzRkM2QyYzM3NTBmY2U1NDM5MTFlMDc5NDk2OWI1ZWNjOWYxYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxp
c3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QK
QEAgLTE2MDQsNiArMTYwNCw4IEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5jcHAKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9u
cy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZv
cm1hbmNlTmF2aWdhdGlvbi5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmgKICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VPYnNl
cnZlckNhbGxiYWNrLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggMjI5MjZi
YzYyYzM3NWRjNDNmN2Y3Y2RiYzEwYmEyYjdmZGQ5M2NmZi4uMzY4N2E3ZjU2MmUzYjgxN2M4YjZj
ZGYwNGVlNDE5NzcxMDBhMmZhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0x
MDU0LDYgKzEwNTQsNyBAQCBKU19CSU5ESU5HX0lETFMgOj0gXAogICAgICQoV2ViQ29yZSkvcGFn
ZS9QZXJmb3JtYW5jZU1lYXN1cmUuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFu
Y2VNZWFzdXJlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRs
IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbCBc
CiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaWRsIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUv
U291cmNlcy50eHQKaW5kZXggMjdmMjk5YjZiZTIxNDBiODU4MmVlNzNmNDczM2VkYzg0MTJkOTI4
NC4uNGY4ZTlhZDMxMWJjODY4MTc1ZmIwM2Y4OGNjMjljMWNiOWI3YjgyOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50
eHQKQEAgLTE3MzYsNiArMTczNiw3IEBAIHBhZ2UvUGVyZm9ybWFuY2VNYXJrLmNwcAogcGFnZS9Q
ZXJmb3JtYW5jZU1lYXN1cmUuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTW9uaXRvci5jcHAKIHBhZ2Uv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJFbnRyeUxpc3QuY3BwCiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBA
IC0zMzU5LDYgKzMzNjAsNyBAQCBKU1BlcmZvcm1hbmNlTWFya09wdGlvbnMuY3BwCiBKU1BlcmZv
cm1hbmNlTWVhc3VyZS5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5jcHAKIEpTUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorSlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3Bw
CiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFj
ay5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxYzM1OTE5MDJi
MTIwYmQzYWIwNjBiZDhjNWIxYjdmMmFiM2MxN2I5Li5hNjIzZDRiMDgzMGViYmM0ZjZiMzE4NDk0
YTNhMTUwMzJhMmIyODc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNjA0Niw2ICsxNjA0Niw5IEBACiAJCURFQ0E3RkY0MUY5
RkU5QjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNTUuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNTUuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJREVDQTdGRjUxRjlGRTlCQTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyNTYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTI1Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI1Ni5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlERjE5RTJBQTI0NzcyOUE2MDA3QkRBQ0IgLyogU2hv
dWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2
NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlERjM2NUQwNzI1QTk4NEM5MDA1RERCOEMgLyogUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjRFMzhEQzI1Mjc5NTkzMDAyQTc0ODEg
LyogVmVyc2lvbkNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFZlcnNpb25DaGVja3MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUz
OERFMjUyNzk1OTQwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFZlcnNpb25DaGVja3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJREY3RTlBMjk0QzdBQUNFMEFEODlCM0REIC8qIE1hdGhNTE9wZXJhdG9yRGljdGlvbmFy
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoTUxPcGVyYXRvckRpY3Rp
b25hcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIyNDUwLDYgKzIyNDUzLDkg
QEAKIAkJCQk4QUY0RTU1MjExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
LmNwcCAqLywKIAkJCQk4QUY0RTU1MzExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uLmggKi8sCiAJCQkJOEFGNEU1NTQxMURDNUEzNjAwMEVEM0RFIC8qIFBlcmZvcm1hbmNl
TmF2aWdhdGlvbi5pZGwgKi8sCisJCQkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgKi8sCisJCQkJREYzNjVEMDYyNUE5ODRDODAwNURE
QjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oICovLAorCQkJCURGMzY1RDA3MjVB
OTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovLAogCQkJ
CUE1QTk5MzM1MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmNwcCAqLywK
IAkJCQlBNUE5OTMzNjFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlci5oICov
LAogCQkJCUE1QTk5MzM3MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmlk
bCAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFu
Y2VFbnRyeUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1h
bmNlRW50cnlDdXN0b20uY3BwCmluZGV4IGJiZjgxMTE0MmRhYjllNmE5MmNiNWM2Y2ZhYjA2YjI0
NThiYTcxNDAuLmRmY2Q4YzFlYjk2NDQ5MTMxNDQ3ZTJmMjdjOWQ2YmVjNWFjNjc5YTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3Rv
bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5
Q3VzdG9tLmNwcApAQCAtMzUsMTAgKzM1LDEyIEBACiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgi
CiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNl
TWVhc3VyZS5oIgorI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAj
aW5jbHVkZSAiSlNQZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5j
bHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1
ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIApAQCAtNDgsMTggKzUwLDIwIEBAIHVz
aW5nIG5hbWVzcGFjZSBKU0M7CiAKIEpTVmFsdWUgdG9KU05ld2x5Q3JlYXRlZChKU0dsb2JhbE9i
amVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxQZXJmb3JtYW5jZUVu
dHJ5PiYmIGVudHJ5KQogewotICAgIGlmIChpczxQZXJmb3JtYW5jZVBhaW50VGltaW5nPihlbnRy
eSkpCi0gICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwotCi0gICAgaWYgKGlzPFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0K
LSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNYXJrPihlbnRyeSkpCisgICAgc3dpdGNoIChlbnRyeS0+
cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkgeworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlw
ZTo6TmF2aWdhdGlvbjoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nPihnbG9iYWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKKyAgICBjYXNl
IFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1hcms6CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFw
cGVyPFBlcmZvcm1hbmNlTWFyaz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAg
ICBpZiAoaXM8UGVyZm9ybWFuY2VNZWFzdXJlPihlbnRyeSkpCisgICAgY2FzZSBQZXJmb3JtYW5j
ZUVudHJ5OjpUeXBlOjpNZWFzdXJlOgogICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJm
b3JtYW5jZU1lYXN1cmU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2Ug
UGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UmVzb3VyY2U6CisgICAgICAgIHJldHVybiBjcmVhdGVX
cmFwcGVyPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShl
bnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UGFpbnQ6CisgICAgICAg
IHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShlbnRyeSkpOworICAgIH0KIAorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
ICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlRW50cnk+KGdsb2JhbE9iamVjdCwg
V1RGTW92ZShlbnRyeSkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBlYTQyZjMz
NDFhNmE1N2VhMGM1YTllMTExODI0ZjVlNTEyMGRmMDFiLi4yM2RmNmYwNzU5MzllODkyYzFjNzkz
ODI0ODc2MWM0NTE0NjkzMWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTEzOTAsMTMg
KzEzOTAsMTMgQEAgdm9pZCBEb2N1bWVudDo6c2V0UmVhZHlTdGF0ZShSZWFkeVN0YXRlIHJlYWR5
U3RhdGUpCiAgICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21Mb2FkaW5nKQogICAgICAg
ICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21Mb2FkaW5nID0gTW9ub3RvbmljVGltZTo6bm93KCk7
CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgSW50ZXJhY3RpdmU6Ci0gICAgICAgIGlmICghbV9k
b2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKLSAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1p
bmcuZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKLSAgICAgICAgYnJlYWs7
CiAgICAgY2FzZSBDb21wbGV0ZToKICAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUNv
bXBsZXRlKQogICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSA9IE1vbm90
b25pY1RpbWU6Om5vdygpOworICAgICAgICBGQUxMVEhST1VHSDsKKyAgICBjYXNlIEludGVyYWN0
aXZlOgorICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpCisgICAg
ICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlID0gTW9ub3RvbmljVGltZTo6
bm93KCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1
bWVudExvYWRlci5jcHAKaW5kZXggZTMyNWYyZDA5MTQzMmUwMzZjN2FiNWE5MTUxMmQwMDk5MWJh
ZGM4ZS4uN2YxMTlmMTE1OGYxYWI2OTNjZTJjZjE0YTQwZGI5MTRhOWZjMDVmNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC03Miw2ICs3Miw3IEBACiAjaW5j
bHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNz
aW9uLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5j
bHVkZSAiUGluZ0xvYWRlci5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgogI2lu
Y2x1ZGUgIlBvbGljeUNoZWNrZXIuaCIKQEAgLTQxMSw3ICs0MTIsNyBAQCBib29sIERvY3VtZW50
TG9hZGVyOjppc0xvYWRpbmcoKSBjb25zdAogICAgIHJldHVybiBpc0xvYWRpbmdNYWluUmVzb3Vy
Y2UoKSB8fCAhbV9zdWJyZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpIHx8ICFtX3BsdWdJblN0cmVh
bUxvYWRlcnMuaXNFbXB0eSgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5p
c2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYp
Cit2b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKIHsKICAgICBBU1NFUlQo
aXNNYWluVGhyZWFkKCkpOwogI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKQEAgLTQxOSw2
ICs0MjAsMTEgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVz
b3VyY2UmIHJlc291cmNlLCBjb25zdCBOZXR3b3JrTG9hZE0KICAgICAgICAgcmV0dXJuOwogI2Vu
ZGlmCiAKKyAgICBpZiAoYXV0byogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKSB7CisgICAg
ICAgIGlmIChhdXRvKiBkb21XaW5kb3cgPSBkb2N1bWVudC0+ZG9tV2luZG93KCkpCisgICAgICAg
ICAgICBkb21XaW5kb3ctPnBlcmZvcm1hbmNlKCkuYWRkTmF2aWdhdGlvblRpbWluZygqdGhpcywg
KmRvY3VtZW50LCByZXNvdXJjZSwgdGltaW5nKCksIG1ldHJpY3MpOworICAgIH0KKwogICAgIEFT
U0VSVF9VTlVTRUQocmVzb3VyY2UsIG1fbWFpblJlc291cmNlID09ICZyZXNvdXJjZSk7CiAgICAg
QVNTRVJUKG1fbWFpblJlc291cmNlKTsKICAgICBpZiAoIW1fbWFpblJlc291cmNlLT5lcnJvck9j
Y3VycmVkKCkgJiYgIW1fbWFpblJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCAwNzVmYjFmYWVkZmVmMzQyMDhhODFh
YmMzYmYxMjkxNDMyNzRhMjQzLi4yNDY3MzAyN2I3MDYzNWIxMjlkMDFiOWU0MmU1OWJjNDFlOTM2
MjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTczMywx
MCArNzMzLDkgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZUJ1ZmZlcihSZXNvdXJj
ZUhhbmRsZSosIFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVmZmUKICAgICBkaWRSZWNlaXZlQnVmZmVy
KFdURk1vdmUoYnVmZmVyKSwgZW5jb2RlZERhdGFMZW5ndGgsIERhdGFQYXlsb2FkQnl0ZXMpOwog
fQogCi12b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxl
KikKK3ZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUq
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiB7Ci0gICAgTmV0d29ya0xvYWRN
ZXRyaWNzIGVtcHR5TWV0cmljczsKLSAgICBkaWRGaW5pc2hMb2FkaW5nKGVtcHR5TWV0cmljcyk7
CisgICAgZGlkRmluaXNoTG9hZGluZyhtZXRyaWNzKTsKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWRl
cjo6ZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaAppbmRleCBiMmY2YTVlY2IzYmVhMDRl
OWJmYThkMWVlNzY2MmMzMmMxZGYzZDE1Li5hNDM3NmQ1MDExYmY4Mjg2ZmI0N2ZjMzM4NGYyOWI1
YzNkYzMyNjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaApAQCAtMjAw
LDcgKzIwMCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RBc3luYyhSZXNv
dXJjZUhhbmRsZSosIFJlc291cmNlUmVxdWVzdCYmLCBSZXNvdXJjZVJlc3BvbnNlJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUmVzb3VyY2VSZXF1ZXN0JiYpPiYmKSBvdmVycmlkZTsKICAgICB2
b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhciosIHVuc2lnbmVk
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZUJ1
ZmZlcihSZXNvdXJjZUhhbmRsZSosIFJlZjxTaGFyZWRCdWZmZXI+JiYsIGludCBlbmNvZGVkRGF0
YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFu
ZGxlKikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxl
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRGYWls
KFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogICAgIHZv
aWQgd2FzQmxvY2tlZChSZXNvdXJjZUhhbmRsZSopIG92ZXJyaWRlOwogICAgIHZvaWQgY2Fubm90
U2hvd1VSTChSZXNvdXJjZUhhbmRsZSopIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZVRpbWluZy5jcHAKaW5kZXggMTY4MjM0ZjQ3YmNiZTA3OTUwNjA1NDBhOWExYWFlNmVk
YjQ1MTZhNy4uN2UyMzQxMDhiNmE2Mjc2YzJkNmZjMTAzNmUwNjQ2NTNjMmU4NGQzZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC02Miw5ICs2Miw5IEBAIFJl
c291cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tQ2FjaGUoY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgaW5pdGlhdG9yCiAgICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHVybCwgaW5p
dGlhdG9yLCBsb2FkVGltaW5nLCByZXNwb25zZSwgc2VjdXJpdHlPcmlnaW4pOwogfQogCi1SZXNv
dXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291
cmNlLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWlu
ZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIGNvbnN0IFNl
Y3VyaXR5T3JpZ2luJiBzZWN1cml0eU9yaWdpbikKK1Jlc291cmNlVGltaW5nIFJlc291cmNlVGlt
aW5nOjpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IFVSTCYgdXJsLCBj
b25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWluZywgY29u
c3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIGNvbnN0IFNlY3VyaXR5
T3JpZ2luJiBzZWN1cml0eU9yaWdpbikKIHsKLSAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcocmVz
b3VyY2UucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCksIGluaXRpYXRvciwgbG9hZFRpbWluZywgbmV0
d29ya0xvYWRNZXRyaWNzLCByZXNvdXJjZS5yZXNwb25zZSgpLCBzZWN1cml0eU9yaWdpbik7Cisg
ICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHVybCwgaW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3
b3JrTG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKIH0K
IAogUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21TeW5jaHJvbm91c0xvYWQoY29u
c3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBs
b2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBz
ZWN1cml0eU9yaWdpbikKQEAgLTk3LDEwICs5NywxMCBAQCB2b2lkIFJlc291cmNlVGltaW5nOjpp
bml0U2VydmVyVGltaW5nKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogICAgICAg
ICBtX3NlcnZlclRpbWluZyA9IFNlcnZlclRpbWluZ1BhcnNlcjo6cGFyc2VTZXJ2ZXJUaW1pbmco
cmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpTZXJ2ZXJUaW1pbmcpKTsK
IH0KIAotVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IFJlc291cmNlVGltaW5n
Ojpwb3B1bGF0ZVNlcnZlclRpbWluZygpCitWZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGlt
aW5nPj4gUmVzb3VyY2VUaW1pbmc6OnBvcHVsYXRlU2VydmVyVGltaW5nKCkgY29uc3QKIHsKICAg
ICByZXR1cm4gV1RGOjptYXAobV9zZXJ2ZXJUaW1pbmcsIFtdIChhdXRvJiBlbnRyeSkgewotICAg
ICAgICByZXR1cm4gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc6OmNyZWF0ZShXVEZNb3ZlKGVudHJ5
Lm5hbWUpLCBlbnRyeS5kdXJhdGlvbiwgV1RGTW92ZShlbnRyeS5kZXNjcmlwdGlvbikpOworICAg
ICAgICByZXR1cm4gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc6OmNyZWF0ZShTdHJpbmcoZW50cnku
bmFtZSksIGVudHJ5LmR1cmF0aW9uLCBTdHJpbmcoZW50cnkuZGVzY3JpcHRpb24pKTsKICAgICB9
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5n
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAppbmRleCA2NGY4N2Ni
M2JmZGI1MTVkNmM0ZTM4Mzk0ZmJjNGUzYWQ1M2UzMGI3Li42NGQxZWNmOGU3ODNiYzZhNGQ4ZmY3
ZTlkYWRhZWJmMDYyZGQ0ZmFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcu
aApAQCAtNDEsMTUgKzQxLDE1IEBAIGNsYXNzIFJlc291cmNlVGltaW5nIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJv
bUNhY2hlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGlt
aW5nJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7Ci0g
ICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3Qg
U3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOworICAgIHN0YXRpYyBSZXNvdXJjZVRpbWlu
ZyBmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5p
dGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29u
c3QgU2VjdXJpdHlPcmlnaW4mKTsKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbVN5bmNo
cm9ub3VzTG9hZChjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9h
ZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwogCi0gICAgVVJMIHVybCgpIGNvbnN0IHsgcmV0
dXJuIG1fdXJsOyB9Ci0gICAgU3RyaW5nIGluaXRpYXRvcigpIGNvbnN0IHsgcmV0dXJuIG1faW5p
dGlhdG9yOyB9Ci0gICAgTG9hZFRpbWluZyBsb2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9s
b2FkVGltaW5nOyB9Ci0gICAgTmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljcygp
IGNvbnN0IHsgcmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzOyB9CisgICAgY29uc3QgVVJMJiB1
cmwoKSBjb25zdCB7IHJldHVybiBtX3VybDsgfQorICAgIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9y
KCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWF0b3I7IH0KKyAgICBjb25zdCBMb2FkVGltaW5nJiBs
b2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9sb2FkVGltaW5nOyB9CisgICAgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MoKSBjb25zdCB7IHJldHVybiBtX25l
dHdvcmtMb2FkTWV0cmljczsgfQogICAgIGJvb2wgYWxsb3dUaW1pbmdEZXRhaWxzKCkgY29uc3Qg
eyByZXR1cm4gbV9hbGxvd1RpbWluZ0RldGFpbHM7IH0KLSAgICBWZWN0b3I8UmVmPFBlcmZvcm1h
bmNlU2VydmVyVGltaW5nPj4gcG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKTsKKyAgICBWZWN0b3I8UmVm
PFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gcG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSBjb25zdDsK
ICAgICBSZXNvdXJjZVRpbWluZyBpc29sYXRlZENvcHkoKSBjb25zdDsKIAogICAgIHZvaWQgb3Zl
cnJpZGVJbml0aWF0b3JOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSkgeyBtX2luaXRpYXRvciA9IG5h
bWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4
IDAwYzlkODcwMzM3NzkwNTY4N2ZhNmQwMzQ1NTE2NDAyNzY1ZDI0MjYuLmE2YjMxMTA0NDk4NDdi
YTIxMzk3NTAyYjEzNzI5ZjJmNTdlYzY5MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1
YnJlc291cmNlTG9hZGVyLmNwcApAQCAtODk2LDcgKzg5Niw3IEBAIHZvaWQgU3VicmVzb3VyY2VM
b2FkZXI6OnJlcG9ydFJlc291cmNlVGltaW5nKGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0
d29ya0xvCiAgICAgICAgIHJldHVybjsKIAogICAgIFNlY3VyaXR5T3JpZ2luJiBvcmlnaW4gPSBt
X29yaWdpbiA/ICptX29yaWdpbiA6IGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGF1
dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoKm1fcmVzb3VyY2Us
IG1fcmVzb3VyY2UtPmluaXRpYXRvck5hbWUoKSwgbV9sb2FkVGltaW5nLCBuZXR3b3JrTG9hZE1l
dHJpY3MsIG9yaWdpbik7CisgICAgYXV0byByZXNvdXJjZVRpbWluZyA9IFJlc291cmNlVGltaW5n
Ojpmcm9tTG9hZCgqbV9yZXNvdXJjZSwgbV9yZXNvdXJjZS0+cmVzb3VyY2VSZXF1ZXN0KCkudXJs
KCksIG1fcmVzb3VyY2UtPmluaXRpYXRvck5hbWUoKSwgbV9sb2FkVGltaW5nLCBuZXR3b3JrTG9h
ZE1ldHJpY3MsIG9yaWdpbik7CiAKICAgICAvLyBXb3JrZXIgcmVzb3VyY2VzIGxvYWRlZCBoZXJl
IGFyZSBhbGwgQ2FjaGVkUmF3UmVzb3VyY2VzIGxvYWRlZCB0aHJvdWdoIFdvcmtlclRocmVhZGFi
bGVMb2FkZXIuCiAgICAgLy8gUGFzcyB0aGUgUmVzb3VyY2VUaW1pbmcgaW5mb3JtYXRpb24gb24g
c28gdGhhdCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIG1heSBhZGQgdGhlbSB0byB0aGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKaW5kZXggNzY2OTA4NWU1ZDhmODIyZGQzYjE3MjZmMGRh
YzRlNmRmMjZjMWYxMS4uYzJhZTZmYzVkYmJjMmY2YWQwNzVmZTQ4Nzc0NGIxNDJiNGRhYTk1MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKQEAgLTQzLDYgKzQzLDcgQEAKICNpbmNs
dWRlICJQZXJmb3JtYW5jZU1hcmtPcHRpb25zLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFz
dXJlT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvbi5oIgorI2luY2x1
ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNl
T2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgpAQCAtMTIyLDYgKzEyMyw5IEBAIFZlY3Rv
cjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzKCkgY29u
c3QKIHsKICAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzOwogCisg
ICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZykKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZp
Z2F0aW9uVGltaW5nKTsKKwogICAgIGVudHJpZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1p
bmdCdWZmZXIpOwogCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTQwLDYgKzE0NCw5IEBA
IFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVz
QnlUeXBlKGNvbnN0IFN0cmluZyYgZW50CiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50cnlU
eXBlID09ICJuYXZpZ2F0aW9uIikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9u
VGltaW5nKTsKKyAgICAKICAgICBpZiAoZW50cnlUeXBlID09ICJyZXNvdXJjZSIpCiAgICAgICAg
IGVudHJpZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCkBAIC0xNjEs
NiArMTY4LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2U6
OmdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW0KIHsKICAgICBWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzOwogCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWlu
ZyAmJiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8IGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpICYm
IG5hbWUgPT0gbV9uYXZpZ2F0aW9uVGltaW5nLT5uYW1lKCkpCisgICAgICAgIGVudHJpZXMuYXBw
ZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8
IGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2Ug
OiBtX3Jlc291cmNlVGltaW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5h
bWUoKSA9PSBuYW1lKQpAQCAtMTg0LDYgKzE5NCw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFt
CiAKIHZvaWQgUGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVkRW50cmllc0J5VHlwZShjb25zdCBT
dHJpbmcmIGVudHJ5VHlwZSwgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4mIGVudHJp
ZXMpIGNvbnN0CiB7CisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiBlbnRyeVR5cGUgPT0g
Im5hdmlnYXRpb24iKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcp
OworCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFw
cGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMjE0LDYgKzIyNywxMiBA
QCB2b2lkIFBlcmZvcm1hbmNlOjpyZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpCiAgICAgcXVl
dWVFbnRyeSgqbV9maXJzdENvbnRlbnRmdWxQYWludCk7CiB9CiAKK3ZvaWQgUGVyZm9ybWFuY2U6
OmFkZE5hdmlnYXRpb25UaW1pbmcoRG9jdW1lbnRMb2FkZXImIGRvY3VtZW50TG9hZGVyLCBEb2N1
bWVudCYgZG9jdW1lbnQsIENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTG9hZFRpbWlu
ZyYgdGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCit7CisgICAgbV9u
YXZpZ2F0aW9uVGltaW5nID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpjcmVhdGUobV90
aW1lT3JpZ2luLCByZXNvdXJjZSwgdGltaW5nLCBtZXRyaWNzLCBkb2N1bWVudC50aW1pbmcoKSwg
ZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXIudHJpZ2dlcmluZ0FjdGlv
bigpLnR5cGUoKSk7CisgICAgcXVldWVFbnRyeSgqbV9uYXZpZ2F0aW9uVGltaW5nKTsKK30KKwog
dm9pZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VUaW1pbmcoUmVzb3VyY2VUaW1pbmcmJiByZXNv
dXJjZVRpbWluZykKIHsKICAgICBBU1NFUlQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKQEAg
LTM0Niw2ICszNjUsMTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cmVtb3ZlQWxsT2JzZXJ2ZXJzKCkK
IHZvaWQgUGVyZm9ybWFuY2U6OnJlZ2lzdGVyUGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5j
ZU9ic2VydmVyJiBvYnNlcnZlcikKIHsKICAgICBtX29ic2VydmVycy5hZGQoJm9ic2VydmVyKTsK
KworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgb2JzZXJ2ZXIudHlwZUZpbHRlcigpLmNv
bnRhaW5zKFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok5hdmlnYXRpb24pKSB7CisgICAgICAgIG9i
c2VydmVyLnF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWluZyk7CisgICAgICAgIHNjaGVkdWxl
VGFza0lmTmVlZGVkKCk7CisgICAgfQogfQogCiB2b2lkIFBlcmZvcm1hbmNlOjp1bnJlZ2lzdGVy
UGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5jZU9ic2VydmVyJiBvYnNlcnZlcikKQEAgLTM1
Nyw3ICszODEsNyBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50
cnkmIGVudHJ5KQogewogICAgIGJvb2wgc2hvdWxkU2NoZWR1bGVUYXNrID0gZmFsc2U7CiAgICAg
Zm9yIChhdXRvJiBvYnNlcnZlciA6IG1fb2JzZXJ2ZXJzKSB7Ci0gICAgICAgIGlmIChvYnNlcnZl
ci0+dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnR5cGUoKSkpIHsKKyAgICAgICAgaWYgKG9i
c2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkucGVyZm9ybWFuY2VFbnRyeVR5cGUo
KSkpIHsKICAgICAgICAgICAgIG9ic2VydmVyLT5xdWV1ZUVudHJ5KGVudHJ5KTsKICAgICAgICAg
ICAgIHNob3VsZFNjaGVkdWxlVGFzayA9IHRydWU7CiAgICAgICAgIH0KQEAgLTM2Niw2ICszOTAs
MTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlVGFzaykKICAgICAgICAgcmV0dXJuOwogCisgICAg
c2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKK30KKwordm9pZCBQZXJmb3JtYW5jZTo6c2NoZWR1bGVU
YXNrSWZOZWVkZWQoKQorewogICAgIGlmIChtX2hhc1NjaGVkdWxlZFRpbWluZ0J1ZmZlckRlbGl2
ZXJ5VGFzaykKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKaW5k
ZXggOTlmMjU0YjNjOTUwOTZhNWNmZDM0YzJlOTBmOWRjZGMzODc0NjRjOC4uNWU0Njg2NGJmZDA3
NzExNDM0OThmZWNhNGU1NTA5NTU2MzM4NjM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2Uu
aApAQCAtNDgsMTIgKzQ4LDE3IEBAIGNsYXNzIEpTR2xvYmFsT2JqZWN0OwogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291cmNlOworY2xhc3MgRG9jdW1lbnQ7CitjbGFz
cyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRUaW1pbmc7CitjbGFzcyBOZXR3b3JrTG9hZE1l
dHJpY3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZUVu
dHJ5OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwogY2xhc3MgUGVyZm9ybWFuY2VNZWFzdXJlOwog
Y2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNlcnZlcjsKIGNsYXNzIFBlcmZvcm1hbmNlUGFp
bnRUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRpbWluZzsKQEAgLTkwLDYgKzk1LDcgQEAgcHVi
bGljOgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJmb3JtYW5jZU1lYXN1cmU+PiBtZWFzdXJlKEpT
Qzo6SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lLCBPcHRpb25hbDxT
dGFydE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0IFN0cmluZyYgZW5kTWFyayk7CiAgICAgdm9p
ZCBjbGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYgbWVhc3VyZU5hbWUpOwogCisgICAgdm9pZCBh
ZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiwgRG9jdW1lbnQmLCBDYWNoZWRSZXNv
dXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAg
ICB2b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGltaW5nJiYpOwogCiAgICAgdm9pZCBy
ZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpAQCAtMTIxLDYgKzEyNyw3IEBAIHByaXZhdGU6
CiAgICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGxUaW1lckZpcmVkKCk7CiAKICAgICB2
b2lkIHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYpOworICAgIHZvaWQgc2NoZWR1bGVUYXNr
SWZOZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4g
bV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3Rp
bWluZzsKQEAgLTEzOSw2ICsxNDYsNyBAQCBwcml2YXRlOgogCiAgICAgTW9ub3RvbmljVGltZSBt
X3RpbWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBt
X25hdmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+IG1f
Zmlyc3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlcmZvcm1hbmNlVXNl
clRpbWluZz4gbV91c2VyVGltaW5nOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eS5oCmluZGV4IGFmYWNmYjA5MGIyMWNiYTYxNGQ3OGNlODhhYzc1M2UyNjczZTEyNjUuLjNkZjVl
NGVmYmFmMzI2YzU3MWY1ZTZlNjVlMzU2YzJkNDMyZmYwZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5oCkBAIC00NCwxMCArNDQsMTAgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgflBlcmZvcm1hbmNlRW50cnkoKTsKIAogICAgIGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0
IHsgcmV0dXJuIG1fbmFtZTsgfQotICAgIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVy
biBtX3N0YXJ0VGltZTsgfQotICAgIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1f
ZHVyYXRpb247IH0KKyAgICB2aXJ0dWFsIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVy
biBtX3N0YXJ0VGltZTsgfQorICAgIHZpcnR1YWwgZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gbV9kdXJhdGlvbjsgfQogCi0gICAgZW51bSBjbGFzcyBUeXBlIHsKKyAgICBlbnVtIGNs
YXNzIFR5cGUgOiB1aW50OF90IHsKICAgICAgICAgTmF2aWdhdGlvbiAgPSAxIDw8IDAsCiAgICAg
ICAgIE1hcmsgICAgICAgID0gMSA8PCAxLAogICAgICAgICBNZWFzdXJlICAgICA9IDEgPDwgMiwK
QEAgLTU1LDE2ICs1NSwxMSBAQCBwdWJsaWM6CiAgICAgICAgIFBhaW50ICAgICAgID0gMSA8PCA0
CiAgICAgfTsKIAotICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgPSAwOworICAgIHZpcnR1
YWwgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIEFT
Q0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCA9IDA7CiAKICAgICBzdGF0aWMgT3B0aW9uYWw8
VHlwZT4gcGFyc2VFbnRyeVR5cGVTdHJpbmcoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0g
ICAgYm9vbCBpc1Jlc291cmNlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6OlJlc291
cmNlOyB9Ci0gICAgYm9vbCBpc01hcmsoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6
TWFyazsgfQotICAgIGJvb2wgaXNNZWFzdXJlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5
cGU6Ok1lYXN1cmU7IH0KLSAgICBib29sIGlzUGFpbnQoKSBjb25zdCB7IHJldHVybiB0eXBlKCkg
PT0gVHlwZTo6UGFpbnQ7IH0KLQogICAgIHN0YXRpYyBib29sIHN0YXJ0VGltZUNvbXBhcmVMZXNz
VGhhbihjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4mIGEsIGNvbnN0IFJlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5PiYgYikKICAgICB7CiAgICAgICAgIHJldHVybiBhLT5zdGFydFRpbWUoKSA8
IGItPnN0YXJ0VGltZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU1hcmsuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJrLmgKaW5kZXgg
YzczYjIzMTJmMzJhMDRjODIxYzhkMGVjYTg3N2VhYmIzM2ZlNGUyZi4uYjc1MTRmMDE1MzU4MDlk
YWI1M2NjYWMwNjRjNTJiMGYxOGViNmM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU1hcmsuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
TWFyay5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToKICAgICBQZXJmb3JtYW5jZU1hcmso
Y29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlw
dFZhbHVlPiYmKTsKICAgICB+UGVyZm9ybWFuY2VNYXJrKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJrOyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVu
dHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1hcms7IH0KICAgICBBU0NJSUxp
dGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm1hcmsiX3M7IH0KIAogICAg
IFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1fc2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJD
b3JlOjpQZXJmb3JtYW5jZU1hcmspCi0gICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNv
cmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRyeS5pc01hcmsoKTsgfQot
U1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VNZWFzdXJlLmgKaW5kZXggMzVkYjZhMTY2YjU3ZWU4NmU2MzA4MzJkZjQyNjg1NWQ5N2E3ZmJm
NS4uMmQyYWEzZWUxMjk1MjEyZTE2ZWRlNmUzZGRjODBmYzY0ZGUyNmY2OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0
ZToKICAgICBQZXJmb3JtYW5jZU1lYXN1cmUoY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3Rh
cnRUaW1lLCBkb3VibGUgZW5kVGltZSwgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkZXRh
aWwpOwogICAgIH5QZXJmb3JtYW5jZU1lYXN1cmUoKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50
cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWVhc3VyZTsgfQogICAgIEFTQ0lJ
TGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAibWVhc3VyZSJfczsgfQog
CiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lO
KFdlYkNvcmU6OlBlcmZvcm1hbmNlTWVhc3VyZSkKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29u
c3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWVh
c3VyZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTgxYjM1YmU2YzQ1YWRjZjg1YzY5M2ExOWMzYWEyZDgwMDg5MzM4NgotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApA
QCAtMCwwICsxLDE0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zy5oIgorCisjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVRp
bWluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlIHRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
TmF2aWdhdGlvblR5cGUoTmF2aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCit7CisgICAgc3dp
dGNoIChuYXZpZ2F0aW9uVHlwZSkgeworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3
YXJkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0
aW9uVHlwZTo6QmFja19mb3J3YXJkOworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OlJlbG9hZDoK
KyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5
cGU6OlJlbG9hZDsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpMaW5rQ2xpY2tlZDoKKyAgICBj
YXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtU3VibWl0dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5
cGU6OkZvcm1SZXN1Ym1pdHRlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpPdGhlcjoKKyAg
ICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6
Ok5hdmlnYXRlOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4g
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7Cit9
CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBj
b25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1l
dHJpY3MsIGNvbnN0IERvY3VtZW50VGltaW5nJiBkb2N1bWVudFRpbWluZywgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIG9yaWdpbiwgV2ViQ29yZTo6TmF2aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUp
CisgICAgOiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKHRpbWVPcmlnaW4sIFJlc291cmNlVGlt
aW5nOjpmcm9tTG9hZChyZXNvdXJjZSwgcmVzb3VyY2UucmVzcG9uc2UoKS51cmwoKSwgIm5hdmln
YXRpb24iX3MsIGxvYWRUaW1pbmcsIG1ldHJpY3MsIG9yaWdpbikpCisgICAgLCBtX2RvY3VtZW50
VGltaW5nKGRvY3VtZW50VGltaW5nKQorICAgICwgbV9uYXZpZ2F0aW9uVHlwZSh0b1BlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBlKG5hdmlnYXRpb25UeXBlKSkgeyB9CisK
K1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6flBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
ZygpID0gZGVmYXVsdDsKKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bWls
bGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSB0aW1lLCBPcHRpb25hbDxNb25vdG9u
aWNUaW1lPiB0aW1lT3JpZ2luKSBjb25zdAoreworICAgIGlmICghdGltZSkKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpyZWR1Y2VUaW1lUmVzb2x1dGlvbih0aW1l
IC0gKHRpbWVPcmlnaW4gPyAqdGltZU9yaWdpbiA6IG1fdGltZU9yaWdpbikpLm1pbGxpc2Vjb25k
cygpOworfQorCitib29sIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNo
ZWNrRmFpbHMoKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0
aW9uLXRpbWluZy0yLyNkZm4tc2FtZS1vcmlnaW4tY2hlY2sKKyAgICByZXR1cm4gIW1fcmVzb3Vy
Y2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkKKyAgICAgICAgfHwgbV9yZXNvdXJjZVRpbWlu
Zy5sb2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5SZWRpcmVjdCgpCisgICAgICAgIHx8ICFtX3Jl
c291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNTYW1lT3JpZ2luQXNQcmV2aW91c0RvY3VtZW50
KCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50
U3RhcnQoKSBjb25zdAoreworICAgIGlmIChzYW1lT3JpZ2luQ2hlY2tGYWlscygpKQorICAgICAg
ICByZXR1cm4gMC4wOworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS51bmxvYWRFdmVudFN0YXJ0KCkpOworfQorCitkb3VibGUg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7Cisg
ICAgaWYgKHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkpCisgICAgICAgIHJldHVybiAwLjA7CisgICAg
cmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWlu
ZygpLnVubG9hZEV2ZW50RW5kKCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpkb21JbnRlcmFjdGl2ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25k
c1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpOworfQorCitkb3Vi
bGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1l
bnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQpOworfQorCitkb3VibGUgUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdAor
eworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRv
bUNvbnRlbnRMb2FkZWRFdmVudEVuZCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OmRvbUNvbXBsZXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRz
U2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSk7Cit9CisKK2RvdWJsZSBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2FkVGlt
aW5nKCkubG9hZEV2ZW50U3RhcnQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25k
c1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmxvYWRFdmVudEVuZCgp
KTsKK30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZSBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUoKSBjb25zdAoreworICAgIHJldHVybiBtX25h
dmlnYXRpb25UeXBlOworfQorCit1bnNpZ25lZCBzaG9ydCBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6OnJlZGlyZWN0Q291bnQoKSBjb25zdAoreworICAgIGlmICghbV9yZXNvdXJjZVRpbWlu
Zy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAobV9y
ZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5SZWRpcmVjdCgpKQorICAg
ICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmco
KS5yZWRpcmVjdENvdW50KCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnN0YXJ0VGltZSgpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25h
dmlnYXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmctc3RhcnRU
aW1lCisgICAgcmV0dXJuIDAuMDsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZzo6ZHVyYXRpb24oKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9u
YXZpZ2F0aW9uLXRpbWluZy0yLyNkb20tUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLWR1cmF0
aW9uCisgICAgcmV0dXJuIGxvYWRFdmVudEVuZCgpIC0gc3RhcnRUaW1lKCk7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczYzBmN2FkZWNjMGM0NjFlNmJjODc4NGI4
YjMyYTVkMWFjY2MxN2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJEb2N1bWVudFRpbWluZy5oIgor
I2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKKyNpbmNsdWRlIDx3dGYvTW9u
b3RvbmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQ2FjaGVk
UmVzb3VyY2U7CitjbGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOwor
Y2xhc3MgU2VjdXJpdHlPcmlnaW47CitlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhf
dDsKKworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIGZpbmFsIDogcHVibGljIFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgeworcHVibGljOgorICAgIGVudW0gY2xhc3MgTmF2aWdh
dGlvblR5cGUgOiB1aW50OF90IHsKKyAgICAgICAgTmF2aWdhdGUsCisgICAgICAgIFJlbG9hZCwK
KyAgICAgICAgQmFja19mb3J3YXJkLAorICAgICAgICBQcmVyZW5kZXIsCisgICAgfTsKKworICAg
IHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0YXRpYyBSZWY8UGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nPiBjcmVhdGUoQXJncyYmLi4uIGFyZ3MpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLikp
OyB9CisgICAgflBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZygpOworCisgICAgVHlwZSBwZXJm
b3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok5hdmlnYXRpb247
IH0KKyAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm5h
dmlnYXRpb24iX3M7IH0KKworICAgIGRvdWJsZSB1bmxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7Cisg
ICAgZG91YmxlIHVubG9hZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUludGVyYWN0
aXZlKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KCkgY29u
c3Q7CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRv
dWJsZSBkb21Db21wbGV0ZSgpIGNvbnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRTdGFydCgpIGNv
bnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBOYXZpZ2F0aW9uVHlw
ZSB0eXBlKCkgY29uc3Q7CisgICAgdW5zaWduZWQgc2hvcnQgcmVkaXJlY3RDb3VudCgpIGNvbnN0
OworCisgICAgZG91YmxlIHN0YXJ0VGltZSgpIGNvbnN0IGZpbmFsOworICAgIGRvdWJsZSBkdXJh
dGlvbigpIGNvbnN0IGZpbmFsOworCitwcml2YXRlOgorICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIENhY2hlZFJlc291cmNlJiwgY29uc3Qg
TG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IERvY3VtZW50VGlt
aW5nJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mLCBXZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSk7CisK
KyAgICBkb3VibGUgbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSwgT3B0aW9u
YWw8TW9ub3RvbmljVGltZT4gdGltZU9yaWdpbiA9IFdURjo6bnVsbG9wdCkgY29uc3Q7CisgICAg
Ym9vbCBzYW1lT3JpZ2luQ2hlY2tGYWlscygpIGNvbnN0OworCisgICAgRG9jdW1lbnRUaW1pbmcg
bV9kb2N1bWVudFRpbWluZzsKKyAgICBOYXZpZ2F0aW9uVHlwZSBtX25hdmlnYXRpb25UeXBlOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBlODFlN2YxODcy
MmRjZmFiYTkxOWIzNmViZTg3NzkxNGZiOThjMzkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKQEAgLTAsMCArMSw1
MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRp
bWluZy0yLyNkb20tcGVyZm9ybWFuY2VuYXZpZ2F0aW9udGltaW5nCisKK3R5cGVkZWYgZG91Ymxl
IERPTUhpZ2hSZXNUaW1lU3RhbXA7CisKK2VudW0gTmF2aWdhdGlvblR5cGUgeworICAgICJuYXZp
Z2F0ZSIsCisgICAgInJlbG9hZCIsCisgICAgImJhY2tfZm9yd2FyZCIsCisgICAgInByZXJlbmRl
ciIKK307CisKK1sKKyAgICBFeHBvc2VkPVdpbmRvdworXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nIDogUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7CisgICAgcmVhZG9u
bHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50U3RhcnQ7
CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9h
ZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVT
dGFtcCBkb21JbnRlcmFjdGl2ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhp
Z2hSZXNUaW1lU3RhbXAgZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkg
ICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbnRlbnRMb2FkZWRFdmVu
dEVuZDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAg
ZG9tQ29tcGxldGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGlt
ZVN0YW1wIGxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCBsb2FkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJp
YnV0ZSBOYXZpZ2F0aW9uVHlwZSAgICAgIHR5cGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJp
YnV0ZSB1bnNpZ25lZCBzaG9ydCAgICAgIHJlZGlyZWN0Q291bnQ7CisgICAgW0RlZmF1bHRdIG9i
amVjdCB0b0pTT04oKTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2Vy
dmVyLmNwcAppbmRleCA0NjQ3MjY3ZDEyODlkYmI2YTUzMjBhNGFmZWIyMDQ2MGFiZjI4NzYxLi41
NmYzMmE1ZGVkMWNhNGNhYzMxN2ViMWM5YTk5MDc4MDcyYjVkMmZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKQEAgLTEwNyw2ICsxMDcsMTEgQEAgRXhj
ZXB0aW9uT3I8dm9pZD4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6b2JzZXJ2ZShJbml0JiYgaW5pdCkK
ICAgICByZXR1cm4geyB9OwogfQogCitWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3JkcygpCit7CisgICAgcmV0dXJuIHN0ZDo6ZXhj
aGFuZ2UobV9lbnRyaWVzVG9EZWxpdmVyLCB7IH0pOworfQorCiB2b2lkIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXI6OmRpc2Nvbm5lY3QoKQogewogICAgIGlmIChtX3BlcmZvcm1hbmNlKQpAQCAtMTE0LDYg
KzExOSw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCgpCiAKICAgICBt
X3JlZ2lzdGVyZWQgPSBmYWxzZTsKICAgICBtX2VudHJpZXNUb0RlbGl2ZXIuY2xlYXIoKTsKKyAg
ICBtX3R5cGVGaWx0ZXIgPSB7IH07CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6cXVl
dWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkKQEAgLTEzMCw3ICsxMzYsNyBAQCB2b2lk
IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIoKQogICAgIGlmICghY29udGV4dCkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmll
cyA9IFdURk1vdmUobV9lbnRyaWVzVG9EZWxpdmVyKTsKKyAgICBWZWN0b3I8UmVmUHRyPFBlcmZv
cm1hbmNlRW50cnk+PiBlbnRyaWVzID0gc3RkOjpleGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIs
IHsgfSk7CiAgICAgYXV0byBsaXN0ID0gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Y3Jl
YXRlKFdURk1vdmUoZW50cmllcykpOwogCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3
aWxsRmlyZU9ic2VydmVyQ2FsbGJhY2soKmNvbnRleHQsICJQZXJmb3JtYW5jZU9ic2VydmVyIl9z
KTsKQEAgLTE0MSwxMCArMTQ3LDkgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkZWxpdmVy
KCkKIFZlY3RvcjxTdHJpbmc+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlw
ZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKIHsKICAgICBWZWN0b3I8U3RyaW5n
PiBlbnRyeVR5cGVzID0gewotICAgICAgICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9i
LzE4NDM2Mz4gQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKLSAgICAg
ICAgLy8gIm5hdmlnYXRpb24iX3MsCiAgICAgICAgICJtYXJrIl9zLAotICAgICAgICAibWVhc3Vy
ZSJfcworICAgICAgICAibWVhc3VyZSJfcywKKyAgICAgICAgIm5hdmlnYXRpb24iX3MsCiAgICAg
fTsKIAogICAgIGlmIChpczxEb2N1bWVudD4oY29udGV4dCkgJiYgZG93bmNhc3Q8RG9jdW1lbnQ+
KGNvbnRleHQpLnN1cHBvcnRzUGFpbnRUaW1pbmcoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU9ic2VydmVyLmgKaW5kZXggMjg3MmYxN2FhYjViNTc2NmJmYzQ4Y2M0ODAwMDRhZGQ4
YmRlMWZmOS4uNDE5MzA1ZDQ3YzIxNTI3ZDhlMWNiZWI1N2JjZTVjMGQ4MmMyYTdkOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKQEAgLTU3LDYgKzU3LDcgQEAg
cHVibGljOgogCiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gb2JzZXJ2ZShJbml0JiYpOwogICAgIHZv
aWQgZGlzY29ubmVjdCgpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IHRh
a2VSZWNvcmRzKCk7CiAKICAgICBPcHRpb25TZXQ8UGVyZm9ybWFuY2VFbnRyeTo6VHlwZT4gdHlw
ZUZpbHRlcigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZUZpbHRlcjsgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAppbmRleCBiNzA3ZjY2MDJlMzA5N2FjMjM3
Y2VhYzcyZTRhN2QwNjcyNjM2NTEzLi42ODNhMmJlYTAxNDU5NDMyNTdmOWM3ZjIwMmU2ZjU1YzNk
YjRiZDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwK
QEAgLTMzLDggKzMzLDkgQEAKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgewogICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihQZXJmb3JtYW5j
ZU9ic2VydmVyQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgdW5kZWZpbmVkIG9ic2VydmUoUGVy
Zm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CisgICAgdW5kZWZpbmVkIG9ic2VydmUob3B0
aW9uYWwgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CiAgICAgdW5kZWZpbmVkIGRp
c2Nvbm5lY3QoKTsKKyAgICBzZXF1ZW5jZTxQZXJmb3JtYW5jZUVudHJ5PiB0YWtlUmVjb3Jkcygp
OwogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBzdGF0aWMgcmVhZG9ubHkg
YXR0cmlidXRlIEZyb3plbkFycmF5PERPTVN0cmluZz4gc3VwcG9ydGVkRW50cnlUeXBlczsKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVu
dHJ5TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRy
eUxpc3QuY3BwCmluZGV4IGUwMzY2NWFhY2I3MGJiOGY4NjM5YWY0YmM3YWUxZDA2MGRiYjFlNDYu
LmRkN2ZjOTdjYTM4ZjgzZTI0NTVlOTI3MDgyMzUxNTAwM2U5YTljZTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcApAQCAt
NjQsNyArNjQsNyBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5j
ZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRyaWVzQnlOYW1lKAogICAgIGZvciAoYXV0byYgZW50
cnkgOiBtX2VudHJpZXMpIHsKICAgICAgICAgaWYgKCFuYW1lLmlzTnVsbCgpICYmIGVudHJ5LT5u
YW1lKCkgIT0gbmFtZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBpZiAodHlwZSAm
JiBlbnRyeS0+dHlwZSgpICE9ICp0eXBlKQorICAgICAgICBpZiAodHlwZSAmJiBlbnRyeS0+cGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSAhPSAqdHlwZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAg
ICAgICBlbnRyaWVzLmFwcGVuZChlbnRyeS5jb3B5UmVmKCkpOwogICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmgKaW5kZXggYTI4MWJhMzgyMjQ4Zjgy
MzYwZjM3NzhiMWJmZmY1NWUzOTZlMjVjZi4uNzBmODA4NWY5Y2M3NTg3OTA0NjI5MTBjODBhYTc0
YTZiYzc3NDAyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBh
aW50VGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGlt
aW5nLmgKQEAgLTQ0LDEzICs0NCw5IEBAIHByaXZhdGU6CiAgICAgfQogCiAgICAgQVNDSUlMaXRl
cmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJwYWludCJfczsgfQotICAgIFR5
cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9CisgICAgVHlwZSBw
ZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9
CiAKICAgICB+UGVyZm9ybWFuY2VQYWludFRpbWluZygpID0gZGVmYXVsdDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpQZXJmb3JtYW5jZVBhaW50VGltaW5nKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBX
ZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNQYWludCgp
OyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCBkZDcxYWE3Y2IxNzhiM2Iw
ODVlM2FhOWUyYzViYjNjZjIzN2ViMGE5Li42ZTMwNGU5Y2E5MmNmMWVkYTdmMWNmNDU5NGMzYWRj
ZDc4N2MzNDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAKQEAgLTgxLDEyICs4MSw5IEBAIFJlZjxQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nPiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3RvbmljVGltZSB0
CiAKIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmco
TW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5n
KQogICAgIDogUGVyZm9ybWFuY2VFbnRyeShyZXNvdXJjZVRpbWluZy51cmwoKS5zdHJpbmcoKSwg
ZW50cnlTdGFydFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpLCBlbnRyeUVuZFRpbWUo
dGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpKQotICAgICwgbV9pbml0aWF0b3JUeXBlKHJlc291
cmNlVGltaW5nLmluaXRpYXRvcigpKQogICAgICwgbV90aW1lT3JpZ2luKHRpbWVPcmlnaW4pCi0g
ICAgLCBtX2xvYWRUaW1pbmcocmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpKQotICAgICwgbV9u
ZXR3b3JrTG9hZE1ldHJpY3MocmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkpCi0g
ICAgLCBtX3Nob3VsZFJlcG9ydERldGFpbHMocmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRh
aWxzKCkpCi0gICAgLCBtX3NlcnZlclRpbWluZyhyZXNvdXJjZVRpbWluZy5wb3B1bGF0ZVNlcnZl
clRpbWluZygpKQorICAgICwgbV9yZXNvdXJjZVRpbWluZyhXVEZNb3ZlKHJlc291cmNlVGltaW5n
KSkKKyAgICAsIG1fc2VydmVyVGltaW5nKG1fcmVzb3VyY2VUaW1pbmcucG9wdWxhdGVTZXJ2ZXJU
aW1pbmcoKSkKIHsKIH0KIApAQCAtOTQsNyArOTEsNyBAQCBQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nOjp+UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZygpID0gZGVmYXVsdDsKIAogY29uc3QgU3Ry
aW5nJiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2woKSBjb25zdAog
ewotICAgIHJldHVybiBtX25ldHdvcmtMb2FkTWV0cmljcy5wcm90b2NvbDsKKyAgICByZXR1cm4g
bV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5wcm90b2NvbDsKIH0KIAogZG91
YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OndvcmtlclN0YXJ0KCkgY29uc3QKQEAgLTEw
NSwxNDAgKzEwMiwxNDAgQEAgZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Ondvcmtl
clN0YXJ0KCkgY29uc3QKIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlZGly
ZWN0U3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAg
IGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0
dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlZGlyZWN0U3RhcnQoKSk7CisgICAgcmV0dXJu
IG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdFN0YXJ0KCkpOwogfQogCiBkb3VibGUgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RFbmQoKSBjb25zdAogewotICAgIGlmICgh
bV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1Rp
bWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9u
aWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJl
ZGlyZWN0RW5kKCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0
YW1wKG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVkaXJlY3RF
bmQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0YXJ0
KCkgY29uc3QKIHsKICAgICAvLyBmZXRjaFN0YXJ0IGlzIGEgcmVxdWlyZWQgcHJvcGVydHkuCi0g
ICAgQVNTRVJUKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkpOworICAgIEFTU0VSVChtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwogCi0gICAgcmV0dXJuIG1vbm90
b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1pbmcu
ZmV0Y2hTdGFydCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3Rh
cnQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpkb21haW5Mb29r
dXBTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAg
aWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1
cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0
IDw9IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCku
ZG9tYWluTG9va3VwU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGZldGNoU3RhcnQoKTsK
IAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3
b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9h
ZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1l
dHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpkb21haW5Mb29rdXBFbmQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRS
ZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFp
bHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmlj
cy5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3
b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKICAgICAgICAgcmV0dXJu
IGRvbWFpbkxvb2t1cFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCk7Cisg
ICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNl
VGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCk7CiB9CiAKIGRvdWJs
ZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQoKSBjb25zdAogewotICAg
IGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5h
bGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25l
dHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcykKICAgICAg
ICAgcmV0dXJuIGRvbWFpbkxvb2t1cEVuZCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGlt
ZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQp
OworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQpOwogfQogCiBkb3Vi
bGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCgpIGNvbnN0CiB7Ci0gICAg
aWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFs
bG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0
d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRp
bWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpCiAgICAgICAgIHJl
dHVybiBjb25uZWN0U3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhp
Z2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCk7CisgICAgcmV0
dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6c2VjdXJlQ29ubmVjdGlvblN0YXJ0KCkgY29uc3QKIHsKLSAgICBp
ZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxs
b3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAobV9uZXR3
b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IHJldXNlZFRMU0Nvbm5lY3Rp
b25TZW50aW5lbCkKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2VkVExTQ29ubmVjdGlvblNlbnRpbmVsKQog
ICAgICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRy
aWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQog
ICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGln
aFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQp
OworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQpOwog
fQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVxdWVzdFN0YXJ0KCkgY29u
c3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3Vy
Y2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKICAg
ICAvLyByZXF1ZXN0U3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBtYWRl
LgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcykKKyAg
ICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQg
PD0gMF9tcykKICAgICAgICAgcmV0dXJuIGNvbm5lY3RFbmQoKTsKIAotICAgIHJldHVybiBuZXR3
b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVx
dWVzdFN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0
YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVzdFN0YXJ0KTsK
IH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQoKSBj
b25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNv
dXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAog
ICAgIC8vIHJlc3BvbnNlU3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBt
YWRlLgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMp
CisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VT
dGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gcmVxdWVzdFN0YXJ0KCk7CiAKLSAgICByZXR1
cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRy
aWNzLnJlc3BvbnNlU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hS
ZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25z
ZVN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNl
RW5kKCkgY29uc3QKIHsKICAgICAvLyByZXNwb25zZUVuZCBpcyBhIHJlcXVpcmVkIHByb3BlcnR5
LgotICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0NvbXBsZXRlKCkgfHwgbV9sb2Fk
VGltaW5nLnJlc3BvbnNlRW5kKCkpOworICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSB8fCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1p
bmcoKS5yZXNwb25zZUVuZCgpKTsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0Nv
bXBsZXRlKCkpIHsKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5pc0NvbXBsZXRlKCkpIHsKICAgICAgICAgLy8gcmVzcG9uc2VFbmQgaXMgMCB3aGVuIGEgbmV0
d29yayByZXF1ZXN0IGlzIG5vdCBtYWRlLgogICAgICAgICAvLyBUaGlzIHNob3VsZCBtZWFuIGFs
bCBvdGhlciBwcm9wZXJ0aWVzIGFyZSBlbXB0eS4KLSAgICAgICAgaWYgKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdv
cmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJU
KG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAg
IEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7Ci0gICAg
ICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0
IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5l
Y3RFbmQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Mu
Y29ubmVjdFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25l
dHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKKyAgICAgICAgaWYg
KG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VFbmQgPD0gMF9t
cykgeworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRy
aWNzKCkucmVzcG9uc2VTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291
cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKKyAg
ICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJl
cXVlc3RTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKTsKKyAg
ICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNv
bm5lY3RFbmQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5u
ZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBB
U1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBF
bmQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3Jr
TG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKICAgICAgICAgICAgIHJl
dHVybiBmZXRjaFN0YXJ0KCk7CiAgICAgICAgIH0KIAotICAgICAgICByZXR1cm4gbmV0d29ya0xv
YWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNl
RW5kKTsKKyAgICAgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFt
cChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKTsKICAg
ICB9CiAKLSAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Rp
bWVPcmlnaW4sIG1fbG9hZFRpbWluZy5yZXNwb25zZUVuZCgpKTsKKyAgICByZXR1cm4gbW9ub3Rv
bmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1p
bmcubG9hZFRpbWluZygpLnJlc3BvbnNlRW5kKCkpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKFNlY29u
ZHMgZGVsdGEpIGNvbnN0CiB7CiAgICAgQVNTRVJUKGRlbHRhKTsKLSAgICBTZWNvbmRzIGZpbmFs
ID0gKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmlnaW47Cisg
ICAgU2Vjb25kcyBmaW5hbCA9IChtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0
YXJ0KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmlnaW47CiAgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpy
ZWR1Y2VUaW1lUmVzb2x1dGlvbihmaW5hbCkubWlsbGlzZWNvbmRzKCk7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggNWQwNzlm
NGM2NjU2NTIzMTVhMDAxMjQ2M2M4Y2RmOWNlNTJlYzVhMS4uYjc2NmM5YzAwOTVmZDBjOTA4OGYz
OTE3ZTU2ZTFkZmVkNDU1NWE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJMb2FkVGlt
aW5nLmgiCiAjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiUGVyZm9y
bWFuY2VFbnRyeS5oIgorI2luY2x1ZGUgIlJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSA8d3Rm
L1JlZi5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00MiwxMSArNDMs
MTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc7
CiBjbGFzcyBSZXNvdXJjZVRpbWluZzsKIAotY2xhc3MgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
ZyBmaW5hbCA6IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKK2NsYXNzIFBlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcgOiBwdWJsaWMgUGVyZm9ybWFuY2VFbnRyeSB7CiBwdWJsaWM6CiAgICAgc3Rh
dGljIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBjcmVhdGUoTW9ub3RvbmljVGltZSB0
aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmKTsKIAotICAgIGNvbnN0IEF0b21TdHJpbmcmIGlu
aXRpYXRvclR5cGUoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvclR5cGU7IH0KKyAgICBjb25z
dCBTdHJpbmcmIGluaXRpYXRvclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlVGltaW5n
LmluaXRpYXRvcigpOyB9CiAgICAgY29uc3QgU3RyaW5nJiBuZXh0SG9wUHJvdG9jb2woKSBjb25z
dDsKIAogICAgIGRvdWJsZSB3b3JrZXJTdGFydCgpIGNvbnN0OwpAQCAtNjEsMjcgKzYyLDIxIEBA
IHB1YmxpYzoKICAgICBkb3VibGUgcmVxdWVzdFN0YXJ0KCkgY29uc3Q7CiAgICAgZG91YmxlIHJl
c3BvbnNlU3RhcnQoKSBjb25zdDsKICAgICBkb3VibGUgcmVzcG9uc2VFbmQoKSBjb25zdDsKKwog
ICAgIGNvbnN0IFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiYgc2VydmVyVGlt
aW5nKCkgY29uc3QgeyByZXR1cm4gbV9zZXJ2ZXJUaW1pbmc7IH0KIAotICAgIFR5cGUgdHlwZSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlJlc291cmNlOyB9Ci0gICAgQVNDSUlMaXRlcmFs
IGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJyZXNvdXJjZSJfczsgfQorICAgIFR5
cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBUeXBlOjpS
ZXNvdXJjZTsgfQorICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7
IHJldHVybiAicmVzb3VyY2UiX3M7IH0KIAotcHJpdmF0ZToKK3Byb3RlY3RlZDoKICAgICBQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VU
aW1pbmcmJik7CiAgICAgflBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoKTsKIAogICAgIGRvdWJs
ZSBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAoU2Vjb25kcykgY29uc3Q7CiAK
LSAgICBBdG9tU3RyaW5nIG1faW5pdGlhdG9yVHlwZTsKICAgICBNb25vdG9uaWNUaW1lIG1fdGlt
ZU9yaWdpbjsKLSAgICBMb2FkVGltaW5nIG1fbG9hZFRpbWluZzsKLSAgICBOZXR3b3JrTG9hZE1l
dHJpY3NXaXRob3V0Tm9uVGltaW5nRGF0YSBtX25ldHdvcmtMb2FkTWV0cmljczsKLSAgICBib29s
IG1fc2hvdWxkUmVwb3J0RGV0YWlsczsKKyAgICBjb25zdCBSZXNvdXJjZVRpbWluZyBtX3Jlc291
cmNlVGltaW5nOwogICAgIFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBtX3Nl
cnZlclRpbWluZzsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9U
WVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKQotICAg
IHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkgeyByZXR1cm4gZW50cnkuaXNSZXNvdXJjZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmlkbAppbmRleCA0NmE4ZjBmMjUxMWNlYjVjMGM3ZGQzMTE2YzJmOGZhNzdmYzhkN2RkLi5m
MDY1NjZkNWUwZmE3ZTFmZDBiNDU5N2YxMGI1ZjIyZWY2NmExNmQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKQEAgLTUwLDYgKzUw
LDExIEBAIHR5cGVkZWYgZG91YmxlIERPTUhpZ2hSZXNUaW1lU3RhbXA7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVxdWVzdFN0YXJ0OwogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHJlc3BvbnNlU3RhcnQ7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VFbmQ7CisKKyAgICAvLyBO
b3RlOiB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBh
cmUgaW50ZW50aW9uYWxseSBvbWl0dGVkCisgICAgLy8gYmVjYXVzZSBvZiBwcml2YWN5IGNvbmNl
cm5zIHN1Y2ggYXMgaHR0cHM6Ly9naXRodWIuY29tL3czYy9yZXNvdXJjZS10aW1pbmcvaXNzdWVz
LzIzOAorCisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3NlcnZlci10aW1pbmcvI2V4dGVu
c2lvbi10by10aGUtcGVyZm9ybWFuY2VyZXNvdXJjZXRpbWluZy1pbnRlcmZhY2UKICAgICBbRW5h
YmxlZEF0UnVudGltZT1TZXJ2ZXJUaW1pbmddIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJh
eTxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4gc2VydmVyVGltaW5nOwogCiAgICAgW0RlZmF1bHRd
IG9iamVjdCB0b0pTT04oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcAppbmRleCA5ZmYyMzM2MjMwNDVhODk5NDQ1NTJk
ODJiZjNhNzJmMTIxYmQ5ODc1Li4xNDc3NGYyMzIzMjdlMTE5OGUzNzRiYzE4NzZhYTllNzljOTY4
Y2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNv
dXJjZUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9i
UmVzb3VyY2VIYW5kbGUuY3BwCkBAIC02MzQsNyArNjM0LDcgQEAgc3RhdGljIHZvaWQgZG9Ob3Rp
ZnlGaW5pc2goQmxvYlJlc291cmNlSGFuZGxlJiBoYW5kbGUpCiAgICAgaWYgKCFoYW5kbGUuY2xp
ZW50KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlkRmluaXNo
TG9hZGluZygmaGFuZGxlKTsKKyAgICBoYW5kbGUuY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmco
JmhhbmRsZSwgeyB9KTsKIH0KIAogdm9pZCBCbG9iUmVzb3VyY2VIYW5kbGU6Om5vdGlmeUZpbmlz
aCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtM
b2FkTWV0cmljcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9h
ZE1ldHJpY3MuaAppbmRleCBkNzEwN2FhNDU2NzgxN2JlM2E1Zjc5MjA0NDMwNmZlZjcwYjliY2Ex
Li4xNjk2NWVlOWE1MTdhNDU1OTYxNTM2NzY3OTZmOTliY2IzNmYyNWQ4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKQEAg
LTIwMCw3ICsyMDAsNyBAQCBwdWJsaWM6CiB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi1Cb3g8
TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKiwgTlNV
UkxSZXNwb25zZSAqKTsKK0JveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5T
VVJMQ29ubmVjdGlvbiAqKTsKIFdFQkNPUkVfRVhQT1JUIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+
IGNvcHlUaW1pbmdEYXRhKE5TVVJMU2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29t
cGxldGVNZXRyaWNzKTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmgKaW5kZXggOWE4MGUxMTNmYjQ4Mjgy
OTRkN2FmZmNhZTAyOWVmMGNhZjg1ZGQxNS4uZmJhMDIzM2JlZmEyY2Q0YzE2MTRmNzA1NmI0YjA3
NTM3OTMxZWNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9S
ZXNvdXJjZUhhbmRsZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaApAQCAtNDQsNiArNDQsNyBAQCBPQkpDX0NMQVNTIE5T
Q2FjaGVkVVJMUmVzcG9uc2U7CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZTsKIGNsYXNzIENyZWRlbnRpYWw7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJp
Y3M7CiBjbGFzcyBQcm90ZWN0aW9uU3BhY2U7CiBjbGFzcyBSZXNvdXJjZUhhbmRsZTsKIGNsYXNz
IFJlc291cmNlRXJyb3I7CkBAIC02Nyw3ICs2OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQs
IGludCAvKmVuY29kZWREYXRhTGVuZ3RoKi8pIHsgfQogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1
YWwgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZl
cj4mJiwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKICAgICAKLSAgICB2aXJ0dWFsIHZvaWQgZGlk
RmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRG
aW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikg
eyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNv
dXJjZUVycm9yJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHdhc0Jsb2NrZWQoUmVzb3VyY2VIYW5k
bGUqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgY2Fubm90U2hvd1VSTChSZXNvdXJjZUhhbmRsZSop
IHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJv
bm91c0xvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5
bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcAppbmRleCBjN2MxMmNlOGU3NTFhNTJiYjQ1MTdkZDAy
ZDZmNThhZGU2OTEyMGVkLi4yYTdmODg0MTFiNGExMzk1YjdmMzE2MDAyMTYyYWU5MzcxZjRmZWIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5
bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIFN5bmNocm9u
b3VzTG9hZGVyQ2xpZW50OjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNo
YXIqIGRhdGEsCiAgICAgbV9kYXRhLmFwcGVuZChkYXRhLCBsZW5ndGgpOwogfQogCi12b2lkIFN5
bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiBo
YW5kbGUpCit2b2lkIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJl
c291cmNlSGFuZGxlKiBoYW5kbGUsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCiB7CiAgICAg
bV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICNpZiBQTEFURk9STShDT0NPQSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGll
bnQuaAppbmRleCA4ZDJhOTc3MTkzMTRmYzg5MjVjMjJkYmZkZWM1OGVmOTJiMzI3ZGM0Li5mODhk
ZmY3ZjkzNWI2MzU1ZWEyNzEwNGFhZTVlNDJjZjZiNDI0ZDU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5o
CkBAIC02Nyw3ICs2Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlQXN5bmMoUmVzb3Vy
Y2VIYW5kbGUqLCBSZXNvdXJjZVJlc3BvbnNlJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
Jikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNv
bnN0IGNoYXIqLCB1bnNpZ25lZCwgaW50IC8qZW5jb2RlZERhdGFMZW5ndGgqLykgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xv
YWRNZXRyaWNzJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwg
Y29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNF
X0FVVEhfQ0FMTEJBQ0spCiAgICAgdm9pZCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlv
blNwYWNlQXN5bmMoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rp
b25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3Bl
cmF0aW9uUXVldWUuY3BwCmluZGV4IDNjODJiYzNiNGM2ODU5YjhiYTk0YTMyYmU5YTQyNmE4Mzk5
NmVjNTAuLjI0ZDE0ODU4MjA1ZTEyMmQyZmJlZGYxYTM5M2Q3YTgwZWNmMmM4MWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVS
TENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRl
bGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUg
IkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1
ZGUgIk1JTUVUeXBlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3MuaCIK
ICNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZS5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xp
ZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtMjM4LDcgKzIzOSw3IEBA
IHZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25R
dWV1ZTo6ZGlkRmluaXNoTG9hZGluZygpCiAKICAgICAgICAgTE9HKE5ldHdvcmssICJDRk5ldCAt
IFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6
OmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlPSVwKSAoJXMpIiwgaGFuZGxlLCBoYW5kbGUtPmZpcnN0
UmVxdWVzdCgpLnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCi0gICAgICAgIGhhbmRs
ZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlKTsKKyAgICAgICAgaGFuZGxlLT5j
bGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUsIE5ldHdvcmtMb2FkTWV0cmljcyB7IH0p
OwogICAgICAgICBpZiAocHJvdGVjdGVkVGhpcy0+bV9tZXNzYWdlUXVldWUpIHsKICAgICAgICAg
ICAgIHByb3RlY3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAgICAgICAgICAgICBw
cm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1ZSA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNz
Lm1tCmluZGV4IDViM2M4OThiZDMwMjdkZGQ1NzI0OTE2NmFjMTRiZWViMWU3MDdiMmEuLjY0YWVh
NGZkNTJmOWQ1ZTJlM2QwYjM5YzYzMjBkYzk2YTdmZGE3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNz
Lm1tCkBAIC02Nyw3ICs2Nyw3IEBAIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdE
YXRhKE5TVVJMU2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29tCiAgICAgKTsKIH0K
IAotQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9u
ICpjb25uZWN0aW9uLCBOU1VSTFJlc3BvbnNlICpyZXNwb25zZSkKK0JveDxOZXR3b3JrTG9hZE1l
dHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbikKIHsKICAg
ICBOU0RpY3Rpb25hcnkgKnRpbWluZ0RhdGEgPSBbY29ubmVjdGlvbiBfdGltaW5nRGF0YV07CiAg
ICAgaWYgKCF0aW1pbmdEYXRhKQpAQCAtODksNyArODksNyBAQCBCb3g8TmV0d29ya0xvYWRNZXRy
aWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rpb24sIE5TVVJMUmVz
cG9ucwogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJl
cXVlc3RTdGFydCIpLAogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGlt
aW5nRGF0YVJlc3BvbnNlU3RhcnQiKSwKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwg
QCJfa0NGTlRpbWluZ0RhdGFDb25uZWN0aW9uUmV1c2VkIiksCi0gICAgICAgIHJlc3BvbnNlLlVS
TC5zY2hlbWUKKyAgICAgICAgY29ubmVjdGlvbi5jdXJyZW50UmVxdWVzdC5VUkwuc2NoZW1lCiAg
ICAgKTsKIH0KICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKaW5kZXggOGYxNzViNjU0MmVhMmYw
Yzg2OGY3MDFkNTYyODA0YmY3ZTJmZDU5Ny4uYzdlMWEyNGZlOTU1OWU5OGY1YmM1NmZmMjI3MDBh
MWU0YWU1OTMxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
dXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNp
bmNsdWRlICJDdXJsUmVxdWVzdC5oIgogI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCiAjaW5jbHVk
ZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUg
Ik5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlSW50ZXJu
YWwuaCIKICNpbmNsdWRlICJTYW1lU2l0ZUluZm8uaCIKQEAgLTU4Miw3ICs1ODMsNyBAQCB2b2lk
IFJlc291cmNlSGFuZGxlOjpoYW5kbGVEYXRhVVJMKCkKICAgICB9CiAKICAgICBpZiAoY2xpZW50
KCkpCi0gICAgICAgIGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKHRoaXMpOworICAgICAgICBj
bGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyh0aGlzLCB7IH0pOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21h
Yy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09w
ZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KaW5kZXggZDQ5Nzg2MGQ4NzQ1Y2MyMjI1ZmQxM2VlNmQw
ZDMyODI2NzRhNWNhNi4uZmZhNmMwYWExYmI1MTQ1ZmQ5N2Q3NDhiNTMwNWQ0YjNkZmNjNmJmMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJl
c291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9u
UXVldWVEZWxlZ2F0ZS5tbQpAQCAtMzgsNiArMzgsNyBAQAogI2ltcG9ydCAiU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuaCIKICNpbXBvcnQgIldlYkNvcmVVUkxSZXNwb25zZS5oIgogI2ltcG9ydCA8
cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNVUkxD
b25uZWN0aW9uU1BJLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tQdHIuaD4KICNpbXBvcnQgPHd0Zi9N
YWluVGhyZWFkLmg+CiAKQEAgLTI1Miw3ICsyNTMsNyBAQCBBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19FTkQKIAogICAgICAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc291cmNlUmVzcG9u
c2Uoci5nZXQoKSk7CiAgICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0U291cmNlKFJlc291cmNl
UmVzcG9uc2U6OlNvdXJjZTo6TmV0d29yayk7Ci0gICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0
RGVwcmVjYXRlZE5ldHdvcmtMb2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdl
dCgpLCByLmdldCgpKSk7CisgICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0RGVwcmVjYXRlZE5l
dHdvcmtMb2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpKSk7CiAKICAg
ICAgICAgbV9oYW5kbGUtPmRpZFJlY2VpdmVSZXNwb25zZShXVEZNb3ZlKHJlc291cmNlUmVzcG9u
c2UpLCBbc2VsZiwgcHJvdGVjdGVkU2VsZiA9IFdURk1vdmUocHJvdGVjdGVkU2VsZildIHsKICAg
ICAgICAgICAgIG1fc2VtYXBob3JlLnNpZ25hbCgpOwpAQCAtMzE0LDExICszMTUsMjEgQEAgQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKICAgICBMT0coTmV0d29yaywgIkhh
bmRsZSAlcCBkZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzolcCIsIG1faGFuZGxl
LCBjb25uZWN0aW9uKTsKIAotICAgIGF1dG8gd29yayA9IFtzZWxmID0gc2VsZiwgcHJvdGVjdGVk
U2VsZiA9IHJldGFpblB0cihzZWxmKV0gKCkgbXV0YWJsZSB7CisgICAgYXV0byB3b3JrID0gW3Nl
bGYgPSBzZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpLCBjb25uZWN0aW9uID0g
cmV0YWluUHRyKGNvbm5lY3Rpb24pXSAoKSBtdXRhYmxlIHsKICAgICAgICAgaWYgKCFtX2hhbmRs
ZSB8fCAhbV9oYW5kbGUtPmNsaWVudCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAg
IG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSk7CisgICAgICAg
IGlmIChhdXRvIG1ldHJpY3MgPSBjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpKSkgewor
ICAgICAgICAgICAgZG91YmxlIHJlc3BvbnNlRW5kVGltZSA9IFtbW2Nvbm5lY3Rpb24gX3RpbWlu
Z0RhdGFdIG9iamVjdEZvcktleTpAIl9rQ0ZOVGltaW5nRGF0YVJlc3BvbnNlRW5kIl0gZG91Ymxl
VmFsdWVdOworICAgICAgICAgICAgbWV0cmljcy0+cmVzcG9uc2VFbmQgPSBTZWNvbmRzKHJlc3Bv
bnNlRW5kVGltZSA8PSAwID8gMCA6IHJlc3BvbnNlRW5kVGltZSAtIG1ldHJpY3MtPmZldGNoU3Rh
cnQudmFsdWUoKSk7CisgICAgICAgICAgICBtZXRyaWNzLT5tYXJrQ29tcGxldGUoKTsKKyAgICAg
ICAgICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSwgKm1l
dHJpY3MpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRyaWNz
IGVtcHR5TWV0cmljczsKKyAgICAgICAgICAgIGVtcHR5TWV0cmljcy5tYXJrQ29tcGxldGUoKTsK
KyAgICAgICAgICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRs
ZSwgZW1wdHlNZXRyaWNzKTsKKyAgICAgICAgfQorCiAgICAgICAgIGlmIChtX21lc3NhZ2VRdWV1
ZSkgewogICAgICAgICAgICAgbV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICAgICAgICAgICAgIG1f
bWVzc2FnZVF1ZXVlID0gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQppbmRleCBmMzVjNWYzYTY1
M2RlMGJjZDE0NGRlY2E1Njg1MjdhZWE3MGQ1NGJmLi43MjYxNWFjOWNmYzY3ZDU4OGY4NzFlMzdh
NTQzNDk1OThiYzM3NGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCkBAIC03OTAsNyArNzkwLDEwIEBA
IHN0YXRpYyBpbmxpbmUgdm9pZCBwcm9jZXNzU2VydmVyVHJ1c3RFdmFsdWF0aW9uKE5ldHdvcmtT
ZXNzaW9uQ29jb2EmIHNlc3Npb24sIFNlCiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5kb21h
aW5Mb29rdXBTdGFydCA9IFNlY29uZHMoZG9tYWluTG9va3VwU3RhcnRJbnRlcnZhbCk7CiAgICAg
ICAgIG5ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBFbmQgPSBTZWNvbmRzKGRvbWFpbkxv
b2t1cEVuZEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFy
dCA9IFNlY29uZHMoY29ubmVjdFN0YXJ0SW50ZXJ2YWwpOwotICAgICAgICBuZXR3b3JrTG9hZE1l
dHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gU2Vjb25kcyhzZWN1cmVDb25uZWN0aW9uU3Rh
cnRJbnRlcnZhbCk7CisgICAgICAgIGlmIChtLnJldXNlZENvbm5lY3Rpb24gJiYgW20ucmVzcG9u
c2UuVVJMLnNjaGVtZSBpc0VxdWFsVG9TdHJpbmc6QCJodHRwcyJdKQorICAgICAgICAgICAgbmV0
d29ya0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFdlYkNvcmU6OnJldXNlZFRM
U0Nvbm5lY3Rpb25TZW50aW5lbDsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbmV0d29ya0xv
YWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFNlY29uZHMoc2VjdXJlQ29ubmVjdGlv
blN0YXJ0SW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA9
IFNlY29uZHMoY29ubmVjdEVuZEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNz
LnJlcXVlc3RTdGFydCA9IFNlY29uZHMocmVxdWVzdFN0YXJ0SW50ZXJ2YWwpOwogICAgICAgICBu
ZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA9IFNlY29uZHMocmVzcG9uc2VTdGFydElu
dGVydmFsKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCAxNWZhNzhkZWRmZTkwNWIzMDA2MWJlZjlkYzYzOGM0MTY1NWY4MDUy
Li4yMjJjNTUxZTgxYjY2MDA4ZDY4NmY3MmFiNmViZDUxYjBlOGY2MDU5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTkgQEAKKzIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Vi
a2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2
ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0
MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBU
ZXN0RXhwZWN0YXRpb25zOgorICAgICAgICBBbm5veWluZ2x5IHNlY3VyZV9jb25uZWN0aW9uX3N0
YXJ0X25vbl96ZXJvLmh0dHBzLmh0bWwgYmVjb21lcyBmbGFreSB3aXRoIGEgY29ycmVjdCBpbXBs
ZW1lbnRhdGlvbiBiZWNhdXNlIGl0IGFzc3VtZXMKKyAgICAgICAgdGhhdCBubyBjb25uZWN0aW9u
IGlzIHJldXNlZC4gIEhvd2V2ZXIsIHdoZW4gcnVubmluZyB0aGlzIHRlc3QgYWZ0ZXIgb3RoZXIg
dGVzdHMsIGFub3RoZXIgY29ubmVjdGlvbiBpcyBvZnRlbiByZXVzZWQuCisgICAgICAgICogcGVy
Zm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250
ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGFp
bnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRt
bDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxp
bmUtYXBpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2Vz
L3RpbWVsaW5lLWFwaS5qczoKKwogMjAyMS0wNS0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlc291cmNlIFRpbWluZzogc2VjdXJlQ29u
bmVjdGlvblN0YXJ0ID09IDAgd2hlbiBhIGNvbm5lY3Rpb24gaXMgcmUtdXNlZApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNDczNDA3YWE2YjA5OWQwMDk5ZWE1OGJhODE0OTkxNzg0
MmUxY2RhOC4uNmIzMzY5YzMzMjA5YTExNTVmZTMzZWU2YmMwMzIzZDFhNjRkYTk5OSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTE4IEBACisyMDIxLTA1LTE0ICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRk
IHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL01FVEEueW1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZl
X21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVu
dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanM6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1
ZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
ZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWw6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVu
dF9yZXBsYWNlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVf
cmVtb3ZlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNz
b3JzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0ZV9pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWw6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJk
Lmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxv
YWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
Y2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWw6IENvcGll
ZCBmcm9tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRf
aW4uaHRtbC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfbm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sOgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5p
cXVlX25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFu
Y2VzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291
cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanM6CisgICAgICAgICh0ZXN0X25hbWVzcGFjZSk6Cisg
ICAgICAgICh0ZXN0X2F0dHJpYnV0ZV9leGlzdHMpOgorICAgICAgICAodGVzdF9lbnVtKToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5l
Y3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3Rh
cnQtcmV1c2UuaHR0cHMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBz
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdh
dGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNr
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLmh0bWw6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQt
ZmxhZy1hZnRlci10aW1lb3V0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0LnQu
dC5zdGVwX3RpbWVvdXQpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qczogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVu
dHJpZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVz
cy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmMgaWRsX2FycmF5KToKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQt
ZmxhZy1vYnNlcnZlcnMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKHByb21pc2VfdGVzdCk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9u
YWJsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbDogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVk
LWZhbHNlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0LnQudC5zdGVwX3RpbWVv
dXQpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
ZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanM6IEFkZGVkLgorICAgICAgICAodGVzdCk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxi
YWNrLW11dGF0ZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3Qt
cmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVz
dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LWRpc2Nvbm5lY3QuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAg
ICAodGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdl
dGVudHJpZXMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUu
YW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNf
dGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLW9ic2VydmUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNl
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVz
dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jl
c291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlk
LWVudHJpZXMuanM6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIu
anM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1
cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMu
YW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9uLmFueS5qczogQWRkZWQuCisg
ICAgICAgICh0ZXN0VGltZVJlc29sdXRpb24pOgorICAgICAgICAodGltZUJ5VXNlclRpbWluZyk6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBl
cmZvcm1hbmNlLW9ic2VydmVyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0
cHMtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25u
ZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0
aW9ucwppbmRleCBlOTBiYTU0NjZhMGE5ZTBmYmE0OWM4MmY1ZDFhMzUyYjc4YjczZTBmLi4yZTc2
YjdiMDIyN2ZmOWNkNzAyMTQ5ZmE3NGI2YTYxNjFlMzJkY2MwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMK
QEAgLTk0MCw2ICs5NDAsNyBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291
cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5kd2ljaC1uby1UQU8uc3ViLgogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY29ycy1wcmVmbGlnaHQuYW55Lmh0
bWwgWyBGYWlsdXJlIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNv
dXJjZS10aW1pbmcvY3Jvc3NvcmlnaW4tc2FuZHdpY2gtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWls
dXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Ny
b3Nzb3JpZ2luLXNhbmR3aWNoLXBhcnRpYWwtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0K
K2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
X2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAK
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXN0cmVhbXMvTWVk
aWFTdHJlYW0tZGVmYXVsdC1mZWF0dXJlLXBvbGljeS5odHRwcy5odG1sIFsgRHVtcEpTQ29uc29s
ZUxvZ0luU3RkRXJyIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0
dXJlLXJlY29yZC9wYXNzdGhyb3VnaC9NZWRpYVJlY29yZGVyLXBhc3N0aHJvdWdoLmh0dHBzLmh0
bWwgWyBGYWlsdXJlIFRpbWVvdXQgUGFzcyBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9NRVRBLnltbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZmIwZTBmMWY2N2E5YzZhYTJlN2U5MjFiMDllODVm
OGQ5NzBiMjkwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApAQCAtMCwwICsxLDUg
QEAKK3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9uYXZpZ2F0aW9uLXRpbWluZy8KK3N1Z2dl
c3RlZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKKyAgLSB5b2F2d2Vp
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iMjhjMTBjZTM2YzNjNzQ0ODQ4OTdlNWQyNGRhZmY5MTczOTVlYjU2Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0
IGEgaW1hZ2UgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisK
KworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50CisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2NzQyZjBlZmY2ZDA3
YzdjMDY5NGIwNjZkZmEwMTdmMGQxMDQyYmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04
IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVu
dC48L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJl
Zj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBo
cmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUt
d2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlw
dD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24g
aW1hZ2UgZG9jdW1lbnQiKTsKKyAgICAgICAgZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAg
ICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5j
b250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRpbWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVh
dGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBl
Y3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9zaXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8
aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBk
b2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8
aWZyYW1lIHNyYz0iLi4vaW1hZ2VzL3NtaWxleS5wbmciIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+
PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zN2Y2NzJkYjgyNzM0OTk2YmFhNmQ0MTJkNjE5Y2VmN2JkYjgxZWNjCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0
IGEgbWVkaWEgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisK
KworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50CisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0ZTQ1NzI1ZDgzNjA1
YjUxOWNlNzRlYThmZjQ1NjFkY2QzZDc1OTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04
IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVu
dC48L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJl
Zj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBo
cmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUt
d2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlw
dD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24g
bWVkaWEgZG9jdW1lbnQiKTsKKyAgICAgICAgZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAg
ICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5j
b250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRpbWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVh
dGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBl
Y3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9zaXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8
aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBk
b2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8
aWZyYW1lIHNyYz0iLi4vbWVkaWEvQTQubXA0IiBvbmxvYWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZy
YW1lPgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndp
bmRvdy5qcwppbmRleCA4Y2MzNTQ2YjNjMjdhOWQ5M2VlNTYyMTU4NGQ4M2Q1NmEzMDg1MTNjLi43
MmNmMGMzYTNkM2M4Y2I3NzU0MTYyNWEwNTU0ZDg0NjRkN2MxMTJiIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L2lkbGhhcm5lc3Mud2luZG93LmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKQEAg
LTEsMjEgKzEsMjAgQEAKIC8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5q
cwogLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvaWRsaGFybmVzcy5qcworLy8gTUVUQTogdGlt
ZW91dD1sb25nCiAKICd1c2Ugc3RyaWN0JzsKIAogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvbmF2
aWdhdGlvbi10aW1pbmcvCiAKIGlkbF90ZXN0KAotICBbJ25hdmlnYXRpb24tdGltaW5nJ10sCi0g
IFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJywgJ2hyLXRpbWUnLCAn
ZG9tJ10sCi0gIGlkbF9hcnJheSA9PiB7Ci0gICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsKKyAg
WyduYXZpZ2F0aW9uLXRpbWluZycsICdoci10aW1lJ10sCisgIFsncmVzb3VyY2UtdGltaW5nJywg
J3BlcmZvcm1hbmNlLXRpbWVsaW5lJywgJ2RvbScsICdodG1sJ10sCisgIGlkbEFycmF5ID0+IHsK
KyAgICBpZGxBcnJheS5hZGRfb2JqZWN0cyh7CiAgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3Jt
YW5jZSddLAogICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOiBbJ3BlcmZvcm1hbmNlLm5hdmln
YXRpb24nXSwKICAgICAgIFBlcmZvcm1hbmNlVGltaW5nOiBbJ3BlcmZvcm1hbmNlLnRpbWluZydd
LAotICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiBbCi0gICAgICAgICdwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nCi0gICAgICBdCisgICAgICBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6IFsncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdJ10KICAgICB9KTsKICAgfQogKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
YXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIyM2I3NjA1ZDkyMmRh
Mzg3MmFiNTZkY2ZlYWM1ODNjMmVlNDJiMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3Jp
cHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2Fu
IG9ic2VydmUgbmF2IHRpbWluZyAyIGluc3RhbmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRy
aWJ1dGVzIGluIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlk
YXRlIHRoYXQgdGhlIHZhbHVlcyBhcmUgY29ycmVjdCkuCisKKworRkFJTCBQZXJmb3JtYW5jZSBu
YXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlLiBhc3NlcnRfdHJ1ZTogRXhw
ZWN0ZWQgYXR0cmlidXRlOiBkZWNvZGVkQm9keVNpemUuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNjA0OGUwNjFi
YTA1N2NkOTcxYjA4ZTAzMmJlNzE3ZjBhZDA0ZDBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sCkBAIC0wLDAgKzEsNjcgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04
Ij4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAg
ICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29v
Z2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53
My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+
PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5E
ZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJm
b3JtYW5jZU9ic2VydmVyIGNhbiBvYnNlcnZlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhh
dCB0aGUgZXhwZWN0ZWQgYXR0cmlidXRlcyBpbiBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3Qg
KGJ1dCBkb2VzIG5vdCB2YWxpZGF0ZSB0aGF0IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLjwvcD4K
KworICAgICAgICA8c2NyaXB0PgorICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBb
CisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywK
KyAgICAgICAgICAgICdkZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRl
JywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAg
J2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2
ZScsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdkb21haW5M
b29rdXBTdGFydCcsCisgICAgICAgICAgICAnZHVyYXRpb24nLAorICAgICAgICAgICAgJ2VuY29k
ZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZW50cnlUeXBlJywKKyAgICAgICAgICAgICdmZXRj
aFN0YXJ0JywKKyAgICAgICAgICAgICdpbml0aWF0b3JUeXBlJywKKyAgICAgICAgICAgICdsb2Fk
RXZlbnRFbmQnLAorICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdu
YW1lJywKKyAgICAgICAgICAgICduZXh0SG9wUHJvdG9jb2wnLAorICAgICAgICAgICAgJ3JlZGly
ZWN0Q291bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRp
cmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jl
c3BvbnNlRW5kJywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdz
ZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAg
ICAgICAgICAndHlwZScsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAg
ICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAg
ICBdOworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIg
b2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0
ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBl
bnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJU
aGVyZSBzaG91bGQgYmUgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7Cisg
ICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0
ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKG5h
dlRpbWluZzJBdHRyaWJ1dGVzW2ldIGluIGVudHJpZXNbMF0sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIkV4cGVjdGVkIGF0dHJpYnV0ZTogIiArIG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ld
ICsgIi4iKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNl
cnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAg
ICAgICAgICAgIH0pCisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2
ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFu
Y2UgbmF2aWdhdGlvbiB0aW1pbmcgZW50cmllcyBhcmUgb2JzZXJ2YWJsZS4iKTsKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmli
dXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI0OTlmOGFlZGRjOWJmMzZlM2Vi
NTFjYjY4YjY5Nzc4ODgyMGIwMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9h
dHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlv
bgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIg
aW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVy
IGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJTCBQZXJmb3Jt
YW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIGFz
c2VydF90cnVlOiBFeHBlY3RlZCB0cmFuc2ZlclNpemUgdG8gYmUgZ3JlYXRlciB0aGFuIGVuY29k
ZWRCb2R5U2l6ZSBpbiB1bmNhY2hlZCBuYXZpZ2F0aW9uLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OTgwOWU0
MWRkZDdmNjhiMWQzZmE2OTc5Y2EwZDZmYjE1MzhhNGU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbApAQCAtMCwwICsxLDEzNyBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgor
ICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3
dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8v
d3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQt
aG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVz
IHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRl
ZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBl
eHBlY3RlZCB2YWx1ZXMuPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIC8vIEhvc3Qg
bmFtZXMgYW5kIHBvcnRzIG1heSBiZSBjb25maWd1cmVkIGF0IHRlc3QgZXhlY3V0aW9uIHRpbWUu
IFRoZQorICAgICAgICAvLyB3ZWItcGxhdGZvcm0tdGVzdHMgc2VydmVyIG9mZmVycyB0d28gbWVj
aGFuaXNtcyBmb3IgcmV0cmlldmluZyB0aGVzZQorICAgICAgICAvLyB2YWx1ZXMgZHluYW1pY2Fs
bHk6IGRpcmVjdCB0ZXh0IHN1YnN0aXR1dGlvbiBhbmQgdGhlIGBnZXQtaG9zdC1pbmZvYAorICAg
ICAgICAvLyBzY3JpcHQuIFRoZSBmb3JtZXIgaXMgaW5hcHByb3ByYXRlIGZvciB0aGlzIHRlc3Qg
YmVjYXVzZSBpdAorICAgICAgICAvLyBpbmZsdWVuY2VzIHRoZSBzaXplIG9mIHRoZSBkb2N1bWVu
dCwgYW5kIHRoaXMgdGVzdCBpbmNsdWRlcyBzdGF0aWMKKyAgICAgICAgLy8gYXNzZXJ0aW9ucyBm
b3IgdGhhdCB2YWx1ZS4KKyAgICAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsK
KyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0gImh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJTkFM
X0hPU1QgKyAiOiIgKworICAgICAgICAgICAgaG9zdF9pbmZvLkhUVFBfUE9SVCArCisgICAgICAg
ICAgICAiL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1s
IjsKKyAgICAgICAgdmFyIG5hdlRpbWluZzJFdmVudE9yZGVyMSA9IFsKKyAgICAgICAgICAgICdz
dGFydFRpbWUnLAorICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8n
dW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAg
ICAgLy8ndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAg
ICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQn
LAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAvLydzZWN1cmVDb25u
ZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgJ3Jl
cXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAn
cmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAg
ICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExv
YWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAn
bG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsK
KworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIyID0gWworICAgICAgICAgICAgJ3Jl
ZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAg
ICAgICAnZmV0Y2hTdGFydCcKKyAgICAgICAgXTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2
ZW50T3JkZXIzID0gWworICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAn
c2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICdjb25uZWN0RW5kJworICAgICAg
ICBdOworCisgICAgICAgIC8vIE5hdmlnYXRpb24gVGltaW5nIGF0dHJpYnV0ZXMgZm9yIGNvbXBh
cmlzb24uCisgICAgICAgIHZhciBuYXZUaW1pbmcxRXZlbnRPcmRlciA9IFsKKyAgICAgICAgICAg
ICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAg
ICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAg
ICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAg
ICAgICAgICAncmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAg
ICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVk
RXZlbnRTdGFydCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAg
ICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAor
ICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICBmdW5jdGlv
biB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CisgICAg
ICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsrKSB7
CisgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0g
PD0gdGltaW5nRW50cnlbZXZlbnRPcmRlcltpICsgMV1dLAorICAgICAgICAgICAgICAgICAgICAi
RXhwZWN0ZWQgIiArIGV2ZW50T3JkZXJbaV0gKyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsg
ZXZlbnRPcmRlcltpICsgMV0gKyAiLiIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAg
ICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVy
ID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMo
ZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIgZW50cmllcyA9
IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZW50cmllc1swXS5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICJFeHBlY3RlZCBlbnRyeVR5cGUgdG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5uYW1lLCBleHBlY3RlZFVybCk7
CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5zdGFydFRpbWUs
IDAsCisgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlOiAw
LiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZHVyYXRp
b24sIGVudHJpZXNbMF0ubG9hZEV2ZW50RW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4
cGVjdGVkIGR1cmF0aW9uIHRvIGJlIGVxdWFsIHRvIGxvYWRFdmVudEVuZC4iKTsKKyAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmluaXRpYXRvclR5cGUsICJuYXZp
Z2F0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBpbml0aWF0b3JUeXBl
IHRvIGJlOiBuYXZpZ2F0aW9uLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGVudHJpZXNbMF0ubmV4dEhvcFByb3RvY29sLCAiaHR0cC8xLjEiKTsKKyAgICAgICAgICAgICAg
ICAgICAgLy8gVGhpcyB0ZXN0IG1heSBmYWlsIHdoZW4gcmVzcG9uc2UgaXMgZnJvbSBjYWNoLiBE
aXNhYmxlIG9yIGNsZWFuIGNhY2ggYmVmb3JlCisgICAgICAgICAgICAgICAgICAgIC8vIHJ1bm5p
bmcgdGhpcyB0ZXN0LgorICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShlbnRyaWVzWzBd
LnRyYW5zZmVyU2l6ZSA+IGVudHJpZXNbMF0uZW5jb2RlZEJvZHlTaXplLAorICAgICAgICAgICAg
ICAgICAgICAgICAgIkV4cGVjdGVkIHRyYW5zZmVyU2l6ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5j
b2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbmNvZGVkQm9keVNpemUsIDU5NTUpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZGVjb2RlZEJvZHlTaXpl
LCA1OTU1KTsKKyAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRy
aWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjEpOworICAgICAgICAgICAgICAgICAgICAvLyBW
ZXJpZnkgaWYgdGhlIHJlcG9ydGVkIHRpbWluZyBpcyBub3QgdGhhdCBkaWZmZXJlbnQKKyAgICAg
ICAgICAgICAgICAgICAgLy8gZnJvbSB3aGF0IGlzIHJlcG9ydGVkIGJ5IE5hdmlnYXRpb24gVGlt
aW5nIDEuCisgICAgICAgICAgICAgICAgICAgIG5hdlRpbWluZzFFdmVudE9yZGVyLmZvckVhY2go
CisgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nW2V2ZW50XSAtCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9u
U3RhcnQgPiAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3Ro
YW4oZW50cmllc1swXVtldmVudF0sIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi
RXhwZWN0ZWQgIiArIGV2ZW50ICsgIiB0byBiZSBncmVhdGVyIHRoYW4gMCIpOworICAgICAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAg
ICAgICAgLy8gV2hlbiB1bmxvYWRFdmVudCBoYXBwZW5zCisgICAgICAgICAgICAgICAgICAgIGlm
IChlbnRyaWVzWzBdWyJ1bmxvYWRFdmVudFN0YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZl
bnRPcmRlcjIpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIC8v
IFdoZW4gYSBzZWN1cmUgdHJhbnNwb3J0IGlzIHVzZWQKKyAgICAgICAgICAgICAgICAgICAgaWYg
KGVudHJpZXNbMF1bInNlY3VyZUNvbm5lY3Rpb25TdGFydCJdICE9IDApIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5n
MkV2ZW50T3JkZXIzKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAg
ICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIu
b2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVy
Zm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxl
LiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CmluZGV4IDQ5OTk5ZDg5NDExMDQ5NzliMzI2
YTdmZmE2Yjg5MDE4NWE4ZmE2OGUuLjA1ZjIzMGI5ZmIwZmFiOGQ4ZDdjYjU4NWVjOTg1YzIwODEx
MTlmZDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykK
IERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgd2luZG93LnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSByZW1haW5zIGNvbnN0YW50IHdoZW4gYSBkb2N1
bWVudCBpcyByZXBsYWNlZCB1c2luZyBkb2N1bWVudC5vcGVuLgpAQCAtOSw2ICs4LDUgQEAgVGhl
IHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24KIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdl
ID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGlt
aW5nW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcg
MiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sCmluZGV4IGJjMDZlZDU4NDBhNzU1NWQx
ZTJhNjI1ODBjZjVhOTg4Y2E1OGE3MTguLmFhMTA5NzI0OGRkMTMzZTVlNjFiMTdjNmY5MmYxNDM3
NTc5YjU4OGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKQEAgLTgsNiArOCw4IEBACiAg
ICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgogICAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KICAgICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgICBzZXR1cCh7IHNp
bmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmli
dXRlcyA9IFsKICAgICAgICAgICAgICAgICAgICdjb25uZWN0RW5kJywKICAgICAgICAgICAgICAg
ICAgICdjb25uZWN0U3RhcnQnLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
cmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQt
ZXhwZWN0ZWQudHh0CmluZGV4IGE5N2M4NmJjYjRmNjdmNTI0YjFiY2UzODk4Y2U1ZWQzMDc0Nzhj
YmUuLjM1YTU2YTNmZTU3NzI5ODFiZGMyYmM1YWNlMDc5M2MxMDMxMjVmZDMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTEg
QEAKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIGZy
YW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8
IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKLUNPTlNPTEUgTUVTU0FH
RTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50
MS50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhIFBlcmZv
cm1hbmNlTmF2aWdhdGluZ1RpbWluZyBjb3JyZXNwb25kaW5nIHRvIGEgZGV0YWNoZWQgZG9jdW1l
bnQgY2FuJ3QgYWNjZXNzIGEgZGlmZmVyZW50IGRvY3VtZW50J3Mgc3RhdGUuCiAKIAogCi1IYXJu
ZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEudHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1p
bmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwKaW5kZXggYjkxMGY0
NTNkMTI5NTFkMDFjYjU4NDg5OTc2NmI2NGZlMDhlODM2Yy4uNTk3MmYyMGU5YmQ3ZmZkZjI3ZDMy
YjViMzBiNjM5MTNjZWVlZWQwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
cmVwbGFjZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1s
CkBAIC04LDYgKzgsOCBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAg
IHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgIHZhciBuYXZpZ2F0
aW9uX2ZyYW1lOwogICAgICAgICAgICAgdmFyIHBudDE7CiAgICAgICAgICAgICB2YXIgc3RlcCA9
IDE7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CmluZGV4IGI1Zjhi
ZWVmMzlmNjA5OTUyMzI0M2VjZTE5OWJkZGZiZDAxZjE2OTEuLjk3NzNkZGE1OWIzZmNhNmI4OGYz
NDY4OGRjNjg4MTRiMDc3ZDU3OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3Jl
bW92ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhw
ZWN0ZWQudHh0CkBAIC00LDUgKzQsNSBAQCBEZXNjcmlwdGlvbgogVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGF0IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgpJ3MgZGVmYXVsdCB2YWx1
ZSBpcyBuYXZpZ2F0ZQogCiAKLUZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudC50eXBlJykKK1BBU1MgTmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNj
ZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0
YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dAppbmRleCA2YzMxYWZk
MGIyOWIxMGU5Mzg4YjRmYzIxOTczY2UyYzZlMTRjYTIwLi4zNzdjZTk4NjgwNmE0OWYyODFjNjFl
YzE2YjBmMTEyMWNiMWRkZTMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9h
Y2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dApAQCAtMSwz
ICsxLDMgQEAKIAotRkFJTCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhp
c3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3Rz
IHdpdGggcmVhc29uYWJsZSB2YWx1ZXMuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2lu
c3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2lu
c3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAppbmRleCA3NzkwMDgxZDAxYzdi
ODI2MmM1MzRkMzk1MDg1NjkwZWJlMmRmZmU4Li5hZDUwYzZhODdkMmI0NjYyOTdkYzBmMmViY2Vm
OTJhMzc2NTViMDEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3Np
YmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNj
ZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sCkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIHRl
c3QoZnVuY3Rpb24oKSB7CiAgIHZhciBuYXZpZ2F0aW9uVGltaW5nMiA9IHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCduYXZpZ2F0aW9uJylbMF07Ci0gIGFzc2VydF90cnVlKG5h
dmlnYXRpb25UaW1pbmcyICE9PSB1bmRlZmluZWQpOworICBhc3NlcnRfbm90X2VxdWFscyhuYXZp
Z2F0aW9uVGltaW5nMiwgdW5kZWZpbmVkKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGlt
aW5nMi5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIik7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlv
blRpbWluZzIuc3RhcnRUaW1lLCAwKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5n
Mi5pbml0aWF0b3JUeXBlLCAibmF2aWdhdGlvbiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3Rh
bmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTE4NDg2MjkxNTAxYjVjYzRm
MTcxMDMwMTY1ZDk2ZTA0YzdhZmVjYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlw
dGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNh
biBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxl
OiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVudCIpCisKKworUEFTUyBQZXJmb3JtYW5j
ZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUg
ZGlmZmVyZW50IGFjY2Vzc29ycy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFu
Y2VfYWNjZXNzb3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5hOGZiZmI0YTMwNjI1NDI0ZThlODQyZWIyYjgwNjJkYTRlM2U4OTMwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwK
QEAgLTAsMCArMSw3OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBU
aW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdv
b2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVs
PSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNz
ZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2Ny
aXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8
cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBh
Y2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5k
b3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVudCIpPC9wPgorCisgICAgICAgIDxzY3JpcHQ+Cisg
ICAgICAgIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBl
Y3RlZFVybCA9ICJodHRwOi8vIiArIGhvc3RfaW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAg
ICAgICAgICAgIGhvc3RfaW5mby5IVFRQX1BPUlQgKyAiL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0
cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25u
ZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAn
ZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisg
ICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2Rv
bUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAg
ICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAg
ICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAg
ICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAg
ICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAg
ICAgICAgICAgJ25hbWUnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAg
ICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAg
ICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAg
ICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQn
LAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAg
ICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQn
LAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworCisgICAgICAgIGFzeW5j
X3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJm
b3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMSA9IHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMiA9
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIGluc3RhbmNlMyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUo
ZXhwZWN0ZWRVcmwpWzBdOworCisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIkV4cGVj
dGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5h
bWUoZXhwZWN0ZWRVcmwpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5h
dmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworCisgICAgICAgICAgICAgICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRy
aWJ1dGVzW2ldXSwgaW5zdGFuY2UyW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAg
ICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IG5hdlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGluc3RhbmNlMVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGlu
c3RhbmNlM1tuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAg
ICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7Cisg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFy
ZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4iKTsKKyAgICAg
ICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRlX2lmcmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTdmMzU2ZGYxMTZjOTI1NzI2Mjkw
ODNlMDkxMDgwNDZjNzkxMjc5NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBuYXZp
Z2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlmcmFtZSBVUkwgY2hhbmdlcworCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjMTQ0YmRhNDU0YmU4NjE4MGJiZmJhNTAz
YzRkMWRhOTQ1NzMzZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
ZV9pZnJhbWUuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgor
ICA8aGVhZD4KKyAgICA8bWV0YSBjaGFyc2V0PXV0Zi04PgorICAgIDx0aXRsZT5QZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcubmFtZSB1cGRhdGVkIGluIGlmcmFtZXM8L3RpdGxlPgorICAgIDxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgIDwv
aGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5jdGlv
biAodCkgeworICB2YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Cisg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaWZyKTsKKworICBpZnIuc3JjPSJyZXNvdXJjZXMv
YmxhbmtfcGFnZV9ncmVlbi5odG1sIjsKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7
CisgICAgaWZyLm9ubG9hZCA9IGZ1bmN0aW9uKCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIu
Y29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIiku
bGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3Nl
cnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS5uYW1lLCBpZnIuY29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmlu
ZygpLCAibmF2aWdhdGlvbiBuYW1lIG1hdGNoZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAg
ICAgYXNzZXJ0X3RydWUoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUuZW5kc1dpdGgoImJsYW5rX3BhZ2VfZ3JlZW4uaHRt
bCIpLCAibmF2aWdhdGlvbiBuYW1lIGlzIGJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpOworICAgICAg
cmVzb2x2ZSgpOworICAgIH0KKyAgfSk7CisKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZl
ID0+IHsgc2V0VGltZW91dChyZXNvbHZlLCAxMDApOyB9KTsKKyAgaWZyLnNyYyA9InJlc291cmNl
cy9ibGFua19wYWdlX3llbGxvdy5odG1sIjsKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZl
ID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxz
KGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAg
IGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUsIGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRv
U3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7
CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV95ZWxs
b3cuaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1lIGlzIGJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKTsK
KyAgICAgIHJlc29sdmUoKTsKKyAgICB9CisgIH0pOworfSwgIm5hdmlnYXRpb24ubmFtZSB1cGRh
dGVkIHdoZW4gaWZyYW1lIFVSTCBjaGFuZ2VzIik7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1
bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1l
bnQtZXhwZWN0ZWQudHh0CmluZGV4IDRiMjBlYzZmOWIyMDhjNzNkODVhOTQ0ZDg5YTFiN2I4ZDg0
MGVhOTAuLmVkYWE5Mjg4YTlhZmI2ZTJjY2NhMWM0MzdkNWRhY2E1OWZmYWFmYTkgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4
dApAQCAtMSw5ICsxLDcgQEAKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3Byb3BlcnR5XScpCiBEZXNjcmlw
dGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVu
Y2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hh
bmdlKS4KIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQot
CitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKaW5kZXggZjM5Y2EwNTc2OTU1OTk5ZWNhOGEwODMzMWU1
NWNjMjkyNTgxNmYzNi4uNzVlNmUxMTNiNmRiYTM2ODdkZjFjOGZkYmY5Yzk4M2E5ZmFlOGE2OSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKQEAgLTEz
LDYgKzEzLDggQEAKICAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGFsbCBvZiB0
aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSBhdHRy
aWJ1dGVzIHJlbWFpbiB1bmNoYW5nZWQgYWZ0ZXIgYW4gaW4gZG9jdW1lbnQgbmF2aWdhdGlvbiAo
VVJMIGZyYWdtZW50IGNoYW5nZSkuPC9wPgogCiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAgICAgICAgICB2YXIgbmF2VGlt
aW5nMkF0dHJpYnV0ZXMgPSBbCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAogICAgICAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQKaW5kZXggOWUyY2FhNjIwZjVh
ZGViOWRhZGE0YzgyZGQxZDY4MzdjY2E3ZjEyNS4uMmMwNDYzMGJhZTE1NmRhNzllMDUwMTdmM2Vi
YTU5YmNmYzlhN2FhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9u
X3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNyBAQAogZnJhbWUgIjwh
LS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFt
ZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9u
X2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBl
JykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKK2Zy
YW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIERlc2NyaXB0
aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB3aXRoIGEgZm9yd2FyZCBh
bmQgYmFjayBuYXZpZ2F0aW9uLgpAQCAtMTMsNiArMTQsNSBAQCBUaGlzIHRlc3QgcGFzc2VzIGlm
IGFsbCBvZiB0aGUgY2hlY2tzIHRvIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZQogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorUEFT
UyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCmluZGV4IGM0YjU3NTgxMDY5MTEwM2RiNjljNjEwYjll
YzY5NDI1MTEwZDc2MzUuLmQwMDQ1NDE1Yjg5YzQ1ZWQ5YTFhODg5ZThiZTBhYmM4MTIzMDkyZDUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1s
CkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAg
IHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9u
bG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzMGRjZTQ0ZDgz
MTEwMzdjYjVjNzljZTI5MTlmMzA2ZmI0MGE2YTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlIHRv
IGJlIG5hdmlnYXRlLgorCisKK1BBU1MgTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmVmYWVmMWVjMGJiYjg4ZTVmYjE1YzJhMzFmZDVmOTMzYzE2YTA5ZjUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbApAQCAt
MCwwICsxLDMyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAg
ICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGlt
aW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29n
bGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0i
aGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvI3NlYy1u
YXZpZ2F0aW9uLXRpbWluZy1pbnRlcmZhY2UiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+
CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAg
dmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAg
ICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXMoKVswXS50eXBlLCAibmF2
aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAg
ICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAg
ICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAg
ICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBb
Im5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAgICB9LCAiTmF2aWdhdGlvbiB0eXBlIHRvIGJl
IG5hdmlnYXRlLiIpOworICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9k
eT4KKyAgICAgICAgPGgxPgorICAgICAgICAgICAgRGVzY3JpcHRpb248L2gxPgorICAgICAgICA8
cD4KKyAgICAgICAgICAgIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBu
YXZpZ2F0ZS48L3A+CisKKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CmluZGV4IDcxYzQ3ZTViOGRm
N2E1MWVlOGViZGU2OThhZTg1NmVhNjcyM2E1ODAuLmE0ZDZiZGE2ZDQ0OWYxYWUxZjZiYjU4ZGM1
ODI2NWUzNmVhYWFlN2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9yZWxvYWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9yZWxvYWQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZU
aW1pbmcudHlwZScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1
ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
Lih0eXBlL3VubG9hZEV2ZW50RW5kL3VubG9hZEV2ZW50U3RhcnQpIHdpdGggYSByZWxvYWRlZCBu
YXZpZ2F0aW9uLgpAQCAtMTAsNiArOSw1IEBAIFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLnVubG9hZEV2ZW50U3RhcnQgPiAwIGFmdGVyCiBUaGUg
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS51bmxvYWRF
dmVudEVuZCA+IDAgYWZ0ZXIgcmVsb2FkCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3Nh
Z2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
ZXdOYXZUaW1pbmcudHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCmluZGV4IDc0Yjg1YzlkYmI1
ZTAzMjY2YzBiYTAxNDVhZDQ1ZDY3YTAyNWZkMGMuLjBmMDNmMDdjNTdjOWMxYWMzYzg2ODc0MWEy
M2Q5ZjJlNmViYjJiMmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9yZWxvYWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2Fk
Lmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAg
ICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgdmFyIHJl
bG9hZF9mcmFtZTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5f
eHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmFkMzg5ODc2MWI4NzE1MGQwYTc2NWFiMzFjMmU2MTk3NmQ5MjE2MTUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVy
X2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQmxv
Y2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly93d3cubG9jYWxob3N0Ojg4MDAvY29t
bW9uL3JlZGlyZWN0LW9wdC1pbi5weT9sb2NhdGlvbj1odHRwOi8vbG9jYWxob3N0Ojg4MDAvbmF2
aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbAorRGVzY3JpcHRp
b24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5k
IHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
LnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSBy
ZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4gdGhlIGZpbmFsIGRvY3VtZW50IGlzIHRoZSBzYW1lIGFz
IHRoZSBvcmlnaW5hbCBvcmlnaW4uCisKKworCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVz
c2FnZSA9IG51bGwKKworTk9UUlVOIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxf
b3JpZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFs
X29yaWdpbmFsX29yaWdpbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkZWZhMjAyNTAwYTQ0OTcxNmVhYWI1
ZDJkNzU2MTZhYzQ3MzA1YTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRp
cmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sCkBAIC0wLDAgKzEs
NTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRh
IGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBX
UFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJl
Zj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBo
cmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0i
L2NvbW1vbi91dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCisgICAgICAgICAgICBmdW5jdGlvbiBv
bmxvYWRfdGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY29uc3QgZnJhbWVf
cGVyZm9ybWFuY2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29u
dGVudFdpbmRvdy5wZXJmb3JtYW5jZTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZy
YW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlLAor
ICAgICAgICAgICAgICAgICAgICAibmF2aWdhdGUiLAorICAgICAgICAgICAgICAgICAgICAiRXhw
ZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLnJlZGlyZWN0Q291bnQsIDAsCisgICAgICAgICAgICAgICAgICAgICJFeHBlY3Rl
ZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVk
aXJlY3RTdGFydCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0U3Rh
cnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdEVuZCwgMCwK
KyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7Cisg
ICAgICAgICAgICAgICAgZG9uZSgpOworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4K
KworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4K
KyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cu
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291
bnQgYW5kIHRoZQorICAgICAgICAgICB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9y
aWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4gdGhlIGZpbmFsCisgICAg
ICAgICAgIGRvY3VtZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uPC9wPgor
CisgICAgICAgIDxpZnJhbWUgaWQ9ImZyYW1lQ29udGV4dCIgc3JjPSIiIHN0eWxlPSJ3aWR0aDog
MjUwcHg7IGhlaWdodDogMjUwcHg7Ij48L2lmcmFtZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAg
ICAgICAgIC8vIGNvbWJpbmUgdGhlIHBhZ2Ugb3JpZ2luIGFuZCByZWRpcmVjdCBvcmlnaW4gaW50
byB0aGUgSUZSQU1FJ3Mgc3JjIFVSTAorICAgICAgICAgICAgY29uc3QgZGVzdFVybF9maXJzdCA9
IG1ha2VfYWJzb2x1dGVfdXJsKHtzdWJkb21haW46ICJ3d3ciLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogIi9jb21tb24vcmVkaXJlY3Qtb3B0LWlu
LnB5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXJ5
OiAibG9jYXRpb249IiArIG1ha2VfYWJzb2x1dGVfdXJsKAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BhdGg6ICIvbmF2aWdhdGlvbi10
aW1pbmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbCJ9KQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBjb25zdCBkZXN0
VXJsID0gbWFrZV9hYnNvbHV0ZV91cmwoeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcGF0aDogIi9jb21tb24vcmVkaXJlY3QucHkiLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgZGVz
dFVybF9maXJzdH0pOworICAgICAgICAgICAgbGV0IGZyYW1lQ29udGV4dCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKTsKKyAgICAgICAgICAgIGZyYW1lQ29udGV4dC5v
bmxvYWQgPSBvbmxvYWRfdGVzdDsKKyAgICAgICAgICAgIGZyYW1lQ29udGV4dC5zcmMgPSBkZXN0
VXJsOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlh
bF9vcHRfaW4tZXhwZWN0ZWQudHh0CmluZGV4IDcxZWQ0N2ZlMzVhMTQyZTQwZmY0NzkwNWY3Nzg4
YTFkYzVhY2EwZmIuLjRlNzlhN2ZkYmEwODYxNmY5NDUwOGRiZmZlODJjNTY5MDRjNGJiZDMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9v
cHRfaW4tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hz
ZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CkBAIC02LDYgKzYsNSBAQCBUaGlzIHRl
c3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZwogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZB
SUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLnR5cGUnKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRp
cmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwKaW5kZXggYzBkZDI0OTU0
NWE2NDBlYzBjZGQ3NTliMjExNGFiNzI1YTYwOTAzOS4uMGZlYjNiZmE3ZjFjMDEzOGU0YzlmOWUz
ZmQ0ZDM4M2U1ZWY2NTg1ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbApAQCAtOSwxMyArOSw3IEBACiAg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vdXRpbHMuanMiPjwvc2NyaXB0Pgog
ICAgICAgICA8c2NyaXB0PgotCi0gICAgICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVu
dE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChs
ZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgewotICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmdFbnRyeVtldmVudE9yZGVyW2ldXSA8IHRpbWluZ0Vu
dHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3Rl
ZCAiICsgZXZlbnRPcmRlcltpXSArICIgdG8gYmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9y
ZGVyW2kgKyAxXSArICIuIik7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQorICAg
ICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVu
Y3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9ub25lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNzFhZTk0MDQxYWFhYzczOTQzZDIxYzJi
NDIzNThmNzk3OWE0ZDJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfbm9uZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlz
IHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYXR0cmlidXRl
LCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQgYW5kIHJlZGlyZWN0RW5kIGF0dHJpYnV0ZXMgb24g
YSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLgorCisKK1BBU1MgTmFpdmF0aW9uIHdpdGhvdXQg
cmVkaXJlY3RzLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTc0Mzdl
MWE1ZWYyYjYxYWU2NTc2MmJmYTM1MTYzMGViNDcxNGNkZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYt
OCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAg
ICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cu
Z29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3
dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxo
MT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0
aGUgdmFsdWUgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhdHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RT
dGFydCBhbmQgcmVkaXJlY3RFbmQgYXR0cmlidXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmln
YXRpb24uPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5j
dGlvbiAodCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkg
eworICAgICAgICAgICAgICAgICAgICB2YXIgbmF2VGltaW5nID0gcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdENvdW50LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RDb3Vu
dCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWlu
Zy5yZWRpcmVjdFN0YXJ0LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOwor
ICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdEVuZCwg
MCwgIkV4cGVjdGVkIHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAg
IG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7Cisg
ICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0sICJOYWl2
YXRpb24gd2l0aG91dCByZWRpcmVjdHMuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4dAppbmRleCAwNGEyNDhjZGU1MDFkMjY4OTRiMjIw
N2ZlOWFmNWY1NTBkMjBjYmM3Li40ZmIxNWNhZmNlN2U2MTcyZWQyZWY5YjlmMTNjODQ3MWY1OTYz
ZTk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQKQEAg
LTEsMTAgKzEsOSBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2VudHJ5LnR5cGUnKQorQ09OU09M
RSBNRVNTQUdFOiBFcnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0YXJ0VGltZSB0byBiZSBu
byBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIERl
c2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93
LnBlcmZvcm1hbmNlLnJlZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZvciBhIHNhbWUtb3JpZ2luIHNlcnZlciBzaWRl
IHJlZGlyZWN0IG5hdmlnYXRpb24uCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2Fn
ZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25h
dmlnYXRpb25fZW50cnkudHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgRXJy
b3I6IGFzc2VydF90cnVlOiBFeHBlY3RlZCBzdGFydFRpbWUgdG8gYmUgbm8gZ3JlYXRlciB0aGFu
IHJlZGlyZWN0U3RhcnQuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfc2VydmVyLmh0bWwKaW5kZXggMWQ3ZjZjOTI4Y2U2M2M5NGVkYzE0OTFkMjg4M2M4NzMzMWUz
ODcyMi4uOWVjMjk5MmJlZjU4ZWM2ZTAzMDRmYjE1Mjg4MTQwNTkwNDFmMzE0OCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKQEAgLTksNiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KIAogICAgICAg
ICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAog
ICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0
aW1pbmdFbnRyeSkgewogICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZlbnRP
cmRlci5sZW5ndGggLSAxOyBpKyspIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZl
ci1leHBlY3RlZC50eHQKaW5kZXggYTA5MTZjNDU4YzYyODJkMzFkNTM4NDhkNzlmNTM3NGNlZjQy
NzVjNi4uZTgxY2NlZGE5ZWJmM2VkNzU4MzAzNzI2MTU5OWZkOTkxOTNkMWM4ZCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBA
IFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVz
c2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J3BlcmZvcm1hbmNlTmFtZXNwYWNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50
eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X3hzZXJ2ZXIuaHRtbAppbmRleCAwNmM5YjdmM2I2NzhhMjI3NTFhMWU4ZTFhNTcwMjgyMTZhYjIx
ODc5Li5kOGFjYzgwNTRkODdhOTcyZDAwNTk2ZDk3OTQ4NTg0N2NmNmNmNGU1IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfeHNlcnZlci5odG1sCkBAIC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
IDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAg
ICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzY4
YzUwMDQ2NWQ3N2I1ZDFhOTgzYmM0NjZiZTFhZGU0N2ZlOTgzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2lu
ZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuCisKKworRkFJTCBFYWNoIHdp
bmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLiBhc3NlcnRfZXF1YWxzOiBP
bmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4gZXhwZWN0ZWQgMSBidXQgZ290IDAK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3
N2FiNmJhZTEwMWI3MDRkMTI2N2U4YjAzNDE2MDExZjI4ZDY3NgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwKQEAgLTAsMCArMSw3NiBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hh
cnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwv
dGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJo
dHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9
Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5Pgor
ICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgZWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS48
L3A+CisgICAgICAgIDxpZnJhbWUgaWQ9ImZyYW1lQ29udGV4dCIgc3JjPSJyZXNvdXJjZXMvYmxh
bmtfcGFnZV9ncmVlbi5odG1sIiBzdHlsZT0iZGlzcGxheTpub25lOyI7PjwvaWZyYW1lPgorICAg
ICAgICA8c2NyaXB0PgorCisgICAgICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBb
CisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgICAgICdjb25uZWN0
U3RhcnQnLAorICAgICAgICAgICAgICAgICdkZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAg
ICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVu
dEVuZCcsCisgICAgICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAg
ICAgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgICAgICdkb21haW5M
b29rdXBFbmQnLAorICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAg
ICAgICAgICAgJ2R1cmF0aW9uJywKKyAgICAgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywK
KyAgICAgICAgICAgICAgICAnZW50cnlUeXBlJywKKyAgICAgICAgICAgICAgICAnZmV0Y2hTdGFy
dCcsCisgICAgICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgICAgICds
b2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAg
ICAgICAgICAgJ25hbWUnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAg
ICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0
JywKKyAgICAgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVz
cG9uc2VFbmQnLAorICAgICAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAg
ICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICAgICAndHJhbnNmZXJT
aXplJywKKyAgICAgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAgICAgJ3VubG9hZEV2
ZW50RW5kJywKKyAgICAgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAg
ICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICAgICAgXTsKKworICAgICAgICAgICAgZnVuY3Rp
b24gbm90X3NhbWVfaW5zdGFuY2UoaW5zdGFuY2UxLCBpbnN0YW5jZTIsIGF0dHJpYnV0ZXMpIHsK
KyAgICAgICAgICAgICAgICBmb3IgKHZhciBpIGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAg
ICAgICAgICAgaWYgKGluc3RhbmNlMVthdHRyaWJ1dGVzW2ldXSAhPSBpbnN0YW5jZTJbYXR0cmli
dXRlc1tpXV0pCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAg
dmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAg
ICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAiT25seSBvbmUgbmF2IHRpbWluZyBpbnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAg
ICAgICAgICAgICAgICB2YXIgbWFpbl9mcmFtZV9pbnN0YW5jZSA9IGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIg
aWZyYW1lX2luc3RhbmNlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIp
LmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
WzBdOworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUobm90X3NhbWVfaW5zdGFu
Y2UobWFpbl9mcmFtZV9pbnN0YW5jZSwgaWZyYW1lX2luc3RhbmNlLCBuYXZUaW1pbmcyQXR0cmli
dXRlcyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlR3byBuYXYgdGltaW5nIGluc3Rh
bmNlcyBhcmUgbm90IHRoZSBzYW1lIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICAg
ICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25l
KCk7CisgICAgICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAg
ICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOwor
CisgICAgICAgICAgICB9LCAiRWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBp
bnN0YW5jZS4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdh
dGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjBlYjFmNWZiMjQ0MjAwYzNiZjUwYTVlYWQ4
ODZkNzg0Y2NhYjcyOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlv
bgorCitOYXZpZ2F0aW9uIHdpbGwgcXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1Mg
bmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2
aWdhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0ZmIy
YWZmOGVhYjc0ZTU5YzVhODRmYzJiY2Y0ODdmMTIyZWM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvcG8tbmF2aWdhdGlvbi5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgor
PG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdh
dGlvbjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IG5hdmlnYXRpb248L2gxPgorPHA+CitO
YXZpZ2F0aW9uIHdpbGwgPGEgaHJlZj0iaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNl
LXRpbWVsaW5lLyNkZm4tcXVldWUtYS1wZXJmb3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1h
bmNlRW50cnk8L2E+LgorPC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFz
eW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBmdW5jdGlvbiBjaGVja0VudHJ5KHBlcykgewor
ICAgICAgYXNzZXJ0X2VxdWFscyhwZXMubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0
aW1pbmcgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMocGVzWzBdLmVudHJ5VHlwZSwgIm5h
dmlnYXRpb24iLCAiZW50cnlUeXBlIGlzIFwibmF2aWdhdGlvblwiIik7CisgICAgICBhc3NlcnRf
ZXF1YWxzKHBlc1swXS5uYW1lLCB3aW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hbWUgaXMg
dGhlIGFkZHJlc3Mgb2YgdGhlIGRvY3VtZW50Iik7CisgICAgfQorICAgIHZhciBvYnNlcnZlciA9
IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAo
ZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRy
aWVzKCkpOworICAgICAgICAgIGNoZWNrRW50cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKSk7CisgICAgICAgICAgY2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmll
c0J5TmFtZSh3aW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSkpOworICAgICAgICAgIG9ic2VydmVy
LmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7
CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKyAg
fSwgIm5hdmlnYXRpb24gZW50cnkgaXMgb2JzZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNl
cy93ZWJwZXJmdGVzdGhhcm5lc3MuanMKaW5kZXggM2VmYjUyNzgzZjFlNWRjYjBkNDJhYWQxMWFl
YzJhOWU0NzI1N2QzMy4uMGMyN2MyZWUzMDdmNGI4MDk5YTZiNGM1YjA0OTdiYWY1MGI2MTEwNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcwpAQCAtNDIsMjUgKzQyLDI1IEBAIGZ1
bmN0aW9uIHRlc3RfbmFtZXNwYWNlKGNoaWxkX25hbWUsIHNraXBfcm9vdCkKIHsKICAgICBpZiAo
c2tpcF9yb290ID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVy
Zm9ybWFuY2UgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3Nl
cnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cp
OworICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uICgpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9y
bWFuY2VOYW1lc3BhY2UsIHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnKTsKICAgICB9CiAKICAgICBp
ZiAoY2hpbGRfbmFtZSAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgIHZhciBtc2cyID0gJ3dpbmRv
dy5wZXJmb3JtYW5jZS4nICsgY2hpbGRfbmFtZSArICcgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdw
X3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxk
X25hbWVdICE9PSB1bmRlZmluZWQsIG1zZzIpOyB9LCBtc2cyKTsKKyAgICAgICAgd3BfdGVzdChm
dW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRf
bmFtZV0sIHVuZGVmaW5lZCwgbXNnMik7IH0sIG1zZzIpOwogICAgIH0KIH0KIAogZnVuY3Rpb24g
dGVzdF9hdHRyaWJ1dGVfZXhpc3RzKHBhcmVudF9uYW1lLCBhdHRyaWJ1dGVfbmFtZSwgcHJvcGVy
dGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25h
bWUgKyAnLicgKyBhdHRyaWJ1dGVfbmFtZSArICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3Qo
ZnVuY3Rpb24oKSB7IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1l
XVthdHRyaWJ1dGVfbmFtZV0gIT09IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVz
KTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5j
ZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bYXR0cmlidXRlX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7
IH0sIG1zZywgcHJvcGVydGllcyk7CiB9CiAKIGZ1bmN0aW9uIHRlc3RfZW51bShwYXJlbnRfbmFt
ZSwgZW51bV9uYW1lLCB2YWx1ZSwgcHJvcGVydGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRv
dy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBlbnVtX25hbWUgKyAnIGlzIGRl
ZmluZWQuJzsKLSAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5j
ZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9
LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3Rf
ZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB1bmRl
ZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CiAKICAgICBtc2cgPSAnd2luZG93LnBl
cmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSArICcuJyArIGVudW1fbmFtZSArICcgPSAnICsgdmFs
dWU7CiAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZU5h
bWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9uYW1lXSwgdmFsdWUsIG1zZyk7IH0sIG1zZywgcHJv
cGVydGllcyk7CkBAIC0xMjIsNSArMTIyLDUgQEAgZnVuY3Rpb24gdGVzdF9ncmVhdGVyX29yX2Vx
dWFscyh2YWx1ZSwgZ3JlYXRlcl90aGFuLCBtc2csIHByb3BlcnRpZXMpCiAKIGZ1bmN0aW9uIHRl
c3Rfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAg
d3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNn
KTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRf
bm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1YWxzLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwog
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMTA4ZDJlODMzNjRhZDE0ZmRmMmEzMDRmN2Q1NDgyODc4
MGQ5ZWEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1y
ZXVzZS5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRo
YXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZhbHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2Vk
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mNTJhMjU5ZWNkNDI1YzIxMmQ4OWViMTE0OTgxZDRmMTJlODBmMzA1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1s
CkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRh
IGNoYXJzZXQ9InV0Zi04IiAvPgorPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIHNlY3VyZWNvbm5l
Y3Rpb25zdGFydCByZXVzZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3Jl
cG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3Qg
dGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgdmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVz
ZWQiKTsKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1bmNfZG9u
ZShlID0+IHsKKyAgYXNzZXJ0X2VxdWFscyhlLmRhdGEsICJQQVNTIik7Cit9KSk7Cis8L3Njcmlw
dD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvc2VjdXJlLWNvbm5lY3Rpb24taW50ZXJpbS5odG1s
Ij4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5o
dHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJv
Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4MjIwNGQwNjUxNjY5NTdhYTkwMDk4OWNlYzdkYWNj
YWNkZTM4NDg2Li41MTgyNzU4M2FkMzdlMWUxMmMxYWJmNWYyMWM4Y2U2MjUwZTMxMDBiIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBz
LWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUgQEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0
IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBoYXMgYSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRl
c3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitG
QUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dy
ZWF0ZXJfdGhhbjogc2VjdXJlQ29ubmVjdGlvblN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEg
bnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBnb3QgMAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBv
cnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25h
dmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYy
ZDRjMmYzODYzOWM0MWEyNWZjNTAuLmQyZWE5NTA0NzZkOTFiZTU2MDQ2ZDAzM2QxZmNkNjYxZDQ3
OTgwZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCi1GQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFp
bnMgJ25hdmlnYXRpb24nLiBhc3NlcnRfdHJ1ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICdu
YXZpZ2F0aW9uJyBpbiBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1Mgc3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAn
bmF2aWdhdGlvbicuCitQQVNTICduYXZpZ2F0aW9uJyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZh
YmxlLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndv
cmtlci1leHBlY3RlZC50eHQKaW5kZXggNTc5NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQx
YTI1ZmM1MC4uMzQzODM1YTQyODQ1M2UwYjFjZjY1ZDg0ZGI4MzNmOTFhYmM4MzYxOCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVj
dGVkLnR4dApAQCAtMSwzICsxLDYgQEAKIAotRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRh
aW5zICduYXZpZ2F0aW9uJy4gYXNzZXJ0X3RydWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAn
bmF2aWdhdGlvbicgaW4gUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9
IG51bGwKKworUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4K
K1RJTUVPVVQgJ25hdmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3Qg
dGltZWQgb3V0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYmU5YTM4NGE1YmIzNzAwNGU4ZjcwNDI4NWIzNTJlZWFiNDkxM2NlNQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
OCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNp
emUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVjb2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBj
b3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQgaW4gdGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJ
TCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9N
Q29udGVudExvYWRlZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJl
ciBidXQgZ290IGEgInVuZGVmaW5lZCIKK0ZBSUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhh
dmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9ubG9hZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNj
ciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9h
ZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjdjYzE4NDkxZDYyMDI0ZjFkNGZhM2QyMGM1MTczYjMxMzI2OWIz
ZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKQEAg
LTAsMCArMSw0OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAg
ICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1h
bmNlLm5hdmlnYXRpb24gYXR0cmlidXRlczwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0
aG9yIiB0aXRsZT0iTW96aWxsYSIgaHJlZj0iaHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZp
Z2F0aW9uLXRpbWluZy0yLyNwcm9jZXNzaW5nLW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0IHNyYz0iL2NvbW1vbi9wZXJmb3JtYW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3Jp
cHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlw
dGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJT
aXplLCBlbmNvZGVkQm9keVNpemUgYW5kIGRlY29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUg
Y29ycmVjdCB2YWx1ZXMgd2hlbiBjaGVja2VkIGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKwor
ICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAg
ICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQu
YWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkg
PT4geworICAgICAgICAgICAgICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlT
aXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJf
dGhhbihlbnRyeS5kZWNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAg
ICAgIH0pKTsKKyAgICAgICAgICAgIH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBh
IHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCIpOworCisgICAgICAgICAgICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCB0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAg
ICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihl
bnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7
CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJv
ZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBf
ZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0g
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2Zl
clNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJv
ZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsK
KyAgICAgICAgICAgICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEg
cHJvcGVyIHZhbHVlIGR1cmluZyBhIHRhc2sgYWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAg
ICAgfSkpOworICAgICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEg
cHJvcGVyIHZhbHVlIGR1cmluZyBvbmxvYWQiKTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdp
bi1jaGVjay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVj
ay1leHBlY3RlZC50eHQKaW5kZXggZGE1MjYwYTIyM2QyMmFkMWFjNGQ1ZDI5NzI2YzRhZTI3M2Vi
MWIyOC4uM2ZlZWFkMWZkZTcyMDMzNzM2ZGVmMWYwNGU1YjQ3MTA5OGIwZDM4YSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtNCwx
NiArNCwxNiBAQCBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiB3aW5kb3cu
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aQogCiAKIAotRkFJTCBSZWRpcmVjdCBj
aGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4g
d2l0aCBmdWxsIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3Qg
Y2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRp
cmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVu
dCBjcm9zcyBvcmlnaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBl
JykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJl
dmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHBy
ZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBw
cmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5v
IHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlh
bCBUQU8gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50
cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiBy
ZWRpcmVjdCB3aXRoIFRBTyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICdlbnRyeS50eXBlJykiCitQQVNTIFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFs
IFRBTyBvcHQtaW4KK1BBU1MgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BB
U1MgU2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFT
UyBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFT
UyBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQg
c2FtZSBvcmlnaW4KK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4g
cHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2
aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3Vz
IGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRv
Y3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1Mg
Tm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8K
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODlmYWUxZGIwZDliN2FmZDIwMjczN2UzNDc1NGI0ZTg5MzI5OGQ0OQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwKQEAgLTAsMCArMSw0IEBACitzcGVjOiBodHRwczov
L3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvCitzdWdnZXN0ZWRfcmV2aWV3ZXJz
OgorICAtIHBsZWhlZ2FyCisgIC0gaWdyaWdvcmlrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZl
cmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0
ZXItdGltZW91dC5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDhiM2UzMjMxNDY1ODU3Y2YyNDhlNGFjZThl
ZjU3NDQ2OWExNDg2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1h
ZnRlci10aW1lb3V0LmFueS5qcwpAQCAtMCwwICsxLDExIEBACithc3luY190ZXN0KHQgPT4gewor
ICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsKKyAgdC5zdGVwX3RpbWVvdXQoKCkgPT4geworICAg
IC8vIEFmdGVyIGEgdGltZW91dCwgUGVyZm9ybWFuY2VPYnNlcnZlciBzaG91bGQgc3RpbGwgcmVj
ZWl2ZSBlbnRyeSBpZiB1c2luZyB0aGUgYnVmZmVyZWQgZmxhZy4KKyAgICBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcih0LnN0ZXBfZnVuY19kb25lKGxpc3QgPT4geworICAgICAgY29uc3QgZW50cmll
cyA9IGxpc3QuZ2V0RW50cmllcygpOworICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0
aCwgMSwgJ1RoZXJlIHNob3VsZCBiZSAxIG1hcmsgZW50cnkuJyk7CisgICAgICBhc3NlcnRfZXF1
YWxzKGVudHJpZXNbMF0uZW50cnlUeXBlLCAnbWFyaycpOworICAgIH0pKS5vYnNlcnZlKHt0eXBl
OiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgIH0sIDEwMCk7Cit9LCAnUGVyZm9ybWFuY2VP
YnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcgc2VlcyBlbnRyeSBhZnRlciB0aW1lb3V0Jyk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMWRjMzljMTI4YWQ1
NWMxM2VlZjY2NTgzYTY4ODg2MjJmODZiZjYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9i
dWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qcwpAQCAtMCwwICsxLDE1IEBACithc3luY190ZXN0
KCB0PT4geworICBmb3IgKGxldCBpID0gMDsgaSA8IDUwOyBpKyspCisgICAgcGVyZm9ybWFuY2Uu
bWFyaygnZm9vJyArIGkpOworICBsZXQgbWFya3NDcmVhdGVkID0gNTA7CisgIGxldCBtYXJrc1Jl
Y2VpdmVkID0gMDsKKyAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgbWFy
a3NSZWNlaXZlZCArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgaWYgKG1hcmtzQ3Jl
YXRlZCA8IDEwMCkgeworICAgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyArIG1hcmtzQ3JlYXRl
ZCk7CisgICAgICBtYXJrc0NyZWF0ZWQrKzsKKyAgICB9CisgICAgaWYgKG1hcmtzUmVjZWl2ZWQg
PT0gMTAwKQorICAgICAgdC5kb25lKCk7CisgIH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVm
ZmVyZWQ6IHRydWV9KTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxh
ZyBzaG91bGQgc2VlIHBhc3QgYW5kIGZ1dHVyZSBlbnRyaWVzLicpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFs
aWQtZW50cmllcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTY5MTkwODE5ZjUzZWI0NTM3ZGEw
MTljOTBjYzMzYmQwZGEzZDhkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFs
aWQtZW50cmllcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1MgR2V0IGludmFs
aWQgZW50cmllcyBmcm9tIHdvcmtlciBhbmQgd2luZG93LgorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjMzZDY1ODllMjc1ZTI2NTE4MGUwNTcxY2EzMTAzZGJmOWFhMTc5YjgK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbApAQCAt
MCwwICsxLDI3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgcGVyZm9ybWFuY2UubWFyaygn
d2luZG93TWFyaycpOworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMvd29y
a2VyLWludmFsaWQtZW50cmllcy5qcyIpOworICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24o
ZXZlbnQpIHsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGFbJ2ludmFsaWQnXSwgMCwgJ1Ro
ZSB3b3JrZXIgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQuZGF0YVsnbWFyayddLCAxLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMSBtYXJrIGVu
dHJ5LicpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWVhc3VyZSddLCAwLCAnVGhl
IHdvcmtlciBtdXN0IGhhdmUgMCBtZWFzdXJlIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFs
cyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLCAwLAorICAg
ICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2Vy
dF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwgMSwK
KyAgICAgICdUaGUgd2luZG93IG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0
X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoLCAw
LAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAgbWVhc3VyZSBlbnRyaWVzLicpCisgICAg
dC5kb25lKCk7CisgIH0KK30sICdHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3
aW5kb3cuJyk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvaWRsaGFybmVzcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjMyZWZlYmU5OGZmZDQ3MmVlMTAxMDAyN2ZmOTY2YTFlZjkwN2YxN2QKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIE1F
VEE6IGdsb2JhbD13aW5kb3csd29ya2VyCisvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9XZWJJ
RExQYXJzZXIuanMKKy8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL2lkbGhhcm5lc3MuanMKKwor
Ly8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLworCisndXNlIHN0
cmljdCc7CisKK2lkbF90ZXN0KAorICBbJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJ10sCisgIFsnaHIt
dGltZScsICdkb20nXSwKKyAgYXN5bmMgaWRsX2FycmF5ID0+IHsKKyAgICBpZGxfYXJyYXkuYWRk
X29iamVjdHMoeworICAgICAgUGVyZm9ybWFuY2U6IFsncGVyZm9ybWFuY2UnXSwKKyAgICAgIFBl
cmZvcm1hbmNlT2JzZXJ2ZXI6IFsnb2JzZXJ2ZXInXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2
ZXJFbnRyeUxpc3Q6IFsnZW50cnlMaXN0J10sCisgICAgfSk7CisKKyAgICBzZWxmLmVudHJ5TGlz
dCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgIHNlbGYu
b2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihyZXNvbHZlKTsKKyAgICAgIG9ic2Vy
dmVyLm9ic2VydmUoeyBlbnRyeVR5cGVzOiBbJ21hcmsnXSB9KTsKKyAgICAgIHBlcmZvcm1hbmNl
Lm1hcmsoJ3Rlc3QnKTsKKyAgICB9KTsKKyAgfQorKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVs
dGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1i
dWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWRkNDRmYjE4ZmJkYjlj
M2MzMmY0NTM4ZDJlZjdlYzJjYWM0NzMwMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVs
dGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzCkBAIC0wLDAgKzEsMzIgQEAKK3By
b21pc2VfdGVzdCgoKSA9PiB7CisgIC8vIFRoZSBmaXJzdCBwcm9taXNlIHdhaXRzIGZvciBvbmUg
YnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJv
bWlzZTEgPSBuZXcgUHJvbWlzZShyZXNvbHZlMSA9PiB7CisgICAgbGV0IG51bU9ic2VydmVkMSA9
IDA7CisgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKGVudHJ5TGlzdCwgb2JzKSA9PiB7Cisg
ICAgICAvLyBUaGlzIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgaXMgY29uc3RydWN0ZWQgYWZ0ZXIg
YSByZWd1bGFyIG9ic2VydmVyIGRldGVjdHMgYSBtYXJrLgorICAgICAgbmV3IFBlcmZvcm1hbmNl
T2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAgIG51bU9ic2VydmVkMSArPSBsaXN0LmdldEVudHJp
ZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChudW1PYnNlcnZlZDEgPT0gMykKKyAgICAgICAgICBy
ZXNvbHZlMSgpOworICAgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1
ZX0pOworICAgICAgb2JzLmRpc2Nvbm5lY3QoKTsKKyAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVz
OiBbJ21hcmsnXX0pOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB9KTsKKyAgLy8g
VGhlIHNlY29uZCBwcm9taXNlIHdhaXRzIGZvciBhbm90aGVyIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2
ZXIgdG8gcmVjZWl2ZSAzIGVudHJpZXMuCisgIGNvbnN0IHByb21pc2UyID0gbmV3IFByb21pc2Uo
cmVzb2x2ZTIgPT4geworICAgIHN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgICBsZXQgbnVtT2Jz
ZXJ2ZWQyID0gMDsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBjb25z
dHJ1Y3RlZCBhZnRlciBhIGRlbGF5IG9mIDEwMG1zLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIobGlzdCA9PiB7CisgICAgICAgIG51bU9ic2VydmVkMiArPSBsaXN0LmdldEVudHJpZXMo
KS5sZW5ndGg7CisgICAgICAgIGlmIChudW1PYnNlcnZlZDIgPT0gMykKKyAgICAgICAgICByZXNv
bHZlMigpOworICAgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0p
OworICAgIH0sIDEwMCk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyk7CisgIH0pOworICBw
ZXJmb3JtYW5jZS5tYXJrKCdtZW93Jyk7CisgIC8vIFBhc3MgaWYgYW5kIG9ubHkgaWYgYm90aCBi
dWZmZXJlZCBvYnNlcnZlcnMgcmVjZWl2ZWQgYWxsIDMgbWFyayBlbnRyaWVzLgorICByZXR1cm4g
UHJvbWlzZS5hbGwoW3Byb21pc2UxLCBwcm9taXNlMl0pOworfSwgJ011bHRpcGxlIFBlcmZvcm1h
bmNlT2JzZXJ2ZXJzIHdpdGggYnVmZmVyZWQgZmxhZyBzZWUgYWxsIGVudHJpZXMnKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNs
b25hYmxlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTQyY2Y3YzRhYWNmMDI5MTY2NWE4ZjQ5
NzY1YWRkODg1ZWJjNDJkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0IGEgcG9zdE1l
c3NhZ2Ugb2YgYSBwZXJmb3JtYW5jZSBlbnRyeSBmYWlscworCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L25vdC1jbG9uYWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5kNjUxNzc2ZTVmNGI5NDUzMjhlOWRlMjY1MWI4YTU5ZjExYjUzNDI2Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbApAQCAtMCwwICsxLDEwIEBACis8IWRvY3R5
cGUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQ+CisgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IHRoYXQgYSBwb3N0TWVz
c2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZhaWxzIik7CisgIGFkZEV2ZW50TGlzdGVuZXIo
Im1lc3NhZ2UiLCB0LnN0ZXBfZnVuY19kb25lKGUgPT4geworICAgIGFzc2VydF9lcXVhbHMoZS5k
YXRhLCAiUEFTUyIpOworICB9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMv
cG9zdG1lc3NhZ2UtZW50cnkuaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29i
c2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQt
ZmFsc2UuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyODEwMGIwZmRiYTJlMDA1Nzk4MDlhNTgxOTM1ZDMx
MmNmMTI0NWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZh
bHNlLmFueS5qcwpAQCAtMCwwICsxLDEyIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3Jt
YW5jZS5tYXJrKCdmb28nKTsKKyAgLy8gVXNlIGEgdGltZW91dCB0byBlbnN1cmUgdGhlIHJlbWFp
bmRlciBvZiB0aGUgdGVzdCBydW5zIGFmdGVyIHRoZSBlbnRyeSBpcyBjcmVhdGVkLgorICB0LnN0
ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8gT2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNl
dCB0byBmYWxzZSBzaG91bGQgbm90IHNlZSBlbnRyeS4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigoKSA9PiB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdTaG91bGQgbm90IGhhdmUgb2Jz
ZXJ2ZWQgYW55IGVudHJ5IScpOworICAgIH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVy
ZWQ6IGZhbHNlfSk7CisgICAgLy8gVXNlIGEgdGltZW91dCB0byBnaXZlIHRpbWUgdG8gdGhlIG9i
c2VydmVyLgorICAgIHQuc3RlcF90aW1lb3V0KHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4ge30pLCAx
MDApOworICB9LCAwKTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGhvdXQgYnVmZmVyZWQg
ZmxhZyBzZXQgdG8gZmFsc2UgY2Fubm90IHNlZSBwYXN0IGVudHJpZXMuJyk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9y
bWFuY2VlbnRyeS10b2pzb24uYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0ZjAxNTZlZWMxOTI0MTk3MDAy
OGMyOGU1ODk3YmU0ZDZmMWNiODEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1h
bmNlZW50cnktdG9qc29uLmFueS5qcwpAQCAtMCwwICsxLDIxIEBACit0ZXN0KCgpID0+IHsKKyAg
cGVyZm9ybWFuY2UubWFyaygnbWFya05hbWUnKTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgnbWVh
c3VyZU5hbWUnKTsKKworICBjb25zdCBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
OworICBjb25zdCBwZXJmb3JtYW5jZUVudHJ5S2V5cyA9IFsKKyAgICAnbmFtZScsCisgICAgJ2Vu
dHJ5VHlwZScsCisgICAgJ3N0YXJ0VGltZScsCisgICAgJ2R1cmF0aW9uJworICBdOworICBmb3Ig
KGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyArK2kpIHsKKyAgICBhc3NlcnRfZXF1YWxz
KHR5cGVvZihlbnRyaWVzW2ldLnRvSlNPTiksICdmdW5jdGlvbicpOworICAgIGNvbnN0IGpzb24g
PSBlbnRyaWVzW2ldLnRvSlNPTigpOworICAgIGFzc2VydF9lcXVhbHModHlwZW9mKGpzb24pLCAn
b2JqZWN0Jyk7CisgICAgZm9yIChjb25zdCBrZXkgb2YgcGVyZm9ybWFuY2VFbnRyeUtleXMpIHsK
KyAgICAgIGFzc2VydF9lcXVhbHMoanNvbltrZXldLCBlbnRyaWVzW2ldW2tleV0sCisgICAgICAg
IGBlbnRyaWVzWyR7aX1dLnRvSlNPTigpLiR7a2V5fSBzaG91bGQgbWF0Y2ggZW50cmllc1ske2l9
XS4ke2tleX1gKTsKKyAgICB9CisgIH0KK30sICdUZXN0IHRvSlNPTigpIGluIFBlcmZvcm1hbmNl
RW50cnknKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZjFiMDliYzM3
NzEyMDgwMjQwMWRlMWIyNDdhYTU3ZGI3NDE0YzY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby1jYWxsYmFjay1tdXRhdGUuYW55LmpzCkBAIC0wLDAgKzEsNjYgQEAKKy8vIE1FVEE6IHNj
cmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQp
IHsKKyAgICB2YXIgY2FsbGJhY2tDb3VudCA9IDA7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxp
c3QsIG9icykgeworICAgICAgICAgIGNhbGxiYWNrQ291bnQrKzsKKworICAgICAgICAgIGlmIChj
YWxsYmFja0NvdW50ID09PSAxKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0
LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5h
bWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3Jt
YW5jZS5tYXJrKCJtYXJrMiIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJl
KCJtZWFzdXJlMiIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAg
ICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMo
ZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFy
ayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLW1lYXN1
cmUiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZv
cmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgb2JzZXJ2
ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtZWFzdXJlIl19KTsKKyAgICAgICAgICAgIHNlbGYu
cGVyZm9ybWFuY2UubWFyaygibWFyazMiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWVhc3VyZSgibWVhc3VyZTMiKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisK
KyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3VudCA9PT0gMykgeworICAgICAgICAgICAgY2hlY2tF
bnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksIFsKKyAgICAgICAgICAgICAge2VudHJ5VHlw
ZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlw
ZTogIm1hcmsiLCBuYW1lOiAibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVh
c3VyZSJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1h
cmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgiKTsKKyAgICAgICAg
ICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2Vy
dmUtc3RhdGUtdG8tYm90aCIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlU
eXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tYXJrKCJtYXJrNCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlNCIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAg
IGlmIChjYWxsYmFja0NvdW50ID09PSA0KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50
cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3Vy
ZSIsIG5hbWU6ICJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIn0s
CisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmU0In0s
CisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcms0In0sCisgICAg
ICAgICAgICBdKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZv
cmUtZGlzY29ubmVjdCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlLWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25u
ZWN0KCk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYWZ0ZXItZGlz
Y29ubmVjdCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJl
LWFmdGVyLWRpc2Nvbm5lY3QiKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBj
YWxsYmFjayBtdXN0IG5vdCBiZSBpbnZva2VkIGFmdGVyIGRpc2Nvbm5lY3RpbmciKTsKKyAgICAg
ICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1l
YXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgIH0sICJQZXJmb3JtYW5jZU9ic2Vy
dmVyIG1vZGlmaWNhdGlvbnMgaW5zaWRlIGNhbGxiYWNrIHNob3VsZCB1cGRhdGUgZmlsdGVyaW5n
IGFuZCBub3QgY2xlYXIgYnVmZmVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5l
Y3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3Qt
cmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2FjOTdiZWEwNzU1YzEx
ODI5NTZmZGY5NGM5OGVlNzhjYTQwYjAxNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
ZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpAQCAtMCwwICsxLDE5IEBA
CisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgLy8g
VGhlcmUgc2hvdWxkIGJlIG5vIG1hcmsgZW50cnkuCisgICAgICAgIGNoZWNrRW50cmllcyhlbnRy
eUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBu
YW1lOiAiYiJ9XSk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAgfSkKKyAgICApOworICBvYnNl
cnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gRGlzY29ubmVjdCB0aGUgb2JzZXJ2
ZXIuCisgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgLy8gTm93LCBvbmx5IG9ic2VydmUgbWVh
c3VyZS4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1lYXN1cmUifSk7CisgIHBlcmZvcm1h
bmNlLm1hcmsoImEiKTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgiYiIpOworfSwgIlR5cGVzIG9i
c2VydmVkIGFyZSBmb3Jnb3R0ZW4gd2hlbiBkaXNjb25uZWN0KCkgaXMgY2FsbGVkLiIpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29u
bmVjdC5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY1ZmI1YWE0M2JhNDYyNjhmOGMzNTVmZGM5M2M2ZjE4
Mjk5NjhiNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMK
QEAgLTAsMCArMSwzNyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpz
CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlM
aXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11
c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIu
b2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiLCAibmF2aWdhdGlvbiJdfSk7
CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygi
bWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAg
dC5zdGVwX3RpbWVvdXQoZnVuY3Rpb24gKCkgeworICAgICAgdC5kb25lKCk7CisgICAgfSwgMjAw
MCk7CisgIH0sICJkaXNjb25uZWN0ZWQgY2FsbGJhY2tzIG11c3Qgbm90IGJlIGludm9rZWQiKTsK
KworICB0ZXN0KGZ1bmN0aW9uICgpIHsKKyAgICB2YXIgb2JzID0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoZnVuY3Rpb24gKCkgeyByZXR1cm4gdHJ1ZTsgfSk7CisgICAgb2JzLmRpc2Nvbm5lY3Qo
KTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOworICB9LCAiZGlzY29ubmVjdGluZyBhbiB1bmNvbm5l
Y3RlZCBvYnNlcnZlciBpcyBhIG5vLW9wIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkg
eworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0
LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRf
dW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAg
fSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19
KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgb2JzZXJ2ZXIuZGlz
Y29ubmVjdCgpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICB0LnN0
ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7CisgICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsK
KyAgfSwgIkFuIG9ic2VydmVyIGRpc2Nvbm5lY3RlZCBhZnRlciBhIG1hcmsgbXVzdCBub3QgaGF2
ZSBpdHMgY2FsbGJhY2sgaW52b2tlZCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVz
LXNvcnQuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55LmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmIwYzc4MWEzYzBjMDNiZjgxZTgyMDE2OGJkZjcwYjUzNjI3NTA0MGIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMKQEAgLTAsMCArMSw2NCBAQAorLy8g
TUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5j
dGlvbiAodCkgeworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBzdG9yZWRf
ZW50cmllc19ieV90eXBlID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNl
T2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykg
eworCisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOwor
ICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5
VHlwZSgibWFyayIpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X25hbWUgPSBlbnRyeUxp
c3QuZ2V0RW50cmllc0J5TmFtZSgibmFtZS1yZXBlYXQiKTsKKyAgICAgICAgICB2YXIgc3RhcnRU
aW1lT2ZNYXJrMiA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMiIpWzBdLnN0YXJ0
VGltZTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzKTsKKyAgICAgICAg
ICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAi
bWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1l
YXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFz
dXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFy
ayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1l
OiAibWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1l
YXN1cmUtbWF0Y2hpbmctbWFyazItMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1
cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIn0sCisgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAg
ICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUpOworICAgICAgICAgIGNo
ZWNrRW50cmllcyhzdG9yZWRfZW50cmllc19ieV90eXBlLCBbCisgICAgICAgICAgICB7ZW50cnlU
eXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1h
cmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6
ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQo
c3RvcmVkX2VudHJpZXNfYnlfbmFtZSk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9l
bnRyaWVzX2J5X25hbWUsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFt
ZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6
ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIG9ic2VydmVyLmRpc2Nv
bm5lY3QoKTsKKyAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAg
ICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisK
KyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsxICE9PSBt
YXJrMiBzdGFydFRpbWUgYnkgbWFraW5nIHN1cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgor
ICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFz
dXJlLW1hdGNoaW5nLW1hcmsyLTEiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBt
YXJrMiAhPT0gbWFyazMgc3RhcnRUaW1lIGJ5IG1ha2luZyBzdXJlIHBlcmZvcm1hbmNlLm5vdyBh
ZHZhbmNlcy4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm5hbWUtcmVwZWF0Iik7CisgICAg
c2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgIHNlbGYucGVyZm9ybWFu
Y2UubWVhc3VyZSgibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIiwgIm1hcmsyIik7CisgICAgd2Fp
dCgpOyAvLyBFbnN1cmUgbmFtZS1yZXBlYXQgc3RhcnRUaW1lIHdpbGwgZGlmZmVyLgorICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1yZXBlYXQiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3Vy
ZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2lsbCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tZWFzdXJlKCJuYW1lLXJlcGVhdCIpOworICB9LCAiZ2V0RW50cmllcywgZ2V0RW50cmllc0J5
VHlwZSwgZ2V0RW50cmllc0J5TmFtZSBzb3J0IG9yZGVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLWdldGVudHJpZXMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4zNjE2OWQ1ZGJkNmUwZTIwNTA2ZDIwMTQ2NTg1ZGJjODllNzUwYzI1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpAQCAtMCwwICsxLDM4IEBA
CisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0
KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2
ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAg
ICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAgICAg
W3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXMiKTsKKwor
ICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIp
LAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdl
dEVudHJpZXNCeVR5cGUiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlUeXBlKCJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmll
c0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAg
ICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAg
ICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiksCisg
ICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50
cmllc0J5TmFtZSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJp
ZXNCeU5hbWUoIm1hcmsyIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5h
bWUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50
cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIjIzNDU2NyIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAg
ICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAg
IGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAibWFyayIp
LAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdl
dEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVu
dHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMSIsICJtZWFzdXJlIikubGVuZ3RoLCAwLAor
ICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3Rl
ZCBlbnRyeSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNC
eU5hbWUoIm1hcmsyIiwgIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50
cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAiMjM0
NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5
cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworCisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29u
bmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazEiKTsKKyAgfSwgImdldEVudHJpZXMsIGdldEVudHJpZXNCeVR5cGUg
YW5kIGdldEVudHJpZXNCeU5hbWUgd29yayIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJr
LW1lYXN1cmUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjBiMjA1ZTA5NGM3NWUxMGJjMWI5M2ZmOTY2YWVhMGZkMjNhNTg2ZjgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMKQEAgLTAsMCArMSw2MSBAQAor
Ly8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNl
cnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVu
Y3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAg
ICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOwor
ICAgICAgICAgIGlmIChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gNCkgeworICAgICAgICAgICAg
Y2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWFy
ayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUi
LCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJl
IiwgbmFtZTogIm1lYXN1cmUyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAg
ICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUi
XX0pOworICB9LCAiZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOworCisgIGFzeW5jX3Rlc3QoZnVu
Y3Rpb24gKHQpIHsKKyAgICB2YXIgbWFya19lbnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVy
ID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9u
IChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIG1hcmtfZW50cmllcyA9CisgICAgICAgICAg
ICBtYXJrX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAg
IGlmIChtYXJrX2VudHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmll
cyhtYXJrX2VudHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1l
OiAibWFyazEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1h
cmsyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAg
IHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2
ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICB9
LCAibWFyayBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlv
biAodCkgeworICAgIHZhciBtZWFzdXJlX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIg
PSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgbWVhc3VyZV9lbnRyaWVzID0KKyAgICAgICAg
ICAgIG1lYXN1cmVfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAg
ICAgICAgaWYgKG1lYXN1cmVfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hl
Y2tFbnRyaWVzKG1lYXN1cmVfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAi
bWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTog
Im1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlz
Y29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9
KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUi
XX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgIH0sICJtZWFzdXJlIGVudHJpZXMg
YXJlIG9ic2VydmFibGUiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmODVl
NTg1NmNlODczZjEyMWRjNTE1NDRjNTQ0YjQxNDM5ZmEyNmIKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFu
Y2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkCisKK1BlcmZvcm1h
bmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZl
cmVkIGVudHJpZXMKKworCitQQVNTIFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNo
b3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNl
cnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJiYmEzOTZhNmI2OWViYWQ1NmFk
NGYxYjEzNWNiOGFkNDlkMzIxYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2Vy
dmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKQEAgLTAsMCArMSwxNyBAQAorLy8gTUVUQTogc2NyaXB0
PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAg
Y29uc3Qgb2JzZXJ2ZXIgID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICB0LnN0ZXBf
ZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxp
c3QuZ2V0RW50cmllcygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
ZWFybHkifV0pOworICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgIHQuZG9u
ZSgpOworICAgICAgfSkKKyAgICApOworICBwZXJmb3JtYW5jZS5tYXJrKCJlYXJseSIpOworICAv
LyBUaGlzIGNhbGwgd2lsbCBub3QgdHJpZ2dlciBhbnl0aGluZy4KKyAgb2JzZXJ2ZXIub2JzZXJ2
ZSh7dHlwZTogIm1hcmsifSk7CisgIC8vIFRoaXMgY2FsbCBzaG91bGQgb3ZlcnJpZGUgdGhlIHBy
ZXZpb3VzIGNhbGwgYW5kIGRldGVjdCB0aGUgZWFybHkgbWFyay4KKyAgb2JzZXJ2ZXIub2JzZXJ2
ZSh7dHlwZTogIm1hcmsiLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgIlR3byBjYWxscyBvZiBvYnNl
cnZlKCkgd2l0aCB0aGUgc2FtZSAndHlwZScgY2F1c2Ugb3ZlcnJpZGUuIik7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmE0OGYwZjM3NjRiZGE0Y2ViODhiMmE4YmU0ZDY1ZjE2ODM2MjYyN2EKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbApAQCAtMCwwICsxLDg2IEBACis8IURP
Q1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNl
cnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkPC90aXRsZT4KKzxtZXRhIG5h
bWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJz
LmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNl
cnZlckluaXQuYnVmZmVyZWQ8L2gxPgorPHA+CitQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZm
ZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlvdXNseSBidWZmZXJlZCBlbnRyaWVzCis8L3A+Cis8
ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkg
eworICAgIGZ1bmN0aW9uIGluaXRUZXN0KCkgeworICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2
ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgZW50cnlMaXN0Lmdl
dEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAgICAgaWYgKHNob3Vs
ZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisg
ICAgICAgICAgb2JzZXJ2ZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAgICAgIGlmIChvYnNl
cnZlZEVudHJpZXMubGVuZ3RoID09PSBlbnRyeVR5cGVzLmxlbmd0aCkgeworICAgICAgICAgICAg
b2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcnVuVGVzdCgpOworICAgICAgICAg
IH0KKyAgICAgICAgfSk7CisgICAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVzfSk7CisKKyAgICAg
IC8vIGNyZWF0ZXMgYSBgcmVzb3VyY2VgIGVudHJ5CisgICAgICB2YXIgaW1nID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgICBpbWcuc3JjID0gIi4vcmVzb3VyY2VzL3NxdWFy
ZS5wbmciOworICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworCisgICAgICBw
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1hcmtgIGVudHJ5Cisg
ICAgICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1l
YXN1cmVgIGVudHJ5CisgICAgfQorICAgIGZ1bmN0aW9uIHNob3VsZEV4Y2x1ZGUoZW50cnkpIHsK
KyAgICAgIC8vIGV4Y2x1ZGUgYWxsIGByZXNvdXJjZWAgZW50cmllcyB0aGF0IGFyZW4ndCBmb3Ig
InNxdWFyZS5wbmciCisgICAgICByZXR1cm4gZW50cnkuZW50cnlUeXBlID09PSAicmVzb3VyY2Ui
ICYmCisgICAgICAgICAgICAgZW50cnkubmFtZS5pbmRleE9mKCJzcXVhcmUucG5nIikgPT09IC0x
OworICAgIH0KKyAgICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgLy8gdGhpcyBQZXJmb3Jt
YW5jZU9ic2VydmVyIGlzIGEgbm9wIGJlY2F1c2Ugd2UndmUgYWxyZWFkeSBiZWVuIG5vdGlmaWVk
IGFib3V0IGFsbCBvZiBvdXIgYGVudHJ5VHlwZXNgCisgICAgICB2YXIgcG9fbm9wID0gbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAg
ICAgaWYgKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZmluZChmdW5jdGlvbihlbnRyeSkgeworICAg
ICAgICAgIHJldHVybiAhc2hvdWxkRXhjbHVkZShlbnRyeSk7CisgICAgICAgIH0pKSB7CisgICAg
ICAgICAgYXNzZXJ0X3VucmVhY2hlZCgidGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbGxiYWNr
IHNob3VsZCBuZXZlciBiZSBjYWxsZWQiKTsKKyAgICAgICAgfQorICAgICAgfSk7CisgICAgICBw
b19ub3Aub2JzZXJ2ZSh7CisgICAgICAgIGVudHJ5VHlwZXMsCisgICAgICB9KTsKKworICAgICAg
Ly8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIHNob3VsZCBiZSBub3RpZmllZCBhYm91dCB0aGUg
cHJldmlvdXNseQorICAgICAgLy8gYnVmZmVyZWQgbWFyayBlbnRyeSBvbmx5CisgICAgICBjb25z
dCBidWZmZXJlZEVudHJpZXMgPSBbXTsKKyAgICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1
bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVyKSB7CisgICAgICAgIGVudHJ5TGlzdC5nZXRFbnRy
aWVzKCkuZm9yRWFjaChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIGlmIChzaG91bGRFeGNs
dWRlKGVudHJ5KSkgeworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAg
ICAgIGJ1ZmZlcmVkRW50cmllcy5wdXNoKGVudHJ5KTsKKyAgICAgICAgICBpZiAoYnVmZmVyZWRF
bnRyaWVzLmxlbmd0aCA9PT0gMSkgeworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgICAgICAgICAgcG9fbm9wLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIGZvciAoaSA9
IDA7IGkgPCBidWZmZXJlZEVudHJpZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhidWZmZXJlZEVudHJpZXNbaV0uZW50cnlUeXBlLCAibWFyayIpCisgICAgICAg
ICAgICB9CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOwor
ICAgICAgfSkub2JzZXJ2ZSh7CisgICAgICAgIHR5cGU6ICJtYXJrIiwKKyAgICAgICAgYnVmZmVy
ZWQ6IHRydWUKKyAgICAgIH0pOworICAgIH0KKworICAgIGNvbnN0IGVudHJ5VHlwZXMgPSBbIm5h
dmlnYXRpb24iLCAicmVzb3VyY2UiLCAibWFyayIsICJtZWFzdXJlIl07CisgICAgY29uc3Qgb2Jz
ZXJ2ZWRFbnRyaWVzID0gW107CisgICAgaW5pdFRlc3QoKTsKKyAgfSwgIlBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVu
dHJpZXMiKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjFlZWU2NWU5ZjlhYjVmYjIzMzczZWI5ZDhhNzBhMzM5YzA1YTAyMzcKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJzOiByZXNvdXJjZQorCitOZXcgcmVzb3VyY2VzIHdpbGwgcXVldWUg
YSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgcmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2
YWJsZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LXJlc291cmNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDBjMTczZWVhZTkyMWZiZWNjM2VlZWE1NGQ4YWRm
YTZiOWVkNTM2NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApA
QCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8
dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC90aXRsZT4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJwZXJm
b3JtYW5jZW9ic2VydmVycy5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNlcnZlcnM6
IHJlc291cmNlPC9oMT4KKzxwPgorTmV3IHJlc291cmNlcyB3aWxsIDxhIGhyZWY9Imh0dHBzOi8v
dzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8jZGZuLXF1ZXVlLWEtcGVyZm9ybWFu
Y2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5PC9hPi4KKzwvcD4KKzxkaXYgaWQ9Imxv
ZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVu
Y3Rpb24gcGF0aChwYXRobmFtZSkgeworICAgICAgdmFyIGZpbGVuYW1lID0gcGF0aG5hbWUuc3Vi
c3RyaW5nKHBhdGhuYW1lLmxhc3RJbmRleE9mKCcvJykrMSk7CisgICAgICByZXR1cm4gcGF0aG5h
bWUuc3Vic3RyaW5nKDAsIHBhdGhuYW1lLmxlbmd0aCAtIGZpbGVuYW1lLmxlbmd0aCk7CisgICAg
fQorICAgIHZhciBnVW5pcXVlQ291bnRlciA9IDA7CisgICAgZnVuY3Rpb24gZ2VuZXJhdGVVbmlx
dWVWYWx1ZXMoKSB7CisgICAgICByZXR1cm4gRGF0ZS5ub3coKSArICItIiArICgrK2dVbmlxdWVD
b3VudGVyKTsKKyAgICB9CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIGlt
Z19sb2NhdGlvbiA9IGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbiArIHBhdGgoZG9jdW1lbnQubG9j
YXRpb24ucGF0aG5hbWUpCisgICAgICAgKyAicmVzb3VyY2VzL3NxdWFyZS5wbmc/cmFuZG9tPSI7
CisgICAgdmFyIGltZzEgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpOwor
ICAgIHZhciBpbWcyID0gaW1nX2xvY2F0aW9uICsgZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKTsKKyAg
ICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVw
X2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJp
ZXMgPQorICAgICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlUeXBlKCJyZXNvdXJjZSIpKTsKKyAgICAgICAgICBpZiAoc3RvcmVkX2VudHJpZXMubGVu
Z3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywKKyAg
ICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcxfSwKKyAgICAg
ICAgICAgICAgIHsgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcyfV0pOworICAgICAg
ICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAg
ICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbInJlc291cmNlIl19KTsKKyAgICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9IGltZzE7CisgICAgZG9jdW1lbnQuYm9keS5hcHBl
bmRDaGlsZChpbWcpOworICAgIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOwor
ICAgIGltZy5zcmMgPSBpbWcyOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsK
KyAgfSwgInJlc291cmNlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKKzwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VS
ZWNvcmRzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NmFkMzk3YjBhNWMzNzlkMDEyOWQ0M2M5Mjk1MmJj
NmM4YzVjMGNmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnku
anMKQEAgLTAsMCArMSwzNCBAQAorLy8gTUVUQTogdGl0bGU9UGVyZm9ybWFuY2VPYnNlcnZlcjog
dGFrZVJlY29yZHMKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCith
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgYXNz
ZXJ0X3VucmVhY2hlZCgnVGhpcyBjYWxsYmFjayBzaG91bGQgbm90IGhhdmUgYmVlbiBjYWxsZWQu
JykKKyAgICB9KTsKKyAgICBsZXQgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7Cisg
ICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8gcmVjb3JkcyBiZWZvcmUgb2JzZXJ2ZScp
OworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgYXNz
ZXJ0X2VxdWFscyh0eXBlb2Yob2JzZXJ2ZXIudGFrZVJlY29yZHMpLCAnZnVuY3Rpb24nKTsKKyAg
ICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50
cmllcywgW10sICdObyByZWNvcmRzIGp1c3QgZnJvbSBvYnNlcnZlJyk7CisgICAgcGVyZm9ybWFu
Y2UubWFyaygnYScpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2InKTsKKyAgICBlbnRyaWVzID0g
b2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgWworICAg
ICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYSd9LAorICAgICAge2VudHJ5VHlwZTogJ21h
cmsnLCBuYW1lOiAnYid9CisgICAgXSk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYycpOworICAg
IHBlcmZvcm1hbmNlLm1hcmsoJ2QnKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdlJyk7CisgICAg
ZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJp
ZXMsIFsKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2MnfSwKKyAgICAgIHtlbnRy
eVR5cGU6ICdtYXJrJywgbmFtZTogJ2QnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFt
ZTogJ2UnfQorICAgIF0pOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOwor
ICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBbXSwgJ05vIGVudHJpZXMgcmlnaHQgYWZ0ZXIgdGFr
ZVJlY29yZHMnKTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgdC5kb25lKCk7Cisg
IH0sICJUZXN0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIncyB0YWtlUmVjb3JkcygpIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9y
ZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZjViZTczMzk1YjQ5
ZDg5NWEyNTg5YmU1NDdhN2YzOTUwZjQxNmJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9y
ZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbApAQCAtMCwwICsxLDE3IEBACis8IWRvY3R5
cGUgaHRtbD4KKzxzY3JpcHQ+CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4geworICBj
b25zdCBlbnRyeSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XTsKKyAgdHJ5IHsKKyAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKGVudHJ5LCAiKiIpOworICB9
IGNhdGNoKGVycm9yKSB7CisgICAgaWYgKGVycm9yLm5hbWUgPT0gIkRhdGFDbG9uZUVycm9yIikg
eworICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiUEFTUyIsICIqIik7CisgICAgfSBlbHNl
IHsKKyAgICAgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBXcm9uZyBleGNlcHRpb24g
bmFtZTogIiArIGVycm9yLm5hbWUsICIqIik7CisgICAgfQorICB9CisgIHdpbmRvdy50b3AucG9z
dE1lc3NhZ2UoIkZBSUwgLSBObyBleGNlcHRpb24gdGhyb3duIiwgIioiKTsKK30pOworCis8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJp
ZXMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmJkN2ZiYTJjY2Y0YjZhYjdlNjA0MjczYzI1MDEwZTMxZTQ0M2UzNzYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCkBA
IC0wLDAgKzEsNiBAQAorcGVyZm9ybWFuY2UubWFyaygnd29ya2VyTWFyaycpOworcG9zdE1lc3Nh
Z2UoeworICAnaW52YWxpZCcgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlk
JykubGVuZ3RoLAorICAnbWFyaycgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtYXJr
JykubGVuZ3RoLAorICAnbWVhc3VyZScgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdt
ZWFzdXJlJykubGVuZ3RoCit9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2Vy
LXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTcyZmU4MWM0N2ZlYWNl
NzY1NjEzYTA5NjJmMmE3ZTYzZjcxZmEyNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVz
b3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzCkBAIC0wLDAgKzEsNiBA
QAordHJ5IHsKKyAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKCkgPT4gdHJ1ZSk7CisgIHBvc3RN
ZXNzYWdlKCJTVUNDRVNTIik7Cit9IGNhdGNoIChleCkgeworICBwb3N0TWVzc2FnZSgiRkFJTFVS
RSIpOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCAxMzhiZGU2NjE5NjI0M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIy
MjQzZDFjYTM0NTc1MDk1NDBhMjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBv
cnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVu
dHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBwb3J0
ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBv
cmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVk
RW50cnlUeXBlcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCmlu
ZGV4IGEwMjI1YWQyZjc2ZmRjZmViYjBhN2M5YWZmOWJkMDAzMGVjZjg2YWEuLjI1ZjE5NTkzOWU3
YjY5MjUwOTYyNWI4MTMxZTUzNzE2NGNkZjU2YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnkuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFu
eS5qcwpAQCAtMTAsMyArMTAsMTAgQEAgdGVzdCgoKSA9PiB7CiAgICAgICAiJyBhcmUgcmVwZWF0
ZWQgb3IgdGhleSBhcmUgbm90IGluIGFscGhhYmV0aWNhbCBvcmRlci4iKQogICB9CiB9LCAic3Vw
cG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5kIHJldHVybnMgZW50cmllcyBpbiBhbHBoYWJldGlj
YWwgb3JkZXIiKTsKKwordGVzdCgoKSA9PiB7CisgIGlmICh0eXBlb2YgUGVyZm9ybWFuY2VPYnNl
cnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzID09PSAidW5kZWZpbmVkIikKKyAgICBhc3NlcnRfdW5y
ZWFjaGVkKCJzdXBwb3J0ZWRFbnRyeVR5cGVzIGlzIG5vdCBzdXBwb3J0ZWQuIik7CisgIGFzc2Vy
dF90cnVlKFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyA9PT0KKyAgICAg
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyk7Cit9LCAic3VwcG9ydGVk
RW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0Iik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRl
ZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVu
dHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMTM4YmRlNjYxOTYyNDNlNjcw
MzBkMWFlMTQyYmRhNDExNDhlMjMwYi4uZTVlYjExOGFiMjI0M2QxY2EzNDU3NTA5NTQwYTIwODI4
MDI4OWQ5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5
cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJ
TCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRp
b24uYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZDg2OWM3YzUyZDU1ZDY5ZTIxMjNmNjRkNDg2ZWQxZTMyMzVkM2ZiNwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzCkBAIC0wLDAgKzEsMjUg
QEAKK2Z1bmN0aW9uIHRlc3RUaW1lUmVzb2x1dGlvbihoaWdoUmVzVGltZUZ1bmMsIGZ1bmNTdHJp
bmcpIHsKKyAgICB0ZXN0KCgpID0+IHsKKyAgICAgICAgY29uc3QgdDAgPSBoaWdoUmVzVGltZUZ1
bmMoKTsKKyAgICAgICAgbGV0IHQxID0gaGlnaFJlc1RpbWVGdW5jKCk7CisgICAgICAgIHdoaWxl
ICh0MCA9PSB0MSkgeworICAgICAgICAgICAgdDEgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAg
ICAgfQorICAgICAgICBjb25zdCBlcHNpbG9uID0gMWUtNTsKKyAgICAgICAgYXNzZXJ0X2dyZWF0
ZXJfdGhhbl9lcXVhbCh0MSAtIHQwLCAwLjAwNSAtIGVwc2lsb24sICdUaGUgc2Vjb25kICcgKyBm
dW5jU3RyaW5nICsgJyBzaG91bGQgYmUgbXVjaCBncmVhdGVyIHRoYW4gdGhlIGZpcnN0Jyk7Cisg
ICAgfSwgJ1ZlcmlmaWVzIHRoZSByZXNvbHV0aW9uIG9mICcgKyBmdW5jU3RyaW5nICsgJyBpcyBh
dCBsZWFzdCA1IG1pY3Jvc2Vjb25kcy4nKTsKK30KKworZnVuY3Rpb24gdGltZUJ5UGVyZm9ybWFu
Y2VOb3coKSB7CisgICAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpOworfQorCitmdW5jdGlvbiB0
aW1lQnlVc2VyVGltaW5nKCkgeworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3RpbWVyJyk7CisgICAg
Y29uc3QgdGltZSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoJ3RpbWVyJylbMF0uc3Rh
cnRUaW1lOworICAgIHBlcmZvcm1hbmNlLmNsZWFyTWFya3MoJ3RpbWVyJyk7CisgICAgcmV0dXJu
IHRpbWU7Cit9CisKK3Rlc3RUaW1lUmVzb2x1dGlvbih0aW1lQnlQZXJmb3JtYW5jZU5vdywgJ3Bl
cmZvcm1hbmNlLm5vdygpJyk7Cit0ZXN0VGltZVJlc29sdXRpb24odGltZUJ5VXNlclRpbWluZywg
J2VudHJ5LnN0YXJ0VGltZScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJm
b3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZv
cm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ODI2YjljYmRhZjJjNWZk
NDQxMzRjMTIxN2RhMzRlMjQzNjRiNzA4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3Jr
ZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBA
CisKK1BBU1MgV29ya2VyOiBUZXN0IFBlcmZvcm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtl
ci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZl
ci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmZjOTJiYzk3MTAwM2YyZWE5MmZiZDE2OWQ4ZGQ3YTY0ZDA2MjA2MmQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0
bWwKQEAgLTAsMCArMSwxOCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8c2NyaXB0PgorYXN5bmNfdGVzdChmdW5jdGlvbih0KSB7CisgIGNvbnN0IHdvcmtl
ciA9IG5ldyBXb3JrZXIoInJlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZl
ci5qcyIpOworICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICB0LnN0
ZXAoKCkgPT4gYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhLCAnU1VDQ0VTUycpKTsKKyAgICB0LmRv
bmUoKTsKKyAgfQorfSwgJ1dvcmtlcjogVGVzdCBQZXJmb3JtYW5jZSBPYnNlcnZlciBpbnNpZGUg
YSB3b3JrZXIuJyk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRl
eCA3MzAwODFmNGQ2N2IwNjQxZGU4MDBlMmE4ODFhZjAyNzJiMjJiOWIyLi42NGU3ZTI1YzIwZGNk
ODlkYWZmYzcyMjE3NDJkOTUwYzg3MjY3OWFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBA
QAogCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgYXNz
ZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmcud29ya2VyU3RhcnQnKSBSZWFjaGVkIHVucmVhY2hh
YmxlIGNvZGUKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWlu
ZyBuZXR3b3JrIGZhbGxiYWNrIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9u
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3RpbWluZ0V2
ZW50T3JkZXJbaV1dJykgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlMIFNlcnZpY2Ugd29y
a2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgcmVkaXJlY3QgYXNzZXJ0X3VucmVhY2hl
ZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICd0aW1pbmdbdGltaW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxl
IGNvZGUKK0ZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBh
c3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0X2dyZWF0ZXJfdGhh
bjogZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAwIFJlYWNoZWQgdW5y
ZWFjaGFibGUgY29kZQorUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24g
dGltaW5nIG5ldHdvcmsgZmFsbGJhY2sKK1BBU1MgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBu
YXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJm
b3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRl
bnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Bh
aW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4
cGVjdGVkLnR4dAppbmRleCA3ZmZiMzg1ODNkYTg0YjY0Njk0NTVhZTc0MDRkMjI0YzRiNTczMGRh
Li40ZWJkY2NmNWIyYmQ0N2RhNGQ1ZDIxNWQxZThhMjc4MWE0YzJkZTAxIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2Vy
dmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3Qt
Y29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiBQQVNTIGRpZFJl
Y2VpdmVGaXJzdENvbnRlbnRmdWxQYWludCBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKS5sZW5ndGggaXMgMQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3Ro
IGlzIDIKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1
bC1wYWludCIpLmxlbmd0aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUo
ImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiLCAicGFpbnQiKS5sZW5ndGggaXMgMQogUEFTUyBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpLmxlbmd0aCBpcyAxCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9i
c2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRtbCBiL0xheW91dFRlc3RzL3BlcmZvcm1h
bmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1
bC1wYWludC5odG1sCmluZGV4IDAwNzhhNDM1NDViOWY0YjZjZmFiZjgxNzE2NjFiM2I2MDFjNGFh
NzkuLjFmMjgwYjQwNzc1ZTJhOWE4MmY4ZDNiNjZlNzk4ZjcwYTc1NTdlMjIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2Jz
ZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCisrKyBiL0xheW91dFRlc3RzL3BlcmZv
cm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVu
dGZ1bC1wYWludC5odG1sCkBAIC0zNiw3ICszNiw3IEBAIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0g
dHJ1ZTsKICAgICBkb2N1bWVudC5ib2R5LmlubmVyVGV4dCA9ICdURVhUMic7CiAgICAgYXdhaXQg
d2FpdEZvckZDUCgpOwogICAgIHNob3VsZEJlVHJ1ZSgnZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1
bFBhaW50Jyk7Ci0gICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGgn
LCAiMSIpOworICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoJywg
IjIiKTsKICAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3Qt
Y29udGVudGZ1bC1wYWludCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1h
bmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiLCAicGFpbnQiKS5s
ZW5ndGgnLCAiMSIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJwYWludCIpLmxlbmd0aCcsICIxIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3Jt
YW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0
CmluZGV4IDc2NDlhODQzMWNhNDQyYjE2MDdlMjhlZWQ2ZDQ2YWM5ZTZjZGYwZGEuLjNhNjdkYzBi
YjYzZDYwOWRhODIxNDZiNzYyZTNkZThjZGYwYTk0NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGkt
ZXhwZWN0ZWQudHh0CkBAIC0xMSw3ICsxMSw3IEBAIFBBU1MgUGVyZm9ybWFuY2VPYnNlcnZlcigp
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IENvbnN0cnVjdG9yIHJlcXVpcmVzICduZXcnCiBQ
QVNTIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
Tm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKDEpIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDEgKCdjYWxsYmFjaycpIHRvIHRoZSBQ
ZXJmb3JtYW5jZU9ic2VydmVyIGNvbnN0cnVjdG9yIG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1Mg
b2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbigpIHt9KSBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KLVBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgorUEFTUyBvYnNlcnZlci5vYnNlcnZl
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUg
cHJvdmlkZWQuCiBQQVNTIG9ic2VydmVyLm9ic2VydmUoIm1hcmsiKSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUeXBlIGVycm9yLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHt9KSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4K
IFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczoibWFyayJ9KSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBWYWx1ZSBpcyBub3QgYSBzZXF1ZW5jZS4KQEAgLTM5LDcgKzM5LDcgQEAg
UEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogQ29uc3RydWN0b3IgcmVxdWkKIFBBU1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4K
IFBBU1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2NhbGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBbV29ya2VyXSBvYnNl
cnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uKCkge30pIGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgotUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIG9i
c2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVu
dHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgi
bWFyayIpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIFtXb3Jr
ZXJdIG9ic2VydmVyLm9ic2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5
cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJrIn0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZh
bHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFu
Y2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dApp
bmRleCBlZDAxYWUwMDMxZjRlNWU4Zjc2ZTYwMTVkYjIzODgyMjY0NGI5MTJkLi5jMTQ2MjE0ZWYy
ZDZhOGFiMWQ2YjhhZTM4Nzg2NWUxMDdiYTNmNzBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
ZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4
cGVjdGVkLnR4dApAQCAtMTYsMTQgKzE2LDE0IEBAIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBl
LmdldEVudHJpZXMgaXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVu
dHJpZXNCeVR5cGUgaXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVu
dHJpZXNCeU5hbWUgaXMgZGVmaW5lZC4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGlu
c3RhbmNlb2YgQXJyYXkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAwIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpOyBkaWQgbm90
IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9
PT0gMSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9m
IFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClb
MF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5
VHlwZSBpcyAibWFyayIKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5z
dGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdl
dEVudHJpZXMoKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBwZXJmb3Jt
YW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAyIGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRy
dWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVz
dCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlz
ICJtYXJrIgorUEFTUyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0u
c3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQogUEFT
UyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCkBAIC02MCwxMSArNjAs
MTEgQEAgUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBB
cnJheSBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5n
dGggPT09IDAgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRydWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpWzBdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNT
IFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFT
UyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJr
IgotUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0
VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQotUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtX
b3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVy
Zm9ybWFuY2VFbnRyeSBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVttYXJrSW5kZXhdLm5hbWUgaXMgInRlc3QiCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmVudHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgW1dvcmtl
cl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9
PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiIGlzIHRydWUKIFBBU1Mg
W1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgpIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJub3QtcmVhbCIpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNT
IFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1hcmsiKS5sZW5ndGggPT09
IDEgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Jlc291
cmNlcy90aW1lbGluZS1hcGkuanMgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3Vy
Y2VzL3RpbWVsaW5lLWFwaS5qcwppbmRleCAxZWY3YWE1YzU4NDJmZGU5ZTFiZDIwM2YxZDI1NzM4
N2I5NTM2MDRkLi5iOGMyOTk0MDI2Y2Y5NGUwNzQ5ZWZiOTQyMWJjMWRiY2JiMjAzMjNlIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFw
aS5qcworKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5l
LWFwaS5qcwpAQCAtNCw2ICs0LDggQEAgaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykKIGlmIChzZWxm
LndpbmRvdykKICAgICBkZXNjcmlwdGlvbigiQmFzaWMgSW50ZXJmYWNlIHRlc3QgZm9yIHBlcmZv
cm1hbmNlLXRpbWVsaW5lIEFQSXMuIik7CiAKK2xldCBydW5uaW5nSW5Xb3JrZXIgPSAhIXNlbGYu
aW1wb3J0U2NyaXB0czsKKwogZGVidWcoIlBlcmZvcm1hbmNlRW50cnkiKTsKIHNob3VsZEJlRGVm
aW5lZCgiUGVyZm9ybWFuY2VFbnRyeSIpOwogc2hvdWxkQmVUcnVlKGAibmFtZSIgaW4gUGVyZm9y
bWFuY2VFbnRyeS5wcm90b3R5cGVgKTsKQEAgLTIxLDE0ICsyMywyNSBAQCBzaG91bGRCZURlZmlu
ZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlUeXBlYCk7CiBzaG91bGRCZURl
ZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlOYW1lYCk7CiAKIHNob3Vs
ZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2YgQXJyYXlgKTsKLXNo
b3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMGApOworaWYg
KHJ1bm5pbmdJbldvcmtlcikgeworICAgIC8vIFdvcmtlcnMgZG9uJ3QgaGF2ZSBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuCisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkubGVuZ3RoID09PSAwYCk7Cit9IGVsc2UgeworICAgIHNob3VsZEJlVHJ1ZShgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMWApOworfQogc2hvdWxkTm90VGhyb3coYHBl
cmZvcm1hbmNlLm1hcmsoInRlc3QiKTtgKTsKLXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpLmxlbmd0aCA9PT0gMWApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5YCk7Ci1zaG91bGRCZUVxdWFs
VG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lYCwgInRlc3QiKTsKLXNo
b3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlw
ZWAsICJtYXJrIik7Ci1zaG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVyImApOwotc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyImApOworaWYgKHJ1
bm5pbmdJbldvcmtlcikgeworICAgIG1hcmtJbmRleCA9IDA7CisgICAgc2hvdWxkQmVUcnVlKGBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Cit9IGVsc2UgeworICAgIG1h
cmtJbmRleCA9IDE7CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCku
bGVuZ3RoID09PSAyYCk7Cit9CitzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeWApOworc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5uYW1lYCwgInRl
c3QiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21h
cmtJbmRleF0uZW50cnlUeXBlYCwgIm1hcmsiKTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciJgKTsK
K3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhd
LmR1cmF0aW9uID09PSAibnVtYmVyImApOwogCiBzaG91bGRUaHJvdyhgcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgpYCk7CiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwYCk7CkBAIC01MCw1ICs2Myw1IEBAIHNob3Vs
ZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXS5k
dXJhdGlvbiA9PT0gIm51bWJlCiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eU5hbWUoInRlc3QiLCAibm90LXJlYWwiKS5sZW5ndGggPT09IDBgKTsKIHNob3VsZEJlVHJ1ZShg
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJtYXJrIikubGVuZ3RoID09PSAx
YCk7CiAKLWlmIChzZWxmLmltcG9ydFNjcmlwdHMpCitpZiAocnVubmluZ0luV29ya2VyKQogICAg
IGZpbmlzaEpTVGVzdCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
MS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
OThkNGVkM2NlMTg0YzY4ZDMzMTg2MTNmOGQyMGZlMjcyZDUyZTM5Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVs
YXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBv
ZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWlu
ZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICJodHRwLzEuMSIgYnV0IGdvdCAiIgorCg==
</data>
<flag name="commit-queue"
          id="449746"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428731</attachid>
            <date>2021-05-15 10:58:19 -0700</date>
            <delta_ts>2021-05-15 15:14:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210515105818.patch</filename>
            <type>text/plain</type>
            <size>218942</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJjYjMzNTkxY2FhM2Zh
NTkwMTk2NTZmMTlkMWYzYThjYzZmYmU5My4uZjJkNzhkYWQxNTc0NjA3ODBhMmM2ODllMjE3YzBl
ODIyYmY0Y2JlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xNSAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9ibGVtYXRpYywgYW5kIHNvbWUgb2YgdGhlIHRlc3RzIGZvciByZWFkaW5nIHRyYW5zZmVy
IHNpemUgc3RpbGwgZmFpbC4KKyAgICAgICAgVGhlcmUgYXJlIHN0aWxsIGEgZmV3IHRlc3QgZmFp
bHVyZXMgdG8gZml4IGluIGZ1dHVyZSBwYXRjaGVzLgorCisgICAgICAgIFRlc3RzOiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2
ZV9pbWFnZV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1
bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwKKyAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2lu
c3RhbmNlX2FjY2Vzc29ycy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUu
aHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWwKKyAg
ICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3Jp
Z2luLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9u
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlk
LWVudHJpZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAorICAgICAgICAgICAg
ICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1vYnNlcnZlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAorICAgICAgICAgICAg
ICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCisKKyAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERlcml2
ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUGVy
Zm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3bHlDcmVh
dGVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OnNldFJlYWR5U3RhdGUpOgorICAgICAgICBTb21ldGltZXMgdGhlIHJlYWR5IHN0YXRl
IGp1bXBzIHJpZ2h0IHRvIENvbXBsZXRlIHdpdGhvdXQgaGl0dGluZyBJbnRlcmFjdGl2ZSBhbG9u
ZyB0aGUgd2F5LgorICAgICAgICBXaGVuIHRoaXMgaGFwcGVucywgd2Ugd2FudCB0byBtYXJrIGJv
dGggbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSBhbmQgbV9kb2N1bWVudFRpbWluZy5kb21J
bnRlcmFjdGl2ZS4KKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKToKKyAgICAgICAgQ2Fs
bCBhZGROYXZpZ2F0aW9uVGltaW5nIGluIG5vdGlmeUZpbmlzaGVkIHRvIGNyZWF0ZSB0aGUgbmF2
aWdhdGlvbiB0aW1pbmcgb2JqZWN0IHdoZW4gd2UgYXJlIGRvbmUgbmF2aWdhdGluZworICAgICAg
ICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFkZCBhIFVSTCBwYXJh
bWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3QncyBVUkwgYW5kIHNv
bWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0dGVuIGF0IGRpZmZl
cmVudCB0aW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpwb3B1bGF0ZVNl
cnZlclRpbWluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6cG9w
dWxhdGVTZXJ2ZXJUaW1pbmcpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZVRp
bWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OnVybCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6aW5pdGlhdG9yIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3MgY29uc3QpOgorICAg
ICAgICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJp
ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5
cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5h
bWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVk
RW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6YWRk
TmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6cmVnaXN0
ZXJQZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpx
dWV1ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJ
Zk5lZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeTo6
c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmR1
cmF0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmlzUmVz
b3VyY2UgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRy
eTo6aXNNYXJrIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
RW50cnk6OmlzTWVhc3VyZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZUVudHJ5Ojppc1BhaW50IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlTWFyay5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgU1BF
Q0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTi9FTkQgZG9lc24ndCB3b3JrIHdlbGwgd2l0aCBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgd2hpY2ggaW5oZXJpdHMgZnJvbSBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nIHdoaWNoIGJvdGggaGF2ZSBkaXN0aW5jdCB0eXBlcy4KKyAgICAgICAgaXM8
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gZG9lc24ndCBnaXZlIHVzIHRoZSBpbmZvIHdlIG5l
ZWQuICBJIHJlcGxhY2VkIHRoYXQgd2l0aCAic3dpdGNoIChlbnRyeS0+cGVyZm9ybWFuY2VFbnRy
eVR5cGUoKSkiIGluIHRoZSBvbmUgcGxhY2UgaXQncyB1c2VkLCBhbmQgaXQgd29ya3MgbGlrZSBh
IGNoYXJtLgorICAgICAgICBBbHNvIHJlbmFtZWQgdHlwZSB0byBwZXJmb3JtYW5jZUVudHJ5VHlw
ZSBzbyBpdCBkb2Vzbid0IGNvbmZsaWN0IHdpdGggUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojp0eXBlLCB3aGljaCBpcyBzcGVjaWZpZWQgaW4gdGhlIGlkbC4KKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlTWVhc3VyZS5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAg
KiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6dG9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OlBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6Om1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNoZWNrRmFpbHMgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxv
YWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRF
dmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRTdGFy
dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OnR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjpyZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZHVyYXRpb24gY29uc3QpOgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmg6IEFkZGVkLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbDogQ29waWVkIGZyb20g
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbC4KKyAgICAgICAgKiBw
YWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VPYnNlcnZlcjo6dGFrZVJlY29yZHMpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VP
YnNlcnZlcjo6ZGlzY29ubmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2Vy
dmVyOjpkZWxpdmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1
cHBvcnRlZEVudHJ5VHlwZXMpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5o
OgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGw6CisgICAgICAgICogcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUgY29uc3QpOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oOgorICAgICAgICAoaXNUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nOjpuZXh0SG9wUHJvdG9jb2wgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0YXJ0IGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1
cFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmc6OmRvbWFpbkxvb2t1cEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpzZWN1cmVDb25uZWN0aW9uU3RhcnQg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVx
dWVzdFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmc6OnJlc3BvbnNlU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmluaXRpYXRv
clR5cGUgY29uc3QpOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmRvTm90aWZ5Rmlu
aXNoKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oOgor
ICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5n
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50Lmg6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVj
dGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
c291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICBQYXNzIG1ldHJpY3MgaW5jbHVkaW5nIHRoZSByZXNw
b25zZSBlbmQgdGltZSBmcm9tIE5TVVJMQ29ubmVjdGlvbiBzbyB3ZSBkb24ndCBhc3NlcnQgaW4g
V2ViS2l0TGVnYWN5LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xv
YWRNZXRyaWNzLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29weVRpbWluZ0RhdGEpOgorICAgICAg
ICBVc2UgY3VycmVudFJlcXVlc3QgaW5zdGVhZCBvZiBwYXNzaW5nIGluIHRoZSByZXNwb25zZSBz
byB3ZSBjYW4gY2FsbCBpdCBmcm9tIGRpZEZpbmlzaExvYWRpbmcsIHdoZXJlIHdlIGRvbid0IGhh
dmUgYSByZXNwb25zZSBzdG9yZWQgYW55d2hlcmUuCisgICAgICAgIFdlJ3JlIGp1c3QgbG9va2lu
ZyBmb3Igd2hldGhlciBpdCdzIGh0dHAgb3IgaHR0cHMsIHNvIHRoZSBjdXJyZW50UmVxdWVzdCAo
d2hpY2ggaXMgdGhlIHJlcXVlc3QgYWZ0ZXIgYWxsIHRoZSByZWRpcmVjdHMpIGZpdHMgb3VyIHB1
cnBvc2UuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3Vy
bC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6aGFuZGxlRGF0YVVSTCk6
CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNP
cGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tOgorICAgICAgICAoLVtXZWJDb3JlUmVzb3VyY2VIYW5k
bGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUgY29ubmVjdGlvbjpkaWRSZWNlaXZlUmVzcG9uc2U6
XSk6CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxl
Z2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzpdKToKKwogMjAyMS0wNS0xNCAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlc291cmNl
IFRpbWluZzogc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IDAgd2hlbiBhIGNvbm5lY3Rpb24gaXMg
cmUtdXNlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwppbmRleCAwZGQyODFhODlmN2U0NzEyMTk2YjFkODEzNTIzZDNiYTRhZTgy
MzI5Li5iYTljYzkyY2MyZjU3MDIyZGEyMmFlY2ZkNzJjOWZiOGM4NDhjMWVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGlt
aW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbToKKyAgICAg
ICAgKC1bV0tOZXR3b3JrU2Vzc2lvbkRlbGVnYXRlIFVSTFNlc3Npb246dGFzazpkaWRGaW5pc2hD
b2xsZWN0aW5nTWV0cmljczpdKToKKyAgICAgICAgTWFyayByZXVzZWQgVExTIGNvbm5lY3Rpb25z
IGluIGNvbXBsZXRlIG1ldHJpY3MgbGlrZSBJIGRpZCBpbiBpbmNvbXBsZXRlIG1ldHJpY3MgaW4g
cjI3NzQ5My4KKwogMjAyMS0wNS0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgogCiAgICAgICAgIFJlc291cmNlIFRpbWluZzogc2VjdXJlQ29ubmVjdGlvblN0
YXJ0ID09IDAgd2hlbiBhIGNvbm5lY3Rpb24gaXMgcmUtdXNlZApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApp
bmRleCAzZGI1MWJhNjZlZDY5MzgzNzdjOTRkYWQ2NjY2ZmE5OTcxNjE4NGRjLi5mNTA0Nzg3MGRi
M2YxM2ZiZTRlZjEzOWYzOTlkNmUwN2E4OWQwNzEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAt
MTEzNSw2ICsxMTM1LDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NWR19JRExfRklMRVMKICAgICBwYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJFbnRyeUxpc3QuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCisg
ICAgcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3Jt
YW5jZVBhaW50VGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5p
ZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlU2VydmVyVGltaW5nLmlkbApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggNjYyMjkyMWZlODA3OWEz
MDA4YmE0MzgyMTQzMmNlOWY0NTZjOGRkYS4uNzEwNzQ2OTUxOTBiZmRlNDYwNDIzODBmM2NmYmEw
MzU2NmRhMmE3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5w
dXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54
Y2ZpbGVsaXN0CkBAIC0xMjAxLDYgKzEyMDEsNyBAQCAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZv
cm1hbmNlTWFya09wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTWVh
c3VyZS5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5p
ZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbAorJChQUk9K
RUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCiAkKFBST0pFQ1Rf
RElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9y
bWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggZGQyYmRkZTM2OWUzOWZiNWE5ZDY4YWU3MGNi
NmMxZGJhYWExZjAyNi4uZWI1MzRkM2QyYzM3NTBmY2U1NDM5MTFlMDc5NDk2OWI1ZWNjOWYxYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxp
c3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QK
QEAgLTE2MDQsNiArMTYwNCw4IEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5jcHAKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9u
cy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZv
cm1hbmNlTmF2aWdhdGlvbi5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmgKICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VPYnNl
cnZlckNhbGxiYWNrLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggMjI5MjZi
YzYyYzM3NWRjNDNmN2Y3Y2RiYzEwYmEyYjdmZGQ5M2NmZi4uMzY4N2E3ZjU2MmUzYjgxN2M4YjZj
ZGYwNGVlNDE5NzcxMDBhMmZhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0x
MDU0LDYgKzEwNTQsNyBAQCBKU19CSU5ESU5HX0lETFMgOj0gXAogICAgICQoV2ViQ29yZSkvcGFn
ZS9QZXJmb3JtYW5jZU1lYXN1cmUuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFu
Y2VNZWFzdXJlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRs
IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbCBc
CiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaWRsIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUv
U291cmNlcy50eHQKaW5kZXggMjdmMjk5YjZiZTIxNDBiODU4MmVlNzNmNDczM2VkYzg0MTJkOTI4
NC4uNGY4ZTlhZDMxMWJjODY4MTc1ZmIwM2Y4OGNjMjljMWNiOWI3YjgyOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50
eHQKQEAgLTE3MzYsNiArMTczNiw3IEBAIHBhZ2UvUGVyZm9ybWFuY2VNYXJrLmNwcAogcGFnZS9Q
ZXJmb3JtYW5jZU1lYXN1cmUuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTW9uaXRvci5jcHAKIHBhZ2Uv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJFbnRyeUxpc3QuY3BwCiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBA
IC0zMzU5LDYgKzMzNjAsNyBAQCBKU1BlcmZvcm1hbmNlTWFya09wdGlvbnMuY3BwCiBKU1BlcmZv
cm1hbmNlTWVhc3VyZS5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5jcHAKIEpTUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorSlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3Bw
CiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFj
ay5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxYzM1OTE5MDJi
MTIwYmQzYWIwNjBiZDhjNWIxYjdmMmFiM2MxN2I5Li5hNjIzZDRiMDgzMGViYmM0ZjZiMzE4NDk0
YTNhMTUwMzJhMmIyODc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNjA0Niw2ICsxNjA0Niw5IEBACiAJCURFQ0E3RkY0MUY5
RkU5QjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNTUuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNTUuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJREVDQTdGRjUxRjlGRTlCQTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyNTYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTI1Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI1Ni5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlERjE5RTJBQTI0NzcyOUE2MDA3QkRBQ0IgLyogU2hv
dWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2
NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlERjM2NUQwNzI1QTk4NEM5MDA1RERCOEMgLyogUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjRFMzhEQzI1Mjc5NTkzMDAyQTc0ODEg
LyogVmVyc2lvbkNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFZlcnNpb25DaGVja3MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUz
OERFMjUyNzk1OTQwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFZlcnNpb25DaGVja3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJREY3RTlBMjk0QzdBQUNFMEFEODlCM0REIC8qIE1hdGhNTE9wZXJhdG9yRGljdGlvbmFy
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoTUxPcGVyYXRvckRpY3Rp
b25hcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIyNDUwLDYgKzIyNDUzLDkg
QEAKIAkJCQk4QUY0RTU1MjExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
LmNwcCAqLywKIAkJCQk4QUY0RTU1MzExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uLmggKi8sCiAJCQkJOEFGNEU1NTQxMURDNUEzNjAwMEVEM0RFIC8qIFBlcmZvcm1hbmNl
TmF2aWdhdGlvbi5pZGwgKi8sCisJCQkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgKi8sCisJCQkJREYzNjVEMDYyNUE5ODRDODAwNURE
QjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oICovLAorCQkJCURGMzY1RDA3MjVB
OTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovLAogCQkJ
CUE1QTk5MzM1MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmNwcCAqLywK
IAkJCQlBNUE5OTMzNjFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlci5oICov
LAogCQkJCUE1QTk5MzM3MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmlk
bCAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFu
Y2VFbnRyeUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1h
bmNlRW50cnlDdXN0b20uY3BwCmluZGV4IGJiZjgxMTE0MmRhYjllNmE5MmNiNWM2Y2ZhYjA2YjI0
NThiYTcxNDAuLmRmY2Q4YzFlYjk2NDQ5MTMxNDQ3ZTJmMjdjOWQ2YmVjNWFjNjc5YTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3Rv
bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5
Q3VzdG9tLmNwcApAQCAtMzUsMTAgKzM1LDEyIEBACiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgi
CiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNl
TWVhc3VyZS5oIgorI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAj
aW5jbHVkZSAiSlNQZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5j
bHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1
ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIApAQCAtNDgsMTggKzUwLDIwIEBAIHVz
aW5nIG5hbWVzcGFjZSBKU0M7CiAKIEpTVmFsdWUgdG9KU05ld2x5Q3JlYXRlZChKU0dsb2JhbE9i
amVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxQZXJmb3JtYW5jZUVu
dHJ5PiYmIGVudHJ5KQogewotICAgIGlmIChpczxQZXJmb3JtYW5jZVBhaW50VGltaW5nPihlbnRy
eSkpCi0gICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwotCi0gICAgaWYgKGlzPFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0K
LSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNYXJrPihlbnRyeSkpCisgICAgc3dpdGNoIChlbnRyeS0+
cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkgeworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlw
ZTo6TmF2aWdhdGlvbjoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nPihnbG9iYWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKKyAgICBjYXNl
IFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1hcms6CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFw
cGVyPFBlcmZvcm1hbmNlTWFyaz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAg
ICBpZiAoaXM8UGVyZm9ybWFuY2VNZWFzdXJlPihlbnRyeSkpCisgICAgY2FzZSBQZXJmb3JtYW5j
ZUVudHJ5OjpUeXBlOjpNZWFzdXJlOgogICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJm
b3JtYW5jZU1lYXN1cmU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2Ug
UGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UmVzb3VyY2U6CisgICAgICAgIHJldHVybiBjcmVhdGVX
cmFwcGVyPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShl
bnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UGFpbnQ6CisgICAgICAg
IHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShlbnRyeSkpOworICAgIH0KIAorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
ICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlRW50cnk+KGdsb2JhbE9iamVjdCwg
V1RGTW92ZShlbnRyeSkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBlYTQyZjMz
NDFhNmE1N2VhMGM1YTllMTExODI0ZjVlNTEyMGRmMDFiLi4yM2RmNmYwNzU5MzllODkyYzFjNzkz
ODI0ODc2MWM0NTE0NjkzMWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTEzOTAsMTMg
KzEzOTAsMTMgQEAgdm9pZCBEb2N1bWVudDo6c2V0UmVhZHlTdGF0ZShSZWFkeVN0YXRlIHJlYWR5
U3RhdGUpCiAgICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21Mb2FkaW5nKQogICAgICAg
ICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21Mb2FkaW5nID0gTW9ub3RvbmljVGltZTo6bm93KCk7
CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgSW50ZXJhY3RpdmU6Ci0gICAgICAgIGlmICghbV9k
b2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKLSAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1p
bmcuZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKLSAgICAgICAgYnJlYWs7
CiAgICAgY2FzZSBDb21wbGV0ZToKICAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUNv
bXBsZXRlKQogICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSA9IE1vbm90
b25pY1RpbWU6Om5vdygpOworICAgICAgICBGQUxMVEhST1VHSDsKKyAgICBjYXNlIEludGVyYWN0
aXZlOgorICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpCisgICAg
ICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlID0gTW9ub3RvbmljVGltZTo6
bm93KCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1
bWVudExvYWRlci5jcHAKaW5kZXggZTMyNWYyZDA5MTQzMmUwMzZjN2FiNWE5MTUxMmQwMDk5MWJh
ZGM4ZS4uN2YxMTlmMTE1OGYxYWI2OTNjZTJjZjE0YTQwZGI5MTRhOWZjMDVmNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC03Miw2ICs3Miw3IEBACiAjaW5j
bHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNz
aW9uLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5j
bHVkZSAiUGluZ0xvYWRlci5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgogI2lu
Y2x1ZGUgIlBvbGljeUNoZWNrZXIuaCIKQEAgLTQxMSw3ICs0MTIsNyBAQCBib29sIERvY3VtZW50
TG9hZGVyOjppc0xvYWRpbmcoKSBjb25zdAogICAgIHJldHVybiBpc0xvYWRpbmdNYWluUmVzb3Vy
Y2UoKSB8fCAhbV9zdWJyZXNvdXJjZUxvYWRlcnMuaXNFbXB0eSgpIHx8ICFtX3BsdWdJblN0cmVh
bUxvYWRlcnMuaXNFbXB0eSgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5p
c2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYp
Cit2b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKIHsKICAgICBBU1NFUlQo
aXNNYWluVGhyZWFkKCkpOwogI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKQEAgLTQxOSw2
ICs0MjAsMTEgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVz
b3VyY2UmIHJlc291cmNlLCBjb25zdCBOZXR3b3JrTG9hZE0KICAgICAgICAgcmV0dXJuOwogI2Vu
ZGlmCiAKKyAgICBpZiAoYXV0byogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKSB7CisgICAg
ICAgIGlmIChhdXRvKiBkb21XaW5kb3cgPSBkb2N1bWVudC0+ZG9tV2luZG93KCkpCisgICAgICAg
ICAgICBkb21XaW5kb3ctPnBlcmZvcm1hbmNlKCkuYWRkTmF2aWdhdGlvblRpbWluZygqdGhpcywg
KmRvY3VtZW50LCByZXNvdXJjZSwgdGltaW5nKCksIG1ldHJpY3MpOworICAgIH0KKwogICAgIEFT
U0VSVF9VTlVTRUQocmVzb3VyY2UsIG1fbWFpblJlc291cmNlID09ICZyZXNvdXJjZSk7CiAgICAg
QVNTRVJUKG1fbWFpblJlc291cmNlKTsKICAgICBpZiAoIW1fbWFpblJlc291cmNlLT5lcnJvck9j
Y3VycmVkKCkgJiYgIW1fbWFpblJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCAwNzVmYjFmYWVkZmVmMzQyMDhhODFh
YmMzYmYxMjkxNDMyNzRhMjQzLi4yNDY3MzAyN2I3MDYzNWIxMjlkMDFiOWU0MmU1OWJjNDFlOTM2
MjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTczMywx
MCArNzMzLDkgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZUJ1ZmZlcihSZXNvdXJj
ZUhhbmRsZSosIFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVmZmUKICAgICBkaWRSZWNlaXZlQnVmZmVy
KFdURk1vdmUoYnVmZmVyKSwgZW5jb2RlZERhdGFMZW5ndGgsIERhdGFQYXlsb2FkQnl0ZXMpOwog
fQogCi12b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxl
KikKK3ZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUq
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiB7Ci0gICAgTmV0d29ya0xvYWRN
ZXRyaWNzIGVtcHR5TWV0cmljczsKLSAgICBkaWRGaW5pc2hMb2FkaW5nKGVtcHR5TWV0cmljcyk7
CisgICAgZGlkRmluaXNoTG9hZGluZyhtZXRyaWNzKTsKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWRl
cjo6ZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaAppbmRleCBiMmY2YTVlY2IzYmVhMDRl
OWJmYThkMWVlNzY2MmMzMmMxZGYzZDE1Li5hNDM3NmQ1MDExYmY4Mjg2ZmI0N2ZjMzM4NGYyOWI1
YzNkYzMyNjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaApAQCAtMjAw
LDcgKzIwMCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RBc3luYyhSZXNv
dXJjZUhhbmRsZSosIFJlc291cmNlUmVxdWVzdCYmLCBSZXNvdXJjZVJlc3BvbnNlJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUmVzb3VyY2VSZXF1ZXN0JiYpPiYmKSBvdmVycmlkZTsKICAgICB2
b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhciosIHVuc2lnbmVk
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZUJ1
ZmZlcihSZXNvdXJjZUhhbmRsZSosIFJlZjxTaGFyZWRCdWZmZXI+JiYsIGludCBlbmNvZGVkRGF0
YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFu
ZGxlKikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxl
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRGYWls
KFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogICAgIHZv
aWQgd2FzQmxvY2tlZChSZXNvdXJjZUhhbmRsZSopIG92ZXJyaWRlOwogICAgIHZvaWQgY2Fubm90
U2hvd1VSTChSZXNvdXJjZUhhbmRsZSopIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZVRpbWluZy5jcHAKaW5kZXggMTY4MjM0ZjQ3YmNiZTA3OTUwNjA1NDBhOWExYWFlNmVk
YjQ1MTZhNy4uN2UyMzQxMDhiNmE2Mjc2YzJkNmZjMTAzNmUwNjQ2NTNjMmU4NGQzZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC02Miw5ICs2Miw5IEBAIFJl
c291cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tQ2FjaGUoY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgaW5pdGlhdG9yCiAgICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHVybCwgaW5p
dGlhdG9yLCBsb2FkVGltaW5nLCByZXNwb25zZSwgc2VjdXJpdHlPcmlnaW4pOwogfQogCi1SZXNv
dXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291
cmNlLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWlu
ZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIGNvbnN0IFNl
Y3VyaXR5T3JpZ2luJiBzZWN1cml0eU9yaWdpbikKK1Jlc291cmNlVGltaW5nIFJlc291cmNlVGlt
aW5nOjpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IFVSTCYgdXJsLCBj
b25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWluZywgY29u
c3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIGNvbnN0IFNlY3VyaXR5
T3JpZ2luJiBzZWN1cml0eU9yaWdpbikKIHsKLSAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcocmVz
b3VyY2UucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCksIGluaXRpYXRvciwgbG9hZFRpbWluZywgbmV0
d29ya0xvYWRNZXRyaWNzLCByZXNvdXJjZS5yZXNwb25zZSgpLCBzZWN1cml0eU9yaWdpbik7Cisg
ICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHVybCwgaW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3
b3JrTG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKIH0K
IAogUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21TeW5jaHJvbm91c0xvYWQoY29u
c3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBs
b2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBz
ZWN1cml0eU9yaWdpbikKQEAgLTk3LDEwICs5NywxMCBAQCB2b2lkIFJlc291cmNlVGltaW5nOjpp
bml0U2VydmVyVGltaW5nKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogICAgICAg
ICBtX3NlcnZlclRpbWluZyA9IFNlcnZlclRpbWluZ1BhcnNlcjo6cGFyc2VTZXJ2ZXJUaW1pbmco
cmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpTZXJ2ZXJUaW1pbmcpKTsK
IH0KIAotVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IFJlc291cmNlVGltaW5n
Ojpwb3B1bGF0ZVNlcnZlclRpbWluZygpCitWZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGlt
aW5nPj4gUmVzb3VyY2VUaW1pbmc6OnBvcHVsYXRlU2VydmVyVGltaW5nKCkgY29uc3QKIHsKICAg
ICByZXR1cm4gV1RGOjptYXAobV9zZXJ2ZXJUaW1pbmcsIFtdIChhdXRvJiBlbnRyeSkgewotICAg
ICAgICByZXR1cm4gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc6OmNyZWF0ZShXVEZNb3ZlKGVudHJ5
Lm5hbWUpLCBlbnRyeS5kdXJhdGlvbiwgV1RGTW92ZShlbnRyeS5kZXNjcmlwdGlvbikpOworICAg
ICAgICByZXR1cm4gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc6OmNyZWF0ZShTdHJpbmcoZW50cnku
bmFtZSksIGVudHJ5LmR1cmF0aW9uLCBTdHJpbmcoZW50cnkuZGVzY3JpcHRpb24pKTsKICAgICB9
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5n
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaAppbmRleCA2NGY4N2Ni
M2JmZGI1MTVkNmM0ZTM4Mzk0ZmJjNGUzYWQ1M2UzMGI3Li42NGQxZWNmOGU3ODNiYzZhNGQ4ZmY3
ZTlkYWRhZWJmMDYyZGQ0ZmFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcu
aApAQCAtNDEsMTUgKzQxLDE1IEBAIGNsYXNzIFJlc291cmNlVGltaW5nIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJv
bUNhY2hlKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGlt
aW5nJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7Ci0g
ICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3Qg
U3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOworICAgIHN0YXRpYyBSZXNvdXJjZVRpbWlu
ZyBmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5p
dGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29u
c3QgU2VjdXJpdHlPcmlnaW4mKTsKICAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbVN5bmNo
cm9ub3VzTG9hZChjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9h
ZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwogCi0gICAgVVJMIHVybCgpIGNvbnN0IHsgcmV0
dXJuIG1fdXJsOyB9Ci0gICAgU3RyaW5nIGluaXRpYXRvcigpIGNvbnN0IHsgcmV0dXJuIG1faW5p
dGlhdG9yOyB9Ci0gICAgTG9hZFRpbWluZyBsb2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9s
b2FkVGltaW5nOyB9Ci0gICAgTmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljcygp
IGNvbnN0IHsgcmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzOyB9CisgICAgY29uc3QgVVJMJiB1
cmwoKSBjb25zdCB7IHJldHVybiBtX3VybDsgfQorICAgIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9y
KCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWF0b3I7IH0KKyAgICBjb25zdCBMb2FkVGltaW5nJiBs
b2FkVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9sb2FkVGltaW5nOyB9CisgICAgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MoKSBjb25zdCB7IHJldHVybiBtX25l
dHdvcmtMb2FkTWV0cmljczsgfQogICAgIGJvb2wgYWxsb3dUaW1pbmdEZXRhaWxzKCkgY29uc3Qg
eyByZXR1cm4gbV9hbGxvd1RpbWluZ0RldGFpbHM7IH0KLSAgICBWZWN0b3I8UmVmPFBlcmZvcm1h
bmNlU2VydmVyVGltaW5nPj4gcG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKTsKKyAgICBWZWN0b3I8UmVm
PFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gcG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSBjb25zdDsK
ICAgICBSZXNvdXJjZVRpbWluZyBpc29sYXRlZENvcHkoKSBjb25zdDsKIAogICAgIHZvaWQgb3Zl
cnJpZGVJbml0aWF0b3JOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSkgeyBtX2luaXRpYXRvciA9IG5h
bWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4
IDAwYzlkODcwMzM3NzkwNTY4N2ZhNmQwMzQ1NTE2NDAyNzY1ZDI0MjYuLmE2YjMxMTA0NDk4NDdi
YTIxMzk3NTAyYjEzNzI5ZjJmNTdlYzY5MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1
YnJlc291cmNlTG9hZGVyLmNwcApAQCAtODk2LDcgKzg5Niw3IEBAIHZvaWQgU3VicmVzb3VyY2VM
b2FkZXI6OnJlcG9ydFJlc291cmNlVGltaW5nKGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0
d29ya0xvCiAgICAgICAgIHJldHVybjsKIAogICAgIFNlY3VyaXR5T3JpZ2luJiBvcmlnaW4gPSBt
X29yaWdpbiA/ICptX29yaWdpbiA6IGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGF1
dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoKm1fcmVzb3VyY2Us
IG1fcmVzb3VyY2UtPmluaXRpYXRvck5hbWUoKSwgbV9sb2FkVGltaW5nLCBuZXR3b3JrTG9hZE1l
dHJpY3MsIG9yaWdpbik7CisgICAgYXV0byByZXNvdXJjZVRpbWluZyA9IFJlc291cmNlVGltaW5n
Ojpmcm9tTG9hZCgqbV9yZXNvdXJjZSwgbV9yZXNvdXJjZS0+cmVzb3VyY2VSZXF1ZXN0KCkudXJs
KCksIG1fcmVzb3VyY2UtPmluaXRpYXRvck5hbWUoKSwgbV9sb2FkVGltaW5nLCBuZXR3b3JrTG9h
ZE1ldHJpY3MsIG9yaWdpbik7CiAKICAgICAvLyBXb3JrZXIgcmVzb3VyY2VzIGxvYWRlZCBoZXJl
IGFyZSBhbGwgQ2FjaGVkUmF3UmVzb3VyY2VzIGxvYWRlZCB0aHJvdWdoIFdvcmtlclRocmVhZGFi
bGVMb2FkZXIuCiAgICAgLy8gUGFzcyB0aGUgUmVzb3VyY2VUaW1pbmcgaW5mb3JtYXRpb24gb24g
c28gdGhhdCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIG1heSBhZGQgdGhlbSB0byB0aGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKaW5kZXggNzY2OTA4NWU1ZDhmODIyZGQzYjE3MjZmMGRh
YzRlNmRmMjZjMWYxMS4uYzJhZTZmYzVkYmJjMmY2YWQwNzVmZTQ4Nzc0NGIxNDJiNGRhYTk1MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKQEAgLTQzLDYgKzQzLDcgQEAKICNpbmNs
dWRlICJQZXJmb3JtYW5jZU1hcmtPcHRpb25zLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFz
dXJlT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvbi5oIgorI2luY2x1
ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNl
T2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgpAQCAtMTIyLDYgKzEyMyw5IEBAIFZlY3Rv
cjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzKCkgY29u
c3QKIHsKICAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzOwogCisg
ICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZykKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZp
Z2F0aW9uVGltaW5nKTsKKwogICAgIGVudHJpZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1p
bmdCdWZmZXIpOwogCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTQwLDYgKzE0NCw5IEBA
IFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVz
QnlUeXBlKGNvbnN0IFN0cmluZyYgZW50CiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50cnlU
eXBlID09ICJuYXZpZ2F0aW9uIikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9u
VGltaW5nKTsKKyAgICAKICAgICBpZiAoZW50cnlUeXBlID09ICJyZXNvdXJjZSIpCiAgICAgICAg
IGVudHJpZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCkBAIC0xNjEs
NiArMTY4LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2U6
OmdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW0KIHsKICAgICBWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzOwogCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWlu
ZyAmJiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8IGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpICYm
IG5hbWUgPT0gbV9uYXZpZ2F0aW9uVGltaW5nLT5uYW1lKCkpCisgICAgICAgIGVudHJpZXMuYXBw
ZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8
IGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2Ug
OiBtX3Jlc291cmNlVGltaW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5h
bWUoKSA9PSBuYW1lKQpAQCAtMTg0LDYgKzE5NCw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFt
CiAKIHZvaWQgUGVyZm9ybWFuY2U6OmFwcGVuZEJ1ZmZlcmVkRW50cmllc0J5VHlwZShjb25zdCBT
dHJpbmcmIGVudHJ5VHlwZSwgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4mIGVudHJp
ZXMpIGNvbnN0CiB7CisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiBlbnRyeVR5cGUgPT0g
Im5hdmlnYXRpb24iKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcp
OworCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFw
cGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMjE0LDYgKzIyNywxMiBA
QCB2b2lkIFBlcmZvcm1hbmNlOjpyZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpCiAgICAgcXVl
dWVFbnRyeSgqbV9maXJzdENvbnRlbnRmdWxQYWludCk7CiB9CiAKK3ZvaWQgUGVyZm9ybWFuY2U6
OmFkZE5hdmlnYXRpb25UaW1pbmcoRG9jdW1lbnRMb2FkZXImIGRvY3VtZW50TG9hZGVyLCBEb2N1
bWVudCYgZG9jdW1lbnQsIENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTG9hZFRpbWlu
ZyYgdGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCit7CisgICAgbV9u
YXZpZ2F0aW9uVGltaW5nID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpjcmVhdGUobV90
aW1lT3JpZ2luLCByZXNvdXJjZSwgdGltaW5nLCBtZXRyaWNzLCBkb2N1bWVudC50aW1pbmcoKSwg
ZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXIudHJpZ2dlcmluZ0FjdGlv
bigpLnR5cGUoKSk7CisgICAgcXVldWVFbnRyeSgqbV9uYXZpZ2F0aW9uVGltaW5nKTsKK30KKwog
dm9pZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VUaW1pbmcoUmVzb3VyY2VUaW1pbmcmJiByZXNv
dXJjZVRpbWluZykKIHsKICAgICBBU1NFUlQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKQEAg
LTM0Niw2ICszNjUsMTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cmVtb3ZlQWxsT2JzZXJ2ZXJzKCkK
IHZvaWQgUGVyZm9ybWFuY2U6OnJlZ2lzdGVyUGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5j
ZU9ic2VydmVyJiBvYnNlcnZlcikKIHsKICAgICBtX29ic2VydmVycy5hZGQoJm9ic2VydmVyKTsK
KworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgb2JzZXJ2ZXIudHlwZUZpbHRlcigpLmNv
bnRhaW5zKFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok5hdmlnYXRpb24pKSB7CisgICAgICAgIG9i
c2VydmVyLnF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWluZyk7CisgICAgICAgIHNjaGVkdWxl
VGFza0lmTmVlZGVkKCk7CisgICAgfQogfQogCiB2b2lkIFBlcmZvcm1hbmNlOjp1bnJlZ2lzdGVy
UGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5jZU9ic2VydmVyJiBvYnNlcnZlcikKQEAgLTM1
Nyw3ICszODEsNyBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50
cnkmIGVudHJ5KQogewogICAgIGJvb2wgc2hvdWxkU2NoZWR1bGVUYXNrID0gZmFsc2U7CiAgICAg
Zm9yIChhdXRvJiBvYnNlcnZlciA6IG1fb2JzZXJ2ZXJzKSB7Ci0gICAgICAgIGlmIChvYnNlcnZl
ci0+dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnR5cGUoKSkpIHsKKyAgICAgICAgaWYgKG9i
c2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkucGVyZm9ybWFuY2VFbnRyeVR5cGUo
KSkpIHsKICAgICAgICAgICAgIG9ic2VydmVyLT5xdWV1ZUVudHJ5KGVudHJ5KTsKICAgICAgICAg
ICAgIHNob3VsZFNjaGVkdWxlVGFzayA9IHRydWU7CiAgICAgICAgIH0KQEAgLTM2Niw2ICszOTAs
MTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlVGFzaykKICAgICAgICAgcmV0dXJuOwogCisgICAg
c2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKK30KKwordm9pZCBQZXJmb3JtYW5jZTo6c2NoZWR1bGVU
YXNrSWZOZWVkZWQoKQorewogICAgIGlmIChtX2hhc1NjaGVkdWxlZFRpbWluZ0J1ZmZlckRlbGl2
ZXJ5VGFzaykKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKaW5k
ZXggOTlmMjU0YjNjOTUwOTZhNWNmZDM0YzJlOTBmOWRjZGMzODc0NjRjOC4uNWU0Njg2NGJmZDA3
NzExNDM0OThmZWNhNGU1NTA5NTU2MzM4NjM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2Uu
aApAQCAtNDgsMTIgKzQ4LDE3IEBAIGNsYXNzIEpTR2xvYmFsT2JqZWN0OwogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291cmNlOworY2xhc3MgRG9jdW1lbnQ7CitjbGFz
cyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRUaW1pbmc7CitjbGFzcyBOZXR3b3JrTG9hZE1l
dHJpY3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZUVu
dHJ5OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwogY2xhc3MgUGVyZm9ybWFuY2VNZWFzdXJlOwog
Y2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNlcnZlcjsKIGNsYXNzIFBlcmZvcm1hbmNlUGFp
bnRUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRpbWluZzsKQEAgLTkwLDYgKzk1LDcgQEAgcHVi
bGljOgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJmb3JtYW5jZU1lYXN1cmU+PiBtZWFzdXJlKEpT
Qzo6SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lLCBPcHRpb25hbDxT
dGFydE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0IFN0cmluZyYgZW5kTWFyayk7CiAgICAgdm9p
ZCBjbGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYgbWVhc3VyZU5hbWUpOwogCisgICAgdm9pZCBh
ZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiwgRG9jdW1lbnQmLCBDYWNoZWRSZXNv
dXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAg
ICB2b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGltaW5nJiYpOwogCiAgICAgdm9pZCBy
ZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpAQCAtMTIxLDYgKzEyNyw3IEBAIHByaXZhdGU6
CiAgICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGxUaW1lckZpcmVkKCk7CiAKICAgICB2
b2lkIHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYpOworICAgIHZvaWQgc2NoZWR1bGVUYXNr
SWZOZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4g
bV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3Rp
bWluZzsKQEAgLTEzOSw2ICsxNDYsNyBAQCBwcml2YXRlOgogCiAgICAgTW9ub3RvbmljVGltZSBt
X3RpbWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBt
X25hdmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+IG1f
Zmlyc3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlcmZvcm1hbmNlVXNl
clRpbWluZz4gbV91c2VyVGltaW5nOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eS5oCmluZGV4IGFmYWNmYjA5MGIyMWNiYTYxNGQ3OGNlODhhYzc1M2UyNjczZTEyNjUuLjNkZjVl
NGVmYmFmMzI2YzU3MWY1ZTZlNjVlMzU2YzJkNDMyZmYwZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5oCkBAIC00NCwxMCArNDQsMTAgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgflBlcmZvcm1hbmNlRW50cnkoKTsKIAogICAgIGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0
IHsgcmV0dXJuIG1fbmFtZTsgfQotICAgIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVy
biBtX3N0YXJ0VGltZTsgfQotICAgIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1f
ZHVyYXRpb247IH0KKyAgICB2aXJ0dWFsIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVy
biBtX3N0YXJ0VGltZTsgfQorICAgIHZpcnR1YWwgZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gbV9kdXJhdGlvbjsgfQogCi0gICAgZW51bSBjbGFzcyBUeXBlIHsKKyAgICBlbnVtIGNs
YXNzIFR5cGUgOiB1aW50OF90IHsKICAgICAgICAgTmF2aWdhdGlvbiAgPSAxIDw8IDAsCiAgICAg
ICAgIE1hcmsgICAgICAgID0gMSA8PCAxLAogICAgICAgICBNZWFzdXJlICAgICA9IDEgPDwgMiwK
QEAgLTU1LDE2ICs1NSwxMSBAQCBwdWJsaWM6CiAgICAgICAgIFBhaW50ICAgICAgID0gMSA8PCA0
CiAgICAgfTsKIAotICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgPSAwOworICAgIHZpcnR1
YWwgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIEFT
Q0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCA9IDA7CiAKICAgICBzdGF0aWMgT3B0aW9uYWw8
VHlwZT4gcGFyc2VFbnRyeVR5cGVTdHJpbmcoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0g
ICAgYm9vbCBpc1Jlc291cmNlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6OlJlc291
cmNlOyB9Ci0gICAgYm9vbCBpc01hcmsoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6
TWFyazsgfQotICAgIGJvb2wgaXNNZWFzdXJlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5
cGU6Ok1lYXN1cmU7IH0KLSAgICBib29sIGlzUGFpbnQoKSBjb25zdCB7IHJldHVybiB0eXBlKCkg
PT0gVHlwZTo6UGFpbnQ7IH0KLQogICAgIHN0YXRpYyBib29sIHN0YXJ0VGltZUNvbXBhcmVMZXNz
VGhhbihjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4mIGEsIGNvbnN0IFJlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5PiYgYikKICAgICB7CiAgICAgICAgIHJldHVybiBhLT5zdGFydFRpbWUoKSA8
IGItPnN0YXJ0VGltZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU1hcmsuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJrLmgKaW5kZXgg
YzczYjIzMTJmMzJhMDRjODIxYzhkMGVjYTg3N2VhYmIzM2ZlNGUyZi4uYjc1MTRmMDE1MzU4MDlk
YWI1M2NjYWMwNjRjNTJiMGYxOGViNmM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU1hcmsuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
TWFyay5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToKICAgICBQZXJmb3JtYW5jZU1hcmso
Y29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlw
dFZhbHVlPiYmKTsKICAgICB+UGVyZm9ybWFuY2VNYXJrKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJrOyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVu
dHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1hcms7IH0KICAgICBBU0NJSUxp
dGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm1hcmsiX3M7IH0KIAogICAg
IFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1fc2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJD
b3JlOjpQZXJmb3JtYW5jZU1hcmspCi0gICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNv
cmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRyeS5pc01hcmsoKTsgfQot
U1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VNZWFzdXJlLmgKaW5kZXggMzVkYjZhMTY2YjU3ZWU4NmU2MzA4MzJkZjQyNjg1NWQ5N2E3ZmJm
NS4uMmQyYWEzZWUxMjk1MjEyZTE2ZWRlNmUzZGRjODBmYzY0ZGUyNmY2OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0
ZToKICAgICBQZXJmb3JtYW5jZU1lYXN1cmUoY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3Rh
cnRUaW1lLCBkb3VibGUgZW5kVGltZSwgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkZXRh
aWwpOwogICAgIH5QZXJmb3JtYW5jZU1lYXN1cmUoKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50
cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWVhc3VyZTsgfQogICAgIEFTQ0lJ
TGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAibWVhc3VyZSJfczsgfQog
CiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lO
KFdlYkNvcmU6OlBlcmZvcm1hbmNlTWVhc3VyZSkKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29u
c3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWVh
c3VyZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTgxYjM1YmU2YzQ1YWRjZjg1YzY5M2ExOWMzYWEyZDgwMDg5MzM4NgotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApA
QCAtMCwwICsxLDE0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zy5oIgorCisjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVRp
bWluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlIHRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
TmF2aWdhdGlvblR5cGUoTmF2aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCit7CisgICAgc3dp
dGNoIChuYXZpZ2F0aW9uVHlwZSkgeworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3
YXJkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0
aW9uVHlwZTo6QmFja19mb3J3YXJkOworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OlJlbG9hZDoK
KyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5
cGU6OlJlbG9hZDsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpMaW5rQ2xpY2tlZDoKKyAgICBj
YXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtU3VibWl0dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5
cGU6OkZvcm1SZXN1Ym1pdHRlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpPdGhlcjoKKyAg
ICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6
Ok5hdmlnYXRlOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4g
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7Cit9
CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBj
b25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1l
dHJpY3MsIGNvbnN0IERvY3VtZW50VGltaW5nJiBkb2N1bWVudFRpbWluZywgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIG9yaWdpbiwgV2ViQ29yZTo6TmF2aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUp
CisgICAgOiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKHRpbWVPcmlnaW4sIFJlc291cmNlVGlt
aW5nOjpmcm9tTG9hZChyZXNvdXJjZSwgcmVzb3VyY2UucmVzcG9uc2UoKS51cmwoKSwgIm5hdmln
YXRpb24iX3MsIGxvYWRUaW1pbmcsIG1ldHJpY3MsIG9yaWdpbikpCisgICAgLCBtX2RvY3VtZW50
VGltaW5nKGRvY3VtZW50VGltaW5nKQorICAgICwgbV9uYXZpZ2F0aW9uVHlwZSh0b1BlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBlKG5hdmlnYXRpb25UeXBlKSkgeyB9CisK
K1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6flBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
ZygpID0gZGVmYXVsdDsKKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bWls
bGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSB0aW1lLCBPcHRpb25hbDxNb25vdG9u
aWNUaW1lPiB0aW1lT3JpZ2luKSBjb25zdAoreworICAgIGlmICghdGltZSkKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpyZWR1Y2VUaW1lUmVzb2x1dGlvbih0aW1l
IC0gKHRpbWVPcmlnaW4gPyAqdGltZU9yaWdpbiA6IG1fdGltZU9yaWdpbikpLm1pbGxpc2Vjb25k
cygpOworfQorCitib29sIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNo
ZWNrRmFpbHMoKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0
aW9uLXRpbWluZy0yLyNkZm4tc2FtZS1vcmlnaW4tY2hlY2sKKyAgICByZXR1cm4gIW1fcmVzb3Vy
Y2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkKKyAgICAgICAgfHwgbV9yZXNvdXJjZVRpbWlu
Zy5sb2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5SZWRpcmVjdCgpCisgICAgICAgIHx8ICFtX3Jl
c291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNTYW1lT3JpZ2luQXNQcmV2aW91c0RvY3VtZW50
KCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50
U3RhcnQoKSBjb25zdAoreworICAgIGlmIChzYW1lT3JpZ2luQ2hlY2tGYWlscygpKQorICAgICAg
ICByZXR1cm4gMC4wOworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS51bmxvYWRFdmVudFN0YXJ0KCkpOworfQorCitkb3VibGUg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7Cisg
ICAgaWYgKHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkpCisgICAgICAgIHJldHVybiAwLjA7CisgICAg
cmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWlu
ZygpLnVubG9hZEV2ZW50RW5kKCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpkb21JbnRlcmFjdGl2ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25k
c1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpOworfQorCitkb3Vi
bGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1l
bnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQpOworfQorCitkb3VibGUgUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdAor
eworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRv
bUNvbnRlbnRMb2FkZWRFdmVudEVuZCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OmRvbUNvbXBsZXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRz
U2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSk7Cit9CisKK2RvdWJsZSBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2FkVGlt
aW5nKCkubG9hZEV2ZW50U3RhcnQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25k
c1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmxvYWRFdmVudEVuZCgp
KTsKK30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZSBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUoKSBjb25zdAoreworICAgIHJldHVybiBtX25h
dmlnYXRpb25UeXBlOworfQorCit1bnNpZ25lZCBzaG9ydCBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6OnJlZGlyZWN0Q291bnQoKSBjb25zdAoreworICAgIGlmICghbV9yZXNvdXJjZVRpbWlu
Zy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAobV9y
ZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5SZWRpcmVjdCgpKQorICAg
ICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmco
KS5yZWRpcmVjdENvdW50KCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnN0YXJ0VGltZSgpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25h
dmlnYXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmctc3RhcnRU
aW1lCisgICAgcmV0dXJuIDAuMDsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZzo6ZHVyYXRpb24oKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9u
YXZpZ2F0aW9uLXRpbWluZy0yLyNkb20tUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLWR1cmF0
aW9uCisgICAgcmV0dXJuIGxvYWRFdmVudEVuZCgpIC0gc3RhcnRUaW1lKCk7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczYzBmN2FkZWNjMGM0NjFlNmJjODc4NGI4
YjMyYTVkMWFjY2MxN2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICog
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJEb2N1bWVudFRpbWluZy5oIgor
I2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKKyNpbmNsdWRlIDx3dGYvTW9u
b3RvbmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQ2FjaGVk
UmVzb3VyY2U7CitjbGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOwor
Y2xhc3MgU2VjdXJpdHlPcmlnaW47CitlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhf
dDsKKworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIGZpbmFsIDogcHVibGljIFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgeworcHVibGljOgorICAgIGVudW0gY2xhc3MgTmF2aWdh
dGlvblR5cGUgOiB1aW50OF90IHsKKyAgICAgICAgTmF2aWdhdGUsCisgICAgICAgIFJlbG9hZCwK
KyAgICAgICAgQmFja19mb3J3YXJkLAorICAgICAgICBQcmVyZW5kZXIsCisgICAgfTsKKworICAg
IHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0YXRpYyBSZWY8UGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nPiBjcmVhdGUoQXJncyYmLi4uIGFyZ3MpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLikp
OyB9CisgICAgflBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZygpOworCisgICAgVHlwZSBwZXJm
b3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok5hdmlnYXRpb247
IH0KKyAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm5h
dmlnYXRpb24iX3M7IH0KKworICAgIGRvdWJsZSB1bmxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7Cisg
ICAgZG91YmxlIHVubG9hZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUludGVyYWN0
aXZlKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KCkgY29u
c3Q7CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRv
dWJsZSBkb21Db21wbGV0ZSgpIGNvbnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRTdGFydCgpIGNv
bnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBOYXZpZ2F0aW9uVHlw
ZSB0eXBlKCkgY29uc3Q7CisgICAgdW5zaWduZWQgc2hvcnQgcmVkaXJlY3RDb3VudCgpIGNvbnN0
OworCisgICAgZG91YmxlIHN0YXJ0VGltZSgpIGNvbnN0IGZpbmFsOworICAgIGRvdWJsZSBkdXJh
dGlvbigpIGNvbnN0IGZpbmFsOworCitwcml2YXRlOgorICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIENhY2hlZFJlc291cmNlJiwgY29uc3Qg
TG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IERvY3VtZW50VGlt
aW5nJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mLCBXZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSk7CisK
KyAgICBkb3VibGUgbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSwgT3B0aW9u
YWw8TW9ub3RvbmljVGltZT4gdGltZU9yaWdpbiA9IFdURjo6bnVsbG9wdCkgY29uc3Q7CisgICAg
Ym9vbCBzYW1lT3JpZ2luQ2hlY2tGYWlscygpIGNvbnN0OworCisgICAgRG9jdW1lbnRUaW1pbmcg
bV9kb2N1bWVudFRpbWluZzsKKyAgICBOYXZpZ2F0aW9uVHlwZSBtX25hdmlnYXRpb25UeXBlOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBlODFlN2YxODcy
MmRjZmFiYTkxOWIzNmViZTg3NzkxNGZiOThjMzkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKQEAgLTAsMCArMSw1
MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRp
bWluZy0yLyNkb20tcGVyZm9ybWFuY2VuYXZpZ2F0aW9udGltaW5nCisKK3R5cGVkZWYgZG91Ymxl
IERPTUhpZ2hSZXNUaW1lU3RhbXA7CisKK2VudW0gTmF2aWdhdGlvblR5cGUgeworICAgICJuYXZp
Z2F0ZSIsCisgICAgInJlbG9hZCIsCisgICAgImJhY2tfZm9yd2FyZCIsCisgICAgInByZXJlbmRl
ciIKK307CisKK1sKKyAgICBFeHBvc2VkPVdpbmRvdworXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nIDogUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7CisgICAgcmVhZG9u
bHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50U3RhcnQ7
CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9h
ZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVT
dGFtcCBkb21JbnRlcmFjdGl2ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhp
Z2hSZXNUaW1lU3RhbXAgZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkg
ICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbnRlbnRMb2FkZWRFdmVu
dEVuZDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAg
ZG9tQ29tcGxldGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGlt
ZVN0YW1wIGxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCBsb2FkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJp
YnV0ZSBOYXZpZ2F0aW9uVHlwZSAgICAgIHR5cGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJp
YnV0ZSB1bnNpZ25lZCBzaG9ydCAgICAgIHJlZGlyZWN0Q291bnQ7CisgICAgW0RlZmF1bHRdIG9i
amVjdCB0b0pTT04oKTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2Vy
dmVyLmNwcAppbmRleCA0NjQ3MjY3ZDEyODlkYmI2YTUzMjBhNGFmZWIyMDQ2MGFiZjI4NzYxLi41
NmYzMmE1ZGVkMWNhNGNhYzMxN2ViMWM5YTk5MDc4MDcyYjVkMmZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKQEAgLTEwNyw2ICsxMDcsMTEgQEAgRXhj
ZXB0aW9uT3I8dm9pZD4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6b2JzZXJ2ZShJbml0JiYgaW5pdCkK
ICAgICByZXR1cm4geyB9OwogfQogCitWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3JkcygpCit7CisgICAgcmV0dXJuIHN0ZDo6ZXhj
aGFuZ2UobV9lbnRyaWVzVG9EZWxpdmVyLCB7IH0pOworfQorCiB2b2lkIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXI6OmRpc2Nvbm5lY3QoKQogewogICAgIGlmIChtX3BlcmZvcm1hbmNlKQpAQCAtMTE0LDYg
KzExOSw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCgpCiAKICAgICBt
X3JlZ2lzdGVyZWQgPSBmYWxzZTsKICAgICBtX2VudHJpZXNUb0RlbGl2ZXIuY2xlYXIoKTsKKyAg
ICBtX3R5cGVGaWx0ZXIgPSB7IH07CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6cXVl
dWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkKQEAgLTEzMCw3ICsxMzYsNyBAQCB2b2lk
IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIoKQogICAgIGlmICghY29udGV4dCkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmll
cyA9IFdURk1vdmUobV9lbnRyaWVzVG9EZWxpdmVyKTsKKyAgICBWZWN0b3I8UmVmUHRyPFBlcmZv
cm1hbmNlRW50cnk+PiBlbnRyaWVzID0gc3RkOjpleGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIs
IHsgfSk7CiAgICAgYXV0byBsaXN0ID0gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Y3Jl
YXRlKFdURk1vdmUoZW50cmllcykpOwogCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3
aWxsRmlyZU9ic2VydmVyQ2FsbGJhY2soKmNvbnRleHQsICJQZXJmb3JtYW5jZU9ic2VydmVyIl9z
KTsKQEAgLTE0MSwxMCArMTQ3LDkgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkZWxpdmVy
KCkKIFZlY3RvcjxTdHJpbmc+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlw
ZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKIHsKICAgICBWZWN0b3I8U3RyaW5n
PiBlbnRyeVR5cGVzID0gewotICAgICAgICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9i
LzE4NDM2Mz4gQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKLSAgICAg
ICAgLy8gIm5hdmlnYXRpb24iX3MsCiAgICAgICAgICJtYXJrIl9zLAotICAgICAgICAibWVhc3Vy
ZSJfcworICAgICAgICAibWVhc3VyZSJfcywKKyAgICAgICAgIm5hdmlnYXRpb24iX3MsCiAgICAg
fTsKIAogICAgIGlmIChpczxEb2N1bWVudD4oY29udGV4dCkgJiYgZG93bmNhc3Q8RG9jdW1lbnQ+
KGNvbnRleHQpLnN1cHBvcnRzUGFpbnRUaW1pbmcoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU9ic2VydmVyLmgKaW5kZXggMjg3MmYxN2FhYjViNTc2NmJmYzQ4Y2M0ODAwMDRhZGQ4
YmRlMWZmOS4uNDE5MzA1ZDQ3YzIxNTI3ZDhlMWNiZWI1N2JjZTVjMGQ4MmMyYTdkOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKQEAgLTU3LDYgKzU3LDcgQEAg
cHVibGljOgogCiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gb2JzZXJ2ZShJbml0JiYpOwogICAgIHZv
aWQgZGlzY29ubmVjdCgpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IHRh
a2VSZWNvcmRzKCk7CiAKICAgICBPcHRpb25TZXQ8UGVyZm9ybWFuY2VFbnRyeTo6VHlwZT4gdHlw
ZUZpbHRlcigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZUZpbHRlcjsgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAppbmRleCBiNzA3ZjY2MDJlMzA5N2FjMjM3
Y2VhYzcyZTRhN2QwNjcyNjM2NTEzLi42ODNhMmJlYTAxNDU5NDMyNTdmOWM3ZjIwMmU2ZjU1YzNk
YjRiZDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwK
QEAgLTMzLDggKzMzLDkgQEAKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgewogICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihQZXJmb3JtYW5j
ZU9ic2VydmVyQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgdW5kZWZpbmVkIG9ic2VydmUoUGVy
Zm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CisgICAgdW5kZWZpbmVkIG9ic2VydmUob3B0
aW9uYWwgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CiAgICAgdW5kZWZpbmVkIGRp
c2Nvbm5lY3QoKTsKKyAgICBzZXF1ZW5jZTxQZXJmb3JtYW5jZUVudHJ5PiB0YWtlUmVjb3Jkcygp
OwogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBzdGF0aWMgcmVhZG9ubHkg
YXR0cmlidXRlIEZyb3plbkFycmF5PERPTVN0cmluZz4gc3VwcG9ydGVkRW50cnlUeXBlczsKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVu
dHJ5TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRy
eUxpc3QuY3BwCmluZGV4IGUwMzY2NWFhY2I3MGJiOGY4NjM5YWY0YmM3YWUxZDA2MGRiYjFlNDYu
LmRkN2ZjOTdjYTM4ZjgzZTI0NTVlOTI3MDgyMzUxNTAwM2U5YTljZTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcApAQCAt
NjQsNyArNjQsNyBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5j
ZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRyaWVzQnlOYW1lKAogICAgIGZvciAoYXV0byYgZW50
cnkgOiBtX2VudHJpZXMpIHsKICAgICAgICAgaWYgKCFuYW1lLmlzTnVsbCgpICYmIGVudHJ5LT5u
YW1lKCkgIT0gbmFtZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBpZiAodHlwZSAm
JiBlbnRyeS0+dHlwZSgpICE9ICp0eXBlKQorICAgICAgICBpZiAodHlwZSAmJiBlbnRyeS0+cGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSAhPSAqdHlwZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAg
ICAgICBlbnRyaWVzLmFwcGVuZChlbnRyeS5jb3B5UmVmKCkpOwogICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmgKaW5kZXggYTI4MWJhMzgyMjQ4Zjgy
MzYwZjM3NzhiMWJmZmY1NWUzOTZlMjVjZi4uNzBmODA4NWY5Y2M3NTg3OTA0NjI5MTBjODBhYTc0
YTZiYzc3NDAyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBh
aW50VGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGlt
aW5nLmgKQEAgLTQ0LDEzICs0NCw5IEBAIHByaXZhdGU6CiAgICAgfQogCiAgICAgQVNDSUlMaXRl
cmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJwYWludCJfczsgfQotICAgIFR5
cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9CisgICAgVHlwZSBw
ZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9
CiAKICAgICB+UGVyZm9ybWFuY2VQYWludFRpbWluZygpID0gZGVmYXVsdDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpQZXJmb3JtYW5jZVBhaW50VGltaW5nKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBX
ZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNQYWludCgp
OyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCBkZDcxYWE3Y2IxNzhiM2Iw
ODVlM2FhOWUyYzViYjNjZjIzN2ViMGE5Li42ZTMwNGU5Y2E5MmNmMWVkYTdmMWNmNDU5NGMzYWRj
ZDc4N2MzNDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAKQEAgLTgxLDEyICs4MSw5IEBAIFJlZjxQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nPiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3RvbmljVGltZSB0
CiAKIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmco
TW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5n
KQogICAgIDogUGVyZm9ybWFuY2VFbnRyeShyZXNvdXJjZVRpbWluZy51cmwoKS5zdHJpbmcoKSwg
ZW50cnlTdGFydFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpLCBlbnRyeUVuZFRpbWUo
dGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpKQotICAgICwgbV9pbml0aWF0b3JUeXBlKHJlc291
cmNlVGltaW5nLmluaXRpYXRvcigpKQogICAgICwgbV90aW1lT3JpZ2luKHRpbWVPcmlnaW4pCi0g
ICAgLCBtX2xvYWRUaW1pbmcocmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpKQotICAgICwgbV9u
ZXR3b3JrTG9hZE1ldHJpY3MocmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkpCi0g
ICAgLCBtX3Nob3VsZFJlcG9ydERldGFpbHMocmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRh
aWxzKCkpCi0gICAgLCBtX3NlcnZlclRpbWluZyhyZXNvdXJjZVRpbWluZy5wb3B1bGF0ZVNlcnZl
clRpbWluZygpKQorICAgICwgbV9yZXNvdXJjZVRpbWluZyhXVEZNb3ZlKHJlc291cmNlVGltaW5n
KSkKKyAgICAsIG1fc2VydmVyVGltaW5nKG1fcmVzb3VyY2VUaW1pbmcucG9wdWxhdGVTZXJ2ZXJU
aW1pbmcoKSkKIHsKIH0KIApAQCAtOTQsNyArOTEsNyBAQCBQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nOjp+UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZygpID0gZGVmYXVsdDsKIAogY29uc3QgU3Ry
aW5nJiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2woKSBjb25zdAog
ewotICAgIHJldHVybiBtX25ldHdvcmtMb2FkTWV0cmljcy5wcm90b2NvbDsKKyAgICByZXR1cm4g
bV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5wcm90b2NvbDsKIH0KIAogZG91
YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OndvcmtlclN0YXJ0KCkgY29uc3QKQEAgLTEw
NSwxNDAgKzEwMiwxNDAgQEAgZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Ondvcmtl
clN0YXJ0KCkgY29uc3QKIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlZGly
ZWN0U3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAg
IGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0
dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlZGlyZWN0U3RhcnQoKSk7CisgICAgcmV0dXJu
IG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdFN0YXJ0KCkpOwogfQogCiBkb3VibGUgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RFbmQoKSBjb25zdAogewotICAgIGlmICgh
bV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1Rp
bWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9u
aWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJl
ZGlyZWN0RW5kKCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0
YW1wKG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVkaXJlY3RF
bmQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0YXJ0
KCkgY29uc3QKIHsKICAgICAvLyBmZXRjaFN0YXJ0IGlzIGEgcmVxdWlyZWQgcHJvcGVydHkuCi0g
ICAgQVNTRVJUKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkpOworICAgIEFTU0VSVChtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwogCi0gICAgcmV0dXJuIG1vbm90
b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1pbmcu
ZmV0Y2hTdGFydCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3Rh
cnQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpkb21haW5Mb29r
dXBTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAg
aWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1
cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0
IDw9IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCku
ZG9tYWluTG9va3VwU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGZldGNoU3RhcnQoKTsK
IAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3
b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9h
ZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1l
dHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpkb21haW5Mb29rdXBFbmQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRS
ZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFp
bHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmlj
cy5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3
b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKICAgICAgICAgcmV0dXJu
IGRvbWFpbkxvb2t1cFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCk7Cisg
ICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNl
VGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCk7CiB9CiAKIGRvdWJs
ZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQoKSBjb25zdAogewotICAg
IGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5h
bGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25l
dHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcykKICAgICAg
ICAgcmV0dXJuIGRvbWFpbkxvb2t1cEVuZCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGlt
ZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQp
OworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQpOwogfQogCiBkb3Vi
bGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCgpIGNvbnN0CiB7Ci0gICAg
aWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFs
bG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0
d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRp
bWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpCiAgICAgICAgIHJl
dHVybiBjb25uZWN0U3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhp
Z2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCk7CisgICAgcmV0
dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6c2VjdXJlQ29ubmVjdGlvblN0YXJ0KCkgY29uc3QKIHsKLSAgICBp
ZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxs
b3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAobV9uZXR3
b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IHJldXNlZFRMU0Nvbm5lY3Rp
b25TZW50aW5lbCkKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2VkVExTQ29ubmVjdGlvblNlbnRpbmVsKQog
ICAgICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRy
aWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQog
ICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGln
aFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQp
OworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQpOwog
fQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVxdWVzdFN0YXJ0KCkgY29u
c3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3Vy
Y2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKICAg
ICAvLyByZXF1ZXN0U3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBtYWRl
LgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcykKKyAg
ICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQg
PD0gMF9tcykKICAgICAgICAgcmV0dXJuIGNvbm5lY3RFbmQoKTsKIAotICAgIHJldHVybiBuZXR3
b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVx
dWVzdFN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0
YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVzdFN0YXJ0KTsK
IH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQoKSBj
b25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNv
dXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAog
ICAgIC8vIHJlc3BvbnNlU3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBt
YWRlLgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMp
CisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VT
dGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gcmVxdWVzdFN0YXJ0KCk7CiAKLSAgICByZXR1
cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRy
aWNzLnJlc3BvbnNlU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hS
ZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25z
ZVN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNl
RW5kKCkgY29uc3QKIHsKICAgICAvLyByZXNwb25zZUVuZCBpcyBhIHJlcXVpcmVkIHByb3BlcnR5
LgotICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0NvbXBsZXRlKCkgfHwgbV9sb2Fk
VGltaW5nLnJlc3BvbnNlRW5kKCkpOworICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSB8fCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1p
bmcoKS5yZXNwb25zZUVuZCgpKTsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0Nv
bXBsZXRlKCkpIHsKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5pc0NvbXBsZXRlKCkpIHsKICAgICAgICAgLy8gcmVzcG9uc2VFbmQgaXMgMCB3aGVuIGEgbmV0
d29yayByZXF1ZXN0IGlzIG5vdCBtYWRlLgogICAgICAgICAvLyBUaGlzIHNob3VsZCBtZWFuIGFs
bCBvdGhlciBwcm9wZXJ0aWVzIGFyZSBlbXB0eS4KLSAgICAgICAgaWYgKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdv
cmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJU
KG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAg
IEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7Ci0gICAg
ICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0
IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5l
Y3RFbmQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Mu
Y29ubmVjdFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25l
dHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKKyAgICAgICAgaWYg
KG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VFbmQgPD0gMF9t
cykgeworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRy
aWNzKCkucmVzcG9uc2VTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291
cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKKyAg
ICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJl
cXVlc3RTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKTsKKyAg
ICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNv
bm5lY3RFbmQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5u
ZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBB
U1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBF
bmQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3Jr
TG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKICAgICAgICAgICAgIHJl
dHVybiBmZXRjaFN0YXJ0KCk7CiAgICAgICAgIH0KIAotICAgICAgICByZXR1cm4gbmV0d29ya0xv
YWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNl
RW5kKTsKKyAgICAgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFt
cChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKTsKICAg
ICB9CiAKLSAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Rp
bWVPcmlnaW4sIG1fbG9hZFRpbWluZy5yZXNwb25zZUVuZCgpKTsKKyAgICByZXR1cm4gbW9ub3Rv
bmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1p
bmcubG9hZFRpbWluZygpLnJlc3BvbnNlRW5kKCkpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKFNlY29u
ZHMgZGVsdGEpIGNvbnN0CiB7CiAgICAgQVNTRVJUKGRlbHRhKTsKLSAgICBTZWNvbmRzIGZpbmFs
ID0gKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmlnaW47Cisg
ICAgU2Vjb25kcyBmaW5hbCA9IChtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0
YXJ0KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmlnaW47CiAgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpy
ZWR1Y2VUaW1lUmVzb2x1dGlvbihmaW5hbCkubWlsbGlzZWNvbmRzKCk7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggNWQwNzlm
NGM2NjU2NTIzMTVhMDAxMjQ2M2M4Y2RmOWNlNTJlYzVhMS4uYjc2NmM5YzAwOTVmZDBjOTA4OGYz
OTE3ZTU2ZTFkZmVkNDU1NWE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJMb2FkVGlt
aW5nLmgiCiAjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiUGVyZm9y
bWFuY2VFbnRyeS5oIgorI2luY2x1ZGUgIlJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSA8d3Rm
L1JlZi5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00MiwxMSArNDMs
MTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc7
CiBjbGFzcyBSZXNvdXJjZVRpbWluZzsKIAotY2xhc3MgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
ZyBmaW5hbCA6IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKK2NsYXNzIFBlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcgOiBwdWJsaWMgUGVyZm9ybWFuY2VFbnRyeSB7CiBwdWJsaWM6CiAgICAgc3Rh
dGljIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBjcmVhdGUoTW9ub3RvbmljVGltZSB0
aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmKTsKIAotICAgIGNvbnN0IEF0b21TdHJpbmcmIGlu
aXRpYXRvclR5cGUoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvclR5cGU7IH0KKyAgICBjb25z
dCBTdHJpbmcmIGluaXRpYXRvclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlVGltaW5n
LmluaXRpYXRvcigpOyB9CiAgICAgY29uc3QgU3RyaW5nJiBuZXh0SG9wUHJvdG9jb2woKSBjb25z
dDsKIAogICAgIGRvdWJsZSB3b3JrZXJTdGFydCgpIGNvbnN0OwpAQCAtNjEsMjcgKzYyLDIxIEBA
IHB1YmxpYzoKICAgICBkb3VibGUgcmVxdWVzdFN0YXJ0KCkgY29uc3Q7CiAgICAgZG91YmxlIHJl
c3BvbnNlU3RhcnQoKSBjb25zdDsKICAgICBkb3VibGUgcmVzcG9uc2VFbmQoKSBjb25zdDsKKwog
ICAgIGNvbnN0IFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiYgc2VydmVyVGlt
aW5nKCkgY29uc3QgeyByZXR1cm4gbV9zZXJ2ZXJUaW1pbmc7IH0KIAotICAgIFR5cGUgdHlwZSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlJlc291cmNlOyB9Ci0gICAgQVNDSUlMaXRlcmFs
IGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJyZXNvdXJjZSJfczsgfQorICAgIFR5
cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBUeXBlOjpS
ZXNvdXJjZTsgfQorICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7
IHJldHVybiAicmVzb3VyY2UiX3M7IH0KIAotcHJpdmF0ZToKK3Byb3RlY3RlZDoKICAgICBQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VU
aW1pbmcmJik7CiAgICAgflBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoKTsKIAogICAgIGRvdWJs
ZSBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAoU2Vjb25kcykgY29uc3Q7CiAK
LSAgICBBdG9tU3RyaW5nIG1faW5pdGlhdG9yVHlwZTsKICAgICBNb25vdG9uaWNUaW1lIG1fdGlt
ZU9yaWdpbjsKLSAgICBMb2FkVGltaW5nIG1fbG9hZFRpbWluZzsKLSAgICBOZXR3b3JrTG9hZE1l
dHJpY3NXaXRob3V0Tm9uVGltaW5nRGF0YSBtX25ldHdvcmtMb2FkTWV0cmljczsKLSAgICBib29s
IG1fc2hvdWxkUmVwb3J0RGV0YWlsczsKKyAgICBjb25zdCBSZXNvdXJjZVRpbWluZyBtX3Jlc291
cmNlVGltaW5nOwogICAgIFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBtX3Nl
cnZlclRpbWluZzsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9U
WVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKQotICAg
IHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkgeyByZXR1cm4gZW50cnkuaXNSZXNvdXJjZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmlkbAppbmRleCA0NmE4ZjBmMjUxMWNlYjVjMGM3ZGQzMTE2YzJmOGZhNzdmYzhkN2RkLi5m
MDY1NjZkNWUwZmE3ZTFmZDBiNDU5N2YxMGI1ZjIyZWY2NmExNmQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKQEAgLTUwLDYgKzUw
LDExIEBAIHR5cGVkZWYgZG91YmxlIERPTUhpZ2hSZXNUaW1lU3RhbXA7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVxdWVzdFN0YXJ0OwogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHJlc3BvbnNlU3RhcnQ7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VFbmQ7CisKKyAgICAvLyBO
b3RlOiB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBh
cmUgaW50ZW50aW9uYWxseSBvbWl0dGVkCisgICAgLy8gYmVjYXVzZSBvZiBwcml2YWN5IGNvbmNl
cm5zIHN1Y2ggYXMgaHR0cHM6Ly9naXRodWIuY29tL3czYy9yZXNvdXJjZS10aW1pbmcvaXNzdWVz
LzIzOAorCisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3NlcnZlci10aW1pbmcvI2V4dGVu
c2lvbi10by10aGUtcGVyZm9ybWFuY2VyZXNvdXJjZXRpbWluZy1pbnRlcmZhY2UKICAgICBbRW5h
YmxlZEF0UnVudGltZT1TZXJ2ZXJUaW1pbmddIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJh
eTxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4gc2VydmVyVGltaW5nOwogCiAgICAgW0RlZmF1bHRd
IG9iamVjdCB0b0pTT04oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcAppbmRleCA5ZmYyMzM2MjMwNDVhODk5NDQ1NTJk
ODJiZjNhNzJmMTIxYmQ5ODc1Li4xNDc3NGYyMzIzMjdlMTE5OGUzNzRiYzE4NzZhYTllNzljOTY4
Y2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNv
dXJjZUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9i
UmVzb3VyY2VIYW5kbGUuY3BwCkBAIC02MzQsNyArNjM0LDcgQEAgc3RhdGljIHZvaWQgZG9Ob3Rp
ZnlGaW5pc2goQmxvYlJlc291cmNlSGFuZGxlJiBoYW5kbGUpCiAgICAgaWYgKCFoYW5kbGUuY2xp
ZW50KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlkRmluaXNo
TG9hZGluZygmaGFuZGxlKTsKKyAgICBoYW5kbGUuY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmco
JmhhbmRsZSwgeyB9KTsKIH0KIAogdm9pZCBCbG9iUmVzb3VyY2VIYW5kbGU6Om5vdGlmeUZpbmlz
aCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtM
b2FkTWV0cmljcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9h
ZE1ldHJpY3MuaAppbmRleCBkNzEwN2FhNDU2NzgxN2JlM2E1Zjc5MjA0NDMwNmZlZjcwYjliY2Ex
Li4xNjk2NWVlOWE1MTdhNDU1OTYxNTM2NzY3OTZmOTliY2IzNmYyNWQ4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKQEAg
LTIwMCw3ICsyMDAsNyBAQCBwdWJsaWM6CiB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi1Cb3g8
TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKiwgTlNV
UkxSZXNwb25zZSAqKTsKK0JveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5T
VVJMQ29ubmVjdGlvbiAqKTsKIFdFQkNPUkVfRVhQT1JUIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+
IGNvcHlUaW1pbmdEYXRhKE5TVVJMU2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29t
cGxldGVNZXRyaWNzKTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmgKaW5kZXggOWE4MGUxMTNmYjQ4Mjgy
OTRkN2FmZmNhZTAyOWVmMGNhZjg1ZGQxNS4uZmJhMDIzM2JlZmEyY2Q0YzE2MTRmNzA1NmI0YjA3
NTM3OTMxZWNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9S
ZXNvdXJjZUhhbmRsZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaApAQCAtNDQsNiArNDQsNyBAQCBPQkpDX0NMQVNTIE5T
Q2FjaGVkVVJMUmVzcG9uc2U7CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZTsKIGNsYXNzIENyZWRlbnRpYWw7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJp
Y3M7CiBjbGFzcyBQcm90ZWN0aW9uU3BhY2U7CiBjbGFzcyBSZXNvdXJjZUhhbmRsZTsKIGNsYXNz
IFJlc291cmNlRXJyb3I7CkBAIC02Nyw3ICs2OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQs
IGludCAvKmVuY29kZWREYXRhTGVuZ3RoKi8pIHsgfQogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1
YWwgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZl
cj4mJiwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKICAgICAKLSAgICB2aXJ0dWFsIHZvaWQgZGlk
RmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRG
aW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikg
eyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNv
dXJjZUVycm9yJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHdhc0Jsb2NrZWQoUmVzb3VyY2VIYW5k
bGUqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgY2Fubm90U2hvd1VSTChSZXNvdXJjZUhhbmRsZSop
IHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJv
bm91c0xvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5
bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcAppbmRleCBjN2MxMmNlOGU3NTFhNTJiYjQ1MTdkZDAy
ZDZmNThhZGU2OTEyMGVkLi4yYTdmODg0MTFiNGExMzk1YjdmMzE2MDAyMTYyYWU5MzcxZjRmZWIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5
bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIFN5bmNocm9u
b3VzTG9hZGVyQ2xpZW50OjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNo
YXIqIGRhdGEsCiAgICAgbV9kYXRhLmFwcGVuZChkYXRhLCBsZW5ndGgpOwogfQogCi12b2lkIFN5
bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiBo
YW5kbGUpCit2b2lkIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJl
c291cmNlSGFuZGxlKiBoYW5kbGUsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCiB7CiAgICAg
bV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICNpZiBQTEFURk9STShDT0NPQSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGll
bnQuaAppbmRleCA4ZDJhOTc3MTkzMTRmYzg5MjVjMjJkYmZkZWM1OGVmOTJiMzI3ZGM0Li5mODhk
ZmY3ZjkzNWI2MzU1ZWEyNzEwNGFhZTVlNDJjZjZiNDI0ZDU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5o
CkBAIC02Nyw3ICs2Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlQXN5bmMoUmVzb3Vy
Y2VIYW5kbGUqLCBSZXNvdXJjZVJlc3BvbnNlJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
Jikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNv
bnN0IGNoYXIqLCB1bnNpZ25lZCwgaW50IC8qZW5jb2RlZERhdGFMZW5ndGgqLykgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xv
YWRNZXRyaWNzJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwg
Y29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNF
X0FVVEhfQ0FMTEJBQ0spCiAgICAgdm9pZCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlv
blNwYWNlQXN5bmMoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rp
b25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3Bl
cmF0aW9uUXVldWUuY3BwCmluZGV4IDNjODJiYzNiNGM2ODU5YjhiYTk0YTMyYmU5YTQyNmE4Mzk5
NmVjNTAuLjI0ZDE0ODU4MjA1ZTEyMmQyZmJlZGYxYTM5M2Q3YTgwZWNmMmM4MWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVS
TENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRl
bGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUg
IkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1
ZGUgIk1JTUVUeXBlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3MuaCIK
ICNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZS5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xp
ZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtMjM4LDcgKzIzOSw3IEBA
IHZvaWQgUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25R
dWV1ZTo6ZGlkRmluaXNoTG9hZGluZygpCiAKICAgICAgICAgTE9HKE5ldHdvcmssICJDRk5ldCAt
IFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6
OmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlPSVwKSAoJXMpIiwgaGFuZGxlLCBoYW5kbGUtPmZpcnN0
UmVxdWVzdCgpLnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCi0gICAgICAgIGhhbmRs
ZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlKTsKKyAgICAgICAgaGFuZGxlLT5j
bGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUsIE5ldHdvcmtMb2FkTWV0cmljcyB7IH0p
OwogICAgICAgICBpZiAocHJvdGVjdGVkVGhpcy0+bV9tZXNzYWdlUXVldWUpIHsKICAgICAgICAg
ICAgIHByb3RlY3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAgICAgICAgICAgICBw
cm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1ZSA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNz
Lm1tCmluZGV4IDViM2M4OThiZDMwMjdkZGQ1NzI0OTE2NmFjMTRiZWViMWU3MDdiMmEuLjY0YWVh
NGZkNTJmOWQ1ZTJlM2QwYjM5YzYzMjBkYzk2YTdmZGE3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNz
Lm1tCkBAIC02Nyw3ICs2Nyw3IEBAIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdE
YXRhKE5TVVJMU2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29tCiAgICAgKTsKIH0K
IAotQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9u
ICpjb25uZWN0aW9uLCBOU1VSTFJlc3BvbnNlICpyZXNwb25zZSkKK0JveDxOZXR3b3JrTG9hZE1l
dHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbikKIHsKICAg
ICBOU0RpY3Rpb25hcnkgKnRpbWluZ0RhdGEgPSBbY29ubmVjdGlvbiBfdGltaW5nRGF0YV07CiAg
ICAgaWYgKCF0aW1pbmdEYXRhKQpAQCAtODksNyArODksNyBAQCBCb3g8TmV0d29ya0xvYWRNZXRy
aWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rpb24sIE5TVVJMUmVz
cG9ucwogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJl
cXVlc3RTdGFydCIpLAogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGlt
aW5nRGF0YVJlc3BvbnNlU3RhcnQiKSwKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwg
QCJfa0NGTlRpbWluZ0RhdGFDb25uZWN0aW9uUmV1c2VkIiksCi0gICAgICAgIHJlc3BvbnNlLlVS
TC5zY2hlbWUKKyAgICAgICAgY29ubmVjdGlvbi5jdXJyZW50UmVxdWVzdC5VUkwuc2NoZW1lCiAg
ICAgKTsKIH0KICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCmluZGV4
IDViODI3ZGViMDU3ODVlMzRkMTdkZDI5OWQ5NjE0NjIyODA2NmNjODguLmU1NjRhMGNlNjY2MTRh
NDlhMTAzMTM2ODg1MWM0ZGE4ODIzNTJhNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURl
bGVnYXRlLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVs
ZWdhdGU6OmN1cmxEaWRSZWNlaXZlQnVmZmVyKEN1cmxSZXF1ZXN0JiwgUmVmPFNoYXJlZEJ1CiAg
ICAgY2xpZW50KCktPmRpZFJlY2VpdmVCdWZmZXIoJm1faGFuZGxlLCBXVEZNb3ZlKGJ1ZmZlciks
IGJ1ZmZlci0+c2l6ZSgpKTsKIH0KIAotdm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6
Y3VybERpZENvbXBsZXRlKEN1cmxSZXF1ZXN0JiwgTmV0d29ya0xvYWRNZXRyaWNzJiYpCit2b2lk
IEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkQ29tcGxldGUoQ3VybFJlcXVlc3Qm
LCBOZXR3b3JrTG9hZE1ldHJpY3MmJiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJl
YWQoKSk7CiAKQEAgLTE2MCw3ICsxNjAsNyBAQCB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVn
YXRlOjpjdXJsRGlkQ29tcGxldGUoQ3VybFJlcXVlc3QmLCBOZXR3b3JrTG9hZE1ldHJpYwogICAg
ICAgICByZXR1cm47CiAKICAgICBDdXJsQ2FjaGVNYW5hZ2VyOjpzaW5nbGV0b24oKS5kaWRGaW5p
c2hMb2FkaW5nKG1faGFuZGxlKTsKLSAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmbV9o
YW5kbGUpOworICAgIGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZtX2hhbmRsZSwgV1RGTW92
ZShtZXRyaWNzKSk7CiB9CiAKIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxE
aWRGYWlsV2l0aEVycm9yKEN1cmxSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYmIHJlc291cmNlRXJy
b3IsIENlcnRpZmljYXRlSW5mbyYmKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcAppbmRleCA4ZjE3NWI2
NTQyZWEyZjBjODY4ZjcwMWQ1NjI4MDRiZjdlMmZkNTk3Li5jN2UxYTI0ZmU5NTU5ZTk4ZjViYzU2
ZmYyMjcwMGExZTRhZTU5MzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcApAQCAtMzksNiArMzks
NyBAQAogI2luY2x1ZGUgIkN1cmxSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIK
ICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAj
aW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5k
bGVJbnRlcm5hbC5oIgogI2luY2x1ZGUgIlNhbWVTaXRlSW5mby5oIgpAQCAtNTgyLDcgKzU4Myw3
IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmhhbmRsZURhdGFVUkwoKQogICAgIH0KIAogICAgIGlm
IChjbGllbnQoKSkKLSAgICAgICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcodGhpcyk7Cisg
ICAgICAgIGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKHRoaXMsIHsgfSk7CiB9CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhh
bmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQppbmRleCBkNDk3ODYwZDg3NDVjYzIyMjVm
ZDEzZWU2ZDBkMzI4MjY3NGE1Y2E2Li5mZmE2YzBhYTFiYjUxNDVmZDk3ZDc0OGI1MzA1ZDRiM2Rm
Y2M2YmYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9X
ZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNP
cGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tCkBAIC0zOCw2ICszOCw3IEBACiAjaW1wb3J0ICJTeW5j
aHJvbm91c0xvYWRlckNsaWVudC5oIgogI2ltcG9ydCAiV2ViQ29yZVVSTFJlc3BvbnNlLmgiCiAj
aW1wb3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2Nv
YS9OU1VSTENvbm5lY3Rpb25TUEkuaD4KICNpbXBvcnQgPHd0Zi9CbG9ja1B0ci5oPgogI2ltcG9y
dCA8d3RmL01haW5UaHJlYWQuaD4KIApAQCAtMjUyLDcgKzI1Myw3IEBAIEFMTE9XX0RFUFJFQ0FU
RURfSU1QTEVNRU5UQVRJT05TX0VORAogCiAgICAgICAgIFJlc291cmNlUmVzcG9uc2UgcmVzb3Vy
Y2VSZXNwb25zZShyLmdldCgpKTsKICAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXRTb3VyY2Uo
UmVzb3VyY2VSZXNwb25zZTo6U291cmNlOjpOZXR3b3JrKTsKLSAgICAgICAgcmVzb3VyY2VSZXNw
b25zZS5zZXREZXByZWNhdGVkTmV0d29ya0xvYWRNZXRyaWNzKGNvcHlUaW1pbmdEYXRhKGNvbm5l
Y3Rpb24uZ2V0KCksIHIuZ2V0KCkpKTsKKyAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXREZXBy
ZWNhdGVkTmV0d29ya0xvYWRNZXRyaWNzKGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCkp
KTsKIAogICAgICAgICBtX2hhbmRsZS0+ZGlkUmVjZWl2ZVJlc3BvbnNlKFdURk1vdmUocmVzb3Vy
Y2VSZXNwb25zZSksIFtzZWxmLCBwcm90ZWN0ZWRTZWxmID0gV1RGTW92ZShwcm90ZWN0ZWRTZWxm
KV0gewogICAgICAgICAgICAgbV9zZW1hcGhvcmUuc2lnbmFsKCk7CkBAIC0zMTQsMTEgKzMxNSwy
MSBAQCBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIAogICAgIExPRyhOZXR3
b3JrLCAiSGFuZGxlICVwIGRlbGVnYXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hMb2FkaW5nOiVwIiwg
bV9oYW5kbGUsIGNvbm5lY3Rpb24pOwogCi0gICAgYXV0byB3b3JrID0gW3NlbGYgPSBzZWxmLCBw
cm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpXSAoKSBtdXRhYmxlIHsKKyAgICBhdXRvIHdv
cmsgPSBbc2VsZiA9IHNlbGYsIHByb3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZiksIGNvbm5l
Y3Rpb24gPSByZXRhaW5QdHIoY29ubmVjdGlvbildICgpIG11dGFibGUgewogICAgICAgICBpZiAo
IW1faGFuZGxlIHx8ICFtX2hhbmRsZS0+Y2xpZW50KCkpCiAgICAgICAgICAgICByZXR1cm47CiAK
LSAgICAgICAgbV9oYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlKTsK
KyAgICAgICAgaWYgKGF1dG8gbWV0cmljcyA9IGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0
KCkpKSB7CisgICAgICAgICAgICBkb3VibGUgcmVzcG9uc2VFbmRUaW1lID0gW1tbY29ubmVjdGlv
biBfdGltaW5nRGF0YV0gb2JqZWN0Rm9yS2V5OkAiX2tDRk5UaW1pbmdEYXRhUmVzcG9uc2VFbmQi
XSBkb3VibGVWYWx1ZV07CisgICAgICAgICAgICBtZXRyaWNzLT5yZXNwb25zZUVuZCA9IFNlY29u
ZHMocmVzcG9uc2VFbmRUaW1lIDw9IDAgPyAwIDogcmVzcG9uc2VFbmRUaW1lIC0gbWV0cmljcy0+
ZmV0Y2hTdGFydC52YWx1ZSgpKTsKKyAgICAgICAgICAgIG1ldHJpY3MtPm1hcmtDb21wbGV0ZSgp
OworICAgICAgICAgICAgbV9oYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKG1faGFu
ZGxlLCAqbWV0cmljcyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBOZXR3b3JrTG9h
ZE1ldHJpY3MgZW1wdHlNZXRyaWNzOworICAgICAgICAgICAgZW1wdHlNZXRyaWNzLm1hcmtDb21w
bGV0ZSgpOworICAgICAgICAgICAgbV9oYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5n
KG1faGFuZGxlLCBlbXB0eU1ldHJpY3MpOworICAgICAgICB9CisKICAgICAgICAgaWYgKG1fbWVz
c2FnZVF1ZXVlKSB7CiAgICAgICAgICAgICBtX21lc3NhZ2VRdWV1ZS0+a2lsbCgpOwogICAgICAg
ICAgICAgbV9tZXNzYWdlUXVldWUgPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IGYz
NWM1ZjNhNjUzZGUwYmNkMTQ0ZGVjYTU2ODUyN2FlYTcwZDU0YmYuLjcyNjE1YWM5Y2ZjNjdkNTg4
Zjg3MWUzN2E1NDM0OTU5OGJjMzc0YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTc5MCw3ICs3
OTAsMTAgQEAgc3RhdGljIGlubGluZSB2b2lkIHByb2Nlc3NTZXJ2ZXJUcnVzdEV2YWx1YXRpb24o
TmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgU2UKICAgICAgICAgbmV0d29ya0xvYWRNZXRy
aWNzLmRvbWFpbkxvb2t1cFN0YXJ0ID0gU2Vjb25kcyhkb21haW5Mb29rdXBTdGFydEludGVydmFs
KTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA9IFNlY29uZHMo
ZG9tYWluTG9va3VwRW5kSW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29u
bmVjdFN0YXJ0ID0gU2Vjb25kcyhjb25uZWN0U3RhcnRJbnRlcnZhbCk7Ci0gICAgICAgIG5ldHdv
cmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBTZWNvbmRzKHNlY3VyZUNvbm5l
Y3Rpb25TdGFydEludGVydmFsKTsKKyAgICAgICAgaWYgKG0ucmV1c2VkQ29ubmVjdGlvbiAmJiBb
bS5yZXNwb25zZS5VUkwuc2NoZW1lIGlzRXF1YWxUb1N0cmluZzpAImh0dHBzIl0pCisgICAgICAg
ICAgICBuZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gV2ViQ29yZTo6
cmV1c2VkVExTQ29ubmVjdGlvblNlbnRpbmVsOworICAgICAgICBlbHNlCisgICAgICAgICAgICBu
ZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gU2Vjb25kcyhzZWN1cmVD
b25uZWN0aW9uU3RhcnRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25u
ZWN0RW5kID0gU2Vjb25kcyhjb25uZWN0RW5kSW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9h
ZE1ldHJpY3MucmVxdWVzdFN0YXJ0ID0gU2Vjb25kcyhyZXF1ZXN0U3RhcnRJbnRlcnZhbCk7CiAg
ICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0ID0gU2Vjb25kcyhyZXNwb25z
ZVN0YXJ0SW50ZXJ2YWwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3Jl
U3VwcG9ydC9QaW5nSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0
L1BpbmdIYW5kbGUuaAppbmRleCAxNzU5NTRjOThmNDY2MmNiM2RhZmUwMGNmYWM0ZmY4Yzk1YWI0
ZTc1Li4wOTI5Y2VmOTc4OWMwY2NmMTFhM2U5NDEwZjVkZTZmZmNhZmViYTYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaAorKysgYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaApAQCAtNzQsNyAr
NzQsNyBAQCBwcml2YXRlOgogICAgICAgICBwaW5nTG9hZENvbXBsZXRlKHsgfSwgcmVzcG9uc2Up
OwogICAgIH0KICAgICB2b2lkIGRpZFJlY2VpdmVCdWZmZXIoV2ViQ29yZTo6UmVzb3VyY2VIYW5k
bGUqLCBSZWY8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiYmLCBpbnQpIGZpbmFsIHsgcGluZ0xvYWRD
b21wbGV0ZSgpOyB9Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OlJlc291cmNl
SGFuZGxlKikgZmluYWwgeyBwaW5nTG9hZENvbXBsZXRlKCk7IH0KKyAgICB2b2lkIGRpZEZpbmlz
aExvYWRpbmcoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGUqLCBjb25zdCBXZWJDb3JlOjpOZXR3b3Jr
TG9hZE1ldHJpY3MmKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoKTsgfQogICAgIHZvaWQgZGlk
RmFpbChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJy
b3ImIGVycm9yKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoZXJyb3IpOyB9CiAgICAgYm9vbCBz
aG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSopIGZpbmFs
IHsgcmV0dXJuIG1fc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2U7IH0KICAgICB2b2lkIHRpbWVv
dXRUaW1lckZpcmVkKCkgeyBwaW5nTG9hZENvbXBsZXRlKFdlYkNvcmU6OlJlc291cmNlRXJyb3Ig
eyBTdHJpbmcoKSwgMCwgbV9jdXJyZW50UmVxdWVzdC51cmwoKSwgIkxvYWQgdGltZWQgb3V0Il9z
LCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yOjpUeXBlOjpUaW1lb3V0IH0pOyB9CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMTVm
YTc4ZGVkZmU5MDViMzAwNjFiZWY5ZGM2MzhjNDE2NTVmODA1Mi4uMjIyYzU1MWU4MWI2NjAwOGQ2
ODZmNzJhYjZlYmQ1MWIwZThmNjA1OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIxLTA1LTE0
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
QWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAg
ICAgICAgQW5ub3lpbmdseSBzZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy5o
dG1sIGJlY29tZXMgZmxha3kgd2l0aCBhIGNvcnJlY3QgaW1wbGVtZW50YXRpb24gYmVjYXVzZSBp
dCBhc3N1bWVzCisgICAgICAgIHRoYXQgbm8gY29ubmVjdGlvbiBpcyByZXVzZWQuICBIb3dldmVy
LCB3aGVuIHJ1bm5pbmcgdGhpcyB0ZXN0IGFmdGVyIG90aGVyIHRlc3RzLCBhbm90aGVyIGNvbm5l
Y3Rpb24gaXMgb2Z0ZW4gcmV1c2VkLgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wYWludC10
aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWw6CisgICAgICAgICogcGVyZm9y
bWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogcGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanM6CisK
IDIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBSZXNvdXJjZSBUaW1pbmc6IHNlY3VyZUNvbm5lY3Rpb25TdGFydCA9PSAwIHdo
ZW4gYSBjb25uZWN0aW9uIGlzIHJlLXVzZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmlu
ZGV4IDQ3MzQwN2FhNmIwOTlkMDA5OWVhNThiYTgxNDk5MTc4NDJlMWNkYTguLjZiMzM2OWMzMzIw
OWExMTU1ZmUzM2VlNmJjMDMyM2QxYTY0ZGE5OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDExOCBAQAorMjAyMS0wNS0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0
aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnlt
bDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3Rp
dmVfaW1hZ2VfZG9jdW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQuaHRtbDogQWRkZWQuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2lu
ZG93LmpzOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRl
c19leGlzdC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0
YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWw6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRl
X3dpdGhpbl9kb2N1bWVudC5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdh
dGUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxf
b3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2Vy
dmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWlu
X3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlv
bi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJu
ZXNzLmpzOgorICAgICAgICAodGVzdF9uYW1lc3BhY2UpOgorICAgICAgICAodGVzdF9hdHRyaWJ1
dGVfZXhpc3RzKToKKyAgICAgICAgKHRlc3RfZW51bSk6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0
dHBzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
ZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZp
Z2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2Vy
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxv
YWQuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1z
YW1lLW9yaWdpbi1jaGVjay5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9NRVRBLnltbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5h
bnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdC50LnQuc3RlcF90aW1lb3V0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQt
ZmxhZy1vYnNlcnZlci5hbnkuanM6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzOiBBZGRlZC4KKyAg
ICAgICAgKGFzeW5jIGlkbF9hcnJheSk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWctb2JzZXJ2ZXJzLmFueS5q
czogQWRkZWQuCisgICAgICAgIChwcm9taXNlX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
bm90LWNsb25hYmxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9vYnNlcnZlci1idWZmZXJlZC1mYWxzZS5hbnkuanM6IEFkZGVk
LgorICAgICAgICAoYXN5bmNfdGVzdC50LnQuc3RlcF90aW1lb3V0KToKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pz
b24uYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55LmpzOiBB
ZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlw
ZXMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qczog
QWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQu
YW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qczogQWRk
ZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qczogQWRkZWQuCisgICAg
ICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVk
LXR5cGUuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1yZXNvdXJjZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tdGFrZVJlY29y
ZHMuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2Ut
ZW50cnkuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3Vy
Y2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzOiBBZGRlZC4KKyAgICAgICAg
KGNhdGNoKToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFu
eS5qczoKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanM6IEFkZGVkLgorICAgICAgICAodGVzdFRpbWVSZXNv
bHV0aW9uKToKKyAgICAgICAgKHRpbWVCeVVzZXJUaW1pbmcpOgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1v
YnNlcnZlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dDoKKwog
MjAyMS0wNS0xNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgog
CiAgICAgICAgIFJlc291cmNlIFRpbWluZzogc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IDAgd2hl
biBhIGNvbm5lY3Rpb24gaXMgcmUtdXNlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4
cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZTkwYmE1NDY2
YTBhOWUwZmJhNDljODJmNWQxYTM1MmI3OGI3M2UwZi4uMmU3NmI3YjAyMjdmZjljZDcwMjE0OWZh
NzRiNmE2MTYxZTMyZGNjMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9u
cworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC05NDAsNiArOTQwLDcgQEAg
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY3Jvc3Nvcmln
aW4tc2FuZHdpY2gtbm8tVEFPLnN1Yi4KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cmVzb3VyY2UtdGltaW5nL2NvcnMtcHJlZmxpZ2h0LmFueS5odG1sIFsgRmFpbHVyZSBQYXNzIF0K
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3Jp
Z2luLXNhbmR3aWNoLVRBTy5zdWIuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5kd2ljaC1w
YXJ0aWFsLVRBTy5zdWIuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCitpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25v
bl96ZXJvLmh0dHBzLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhY2FwdHVyZS1zdHJlYW1zL01lZGlhU3RyZWFtLWRlZmF1bHQtZmVh
dHVyZS1wb2xpY3kuaHR0cHMuaHRtbCBbIER1bXBKU0NvbnNvbGVMb2dJblN0ZEVyciBdCiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhY2FwdHVyZS1yZWNvcmQvcGFzc3Rocm91
Z2gvTWVkaWFSZWNvcmRlci1wYXNzdGhyb3VnaC5odHRwcy5odG1sIFsgRmFpbHVyZSBUaW1lb3V0
IFBhc3MgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYmZiMGUwZjFmNjdhOWM2YWEyZTdlOTIxYjA5ZTg1ZjhkOTcwYjI5MAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvTUVUQS55bWwKQEAgLTAsMCArMSw1IEBACitzcGVjOiBodHRwczovL3cz
Yy5naXRodWIuaW8vbmF2aWdhdGlvbi10aW1pbmcvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAt
IHBsZWhlZ2FyCisgIC0gaWdyaWdvcmlrCisgIC0geW9hdndlaXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjI4YzEw
Y2UzNmMzYzc0NDg0ODk3ZTVkMjRkYWZmOTE3Mzk1ZWI1NgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDggQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdHMgdGhhdCBhIGltYWdlIGRvY3VtZW50IGhh
cyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS4KKworCisKK1BBU1MgVGVzdCBkb21JbnRl
cmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFj
dGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9j
dW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNjc0MmYwZWZmNmQwN2M3YzA2OTRiMDY2ZGZhMDE3ZjBk
MTA0MmJlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9j
dW1lbnQuaHRtbApAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxl
PlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1lbnQuPC90aXRsZT4KKyAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9odG1sLnNw
ZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvYnJvd3NpbmctdGhlLXdlYi5odG1sI3JlYWQtbWVkaWEi
Lz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGNvbnN0IHQg
PSBhc3luY190ZXN0KCJUZXN0IGRvbUludGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50Iik7Cisg
ICAgICAgIGZ1bmN0aW9uIGZyYW1lTG9hZGVkKCkgeworICAgICAgICAgICAgY29uc3QgdGltaW5n
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaWZyYW1lIikuY29udGVudFdpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmc7CisgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy5kb21J
bnRlcmFjdGl2ZSwgMCwKKyAgICAgICAgICAgICAgICAiRXhwZWN0IGRvbUludGVyYWN0aXZlIHRv
IGJlIHBvc2l0aXZlIHZhbHVlLiIpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0K
KyAgICA8L3NjcmlwdD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4K
KyAgICAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IGEgaW1hZ2UgZG9jdW1lbnQgaGFzIHBvc2l0aXZl
LXZhbHVlIGRvbUludGVyYWN0aXZlLjwvcD4KKyAgICAgICAgPGlmcmFtZSBzcmM9Ii4uL2ltYWdl
cy9zbWlsZXkucG5nIiBvbmxvYWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZyYW1lPgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9p
bnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzdmNjcy
ZGI4MjczNDk5NmJhYTZkNDEyZDYxOWNlZjdiZGI4MWVjYwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDggQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGRvY3VtZW50IGhh
cyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS4KKworCisKK1BBU1MgVGVzdCBkb21JbnRl
cmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFj
dGl2ZV9tZWRpYV9kb2N1bWVudC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNGU0NTcyNWQ4MzYwNWI1MTljZTc0ZWE4ZmY0NTYxZGNk
M2Q3NTk1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQuaHRtbApAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxl
PlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1lbnQuPC90aXRsZT4KKyAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9odG1sLnNw
ZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvYnJvd3NpbmctdGhlLXdlYi5odG1sI3JlYWQtbWVkaWEi
Lz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGNvbnN0IHQg
PSBhc3luY190ZXN0KCJUZXN0IGRvbUludGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50Iik7Cisg
ICAgICAgIGZ1bmN0aW9uIGZyYW1lTG9hZGVkKCkgeworICAgICAgICAgICAgY29uc3QgdGltaW5n
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaWZyYW1lIikuY29udGVudFdpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmc7CisgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy5kb21J
bnRlcmFjdGl2ZSwgMCwKKyAgICAgICAgICAgICAgICAiRXhwZWN0IGRvbUludGVyYWN0aXZlIHRv
IGJlIHBvc2l0aXZlIHZhbHVlLiIpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0K
KyAgICA8L3NjcmlwdD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4K
KyAgICAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IGEgbWVkaWEgZG9jdW1lbnQgaGFzIHBvc2l0aXZl
LXZhbHVlIGRvbUludGVyYWN0aXZlLjwvcD4KKyAgICAgICAgPGlmcmFtZSBzcmM9Ii4uL21lZGlh
L0E0Lm1wNCIgb25sb2FkPSJmcmFtZUxvYWRlZCgpIj48L2lmcmFtZT4KKyAgICA8L2JvZHk+Cis8
L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxo
YXJuZXNzLndpbmRvdy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKaW5kZXggOGNjMzU0
NmIzYzI3YTlkOTNlZTU2MjE1ODRkODNkNTZhMzA4NTEzYy4uNzJjZjBjM2EzZDNjOGNiNzc1NDE2
MjVhMDU1NGQ4NDY0ZDdjMTEyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5q
cworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzCkBAIC0xLDIxICsxLDIwIEBACiAvLyBN
RVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9XZWJJRExQYXJzZXIuanMKIC8vIE1FVEE6IHNjcmlwdD0v
cmVzb3VyY2VzL2lkbGhhcm5lc3MuanMKKy8vIE1FVEE6IHRpbWVvdXQ9bG9uZwogCiAndXNlIHN0
cmljdCc7CiAKIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLwogCiBp
ZGxfdGVzdCgKLSAgWyduYXZpZ2F0aW9uLXRpbWluZyddLAotICBbJ3Jlc291cmNlLXRpbWluZycs
ICdwZXJmb3JtYW5jZS10aW1lbGluZScsICdoci10aW1lJywgJ2RvbSddLAotICBpZGxfYXJyYXkg
PT4gewotICAgIGlkbF9hcnJheS5hZGRfb2JqZWN0cyh7CisgIFsnbmF2aWdhdGlvbi10aW1pbmcn
LCAnaHItdGltZSddLAorICBbJ3Jlc291cmNlLXRpbWluZycsICdwZXJmb3JtYW5jZS10aW1lbGlu
ZScsICdkb20nLCAnaHRtbCddLAorICBpZGxBcnJheSA9PiB7CisgICAgaWRsQXJyYXkuYWRkX29i
amVjdHMoewogICAgICAgUGVyZm9ybWFuY2U6IFsncGVyZm9ybWFuY2UnXSwKICAgICAgIFBlcmZv
cm1hbmNlTmF2aWdhdGlvbjogWydwZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJ10sCiAgICAgICBQZXJm
b3JtYW5jZVRpbWluZzogWydwZXJmb3JtYW5jZS50aW1pbmcnXSwKLSAgICAgIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzogWwotICAgICAgICAncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdJwotICAgICAgXQorICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOiBbJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSdd
CiAgICAgfSk7CiAgIH0KICk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVz
X2V4aXN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhiMjNiNzYwNWQ5MjJkYTM4NzJhYjU2ZGNmZWFjNTgzYzJl
ZTQyYjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbiBvYnNlcnZlIG5hdiB0aW1pbmcg
MiBpbnN0YW5jZSBhbmQgdGhhdCB0aGUgZXhwZWN0ZWQgYXR0cmlidXRlcyBpbiBuYXYgdGltaW5n
IDIgaW5zdGFuY2UgZXhpc3QgKGJ1dCBkb2VzIG5vdCB2YWxpZGF0ZSB0aGF0IHRoZSB2YWx1ZXMg
YXJlIGNvcnJlY3QpLgorCisKK0ZBSUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgZW50
cmllcyBhcmUgb2JzZXJ2YWJsZS4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIGF0dHJpYnV0ZTogZGVj
b2RlZEJvZHlTaXplLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1
dGVzX2V4aXN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjYwNDhlMDYxYmEwNTdjZDk3MWIwOGUwMzJiZTcx
N2YwYWQwNGQwZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNf
ZXhpc3QuaHRtbApAQCAtMCwwICsxLDY3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5O
YXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9y
IiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAg
ICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24t
dGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cisg
ICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAg
ICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VPYnNlcnZlciBjYW4g
b2JzZXJ2ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UgYW5kIHRoYXQgdGhlIGV4cGVjdGVkIGF0dHJp
YnV0ZXMgaW4gbmF2IHRpbWluZyAyIGluc3RhbmNlIGV4aXN0IChidXQgZG9lcyBub3QgdmFsaWRh
dGUgdGhhdCB0aGUgdmFsdWVzIGFyZSBjb3JyZWN0KS48L3A+CisKKyAgICAgICAgPHNjcmlwdD4K
KyAgICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5l
Y3RFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZl
bnRTdGFydCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAg
ICAgICAgJ2R1cmF0aW9uJywKKyAgICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAg
ICAgICAgJ2VudHJ5VHlwZScsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAg
ICAnaW5pdGlhdG9yVHlwZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAn
bmV4dEhvcFByb3RvY29sJywKKyAgICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAg
ICAgICdyZWRpcmVjdEVuZCcsCisgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAg
ICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAg
ICAgICAncmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0
JywKKyAgICAgICAgICAgICd0cmFuc2ZlclNpemUnLAorICAgICAgICAgICAgJ3R5cGUnLAorICAg
ICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0
JywKKyAgICAgICAgICAgICd3b3JrZXJTdGFydCcKKyAgICAgICAgXTsKKyAgICAgICAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVu
dHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5n
ZXRFbnRyaWVzKCk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllcy5s
ZW5ndGgsIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAiVGhlcmUgc2hvdWxkIGJlIG9ubHkg
b25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICBm
b3IgKHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShuYXZUaW1pbmcyQXR0cmlidXRlc1tp
XSBpbiBlbnRyaWVzWzBdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBh
dHRyaWJ1dGU6ICIgKyBuYXZUaW1pbmcyQXR0cmlidXRlc1tpXSArICIuIik7CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAg
ICAgICAgKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2
aWdhdGlvbiJdfSk7CisKKyAgICAgICAgfSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5n
IGVudHJpZXMgYXJlIG9ic2VydmFibGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iNDk5ZjhhZWRkYzliZjM2ZTNlYjUxY2I2OGI2OTc3ODg4MjBiMDJi
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlk
YXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgbmF2IHRpbWluZyAyIGluc3RhbmNlJ3MgdGltaW5nLXJl
bGF0ZWQgYXR0cmlidXRlcyBhcmUgaW4gY2VydGFpbiBvcmRlciBhbmQgdGhlIG90aGVycyBhcmUg
b2YgZXhwZWN0ZWQgdmFsdWVzLgorCisKK0ZBSUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1p
bmcgaW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxlLiBhc3NlcnRfdHJ1ZTogRXhwZWN0ZWQg
dHJhbnNmZXJTaXplIHRvIGJlIGdyZWF0ZXIgdGhhbiBlbmNvZGVkQm9keVNpemUgaW4gdW5jYWNo
ZWQgbmF2aWdhdGlvbi4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJp
YnV0ZXNfdmFsdWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzk4MDllNDFkZGQ3ZjY4YjFkM2ZhNjk3OWNh
MGQ2ZmIxNTM4YTRlNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0
ZXNfdmFsdWVzLmh0bWwKQEAgLTAsMCArMSwxMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRp
dGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJh
dXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+Cisg
ICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdh
dGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwv
c2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9u
PC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2Yg
bmF2IHRpbWluZyAyIGluc3RhbmNlJ3MgdGltaW5nLXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUgaW4g
Y2VydGFpbiBvcmRlciBhbmQgdGhlIG90aGVycyBhcmUgb2YgZXhwZWN0ZWQgdmFsdWVzLjwvcD4K
KworICAgICAgICA8c2NyaXB0PgorICAgICAgICAvLyBIb3N0IG5hbWVzIGFuZCBwb3J0cyBtYXkg
YmUgY29uZmlndXJlZCBhdCB0ZXN0IGV4ZWN1dGlvbiB0aW1lLiBUaGUKKyAgICAgICAgLy8gd2Vi
LXBsYXRmb3JtLXRlc3RzIHNlcnZlciBvZmZlcnMgdHdvIG1lY2hhbmlzbXMgZm9yIHJldHJpZXZp
bmcgdGhlc2UKKyAgICAgICAgLy8gdmFsdWVzIGR5bmFtaWNhbGx5OiBkaXJlY3QgdGV4dCBzdWJz
dGl0dXRpb24gYW5kIHRoZSBgZ2V0LWhvc3QtaW5mb2AKKyAgICAgICAgLy8gc2NyaXB0LiBUaGUg
Zm9ybWVyIGlzIGluYXBwcm9wcmF0ZSBmb3IgdGhpcyB0ZXN0IGJlY2F1c2UgaXQKKyAgICAgICAg
Ly8gaW5mbHVlbmNlcyB0aGUgc2l6ZSBvZiB0aGUgZG9jdW1lbnQsIGFuZCB0aGlzIHRlc3QgaW5j
bHVkZXMgc3RhdGljCisgICAgICAgIC8vIGFzc2VydGlvbnMgZm9yIHRoYXQgdmFsdWUuCisgICAg
ICAgIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3Rl
ZFVybCA9ICJodHRwOi8vIiArIGhvc3RfaW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAg
ICAgICAgIGhvc3RfaW5mby5IVFRQX1BPUlQgKworICAgICAgICAgICAgIi9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbCI7CisgICAgICAgIHZhciBuYXZU
aW1pbmcyRXZlbnRPcmRlcjEgPSBbCisgICAgICAgICAgICAnc3RhcnRUaW1lJywKKyAgICAgICAg
ICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgIC8vJ3VubG9hZEV2ZW50U3RhcnQnLAor
ICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgIC8vJ3VubG9hZEV2ZW50RW5k
JywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBT
dGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdjb25u
ZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8nc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAg
ICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAg
ICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAg
ICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2
ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAg
ICAgICAgICAgICdsb2FkRXZlbnRFbmQnCisgICAgICAgIF07CisKKyAgICAgICAgdmFyIG5hdlRp
bWluZzJFdmVudE9yZGVyMiA9IFsKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAg
ICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisg
ICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnCisg
ICAgICAgIF07CisKKyAgICAgICAgdmFyIG5hdlRpbWluZzJFdmVudE9yZGVyMyA9IFsKKyAgICAg
ICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFy
dCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICAvLyBO
YXZpZ2F0aW9uIFRpbWluZyBhdHRyaWJ1dGVzIGZvciBjb21wYXJpc29uLgorICAgICAgICB2YXIg
bmF2VGltaW5nMUV2ZW50T3JkZXIgPSBbCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAg
ICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVu
ZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdjb25uZWN0RW5k
JywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3Rh
cnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdkb21JbnRlcmFj
dGl2ZScsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAg
ICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29tcGxl
dGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdsb2FkRXZl
bnRFbmQnCisgICAgICAgIF07CisKKyAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRP
cmRlcihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgeworICAgICAgICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgeworICAgICAgICAgICAgICAgIGFz
c2VydF90cnVlKHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaV1dIDw9IHRpbWluZ0VudHJ5W2V2ZW50
T3JkZXJbaSArIDFdXSwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkICIgKyBldmVudE9y
ZGVyW2ldICsgIiB0byBiZSBubyBncmVhdGVyIHRoYW4gIiArIGV2ZW50T3JkZXJbaSArIDFdICsg
Ii4iKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGFzeW5jX3Rlc3QoZnVu
Y3Rpb24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qp
IHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmll
cygpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlU
eXBlLCAibmF2aWdhdGlvbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgZW50
cnlUeXBlIHRvIGJlOiBuYXZpZ2F0aW9uLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGVudHJpZXNbMF0ubmFtZSwgZXhwZWN0ZWRVcmwpOworICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uc3RhcnRUaW1lLCAwLAorICAgICAgICAgICAgICAg
ICAgICAgICAgIkV4cGVjdGVkIHN0YXJ0VGltZSB0byBiZTogMC4iKTsKKyAgICAgICAgICAgICAg
ICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmR1cmF0aW9uLCBlbnRyaWVzWzBdLmxvYWRF
dmVudEVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBkdXJhdGlvbiB0byBi
ZSBlcXVhbCB0byBsb2FkRXZlbnRFbmQuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZW50cmllc1swXS5pbml0aWF0b3JUeXBlLCAibmF2aWdhdGlvbiIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAiRXhwZWN0ZWQgaW5pdGlhdG9yVHlwZSB0byBiZTogbmF2aWdhdGlvbi4i
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLm5leHRIb3BQ
cm90b2NvbCwgImh0dHAvMS4xIik7CisgICAgICAgICAgICAgICAgICAgIC8vIFRoaXMgdGVzdCBt
YXkgZmFpbCB3aGVuIHJlc3BvbnNlIGlzIGZyb20gY2FjaC4gRGlzYWJsZSBvciBjbGVhbiBjYWNo
IGJlZm9yZQorICAgICAgICAgICAgICAgICAgICAvLyBydW5uaW5nIHRoaXMgdGVzdC4KKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoZW50cmllc1swXS50cmFuc2ZlclNpemUgPiBlbnRy
aWVzWzBdLmVuY29kZWRCb2R5U2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3Rl
ZCB0cmFuc2ZlclNpemUgdG8gYmUgZ3JlYXRlciB0aGFuIGVuY29kZWRCb2R5U2l6ZSBpbiB1bmNh
Y2hlZCBuYXZpZ2F0aW9uLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVu
dHJpZXNbMF0uZW5jb2RlZEJvZHlTaXplLCA1OTU1KTsKKyAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmRlY29kZWRCb2R5U2l6ZSwgNTk1NSk7CisgICAgICAgICAg
ICAgICAgICAgIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2
ZW50T3JkZXIxKTsKKyAgICAgICAgICAgICAgICAgICAgLy8gVmVyaWZ5IGlmIHRoZSByZXBvcnRl
ZCB0aW1pbmcgaXMgbm90IHRoYXQgZGlmZmVyZW50CisgICAgICAgICAgICAgICAgICAgIC8vIGZy
b20gd2hhdCBpcyByZXBvcnRlZCBieSBOYXZpZ2F0aW9uIFRpbWluZyAxLgorICAgICAgICAgICAg
ICAgICAgICBuYXZUaW1pbmcxRXZlbnRPcmRlci5mb3JFYWNoKAorICAgICAgICAgICAgICAgICAg
ICAgIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAod2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZ1tldmVudF0gLQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0ID4gMCkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJpZXNbMF1bZXZlbnRd
LCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkICIgKyBldmVudCAr
ICIgdG8gYmUgZ3JlYXRlciB0aGFuIDAiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gdW5sb2Fk
RXZlbnQgaGFwcGVucworICAgICAgICAgICAgICAgICAgICBpZiAoZW50cmllc1swXVsidW5sb2Fk
RXZlbnRTdGFydCJdICE9IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmeVRpbWlu
Z0V2ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIyKTsKKyAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAvLyBXaGVuIGEgc2VjdXJlIHRyYW5z
cG9ydCBpcyB1c2VkCisgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdWyJzZWN1cmVD
b25uZWN0aW9uU3RhcnQiXSAhPSAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJpZnlU
aW1pbmdFdmVudE9yZGVyKGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMyk7CisgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVj
dCgpOworICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQor
ICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6
IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgfSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRpb24g
dGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVhc29uYWJsZS4iKTsKKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9j
dW1lbnRfb3Blbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4
cGVjdGVkLnR4dAppbmRleCA0OTk5OWQ4OTQxMTA0OTc5YjMyNmE3ZmZhNmI4OTAxODVhOGZhNjhl
Li4wNWYyMzBiOWZiMGZhYjhkOGQ3Y2I1ODVlYzk4NWMyMDgxMTE5ZmQ3IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDMgQEAKLUNPTlNPTEUg
TUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAndGltaW5nW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXScpCiBEZXNjcmlwdGlvbgogCiBUaGlz
IHRlc3QgdmFsaWRhdGVzIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIikgcmVtYWlucyBjb25zdGFudCB3aGVuIGEgZG9jdW1lbnQgaXMgcmVwbGFjZWQgdXNp
bmcgZG9jdW1lbnQub3Blbi4KQEAgLTksNiArOCw1IEBAIFRoZSB0ZXN0IHBhc3NlcyBpZiBhbGwg
b2YgdGhlIGNoZWNrcyB0byBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
CiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1tuYXZUaW1pbmcyQXR0cmli
dXRlc1tpXV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3Vt
ZW50X29wZW4uaHRtbAppbmRleCBiYzA2ZWQ1ODQwYTc1NTVkMWUyYTYyNTgwY2Y1YTk4OGNhNThh
NzE4Li5hYTEwOTcyNDhkZDEzM2U1ZTYxYjE3YzZmOTJmMTQzNzU3OWI1ODhjIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
ZG9jdW1lbnRfb3Blbi5odG1sCkBAIC04LDYgKzgsOCBAQAogICAgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
ICAgPHNjcmlwdD4KKyAgICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsK
KwogICAgICAgICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCiAgICAgICAgICAg
ICAgICAgICAnY29ubmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4dAppbmRleCBh
OTdjODZiY2I0ZjY3ZjUyNGIxYmNlMzg5OGNlNWVkMzA3NDc4Y2JlLi4zNWE1NmEzZmU1NzcyOTgx
YmRjMmJjNWFjZTA3OTNjMTAzMTI1ZmQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1
bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
cmVwbGFjZWQtZXhwZWN0ZWQudHh0CkBAIC0xLDEzICsxLDExIEBACiBmcmFtZSAiPCEtLWZyYW1l
MS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIg
LSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMg
MSBvbnVubG9hZCBoYW5kbGVyKHMpCi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEudHlwZScpCiBEZXNjcmlwdGlv
bgogCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYSBQZXJmb3JtYW5jZU5hdmlnYXRpbmdUaW1p
bmcgY29ycmVzcG9uZGluZyB0byBhIGRldGFjaGVkIGRvY3VtZW50IGNhbid0IGFjY2VzcyBhIGRp
ZmZlcmVudCBkb2N1bWVudCdzIHN0YXRlLgogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1l
c3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdwbnQxLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCmluZGV4IGI5MTBmNDUzZDEyOTUxZDAxY2I1ODQ4OTk3
NjZiNjRmZTA4ZTgzNmMuLjU5NzJmMjBlOWJkN2ZmZGYyN2QzMmI1YjMwYjYzOTEzY2VlZWVkMDkg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbApAQCAtOCw2ICs4LDggQEAKICAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgog
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0
OiB0cnVlIH0pOworCiAgICAgICAgICAgICB2YXIgbmF2aWdhdGlvbl9mcmFtZTsKICAgICAgICAg
ICAgIHZhciBwbnQxOwogICAgICAgICAgICAgdmFyIHN0ZXAgPSAxOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9m
cmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dAppbmRleCBiNWY4YmVlZjM5ZjYwOTk1MjMyNDNlY2Ux
OTliZGRmYmQwMWYxNjkxLi45NzczZGRhNTliM2ZjYTZiODhmMzQ2ODhkYzY4ODE0YjA3N2Q1Nzk5
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dApAQCAtNCw1ICs0
LDUgQEAgRGVzY3JpcHRpb24KIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6OnR5cGUoKSdzIGRlZmF1bHQgdmFsdWUgaXMgbmF2aWdhdGUKIAogCi1G
QUlMIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUIHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICdwbnQudHlwZScpCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3Rh
cnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9t
X3RoZV9zdGFydC1leHBlY3RlZC50eHQKaW5kZXggNmMzMWFmZDBiMjliMTBlOTM4OGI0ZmMyMTk3
M2NlMmM2ZTE0Y2EyMC4uMzc3Y2U5ODY4MDZhNDlmMjgxYzYxZWMxNmIwZjExMjFjYjFkZGUzMCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9z
dGFydC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJs
ZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIGluc3RhbmNlIGV4aXN0cyB3aXRoIHJlYXNvbmFibGUg
dmFsdWVzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nIGluc3RhbmNlIGV4aXN0cyB3aXRoIHJlYXNvbmFibGUgdmFs
dWVzLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zy
b21fdGhlX3N0YXJ0Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zy
b21fdGhlX3N0YXJ0Lmh0bWwKaW5kZXggNzc5MDA4MWQwMWM3YjgyNjJjNTM0ZDM5NTA4NTY5MGVi
ZTJkZmZlOC4uYWQ1MGM2YTg3ZDJiNDY2Mjk3ZGMwZjJlYmNlZjkyYTM3NjU1YjAxMyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3Rh
cnQuaHRtbApAQCAtNCw3ICs0LDcgQEAKIDxzY3JpcHQ+CiB0ZXN0KGZ1bmN0aW9uKCkgewogICB2
YXIgbmF2aWdhdGlvblRpbWluZzIgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgnbmF2aWdhdGlvbicpWzBdOwotICBhc3NlcnRfdHJ1ZShuYXZpZ2F0aW9uVGltaW5nMiAhPT0g
dW5kZWZpbmVkKTsKKyAgYXNzZXJ0X25vdF9lcXVhbHMobmF2aWdhdGlvblRpbWluZzIsIHVuZGVm
aW5lZCk7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvblRpbWluZzIuZW50cnlUeXBlLCAibmF2
aWdhdGlvbiIpOwogICBhc3NlcnRfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLnN0YXJ0VGltZSwg
MCk7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvblRpbWluZzIuaW5pdGlhdG9yVHlwZSwgIm5h
dmlnYXRpb24iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29y
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmExODQ4NjI5MTUwMWI1Y2M0ZjE3MTAzMDE2NWQ5NmUwNGM3YWZl
Y2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZh
bGlkYXRlcyB0aGF0IG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBjYW4gYmUgYWNjZXNzZWQgYnkgdGhy
ZWUgZGlmZmVyZW50IGFjY2Vzc29ycyBvbmNlIGF2YWlsYWJsZTogd2luZG93LnBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKS9nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikvZ2V0RW50cmllc0J5
TmFtZSgiZG9jdW1lbnQiKQorCisKK1BBU1MgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcg
ZW50cmllcyBhcmUgYWNjZXNzaWJsZSB0aHJvdWdoIHRocmVlIGRpZmZlcmVudCBhY2Nlc3NvcnMu
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYThmYmZi
NGEzMDYyNTQyNGU4ZTg0MmViMmI4MDYyZGE0ZTNlODkzMAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCkBAIC0wLDAgKzEsNzggQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4K
KyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93
d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDov
L3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
cy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0
LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAg
ICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGF0IG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBjYW4gYmUgYWNjZXNzZWQgYnkgdGhyZWUgZGlm
ZmVyZW50IGFjY2Vzc29ycyBvbmNlIGF2YWlsYWJsZTogd2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKS9nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikvZ2V0RW50cmllc0J5TmFtZSgi
ZG9jdW1lbnQiKTwvcD4KKworICAgICAgICA8c2NyaXB0PgorICAgICAgICB2YXIgaG9zdF9pbmZv
ID0gZ2V0X2hvc3RfaW5mbygpOworICAgICAgICB2YXIgZXhwZWN0ZWRVcmwgPSAiaHR0cDovLyIg
KyBob3N0X2luZm8uT1JJR0lOQUxfSE9TVCArICI6IiArCisgICAgICAgICAgICBob3N0X2luZm8u
SFRUUF9QT1JUICsgIi9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNz
b3JzLmh0bWwiOworICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAg
ICAgICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAg
ICAgICdkZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAg
ICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbnRl
bnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAg
ICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFy
dCcsCisgICAgICAgICAgICAnZHVyYXRpb24nLAorICAgICAgICAgICAgJ2VuY29kZWRCb2R5U2l6
ZScsCisgICAgICAgICAgICAnZW50cnlUeXBlJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywK
KyAgICAgICAgICAgICdpbml0aWF0b3JUeXBlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQn
LAorICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICduYW1lJywKKyAg
ICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisg
ICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywK
KyAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcs
CisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICd0cmFu
c2ZlclNpemUnLAorICAgICAgICAgICAgJ3R5cGUnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50
RW5kJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICd3b3Jr
ZXJTdGFydCcKKyAgICAgICAgXTsKKworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7
CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAg
ICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciBpbnN0YW5jZTEgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF07
CisgICAgICAgICAgICAgICAgICAgIHZhciBpbnN0YW5jZTIgPSBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgIHZhciBpbnN0
YW5jZTMgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKGV4cGVjdGVkVXJsKVswXTsKKwor
ICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJFeHBlY3RlZCB0aGVyZSBpcyBvbmx5IG9u
ZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZS4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKGV4cGVjdGVkVXJsKS5sZW5n
dGgsIDEsICJFeHBlY3RlZCB0aGVyZSBpcyBvbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0
YW5jZS4iKTsKKworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5hdlRp
bWluZzJBdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKGluc3RhbmNlMVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGluc3RhbmNl
MltuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmlidXRl
cy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhp
bnN0YW5jZTFbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dLCBpbnN0YW5jZTNbbmF2VGltaW5nMkF0
dHJpYnV0ZXNbaV1dKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAg
ICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIu
b2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVy
Zm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgZW50cmllcyBhcmUgYWNjZXNzaWJsZSB0aHJvdWdo
IHRocmVlIGRpZmZlcmVudCBhY2Nlc3NvcnMuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFt
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmE3ZjM1NmRmMTE2YzkyNTcyNjI5MDgzZTA5MTA4MDQ2Yzc5MTI3OTQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgbmF2aWdhdGlvbi5uYW1lIHVwZGF0ZWQg
d2hlbiBpZnJhbWUgVVJMIGNoYW5nZXMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGVfaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4wYzE0NGJkYTQ1NGJlODYxODBiYmZiYTUwM2M0ZDFkYTk0NTczM2U0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLmh0bWwKQEAgLTAs
MCArMSw0MCBAQAorPCFET0NUWVBFIEhUTUw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPG1ldGEg
Y2hhcnNldD11dGYtOD4KKyAgICA8dGl0bGU+UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLm5h
bWUgdXBkYXRlZCBpbiBpZnJhbWVzPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5PgorICAg
IDxzY3JpcHQ+Citwcm9taXNlX3Rlc3QoYXN5bmMgZnVuY3Rpb24gKHQpIHsKKyAgdmFyIGlmciA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOworICBkb2N1bWVudC5ib2R5LmFwcGVu
ZENoaWxkKGlmcik7CisKKyAgaWZyLnNyYz0icmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRt
bCI7CisgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIGlmci5vbmxvYWQgPSBm
dW5jdGlvbigpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25l
IG5hdmlnYXRpb24gdGltZSBlbnRyeSIpOworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVu
dFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFt
ZSwgaWZyLmNvbnRlbnRXaW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hdmlnYXRpb24gbmFt
ZSBtYXRjaGVzIHRoZSB3aW5kb3cubG9jYXRpb24iKTsKKyAgICAgIGFzc2VydF90cnVlKGlmci5j
b250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XS5uYW1lLmVuZHNXaXRoKCJibGFua19wYWdlX2dyZWVuLmh0bWwiKSwgIm5hdmlnYXRpb24gbmFt
ZSBpcyBibGFua19wYWdlX2dyZWVuLmh0bWwiKTsKKyAgICAgIHJlc29sdmUoKTsKKyAgICB9Cisg
IH0pOworCisKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7IHNldFRpbWVvdXQocmVz
b2x2ZSwgMTAwKTsgfSk7CisgIGlmci5zcmMgPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV95ZWxsb3cu
aHRtbCI7CisKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9ubG9h
ZCA9IGZ1bmN0aW9uKCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25s
eSBvbmUgbmF2aWdhdGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5j
b250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XS5uYW1lLCBpZnIuY29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdhdGlv
biBuYW1lIG1hdGNoZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3RydWUo
aWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdLm5hbWUuZW5kc1dpdGgoImJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKSwgIm5hdmlnYXRp
b24gbmFtZSBpcyBibGFua19wYWdlX3llbGxvdy5odG1sIik7CisgICAgICByZXNvbHZlKCk7Cisg
ICAgfQorICB9KTsKK30sICJuYXZpZ2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlmcmFtZSBVUkwg
Y2hhbmdlcyIpOworICAgIDwvc2NyaXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dAppbmRl
eCA0YjIwZWM2ZjliMjA4YzczZDg1YTk0NGQ4OWExYjdiOGQ4NDBlYTkwLi5lZGFhOTI4OGE5YWZi
NmUyY2NjYTFjNDM3ZDVkYWNhNTlmZmFhZmE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw3IEBACi1D
T05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZh
bGlkYXRlcyB0aGF0IGFsbCBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm5hdmlnYXRpb24iKSBhdHRyaWJ1dGVzIHJlbWFpbiB1bmNoYW5nZWQgYWZ0ZXIgYW4gaW4g
ZG9jdW1lbnQgbmF2aWdhdGlvbiAoVVJMIGZyYWdtZW50IGNoYW5nZSkuCiAKIAotSGFybmVzcyBF
cnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICd0aW1pbmdbcHJvcGVydHldJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRp
bWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5f
ZG9jdW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5o
dG1sCmluZGV4IGYzOWNhMDU3Njk1NTk5OWVjYThhMDgzMzFlNTVjYzI5MjU4MTZmMzYuLjc1ZTZl
MTEzYjZkYmEzNjg3ZGYxYzhmZGJmOWM5ODNhOWZhZThhNjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5odG1sCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5odG1sCkBAIC0xMyw2ICsxMyw4IEBACiAgICAgICAg
IDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhbGwgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikgYXR0cmlidXRlcyByZW1haW4gdW5jaGFu
Z2VkIGFmdGVyIGFuIGluIGRvY3VtZW50IG5hdmlnYXRpb24gKFVSTCBmcmFnbWVudCBjaGFuZ2Up
LjwvcD4KIAogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVz
dDogdHJ1ZSB9KTsKKwogICAgICAgICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWwog
ICAgICAgICAgICAgICAgICdjb25uZWN0RW5kJywKICAgICAgICAgICAgICAgICAnY29ubmVjdFN0
YXJ0JywKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9y
d2FyZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2Zv
cndhcmQtZXhwZWN0ZWQudHh0CmluZGV4IDllMmNhYTYyMGY1YWRlYjlkYWRhNGM4MmRkMWQ2ODM3
Y2NhN2YxMjUuLjJjMDQ2MzBiYWUxNTZkYTc5ZTA1MDE3ZjNlYmE1OWJjZmM5YTdhYTQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4
cGVjdGVkLnR4dApAQCAtMSw2ICsxLDcgQEAKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAx
IG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5s
b2FkIGhhbmRsZXIocykKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9mcmFtZS5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCitmcmFtZSAiPCEtLWZyYW1l
MS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCitmcmFtZSAiPCEtLWZyYW1lMS0tPiIg
LSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFs
aWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLnR5cGUgd2l0aCBhIGZvcndhcmQgYW5kIGJhY2sgbmF2aWdhdGlvbi4K
QEAgLTEzLDYgKzE0LDUgQEAgVGhpcyB0ZXN0IHBhc3NlcyBpZiBhbGwgb2YgdGhlIGNoZWNrcyB0
byB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUKIAogCiAKLUhhcm5lc3Mg
RXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9mcmFtZS5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcg
MiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tm
b3J3YXJkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQu
aHRtbAppbmRleCBjNGI1NzU4MTA2OTExMDNkYjY5YzYxMGI5ZWM2OTQyNTExMGQ3NjM1Li5kMDA0
NTQxNWI4OWM0NWVkOWExYTg4OWU4YmUwYWJjODEyMzA5MmQ1IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgog
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0
OiB0cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCiAgICAgICAg
ICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdh
dGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRl
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMzBkY2U0NGQ4MzExMDM3Y2I1Yzc5Y2UyOTE5ZjMw
NmZiNDBhNmE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisK
K1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBuYXZpZ2F0ZS4KKworCitQ
QVNTIE5hdmlnYXRpb24gdHlwZSB0byBiZSBuYXZpZ2F0ZS4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZmFlZjFlYzBiYmI4OGU1
ZmIxNWMyYTMxZmQ1ZjkzM2MxNmEwOWY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRm
LTgiIC8+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+Cisg
ICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3
Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93
d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLyNzZWMtbmF2aWdhdGlvbi10aW1pbmctaW50
ZXJmYWNlIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5j
dGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGVudHJ5TGlzdC5nZXRFbnRyaWVzKClbMF0udHlwZSwgIm5hdmlnYXRlIiwgIkV4cGVjdGVkIG5h
dmlnYXRpb24gdHlwZSB0byBiZSBuYXZpZ2F0ZS4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAg
IG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgp
OworICAgICAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgICAgICk7CisgICAgICAgICAg
ICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKwor
ICAgICAgICAgICAgfSwgIk5hdmlnYXRpb24gdHlwZSB0byBiZSBuYXZpZ2F0ZS4iKTsKKyAgICAg
ICAgPC9zY3JpcHQ+CisKKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT4KKyAg
ICAgICAgICAgIERlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+CisgICAgICAgICAgICBUaGlz
IHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUgdG8gYmUgbmF2aWdhdGUuPC9wPgorCisgICAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX3JlbG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVf
cmVsb2FkLWV4cGVjdGVkLnR4dAppbmRleCA3MWM0N2U1YjhkZjdhNTFlZThlYmRlNjk4YWU4NTZl
YTY3MjNhNTgwLi5hNGQ2YmRhNmQ0NDlmMWFlMWY2YmI1OGRjNTgyNjVlMzZlYWFhZTdiIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4
dApAQCAtMSw0ICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmV3TmF2VGltaW5nLnR5cGUnKQogRGVzY3Jp
cHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS4odHlwZS91bmxvYWRFdmVudEVu
ZC91bmxvYWRFdmVudFN0YXJ0KSB3aXRoIGEgcmVsb2FkZWQgbmF2aWdhdGlvbi4KQEAgLTEwLDYg
KzksNSBAQCBUaGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKS51bmxvYWRFdmVudFN0YXJ0ID4gMCBhZnRlcgogVGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2FkRXZlbnRFbmQgPiAwIGFmdGVyIHJl
bG9hZAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmV3TmF2VGltaW5nLnR5cGUnKQot
CitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9yZWxvYWQuaHRtbAppbmRleCA3NGI4NWM5ZGJiNWUwMzI2NmMwYmEwMTQ1YWQ0NWQ2
N2EwMjVmZDBjLi4wZjAzZjA3YzU3YzljMWFjM2M4Njg3NDFhMjNkOWYyZTZlYmIyYjJiIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCkBAIC04LDYgKzgsNyBA
QAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xl
X3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIHZhciByZWxvYWRfZnJhbWU7CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2lu
YWxfb3JpZ2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hz
ZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZDM4
OTg3NjFiODcxNTBkMGE3NjVhYjMxYzJlNjE5NzZkOTIxNjE1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmln
aW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK0Jsb2NrZWQgYWNjZXNzIHRvIGV4dGVy
bmFsIFVSTCBodHRwOi8vd3d3LmxvY2FsaG9zdDo4ODAwL2NvbW1vbi9yZWRpcmVjdC1vcHQtaW4u
cHk/bG9jYXRpb249aHR0cDovL2xvY2FsaG9zdDo4ODAwL25hdmlnYXRpb24tdGltaW5nL3Jlc291
cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxp
ZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGFuZCB0aGUgd2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0L0VuZCB0
aW1lcyBmb3IgYSBjcm9zcy1vcmlnaW4gc2VydmVyIHNpZGUgcmVkaXJlY3QgbmF2aWdhdGlvbiB3
aGVuIHRoZSBmaW5hbCBkb2N1bWVudCBpcyB0aGUgc2FtZSBhcyB0aGUgb3JpZ2luYWwgb3JpZ2lu
LgorCisKKworSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKK05PVFJV
TiBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5mZGVmYTIwMjUwMGE0NDk3MTZlYWFiNWQyZDc1NjE2YWM0NzMwNWExCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9m
aW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbApAQCAtMCwwICsxLDUzIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4K
KyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5v
cmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
ZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vdXRpbHMuanMiPjwv
c2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVz
dDogdHJ1ZSB9KTsKKworICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGNvbnN0IGZyYW1lX3BlcmZvcm1hbmNlID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFu
Y2U7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSwKKyAgICAgICAgICAgICAgICAgICAg
Im5hdmlnYXRlIiwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIG5hdmlnYXRpb24gdHlw
ZSB0byBiZSBuYXZpZ2F0ZS4iKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1l
X3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENv
dW50LCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RDb3VudCB0byBi
ZSAwLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQsIDAsCisgICAg
ICAgICAgICAgICAgICAgICJFeHBlY3RlZCByZWRpcmVjdFN0YXJ0IHRvIGJlIDAuIik7CisgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RFbmQsIDAsCisgICAgICAgICAgICAgICAgICAg
ICJFeHBlY3RlZCByZWRpcmVjdEVuZCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgIGRvbmUo
KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisKKyAgICA8L2hlYWQ+CisgICAg
PGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVz
dCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGFuZCB0aGUKKyAgICAgICAg
ICAgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5y
ZWRpcmVjdFN0YXJ0L0VuZCB0aW1lcyBmb3IgYSBjcm9zcy1vcmlnaW4gc2VydmVyIHNpZGUgcmVk
aXJlY3QgbmF2aWdhdGlvbiB3aGVuIHRoZSBmaW5hbAorICAgICAgICAgICBkb2N1bWVudCBpcyB0
aGUgc2FtZSBhcyB0aGUgb3JpZ2luYWwgb3JpZ2luLjwvcD4KKworICAgICAgICA8aWZyYW1lIGlk
PSJmcmFtZUNvbnRleHQiIHNyYz0iIiBzdHlsZT0id2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDI1MHB4
OyI+PC9pZnJhbWU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICAvLyBjb21iaW5lIHRo
ZSBwYWdlIG9yaWdpbiBhbmQgcmVkaXJlY3Qgb3JpZ2luIGludG8gdGhlIElGUkFNRSdzIHNyYyBV
UkwKKyAgICAgICAgICAgIGNvbnN0IGRlc3RVcmxfZmlyc3QgPSBtYWtlX2Fic29sdXRlX3VybCh7
c3ViZG9tYWluOiAid3d3IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHBhdGg6ICIvY29tbW9uL3JlZGlyZWN0LW9wdC1pbi5weSIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVyeTogImxvY2F0aW9uPSIgKyBtYWtl
X2Fic29sdXRlX3VybCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHtwYXRoOiAiL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy9ibGFu
a19wYWdlX2dyZWVuLmh0bWwifSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIH0pOworICAgICAgICAgICAgY29uc3QgZGVzdFVybCA9IG1ha2VfYWJzb2x1dGVf
dXJsKHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg6
ICIvY29tbW9uL3JlZGlyZWN0LnB5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHF1ZXJ5OiAibG9jYXRpb249IiArIGRlc3RVcmxfZmlyc3R9KTsKKyAgICAg
ICAgICAgIGxldCBmcmFtZUNvbnRleHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVD
b250ZXh0Iik7CisgICAgICAgICAgICBmcmFtZUNvbnRleHQub25sb2FkID0gb25sb2FkX3Rlc3Q7
CisgICAgICAgICAgICBmcmFtZUNvbnRleHQuc3JjID0gZGVzdFVybDsKKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4
dAppbmRleCA3MWVkNDdmZTM1YTE0MmU0MGZmNDc5MDVmNzc4OGExZGM1YWNhMGZiLi40ZTc5YTdm
ZGJhMDg2MTZmOTQ1MDhkYmZmZTgyYzU2OTA0YzRiYmQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2lu
LWV4cGVjdGVkLnR4dApAQCAtNiw2ICs2LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFs
dWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWcKIAog
CiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQotCitGQUlMIE5hdmlnYXRpb24gVGltaW5n
IDIgV1BUIFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J2ZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBl
JykKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9w
YXJ0aWFsX29wdF9pbi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZl
cl9wYXJ0aWFsX29wdF9pbi5odG1sCmluZGV4IGMwZGQyNDk1NDVhNjQwZWMwY2RkNzU5YjIxMTRh
YjcyNWE2MDkwMzkuLjBmZWIzYmZhN2YxYzAxMzhlNGM5ZjllM2ZkNGQzODNlNWVmNjU4NWQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9v
cHRfaW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3Bh
cnRpYWxfb3B0X2luLmh0bWwKQEAgLTksMTMgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KLQot
ICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0
aW1pbmdFbnRyeSkgewotICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZlbnRP
cmRlci5sZW5ndGggLSAxOyBpKyspIHsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUo
dGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPCB0aW1pbmdFbnRyeVtldmVudE9yZGVyW2kgKyAx
XV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50T3JkZXJbaV0g
KyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltpICsgMV0gKyAiLiIpOwot
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNldHVwKHsgc2lu
Z2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkK
ICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZTcxYWU5NDA0MWFhYWM3Mzk0M2QyMWMyYjQyMzU4Zjc5NzlhNGQyYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0
IHRoZSB2YWx1ZSBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGF0dHJpYnV0ZSwgYXMgd2VsbCBhcyB0aGUgd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVj
dFN0YXJ0IGFuZCByZWRpcmVjdEVuZCBhdHRyaWJ1dGVzIG9uIGEgbm9uLXJlZGlyZWN0ZWQgbmF2
aWdhdGlvbi4KKworCitQQVNTIE5haXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4KKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3Rfbm9uZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk3NDM3ZTFhNWVmMmI2MWFlNjU3NjJiZmEz
NTE2MzBlYjQ3MTRjZGYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9ub25lLmh0bWwKQEAgLTAsMCArMSwzMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAg
ICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRs
ZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0
aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAg
ICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRp
b24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSB3aW5k
b3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0
Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQgYW5kIHJlZGlyZWN0RW5k
IGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLjwvcD4KKworICAgICAg
ICA8c2NyaXB0PgorCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAg
ICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAg
ICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIG5hdlRpbWluZyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVk
aXJlY3RDb3VudCwgMCwgIkV4cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVkaXJlY3RTdGFydCwgMCwg
IkV4cGVjdGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVkaXJlY3RFbmQsIDAsICJFeHBlY3RlZCByZWRpcmVj
dEVuZCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0
KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisg
ICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczog
WyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiTmFpdmF0aW9uIHdpdGhvdXQgcmVkaXJl
Y3RzLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
c2VydmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBl
Y3RlZC50eHQKaW5kZXggMDRhMjQ4Y2RlNTAxZDI2ODk0YjIyMDdmZTlhZjVmNTUwZDIwY2JjNy4u
NGZiMTVjYWZjZTdlNjE3MmVkMmVmOWI5ZjEzYzg0NzFmNTk2M2U5NiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDkgQEAKLUNPTlNP
TEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKK0NPTlNPTEUgTUVTU0FHRTogRXJyb3I6IGFz
c2VydF90cnVlOiBFeHBlY3RlZCBzdGFydFRpbWUgdG8gYmUgbm8gZ3JlYXRlciB0aGFuIHJlZGly
ZWN0U3RhcnQuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRl
c3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5yZWRpcmVj
dENvdW50IGFuZCB0aGUgd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVjdFN0YXJ0L0Vu
ZCB0aW1lcyBmb3IgYSBzYW1lLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9u
LgogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2VudHJ5LnR5cGUn
KQotCitGQUlMIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUIEVycm9yOiBhc3NlcnRfdHJ1ZTogRXhw
ZWN0ZWQgc3RhcnRUaW1lIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiByZWRpcmVjdFN0YXJ0LiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9zZXJ2ZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1sCmluZGV4
IDFkN2Y2YzkyOGNlNjNjOTRlZGMxNDkxZDI4ODNjODczMzFlMzg3MjIuLjllYzI5OTJiZWY1OGVj
NmUwMzA0ZmIxNTI4ODE0MDU5MDQxZjMxNDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3NlcnZlci5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5o
dG1sCkBAIC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAKICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9u
IHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50cnkpIHsKICAgICAg
ICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsr
KSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0CmluZGV4
IGEwOTE2YzQ1OGM2MjgyZDMxZDUzODQ4ZDc5ZjUzNzRjZWY0Mjc1YzYuLmU4MWNjZWRhOWViZjNl
ZDc1ODMwMzcyNjE1OTlmZDk5MTkzZDFjOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X3hzZXJ2ZXItZXhwZWN0ZWQudHh0CkBAIC02LDYgKzYsNSBAQCBUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZwogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFj
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdh
dGlvbiBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAncGVyZm9ybWFuY2VOYW1lc3BhY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLnR5cGUnKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94
c2VydmVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKaW5kZXgg
MDZjOWI3ZjNiNjc4YTIyNzUxYTFlOGUxYTU3MDI4MjE2YWIyMTg3OS4uZDhhY2M4MDU0ZDg3YTk3
MmQwMDU5NmQ5Nzk0ODU4NDdjZjZjZjRlNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfeHNlcnZlci5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIu
aHRtbApAQCAtOSw2ICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1v
bi91dGlscy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1
cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRf
dGVzdCgpCiAgICAgICAgICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVf
bmF2X2luc3RhbmNlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2lu
c3RhbmNlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDc2OGM1MDA0NjVkNzdiNWQxYTk4M2Jj
NDY2YmUxYWRlNDdmZTk4MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1
ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9u
CisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBlYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2
IHRpbWluZyAyIGluc3RhbmNlLgorCisKK0ZBSUwgRWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5h
diB0aW1pbmcgMiBpbnN0YW5jZS4gYXNzZXJ0X2VxdWFsczogT25seSBvbmUgbmF2IHRpbWluZyBp
bnN0YW5jZSBleGlzdHMuIGV4cGVjdGVkIDEgYnV0IGdvdCAwCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlx
dWVfbmF2X2luc3RhbmNlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkNzdhYjZiYWUxMDFiNzA0ZDEyNjdl
OGIwMzQxNjAxMWYyOGQ2NzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlx
dWVfbmF2X2luc3RhbmNlcy5odG1sCkBAIC0wLDAgKzEsNzYgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAg
ICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGlu
ayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29t
LyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9U
Ui9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0
aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93
IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuPC9wPgorICAgICAgICA8aWZyYW1l
IGlkPSJmcmFtZUNvbnRleHQiIHNyYz0icmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIg
c3R5bGU9ImRpc3BsYXk6bm9uZTsiOz48L2lmcmFtZT4KKyAgICAgICAgPHNjcmlwdD4KKworICAg
ICAgICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgICAgICdj
b25uZWN0RW5kJywKKyAgICAgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAg
ICAgICAnZGVjb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAor
ICAgICAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAg
ICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ2RvbUlu
dGVyYWN0aXZlJywKKyAgICAgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAg
ICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgICAgICdkdXJhdGlvbics
CisgICAgICAgICAgICAgICAgJ2VuY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAgICAgJ2Vu
dHJ5VHlwZScsCisgICAgICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgICAg
ICdpbml0aWF0b3JUeXBlJywKKyAgICAgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAg
ICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICduYW1lJywKKyAg
ICAgICAgICAgICAgICAncmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAgICAgJ3JlZGlyZWN0
RW5kJywKKyAgICAgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAgICAg
J3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAg
ICAgICAgICAncmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rp
b25TdGFydCcsCisgICAgICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAg
ICAgJ3R5cGUnLAorICAgICAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAg
ICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICd3b3JrZXJTdGFydCcK
KyAgICAgICAgICAgIF07CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG5vdF9zYW1lX2luc3RhbmNl
KGluc3RhbmNlMSwgaW5zdGFuY2UyLCBhdHRyaWJ1dGVzKSB7CisgICAgICAgICAgICAgICAgZm9y
ICh2YXIgaSBpbiBhdHRyaWJ1dGVzKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChpbnN0YW5j
ZTFbYXR0cmlidXRlc1tpXV0gIT0gaW5zdGFuY2UyW2F0dHJpYnV0ZXNbaV1dKQorICAgICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5j
dGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25s
eSBvbmUgbmF2IHRpbWluZyBpbnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQi
KS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KS5sZW5ndGgsIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk9ubHkgb25lIG5hdiB0
aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG1h
aW5fZnJhbWVfaW5zdGFuY2UgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdOworICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGlmcmFtZV9pbnN0YW5jZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250ZW50V2luZG93LnBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF90cnVlKG5vdF9zYW1lX2luc3RhbmNlKG1haW5fZnJhbWVfaW5zdGFu
Y2UsIGlmcmFtZV9pbnN0YW5jZSwgbmF2VGltaW5nMkF0dHJpYnV0ZXMpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICJUd28gbmF2IHRpbWluZyBpbnN0YW5jZXMgYXJlIG5vdCB0aGUgc2Ft
ZSBpbnN0YW5jZS4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5l
Y3QoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAg
ICAgICB9KQorICAgICAgICAgICAgICAgICk7CisgICAgICAgICAgICAgICAgb2JzZXJ2ZXIub2Jz
ZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICAgICAgfSwgIkVh
Y2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuIik7CisgICAgICAg
IDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2
aWdhdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjIwZWIxZjVmYjI0NDIwMGMzYmY1MGE1ZWFkODg2ZDc4NGNjYWI3MjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IG5hdmlnYXRpb24KKworTmF2aWdhdGlvbiB3aWxs
IHF1ZXVlIGEgUGVyZm9ybWFuY2VFbnRyeS4KKworCitQQVNTIG5hdmlnYXRpb24gZW50cnkgaXMg
b2JzZXJ2YWJsZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
cG8tbmF2aWdhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE1NGZiMmFmZjhlYWI3NGU1OWM1YTg0ZmMy
YmNmNDg3ZjEyMmVjNDkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRt
bApAQCAtMCwwICsxLDI5IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+
Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IG5hdmlnYXRpb248L3RpdGxlPgorPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1h
bmNlT2JzZXJ2ZXJzOiBuYXZpZ2F0aW9uPC9oMT4KKzxwPgorTmF2aWdhdGlvbiB3aWxsIDxhIGhy
ZWY9Imh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8jZGZuLXF1ZXVl
LWEtcGVyZm9ybWFuY2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5PC9hPi4KKzwvcD4K
KzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgZnVuY3Rpb24gY2hlY2tFbnRyeShwZXMpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMo
cGVzLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGVudHJ5Iik7CisgICAg
ICBhc3NlcnRfZXF1YWxzKHBlc1swXS5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIiwgImVudHJ5VHlw
ZSBpcyBcIm5hdmlnYXRpb25cIiIpOworICAgICAgYXNzZXJ0X2VxdWFscyhwZXNbMF0ubmFtZSwg
d2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYW1lIGlzIHRoZSBhZGRyZXNzIG9mIHRoZSBk
b2N1bWVudCIpOworICAgIH0KKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7Cisg
ICAgICAgICAgY2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBj
aGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikpOworICAg
ICAgICAgIGNoZWNrRW50cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUod2luZG93LmxvY2F0
aW9uLnRvU3RyaW5nKCkpKTsKKyAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
ICAgICAgdC5kb25lKCk7CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2Vy
dmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisgIH0sICJuYXZpZ2F0aW9uIGVudHJ5
IGlzIG9ic2VydmFibGUiKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMv
d2VicGVyZnRlc3RoYXJuZXNzLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNz
LmpzCmluZGV4IDNlZmI1Mjc4M2YxZTVkY2IwZDQyYWFkMTFhZWMyYTllNDcyNTdkMzMuLjBjMjdj
MmVlMzA3ZjRiODA5OWE2YjRjNWIwNDk3YmFmNTBiNjExMDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVz
b3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJm
dGVzdGhhcm5lc3MuanMKQEAgLTQyLDI1ICs0MiwyNSBAQCBmdW5jdGlvbiB0ZXN0X25hbWVzcGFj
ZShjaGlsZF9uYW1lLCBza2lwX3Jvb3QpCiB7CiAgICAgaWYgKHNraXBfcm9vdCA9PT0gdW5kZWZp
bmVkKSB7CiAgICAgICAgIHZhciBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlIGlzIGRlZmluZWQn
OwotICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uICgpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VO
YW1lc3BhY2UgIT09IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnKTsKKyAgICAgICAgd3BfdGVzdChm
dW5jdGlvbiAoKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlLCB1bmRl
ZmluZWQsIG1zZyk7IH0sIG1zZyk7CiAgICAgfQogCiAgICAgaWYgKGNoaWxkX25hbWUgIT09IHVu
ZGVmaW5lZCkgewogICAgICAgICB2YXIgbXNnMiA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIGNo
aWxkX25hbWUgKyAnIGlzIGRlZmluZWQnOwotICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBh
c3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtjaGlsZF9uYW1lXSAhPT0gdW5kZWZpbmVk
LCBtc2cyKTsgfSwgbXNnMik7CisgICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9u
b3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdLCB1bmRlZmluZWQsIG1z
ZzIpOyB9LCBtc2cyKTsKICAgICB9CiB9CiAKIGZ1bmN0aW9uIHRlc3RfYXR0cmlidXRlX2V4aXN0
cyhwYXJlbnRfbmFtZSwgYXR0cmlidXRlX25hbWUsIHByb3BlcnRpZXMpCiB7CiAgICAgdmFyIG1z
ZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsgJy4nICsgYXR0cmlidXRl
X25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRf
dHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bYXR0cmlidXRlX25hbWVdICE9
PSB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CisgICAgd3BfdGVzdChmdW5j
dGlvbigpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25h
bWVdW2F0dHJpYnV0ZV9uYW1lXSwgdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMp
OwogfQogCiBmdW5jdGlvbiB0ZXN0X2VudW0ocGFyZW50X25hbWUsIGVudW1fbmFtZSwgdmFsdWUs
IHByb3BlcnRpZXMpCiB7CiAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIHBh
cmVudF9uYW1lICsgJy4nICsgZW51bV9uYW1lICsgJyBpcyBkZWZpbmVkLic7Ci0gICAgd3BfdGVz
dChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25h
bWVdW2VudW1fbmFtZV0gIT09IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsK
KyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5h
bWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9uYW1lXSwgdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cs
IHByb3BlcnRpZXMpOwogCiAgICAgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50
X25hbWUgKyAnLicgKyBlbnVtX25hbWUgKyAnID0gJyArIHZhbHVlOwogICAgIHdwX3Rlc3QoZnVu
Y3Rpb24oKSB7IGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVd
W2VudW1fbmFtZV0sIHZhbHVlLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwpAQCAtMTIyLDUg
KzEyMiw1IEBAIGZ1bmN0aW9uIHRlc3RfZ3JlYXRlcl9vcl9lcXVhbHModmFsdWUsIGdyZWF0ZXJf
dGhhbiwgbXNnLCBwcm9wZXJ0aWVzKQogCiBmdW5jdGlvbiB0ZXN0X25vdF9lcXVhbHModmFsdWUs
IG5vdGVxdWFscywgbXNnLCBwcm9wZXJ0aWVzKQogewotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7
IGFzc2VydF90cnVlKHZhbHVlICE9PSBub3RlcXVhbHMsIG1zZyk7IH0sIG1zZywgcHJvcGVydGll
cyk7CisgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVhbHModmFsdWUsIG5v
dGVxdWFscywgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
ZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZjEwOGQyZTgzMzY0YWQxNGZkZjJhMzA0ZjdkNTQ4Mjg3ODBkOWVhMgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25T
dGFydCB2YWx1ZSBpcyBhcyBleHBlY3RlZCB3aGVuIHJldXNlZAorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1j
b25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjUyYTI1OWVjZDQy
NWMyMTJkODllYjExNDk4MWQ0ZjEyZTgwZjMwNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2Vj
dXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApAQCAtMCwwICsxLDE1IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4K
Kzx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyBzZWN1cmVjb25uZWN0aW9uc3RhcnQgcmV1c2U8L3Rp
dGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdD4KK2NvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlv
blN0YXJ0IHZhbHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkIik7Cit3aW5kb3cuYWRkRXZl
bnRMaXN0ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9PiB7CisgIGFzc2VydF9l
cXVhbHMoZS5kYXRhLCAiUEFTUyIpOworfSkpOworPC9zY3JpcHQ+Cis8aWZyYW1lIHNyYz0icmVz
b3VyY2VzL3NlY3VyZS1jb25uZWN0aW9uLWludGVyaW0uaHRtbCI+CisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQK
aW5kZXggODIyMDRkMDY1MTY2OTU3YWE5MDA5ODljZWM3ZGFjY2FjZGUzODQ4Ni4uNTE4Mjc1ODNh
ZDM3ZTFlMTJjMWFiZjVmMjFjOGNlNjI1MGUzMTAwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVf
Y29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
ZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQKQEAgLTMs
NSArMyw1IEBAIERlc2NyaXB0aW9uCiBUaGUgdGVzdHMgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3Rh
cnQgaGFzIGEgbm9uLXplcm8gdmFsdWUuCiAKIAotRkFJTCBUZXN0IHRoYXQgc2VjdXJlQ29ubmVj
dGlvblN0YXJ0IGlzIG5vdCB6ZXJvIHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdlbnRyeS5zZWN1cmVDb25uZWN0aW9uU3RhcnQnKQorRkFJTCBUZXN0IHRoYXQgc2VjdXJl
Q29ubmVjdGlvblN0YXJ0IGlzIG5vdCB6ZXJvIGFzc2VydF9ncmVhdGVyX3RoYW46IHNlY3VyZUNv
bm5lY3Rpb25TdGFydCBpcyBub24temVybyBleHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRoYW4g
MCBidXQgZ290IDAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBl
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4
cGVjdGVkLnR4dAppbmRleCA1Nzk3OGJmMjZkYjBlNDEzY2JmMmQ0YzJmMzg2MzljNDFhMjVmYzUw
Li5kMmVhOTUwNDc2ZDkxYmU1NjA0NmQwMzNkMWZjZDY2MWQ0Nzk4MGY5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQg
QEAKIAotRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4gYXNz
ZXJ0X3RydWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicgaW4gUGVyZm9y
bWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLgorUEFTUyAn
bmF2aWdhdGlvbicgZW50cmllcyBzaG91bGQgYmUgb2JzZXJ2YWJsZS4KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0MWEyNWZjNTAuLjM0MzgzNWE0Mjg0
NTNlMGIxY2Y2NWQ4NGRiODMzZjkxYWJjODM2MTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVk
X25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBv
cnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSw2
IEBACiAKLUZBSUwgc3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuIGFz
c2VydF90cnVlOiBUaGVyZSBzaG91bGQgYmUgYW4gZW50cnkgJ25hdmlnYXRpb24nIGluIFBlcmZv
cm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKK1BBU1Mgc3VwcG9y
dGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuCitUSU1FT1VUICduYXZpZ2F0aW9u
JyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZhYmxlLiBUZXN0IHRpbWVkIG91dAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9k
b2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlOWEzODRhNWJiMzcwMDRl
OGY3MDQyODViMzUyZWVhYjQ5MTNjZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9j
dW1lbnRfb25sb2FkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK0Rlc2NyaXB0aW9uCisK
K1RoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNpemUg
YW5kIGRlY29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hlbiBj
aGVja2VkIGluIHRoZSBvbmxvYWQgaGFuZGxlcgorCisKK0ZBSUwgVGVzdCB0aGF0IHRoZSBhdHRy
aWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIERPTUNvbnRlbnRMb2FkZWQgYXNzZXJ0
X2dyZWF0ZXJfdGhhbjogZGVzY3IgZXhwZWN0ZWQgYSBudW1iZXIgYnV0IGdvdCBhICJ1bmRlZmlu
ZWQiCitGQUlMIFRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1
cmluZyBvbmxvYWQgYXNzZXJ0X2dyZWF0ZXJfdGhhbjogZGVzY3IgZXhwZWN0ZWQgYSBudW1iZXIg
YnV0IGdvdCBhICJ1bmRlZmluZWQiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9v
bmxvYWQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43
Y2MxODQ5MWQ2MjAyNGYxZDRmYTNkMjBjNTE3M2IzMTMyNjliM2U4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KKyAgICAgICAgPHRpdGxlPndpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIGF0dHJp
YnV0ZXM8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ik1vemlsbGEi
IGhyZWY9Imh0dHBzOi8vd3d3Lm1vemlsbGEub3JnLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJo
ZWxwIiBocmVmPSJodHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jcHJv
Y2Vzc2luZy1tb2RlbCIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24v
cGVyZm9ybWFuY2UtdGltZWxpbmUtdXRpbHMuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0icmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8
cD5UaGlzIHRlc3QgY2hlY2tzIHRoYXQgdGhlIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXpl
IGFuZCBkZWNvZGVkQm9keVNpemUgYXR0cmlidXRlcyBoYXZlIGNvcnJlY3QgdmFsdWVzIHdoZW4g
Y2hlY2tlZCBpbiB0aGUgb25sb2FkIGhhbmRsZXI8L3A+CisKKyAgICAgICAgPGRpdiBpZD0ibG9n
Ij48L2Rpdj4KKworICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5j
dGlvbiAodCkgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRP
TUNvbnRlbnRMb2FkZWQiLCB0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAg
ICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihl
bnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7
CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJv
ZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICB9KSk7CisgICAgICAgICAg
ICB9LCAiVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5n
IERPTUNvbnRlbnRMb2FkZWQiKTsKKworICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgICAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgdC5z
dGVwX2Z1bmNfZG9uZSgoKSA9PiB7CisgICAgICAgICAgICAgICAgICAgIGxldCBlbnRyeSA9IHdp
bmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkudHJhbnNmZXJTaXplLCAx
MDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihl
bnRyeS5lbmNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmRlY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2Ny
Iik7CisgICAgICAgICAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQodC5zdGVwX2Z1bmNfZG9uZSgoKSA9PiB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBlbnRyeSA9IHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkudHJhbnNmZXJTaXplLCAxMDAwLCAiZGVzY3Ii
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5l
bmNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmRlY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2Ny
Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCk7CisgICAgICAgICAgICAgICAgICAg
IH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcg
YSB0YXNrIGFmdGVyIG9ubG9hZCIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAgICAg
IH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcg
b25sb2FkIik7CisKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CmluZGV4
IGRhNTI2MGEyMjNkMjJhZDFhYzRkNWQyOTcyNmM0YWUyNzNlYjFiMjguLjNmZWVhZDFmZGU3MjAz
MzczNmRlZjFmMDRlNWI0NzEwOThiMGQzOGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50
LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1z
YW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQKQEAgLTQsMTYgKzQsMTYgQEAgVGhpcyB0ZXN0
IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmkKIAogCiAKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBhIHBhcnRpYWwg
VEFPIG9wdC1pbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdlbnRyeS50eXBlJykiCi1GQUlMIFJlZGlyZWN0IGNoYWluIHdpdGggZnVsbCBUQU8gb3B0LWlu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5
cGUnKSIKLUZBSUwgU2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9w
dC1pbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRy
eS50eXBlJykiCi1GQUlMIGNyb3NzLWNyb3NzLXNhbWUgUmVkaXJlY3QgY2hhaW4gd2l0aCBubyBU
QU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J2VudHJ5LnR5cGUnKSIKLUZBSUwgUHJldmlvdXMgZG9jdW1lbnQgY3Jvc3Mgb3JpZ2luIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIK
LUZBSUwgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91
cyBkb2N1bWVudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdlbnRyeS50eXBlJykiCi1GQUlMIFNhbWUgb3JpZ2luIHByZXZpb3VzIGRvY3VtZW50IHdpdGgg
c2FtZSBvcmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRo
IHNhbWUgb3JpZ2luIHJlZGlyZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0
aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3
aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRoIHBhcnRpYWwgVEFPIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8g
cHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScp
IgorUEFTUyBSZWRpcmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0LWluCitQQVNTIFJl
ZGlyZWN0IGNoYWluIHdpdGggZnVsbCBUQU8gb3B0LWluCitQQVNTIFNhbWUtY3Jvc3Mtc2FtZSBy
ZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4KK1BBU1MgY3Jvc3MtY3Jvc3Mtc2FtZSBS
ZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQg
Y3Jvc3Mgb3JpZ2luCitQQVNTIFByZXZpb3VzIGRvY3VtZW50IHNhbWUgb3JpZ2luCitQQVNTIE5v
IHByZXZpb3VzIGRvY3VtZW50CitQQVNTIFNhbWUgb3JpZ2luIHByZXZpb3VzIGRvY3VtZW50IHdp
dGggc2FtZSBvcmlnaW4gcmVkaXJlY3QKK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBz
YW1lIG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3Nz
IG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9y
aWdpbiByZWRpcmVjdCB3aXRoIHBhcnRpYWwgVEFPCitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50
IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggVEFPCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvTUVUQS55bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg5ZmFlMWRiMGQ5Yjdh
ZmQyMDI3MzdlMzQ3NTRiNGU4OTMyOThkNDkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01F
VEEueW1sCkBAIC0wLDAgKzEsNCBAQAorc3BlYzogaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZv
cm1hbmNlLXRpbWVsaW5lLworc3VnZ2VzdGVkX3Jldmlld2VyczoKKyAgLSBwbGVoZWdhcgorICAt
IGlncmlnb3JpawpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVv
dXQuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjA4YjNlMzIzMTQ2NTg1N2NmMjQ4ZTRhY2U4ZWY1NzQ0NjlhMTQ4NjQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMK
QEAgLTAsMCArMSwxMSBAQAorYXN5bmNfdGVzdCh0ID0+IHsKKyAgcGVyZm9ybWFuY2UubWFyaygn
Zm9vJyk7CisgIHQuc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICAvLyBBZnRlciBhIHRpbWVvdXQs
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgc2hvdWxkIHN0aWxsIHJlY2VpdmUgZW50cnkgaWYgdXNpbmcg
dGhlIGJ1ZmZlcmVkIGZsYWcuCisgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIodC5zdGVwX2Z1
bmNfZG9uZShsaXN0ID0+IHsKKyAgICAgIGNvbnN0IGVudHJpZXMgPSBsaXN0LmdldEVudHJpZXMo
KTsKKyAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllcy5sZW5ndGgsIDEsICdUaGVyZSBzaG91bGQg
YmUgMSBtYXJrIGVudHJ5LicpOworICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVudHJ5
VHlwZSwgJ21hcmsnKTsKKyAgICB9KSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDog
dHJ1ZX0pOworICB9LCAxMDApOworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIgd2l0aCBidWZmZXJl
ZCBmbGFnIHNlZXMgZW50cnkgYWZ0ZXIgdGltZW91dCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9i
dWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1vYnNl
cnZlci5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzFkYzM5YzEyOGFkNTVjMTNlZWY2NjU4M2E2ODg4NjIy
Zjg2YmY2MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1vYnNlcnZl
ci5hbnkuanMKQEAgLTAsMCArMSwxNSBAQAorYXN5bmNfdGVzdCggdD0+IHsKKyAgZm9yIChsZXQg
aSA9IDA7IGkgPCA1MDsgaSsrKQorICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycgKyBpKTsKKyAg
bGV0IG1hcmtzQ3JlYXRlZCA9IDUwOworICBsZXQgbWFya3NSZWNlaXZlZCA9IDA7CisgIG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKGxpc3QgPT4geworICAgIG1hcmtzUmVjZWl2ZWQgKz0gbGlzdC5n
ZXRFbnRyaWVzKCkubGVuZ3RoOworICAgIGlmIChtYXJrc0NyZWF0ZWQgPCAxMDApIHsKKyAgICAg
IHBlcmZvcm1hbmNlLm1hcmsoJ2JhcicgKyBtYXJrc0NyZWF0ZWQpOworICAgICAgbWFya3NDcmVh
dGVkKys7CisgICAgfQorICAgIGlmIChtYXJrc1JlY2VpdmVkID09IDEwMCkKKyAgICAgIHQuZG9u
ZSgpOworICB9KS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7Cit9LCAn
UGVyZm9ybWFuY2VPYnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcgc2hvdWxkIHNlZSBwYXN0IGFu
ZCBmdXR1cmUgZW50cmllcy4nKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50
cmllcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjk2OTE5MDgxOWY1M2ViNDUzN2RhMDE5YzkwY2MzM2JkMGRhM2Q4ZGYK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMyBAQAorCitQQVNTIEdldCBpbnZhbGlkIGVudHJpZXMgZnJvbSB3b3Jr
ZXIgYW5kIHdpbmRvdy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zM2Q2
NTg5ZTI3NWUyNjUxODBlMDU3MWNhMzEwM2RiZjlhYTE3OWI4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWwKQEAgLTAsMCArMSwyNyBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorYXN5bmNfdGVz
dChmdW5jdGlvbih0KSB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ3dpbmRvd01hcmsnKTsKKyAgY29u
c3Qgd29ya2VyID0gbmV3IFdvcmtlcigicmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMu
anMiKTsKKyAgd29ya2VyLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5kYXRhWydpbnZhbGlkJ10sIDAsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAw
IGludmFsaWQgZW50cmllcy4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGFbJ21hcmsn
XSwgMSwgJ1RoZSB3b3JrZXIgbXVzdCBoYXZlIDEgbWFyayBlbnRyeS4nKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKGV2ZW50LmRhdGFbJ21lYXN1cmUnXSwgMCwgJ1RoZSB3b3JrZXIgbXVzdCBoYXZlIDAg
bWVhc3VyZSBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgnaW52YWxpZCcpLmxlbmd0aCwgMCwKKyAgICAgICdUaGUgd2luZG93IG11c3Qg
aGF2ZSAwIGludmFsaWQgZW50cmllcy4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoJ21hcmsnKS5sZW5ndGgsIDEsCisgICAgICAnVGhlIHdpbmRvdyBt
dXN0IGhhdmUgMSBtYXJrIGVudHJ5LicpOworICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgnbWVhc3VyZScpLmxlbmd0aCwgMCwKKyAgICAgICdUaGUgd2luZG93
IG11c3QgaGF2ZSAwIG1lYXN1cmUgZW50cmllcy4nKQorICAgIHQuZG9uZSgpOworICB9Cit9LCAn
R2V0IGludmFsaWQgZW50cmllcyBmcm9tIHdvcmtlciBhbmQgd2luZG93LicpOworPC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55Lmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMmVmZWJlOThmZmQ0NzJl
ZTEwMTAwMjdmZjk2NmExZWY5MDdmMTdkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxo
YXJuZXNzLmFueS5qcwpAQCAtMCwwICsxLDI1IEBACisvLyBNRVRBOiBnbG9iYWw9d2luZG93LHdv
cmtlcgorLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvV2ViSURMUGFyc2VyLmpzCisvLyBNRVRB
OiBzY3JpcHQ9L3Jlc291cmNlcy9pZGxoYXJuZXNzLmpzCisKKy8vIGh0dHBzOi8vdzNjLmdpdGh1
Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8KKworJ3VzZSBzdHJpY3QnOworCitpZGxfdGVzdCgK
KyAgWydwZXJmb3JtYW5jZS10aW1lbGluZSddLAorICBbJ2hyLXRpbWUnLCAnZG9tJ10sCisgIGFz
eW5jIGlkbF9hcnJheSA9PiB7CisgICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsKKyAgICAgIFBl
cmZvcm1hbmNlOiBbJ3BlcmZvcm1hbmNlJ10sCisgICAgICBQZXJmb3JtYW5jZU9ic2VydmVyOiBb
J29ic2VydmVyJ10sCisgICAgICBQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OiBbJ2VudHJ5
TGlzdCddLAorICAgIH0pOworCisgICAgc2VsZi5lbnRyeUxpc3QgPSBhd2FpdCBuZXcgUHJvbWlz
ZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICBzZWxmLm9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIocmVzb2x2ZSk7CisgICAgICBvYnNlcnZlci5vYnNlcnZlKHsgZW50cnlU
eXBlczogWydtYXJrJ10gfSk7CisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCd0ZXN0Jyk7CisgICAg
fSk7CisgIH0KKyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWct
b2JzZXJ2ZXJzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZl
cnMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVkZDQ0ZmIxOGZiZGI5YzNjMzJmNDUzOGQyZWY3ZWMyY2Fj
NDczMDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWct
b2JzZXJ2ZXJzLmFueS5qcwpAQCAtMCwwICsxLDMyIEBACitwcm9taXNlX3Rlc3QoKCkgPT4gewor
ICAvLyBUaGUgZmlyc3QgcHJvbWlzZSB3YWl0cyBmb3Igb25lIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2
ZXIgdG8gcmVjZWl2ZSAzIGVudHJpZXMuCisgIGNvbnN0IHByb21pc2UxID0gbmV3IFByb21pc2Uo
cmVzb2x2ZTEgPT4geworICAgIGxldCBudW1PYnNlcnZlZDEgPSAwOworICAgIG5ldyBQZXJmb3Jt
YW5jZU9ic2VydmVyKChlbnRyeUxpc3QsIG9icykgPT4geworICAgICAgLy8gVGhpcyBidWZmZXJl
ZCBmbGFnIG9ic2VydmVyIGlzIGNvbnN0cnVjdGVkIGFmdGVyIGEgcmVndWxhciBvYnNlcnZlciBk
ZXRlY3RzIGEgbWFyay4KKyAgICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGxpc3QgPT4gewor
ICAgICAgICBudW1PYnNlcnZlZDEgKz0gbGlzdC5nZXRFbnRyaWVzKCkubGVuZ3RoOworICAgICAg
ICBpZiAobnVtT2JzZXJ2ZWQxID09IDMpCisgICAgICAgICAgcmVzb2x2ZTEoKTsKKyAgICAgIH0p
Lm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAgICAgIG9icy5kaXNj
b25uZWN0KCk7CisgICAgfSkub2JzZXJ2ZSh7ZW50cnlUeXBlczogWydtYXJrJ119KTsKKyAgICBw
ZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsKKyAgfSk7CisgIC8vIFRoZSBzZWNvbmQgcHJvbWlzZSB3
YWl0cyBmb3IgYW5vdGhlciBidWZmZXJlZCBmbGFnIG9ic2VydmVyIHRvIHJlY2VpdmUgMyBlbnRy
aWVzLgorICBjb25zdCBwcm9taXNlMiA9IG5ldyBQcm9taXNlKHJlc29sdmUyID0+IHsKKyAgICBz
dGVwX3RpbWVvdXQoKCkgPT4geworICAgICAgbGV0IG51bU9ic2VydmVkMiA9IDA7CisgICAgICAv
LyBUaGlzIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgaXMgY29uc3RydWN0ZWQgYWZ0ZXIgYSBkZWxh
eSBvZiAxMDBtcy4KKyAgICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGxpc3QgPT4geworICAg
ICAgICBudW1PYnNlcnZlZDIgKz0gbGlzdC5nZXRFbnRyaWVzKCkubGVuZ3RoOworICAgICAgICBp
ZiAobnVtT2JzZXJ2ZWQyID09IDMpCisgICAgICAgICAgcmVzb2x2ZTIoKTsKKyAgICAgIH0pLm9i
c2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAgICB9LCAxMDApOworICAg
IHBlcmZvcm1hbmNlLm1hcmsoJ2JhcicpOworICB9KTsKKyAgcGVyZm9ybWFuY2UubWFyaygnbWVv
dycpOworICAvLyBQYXNzIGlmIGFuZCBvbmx5IGlmIGJvdGggYnVmZmVyZWQgb2JzZXJ2ZXJzIHJl
Y2VpdmVkIGFsbCAzIG1hcmsgZW50cmllcy4KKyAgcmV0dXJuIFByb21pc2UuYWxsKFtwcm9taXNl
MSwgcHJvbWlzZTJdKTsKK30sICdNdWx0aXBsZSBQZXJmb3JtYW5jZU9ic2VydmVycyB3aXRoIGJ1
ZmZlcmVkIGZsYWcgc2VlIGFsbCBlbnRyaWVzJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1j
bG9uYWJsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZjU0MmNmN2M0YWFjZjAyOTE2NjVhOGY0OTc2NWFkZDg4NWViYzQyZAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDQgQEAKKworCitQQVNTIFRlc3QgdGhhdCBhIHBvc3RNZXNzYWdlIG9mIGEgcGVyZm9ybWFu
Y2UgZW50cnkgZmFpbHMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvbm90LWNsb25hYmxlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDY1MTc3NmU1ZjRiOTQ1MzI4
ZTlkZTI2NTFiOGE1OWYxMWI1MzQyNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNs
b25hYmxlLmh0bWwKQEAgLTAsMCArMSwxMCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICBjb25z
dCB0ID0gYXN5bmNfdGVzdCgiVGVzdCB0aGF0IGEgcG9zdE1lc3NhZ2Ugb2YgYSBwZXJmb3JtYW5j
ZSBlbnRyeSBmYWlscyIpOworICBhZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1
bmNfZG9uZShlID0+IHsKKyAgICBhc3NlcnRfZXF1YWxzKGUuZGF0YSwgIlBBU1MiKTsKKyAgfSkp
OworPC9zY3JpcHQ+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5Lmh0
bWwiPjwvaWZyYW1lPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9vYnNlcnZlci1idWZmZXJlZC1mYWxz
ZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hMjgxMDBiMGZkYmEyZTAwNTc5ODA5YTU4MTkzNWQzMTJjZjEyNDVlCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9vYnNlcnZlci1idWZmZXJlZC1mYWxzZS5hbnkuanMKQEAgLTAsMCAr
MSwxMiBAQAorYXN5bmNfdGVzdCh0ID0+IHsKKyAgcGVyZm9ybWFuY2UubWFyaygnZm9vJyk7Cisg
IC8vIFVzZSBhIHRpbWVvdXQgdG8gZW5zdXJlIHRoZSByZW1haW5kZXIgb2YgdGhlIHRlc3QgcnVu
cyBhZnRlciB0aGUgZW50cnkgaXMgY3JlYXRlZC4KKyAgdC5zdGVwX3RpbWVvdXQoKCkgPT4gewor
ICAgIC8vIE9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzZXQgdG8gZmFsc2Ugc2hvdWxkIG5v
dCBzZWUgZW50cnkuCisgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKCkgPT4geworICAgICAg
YXNzZXJ0X3VucmVhY2hlZCgnU2hvdWxkIG5vdCBoYXZlIG9ic2VydmVkIGFueSBlbnRyeSEnKTsK
KyAgICB9KS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiBmYWxzZX0pOworICAgIC8v
IFVzZSBhIHRpbWVvdXQgdG8gZ2l2ZSB0aW1lIHRvIHRoZSBvYnNlcnZlci4KKyAgICB0LnN0ZXBf
dGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHt9KSwgMTAwKTsKKyAgfSwgMCk7Cit9LCAn
UGVyZm9ybWFuY2VPYnNlcnZlciB3aXRob3V0IGJ1ZmZlcmVkIGZsYWcgc2V0IHRvIGZhbHNlIGNh
bm5vdCBzZWUgcGFzdCBlbnRyaWVzLicpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wZXJmb3JtYW5j
ZWVudHJ5LXRvanNvbi5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFu
eS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40NGYwMTU2ZWVjMTkyNDE5NzAwMjhjMjhlNTg5N2JlNGQ2ZjFjYjgx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnku
anMKQEAgLTAsMCArMSwyMSBAQAordGVzdCgoKSA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ21h
cmtOYW1lJyk7CisgIHBlcmZvcm1hbmNlLm1lYXN1cmUoJ21lYXN1cmVOYW1lJyk7CisKKyAgY29u
c3QgZW50cmllcyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKTsKKyAgY29uc3QgcGVyZm9ybWFu
Y2VFbnRyeUtleXMgPSBbCisgICAgJ25hbWUnLAorICAgICdlbnRyeVR5cGUnLAorICAgICdzdGFy
dFRpbWUnLAorICAgICdkdXJhdGlvbicKKyAgXTsKKyAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbnRy
aWVzLmxlbmd0aDsgKytpKSB7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YoZW50cmllc1tpXS50
b0pTT04pLCAnZnVuY3Rpb24nKTsKKyAgICBjb25zdCBqc29uID0gZW50cmllc1tpXS50b0pTT04o
KTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihqc29uKSwgJ29iamVjdCcpOworICAgIGZvciAo
Y29uc3Qga2V5IG9mIHBlcmZvcm1hbmNlRW50cnlLZXlzKSB7CisgICAgICBhc3NlcnRfZXF1YWxz
KGpzb25ba2V5XSwgZW50cmllc1tpXVtrZXldLAorICAgICAgICBgZW50cmllc1ske2l9XS50b0pT
T04oKS4ke2tleX0gc2hvdWxkIG1hdGNoIGVudHJpZXNbJHtpfV0uJHtrZXl9YCk7CisgICAgfQor
ICB9Cit9LCAnVGVzdCB0b0pTT04oKSBpbiBQZXJmb3JtYW5jZUVudHJ5Jyk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNr
LW11dGF0ZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGYxYjA5YmMzNzcxMjA4MDI0MDFkZTFiMjQ3YWE1
N2RiNzQxNGM2OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRl
LmFueS5qcwpAQCAtMCwwICsxLDY2IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNl
cnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIGNhbGxiYWNr
Q291bnQgPSAwOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAor
ICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAg
ICBjYWxsYmFja0NvdW50Kys7CisKKyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3VudCA9PT0gMSkg
eworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksIFsKKyAg
ICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAg
ICAgICAgICAgIF0pOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczog
WyJtYXJrIl19KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsK
KyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3Vu
dCA9PT0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCksIFsKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwK
KyAgICAgICAgICAgIF0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJr
LWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIik7CisgICAgICAgICAgICBz
ZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0
YXRlLXRvLW1lYXN1cmUiKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlw
ZXM6IFsibWVhc3VyZSJdfSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1h
cmszIik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUzIik7
CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxi
YWNrQ291bnQgPT09IDMpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0
RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTog
Im1lYXN1cmUzIn0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1h
cmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLW1lYXN1cmUifSwKKyAgICAgICAgICAg
IF0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrLWJlZm9yZS1jaGFu
Z2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1lYXN1cmUoIm1lYXN1cmUtYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgiKTsK
KyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayIsICJtZWFz
dXJlIl19KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazQiKTsKKyAg
ICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTQiKTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3VudCA9
PT0gNCkgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCks
IFsKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1i
ZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tYm90aCJ9LAorICAgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlNCJ9LAorICAgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrNCJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAg
ICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3JlLWRpc2Nvbm5lY3QiKTsKKyAg
ICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtZGlzY29u
bmVjdCIpOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAg
c2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrLWFmdGVyLWRpc2Nvbm5lY3QiKTsKKyAgICAgICAg
ICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1hZnRlci1kaXNjb25uZWN0Iik7
CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9
CisKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGUgY2FsbGJhY2sgbXVzdCBub3QgYmUg
aW52b2tlZCBhZnRlciBkaXNjb25uZWN0aW5nIik7CisgICAgICAgIH0pCisgICAgICApOworCisg
ICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtZWFzdXJlIl19KTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJl
KCJtZWFzdXJlMSIpOworICB9LCAiUGVyZm9ybWFuY2VPYnNlcnZlciBtb2RpZmljYXRpb25zIGlu
c2lkZSBjYWxsYmFjayBzaG91bGQgdXBkYXRlIGZpbHRlcmluZyBhbmQgbm90IGNsZWFyIGJ1ZmZl
ciIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQt
dHlwZXMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlw
ZXMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNhYzk3YmVhMDc1NWMxMTgyOTU2ZmRmOTRjOThlZTc4Y2E0
MGIwMTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1v
YnNlcnZlZC10eXBlcy5hbnkuanMKQEAgLTAsMCArMSwxOSBAQAorLy8gTUVUQTogc2NyaXB0PXBl
cmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgY29u
c3Qgb2JzZXJ2ZXIgID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICB0LnN0ZXBfZnVu
YyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgIC8vIFRoZXJlIHNob3VsZCBiZSBubyBt
YXJrIGVudHJ5LgorICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwK
KyAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogImIifV0pOworICAgICAg
ICB0LmRvbmUoKTsKKyAgICAgIH0pCisgICAgKTsKKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTog
Im1hcmsifSk7CisgIC8vIERpc2Nvbm5lY3QgdGhlIG9ic2VydmVyLgorICBvYnNlcnZlci5kaXNj
b25uZWN0KCk7CisgIC8vIE5vdywgb25seSBvYnNlcnZlIG1lYXN1cmUuCisgIG9ic2VydmVyLm9i
c2VydmUoe3R5cGU6ICJtZWFzdXJlIn0pOworICBwZXJmb3JtYW5jZS5tYXJrKCJhIik7CisgIHBl
cmZvcm1hbmNlLm1lYXN1cmUoImIiKTsKK30sICJUeXBlcyBvYnNlcnZlZCBhcmUgZm9yZ290dGVu
IHdoZW4gZGlzY29ubmVjdCgpIGlzIGNhbGxlZC4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
ZGlzY29ubmVjdC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjVmNWZiNWFhNDNiYTQ2MjY4ZjhjMzU1ZmRjOTNjNmYxODI5OTY4YjQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzCkBAIC0wLDAgKzEsMzcgQEAKKy8v
IE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVu
Y3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigK
KyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAg
ICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhpcyBjYWxsYmFjayBtdXN0IG5vdCBiZSBpbnZva2VkIik7
CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6
IFsibWFyayIsICJtZWFzdXJlIiwgIm5hdmlnYXRpb24iXX0pOworICAgIG9ic2VydmVyLmRpc2Nv
bm5lY3QoKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAgIHQuc3RlcF90aW1lb3V0KGZ1bmN0
aW9uICgpIHsKKyAgICAgIHQuZG9uZSgpOworICAgIH0sIDIwMDApOworICB9LCAiZGlzY29ubmVj
dGVkIGNhbGxiYWNrcyBtdXN0IG5vdCBiZSBpbnZva2VkIik7CisKKyAgdGVzdChmdW5jdGlvbiAo
KSB7CisgICAgdmFyIG9icyA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uICgpIHsg
cmV0dXJuIHRydWU7IH0pOworICAgIG9icy5kaXNjb25uZWN0KCk7CisgICAgb2JzLmRpc2Nvbm5l
Y3QoKTsKKyAgfSwgImRpc2Nvbm5lY3RpbmcgYW4gdW5jb25uZWN0ZWQgb2JzZXJ2ZXIgaXMgYSBu
by1vcCIpOworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2ZXIg
PSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhpcyBjYWxs
YmFjayBtdXN0IG5vdCBiZSBpbnZva2VkIik7CisgICAgICAgIH0pCisgICAgICApOworICAgIG9i
c2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7CisgICAgc2VsZi5wZXJmb3Jt
YW5jZS5tYXJrKCJtYXJrMSIpOworICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7CisgICAgdC5zdGVwX3RpbWVvdXQoZnVuY3Rpb24g
KCkgeworICAgICAgdC5kb25lKCk7CisgICAgfSwgMjAwMCk7CisgIH0sICJBbiBvYnNlcnZlciBk
aXNjb25uZWN0ZWQgYWZ0ZXIgYSBtYXJrIG11c3Qgbm90IGhhdmUgaXRzIGNhbGxiYWNrIGludm9r
ZWQiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tZW50cmllcy1zb3J0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMGM3ODFhM2MwYzAzYmY4MWU4
MjAxNjhiZGY3MGI1MzYyNzUwNDBiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRy
aWVzLXNvcnQuYW55LmpzCkBAIC0wLDAgKzEsNjQgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3Jt
YW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIg
c3RvcmVkX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgc3RvcmVkX2VudHJpZXNfYnlfdHlwZSA9IFtd
OworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0
LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKworICAgICAgICAgIHN0b3Jl
ZF9lbnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAgICAgICBzdG9yZWRfZW50
cmllc19ieV90eXBlID0gZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm1hcmsiKTsKKyAgICAg
ICAgICBzdG9yZWRfZW50cmllc19ieV9uYW1lID0gZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUo
Im5hbWUtcmVwZWF0Iik7CisgICAgICAgICAgdmFyIHN0YXJ0VGltZU9mTWFyazIgPSBlbnRyeUxp
c3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiKVswXS5zdGFydFRpbWU7CisKKyAgICAgICAgICBj
aGVja1NvcnRlZChzdG9yZWRfZW50cmllcyk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3Jl
ZF9lbnRyaWVzLCBbCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJt
ZWFzdXJlMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVh
c3VyZTIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1
cmUzIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJuYW1lLXJl
cGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwK
KyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLW1hdGNoaW5nLW1hcmsy
LTEifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUt
bWF0Y2hpbmctbWFyazItMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1l
OiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTog
Im5hbWUtcmVwZWF0In0sCisgICAgICAgICAgXSk7CisKKyAgICAgICAgICBjaGVja1NvcnRlZChz
dG9yZWRfZW50cmllc19ieV90eXBlKTsKKyAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2Vu
dHJpZXNfYnlfdHlwZSwgWworICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bWFyazEifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0s
CisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAor
ICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAg
ICAgICAgICBdKTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzX2J5X25h
bWUpOworICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllc19ieV9uYW1lLCBbCisg
ICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAor
ICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAg
ICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAg
ICAgICAgXSk7CisKKyAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAg
dC5kb25lKCk7CisgICAgICAgIH0pCisgICAgICApOworCisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0pOworCisgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEi
KTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBtYXJrMSAhPT0gbWFyazIgc3RhcnRUaW1lIGJ5IG1h
a2luZyBzdXJlIHBlcmZvcm1hbmNlLm5vdyBhZHZhbmNlcy4KKyAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1hcmsoIm1hcmsyIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMiIp
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0x
IiwgIm1hcmsyIik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbWFyazIgIT09IG1hcmszIHN0YXJ0
VGltZSBieSBtYWtpbmcgc3VyZSBwZXJmb3JtYW5jZS5ub3cgYWR2YW5jZXMuCisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJuYW1lLXJlcGVhdCIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVh
c3VyZSgibWVhc3VyZTMiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUt
bWF0Y2hpbmctbWFyazItMiIsICJtYXJrMiIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG5hbWUt
cmVwZWF0IHN0YXJ0VGltZSB3aWxsIGRpZmZlci4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmso
Im5hbWUtcmVwZWF0Iik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbmFtZS1yZXBlYXQgc3RhcnRU
aW1lIHdpbGwgZGlmZmVyLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibmFtZS1yZXBl
YXQiKTsKKyAgfSwgImdldEVudHJpZXMsIGdldEVudHJpZXNCeVR5cGUsIGdldEVudHJpZXNCeU5h
bWUgc29ydCBvcmRlciIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzYxNjlkNWRiZDZl
MGUyMDUwNmQyMDE0NjU4NWRiYzg5ZTc1MGMyNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tZ2V0ZW50cmllcy5hbnkuanMKQEAgLTAsMCArMSwzOCBAQAorLy8gTUVUQTogc2NyaXB0PXBl
cmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAg
IHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBf
ZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBjaGVja0VudHJpZXMo
ZW50cnlMaXN0LmdldEVudHJpZXMoKSwKKyAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibWFyazEifV0sICJnZXRFbnRyaWVzIik7CisKKyAgICAgICAgICBjaGVja0VudHJp
ZXMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm1hcmsiKSwKKyAgICAgICAgICAgIFt7IGVu
dHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifV0sICJnZXRFbnRyaWVzQnlUeXBlIik7Cisg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWVhc3Vy
ZSIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgImdldEVudHJpZXNCeVR5cGUgd2l0aCBubyBleHBl
Y3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJp
ZXNCeVR5cGUoIjIzNDU2NyIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgImdldEVudHJpZXNCeVR5
cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVu
dHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMSIpLAorICAgICAgICAgICAgW3sgZW50cnlU
eXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeU5hbWUiKTsKKyAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMiIpLmxl
bmd0aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggbm8gZXhwZWN0ZWQg
ZW50cnkiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlO
YW1lKCIyMzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3
aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlM
aXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiwgIm1hcmsiKSwKKyAgICAgICAgICAgIFt7IGVu
dHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifV0sICJnZXRFbnRyaWVzQnlOYW1lIHdpdGgg
YSB0eXBlIik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5
TmFtZSgibWFyazEiLCAibWVhc3VyZSIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRy
aWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKyAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMiIsICJtZWFz
dXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5
cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50
cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiwgIjIzNDU2NyIpLmxlbmd0aCwgMCwKKyAg
ICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8gZXhwZWN0ZWQg
ZW50cnkiKTsKKworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7
CisgIH0sICJnZXRFbnRyaWVzLCBnZXRFbnRyaWVzQnlUeXBlIGFuZCBnZXRFbnRyaWVzQnlOYW1l
IHdvcmsiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYjIwNWUwOTRjNzVlMTBi
YzFiOTNmZjk2NmFlYTBmZDIzYTU4NmY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1t
YXJrLW1lYXN1cmUuYW55LmpzCkBAIC0wLDAgKzEsNjEgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJm
b3JtYW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2
YXIgc3RvcmVkX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9i
cykgeworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzID0KKyAgICAgICAgICAgIHN0b3JlZF9lbnRy
aWVzLmNvbmNhdChlbnRyeUxpc3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBpZiAoc3RvcmVk
X2VudHJpZXMubGVuZ3RoID49IDQpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRf
ZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJr
MSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwK
KyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0s
CisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9
XSk7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRv
bmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9i
c2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayIsICJtZWFzdXJlIl19KTsKKyAgfSwgImVudHJpZXMg
YXJlIG9ic2VydmFibGUiKTsKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFy
IG1hcmtfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsK
KyAgICAgICAgICBtYXJrX2VudHJpZXMgPQorICAgICAgICAgICAgbWFya19lbnRyaWVzLmNvbmNh
dChlbnRyeUxpc3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBpZiAobWFya19lbnRyaWVzLmxl
bmd0aCA+PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMobWFya19lbnRyaWVzLAorICAg
ICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAg
ICAgICAgIHsgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9XSk7CisgICAgICAgICAg
ICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAg
ICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlw
ZXM6IFsibWFyayJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAg
IHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgfSwgIm1hcmsgZW50cmllcyBhcmUg
b2JzZXJ2YWJsZSIpOworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgbWVh
c3VyZV9lbnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgewor
ICAgICAgICAgIG1lYXN1cmVfZW50cmllcyA9CisgICAgICAgICAgICBtZWFzdXJlX2VudHJpZXMu
Y29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlmIChtZWFzdXJlX2Vu
dHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhtZWFzdXJlX2Vu
dHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVh
c3VyZTEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1l
YXN1cmUyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAg
ICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2Jz
ZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtZWFzdXJlIl19KTsKKyAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJl
KCJtZWFzdXJlMiIpOworICB9LCAibWVhc3VyZSBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlIik7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1v
YnNlcnZlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjg1ZTU4NTZjZTg3M2YxMjFkYzUxNTQ0
YzU0NGI0MTQzOWZhMjZiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBQZXJmb3Jt
YW5jZU9ic2VydmVySW5pdC5idWZmZXJlZAorCitQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZm
ZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlvdXNseSBidWZmZXJlZCBlbnRyaWVzCisKKworUEFT
UyBQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlv
dXNseSBidWZmZXJlZCBlbnRyaWVzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1y
ZXBlYXRlZC10eXBlLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFu
eS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yYmJhMzk2YTZiNjllYmFkNTZhZDRmMWIxMzVjYjhhZDQ5ZDMyMWI3
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55
LmpzCkBAIC0wLDAgKzEsMTcgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVy
cy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgIGNvbnN0IG9ic2VydmVyICA9IG5l
dyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCkgeworICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwKKyAg
ICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogImVhcmx5In1dKTsKKyAgICAgICAg
b2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICB0LmRvbmUoKTsKKyAgICAgIH0pCisgICAg
KTsKKyAgcGVyZm9ybWFuY2UubWFyaygiZWFybHkiKTsKKyAgLy8gVGhpcyBjYWxsIHdpbGwgbm90
IHRyaWdnZXIgYW55dGhpbmcuCisgIG9ic2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIn0pOwor
ICAvLyBUaGlzIGNhbGwgc2hvdWxkIG92ZXJyaWRlIHRoZSBwcmV2aW91cyBjYWxsIGFuZCBkZXRl
Y3QgdGhlIGVhcmx5IG1hcmsuCisgIG9ic2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIiwgYnVm
ZmVyZWQ6IHRydWV9KTsKK30sICJUd28gY2FsbHMgb2Ygb2JzZXJ2ZSgpIHdpdGggdGhlIHNhbWUg
J3R5cGUnIGNhdXNlIG92ZXJyaWRlLiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZl
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNDhmMGYzNzY0YmRh
NGNlYjg4YjJhOGJlNGQ2NWYxNjgzNjI2MjdhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1vYnNlcnZlLmh0bWwKQEAgLTAsMCArMSw4NiBAQAorPCFET0NUWVBFIEhUTUw+Cis8bWV0YSBj
aGFyc2V0PXV0Zi04PgorPHRpdGxlPlBlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBQZXJmb3JtYW5jZU9i
c2VydmVySW5pdC5idWZmZXJlZDwvdGl0bGU+Cis8bWV0YSBuYW1lPSJ0aW1lb3V0IiBjb250ZW50
PSJsb25nIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSJwZXJmb3JtYW5jZW9ic2VydmVycy5qcyI+PC9zY3JpcHQ+Cis8aDE+
UGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkPC9o
MT4KKzxwPgorUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZl
IHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcworPC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4K
KzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBmdW5jdGlvbiBpbml0
VGVzdCgpIHsKKyAgICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxp
c3QsIG9ic2VydmVyKSB7CisgICAgICAgIGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZm9yRWFjaChm
dW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIGlmIChzaG91bGRFeGNsdWRlKGVudHJ5KSkgewor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIG9ic2VydmVkRW50
cmllcy5wdXNoKGVudHJ5KTsKKyAgICAgICAgICBpZiAob2JzZXJ2ZWRFbnRyaWVzLmxlbmd0aCA9
PT0gZW50cnlUeXBlcy5sZW5ndGgpIHsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgICAgICAgICAgIHJ1blRlc3QoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOworICAg
ICAgfSkub2JzZXJ2ZSh7ZW50cnlUeXBlc30pOworCisgICAgICAvLyBjcmVhdGVzIGEgYHJlc291
cmNlYCBlbnRyeQorICAgICAgdmFyIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIp
OworICAgICAgaW1nLnNyYyA9ICIuL3Jlc291cmNlcy9zcXVhcmUucG5nIjsKKyAgICAgIGRvY3Vt
ZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsKKworICAgICAgcGVyZm9ybWFuY2UubWFyaygibWFy
a05hbWUiKTsgLy8gY3JlYXRlcyBhIGBtYXJrYCBlbnRyeQorICAgICAgcGVyZm9ybWFuY2UubWVh
c3VyZSgibWVhc3VyZU5hbWUiKTsgLy8gY3JlYXRlcyBhIGBtZWFzdXJlYCBlbnRyeQorICAgIH0K
KyAgICBmdW5jdGlvbiBzaG91bGRFeGNsdWRlKGVudHJ5KSB7CisgICAgICAvLyBleGNsdWRlIGFs
bCBgcmVzb3VyY2VgIGVudHJpZXMgdGhhdCBhcmVuJ3QgZm9yICJzcXVhcmUucG5nIgorICAgICAg
cmV0dXJuIGVudHJ5LmVudHJ5VHlwZSA9PT0gInJlc291cmNlIiAmJgorICAgICAgICAgICAgIGVu
dHJ5Lm5hbWUuaW5kZXhPZigic3F1YXJlLnBuZyIpID09PSAtMTsKKyAgICB9CisgICAgZnVuY3Rp
b24gcnVuVGVzdCgpIHsKKyAgICAgIC8vIHRoaXMgUGVyZm9ybWFuY2VPYnNlcnZlciBpcyBhIG5v
cCBiZWNhdXNlIHdlJ3ZlIGFscmVhZHkgYmVlbiBub3RpZmllZCBhYm91dCBhbGwgb2Ygb3VyIGBl
bnRyeVR5cGVzYAorICAgICAgdmFyIHBvX25vcCA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1
bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVyKSB7CisgICAgICAgIGlmIChlbnRyeUxpc3QuZ2V0
RW50cmllcygpLmZpbmQoZnVuY3Rpb24oZW50cnkpIHsKKyAgICAgICAgICByZXR1cm4gIXNob3Vs
ZEV4Y2x1ZGUoZW50cnkpOworICAgICAgICB9KSkgeworICAgICAgICAgIGFzc2VydF91bnJlYWNo
ZWQoInRoaXMgUGVyZm9ybWFuY2VPYnNlcnZlciBjYWxsYmFjayBzaG91bGQgbmV2ZXIgYmUgY2Fs
bGVkIik7CisgICAgICAgIH0KKyAgICAgIH0pOworICAgICAgcG9fbm9wLm9ic2VydmUoeworICAg
ICAgICBlbnRyeVR5cGVzLAorICAgICAgfSk7CisKKyAgICAgIC8vIHRoaXMgUGVyZm9ybWFuY2VP
YnNlcnZlciBzaG91bGQgYmUgbm90aWZpZWQgYWJvdXQgdGhlIHByZXZpb3VzbHkKKyAgICAgIC8v
IGJ1ZmZlcmVkIG1hcmsgZW50cnkgb25seQorICAgICAgY29uc3QgYnVmZmVyZWRFbnRyaWVzID0g
W107CisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBv
YnNlcnZlcikgeworICAgICAgICBlbnRyeUxpc3QuZ2V0RW50cmllcygpLmZvckVhY2goZnVuY3Rp
b24oZW50cnkpIHsKKyAgICAgICAgICBpZiAoc2hvdWxkRXhjbHVkZShlbnRyeSkpIHsKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBidWZmZXJlZEVudHJpZXMu
cHVzaChlbnRyeSk7CisgICAgICAgICAgaWYgKGJ1ZmZlcmVkRW50cmllcy5sZW5ndGggPT09IDEp
IHsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHBvX25v
cC5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgYnVmZmVyZWRFbnRy
aWVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoYnVmZmVyZWRF
bnRyaWVzW2ldLmVudHJ5VHlwZSwgIm1hcmsiKQorICAgICAgICAgICAgfQorICAgICAgICAgICAg
dC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKyAgICAgIH0pLm9ic2VydmUoewor
ICAgICAgICB0eXBlOiAibWFyayIsCisgICAgICAgIGJ1ZmZlcmVkOiB0cnVlCisgICAgICB9KTsK
KyAgICB9CisKKyAgICBjb25zdCBlbnRyeVR5cGVzID0gWyJuYXZpZ2F0aW9uIiwgInJlc291cmNl
IiwgIm1hcmsiLCAibWVhc3VyZSJdOworICAgIGNvbnN0IG9ic2VydmVkRW50cmllcyA9IFtdOwor
ICAgIGluaXRUZXN0KCk7CisgIH0sICJQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZCBz
aG91bGQgcmV0cmlldmUgcHJldmlvdXNseSBidWZmZXJlZCBlbnRyaWVzIik7CisKKzwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZWVlNjVlOWY5YWI1ZmIyMzM3
M2ViOWQ4YTcwYTMzOWMwNWEwMjM3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNv
dXJjZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczog
cmVzb3VyY2UKKworTmV3IHJlc291cmNlcyB3aWxsIHF1ZXVlIGEgUGVyZm9ybWFuY2VFbnRyeS4K
KworCitQQVNTIHJlc291cmNlIGVudHJpZXMgYXJlIG9ic2VydmFibGUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1yZXNvdXJjZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjAwYzE3M2VlYWU5MjFmYmVjYzNlZWVhNTRkOGFkZmE2YjllZDUzNjUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwKQEAgLTAsMCArMSw0OCBAQAorPCFE
T0NUWVBFIEhUTUw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPlBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJzOiByZXNvdXJjZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3Jl
cG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icGVyZm9ybWFuY2VvYnNlcnZlcnMuanMi
Pjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNlT2JzZXJ2ZXJzOiByZXNvdXJjZTwvaDE+Cis8cD4K
K05ldyByZXNvdXJjZXMgd2lsbCA8YSBocmVmPSJodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9y
bWFuY2UtdGltZWxpbmUvI2Rmbi1xdWV1ZS1hLXBlcmZvcm1hbmNlZW50cnkiPnF1ZXVlIGEgUGVy
Zm9ybWFuY2VFbnRyeTwvYT4uCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlwdD4K
KyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9uIHBhdGgocGF0aG5hbWUp
IHsKKyAgICAgIHZhciBmaWxlbmFtZSA9IHBhdGhuYW1lLnN1YnN0cmluZyhwYXRobmFtZS5sYXN0
SW5kZXhPZignLycpKzEpOworICAgICAgcmV0dXJuIHBhdGhuYW1lLnN1YnN0cmluZygwLCBwYXRo
bmFtZS5sZW5ndGggLSBmaWxlbmFtZS5sZW5ndGgpOworICAgIH0KKyAgICB2YXIgZ1VuaXF1ZUNv
dW50ZXIgPSAwOworICAgIGZ1bmN0aW9uIGdlbmVyYXRlVW5pcXVlVmFsdWVzKCkgeworICAgICAg
cmV0dXJuIERhdGUubm93KCkgKyAiLSIgKyAoKytnVW5pcXVlQ291bnRlcik7CisgICAgfQorICAg
IHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBpbWdfbG9jYXRpb24gPSBkb2N1bWVu
dC5sb2NhdGlvbi5vcmlnaW4gKyBwYXRoKGRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lKQorICAg
ICAgICsgInJlc291cmNlcy9zcXVhcmUucG5nP3JhbmRvbT0iOworICAgIHZhciBpbWcxID0gaW1n
X2xvY2F0aW9uICsgZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKTsKKyAgICB2YXIgaW1nMiA9IGltZ19s
b2NhdGlvbiArIGdlbmVyYXRlVW5pcXVlVmFsdWVzKCk7CisgICAgdmFyIG9ic2VydmVyID0gbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRy
eUxpc3QsIG9icykgeworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzID0KKyAgICAgICAgICAgIHN0
b3JlZF9lbnRyaWVzLmNvbmNhdChlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2Ui
KSk7CisgICAgICAgICAgaWYgKHN0b3JlZF9lbnRyaWVzLmxlbmd0aCA+PSAyKSB7CisgICAgICAg
ICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5
VHlwZTogInJlc291cmNlIiwgbmFtZTogaW1nMX0sCisgICAgICAgICAgICAgICB7IGVudHJ5VHlw
ZTogInJlc291cmNlIiwgbmFtZTogaW1nMn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nv
bm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkK
KyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJyZXNvdXJjZSJd
fSk7CisgICAgdmFyIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOworICAgIGlt
Zy5zcmMgPSBpbWcxOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsKKyAgICBp
bWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICBpbWcuc3JjID0gaW1nMjsK
KyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CisgIH0sICJyZXNvdXJjZSBlbnRy
aWVzIGFyZSBvYnNlcnZhYmxlIik7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
dGFrZVJlY29yZHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODZhZDM5N2IwYTVjMzc5ZDAxMjlkNDNjOTI5NTJiYzZjOGM1YzBjZgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tdGFrZVJlY29yZHMuYW55LmpzCkBAIC0wLDAgKzEsMzQgQEAK
Ky8vIE1FVEE6IHRpdGxlPVBlcmZvcm1hbmNlT2JzZXJ2ZXI6IHRha2VSZWNvcmRzCisvLyBNRVRB
OiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rp
b24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1RoaXMg
Y2FsbGJhY2sgc2hvdWxkIG5vdCBoYXZlIGJlZW4gY2FsbGVkLicpCisgICAgfSk7CisgICAgbGV0
IGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRy
aWVzLCBbXSwgJ05vIHJlY29yZHMgYmVmb3JlIG9ic2VydmUnKTsKKyAgICBvYnNlcnZlci5vYnNl
cnZlKHtlbnRyeVR5cGVzOiBbJ21hcmsnXX0pOworICAgIGFzc2VydF9lcXVhbHModHlwZW9mKG9i
c2VydmVyLnRha2VSZWNvcmRzKSwgJ2Z1bmN0aW9uJyk7CisgICAgZW50cmllcyA9IG9ic2VydmVy
LnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8gcmVjb3Jk
cyBqdXN0IGZyb20gb2JzZXJ2ZScpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2EnKTsKKyAgICBw
ZXJmb3JtYW5jZS5tYXJrKCdiJyk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRz
KCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFsKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJr
JywgbmFtZTogJ2EnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2InfQorICAg
IF0pOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2MnKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdk
Jyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZScpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50
YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBbCisgICAgICB7ZW50cnlU
eXBlOiAnbWFyaycsIG5hbWU6ICdjJ30sCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6
ICdkJ30sCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdlJ30KKyAgICBdKTsKKyAg
ICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50
cmllcywgW10sICdObyBlbnRyaWVzIHJpZ2h0IGFmdGVyIHRha2VSZWNvcmRzJyk7CisgICAgb2Jz
ZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHQuZG9uZSgpOworICB9LCAiVGVzdCBQZXJmb3JtYW5j
ZU9ic2VydmVyJ3MgdGFrZVJlY29yZHMoKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJj
ZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdl
LWVudHJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWY1YmU3MzM5NWI0OWQ4OTVhMjU4OWJlNTQ3YTdmMzk1
MGY0MTZiYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdl
LWVudHJ5Lmh0bWwKQEAgLTAsMCArMSwxNyBAQAorPCFkb2N0eXBlIGh0bWw+Cis8c2NyaXB0Pgor
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKKyAgY29uc3QgZW50cnkgPSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgIHRyeSB7CisgICAgd2lu
ZG93LnRvcC5wb3N0TWVzc2FnZShlbnRyeSwgIioiKTsKKyAgfSBjYXRjaChlcnJvcikgeworICAg
IGlmIChlcnJvci5uYW1lID09ICJEYXRhQ2xvbmVFcnJvciIpIHsKKyAgICAgIHdpbmRvdy50b3Au
cG9zdE1lc3NhZ2UoIlBBU1MiLCAiKiIpOworICAgIH0gZWxzZSB7CisgICAgICB3aW5kb3cudG9w
LnBvc3RNZXNzYWdlKCJGQUlMIC0gV3JvbmcgZXhjZXB0aW9uIG5hbWU6ICIgKyBlcnJvci5uYW1l
LCAiKiIpOworICAgIH0KKyAgfQorICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKCJGQUlMIC0gTm8g
ZXhjZXB0aW9uIHRocm93biIsICIqIik7Cit9KTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNv
dXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZDdmYmEyY2NmNGI2
YWI3ZTYwNDI3M2MyNTAxMGUzMWU0NDNlMzc2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9y
ZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcwpAQCAtMCwwICsxLDYgQEAKK3BlcmZv
cm1hbmNlLm1hcmsoJ3dvcmtlck1hcmsnKTsKK3Bvc3RNZXNzYWdlKHsKKyAgJ2ludmFsaWQnIDog
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnaW52YWxpZCcpLmxlbmd0aCwKKyAgJ21hcmsn
IDogcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwKKyAgJ21lYXN1
cmUnIDogcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWVhc3VyZScpLmxlbmd0aAorfSk7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1v
YnNlcnZlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE3MmZlODFjNDdmZWFjZTc2NTYxM2EwOTYyZjJhN2U2M2Y3
MWZhMjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1w
ZXJmb3JtYW5jZS1vYnNlcnZlci5qcwpAQCAtMCwwICsxLDYgQEAKK3RyeSB7CisgIG5ldyBQZXJm
b3JtYW5jZU9ic2VydmVyKCgpID0+IHRydWUpOworICBwb3N0TWVzc2FnZSgiU1VDQ0VTUyIpOwor
fSBjYXRjaCAoZXgpIHsKKyAgcG9zdE1lc3NhZ2UoIkZBSUxVUkUiKTsKK30KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9z
dXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQKaW5kZXggMTM4YmRlNjYxOTYyNDNl
NjcwMzBkMWFlMTQyYmRhNDExNDhlMjMwYi4uZTVlYjExOGFiMjI0M2QxY2EzNDU3NTA5NTQwYTIw
ODI4MDI4OWQ5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSw0IEBACiAKIFBBU1Mgc3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMg
YW5kIHJldHVybnMgZW50cmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIKK0ZBSUwgc3VwcG9ydGVk
RW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcwppbmRleCBhMDIyNWFkMmY3NmZkY2Zl
YmIwYTdjOWFmZjliZDAwMzBlY2Y4NmFhLi4yNWYxOTU5MzllN2I2OTI1MDk2MjViODEzMWU1Mzcx
NjRjZGY1NmMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lmpz
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMKQEAgLTEwLDMgKzEwLDEw
IEBAIHRlc3QoKCkgPT4gewogICAgICAgIicgYXJlIHJlcGVhdGVkIG9yIHRoZXkgYXJlIG5vdCBp
biBhbHBoYWJldGljYWwgb3JkZXIuIikKICAgfQogfSwgInN1cHBvcnRlZEVudHJ5VHlwZXMgZXhp
c3RzIGFuZCByZXR1cm5zIGVudHJpZXMgaW4gYWxwaGFiZXRpY2FsIG9yZGVyIik7CisKK3Rlc3Qo
KCkgPT4geworICBpZiAodHlwZW9mIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlU
eXBlcyA9PT0gInVuZGVmaW5lZCIpCisgICAgYXNzZXJ0X3VucmVhY2hlZCgic3VwcG9ydGVkRW50
cnlUeXBlcyBpcyBub3Qgc3VwcG9ydGVkLiIpOworICBhc3NlcnRfdHJ1ZShQZXJmb3JtYW5jZU9i
c2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgPT09CisgICAgICBQZXJmb3JtYW5jZU9ic2VydmVy
LnN1cHBvcnRlZEVudHJ5VHlwZXMpOworfSwgInN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJl
c3VsdCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IDEzOGJkZTY2MTk2MjQzZTY3MDMwZDFhZTE0MmJkYTQxMTQ4ZTIz
MGIuLmU1ZWIxMThhYjIyNDNkMWNhMzQ1NzUwOTU0MGEyMDgyODAyODlkOTYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSw0IEBACiAKIFBBU1Mgc3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5kIHJldHVy
bnMgZW50cmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIKK0ZBSUwgc3VwcG9ydGVkRW50cnlUeXBl
cyBjYWNoZXMgcmVzdWx0IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9uLmFueS5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
d2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ4NjljN2M1MmQ1NWQ2OWUy
MTIzZjY0ZDQ4NmVkMWUzMjM1ZDNmYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRp
bWluZy1yZXNvbHV0aW9uLmFueS5qcwpAQCAtMCwwICsxLDI1IEBACitmdW5jdGlvbiB0ZXN0VGlt
ZVJlc29sdXRpb24oaGlnaFJlc1RpbWVGdW5jLCBmdW5jU3RyaW5nKSB7CisgICAgdGVzdCgoKSA9
PiB7CisgICAgICAgIGNvbnN0IHQwID0gaGlnaFJlc1RpbWVGdW5jKCk7CisgICAgICAgIGxldCB0
MSA9IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICB3aGlsZSAodDAgPT0gdDEpIHsKKyAgICAg
ICAgICAgIHQxID0gaGlnaFJlc1RpbWVGdW5jKCk7CisgICAgICAgIH0KKyAgICAgICAgY29uc3Qg
ZXBzaWxvbiA9IDFlLTU7CisgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwodDEgLSB0
MCwgMC4wMDUgLSBlcHNpbG9uLCAnVGhlIHNlY29uZCAnICsgZnVuY1N0cmluZyArICcgc2hvdWxk
IGJlIG11Y2ggZ3JlYXRlciB0aGFuIHRoZSBmaXJzdCcpOworICAgIH0sICdWZXJpZmllcyB0aGUg
cmVzb2x1dGlvbiBvZiAnICsgZnVuY1N0cmluZyArICcgaXMgYXQgbGVhc3QgNSBtaWNyb3NlY29u
ZHMuJyk7Cit9CisKK2Z1bmN0aW9uIHRpbWVCeVBlcmZvcm1hbmNlTm93KCkgeworICAgIHJldHVy
biBwZXJmb3JtYW5jZS5ub3coKTsKK30KKworZnVuY3Rpb24gdGltZUJ5VXNlclRpbWluZygpIHsK
KyAgICBwZXJmb3JtYW5jZS5tYXJrKCd0aW1lcicpOworICAgIGNvbnN0IHRpbWUgPSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlOYW1lKCd0aW1lcicpWzBdLnN0YXJ0VGltZTsKKyAgICBwZXJmb3Jt
YW5jZS5jbGVhck1hcmtzKCd0aW1lcicpOworICAgIHJldHVybiB0aW1lOworfQorCit0ZXN0VGlt
ZVJlc29sdXRpb24odGltZUJ5UGVyZm9ybWFuY2VOb3csICdwZXJmb3JtYW5jZS5ub3coKScpOwor
dGVzdFRpbWVSZXNvbHV0aW9uKHRpbWVCeVVzZXJUaW1pbmcsICdlbnRyeS5zdGFydFRpbWUnKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjgyNmI5Y2JkYWYyYzVmZDQ0MTM0YzEyMTdkYTM0ZTI0MzY0
YjcwOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Ut
b2JzZXJ2ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitQQVNTIFdvcmtlcjogVGVz
dCBQZXJmb3JtYW5jZSBPYnNlcnZlciBpbnNpZGUgYSB3b3JrZXIuCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29y
a2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYzkyYmM5NzEw
MDNmMmVhOTJmYmQxNjlkOGRkN2E2NGQwNjIwNjJkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCkBAIC0wLDAgKzEsMTggQEAK
KzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Fz
eW5jX3Rlc3QoZnVuY3Rpb24odCkgeworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNv
dXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMiKTsKKyAgd29ya2VyLm9u
bWVzc2FnZSA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgdC5zdGVwKCgpID0+IGFzc2VydF9lcXVh
bHMoZXZlbnQuZGF0YSwgJ1NVQ0NFU1MnKSk7CisgICAgdC5kb25lKCk7CisgIH0KK30sICdXb3Jr
ZXI6IFRlc3QgUGVyZm9ybWFuY2UgT2JzZXJ2ZXIgaW5zaWRlIGEgd29ya2VyLicpOworPC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZp
Z2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZp
Z2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNzMwMDgxZjRkNjdiMDY0MWRl
ODAwZTJhODgxYWYwMjcyYjIyYjliMi4uNjRlN2UyNWMyMGRjZDg5ZGFmZmM3MjIxNzQyZDk1MGM4
NzI2NzlhZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcu
aHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGlt
aW5nLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZXJ2aWNlIHdv
cmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhw
ZWN0ZWQgcmVqZWN0aW9uOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
dGltaW5nLndvcmtlclN0YXJ0JykgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlMIFNlcnZp
Y2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgbmV0d29yayBmYWxsYmFjayBh
c3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1t0aW1pbmdFdmVudE9yZGVyW2ldXScpIFJlYWNo
ZWQgdW5yZWFjaGFibGUgY29kZQotRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmln
YXRpb24gdGltaW5nIHJlZGlyZWN0IGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0
aW9uOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3RpbWlu
Z0V2ZW50T3JkZXJbaV1dJykgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitGQUlMIFNlcnZpY2Ug
d29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgYXNzZXJ0X3VucmVhY2hlZDogdW5l
eHBlY3RlZCByZWplY3Rpb246IGFzc2VydF9ncmVhdGVyX3RoYW46IGV4cGVjdGVkIGEgbnVtYmVy
IGdyZWF0ZXIgdGhhbiAwIGJ1dCBnb3QgMCBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1Mg
U2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBuZXR3b3JrIGZhbGxi
YWNrCitQQVNTIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgcmVk
aXJlY3QKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRp
bWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFu
Y2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQKaW5kZXggN2Zm
YjM4NTgzZGE4NGI2NDY5NDU1YWU3NDA0ZDIyNGM0YjU3MzBkYS4uNGViZGNjZjViMmJkNDdkYTRk
NWQyMTVkMWU4YTI3ODFhNGMyZGUwMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFu
Y2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVs
LXBhaW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFp
bnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhw
ZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogUEFTUyBkaWRSZWNlaXZlRmlyc3RDb250ZW50ZnVs
UGFpbnQgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoIGlzIDEK
K1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCBpcyAyCiBQQVNTIHBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiKS5sZW5ndGggaXMg
MQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBh
aW50IiwgInBhaW50IikubGVuZ3RoIGlzIDEKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgicGFpbnQiKS5sZW5ndGggaXMgMQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9y
bWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50
ZnVsLXBhaW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5n
L3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRtbAppbmRleCAw
MDc4YTQzNTQ1YjlmNGI2Y2ZhYmY4MTcxNjYxYjNiNjAxYzRhYTc5Li4xZjI4MGI0MDc3NWUyYTlh
ODJmOGQzYjY2ZTc5OGY3MGE3NTU3ZTIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3Jt
YW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRm
dWwtcGFpbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGlt
aW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRtbApAQCAt
MzYsNyArMzYsNyBAQCB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CiAgICAgZG9jdW1lbnQu
Ym9keS5pbm5lclRleHQgPSAnVEVYVDInOwogICAgIGF3YWl0IHdhaXRGb3JGQ1AoKTsKICAgICBz
aG91bGRCZVRydWUoJ2RpZFJlY2VpdmVGaXJzdENvbnRlbnRmdWxQYWludCcpOwotICAgIHNob3Vs
ZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoJywgIjEiKTsKKyAgICBzaG91bGRC
ZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCcsICIyIik7CiAgICAgc2hvdWxkQmUo
J3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiKS5s
ZW5ndGgnLCAiMSIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1l
KCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IiwgInBhaW50IikubGVuZ3RoJywgIjEiKTsKICAgICBz
aG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKS5sZW5ndGgnLCAi
MSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNl
LW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkv
cGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVkLnR4dAppbmRleCA3NjQ5YTg0MzFjYTQ0
MmIxNjA3ZTI4ZWVkNmQ0NmFjOWU2Y2RmMGRhLi4zYTY3ZGMwYmI2M2Q2MDlkYTgyMTQ2Yjc2MmUz
ZGU4Y2RmMGE5NDRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVy
Zm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wZXJm
b3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVkLnR4dApAQCAtMTEs
NyArMTEsNyBAQCBQQVNTIFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBDb25zdHJ1Y3RvciByZXF1aXJlcyAnbmV3JwogUEFTUyBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRz
LgogUEFTUyBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigxKSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBBcmd1bWVudCAxICgnY2FsbGJhY2snKSB0byB0aGUgUGVyZm9ybWFuY2VPYnNlcnZlciBj
b25zdHJ1Y3RvciBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24oKSB7fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCi1Q
QVNTIG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5v
dWdoIGFyZ3VtZW50cy4KK1BBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBvYnNl
cnZlci5vYnNlcnZlKCJtYXJrIikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSh7fSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
bm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQQVNTIG9ic2VydmVyLm9ic2Vy
dmUoe2VudHJ5VHlwZXM6Im1hcmsifSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVmFsdWUg
aXMgbm90IGEgc2VxdWVuY2UuCkBAIC0zOSw3ICszOSw3IEBAIFBBU1MgW1dvcmtlcl0gUGVyZm9y
bWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IENvbnN0cnVjdG9yIHJl
cXVpCiBQQVNTIFtXb3JrZXJdIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIFtXb3JrZXJdIG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKDEpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50
IDEgKCdjYWxsYmFjaycpIHRvIHRoZSBQZXJmb3JtYW5jZU9ic2VydmVyIGNvbnN0cnVjdG9yIG11
c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcihmdW5jdGlvbigpIHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KLVBBU1Mg
W1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5v
dCBlbm91Z2ggYXJndW1lbnRzLgorUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKCkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlk
ZWQuCiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoIm1hcmsiKSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZl
KHt9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2Vy
ZSBwcm92aWRlZC4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczoi
bWFyayJ9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBWYWx1ZSBpcyBub3QgYSBzZXF1ZW5j
ZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10
aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQKaW5kZXggZWQwMWFlMDAzMWY0ZTVl
OGY3NmU2MDE1ZGIyMzg4MjI2NDRiOTEyZC4uYzE0NjIxNGVmMmQ2YThhYjFkNmI4YWUzODc4NjVl
MTA3YmEzZjcwYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZv
cm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9y
bWFuY2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQKQEAgLTE2LDE0
ICsxNiwxNCBAQCBQQVNTIFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzIGlzIGRlZmlu
ZWQuCiBQQVNTIFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlUeXBlIGlzIGRlZmlu
ZWQuCiBQQVNTIFBlcmZvcm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlOYW1lIGlzIGRlZmlu
ZWQuCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKSBpbnN0YW5jZW9mIEFycmF5IGlzIHRy
dWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCi1Q
QVNTIHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQ
QVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQotUEFTUyBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlz
IHRydWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLm5hbWUgaXMgInRlc3QiCi1Q
QVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5lbnRyeVR5cGUgaXMgIm1hcmsiCi1QQVNT
IHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVy
IiBpcyB0cnVlCi1QQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRp
b24gPT09ICJudW1iZXIiIGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpOyBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxl
bmd0aCA9PT0gMiBpcyB0cnVlCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5k
ZXhdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCitQQVNTIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKVttYXJrSW5kZXhdLm5hbWUgaXMgInRlc3QiCitQQVNTIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmVudHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgdHlwZW9m
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJl
ciIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRl
eF0uZHVyYXRpb24gPT09ICJudW1iZXIiIGlzIHRydWUKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1l
bnRzLgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJub3QtcmVhbCIpLmxlbmd0
aCA9PT0gMCBpcyB0cnVlCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1hcmsi
KS5sZW5ndGggPT09IDEgaXMgdHJ1ZQpAQCAtNjAsMTEgKzYwLDExIEBAIFBBU1MgW1dvcmtlcl0g
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2YgQXJyYXkgaXMgdHJ1ZQogUEFTUyBb
V29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwIGlzIHRydWUKIFBB
U1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UubWFyaygidGVzdCIpOyBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0g
MSBpcyB0cnVlCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBpbnN0
YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQotUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbMF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIKLVBBU1MgW1dvcmtlcl0gdHlw
ZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlz
IHRydWUKLVBBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5k
dXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1
ZQorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5uYW1l
IGlzICJ0ZXN0IgorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0lu
ZGV4XS5lbnRyeVR5cGUgaXMgIm1hcmsiCitQQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUK
K1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhd
LmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdo
IGFyZ3VtZW50cy4KIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bm90LXJlYWwiKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIikubGVuZ3RoID09PSAxIGlzIHRydWUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpz
IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMK
aW5kZXggMWVmN2FhNWM1ODQyZmRlOWUxYmQyMDNmMWQyNTczODdiOTUzNjA0ZC4uYjhjMjk5NDAy
NmNmOTRlMDc0OWVmYjk0MjFiYzFkYmNiYjIwMzIzZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMKKysrIGIvTGF5b3V0VGVz
dHMvcGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMKQEAgLTQsNiArNCw4
IEBAIGlmIChzZWxmLmltcG9ydFNjcmlwdHMpCiBpZiAoc2VsZi53aW5kb3cpCiAgICAgZGVzY3Jp
cHRpb24oIkJhc2ljIEludGVyZmFjZSB0ZXN0IGZvciBwZXJmb3JtYW5jZS10aW1lbGluZSBBUElz
LiIpOwogCitsZXQgcnVubmluZ0luV29ya2VyID0gISFzZWxmLmltcG9ydFNjcmlwdHM7CisKIGRl
YnVnKCJQZXJmb3JtYW5jZUVudHJ5Iik7CiBzaG91bGRCZURlZmluZWQoIlBlcmZvcm1hbmNlRW50
cnkiKTsKIHNob3VsZEJlVHJ1ZShgIm5hbWUiIGluIFBlcmZvcm1hbmNlRW50cnkucHJvdG90eXBl
YCk7CkBAIC0yMSwxNCArMjMsMjUgQEAgc2hvdWxkQmVEZWZpbmVkKGBQZXJmb3JtYW5jZS5wcm90
b3R5cGUuZ2V0RW50cmllc0J5VHlwZWApOwogc2hvdWxkQmVEZWZpbmVkKGBQZXJmb3JtYW5jZS5w
cm90b3R5cGUuZ2V0RW50cmllc0J5TmFtZWApOwogCiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKSBpbnN0YW5jZW9mIEFycmF5YCk7Ci1zaG91bGRCZVRydWUoYHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDBgKTsKK2lmIChydW5uaW5nSW5Xb3JrZXIpIHsK
KyAgICAvLyBXb3JrZXJzIGRvbid0IGhhdmUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLgor
ICAgIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMGAp
OworfSBlbHNlIHsKKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5s
ZW5ndGggPT09IDFgKTsKK30KIHNob3VsZE5vdFRocm93KGBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0
Iik7YCk7Ci1zaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09
IDFgKTsKLXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdIGluc3RhbmNl
b2YgUGVyZm9ybWFuY2VFbnRyeWApOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbMF0ubmFtZWAsICJ0ZXN0Iik7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmco
YHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5lbnRyeVR5cGVgLCAibWFyayIpOwotc2hvdWxk
QmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0g
Im51bWJlciJgKTsKLXNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVswXS5kdXJhdGlvbiA9PT0gIm51bWJlciJgKTsKK2lmIChydW5uaW5nSW5Xb3JrZXIpIHsKKyAg
ICBtYXJrSW5kZXggPSAwOworICAgIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpLmxlbmd0aCA9PT0gMWApOworfSBlbHNlIHsKKyAgICBtYXJrSW5kZXggPSAxOworICAgIHNo
b3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMmApOworfQor
c2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5j
ZW9mIFBlcmZvcm1hbmNlRW50cnlgKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFtZWAsICJ0ZXN0Iik7CitzaG91bGRCZUVxdWFs
VG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmVudHJ5VHlwZWAs
ICJtYXJrIik7CitzaG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClb
bWFya0luZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiYCk7CitzaG91bGRCZVRydWUoYHR5cGVv
ZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJl
ciJgKTsKIAogc2hvdWxkVGhyb3coYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoKWApOwog
c2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJub3QtcmVhbCIpLmxl
bmd0aCA9PT0gMGApOwpAQCAtNTAsNSArNjMsNSBAQCBzaG91bGRCZVRydWUoYHR5cGVvZiBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJ0ZXN0IilbMF0uZHVyYXRpb24gPT09ICJudW1iZQog
c2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJ0ZXN0IiwgIm5vdC1y
ZWFsIikubGVuZ3RoID09PSAwYCk7CiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeU5hbWUoInRlc3QiLCAibWFyayIpLmxlbmd0aCA9PT0gMWApOwogCi1pZiAoc2VsZi5pbXBv
cnRTY3JpcHRzKQoraWYgKHJ1bm5pbmdJbldvcmtlcikKICAgICBmaW5pc2hKU1Rlc3QoKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1
dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTk4ZDRlZDNjZTE4NGM2OGQzMzE4
NjEzZjhkMjBmZTI3MmQ1MmUzOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMg
b2YgbmF2IHRpbWluZyAyIGluc3RhbmNlJ3MgdGltaW5nLXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUg
aW4gY2VydGFpbiBvcmRlciBhbmQgdGhlIG90aGVycyBhcmUgb2YgZXhwZWN0ZWQgdmFsdWVzLgor
CisKK0ZBSUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UncyB2YWx1ZSBp
cyByZWFzb25hYmxlLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiaHR0cC8xLjEiIGJ1dCBnb3Qg
IiIKKwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428745</attachid>
            <date>2021-05-15 15:14:45 -0700</date>
            <delta_ts>2021-05-18 11:09:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210515151444.patch</filename>
            <type>text/plain</type>
            <size>221101</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJjYjMzNTkxY2FhM2Zh
NTkwMTk2NTZmMTlkMWYzYThjYzZmYmU5My4uM2E5MTk3NzM2MjVhMjJjZTVkM2YyZWUwYjUyZTMx
ZmYzODc4YWI3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xNSAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9ibGVtYXRpYywgYW5kIHNvbWUgb2YgdGhlIHRlc3RzIGZvciByZWFkaW5nIHRyYW5zZmVy
IHNpemUgc3RpbGwgZmFpbC4KKyAgICAgICAgVGhlcmUgYXJlIHN0aWxsIGEgZmV3IHJlbGF0aXZl
bHkgbWlub3IgdGVzdCBmYWlsdXJlcyB0byBmaXggaW4gZnV0dXJlIHBhdGNoZXMuICBFYWNoIG9u
ZSBpcyBhbm5vdGF0ZWQgaW4gdGhlIExheW91dFRlc3RzIENoYW5nZUxvZ3MuCisKKyAgICAgICAg
VGVzdHM6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
ZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhp
c3QuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAorICAgICAg
ICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2
aWdhdGUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5h
bF9vcmlnaW5hbF9vcmlnaW4uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5o
dG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sCisgICAgICAg
ICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3BvLW5hdmlnYXRpb24uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVz
ZS5odHRwcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKKyAgICAgICAg
ICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1s
CisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1s
CisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKKworICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0Lnhj
ZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6Cisg
ICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OnRvSlNOZXdseUNyZWF0ZWQpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6c2V0UmVhZHlTdGF0ZSk6CisgICAgICAgIFNvbWV0aW1lcyB0
aGUgcmVhZHkgc3RhdGUganVtcHMgcmlnaHQgdG8gQ29tcGxldGUgd2l0aG91dCBoaXR0aW5nIElu
dGVyYWN0aXZlIGFsb25nIHRoZSB3YXkuCisgICAgICAgIFdoZW4gdGhpcyBoYXBwZW5zLCB3ZSB3
YW50IHRvIG1hcmsgYm90aCBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlIGFuZCBtX2RvY3Vt
ZW50VGltaW5nLmRvbUludGVyYWN0aXZlLgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQp
OgorICAgICAgICBDYWxsIGFkZE5hdmlnYXRpb25UaW1pbmcgaW4gbm90aWZ5RmluaXNoZWQgdG8g
Y3JlYXRlIHRoZSBuYXZpZ2F0aW9uIHRpbWluZyBvYmplY3Qgd2hlbiB3ZSBhcmUgZG9uZSBuYXZp
Z2F0aW5nCisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKToKKyAgICAgICAg
QWRkIGEgVVJMIHBhcmFtZXRlci4gIFNvbWV0aW1lcyB3ZSBuZWVkIHRvIHVzZSB0aGUgcmVxdWVz
dCdzIFVSTCBhbmQgc29tZXRpbWVzIHRoZSByZXNwb25zZSdzLiAgRGlmZmVyZW50IHNwZWNzIHdy
aXR0ZW4gYXQgZGlmZmVyZW50IHRpbWVzLgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1p
bmc6OnBvcHVsYXRlU2VydmVyVGltaW5nIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlVGltaW5nOjpwb3B1bGF0ZVNlcnZlclRpbWluZyk6IERlbGV0ZWQuCisgICAgICAgICogbG9h
ZGVyL1Jlc291cmNlVGltaW5nLmg6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6
dXJsIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjppbml0aWF0b3Ig
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OmxvYWRUaW1pbmcgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6Om5ldHdvcmtMb2FkTWV0cmlj
cyBjb25zdCk6CisgICAgICAgICogbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpyZXBvcnRSZXNvdXJjZVRpbWluZyk6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZTo6Z2V0RW50cmllcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
Z2V0RW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
Z2V0RW50cmllc0J5TmFtZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
YXBwZW5kQnVmZmVyZWRFbnRyaWVzQnlUeXBlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6
OnNjaGVkdWxlVGFza0lmTmVlZGVkKToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmg6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5Lmg6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZUVudHJ5OjpzdGFydFRpbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VFbnRyeTo6ZHVyYXRpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VFbnRyeTo6aXNSZXNvdXJjZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZUVudHJ5Ojppc01hcmsgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VFbnRyeTo6aXNNZWFzdXJlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmlzUGFpbnQgY29uc3QpOiBEZWxldGVkLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VNYXJrLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVk
LgorICAgICAgICBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VORCBkb2Vzbid0IHdvcmsg
d2VsbCB3aXRoIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyB3aGljaCBpbmhlcml0cyBmcm9t
IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgd2hpY2ggYm90aCBoYXZlIGRpc3RpbmN0IHR5cGVz
LgorICAgICAgICBpczxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBkb2Vzbid0IGdpdmUgdXMg
dGhlIGluZm8gd2UgbmVlZC4gIEkgcmVwbGFjZWQgdGhhdCB3aXRoICJzd2l0Y2ggKGVudHJ5LT5w
ZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSIgaW4gdGhlIG9uZSBwbGFjZSBpdCdzIHVzZWQsIGFuZCBp
dCB3b3JrcyBsaWtlIGEgY2hhcm0uCisgICAgICAgIEFsc28gcmVuYW1lZCB0eXBlIHRvIHBlcmZv
cm1hbmNlRW50cnlUeXBlIHNvIGl0IGRvZXNuJ3QgY29uZmxpY3Qgd2l0aCBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6OnR5cGUsIHdoaWNoIGlzIHNwZWNpZmllZCBpbiB0aGUgaWRsLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxl
dGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcDogQWRk
ZWQuCisgICAgICAgIChXZWJDb3JlOjp0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmln
YXRpb25UeXBlKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4gY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpzYW1lT3JpZ2lu
Q2hlY2tGYWlscyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OnVubG9hZEV2ZW50U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUludGVyYWN0aXZlIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9t
Q29udGVudExvYWRlZEV2ZW50U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRFbmQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db21wbGV0
ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OmxvYWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnJlZGlyZWN0Q291bnQgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpzdGFydFRpbWUgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkdXJh
dGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcu
aDogQWRkZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRs
OiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRs
LgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3Jkcyk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VPYnNlcnZlcjo6c3VwcG9ydGVkRW50cnlUeXBlcyk6CisgICAgICAgICogcGFnZS9QZXJmb3Jt
YW5jZU9ic2VydmVyLmg6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbDoK
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Z2V0RW50cmllc0J5TmFt
ZSBjb25zdCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmg6CisgICAg
ICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6Om5leHRIb3BQcm90b2NvbCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdFN0YXJ0IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlZGlyZWN0RW5kIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmZldGNo
U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zzo6ZG9tYWluTG9va3VwU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6ZG9tYWluTG9va3VwRW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNvbm5lY3RTdGFydCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0RW5kIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnNlY3VyZUNv
bm5lY3Rpb25TdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpyZXF1ZXN0U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXNwb25zZUVuZCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZFRpbWVU
b0RPTUhpZ2hSZXNUaW1lU3RhbXAgY29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZzo6aW5pdGlhdG9yVHlwZSBjb25zdCk6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6CisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6ZG9Ob3RpZnlGaW5pc2gpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xv
YWRNZXRyaWNzLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUNs
aWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDbGllbnQ6OmRpZEZpbmlz
aExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJD
bGllbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFu
ZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVy
YXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIFBhc3MgbWV0cmljcyBpbmNs
dWRpbmcgdGhlIHJlc3BvbnNlIGVuZCB0aW1lIGZyb20gTlNVUkxDb25uZWN0aW9uIHNvIHdlIGRv
bid0IGFzc2VydCBpbiBXZWJLaXRMZWdhY3kuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9j
b2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW06CisgICAgICAgIChXZWJDb3JlOjpjb3B5VGltaW5n
RGF0YSk6CisgICAgICAgIFVzZSBjdXJyZW50UmVxdWVzdCBpbnN0ZWFkIG9mIHBhc3NpbmcgaW4g
dGhlIHJlc3BvbnNlIHNvIHdlIGNhbiBjYWxsIGl0IGZyb20gZGlkRmluaXNoTG9hZGluZywgd2hl
cmUgd2UgZG9uJ3QgaGF2ZSBhIHJlc3BvbnNlIHN0b3JlZCBhbnl3aGVyZS4KKyAgICAgICAgV2Un
cmUganVzdCBsb29raW5nIGZvciB3aGV0aGVyIGl0J3MgaHR0cCBvciBodHRwcywgc28gdGhlIGN1
cnJlbnRSZXF1ZXN0ICh3aGljaCBpcyB0aGUgcmVxdWVzdCBhZnRlciBhbGwgdGhlIHJlZGlyZWN0
cykgZml0cyBvdXIgcHVycG9zZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVz
b3VyY2VIYW5kbGVDdXJsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOjpo
YW5kbGVEYXRhVVJMKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVz
b3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW06CisgICAgICAgICgtW1dlYkNv
cmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZSBjb25uZWN0aW9uOmRpZFJl
Y2VpdmVSZXNwb25zZTpdKToKKyAgICAgICAgKC1bV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVy
YXRpb25RdWV1ZURlbGVnYXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hMb2FkaW5nOl0pOgorCiAyMDIx
LTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEg
Y29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBkZDI4MWE4OWY3ZTQ3MTIxOTZiMWQ4
MTM1MjNkM2JhNGFlODIzMjkuLmJhOWNjOTJjYzJmNTcwMjJkYTIyYWVjZmQ3MmM5ZmI4Yzg0OGMx
ZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Ig
TmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tOgorICAgICAgICAoLVtXS05ldHdvcmtTZXNzaW9uRGVsZWdhdGUgVVJMU2Vzc2lvbjp0
YXNrOmRpZEZpbmlzaENvbGxlY3RpbmdNZXRyaWNzOl0pOgorICAgICAgICBNYXJrIHJldXNlZCBU
TFMgY29ubmVjdGlvbnMgaW4gY29tcGxldGUgbWV0cmljcyBsaWtlIEkgZGlkIGluIGluY29tcGxl
dGUgbWV0cmljcyBpbiByMjc3NDkzLgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1
cmVDb25uZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvQ2hhbmdlTG9nCmluZGV4IDUyZTJlMmI0OWYyM2RhYjkwMDE4ZDBhOGY3YTJjZTZlNjZjNTUy
YmEuLjA1ODdhYjdiM2RkMTc3YzQ5OWNjZjEzNTZhNzEzMDk4Mjc4ZGUzYzggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDUtMTUgIEFsZXggQ2hyaXN0ZW5zZW4g
IDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2
aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmg6CisKIDIwMjEtMDUt
MTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSZW5hbWUgRmls
ZVN5c3RlbTo6Z2V0RmlsZVNpemUoKSB0byBGaWxlU3lzdGVtOjpmaWxlU2l6ZSgpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0CmluZGV4IDNkYjUxYmE2NmVkNjkzODM3N2M5NGRhZDY2NjZmYTk5NzE2MTg0ZGMu
LmY1MDQ3ODcwZGIzZjEzZmJlNGVmMTM5ZjM5OWQ2ZTA3YTg5ZDA3MTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0CkBAIC0xMTM1LDYgKzExMzUsNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9GSUxF
UwogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogICAgIHBhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvbi5pZGwKKyAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKICAgICBw
YWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmcuaWRsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0IGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRleCA2NjIy
OTIxZmU4MDc5YTMwMDhiYTQzODIxNDMyY2U5ZjQ1NmM4ZGRhLi43MTA3NDY5NTE5MGJmZGU0NjA0
MjM4MGYzY2ZiYTAzNTY2ZGEyYTdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTEyMDEsNiArMTIwMSw3IEBAICQoUFJPSkVDVF9ESVIp
L3BhZ2UvUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVy
Zm9ybWFuY2VNZWFzdXJlLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU1lYXN1
cmVPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24u
aWRsCiskKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwK
ICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKICQoUFJPSkVDVF9E
SVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogJChQUk9KRUNUX0RJUikv
cGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCBkZDJiZGRlMzY5ZTM5ZmI1
YTlkNjhhZTcwY2I2YzFkYmFhYTFmMDI2Li5lYjUzNGQzZDJjMzc1MGZjZTU0MzkxMWUwNzk0OTY5
YjVlY2M5ZjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRw
dXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQu
eGNmaWxlbGlzdApAQCAtMTYwNCw2ICsxNjA0LDggQEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmNwcAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1l
YXN1cmVPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaAorJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiAkKEJVSUxU
X1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJm
b3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpp
bmRleCAyMjkyNmJjNjJjMzc1ZGM0M2Y3ZjdjZGJjMTBiYTJiN2ZkZDkzY2ZmLi4zNjg3YTdmNTYy
ZTNiODE3YzhiNmNkZjA0ZWU0MTk3NzEwMGEyZmE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UKQEAgLTEwNTQsNiArMTA1NCw3IEBAIEpTX0JJTkRJTkdfSURMUyA6PSBcCiAgICAgJChX
ZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFn
ZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1Bl
cmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyQ2Fs
bGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5
TGlzdC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3Vy
Y2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCAyN2YyOTliNmJlMjE0MGI4NTgyZWU3M2Y0NzMz
ZWRjODQxMmQ5Mjg0Li40ZjhlOWFkMzExYmM4NjgxNzVmYjAzZjg4Y2MyOWMxY2I5YjdiODI5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Tb3VyY2VzLnR4dApAQCAtMTczNiw2ICsxNzM2LDcgQEAgcGFnZS9QZXJmb3JtYW5jZU1hcmsu
Y3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VNb25pdG9y
LmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitwYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKIHBhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5jcHAKQEAgLTMzNTksNiArMzM2MCw3IEBAIEpTUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5j
cHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25z
LmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitKU1BlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKIEpTUGVyZm9ybWFuY2VPYnNl
cnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDFjMzU5MTkwMmIxMjBiZDNhYjA2MGJkOGM1YjFiN2YyYWIzYzE3YjkuLmE2MjNkNGIwODMwZWJi
YzRmNmIzMTg0OTRhM2ExNTAzMmEyYjI4NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2MDQ2LDYgKzE2MDQ2LDkgQEAKIAkJ
REVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1NS5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI1
NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlERUNBN0ZGNTFG
OUZFOUJBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU2LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjU2LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCURGMTlFMkFBMjQ3NzI5QTYwMDdC
REFDQiAvKiBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2lu
Zy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNDI1QTk4NEM4MDA1RERC
OEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCURGMzY1RDA2MjVBOTg0QzgwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA3MjVBOTg0QzkwMDVEREI4QyAvKiBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUzOERDMjUyNzk1
OTMwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJREY0RTM4REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZlcnNpb25DaGVja3MuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlERjdFOUEyOTRDN0FBQ0UwQUQ4OUIzREQgLyogTWF0aE1MT3BlcmF0
b3JEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhNTE9w
ZXJhdG9yRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjI0NTAs
NiArMjI0NTMsOSBAQAogCQkJCThBRjRFNTUyMTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5j
ZU5hdmlnYXRpb24uY3BwICovLAogCQkJCThBRjRFNTUzMTFEQzVBMzYwMDBFRDNERSAvKiBQZXJm
b3JtYW5jZU5hdmlnYXRpb24uaCAqLywKIAkJCQk4QUY0RTU1NDExREM1QTM2MDAwRUQzREUgLyog
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCAqLywKKwkJCQlERjM2NUQwNDI1QTk4NEM4MDA1RERC
OEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCAqLywKKwkJCQlERjM2NUQwNjI1
QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8sCisJCQkJ
REYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5p
ZGwgKi8sCiAJCQkJQTVBOTkzMzUxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2
ZXIuY3BwICovLAogCQkJCUE1QTk5MzM2MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9i
c2VydmVyLmggKi8sCiAJCQkJQTVBOTkzMzcxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNl
T2JzZXJ2ZXIuaWRsICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKaW5kZXggYmJmODExMTQyZGFiOWU2YTkyY2I1
YzZjZmFiMDZiMjQ1OGJhNzE0MC4uZGZjZDhjMWViOTY0NDkxMzE0NDdlMmYyN2M5ZDZiZWM1YWM2
NzlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5j
ZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZv
cm1hbmNlRW50cnlDdXN0b20uY3BwCkBAIC0zNSwxMCArMzUsMTIgQEAKICNpbmNsdWRlICJKU0RP
TUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIkpT
UGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCIKICNpbmNsdWRl
ICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1h
cmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUuaCIKKyNpbmNsdWRlICJQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVBhaW50VGltaW5n
LmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgogCkBAIC00OCwxOCAr
NTAsMjAgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogSlNWYWx1ZSB0b0pTTmV3bHlDcmVhdGVk
KEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUmVmPFBl
cmZvcm1hbmNlRW50cnk+JiYgZW50cnkpCiB7Ci0gICAgaWYgKGlzPFBlcmZvcm1hbmNlUGFpbnRU
aW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VQ
YWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZW50cnkpKQotICAgICAgICByZXR1cm4gY3JlYXRl
V3JhcHBlcjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmplY3QsIFdURk1vdmUo
ZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1hcms+KGVudHJ5KSkKKyAgICBzd2l0
Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSB7CisgICAgY2FzZSBQZXJmb3JtYW5j
ZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uOgorICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkp
OworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TWFyazoKICAgICAgICAgcmV0dXJu
IGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VNYXJrPihnbG9iYWxPYmplY3QsIFdURk1vdmUoZW50
cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1lYXN1cmU+KGVudHJ5KSkKKyAgICBjYXNl
IFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1lYXN1cmU6CiAgICAgICAgIHJldHVybiBjcmVhdGVX
cmFwcGVyPFBlcmZvcm1hbmNlTWVhc3VyZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7
CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpSZXNvdXJjZToKKyAgICAgICAgcmV0
dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2JqZWN0
LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpQYWlu
dDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VQYWludFRpbWluZz4o
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgfQogCisgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CiAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VFbnRyeT4oZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmlu
ZGV4IGVhNDJmMzM0MWE2YTU3ZWEwYzVhOWUxMTE4MjRmNWU1MTIwZGYwMWIuLjIzZGY2ZjA3NTkz
OWU4OTJjMWM3OTM4MjQ4NzYxYzQ1MTQ2OTMxYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApA
QCAtMTM5MCwxMyArMTM5MCwxMyBAQCB2b2lkIERvY3VtZW50OjpzZXRSZWFkeVN0YXRlKFJlYWR5
U3RhdGUgcmVhZHlTdGF0ZSkKICAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUxvYWRp
bmcpCiAgICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUxvYWRpbmcgPSBNb25vdG9uaWNU
aW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBJbnRlcmFjdGl2ZToKLSAgICAg
ICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlKQotICAgICAgICAgICAgbV9k
b2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAg
ICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRlOgogICAgICAgICBpZiAoIW1fZG9jdW1lbnRU
aW1pbmcuZG9tQ29tcGxldGUpCiAgICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBs
ZXRlID0gTW9ub3RvbmljVGltZTo6bm93KCk7CisgICAgICAgIEZBTExUSFJPVUdIOworICAgIGNh
c2UgSW50ZXJhY3RpdmU6CisgICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFj
dGl2ZSkKKyAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUgPSBNb25v
dG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCBlMzI1ZjJkMDkxNDMyZTAzNmM3YWI1YTkx
NTEyZDAwOTkxYmFkYzhlLi43ZjExOWYxMTU4ZjFhYjY5M2NlMmNmMTRhNDBkYjkxNGE5ZmMwNWY2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTcyLDYgKzcy
LDcgQEAKICNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3MuaCIKICNpbmNsdWRlICJOZXR3b3Jr
U3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFu
Y2UuaCIKICNpbmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVn
aWVzLmgiCiAjaW5jbHVkZSAiUG9saWN5Q2hlY2tlci5oIgpAQCAtNDExLDcgKzQxMiw3IEBAIGJv
b2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZygpIGNvbnN0CiAgICAgcmV0dXJuIGlzTG9hZGlu
Z01haW5SZXNvdXJjZSgpIHx8ICFtX3N1YnJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkgfHwgIW1f
cGx1Z0luU3RyZWFtTG9hZGVycy5pc0VtcHR5KCk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6
Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTmV0d29ya0xv
YWRNZXRyaWNzJikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJl
c291cmNlJiByZXNvdXJjZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQogewog
ICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5H
KQpAQCAtNDE5LDYgKzQyMCwxMSBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hl
ZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTQogICAgICAgICBy
ZXR1cm47CiAjZW5kaWYKIAorICAgIGlmIChhdXRvKiBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50
KCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIGRvbVdpbmRvdyA9IGRvY3VtZW50LT5kb21XaW5kb3co
KSkKKyAgICAgICAgICAgIGRvbVdpbmRvdy0+cGVyZm9ybWFuY2UoKS5hZGROYXZpZ2F0aW9uVGlt
aW5nKCp0aGlzLCAqZG9jdW1lbnQsIHJlc291cmNlLCB0aW1pbmcoKSwgbWV0cmljcyk7CisgICAg
fQorCiAgICAgQVNTRVJUX1VOVVNFRChyZXNvdXJjZSwgbV9tYWluUmVzb3VyY2UgPT0gJnJlc291
cmNlKTsKICAgICBBU1NFUlQobV9tYWluUmVzb3VyY2UpOwogICAgIGlmICghbV9tYWluUmVzb3Vy
Y2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhbV9tYWluUmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDA3NWZiMWZhZWRm
ZWYzNDIwOGE4MWFiYzNiZjEyOTE0MzI3NGEyNDMuLjI0NjczMDI3YjcwNjM1YjEyOWQwMWI5ZTQy
ZTU5YmM0MWU5MzYyNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNw
cApAQCAtNzMzLDEwICs3MzMsOSBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlQnVm
ZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiBidWZmZQogICAgIGRpZFJl
Y2VpdmVCdWZmZXIoV1RGTW92ZShidWZmZXIpLCBlbmNvZGVkRGF0YUxlbmd0aCwgRGF0YVBheWxv
YWRCeXRlcyk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VIYW5kbGUqKQordm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKIHsKLSAgICBO
ZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAgIGRpZEZpbmlzaExvYWRpbmcoZW1w
dHlNZXRyaWNzKTsKKyAgICBkaWRGaW5pc2hMb2FkaW5nKG1ldHJpY3MpOwogfQogCiB2b2lkIFJl
c291cmNlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCmluZGV4IGIyZjZh
NWVjYjNiZWEwNGU5YmZhOGQxZWU3NjYyYzMyYzFkZjNkMTUuLmE0Mzc2ZDUwMTFiZjgyODZmYjQ3
ZmMzMzg0ZjI5YjVjM2RjMzI2NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRl
ci5oCkBAIC0yMDAsNyArMjAwLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHdpbGxTZW5kUmVxdWVz
dEFzeW5jKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFJlc291cmNlUmVzcG9u
c2UmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZXNvdXJjZVJlcXVlc3QmJik+JiYpIG92ZXJy
aWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFy
KiwgdW5zaWduZWQsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBk
aWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50
IGVuY29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
UmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKICAgICB2
b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJp
ZGU7CiAgICAgdm9pZCB3YXNCbG9ja2VkKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBjYW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcAppbmRleCAxNjgyMzRmNDdiY2JlMDc5NTA2MDU0
MGE5YTFhYWU2ZWRiNDUxNmE3Li43ZTIzNDEwOGI2YTYyNzZjMmQ2ZmMxMDM2ZTA2NDY1M2MyZTg0
ZDNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKQEAgLTYyLDkg
KzYyLDkgQEAgUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21DYWNoZShjb25zdCBV
UkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IKICAgICByZXR1cm4gUmVzb3VyY2VUaW1p
bmcodXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIHJlc3BvbnNlLCBzZWN1cml0eU9yaWdpbik7
CiB9CiAKLVJlc291cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChDYWNoZWRSZXNv
dXJjZSYgcmVzb3VyY2UsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5n
JiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmlj
cywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQorUmVzb3VyY2VUaW1pbmcg
UmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3Qg
VVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2Fk
VGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29u
c3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQogewotICAgIHJldHVybiBSZXNvdXJj
ZVRpbWluZyhyZXNvdXJjZS5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKSwgaW5pdGlhdG9yLCBsb2Fk
VGltaW5nLCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5
T3JpZ2luKTsKKyAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3IsIGxvYWRU
aW1pbmcsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2UucmVzcG9uc2UoKSwgc2VjdXJpdHlP
cmlnaW4pOwogfQogCiBSZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbVN5bmNocm9u
b3VzTG9hZChjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExv
YWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xv
YWRNZXRyaWNzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQpAQCAtOTcsMTAgKzk3LDEwIEBAIHZvaWQgUmVzb3Vy
Y2VUaW1pbmc6OmluaXRTZXJ2ZXJUaW1pbmcoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiAgICAgICAgIG1fc2VydmVyVGltaW5nID0gU2VydmVyVGltaW5nUGFyc2VyOjpwYXJzZVNl
cnZlclRpbWluZyhyZXNwb25zZS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlNlcnZl
clRpbWluZykpOwogfQogCi1WZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gUmVz
b3VyY2VUaW1pbmc6OnBvcHVsYXRlU2VydmVyVGltaW5nKCkKK1ZlY3RvcjxSZWY8UGVyZm9ybWFu
Y2VTZXJ2ZXJUaW1pbmc+PiBSZXNvdXJjZVRpbWluZzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSBj
b25zdAogewogICAgIHJldHVybiBXVEY6Om1hcChtX3NlcnZlclRpbWluZywgW10gKGF1dG8mIGVu
dHJ5KSB7Ci0gICAgICAgIHJldHVybiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzo6Y3JlYXRlKFdU
Rk1vdmUoZW50cnkubmFtZSksIGVudHJ5LmR1cmF0aW9uLCBXVEZNb3ZlKGVudHJ5LmRlc2NyaXB0
aW9uKSk7CisgICAgICAgIHJldHVybiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzo6Y3JlYXRlKFN0
cmluZyhlbnRyeS5uYW1lKSwgZW50cnkuZHVyYXRpb24sIFN0cmluZyhlbnRyeS5kZXNjcmlwdGlv
bikpOwogICAgIH0pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5oCmlu
ZGV4IDY0Zjg3Y2IzYmZkYjUxNWQ2YzRlMzgzOTRmYmM0ZTNhZDUzZTMwYjcuLjY0ZDFlY2Y4ZTc4
M2JjNmE0ZDhmZjdlOWRhZGFlYmYwNjJkZDRmYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9SZXNvdXJjZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZVRpbWluZy5oCkBAIC00MSwxNSArNDEsMTUgQEAgY2xhc3MgUmVzb3VyY2VUaW1pbmcgewog
ICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIHN0YXRpYyBSZXNvdXJj
ZVRpbWluZyBmcm9tQ2FjaGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNv
bnN0IExvYWRUaW1pbmcmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgU2VjdXJpdHlP
cmlnaW4mKTsKLSAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUxvYWQoQ2FjaGVkUmVzb3Vy
Y2UmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CisgICAgc3RhdGljIFJl
c291cmNlVGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3QgVVJMJiwgY29uc3Qg
U3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVRpbWlu
ZyBmcm9tU3luY2hyb25vdXNMb2FkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9y
LCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CiAKLSAgICBVUkwgdXJsKCkg
Y29uc3QgeyByZXR1cm4gbV91cmw7IH0KLSAgICBTdHJpbmcgaW5pdGlhdG9yKCkgY29uc3QgeyBy
ZXR1cm4gbV9pbml0aWF0b3I7IH0KLSAgICBMb2FkVGltaW5nIGxvYWRUaW1pbmcoKSBjb25zdCB7
IHJldHVybiBtX2xvYWRUaW1pbmc7IH0KLSAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya0xv
YWRNZXRyaWNzKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3M7IH0KKyAgICBj
b25zdCBVUkwmIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CisgICAgY29uc3QgU3RyaW5n
JiBpbml0aWF0b3IoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvcjsgfQorICAgIGNvbnN0IExv
YWRUaW1pbmcmIGxvYWRUaW1pbmcoKSBjb25zdCB7IHJldHVybiBtX2xvYWRUaW1pbmc7IH0KKyAg
ICBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0IHsg
cmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzOyB9CiAgICAgYm9vbCBhbGxvd1RpbWluZ0RldGFp
bHMoKSBjb25zdCB7IHJldHVybiBtX2FsbG93VGltaW5nRGV0YWlsczsgfQotICAgIFZlY3RvcjxS
ZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWluZygpOworICAg
IFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWlu
ZygpIGNvbnN0OwogICAgIFJlc291cmNlVGltaW5nIGlzb2xhdGVkQ29weSgpIGNvbnN0OwogCiAg
ICAgdm9pZCBvdmVycmlkZUluaXRpYXRvck5hbWUoY29uc3QgU3RyaW5nJiBuYW1lKSB7IG1faW5p
dGlhdG9yID0gbmFtZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJl
c291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRl
ci5jcHAKaW5kZXggMDBjOWQ4NzAzMzc3OTA1Njg3ZmE2ZDAzNDU1MTY0MDI3NjVkMjQyNi4uYTZi
MzExMDQ0OTg0N2JhMjEzOTc1MDJiMTM3MjlmMmY1N2VjNjkzNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCkBAIC04OTYsNyArODk2LDcgQEAgdm9pZCBT
dWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcoY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiBuZXR3b3JrTG8KICAgICAgICAgcmV0dXJuOwogCiAgICAgU2VjdXJpdHlPcmlnaW4m
IG9yaWdpbiA9IG1fb3JpZ2luID8gKm1fb3JpZ2luIDogZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2lu
KCk7Ci0gICAgYXV0byByZXNvdXJjZVRpbWluZyA9IFJlc291cmNlVGltaW5nOjpmcm9tTG9hZCgq
bV9yZXNvdXJjZSwgbV9yZXNvdXJjZS0+aW5pdGlhdG9yTmFtZSgpLCBtX2xvYWRUaW1pbmcsIG5l
dHdvcmtMb2FkTWV0cmljcywgb3JpZ2luKTsKKyAgICBhdXRvIHJlc291cmNlVGltaW5nID0gUmVz
b3VyY2VUaW1pbmc6OmZyb21Mb2FkKCptX3Jlc291cmNlLCBtX3Jlc291cmNlLT5yZXNvdXJjZVJl
cXVlc3QoKS51cmwoKSwgbV9yZXNvdXJjZS0+aW5pdGlhdG9yTmFtZSgpLCBtX2xvYWRUaW1pbmcs
IG5ldHdvcmtMb2FkTWV0cmljcywgb3JpZ2luKTsKIAogICAgIC8vIFdvcmtlciByZXNvdXJjZXMg
bG9hZGVkIGhlcmUgYXJlIGFsbCBDYWNoZWRSYXdSZXNvdXJjZXMgbG9hZGVkIHRocm91Z2ggV29y
a2VyVGhyZWFkYWJsZUxvYWRlci4KICAgICAvLyBQYXNzIHRoZSBSZXNvdXJjZVRpbWluZyBpbmZv
cm1hdGlvbiBvbiBzbyB0aGF0IFdvcmtlclRocmVhZGFibGVMb2FkZXIgbWF5IGFkZCB0aGVtIHRv
IHRoZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAppbmRleCA3NjY5MDg1ZTVkOGY4MjJk
ZDNiMTcyNmYwZGFjNGU2ZGYyNmMxZjExLi5jMmFlNmZjNWRiYmMyZjZhZDA3NWZlNDg3NzQ0YjE0
MmI0ZGFhOTUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcApAQCAtNDMsNiArNDMs
NyBAQAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWFya09wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJm
b3JtYW5jZU1lYXN1cmVPcHRpb25zLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
LmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAi
UGVyZm9ybWFuY2VPYnNlcnZlci5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUGFpbnRUaW1pbmcu
aCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCkBAIC0xMjIsNiArMTIz
LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2U6OmdldEVu
dHJpZXMoKSBjb25zdAogewogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVu
dHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nKQorICAgICAgICBlbnRyaWVzLmFw
cGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAgICAgZW50cmllcy5hcHBlbmRWZWN0b3IobV9y
ZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBAIC0xNDAs
NiArMTQ0LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2U6
OmdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnQKIHsKICAgICBWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzOwogCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWlu
ZyAmJiBlbnRyeVR5cGUgPT0gIm5hdmlnYXRpb24iKQorICAgICAgICBlbnRyaWVzLmFwcGVuZCht
X25hdmlnYXRpb25UaW1pbmcpOworICAgIAogICAgIGlmIChlbnRyeVR5cGUgPT0gInJlc291cmNl
IikKICAgICAgICAgZW50cmllcy5hcHBlbmRWZWN0b3IobV9yZXNvdXJjZVRpbWluZ0J1ZmZlcik7
CiAKQEAgLTE2MSw2ICsxNjgsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQ
ZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbQogewogICAgIFZl
Y3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAobV9uYXZp
Z2F0aW9uVGltaW5nICYmIChlbnRyeVR5cGUuaXNOdWxsKCkgfHwgZW50cnlUeXBlID09ICJuYXZp
Z2F0aW9uIikgJiYgbmFtZSA9PSBtX25hdmlnYXRpb25UaW1pbmctPm5hbWUoKSkKKyAgICAgICAg
ZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsKKwogICAgIGlmIChlbnRyeVR5cGUu
aXNOdWxsKCkgfHwgZW50cnlUeXBlID09ICJyZXNvdXJjZSIpIHsKICAgICAgICAgZm9yIChhdXRv
JiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpIHsKICAgICAgICAgICAgIGlmIChy
ZXNvdXJjZS0+bmFtZSgpID09IG5hbWUpCkBAIC0xODQsNiArMTk0LDkgQEAgVmVjdG9yPFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5hbWUoY29uc3Qg
U3RyaW5nJiBuYW0KIAogdm9pZCBQZXJmb3JtYW5jZTo6YXBwZW5kQnVmZmVyZWRFbnRyaWVzQnlU
eXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlLCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50
cnk+PiYgZW50cmllcykgY29uc3QKIHsKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVu
dHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdh
dGlvblRpbWluZyk7CisKICAgICBpZiAoZW50cnlUeXBlID09ICJyZXNvdXJjZSIpCiAgICAgICAg
IGVudHJpZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCkBAIC0yMTQs
NiArMjI3LDEyIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnJlcG9ydEZpcnN0Q29udGVudGZ1bFBhaW50
KCkKICAgICBxdWV1ZUVudHJ5KCptX2ZpcnN0Q29udGVudGZ1bFBhaW50KTsKIH0KIAordm9pZCBQ
ZXJmb3JtYW5jZTo6YWRkTmF2aWdhdGlvblRpbWluZyhEb2N1bWVudExvYWRlciYgZG9jdW1lbnRM
b2FkZXIsIERvY3VtZW50JiBkb2N1bWVudCwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25z
dCBMb2FkVGltaW5nJiB0aW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykK
K3sKKyAgICBtX25hdmlnYXRpb25UaW1pbmcgPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OmNyZWF0ZShtX3RpbWVPcmlnaW4sIHJlc291cmNlLCB0aW1pbmcsIG1ldHJpY3MsIGRvY3VtZW50
LnRpbWluZygpLCBkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBkb2N1bWVudExvYWRlci50cmln
Z2VyaW5nQWN0aW9uKCkudHlwZSgpKTsKKyAgICBxdWV1ZUVudHJ5KCptX25hdmlnYXRpb25UaW1p
bmcpOworfQorCiB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhSZXNvdXJjZVRp
bWluZyYmIHJlc291cmNlVGltaW5nKQogewogICAgIEFTU0VSVChzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCkpOwpAQCAtMzQ2LDYgKzM2NSwxMSBAQCB2b2lkIFBlcmZvcm1hbmNlOjpyZW1vdmVBbGxP
YnNlcnZlcnMoKQogdm9pZCBQZXJmb3JtYW5jZTo6cmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVy
KFBlcmZvcm1hbmNlT2JzZXJ2ZXImIG9ic2VydmVyKQogewogICAgIG1fb2JzZXJ2ZXJzLmFkZCgm
b2JzZXJ2ZXIpOworCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiBvYnNlcnZlci50eXBl
RmlsdGVyKCkuY29udGFpbnMoUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2aWdhdGlvbikpIHsK
KyAgICAgICAgb2JzZXJ2ZXIucXVldWVFbnRyeSgqbV9uYXZpZ2F0aW9uVGltaW5nKTsKKyAgICAg
ICAgc2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKKyAgICB9CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2U6
OnVucmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKFBlcmZvcm1hbmNlT2JzZXJ2ZXImIG9ic2Vy
dmVyKQpAQCAtMzU3LDcgKzM4MSw3IEBAIHZvaWQgUGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkoUGVy
Zm9ybWFuY2VFbnRyeSYgZW50cnkpCiB7CiAgICAgYm9vbCBzaG91bGRTY2hlZHVsZVRhc2sgPSBm
YWxzZTsKICAgICBmb3IgKGF1dG8mIG9ic2VydmVyIDogbV9vYnNlcnZlcnMpIHsKLSAgICAgICAg
aWYgKG9ic2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkudHlwZSgpKSkgeworICAg
ICAgICBpZiAob2JzZXJ2ZXItPnR5cGVGaWx0ZXIoKS5jb250YWlucyhlbnRyeS5wZXJmb3JtYW5j
ZUVudHJ5VHlwZSgpKSkgewogICAgICAgICAgICAgb2JzZXJ2ZXItPnF1ZXVlRW50cnkoZW50cnkp
OwogICAgICAgICAgICAgc2hvdWxkU2NoZWR1bGVUYXNrID0gdHJ1ZTsKICAgICAgICAgfQpAQCAt
MzY2LDYgKzM5MCwxMSBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNl
RW50cnkmIGVudHJ5KQogICAgIGlmICghc2hvdWxkU2NoZWR1bGVUYXNrKQogICAgICAgICByZXR1
cm47CiAKKyAgICBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOworfQorCit2b2lkIFBlcmZvcm1hbmNl
OjpzY2hlZHVsZVRhc2tJZk5lZWRlZCgpCit7CiAgICAgaWYgKG1faGFzU2NoZWR1bGVkVGltaW5n
QnVmZmVyRGVsaXZlcnlUYXNrKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2UuaAppbmRleCA5OWYyNTRiM2M5NTA5NmE1Y2ZkMzRjMmU5MGY5ZGNkYzM4NzQ2NGM4Li41
ZTQ2ODY0YmZkMDc3MTE0MzQ5OGZlY2E0ZTU1MDk1NTYzMzg2MzZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZS5oCkBAIC00OCwxMiArNDgsMTcgQEAgY2xhc3MgSlNHbG9iYWxPYmplY3Q7CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgQ2FjaGVkUmVzb3VyY2U7CitjbGFzcyBEb2N1
bWVudDsKK2NsYXNzIERvY3VtZW50TG9hZGVyOwogY2xhc3MgTG9hZFRpbWluZzsKK2NsYXNzIE5l
dHdvcmtMb2FkTWV0cmljczsKIGNsYXNzIFBlcmZvcm1hbmNlVXNlclRpbWluZzsKIGNsYXNzIFBl
cmZvcm1hbmNlRW50cnk7CiBjbGFzcyBQZXJmb3JtYW5jZU1hcms7CiBjbGFzcyBQZXJmb3JtYW5j
ZU1lYXN1cmU7CiBjbGFzcyBQZXJmb3JtYW5jZU5hdmlnYXRpb247CitjbGFzcyBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZU9ic2VydmVyOwogY2xhc3MgUGVy
Zm9ybWFuY2VQYWludFRpbWluZzsKIGNsYXNzIFBlcmZvcm1hbmNlVGltaW5nOwpAQCAtOTAsNiAr
OTUsNyBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8UmVmPFBlcmZvcm1hbmNlTWVhc3VyZT4+
IG1lYXN1cmUoSlNDOjpKU0dsb2JhbE9iamVjdCYsIGNvbnN0IFN0cmluZyYgbWVhc3VyZU5hbWUs
IE9wdGlvbmFsPFN0YXJ0T3JNZWFzdXJlT3B0aW9ucz4mJiwgY29uc3QgU3RyaW5nJiBlbmRNYXJr
KTsKICAgICB2b2lkIGNsZWFyTWVhc3VyZXMoY29uc3QgU3RyaW5nJiBtZWFzdXJlTmFtZSk7CiAK
KyAgICB2b2lkIGFkZE5hdmlnYXRpb25UaW1pbmcoRG9jdW1lbnRMb2FkZXImLCBEb2N1bWVudCYs
IENhY2hlZFJlc291cmNlJiwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYpOwogICAgIHZvaWQgYWRkUmVzb3VyY2VUaW1pbmcoUmVzb3VyY2VUaW1pbmcmJik7CiAK
ICAgICB2b2lkIHJlcG9ydEZpcnN0Q29udGVudGZ1bFBhaW50KCk7CkBAIC0xMjEsNiArMTI3LDcg
QEAgcHJpdmF0ZToKICAgICB2b2lkIHJlc291cmNlVGltaW5nQnVmZmVyRnVsbFRpbWVyRmlyZWQo
KTsKIAogICAgIHZvaWQgcXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5Jik7CisgICAgdm9pZCBz
Y2hlZHVsZVRhc2tJZk5lZWRlZCgpOwogCiAgICAgbXV0YWJsZSBSZWZQdHI8UGVyZm9ybWFuY2VO
YXZpZ2F0aW9uPiBtX25hdmlnYXRpb247CiAgICAgbXV0YWJsZSBSZWZQdHI8UGVyZm9ybWFuY2VU
aW1pbmc+IG1fdGltaW5nOwpAQCAtMTM5LDYgKzE0Niw3IEBAIHByaXZhdGU6CiAKICAgICBNb25v
dG9uaWNUaW1lIG1fdGltZU9yaWdpbjsKIAorICAgIFJlZlB0cjxQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc+IG1fbmF2aWdhdGlvblRpbWluZzsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VQYWlu
dFRpbWluZz4gbV9maXJzdENvbnRlbnRmdWxQYWludDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UGVy
Zm9ybWFuY2VVc2VyVGltaW5nPiBtX3VzZXJUaW1pbmc7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5LmgKaW5kZXggYWZhY2ZiMDkwYjIxY2JhNjE0ZDc4Y2U4OGFjNzUzZTI2NzNl
MTI2NS4uM2RmNWU0ZWZiYWYzMjZjNTcxZjVlNmU2NWUzNTZjMmQ0MzJmZjBmMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKQEAgLTQ0LDEwICs0NCwxMCBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB+UGVyZm9ybWFuY2VFbnRyeSgpOwogCiAgICAgY29uc3QgU3RyaW5nJiBu
YW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9Ci0gICAgZG91YmxlIHN0YXJ0VGltZSgpIGNv
bnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9Ci0gICAgZG91YmxlIGR1cmF0aW9uKCkgY29uc3Qg
eyByZXR1cm4gbV9kdXJhdGlvbjsgfQorICAgIHZpcnR1YWwgZG91YmxlIHN0YXJ0VGltZSgpIGNv
bnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9CisgICAgdmlydHVhbCBkb3VibGUgZHVyYXRpb24o
KSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9uOyB9CiAKLSAgICBlbnVtIGNsYXNzIFR5cGUgewor
ICAgIGVudW0gY2xhc3MgVHlwZSA6IHVpbnQ4X3QgewogICAgICAgICBOYXZpZ2F0aW9uICA9IDEg
PDwgMCwKICAgICAgICAgTWFyayAgICAgICAgPSAxIDw8IDEsCiAgICAgICAgIE1lYXN1cmUgICAg
ID0gMSA8PCAyLApAQCAtNTUsMTYgKzU1LDExIEBAIHB1YmxpYzoKICAgICAgICAgUGFpbnQgICAg
ICAgPSAxIDw8IDQKICAgICB9OwogCi0gICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCA9IDA7
CisgICAgdmlydHVhbCBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgPSAwOwogICAg
IHZpcnR1YWwgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0ID0gMDsKIAogICAgIHN0YXRp
YyBPcHRpb25hbDxUeXBlPiBwYXJzZUVudHJ5VHlwZVN0cmluZyhjb25zdCBTdHJpbmcmIGVudHJ5
VHlwZSk7CiAKLSAgICBib29sIGlzUmVzb3VyY2UoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0g
VHlwZTo6UmVzb3VyY2U7IH0KLSAgICBib29sIGlzTWFyaygpIGNvbnN0IHsgcmV0dXJuIHR5cGUo
KSA9PSBUeXBlOjpNYXJrOyB9Ci0gICAgYm9vbCBpc01lYXN1cmUoKSBjb25zdCB7IHJldHVybiB0
eXBlKCkgPT0gVHlwZTo6TWVhc3VyZTsgfQotICAgIGJvb2wgaXNQYWludCgpIGNvbnN0IHsgcmV0
dXJuIHR5cGUoKSA9PSBUeXBlOjpQYWludDsgfQotCiAgICAgc3RhdGljIGJvb2wgc3RhcnRUaW1l
Q29tcGFyZUxlc3NUaGFuKGNvbnN0IFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5PiYgYSwgY29uc3Qg
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+JiBiKQogICAgIHsKICAgICAgICAgcmV0dXJuIGEtPnN0
YXJ0VGltZSgpIDwgYi0+c3RhcnRUaW1lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlTWFyay5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1h
cmsuaAppbmRleCBjNzNiMjMxMmYzMmEwNGM4MjFjOGQwZWNhODc3ZWFiYjMzZmU0ZTJmLi5iNzUx
NGYwMTUzNTgwOWRhYjUzY2NhYzA2NGM1MmIwZjE4ZWI2YzZiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VNYXJrLmgKQEAgLTQ4LDE0ICs0OCwxMCBAQCBwcml2YXRlOgogICAgIFBlcmZv
cm1hbmNlTWFyayhjb25zdCBTdHJpbmcmIG5hbWUsIGRvdWJsZSBzdGFydFRpbWUsIFJlZjxTZXJp
YWxpemVkU2NyaXB0VmFsdWU+JiYpOwogICAgIH5QZXJmb3JtYW5jZU1hcmsoKTsKIAotICAgIFR5
cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1hcms7IH0KKyAgICBUeXBlIHBl
cmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWFyazsgfQog
ICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAibWFyayJf
czsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gbV9zZXJpYWxpemVkRGV0YWls
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWFyaykKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUo
Y29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5Lmlz
TWFyaygpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAppbmRleCAzNWRiNmExNjZiNTdlZTg2ZTYzMDgzMmRmNDI2
ODU1ZDk3YTdmYmY1Li4yZDJhYTNlZTEyOTUyMTJlMTZlZGU2ZTNkZGM4MGZjNjRkZTI2ZjY5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKQEAgLTQ4LDE0ICs0OCwx
MCBAQCBwcml2YXRlOgogICAgIFBlcmZvcm1hbmNlTWVhc3VyZShjb25zdCBTdHJpbmcmIG5hbWUs
IGRvdWJsZSBzdGFydFRpbWUsIGRvdWJsZSBlbmRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiYmIGRldGFpbCk7CiAgICAgflBlcmZvcm1hbmNlTWVhc3VyZSgpOwogCi0gICAgVHlwZSB0
eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWVhc3VyZTsgfQorICAgIFR5cGUgcGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNZWFzdXJlOyB9
CiAgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJtZWFz
dXJlIl9zOyB9CiAKICAgICBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBtX3NlcmlhbGl6ZWRE
ZXRhaWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9U
UkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VNZWFzdXJlKQotICAgIHN0YXRpYyBib29s
IGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4g
ZW50cnkuaXNNZWFzdXJlKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi45ODFiMzViZTZjNDVhZGNmODVjNjkzYTE5YzNhYTJkODAwODkzMzg2Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcuY3BwCkBAIC0wLDAgKzEsMTQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
CisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nLmgiCisKKyNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZS5oIgorI2luY2x1ZGUg
IlJlc291cmNlVGltaW5nLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGUgdG9QZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZShOYXZpZ2F0aW9uVHlwZSBuYXZpZ2F0aW9uVHlwZSkK
K3sKKyAgICBzd2l0Y2ggKG5hdmlnYXRpb25UeXBlKSB7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlw
ZTo6QmFja0ZvcndhcmQ6CisgICAgICAgIHJldHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6Ok5hdmlnYXRpb25UeXBlOjpCYWNrX2ZvcndhcmQ7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlw
ZTo6UmVsb2FkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpO
YXZpZ2F0aW9uVHlwZTo6UmVsb2FkOworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkxpbmtDbGlj
a2VkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1TdWJtaXR0ZWQ6CisgICAgY2FzZSBO
YXZpZ2F0aW9uVHlwZTo6Rm9ybVJlc3VibWl0dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6
Ok90aGVyOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZp
Z2F0aW9uVHlwZTo6TmF2aWdhdGU7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwor
ICAgIHJldHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpO
YXZpZ2F0ZTsKK30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNoZWRSZXNvdXJjZSYg
cmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYgbWV0cmljcywgY29uc3QgRG9jdW1lbnRUaW1pbmcmIGRvY3VtZW50VGltaW5nLCBj
b25zdCBTZWN1cml0eU9yaWdpbiYgb3JpZ2luLCBXZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSBuYXZp
Z2F0aW9uVHlwZSkKKyAgICA6IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcodGltZU9yaWdpbiwg
UmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKHJlc291cmNlLCByZXNvdXJjZS5yZXNwb25zZSgpLnVy
bCgpLCAibmF2aWdhdGlvbiJfcywgbG9hZFRpbWluZywgbWV0cmljcywgb3JpZ2luKSkKKyAgICAs
IG1fZG9jdW1lbnRUaW1pbmcoZG9jdW1lbnRUaW1pbmcpCisgICAgLCBtX25hdmlnYXRpb25UeXBl
KHRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUobmF2aWdhdGlvblR5
cGUpKSB7IH0KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp+UGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nKCkgPSBkZWZhdWx0OworCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjptaWxsaXNlY29uZHNTaW5jZU9yaWdpbihNb25vdG9uaWNUaW1lIHRpbWUsIE9wdGlv
bmFsPE1vbm90b25pY1RpbWU+IHRpbWVPcmlnaW4pIGNvbnN0Cit7CisgICAgaWYgKCF0aW1lKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2U6OnJlZHVjZVRpbWVSZXNv
bHV0aW9uKHRpbWUgLSAodGltZU9yaWdpbiA/ICp0aW1lT3JpZ2luIDogbV90aW1lT3JpZ2luKSku
bWlsbGlzZWNvbmRzKCk7Cit9CisKK2Jvb2wgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpz
YW1lT3JpZ2luQ2hlY2tGYWlscygpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3Jn
L1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2Rmbi1zYW1lLW9yaWdpbi1jaGVjaworICAgIHJldHVy
biAhbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKQorICAgICAgICB8fCBtX3Jl
c291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNDcm9zc09yaWdpblJlZGlyZWN0KCkKKyAgICAg
ICAgfHwgIW1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmhhc1NhbWVPcmlnaW5Bc1ByZXZp
b3VzRG9jdW1lbnQoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6
dW5sb2FkRXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgaWYgKHNhbWVPcmlnaW5DaGVja0ZhaWxz
KCkpCisgICAgICAgIHJldHVybiAwLjA7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3Jp
Z2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnVubG9hZEV2ZW50U3RhcnQoKSk7Cit9
CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50RW5kKCkg
Y29uc3QKK3sKKyAgICBpZiAoc2FtZU9yaWdpbkNoZWNrRmFpbHMoKSkKKyAgICAgICAgcmV0dXJu
IDAuMDsKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWlu
Zy5sb2FkVGltaW5nKCkudW5sb2FkRXZlbnRFbmQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmc6OmRvbUludGVyYWN0aXZlKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSk7
Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2Fk
ZWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmln
aW4obV9kb2N1bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCk7Cit9CisKK2Rv
dWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudEVu
ZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1l
bnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kKTsKK30KKworZG91YmxlIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUoKSBjb25zdAoreworICAgIHJldHVybiBt
aWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlKTsKK30K
KworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50U3RhcnQoKSBj
b25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291cmNlVGlt
aW5nLmxvYWRUaW1pbmcoKS5sb2FkRXZlbnRTdGFydCgpKTsKK30KKworZG91YmxlIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkubG9h
ZEV2ZW50RW5kKCkpOworfQorCitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRp
b25UeXBlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fbmF2aWdhdGlvblR5cGU7Cit9CisKK3Vuc2lnbmVkIHNob3J0IFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzo6cmVkaXJlY3RDb3VudCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3Jl
c291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQorICAgICAgICByZXR1cm4gMDsKKwor
ICAgIGlmIChtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNDcm9zc09yaWdpblJlZGly
ZWN0KCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgcmV0dXJuIG1fcmVzb3VyY2VUaW1pbmcu
bG9hZFRpbWluZygpLnJlZGlyZWN0Q291bnQoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lKCkgY29uc3QKK3sKKyAgICAvLyBodHRwczovL3d3dy53
My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jZG9tLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy1zdGFydFRpbWUKKyAgICByZXR1cm4gMC4wOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjpkdXJhdGlvbigpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cu
dzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmctZHVyYXRpb24KKyAgICByZXR1cm4gbG9hZEV2ZW50RW5kKCkgLSBzdGFydFRpbWUoKTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNjMGY3YWRlY2MwYzQ2
MWU2YmM4Nzg0YjhiMzJhNWQxYWNjYzE3ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgKQEAgLTAsMCArMSw4MSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkRvY3VtZW50
VGltaW5nLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgorI2luY2x1
ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBDYWNoZWRSZXNvdXJjZTsKK2NsYXNzIExvYWRUaW1pbmc7CitjbGFzcyBOZXR3b3JrTG9h
ZE1ldHJpY3M7CitjbGFzcyBTZWN1cml0eU9yaWdpbjsKK2VudW0gY2xhc3MgTmF2aWdhdGlvblR5
cGUgOiB1aW50OF90OworCitjbGFzcyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgZmluYWwg
OiBwdWJsaWMgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7CitwdWJsaWM6CisgICAgZW51bSBj
bGFzcyBOYXZpZ2F0aW9uVHlwZSA6IHVpbnQ4X3QgeworICAgICAgICBOYXZpZ2F0ZSwKKyAgICAg
ICAgUmVsb2FkLAorICAgICAgICBCYWNrX2ZvcndhcmQsCisgICAgICAgIFByZXJlbmRlciwKKyAg
ICB9OworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gQXJncz4gc3RhdGljIFJlZjxQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc+IGNyZWF0ZShBcmdzJiYuLi4gYXJncykgeyByZXR1cm4gYWRv
cHRSZWYoKm5ldyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoc3RkOjpmb3J3YXJkPEFyZ3M+
KGFyZ3MpLi4uKSk7IH0KKyAgICB+UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKCk7CisKKyAg
ICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6
TmF2aWdhdGlvbjsgfQorICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7
IHJldHVybiAibmF2aWdhdGlvbiJfczsgfQorCisgICAgZG91YmxlIHVubG9hZEV2ZW50U3RhcnQo
KSBjb25zdDsKKyAgICBkb3VibGUgdW5sb2FkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBkb3VibGUg
ZG9tSW50ZXJhY3RpdmUoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29udGVudExvYWRlZEV2ZW50
U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29udGVudExvYWRlZEV2ZW50RW5kKCkgY29u
c3Q7CisgICAgZG91YmxlIGRvbUNvbXBsZXRlKCkgY29uc3Q7CisgICAgZG91YmxlIGxvYWRFdmVu
dFN0YXJ0KCkgY29uc3Q7CisgICAgZG91YmxlIGxvYWRFdmVudEVuZCgpIGNvbnN0OworICAgIE5h
dmlnYXRpb25UeXBlIHR5cGUoKSBjb25zdDsKKyAgICB1bnNpZ25lZCBzaG9ydCByZWRpcmVjdENv
dW50KCkgY29uc3Q7CisKKyAgICBkb3VibGUgc3RhcnRUaW1lKCkgY29uc3QgZmluYWw7CisgICAg
ZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgZmluYWw7CisKK3ByaXZhdGU6CisgICAgUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgQ2FjaGVkUmVzb3Vy
Y2UmLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3Qg
RG9jdW1lbnRUaW1pbmcmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYsIFdlYkNvcmU6Ok5hdmlnYXRp
b25UeXBlKTsKKworICAgIGRvdWJsZSBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihNb25vdG9uaWNU
aW1lLCBPcHRpb25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2luID0gV1RGOjpudWxsb3B0KSBj
b25zdDsKKyAgICBib29sIHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkgY29uc3Q7CisKKyAgICBEb2N1
bWVudFRpbWluZyBtX2RvY3VtZW50VGltaW5nOworICAgIE5hdmlnYXRpb25UeXBlIG1fbmF2aWdh
dGlvblR5cGU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MGU4MWU3ZjE4NzIyZGNmYWJhOTE5YjM2ZWJlODc3OTE0ZmI5OGMzOQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbApA
QCAtMCwwICsxLDUxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25h
dmlnYXRpb24tdGltaW5nLTIvI2RvbS1wZXJmb3JtYW5jZW5hdmlnYXRpb250aW1pbmcKKwordHlw
ZWRlZiBkb3VibGUgRE9NSGlnaFJlc1RpbWVTdGFtcDsKKworZW51bSBOYXZpZ2F0aW9uVHlwZSB7
CisgICAgIm5hdmlnYXRlIiwKKyAgICAicmVsb2FkIiwKKyAgICAiYmFja19mb3J3YXJkIiwKKyAg
ICAicHJlcmVuZGVyIgorfTsKKworWworICAgIEV4cG9zZWQ9V2luZG93CitdIGludGVyZmFjZSBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgOiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIHsK
KyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgdW5sb2Fk
RXZlbnRTdGFydDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1l
U3RhbXAgdW5sb2FkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01I
aWdoUmVzVGltZVN0YW1wIGRvbUludGVyYWN0aXZlOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRy
aWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydDsKKyAg
ICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tQ29udGVu
dExvYWRlZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJl
c1RpbWVTdGFtcCBkb21Db21wbGV0ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERP
TUhpZ2hSZXNUaW1lU3RhbXAgbG9hZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0
dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGxvYWRFdmVudEVuZDsKKyAgICByZWFkb25seSAg
ICAgICAgYXR0cmlidXRlIE5hdmlnYXRpb25UeXBlICAgICAgdHlwZTsKKyAgICByZWFkb25seSAg
ICAgICAgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAgICAgcmVkaXJlY3RDb3VudDsKKyAgICBb
RGVmYXVsdF0gb2JqZWN0IHRvSlNPTigpOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuY3BwCmluZGV4IDQ2NDcyNjdkMTI4OWRiYjZhNTMyMGE0YWZlYjIwNDYw
YWJmMjg3NjEuLjU2ZjMyYTVkZWQxY2E0Y2FjMzE3ZWIxYzlhOTkwNzgwNzJiNWQyZmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcApAQCAtMTA3LDYgKzEw
NywxMSBAQCBFeGNlcHRpb25Pcjx2b2lkPiBQZXJmb3JtYW5jZU9ic2VydmVyOjpvYnNlcnZlKElu
aXQmJiBpbml0KQogICAgIHJldHVybiB7IH07CiB9CiAKK1ZlY3RvcjxSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeT4+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnRha2VSZWNvcmRzKCkKK3sKKyAgICByZXR1
cm4gc3RkOjpleGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIsIHsgfSk7Cit9CisKIHZvaWQgUGVy
Zm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCgpCiB7CiAgICAgaWYgKG1fcGVyZm9ybWFuY2Up
CkBAIC0xMTQsNiArMTE5LDcgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0
KCkKIAogICAgIG1fcmVnaXN0ZXJlZCA9IGZhbHNlOwogICAgIG1fZW50cmllc1RvRGVsaXZlci5j
bGVhcigpOworICAgIG1fdHlwZUZpbHRlciA9IHsgfTsKIH0KIAogdm9pZCBQZXJmb3JtYW5jZU9i
c2VydmVyOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KQpAQCAtMTMwLDcgKzEz
Niw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcigpCiAgICAgaWYgKCFjb250
ZXh0KQogICAgICAgICByZXR1cm47CiAKLSAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50
cnk+PiBlbnRyaWVzID0gV1RGTW92ZShtX2VudHJpZXNUb0RlbGl2ZXIpOworICAgIFZlY3RvcjxS
ZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXMgPSBzdGQ6OmV4Y2hhbmdlKG1fZW50cmll
c1RvRGVsaXZlciwgeyB9KTsKICAgICBhdXRvIGxpc3QgPSBQZXJmb3JtYW5jZU9ic2VydmVyRW50
cnlMaXN0OjpjcmVhdGUoV1RGTW92ZShlbnRyaWVzKSk7CiAKICAgICBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OndpbGxGaXJlT2JzZXJ2ZXJDYWxsYmFjaygqY29udGV4dCwgIlBlcmZvcm1hbmNl
T2JzZXJ2ZXIiX3MpOwpAQCAtMTQxLDEwICsxNDcsOSBAQCB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2
ZXI6OmRlbGl2ZXIoKQogVmVjdG9yPFN0cmluZz4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6c3VwcG9y
dGVkRW50cnlUeXBlcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogewogICAgIFZl
Y3RvcjxTdHJpbmc+IGVudHJ5VHlwZXMgPSB7Ci0gICAgICAgIC8vIEZJWE1FOiA8aHR0cHM6Ly93
ZWJraXQub3JnL2IvMTg0MzYzPiBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2
ZWwgMgotICAgICAgICAvLyAibmF2aWdhdGlvbiJfcywKICAgICAgICAgIm1hcmsiX3MsCi0gICAg
ICAgICJtZWFzdXJlIl9zCisgICAgICAgICJtZWFzdXJlIl9zLAorICAgICAgICAibmF2aWdhdGlv
biJfcywKICAgICB9OwogCiAgICAgaWYgKGlzPERvY3VtZW50Pihjb250ZXh0KSAmJiBkb3duY2Fz
dDxEb2N1bWVudD4oY29udGV4dCkuc3VwcG9ydHNQYWludFRpbWluZygpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaAppbmRleCAyODcyZjE3YWFiNWI1NzY2YmZjNDhj
YzQ4MDAwNGFkZDhiZGUxZmY5Li40MTkzMDVkNDdjMjE1MjdkOGUxY2JlYjU3YmNlNWMwZDgyYzJh
N2Q4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaApAQCAtNTcs
NiArNTcsNyBAQCBwdWJsaWM6CiAKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBvYnNlcnZlKEluaXQm
Jik7CiAgICAgdm9pZCBkaXNjb25uZWN0KCk7CisgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gdGFrZVJlY29yZHMoKTsKIAogICAgIE9wdGlvblNldDxQZXJmb3JtYW5jZUVudHJ5
OjpUeXBlPiB0eXBlRmlsdGVyKCkgY29uc3QgeyByZXR1cm4gbV90eXBlRmlsdGVyOyB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCmluZGV4IGI3MDdmNjYw
MmUzMDk3YWMyMzdjZWFjNzJlNGE3ZDA2NzI2MzY1MTMuLjY4M2EyYmVhMDE0NTk0MzI1N2Y5Yzdm
MjAyZTZmNTVjM2RiNGJkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VPYnNlcnZlci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9i
c2VydmVyLmlkbApAQCAtMzMsOCArMzMsOSBAQAogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VPYnNl
cnZlciB7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9y
KFBlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjayBjYWxsYmFjayk7CiAKLSAgICB1bmRlZmluZWQg
b2JzZXJ2ZShQZXJmb3JtYW5jZU9ic2VydmVySW5pdCBvcHRpb25zKTsKKyAgICB1bmRlZmluZWQg
b2JzZXJ2ZShvcHRpb25hbCBQZXJmb3JtYW5jZU9ic2VydmVySW5pdCBvcHRpb25zKTsKICAgICB1
bmRlZmluZWQgZGlzY29ubmVjdCgpOworICAgIHNlcXVlbmNlPFBlcmZvcm1hbmNlRW50cnk+IHRh
a2VSZWNvcmRzKCk7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIHN0YXRp
YyByZWFkb25seSBhdHRyaWJ1dGUgRnJvemVuQXJyYXk8RE9NU3RyaW5nPiBzdXBwb3J0ZWRFbnRy
eVR5cGVzOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU9ic2VydmVyRW50cnlMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlckVudHJ5TGlzdC5jcHAKaW5kZXggZTAzNjY1YWFjYjcwYmI4Zjg2MzlhZjRiYzdhZTFk
MDYwZGJiMWU0Ni4uZGQ3ZmM5N2NhMzhmODNlMjQ1NWU5MjcwODIzNTE1MDAzZTlhOWNlOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxp
c3QuY3BwCkBAIC02NCw3ICs2NCw3IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+
IFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUoCiAgICAgZm9y
IChhdXRvJiBlbnRyeSA6IG1fZW50cmllcykgewogICAgICAgICBpZiAoIW5hbWUuaXNOdWxsKCkg
JiYgZW50cnktPm5hbWUoKSAhPSBuYW1lKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IGlmICh0eXBlICYmIGVudHJ5LT50eXBlKCkgIT0gKnR5cGUpCisgICAgICAgIGlmICh0eXBlICYm
IGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpICE9ICp0eXBlKQogICAgICAgICAgICAgY29u
dGludWU7CiAgICAgICAgIGVudHJpZXMuYXBwZW5kKGVudHJ5LmNvcHlSZWYoKSk7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaAppbmRleCBhMjgx
YmEzODIyNDhmODIzNjBmMzc3OGIxYmZmZjU1ZTM5NmUyNWNmLi43MGY4MDg1ZjljYzc1ODc5MDQ2
MjkxMGM4MGFhNzRhNmJjNzc0MDJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlUGFpbnRUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlUGFpbnRUaW1pbmcuaApAQCAtNDQsMTMgKzQ0LDkgQEAgcHJpdmF0ZToKICAgICB9CiAKICAg
ICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gInBhaW50Il9z
OyB9Ci0gICAgVHlwZSB0eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UGFpbnQ7IH0K
KyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlw
ZTo6UGFpbnQ7IH0KIAogICAgIH5QZXJmb3JtYW5jZVBhaW50VGltaW5nKCkgPSBkZWZhdWx0Owog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JF
R0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlUGFpbnRUaW1pbmcpCi0gICAgc3RhdGljIGJvb2wgaXNU
eXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRy
eS5pc1BhaW50KCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IGRkNzFh
YTdjYjE3OGIzYjA4NWUzYWE5ZTJjNWJiM2NmMjM3ZWIwYTkuLmU1ZGQxMmI5ZjgzYTQxNDNhM2Zj
NmE1M2M1MWFmYTI5Yzk4OTlkZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmNwcApAQCAtODEsMTIgKzgxLDkgQEAgUmVmPFBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc+IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNyZWF0ZShNb25v
dG9uaWNUaW1lIHQKIAogUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYgcmVz
b3VyY2VUaW1pbmcpCiAgICAgOiBQZXJmb3JtYW5jZUVudHJ5KHJlc291cmNlVGltaW5nLnVybCgp
LnN0cmluZygpLCBlbnRyeVN0YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZyksIGVu
dHJ5RW5kVGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZykpCi0gICAgLCBtX2luaXRpYXRv
clR5cGUocmVzb3VyY2VUaW1pbmcuaW5pdGlhdG9yKCkpCiAgICAgLCBtX3RpbWVPcmlnaW4odGlt
ZU9yaWdpbikKLSAgICAsIG1fbG9hZFRpbWluZyhyZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkp
Ci0gICAgLCBtX25ldHdvcmtMb2FkTWV0cmljcyhyZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1l
dHJpY3MoKSkKLSAgICAsIG1fc2hvdWxkUmVwb3J0RGV0YWlscyhyZXNvdXJjZVRpbWluZy5hbGxv
d1RpbWluZ0RldGFpbHMoKSkKLSAgICAsIG1fc2VydmVyVGltaW5nKHJlc291cmNlVGltaW5nLnBv
cHVsYXRlU2VydmVyVGltaW5nKCkpCisgICAgLCBtX3Jlc291cmNlVGltaW5nKFdURk1vdmUocmVz
b3VyY2VUaW1pbmcpKQorICAgICwgbV9zZXJ2ZXJUaW1pbmcobV9yZXNvdXJjZVRpbWluZy5wb3B1
bGF0ZVNlcnZlclRpbWluZygpKQogewogfQogCkBAIC05NCw3ICs5MSw3IEBAIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc6On5QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKCkgPSBkZWZhdWx0Owog
CiBjb25zdCBTdHJpbmcmIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Om5leHRIb3BQcm90b2Nv
bCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzLnByb3RvY29sOwor
ICAgIHJldHVybiBtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnByb3RvY29s
OwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6d29ya2VyU3RhcnQoKSBj
b25zdApAQCAtMTA1LDE0MCArMTAyLDE0MCBAQCBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZzo6d29ya2VyU3RhcnQoKSBjb25zdAogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZzo6cmVkaXJlY3RTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERl
dGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQog
ICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hS
ZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1pbmcucmVkaXJlY3RTdGFydCgpKTsK
KyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmln
aW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnJlZGlyZWN0U3RhcnQoKSk7CiB9CiAK
IGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCgpIGNvbnN0CiB7
Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGlt
aW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0
dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xv
YWRUaW1pbmcucmVkaXJlY3RFbmQoKSk7CisgICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhp
Z2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmco
KS5yZWRpcmVjdEVuZCgpKTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OmZldGNoU3RhcnQoKSBjb25zdAogewogICAgIC8vIGZldGNoU3RhcnQgaXMgYSByZXF1aXJlZCBw
cm9wZXJ0eS4KLSAgICBBU1NFUlQobV9sb2FkVGltaW5nLmZldGNoU3RhcnQoKSk7CisgICAgQVNT
RVJUKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3RhcnQoKSk7CiAKLSAgICBy
ZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1f
bG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5n
KCkuZmV0Y2hTdGFydCgpKTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OmRvbWFpbkxvb2t1cFN0YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0
YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAg
ICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWlu
TG9va3VwU3RhcnQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9h
ZE1ldHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gZmV0
Y2hTdGFydCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCk7CisgICAgcmV0dXJu
IG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cFN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1cEVuZCgpIGNvbnN0CiB7Ci0gICAgaWYg
KCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93
VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29y
a0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNl
VGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKQogICAg
ICAgICByZXR1cm4gZG9tYWluTG9va3VwU3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9h
ZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9v
a3VwRW5kKTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwRW5kKTsK
IH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNvbm5lY3RTdGFydCgpIGNv
bnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291
cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0g
ICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCA8PSAwX21zKQorICAgIGlm
IChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RTdGFydCA8PSAw
X21zKQogICAgICAgICByZXR1cm4gZG9tYWluTG9va3VwRW5kKCk7CiAKLSAgICByZXR1cm4gbmV0
d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNv
bm5lY3RTdGFydCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RTdGFydCk7
CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0RW5kKCkgY29u
c3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3Vy
Y2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAg
ICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA8PSAwX21zKQorICAgIGlmICht
X3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQgPD0gMF9tcykK
ICAgICAgICAgcmV0dXJuIGNvbm5lY3RTdGFydCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2Fk
VGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5k
KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fcmVz
b3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuY29ubmVjdEVuZCk7CiB9CiAKIGRvdWJs
ZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpzZWN1cmVDb25uZWN0aW9uU3RhcnQoKSBjb25z
dAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJj
ZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAg
IGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2Vk
VExTQ29ubmVjdGlvblNlbnRpbmVsKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9PSByZXVzZWRUTFNDb25uZWN0aW9u
U2VudGluZWwpCiAgICAgICAgIHJldHVybiBmZXRjaFN0YXJ0KCk7CiAKLSAgICBpZiAobV9uZXR3
b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0IDw9IDBfbXMpCisgICAgaWYgKG1f
cmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuc2VjdXJlQ29ubmVjdGlvblN0YXJ0
IDw9IDBfbXMpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRU
aW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5l
Y3Rpb25TdGFydCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rp
b25TdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXF1ZXN0
U3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlm
ICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJu
IDAuMDsKIAogICAgIC8vIHJlcXVlc3RTdGFydCBpcyAwIHdoZW4gYSBuZXR3b3JrIHJlcXVlc3Qg
aXMgbm90IG1hZGUuCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8
PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJl
cXVlc3RTdGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gY29ubmVjdEVuZCgpOwogCi0gICAg
cmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2Fk
TWV0cmljcy5yZXF1ZXN0U3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhp
Z2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1
ZXN0U3RhcnQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9u
c2VTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAg
aWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1
cm4gMC4wOwogCiAgICAgLy8gcmVzcG9uc2VTdGFydCBpcyAwIHdoZW4gYSBuZXR3b3JrIHJlcXVl
c3QgaXMgbm90IG1hZGUuCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlU3Rh
cnQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpCiAgICAgICAgIHJldHVybiByZXF1ZXN0U3RhcnQoKTsK
IAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3
b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGlt
ZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmlj
cygpLnJlc3BvbnNlU3RhcnQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zzo6cmVzcG9uc2VFbmQoKSBjb25zdAogewogICAgIC8vIHJlc3BvbnNlRW5kIGlzIGEgcmVxdWly
ZWQgcHJvcGVydHkuCi0gICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmlzQ29tcGxldGUo
KSB8fCBtX2xvYWRUaW1pbmcucmVzcG9uc2VFbmQoKSk7CisgICAgQVNTRVJUKG1fcmVzb3VyY2VU
aW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuaXNDb21wbGV0ZSgpIHx8IG1fcmVzb3VyY2VUaW1p
bmcubG9hZFRpbWluZygpLnJlc3BvbnNlRW5kKCkpOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLmlzQ29tcGxldGUoKSkgeworICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSkgewogICAgICAgICAvLyByZXNwb25zZUVuZCBpcyAw
IHdoZW4gYSBuZXR3b3JrIHJlcXVlc3QgaXMgbm90IG1hZGUuCiAgICAgICAgIC8vIFRoaXMgc2hv
dWxkIG1lYW4gYWxsIG90aGVyIHByb3BlcnRpZXMgYXJlIGVtcHR5LgotICAgICAgICBpZiAobV9u
ZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VFbmQgPD0gMF9tcykgewotICAgICAgICAgICAgQVNT
RVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlU3RhcnQgPD0gMF9tcyk7Ci0gICAgICAg
ICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdFN0YXJ0IDw9IDBfbXMpOwot
ICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAw
X21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25u
ZWN0aW9uU3RhcnQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1l
dHJpY3MuY29ubmVjdEVuZCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdvcmtM
b2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9u
ZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5kIDw9IDBfbXMpOwotICAgICAgICAgICAg
QVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0IDw9IDBfbXMpOwot
ICAgICAgICAgICAgcmV0dXJuIGZldGNoU3RhcnQoKTsKKyAgICAgICAgaWYgKG1fcmVzb3VyY2VU
aW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VFbmQgPD0gMF9tcykgeworICAgICAg
ICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9u
c2VTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFT
U0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlcXVlc3RTdGFydCA8
PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2Fk
TWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFT
U0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQgPD0g
MF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1l
dHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcyk7
CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIHJldHVybiByZXNwb25z
ZVN0YXJ0KCk7CiAgICAgICAgIH0KIAotICAgICAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9E
T01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlRW5kKTsKKyAg
ICAgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291
cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKTsKICAgICB9CiAKLSAg
ICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4s
IG1fbG9hZFRpbWluZy5yZXNwb25zZUVuZCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRv
RE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRp
bWluZygpLnJlc3BvbnNlRW5kKCkpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZzo6bmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKFNlY29uZHMgZGVsdGEp
IGNvbnN0CiB7CiAgICAgQVNTRVJUKGRlbHRhKTsKLSAgICBTZWNvbmRzIGZpbmFsID0gKG1fbG9h
ZFRpbWluZy5mZXRjaFN0YXJ0KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmlnaW47CisgICAgU2Vjb25k
cyBmaW5hbCA9IChtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkgKyBk
ZWx0YSkgLSBtX3RpbWVPcmlnaW47CiAgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpyZWR1Y2VUaW1l
UmVzb2x1dGlvbihmaW5hbCkubWlsbGlzZWNvbmRzKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggNWQwNzlmNGM2NjU2NTIz
MTVhMDAxMjQ2M2M4Y2RmOWNlNTJlYzVhMS4uYjc2NmM5YzAwOTVmZDBjOTA4OGYzOTE3ZTU2ZTFk
ZmVkNDU1NWE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJMb2FkVGltaW5nLmgiCiAj
aW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRy
eS5oIgorI2luY2x1ZGUgIlJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1JlZi5oPgog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00MiwxMSArNDMsMTEgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc7CiBjbGFzcyBS
ZXNvdXJjZVRpbWluZzsKIAotY2xhc3MgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyBmaW5hbCA6
IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKK2NsYXNzIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcgOiBwdWJsaWMgUGVyZm9ybWFuY2VFbnRyeSB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBjcmVhdGUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2lu
LCBSZXNvdXJjZVRpbWluZyYmKTsKIAotICAgIGNvbnN0IEF0b21TdHJpbmcmIGluaXRpYXRvclR5
cGUoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvclR5cGU7IH0KKyAgICBjb25zdCBTdHJpbmcm
IGluaXRpYXRvclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlVGltaW5nLmluaXRpYXRv
cigpOyB9CiAgICAgY29uc3QgU3RyaW5nJiBuZXh0SG9wUHJvdG9jb2woKSBjb25zdDsKIAogICAg
IGRvdWJsZSB3b3JrZXJTdGFydCgpIGNvbnN0OwpAQCAtNjEsMjcgKzYyLDIxIEBAIHB1YmxpYzoK
ICAgICBkb3VibGUgcmVxdWVzdFN0YXJ0KCkgY29uc3Q7CiAgICAgZG91YmxlIHJlc3BvbnNlU3Rh
cnQoKSBjb25zdDsKICAgICBkb3VibGUgcmVzcG9uc2VFbmQoKSBjb25zdDsKKwogICAgIGNvbnN0
IFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiYgc2VydmVyVGltaW5nKCkgY29u
c3QgeyByZXR1cm4gbV9zZXJ2ZXJUaW1pbmc7IH0KIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIFR5cGU6OlJlc291cmNlOyB9Ci0gICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlw
ZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJyZXNvdXJjZSJfczsgfQorICAgIFR5cGUgcGVyZm9y
bWFuY2VFbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBUeXBlOjpSZXNvdXJjZTsg
fQorICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiAi
cmVzb3VyY2UiX3M7IH0KIAotcHJpdmF0ZToKK3Byb3RlY3RlZDoKICAgICBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJik7
CiAgICAgflBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoKTsKIAogICAgIGRvdWJsZSBuZXR3b3Jr
TG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAoU2Vjb25kcykgY29uc3Q7CiAKLSAgICBBdG9t
U3RyaW5nIG1faW5pdGlhdG9yVHlwZTsKICAgICBNb25vdG9uaWNUaW1lIG1fdGltZU9yaWdpbjsK
LSAgICBMb2FkVGltaW5nIG1fbG9hZFRpbWluZzsKLSAgICBOZXR3b3JrTG9hZE1ldHJpY3NXaXRo
b3V0Tm9uVGltaW5nRGF0YSBtX25ldHdvcmtMb2FkTWV0cmljczsKLSAgICBib29sIG1fc2hvdWxk
UmVwb3J0RGV0YWlsczsKKyAgICBjb25zdCBSZXNvdXJjZVRpbWluZyBtX3Jlc291cmNlVGltaW5n
OwogICAgIFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBtX3NlcnZlclRpbWlu
ZzsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKQotICAgIHN0YXRpYyBi
b29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1
cm4gZW50cnkuaXNSZXNvdXJjZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
aWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApp
bmRleCA0NmE4ZjBmMjUxMWNlYjVjMGM3ZGQzMTE2YzJmOGZhNzdmYzhkN2RkLi5mMDY1NjZkNWUw
ZmE3ZTFmZDBiNDU5N2YxMGI1ZjIyZWY2NmExNmQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKQEAgLTUwLDYgKzUwLDExIEBAIHR5
cGVkZWYgZG91YmxlIERPTUhpZ2hSZXNUaW1lU3RhbXA7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVxdWVzdFN0YXJ0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01IaWdoUmVzVGltZVN0YW1wIHJlc3BvbnNlU3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VFbmQ7CisKKyAgICAvLyBOb3RlOiB0cmFu
c2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBhcmUgaW50ZW50
aW9uYWxseSBvbWl0dGVkCisgICAgLy8gYmVjYXVzZSBvZiBwcml2YWN5IGNvbmNlcm5zIHN1Y2gg
YXMgaHR0cHM6Ly9naXRodWIuY29tL3czYy9yZXNvdXJjZS10aW1pbmcvaXNzdWVzLzIzOAorCisg
ICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3NlcnZlci10aW1pbmcvI2V4dGVuc2lvbi10by10
aGUtcGVyZm9ybWFuY2VyZXNvdXJjZXRpbWluZy1pbnRlcmZhY2UKICAgICBbRW5hYmxlZEF0UnVu
dGltZT1TZXJ2ZXJUaW1pbmddIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJheTxQZXJmb3Jt
YW5jZVNlcnZlclRpbWluZz4gc2VydmVyVGltaW5nOwogCiAgICAgW0RlZmF1bHRdIG9iamVjdCB0
b0pTT04oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxv
YlJlc291cmNlSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxv
YlJlc291cmNlSGFuZGxlLmNwcAppbmRleCA5ZmYyMzM2MjMwNDVhODk5NDQ1NTJkODJiZjNhNzJm
MTIxYmQ5ODc1Li4xNDc3NGYyMzIzMjdlMTE5OGUzNzRiYzE4NzZhYTllNzljOTY4Y2IyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhhbmRs
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VI
YW5kbGUuY3BwCkBAIC02MzQsNyArNjM0LDcgQEAgc3RhdGljIHZvaWQgZG9Ob3RpZnlGaW5pc2go
QmxvYlJlc291cmNlSGFuZGxlJiBoYW5kbGUpCiAgICAgaWYgKCFoYW5kbGUuY2xpZW50KCkpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygm
aGFuZGxlKTsKKyAgICBoYW5kbGUuY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoJmhhbmRsZSwg
eyB9KTsKIH0KIAogdm9pZCBCbG9iUmVzb3VyY2VIYW5kbGU6Om5vdGlmeUZpbmlzaCgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmlj
cy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3Mu
aAppbmRleCBkNzEwN2FhNDU2NzgxN2JlM2E1Zjc5MjA0NDMwNmZlZjcwYjliY2ExLi4xNjk2NWVl
OWE1MTdhNDU1OTYxNTM2NzY3OTZmOTliY2IzNmYyNWQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKQEAgLTIwMCw3ICsy
MDAsNyBAQCBwdWJsaWM6CiB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi1Cb3g8TmV0d29ya0xv
YWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKiwgTlNVUkxSZXNwb25z
ZSAqKTsKK0JveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVj
dGlvbiAqKTsKIFdFQkNPUkVfRVhQT1JUIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1p
bmdEYXRhKE5TVVJMU2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29tcGxldGVNZXRy
aWNzKTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmgKaW5kZXggOWE4MGUxMTNmYjQ4MjgyOTRkN2FmZmNh
ZTAyOWVmMGNhZjg1ZGQxNS4uZmJhMDIzM2JlZmEyY2Q0YzE2MTRmNzA1NmI0YjA3NTM3OTMxZWNl
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhh
bmRsZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3Vy
Y2VIYW5kbGVDbGllbnQuaApAQCAtNDQsNiArNDQsNyBAQCBPQkpDX0NMQVNTIE5TQ2FjaGVkVVJM
UmVzcG9uc2U7CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZTsKIGNsYXNzIENyZWRlbnRpYWw7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJpY3M7CiBjbGFz
cyBQcm90ZWN0aW9uU3BhY2U7CiBjbGFzcyBSZXNvdXJjZUhhbmRsZTsKIGNsYXNzIFJlc291cmNl
RXJyb3I7CkBAIC02Nyw3ICs2OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQsIGludCAvKmVu
Y29kZWREYXRhTGVuZ3RoKi8pIHsgfQogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBk
aWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50
IGVuY29kZWREYXRhTGVuZ3RoKTsKICAgICAKLSAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9h
ZGluZyhSZXNvdXJjZUhhbmRsZSopIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikgeyB9CiAgICAg
dmlydHVhbCB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9y
JikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHdhc0Jsb2NrZWQoUmVzb3VyY2VIYW5kbGUqKSB7IH0K
ICAgICB2aXJ0dWFsIHZvaWQgY2Fubm90U2hvd1VSTChSZXNvdXJjZUhhbmRsZSopIHsgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRl
ckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50LmNwcAppbmRleCBjN2MxMmNlOGU3NTFhNTJiYjQ1MTdkZDAyZDZmNThhZGU2
OTEyMGVkLi4yYTdmODg0MTFiNGExMzk1YjdmMzE2MDAyMTYyYWU5MzcxZjRmZWIxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xp
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50LmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIFN5bmNocm9ub3VzTG9hZGVy
Q2xpZW50OjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqIGRhdGEs
CiAgICAgbV9kYXRhLmFwcGVuZChkYXRhLCBsZW5ndGgpOwogfQogCi12b2lkIFN5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiBoYW5kbGUpCit2
b2lkIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFu
ZGxlKiBoYW5kbGUsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCiB7CiAgICAgbV9tZXNzYWdl
UXVldWUtPmtpbGwoKTsKICNpZiBQTEFURk9STShDT0NPQSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaAppbmRl
eCA4ZDJhOTc3MTkzMTRmYzg5MjVjMjJkYmZkZWM1OGVmOTJiMzI3ZGM0Li5mODhkZmY3ZjkzNWI2
MzU1ZWEyNzEwNGFhZTVlNDJjZjZiNDI0ZDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oCkBAIC02Nyw3
ICs2Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92
ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlQXN5bmMoUmVzb3VyY2VIYW5kbGUq
LCBSZXNvdXJjZVJlc3BvbnNlJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJikgb3ZlcnJp
ZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIq
LCB1bnNpZ25lZCwgaW50IC8qZW5jb2RlZERhdGFMZW5ndGgqLykgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNz
Jikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVz
b3VyY2VFcnJvciYpIG92ZXJyaWRlOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FM
TEJBQ0spCiAgICAgdm9pZCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlQXN5
bmMoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wpPiYmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0
ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVl
dWUuY3BwCmluZGV4IDNjODJiYzNiNGM2ODU5YjhiYTk0YTMyYmU5YTQyNmE4Mzk5NmVjNTAuLjI0
ZDE0ODU4MjA1ZTEyMmQyZmJlZGYxYTM5M2Q3YTgwZWNmMmM4MWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rp
b25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0
aE9wZXJhdGlvblF1ZXVlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIk1JTUVU
eXBlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3MuaCIKICNpbmNsdWRl
ICJSZXNvdXJjZUhhbmRsZS5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50LmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtMjM4LDcgKzIzOSw3IEBAIHZvaWQgUmVz
b3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlk
RmluaXNoTG9hZGluZygpCiAKICAgICAgICAgTE9HKE5ldHdvcmssICJDRk5ldCAtIFJlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZEZpbmlz
aExvYWRpbmcoaGFuZGxlPSVwKSAoJXMpIiwgaGFuZGxlLCBoYW5kbGUtPmZpcnN0UmVxdWVzdCgp
LnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCi0gICAgICAgIGhhbmRsZS0+Y2xpZW50
KCktPmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlKTsKKyAgICAgICAgaGFuZGxlLT5jbGllbnQoKS0+
ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUsIE5ldHdvcmtMb2FkTWV0cmljcyB7IH0pOwogICAgICAg
ICBpZiAocHJvdGVjdGVkVGhpcy0+bV9tZXNzYWdlUXVldWUpIHsKICAgICAgICAgICAgIHByb3Rl
Y3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAgICAgICAgICAgICBwcm90ZWN0ZWRU
aGlzLT5tX21lc3NhZ2VRdWV1ZSA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbSBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCmluZGV4
IDViM2M4OThiZDMwMjdkZGQ1NzI0OTE2NmFjMTRiZWViMWU3MDdiMmEuLjY0YWVhNGZkNTJmOWQ1
ZTJlM2QwYjM5YzYzMjBkYzk2YTdmZGE3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCkBAIC02
Nyw3ICs2Nyw3IEBAIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJM
U2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29tCiAgICAgKTsKIH0KIAotQm94PE5l
dHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25uZWN0
aW9uLCBOU1VSTFJlc3BvbnNlICpyZXNwb25zZSkKK0JveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNv
cHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbikKIHsKICAgICBOU0RpY3Rp
b25hcnkgKnRpbWluZ0RhdGEgPSBbY29ubmVjdGlvbiBfdGltaW5nRGF0YV07CiAgICAgaWYgKCF0
aW1pbmdEYXRhKQpAQCAtODksNyArODksNyBAQCBCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5
VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rpb24sIE5TVVJMUmVzcG9ucwogICAg
ICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJlcXVlc3RTdGFy
dCIpLAogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJl
c3BvbnNlU3RhcnQiKSwKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwgQCJfa0NGTlRp
bWluZ0RhdGFDb25uZWN0aW9uUmV1c2VkIiksCi0gICAgICAgIHJlc3BvbnNlLlVSTC5zY2hlbWUK
KyAgICAgICAgY29ubmVjdGlvbi5jdXJyZW50UmVxdWVzdC5VUkwuc2NoZW1lCiAgICAgKTsKIH0K
ICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9D
dXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCmluZGV4IDViODI3ZGVi
MDU3ODVlMzRkMTdkZDI5OWQ5NjE0NjIyODA2NmNjODguLmU1NjRhMGNlNjY2MTRhNDlhMTAzMTM2
ODg1MWM0ZGE4ODIzNTJhNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNw
cApAQCAtMTUyLDcgKzE1Miw3IEBAIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1
cmxEaWRSZWNlaXZlQnVmZmVyKEN1cmxSZXF1ZXN0JiwgUmVmPFNoYXJlZEJ1CiAgICAgY2xpZW50
KCktPmRpZFJlY2VpdmVCdWZmZXIoJm1faGFuZGxlLCBXVEZNb3ZlKGJ1ZmZlciksIGJ1ZmZlci0+
c2l6ZSgpKTsKIH0KIAotdm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZENv
bXBsZXRlKEN1cmxSZXF1ZXN0JiwgTmV0d29ya0xvYWRNZXRyaWNzJiYpCit2b2lkIEN1cmxSZXNv
dXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkQ29tcGxldGUoQ3VybFJlcXVlc3QmLCBOZXR3b3Jr
TG9hZE1ldHJpY3MmJiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAK
QEAgLTE2MCw3ICsxNjAsNyBAQCB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJs
RGlkQ29tcGxldGUoQ3VybFJlcXVlc3QmLCBOZXR3b3JrTG9hZE1ldHJpYwogICAgICAgICByZXR1
cm47CiAKICAgICBDdXJsQ2FjaGVNYW5hZ2VyOjpzaW5nbGV0b24oKS5kaWRGaW5pc2hMb2FkaW5n
KG1faGFuZGxlKTsKLSAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmbV9oYW5kbGUpOwor
ICAgIGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZtX2hhbmRsZSwgV1RGTW92ZShtZXRyaWNz
KSk7CiB9CiAKIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRGYWlsV2l0
aEVycm9yKEN1cmxSZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYmIHJlc291cmNlRXJyb3IsIENlcnRp
ZmljYXRlSW5mbyYmKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcAppbmRleCA4ZjE3NWI2NTQyZWEyZjBj
ODY4ZjcwMWQ1NjI4MDRiZjdlMmZkNTk3Li5jN2UxYTI0ZmU5NTU5ZTk4ZjViYzU2ZmYyMjcwMGEx
ZTRhZTU5MzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcApAQCAtMzksNiArMzksNyBAQAogI2lu
Y2x1ZGUgIkN1cmxSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKICNpbmNsdWRl
ICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAi
TmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVJbnRlcm5h
bC5oIgogI2luY2x1ZGUgIlNhbWVTaXRlSW5mby5oIgpAQCAtNTgyLDcgKzU4Myw3IEBAIHZvaWQg
UmVzb3VyY2VIYW5kbGU6OmhhbmRsZURhdGFVUkwoKQogICAgIH0KIAogICAgIGlmIChjbGllbnQo
KSkKLSAgICAgICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcodGhpcyk7CisgICAgICAgIGNs
aWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKHRoaXMsIHsgfSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFj
L1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3Bl
cmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQppbmRleCBkNDk3ODYwZDg3NDVjYzIyMjVmZDEzZWU2ZDBk
MzI4MjY3NGE1Y2E2Li44YTQwYjYwMTdlYTA5OWU5ODFkNjlkMWYyOTg1OGUxMTkxNTQxZDg0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVz
b3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25R
dWV1ZURlbGVnYXRlLm1tCkBAIC0zOCw2ICszOCw3IEBACiAjaW1wb3J0ICJTeW5jaHJvbm91c0xv
YWRlckNsaWVudC5oIgogI2ltcG9ydCAiV2ViQ29yZVVSTFJlc3BvbnNlLmgiCiAjaW1wb3J0IDxw
YWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1VSTENv
bm5lY3Rpb25TUEkuaD4KICNpbXBvcnQgPHd0Zi9CbG9ja1B0ci5oPgogI2ltcG9ydCA8d3RmL01h
aW5UaHJlYWQuaD4KIApAQCAtMjUyLDcgKzI1Myw3IEBAIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVN
RU5UQVRJT05TX0VORAogCiAgICAgICAgIFJlc291cmNlUmVzcG9uc2UgcmVzb3VyY2VSZXNwb25z
ZShyLmdldCgpKTsKICAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXRTb3VyY2UoUmVzb3VyY2VS
ZXNwb25zZTo6U291cmNlOjpOZXR3b3JrKTsKLSAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXRE
ZXByZWNhdGVkTmV0d29ya0xvYWRNZXRyaWNzKGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0
KCksIHIuZ2V0KCkpKTsKKyAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXREZXByZWNhdGVkTmV0
d29ya0xvYWRNZXRyaWNzKGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCkpKTsKIAogICAg
ICAgICBtX2hhbmRsZS0+ZGlkUmVjZWl2ZVJlc3BvbnNlKFdURk1vdmUocmVzb3VyY2VSZXNwb25z
ZSksIFtzZWxmLCBwcm90ZWN0ZWRTZWxmID0gV1RGTW92ZShwcm90ZWN0ZWRTZWxmKV0gewogICAg
ICAgICAgICAgbV9zZW1hcGhvcmUuc2lnbmFsKCk7CkBAIC0zMTQsMTEgKzMxNSwyMSBAQCBBTExP
V19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIAogICAgIExPRyhOZXR3b3JrLCAiSGFu
ZGxlICVwIGRlbGVnYXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hMb2FkaW5nOiVwIiwgbV9oYW5kbGUs
IGNvbm5lY3Rpb24pOwogCi0gICAgYXV0byB3b3JrID0gW3NlbGYgPSBzZWxmLCBwcm90ZWN0ZWRT
ZWxmID0gcmV0YWluUHRyKHNlbGYpXSAoKSBtdXRhYmxlIHsKKyAgICBhdXRvIHdvcmsgPSBbc2Vs
ZiA9IHNlbGYsIHByb3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZiksIGNvbm5lY3Rpb24gPSBy
ZXRhaW5QdHIoY29ubmVjdGlvbildICgpIG11dGFibGUgewogICAgICAgICBpZiAoIW1faGFuZGxl
IHx8ICFtX2hhbmRsZS0+Y2xpZW50KCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAg
bV9oYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlKTsKKyAgICAgICAg
aWYgKGF1dG8gbWV0cmljcyA9IGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCkpKSB7Cisg
ICAgICAgICAgICBkb3VibGUgcmVzcG9uc2VFbmRUaW1lID0gW1tbY29ubmVjdGlvbiBfdGltaW5n
RGF0YV0gb2JqZWN0Rm9yS2V5OkAiX2tDRk5UaW1pbmdEYXRhUmVzcG9uc2VFbmQiXSBkb3VibGVW
YWx1ZV07CisgICAgICAgICAgICBtZXRyaWNzLT5yZXNwb25zZUVuZCA9IFNlY29uZHMocmVzcG9u
c2VFbmRUaW1lIDw9IDAgPyBtZXRyaWNzLT5yZXNwb25zZVN0YXJ0LnZhbHVlKCkgOiByZXNwb25z
ZUVuZFRpbWUgLSBtZXRyaWNzLT5mZXRjaFN0YXJ0LnZhbHVlKCkpOworICAgICAgICAgICAgbWV0
cmljcy0+bWFya0NvbXBsZXRlKCk7CisgICAgICAgICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRp
ZEZpbmlzaExvYWRpbmcobV9oYW5kbGUsICptZXRyaWNzKTsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBlbXB0eU1ldHJpY3M7CisgICAgICAgICAgICBl
bXB0eU1ldHJpY3MubWFya0NvbXBsZXRlKCk7CisgICAgICAgICAgICBtX2hhbmRsZS0+Y2xpZW50
KCktPmRpZEZpbmlzaExvYWRpbmcobV9oYW5kbGUsIGVtcHR5TWV0cmljcyk7CisgICAgICAgIH0K
KwogICAgICAgICBpZiAobV9tZXNzYWdlUXVldWUpIHsKICAgICAgICAgICAgIG1fbWVzc2FnZVF1
ZXVlLT5raWxsKCk7CiAgICAgICAgICAgICBtX21lc3NhZ2VRdWV1ZSA9IG51bGxwdHI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9u
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNz
aW9uQ29jb2EubW0KaW5kZXggZjM1YzVmM2E2NTNkZTBiY2QxNDRkZWNhNTY4NTI3YWVhNzBkNTRi
Zi4uNzI2MTVhYzljZmM2N2Q1ODhmODcxZTM3YTU0MzQ5NTk4YmMzNzRiMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25D
b2NvYS5tbQpAQCAtNzkwLDcgKzc5MCwxMCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcHJvY2Vzc1Nl
cnZlclRydXN0RXZhbHVhdGlvbihOZXR3b3JrU2Vzc2lvbkNvY29hJiBzZXNzaW9uLCBTZQogICAg
ICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQgPSBTZWNvbmRzKGRvbWFp
bkxvb2t1cFN0YXJ0SW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWlu
TG9va3VwRW5kID0gU2Vjb25kcyhkb21haW5Mb29rdXBFbmRJbnRlcnZhbCk7CiAgICAgICAgIG5l
dHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPSBTZWNvbmRzKGNvbm5lY3RTdGFydEludGVy
dmFsKTsKLSAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9
IFNlY29uZHMoc2VjdXJlQ29ubmVjdGlvblN0YXJ0SW50ZXJ2YWwpOworICAgICAgICBpZiAobS5y
ZXVzZWRDb25uZWN0aW9uICYmIFttLnJlc3BvbnNlLlVSTC5zY2hlbWUgaXNFcXVhbFRvU3RyaW5n
OkAiaHR0cHMiXSkKKyAgICAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0
aW9uU3RhcnQgPSBXZWJDb3JlOjpyZXVzZWRUTFNDb25uZWN0aW9uU2VudGluZWw7CisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3Rh
cnQgPSBTZWNvbmRzKHNlY3VyZUNvbm5lY3Rpb25TdGFydEludGVydmFsKTsKICAgICAgICAgbmV0
d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPSBTZWNvbmRzKGNvbm5lY3RFbmRJbnRlcnZhbCk7
CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPSBTZWNvbmRzKHJlcXVl
c3RTdGFydEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlU3Rh
cnQgPSBTZWNvbmRzKHJlc3BvbnNlU3RhcnRJbnRlcnZhbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaCBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvV2ViQ29yZVN1cHBvcnQvUGluZ0hhbmRsZS5oCmluZGV4IDE3NTk1NGM5OGY0NjYyY2Iz
ZGFmZTAwY2ZhYzRmZjhjOTVhYjRlNzUuLjA5MjljZWY5Nzg5YzBjY2YxMWEzZTk0MTBmNWRlNmZm
Y2FmZWJhNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQv
UGluZ0hhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvUGlu
Z0hhbmRsZS5oCkBAIC03NCw3ICs3NCw3IEBAIHByaXZhdGU6CiAgICAgICAgIHBpbmdMb2FkQ29t
cGxldGUoeyB9LCByZXNwb25zZSk7CiAgICAgfQogICAgIHZvaWQgZGlkUmVjZWl2ZUJ1ZmZlcihX
ZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSosIFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYsIGlu
dCkgZmluYWwgeyBwaW5nTG9hZENvbXBsZXRlKCk7IH0KLSAgICB2b2lkIGRpZEZpbmlzaExvYWRp
bmcoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGUqKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoKTsg
fQorICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSosIGNv
bnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0
ZSgpOyB9CiAgICAgdm9pZCBkaWRGYWlsKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlKiwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYgZXJyb3IpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0ZShl
cnJvcik7IH0KICAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OlJl
c291cmNlSGFuZGxlKikgZmluYWwgeyByZXR1cm4gbV9zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFn
ZTsgfQogICAgIHZvaWQgdGltZW91dFRpbWVyRmlyZWQoKSB7IHBpbmdMb2FkQ29tcGxldGUoV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciB7IFN0cmluZygpLCAwLCBtX2N1cnJlbnRSZXF1ZXN0LnVybCgp
LCAiTG9hZCB0aW1lZCBvdXQiX3MsIFdlYkNvcmU6OlJlc291cmNlRXJyb3I6OlR5cGU6OlRpbWVv
dXQgfSk7IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCAxNWZhNzhkZWRmZTkwNWIzMDA2MWJlZjlkYzYzOGM0MTY1NWY4MDUy
Li4xOTllZDg4OThhMGE3NjljYjVhMGY4MTU3NjhiYWMwN2FkMTg2MGY0IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjEgQEAKKzIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Vi
a2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2
ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0
MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBU
ZXN0RXhwZWN0YXRpb25zOgorICAgICAgICBBbm5veWluZ2x5IHNlY3VyZV9jb25uZWN0aW9uX3N0
YXJ0X25vbl96ZXJvLmh0dHBzLmh0bWwgYmVjb21lcyBmbGFreSB3aXRoIGEgY29ycmVjdCBpbXBs
ZW1lbnRhdGlvbiBiZWNhdXNlIGl0IGFzc3VtZXMKKyAgICAgICAgdGhhdCBubyBjb25uZWN0aW9u
IGlzIHJldXNlZC4gIEhvd2V2ZXIsIHdoZW4gcnVubmluZyB0aGlzIHRlc3QgYWZ0ZXIgb3RoZXIg
dGVzdHMsIGFub3RoZXIgY29ubmVjdGlvbiBpcyBvZnRlbiByZXVzZWQuCisgICAgICAgICogcGVy
Zm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250
ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGFp
bnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRt
bDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxp
bmUtYXBpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2Vz
L3RpbWVsaW5lLWFwaS5qczoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0
ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgTmV4dCBob3AgcHJvdG9jb2wgaXNuJ3Qg
aW1wbGVtZW50ZWQgaW4gUmVzb3VyY2VIYW5kbGUuICBUaGF0J3MgcHJvYmFibHkgbm8gYmlnIGRl
YWwgYmVjYXVzZSBXZWJLaXRMZWdhY3kgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYnkgU2Fm
YXJpLgorCiAyMDIxLTA1LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9uU3RhcnQg
PT0gMCB3aGVuIGEgY29ubmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCA0NzM0MDdhYTZiMDk5ZDAwOTllYTU4YmE4MTQ5OTE3ODQyZTFjZGE4Li42ODZh
YTVhNjQ2ZDJkMDc2NGFkZjhiZDlkYTFlNmFiMGI0NzBiMTM2IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMjkgQEAKKzIwMjEtMDUtMTQgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Ig
TmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
TUVUQS55bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1l
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJu
ZXNzLndpbmRvdy5qczoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0
dHJpYnV0ZXNfZXhpc3QuaHRtbDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNh
dXNlIHdlIGhhdmUgbm90IGltcGxlbWVudGVkIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXpl
LCBhbmQgZGVjb2RlZEJvZHlTaXplIGFzIG5vdGVkIGluIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaWRsCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRl
c192YWx1ZXMuaHRtbDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIHdl
IGhhdmUgbm90IGltcGxlbWVudGVkIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQg
ZGVjb2RlZEJvZHlTaXplIGFzIG5vdGVkIGluIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRs
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3Vt
ZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWw6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFt
ZV9yZW1vdmVkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3Rh
cnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1s
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nl
c3NvcnMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRlX2lmcmFtZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25f
dHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2Zvcndh
cmQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3Jl
bG9hZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWw6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICBUaGlzIHRlc3QgZmFpbHMgYmVjYXVzZSBvdXIgdGVzdCBpbmZyYXN0cnVjdHVy
ZSBkb2Vzbid0IHN1cHBvcnQgbG9hZGluZyBmcm9tIHd3dy5sb2NhbGhvc3QuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sOiBDb3BpZWQgZnJvbSBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgVGhpcyB0ZXN0IGZhaWxzIGJlY2F1c2Ugb3VyIHRlc3QgaW5mcmFzdHJ1Y3R1cmUgZG9lc24n
dCBzdXBwb3J0IGxvYWRpbmcgZnJvbSB3d3cubG9jYWxob3N0LgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNl
cnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgIFRoaXMgdGVzdCBmYWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdh
dGlvbi4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50
eHQ6CisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIG91ciB0ZXN0IGluZnJhc3RydWN0
dXJlIGRvZXNuJ3Qgc3VwcG9ydCBsb2FkaW5nIGZyb20gd3d3LmxvY2FsaG9zdC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X3hzZXJ2ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgIFRoaXMgdGVzdCBmYWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5h
dmlnYXRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanM6CisgICAgICAgICh0
ZXN0X25hbWVzcGFjZSk6CisgICAgICAgICh0ZXN0X2F0dHJpYnV0ZV9leGlzdHMpOgorICAgICAg
ICAodGVzdF9lbnVtKToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2Vj
dXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbDogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0
YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGhhcyBi
ZWVuIG1hcmtlZCBhcyBmbGFreS4gIEl0IG5lZWRzIHRvIGJlIGZpeGVkIHRvIG5vdCByZWx5IG9u
IG5vIGluaXRpYWwgY29ubmVjdGlvbiByZXVzZS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
dXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29u
bG9hZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0aW9uLgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2Ft
ZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55
bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzOiBBZGRlZC4KKyAgICAgICAg
KGFzeW5jX3Rlc3QudC50LnN0ZXBfdGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
Z2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9pZGxoYXJuZXNzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luYyBpZGxfYXJyYXkp
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0
aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanM6IEFkZGVkLgorICAgICAgICAocHJv
bWlzZV90ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2Jz
ZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3Qu
dC50LnN0ZXBfdGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qczogQWRkZWQuCisgICAg
ICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190
ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qczogQWRkZWQuCisgICAg
ICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNf
dGVzdCk6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qczogQWRkZWQuCisgICAgICAg
IChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVz
dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW1hcmstbWVhc3VyZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qczogQWRkZWQuCisg
ICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tcmVzb3VyY2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qczogQWRkZWQuCisgICAg
ICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5Lmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMv
d29ya2VyLWludmFsaWQtZW50cmllcy5qczogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3Jt
YW5jZS1vYnNlcnZlci5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMgZnVydGhl
ciBpbnZlc3RpZ2F0aW9uLiAgSXQncyBhIGJpbmRpbmdzIGdlbmVyYXRpb24gcHJvYmxlbSBJJ3Zl
IHVuc3VjY2Vzc2Z1bGx5IGxvb2tlZCBpbnRvIGJlZm9yZS4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanM6
CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGlt
aW5nLXJlc29sdXRpb24uYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RUaW1lUmVzb2x1dGlv
bik6CisgICAgICAgICh0aW1lQnlVc2VyVGltaW5nKToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2
ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAg
IFRoaXMgZXhpc3RpbmcgdGVzdCBmYWlsdXJlIG5lZWRzIG1vcmUgaW52ZXN0aWdhdGlvbi4gIFdl
IGFyZSBwcm9iYWJseSBjbG9zZSB0byBhIGZpeCBhZnRlciB0aGlzIHBhdGNoLgorCiAyMDIxLTA1
LTE0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgUmVzb3VyY2UgVGltaW5nOiBzZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gMCB3aGVuIGEgY29u
bmVjdGlvbiBpcyByZS11c2VkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBlOTBiYTU0NjZhMGE5ZTBm
YmE0OWM4MmY1ZDFhMzUyYjc4YjczZTBmLi4yZTc2YjdiMDIyN2ZmOWNkNzAyMTQ5ZmE3NGI2YTYx
NjFlMzJkY2MwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTk0MCw2ICs5NDAsNyBAQCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5k
d2ljaC1uby1UQU8uc3ViLgogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJj
ZS10aW1pbmcvY29ycy1wcmVmbGlnaHQuYW55Lmh0bWwgWyBGYWlsdXJlIFBhc3MgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY3Jvc3NvcmlnaW4tc2Fu
ZHdpY2gtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3JpZ2luLXNhbmR3aWNoLXBhcnRpYWwt
VEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8u
aHR0cHMuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbWVkaWFjYXB0dXJlLXN0cmVhbXMvTWVkaWFTdHJlYW0tZGVmYXVsdC1mZWF0dXJlLXBv
bGljeS5odHRwcy5odG1sIFsgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIF0KIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXJlY29yZC9wYXNzdGhyb3VnaC9NZWRp
YVJlY29yZGVyLXBhc3N0aHJvdWdoLmh0dHBzLmh0bWwgWyBGYWlsdXJlIFRpbWVvdXQgUGFzcyBd
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
ZmIwZTBmMWY2N2E5YzZhYTJlN2U5MjFiMDllODVmOGQ5NzBiMjkwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9NRVRBLnltbApAQCAtMCwwICsxLDUgQEAKK3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1
Yi5pby9uYXZpZ2F0aW9uLXRpbWluZy8KK3N1Z2dlc3RlZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVn
YXIKKyAgLSBpZ3JpZ29yaWsKKyAgLSB5b2F2d2Vpc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMjhjMTBjZTM2YzNj
NzQ0ODQ4OTdlNWQyNGRhZmY5MTczOTVlYjU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21f
aW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAor
RGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgaW1hZ2UgZG9jdW1lbnQgaGFzIHBvc2l0
aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZl
IG9uIGltYWdlIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2lt
YWdlX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjM2NzQyZjBlZmY2ZDA3YzdjMDY5NGIwNjZkZmEwMTdmMGQxMDQyYmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5o
dG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBk
b21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudC48L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIg
Lz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0
d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5j
X3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1lbnQiKTsKKyAgICAgICAg
ZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0
aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9z
aXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwv
c2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAg
ICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUg
ZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0iLi4vaW1hZ2VzL3NtaWxl
eS5wbmciIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zN2Y2NzJkYjgyNzM0
OTk2YmFhNmQ0MTJkNjE5Y2VmN2JkYjgxZWNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21f
aW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAor
RGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgbWVkaWEgZG9jdW1lbnQgaGFzIHBvc2l0
aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZl
IG9uIG1lZGlhIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21l
ZGlhX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmU0ZTQ1NzI1ZDgzNjA1YjUxOWNlNzRlYThmZjQ1NjFkY2QzZDc1OTUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5o
dG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBk
b21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudC48L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIg
Lz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0
d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5j
X3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1lbnQiKTsKKyAgICAgICAg
ZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0
aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9z
aXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwv
c2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAg
ICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUg
ZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0iLi4vbWVkaWEvQTQubXA0
IiBvbmxvYWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZyYW1lPgorICAgIDwvYm9keT4KKzwvaHRtbD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mu
d2luZG93LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qcwppbmRleCA4Y2MzNTQ2YjNjMjdh
OWQ5M2VlNTYyMTU4NGQ4M2Q1NmEzMDg1MTNjLi43MmNmMGMzYTNkM2M4Y2I3NzU0MTYyNWEwNTU0
ZDg0NjRkN2MxMTJiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKQEAgLTEsMjEgKzEsMjAgQEAKIC8vIE1FVEE6IHNj
cmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcwogLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJj
ZXMvaWRsaGFybmVzcy5qcworLy8gTUVUQTogdGltZW91dD1sb25nCiAKICd1c2Ugc3RyaWN0JzsK
IAogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvCiAKIGlkbF90ZXN0
KAotICBbJ25hdmlnYXRpb24tdGltaW5nJ10sCi0gIFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZv
cm1hbmNlLXRpbWVsaW5lJywgJ2hyLXRpbWUnLCAnZG9tJ10sCi0gIGlkbF9hcnJheSA9PiB7Ci0g
ICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsKKyAgWyduYXZpZ2F0aW9uLXRpbWluZycsICdoci10
aW1lJ10sCisgIFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJywgJ2Rv
bScsICdodG1sJ10sCisgIGlkbEFycmF5ID0+IHsKKyAgICBpZGxBcnJheS5hZGRfb2JqZWN0cyh7
CiAgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3JtYW5jZSddLAogICAgICAgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uOiBbJ3BlcmZvcm1hbmNlLm5hdmlnYXRpb24nXSwKICAgICAgIFBlcmZvcm1hbmNl
VGltaW5nOiBbJ3BlcmZvcm1hbmNlLnRpbWluZyddLAotICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOiBbCi0gICAgICAgICdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIilbMF0nCi0gICAgICBdCisgICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
IFsncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdJ10KICAgICB9
KTsKICAgfQogKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3Qt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uOGIyM2I3NjA1ZDkyMmRhMzg3MmFiNTZkY2ZlYWM1ODNjMmVlNDJiMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2IHRpbWluZyAyIGluc3Rh
bmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5hdiB0aW1pbmcgMiBpbnN0
YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhlIHZhbHVlcyBhcmUgY29y
cmVjdCkuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFy
ZSBvYnNlcnZhYmxlLiBhc3NlcnRfdHJ1ZTogRXhwZWN0ZWQgYXR0cmlidXRlOiBkZWNvZGVkQm9k
eVNpemUuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhp
c3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iNjA0OGUwNjFiYTA1N2NkOTcxYjA4ZTAzMmJlNzE3ZjBhZDA0
ZDBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5o
dG1sCkBAIC0wLDAgKzEsNjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRp
b24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxl
PSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5r
IHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmct
Mi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hl
YWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxw
PlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbiBvYnNlcnZl
IG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhhdCB0aGUgZXhwZWN0ZWQgYXR0cmlidXRlcyBp
biBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3QgKGJ1dCBkb2VzIG5vdCB2YWxpZGF0ZSB0aGF0
IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLjwvcD4KKworICAgICAgICA8c2NyaXB0PgorICAgICAg
ICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAnY29ubmVjdEVuZCcs
CisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdkZWNvZGVkQm9keVNp
emUnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAgICdkb21Db250ZW50
TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0
JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAnZG9tYWluTG9v
a3VwRW5kJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAn
ZHVyYXRpb24nLAorICAgICAgICAgICAgJ2VuY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAn
ZW50cnlUeXBlJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAgICdpbml0
aWF0b3JUeXBlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2xv
YWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICduYW1lJywKKyAgICAgICAgICAgICduZXh0SG9w
UHJvdG9jb2wnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3Jl
ZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdy
ZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdy
ZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAg
ICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAg
ICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAg
ICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0
KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBlbnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJp
ZXMoKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwg
MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUaGVyZSBzaG91bGQgYmUgb25seSBvbmUgbmF2
aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ldIGluIGVu
dHJpZXNbMF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGF0dHJpYnV0
ZTogIiArIG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ldICsgIi4iKTsKKyAgICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAg
ICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAp
OworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9u
Il19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgZW50cmll
cyBhcmUgb2JzZXJ2YWJsZS4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmI0OTlmOGFlZGRjOWJmMzZlM2ViNTFjYjY4YjY5Nzc4ODgyMGIwMmIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRo
YXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBh
dHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBl
Y3RlZCB2YWx1ZXMuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0
YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIGFzc2VydF90cnVlOiBFeHBlY3RlZCB0cmFuc2Zl
clNpemUgdG8gYmUgZ3JlYXRlciB0aGFuIGVuY29kZWRCb2R5U2l6ZSBpbiB1bmNhY2hlZCBuYXZp
Z2F0aW9uLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192
YWx1ZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OTgwOWU0MWRkZDdmNjhiMWQzZmE2OTc5Y2EwZDZmYjE1
MzhhNGU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1
ZXMuaHRtbApAQCAtMCwwICsxLDEzNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8
aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIg
dGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAg
PGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRp
bWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+
CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGlt
aW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWlu
IG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuPC9wPgorCisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgIC8vIEhvc3QgbmFtZXMgYW5kIHBvcnRzIG1heSBiZSBjb25m
aWd1cmVkIGF0IHRlc3QgZXhlY3V0aW9uIHRpbWUuIFRoZQorICAgICAgICAvLyB3ZWItcGxhdGZv
cm0tdGVzdHMgc2VydmVyIG9mZmVycyB0d28gbWVjaGFuaXNtcyBmb3IgcmV0cmlldmluZyB0aGVz
ZQorICAgICAgICAvLyB2YWx1ZXMgZHluYW1pY2FsbHk6IGRpcmVjdCB0ZXh0IHN1YnN0aXR1dGlv
biBhbmQgdGhlIGBnZXQtaG9zdC1pbmZvYAorICAgICAgICAvLyBzY3JpcHQuIFRoZSBmb3JtZXIg
aXMgaW5hcHByb3ByYXRlIGZvciB0aGlzIHRlc3QgYmVjYXVzZSBpdAorICAgICAgICAvLyBpbmZs
dWVuY2VzIHRoZSBzaXplIG9mIHRoZSBkb2N1bWVudCwgYW5kIHRoaXMgdGVzdCBpbmNsdWRlcyBz
dGF0aWMKKyAgICAgICAgLy8gYXNzZXJ0aW9ucyBmb3IgdGhhdCB2YWx1ZS4KKyAgICAgICAgdmFy
IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKKyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0g
Imh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJTkFMX0hPU1QgKyAiOiIgKworICAgICAgICAgICAg
aG9zdF9pbmZvLkhUVFBfUE9SVCArCisgICAgICAgICAgICAiL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIjsKKyAgICAgICAgdmFyIG5hdlRpbWluZzJF
dmVudE9yZGVyMSA9IFsKKyAgICAgICAgICAgICdzdGFydFRpbWUnLAorICAgICAgICAgICAgJ3Jl
ZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAg
ICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRFbmQnLAorICAg
ICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywK
KyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFy
dCcsCisgICAgICAgICAgICAvLydzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAg
J2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAn
cmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAg
J2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAg
ICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2
ZW50T3JkZXIyID0gWworICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAg
J3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAg
ICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcKKyAgICAgICAg
XTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIzID0gWworICAgICAgICAgICAg
J2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAg
ICAgICAgICAgICdjb25uZWN0RW5kJworICAgICAgICBdOworCisgICAgICAgIC8vIE5hdmlnYXRp
b24gVGltaW5nIGF0dHJpYnV0ZXMgZm9yIGNvbXBhcmlzb24uCisgICAgICAgIHZhciBuYXZUaW1p
bmcxRXZlbnRPcmRlciA9IFsKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAg
ICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAg
ICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcsCisg
ICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywK
KyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisg
ICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcK
KyAgICAgICAgXTsKKworICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2
ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsrKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3Ry
dWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPD0gdGltaW5nRW50cnlbZXZlbnRPcmRlcltp
ICsgMV1dLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50T3JkZXJbaV0g
KyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltpICsgMV0gKyAiLiIpOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
CisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAg
ICAgICAgICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICJu
YXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBlbnRyeVR5cGUg
dG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZW50cmllc1swXS5uYW1lLCBleHBlY3RlZFVybCk7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cmllc1swXS5zdGFydFRpbWUsIDAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAiRXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlOiAwLiIpOworICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZHVyYXRpb24sIGVudHJpZXNbMF0ubG9hZEV2ZW50RW5k
LAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGR1cmF0aW9uIHRvIGJlIGVxdWFs
IHRvIGxvYWRFdmVudEVuZC4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyaWVzWzBdLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICJFeHBlY3RlZCBpbml0aWF0b3JUeXBlIHRvIGJlOiBuYXZpZ2F0aW9uLiIpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0ubmV4dEhvcFByb3RvY29s
LCAiaHR0cC8xLjEiKTsKKyAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyB0ZXN0IG1heSBmYWls
IHdoZW4gcmVzcG9uc2UgaXMgZnJvbSBjYWNoLiBEaXNhYmxlIG9yIGNsZWFuIGNhY2ggYmVmb3Jl
CisgICAgICAgICAgICAgICAgICAgIC8vIHJ1bm5pbmcgdGhpcyB0ZXN0LgorICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZShlbnRyaWVzWzBdLnRyYW5zZmVyU2l6ZSA+IGVudHJpZXNbMF0u
ZW5jb2RlZEJvZHlTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHRyYW5z
ZmVyU2l6ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5h
dmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1sw
XS5lbmNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGVudHJpZXNbMF0uZGVjb2RlZEJvZHlTaXplLCA1OTU1KTsKKyAgICAgICAgICAgICAgICAg
ICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRl
cjEpOworICAgICAgICAgICAgICAgICAgICAvLyBWZXJpZnkgaWYgdGhlIHJlcG9ydGVkIHRpbWlu
ZyBpcyBub3QgdGhhdCBkaWZmZXJlbnQKKyAgICAgICAgICAgICAgICAgICAgLy8gZnJvbSB3aGF0
IGlzIHJlcG9ydGVkIGJ5IE5hdmlnYXRpb24gVGltaW5nIDEuCisgICAgICAgICAgICAgICAgICAg
IG5hdlRpbWluZzFFdmVudE9yZGVyLmZvckVhY2goCisgICAgICAgICAgICAgICAgICAgICAgZnVu
Y3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nW2V2ZW50XSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgPiAwKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cmllc1swXVtldmVudF0sIDAsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50ICsgIiB0byBi
ZSBncmVhdGVyIHRoYW4gMCIpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgLy8gV2hlbiB1bmxvYWRFdmVudCBo
YXBwZW5zCisgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdWyJ1bmxvYWRFdmVudFN0
YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRP
cmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjIpOworICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gYSBzZWN1cmUgdHJhbnNwb3J0IGlz
IHVzZWQKKyAgICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInNlY3VyZUNvbm5lY3Rp
b25TdGFydCJdICE9IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2
ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIzKTsKKyAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAg
ICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZp
Z2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcg
aW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9v
cGVuLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQu
dHh0CmluZGV4IDQ5OTk5ZDg5NDExMDQ5NzliMzI2YTdmZmE2Yjg5MDE4NWE4ZmE2OGUuLjA1ZjIz
MGI5ZmIwZmFiOGQ4ZDdjYjU4NWVjOTg1YzIwODExMTlmZDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2Rv
Y3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdF
OiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1p
bmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2
YWxpZGF0ZXMgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KSByZW1haW5zIGNvbnN0YW50IHdoZW4gYSBkb2N1bWVudCBpcyByZXBsYWNlZCB1c2luZyBkb2N1
bWVudC5vcGVuLgpAQCAtOSw2ICs4LDUgQEAgVGhlIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUg
Y2hlY2tzIHRvIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24KIAogCiAK
LUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ld
XScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Bl
bi5odG1sCmluZGV4IGJjMDZlZDU4NDBhNzU1NWQxZTJhNjI1ODBjZjVhOTg4Y2E1OGE3MTguLmFh
MTA5NzI0OGRkMTMzZTVlNjFiMTdjNmY5MmYxNDM3NTc5YjU4OGMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVu
dF9vcGVuLmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgICA8c2Ny
aXB0PgorICAgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAg
ICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAgICAgICAg
ICdjb25uZWN0RW5kJywKICAgICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0CmluZGV4IGE5N2M4NmJj
YjRmNjdmNTI0YjFiY2UzODk4Y2U1ZWQzMDc0NzhjYmUuLjM1YTU2YTNmZTU3NzI5ODFiZGMyYmM1
YWNlMDc5M2MxMDMxMjVmZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3Jl
cGxhY2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNl
ZC1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTEgQEAKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAt
IGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAx
IG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5s
b2FkIGhhbmRsZXIocykKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRo
aXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhIFBlcmZvcm1hbmNlTmF2aWdhdGluZ1RpbWluZyBjb3Jy
ZXNwb25kaW5nIHRvIGEgZGV0YWNoZWQgZG9jdW1lbnQgY2FuJ3QgYWNjZXNzIGEgZGlmZmVyZW50
IGRvY3VtZW50J3Mgc3RhdGUuCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEu
dHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3Vt
ZW50X3JlcGxhY2VkLmh0bWwKaW5kZXggYjkxMGY0NTNkMTI5NTFkMDFjYjU4NDg5OTc2NmI2NGZl
MDhlODM2Yy4uNTk3MmYyMGU5YmQ3ZmZkZjI3ZDMyYjViMzBiNjM5MTNjZWVlZWQwOSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCkBAIC04LDYgKzgsOCBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUg
fSk7CisKICAgICAgICAgICAgIHZhciBuYXZpZ2F0aW9uX2ZyYW1lOwogICAgICAgICAgICAgdmFy
IHBudDE7CiAgICAgICAgICAgICB2YXIgc3RlcCA9IDE7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3Jl
bW92ZWQtZXhwZWN0ZWQudHh0CmluZGV4IGI1ZjhiZWVmMzlmNjA5OTUyMzI0M2VjZTE5OWJkZGZi
ZDAxZjE2OTEuLjk3NzNkZGE1OWIzZmNhNmI4OGYzNDY4OGRjNjg4MTRiMDc3ZDU3OTkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CkBAIC00LDUgKzQsNSBAQCBE
ZXNjcmlwdGlvbgogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6dHlwZSgpJ3MgZGVmYXVsdCB2YWx1ZSBpcyBuYXZpZ2F0ZQogCiAKLUZBSUwgTmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQgdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ3BudC50eXBlJykKK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0
YXJ0LWV4cGVjdGVkLnR4dAppbmRleCA2YzMxYWZkMGIyOWIxMGU5Mzg4YjRmYzIxOTczY2UyYzZl
MTRjYTIwLi4zNzdjZTk4NjgwNmE0OWYyODFjNjFlYzE2YjBmMTEyMWNiMWRkZTMwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21f
dGhlX3N0YXJ0LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMuCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQuaHRtbAppbmRleCA3NzkwMDgxZDAxYzdiODI2MmM1MzRkMzk1MDg1NjkwZWJlMmRmZmU4
Li5hZDUwYzZhODdkMmI0NjYyOTdkYzBmMmViY2VmOTJhMzc2NTViMDEzIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1s
CkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIHRlc3QoZnVuY3Rpb24oKSB7CiAgIHZhciBuYXZp
Z2F0aW9uVGltaW5nMiA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCduYXZp
Z2F0aW9uJylbMF07Ci0gIGFzc2VydF90cnVlKG5hdmlnYXRpb25UaW1pbmcyICE9PSB1bmRlZmlu
ZWQpOworICBhc3NlcnRfbm90X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMiwgdW5kZWZpbmVkKTsK
ICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5lbnRyeVR5cGUsICJuYXZpZ2F0aW9u
Iik7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvblRpbWluZzIuc3RhcnRUaW1lLCAwKTsKICAg
YXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5pbml0aWF0b3JUeXBlLCAibmF2aWdhdGlv
biIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTE4NDg2MjkxNTAxYjVjYzRmMTcxMDMwMTY1ZDk2ZTA0YzdhZmVjYgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZm
ZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJk
b2N1bWVudCIpCisKKworUEFTUyBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVz
IGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4KKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGZiZmI0YTMwNjI1
NDI0ZThlODQyZWIyYjgwNjJkYTRlM2U4OTMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKQEAgLTAsMCArMSw3OCBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgi
PgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAg
ICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29n
bGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3Lncz
Lm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48
L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1p
bmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8
aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQg
bmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQg
YWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
L2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVu
dCIpPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBob3N0X2luZm8gPSBnZXRf
aG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJodHRwOi8vIiArIGhvc3Rf
aW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhvc3RfaW5mby5IVFRQX1BP
UlQgKyAiL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRt
bCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdj
b25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2Rl
Y29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAg
J2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRl
ZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAg
ICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAg
ICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAg
ICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAg
ICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAg
ICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAg
ICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAg
ICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAg
ICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6
ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAor
ICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0
JworICAgICAgICBdOworCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAg
ICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIGluc3RhbmNlMSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXTsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMiA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMyA9
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwpWzBdOworCisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmln
YXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwpLmxlbmd0aCwgMSwg
IkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIp
OworCisgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0
dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwgaW5zdGFuY2UyW25hdlRp
bWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0
aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGluc3RhbmNl
MVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGluc3RhbmNlM1tuYXZUaW1pbmcyQXR0cmlidXRl
c1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIG9ic2Vy
dmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAg
ICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZl
KHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0sICJQZXJmb3JtYW5j
ZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUg
ZGlmZmVyZW50IGFjY2Vzc29ycy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYTdmMzU2ZGYxMTZjOTI1NzI2MjkwODNlMDkxMDgwNDZjNzkxMjc5NAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw0IEBACisKKworUEFTUyBuYXZpZ2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlm
cmFtZSBVUkwgY2hhbmdlcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9p
ZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjBjMTQ0YmRhNDU0YmU4NjE4MGJiZmJhNTAzYzRkMWRhOTQ1NzMzZTQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbApAQCAtMCwwICsxLDQw
IEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8bWV0YSBjaGFyc2V0
PXV0Zi04PgorICAgIDx0aXRsZT5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcubmFtZSB1cGRh
dGVkIGluIGlmcmFtZXM8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlw
dD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbiAodCkgeworICB2YXIgaWZyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQo
aWZyKTsKKworICBpZnIuc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIjsKKyAg
YXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9ubG9hZCA9IGZ1bmN0aW9u
KCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdh
dGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1lLCBpZnIu
Y29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdhdGlvbiBuYW1lIG1hdGNo
ZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3RydWUoaWZyLmNvbnRlbnRX
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUu
ZW5kc1dpdGgoImJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1lIGlzIGJs
YW5rX3BhZ2VfZ3JlZW4uaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7CisK
KworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgc2V0VGltZW91dChyZXNvbHZlLCAx
MDApOyB9KTsKKyAgaWZyLnNyYyA9InJlc291cmNlcy9ibGFua19wYWdlX3llbGxvdy5odG1sIjsK
KworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVu
Y3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBu
YXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRX
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUs
IGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUg
bWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29u
dGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0u
bmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1l
IGlzIGJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKTsKKyAgICAgIHJlc29sdmUoKTsKKyAgICB9Cisg
IH0pOworfSwgIm5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBjaGFuZ2Vz
Iik7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0CmluZGV4IDRiMjBl
YzZmOWIyMDhjNzNkODVhOTQ0ZDg5YTFiN2I4ZDg0MGVhOTAuLmVkYWE5Mjg4YTlhZmI2ZTJjY2Nh
MWM0MzdkNWRhY2E1OWZmYWFmYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRl
X3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDcgQEAKLUNPTlNPTEUg
TUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAndGltaW5nW3Byb3BlcnR5XScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1bWVu
dCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS4KIAogCi1IYXJuZXNzIEVycm9yIChG
QUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIg
V1BUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVu
dC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKaW5k
ZXggZjM5Y2EwNTc2OTU1OTk5ZWNhOGEwODMzMWU1NWNjMjkyNTgxNmYzNi4uNzVlNmUxMTNiNmRi
YTM2ODdkZjFjOGZkYmY5Yzk4M2E5ZmFlOGE2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKQEAgLTEzLDYgKzEzLDggQEAKICAgICAgICAgPHA+VGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGFsbCBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSBhdHRyaWJ1dGVzIHJlbWFpbiB1bmNoYW5nZWQgYWZ0
ZXIgYW4gaW4gZG9jdW1lbnQgbmF2aWdhdGlvbiAoVVJMIGZyYWdtZW50IGNoYW5nZSkuPC9wPgog
CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVl
IH0pOworCiAgICAgICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCiAgICAgICAg
ICAgICAgICAgJ2Nvbm5lY3RFbmQnLAogICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1l
eHBlY3RlZC50eHQKaW5kZXggOWUyY2FhNjIwZjVhZGViOWRhZGE0YzgyZGQxZDY4MzdjY2E3ZjEy
NS4uMmMwNDYzMGJhZTE1NmRhNzllMDUwMTdmM2ViYTU5YmNmYzlhN2FhNCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQu
dHh0CkBAIC0xLDYgKzEsNyBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxv
YWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFu
ZGxlcihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAt
IGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAx
IG9udW5sb2FkIGhhbmRsZXIocykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMg
dGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0udHlwZSB3aXRoIGEgZm9yd2FyZCBhbmQgYmFjayBuYXZpZ2F0aW9uLgpAQCAtMTMs
NiArMTQsNSBAQCBUaGlzIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIHRoZSB3
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZQogCiAKIAotSGFybmVzcyBFcnJvciAo
RkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCmlu
ZGV4IGM0YjU3NTgxMDY5MTEwM2RiNjljNjEwYjllYzY5NDI1MTEwZDc2MzUuLmQwMDQ1NDE1Yjg5
YzQ1ZWQ5YTFhODg5ZThiZTBhYmM4MTIzMDkyZDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUg
fSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmMzMGRjZTQ0ZDgzMTEwMzdjYjVjNzljZTI5MTlmMzA2ZmI0MGE2
YTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2
aWdhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLgorCisKK1BBU1MgTmF2
aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9uYXZpZ2F0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVmYWVmMWVjMGJiYjg4ZTVmYjE1YzJh
MzFmZDVmOTMzYzE2YTA5ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4K
KyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5v
cmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvI3NlYy1uYXZpZ2F0aW9uLXRpbWluZy1pbnRlcmZhY2Ui
Lz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlM
aXN0LmdldEVudHJpZXMoKVswXS50eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlv
biB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2
ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAg
ICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAg
ICAgICB9LCAiTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICA8L3Nj
cmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPgorICAgICAgICAg
ICAgRGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD4KKyAgICAgICAgICAgIFRoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBuYXZpZ2F0ZS48L3A+CisKKyAgICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVs
b2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQt
ZXhwZWN0ZWQudHh0CmluZGV4IDcxYzQ3ZTViOGRmN2E1MWVlOGViZGU2OThhZTg1NmVhNjcyM2E1
ODAuLmE0ZDZiZGE2ZDQ0OWYxYWUxZjZiYjU4ZGM1ODI2NWUzNmVhYWFlN2IgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScpCiBEZXNjcmlwdGlvbgog
CiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLih0eXBlL3VubG9hZEV2ZW50RW5kL3VubG9h
ZEV2ZW50U3RhcnQpIHdpdGggYSByZWxvYWRlZCBuYXZpZ2F0aW9uLgpAQCAtMTAsNiArOSw1IEBA
IFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLnVu
bG9hZEV2ZW50U3RhcnQgPiAwIGFmdGVyCiBUaGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKS51bmxvYWRFdmVudEVuZCA+IDAgYWZ0ZXIgcmVsb2FkCiAK
IAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScpCi0KK1BBU1Mg
TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X3JlbG9hZC5odG1sCmluZGV4IDc0Yjg1YzlkYmI1ZTAzMjY2YzBiYTAxNDVhZDQ1ZDY3YTAyNWZk
MGMuLjBmMDNmMDdjNTdjOWMxYWMzYzg2ODc0MWEyM2Q5ZjJlNmViYjJiMmIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2Ny
aXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDog
dHJ1ZSB9KTsKIAogICAgICAgICAgICAgdmFyIHJlbG9hZF9mcmFtZTsKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmln
aW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9m
aW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFkMzg5ODc2MWI4
NzE1MGQwYTc2NWFiMzFjMmU2MTk3NmQ5MjE2MTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJM
IGh0dHA6Ly93d3cubG9jYWxob3N0Ojg4MDAvY29tbW9uL3JlZGlyZWN0LW9wdC1pbi5weT9sb2Nh
dGlvbj1odHRwOi8vbG9jYWxob3N0Ojg4MDAvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2Js
YW5rX3BhZ2VfZ3JlZW4uaHRtbAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0
aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZv
ciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4gdGhl
IGZpbmFsIGRvY3VtZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uCisKKwor
CitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworTk9UUlVOIE5hdmln
YXRpb24gVGltaW5nIDIgV1BUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmZkZWZhMjAyNTAwYTQ0OTcxNmVhYWI1ZDJkNzU2MTZhYzQ3MzA1YTEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29y
aWdpbmFsX29yaWdpbi5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAg
ICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIg
Lz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9u
YXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4K
KyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91dGlscy5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVl
IH0pOworCisgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgY29uc3QgZnJhbWVfcGVyZm9ybWFuY2UgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZTsKKyAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlLAorICAgICAgICAgICAgICAgICAgICAibmF2aWdh
dGUiLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJl
IG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQsIDAs
CisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7
CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS5yZWRpcmVjdEVuZCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVj
dGVkIHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgZG9uZSgpOworICAg
ICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlk
YXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZQorICAgICAgICAgICB3aW5k
b3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0
U3RhcnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBu
YXZpZ2F0aW9uIHdoZW4gdGhlIGZpbmFsCisgICAgICAgICAgIGRvY3VtZW50IGlzIHRoZSBzYW1l
IGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uPC9wPgorCisgICAgICAgIDxpZnJhbWUgaWQ9ImZyYW1l
Q29udGV4dCIgc3JjPSIiIHN0eWxlPSJ3aWR0aDogMjUwcHg7IGhlaWdodDogMjUwcHg7Ij48L2lm
cmFtZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIC8vIGNvbWJpbmUgdGhlIHBhZ2Ug
b3JpZ2luIGFuZCByZWRpcmVjdCBvcmlnaW4gaW50byB0aGUgSUZSQU1FJ3Mgc3JjIFVSTAorICAg
ICAgICAgICAgY29uc3QgZGVzdFVybF9maXJzdCA9IG1ha2VfYWJzb2x1dGVfdXJsKHtzdWJkb21h
aW46ICJ3d3ciLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cGF0aDogIi9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5IiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXJ5OiAibG9jYXRpb249IiArIG1ha2VfYWJzb2x1
dGVfdXJsKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAge3BhdGg6ICIvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2Vf
Z3JlZW4uaHRtbCJ9KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfSk7CisgICAgICAgICAgICBjb25zdCBkZXN0VXJsID0gbWFrZV9hYnNvbHV0ZV91cmwoewor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogIi9jb21t
b24vcmVkaXJlY3QucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgZGVzdFVybF9maXJzdH0pOworICAgICAgICAgICAg
bGV0IGZyYW1lQ29udGV4dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQi
KTsKKyAgICAgICAgICAgIGZyYW1lQ29udGV4dC5vbmxvYWQgPSBvbmxvYWRfdGVzdDsKKyAgICAg
ICAgICAgIGZyYW1lQ29udGV4dC5zcmMgPSBkZXN0VXJsOworICAgICAgICA8L3NjcmlwdD4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CmluZGV4
IDcxZWQ0N2ZlMzVhMTQyZTQwZmY0NzkwNWY3Nzg4YTFkYzVhY2EwZmIuLjRlNzlhN2ZkYmEwODYx
NmY5NDUwOGRiZmZlODJjNTY5MDRjNGJiZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0
ZWQudHh0CkBAIC02LDYgKzYsNSBAQCBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2Yg
dGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZwogCiAKIAotSGFy
bmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQg
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVf
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxf
b3B0X2luLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRp
YWxfb3B0X2luLmh0bWwKaW5kZXggYzBkZDI0OTU0NWE2NDBlYzBjZGQ3NTliMjExNGFiNzI1YTYw
OTAzOS4uMGZlYjNiZmE3ZjFjMDEzOGU0YzlmOWUzZmQ0ZDM4M2U1ZWY2NTg1ZCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9v
cHRfaW4uaHRtbApAQCAtOSwxMyArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9
Ii9jb21tb24vdXRpbHMuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgotCi0gICAgICAg
ICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0Vu
dHJ5KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxl
bmd0aCAtIDE7IGkrKykgewotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmdF
bnRyeVtldmVudE9yZGVyW2ldXSA8IHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIgdG8g
YmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7Ci0gICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgfQorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVz
dDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAg
ICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lNzFhZTk0MDQxYWFhYzczOTQzZDIxYzJiNDIzNThmNzk3OWE0ZDJhCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZh
bHVlIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdLnJlZGlyZWN0Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQg
YW5kIHJlZGlyZWN0RW5kIGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9u
LgorCisKK1BBU1MgTmFpdmF0aW9uIHdpdGhvdXQgcmVkaXJlY3RzLgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9ub25lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTc0MzdlMWE1ZWYyYjYxYWU2NTc2MmJmYTM1MTYzMGVi
NDcxNGNkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUu
aHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmln
YXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRp
dGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxs
aW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1p
bmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAg
IDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUgb2YgdGhlIHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBh
dHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQgcmVkaXJlY3RFbmQgYXR0cmli
dXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uPC9wPgorCisgICAgICAgIDxzY3Jp
cHQ+CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFy
IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIg
bmF2VGltaW5nID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
OworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdENv
dW50LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RDb3VudCB0byBiZSAwLiIpOworICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdFN0YXJ0LCAwLCAiRXhwZWN0
ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdEVuZCwgMCwgIkV4cGVjdGVkIHJlZGlyZWN0RW5kIHRv
IGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAg
ICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAg
ICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmln
YXRpb24iXX0pOworCisgICAgICAgIH0sICJOYWl2YXRpb24gd2l0aG91dCByZWRpcmVjdHMuIik7
CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4
dAppbmRleCAwNGEyNDhjZGU1MDFkMjY4OTRiMjIwN2ZlOWFmNWY1NTBkMjBjYmM3Li40ZmIxNWNh
ZmNlN2U2MTcyZWQyZWY5YjlmMTNjODQ3MWY1OTYzZTk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsOSBAQAotQ09OU09MRSBNRVNT
QUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0aW9uX2VudHJ5LnR5cGUnKQorQ09OU09MRSBNRVNTQUdFOiBFcnJvcjogYXNzZXJ0X3Ry
dWU6IEV4cGVjdGVkIHN0YXJ0VGltZSB0byBiZSBubyBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFy
dC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxp
ZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLnJlZGlyZWN0Q291bnQg
YW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVz
IGZvciBhIHNhbWUtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24uCiAKIAog
Ci1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZW50cnkudHlwZScpCi0KK0ZB
SUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgRXJyb3I6IGFzc2VydF90cnVlOiBFeHBlY3RlZCBz
dGFydFRpbWUgdG8gYmUgbm8gZ3JlYXRlciB0aGFuIHJlZGlyZWN0U3RhcnQuIGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZl
ci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKaW5kZXggMWQ3ZjZj
OTI4Y2U2M2M5NGVkYzE0OTFkMjg4M2M4NzMzMWUzODcyMi4uOWVjMjk5MmJlZjU4ZWM2ZTAzMDRm
YjE1Mjg4MTQwNTkwNDFmMzE0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKQEAg
LTksNiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KIAogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0
dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5
VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgewogICAgICAgICAgICAg
ICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKaW5kZXggYTA5MTZj
NDU4YzYyODJkMzFkNTM4NDhkNzlmNTM3NGNlZjQyNzVjNi4uZTgxY2NlZGE5ZWJmM2VkNzU4MzAz
NzI2MTU5OWZkOTkxOTNkMWM4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
eHNlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZl
ci1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZh
bHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAK
IAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BlcmZvcm1hbmNlTmFtZXNwYWNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRp
bWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbAppbmRleCAwNmM5Yjdm
M2I2NzhhMjI3NTFhMWU4ZTFhNTcwMjgyMTZhYjIxODc5Li5kOGFjYzgwNTRkODdhOTcyZDAwNTk2
ZDk3OTQ4NTg0N2NmNmNmNGU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94
c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sCkBA
IC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
c3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxz
LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2lu
Z2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkK
ICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5z
dGFuY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2Vz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzY4YzUwMDQ2NWQ3N2I1ZDFhOTgzYmM0NjZiZTFh
ZGU0N2ZlOTgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9p
bnN0YW5jZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5n
IDIgaW5zdGFuY2UuCisKKworRkFJTCBFYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWlu
ZyAyIGluc3RhbmNlLiBhc3NlcnRfZXF1YWxzOiBPbmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNl
IGV4aXN0cy4gZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3N2FiNmJhZTEwMWI3MDRkMTI2N2U4YjAzNDE2
MDExZjI4ZDY3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gx
PgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFjaCB3aW5kb3cgaGFzIGEg
dW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS48L3A+CisgICAgICAgIDxpZnJhbWUgaWQ9ImZy
YW1lQ29udGV4dCIgc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIiBzdHlsZT0i
ZGlzcGxheTpub25lOyI7PjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0PgorCisgICAgICAgICAg
ICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RF
bmQnLAorICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgICAgICdk
ZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAg
ICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAgICAgJ2Rv
bUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZG9tSW50ZXJhY3Rp
dmUnLAorICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgICAg
ICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAgICAgJ2R1cmF0aW9uJywKKyAgICAg
ICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICAgICAnZW50cnlUeXBl
JywKKyAgICAgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAgICAgJ2luaXRp
YXRvclR5cGUnLAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAg
ICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAor
ICAgICAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVxdWVz
dFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgICAg
ICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0
JywKKyAgICAgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICAgICAndHlw
ZScsCisgICAgICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAn
dW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAg
ICAgICAgXTsKKworICAgICAgICAgICAgZnVuY3Rpb24gbm90X3NhbWVfaW5zdGFuY2UoaW5zdGFu
Y2UxLCBpbnN0YW5jZTIsIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICBmb3IgKHZhciBp
IGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlMVthdHRy
aWJ1dGVzW2ldXSAhPSBpbnN0YW5jZTJbYXR0cmlidXRlc1tpXV0pCisgICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlM
aXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBu
YXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRl
bnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0
aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT25seSBvbmUgbmF2IHRpbWluZyBp
bnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWFpbl9mcmFt
ZV9pbnN0YW5jZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07
CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaWZyYW1lX2luc3RhbmNlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X3RydWUobm90X3NhbWVfaW5zdGFuY2UobWFpbl9mcmFtZV9pbnN0YW5jZSwgaWZy
YW1lX2luc3RhbmNlLCBuYXZUaW1pbmcyQXR0cmlidXRlcyksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIlR3byBuYXYgdGltaW5nIGluc3RhbmNlcyBhcmUgbm90IHRoZSBzYW1lIGluc3Rh
bmNlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAgICB9LCAiRWFjaCB3aW5k
b3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4iKTsKKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjBlYjFmNWZiMjQ0MjAwYzNiZjUwYTVlYWQ4ODZkNzg0Y2NhYjcyOAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitQ
ZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbgorCitOYXZpZ2F0aW9uIHdpbGwgcXVldWUg
YSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgbmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZh
YmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZp
Z2F0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0ZmIyYWZmOGVhYjc0ZTU5YzVhODRmYzJiY2Y0ODdm
MTIyZWM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sCkBAIC0w
LDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRs
ZT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNl
cnZlcnM6IG5hdmlnYXRpb248L2gxPgorPHA+CitOYXZpZ2F0aW9uIHdpbGwgPGEgaHJlZj0iaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4tcXVldWUtYS1wZXJm
b3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+LgorPC9wPgorPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAg
ICBmdW5jdGlvbiBjaGVja0VudHJ5KHBlcykgeworICAgICAgYXNzZXJ0X2VxdWFscyhwZXMubGVu
Z3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgZW50cnkiKTsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMocGVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLCAiZW50cnlUeXBlIGlzIFwi
bmF2aWdhdGlvblwiIik7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlc1swXS5uYW1lLCB3aW5kb3cu
bG9jYXRpb24udG9TdHJpbmcoKSwgIm5hbWUgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIGRvY3VtZW50
Iik7CisgICAgfQorICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAor
ICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAg
ICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGNoZWNrRW50
cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSk7CisgICAgICAgICAg
Y2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSh3aW5kb3cubG9jYXRpb24udG9T
dHJpbmcoKSkpOworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKyAgfSwgIm5hdmlnYXRpb24gZW50cnkgaXMgb2Jz
ZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJm
dGVzdGhhcm5lc3MuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMKaW5k
ZXggM2VmYjUyNzgzZjFlNWRjYjBkNDJhYWQxMWFlYzJhOWU0NzI1N2QzMy4uMGMyN2MyZWUzMDdm
NGI4MDk5YTZiNGM1YjA0OTdiYWY1MGI2MTEwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMv
d2VicGVyZnRlc3RoYXJuZXNzLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFy
bmVzcy5qcwpAQCAtNDIsMjUgKzQyLDI1IEBAIGZ1bmN0aW9uIHRlc3RfbmFtZXNwYWNlKGNoaWxk
X25hbWUsIHNraXBfcm9vdCkKIHsKICAgICBpZiAoc2tpcF9yb290ID09PSB1bmRlZmluZWQpIHsK
ICAgICAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UgaXMgZGVmaW5lZCc7Ci0gICAg
ICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFj
ZSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cpOworICAgICAgICB3cF90ZXN0KGZ1bmN0aW9u
ICgpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2UsIHVuZGVmaW5lZCwg
bXNnKTsgfSwgbXNnKTsKICAgICB9CiAKICAgICBpZiAoY2hpbGRfbmFtZSAhPT0gdW5kZWZpbmVk
KSB7CiAgICAgICAgIHZhciBtc2cyID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgY2hpbGRfbmFt
ZSArICcgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90
cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdICE9PSB1bmRlZmluZWQsIG1zZzIp
OyB9LCBtc2cyKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVh
bHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0sIHVuZGVmaW5lZCwgbXNnMik7IH0s
IG1zZzIpOwogICAgIH0KIH0KIAogZnVuY3Rpb24gdGVzdF9hdHRyaWJ1dGVfZXhpc3RzKHBhcmVu
dF9uYW1lLCBhdHRyaWJ1dGVfbmFtZSwgcHJvcGVydGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dp
bmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBhdHRyaWJ1dGVfbmFtZSAr
ICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90cnVlKHBl
cmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVfbmFtZV0gIT09IHVuZGVm
aW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkg
eyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bYXR0
cmlidXRlX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CiB9CiAK
IGZ1bmN0aW9uIHRlc3RfZW51bShwYXJlbnRfbmFtZSwgZW51bV9uYW1lLCB2YWx1ZSwgcHJvcGVy
dGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25h
bWUgKyAnLicgKyBlbnVtX25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAgICB3cF90ZXN0KGZ1bmN0
aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51
bV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdw
X3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNl
W3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVy
dGllcyk7CiAKICAgICBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSAr
ICcuJyArIGVudW1fbmFtZSArICcgPSAnICsgdmFsdWU7CiAgICAgd3BfdGVzdChmdW5jdGlvbigp
IHsgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9u
YW1lXSwgdmFsdWUsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CkBAIC0xMjIsNSArMTIyLDUg
QEAgZnVuY3Rpb24gdGVzdF9ncmVhdGVyX29yX2VxdWFscyh2YWx1ZSwgZ3JlYXRlcl90aGFuLCBt
c2csIHByb3BlcnRpZXMpCiAKIGZ1bmN0aW9uIHRlc3Rfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1
YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0
X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAg
ICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1YWxz
LCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUt
Y29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1j
b25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMTA4
ZDJlODMzNjRhZDE0ZmRmMmEzMDRmN2Q1NDgyODc4MGQ5ZWEyCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZh
bHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
LWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTJhMjU5ZWNkNDI1YzIxMmQ4
OWViMTE0OTgxZDRmMTJlODBmMzA1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29u
bmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorPHRpdGxl
Pk5hdmlnYXRpb24gVGltaW5nIHNlY3VyZWNvbm5lY3Rpb25zdGFydCByZXVzZTwvdGl0bGU+Cis8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
PgorY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQg
dmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVzZWQiKTsKK3dpbmRvdy5hZGRFdmVudExpc3Rl
bmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1bmNfZG9uZShlID0+IHsKKyAgYXNzZXJ0X2VxdWFscyhl
LmRhdGEsICJQQVNTIik7Cit9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMv
c2VjdXJlLWNvbm5lY3Rpb24taW50ZXJpbS5odG1sIj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1
cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Nl
Y3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4
MjIwNGQwNjUxNjY5NTdhYTkwMDk4OWNlYzdkYWNjYWNkZTM4NDg2Li41MTgyNzU4M2FkMzdlMWUx
MmMxYWJmNWYyMWM4Y2U2MjUwZTMxMDBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0
aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9j
b25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUg
QEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBoYXMg
YSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3Rh
cnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2Vu
dHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitGQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0
aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dyZWF0ZXJfdGhhbjogc2VjdXJlQ29ubmVjdGlv
blN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBn
b3QgMAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0MWEyNWZjNTAuLmQyZWE5
NTA0NzZkOTFiZTU2MDQ2ZDAzM2QxZmNkNjYxZDQ3OTgwZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3Vw
cG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9y
dGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCi1G
QUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLiBhc3NlcnRfdHJ1
ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICduYXZpZ2F0aW9uJyBpbiBQZXJmb3JtYW5jZU9i
c2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1Mg
c3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuCitQQVNTICduYXZpZ2F0
aW9uJyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZhYmxlLgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1
cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1
cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTc5
NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uMzQzODM1YTQyODQ1M2UwYjFj
ZjY1ZDg0ZGI4MzNmOTFhYmM4MzYxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdh
dGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25h
dmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDYgQEAKIAot
RkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4gYXNzZXJ0X3Ry
dWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicgaW4gUGVyZm9ybWFuY2VP
YnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitIYXJu
ZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworUEFTUyBzdXBwb3J0ZWRFbnRy
eVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1RJTUVPVVQgJ25hdmlnYXRpb24nIGVudHJp
ZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3QgdGltZWQgb3V0CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50
X29ubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU5YTM4NGE1YmIzNzAwNGU4ZjcwNDI4
NWIzNTJlZWFiNDkxM2NlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9v
bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVj
b2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQg
aW4gdGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMg
aGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCBhc3NlcnRfZ3JlYXRl
cl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKK0ZB
SUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9u
bG9hZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290
IGEgInVuZGVmaW5lZCIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjYzE4NDkx
ZDYyMDI0ZjFkNGZhM2QyMGM1MTczYjMxMzI2OWIzZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKQEAgLTAsMCArMSw0OCBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgor
ICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gYXR0cmlidXRlczwv
dGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iTW96aWxsYSIgaHJlZj0i
aHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNwcm9jZXNzaW5n
LW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9wZXJmb3Jt
YW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+Cisg
ICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMg
dGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNpemUgYW5kIGRl
Y29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hlbiBjaGVja2Vk
IGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVu
dExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAgICAgICAgICBs
ZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnRy
YW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9n
cmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVkQm9keVNpemUs
IDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAgICAgIH0sICJU
ZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29u
dGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCB0LnN0ZXBfZnVu
Y19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJk
ZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVu
Y29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAg
ICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRC
b2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAgICAgICAgICAgfSwgIlRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBhIHRhc2sg
YWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkpOworICAgICAgICAgICAgfSwgIlRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBvbmxvYWQi
KTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQKaW5kZXggZGE1MjYw
YTIyM2QyMmFkMWFjNGQ1ZDI5NzI2YzRhZTI3M2ViMWIyOC4uM2ZlZWFkMWZkZTcyMDMzNzM2ZGVm
MWYwNGU1YjQ3MTA5OGIwZDM4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1v
cmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3Jp
Z2luLWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwxNiBAQCBUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgdGhlIHZhbHVlcyBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aQogCiAKIAotRkFJTCBSZWRpcmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0
LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgot
RkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUn
KSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQt
aW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnku
dHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQ
cmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3Vt
ZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9y
aWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBv
cmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3Nz
IG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jv
c3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91
cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRoIFRBTyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCitQQVNT
IFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4KK1BBU1MgUmVkaXJlY3Qg
Y2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BBU1MgU2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0
IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0
IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBv
cmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4KK1BBU1MgTm8gcHJldmlv
dXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1l
IG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3Jp
Z2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2lu
IHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJl
ZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBj
cm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRB
LnltbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvTUVUQS55bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODlmYWUxZGIwZDliN2FmZDIwMjcz
N2UzNDc1NGI0ZTg5MzI5OGQ0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwK
QEAgLTAsMCArMSw0IEBACitzcGVjOiBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2Ut
dGltZWxpbmUvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhlZ2FyCisgIC0gaWdyaWdv
cmlrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnku
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMDhiM2UzMjMxNDY1ODU3Y2YyNDhlNGFjZThlZjU3NDQ2OWExNDg2NAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwpAQCAtMCww
ICsxLDExIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsK
KyAgdC5zdGVwX3RpbWVvdXQoKCkgPT4geworICAgIC8vIEFmdGVyIGEgdGltZW91dCwgUGVyZm9y
bWFuY2VPYnNlcnZlciBzaG91bGQgc3RpbGwgcmVjZWl2ZSBlbnRyeSBpZiB1c2luZyB0aGUgYnVm
ZmVyZWQgZmxhZy4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcih0LnN0ZXBfZnVuY19kb25l
KGxpc3QgPT4geworICAgICAgY29uc3QgZW50cmllcyA9IGxpc3QuZ2V0RW50cmllcygpOworICAg
ICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwgMSwgJ1RoZXJlIHNob3VsZCBiZSAxIG1h
cmsgZW50cnkuJyk7CisgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlUeXBlLCAn
bWFyaycpOworICAgIH0pKS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7
CisgIH0sIDEwMCk7Cit9LCAnUGVyZm9ybWFuY2VPYnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcg
c2VlcyBlbnRyeSBhZnRlciB0aW1lb3V0Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVk
LWZsYWctb2JzZXJ2ZXIuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFu
eS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zMWRjMzljMTI4YWQ1NWMxM2VlZjY2NTgzYTY4ODg2MjJmODZiZjYz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5q
cwpAQCAtMCwwICsxLDE1IEBACithc3luY190ZXN0KCB0PT4geworICBmb3IgKGxldCBpID0gMDsg
aSA8IDUwOyBpKyspCisgICAgcGVyZm9ybWFuY2UubWFyaygnZm9vJyArIGkpOworICBsZXQgbWFy
a3NDcmVhdGVkID0gNTA7CisgIGxldCBtYXJrc1JlY2VpdmVkID0gMDsKKyAgbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgbWFya3NSZWNlaXZlZCArPSBsaXN0LmdldEVudHJp
ZXMoKS5sZW5ndGg7CisgICAgaWYgKG1hcmtzQ3JlYXRlZCA8IDEwMCkgeworICAgICAgcGVyZm9y
bWFuY2UubWFyaygnYmFyJyArIG1hcmtzQ3JlYXRlZCk7CisgICAgICBtYXJrc0NyZWF0ZWQrKzsK
KyAgICB9CisgICAgaWYgKG1hcmtzUmVjZWl2ZWQgPT0gMTAwKQorICAgICAgdC5kb25lKCk7Cisg
IH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKK30sICdQZXJmb3Jt
YW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzaG91bGQgc2VlIHBhc3QgYW5kIGZ1dHVy
ZSBlbnRyaWVzLicpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTY5MTkwODE5ZjUzZWI0NTM3ZGEwMTljOTBjYzMzYmQwZGEzZDhkZgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwzIEBACisKK1BBU1MgR2V0IGludmFsaWQgZW50cmllcyBmcm9tIHdvcmtlciBhbmQg
d2luZG93LgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMzZDY1ODllMjc1
ZTI2NTE4MGUwNTcxY2EzMTAzZGJmOWFhMTc5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0
aW9uKHQpIHsKKyAgcGVyZm9ybWFuY2UubWFyaygnd2luZG93TWFyaycpOworICBjb25zdCB3b3Jr
ZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcyIpOwor
ICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICBhc3NlcnRfZXF1YWxz
KGV2ZW50LmRhdGFbJ2ludmFsaWQnXSwgMCwgJ1RoZSB3b3JrZXIgbXVzdCBoYXZlIDAgaW52YWxp
ZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWFyayddLCAxLCAn
VGhlIHdvcmtlciBtdXN0IGhhdmUgMSBtYXJrIGVudHJ5LicpOworICAgIGFzc2VydF9lcXVhbHMo
ZXZlbnQuZGF0YVsnbWVhc3VyZSddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBtZWFzdXJl
IGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCdpbnZhbGlkJykubGVuZ3RoLCAwLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAg
aW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwgMSwKKyAgICAgICdUaGUgd2luZG93IG11c3QgaGF2
ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoLCAwLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBo
YXZlIDAgbWVhc3VyZSBlbnRyaWVzLicpCisgICAgdC5kb25lKCk7CisgIH0KK30sICdHZXQgaW52
YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cuJyk7Cis8L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL2lkbGhhcm5lc3MuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMyZWZlYmU5OGZmZDQ3MmVlMTAxMDAy
N2ZmOTY2YTFlZjkwN2YxN2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3Mu
YW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csd29ya2VyCisv
LyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9XZWJJRExQYXJzZXIuanMKKy8vIE1FVEE6IHNjcmlw
dD0vcmVzb3VyY2VzL2lkbGhhcm5lc3MuanMKKworLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lLworCisndXNlIHN0cmljdCc7CisKK2lkbF90ZXN0KAorICBbJ3Bl
cmZvcm1hbmNlLXRpbWVsaW5lJ10sCisgIFsnaHItdGltZScsICdkb20nXSwKKyAgYXN5bmMgaWRs
X2FycmF5ID0+IHsKKyAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMoeworICAgICAgUGVyZm9ybWFu
Y2U6IFsncGVyZm9ybWFuY2UnXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6IFsnb2JzZXJ2
ZXInXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6IFsnZW50cnlMaXN0J10s
CisgICAgfSk7CisKKyAgICBzZWxmLmVudHJ5TGlzdCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNv
bHZlLCByZWplY3QpID0+IHsKKyAgICAgIHNlbGYub2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihyZXNvbHZlKTsKKyAgICAgIG9ic2VydmVyLm9ic2VydmUoeyBlbnRyeVR5cGVzOiBb
J21hcmsnXSB9KTsKKyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3Rlc3QnKTsKKyAgICB9KTsKKyAg
fQorKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZl
cnMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnku
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNWRkNDRmYjE4ZmJkYjljM2MzMmY0NTM4ZDJlZjdlYzJjYWM0NzMwMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZl
cnMuYW55LmpzCkBAIC0wLDAgKzEsMzIgQEAKK3Byb21pc2VfdGVzdCgoKSA9PiB7CisgIC8vIFRo
ZSBmaXJzdCBwcm9taXNlIHdhaXRzIGZvciBvbmUgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byBy
ZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJvbWlzZTEgPSBuZXcgUHJvbWlzZShyZXNvbHZl
MSA9PiB7CisgICAgbGV0IG51bU9ic2VydmVkMSA9IDA7CisgICAgbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoKGVudHJ5TGlzdCwgb2JzKSA9PiB7CisgICAgICAvLyBUaGlzIGJ1ZmZlcmVkIGZsYWcg
b2JzZXJ2ZXIgaXMgY29uc3RydWN0ZWQgYWZ0ZXIgYSByZWd1bGFyIG9ic2VydmVyIGRldGVjdHMg
YSBtYXJrLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAg
IG51bU9ic2VydmVkMSArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChu
dW1PYnNlcnZlZDEgPT0gMykKKyAgICAgICAgICByZXNvbHZlMSgpOworICAgICAgfSkub2JzZXJ2
ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgICAgb2JzLmRpc2Nvbm5lY3Qo
KTsKKyAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbJ21hcmsnXX0pOworICAgIHBlcmZvcm1h
bmNlLm1hcmsoJ2ZvbycpOworICB9KTsKKyAgLy8gVGhlIHNlY29uZCBwcm9taXNlIHdhaXRzIGZv
ciBhbm90aGVyIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgdG8gcmVjZWl2ZSAzIGVudHJpZXMuCisg
IGNvbnN0IHByb21pc2UyID0gbmV3IFByb21pc2UocmVzb2x2ZTIgPT4geworICAgIHN0ZXBfdGlt
ZW91dCgoKSA9PiB7CisgICAgICBsZXQgbnVtT2JzZXJ2ZWQyID0gMDsKKyAgICAgIC8vIFRoaXMg
YnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBhIGRlbGF5IG9mIDEw
MG1zLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAgIG51
bU9ic2VydmVkMiArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChudW1P
YnNlcnZlZDIgPT0gMykKKyAgICAgICAgICByZXNvbHZlMigpOworICAgICAgfSkub2JzZXJ2ZSh7
dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgIH0sIDEwMCk7CisgICAgcGVyZm9y
bWFuY2UubWFyaygnYmFyJyk7CisgIH0pOworICBwZXJmb3JtYW5jZS5tYXJrKCdtZW93Jyk7Cisg
IC8vIFBhc3MgaWYgYW5kIG9ubHkgaWYgYm90aCBidWZmZXJlZCBvYnNlcnZlcnMgcmVjZWl2ZWQg
YWxsIDMgbWFyayBlbnRyaWVzLgorICByZXR1cm4gUHJvbWlzZS5hbGwoW3Byb21pc2UxLCBwcm9t
aXNlMl0pOworfSwgJ011bHRpcGxlIFBlcmZvcm1hbmNlT2JzZXJ2ZXJzIHdpdGggYnVmZmVyZWQg
ZmxhZyBzZWUgYWxsIGVudHJpZXMnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mNTQyY2Y3YzRhYWNmMDI5MTY2NWE4ZjQ5NzY1YWRkODg1ZWJjNDJkCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBA
QAorCisKK1BBU1MgVGVzdCB0aGF0IGEgcG9zdE1lc3NhZ2Ugb2YgYSBwZXJmb3JtYW5jZSBlbnRy
eSBmYWlscworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9ub3QtY2xvbmFibGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNjUxNzc2ZTVmNGI5NDUzMjhlOWRlMjY1
MWI4YTU5ZjExYjUzNDI2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUu
aHRtbApAQCAtMCwwICsxLDEwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgIGNvbnN0IHQgPSBh
c3luY190ZXN0KCJUZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5
IGZhaWxzIik7CisgIGFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0LnN0ZXBfZnVuY19kb25l
KGUgPT4geworICAgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIpOworICB9KSk7Cis8L3Nj
cmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbCI+PC9p
ZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEy
ODEwMGIwZmRiYTJlMDA1Nzk4MDlhNTgxOTM1ZDMxMmNmMTI0NWUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwpAQCAtMCwwICsxLDEyIEBA
Cithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsKKyAgLy8gVXNl
IGEgdGltZW91dCB0byBlbnN1cmUgdGhlIHJlbWFpbmRlciBvZiB0aGUgdGVzdCBydW5zIGFmdGVy
IHRoZSBlbnRyeSBpcyBjcmVhdGVkLgorICB0LnN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8g
T2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNldCB0byBmYWxzZSBzaG91bGQgbm90IHNlZSBl
bnRyeS4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoKSA9PiB7CisgICAgICBhc3NlcnRf
dW5yZWFjaGVkKCdTaG91bGQgbm90IGhhdmUgb2JzZXJ2ZWQgYW55IGVudHJ5IScpOworICAgIH0p
Lm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IGZhbHNlfSk7CisgICAgLy8gVXNlIGEg
dGltZW91dCB0byBnaXZlIHRpbWUgdG8gdGhlIG9ic2VydmVyLgorICAgIHQuc3RlcF90aW1lb3V0
KHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4ge30pLCAxMDApOworICB9LCAwKTsKK30sICdQZXJmb3Jt
YW5jZU9ic2VydmVyIHdpdGhvdXQgYnVmZmVyZWQgZmxhZyBzZXQgdG8gZmFsc2UgY2Fubm90IHNl
ZSBwYXN0IGVudHJpZXMuJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnkt
dG9qc29uLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjQ0ZjAxNTZlZWMxOTI0MTk3MDAyOGMyOGU1ODk3YmU0ZDZmMWNiODEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcwpAQCAt
MCwwICsxLDIxIEBACit0ZXN0KCgpID0+IHsKKyAgcGVyZm9ybWFuY2UubWFyaygnbWFya05hbWUn
KTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgnbWVhc3VyZU5hbWUnKTsKKworICBjb25zdCBlbnRy
aWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpOworICBjb25zdCBwZXJmb3JtYW5jZUVudHJ5
S2V5cyA9IFsKKyAgICAnbmFtZScsCisgICAgJ2VudHJ5VHlwZScsCisgICAgJ3N0YXJ0VGltZScs
CisgICAgJ2R1cmF0aW9uJworICBdOworICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVu
Z3RoOyArK2kpIHsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihlbnRyaWVzW2ldLnRvSlNPTiks
ICdmdW5jdGlvbicpOworICAgIGNvbnN0IGpzb24gPSBlbnRyaWVzW2ldLnRvSlNPTigpOworICAg
IGFzc2VydF9lcXVhbHModHlwZW9mKGpzb24pLCAnb2JqZWN0Jyk7CisgICAgZm9yIChjb25zdCBr
ZXkgb2YgcGVyZm9ybWFuY2VFbnRyeUtleXMpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoanNvbltr
ZXldLCBlbnRyaWVzW2ldW2tleV0sCisgICAgICAgIGBlbnRyaWVzWyR7aX1dLnRvSlNPTigpLiR7
a2V5fSBzaG91bGQgbWF0Y2ggZW50cmllc1ske2l9XS4ke2tleX1gKTsKKyAgICB9CisgIH0KK30s
ICdUZXN0IHRvSlNPTigpIGluIFBlcmZvcm1hbmNlRW50cnknKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRl
LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44ZjFiMDliYzM3NzEyMDgwMjQwMWRlMWIyNDdhYTU3ZGI3NDE0
YzY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55Lmpz
CkBAIC0wLDAgKzEsNjYgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5q
cworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgY2FsbGJhY2tDb3VudCA9
IDA7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAg
IHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNhbGxi
YWNrQ291bnQrKzsKKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAxKSB7CisgICAg
ICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAg
ICAgXSk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsi
XX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAgICAg
ICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMiIpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAy
KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWwor
ICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAg
ICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3Jl
LWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLW1lYXN1cmUiKTsKKyAgICAgICAgICAgIHNlbGYucGVy
Zm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8t
bWVhc3VyZSIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJt
ZWFzdXJlIl19KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazMiKTsK
KyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTMiKTsKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3Vu
dCA9PT0gMykgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCksIFsKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3Vy
ZTMifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyay1iZWZv
cmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSJ9LAorICAgICAgICAgICAgXSk7Cisg
ICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNl
cnZlLXN0YXRlLXRvLWJvdGgiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3Vy
ZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tYm90aCIpOworICAgICAg
ICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0p
OworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrNCIpOworICAgICAgICAg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlNCIpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSA0KSB7
CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAg
ICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLWJlZm9yZS1j
aGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIn0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmU0In0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm1hcms0In0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtZGlzY29ubmVjdCIpOworICAgICAgICAg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1kaXNjb25uZWN0Iik7
CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1hcmsoIm1hcmstYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWFmdGVyLWRpc2Nvbm5lY3QiKTsKKyAgICAg
ICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAg
ICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBjYWxsYmFjayBtdXN0IG5vdCBiZSBpbnZva2Vk
IGFmdGVyIGRpc2Nvbm5lY3RpbmciKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNl
cnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmUxIik7CisgIH0sICJQZXJmb3JtYW5jZU9ic2VydmVyIG1vZGlmaWNhdGlvbnMgaW5zaWRlIGNh
bGxiYWNrIHNob3VsZCB1cGRhdGUgZmlsdGVyaW5nIGFuZCBub3QgY2xlYXIgYnVmZmVyIik7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5h
bnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnku
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uY2FjOTdiZWEwNzU1YzExODI5NTZmZGY5NGM5OGVlNzhjYTQwYjAxNwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVk
LXR5cGVzLmFueS5qcwpAQCAtMCwwICsxLDE5IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFu
Y2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNl
cnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0
aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgLy8gVGhlcmUgc2hvdWxkIGJlIG5vIG1hcmsgZW50
cnkuCisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAg
ICAgIFt7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAiYiJ9XSk7CisgICAgICAgIHQuZG9u
ZSgpOworICAgICAgfSkKKyAgICApOworICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9
KTsKKyAgLy8gRGlzY29ubmVjdCB0aGUgb2JzZXJ2ZXIuCisgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgLy8gTm93LCBvbmx5IG9ic2VydmUgbWVhc3VyZS4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
dHlwZTogIm1lYXN1cmUifSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoImEiKTsKKyAgcGVyZm9ybWFu
Y2UubWVhc3VyZSgiYiIpOworfSwgIlR5cGVzIG9ic2VydmVkIGFyZSBmb3Jnb3R0ZW4gd2hlbiBk
aXNjb25uZWN0KCkgaXMgY2FsbGVkLiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25u
ZWN0LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY1
ZmI1YWE0M2JhNDYyNjhmOGMzNTVmZGM5M2M2ZjE4Mjk5NjhiNAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMKQEAgLTAsMCArMSwzNyBAQAorLy8gTUVUQTog
c2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAg
ICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3Nl
cnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAg
ICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJr
IiwgIm1lYXN1cmUiLCAibmF2aWdhdGlvbiJdfSk7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgdC5zdGVwX3RpbWVvdXQoZnVuY3Rpb24gKCkg
eworICAgICAgdC5kb25lKCk7CisgICAgfSwgMjAwMCk7CisgIH0sICJkaXNjb25uZWN0ZWQgY2Fs
bGJhY2tzIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKworICB0ZXN0KGZ1bmN0aW9uICgpIHsKKyAg
ICB2YXIgb2JzID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKCkgeyByZXR1cm4g
dHJ1ZTsgfSk7CisgICAgb2JzLmRpc2Nvbm5lY3QoKTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOwor
ICB9LCAiZGlzY29ubmVjdGluZyBhbiB1bmNvbm5lY3RlZCBvYnNlcnZlciBpcyBhIG5vLW9wIik7
CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlM
aXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11
c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIu
b2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1h
cmsoIm1hcmsxIik7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazIiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7Cisg
ICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgIkFuIG9ic2VydmVyIGRpc2Nvbm5l
Y3RlZCBhZnRlciBhIG1hcmsgbXVzdCBub3QgaGF2ZSBpdHMgY2FsbGJhY2sgaW52b2tlZCIpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55LmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1l
bnRyaWVzLXNvcnQuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwYzc4MWEzYzBjMDNiZjgxZTgyMDE2OGJk
ZjcwYjUzNjI3NTA0MGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29y
dC5hbnkuanMKQEAgLTAsMCArMSw2NCBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2Jz
ZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9yZWRf
ZW50cmllcyA9IFtdOworICAgIHZhciBzdG9yZWRfZW50cmllc19ieV90eXBlID0gW107CisgICAg
dmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9m
dW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworCisgICAgICAgICAgc3RvcmVkX2VudHJp
ZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5
X3R5cGUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpOworICAgICAgICAgIHN0
b3JlZF9lbnRyaWVzX2J5X25hbWUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibmFtZS1y
ZXBlYXQiKTsKKyAgICAgICAgICB2YXIgc3RhcnRUaW1lT2ZNYXJrMiA9IGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlOYW1lKCJtYXJrMiIpWzBdLnN0YXJ0VGltZTsKKworICAgICAgICAgIGNoZWNrU29y
dGVkKHN0b3JlZF9lbnRyaWVzKTsKKyAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJp
ZXMsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUx
In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9
LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwK
KyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0s
CisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAg
ICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSJ9LAor
ICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGlu
Zy1tYXJrMi0yIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1l
LXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1y
ZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9l
bnRyaWVzX2J5X3R5cGUpOworICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllc19i
eV90eXBlLCBbCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9
LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAg
IF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSk7Cisg
ICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X25hbWUsIFsKKyAgICAgICAg
ICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAg
ICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBd
KTsKKworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0LmRvbmUo
KTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5
cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmso
Im1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAg
IHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsxICE9PSBtYXJrMiBzdGFydFRpbWUgYnkgbWFraW5nIHN1
cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygi
bWFyazIiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAg
c2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTEiLCAibWFy
azIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBtYXJrMiAhPT0gbWFyazMgc3RhcnRUaW1lIGJ5
IG1ha2luZyBzdXJlIHBlcmZvcm1hbmNlLm5vdyBhZHZhbmNlcy4KKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1hcmsoIm5hbWUtcmVwZWF0Iik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlMyIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1tYXRjaGlu
Zy1tYXJrMi0yIiwgIm1hcmsyIik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbmFtZS1yZXBlYXQg
c3RhcnRUaW1lIHdpbGwgZGlmZmVyLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1y
ZXBlYXQiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2ls
bCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJuYW1lLXJlcGVhdCIpOwor
ICB9LCAiZ2V0RW50cmllcywgZ2V0RW50cmllc0J5VHlwZSwgZ2V0RW50cmllc0J5TmFtZSBzb3J0
IG9yZGVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55LmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNjE2OWQ1ZGJkNmUwZTIwNTA2
ZDIwMTQ2NTg1ZGJjODllNzUwYzI1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRl
bnRyaWVzLmFueS5qcwpAQCAtMCwwICsxLDM4IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFu
Y2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9i
c2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1
bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxp
c3QuZ2V0RW50cmllcygpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6
ICJtYXJrMSJ9XSwgImdldEVudHJpZXMiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRy
eUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeVR5cGUiKTsKKyAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtZWFzdXJlIikubGVu
Z3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVu
dHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlw
ZSgiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0
LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSIpOworICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIikubGVuZ3RoLCAw
LAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIp
OworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIjIz
NDU2NyIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggbm8g
ZXhwZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0
RW50cmllc0J5TmFtZSgibWFyazEiLCAibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUi
KTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJt
YXJrMSIsICJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5h
bWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIiwgIm1lYXN1cmUiKS5s
ZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAg
ICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIp
OworCisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgp
OworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVz
OiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgfSwg
ImdldEVudHJpZXMsIGdldEVudHJpZXNCeVR5cGUgYW5kIGdldEVudHJpZXNCeU5hbWUgd29yayIp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1tYXJrLW1lYXN1cmUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBiMjA1ZTA5NGM3NWUxMGJjMWI5M2Zm
OTY2YWVhMGZkMjNhNTg2ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVh
c3VyZS5hbnkuanMKQEAgLTAsMCArMSw2MSBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNl
b2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9y
ZWRfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7Cisg
ICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29u
Y2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlmIChzdG9yZWRfZW50cmll
cy5sZW5ndGggPj0gNCkgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVz
LAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisg
ICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAg
ICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAg
ICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn1dKTsKKyAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0pOworICB9LCAiZW50cmllcyBhcmUgb2Jz
ZXJ2YWJsZSIpOworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgbWFya19l
bnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
CisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAg
ICAgIG1hcmtfZW50cmllcyA9CisgICAgICAgICAgICBtYXJrX2VudHJpZXMuY29uY2F0KGVudHJ5
TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlmIChtYXJrX2VudHJpZXMubGVuZ3RoID49
IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhtYXJrX2VudHJpZXMsCisgICAgICAgICAg
ICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAgICAgICAgICAg
eyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn1dKTsKKyAgICAgICAgICAgIG9ic2Vy
dmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAg
ICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJt
YXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICB9LCAibWFyayBlbnRyaWVzIGFyZSBvYnNlcnZh
YmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBtZWFzdXJlX2Vu
dHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigK
KyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAg
ICAgbWVhc3VyZV9lbnRyaWVzID0KKyAgICAgICAgICAgIG1lYXN1cmVfZW50cmllcy5jb25jYXQo
ZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKG1lYXN1cmVfZW50cmllcy5s
ZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKG1lYXN1cmVfZW50cmllcywK
KyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9
LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIi
fV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmUyIik7CisgIH0sICJtZWFzdXJlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmODVlNTg1NmNlODczZjEyMWRjNTE1NDRjNTQ0YjQx
NDM5ZmEyNmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJJbml0LmJ1ZmZlcmVkCisKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNo
b3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKworCitQQVNTIFBlcmZv
cm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1
ZmZlcmVkIGVudHJpZXMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVk
LXR5cGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjJiYmEzOTZhNmI2OWViYWQ1NmFkNGYxYjEzNWNiOGFkNDlkMzIxYjcKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKQEAg
LTAsMCArMSwxNyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisK
K2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgY29uc3Qgb2JzZXJ2ZXIgID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7
CisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAg
IFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAiZWFybHkifV0pOworICAgICAgICBvYnNlcnZl
ci5kaXNjb25uZWN0KCk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAgfSkKKyAgICApOworICBw
ZXJmb3JtYW5jZS5tYXJrKCJlYXJseSIpOworICAvLyBUaGlzIGNhbGwgd2lsbCBub3QgdHJpZ2dl
ciBhbnl0aGluZy4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1hcmsifSk7CisgIC8vIFRo
aXMgY2FsbCBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIGNhbGwgYW5kIGRldGVjdCB0aGUg
ZWFybHkgbWFyay4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1hcmsiLCBidWZmZXJlZDog
dHJ1ZX0pOworfSwgIlR3byBjYWxscyBvZiBvYnNlcnZlKCkgd2l0aCB0aGUgc2FtZSAndHlwZScg
Y2F1c2Ugb3ZlcnJpZGUuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0OGYwZjM3NjRiZGE0Y2ViODhi
MmE4YmU0ZDY1ZjE2ODM2MjYyN2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2Vy
dmUuaHRtbApAQCAtMCwwICsxLDg2IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9
dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJ
bml0LmJ1ZmZlcmVkPC90aXRsZT4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9Imxvbmci
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3Jt
YW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8L2gxPgorPHA+
CitQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlv
dXNseSBidWZmZXJlZCBlbnRyaWVzCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlw
dD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9uIGluaXRUZXN0KCkg
eworICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2Jz
ZXJ2ZXIpIHsKKyAgICAgICAgZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9u
KGVudHJ5KSB7CisgICAgICAgICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgb2JzZXJ2ZWRFbnRyaWVzLnB1
c2goZW50cnkpOworICAgICAgICAgIGlmIChvYnNlcnZlZEVudHJpZXMubGVuZ3RoID09PSBlbnRy
eVR5cGVzLmxlbmd0aCkgeworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAg
ICAgICAgICAgcnVuVGVzdCgpOworICAgICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9KS5v
YnNlcnZlKHtlbnRyeVR5cGVzfSk7CisKKyAgICAgIC8vIGNyZWF0ZXMgYSBgcmVzb3VyY2VgIGVu
dHJ5CisgICAgICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAg
ICBpbWcuc3JjID0gIi4vcmVzb3VyY2VzL3NxdWFyZS5wbmciOworICAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChpbWcpOworCisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCJtYXJrTmFtZSIp
OyAvLyBjcmVhdGVzIGEgYG1hcmtgIGVudHJ5CisgICAgICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1lYXN1cmVgIGVudHJ5CisgICAgfQorICAgIGZ1
bmN0aW9uIHNob3VsZEV4Y2x1ZGUoZW50cnkpIHsKKyAgICAgIC8vIGV4Y2x1ZGUgYWxsIGByZXNv
dXJjZWAgZW50cmllcyB0aGF0IGFyZW4ndCBmb3IgInNxdWFyZS5wbmciCisgICAgICByZXR1cm4g
ZW50cnkuZW50cnlUeXBlID09PSAicmVzb3VyY2UiICYmCisgICAgICAgICAgICAgZW50cnkubmFt
ZS5pbmRleE9mKCJzcXVhcmUucG5nIikgPT09IC0xOworICAgIH0KKyAgICBmdW5jdGlvbiBydW5U
ZXN0KCkgeworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIGlzIGEgbm9wIGJlY2F1
c2Ugd2UndmUgYWxyZWFkeSBiZWVuIG5vdGlmaWVkIGFib3V0IGFsbCBvZiBvdXIgYGVudHJ5VHlw
ZXNgCisgICAgICB2YXIgcG9fbm9wID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgaWYgKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCkuZmluZChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIHJldHVybiAhc2hvdWxkRXhjbHVk
ZShlbnRyeSk7CisgICAgICAgIH0pKSB7CisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgidGhp
cyBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbGxiYWNrIHNob3VsZCBuZXZlciBiZSBjYWxsZWQiKTsK
KyAgICAgICAgfQorICAgICAgfSk7CisgICAgICBwb19ub3Aub2JzZXJ2ZSh7CisgICAgICAgIGVu
dHJ5VHlwZXMsCisgICAgICB9KTsKKworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVy
IHNob3VsZCBiZSBub3RpZmllZCBhYm91dCB0aGUgcHJldmlvdXNseQorICAgICAgLy8gYnVmZmVy
ZWQgbWFyayBlbnRyeSBvbmx5CisgICAgICBjb25zdCBidWZmZXJlZEVudHJpZXMgPSBbXTsKKyAg
ICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVy
KSB7CisgICAgICAgIGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZm9yRWFjaChmdW5jdGlvbihlbnRy
eSkgeworICAgICAgICAgIGlmIChzaG91bGRFeGNsdWRlKGVudHJ5KSkgeworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGJ1ZmZlcmVkRW50cmllcy5wdXNoKGVu
dHJ5KTsKKyAgICAgICAgICBpZiAoYnVmZmVyZWRFbnRyaWVzLmxlbmd0aCA9PT0gMSkgeworICAg
ICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcG9fbm9wLmRpc2Nv
bm5lY3QoKTsKKyAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBidWZmZXJlZEVudHJpZXMubGVu
Z3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhidWZmZXJlZEVudHJpZXNb
aV0uZW50cnlUeXBlLCAibWFyayIpCisgICAgICAgICAgICB9CisgICAgICAgICAgICB0LmRvbmUo
KTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOworICAgICAgfSkub2JzZXJ2ZSh7CisgICAgICAg
IHR5cGU6ICJtYXJrIiwKKyAgICAgICAgYnVmZmVyZWQ6IHRydWUKKyAgICAgIH0pOworICAgIH0K
KworICAgIGNvbnN0IGVudHJ5VHlwZXMgPSBbIm5hdmlnYXRpb24iLCAicmVzb3VyY2UiLCAibWFy
ayIsICJtZWFzdXJlIl07CisgICAgY29uc3Qgb2JzZXJ2ZWRFbnRyaWVzID0gW107CisgICAgaW5p
dFRlc3QoKTsKKyAgfSwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCBy
ZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMiKTsKKworPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVz
b3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFlZWU2NWU5ZjlhYjVmYjIzMzczZWI5ZDhh
NzBhMzM5YzA1YTAyMzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiByZXNvdXJj
ZQorCitOZXcgcmVzb3VyY2VzIHdpbGwgcXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BB
U1MgcmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXJlc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MDBjMTczZWVhZTkyMWZiZWNjM2VlZWE1NGQ4YWRmYTZiOWVkNTM2NQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUg
SFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6
IHJlc291cmNlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJwZXJmb3JtYW5jZW9ic2VydmVycy5qcyI+PC9zY3Jp
cHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC9oMT4KKzxwPgorTmV3IHJl
c291cmNlcyB3aWxsIDxhIGhyZWY9Imh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10
aW1lbGluZS8jZGZuLXF1ZXVlLWEtcGVyZm9ybWFuY2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5j
ZUVudHJ5PC9hPi4KKzwvcD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3lu
Y190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVuY3Rpb24gcGF0aChwYXRobmFtZSkgeworICAg
ICAgdmFyIGZpbGVuYW1lID0gcGF0aG5hbWUuc3Vic3RyaW5nKHBhdGhuYW1lLmxhc3RJbmRleE9m
KCcvJykrMSk7CisgICAgICByZXR1cm4gcGF0aG5hbWUuc3Vic3RyaW5nKDAsIHBhdGhuYW1lLmxl
bmd0aCAtIGZpbGVuYW1lLmxlbmd0aCk7CisgICAgfQorICAgIHZhciBnVW5pcXVlQ291bnRlciA9
IDA7CisgICAgZnVuY3Rpb24gZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKSB7CisgICAgICByZXR1cm4g
RGF0ZS5ub3coKSArICItIiArICgrK2dVbmlxdWVDb3VudGVyKTsKKyAgICB9CisgICAgdmFyIHN0
b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIGltZ19sb2NhdGlvbiA9IGRvY3VtZW50LmxvY2F0
aW9uLm9yaWdpbiArIHBhdGgoZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUpCisgICAgICAgKyAi
cmVzb3VyY2VzL3NxdWFyZS5wbmc/cmFuZG9tPSI7CisgICAgdmFyIGltZzEgPSBpbWdfbG9jYXRp
b24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpOworICAgIHZhciBpbWcyID0gaW1nX2xvY2F0aW9u
ICsgZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwg
b2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2Vu
dHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpKTsKKyAg
ICAgICAgICBpZiAoc3RvcmVkX2VudHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNo
ZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAi
cmVzb3VyY2UiLCBuYW1lOiBpbWcxfSwKKyAgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAicmVz
b3VyY2UiLCBuYW1lOiBpbWcyfV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAg
KTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbInJlc291cmNlIl19KTsKKyAg
ICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9
IGltZzE7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworICAgIGltZyA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOworICAgIGltZy5zcmMgPSBpbWcyOworICAgIGRv
Y3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsKKyAgfSwgInJlc291cmNlIGVudHJpZXMgYXJl
IG9ic2VydmFibGUiKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVj
b3Jkcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
NmFkMzk3YjBhNWMzNzlkMDEyOWQ0M2M5Mjk1MmJjNmM4YzVjMGNmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMKQEAgLTAsMCArMSwzNCBAQAorLy8gTUVU
QTogdGl0bGU9UGVyZm9ybWFuY2VPYnNlcnZlcjogdGFrZVJlY29yZHMKKy8vIE1FVEE6IHNjcmlw
dD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50
cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVGhpcyBjYWxsYmFj
ayBzaG91bGQgbm90IGhhdmUgYmVlbiBjYWxsZWQuJykKKyAgICB9KTsKKyAgICBsZXQgZW50cmll
cyA9IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtd
LCAnTm8gcmVjb3JkcyBiZWZvcmUgb2JzZXJ2ZScpOworICAgIG9ic2VydmVyLm9ic2VydmUoe2Vu
dHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2Yob2JzZXJ2ZXIu
dGFrZVJlY29yZHMpLCAnZnVuY3Rpb24nKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJl
Y29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRzIGp1c3Qg
ZnJvbSBvYnNlcnZlJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYScpOworICAgIHBlcmZvcm1h
bmNlLm1hcmsoJ2InKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAg
ICBjaGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1l
OiAnYSd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYid9CisgICAgXSk7Cisg
ICAgcGVyZm9ybWFuY2UubWFyaygnYycpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2QnKTsKKyAg
ICBwZXJmb3JtYW5jZS5tYXJrKCdlJyk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNv
cmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFsKKyAgICAgIHtlbnRyeVR5cGU6ICdt
YXJrJywgbmFtZTogJ2MnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2QnfSwK
KyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2UnfQorICAgIF0pOworICAgIGVudHJp
ZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBb
XSwgJ05vIGVudHJpZXMgcmlnaHQgYWZ0ZXIgdGFrZVJlY29yZHMnKTsKKyAgICBvYnNlcnZlci5k
aXNjb25uZWN0KCk7CisgICAgdC5kb25lKCk7CisgIH0sICJUZXN0IFBlcmZvcm1hbmNlT2JzZXJ2
ZXIncyB0YWtlUmVjb3JkcygpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0
bWVzc2FnZS1lbnRyeS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnku
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lZjViZTczMzk1YjQ5ZDg5NWEyNTg5YmU1NDdhN2YzOTUwZjQxNmJh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnku
aHRtbApAQCAtMCwwICsxLDE3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQ+CithZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgKCkgPT4geworICBjb25zdCBlbnRyeSA9IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgdHJ5IHsKKyAgICB3aW5kb3cudG9w
LnBvc3RNZXNzYWdlKGVudHJ5LCAiKiIpOworICB9IGNhdGNoKGVycm9yKSB7CisgICAgaWYgKGVy
cm9yLm5hbWUgPT0gIkRhdGFDbG9uZUVycm9yIikgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVz
c2FnZSgiUEFTUyIsICIqIik7CisgICAgfSBlbHNlIHsKKyAgICAgIHdpbmRvdy50b3AucG9zdE1l
c3NhZ2UoIkZBSUwgLSBXcm9uZyBleGNlcHRpb24gbmFtZTogIiArIGVycm9yLm5hbWUsICIqIik7
CisgICAgfQorICB9CisgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBObyBleGNlcHRp
b24gdGhyb3duIiwgIioiKTsKK30pOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93
b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkN2ZiYTJjY2Y0YjZhYjdlNjA0
MjczYzI1MDEwZTMxZTQ0M2UzNzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNl
cy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCkBAIC0wLDAgKzEsNiBAQAorcGVyZm9ybWFuY2Uu
bWFyaygnd29ya2VyTWFyaycpOworcG9zdE1lc3NhZ2UoeworICAnaW52YWxpZCcgOiBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLAorICAnbWFyaycgOiBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtYXJrJykubGVuZ3RoLAorICAnbWVhc3VyZScgOiBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoCit9KTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVy
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYTcyZmU4MWM0N2ZlYWNlNzY1NjEzYTA5NjJmMmE3ZTYzZjcxZmEyNQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1h
bmNlLW9ic2VydmVyLmpzCkBAIC0wLDAgKzEsNiBAQAordHJ5IHsKKyAgbmV3IFBlcmZvcm1hbmNl
T2JzZXJ2ZXIoKCkgPT4gdHJ1ZSk7CisgIHBvc3RNZXNzYWdlKCJTVUNDRVNTIik7Cit9IGNhdGNo
IChleCkgeworICBwb3N0TWVzc2FnZSgiRkFJTFVSRSIpOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRl
ZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAxMzhiZGU2NjE5NjI0M2U2NzAzMGQx
YWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIyMjQzZDFjYTM0NTc1MDk1NDBhMjA4MjgwMjg5
ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0
dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5
cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCmluZGV4IGEwMjI1YWQyZjc2ZmRjZmViYjBhN2M5
YWZmOWJkMDAzMGVjZjg2YWEuLjI1ZjE5NTkzOWU3YjY5MjUwOTYyNWI4MTMxZTUzNzE2NGNkZjU2
YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcwpAQCAtMTAsMyArMTAsMTAgQEAgdGVz
dCgoKSA9PiB7CiAgICAgICAiJyBhcmUgcmVwZWF0ZWQgb3IgdGhleSBhcmUgbm90IGluIGFscGhh
YmV0aWNhbCBvcmRlci4iKQogICB9CiB9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5k
IHJldHVybnMgZW50cmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIiKTsKKwordGVzdCgoKSA9PiB7
CisgIGlmICh0eXBlb2YgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzID09
PSAidW5kZWZpbmVkIikKKyAgICBhc3NlcnRfdW5yZWFjaGVkKCJzdXBwb3J0ZWRFbnRyeVR5cGVz
IGlzIG5vdCBzdXBwb3J0ZWQuIik7CisgIGFzc2VydF90cnVlKFBlcmZvcm1hbmNlT2JzZXJ2ZXIu
c3VwcG9ydGVkRW50cnlUeXBlcyA9PT0KKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9y
dGVkRW50cnlUeXBlcyk7Cit9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0Iik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQKaW5kZXggMTM4YmRlNjYxOTYyNDNlNjcwMzBkMWFlMTQyYmRhNDExNDhlMjMwYi4uZTVl
YjExOGFiMjI0M2QxY2EzNDU3NTA5NTQwYTIwODI4MDI4OWQ5NiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsx
LDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRy
aWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hl
cyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1p
bmctcmVzb2x1dGlvbi5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDg2OWM3YzUyZDU1ZDY5ZTIxMjNmNjRk
NDg2ZWQxZTMyMzVkM2ZiNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJl
c29sdXRpb24uYW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKK2Z1bmN0aW9uIHRlc3RUaW1lUmVzb2x1
dGlvbihoaWdoUmVzVGltZUZ1bmMsIGZ1bmNTdHJpbmcpIHsKKyAgICB0ZXN0KCgpID0+IHsKKyAg
ICAgICAgY29uc3QgdDAgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgbGV0IHQxID0gaGln
aFJlc1RpbWVGdW5jKCk7CisgICAgICAgIHdoaWxlICh0MCA9PSB0MSkgeworICAgICAgICAgICAg
dDEgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgfQorICAgICAgICBjb25zdCBlcHNpbG9u
ID0gMWUtNTsKKyAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbCh0MSAtIHQwLCAwLjAw
NSAtIGVwc2lsb24sICdUaGUgc2Vjb25kICcgKyBmdW5jU3RyaW5nICsgJyBzaG91bGQgYmUgbXVj
aCBncmVhdGVyIHRoYW4gdGhlIGZpcnN0Jyk7CisgICAgfSwgJ1ZlcmlmaWVzIHRoZSByZXNvbHV0
aW9uIG9mICcgKyBmdW5jU3RyaW5nICsgJyBpcyBhdCBsZWFzdCA1IG1pY3Jvc2Vjb25kcy4nKTsK
K30KKworZnVuY3Rpb24gdGltZUJ5UGVyZm9ybWFuY2VOb3coKSB7CisgICAgcmV0dXJuIHBlcmZv
cm1hbmNlLm5vdygpOworfQorCitmdW5jdGlvbiB0aW1lQnlVc2VyVGltaW5nKCkgeworICAgIHBl
cmZvcm1hbmNlLm1hcmsoJ3RpbWVyJyk7CisgICAgY29uc3QgdGltZSA9IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeU5hbWUoJ3RpbWVyJylbMF0uc3RhcnRUaW1lOworICAgIHBlcmZvcm1hbmNlLmNs
ZWFyTWFya3MoJ3RpbWVyJyk7CisgICAgcmV0dXJuIHRpbWU7Cit9CisKK3Rlc3RUaW1lUmVzb2x1
dGlvbih0aW1lQnlQZXJmb3JtYW5jZU5vdywgJ3BlcmZvcm1hbmNlLm5vdygpJyk7Cit0ZXN0VGlt
ZVJlc29sdXRpb24odGltZUJ5VXNlclRpbWluZywgJ2VudHJ5LnN0YXJ0VGltZScpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42ODI2YjljYmRhZjJjNWZkNDQxMzRjMTIxN2RhMzRlMjQzNjRiNzA4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZl
ci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1MgV29ya2VyOiBUZXN0IFBlcmZv
cm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0
aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZjOTJiYzk3MTAwM2YyZWE5
MmZiZDE2OWQ4ZGQ3YTY0ZDA2MjA2MmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKQEAgLTAsMCArMSwxOCBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorYXN5bmNfdGVz
dChmdW5jdGlvbih0KSB7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoInJlc291cmNlcy93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcyIpOworICB3b3JrZXIub25tZXNzYWdl
ID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICB0LnN0ZXAoKCkgPT4gYXNzZXJ0X2VxdWFscyhldmVu
dC5kYXRhLCAnU1VDQ0VTUycpKTsKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ1dvcmtlcjogVGVz
dCBQZXJmb3JtYW5jZSBPYnNlcnZlciBpbnNpZGUgYSB3b3JrZXIuJyk7Cis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24t
dGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24t
dGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA3MzAwODFmNGQ2N2IwNjQxZGU4MDBlMmE4
ODFhZjAyNzJiMjJiOWIyLi42NGU3ZTI1YzIwZGNkODlkYWZmYzcyMjE3NDJkOTUwYzg3MjY3OWFl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0
cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNv
bnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCBy
ZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmcu
d29ya2VyU3RhcnQnKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKLUZBSUwgU2VydmljZSB3b3Jr
ZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBuZXR3b3JrIGZhbGxiYWNrIGFzc2VydF91
bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAndGltaW5nW3RpbWluZ0V2ZW50T3JkZXJbaV1dJykgUmVhY2hlZCB1bnJl
YWNoYWJsZSBjb2RlCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0
aW1pbmcgcmVkaXJlY3QgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbdGltaW5nRXZlbnRP
cmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK0ZBSUwgU2VydmljZSB3b3JrZXIg
Y29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVk
IHJlamVjdGlvbjogYXNzZXJ0X2dyZWF0ZXJfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRl
ciB0aGFuIDAgYnV0IGdvdCAwIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBTZXJ2aWNl
IHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sKK1BB
U1MgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3Bl
cmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNl
cnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dAppbmRleCA3ZmZiMzg1ODNk
YTg0YjY0Njk0NTVhZTc0MDRkMjI0YzRiNTczMGRhLi40ZWJkY2NmNWIyYmQ0N2RhNGQ1ZDIxNWQx
ZThhMjc4MWE0YzJkZTAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkv
cGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1p
bmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50
eHQKQEAgLTEsNSArMSw1IEBACiBQQVNTIGRpZFJlY2VpdmVGaXJzdENvbnRlbnRmdWxQYWludCBp
cyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggaXMgMQorUEFTUyBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoIGlzIDIKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIpLmxlbmd0aCBpcyAxCiBQQVNT
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiLCAi
cGFpbnQiKS5sZW5ndGggaXMgMQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJw
YWludCIpLmxlbmd0aCBpcyAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1h
cGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFp
bnQuaHRtbCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9y
bWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCmluZGV4IDAwNzhhNDM1
NDViOWY0YjZjZmFiZjgxNzE2NjFiM2I2MDFjNGFhNzkuLjFmMjgwYjQwNzc1ZTJhOWE4MmY4ZDNi
NjZlNzk4ZjcwYTc1NTdlMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFw
aS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWlu
dC5odG1sCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVy
Zm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCkBAIC0zNiw3ICsz
Niw3IEBAIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKICAgICBkb2N1bWVudC5ib2R5Lmlu
bmVyVGV4dCA9ICdURVhUMic7CiAgICAgYXdhaXQgd2FpdEZvckZDUCgpOwogICAgIHNob3VsZEJl
VHJ1ZSgnZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50Jyk7Ci0gICAgc2hvdWxkQmUoJ3Bl
cmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGgnLCAiMSIpOworICAgIHNob3VsZEJlKCdwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoJywgIjIiKTsKICAgICBzaG91bGRCZSgncGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIpLmxlbmd0aCcs
ICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0
LWNvbnRlbnRmdWwtcGFpbnQiLCAicGFpbnQiKS5sZW5ndGgnLCAiMSIpOwogICAgIHNob3VsZEJl
KCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpLmxlbmd0aCcsICIxIik7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2
ZXItYXBpLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3Jt
YW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CmluZGV4IDc2NDlhODQzMWNhNDQyYjE2MDdl
MjhlZWQ2ZDQ2YWM5ZTZjZGYwZGEuLjNhNjdkYzBiYjYzZDYwOWRhODIxNDZiNzYyZTNkZThjZGYw
YTk0NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNl
LWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CkBAIC0xMSw3ICsxMSw3
IEBAIFBBU1MgUGVyZm9ybWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IENvbnN0cnVjdG9yIHJlcXVpcmVzICduZXcnCiBQQVNTIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNT
IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKDEpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFy
Z3VtZW50IDEgKCdjYWxsYmFjaycpIHRvIHRoZSBQZXJmb3JtYW5jZU9ic2VydmVyIGNvbnN0cnVj
dG9yIG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1Mgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihmdW5jdGlvbigpIHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KLVBBU1Mgb2Jz
ZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJn
dW1lbnRzLgorUEFTUyBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQQVNTIG9ic2VydmVyLm9i
c2VydmUoIm1hcmsiKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgogUEFT
UyBvYnNlcnZlci5vYnNlcnZlKHt9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBl
IG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczoibWFyayJ9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBWYWx1ZSBpcyBub3Qg
YSBzZXF1ZW5jZS4KQEAgLTM5LDcgKzM5LDcgQEAgUEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZU9i
c2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29uc3RydWN0b3IgcmVxdWkKIFBB
U1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2Nh
bGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBh
IGZ1bmN0aW9uLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKGZ1bmN0aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBbV29ya2Vy
XSBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3Vn
aCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBB
U1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgibWFyayIpIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoe30pIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3Zp
ZGVkLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJrIn0p
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5l
LWFwaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFu
Y2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAppbmRleCBlZDAxYWUwMDMxZjRlNWU4Zjc2ZTYw
MTVkYjIzODgyMjY0NGI5MTJkLi5jMTQ2MjE0ZWYyZDZhOGFiMWQ2YjhhZTM4Nzg2NWUxMDdiYTNm
NzBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Ut
dGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1h
cGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dApAQCAtMTYsMTQgKzE2LDE0
IEBAIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXMgaXMgZGVmaW5lZC4KIFBB
U1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeVR5cGUgaXMgZGVmaW5lZC4KIFBB
U1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeU5hbWUgaXMgZGVmaW5lZC4KIFBB
U1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2YgQXJyYXkgaXMgdHJ1ZQotUEFT
UyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwIGlzIHRydWUKLVBBU1MgcGVy
Zm9ybWFuY2UubWFyaygidGVzdCIpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQot
UEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIKLVBBU1MgdHlwZW9m
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRy
dWUKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5kdXJhdGlvbiA9PT0g
Im51bWJlciIgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09
PSAyIGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5z
dGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlzICJtYXJrIgorUEFTUyB0eXBlb2YgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0
cnVlCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJh
dGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQ
QVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAw
IGlzIHRydWUKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0
aCA9PT0gMSBpcyB0cnVlCkBAIC02MCwxMSArNjAsMTEgQEAgUEFTUyBbV29ya2VyXSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCiBQQVNTIFtXb3JrZXJd
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFTUyBbV29y
a2VyXSBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgog
UEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRy
dWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdIGluc3RhbmNlb2Yg
UGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQot
UEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9u
ID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCitQQVNT
IFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLm5hbWUgaXMgInRl
c3QiCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmVu
dHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBb
V29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRp
b24gPT09ICJudW1iZXIiIGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1l
bnRzLgogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJub3QtcmVh
bCIpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm1hcmsiKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMgYi9MYXlv
dXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcwppbmRleCAx
ZWY3YWE1YzU4NDJmZGU5ZTFiZDIwM2YxZDI1NzM4N2I5NTM2MDRkLi5iOGMyOTk0MDI2Y2Y5NGUw
NzQ5ZWZiOTQyMWJjMWRiY2JiMjAzMjNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3Jt
YW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcworKysgYi9MYXlvdXRUZXN0cy9wZXJm
b3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcwpAQCAtNCw2ICs0LDggQEAgaWYg
KHNlbGYuaW1wb3J0U2NyaXB0cykKIGlmIChzZWxmLndpbmRvdykKICAgICBkZXNjcmlwdGlvbigi
QmFzaWMgSW50ZXJmYWNlIHRlc3QgZm9yIHBlcmZvcm1hbmNlLXRpbWVsaW5lIEFQSXMuIik7CiAK
K2xldCBydW5uaW5nSW5Xb3JrZXIgPSAhIXNlbGYuaW1wb3J0U2NyaXB0czsKKwogZGVidWcoIlBl
cmZvcm1hbmNlRW50cnkiKTsKIHNob3VsZEJlRGVmaW5lZCgiUGVyZm9ybWFuY2VFbnRyeSIpOwog
c2hvdWxkQmVUcnVlKGAibmFtZSIgaW4gUGVyZm9ybWFuY2VFbnRyeS5wcm90b3R5cGVgKTsKQEAg
LTIxLDE0ICsyMywyNSBAQCBzaG91bGRCZURlZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlwZS5n
ZXRFbnRyaWVzQnlUeXBlYCk7CiBzaG91bGRCZURlZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlw
ZS5nZXRFbnRyaWVzQnlOYW1lYCk7CiAKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpIGluc3RhbmNlb2YgQXJyYXlgKTsKLXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpLmxlbmd0aCA9PT0gMGApOworaWYgKHJ1bm5pbmdJbldvcmtlcikgeworICAgIC8v
IFdvcmtlcnMgZG9uJ3QgaGF2ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuCisgICAgc2hv
dWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwYCk7Cit9IGVs
c2UgeworICAgIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9
PT0gMWApOworfQogc2hvdWxkTm90VGhyb3coYHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTtgKTsK
LXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMWApOwot
c2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJm
b3JtYW5jZUVudHJ5YCk7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVswXS5uYW1lYCwgInRlc3QiKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZWAsICJtYXJrIik7Ci1zaG91bGRCZVRydWUo
YHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVy
ImApOwotc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1
cmF0aW9uID09PSAibnVtYmVyImApOworaWYgKHJ1bm5pbmdJbldvcmtlcikgeworICAgIG1hcmtJ
bmRleCA9IDA7CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAxYCk7Cit9IGVsc2UgeworICAgIG1hcmtJbmRleCA9IDE7CisgICAgc2hvdWxkQmVU
cnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAyYCk7Cit9CitzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVy
Zm9ybWFuY2VFbnRyeWApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbbWFya0luZGV4XS5uYW1lYCwgInRlc3QiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlYCwgIm1hcmsi
KTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5k
ZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciJgKTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9uID09PSAibnVtYmVyImApOwog
CiBzaG91bGRUaHJvdyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgpYCk7CiBzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09
PSAwYCk7CkBAIC01MCw1ICs2Myw1IEBAIHNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlCiBzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiLCAibm90LXJlYWwiKS5s
ZW5ndGggPT09IDBgKTsKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFt
ZSgidGVzdCIsICJtYXJrIikubGVuZ3RoID09PSAxYCk7CiAKLWlmIChzZWxmLmltcG9ydFNjcmlw
dHMpCitpZiAocnVubmluZ0luV29ya2VyKQogICAgIGZpbmlzaEpTVGVzdCgpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFs
dWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OThkNGVkM2NlMTg0YzY4ZDMzMTg2MTNmOGQy
MGZlMjcyZDUyZTM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
LXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitE
ZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYg
dGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0
YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJ
TCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNv
bmFibGUuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJodHRwLzEuMSIgYnV0IGdvdCAiIgorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428956</attachid>
            <date>2021-05-18 11:09:47 -0700</date>
            <delta_ts>2021-05-18 15:05:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210518110946.patch</filename>
            <type>text/plain</type>
            <size>225807</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjhiNWExYTZhYWU3ZTY3
YTA2NGY2YTQyYjZkZjNlMjkxN2IzNGM4OC4uZDFkZTM3Mjg1MTk3OTM0Mjc1Nzc4ZTFmMTNjZWJj
NGFhNjk1YWZlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xOCAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGJhc2ljYWxseSBqdXN0IGEgbmV3
IHNoYXBlIGZvciBleHBvc2luZyB0aGUgc2FtZSBkYXRhIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLCBidXQgd2l0aCBhIHNoYXBlIHRoYXQgZml0cyBiZXR0ZXIgaW50byB0aGUgcmVz
dCBvZiB0aGUKKyAgICAgICAgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWVhc3VyZW1lbnRzIHRoYXQg
aGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSB3ZWIgcGxhdGZvcm0gc2luY2UgcGVyZm9ybWFuY2UubmF2
aWdhdGlvbi4KKworICAgICAgICBJIG5vdGVkIHRoYXQgZXhwb3NpbmcgdHJhbnNmZXIgc2l6ZSBp
cyBwcm9ibGVtYXRpYywgYW5kIHNvbWUgb2YgdGhlIHRlc3RzIGZvciByZWFkaW5nIHRyYW5zZmVy
IHNpemUgc3RpbGwgZmFpbC4KKyAgICAgICAgVGhlcmUgYXJlIHN0aWxsIGEgZmV3IHJlbGF0aXZl
bHkgbWlub3IgdGVzdCBmYWlsdXJlcyB0byBmaXggaW4gZnV0dXJlIHBhdGNoZXMuICBFYWNoIG9u
ZSBpcyBhbm5vdGF0ZWQgaW4gdGhlIExheW91dFRlc3RzIENoYW5nZUxvZ3MuCisKKyAgICAgICAg
VGVzdHM6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
ZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhp
c3QuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAorICAgICAg
ICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2
aWdhdGUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5h
bF9vcmlnaW5hbF9vcmlnaW4uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5o
dG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sCisgICAgICAg
ICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3BvLW5hdmlnYXRpb24uaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVz
ZS5odHRwcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKKyAgICAgICAg
ICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1s
CisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1s
CisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKKworICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLWlucHV0Lnhj
ZmlsZWxpc3Q6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Q6Cisg
ICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OnRvSlNOZXdseUNyZWF0ZWQpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6c2V0UmVhZHlTdGF0ZSk6CisgICAgICAgIFNvbWV0aW1lcyB0
aGUgcmVhZHkgc3RhdGUganVtcHMgcmlnaHQgdG8gQ29tcGxldGUgd2l0aG91dCBoaXR0aW5nIElu
dGVyYWN0aXZlIGFsb25nIHRoZSB3YXkuCisgICAgICAgIFdoZW4gdGhpcyBoYXBwZW5zLCB3ZSB3
YW50IHRvIG1hcmsgYm90aCBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlIGFuZCBtX2RvY3Vt
ZW50VGltaW5nLmRvbUludGVyYWN0aXZlLgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQp
OgorICAgICAgICBDYWxsIGFkZE5hdmlnYXRpb25UaW1pbmcgaW4gbm90aWZ5RmluaXNoZWQgdG8g
Y3JlYXRlIHRoZSBuYXZpZ2F0aW9uIHRpbWluZyBvYmplY3Qgd2hlbiB3ZSBhcmUgZG9uZSBuYXZp
Z2F0aW5nCisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKToKKyAgICAgICAg
QWRkIGEgVVJMIHBhcmFtZXRlci4gIFNvbWV0aW1lcyB3ZSBuZWVkIHRvIHVzZSB0aGUgcmVxdWVz
dCdzIFVSTCBhbmQgc29tZXRpbWVzIHRoZSByZXNwb25zZSdzLiAgRGlmZmVyZW50IHNwZWNzIHdy
aXR0ZW4gYXQgZGlmZmVyZW50IHRpbWVzLgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1p
bmc6OnBvcHVsYXRlU2VydmVyVGltaW5nIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291
cmNlVGltaW5nOjpwb3B1bGF0ZVNlcnZlclRpbWluZyk6IERlbGV0ZWQuCisgICAgICAgICogbG9h
ZGVyL1Jlc291cmNlVGltaW5nLmg6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6
dXJsIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjppbml0aWF0b3Ig
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OmxvYWRUaW1pbmcgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6Om5ldHdvcmtMb2FkTWV0cmlj
cyBjb25zdCk6CisgICAgICAgICogbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpyZXBvcnRSZXNvdXJjZVRpbWluZyk6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZTo6Z2V0RW50cmllcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
Z2V0RW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
Z2V0RW50cmllc0J5TmFtZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
YXBwZW5kQnVmZmVyZWRFbnRyaWVzQnlUeXBlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6
OnNjaGVkdWxlVGFza0lmTmVlZGVkKToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmg6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5Lmg6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZUVudHJ5OjpzdGFydFRpbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VFbnRyeTo6ZHVyYXRpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VFbnRyeTo6aXNSZXNvdXJjZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZUVudHJ5Ojppc01hcmsgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VFbnRyeTo6aXNNZWFzdXJlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6OmlzUGFpbnQgY29uc3QpOiBEZWxldGVkLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VNYXJrLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVk
LgorICAgICAgICBTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOL0VORCBkb2Vzbid0IHdvcmsg
d2VsbCB3aXRoIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyB3aGljaCBpbmhlcml0cyBmcm9t
IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgd2hpY2ggYm90aCBoYXZlIGRpc3RpbmN0IHR5cGVz
LgorICAgICAgICBpczxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPiBkb2Vzbid0IGdpdmUgdXMg
dGhlIGluZm8gd2UgbmVlZC4gIEkgcmVwbGFjZWQgdGhhdCB3aXRoICJzd2l0Y2ggKGVudHJ5LT5w
ZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSIgaW4gdGhlIG9uZSBwbGFjZSBpdCdzIHVzZWQsIGFuZCBp
dCB3b3JrcyBsaWtlIGEgY2hhcm0uCisgICAgICAgIEFsc28gcmVuYW1lZCB0eXBlIHRvIHBlcmZv
cm1hbmNlRW50cnlUeXBlIHNvIGl0IGRvZXNuJ3QgY29uZmxpY3Qgd2l0aCBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6OnR5cGUsIHdoaWNoIGlzIHNwZWNpZmllZCBpbiB0aGUgaWRsLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmg6CisgICAgICAgIChpc1R5cGUpOiBEZWxl
dGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcDogQWRk
ZWQuCisgICAgICAgIChXZWJDb3JlOjp0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmln
YXRpb25UeXBlKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4gY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpzYW1lT3JpZ2lu
Q2hlY2tGYWlscyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OnVubG9hZEV2ZW50U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUludGVyYWN0aXZlIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9t
Q29udGVudExvYWRlZEV2ZW50U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRFbmQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db21wbGV0
ZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OmxvYWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnJlZGlyZWN0Q291bnQgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpzdGFydFRpbWUgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkdXJh
dGlvbiBjb25zdCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcu
aDogQWRkZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRs
OiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRs
LgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3Jkcyk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VPYnNlcnZlcjo6c3VwcG9ydGVkRW50cnlUeXBlcyk6CisgICAgICAgICogcGFnZS9QZXJmb3Jt
YW5jZU9ic2VydmVyLmg6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbDoK
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Z2V0RW50cmllc0J5TmFt
ZSBjb25zdCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmg6CisgICAg
ICAgIChpc1R5cGUpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6Om5leHRIb3BQcm90b2NvbCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdFN0YXJ0IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlZGlyZWN0RW5kIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmZldGNo
U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zzo6ZG9tYWluTG9va3VwU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6ZG9tYWluTG9va3VwRW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNvbm5lY3RTdGFydCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0RW5kIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnNlY3VyZUNv
bm5lY3Rpb25TdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpyZXF1ZXN0U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXNwb25zZUVuZCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZFRpbWVU
b0RPTUhpZ2hSZXNUaW1lU3RhbXAgY29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZzo6aW5pdGlhdG9yVHlwZSBjb25zdCk6CisgICAgICAgIChpc1R5cGUpOiBEZWxldGVkLgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6CisgICAgICAgICog
cGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6ZG9Ob3RpZnlGaW5pc2gpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xv
YWRNZXRyaWNzLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUNs
aWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDbGllbnQ6OmRpZEZpbmlz
aExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJD
bGllbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFu
ZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVy
YXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIFBhc3MgbWV0cmljcyBpbmNs
dWRpbmcgdGhlIHJlc3BvbnNlIGVuZCB0aW1lIGZyb20gTlNVUkxDb25uZWN0aW9uIHNvIHdlIGRv
bid0IGFzc2VydCBpbiBXZWJLaXRMZWdhY3kuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9j
b2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW06CisgICAgICAgIChXZWJDb3JlOjpjb3B5VGltaW5n
RGF0YSk6CisgICAgICAgIFVzZSBjdXJyZW50UmVxdWVzdCBpbnN0ZWFkIG9mIHBhc3NpbmcgaW4g
dGhlIHJlc3BvbnNlIHNvIHdlIGNhbiBjYWxsIGl0IGZyb20gZGlkRmluaXNoTG9hZGluZywgd2hl
cmUgd2UgZG9uJ3QgaGF2ZSBhIHJlc3BvbnNlIHN0b3JlZCBhbnl3aGVyZS4KKyAgICAgICAgV2Un
cmUganVzdCBsb29raW5nIGZvciB3aGV0aGVyIGl0J3MgaHR0cCBvciBodHRwcywgc28gdGhlIGN1
cnJlbnRSZXF1ZXN0ICh3aGljaCBpcyB0aGUgcmVxdWVzdCBhZnRlciBhbGwgdGhlIHJlZGlyZWN0
cykgZml0cyBvdXIgcHVycG9zZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVz
b3VyY2VIYW5kbGVDdXJsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOjpo
YW5kbGVEYXRhVVJMKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVz
b3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW06CisgICAgICAgICgtW1dlYkNv
cmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZSBjb25uZWN0aW9uOmRpZFJl
Y2VpdmVSZXNwb25zZTpdKToKKyAgICAgICAgKC1bV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVy
YXRpb25RdWV1ZURlbGVnYXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hMb2FkaW5nOl0pOgorCiAyMDIx
LTA1LTE4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBz
dXJlIFNRTGl0ZVN0YXRlbWVudCBvYmplY3RzIGdldCBkZXN0cm95ZWQgYmVmb3JlIHRoZSBkYXRh
YmFzZSBpcyBjbG9zZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZWU2MmQ4ZDI1YmMxZmQxMTc1NmRlOWExYzk4YjRm
OGNlOGVhNDZmNi4uNjAxM2U1ZDQzYmJmMWY3YTAwMWUxNTc0MWYwNTdkZDZkMmI5YTFkNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wNS0xOCAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0
aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW06
CisgICAgICAgICgtW1dLTmV0d29ya1Nlc3Npb25EZWxlZ2F0ZSBVUkxTZXNzaW9uOnRhc2s6ZGlk
RmluaXNoQ29sbGVjdGluZ01ldHJpY3M6XSk6CisgICAgICAgIE1hcmsgcmV1c2VkIFRMUyBjb25u
ZWN0aW9ucyBpbiBjb21wbGV0ZSBtZXRyaWNzIGxpa2UgSSBkaWQgaW4gaW5jb21wbGV0ZSBtZXRy
aWNzIGluIHIyNzc0OTMuCisKIDIwMjEtMDUtMTggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBSZWFkT25seVNoYXJlZFJpbmdCdWZmZXJTdG9yYWdlOjp1cGRhdGVG
cmFtZUJvdW5kcygpIHNob3VsZCB2YWxpZGF0ZSBib3VuZHNCdWZmZXJTaXplCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hh
bmdlTG9nCmluZGV4IGFjOGQ2ZjY2ZDljNTE4N2MyNDNhNWI3NWE2YWEyZDk5NjRlY2YzOGUuLjky
NzZlYTQ5ZDk5MTBhODA5ZDMxOTRmNWMzOGEzMjEyZTI3NGQ0ODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDUtMTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlv
biBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmg6CisKIDIwMjEtMDUtMTcgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBdm9pZCBtb3JlIFN0cmlu
ZyBjcmVhdGlvbnMgd2hlbiBwcmVwYXJpbmcgU1FMaXRlIHN0YXRlbWVudHMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRh
bC55YW1sIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhw
ZXJpbWVudGFsLnlhbWwKaW5kZXggZjM0NjY1YjdlNmE5NmZmMDJhY2ExZjBlNGUyMzQ3ZTM4Nzlh
NTNlYS4uNDQ4OTczMzZkYjc0Zjk1NWVlNjQxY2EwMzA0NzUwMjE0ZmZkNmM0YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVu
dGFsLnlhbWwKKysrIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVu
Y2VzRXhwZXJpbWVudGFsLnlhbWwKQEAgLTc4Miw2ICs3ODIsMTkgQEAgUGVyRWxlbWVudFNwZWFr
ZXJTZWxlY3Rpb25FbmFibGVkOgogICAgIFdlYkNvcmU6CiAgICAgICBkZWZhdWx0OiBmYWxzZQog
CitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkOgorICB0eXBlOiBib29sCisg
IGh1bWFuUmVhZGFibGVOYW1lOiAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIgorICBodW1h
blJlYWRhYmxlRGVzY3JpcHRpb246ICJFbmFibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
IEFQSSIKKyAgd2ViY29yZUJpbmRpbmc6IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMKKyAgZGVmYXVs
dFZhbHVlOgorICAgIFdlYktpdExlZ2FjeToKKyAgICAgIGRlZmF1bHQ6IGZhbHNlCisgICAgV2Vi
S2l0OgorICAgICAgZGVmYXVsdDogZmFsc2UKKyAgICBXZWJDb3JlOgorICAgICAgZGVmYXVsdDog
ZmFsc2UKKwogUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnREZWJ1Z01vZGVFbmFibGVkOgogICB0eXBl
OiBib29sCiAgIGh1bWFuUmVhZGFibGVOYW1lOiAiUHJpdmF0ZSBDbGljayBNZWFzdXJlbWVudCBE
ZWJ1ZyBNb2RlIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9T
b3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjY2QyY2YxMjcxMmRmNDgzMzBmZjhk
Yzg3MWFlNTU1MzkyZjdhMmZhLi5jYTI0YjUwYjk4MjIxMmY2NWU3YjM5ZmY3M2ZjNDJjN2JhZjY1
NTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTEyOSw2ICsxMTI5LDcgQEAgc2V0KFdlYkNv
cmVfTk9OX1NWR19JRExfRklMRVMKICAgICBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFj
ay5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaWRsCiAgICAgcGFn
ZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCisgICAgcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmlkbAogICAgIHBh
Z2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlU2Vy
dmVyVGltaW5nLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMt
aW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0Lnhj
ZmlsZWxpc3QKaW5kZXggYjg1MDU2YzgxM2NhMTM0MTkyYzZjMzlmMjU4NDU5NmU4NTE2MjJkOS4u
YzNiYmIyZTg0ZWJiMzYyNGE5OWIyODNiMGUxMWE5ZDc0ZGQ2ZTU5MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0xMjAyLDYgKzEyMDIs
NyBAQCAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTWFya09wdGlvbnMuaWRsCiAkKFBS
T0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwKICQoUFJPSkVDVF9ESVIpL3Bh
Z2UvUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uLmlkbAorJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5p
ZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVs
aXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5k
ZXggNWM2ZTkwNGYwYTQxZjQ0YjE3YmExZDQzYmVhNGY2MGMwMWVhZmEwNS4uNThiNTg4ZjNlOGEy
MThmOWE5ZmJkN2I5OWU4NGE5MjgyMzg1NDdlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAgLTE2MDYsNiArMTYwNiw4IEBAICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFz
dXJlT3B0aW9ucy5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5jcHAKICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9i
c2VydmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNQZXJmb3JtYW5jZU9ic2VydmVyLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291
cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggOWVlMmEzMzFjN2ZiNjY4OGQyNzg4N2MyNTY3ZmIzYzdk
NTU1YzAwYy4uMTFlZGZjYTY5NzljNmU5ZjM4MWViMTlkOGFhNGU5YmE0NjY5MzVlMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0xMDQ4LDYgKzEwNDgsNyBAQCBKU19CSU5ESU5H
X0lETFMgOj0gXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNv
cmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggZWFiMjdlNGFk
NWIxY2FmNTdhMTgxNTYzYmEwNTdlYTk1OWVkYzQwOC4uMmY2NjA1YzEwMGFmYmJkM2Q5OWJiOTJh
MDM0ZWM2ODA0M2FmNzA5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQK
KysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTE3MzUsNiArMTczNSw3IEBAIHBh
Z2UvUGVyZm9ybWFuY2VNYXJrLmNwcAogcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuY3BwCiBwYWdl
L1BlcmZvcm1hbmNlTW9uaXRvci5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAor
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXIuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwCiBwYWdlL1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC0zMzU4LDYgKzMzNTksNyBAQCBKU1BlcmZv
cm1hbmNlTWFya09wdGlvbnMuY3BwCiBKU1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIEpTUGVyZm9y
bWFuY2VNZWFzdXJlT3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorSlNQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3Bw
CiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZl
ckVudHJ5TGlzdC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBiZWIxODhhMDBiMWJkOThiZWU5NDZmNWZkMDBjYTU4NTVmNWE0
OGFkLi44MTcxNmUxNjc5YjA3YmQ0MDA0YWFhOGQ4MDZmOWU0ZDIzMDMwMTMwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNjA0
OSw2ICsxNjA0OSw5IEBACiAJCURFQ0E3RkY0MUY5RkU5QjkwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjU1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UyNTUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UyNTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKIAkJREVDQTdGRjUxRjlGRTlCQTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTYuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1Ni5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTI1Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlE
RjE5RTJBQTI0NzcyOUE2MDA3QkRBQ0IgLyogU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxv
Y2tpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hvdWxkUmVsYXhUaGly
ZFBhcnR5Q29va2llQmxvY2tpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREYz
NjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNzI1
QTk4NEM5MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlERjRFMzhEQzI1Mjc5NTkzMDAyQTc0ODEgLyogVmVyc2lvbkNoZWNrcy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZlcnNpb25DaGVja3MubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUzOERFMjUyNzk1OTQwMDJBNzQ4MSAvKiBWZXJz
aW9uQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZlcnNpb25DaGVj
a3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY3RTlBMjk0QzdBQUNFMEFEODlC
M0REIC8qIE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBNYXRoTUxPcGVyYXRvckRpY3Rpb25hcnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTIyNDYwLDYgKzIyNDYzLDkgQEAKIAkJCQk4QUY0RTU1MjExREM1QTM2MDAw
RUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJCQk4QUY0RTU1MzExREM1
QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmggKi8sCiAJCQkJOEFGNEU1NTQx
MURDNUEzNjAwMEVEM0RFIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgKi8sCisJCQkJREYz
NjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAg
Ki8sCisJCQkJREYzNjVEMDYyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZy5oICovLAorCQkJCURGMzY1RDA3MjVBOTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuaWRsICovLAogCQkJCUE1QTk5MzM1MUUzN0ZBRkQwMDVCNUU0RCAv
KiBQZXJmb3JtYW5jZU9ic2VydmVyLmNwcCAqLywKIAkJCQlBNUE5OTMzNjFFMzdGQUZEMDA1QjVF
NEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlci5oICovLAogCQkJCUE1QTk5MzM3MUUzN0ZBRkQwMDVC
NUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmlkbCAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCmluZGV4IGJi
ZjgxMTE0MmRhYjllNmE5MmNiNWM2Y2ZhYjA2YjI0NThiYTcxNDAuLmRmY2Q4YzFlYjk2NDQ5MTMx
NDQ3ZTJmMjdjOWQ2YmVjNWFjNjc5YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcApAQCAtMzUsMTAgKzM1LDEy
IEBACiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU1h
cmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3VyZS5oIgorI2luY2x1ZGUgIkpTUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVBhaW50
VGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5j
bHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJlLmgi
CisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaCIKIApAQCAtNDgsMTggKzUwLDIwIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIEpTVmFs
dWUgdG9KU05ld2x5Q3JlYXRlZChKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIFJlZjxQZXJmb3JtYW5jZUVudHJ5PiYmIGVudHJ5KQogewotICAgIGlmIChp
czxQZXJmb3JtYW5jZVBhaW50VGltaW5nPihlbnRyeSkpCi0gICAgICAgIHJldHVybiBjcmVhdGVX
cmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRy
eSkpOwotCi0gICAgaWYgKGlzPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGVudHJ5KSkKLSAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNYXJr
PihlbnRyeSkpCisgICAgc3dpdGNoIChlbnRyeS0+cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkgewor
ICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2aWdhdGlvbjoKKyAgICAgICAgcmV0
dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPihnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoZW50cnkpKTsKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1h
cms6CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWFyaz4oZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNZWFzdXJl
PihlbnRyeSkpCisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpNZWFzdXJlOgogICAg
ICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU1lYXN1cmU+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UmVz
b3VyY2U6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFu
Y2VFbnRyeTo6VHlwZTo6UGFpbnQ6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZv
cm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIH0K
IAorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBl
cmZvcm1hbmNlRW50cnk+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKaW5kZXgg
YmVlMWU2YmRhOGM5MWEzY2E4MjIyZGQ5MDI2OTI3NmU0NWY0ZjE3Mi4uZjgxM2JkZWNhNDljZmRk
YWVhMjk0ZGI2MzcwNmFmMzg0MTg3YzRlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTkyLDYgKzE5Miw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICBtYWNybyhQYXltZW50UmVxdWVzdCkgXAogICAgIG1hY3JvKFBheW1l
bnRSZXF1ZXN0VXBkYXRlRXZlbnQpIFwKICAgICBtYWNybyhQYXltZW50UmVzcG9uc2UpIFwKKyAg
ICBtYWNybyhQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcpIFwKICAgICBtYWNybyhQaWN0dXJl
SW5QaWN0dXJlV2luZG93KSBcCiAgICAgbWFjcm8oU1FMRXJyb3IpIFwKICAgICBtYWNybyhTUUxS
ZXN1bHRTZXQpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDk4NWQxNDhmYWJiNWFhNWE0
NTI0Yzg0YmVjZTRjNmQzNjdmNDUzZjQuLjFjODAzM2M4YTc0ODE5ZjdiZmFkMmM2YTI1OTZjOTEw
NDczYzdhZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMTM4NiwxMyArMTM4NiwxMyBA
QCB2b2lkIERvY3VtZW50OjpzZXRSZWFkeVN0YXRlKFJlYWR5U3RhdGUgcmVhZHlTdGF0ZSkKICAg
ICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUxvYWRpbmcpCiAgICAgICAgICAgICBtX2Rv
Y3VtZW50VGltaW5nLmRvbUxvYWRpbmcgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBJbnRlcmFjdGl2ZToKLSAgICAgICAgaWYgKCFtX2RvY3VtZW50VGlt
aW5nLmRvbUludGVyYWN0aXZlKQotICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21JbnRl
cmFjdGl2ZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICBicmVhazsKICAgICBjYXNl
IENvbXBsZXRlOgogICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUpCiAg
ICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlID0gTW9ub3RvbmljVGltZTo6
bm93KCk7CisgICAgICAgIEZBTExUSFJPVUdIOworICAgIGNhc2UgSW50ZXJhY3RpdmU6CisgICAg
ICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKKyAgICAgICAgICAgIG1f
ZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAg
ICAgICAgYnJlYWs7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVy
LmNwcAppbmRleCBlMzI1ZjJkMDkxNDMyZTAzNmM3YWI1YTkxNTEyZDAwOTkxYmFkYzhlLi4wZmNl
MmI0ZThlZTczMDI5NjliZGVlOTU1ZjJiYzAxZjE0NDYyMGUyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAKICNpbmNsdWRlICJOZXR3
b3JrTG9hZE1ldHJpY3MuaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNp
bmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlICJQaW5n
TG9hZGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUG9s
aWN5Q2hlY2tlci5oIgpAQCAtNDExLDcgKzQxMiw3IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6Omlz
TG9hZGluZygpIGNvbnN0CiAgICAgcmV0dXJuIGlzTG9hZGluZ01haW5SZXNvdXJjZSgpIHx8ICFt
X3N1YnJlc291cmNlTG9hZGVycy5pc0VtcHR5KCkgfHwgIW1fcGx1Z0luU3RyZWFtTG9hZGVycy5p
c0VtcHR5KCk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hl
ZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikKK3ZvaWQgRG9j
dW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29u
c3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJl
YWQoKSk7CiAjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQpAQCAtNDE5LDYgKzQyMCwxMyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0IE5ldHdvcmtMb2FkTQogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAorICAg
IGlmIChhdXRvKiBkb2N1bWVudCA9IHRoaXMtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgaWYgKGF1
dG8qIGRvbVdpbmRvdyA9IGRvY3VtZW50LT5kb21XaW5kb3coKSkgeworICAgICAgICAgICAgaWYg
KFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nQVBJRW5hYmxlZCgpKQorICAgICAgICAgICAgICAgIGRvbVdpbmRvdy0+cGVy
Zm9ybWFuY2UoKS5hZGROYXZpZ2F0aW9uVGltaW5nKCp0aGlzLCAqZG9jdW1lbnQsIHJlc291cmNl
LCB0aW1pbmcoKSwgbWV0cmljcyk7CisgICAgICAgIH0KKyAgICB9CisKICAgICBBU1NFUlRfVU5V
U0VEKHJlc291cmNlLCBtX21haW5SZXNvdXJjZSA9PSAmcmVzb3VyY2UpOwogICAgIEFTU0VSVCht
X21haW5SZXNvdXJjZSk7CiAgICAgaWYgKCFtX21haW5SZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgp
ICYmICFtX21haW5SZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMDc1ZmIxZmFlZGZlZjM0MjA4YTgxYWJjM2JmMTI5
MTQzMjc0YTI0My4uMjQ2NzMwMjdiNzA2MzViMTI5ZDAxYjllNDJlNTliYzQxZTkzNjI2YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC03MzMsMTAgKzczMyw5
IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVCdWZmZXIoUmVzb3VyY2VIYW5kbGUq
LCBSZWY8U2hhcmVkQnVmZmVyPiYmIGJ1ZmZlCiAgICAgZGlkUmVjZWl2ZUJ1ZmZlcihXVEZNb3Zl
KGJ1ZmZlciksIGVuY29kZWREYXRhTGVuZ3RoLCBEYXRhUGF5bG9hZEJ5dGVzKTsKIH0KIAotdm9p
ZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopCit2b2lk
IFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3Qg
TmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQogewotICAgIE5ldHdvcmtMb2FkTWV0cmljcyBl
bXB0eU1ldHJpY3M7Ci0gICAgZGlkRmluaXNoTG9hZGluZyhlbXB0eU1ldHJpY3MpOworICAgIGRp
ZEZpbmlzaExvYWRpbmcobWV0cmljcyk7CiB9CiAKIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZh
aWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKaW5kZXggYjJmNmE1ZWNiM2JlYTA0ZTliZmE4ZDFl
ZTc2NjJjMzJjMWRmM2QxNS4uYTQzNzZkNTAxMWJmODI4NmZiNDdmYzMzODRmMjliNWMzZGMzMjY1
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKQEAgLTIwMCw3ICsyMDAs
NyBAQCBwcml2YXRlOgogICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0QXN5bmMoUmVzb3VyY2VIYW5k
bGUqLCBSZXNvdXJjZVJlcXVlc3QmJiwgUmVzb3VyY2VSZXNwb25zZSYmLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKFJlc291cmNlUmVxdWVzdCYmKT4mJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRS
ZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCB1bnNpZ25lZCwgaW50IGVu
Y29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVCdWZmZXIoUmVz
b3VyY2VIYW5kbGUqLCBSZWY8U2hhcmVkQnVmZmVyPiYmLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIG92
ZXJyaWRlOworICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmFpbChSZXNvdXJj
ZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICAgICB2b2lkIHdhc0Js
b2NrZWQoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKICAgICB2b2lkIGNhbm5vdFNob3dVUkwo
UmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VU
aW1pbmcuY3BwCmluZGV4IDE2ODIzNGY0N2JjYmUwNzk1MDYwNTQwYTlhMWFhZTZlZGI0NTE2YTcu
LjdlMjM0MTA4YjZhNjI3NmMyZDZmYzEwMzZlMDY0NjUzYzJlODRkM2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcApAQCAtNjIsOSArNjIsOSBAQCBSZXNvdXJjZVRp
bWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbUNhY2hlKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJp
bmcmIGluaXRpYXRvcgogICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyh1cmwsIGluaXRpYXRvciwg
bG9hZFRpbWluZywgcmVzcG9uc2UsIHNlY3VyaXR5T3JpZ2luKTsKIH0KIAotUmVzb3VyY2VUaW1p
bmcgUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29u
c3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBTZWN1cml0eU9y
aWdpbiYgc2VjdXJpdHlPcmlnaW4pCitSZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJv
bUxvYWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdv
cmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBTZWN1cml0eU9yaWdpbiYg
c2VjdXJpdHlPcmlnaW4pCiB7Ci0gICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHJlc291cmNlLnJl
c291cmNlUmVxdWVzdCgpLnVybCgpLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5ldHdvcmtMb2Fk
TWV0cmljcywgcmVzb3VyY2UucmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOworICAgIHJldHVy
biBSZXNvdXJjZVRpbWluZyh1cmwsIGluaXRpYXRvciwgbG9hZFRpbWluZywgbmV0d29ya0xvYWRN
ZXRyaWNzLCByZXNvdXJjZS5yZXNwb25zZSgpLCBzZWN1cml0eU9yaWdpbik7CiB9CiAKIFJlc291
cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tU3luY2hyb25vdXNMb2FkKGNvbnN0IFVSTCYg
dXJsLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWlu
ZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlP
cmlnaW4pCkBAIC05NywxMCArOTcsMTAgQEAgdm9pZCBSZXNvdXJjZVRpbWluZzo6aW5pdFNlcnZl
clRpbWluZyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAgICAgICAgbV9zZXJ2
ZXJUaW1pbmcgPSBTZXJ2ZXJUaW1pbmdQYXJzZXI6OnBhcnNlU2VydmVyVGltaW5nKHJlc3BvbnNl
Lmh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6U2VydmVyVGltaW5nKSk7CiB9CiAKLVZl
Y3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBSZXNvdXJjZVRpbWluZzo6cG9wdWxh
dGVTZXJ2ZXJUaW1pbmcoKQorVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IFJl
c291cmNlVGltaW5nOjpwb3B1bGF0ZVNlcnZlclRpbWluZygpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IFdURjo6bWFwKG1fc2VydmVyVGltaW5nLCBbXSAoYXV0byYgZW50cnkpIHsKLSAgICAgICAgcmV0
dXJuIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nOjpjcmVhdGUoV1RGTW92ZShlbnRyeS5uYW1lKSwg
ZW50cnkuZHVyYXRpb24sIFdURk1vdmUoZW50cnkuZGVzY3JpcHRpb24pKTsKKyAgICAgICAgcmV0
dXJuIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nOjpjcmVhdGUoU3RyaW5nKGVudHJ5Lm5hbWUpLCBl
bnRyeS5kdXJhdGlvbiwgU3RyaW5nKGVudHJ5LmRlc2NyaXB0aW9uKSk7CiAgICAgfSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmgKaW5kZXggNjRmODdjYjNiZmRiNTE1
ZDZjNGUzODM5NGZiYzRlM2FkNTNlMzBiNy4uNjRkMWVjZjhlNzgzYmM2YTRkOGZmN2U5ZGFkYWVi
ZjA2MmRkNGZhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGlt
aW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmgKQEAgLTQx
LDE1ICs0MSwxNSBAQCBjbGFzcyBSZXNvdXJjZVRpbWluZyB7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZyb21DYWNoZShj
b25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwotICAgIHN0YXRp
YyBSZXNvdXJjZVRpbWluZyBmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IFN0cmluZyYg
aW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwg
Y29uc3QgU2VjdXJpdHlPcmlnaW4mKTsKKyAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUxv
YWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwg
Y29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luJik7CiAgICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZyb21TeW5jaHJvbm91c0xv
YWQoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcm
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29u
c3QgU2VjdXJpdHlPcmlnaW4mKTsKIAotICAgIFVSTCB1cmwoKSBjb25zdCB7IHJldHVybiBtX3Vy
bDsgfQotICAgIFN0cmluZyBpbml0aWF0b3IoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvcjsg
fQotICAgIExvYWRUaW1pbmcgbG9hZFRpbWluZygpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRpbWlu
ZzsgfQotICAgIE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTG9hZE1ldHJpY3MoKSBjb25zdCB7
IHJldHVybiBtX25ldHdvcmtMb2FkTWV0cmljczsgfQorICAgIGNvbnN0IFVSTCYgdXJsKCkgY29u
c3QgeyByZXR1cm4gbV91cmw7IH0KKyAgICBjb25zdCBTdHJpbmcmIGluaXRpYXRvcigpIGNvbnN0
IHsgcmV0dXJuIG1faW5pdGlhdG9yOyB9CisgICAgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWlu
ZygpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQorICAgIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrTG9h
ZE1ldHJpY3M7IH0KICAgICBib29sIGFsbG93VGltaW5nRGV0YWlscygpIGNvbnN0IHsgcmV0dXJu
IG1fYWxsb3dUaW1pbmdEZXRhaWxzOyB9Ci0gICAgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZl
clRpbWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCk7CisgICAgVmVjdG9yPFJlZjxQZXJmb3Jt
YW5jZVNlcnZlclRpbWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCkgY29uc3Q7CiAgICAgUmVz
b3VyY2VUaW1pbmcgaXNvbGF0ZWRDb3B5KCkgY29uc3Q7CiAKICAgICB2b2lkIG92ZXJyaWRlSW5p
dGlhdG9yTmFtZShjb25zdCBTdHJpbmcmIG5hbWUpIHsgbV9pbml0aWF0b3IgPSBuYW1lOyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCAwNmE1OTU5
YmNkMTFmMDY0YzBhNzNlMDc0YjBiZGZjY2YzNzVhMDUyLi42MGRkODViZWQ1NTcwZGI0OWY4NjM5
ZGM1MGNhYzk4NzQ2Y2Y3ZmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3Vi
cmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJj
ZUxvYWRlci5jcHAKQEAgLTkwNCw3ICs5MDQsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpy
ZXBvcnRSZXNvdXJjZVRpbWluZyhjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMbwog
ICAgICAgICByZXR1cm47CiAKICAgICBTZWN1cml0eU9yaWdpbiYgb3JpZ2luID0gbV9vcmlnaW4g
PyAqbV9vcmlnaW4gOiBkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBhdXRvIHJlc291
cmNlVGltaW5nID0gUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKCptX3Jlc291cmNlLCBtX3Jlc291
cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNzLCBv
cmlnaW4pOworICAgIGF1dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNvdXJjZVRpbWluZzo6ZnJvbUxv
YWQoKm1fcmVzb3VyY2UsIG1fcmVzb3VyY2UtPnJlc291cmNlUmVxdWVzdCgpLnVybCgpLCBtX3Jl
c291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNz
LCBvcmlnaW4pOwogCiAgICAgLy8gV29ya2VyIHJlc291cmNlcyBsb2FkZWQgaGVyZSBhcmUgYWxs
IENhY2hlZFJhd1Jlc291cmNlcyBsb2FkZWQgdGhyb3VnaCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LgogICAgIC8vIFBhc3MgdGhlIFJlc291cmNlVGltaW5nIGluZm9ybWF0aW9uIG9uIHNvIHRoYXQg
V29ya2VyVGhyZWFkYWJsZUxvYWRlciBtYXkgYWRkIHRoZW0gdG8gdGhlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2UuY3BwCmluZGV4IDc2NjkwODVlNWQ4ZjgyMmRkM2IxNzI2ZjBkYWM0ZTZkZjI2
YzFmMTEuLmMyYWU2ZmM1ZGJiYzJmNmFkMDc1ZmU0ODc3NDRiMTQyYjRkYWE5NTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VNYXJrT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWVhc3VyZU9wdGlv
bnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCIKKyNpbmNsdWRlICJQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU9ic2VydmVy
LmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKQEAgLTEyMiw2ICsxMjMsOSBAQCBWZWN0b3I8UmVmUHRy
PFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllcygpIGNvbnN0CiB7CiAg
ICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmICht
X25hdmlnYXRpb25UaW1pbmcpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRp
bWluZyk7CisKICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVy
KTsKIAogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE0MCw2ICsxNDQsOSBAQCBWZWN0b3I8
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5VHlwZShj
b25zdCBTdHJpbmcmIGVudAogewogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+
IGVudHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlwZSA9PSAi
bmF2aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7
CisgICAgCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVz
LmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMTYxLDYgKzE2OCw5
IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRy
aWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtCiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgKGVu
dHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUgPT0gIm5hdmlnYXRpb24iKSAmJiBuYW1lID09
IG1fbmF2aWdhdGlvblRpbWluZy0+bmFtZSgpKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25h
dmlnYXRpb25UaW1pbmcpOworCiAgICAgaWYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5
cGUgPT0gInJlc291cmNlIikgewogICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNv
dXJjZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAgICAgaWYgKHJlc291cmNlLT5uYW1lKCkgPT0g
bmFtZSkKQEAgLTE4NCw2ICsxOTQsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+
PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbQogCiB2b2lk
IFBlcmZvcm1hbmNlOjphcHBlbmRCdWZmZXJlZEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBl
bnRyeVR5cGUsIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+JiBlbnRyaWVzKSBjb25z
dAogeworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50cnlUeXBlID09ICJuYXZpZ2F0
aW9uIikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsKKwogICAg
IGlmIChlbnRyeVR5cGUgPT0gInJlc291cmNlIikKICAgICAgICAgZW50cmllcy5hcHBlbmRWZWN0
b3IobV9yZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKQEAgLTIxNCw2ICsyMjcsMTIgQEAgdm9pZCBQ
ZXJmb3JtYW5jZTo6cmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQoKQogICAgIHF1ZXVlRW50cnko
Km1fZmlyc3RDb250ZW50ZnVsUGFpbnQpOwogfQogCit2b2lkIFBlcmZvcm1hbmNlOjphZGROYXZp
Z2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiBkb2N1bWVudExvYWRlciwgRG9jdW1lbnQmIGRv
Y3VtZW50LCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIHRpbWlu
ZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQoreworICAgIG1fbmF2aWdhdGlv
blRpbWluZyA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6Y3JlYXRlKG1fdGltZU9yaWdp
biwgcmVzb3VyY2UsIHRpbWluZywgbWV0cmljcywgZG9jdW1lbnQudGltaW5nKCksIGRvY3VtZW50
LnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVyLnRyaWdnZXJpbmdBY3Rpb24oKS50eXBl
KCkpOworICAgIHF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWluZyk7Cit9CisKIHZvaWQgUGVy
Zm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGltaW5nJiYgcmVzb3VyY2VUaW1p
bmcpCiB7CiAgICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CkBAIC0zNDYsNiAr
MzY1LDExIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnJlbW92ZUFsbE9ic2VydmVycygpCiB2b2lkIFBl
cmZvcm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIoUGVyZm9ybWFuY2VPYnNlcnZl
ciYgb2JzZXJ2ZXIpCiB7CiAgICAgbV9vYnNlcnZlcnMuYWRkKCZvYnNlcnZlcik7CisKKyAgICBp
ZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIG9ic2VydmVyLnR5cGVGaWx0ZXIoKS5jb250YWlucyhQ
ZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uKSkgeworICAgICAgICBvYnNlcnZlci5x
dWV1ZUVudHJ5KCptX25hdmlnYXRpb25UaW1pbmcpOworICAgICAgICBzY2hlZHVsZVRhc2tJZk5l
ZWRlZCgpOworICAgIH0KIH0KIAogdm9pZCBQZXJmb3JtYW5jZTo6dW5yZWdpc3RlclBlcmZvcm1h
bmNlT2JzZXJ2ZXIoUGVyZm9ybWFuY2VPYnNlcnZlciYgb2JzZXJ2ZXIpCkBAIC0zNTcsNyArMzgx
LDcgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkKIHsKICAgICBib29sIHNob3VsZFNjaGVkdWxlVGFzayA9IGZhbHNlOwogICAgIGZvciAoYXV0
byYgb2JzZXJ2ZXIgOiBtX29ic2VydmVycykgewotICAgICAgICBpZiAob2JzZXJ2ZXItPnR5cGVG
aWx0ZXIoKS5jb250YWlucyhlbnRyeS50eXBlKCkpKSB7CisgICAgICAgIGlmIChvYnNlcnZlci0+
dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnBlcmZvcm1hbmNlRW50cnlUeXBlKCkpKSB7CiAg
ICAgICAgICAgICBvYnNlcnZlci0+cXVldWVFbnRyeShlbnRyeSk7CiAgICAgICAgICAgICBzaG91
bGRTY2hlZHVsZVRhc2sgPSB0cnVlOwogICAgICAgICB9CkBAIC0zNjYsNiArMzkwLDExIEBAIHZv
aWQgUGVyZm9ybWFuY2U6OnF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpCiAgICAg
aWYgKCFzaG91bGRTY2hlZHVsZVRhc2spCiAgICAgICAgIHJldHVybjsKIAorICAgIHNjaGVkdWxl
VGFza0lmTmVlZGVkKCk7Cit9CisKK3ZvaWQgUGVyZm9ybWFuY2U6OnNjaGVkdWxlVGFza0lmTmVl
ZGVkKCkKK3sKICAgICBpZiAobV9oYXNTY2hlZHVsZWRUaW1pbmdCdWZmZXJEZWxpdmVyeVRhc2sp
CiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCmluZGV4IDk5ZjI1
NGIzYzk1MDk2YTVjZmQzNGMyZTkwZjlkY2RjMzg3NDY0YzguLjVlNDY4NjRiZmQwNzcxMTQzNDk4
ZmVjYTRlNTUwOTU1NjMzODYzNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKQEAgLTQ4
LDEyICs0OCwxNyBAQCBjbGFzcyBKU0dsb2JhbE9iamVjdDsKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCitjbGFzcyBDYWNoZWRSZXNvdXJjZTsKK2NsYXNzIERvY3VtZW50OworY2xhc3MgRG9jdW1l
bnRMb2FkZXI7CiBjbGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOwog
Y2xhc3MgUGVyZm9ybWFuY2VVc2VyVGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VFbnRyeTsKIGNs
YXNzIFBlcmZvcm1hbmNlTWFyazsKIGNsYXNzIFBlcmZvcm1hbmNlTWVhc3VyZTsKIGNsYXNzIFBl
cmZvcm1hbmNlTmF2aWdhdGlvbjsKK2NsYXNzIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzsK
IGNsYXNzIFBlcmZvcm1hbmNlT2JzZXJ2ZXI7CiBjbGFzcyBQZXJmb3JtYW5jZVBhaW50VGltaW5n
OwogY2xhc3MgUGVyZm9ybWFuY2VUaW1pbmc7CkBAIC05MCw2ICs5NSw3IEBAIHB1YmxpYzoKICAg
ICBFeGNlcHRpb25PcjxSZWY8UGVyZm9ybWFuY2VNZWFzdXJlPj4gbWVhc3VyZShKU0M6OkpTR2xv
YmFsT2JqZWN0JiwgY29uc3QgU3RyaW5nJiBtZWFzdXJlTmFtZSwgT3B0aW9uYWw8U3RhcnRPck1l
YXN1cmVPcHRpb25zPiYmLCBjb25zdCBTdHJpbmcmIGVuZE1hcmspOwogICAgIHZvaWQgY2xlYXJN
ZWFzdXJlcyhjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lKTsKIAorICAgIHZvaWQgYWRkTmF2aWdh
dGlvblRpbWluZyhEb2N1bWVudExvYWRlciYsIERvY3VtZW50JiwgQ2FjaGVkUmVzb3VyY2UmLCBj
b25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7CiAgICAgdm9pZCBh
ZGRSZXNvdXJjZVRpbWluZyhSZXNvdXJjZVRpbWluZyYmKTsKIAogICAgIHZvaWQgcmVwb3J0Rmly
c3RDb250ZW50ZnVsUGFpbnQoKTsKQEAgLTEyMSw2ICsxMjcsNyBAQCBwcml2YXRlOgogICAgIHZv
aWQgcmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsVGltZXJGaXJlZCgpOwogCiAgICAgdm9pZCBxdWV1
ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkmKTsKKyAgICB2b2lkIHNjaGVkdWxlVGFza0lmTmVlZGVk
KCk7CiAKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZU5hdmlnYXRpb24+IG1fbmF2aWdh
dGlvbjsKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZVRpbWluZz4gbV90aW1pbmc7CkBA
IC0xMzksNiArMTQ2LDcgQEAgcHJpdmF0ZToKIAogICAgIE1vbm90b25pY1RpbWUgbV90aW1lT3Jp
Z2luOwogCisgICAgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZz4gbV9uYXZpZ2F0
aW9uVGltaW5nOwogICAgIFJlZlB0cjxQZXJmb3JtYW5jZVBhaW50VGltaW5nPiBtX2ZpcnN0Q29u
dGVudGZ1bFBhaW50OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxQZXJmb3JtYW5jZVVzZXJUaW1pbmc+
IG1fdXNlclRpbWluZzsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAppbmRl
eCBhZmFjZmIwOTBiMjFjYmE2MTRkNzhjZTg4YWM3NTNlMjY3M2UxMjY1Li4zZGY1ZTRlZmJhZjMy
NmM1NzFmNWU2ZTY1ZTM1NmMyZDQzMmZmMGYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlRW50cnkuaApAQCAtNDQsMTAgKzQ0LDEwIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5QZXJm
b3JtYW5jZUVudHJ5KCk7CiAKICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVy
biBtX25hbWU7IH0KLSAgICBkb3VibGUgc3RhcnRUaW1lKCkgY29uc3QgeyByZXR1cm4gbV9zdGFy
dFRpbWU7IH0KLSAgICBkb3VibGUgZHVyYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9u
OyB9CisgICAgdmlydHVhbCBkb3VibGUgc3RhcnRUaW1lKCkgY29uc3QgeyByZXR1cm4gbV9zdGFy
dFRpbWU7IH0KKyAgICB2aXJ0dWFsIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1f
ZHVyYXRpb247IH0KIAotICAgIGVudW0gY2xhc3MgVHlwZSB7CisgICAgZW51bSBjbGFzcyBUeXBl
IDogdWludDhfdCB7CiAgICAgICAgIE5hdmlnYXRpb24gID0gMSA8PCAwLAogICAgICAgICBNYXJr
ICAgICAgICA9IDEgPDwgMSwKICAgICAgICAgTWVhc3VyZSAgICAgPSAxIDw8IDIsCkBAIC01NSwx
NiArNTUsMTEgQEAgcHVibGljOgogICAgICAgICBQYWludCAgICAgICA9IDEgPDwgNAogICAgIH07
CiAKLSAgICB2aXJ0dWFsIFR5cGUgdHlwZSgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIFR5cGUg
cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBBU0NJSUxpdGVy
YWwgZW50cnlUeXBlKCkgY29uc3QgPSAwOwogCiAgICAgc3RhdGljIE9wdGlvbmFsPFR5cGU+IHBh
cnNlRW50cnlUeXBlU3RyaW5nKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKIAotICAgIGJvb2wg
aXNSZXNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpSZXNvdXJjZTsgfQot
ICAgIGJvb2wgaXNNYXJrKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6Ok1hcms7IH0K
LSAgICBib29sIGlzTWVhc3VyZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpNZWFz
dXJlOyB9Ci0gICAgYm9vbCBpc1BhaW50KCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6
OlBhaW50OyB9Ci0KICAgICBzdGF0aWMgYm9vbCBzdGFydFRpbWVDb21wYXJlTGVzc1RoYW4oY29u
c3QgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+JiBhLCBjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeT4mIGIpCiAgICAgewogICAgICAgICByZXR1cm4gYS0+c3RhcnRUaW1lKCkgPCBiLT5zdGFy
dFRpbWUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJr
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oCmluZGV4IGM3M2IyMzEy
ZjMyYTA0YzgyMWM4ZDBlY2E4NzdlYWJiMzNmZTRlMmYuLmI3NTE0ZjAxNTM1ODA5ZGFiNTNjY2Fj
MDY0YzUyYjBmMThlYjZjNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VNYXJrLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaApA
QCAtNDgsMTQgKzQ4LDEwIEBAIHByaXZhdGU6CiAgICAgUGVyZm9ybWFuY2VNYXJrKGNvbnN0IFN0
cmluZyYgbmFtZSwgZG91YmxlIHN0YXJ0VGltZSwgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4m
Jik7CiAgICAgflBlcmZvcm1hbmNlTWFyaygpOwogCi0gICAgVHlwZSB0eXBlKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gVHlwZTo6TWFyazsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJrOyB9CiAgICAgQVNDSUlMaXRlcmFsIGVu
dHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJtYXJrIl9zOyB9CiAKICAgICBSZWY8U2Vy
aWFsaXplZFNjcmlwdFZhbHVlPiBtX3NlcmlhbGl6ZWREZXRhaWw7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVy
Zm9ybWFuY2VNYXJrKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJm
b3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNNYXJrKCk7IH0KLVNQRUNJQUxJ
WkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VNZWFzdXJlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3Vy
ZS5oCmluZGV4IDM1ZGI2YTE2NmI1N2VlODZlNjMwODMyZGY0MjY4NTVkOTdhN2ZiZjUuLjJkMmFh
M2VlMTI5NTIxMmUxNmVkZTZlM2RkYzgwZmM2NGRlMjZmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU1lYXN1cmUuaApAQCAtNDgsMTQgKzQ4LDEwIEBAIHByaXZhdGU6CiAgICAg
UGVyZm9ybWFuY2VNZWFzdXJlKGNvbnN0IFN0cmluZyYgbmFtZSwgZG91YmxlIHN0YXJ0VGltZSwg
ZG91YmxlIGVuZFRpbWUsIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgZGV0YWlsKTsKICAg
ICB+UGVyZm9ybWFuY2VNZWFzdXJlKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBUeXBlOjpNZWFzdXJlOyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7IH0KICAgICBBU0NJSUxpdGVyYWwg
ZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm1lYXN1cmUiX3M7IH0KIAogICAgIFJl
ZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1fc2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpQZXJmb3JtYW5jZU1lYXN1cmUpCi0gICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNv
cmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRyeS5pc01lYXN1cmUoKTsg
fQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4MWIzNWJl
NmM0NWFkY2Y4NWM2OTNhMTljM2FhMmQ4MDA4OTMzODYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKQEAgLTAsMCAr
MSwxNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QK
KyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKKwor
I2luY2x1ZGUgIkNhY2hlZFJlc291cmNlLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VUaW1pbmcuaCIK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nOjpOYXZpZ2F0aW9uVHlwZSB0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRp
b25UeXBlKE5hdmlnYXRpb25UeXBlIG5hdmlnYXRpb25UeXBlKQoreworICAgIHN3aXRjaCAobmF2
aWdhdGlvblR5cGUpIHsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpCYWNrRm9yd2FyZDoKKyAg
ICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6
OkJhY2tfZm9yd2FyZDsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpSZWxvYWQ6CisgICAgICAg
IHJldHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpSZWxv
YWQ7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6TGlua0NsaWNrZWQ6CisgICAgY2FzZSBOYXZp
Z2F0aW9uVHlwZTo6Rm9ybVN1Ym1pdHRlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpGb3Jt
UmVzdWJtaXR0ZWQ6CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6T3RoZXI6CisgICAgICAgIHJl
dHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpOYXZpZ2F0
ZTsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6Ok5hdmlnYXRlOworfQorCitQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyhNb25v
dG9uaWNUaW1lIHRpbWVPcmlnaW4sIENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTG9h
ZFRpbWluZyYgbG9hZFRpbWluZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzLCBj
b25zdCBEb2N1bWVudFRpbWluZyYgZG9jdW1lbnRUaW1pbmcsIGNvbnN0IFNlY3VyaXR5T3JpZ2lu
JiBvcmlnaW4sIFdlYkNvcmU6Ok5hdmlnYXRpb25UeXBlIG5hdmlnYXRpb25UeXBlKQorICAgIDog
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyh0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZzo6ZnJv
bUxvYWQocmVzb3VyY2UsIHJlc291cmNlLnJlc3BvbnNlKCkudXJsKCksICJuYXZpZ2F0aW9uIl9z
LCBsb2FkVGltaW5nLCBtZXRyaWNzLCBvcmlnaW4pKQorICAgICwgbV9kb2N1bWVudFRpbWluZyhk
b2N1bWVudFRpbWluZykKKyAgICAsIG1fbmF2aWdhdGlvblR5cGUodG9QZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZShuYXZpZ2F0aW9uVHlwZSkpIHsgfQorCitQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6On5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoKSA9IGRl
ZmF1bHQ7CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Om1pbGxpc2Vjb25k
c1NpbmNlT3JpZ2luKE1vbm90b25pY1RpbWUgdGltZSwgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4g
dGltZU9yaWdpbikgY29uc3QKK3sKKyAgICBpZiAoIXRpbWUpCisgICAgICAgIHJldHVybiAwOwor
ICAgIHJldHVybiBQZXJmb3JtYW5jZTo6cmVkdWNlVGltZVJlc29sdXRpb24odGltZSAtICh0aW1l
T3JpZ2luID8gKnRpbWVPcmlnaW4gOiBtX3RpbWVPcmlnaW4pKS5taWxsaXNlY29uZHMoKTsKK30K
KworYm9vbCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnNhbWVPcmlnaW5DaGVja0ZhaWxz
KCkgY29uc3QKK3sKKyAgICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1p
bmctMi8jZGZuLXNhbWUtb3JpZ2luLWNoZWNrCisgICAgcmV0dXJuICFtX3Jlc291cmNlVGltaW5n
LmFsbG93VGltaW5nRGV0YWlscygpCisgICAgICAgIHx8IG1fcmVzb3VyY2VUaW1pbmcubG9hZFRp
bWluZygpLmhhc0Nyb3NzT3JpZ2luUmVkaXJlY3QoKQorICAgICAgICB8fCAhbV9yZXNvdXJjZVRp
bWluZy5sb2FkVGltaW5nKCkuaGFzU2FtZU9yaWdpbkFzUHJldmlvdXNEb2N1bWVudCgpOworfQor
Citkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0KCkg
Y29uc3QKK3sKKyAgICBpZiAoc2FtZU9yaWdpbkNoZWNrRmFpbHMoKSkKKyAgICAgICAgcmV0dXJu
IDAuMDsKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWlu
Zy5sb2FkVGltaW5nKCkudW5sb2FkRXZlbnRTdGFydCgpKTsKK30KKworZG91YmxlIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQoKSBjb25zdAoreworICAgIGlmIChz
YW1lT3JpZ2luQ2hlY2tGYWlscygpKQorICAgICAgICByZXR1cm4gMC4wOworICAgIHJldHVybiBt
aWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS51bmxv
YWRFdmVudEVuZCgpKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6
ZG9tSW50ZXJhY3RpdmUoKSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9y
aWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlKTsKK30KKworZG91YmxlIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQoKSBjb25z
dAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5n
LmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db250ZW50
TG9hZGVkRXZlbnRFbmQpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojpkb21Db21wbGV0ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3Jp
Z2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUpOworfQorCitkb3VibGUgUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nOjpsb2FkRXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmxv
YWRFdmVudFN0YXJ0KCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojpsb2FkRXZlbnRFbmQoKSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9y
aWdpbihtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5sb2FkRXZlbnRFbmQoKSk7Cit9CisK
K1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGUgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjp0eXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9uYXZpZ2F0aW9u
VHlwZTsKK30KKwordW5zaWduZWQgc2hvcnQgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpy
ZWRpcmVjdENvdW50KCkgY29uc3QKK3sKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dU
aW1pbmdEZXRhaWxzKCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKG1fcmVzb3VyY2VU
aW1pbmcubG9hZFRpbWluZygpLmhhc0Nyb3NzT3JpZ2luUmVkaXJlY3QoKSkKKyAgICAgICAgcmV0
dXJuIDA7CisKKyAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVkaXJl
Y3RDb3VudCgpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpzdGFy
dFRpbWUoKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9u
LXRpbWluZy0yLyNkb20tUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLXN0YXJ0VGltZQorICAg
IHJldHVybiAwLjA7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmR1
cmF0aW9uKCkgY29uc3QKK3sKKyAgICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlv
bi10aW1pbmctMi8jZG9tLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy1kdXJhdGlvbgorICAg
IHJldHVybiBsb2FkRXZlbnRFbmQoKSAtIHN0YXJ0VGltZSgpOworfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43M2MwZjdhZGVjYzBjNDYxZTZiYzg3ODRiOGIzMmE1ZDFh
Y2NjMTdmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuaApAQCAtMCwwICsxLDgxIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAor
ICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRG9jdW1lbnRUaW1pbmcuaCIKKyNpbmNsdWRl
ICJQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCisjaW5jbHVkZSA8d3RmL01vbm90b25pY1Rp
bWUuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dU
RlN0cmluZy5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIENhY2hlZFJlc291cmNl
OworY2xhc3MgTG9hZFRpbWluZzsKK2NsYXNzIE5ldHdvcmtMb2FkTWV0cmljczsKK2NsYXNzIFNl
Y3VyaXR5T3JpZ2luOworZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSA6IHVpbnQ4X3Q7CisKK2Ns
YXNzIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyBmaW5hbCA6IHB1YmxpYyBQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nIHsKK3B1YmxpYzoKKyAgICBlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBl
IDogdWludDhfdCB7CisgICAgICAgIE5hdmlnYXRlLAorICAgICAgICBSZWxvYWQsCisgICAgICAg
IEJhY2tfZm9yd2FyZCwKKyAgICAgICAgUHJlcmVuZGVyLAorICAgIH07CisKKyAgICB0ZW1wbGF0
ZTx0eXBlbmFtZS4uLiBBcmdzPiBzdGF0aWMgUmVmPFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zz4gY3JlYXRlKEFyZ3MmJi4uLiBhcmdzKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZyhzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4pKTsgfQorICAg
IH5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoKTsKKworICAgIFR5cGUgcGVyZm9ybWFuY2VF
bnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpOYXZpZ2F0aW9uOyB9CisgICAg
QVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJuYXZpZ2F0aW9u
Il9zOyB9CisKKyAgICBkb3VibGUgdW5sb2FkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRvdWJs
ZSB1bmxvYWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21JbnRlcmFjdGl2ZSgpIGNv
bnN0OworICAgIGRvdWJsZSBkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCgpIGNvbnN0OworICAg
IGRvdWJsZSBkb21Db250ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBkb3VibGUgZG9t
Q29tcGxldGUoKSBjb25zdDsKKyAgICBkb3VibGUgbG9hZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAg
ICBkb3VibGUgbG9hZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgTmF2aWdhdGlvblR5cGUgdHlwZSgp
IGNvbnN0OworICAgIHVuc2lnbmVkIHNob3J0IHJlZGlyZWN0Q291bnQoKSBjb25zdDsKKworICAg
IGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCBmaW5hbDsKKyAgICBkb3VibGUgZHVyYXRpb24oKSBj
b25zdCBmaW5hbDsKKworcHJpdmF0ZToKKyAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmco
TW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1p
bmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBEb2N1bWVudFRpbWluZyYsIGNv
bnN0IFNlY3VyaXR5T3JpZ2luJiwgV2ViQ29yZTo6TmF2aWdhdGlvblR5cGUpOworCisgICAgZG91
YmxlIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKE1vbm90b25pY1RpbWUsIE9wdGlvbmFsPE1vbm90
b25pY1RpbWU+IHRpbWVPcmlnaW4gPSBXVEY6Om51bGxvcHQpIGNvbnN0OworICAgIGJvb2wgc2Ft
ZU9yaWdpbkNoZWNrRmFpbHMoKSBjb25zdDsKKworICAgIERvY3VtZW50VGltaW5nIG1fZG9jdW1l
bnRUaW1pbmc7CisgICAgTmF2aWdhdGlvblR5cGUgbV9uYXZpZ2F0aW9uVHlwZTsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMmU0MzBiZjJiZGJhOWQxOTJh
OGIxMzZmNmIxMjAwMzg0OGI3Yzc4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCkBAIC0wLDAgKzEsNTIgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisvLyBodHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8j
ZG9tLXBlcmZvcm1hbmNlbmF2aWdhdGlvbnRpbWluZworCit0eXBlZGVmIGRvdWJsZSBET01IaWdo
UmVzVGltZVN0YW1wOworCitlbnVtIE5hdmlnYXRpb25UeXBlIHsKKyAgICAibmF2aWdhdGUiLAor
ICAgICJyZWxvYWQiLAorICAgICJiYWNrX2ZvcndhcmQiLAorICAgICJwcmVyZW5kZXIiCit9Owor
CitbCisgICAgRW5hYmxlZEF0UnVudGltZT1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUEks
CisgICAgRXhwb3NlZD1XaW5kb3cKK10gaW50ZXJmYWNlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZyA6IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgeworICAgIHJlYWRvbmx5ICAgICAgICBh
dHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRv
bmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCB1bmxvYWRFdmVudEVuZDsK
KyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tSW50
ZXJhY3RpdmU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0
YW1wIGRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRy
aWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRFbmQ7CisgICAg
cmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbXBsZXRl
OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBsb2Fk
RXZlbnRTdGFydDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1l
U3RhbXAgbG9hZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgTmF2aWdh
dGlvblR5cGUgICAgICB0eXBlOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgdW5zaWdu
ZWQgc2hvcnQgICAgICByZWRpcmVjdENvdW50OworICAgIFtEZWZhdWx0XSBvYmplY3QgdG9KU09O
KCk7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2Vy
dmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKaW5k
ZXggNDY0NzI2N2QxMjg5ZGJiNmE1MzIwYTRhZmViMjA0NjBhYmYyODc2MS4uOTQ4Nzk0YmVkZDc1
NDA0ZmYwM2JiNjUzMzQ0MzJhMzYxZDE0YjQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRl
ICJQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJs
ZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIldvcmtlckdsb2JhbFNjb3BlLmgiCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTEwNyw2ICsxMDgsMTEgQEAgRXhjZXB0aW9uT3I8dm9pZD4gUGVyZm9y
bWFuY2VPYnNlcnZlcjo6b2JzZXJ2ZShJbml0JiYgaW5pdCkKICAgICByZXR1cm4geyB9OwogfQog
CitWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZU9ic2VydmVyOjp0
YWtlUmVjb3JkcygpCit7CisgICAgcmV0dXJuIHN0ZDo6ZXhjaGFuZ2UobV9lbnRyaWVzVG9EZWxp
dmVyLCB7IH0pOworfQorCiB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QoKQog
ewogICAgIGlmIChtX3BlcmZvcm1hbmNlKQpAQCAtMTE0LDYgKzEyMCw3IEBAIHZvaWQgUGVyZm9y
bWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCgpCiAKICAgICBtX3JlZ2lzdGVyZWQgPSBmYWxzZTsK
ICAgICBtX2VudHJpZXNUb0RlbGl2ZXIuY2xlYXIoKTsKKyAgICBtX3R5cGVGaWx0ZXIgPSB7IH07
CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVu
dHJ5JiBlbnRyeSkKQEAgLTEzMCw3ICsxMzcsNyBAQCB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6
OmRlbGl2ZXIoKQogICAgIGlmICghY29udGV4dCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgVmVj
dG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllcyA9IFdURk1vdmUobV9lbnRyaWVz
VG9EZWxpdmVyKTsKKyAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVz
ID0gc3RkOjpleGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIsIHsgfSk7CiAgICAgYXV0byBsaXN0
ID0gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Y3JlYXRlKFdURk1vdmUoZW50cmllcykp
OwogCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsRmlyZU9ic2VydmVyQ2FsbGJh
Y2soKmNvbnRleHQsICJQZXJmb3JtYW5jZU9ic2VydmVyIl9zKTsKQEAgLTE0MSwxMiArMTQ4LDEz
IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcigpCiBWZWN0b3I8U3RyaW5nPiBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpCiB7CiAgICAgVmVjdG9yPFN0cmluZz4gZW50cnlUeXBlcyA9IHsKLSAg
ICAgICAgLy8gRklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8xODQzNjM+IEFkZCBzdXBwb3J0
IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCi0gICAgICAgIC8vICJuYXZpZ2F0aW9uIl9z
LAogICAgICAgICAibWFyayJfcywKLSAgICAgICAgIm1lYXN1cmUiX3MKKyAgICAgICAgIm1lYXN1
cmUiX3MsCiAgICAgfTsKIAorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRG
ZWF0dXJlcygpLnBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQoKSkKKyAgICAg
ICAgZW50cnlUeXBlcy5hcHBlbmQoIm5hdmlnYXRpb24iX3MpOworCiAgICAgaWYgKGlzPERvY3Vt
ZW50Pihjb250ZXh0KSAmJiBkb3duY2FzdDxEb2N1bWVudD4oY29udGV4dCkuc3VwcG9ydHNQYWlu
dFRpbWluZygpKQogICAgICAgICBlbnRyeVR5cGVzLmFwcGVuZCgicGFpbnQiX3MpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oCmluZGV4IDI4NzJmMTdhYWI1YjU3
NjZiZmM0OGNjNDgwMDA0YWRkOGJkZTFmZjkuLjQxOTMwNWQ0N2MyMTUyN2Q4ZTFjYmViNTdiY2U1
YzBkODJjMmE3ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5o
CkBAIC01Nyw2ICs1Nyw3IEBAIHB1YmxpYzoKIAogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IG9ic2Vy
dmUoSW5pdCYmKTsKICAgICB2b2lkIGRpc2Nvbm5lY3QoKTsKKyAgICBWZWN0b3I8UmVmUHRyPFBl
cmZvcm1hbmNlRW50cnk+PiB0YWtlUmVjb3JkcygpOwogCiAgICAgT3B0aW9uU2V0PFBlcmZvcm1h
bmNlRW50cnk6OlR5cGU+IHR5cGVGaWx0ZXIoKSBjb25zdCB7IHJldHVybiBtX3R5cGVGaWx0ZXI7
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVy
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKaW5kZXgg
YjcwN2Y2NjAyZTMwOTdhYzIzN2NlYWM3MmU0YTdkMDY3MjYzNjUxMy4uNjgzYTJiZWEwMTQ1OTQz
MjU3ZjljN2YyMDJlNmY1NWMzZGI0YmQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuaWRsCkBAIC0zMyw4ICszMyw5IEBACiBdIGludGVyZmFjZSBQZXJmb3Jt
YW5jZU9ic2VydmVyIHsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gY29u
c3RydWN0b3IoUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrIGNhbGxiYWNrKTsKIAotICAgIHVu
ZGVmaW5lZCBvYnNlcnZlKFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0IG9wdGlvbnMpOworICAgIHVu
ZGVmaW5lZCBvYnNlcnZlKG9wdGlvbmFsIFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0IG9wdGlvbnMp
OwogICAgIHVuZGVmaW5lZCBkaXNjb25uZWN0KCk7CisgICAgc2VxdWVuY2U8UGVyZm9ybWFuY2VF
bnRyeT4gdGFrZVJlY29yZHMoKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gc3RhdGljIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJheTxET01TdHJpbmc+IHN1cHBv
cnRlZEVudHJ5VHlwZXM7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAppbmRleCBlMDM2NjVhYWNiNzBiYjhmODYzOWFm
NGJjN2FlMWQwNjBkYmIxZTQ2Li5kZDdmYzk3Y2EzOGY4M2UyNDU1ZTkyNzA4MjM1MTUwMDNlOWE5
Y2U5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJF
bnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZl
ckVudHJ5TGlzdC5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Z2V0RW50cmllc0J5TmFtZSgK
ICAgICBmb3IgKGF1dG8mIGVudHJ5IDogbV9lbnRyaWVzKSB7CiAgICAgICAgIGlmICghbmFtZS5p
c051bGwoKSAmJiBlbnRyeS0+bmFtZSgpICE9IG5hbWUpCiAgICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgaWYgKHR5cGUgJiYgZW50cnktPnR5cGUoKSAhPSAqdHlwZSkKKyAgICAgICAgaWYg
KHR5cGUgJiYgZW50cnktPnBlcmZvcm1hbmNlRW50cnlUeXBlKCkgIT0gKnR5cGUpCiAgICAgICAg
ICAgICBjb250aW51ZTsKICAgICAgICAgZW50cmllcy5hcHBlbmQoZW50cnkuY29weVJlZigpKTsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUGFpbnRU
aW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCmlu
ZGV4IGEyODFiYTM4MjI0OGY4MjM2MGYzNzc4YjFiZmZmNTVlMzk2ZTI1Y2YuLjcwZjgwODVmOWNj
NzU4NzkwNDYyOTEwYzgwYWE3NGE2YmM3NzQwMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VQYWludFRpbWluZy5oCkBAIC00NCwxMyArNDQsOSBAQCBwcml2YXRlOgogICAg
IH0KIAogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAi
cGFpbnQiX3M7IH0KLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpQ
YWludDsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBUeXBlOjpQYWludDsgfQogCiAgICAgflBlcmZvcm1hbmNlUGFpbnRUaW1pbmcoKSA9IGRl
ZmF1bHQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9U
UkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VQYWludFRpbWluZykKLSAgICBzdGF0aWMg
Ym9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0
dXJuIGVudHJ5LmlzUGFpbnQoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKaW5k
ZXggZGQ3MWFhN2NiMTc4YjNiMDg1ZTNhYTllMmM1YmIzY2YyMzdlYjBhOS4uZTVkZDEyYjlmODNh
NDE0M2EzZmM2YTUzYzUxYWZhMjljOTg5OWRkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC04MSwxMiArODEsOSBAQCBSZWY8
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y3Jl
YXRlKE1vbm90b25pY1RpbWUgdAogCiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1p
bmcmJiByZXNvdXJjZVRpbWluZykKICAgICA6IFBlcmZvcm1hbmNlRW50cnkocmVzb3VyY2VUaW1p
bmcudXJsKCkuc3RyaW5nKCksIGVudHJ5U3RhcnRUaW1lKHRpbWVPcmlnaW4sIHJlc291cmNlVGlt
aW5nKSwgZW50cnlFbmRUaW1lKHRpbWVPcmlnaW4sIHJlc291cmNlVGltaW5nKSkKLSAgICAsIG1f
aW5pdGlhdG9yVHlwZShyZXNvdXJjZVRpbWluZy5pbml0aWF0b3IoKSkKICAgICAsIG1fdGltZU9y
aWdpbih0aW1lT3JpZ2luKQotICAgICwgbV9sb2FkVGltaW5nKHJlc291cmNlVGltaW5nLmxvYWRU
aW1pbmcoKSkKLSAgICAsIG1fbmV0d29ya0xvYWRNZXRyaWNzKHJlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpKQotICAgICwgbV9zaG91bGRSZXBvcnREZXRhaWxzKHJlc291cmNlVGlt
aW5nLmFsbG93VGltaW5nRGV0YWlscygpKQotICAgICwgbV9zZXJ2ZXJUaW1pbmcocmVzb3VyY2VU
aW1pbmcucG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSkKKyAgICAsIG1fcmVzb3VyY2VUaW1pbmcoV1RG
TW92ZShyZXNvdXJjZVRpbWluZykpCisgICAgLCBtX3NlcnZlclRpbWluZyhtX3Jlc291cmNlVGlt
aW5nLnBvcHVsYXRlU2VydmVyVGltaW5nKCkpCiB7CiB9CiAKQEAgLTk0LDcgKzkxLDcgQEAgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6flBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoKSA9IGRl
ZmF1bHQ7CiAKIGNvbnN0IFN0cmluZyYgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV4dEhv
cFByb3RvY29sKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3MucHJv
dG9jb2w7CisgICAgcmV0dXJuIG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCku
cHJvdG9jb2w7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjp3b3JrZXJT
dGFydCgpIGNvbnN0CkBAIC0xMDUsMTQwICsxMDIsMTQwIEBAIGRvdWJsZSBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nOjp3b3JrZXJTdGFydCgpIGNvbnN0CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nOjpyZWRpcmVjdFN0YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxk
UmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRh
aWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICByZXR1cm4gbW9ub3RvbmljVGltZVRv
RE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fbG9hZFRpbWluZy5yZWRpcmVjdFN0
YXJ0KCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1f
dGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVkaXJlY3RTdGFydCgp
KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlZGlyZWN0RW5kKCkg
Y29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVz
b3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAK
LSAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmln
aW4sIG1fbG9hZFRpbWluZy5yZWRpcmVjdEVuZCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGlt
ZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9h
ZFRpbWluZygpLnJlZGlyZWN0RW5kKCkpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZzo6ZmV0Y2hTdGFydCgpIGNvbnN0CiB7CiAgICAgLy8gZmV0Y2hTdGFydCBpcyBhIHJl
cXVpcmVkIHByb3BlcnR5LgotICAgIEFTU0VSVChtX2xvYWRUaW1pbmcuZmV0Y2hTdGFydCgpKTsK
KyAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuZmV0Y2hTdGFydCgpKTsK
IAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9y
aWdpbiwgbV9sb2FkVGltaW5nLmZldGNoU3RhcnQoKSk7CisgICAgcmV0dXJuIG1vbm90b25pY1Rp
bWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291cmNlVGltaW5nLmxv
YWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZzo6ZG9tYWluTG9va3VwU3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRS
ZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFp
bHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmlj
cy5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cFN0YXJ0IDw9IDBfbXMpCiAgICAgICAgIHJl
dHVybiBmZXRjaFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdo
UmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0KTsKKyAg
ICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fcmVzb3VyY2VU
aW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwU3RhcnQpOwogfQogCiBkb3Vi
bGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6ZG9tYWluTG9va3VwRW5kKCkgY29uc3QKIHsK
LSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1p
bmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAo
bV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5kIDw9IDBfbXMpCisgICAgaWYgKG1f
cmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwRW5kIDw9IDBf
bXMpCiAgICAgICAgIHJldHVybiBkb21haW5Mb29rdXBTdGFydCgpOwogCi0gICAgcmV0dXJuIG5l
dHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5k
b21haW5Mb29rdXBFbmQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNU
aW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29r
dXBFbmQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdFN0
YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAo
IW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAw
LjA7CiAKLSAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdFN0YXJ0IDw9IDBfbXMp
CisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuY29ubmVjdFN0
YXJ0IDw9IDBfbXMpCiAgICAgICAgIHJldHVybiBkb21haW5Mb29rdXBFbmQoKTsKIAotICAgIHJl
dHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1l
dHJpY3MuY29ubmVjdFN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdo
UmVzVGltZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuY29ubmVj
dFN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNvbm5lY3RF
bmQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICgh
bV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAu
MDsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kIDw9IDBfbXMpCisg
ICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuY29ubmVjdEVuZCA8
PSAwX21zKQogICAgICAgICByZXR1cm4gY29ubmVjdFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0
d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNv
bm5lY3RFbmQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3Rh
bXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kKTsKIH0K
IAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnNlY3VyZUNvbm5lY3Rpb25TdGFy
dCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFt
X3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4w
OwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9
PSByZXVzZWRUTFNDb25uZWN0aW9uU2VudGluZWwpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcu
bmV0d29ya0xvYWRNZXRyaWNzKCkuc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IHJldXNlZFRMU0Nv
bm5lY3Rpb25TZW50aW5lbCkKICAgICAgICAgcmV0dXJuIGZldGNoU3RhcnQoKTsKIAotICAgIGlm
IChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPD0gMF9tcykKKyAg
ICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1cmVDb25uZWN0
aW9uU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBuZXR3
b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2Vj
dXJlQ29ubmVjdGlvblN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdo
UmVzVGltZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuc2VjdXJl
Q29ubmVjdGlvblN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OnJlcXVlc3RTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMp
CisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAg
ICByZXR1cm4gMC4wOwogCiAgICAgLy8gcmVxdWVzdFN0YXJ0IGlzIDAgd2hlbiBhIG5ldHdvcmsg
cmVxdWVzdCBpcyBub3QgbWFkZS4KLSAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVz
dFN0YXJ0IDw9IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRy
aWNzKCkucmVxdWVzdFN0YXJ0IDw9IDBfbXMpCiAgICAgICAgIHJldHVybiBjb25uZWN0RW5kKCk7
CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0
d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGlt
ZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmlj
cygpLnJlcXVlc3RTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
OjpyZXNwb25zZVN0YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWls
cykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAg
ICAgIHJldHVybiAwLjA7CiAKICAgICAvLyByZXNwb25zZVN0YXJ0IGlzIDAgd2hlbiBhIG5ldHdv
cmsgcmVxdWVzdCBpcyBub3QgbWFkZS4KLSAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVz
cG9uc2VTdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2Fk
TWV0cmljcygpLnJlc3BvbnNlU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIHJlcXVlc3RT
dGFydCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFt
cChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29y
a0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xv
YWRNZXRyaWNzKCkucmVzcG9uc2VTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpyZXNwb25zZUVuZCgpIGNvbnN0CiB7CiAgICAgLy8gcmVzcG9uc2VFbmQgaXMg
YSByZXF1aXJlZCBwcm9wZXJ0eS4KLSAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MuaXND
b21wbGV0ZSgpIHx8IG1fbG9hZFRpbWluZy5yZXNwb25zZUVuZCgpKTsKKyAgICBBU1NFUlQobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5pc0NvbXBsZXRlKCkgfHwgbV9yZXNv
dXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVzcG9uc2VFbmQoKSk7CiAKLSAgICBpZiAobV9uZXR3
b3JrTG9hZE1ldHJpY3MuaXNDb21wbGV0ZSgpKSB7CisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcu
bmV0d29ya0xvYWRNZXRyaWNzKCkuaXNDb21wbGV0ZSgpKSB7CiAgICAgICAgIC8vIHJlc3BvbnNl
RW5kIGlzIDAgd2hlbiBhIG5ldHdvcmsgcmVxdWVzdCBpcyBub3QgbWFkZS4KICAgICAgICAgLy8g
VGhpcyBzaG91bGQgbWVhbiBhbGwgb3RoZXIgcHJvcGVydGllcyBhcmUgZW1wdHkuCi0gICAgICAg
IGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUVuZCA8PSAwX21zKSB7Ci0gICAgICAg
ICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA8PSAwX21zKTsK
LSAgICAgICAgICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0g
MF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdFN0
YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLnNl
Y3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdv
cmtMb2FkTWV0cmljcy5jb25uZWN0RW5kIDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1f
bmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFT
U0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBFbmQgPD0gMF9tcyk7Ci0gICAg
ICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQgPD0g
MF9tcyk7Ci0gICAgICAgICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOworICAgICAgICBpZiAobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25zZUVuZCA8PSAwX21zKSB7
CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpOworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VU
aW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVzdFN0YXJ0IDw9IDBfbXMpOworICAgICAg
ICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVz
dFN0YXJ0IDw9IDBfbXMpOworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0
d29ya0xvYWRNZXRyaWNzKCkuc2VjdXJlQ29ubmVjdGlvblN0YXJ0IDw9IDBfbXMpOworICAgICAg
ICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuY29ubmVj
dEVuZCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdv
cmtMb2FkTWV0cmljcygpLmNvbm5lY3RTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VS
VChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCA8
PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2Fk
TWV0cmljcygpLmRvbWFpbkxvb2t1cFN0YXJ0IDw9IDBfbXMpOworICAgICAgICAgICAgcmV0dXJu
IHJlc3BvbnNlU3RhcnQoKTsKICAgICAgICAgfQogCi0gICAgICAgIHJldHVybiBuZXR3b3JrTG9h
ZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVzcG9uc2VF
bmQpOworICAgICAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VFbmQpOwogICAg
IH0KIAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGlt
ZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlc3BvbnNlRW5kKCkpOworICAgIHJldHVybiBtb25vdG9u
aWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWlu
Zy5sb2FkVGltaW5nKCkucmVzcG9uc2VFbmQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nOjpuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAoU2Vjb25k
cyBkZWx0YSkgY29uc3QKIHsKICAgICBBU1NFUlQoZGVsdGEpOwotICAgIFNlY29uZHMgZmluYWwg
PSAobV9sb2FkVGltaW5nLmZldGNoU3RhcnQoKSArIGRlbHRhKSAtIG1fdGltZU9yaWdpbjsKKyAg
ICBTZWNvbmRzIGZpbmFsID0gKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3Rh
cnQoKSArIGRlbHRhKSAtIG1fdGltZU9yaWdpbjsKICAgICByZXR1cm4gUGVyZm9ybWFuY2U6OnJl
ZHVjZVRpbWVSZXNvbHV0aW9uKGZpbmFsKS5taWxsaXNlY29uZHMoKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAppbmRleCA1ZDA3OWY0
YzY2NTY1MjMxNWEwMDEyNDYzYzhjZGY5Y2U1MmVjNWExLi5iNzY2YzljMDA5NWZkMGM5MDg4ZjM5
MTdlNTZlMWRmZWQ0NTU1YTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuaApAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgIkxvYWRUaW1p
bmcuaCIKICNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3MuaCIKICNpbmNsdWRlICJQZXJmb3Jt
YW5jZUVudHJ5LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlIDx3dGYv
UmVmLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTQyLDExICs0Mywx
MSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzsK
IGNsYXNzIFJlc291cmNlVGltaW5nOwogCi1jbGFzcyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
IGZpbmFsIDogcHVibGljIFBlcmZvcm1hbmNlRW50cnkgeworY2xhc3MgUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZyA6IHB1YmxpYyBQZXJmb3JtYW5jZUVudHJ5IHsKIHB1YmxpYzoKICAgICBzdGF0
aWMgUmVmPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+IGNyZWF0ZShNb25vdG9uaWNUaW1lIHRp
bWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYpOwogCi0gICAgY29uc3QgQXRvbVN0cmluZyYgaW5p
dGlhdG9yVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1faW5pdGlhdG9yVHlwZTsgfQorICAgIGNvbnN0
IFN0cmluZyYgaW5pdGlhdG9yVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VUaW1pbmcu
aW5pdGlhdG9yKCk7IH0KICAgICBjb25zdCBTdHJpbmcmIG5leHRIb3BQcm90b2NvbCgpIGNvbnN0
OwogCiAgICAgZG91YmxlIHdvcmtlclN0YXJ0KCkgY29uc3Q7CkBAIC02MSwyNyArNjIsMjEgQEAg
cHVibGljOgogICAgIGRvdWJsZSByZXF1ZXN0U3RhcnQoKSBjb25zdDsKICAgICBkb3VibGUgcmVz
cG9uc2VTdGFydCgpIGNvbnN0OwogICAgIGRvdWJsZSByZXNwb25zZUVuZCgpIGNvbnN0OworCiAg
ICAgY29uc3QgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+JiBzZXJ2ZXJUaW1p
bmcoKSBjb25zdCB7IHJldHVybiBtX3NlcnZlclRpbWluZzsgfQogCi0gICAgVHlwZSB0eXBlKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBBU0NJSUxpdGVyYWwg
ZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gInJlc291cmNlIl9zOyB9CisgICAgVHlw
ZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIFR5cGU6OlJl
c291cmNlOyB9CisgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuICJyZXNvdXJjZSJfczsgfQogCi1wcml2YXRlOgorcHJvdGVjdGVkOgogICAgIFBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRp
bWluZyYmKTsKICAgICB+UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZygpOwogCiAgICAgZG91Ymxl
IG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChTZWNvbmRzKSBjb25zdDsKIAot
ICAgIEF0b21TdHJpbmcgbV9pbml0aWF0b3JUeXBlOwogICAgIE1vbm90b25pY1RpbWUgbV90aW1l
T3JpZ2luOwotICAgIExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwotICAgIE5ldHdvcmtMb2FkTWV0
cmljc1dpdGhvdXROb25UaW1pbmdEYXRhIG1fbmV0d29ya0xvYWRNZXRyaWNzOwotICAgIGJvb2wg
bV9zaG91bGRSZXBvcnREZXRhaWxzOworICAgIGNvbnN0IFJlc291cmNlVGltaW5nIG1fcmVzb3Vy
Y2VUaW1pbmc7CiAgICAgVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IG1fc2Vy
dmVyVGltaW5nOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZ
UEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcpCi0gICAg
c3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5
KSB7IHJldHVybiBlbnRyeS5pc1Jlc291cmNlKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNf
RU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaWRsCmluZGV4IDQ2YThmMGYyNTExY2ViNWMwYzdkZDMxMTZjMmY4ZmE3N2ZjOGQ3ZGQuLmYw
NjU2NmQ1ZTBmYTdlMWZkMGI0NTk3ZjEwYjVmMjJlZjY2YTE2ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtNTAsNiArNTAs
MTEgQEAgdHlwZWRlZiBkb3VibGUgRE9NSGlnaFJlc1RpbWVTdGFtcDsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCByZXF1ZXN0U3RhcnQ7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VTdGFydDsKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCByZXNwb25zZUVuZDsKKworICAgIC8vIE5v
dGU6IHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFy
ZSBpbnRlbnRpb25hbGx5IG9taXR0ZWQKKyAgICAvLyBiZWNhdXNlIG9mIHByaXZhY3kgY29uY2Vy
bnMgc3VjaCBhcyBodHRwczovL2dpdGh1Yi5jb20vdzNjL3Jlc291cmNlLXRpbWluZy9pc3N1ZXMv
MjM4CisKKyAgICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvc2VydmVyLXRpbWluZy8jZXh0ZW5z
aW9uLXRvLXRoZS1wZXJmb3JtYW5jZXJlc291cmNldGltaW5nLWludGVyZmFjZQogICAgIFtFbmFi
bGVkQXRSdW50aW1lPVNlcnZlclRpbWluZ10gcmVhZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5
PFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPiBzZXJ2ZXJUaW1pbmc7CiAKICAgICBbRGVmYXVsdF0g
b2JqZWN0IHRvSlNPTigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaAppbmRleCA3MzZkM2QxNWE5MjE5ZDJkMGE3ZWMxODQ1MTg1ZDkzOTUwM2Y3MDYzLi4w
MzQyMDExNzgyMDQyN2U1YmIzNGY0ZmRkN2Y5OGFjZmZiZjFhNDI3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaApAQCAtMTg0LDYgKzE4NCw5IEBAIHB1
YmxpYzoKICAgICB2b2lkIHNldFNlcnZpY2VXb3JrZXJFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7
IG1fc2VydmljZVdvcmtlckVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KICNlbmRpZgogCisgICAgYm9v
bCBwZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkKCkgY29uc3QgeyByZXR1cm4g
bV9wZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkOyB9CisgICAgdm9pZCBzZXRQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX3Bl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQgPSBlbmFibGVkOyB9CisgICAgCiAg
ICAgdm9pZCBzZXRDU1NMb2dpY2FsRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX0NTU0xvZ2lj
YWxFbmFibGVkID0gaXNFbmFibGVkOyB9CiAgICAgYm9vbCBjc3NMb2dpY2FsRW5hYmxlZCgpIGNv
bnN0IHsgcmV0dXJuIG1fQ1NTTG9naWNhbEVuYWJsZWQ7IH0KIApAQCAtMzM1LDYgKzMzOCw3IEBA
IHByaXZhdGU6CiAjZW5kaWYKIAogICAgIGJvb2wgbV9DU1NMb2dpY2FsRW5hYmxlZCB7IGZhbHNl
IH07CisgICAgYm9vbCBtX3BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQgeyBm
YWxzZSB9OwogCiAgICAgLy8gRmFsc2UgYnkgZGVmYXVsdCB1bnRpbCBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExMzUxIC8KICAgICAvLyBodHRwczovL2dpdGh1Yi5j
b20vdzNjL2Nzc3dnLWRyYWZ0cy9pc3N1ZXMvMzI1NyBoYXZlIGJlZW4gc29ydGVkIG91dC4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFu
ZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFu
ZGxlLmNwcAppbmRleCA5ZmYyMzM2MjMwNDVhODk5NDQ1NTJkODJiZjNhNzJmMTIxYmQ5ODc1Li4x
NDc3NGYyMzIzMjdlMTE5OGUzNzRiYzE4NzZhYTllNzljOTY4Y2IyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhhbmRsZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwCkBA
IC02MzQsNyArNjM0LDcgQEAgc3RhdGljIHZvaWQgZG9Ob3RpZnlGaW5pc2goQmxvYlJlc291cmNl
SGFuZGxlJiBoYW5kbGUpCiAgICAgaWYgKCFoYW5kbGUuY2xpZW50KCkpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmaGFuZGxlKTsKKyAg
ICBoYW5kbGUuY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoJmhhbmRsZSwgeyB9KTsKIH0KIAog
dm9pZCBCbG9iUmVzb3VyY2VIYW5kbGU6Om5vdGlmeUZpbmlzaCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaAppbmRleCBkNzEw
N2FhNDU2NzgxN2JlM2E1Zjc5MjA0NDMwNmZlZjcwYjliY2ExLi4xNjk2NWVlOWE1MTdhNDU1OTYx
NTM2NzY3OTZmOTliY2IzNmYyNWQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKQEAgLTIwMCw3ICsyMDAsNyBAQCBwdWJs
aWM6CiB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi1Cb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBj
b3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKiwgTlNVUkxSZXNwb25zZSAqKTsKK0JveDxO
ZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqKTsKIFdF
QkNPUkVfRVhQT1JUIEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJM
U2Vzc2lvblRhc2tUcmFuc2FjdGlvbk1ldHJpY3MgKmluY29tcGxldGVNZXRyaWNzKTsKICNlbmRp
ZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNl
SGFuZGxlQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNl
SGFuZGxlQ2xpZW50LmgKaW5kZXggOWE4MGUxMTNmYjQ4MjgyOTRkN2FmZmNhZTAyOWVmMGNhZjg1
ZGQxNS4uZmJhMDIzM2JlZmEyY2Q0YzE2MTRmNzA1NmI0YjA3NTM3OTMxZWNlZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGll
bnQuaApAQCAtNDQsNiArNDQsNyBAQCBPQkpDX0NMQVNTIE5TQ2FjaGVkVVJMUmVzcG9uc2U7CiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTsKIGNsYXNz
IENyZWRlbnRpYWw7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJpY3M7CiBjbGFzcyBQcm90ZWN0aW9u
U3BhY2U7CiBjbGFzcyBSZXNvdXJjZUhhbmRsZTsKIGNsYXNzIFJlc291cmNlRXJyb3I7CkBAIC02
Nyw3ICs2OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVz
b3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQsIGludCAvKmVuY29kZWREYXRhTGVu
Z3RoKi8pIHsgfQogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQnVm
ZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKTsKICAgICAKLSAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJj
ZUhhbmRsZSopIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNl
SGFuZGxlKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikgeyB9CiAgICAgdmlydHVhbCB2b2lk
IGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgeyB9CiAgICAg
dmlydHVhbCB2b2lkIHdhc0Jsb2NrZWQoUmVzb3VyY2VIYW5kbGUqKSB7IH0KICAgICB2aXJ0dWFs
IHZvaWQgY2Fubm90U2hvd1VSTChSZXNvdXJjZUhhbmRsZSopIHsgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50
LmNwcAppbmRleCBjN2MxMmNlOGU3NTFhNTJiYjQ1MTdkZDAyZDZmNThhZGU2OTEyMGVkLi4yYTdm
ODg0MTFiNGExMzk1YjdmMzE2MDAyMTYyYWU5MzcxZjRmZWIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50
LmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRS
ZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqIGRhdGEsCiAgICAgbV9kYXRh
LmFwcGVuZChkYXRhLCBsZW5ndGgpOwogfQogCi12b2lkIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50
OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiBoYW5kbGUpCit2b2lkIFN5bmNocm9u
b3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiBoYW5kbGUs
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCiB7CiAgICAgbV9tZXNzYWdlUXVldWUtPmtpbGwo
KTsKICNpZiBQTEFURk9STShDT0NPQSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaAppbmRleCA4ZDJhOTc3MTkz
MTRmYzg5MjVjMjJkYmZkZWM1OGVmOTJiMzI3ZGM0Li5mODhkZmY3ZjkzNWI2MzU1ZWEyNzEwNGFh
ZTVlNDJjZjZiNDI0ZDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oCkBAIC02Nyw3ICs2Nyw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3Vy
Y2VIYW5kbGUqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOwogICAg
IHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlQXN5bmMoUmVzb3VyY2VIYW5kbGUqLCBSZXNvdXJjZVJl
c3BvbnNlJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJikgb3ZlcnJpZGU7CiAgICAgdm9p
ZCBkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCB1bnNpZ25lZCwg
aW50IC8qZW5jb2RlZERhdGFMZW5ndGgqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikgb3ZlcnJpZGU7
CiAgICAgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYp
IG92ZXJyaWRlOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCiAgICAg
dm9pZCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlQXN5bmMoUmVzb3VyY2VI
YW5kbGUqLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJv
b2wpPiYmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRp
b25RdWV1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwCmluZGV4
IDNjODJiYzNiNGM2ODU5YjhiYTk0YTMyYmU5YTQyNmE4Mzk5NmVjNTAuLjI0ZDE0ODU4MjA1ZTEy
MmQyZmJlZGYxYTM5M2Q3YTgwZWNmMmM4MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdp
dGhPcGVyYXRpb25RdWV1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1
ZXVlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIk1JTUVUeXBlUmVnaXN0cnku
aCIKKyNpbmNsdWRlICJOZXR3b3JrTG9hZE1ldHJpY3MuaCIKICNpbmNsdWRlICJSZXNvdXJjZUhh
bmRsZS5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50LmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VSZXNwb25zZS5oIgpAQCAtMjM4LDcgKzIzOSw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGVD
RlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGlu
ZygpCiAKICAgICAgICAgTE9HKE5ldHdvcmssICJDRk5ldCAtIFJlc291cmNlSGFuZGxlQ0ZVUkxD
b25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZEZpbmlzaExvYWRpbmcoaGFu
ZGxlPSVwKSAoJXMpIiwgaGFuZGxlLCBoYW5kbGUtPmZpcnN0UmVxdWVzdCgpLnVybCgpLnN0cmlu
ZygpLnV0ZjgoKS5kYXRhKCkpOwogCi0gICAgICAgIGhhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlz
aExvYWRpbmcoaGFuZGxlKTsKKyAgICAgICAgaGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9h
ZGluZyhoYW5kbGUsIE5ldHdvcmtMb2FkTWV0cmljcyB7IH0pOwogICAgICAgICBpZiAocHJvdGVj
dGVkVGhpcy0+bV9tZXNzYWdlUXVldWUpIHsKICAgICAgICAgICAgIHByb3RlY3RlZFRoaXMtPm1f
bWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAgICAgICAgICAgICBwcm90ZWN0ZWRUaGlzLT5tX21lc3Nh
Z2VRdWV1ZSA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCmluZGV4IDViM2M4OThiZDMw
MjdkZGQ1NzI0OTE2NmFjMTRiZWViMWU3MDdiMmEuLjY0YWVhNGZkNTJmOWQ1ZTJlM2QwYjM5YzYz
MjBkYzk2YTdmZGE3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tCkBAIC02Nyw3ICs2Nyw3IEBA
IEJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMU2Vzc2lvblRhc2tU
cmFuc2FjdGlvbk1ldHJpY3MgKmluY29tCiAgICAgKTsKIH0KIAotQm94PE5ldHdvcmtMb2FkTWV0
cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25uZWN0aW9uLCBOU1VSTFJl
c3BvbnNlICpyZXNwb25zZSkKK0JveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRh
KE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbikKIHsKICAgICBOU0RpY3Rpb25hcnkgKnRpbWlu
Z0RhdGEgPSBbY29ubmVjdGlvbiBfdGltaW5nRGF0YV07CiAgICAgaWYgKCF0aW1pbmdEYXRhKQpA
QCAtODksNyArODksNyBAQCBCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShO
U1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rpb24sIE5TVVJMUmVzcG9ucwogICAgICAgICB0aW1pbmdW
YWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJlcXVlc3RTdGFydCIpLAogICAgICAg
ICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJlc3BvbnNlU3RhcnQi
KSwKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwgQCJfa0NGTlRpbWluZ0RhdGFDb25u
ZWN0aW9uUmV1c2VkIiksCi0gICAgICAgIHJlc3BvbnNlLlVSTC5zY2hlbWUKKyAgICAgICAgY29u
bmVjdGlvbi5jdXJyZW50UmVxdWVzdC5VUkwuc2NoZW1lCiAgICAgKTsKIH0KICAgICAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VI
YW5kbGVEZWxlZ2F0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCmluZGV4IDViODI3ZGViMDU3ODVlMzRkMTdk
ZDI5OWQ5NjE0NjIyODA2NmNjODguLmU1NjRhMGNlNjY2MTRhNDlhMTAzMTM2ODg1MWM0ZGE4ODIz
NTJhNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9D
dXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcApAQCAtMTUyLDcg
KzE1Miw3IEBAIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRSZWNlaXZl
QnVmZmVyKEN1cmxSZXF1ZXN0JiwgUmVmPFNoYXJlZEJ1CiAgICAgY2xpZW50KCktPmRpZFJlY2Vp
dmVCdWZmZXIoJm1faGFuZGxlLCBXVEZNb3ZlKGJ1ZmZlciksIGJ1ZmZlci0+c2l6ZSgpKTsKIH0K
IAotdm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZENvbXBsZXRlKEN1cmxS
ZXF1ZXN0JiwgTmV0d29ya0xvYWRNZXRyaWNzJiYpCit2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURl
bGVnYXRlOjpjdXJsRGlkQ29tcGxldGUoQ3VybFJlcXVlc3QmLCBOZXR3b3JrTG9hZE1ldHJpY3Mm
JiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAKQEAgLTE2MCw3ICsx
NjAsNyBAQCB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkQ29tcGxldGUo
Q3VybFJlcXVlc3QmLCBOZXR3b3JrTG9hZE1ldHJpYwogICAgICAgICByZXR1cm47CiAKICAgICBD
dXJsQ2FjaGVNYW5hZ2VyOjpzaW5nbGV0b24oKS5kaWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlKTsK
LSAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmbV9oYW5kbGUpOworICAgIGNsaWVudCgp
LT5kaWRGaW5pc2hMb2FkaW5nKCZtX2hhbmRsZSwgV1RGTW92ZShtZXRyaWNzKSk7CiB9CiAKIHZv
aWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRGYWlsV2l0aEVycm9yKEN1cmxS
ZXF1ZXN0JiwgUmVzb3VyY2VFcnJvciYmIHJlc291cmNlRXJyb3IsIENlcnRpZmljYXRlSW5mbyYm
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291
cmNlSGFuZGxlQ3VybC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
UmVzb3VyY2VIYW5kbGVDdXJsLmNwcAppbmRleCA4ZjE3NWI2NTQyZWEyZjBjODY4ZjcwMWQ1NjI4
MDRiZjdlMmZkNTk3Li5jN2UxYTI0ZmU5NTU5ZTk4ZjViYzU2ZmYyMjcwMGExZTRhZTU5MzE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VI
YW5kbGVDdXJsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
UmVzb3VyY2VIYW5kbGVDdXJsLmNwcApAQCAtMzksNiArMzksNyBAQAogI2luY2x1ZGUgIkN1cmxS
ZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgi
CisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5oIgogI2luY2x1
ZGUgIlNhbWVTaXRlSW5mby5oIgpAQCAtNTgyLDcgKzU4Myw3IEBAIHZvaWQgUmVzb3VyY2VIYW5k
bGU6OmhhbmRsZURhdGFVUkwoKQogICAgIH0KIAogICAgIGlmIChjbGllbnQoKSkKLSAgICAgICAg
Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcodGhpcyk7CisgICAgICAgIGNsaWVudCgpLT5kaWRG
aW5pc2hMb2FkaW5nKHRoaXMsIHsgfSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNv
dXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVE
ZWxlZ2F0ZS5tbQppbmRleCBkNDk3ODYwZDg3NDVjYzIyMjVmZDEzZWU2ZDBkMzI4MjY3NGE1Y2E2
Li44YTQwYjYwMTdlYTA5OWU5ODFkNjlkMWYyOTg1OGUxMTkxNTQxZDg0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVB
c09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRl
Lm1tCkBAIC0zOCw2ICszOCw3IEBACiAjaW1wb3J0ICJTeW5jaHJvbm91c0xvYWRlckNsaWVudC5o
IgogI2ltcG9ydCAiV2ViQ29yZVVSTFJlc3BvbnNlLmgiCiAjaW1wb3J0IDxwYWwvc3BpL2NmL0NG
TmV0d29ya1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1VSTENvbm5lY3Rpb25TUEku
aD4KICNpbXBvcnQgPHd0Zi9CbG9ja1B0ci5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4K
IApAQCAtMjUyLDcgKzI1Myw3IEBAIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VO
RAogCiAgICAgICAgIFJlc291cmNlUmVzcG9uc2UgcmVzb3VyY2VSZXNwb25zZShyLmdldCgpKTsK
ICAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXRTb3VyY2UoUmVzb3VyY2VSZXNwb25zZTo6U291
cmNlOjpOZXR3b3JrKTsKLSAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXREZXByZWNhdGVkTmV0
d29ya0xvYWRNZXRyaWNzKGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCksIHIuZ2V0KCkp
KTsKKyAgICAgICAgcmVzb3VyY2VSZXNwb25zZS5zZXREZXByZWNhdGVkTmV0d29ya0xvYWRNZXRy
aWNzKGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCkpKTsKIAogICAgICAgICBtX2hhbmRs
ZS0+ZGlkUmVjZWl2ZVJlc3BvbnNlKFdURk1vdmUocmVzb3VyY2VSZXNwb25zZSksIFtzZWxmLCBw
cm90ZWN0ZWRTZWxmID0gV1RGTW92ZShwcm90ZWN0ZWRTZWxmKV0gewogICAgICAgICAgICAgbV9z
ZW1hcGhvcmUuc2lnbmFsKCk7CkBAIC0zMTQsMTEgKzMxNSwyMSBAQCBBTExPV19ERVBSRUNBVEVE
X0lNUExFTUVOVEFUSU9OU19FTkQKIAogICAgIExPRyhOZXR3b3JrLCAiSGFuZGxlICVwIGRlbGVn
YXRlIGNvbm5lY3Rpb25EaWRGaW5pc2hMb2FkaW5nOiVwIiwgbV9oYW5kbGUsIGNvbm5lY3Rpb24p
OwogCi0gICAgYXV0byB3b3JrID0gW3NlbGYgPSBzZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWlu
UHRyKHNlbGYpXSAoKSBtdXRhYmxlIHsKKyAgICBhdXRvIHdvcmsgPSBbc2VsZiA9IHNlbGYsIHBy
b3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZiksIGNvbm5lY3Rpb24gPSByZXRhaW5QdHIoY29u
bmVjdGlvbildICgpIG11dGFibGUgewogICAgICAgICBpZiAoIW1faGFuZGxlIHx8ICFtX2hhbmRs
ZS0+Y2xpZW50KCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgbV9oYW5kbGUtPmNs
aWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlKTsKKyAgICAgICAgaWYgKGF1dG8gbWV0
cmljcyA9IGNvcHlUaW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCkpKSB7CisgICAgICAgICAgICBk
b3VibGUgcmVzcG9uc2VFbmRUaW1lID0gW1tbY29ubmVjdGlvbiBfdGltaW5nRGF0YV0gb2JqZWN0
Rm9yS2V5OkAiX2tDRk5UaW1pbmdEYXRhUmVzcG9uc2VFbmQiXSBkb3VibGVWYWx1ZV07CisgICAg
ICAgICAgICBtZXRyaWNzLT5yZXNwb25zZUVuZCA9IFNlY29uZHMocmVzcG9uc2VFbmRUaW1lIDw9
IDAgPyBtZXRyaWNzLT5yZXNwb25zZVN0YXJ0LnZhbHVlKCkgOiByZXNwb25zZUVuZFRpbWUgLSBt
ZXRyaWNzLT5mZXRjaFN0YXJ0LnZhbHVlKCkpOworICAgICAgICAgICAgbWV0cmljcy0+bWFya0Nv
bXBsZXRlKCk7CisgICAgICAgICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRp
bmcobV9oYW5kbGUsICptZXRyaWNzKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIE5l
dHdvcmtMb2FkTWV0cmljcyBlbXB0eU1ldHJpY3M7CisgICAgICAgICAgICBlbXB0eU1ldHJpY3Mu
bWFya0NvbXBsZXRlKCk7CisgICAgICAgICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlz
aExvYWRpbmcobV9oYW5kbGUsIGVtcHR5TWV0cmljcyk7CisgICAgICAgIH0KKwogICAgICAgICBp
ZiAobV9tZXNzYWdlUXVldWUpIHsKICAgICAgICAgICAgIG1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7
CiAgICAgICAgICAgICBtX21lc3NhZ2VRdWV1ZSA9IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0gYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0K
aW5kZXggZjM1YzVmM2E2NTNkZTBiY2QxNDRkZWNhNTY4NTI3YWVhNzBkNTRiZi4uNzI2MTVhYzlj
ZmM2N2Q1ODhmODcxZTM3YTU0MzQ5NTk4YmMzNzRiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQpAQCAt
NzkwLDcgKzc5MCwxMCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcHJvY2Vzc1NlcnZlclRydXN0RXZh
bHVhdGlvbihOZXR3b3JrU2Vzc2lvbkNvY29hJiBzZXNzaW9uLCBTZQogICAgICAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQgPSBTZWNvbmRzKGRvbWFpbkxvb2t1cFN0YXJ0
SW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5kID0g
U2Vjb25kcyhkb21haW5Mb29rdXBFbmRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0
cmljcy5jb25uZWN0U3RhcnQgPSBTZWNvbmRzKGNvbm5lY3RTdGFydEludGVydmFsKTsKLSAgICAg
ICAgbmV0d29ya0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFNlY29uZHMoc2Vj
dXJlQ29ubmVjdGlvblN0YXJ0SW50ZXJ2YWwpOworICAgICAgICBpZiAobS5yZXVzZWRDb25uZWN0
aW9uICYmIFttLnJlc3BvbnNlLlVSTC5zY2hlbWUgaXNFcXVhbFRvU3RyaW5nOkAiaHR0cHMiXSkK
KyAgICAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBX
ZWJDb3JlOjpyZXVzZWRUTFNDb25uZWN0aW9uU2VudGluZWw7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBTZWNvbmRz
KHNlY3VyZUNvbm5lY3Rpb25TdGFydEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRy
aWNzLmNvbm5lY3RFbmQgPSBTZWNvbmRzKGNvbm5lY3RFbmRJbnRlcnZhbCk7CiAgICAgICAgIG5l
dHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPSBTZWNvbmRzKHJlcXVlc3RTdGFydEludGVy
dmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlU3RhcnQgPSBTZWNvbmRz
KHJlc3BvbnNlU3RhcnRJbnRlcnZhbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29y
ZVN1cHBvcnQvUGluZ0hhbmRsZS5oCmluZGV4IDE3NTk1NGM5OGY0NjYyY2IzZGFmZTAwY2ZhYzRm
ZjhjOTVhYjRlNzUuLjA5MjljZWY5Nzg5YzBjY2YxMWEzZTk0MTBmNWRlNmZmY2FmZWJhNjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvUGluZ0hhbmRsZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvUGluZ0hhbmRsZS5oCkBA
IC03NCw3ICs3NCw3IEBAIHByaXZhdGU6CiAgICAgICAgIHBpbmdMb2FkQ29tcGxldGUoeyB9LCBy
ZXNwb25zZSk7CiAgICAgfQogICAgIHZvaWQgZGlkUmVjZWl2ZUJ1ZmZlcihXZWJDb3JlOjpSZXNv
dXJjZUhhbmRsZSosIFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYsIGludCkgZmluYWwgeyBw
aW5nTG9hZENvbXBsZXRlKCk7IH0KLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6
UmVzb3VyY2VIYW5kbGUqKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoKTsgfQorICAgIHZvaWQg
ZGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFdlYkNvcmU6
Ok5ldHdvcmtMb2FkTWV0cmljcyYpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0ZSgpOyB9CiAgICAg
dm9pZCBkaWRGYWlsKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlKiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYgZXJyb3IpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0ZShlcnJvcik7IH0KICAg
ICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OlJlc291cmNlSGFuZGxl
KikgZmluYWwgeyByZXR1cm4gbV9zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZTsgfQogICAgIHZv
aWQgdGltZW91dFRpbWVyRmlyZWQoKSB7IHBpbmdMb2FkQ29tcGxldGUoV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciB7IFN0cmluZygpLCAwLCBtX2N1cnJlbnRSZXF1ZXN0LnVybCgpLCAiTG9hZCB0aW1l
ZCBvdXQiX3MsIFdlYkNvcmU6OlJlc291cmNlRXJyb3I6OlR5cGU6OlRpbWVvdXQgfSk7IH0KZGlm
ZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAppbmRleCBkMWI1MWM2MWZlMGQ4ZjU1NjM4OWQ3
ODliNmZjZWVjMTVmYmE0ZDBkLi5iN2Y4MWQxY2ZkNWY5NmM4NTY4ZTEyZTAzOTliMmY4NDQ5OWIx
ZDU3IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9UZXN0T3B0aW9ucy5jcHAKKysr
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCkBAIC05Miw2ICs5Miw3IEBA
IGNvbnN0IFRlc3RGZWF0dXJlcyYgVGVzdE9wdGlvbnM6OmRlZmF1bHRzKCkKICAgICAgICAgICAg
IHsgIk5QQVBJUGx1Z0luc0VuYWJsZWRGb3JUZXN0aW5nSW5XZWJLaXRMZWdhY3kiLCB0cnVlIH0s
CiAgICAgICAgICAgICB7ICJOZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyayIsIGZh
bHNlIH0sCiAgICAgICAgICAgICB7ICJPZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQi
LCB0cnVlIH0sCisgICAgICAgICAgICB7ICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElF
bmFibGVkIiwgdHJ1ZSB9LAogICAgICAgICAgICAgeyAiUmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1
ZGlvUGxheWJhY2siLCBmYWxzZSB9LAogICAgICAgICAgICAgeyAiUmVxdWlyZXNVc2VyR2VzdHVy
ZUZvck1lZGlhUGxheWJhY2siLCBmYWxzZSB9LAogICAgICAgICAgICAgeyAiUmVxdWlyZXNVc2Vy
R2VzdHVyZUZvclZpZGVvUGxheWJhY2siLCBmYWxzZSB9LApkaWZmIC0tZ2l0IGEvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rl
c3RPcHRpb25zLmNwcAppbmRleCA0NjkwMTM2NTM3YWEyODNlZmZhZTVkMWY5NTE0MTE2MWZhOGJl
OTExLi44NzYzODg2M2ExOWIyNDVhYjUyMWVkYjFiMGE2ZmJhOTg3YThhMWZkIDEwMDY0NAotLS0g
YS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RPcHRpb25zLmNwcAorKysgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL1Rlc3RPcHRpb25zLmNwcApAQCAtMTAyLDYgKzEwMiw3IEBAIGNvbnN0IFRl
c3RGZWF0dXJlcyYgVGVzdE9wdGlvbnM6OmRlZmF1bHRzKCkKICAgICAgICAgICAgIHsgIk9mZnNj
cmVlbkNhbnZhc0VuYWJsZWQiLCB0cnVlIH0sCiAgICAgICAgICAgICB7ICJPZmZzY3JlZW5DYW52
YXNJbldvcmtlcnNFbmFibGVkIiwgdHJ1ZSB9LAogICAgICAgICAgICAgeyAiUGFnZVZpc2liaWxp
dHlCYXNlZFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWQiLCBmYWxzZSB9LAorICAgICAgICAgICAg
eyAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nQVBJRW5hYmxlZCIsIHRydWUgfSwKICAgICAg
ICAgICAgIHsgIlBsdWdpbnNFbmFibGVkIiwgdHJ1ZSB9LAogICAgICAgICAgICAgeyAiUmVxdWly
ZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxheWJhY2siLCBmYWxzZSB9LAogICAgICAgICAgICAgeyAi
UmVxdWlyZXNVc2VyR2VzdHVyZUZvck1lZGlhUGxheWJhY2siLCBmYWxzZSB9LApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDEx
NWJiNGU2MjU0MGI1OWRhNmJkYTUxN2Y0OGZhZDViMTljNWViNzQuLmZlNmU0MWEzZGVmMDllOGFi
YmE4NjBlYjA5M2JlNTkyNmUwOTYzM2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wNS0x
OCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAg
IEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6Cisg
ICAgICAgIEFubm95aW5nbHkgc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMu
aHRtbCBiZWNvbWVzIGZsYWt5IHdpdGggYSBjb3JyZWN0IGltcGxlbWVudGF0aW9uIGJlY2F1c2Ug
aXQgYXNzdW1lcworICAgICAgICB0aGF0IG5vIGNvbm5lY3Rpb24gaXMgcmV1c2VkLiAgSG93ZXZl
ciwgd2hlbiBydW5uaW5nIHRoaXMgdGVzdCBhZnRlciBvdGhlciB0ZXN0cywgYW5vdGhlciBjb25u
ZWN0aW9uIGlzIG9mdGVuIHJldXNlZC4KKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGFpbnQt
dGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFu
Y2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sOgorICAgICAgICAqIHBlcmZv
cm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzOgor
ICAgICAgICAqIHBsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICBOZXh0IGhvcCBwcm90b2NvbCBpc24ndCBpbXBsZW1lbnRlZCBpbiBSZXNv
dXJjZUhhbmRsZS4gIFRoYXQncyBwcm9iYWJseSBubyBiaWcgZGVhbCBiZWNhdXNlIFdlYktpdExl
Z2FjeSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBieSBTYWZhcmkuCisKIDIwMjEtMDUtMTgg
IERpZWdvIFBpbm8gR2FyY2lhICA8ZHBpbm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR0xJQl0g
VW5yZXZpZXdlZCB0ZXN0IGdhcmRlbmluZy4gU29tZSBtYXRobWwgdGVzdHMgYXJlIGZhaWxpbmcg
aW4gRVdTIEdUSy1XSzIgYnV0IHBhc3NpbmcgaW4gcG9zdC1jb21taXQgYm90LgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggZWUxZjY4OTAwZGViNDk4OTViNTBmYmNkZjczMmE5N2Yy
ZDA5MDU4OS4uODA5MjU0MjZkM2RkNjNkZmRjNTZiMTA0MWI0YWRkZmYyODFiMzhhNCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTI5IEBACisyMDIxLTA1LTE4ICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRk
IHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL01FVEEueW1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZl
X21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVu
dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanM6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWw6IEFkZGVkLgorICAgICAgICBUaGlzIHRl
c3QgZmFpbHMgYmVjYXVzZSB3ZSBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0cmFuc2ZlclNpemUsIGVu
Y29kZWRCb2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBhcyBub3RlZCBpbiBQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmlkbAorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWw6IEFkZGVkLgorICAgICAgICBUaGlzIHRlc3QgZmFp
bHMgYmVjYXVzZSB3ZSBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0cmFuc2ZlclNpemUsIGVuY29kZWRC
b2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBhcyBub3RlZCBpbiBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmlkbAorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVu
Lmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNl
ZC5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxl
X2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90
aGVfc3RhcnQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
aW5zdGFuY2VfYWNjZXNzb3JzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRo
aW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWw6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX2JhY2tmb3J3YXJkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5o
dG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgVGhpcyB0ZXN0IGZhaWxzIGJlY2F1c2Ugb3VyIHRlc3Qg
aW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBwb3J0IGxvYWRpbmcgZnJvbSB3d3cubG9jYWxob3N0
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbDogQ29w
aWVkIGZyb20gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29w
dF9pbi5odG1sLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3Rl
ZC50eHQ6CisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIG91ciB0ZXN0IGluZnJhc3Ry
dWN0dXJlIGRvZXNuJ3Qgc3VwcG9ydCBsb2FkaW5nIGZyb20gd3d3LmxvY2FsaG9zdC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbDogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9z
ZXJ2ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICBUaGlzIHRlc3QgZmFpbHVyZSBuZWVkcyBmdXJ0
aGVyIGludmVzdGlnYXRpb24uCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2
ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICBUaGlzIHRlc3QgZmFpbHMgYmVjYXVzZSBvdXIgdGVz
dCBpbmZyYXN0cnVjdHVyZSBkb2Vzbid0IHN1cHBvcnQgbG9hZGluZyBmcm9tIHd3dy5sb2NhbGhv
c3QuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICBUaGlzIHRlc3QgZmFpbHVyZSBuZWVkcyBmdXJ0aGVyIGlu
dmVzdGlnYXRpb24uCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpz
OgorICAgICAgICAodGVzdF9uYW1lc3BhY2UpOgorICAgICAgICAodGVzdF9hdHRyaWJ1dGVfZXhp
c3RzKToKKyAgICAgICAgKHRlc3RfZW51bSk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVf
Y29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgIFRo
aXMgdGVzdCBoYXMgYmVlbiBtYXJrZWQgYXMgZmxha3kuICBJdCBuZWVkcyB0byBiZSBmaXhlZCB0
byBub3QgcmVseSBvbiBubyBpbml0aWFsIGNvbm5lY3Rpb24gcmV1c2UuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5
cGUuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVz
dF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbDog
QWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdh
dGlvbi4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5s
b2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2lu
LWNoZWNrLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL01FVEEueW1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qczogQWRk
ZWQuCisgICAgICAgIChhc3luY190ZXN0LnQudC5zdGVwX3RpbWVvdXQpOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2Vy
dmVyLmFueS5qczogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFs
aWQtZW50cmllcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5
bmMgaWRsX2FycmF5KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzOiBBZGRlZC4K
KyAgICAgICAgKHByb21pc2VfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFi
bGUuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qczogQWRkZWQuCisgICAgICAg
IChhc3luY190ZXN0LnQudC5zdGVwX3RpbWVvdXQpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanM6
IEFkZGVkLgorICAgICAgICAodGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanM6IEFkZGVkLgorICAg
ICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnkuanM6
IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzOiBBZGRlZC4KKyAg
ICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanM6IEFk
ZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55LmpzOiBBZGRlZC4KKyAgICAg
ICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5j
X3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnku
anM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbDogQWRkZWQuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNl
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanM6
IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMuanM6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2Vy
LXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0
ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgdGVzdCBmYWlsdXJl
IG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4gIEl0J3MgYSBiaW5kaW5ncyBnZW5lcmF0aW9u
IHByb2JsZW0gSSd2ZSB1bnN1Y2Nlc3NmdWxseSBsb29rZWQgaW50byBiZWZvcmUuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5
VHlwZXMuYW55LmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9uLmFueS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0
VGltZVJlc29sdXRpb24pOgorICAgICAgICAodGltZUJ5VXNlclRpbWluZyk6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZv
cm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICBUaGlzIGV4aXN0aW5nIHRlc3QgZmFpbHVyZSBuZWVkcyBtb3JlIGludmVz
dGlnYXRpb24uICBXZSBhcmUgcHJvYmFibHkgY2xvc2UgdG8gYSBmaXggYWZ0ZXIgdGhpcyBwYXRj
aC4KKwogMjAyMS0wNS0xNiAgQ2FtZXJvbiBNY0Nvcm1hY2sgIDxoZXljYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIE1ha2UgTWF0aE1MIFdQVHMgd2FpdCBmb3IgYWxsIGZvbnQgbG9hZHMKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhw
ZWN0YXRpb25zCmluZGV4IDZlMDdlOTdmNmE2OTY2OTEyNDBmNjVjYWY2N2U0MzY5Y2ZkYzBjOWMu
LjQ3ODk1ZGZkZGFkZDdlYTUwMDc5NDFjYTVmNDE3YTZlNzQ1NGM0MTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0
aW9ucwpAQCAtOTM5LDYgKzkzOSw3IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3JpZ2luLXNhbmR3aWNoLW5vLVRBTy5zdWIuCiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jb3JzLXByZWZsaWdodC5h
bnkuaHRtbCBbIEZhaWx1cmUgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3Jlc291cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5kd2ljaC1UQU8uc3ViLmh0bWwgWyBQYXNz
IEZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1p
bmcvY3Jvc3NvcmlnaW4tc2FuZHdpY2gtcGFydGlhbC1UQU8uc3ViLmh0bWwgWyBQYXNzIEZhaWx1
cmUgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
ZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy5odG1sIFsgUGFzcyBGYWlsdXJl
IF0KIAogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtc3RyZWFt
cy9NZWRpYVN0cmVhbS1kZWZhdWx0LWZlYXR1cmUtcG9saWN5Lmh0dHBzLmh0bWwgWyBEdW1wSlND
b25zb2xlTG9nSW5TdGRFcnIgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRp
YWNhcHR1cmUtcmVjb3JkL3Bhc3N0aHJvdWdoL01lZGlhUmVjb3JkZXItcGFzc3Rocm91Z2guaHR0
cHMuaHRtbCBbIEZhaWx1cmUgVGltZW91dCBQYXNzIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL01FVEEueW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJmYjBlMGYxZjY3YTljNmFhMmU3ZTkyMWIw
OWU4NWY4ZDk3MGIyOTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sCkBAIC0wLDAg
KzEsNSBAQAorc3BlYzogaHR0cHM6Ly93M2MuZ2l0aHViLmlvL25hdmlnYXRpb24tdGltaW5nLwor
c3VnZ2VzdGVkX3Jldmlld2VyczoKKyAgLSBwbGVoZWdhcgorICAtIGlncmlnb3JpaworICAtIHlv
YXZ3ZWlzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmIyOGMxMGNlMzZjM2M3NDQ4NDg5N2U1ZDI0ZGFmZjkxNzM5NWVi
NTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVu
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3Rz
IHRoYXQgYSBpbWFnZSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUu
CisKKworCitQQVNTIFRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1lbnQKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
ZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzY3NDJmMGVm
ZjZkMDdjN2MwNjk0YjA2NmRmYTAxN2YwZDEwNDJiZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
ZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0i
dXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5UZXN0IGRvbUludGVyYWN0aXZlIG9uIGltYWdlIGRv
Y3VtZW50LjwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xl
IiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9Imhl
bHAiIGhyZWY9Imh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Jyb3dzaW5n
LXRoZS13ZWIuaHRtbCNyZWFkLW1lZGlhIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
c2NyaXB0PgorICAgICAgICBjb25zdCB0ID0gYXN5bmNfdGVzdCgiVGVzdCBkb21JbnRlcmFjdGl2
ZSBvbiBpbWFnZSBkb2N1bWVudCIpOworICAgICAgICBmdW5jdGlvbiBmcmFtZUxvYWRlZCgpIHsK
KyAgICAgICAgICAgIGNvbnN0IHRpbWluZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlmcmFt
ZSIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UudGltaW5nOworICAgICAgICAgICAgYXNzZXJ0
X2dyZWF0ZXJfdGhhbih0aW1pbmcuZG9tSW50ZXJhY3RpdmUsIDAsCisgICAgICAgICAgICAgICAg
IkV4cGVjdCBkb21JbnRlcmFjdGl2ZSB0byBiZSBwb3NpdGl2ZSB2YWx1ZS4iKTsKKyAgICAgICAg
ICAgIHQuZG9uZSgpOworICAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgICAgPGJvZHk+CisgICAg
ICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBhIGlt
YWdlIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS48L3A+CisgICAg
ICAgIDxpZnJhbWUgc3JjPSIuLi9pbWFnZXMvc21pbGV5LnBuZyIgb25sb2FkPSJmcmFtZUxvYWRl
ZCgpIj48L2lmcmFtZT4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjM3ZjY3MmRiODI3MzQ5OTZiYWE2ZDQxMmQ2MTljZWY3YmRiODFl
Y2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVu
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3Rz
IHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUu
CisKKworCitQQVNTIFRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1lbnQKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
ZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTRlNDU3MjVk
ODM2MDViNTE5Y2U3NGVhOGZmNDU2MWRjZDNkNzU5NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
ZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0i
dXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5UZXN0IGRvbUludGVyYWN0aXZlIG9uIG1lZGlhIGRv
Y3VtZW50LjwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xl
IiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9Imhl
bHAiIGhyZWY9Imh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Jyb3dzaW5n
LXRoZS13ZWIuaHRtbCNyZWFkLW1lZGlhIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
c2NyaXB0PgorICAgICAgICBjb25zdCB0ID0gYXN5bmNfdGVzdCgiVGVzdCBkb21JbnRlcmFjdGl2
ZSBvbiBtZWRpYSBkb2N1bWVudCIpOworICAgICAgICBmdW5jdGlvbiBmcmFtZUxvYWRlZCgpIHsK
KyAgICAgICAgICAgIGNvbnN0IHRpbWluZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlmcmFt
ZSIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UudGltaW5nOworICAgICAgICAgICAgYXNzZXJ0
X2dyZWF0ZXJfdGhhbih0aW1pbmcuZG9tSW50ZXJhY3RpdmUsIDAsCisgICAgICAgICAgICAgICAg
IkV4cGVjdCBkb21JbnRlcmFjdGl2ZSB0byBiZSBwb3NpdGl2ZSB2YWx1ZS4iKTsKKyAgICAgICAg
ICAgIHQuZG9uZSgpOworICAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgICAgPGJvZHk+CisgICAg
ICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBhIG1l
ZGlhIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS48L3A+CisgICAg
ICAgIDxpZnJhbWUgc3JjPSIuLi9tZWRpYS9BNC5tcDQiIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+
PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5l
c3Mud2luZG93LmpzCmluZGV4IDhjYzM1NDZiM2MyN2E5ZDkzZWU1NjIxNTg0ZDgzZDU2YTMwODUx
M2MuLjcyY2YwYzNhM2QzYzhjYjc3NTQxNjI1YTA1NTRkODQ2NGQ3YzExMmIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5q
cwpAQCAtMSwyMSArMSwyMCBAQAogLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvV2ViSURMUGFy
c2VyLmpzCiAvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9pZGxoYXJuZXNzLmpzCisvLyBNRVRB
OiB0aW1lb3V0PWxvbmcKIAogJ3VzZSBzdHJpY3QnOwogCiAvLyBodHRwOi8vd3d3LnczLm9yZy9U
Ui9uYXZpZ2F0aW9uLXRpbWluZy8KIAogaWRsX3Rlc3QoCi0gIFsnbmF2aWdhdGlvbi10aW1pbmcn
XSwKLSAgWydyZXNvdXJjZS10aW1pbmcnLCAncGVyZm9ybWFuY2UtdGltZWxpbmUnLCAnaHItdGlt
ZScsICdkb20nXSwKLSAgaWRsX2FycmF5ID0+IHsKLSAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMo
eworICBbJ25hdmlnYXRpb24tdGltaW5nJywgJ2hyLXRpbWUnXSwKKyAgWydyZXNvdXJjZS10aW1p
bmcnLCAncGVyZm9ybWFuY2UtdGltZWxpbmUnLCAnZG9tJywgJ2h0bWwnXSwKKyAgaWRsQXJyYXkg
PT4geworICAgIGlkbEFycmF5LmFkZF9vYmplY3RzKHsKICAgICAgIFBlcmZvcm1hbmNlOiBbJ3Bl
cmZvcm1hbmNlJ10sCiAgICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb246IFsncGVyZm9ybWFuY2Uu
bmF2aWdhdGlvbiddLAogICAgICAgUGVyZm9ybWFuY2VUaW1pbmc6IFsncGVyZm9ybWFuY2UudGlt
aW5nJ10sCi0gICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6IFsKLSAgICAgICAgJ3Bl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXScKLSAgICAgIF0KKyAg
ICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzogWydwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nXQogICAgIH0pOwogICB9CiApOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjIzYjc2MDVk
OTIyZGEzODcyYWI1NmRjZmVhYzU4M2MyZWU0MmIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitE
ZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VPYnNlcnZl
ciBjYW4gb2JzZXJ2ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UgYW5kIHRoYXQgdGhlIGV4cGVjdGVk
IGF0dHJpYnV0ZXMgaW4gbmF2IHRpbWluZyAyIGluc3RhbmNlIGV4aXN0IChidXQgZG9lcyBub3Qg
dmFsaWRhdGUgdGhhdCB0aGUgdmFsdWVzIGFyZSBjb3JyZWN0KS4KKworCitGQUlMIFBlcmZvcm1h
bmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIG9ic2VydmFibGUuIGFzc2VydF90cnVl
OiBFeHBlY3RlZCBhdHRyaWJ1dGU6IGRlY29kZWRCb2R5U2l6ZS4gZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2MDQ4
ZTA2MWJhMDU3Y2Q5NzFiMDhlMDMyYmU3MTdmMGFkMDRkMGQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwKQEAgLTAsMCArMSw2NyBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgor
ICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3
dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8v
d3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAg
PGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2IHRpbWluZyAyIGluc3RhbmNlIGFu
ZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBl
eGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhlIHZhbHVlcyBhcmUgY29ycmVjdCku
PC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRl
cyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3Rh
cnQnLAorICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZG9tQ29t
cGxldGUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAg
ICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUludGVy
YWN0aXZlJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAgICAn
ZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAg
J2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAg
J2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ25hbWUnLAorICAgICAgICAgICAgJ25leHRIb3BQcm90b2NvbCcsCisgICAgICAgICAgICAn
cmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAg
J3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAg
ICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAg
ICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAndHJhbnNmZXJTaXplJywK
KyAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisg
ICAgICAgIF07CisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAg
IHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAgICAg
IHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLAorICAgICAgICAgICAgICAgICAgICAg
ICAgIlRoZXJlIHNob3VsZCBiZSBvbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZS4i
KTsKKyAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1pbmcyQXR0
cmlidXRlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3Ry
dWUobmF2VGltaW5nMkF0dHJpYnV0ZXNbaV0gaW4gZW50cmllc1swXSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAiRXhwZWN0ZWQgYXR0cmlidXRlOiAiICsgbmF2VGltaW5nMkF0dHJpYnV0
ZXNbaV0gKyAiLiIpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
IG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7Cisg
ICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0sICJQZXJm
b3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlLiIpOworICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9h
dHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjQ5OWY4YWVkZGM5YmYz
NmUzZWI1MWNiNjhiNjk3Nzg4ODIwYjAyYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2Ny
aXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1p
bmcgMiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4g
b3JkZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy4KKworCitGQUlMIFBl
cmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVhc29uYWJs
ZS4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHRyYW5zZmVyU2l6ZSB0byBiZSBncmVhdGVyIHRoYW4g
ZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5hdmlnYXRpb24uIGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5
ODA5ZTQxZGRkN2Y2OGIxZDNmYTY5NzljYTBkNmZiMTUzOGE0ZTQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCkBAIC0wLDAgKzEsMTM3IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFy
c2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0
bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRw
Oi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0
dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9u
L2dldC1ob3N0LWluZm8uc3ViLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+
CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxp
ZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSdzIHRpbWluZy1y
ZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4gb3JkZXIgYW5kIHRoZSBvdGhlcnMgYXJl
IG9mIGV4cGVjdGVkIHZhbHVlcy48L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgLy8g
SG9zdCBuYW1lcyBhbmQgcG9ydHMgbWF5IGJlIGNvbmZpZ3VyZWQgYXQgdGVzdCBleGVjdXRpb24g
dGltZS4gVGhlCisgICAgICAgIC8vIHdlYi1wbGF0Zm9ybS10ZXN0cyBzZXJ2ZXIgb2ZmZXJzIHR3
byBtZWNoYW5pc21zIGZvciByZXRyaWV2aW5nIHRoZXNlCisgICAgICAgIC8vIHZhbHVlcyBkeW5h
bWljYWxseTogZGlyZWN0IHRleHQgc3Vic3RpdHV0aW9uIGFuZCB0aGUgYGdldC1ob3N0LWluZm9g
CisgICAgICAgIC8vIHNjcmlwdC4gVGhlIGZvcm1lciBpcyBpbmFwcHJvcHJhdGUgZm9yIHRoaXMg
dGVzdCBiZWNhdXNlIGl0CisgICAgICAgIC8vIGluZmx1ZW5jZXMgdGhlIHNpemUgb2YgdGhlIGRv
Y3VtZW50LCBhbmQgdGhpcyB0ZXN0IGluY2x1ZGVzIHN0YXRpYworICAgICAgICAvLyBhc3NlcnRp
b25zIGZvciB0aGF0IHZhbHVlLgorICAgICAgICB2YXIgaG9zdF9pbmZvID0gZ2V0X2hvc3RfaW5m
bygpOworICAgICAgICB2YXIgZXhwZWN0ZWRVcmwgPSAiaHR0cDovLyIgKyBob3N0X2luZm8uT1JJ
R0lOQUxfSE9TVCArICI6IiArCisgICAgICAgICAgICBob3N0X2luZm8uSFRUUF9QT1JUICsKKyAg
ICAgICAgICAgICIvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVz
Lmh0bWwiOworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIxID0gWworICAgICAgICAg
ICAgJ3N0YXJ0VGltZScsCisgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAg
ICAvLyd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisgICAg
ICAgICAgICAvLyd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisg
ICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1
cEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgIC8vJ3NlY3Vy
ZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAgICAg
ICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAg
ICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAg
ICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21Db250
ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJworICAgICAg
ICBdOworCisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRPcmRlcjIgPSBbCisgICAgICAgICAg
ICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAg
ICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAg
ICAgICAgICAgICdmZXRjaFN0YXJ0JworICAgICAgICBdOworCisgICAgICAgIHZhciBuYXZUaW1p
bmcyRXZlbnRPcmRlcjMgPSBbCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAg
ICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnCisg
ICAgICAgIF07CisKKyAgICAgICAgLy8gTmF2aWdhdGlvbiBUaW1pbmcgYXR0cmlidXRlcyBmb3Ig
Y29tcGFyaXNvbi4KKyAgICAgICAgdmFyIG5hdlRpbWluZzFFdmVudE9yZGVyID0gWworICAgICAg
ICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAg
ICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcs
CisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywK
KyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZUVuZCcs
CisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRM
b2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQn
LAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRTdGFy
dCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJworICAgICAgICBdOworCisgICAgICAgIGZ1
bmN0aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50cnkpIHsK
KyAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBp
KyspIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmdFbnRyeVtldmVudE9yZGVy
W2ldXSA8PSB0aW1pbmdFbnRyeVtldmVudE9yZGVyW2kgKyAxXV0sCisgICAgICAgICAgICAgICAg
ICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIgdG8gYmUgbm8gZ3JlYXRlciB0aGFu
ICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2Jz
ZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBf
ZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBlbnRy
aWVzID0gZW50cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhlbnRyaWVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLAorICAgICAgICAgICAg
ICAgICAgICAgICAgIkV4cGVjdGVkIGVudHJ5VHlwZSB0byBiZTogbmF2aWdhdGlvbi4iKTsKKyAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLm5hbWUsIGV4cGVjdGVk
VXJsKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLnN0YXJ0
VGltZSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBzdGFydFRpbWUgdG8g
YmU6IDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5k
dXJhdGlvbiwgZW50cmllc1swXS5sb2FkRXZlbnRFbmQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAiRXhwZWN0ZWQgZHVyYXRpb24gdG8gYmUgZXF1YWwgdG8gbG9hZEV2ZW50RW5kLiIpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uaW5pdGlhdG9yVHlwZSwg
Im5hdmlnYXRpb24iLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGluaXRpYXRv
clR5cGUgdG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZW50cmllc1swXS5uZXh0SG9wUHJvdG9jb2wsICJodHRwLzEuMSIpOworICAgICAgICAg
ICAgICAgICAgICAvLyBUaGlzIHRlc3QgbWF5IGZhaWwgd2hlbiByZXNwb25zZSBpcyBmcm9tIGNh
Y2guIERpc2FibGUgb3IgY2xlYW4gY2FjaCBiZWZvcmUKKyAgICAgICAgICAgICAgICAgICAgLy8g
cnVubmluZyB0aGlzIHRlc3QuCisgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGVudHJp
ZXNbMF0udHJhbnNmZXJTaXplID4gZW50cmllc1swXS5lbmNvZGVkQm9keVNpemUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgdHJhbnNmZXJTaXplIHRvIGJlIGdyZWF0ZXIgdGhh
biBlbmNvZGVkQm9keVNpemUgaW4gdW5jYWNoZWQgbmF2aWdhdGlvbi4iKTsKKyAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVuY29kZWRCb2R5U2l6ZSwgNTk1NSk7
CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5kZWNvZGVkQm9k
eVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVy
KGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMSk7CisgICAgICAgICAgICAgICAgICAg
IC8vIFZlcmlmeSBpZiB0aGUgcmVwb3J0ZWQgdGltaW5nIGlzIG5vdCB0aGF0IGRpZmZlcmVudAor
ICAgICAgICAgICAgICAgICAgICAvLyBmcm9tIHdoYXQgaXMgcmVwb3J0ZWQgYnkgTmF2aWdhdGlv
biBUaW1pbmcgMS4KKyAgICAgICAgICAgICAgICAgICAgbmF2VGltaW5nMUV2ZW50T3JkZXIuZm9y
RWFjaCgKKyAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbihldmVudCkgeworICAgICAgICAg
ICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmdbZXZlbnRdIC0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLm5hdmln
YXRpb25TdGFydCA+IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0
ZXJfdGhhbihlbnRyaWVzWzBdW2V2ZW50XSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICJFeHBlY3RlZCAiICsgZXZlbnQgKyAiIHRvIGJlIGdyZWF0ZXIgdGhhbiAwIik7CisgICAg
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAg
ICAgICAgICAgICAvLyBXaGVuIHVubG9hZEV2ZW50IGhhcHBlbnMKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKGVudHJpZXNbMF1bInVubG9hZEV2ZW50U3RhcnQiXSAhPSAwKSB7CisgICAgICAgICAg
ICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGVudHJpZXNbMF0sIG5hdlRpbWlu
ZzJFdmVudE9yZGVyMik7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAg
ICAgLy8gV2hlbiBhIHNlY3VyZSB0cmFuc3BvcnQgaXMgdXNlZAorICAgICAgICAgICAgICAgICAg
ICBpZiAoZW50cmllc1swXVsic2VjdXJlQ29ubmVjdGlvblN0YXJ0Il0gIT0gMCkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZU
aW1pbmcyRXZlbnRPcmRlcjMpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25l
KCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNl
cnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0s
ICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNv
bmFibGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQKaW5kZXggNDk5OTlkODk0MTEwNDk3
OWIzMjZhN2ZmYTZiODkwMTg1YThmYTY4ZS4uMDVmMjMwYjlmYjBmYWI4ZDhkN2NiNTg1ZWM5ODVj
MjA4MTExOWZkNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQK
QEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1tuYXZUaW1pbmcyQXR0cmlidXRlc1tp
XV0nKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIHJlbWFpbnMgY29uc3RhbnQgd2hlbiBh
IGRvY3VtZW50IGlzIHJlcGxhY2VkIHVzaW5nIGRvY3VtZW50Lm9wZW4uCkBAIC05LDYgKzgsNSBA
QCBUaGUgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8gcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbgogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1l
c3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRp
bWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKaW5kZXggYmMwNmVkNTg0MGE3
NTU1ZDFlMmE2MjU4MGNmNWE5ODhjYTU4YTcxOC4uYWExMDk3MjQ4ZGQxMzNlNWU2MWIxN2M2Zjky
ZjE0Mzc1NzliNTg4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbApAQCAtOCw2ICs4LDgg
QEAKICAgICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICAgIHNldHVw
KHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgICAgdmFyIG5hdlRpbWluZzJB
dHRyaWJ1dGVzID0gWwogICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAogICAgICAgICAg
ICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1
bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBs
YWNlZC1leHBlY3RlZC50eHQKaW5kZXggYTk3Yzg2YmNiNGY2N2Y1MjRiMWJjZTM4OThjZTVlZDMw
NzQ3OGNiZS4uMzVhNTZhM2ZlNTc3Mjk4MWJkYzJiYzVhY2UwNzkzYzEwMzEyNWZkMyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4dApAQCAtMSwxMyAr
MSwxMSBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihz
KQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQogZnJh
bWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQotQ09OU09MRSBN
RVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdwbnQxLnR5cGUnKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGEg
UGVyZm9ybWFuY2VOYXZpZ2F0aW5nVGltaW5nIGNvcnJlc3BvbmRpbmcgdG8gYSBkZXRhY2hlZCBk
b2N1bWVudCBjYW4ndCBhY2Nlc3MgYSBkaWZmZXJlbnQgZG9jdW1lbnQncyBzdGF0ZS4KIAogCiAK
LUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9u
IFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBs
YWNlZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbAppbmRleCBi
OTEwZjQ1M2QxMjk1MWQwMWNiNTg0ODk5NzY2YjY0ZmUwOGU4MzZjLi41OTcyZjIwZTliZDdmZmRm
MjdkMzJiNWIzMGI2MzkxM2NlZWVlZDA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1
bWVudF9yZXBsYWNlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2Vk
Lmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAg
ICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKKwogICAgICAgICAgICAgdmFyIG5h
dmlnYXRpb25fZnJhbWU7CiAgICAgICAgICAgICB2YXIgcG50MTsKICAgICAgICAgICAgIHZhciBz
dGVwID0gMTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKaW5kZXgg
YjVmOGJlZWYzOWY2MDk5NTIzMjQzZWNlMTk5YmRkZmJkMDFmMTY5MS4uOTc3M2RkYTU5YjNmY2E2
Yjg4ZjM0Njg4ZGM2ODgxNGIwNzdkNTc5OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJh
bWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3Zl
ZC1leHBlY3RlZC50eHQKQEAgLTQsNSArNCw1IEBAIERlc2NyaXB0aW9uCiBUaGlzIHRlc3QgdmFs
aWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp0eXBlKCkncyBkZWZhdWx0
IHZhbHVlIGlzIG5hdmlnYXRlCiAKIAotRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50LnR5cGUnKQorUEFTUyBOYXZp
Z2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0CmluZGV4IDZj
MzFhZmQwYjI5YjEwZTkzODhiNGZjMjE5NzNjZTJjNmUxNGNhMjAuLjM3N2NlOTg2ODA2YTQ5ZjI4
MWM2MWVjMTZiMGYxMTIxY2IxZGRlMzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3Rh
bmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyBpbnN0YW5j
ZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyBpbnN0YW5jZSBl
eGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sCmluZGV4IDc3OTAwODFk
MDFjN2I4MjYyYzUzNGQzOTUwODU2OTBlYmUyZGZmZTguLmFkNTBjNmE4N2QyYjQ2NjI5N2RjMGYy
ZWJjZWY5MmEzNzY1NWIwMTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2Fj
Y2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0
PgogdGVzdChmdW5jdGlvbigpIHsKICAgdmFyIG5hdmlnYXRpb25UaW1pbmcyID0gd2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ25hdmlnYXRpb24nKVswXTsKLSAgYXNzZXJ0X3Ry
dWUobmF2aWdhdGlvblRpbWluZzIgIT09IHVuZGVmaW5lZCk7CisgIGFzc2VydF9ub3RfZXF1YWxz
KG5hdmlnYXRpb25UaW1pbmcyLCB1bmRlZmluZWQpOwogICBhc3NlcnRfZXF1YWxzKG5hdmlnYXRp
b25UaW1pbmcyLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZp
Z2F0aW9uVGltaW5nMi5zdGFydFRpbWUsIDApOwogICBhc3NlcnRfZXF1YWxzKG5hdmlnYXRpb25U
aW1pbmcyLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
aW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMTg0ODYyOTE1MDFi
NWNjNGYxNzEwMzAxNjVkOTZlMDRjN2FmZWNiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rl
c2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYgdGltaW5nIDIgaW5zdGFu
Y2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nlc3NvcnMgb25jZSBhdmFp
bGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3VtZW50IikKKworCitQQVNTIFBlcmZv
cm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0
aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9p
bnN0YW5jZV9hY2Nlc3NvcnMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29y
cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmE4ZmJmYjRhMzA2MjU0MjRlOGU4NDJlYjJiODA2MmRhNGUzZTg5
MzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMu
aHRtbApAQCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRs
ZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGlu
ayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5n
LTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzIj48L3NjcmlwdD4KKyAg
ICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAg
ICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYgdGltaW5nIDIgaW5zdGFuY2UgY2Fu
IGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nlc3NvcnMgb25jZSBhdmFpbGFibGU6
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3VtZW50Iik8L3A+CisKKyAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKKyAgICAgICAgdmFy
IGV4cGVjdGVkVXJsID0gImh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJTkFMX0hPU1QgKyAiOiIg
KworICAgICAgICAgICAgaG9zdF9pbmZvLkhUVFBfUE9SVCArICIvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sIjsKKyAgICAgICAgdmFyIG5hdlRpbWlu
ZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAg
J2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2RlZEJvZHlTaXplJywKKyAgICAgICAg
ICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5k
JywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAg
ICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAg
ICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgJ2R1cmF0aW9uJywKKyAg
ICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2VudHJ5VHlwZScsCisg
ICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnaW5pdGlhdG9yVHlwZScsCisg
ICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcs
CisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAncmVkaXJlY3RDb3VudCcsCisgICAg
ICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAg
ICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAg
ICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25T
dGFydCcsCisgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICd0eXBlJywK
KyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRT
dGFydCcsCisgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisgICAgICAgIF07CisKKyAgICAgICAg
YXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rp
b24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIgaW5zdGFuY2UxID0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdOworICAgICAgICAgICAgICAgICAgICB2YXIgaW5zdGFu
Y2UyID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAg
ICAgICAgICAgICAgICAgICB2YXIgaW5zdGFuY2UzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
TmFtZShleHBlY3RlZFVybClbMF07CisKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAi
RXhwZWN0ZWQgdGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7
CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5TmFtZShleHBlY3RlZFVybCkubGVuZ3RoLCAxLCAiRXhwZWN0ZWQgdGhlcmUgaXMgb25seSBv
bmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisKKyAgICAgICAgICAgICAgICAgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmlidXRlcy5sZW5ndGg7IGkrKykgewor
ICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhpbnN0YW5jZTFbbmF2VGltaW5n
MkF0dHJpYnV0ZXNbaV1dLCBpbnN0YW5jZTJbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dKTsKKyAg
ICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAw
OyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ld
XSwgaW5zdGFuY2UzW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAg
ICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAg
KTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlv
biJdfSk7CisKKyAgICAgICAgfSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJp
ZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzLiIpOwor
ICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hN2YzNTZkZjExNmM5MjU3
MjYyOTA4M2UwOTEwODA0NmM3OTEyNzk0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKworCitQQVNT
IG5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBjaGFuZ2VzCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGVfaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGMxNDRiZGE0NTRiZTg2MTgwYmJm
YmE1MDNjNGQxZGE5NDU3MzNlNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRlX2lmcmFtZS5odG1sCkBAIC0wLDAgKzEsNDAgQEAKKzwhRE9DVFlQRSBIVE1MPgorPGh0
bWw+CisgIDxoZWFkPgorICAgIDxtZXRhIGNoYXJzZXQ9dXRmLTg+CisgICAgPHRpdGxlPlBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5uYW1lIHVwZGF0ZWQgaW4gaWZyYW1lczwvdGl0bGU+Cisg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
KyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2NyaXB0PgorcHJvbWlzZV90ZXN0KGFzeW5jIGZ1
bmN0aW9uICh0KSB7CisgIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUi
KTsKKyAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOworCisgIGlmci5zcmM9InJlc291
cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwiOworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZl
ID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxz
KGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAg
IGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUsIGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRv
U3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7
CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV9ncmVl
bi5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMgYmxhbmtfcGFnZV9ncmVlbi5odG1sIik7Cisg
ICAgICByZXNvbHZlKCk7CisgICAgfQorICB9KTsKKworCisgIGF3YWl0IG5ldyBQcm9taXNlKHJl
c29sdmUgPT4geyBzZXRUaW1lb3V0KHJlc29sdmUsIDEwMCk7IH0pOworICBpZnIuc3JjID0icmVz
b3VyY2VzL2JsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiOworCisgIGF3YWl0IG5ldyBQcm9taXNlKHJl
c29sdmUgPT4geworICAgIGlmci5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKyAgICAgIGFzc2VydF9l
cXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdmlnYXRpb24gdGltZSBlbnRyeSIpOwor
ICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZSwgaWZyLmNvbnRlbnRXaW5kb3cubG9jYXRp
b24udG9TdHJpbmcoKSwgIm5hdmlnYXRpb24gbmFtZSBtYXRjaGVzIHRoZSB3aW5kb3cubG9jYXRp
b24iKTsKKyAgICAgIGFzc2VydF90cnVlKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1lLmVuZHNXaXRoKCJibGFua19wYWdl
X3llbGxvdy5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMgYmxhbmtfcGFnZV95ZWxsb3cuaHRt
bCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7Cit9LCAibmF2aWdhdGlvbi5uYW1l
IHVwZGF0ZWQgd2hlbiBpZnJhbWUgVVJMIGNoYW5nZXMiKTsKKyAgICA8L3NjcmlwdD4KKyAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGlu
X2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9k
b2N1bWVudC1leHBlY3RlZC50eHQKaW5kZXggNGIyMGVjNmY5YjIwOGM3M2Q4NWE5NDRkODlhMWI3
YjhkODQwZWE5MC4uZWRhYTkyODhhOWFmYjZlMmNjY2ExYzQzN2Q1ZGFjYTU5ZmZhYWZhOSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0
ZWQudHh0CkBAIC0xLDkgKzEsNyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbcHJvcGVydHldJykKIERl
c2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhbGwgb2YgdGhlIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikgYXR0cmlidXRlcyByZW1h
aW4gdW5jaGFuZ2VkIGFmdGVyIGFuIGluIGRvY3VtZW50IG5hdmlnYXRpb24gKFVSTCBmcmFnbWVu
dCBjaGFuZ2UpLgogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3Byb3BlcnR5
XScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbAppbmRleCBmMzljYTA1NzY5NTU5OTllY2E4YTA4
MzMxZTU1Y2MyOTI1ODE2ZjM2Li43NWU2ZTExM2I2ZGJhMzY4N2RmMWM4ZmRiZjljOTgzYTlmYWU4
YTY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbApA
QCAtMTMsNiArMTMsOCBAQAogICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYWxs
IG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
IGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1bWVudCBuYXZpZ2F0
aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS48L3A+CiAKICAgICAgICAgPHNjcmlwdD4KKyAgICAg
ICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgIHZhciBu
YXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAgICAgICAnY29ubmVjdEVuZCcsCiAg
ICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dAppbmRleCA5ZTJjYWE2
MjBmNWFkZWI5ZGFkYTRjODJkZDFkNjgzN2NjYTdmMTI1Li4yYzA0NjMwYmFlMTU2ZGE3OWUwNTAx
N2YzZWJhNTliY2ZjOWE3YWE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9u
X3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw3IEBACiBmcmFt
ZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAiPCEt
LWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCi1DT05TT0xFIE1FU1NBR0U6
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
LnR5cGUnKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihz
KQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQogRGVz
Y3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlIHdpdGggYSBmb3J3
YXJkIGFuZCBiYWNrIG5hdmlnYXRpb24uCkBAIC0xMyw2ICsxNCw1IEBAIFRoaXMgdGVzdCBwYXNz
ZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZnJh
bWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQot
CitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKaW5kZXggYzRiNTc1ODEwNjkxMTAzZGI2OWM2
MTBiOWVjNjk0MjUxMTBkNzYzNS4uZDAwNDU0MTViODljNDVlZDlhMWE4ODllOGJlMGFiYzgxMjMw
OTJkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3
YXJkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJk
Lmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAg
ICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rp
b24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzMwZGNl
NDRkODMxMTAzN2NiNWM3OWNlMjkxOWYzMDZmYjQwYTZhOQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZSBv
ZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5
cGUgdG8gYmUgbmF2aWdhdGUuCisKKworUEFTUyBOYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdh
dGUuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0
ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZWZhZWYxZWMwYmJiODhlNWZiMTVjMmEzMWZkNWY5MzNjMTZhMDlmNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1s
CkBAIC0wLDAgKzEsMzIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+Cisg
ICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9
Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsg
cmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy8j
c2VjLW5hdmlnYXRpb24tdGltaW5nLWludGVyZmFjZSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdD4KKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAg
ICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAg
ICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllcygpWzBdLnR5cGUs
ICJuYXZpZ2F0ZSIsICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7
CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAg
ICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICAgICAgfSkKKyAgICAg
ICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlw
ZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAgIH0sICJOYXZpZ2F0aW9uIHR5cGUg
dG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorCisgICAgPC9oZWFkPgorICAg
IDxib2R5PgorICAgICAgICA8aDE+CisgICAgICAgICAgICBEZXNjcmlwdGlvbjwvaDE+CisgICAg
ICAgIDxwPgorICAgICAgICAgICAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlIHRv
IGJlIG5hdmlnYXRlLjwvcD4KKworICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKaW5kZXggNzFjNDdl
NWI4ZGY3YTUxZWU4ZWJkZTY5OGFlODU2ZWE2NzIzYTU4MC4uYTRkNmJkYTZkNDQ5ZjFhZTFmNmJi
NThkYzU4MjY1ZTM2ZWFhYWU3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NB
R0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25l
d05hdlRpbWluZy50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhl
IHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF0uKHR5cGUvdW5sb2FkRXZlbnRFbmQvdW5sb2FkRXZlbnRTdGFydCkgd2l0aCBhIHJlbG9h
ZGVkIG5hdmlnYXRpb24uCkBAIC0xMCw2ICs5LDUgQEAgVGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2FkRXZlbnRTdGFydCA+IDAgYWZ0ZXIK
IFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLnVu
bG9hZEV2ZW50RW5kID4gMCBhZnRlciByZWxvYWQKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwg
bWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25ld05hdlRpbWluZy50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwKaW5kZXggNzRiODVj
OWRiYjVlMDMyNjZjMGJhMDE0NWFkNDVkNjdhMDI1ZmQwYy4uMGYwM2YwN2M1N2M5YzFhYzNjODY4
NzQxYTIzZDlmMmU2ZWJiMmIyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX3JlbG9hZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9y
ZWxvYWQuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+Cisg
ICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAgICB2
YXIgcmVsb2FkX2ZyYW1lOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYWQzODk4NzYxYjg3MTUwZDBhNzY1YWIzMWMyZTYxOTc2ZDky
MTYxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hz
ZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBA
CitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0cDovL3d3dy5sb2NhbGhvc3Q6ODgw
MC9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5P2xvY2F0aW9uPWh0dHA6Ly9sb2NhbGhvc3Q6ODgw
MC9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sCitEZXNj
cmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3Vu
dCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgY3Jvc3Mtb3JpZ2luIHNlcnZlciBz
aWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmluYWwgZG9jdW1lbnQgaXMgdGhlIHNh
bWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi4KKworCisKK0hhcm5lc3MgRXJyb3IgKFRJTUVPVVQp
LCBtZXNzYWdlID0gbnVsbAorCitOT1RSVU4gTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmln
aW5hbF9vcmlnaW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJf
ZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmRlZmEyMDI1MDBhNDQ5NzE2
ZWFhYjVkMmQ3NTYxNmFjNDczMDVhMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwKQEAgLTAs
MCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAg
PG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWlu
ZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xl
IiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9Imhl
bHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1Q
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAg
ICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKKyAgICAgICAgICAgIGZ1bmN0
aW9uIG9ubG9hZF90ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBjb25zdCBm
cmFtZV9wZXJmb3JtYW5jZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQi
KS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5
cGUsCisgICAgICAgICAgICAgICAgICAgICJuYXZpZ2F0ZSIsCisgICAgICAgICAgICAgICAgICAg
ICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgICAg
ICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4
cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XS5yZWRpcmVjdFN0YXJ0LCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJl
Y3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVf
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0RW5k
LCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUgMC4i
KTsKKyAgICAgICAgICAgICAgICBkb25lKCk7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2Ny
aXB0PgorCisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248
L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdp
bmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJl
Y3RDb3VudCBhbmQgdGhlCisgICAgICAgICAgIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgY3Jv
c3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmluYWwK
KyAgICAgICAgICAgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi48
L3A+CisKKyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250ZXh0IiBzcmM9IiIgc3R5bGU9Indp
ZHRoOiAyNTBweDsgaGVpZ2h0OiAyNTBweDsiPjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0Pgor
ICAgICAgICAgICAgLy8gY29tYmluZSB0aGUgcGFnZSBvcmlnaW4gYW5kIHJlZGlyZWN0IG9yaWdp
biBpbnRvIHRoZSBJRlJBTUUncyBzcmMgVVJMCisgICAgICAgICAgICBjb25zdCBkZXN0VXJsX2Zp
cnN0ID0gbWFrZV9hYnNvbHV0ZV91cmwoe3N1YmRvbWFpbjogInd3dyIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVjdC1v
cHQtaW4ucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cXVlcnk6ICJsb2NhdGlvbj0iICsgbWFrZV9hYnNvbHV0ZV91cmwoCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGF0aDogIi9uYXZpZ2F0
aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIn0pCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIGNvbnN0
IGRlc3RVcmwgPSBtYWtlX2Fic29sdXRlX3VybCh7CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVjdC5weSIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVyeTogImxvY2F0aW9uPSIg
KyBkZXN0VXJsX2ZpcnN0fSk7CisgICAgICAgICAgICBsZXQgZnJhbWVDb250ZXh0ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpOworICAgICAgICAgICAgZnJhbWVDb250
ZXh0Lm9ubG9hZCA9IG9ubG9hZF90ZXN0OworICAgICAgICAgICAgZnJhbWVDb250ZXh0LnNyYyA9
IGRlc3RVcmw7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRf
aW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9w
YXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKaW5kZXggNzFlZDQ3ZmUzNWExNDJlNDBmZjQ3OTA1
Zjc3ODhhMWRjNWFjYTBmYi4uNGU3OWE3ZmRiYTA4NjE2Zjk0NTA4ZGJmZmU4MmM1NjkwNGM0YmJk
MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0
aWFsX29wdF9pbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBAIFRo
aXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2Fn
ZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2Zy
YW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykK
LQorRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbAppbmRleCBjMGRk
MjQ5NTQ1YTY0MGVjMGNkZDc1OWIyMTE0YWI3MjVhNjA5MDM5Li4wZmViM2JmYTdmMWMwMTM4ZTRj
OWY5ZTNmZDRkMzgzZTVlZjY1ODVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sCkBAIC05LDEzICs5LDcg
QEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91dGlscy5qcyI+PC9zY3Jp
cHQ+CiAgICAgICAgIDxzY3JpcHQ+Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHZlcmlmeVRpbWlu
Z0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50cnkpIHsKLSAgICAgICAgICAgICAgICBm
b3IgKGxldCBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsrKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaV1dIDwgdGlt
aW5nRW50cnlbZXZlbnRPcmRlcltpICsgMV1dLAotICAgICAgICAgICAgICAgICAgICAgICAgIkV4
cGVjdGVkICIgKyBldmVudE9yZGVyW2ldICsgIiB0byBiZSBubyBncmVhdGVyIHRoYW4gIiArIGV2
ZW50T3JkZXJbaSArIDFdICsgIi4iKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9
CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAg
ICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCiAgICAgICAgICAgICB7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X25vbmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU3MWFlOTQwNDFhYWFjNzM5NDNk
MjFjMmI0MjM1OGY3OTc5YTRkMmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisK
K1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUgb2YgdGhlIHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhdHRy
aWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQgcmVkaXJlY3RFbmQgYXR0cmlidXRl
cyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uCisKKworUEFTUyBOYWl2YXRpb24gd2l0
aG91dCByZWRpcmVjdHMuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25v
bmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
NzQzN2UxYTVlZjJiNjFhZTY1NzYyYmZhMzUxNjMwZWI0NzE0Y2RmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sCkBAIC0wLDAgKzEsMzMgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9
InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxl
PgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDov
L3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRw
Oi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0
aGF0IHRoZSB2YWx1ZSBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGF0dHJpYnV0ZSwgYXMgd2VsbCBhcyB0aGUg
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRp
cmVjdFN0YXJ0IGFuZCByZWRpcmVjdEVuZCBhdHRyaWJ1dGVzIG9uIGEgbm9uLXJlZGlyZWN0ZWQg
bmF2aWdhdGlvbi48L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKworICAgICAgICBhc3luY190ZXN0
KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlM
aXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcgPSBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0Q291bnQsIDAsICJFeHBlY3RlZCByZWRpcmVj
dENvdW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2
VGltaW5nLnJlZGlyZWN0U3RhcnQsIDAsICJFeHBlY3RlZCByZWRpcmVjdFN0YXJ0IHRvIGJlIDAu
Iik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0
RW5kLCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAg
ICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0LmRvbmUo
KTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgfSwg
Ik5haXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CmluZGV4IDA0YTI0OGNkZTUwMWQyNjg5
NGIyMjA3ZmU5YWY1ZjU1MGQyMGNiYzcuLjRmYjE1Y2FmY2U3ZTYxNzJlZDJlZjliOWYxM2M4NDcx
ZjU5NjNlOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4
dApAQCAtMSwxMCArMSw5IEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZW50cnkudHlwZScpCitD
T05TT0xFIE1FU1NBR0U6IEVycm9yOiBhc3NlcnRfdHJ1ZTogRXhwZWN0ZWQgc3RhcnRUaW1lIHRv
IGJlIG5vIGdyZWF0ZXIgdGhhbiByZWRpcmVjdFN0YXJ0LiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3
aW5kb3cucGVyZm9ybWFuY2UucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgc2FtZS1vcmlnaW4gc2VydmVy
IHNpZGUgcmVkaXJlY3QgbmF2aWdhdGlvbi4KIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBt
ZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQ
VCBFcnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0YXJ0VGltZSB0byBiZSBubyBncmVhdGVy
IHRoYW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9zZXJ2ZXIuaHRtbAppbmRleCAxZDdmNmM5MjhjZTYzYzk0ZWRjMTQ5MWQyODgzYzg3
MzMxZTM4NzIyLi45ZWMyOTkyYmVmNThlYzZlMDMwNGZiMTUyODgxNDA1OTA0MWYzMTQ4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbApAQCAtOSw2ICs5LDcgQEAKICAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogCiAg
ICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0p
OwogCiAgICAgICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2ZW50T3Jk
ZXIsIHRpbWluZ0VudHJ5KSB7CiAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBl
dmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94
c2VydmVyLWV4cGVjdGVkLnR4dAppbmRleCBhMDkxNmM0NThjNjI4MmQzMWQ1Mzg0OGQ3OWY1Mzc0
Y2VmNDI3NWM2Li5lODFjY2VkYTllYmYzZWQ3NTgzMDM3MjYxNTk5ZmQ5OTE5M2QxYzhkIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVkLnR4dApAQCAtNiw2ICs2
LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWcKIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwp
LCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAncGVyZm9ybWFuY2VOYW1lc3BhY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
WzBdLnR5cGUnKQotCitGQUlMIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUIFR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BlcmZvcm1hbmNlTmFtZXNwYWNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfeHNlcnZlci5odG1sCmluZGV4IDA2YzliN2YzYjY3OGEyMjc1MWExZThlMWE1NzAyODIx
NmFiMjE4NzkuLmQ4YWNjODA1NGQ4N2E5NzJkMDA1OTZkOTc5NDg1ODQ3Y2Y2Y2Y0ZTUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKQEAgLTksNiArOSw3IEBACiAgICAgICAgIDxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vdXRpbHMuanMiPjwvc2NyaXB0PgogICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAg
ICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjQ3NjhjNTAwNDY1ZDc3YjVkMWE5ODNiYzQ2NmJlMWFkZTQ3ZmU5ODMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFj
aCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4KKworCitGQUlMIEVh
Y2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuIGFzc2VydF9lcXVh
bHM6IE9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiBleHBlY3RlZCAxIGJ1dCBn
b3QgMAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4xZDc3YWI2YmFlMTAxYjcwNGQxMjY3ZThiMDM0MTYwMTFmMjhkNjc2Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbApAQCAtMCwwICsx
LDc2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0
YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIg
V1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhy
ZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIg
aHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJv
ZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhhdCBlYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGluc3Rh
bmNlLjwvcD4KKyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250ZXh0IiBzcmM9InJlc291cmNl
cy9ibGFua19wYWdlX2dyZWVuLmh0bWwiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ijs+PC9pZnJhbWU+
CisgICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRl
cyA9IFsKKyAgICAgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAgICAgJ2Nv
bm5lY3RTdGFydCcsCisgICAgICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAg
ICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAgICAgICAnZG9tQ29udGVudExvYWRl
ZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQn
LAorICAgICAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAg
ICAgICAgICAgICAgICAnZHVyYXRpb24nLAorICAgICAgICAgICAgICAgICdlbmNvZGVkQm9keVNp
emUnLAorICAgICAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgICAgICdmZXRj
aFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnaW5pdGlhdG9yVHlwZScsCisgICAgICAgICAgICAg
ICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAg
ICAgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAor
ICAgICAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisgICAgICAgICAgICAgICAgJ3JlZGlyZWN0
U3RhcnQnLAorICAgICAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgICAg
ICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAg
ICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgICAgICd0cmFu
c2ZlclNpemUnLAorICAgICAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICAgICAndW5s
b2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAg
ICAgICAgICAgICAnd29ya2VyU3RhcnQnCisgICAgICAgICAgICBdOworCisgICAgICAgICAgICBm
dW5jdGlvbiBub3Rfc2FtZV9pbnN0YW5jZShpbnN0YW5jZTEsIGluc3RhbmNlMiwgYXR0cmlidXRl
cykgeworICAgICAgICAgICAgICAgIGZvciAodmFyIGkgaW4gYXR0cmlidXRlcykgeworICAgICAg
ICAgICAgICAgICAgICBpZiAoaW5zdGFuY2UxW2F0dHJpYnV0ZXNbaV1dICE9IGluc3RhbmNlMlth
dHRyaWJ1dGVzW2ldXSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAg
ICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAg
ICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFuY2UgZXhpc3Rz
LiIpOworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICJPbmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHZhciBtYWluX2ZyYW1lX2luc3RhbmNlID0gZW50cnlMaXN0Lmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHZhciBpZnJhbWVfaW5zdGFuY2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250
ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShub3Rfc2FtZV9p
bnN0YW5jZShtYWluX2ZyYW1lX2luc3RhbmNlLCBpZnJhbWVfaW5zdGFuY2UsIG5hdlRpbWluZzJB
dHRyaWJ1dGVzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVHdvIG5hdiB0aW1pbmcg
aW5zdGFuY2VzIGFyZSBub3QgdGhlIHNhbWUgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAg
ICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICApOworICAg
ICAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJd
fSk7CisKKyAgICAgICAgICAgIH0sICJFYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWlu
ZyAyIGluc3RhbmNlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1u
YXZpZ2F0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMGViMWY1ZmIyNDQyMDBjM2JmNTBh
NWVhZDg4NmQ3ODRjY2FiNzI4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9u
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBuYXZp
Z2F0aW9uCisKK05hdmlnYXRpb24gd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKwor
UEFTUyBuYXZpZ2F0aW9uIGVudHJ5IGlzIG9ic2VydmFibGUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9w
by1uYXZpZ2F0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
NTRmYjJhZmY4ZWFiNzRlNTljNWE4NGZjMmJjZjQ4N2YxMjJlYzQ5Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwKQEAgLTAsMCArMSwyOSBAQAorPCFET0NUWVBFIEhU
TUw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPlBlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBu
YXZpZ2F0aW9uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbjwvaDE+Cis8
cD4KK05hdmlnYXRpb24gd2lsbCA8YSBocmVmPSJodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9y
bWFuY2UtdGltZWxpbmUvI2Rmbi1xdWV1ZS1hLXBlcmZvcm1hbmNlZW50cnkiPnF1ZXVlIGEgUGVy
Zm9ybWFuY2VFbnRyeTwvYT4uCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlwdD4K
KyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9uIGNoZWNrRW50cnkocGVz
KSB7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlcy5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0
aW9uIHRpbWluZyBlbnRyeSIpOworICAgICAgYXNzZXJ0X2VxdWFscyhwZXNbMF0uZW50cnlUeXBl
LCAibmF2aWdhdGlvbiIsICJlbnRyeVR5cGUgaXMgXCJuYXZpZ2F0aW9uXCIiKTsKKyAgICAgIGFz
c2VydF9lcXVhbHMocGVzWzBdLm5hbWUsIHdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmFt
ZSBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgZG9jdW1lbnQiKTsKKyAgICB9CisgICAgdmFyIG9ic2Vy
dmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0
aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNoZWNrRW50cnkoZW50cnlMaXN0Lmdl
dEVudHJpZXMoKSk7CisgICAgICAgICAgY2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpKTsKKyAgICAgICAgICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlOYW1lKHdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpKSk7CisgICAgICAgICAgb2Jz
ZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9KQorICAg
ICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworICB9LCAibmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZhYmxlIik7Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVz
b3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcwppbmRleCAzZWZiNTI3ODNmMWU1ZGNiMGQ0MmFh
ZDExYWVjMmE5ZTQ3MjU3ZDMzLi4wYzI3YzJlZTMwN2Y0YjgwOTlhNmI0YzViMDQ5N2JhZjUwYjYx
MTA0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCkBAIC00MiwyNSArNDIsMjUg
QEAgZnVuY3Rpb24gdGVzdF9uYW1lc3BhY2UoY2hpbGRfbmFtZSwgc2tpcF9yb290KQogewogICAg
IGlmIChza2lwX3Jvb3QgPT09IHVuZGVmaW5lZCkgewogICAgICAgICB2YXIgbXNnID0gJ3dpbmRv
dy5wZXJmb3JtYW5jZSBpcyBkZWZpbmVkJzsKLSAgICAgICAgd3BfdGVzdChmdW5jdGlvbiAoKSB7
IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlICE9PSB1bmRlZmluZWQsIG1zZyk7IH0s
IG1zZyk7CisgICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRfbm90X2VxdWFscyhw
ZXJmb3JtYW5jZU5hbWVzcGFjZSwgdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cpOwogICAgIH0KIAog
ICAgIGlmIChjaGlsZF9uYW1lICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgdmFyIG1zZzIgPSAn
d2luZG93LnBlcmZvcm1hbmNlLicgKyBjaGlsZF9uYW1lICsgJyBpcyBkZWZpbmVkJzsKLSAgICAg
ICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1lc3BhY2Vb
Y2hpbGRfbmFtZV0gIT09IHVuZGVmaW5lZCwgbXNnMik7IH0sIG1zZzIpOworICAgICAgICB3cF90
ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtj
aGlsZF9uYW1lXSwgdW5kZWZpbmVkLCBtc2cyKTsgfSwgbXNnMik7CiAgICAgfQogfQogCiBmdW5j
dGlvbiB0ZXN0X2F0dHJpYnV0ZV9leGlzdHMocGFyZW50X25hbWUsIGF0dHJpYnV0ZV9uYW1lLCBw
cm9wZXJ0aWVzKQogewogICAgIHZhciBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJl
bnRfbmFtZSArICcuJyArIGF0dHJpYnV0ZV9uYW1lICsgJyBpcyBkZWZpbmVkLic7Ci0gICAgd3Bf
dGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50
X25hbWVdW2F0dHJpYnV0ZV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3Bl
cnRpZXMpOworICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZv
cm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVfbmFtZV0sIHVuZGVmaW5lZCwg
bXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIH0KIAogZnVuY3Rpb24gdGVzdF9lbnVtKHBhcmVu
dF9uYW1lLCBlbnVtX25hbWUsIHZhbHVlLCBwcm9wZXJ0aWVzKQogewogICAgIHZhciBtc2cgPSAn
d2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSArICcuJyArIGVudW1fbmFtZSArICcg
aXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90cnVlKHBlcmZv
cm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdICE9PSB1bmRlZmluZWQsIG1z
Zyk7IH0sIG1zZywgcHJvcGVydGllcyk7CisgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0
X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2VudW1fbmFtZV0s
IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIAogICAgIG1zZyA9ICd3aW5k
b3cucGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsgJy4nICsgZW51bV9uYW1lICsgJyA9ICcg
KyB2YWx1ZTsKICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfZXF1YWxzKHBlcmZvcm1h
bmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB2YWx1ZSwgbXNnKTsgfSwgbXNn
LCBwcm9wZXJ0aWVzKTsKQEAgLTEyMiw1ICsxMjIsNSBAQCBmdW5jdGlvbiB0ZXN0X2dyZWF0ZXJf
b3JfZXF1YWxzKHZhbHVlLCBncmVhdGVyX3RoYW4sIG1zZywgcHJvcGVydGllcykKIAogZnVuY3Rp
b24gdGVzdF9ub3RfZXF1YWxzKHZhbHVlLCBub3RlcXVhbHMsIG1zZywgcHJvcGVydGllcykKIHsK
LSAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZSh2YWx1ZSAhPT0gbm90ZXF1YWxz
LCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFz
c2VydF9ub3RfZXF1YWxzKHZhbHVlLCBub3RlcXVhbHMsIG1zZyk7IH0sIG1zZywgcHJvcGVydGll
cyk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0
dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0
cHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYxMDhkMmU4MzM2NGFkMTRmZGYyYTMwNGY3ZDU0
ODI4NzgwZDllYTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0
YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKworCitQQVNTIFRl
c3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgdmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiBy
ZXVzZWQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5o
dHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmY1MmEyNTllY2Q0MjVjMjEyZDg5ZWIxMTQ5ODFkNGYxMmU4MGYzMDUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBz
Lmh0bWwKQEAgLTAsMCArMSwxNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PG1ldGEgY2hhcnNldD0idXRmLTgiIC8+Cis8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgc2VjdXJl
Y29ubmVjdGlvbnN0YXJ0IHJldXNlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+Citjb25zdCB0ID0gYXN5bmNfdGVzdCgi
VGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCB2YWx1ZSBpcyBhcyBleHBlY3RlZCB3aGVu
IHJldXNlZCIpOword2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0LnN0ZXBfZnVu
Y19kb25lKGUgPT4geworICBhc3NlcnRfZXF1YWxzKGUuZGF0YSwgIlBBU1MiKTsKK30pKTsKKzwv
c2NyaXB0PgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9zZWN1cmUtY29ubmVjdGlvbi1pbnRlcmlt
Lmh0bWwiPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96
ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9u
X3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDgyMjA0ZDA2NTE2Njk1N2FhOTAwOTg5Y2Vj
N2RhY2NhY2RlMzg0ODYuLjUxODI3NTgzYWQzN2UxZTEyYzFhYmY1ZjIxYzhjZTYyNTBlMzEwMGIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8u
aHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0zLDUgKzMsNSBAQCBEZXNjcmlwdGlvbgogVGhlIHRlc3Rz
IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IGhhcyBhIG5vbi16ZXJvIHZhbHVlLgogCiAKLUZB
SUwgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBpcyBub3QgemVybyB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkuc2VjdXJlQ29ubmVjdGlvblN0YXJ0
JykKK0ZBSUwgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBpcyBub3QgemVybyBhc3Nl
cnRfZ3JlYXRlcl90aGFuOiBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm9uLXplcm8gZXhwZWN0
ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAwCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0
ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQKaW5kZXggNTc5NzhiZjI2ZGIwZTQx
M2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uZDJlYTk1MDQ3NmQ5MWJlNTYwNDZkMDMzZDFmY2Q2
NjFkNDc5ODBmOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFu
eS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1l
eHBlY3RlZC50eHQKQEAgLTEsMyArMSw0IEBACiAKLUZBSUwgc3VwcG9ydGVkRW50cnlUeXBlcyBj
b250YWlucyAnbmF2aWdhdGlvbicuIGFzc2VydF90cnVlOiBUaGVyZSBzaG91bGQgYmUgYW4gZW50
cnkgJ25hdmlnYXRpb24nIGluIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBl
cyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRh
aW5zICduYXZpZ2F0aW9uJy4KK1BBU1MgJ25hdmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJlIG9i
c2VydmFibGUuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5h
bnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5h
bnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1Nzk3OGJmMjZkYjBlNDEzY2JmMmQ0YzJmMzg2
MzljNDFhMjVmYzUwLi4zNDM4MzVhNDI4NDUzZTBiMWNmNjVkODRkYjgzM2Y5MWFiYzgzNjE4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNiBAQAogCi1GQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMg
Y29udGFpbnMgJ25hdmlnYXRpb24nLiBhc3NlcnRfdHJ1ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVu
dHJ5ICduYXZpZ2F0aW9uJyBpbiBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlw
ZXMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0hhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNz
YWdlID0gbnVsbAorCitQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRp
b24nLgorVElNRU9VVCAnbmF2aWdhdGlvbicgZW50cmllcyBzaG91bGQgYmUgb2JzZXJ2YWJsZS4g
VGVzdCB0aW1lZCBvdXQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iZTlhMzg0YTViYjM3MDA0ZThmNzA0Mjg1YjM1MmVlYWI0OTEzY2U1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw4IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgdGhlIHRyYW5z
ZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplIGFuZCBkZWNvZGVkQm9keVNpemUgYXR0cmlidXRlcyBo
YXZlIGNvcnJlY3QgdmFsdWVzIHdoZW4gY2hlY2tlZCBpbiB0aGUgb25sb2FkIGhhbmRsZXIKKwor
CitGQUlMIFRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmlu
ZyBET01Db250ZW50TG9hZGVkIGFzc2VydF9ncmVhdGVyX3RoYW46IGRlc2NyIGV4cGVjdGVkIGEg
bnVtYmVyIGJ1dCBnb3QgYSAidW5kZWZpbmVkIgorRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0
ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgb25sb2FkIGFzc2VydF9ncmVhdGVyX3RoYW46
IGRlc2NyIGV4cGVjdGVkIGEgbnVtYmVyIGJ1dCBnb3QgYSAidW5kZWZpbmVkIgorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRf
b25sb2FkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2NjMTg0OTFkNjIwMjRmMWQ0ZmEzZDIwYzUxNzNiMzEz
MjY5YjNlOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRt
bApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgor
ICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT53aW5kb3cucGVy
Zm9ybWFuY2UubmF2aWdhdGlvbiBhdHRyaWJ1dGVzPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVs
PSJhdXRob3IiIHRpdGxlPSJNb3ppbGxhIiBocmVmPSJodHRwczovL3d3dy5tb3ppbGxhLm9yZy8i
IC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly93d3cudzMub3JnL1RS
L25hdmlnYXRpb24tdGltaW5nLTIvI3Byb2Nlc3NpbmctbW9kZWwiLz4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3BlcmZvcm1hbmNlLXRpbWVsaW5lLXV0aWxzLmpzIj48
L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRl
c2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFu
c2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVjb2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMg
aGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQgaW4gdGhlIG9ubG9hZCBoYW5kbGVyPC9w
PgorCisgICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisKKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgICAgICBkb2N1
bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwgdC5zdGVwX2Z1bmNfZG9u
ZSgoKSA9PiB7CisgICAgICAgICAgICAgICAgICAgIGxldCBlbnRyeSA9IHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkudHJhbnNmZXJTaXplLCAxMDAwLCAiZGVzY3Ii
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5lbmNvZGVk
Qm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3Jl
YXRlcl90aGFuKGVudHJ5LmRlY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAg
ICAgICAgICAgfSkpOworICAgICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBo
YXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBET01Db250ZW50TG9hZGVkIik7CisKKyAgICAgICAg
ICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgICAgICB3aW5kb3cuYWRk
RXZlbnRMaXN0ZW5lcigibG9hZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAg
ICAgICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90
aGFuKGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVz
Y3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNv
ZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHQu
c3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZW50
cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
OworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnRy
YW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNv
ZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICAgICAgfSks
IDApOworICAgICAgICAgICAgICAgICAgICB9LCAiVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhh
dmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIGEgdGFzayBhZnRlciBvbmxvYWQiKTsKKyAgICAgICAg
ICAgICAgICB9KSk7CisgICAgICAgICAgICB9LCAiVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhh
dmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9ubG9hZCIpOworCisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUt
b3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2lu
LWNoZWNrLWV4cGVjdGVkLnR4dAppbmRleCBkYTUyNjBhMjIzZDIyYWQxYWM0ZDVkMjk3MjZjNGFl
MjczZWIxYjI4Li4zZmVlYWQxZmRlNzIwMzM3MzZkZWYxZjA0ZTViNDcxMDk4YjBkMzhhIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CkBA
IC00LDE2ICs0LDE2IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIHdp
bmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpCiAKIAogCi1GQUlMIFJlZGly
ZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBSZWRpcmVjdCBj
aGFpbiB3aXRoIGZ1bGwgVEFPIG9wdC1pbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIFNhbWUtY3Jvc3Mtc2FtZSByZWRp
cmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBjcm9zcy1jcm9zcy1zYW1l
IFJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIFByZXZpb3VzIGRv
Y3VtZW50IGNyb3NzIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIFByZXZpb3VzIGRvY3VtZW50IHNhbWUgb3Jp
Z2luIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBTYW1lIG9yaWdp
biBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3JpZ2luIHJlZGlyZWN0IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwg
Tm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlM
IE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZB
SUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBw
YXJ0aWFsIFRBTyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3Jp
Z2luIHJlZGlyZWN0IHdpdGggVEFPIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKK1BBU1MgUmVkaXJlY3QgY2hhaW4gd2l0aCBhIHBh
cnRpYWwgVEFPIG9wdC1pbgorUEFTUyBSZWRpcmVjdCBjaGFpbiB3aXRoIGZ1bGwgVEFPIG9wdC1p
bgorUEFTUyBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWlu
CitQQVNTIGNyb3NzLWNyb3NzLXNhbWUgUmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWlu
CitQQVNTIFByZXZpb3VzIGRvY3VtZW50IGNyb3NzIG9yaWdpbgorUEFTUyBQcmV2aW91cyBkb2N1
bWVudCBzYW1lIG9yaWdpbgorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudAorUEFTUyBTYW1lIG9y
aWdpbiBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5v
IHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmlnaW4gcmVkaXJlY3QKK1BBU1MgTm8gcHJl
dmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3QKK1BBU1MgTm8gcHJldmlv
dXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBwYXJ0aWFsIFRBTwor
UEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRo
IFRBTwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44OWZhZTFkYjBkOWI3YWZkMjAyNzM3ZTM0NzU0YjRlODkzMjk4ZDQ5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbApAQCAtMCwwICsxLDQgQEAKK3NwZWM6IGh0
dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8KK3N1Z2dlc3RlZF9yZXZp
ZXdlcnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
YnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxh
Zy1hZnRlci10aW1lb3V0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOGIzZTMyMzE0NjU4NTdjZjI0OGU0
YWNlOGVmNTc0NDY5YTE0ODY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1m
bGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCkBAIC0wLDAgKzEsMTEgQEAKK2FzeW5jX3Rlc3QodCA9
PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB0LnN0ZXBfdGltZW91dCgoKSA9PiB7
CisgICAgLy8gQWZ0ZXIgYSB0aW1lb3V0LCBQZXJmb3JtYW5jZU9ic2VydmVyIHNob3VsZCBzdGls
bCByZWNlaXZlIGVudHJ5IGlmIHVzaW5nIHRoZSBidWZmZXJlZCBmbGFnLgorICAgIG5ldyBQZXJm
b3JtYW5jZU9ic2VydmVyKHQuc3RlcF9mdW5jX2RvbmUobGlzdCA9PiB7CisgICAgICBjb25zdCBl
bnRyaWVzID0gbGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXMu
bGVuZ3RoLCAxLCAnVGhlcmUgc2hvdWxkIGJlIDEgbWFyayBlbnRyeS4nKTsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICdtYXJrJyk7CisgICAgfSkpLm9ic2VydmUo
e3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAgfSwgMTAwKTsKK30sICdQZXJmb3Jt
YW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzZWVzIGVudHJ5IGFmdGVyIHRpbWVvdXQn
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1vYnNlcnZlci5hbnkuanMgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMxZGMzOWMx
MjhhZDU1YzEzZWVmNjY1ODNhNjg4ODYyMmY4NmJmNjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCkBAIC0wLDAgKzEsMTUgQEAKK2FzeW5j
X3Rlc3QoIHQ9PiB7CisgIGZvciAobGV0IGkgPSAwOyBpIDwgNTA7IGkrKykKKyAgICBwZXJmb3Jt
YW5jZS5tYXJrKCdmb28nICsgaSk7CisgIGxldCBtYXJrc0NyZWF0ZWQgPSA1MDsKKyAgbGV0IG1h
cmtzUmVjZWl2ZWQgPSAwOworICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAg
ICBtYXJrc1JlY2VpdmVkICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICBpZiAobWFy
a3NDcmVhdGVkIDwgMTAwKSB7CisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCdiYXInICsgbWFya3ND
cmVhdGVkKTsKKyAgICAgIG1hcmtzQ3JlYXRlZCsrOworICAgIH0KKyAgICBpZiAobWFya3NSZWNl
aXZlZCA9PSAxMDApCisgICAgICB0LmRvbmUoKTsKKyAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsn
LCBidWZmZXJlZDogdHJ1ZX0pOworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIgd2l0aCBidWZmZXJl
ZCBmbGFnIHNob3VsZCBzZWUgcGFzdCBhbmQgZnV0dXJlIGVudHJpZXMuJyk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQt
aW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NjkxOTA4MTlmNTNlYjQ1
MzdkYTAxOWM5MGNjMzNiZDBkYTNkOGRmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQt
aW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKworUEFTUyBHZXQg
aW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cuCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRy
aWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMzNkNjU4OWUyNzVlMjY1MTgwZTA1NzFjYTMxMDNkYmY5YWEx
NzliOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1s
CkBAIC0wLDAgKzEsMjcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHNjcmlwdD4KK2FzeW5jX3Rlc3QoZnVuY3Rpb24odCkgeworICBwZXJmb3JtYW5jZS5t
YXJrKCd3aW5kb3dNYXJrJyk7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoInJlc291cmNl
cy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzIik7CisgIHdvcmtlci5vbm1lc3NhZ2UgPSBmdW5j
dGlvbihldmVudCkgeworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnaW52YWxpZCddLCAw
LCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBpbnZhbGlkIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5kYXRhWydtYXJrJ10sIDEsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAxIG1h
cmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhWydtZWFzdXJlJ10sIDAs
ICdUaGUgd29ya2VyIG11c3QgaGF2ZSAwIG1lYXN1cmUgZW50cmllcy4nKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ2ludmFsaWQnKS5sZW5ndGgsIDAs
CisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBpbnZhbGlkIGVudHJpZXMuJyk7CisgICAg
YXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtYXJrJykubGVuZ3Ro
LCAxLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDEgbWFyayBlbnRyeS4nKTsKKyAgICBh
c3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ21lYXN1cmUnKS5sZW5n
dGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBtZWFzdXJlIGVudHJpZXMuJykK
KyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ0dldCBpbnZhbGlkIGVudHJpZXMgZnJvbSB3b3JrZXIg
YW5kIHdpbmRvdy4nKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMzJlZmViZTk4ZmZkNDcyZWUxMDEwMDI3ZmY5NjZhMWVmOTA3ZjE3ZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMKQEAgLTAsMCArMSwyNSBAQAor
Ly8gTUVUQTogZ2xvYmFsPXdpbmRvdyx3b3JrZXIKKy8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2Vz
L1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvaWRsaGFybmVzcy5q
cworCisvLyBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvCisKKyd1
c2Ugc3RyaWN0JzsKKworaWRsX3Rlc3QoCisgIFsncGVyZm9ybWFuY2UtdGltZWxpbmUnXSwKKyAg
Wydoci10aW1lJywgJ2RvbSddLAorICBhc3luYyBpZGxfYXJyYXkgPT4geworICAgIGlkbF9hcnJh
eS5hZGRfb2JqZWN0cyh7CisgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3JtYW5jZSddLAorICAg
ICAgUGVyZm9ybWFuY2VPYnNlcnZlcjogWydvYnNlcnZlciddLAorICAgICAgUGVyZm9ybWFuY2VP
YnNlcnZlckVudHJ5TGlzdDogWydlbnRyeUxpc3QnXSwKKyAgICB9KTsKKworICAgIHNlbGYuZW50
cnlMaXN0ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAg
c2VsZi5vYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHJlc29sdmUpOworICAgICAg
b2JzZXJ2ZXIub2JzZXJ2ZSh7IGVudHJ5VHlwZXM6IFsnbWFyayddIH0pOworICAgICAgcGVyZm9y
bWFuY2UubWFyaygndGVzdCcpOworICAgIH0pOworICB9CispOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL211bHRp
cGxlLWJ1ZmZlcmVkLWZsYWctb2JzZXJ2ZXJzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZGQ0NGZiMThm
YmRiOWMzYzMyZjQ1MzhkMmVmN2VjMmNhYzQ3MzAyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanMKQEAgLTAsMCArMSwzMiBA
QAorcHJvbWlzZV90ZXN0KCgpID0+IHsKKyAgLy8gVGhlIGZpcnN0IHByb21pc2Ugd2FpdHMgZm9y
IG9uZSBidWZmZXJlZCBmbGFnIG9ic2VydmVyIHRvIHJlY2VpdmUgMyBlbnRyaWVzLgorICBjb25z
dCBwcm9taXNlMSA9IG5ldyBQcm9taXNlKHJlc29sdmUxID0+IHsKKyAgICBsZXQgbnVtT2JzZXJ2
ZWQxID0gMDsKKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoZW50cnlMaXN0LCBvYnMpID0+
IHsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBjb25zdHJ1Y3RlZCBh
ZnRlciBhIHJlZ3VsYXIgb2JzZXJ2ZXIgZGV0ZWN0cyBhIG1hcmsuCisgICAgICBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2JzZXJ2ZWQxICs9IGxpc3QuZ2V0
RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2VydmVkMSA9PSAzKQorICAgICAg
ICAgIHJlc29sdmUxKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVk
OiB0cnVlfSk7CisgICAgICBvYnMuZGlzY29ubmVjdCgpOworICAgIH0pLm9ic2VydmUoe2VudHJ5
VHlwZXM6IFsnbWFyayddfSk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZm9vJyk7CisgIH0pOwor
ICAvLyBUaGUgc2Vjb25kIHByb21pc2Ugd2FpdHMgZm9yIGFub3RoZXIgYnVmZmVyZWQgZmxhZyBv
YnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJvbWlzZTIgPSBuZXcgUHJv
bWlzZShyZXNvbHZlMiA9PiB7CisgICAgc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICAgIGxldCBu
dW1PYnNlcnZlZDIgPSAwOworICAgICAgLy8gVGhpcyBidWZmZXJlZCBmbGFnIG9ic2VydmVyIGlz
IGNvbnN0cnVjdGVkIGFmdGVyIGEgZGVsYXkgb2YgMTAwbXMuCisgICAgICBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2JzZXJ2ZWQyICs9IGxpc3QuZ2V0RW50
cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2VydmVkMiA9PSAzKQorICAgICAgICAg
IHJlc29sdmUyKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0
cnVlfSk7CisgICAgfSwgMTAwKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdiYXInKTsKKyAgfSk7
CisgIHBlcmZvcm1hbmNlLm1hcmsoJ21lb3cnKTsKKyAgLy8gUGFzcyBpZiBhbmQgb25seSBpZiBi
b3RoIGJ1ZmZlcmVkIG9ic2VydmVycyByZWNlaXZlZCBhbGwgMyBtYXJrIGVudHJpZXMuCisgIHJl
dHVybiBQcm9taXNlLmFsbChbcHJvbWlzZTEsIHByb21pc2UyXSk7Cit9LCAnTXVsdGlwbGUgUGVy
Zm9ybWFuY2VPYnNlcnZlcnMgd2l0aCBidWZmZXJlZCBmbGFnIHNlZSBhbGwgZW50cmllcycpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9u
b3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1NDJjZjdjNGFhY2YwMjkxNjY1
YThmNDk3NjVhZGQ4ODVlYmM0MmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9u
YWJsZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgYSBw
b3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZhaWxzCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvbm90LWNsb25hYmxlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmQ2NTE3NzZlNWY0Yjk0NTMyOGU5ZGUyNjUxYjhhNTlmMTFiNTM0MjYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sCkBAIC0wLDAgKzEsMTAgQEAKKzwh
ZG9jdHlwZSBodG1sPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorPHNjcmlwdD4KKyAgY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgdGhhdCBhIHBv
c3RNZXNzYWdlIG9mIGEgcGVyZm9ybWFuY2UgZW50cnkgZmFpbHMiKTsKKyAgYWRkRXZlbnRMaXN0
ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9PiB7CisgICAgYXNzZXJ0X2VxdWFs
cyhlLmRhdGEsICJQQVNTIik7CisgIH0pKTsKKzwvc2NyaXB0PgorPGlmcmFtZSBzcmM9InJlc291
cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIj48L2lmcmFtZT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9vYnNlcnZlci1idWZm
ZXJlZC1mYWxzZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTI4MTAwYjBmZGJhMmUwMDU3OTgwOWE1ODE5
MzVkMzEyY2YxMjQ1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVy
ZWQtZmFsc2UuYW55LmpzCkBAIC0wLDAgKzEsMTIgQEAKK2FzeW5jX3Rlc3QodCA9PiB7CisgIHBl
cmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICAvLyBVc2UgYSB0aW1lb3V0IHRvIGVuc3VyZSB0aGUg
cmVtYWluZGVyIG9mIHRoZSB0ZXN0IHJ1bnMgYWZ0ZXIgdGhlIGVudHJ5IGlzIGNyZWF0ZWQuCisg
IHQuc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICAvLyBPYnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZs
YWcgc2V0IHRvIGZhbHNlIHNob3VsZCBub3Qgc2VlIGVudHJ5LgorICAgIG5ldyBQZXJmb3JtYW5j
ZU9ic2VydmVyKCgpID0+IHsKKyAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1Nob3VsZCBub3QgaGF2
ZSBvYnNlcnZlZCBhbnkgZW50cnkhJyk7CisgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBi
dWZmZXJlZDogZmFsc2V9KTsKKyAgICAvLyBVc2UgYSB0aW1lb3V0IHRvIGdpdmUgdGltZSB0byB0
aGUgb2JzZXJ2ZXIuCisgICAgdC5zdGVwX3RpbWVvdXQodC5zdGVwX2Z1bmNfZG9uZSgoKSA9PiB7
fSksIDEwMCk7CisgIH0sIDApOworfSwgJ1BlcmZvcm1hbmNlT2JzZXJ2ZXIgd2l0aG91dCBidWZm
ZXJlZCBmbGFnIHNldCB0byBmYWxzZSBjYW5ub3Qgc2VlIHBhc3QgZW50cmllcy4nKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
ZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRmMDE1NmVlYzE5MjQx
OTcwMDI4YzI4ZTU4OTdiZTRkNmYxY2I4MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVy
Zm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCkBAIC0wLDAgKzEsMjEgQEAKK3Rlc3QoKCkgPT4g
eworICBwZXJmb3JtYW5jZS5tYXJrKCdtYXJrTmFtZScpOworICBwZXJmb3JtYW5jZS5tZWFzdXJl
KCdtZWFzdXJlTmFtZScpOworCisgIGNvbnN0IGVudHJpZXMgPSBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCk7CisgIGNvbnN0IHBlcmZvcm1hbmNlRW50cnlLZXlzID0gWworICAgICduYW1lJywKKyAg
ICAnZW50cnlUeXBlJywKKyAgICAnc3RhcnRUaW1lJywKKyAgICAnZHVyYXRpb24nCisgIF07Cisg
IGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7ICsraSkgeworICAgIGFzc2VydF9l
cXVhbHModHlwZW9mKGVudHJpZXNbaV0udG9KU09OKSwgJ2Z1bmN0aW9uJyk7CisgICAgY29uc3Qg
anNvbiA9IGVudHJpZXNbaV0udG9KU09OKCk7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YoanNv
biksICdvYmplY3QnKTsKKyAgICBmb3IgKGNvbnN0IGtleSBvZiBwZXJmb3JtYW5jZUVudHJ5S2V5
cykgeworICAgICAgYXNzZXJ0X2VxdWFscyhqc29uW2tleV0sIGVudHJpZXNbaV1ba2V5XSwKKyAg
ICAgICAgYGVudHJpZXNbJHtpfV0udG9KU09OKCkuJHtrZXl9IHNob3VsZCBtYXRjaCBlbnRyaWVz
WyR7aX1dLiR7a2V5fWApOworICAgIH0KKyAgfQorfSwgJ1Rlc3QgdG9KU09OKCkgaW4gUGVyZm9y
bWFuY2VFbnRyeScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhmMWIw
OWJjMzc3MTIwODAyNDAxZGUxYjI0N2FhNTdkYjc0MTRjNjgKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanMKQEAgLTAsMCArMSw2NiBAQAorLy8gTUVU
QTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlv
biAodCkgeworICAgIHZhciBjYWxsYmFja0NvdW50ID0gMDsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVu
dHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2FsbGJhY2tDb3VudCsrOworCisgICAgICAgICAg
aWYgKGNhbGxiYWNrQ291bnQgPT09IDEpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRy
eUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJl
IiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1l
YXN1cmUoIm1lYXN1cmUyIik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisg
ICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50
cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8t
bWVhc3VyZSIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJl
LWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIik7CisgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgICAgICAgICAg
c2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMyIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3Jt
YW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
IH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAzKSB7CisgICAgICAgICAgICBj
aGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAorICAgICAgICAgICAgICB7ZW50
cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10
by1tZWFzdXJlIn0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFu
Y2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tYm90aCIpOworICAg
ICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Ut
b2JzZXJ2ZS1zdGF0ZS10by1ib3RoIik7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisgICAgICAgICAgICBzZWxmLnBlcmZv
cm1hbmNlLm1hcmsoIm1hcms0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1
cmUoIm1lYXN1cmU0Iik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAg
ICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDQpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmll
cyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJt
ZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJv
dGgifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3Vy
ZTQifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazQifSwK
KyAgICAgICAgICAgIF0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJr
LWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1
cmUoIm1lYXN1cmUtYmVmb3JlLWRpc2Nvbm5lY3QiKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRp
c2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1hZnRl
ci1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1l
YXN1cmUtYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgi
VGhlIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQgYWZ0ZXIgZGlzY29ubmVjdGluZyIpOwor
ICAgICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6
IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAg
IHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgfSwgIlBlcmZvcm1hbmNl
T2JzZXJ2ZXIgbW9kaWZpY2F0aW9ucyBpbnNpZGUgY2FsbGJhY2sgc2hvdWxkIHVwZGF0ZSBmaWx0
ZXJpbmcgYW5kIG5vdCBjbGVhciBidWZmZXIiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlz
Y29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29u
bmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYWM5N2JlYTA3
NTVjMTE4Mjk1NmZkZjk0Yzk4ZWU3OGNhNDBiMDE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlwZXMuYW55LmpzCkBAIC0wLDAgKzEs
MTkgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCithc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgIGNvbnN0IG9ic2VydmVyICA9IG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKAorICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAg
ICAvLyBUaGVyZSBzaG91bGQgYmUgbm8gbWFyayBlbnRyeS4KKyAgICAgICAgY2hlY2tFbnRyaWVz
KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWVhc3Vy
ZSIsIG5hbWU6ICJiIn1dKTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9KQorICAgICk7Cisg
IG9ic2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIn0pOworICAvLyBEaXNjb25uZWN0IHRoZSBv
YnNlcnZlci4KKyAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAvLyBOb3csIG9ubHkgb2JzZXJ2
ZSBtZWFzdXJlLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWVhc3VyZSJ9KTsKKyAgcGVy
Zm9ybWFuY2UubWFyaygiYSIpOworICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJiIik7Cit9LCAiVHlw
ZXMgb2JzZXJ2ZWQgYXJlIGZvcmdvdHRlbiB3aGVuIGRpc2Nvbm5lY3QoKSBpcyBjYWxsZWQuIik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1k
aXNjb25uZWN0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZjVmYjVhYTQzYmE0NjI2OGY4YzM1NWZkYzkz
YzZmMTgyOTk2OGI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFu
eS5qcwpAQCAtMCwwICsxLDM3IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZl
cnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0g
bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoaXMgY2FsbGJh
Y2sgbXVzdCBub3QgYmUgaW52b2tlZCIpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNl
cnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSIsICJuYXZpZ2F0aW9u
Il19KTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5t
YXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsK
KyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7CisgICAgICB0LmRvbmUoKTsKKyAgICB9
LCAyMDAwKTsKKyAgfSwgImRpc2Nvbm5lY3RlZCBjYWxsYmFja3MgbXVzdCBub3QgYmUgaW52b2tl
ZCIpOworCisgIHRlc3QoZnVuY3Rpb24gKCkgeworICAgIHZhciBvYnMgPSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcihmdW5jdGlvbiAoKSB7IHJldHVybiB0cnVlOyB9KTsKKyAgICBvYnMuZGlzY29u
bmVjdCgpOworICAgIG9icy5kaXNjb25uZWN0KCk7CisgIH0sICJkaXNjb25uZWN0aW5nIGFuIHVu
Y29ubmVjdGVkIG9ic2VydmVyIGlzIGEgbm8tb3AiKTsKKworICBhc3luY190ZXN0KGZ1bmN0aW9u
ICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAg
ICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGFz
c2VydF91bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBub3QgYmUgaW52b2tlZCIpOworICAg
ICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1h
cmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBvYnNlcnZl
ci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAg
IHQuc3RlcF90aW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAgIHQuZG9uZSgpOworICAgIH0sIDIw
MDApOworICB9LCAiQW4gb2JzZXJ2ZXIgZGlzY29ubmVjdGVkIGFmdGVyIGEgbWFyayBtdXN0IG5v
dCBoYXZlIGl0cyBjYWxsYmFjayBpbnZva2VkIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVu
dHJpZXMtc29ydC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYjBjNzgxYTNjMGMwM2JmODFlODIwMTY4YmRmNzBiNTM2Mjc1MDQwYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qcwpAQCAtMCwwICsxLDY0IEBA
CisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0
KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIHN0
b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwg
b2JzKSB7CisKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCk7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNfYnlfdHlwZSA9IGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlUeXBlKCJtYXJrIik7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNfYnlfbmFtZSA9IGVu
dHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJuYW1lLXJlcGVhdCIpOworICAgICAgICAgIHZhciBz
dGFydFRpbWVPZk1hcmsyID0gZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIilbMF0u
c3RhcnRUaW1lOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXMpOworICAg
ICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywgWworICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAgICAgICAgIHtlbnRyeVR5
cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBl
OiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTog
Im1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIs
IG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1l
OiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0xIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAi
bWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTIifSwKKyAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7
ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOwor
CisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfdHlwZSk7CisgICAgICAg
ICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUsIFsKKyAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwg
bmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgXSk7CisKKyAgICAgICAgICBjaGVja1Nv
cnRlZChzdG9yZWRfZW50cmllc19ieV9uYW1lKTsKKyAgICAgICAgICBjaGVja0VudHJpZXMoc3Rv
cmVkX2VudHJpZXNfYnlfbmFtZSwgWworICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUi
LCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwg
bmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5h
bWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9KQorICAgICAgKTsK
KworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayIsICJtZWFzdXJlIl19
KTsKKworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbWFyazEg
IT09IG1hcmsyIHN0YXJ0VGltZSBieSBtYWtpbmcgc3VyZSBwZXJmb3JtYW5jZS5ub3cgYWR2YW5j
ZXMuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUo
Im1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSIsICJtYXJrMiIpOworICAgIHdhaXQoKTsgLy8gRW5z
dXJlIG1hcmsyICE9PSBtYXJrMyBzdGFydFRpbWUgYnkgbWFraW5nIHN1cmUgcGVyZm9ybWFuY2Uu
bm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1yZXBlYXQiKTsK
KyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUzIik7CisgICAgc2VsZi5wZXJm
b3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTIiLCAibWFyazIiKTsKKyAg
ICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2lsbCBkaWZmZXIuCisg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJuYW1lLXJlcGVhdCIpOworICAgIHdhaXQoKTsgLy8g
RW5zdXJlIG5hbWUtcmVwZWF0IHN0YXJ0VGltZSB3aWxsIGRpZmZlci4KKyAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm5hbWUtcmVwZWF0Iik7CisgIH0sICJnZXRFbnRyaWVzLCBnZXRFbnRy
aWVzQnlUeXBlLCBnZXRFbnRyaWVzQnlOYW1lIHNvcnQgb3JkZXIiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjM2MTY5ZDVkYmQ2ZTBlMjA1MDZkMjAxNDY1ODVkYmM4OWU3NTBjMjUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55LmpzCkBAIC0wLDAgKzEs
MzggQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCisgIGFzeW5j
X3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7
CisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAg
ICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllcyIp
OworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJt
YXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1d
LCAiZ2V0RW50cmllc0J5VHlwZSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0
LmdldEVudHJpZXNCeVR5cGUoIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICJnZXRF
bnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKyAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCIyMzQ1NjciKS5sZW5ndGgsIDAsCisg
ICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKwor
ICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazEi
KSwKKyAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifV0sICJn
ZXRFbnRyaWVzQnlOYW1lIik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0
RW50cmllc0J5TmFtZSgibWFyazIiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmll
c0J5TmFtZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAg
ICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworCisgICAg
ICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMSIsICJt
YXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1d
LCAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSIpOworICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiwgIm1lYXN1cmUiKS5sZW5ndGgs
IDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4
cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50
cmllc0J5TmFtZSgibWFyazIiLCAibWVhc3VyZSIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgICJn
ZXRFbnRyaWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKyAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMSIs
ICIyMzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRo
IGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAgICBvYnNlcnZlci5k
aXNjb25uZWN0KCk7CisgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0pCisgICAgICApOwor
ICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICB9LCAiZ2V0RW50cmllcywgZ2V0RW50cmllc0J5
VHlwZSBhbmQgZ2V0RW50cmllc0J5TmFtZSB3b3JrIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW1hcmstbWVhc3VyZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMGIyMDVlMDk0Yzc1ZTEwYmMxYjkzZmY5NjZhZWEwZmQyM2E1ODZmOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qcwpAQCAtMCwwICsxLDYx
IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFy
IG9ic2VydmVyICA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVu
YyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9
CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMo
KSk7CisgICAgICAgICAgaWYgKHN0b3JlZF9lbnRyaWVzLmxlbmd0aCA+PSA0KSB7CisgICAgICAg
ICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5
VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWVh
c3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1l
YXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29u
bmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQor
ICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVh
c3VyZSJdfSk7CisgIH0sICJlbnRyaWVzIGFyZSBvYnNlcnZhYmxlIik7CisKKyAgYXN5bmNfdGVz
dChmdW5jdGlvbiAodCkgeworICAgIHZhciBtYXJrX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgb2Jz
ZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVu
Y3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgbWFya19lbnRyaWVzID0KKyAgICAg
ICAgICAgIG1hcmtfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAg
ICAgICAgaWYgKG1hcmtfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tF
bnRyaWVzKG1hcmtfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIs
IG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1l
OiAibWFyazIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAg
ICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7
CisgIH0sICJtYXJrIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKKworICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgdmFyIG1lYXN1cmVfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNl
cnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5j
dGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBtZWFzdXJlX2VudHJpZXMgPQorICAg
ICAgICAgICAgbWVhc3VyZV9lbnRyaWVzLmNvbmNhdChlbnRyeUxpc3QuZ2V0RW50cmllcygpKTsK
KyAgICAgICAgICBpZiAobWVhc3VyZV9lbnRyaWVzLmxlbmd0aCA+PSAyKSB7CisgICAgICAgICAg
ICBjaGVja0VudHJpZXMobWVhc3VyZV9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5
cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICAgIHsgZW50cnlU
eXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9XSk7CisgICAgICAgICAgICBvYnNlcnZl
ci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAg
ICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWVh
c3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAg
IHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgfSwgIm1lYXN1cmUgZW50
cmllcyBhcmUgb2JzZXJ2YWJsZSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZGY4NWU1ODU2Y2U4NzNmMTIxZGM1MTU0NGM1NDRiNDE0MzlmYTI2YgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitQZXJm
b3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQKKworUGVy
Zm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkg
YnVmZmVyZWQgZW50cmllcworCisKK1BBU1MgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVy
ZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmJiYTM5NmE2YjY5ZWJh
ZDU2YWQ0ZjFiMTM1Y2I4YWQ0OWQzMjFiNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
b2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qcwpAQCAtMCwwICsxLDE3IEBACisvLyBNRVRBOiBz
Y3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChmdW5jdGlvbiAodCkg
eworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgIHQu
c3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgY2hlY2tFbnRyaWVzKGVu
dHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5h
bWU6ICJlYXJseSJ9XSk7CisgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAg
dC5kb25lKCk7CisgICAgICB9KQorICAgICk7CisgIHBlcmZvcm1hbmNlLm1hcmsoImVhcmx5Iik7
CisgIC8vIFRoaXMgY2FsbCB3aWxsIG5vdCB0cmlnZ2VyIGFueXRoaW5nLgorICBvYnNlcnZlci5v
YnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gVGhpcyBjYWxsIHNob3VsZCBvdmVycmlkZSB0
aGUgcHJldmlvdXMgY2FsbCBhbmQgZGV0ZWN0IHRoZSBlYXJseSBtYXJrLgorICBvYnNlcnZlci5v
YnNlcnZlKHt0eXBlOiAibWFyayIsIGJ1ZmZlcmVkOiB0cnVlfSk7Cit9LCAiVHdvIGNhbGxzIG9m
IG9ic2VydmUoKSB3aXRoIHRoZSBzYW1lICd0eXBlJyBjYXVzZSBvdmVycmlkZS4iKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTQ4ZjBmMzc2NGJkYTRjZWI4OGIyYThiZTRkNjVmMTY4MzYyNjI3YQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCkBAIC0wLDAgKzEsODYgQEAK
KzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5j
ZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8L3RpdGxlPgorPG1l
dGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icGVyZm9ybWFuY2VvYnNl
cnZlcnMuanMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBQZXJmb3JtYW5j
ZU9ic2VydmVySW5pdC5idWZmZXJlZDwvaDE+Cis8cD4KK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0
LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKzwv
cD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9u
ICh0KSB7CisgICAgZnVuY3Rpb24gaW5pdFRlc3QoKSB7CisgICAgICBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgICBlbnRyeUxp
c3QuZ2V0RW50cmllcygpLmZvckVhY2goZnVuY3Rpb24oZW50cnkpIHsKKyAgICAgICAgICBpZiAo
c2hvdWxkRXhjbHVkZShlbnRyeSkpIHsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9
CisKKyAgICAgICAgICBvYnNlcnZlZEVudHJpZXMucHVzaChlbnRyeSk7CisgICAgICAgICAgaWYg
KG9ic2VydmVkRW50cmllcy5sZW5ndGggPT09IGVudHJ5VHlwZXMubGVuZ3RoKSB7CisgICAgICAg
ICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBydW5UZXN0KCk7CisgICAg
ICAgICAgfQorICAgICAgICB9KTsKKyAgICAgIH0pLm9ic2VydmUoe2VudHJ5VHlwZXN9KTsKKwor
ICAgICAgLy8gY3JlYXRlcyBhIGByZXNvdXJjZWAgZW50cnkKKyAgICAgIHZhciBpbWcgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICAgIGltZy5zcmMgPSAiLi9yZXNvdXJjZXMv
c3F1YXJlLnBuZyI7CisgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CisKKyAg
ICAgIHBlcmZvcm1hbmNlLm1hcmsoIm1hcmtOYW1lIik7IC8vIGNyZWF0ZXMgYSBgbWFya2AgZW50
cnkKKyAgICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmVOYW1lIik7IC8vIGNyZWF0ZXMg
YSBgbWVhc3VyZWAgZW50cnkKKyAgICB9CisgICAgZnVuY3Rpb24gc2hvdWxkRXhjbHVkZShlbnRy
eSkgeworICAgICAgLy8gZXhjbHVkZSBhbGwgYHJlc291cmNlYCBlbnRyaWVzIHRoYXQgYXJlbid0
IGZvciAic3F1YXJlLnBuZyIKKyAgICAgIHJldHVybiBlbnRyeS5lbnRyeVR5cGUgPT09ICJyZXNv
dXJjZSIgJiYKKyAgICAgICAgICAgICBlbnRyeS5uYW1lLmluZGV4T2YoInNxdWFyZS5wbmciKSA9
PT0gLTE7CisgICAgfQorICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAvLyB0aGlzIFBl
cmZvcm1hbmNlT2JzZXJ2ZXIgaXMgYSBub3AgYmVjYXVzZSB3ZSd2ZSBhbHJlYWR5IGJlZW4gbm90
aWZpZWQgYWJvdXQgYWxsIG9mIG91ciBgZW50cnlUeXBlc2AKKyAgICAgIHZhciBwb19ub3AgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgewor
ICAgICAgICBpZiAoZW50cnlMaXN0LmdldEVudHJpZXMoKS5maW5kKGZ1bmN0aW9uKGVudHJ5KSB7
CisgICAgICAgICAgcmV0dXJuICFzaG91bGRFeGNsdWRlKGVudHJ5KTsKKyAgICAgICAgfSkpIHsK
KyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJ0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2Fs
bGJhY2sgc2hvdWxkIG5ldmVyIGJlIGNhbGxlZCIpOworICAgICAgICB9CisgICAgICB9KTsKKyAg
ICAgIHBvX25vcC5vYnNlcnZlKHsKKyAgICAgICAgZW50cnlUeXBlcywKKyAgICAgIH0pOworCisg
ICAgICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgc2hvdWxkIGJlIG5vdGlmaWVkIGFib3V0
IHRoZSBwcmV2aW91c2x5CisgICAgICAvLyBidWZmZXJlZCBtYXJrIGVudHJ5IG9ubHkKKyAgICAg
IGNvbnN0IGJ1ZmZlcmVkRW50cmllcyA9IFtdOworICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2
ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgZW50cnlMaXN0Lmdl
dEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAgICAgaWYgKHNob3Vs
ZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisg
ICAgICAgICAgYnVmZmVyZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAgICAgIGlmIChidWZm
ZXJlZEVudHJpZXMubGVuZ3RoID09PSAxKSB7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25u
ZWN0KCk7CisgICAgICAgICAgICBwb19ub3AuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgZm9y
IChpID0gMDsgaSA8IGJ1ZmZlcmVkRW50cmllcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGJ1ZmZlcmVkRW50cmllc1tpXS5lbnRyeVR5cGUsICJtYXJrIikKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAg
fSk7CisgICAgICB9KS5vYnNlcnZlKHsKKyAgICAgICAgdHlwZTogIm1hcmsiLAorICAgICAgICBi
dWZmZXJlZDogdHJ1ZQorICAgICAgfSk7CisgICAgfQorCisgICAgY29uc3QgZW50cnlUeXBlcyA9
IFsibmF2aWdhdGlvbiIsICJyZXNvdXJjZSIsICJtYXJrIiwgIm1lYXN1cmUiXTsKKyAgICBjb25z
dCBvYnNlcnZlZEVudHJpZXMgPSBbXTsKKyAgICBpbml0VGVzdCgpOworICB9LCAiUGVyZm9ybWFu
Y2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVy
ZWQgZW50cmllcyIpOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3Vy
Y2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMWVlZTY1ZTlmOWFiNWZiMjMzNzNlYjlkOGE3MGEzMzljMDVhMDIzNwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBA
QAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlCisKK05ldyByZXNvdXJjZXMgd2lsbCBx
dWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKworUEFTUyByZXNvdXJjZSBlbnRyaWVzIGFyZSBv
YnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tcmVzb3VyY2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMGMxNzNlZWFlOTIxZmJlY2MzZWVlYTU0
ZDhhZGZhNmI5ZWQ1MzY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5o
dG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYt
OD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8L3RpdGxlPgorPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2Vy
dmVyczogcmVzb3VyY2U8L2gxPgorPHA+CitOZXcgcmVzb3VyY2VzIHdpbGwgPGEgaHJlZj0iaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4tcXVldWUtYS1wZXJm
b3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+LgorPC9wPgorPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAg
ICBmdW5jdGlvbiBwYXRoKHBhdGhuYW1lKSB7CisgICAgICB2YXIgZmlsZW5hbWUgPSBwYXRobmFt
ZS5zdWJzdHJpbmcocGF0aG5hbWUubGFzdEluZGV4T2YoJy8nKSsxKTsKKyAgICAgIHJldHVybiBw
YXRobmFtZS5zdWJzdHJpbmcoMCwgcGF0aG5hbWUubGVuZ3RoIC0gZmlsZW5hbWUubGVuZ3RoKTsK
KyAgICB9CisgICAgdmFyIGdVbmlxdWVDb3VudGVyID0gMDsKKyAgICBmdW5jdGlvbiBnZW5lcmF0
ZVVuaXF1ZVZhbHVlcygpIHsKKyAgICAgIHJldHVybiBEYXRlLm5vdygpICsgIi0iICsgKCsrZ1Vu
aXF1ZUNvdW50ZXIpOworICAgIH0KKyAgICB2YXIgc3RvcmVkX2VudHJpZXMgPSBbXTsKKyAgICB2
YXIgaW1nX2xvY2F0aW9uID0gZG9jdW1lbnQubG9jYXRpb24ub3JpZ2luICsgcGF0aChkb2N1bWVu
dC5sb2NhdGlvbi5wYXRobmFtZSkKKyAgICAgICArICJyZXNvdXJjZXMvc3F1YXJlLnBuZz9yYW5k
b209IjsKKyAgICB2YXIgaW1nMSA9IGltZ19sb2NhdGlvbiArIGdlbmVyYXRlVW5pcXVlVmFsdWVz
KCk7CisgICAgdmFyIGltZzIgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygp
OworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0
LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBzdG9yZWRf
ZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQoZW50cnlMaXN0Lmdl
dEVudHJpZXNCeVR5cGUoInJlc291cmNlIikpOworICAgICAgICAgIGlmIChzdG9yZWRfZW50cmll
cy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVz
LAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIsIG5hbWU6IGltZzF9LAor
ICAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJyZXNvdXJjZSIsIG5hbWU6IGltZzJ9XSk7Cisg
ICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUoKTsK
KyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUo
e2VudHJ5VHlwZXM6IFsicmVzb3VyY2UiXX0pOworICAgIHZhciBpbWcgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJpbWciKTsKKyAgICBpbWcuc3JjID0gaW1nMTsKKyAgICBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKGltZyk7CisgICAgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1n
Iik7CisgICAgaW1nLnNyYyA9IGltZzI7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChp
bWcpOworICB9LCAicmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOworPC9zY3JpcHQ+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
dGFrZVJlY29yZHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2YWQzOTdiMGE1YzM3OWQwMTI5ZDQzYzky
OTUyYmM2YzhjNWMwY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRz
LmFueS5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBNRVRBOiB0aXRsZT1QZXJmb3JtYW5jZU9ic2Vy
dmVyOiB0YWtlUmVjb3JkcworLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpz
CisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVyKSB7CisgICAg
ICBhc3NlcnRfdW5yZWFjaGVkKCdUaGlzIGNhbGxiYWNrIHNob3VsZCBub3QgaGF2ZSBiZWVuIGNh
bGxlZC4nKQorICAgIH0pOworICAgIGxldCBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMo
KTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRzIGJlZm9yZSBvYnNl
cnZlJyk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWydtYXJrJ119KTsKKyAg
ICBhc3NlcnRfZXF1YWxzKHR5cGVvZihvYnNlcnZlci50YWtlUmVjb3JkcyksICdmdW5jdGlvbicp
OworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmll
cyhlbnRyaWVzLCBbXSwgJ05vIHJlY29yZHMganVzdCBmcm9tIG9ic2VydmUnKTsKKyAgICBwZXJm
b3JtYW5jZS5tYXJrKCdhJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYicpOworICAgIGVudHJp
ZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBb
CisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdhJ30sCisgICAgICB7ZW50cnlUeXBl
OiAnbWFyaycsIG5hbWU6ICdiJ30KKyAgICBdKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdjJyk7
CisgICAgcGVyZm9ybWFuY2UubWFyaygnZCcpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2UnKTsK
KyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMo
ZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYyd9LAorICAgICAg
e2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZCd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsn
LCBuYW1lOiAnZSd9CisgICAgXSk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRz
KCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAnTm8gZW50cmllcyByaWdodCBhZnRl
ciB0YWtlUmVjb3JkcycpOworICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICB0LmRvbmUo
KTsKKyAgfSwgIlRlc3QgUGVyZm9ybWFuY2VPYnNlcnZlcidzIHRha2VSZWNvcmRzKCkiKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5Lmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVmNWJlNzMz
OTViNDlkODk1YTI1ODliZTU0N2E3ZjM5NTBmNDE2YmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzwh
ZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2FkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7
CisgIGNvbnN0IGVudHJ5ID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdOworICB0cnkgeworICAgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoZW50cnksICIqIik7
CisgIH0gY2F0Y2goZXJyb3IpIHsKKyAgICBpZiAoZXJyb3IubmFtZSA9PSAiRGF0YUNsb25lRXJy
b3IiKSB7CisgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKCJQQVNTIiwgIioiKTsKKyAgICB9
IGVsc2UgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiRkFJTCAtIFdyb25nIGV4Y2Vw
dGlvbiBuYW1lOiAiICsgZXJyb3IubmFtZSwgIioiKTsKKyAgICB9CisgIH0KKyAgd2luZG93LnRv
cC5wb3N0TWVzc2FnZSgiRkFJTCAtIE5vIGV4Y2VwdGlvbiB0aHJvd24iLCAiKiIpOworfSk7CisK
Kzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFsaWQt
ZW50cmllcy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYmQ3ZmJhMmNjZjRiNmFiN2U2MDQyNzNjMjUwMTBlMzFlNDQzZTM3NgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMu
anMKQEAgLTAsMCArMSw2IEBACitwZXJmb3JtYW5jZS5tYXJrKCd3b3JrZXJNYXJrJyk7Citwb3N0
TWVzc2FnZSh7CisgICdpbnZhbGlkJyA6IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ2lu
dmFsaWQnKS5sZW5ndGgsCisgICdtYXJrJyA6IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
J21hcmsnKS5sZW5ndGgsCisgICdtZWFzdXJlJyA6IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoJ21lYXN1cmUnKS5sZW5ndGgKK30pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMv
d29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNzJmZTgxYzQ3
ZmVhY2U3NjU2MTNhMDk2MmYyYTdlNjNmNzFmYTI1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMKQEAgLTAsMCAr
MSw2IEBACit0cnkgeworICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoKSA9PiB0cnVlKTsKKyAg
cG9zdE1lc3NhZ2UoIlNVQ0NFU1MiKTsKK30gY2F0Y2ggKGV4KSB7CisgIHBvc3RNZXNzYWdlKCJG
QUlMVVJFIik7Cit9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IDEzOGJkZTY2MTk2MjQzZTY3MDMwZDFhZTE0MmJkYTQxMTQ4ZTIzMGIuLmU1ZWIx
MThhYjIyNDNkMWNhMzQ1NzUwOTU0MGEyMDgyODAyODlkOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
c3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCiBQQVNTIHN1
cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJpZXMgaW4gYWxwaGFiZXRp
Y2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJlc3VsdCBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBw
b3J0ZWRFbnRyeVR5cGVzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnku
anMKaW5kZXggYTAyMjVhZDJmNzZmZGNmZWJiMGE3YzlhZmY5YmQwMDMwZWNmODZhYS4uMjVmMTk1
OTM5ZTdiNjkyNTA5NjI1YjgxMzFlNTM3MTY0Y2RmNTZjMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9z
dXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlw
ZXMuYW55LmpzCkBAIC0xMCwzICsxMCwxMCBAQCB0ZXN0KCgpID0+IHsKICAgICAgICInIGFyZSBy
ZXBlYXRlZCBvciB0aGV5IGFyZSBub3QgaW4gYWxwaGFiZXRpY2FsIG9yZGVyLiIpCiAgIH0KIH0s
ICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhh
YmV0aWNhbCBvcmRlciIpOworCit0ZXN0KCgpID0+IHsKKyAgaWYgKHR5cGVvZiBQZXJmb3JtYW5j
ZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgPT09ICJ1bmRlZmluZWQiKQorICAgIGFzc2Vy
dF91bnJlYWNoZWQoInN1cHBvcnRlZEVudHJ5VHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKKyAg
YXNzZXJ0X3RydWUoUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzID09PQor
ICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzKTsKK30sICJzdXBw
b3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3Vw
cG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCAxMzhiZGU2NjE5NjI0
M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIyMjQzZDFjYTM0NTc1MDk1NDBh
MjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFu
eS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCiBQQVNTIHN1cHBvcnRlZEVu
dHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJpZXMgaW4gYWxwaGFiZXRpY2FsIG9yZGVy
CitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJlc3VsdCBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVz
b2x1dGlvbi5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1yZXNvbHV0aW9uLmFueS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kODY5YzdjNTJkNTVkNjllMjEyM2Y2NGQ0ODZlZDFlMzIzNWQzZmI3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMKQEAgLTAsMCAr
MSwyNSBAQAorZnVuY3Rpb24gdGVzdFRpbWVSZXNvbHV0aW9uKGhpZ2hSZXNUaW1lRnVuYywgZnVu
Y1N0cmluZykgeworICAgIHRlc3QoKCkgPT4geworICAgICAgICBjb25zdCB0MCA9IGhpZ2hSZXNU
aW1lRnVuYygpOworICAgICAgICBsZXQgdDEgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAg
d2hpbGUgKHQwID09IHQxKSB7CisgICAgICAgICAgICB0MSA9IGhpZ2hSZXNUaW1lRnVuYygpOwor
ICAgICAgICB9CisgICAgICAgIGNvbnN0IGVwc2lsb24gPSAxZS01OworICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuX2VxdWFsKHQxIC0gdDAsIDAuMDA1IC0gZXBzaWxvbiwgJ1RoZSBzZWNvbmQg
JyArIGZ1bmNTdHJpbmcgKyAnIHNob3VsZCBiZSBtdWNoIGdyZWF0ZXIgdGhhbiB0aGUgZmlyc3Qn
KTsKKyAgICB9LCAnVmVyaWZpZXMgdGhlIHJlc29sdXRpb24gb2YgJyArIGZ1bmNTdHJpbmcgKyAn
IGlzIGF0IGxlYXN0IDUgbWljcm9zZWNvbmRzLicpOworfQorCitmdW5jdGlvbiB0aW1lQnlQZXJm
b3JtYW5jZU5vdygpIHsKKyAgICByZXR1cm4gcGVyZm9ybWFuY2Uubm93KCk7Cit9CisKK2Z1bmN0
aW9uIHRpbWVCeVVzZXJUaW1pbmcoKSB7CisgICAgcGVyZm9ybWFuY2UubWFyaygndGltZXInKTsK
KyAgICBjb25zdCB0aW1lID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgndGltZXInKVsw
XS5zdGFydFRpbWU7CisgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcygndGltZXInKTsKKyAgICBy
ZXR1cm4gdGltZTsKK30KKwordGVzdFRpbWVSZXNvbHV0aW9uKHRpbWVCeVBlcmZvcm1hbmNlTm93
LCAncGVyZm9ybWFuY2Uubm93KCknKTsKK3Rlc3RUaW1lUmVzb2x1dGlvbih0aW1lQnlVc2VyVGlt
aW5nLCAnZW50cnkuc3RhcnRUaW1lJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRo
LXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgt
cGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4MjZiOWNiZGFm
MmM1ZmQ0NDEzNGMxMjE3ZGEzNGUyNDM2NGI3MDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDMgQEAKKworUEFTUyBXb3JrZXI6IFRlc3QgUGVyZm9ybWFuY2UgT2JzZXJ2ZXIgaW5zaWRlIGEg
d29ya2VyLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZmM5MmJjOTcxMDAzZjJlYTkyZmJkMTY5ZDhkZDdhNjRkMDYyMDYyZAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2
ZXIuaHRtbApAQCAtMCwwICsxLDE4IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgY29uc3Qg
d29ya2VyID0gbmV3IFdvcmtlcigicmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLmpzIik7CisgIHdvcmtlci5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkgeworICAg
IHQuc3RlcCgoKSA9PiBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGEsICdTVUNDRVNTJykpOworICAg
IHQuZG9uZSgpOworICB9Cit9LCAnV29ya2VyOiBUZXN0IFBlcmZvcm1hbmNlIE9ic2VydmVyIGlu
c2lkZSBhIHdvcmtlci4nKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0
CmluZGV4IDczMDA4MWY0ZDY3YjA2NDFkZTgwMGUyYTg4MWFmMDI3MmIyMmI5YjIuLjY0ZTdlMjVj
MjBkY2Q4OWRhZmZjNzIyMTc0MmQ5NTBjODcyNjc5YWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNSAr
MSw1IEBACiAKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWlu
ZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZy53b3JrZXJTdGFydCcpIFJlYWNoZWQgdW5y
ZWFjaGFibGUgY29kZQotRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24g
dGltaW5nIG5ldHdvcmsgZmFsbGJhY2sgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWpl
Y3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbdGlt
aW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKLUZBSUwgU2Vydmlj
ZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdCBhc3NlcnRfdW5y
ZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ3RpbWluZ1t0aW1pbmdFdmVudE9yZGVyW2ldXScpIFJlYWNoZWQgdW5yZWFj
aGFibGUgY29kZQorRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGlt
aW5nIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiBhc3NlcnRfZ3JlYXRl
cl90aGFuOiBleHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRoYW4gMCBidXQgZ290IDAgUmVhY2hl
ZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdh
dGlvbiB0aW1pbmcgbmV0d29yayBmYWxsYmFjaworUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9s
bGVkIG5hdmlnYXRpb24gdGltaW5nIHJlZGlyZWN0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3Qt
Y29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1h
cGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFp
bnQtZXhwZWN0ZWQudHh0CmluZGV4IDdmZmIzODU4M2RhODRiNjQ2OTQ1NWFlNzQwNGQyMjRjNGI1
NzMwZGEuLjRlYmRjY2Y1YjJiZDQ3ZGE0ZDVkMjE1ZDFlOGEyNzgxYTRjMmRlMDEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Ut
b2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1m
aXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIFBBU1Mg
ZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50IGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpLmxlbmd0aCBpcyAxCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5s
ZW5ndGggaXMgMgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJmaXJzdC1jb250
ZW50ZnVsLXBhaW50IikubGVuZ3RoIGlzIDEKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIsICJwYWludCIpLmxlbmd0aCBpcyAxCiBQQVNT
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikubGVuZ3RoIGlzIDEKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFu
Y2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sIGIvTGF5b3V0VGVzdHMvcGVy
Zm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250
ZW50ZnVsLXBhaW50Lmh0bWwKaW5kZXggMDA3OGE0MzU0NWI5ZjRiNmNmYWJmODE3MTY2MWIzYjYw
MWM0YWE3OS4uMWYyODBiNDA3NzVlMmE5YTgyZjhkM2I2NmU3OThmNzBhNzU1N2UyMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
cGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1j
b250ZW50ZnVsLXBhaW50Lmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAgd2luZG93LmpzVGVzdElzQXN5
bmMgPSB0cnVlOwogICAgIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0ID0gJ1RFWFQyJzsKICAgICBh
d2FpdCB3YWl0Rm9yRkNQKCk7CiAgICAgc2hvdWxkQmVUcnVlKCdkaWRSZWNlaXZlRmlyc3RDb250
ZW50ZnVsUGFpbnQnKTsKLSAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxl
bmd0aCcsICIxIik7CisgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5n
dGgnLCAiMiIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJm
aXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoJywgIjEiKTsKICAgICBzaG91bGRCZSgncGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIsICJwYWlu
dCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoInBhaW50IikubGVuZ3RoJywgIjEiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bl
cmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVyLWFwaS1leHBlY3Rl
ZC50eHQKaW5kZXggNzY0OWE4NDMxY2E0NDJiMTYwN2UyOGVlZDZkNDZhYzllNmNkZjBkYS4uM2E2
N2RjMGJiNjNkNjA5ZGE4MjE0NmI3NjJlM2RlOGNkZjBhOTQ0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVyLWFwaS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVy
LWFwaS1leHBlY3RlZC50eHQKQEAgLTExLDcgKzExLDcgQEAgUEFTUyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29uc3RydWN0b3IgcmVxdWlyZXMgJ25l
dycKIFBBU1MgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
MSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2NhbGxiYWNrJykgdG8g
dGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uLgog
UEFTUyBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uKCkge30pIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIG9ic2VydmVyLm9i
c2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMg
d2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgibWFyayIpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIG9ic2VydmVyLm9ic2VydmUoe30pIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3Zp
ZGVkLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJrIn0pIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpAQCAtMzksNyArMzks
NyBAQCBQQVNTIFtXb3JrZXJdIFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBDb25zdHJ1Y3RvciByZXF1aQogUEFTUyBbV29ya2VyXSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1l
bnRzLgogUEFTUyBbV29ya2VyXSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigxKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAxICgnY2FsbGJhY2snKSB0byB0aGUgUGVyZm9ybWFu
Y2VPYnNlcnZlciBjb25zdHJ1Y3RvciBtdXN0IGJlIGEgZnVuY3Rpb24uCiBQQVNTIFtXb3JrZXJd
IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24oKSB7fSkgZGlkIG5v
dCB0aHJvdyBleGNlcHRpb24uCi1QQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KK1BBU1MgW1dvcmtl
cl0gb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUg
b3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNl
cnZlKCJtYXJrIikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KIFBBU1Mg
W1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSh7fSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
bm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQQVNTIFtXb3JrZXJdIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6Im1hcmsifSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogVmFsdWUgaXMgbm90IGEgc2VxdWVuY2UuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJm
b3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQu
dHh0CmluZGV4IGVkMDFhZTAwMzFmNGU1ZThmNzZlNjAxNWRiMjM4ODIyNjQ0YjkxMmQuLmMxNDYy
MTRlZjJkNmE4YWIxZDZiOGFlMzg3ODY1ZTEwN2JhM2Y3MGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1h
cGktZXhwZWN0ZWQudHh0CkBAIC0xNiwxNCArMTYsMTQgQEAgUEFTUyBQZXJmb3JtYW5jZS5wcm90
b3R5cGUuZ2V0RW50cmllcyBpcyBkZWZpbmVkLgogUEFTUyBQZXJmb3JtYW5jZS5wcm90b3R5cGUu
Z2V0RW50cmllc0J5VHlwZSBpcyBkZWZpbmVkLgogUEFTUyBQZXJmb3JtYW5jZS5wcm90b3R5cGUu
Z2V0RW50cmllc0J5TmFtZSBpcyBkZWZpbmVkLgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KS5sZW5ndGggPT09IDAgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAxIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdIGluc3Rh
bmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0u
ZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
WzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQotUEFTUyB0eXBlb2YgcGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIHBl
cmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDIgaXMgdHJ1ZQorUEFTUyBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkg
aXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5uYW1lIGlz
ICJ0ZXN0IgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5lbnRyeVR5
cGUgaXMgIm1hcmsiCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0lu
ZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKK1BBU1MgdHlwZW9mIHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0cnVl
CiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoKSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFTUyBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIikubGVuZ3RoID09PSAxIGlzIHRydWUKQEAgLTYwLDEx
ICs2MCwxMSBAQCBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKSBpbnN0YW5j
ZW9mIEFycmF5IGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
Lmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLm1hcmsoInRl
c3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQotUEFTUyBbV29ya2VyXSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUK
LVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLm5hbWUgaXMgInRlc3Qi
Ci1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5lbnRyeVR5cGUgaXMg
Im1hcmsiCi1QQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0u
c3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCi1QQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24gPT09ICJudW1iZXIiIGlzIHRydWUKK1BB
U1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2Vv
ZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgW1dvcmtlcl0gcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlzICJtYXJrIgorUEFTUyBb
V29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRU
aW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQog
UEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIFtXb3JrZXJdIHBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUK
IFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0
aCA9PT0gMSBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkv
cmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9y
ZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCmluZGV4IDFlZjdhYTVjNTg0MmZkZTllMWJkMjAzZjFk
MjU3Mzg3Yjk1MzYwNGQuLmI4YzI5OTQwMjZjZjk0ZTA3NDllZmI5NDIxYmMxZGJjYmIyMDMyM2Ug
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxp
bmUtYXBpLmpzCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGlt
ZWxpbmUtYXBpLmpzCkBAIC00LDYgKzQsOCBAQCBpZiAoc2VsZi5pbXBvcnRTY3JpcHRzKQogaWYg
KHNlbGYud2luZG93KQogICAgIGRlc2NyaXB0aW9uKCJCYXNpYyBJbnRlcmZhY2UgdGVzdCBmb3Ig
cGVyZm9ybWFuY2UtdGltZWxpbmUgQVBJcy4iKTsKIAorbGV0IHJ1bm5pbmdJbldvcmtlciA9ICEh
c2VsZi5pbXBvcnRTY3JpcHRzOworCiBkZWJ1ZygiUGVyZm9ybWFuY2VFbnRyeSIpOwogc2hvdWxk
QmVEZWZpbmVkKCJQZXJmb3JtYW5jZUVudHJ5Iik7CiBzaG91bGRCZVRydWUoYCJuYW1lIiBpbiBQ
ZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZWApOwpAQCAtMjEsMTQgKzIzLDI1IEBAIHNob3VsZEJl
RGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeVR5cGVgKTsKIHNob3Vs
ZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeU5hbWVgKTsKIAog
c2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheWAp
Owotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwYCk7
CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgLy8gV29ya2VycyBkb24ndCBoYXZlIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy4KKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdl
dEVudHJpZXMoKS5sZW5ndGggPT09IDBgKTsKK30gZWxzZSB7CisgICAgc2hvdWxkQmVUcnVlKGBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Cit9CiBzaG91bGROb3RUaHJv
dyhgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpO2ApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Ci1zaG91bGRCZVRydWUoYHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnlgKTsKLXNob3VsZEJl
RXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLm5hbWVgLCAidGVzdCIp
Owotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZW50
cnlUeXBlYCwgIm1hcmsiKTsKLXNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiYCk7Ci1zaG91bGRCZVRydWUoYHR5cGVv
ZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24gPT09ICJudW1iZXIiYCk7Citp
ZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgbWFya0luZGV4ID0gMDsKKyAgICBzaG91bGRCZVRy
dWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDFgKTsKK30gZWxzZSB7Cisg
ICAgbWFya0luZGV4ID0gMTsKKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKS5sZW5ndGggPT09IDJgKTsKK30KK3Nob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5YCk7CitzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLm5hbWVg
LCAidGVzdCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KClbbWFya0luZGV4XS5lbnRyeVR5cGVgLCAibWFyayIpOworc2hvdWxkQmVUcnVlKGB0eXBlb2Yg
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVy
ImApOworc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJ
bmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiYCk7CiAKIHNob3VsZFRocm93KGBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKClgKTsKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDBgKTsKQEAgLTUwLDUgKzYzLDUgQEAg
c2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIp
WzBdLmR1cmF0aW9uID09PSAibnVtYmUKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5TmFtZSgidGVzdCIsICJub3QtcmVhbCIpLmxlbmd0aCA9PT0gMGApOwogc2hvdWxkQmVU
cnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJ0ZXN0IiwgIm1hcmsiKS5sZW5ndGgg
PT09IDFgKTsKIAotaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykKK2lmIChydW5uaW5nSW5Xb3JrZXIp
CiAgICAgZmluaXNoSlNUZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjk5OGQ0ZWQzY2UxODRjNjhkMzMxODYxM2Y4ZDIwZmUyNzJkNTJlMzkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSdzIHRpbWlu
Zy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4gb3JkZXIgYW5kIHRoZSBvdGhlcnMg
YXJlIG9mIGV4cGVjdGVkIHZhbHVlcy4KKworCitGQUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24g
dGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVhc29uYWJsZS4gYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgImh0dHAvMS4xIiBidXQgZ290ICIiCisK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428984</attachid>
            <date>2021-05-18 15:05:20 -0700</date>
            <delta_ts>2021-05-18 15:06:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210518150519.patch</filename>
            <type>text/plain</type>
            <size>226060</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhiNWQwYTY0OTIzZDIy
NjViNjcyNmUzZjRiOTAyNzU3Y2IwZmVmNy4uY2Q1YjQ3N2M5OTgyOGY1NzI0MDU2NWRmMWJkYWQ0
MGNhZTIzOGYwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xOCAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgVGhpcyBpcyBiYXNpY2FsbHkganVzdCBhIG5ldyBz
aGFwZSBmb3IgZXhwb3NpbmcgdGhlIHNhbWUgZGF0YSBhcyB3aW5kb3cucGVyZm9ybWFuY2UubmF2
aWdhdGlvbiwgYnV0IHdpdGggYSBzaGFwZSB0aGF0IGZpdHMgYmV0dGVyIGludG8gdGhlIHJlc3Qg
b2YgdGhlCisgICAgICAgIHBlcmZvcm1hbmNlIHRpbWVsaW5lIG1lYXN1cmVtZW50cyB0aGF0IGhh
dmUgYmVlbiBhZGRlZCB0byB0aGUgd2ViIHBsYXRmb3JtIHNpbmNlIHBlcmZvcm1hbmNlLm5hdmln
YXRpb24uCisKKyAgICAgICAgSSBub3RlZCB0aGF0IGV4cG9zaW5nIHRyYW5zZmVyIHNpemUgaXMg
cHJvYmxlbWF0aWMsIGFuZCBzb21lIG9mIHRoZSB0ZXN0cyBmb3IgcmVhZGluZyB0cmFuc2ZlciBz
aXplIHN0aWxsIGZhaWwuCisgICAgICAgIFRoZXJlIGFyZSBzdGlsbCBhIGZldyByZWxhdGl2ZWx5
IG1pbm9yIHRlc3QgZmFpbHVyZXMgdG8gZml4IGluIGZ1dHVyZSBwYXRjaGVzLiAgRWFjaCBvbmUg
aXMgYW5ub3RhdGVkIGluIHRoZSBMYXlvdXRUZXN0cyBDaGFuZ2VMb2dzLgorCisgICAgICAgIFRl
c3RzOiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2Rv
bV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2
ZV9tZWRpYV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKKyAgICAgICAg
ICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0ZV9pZnJhbWUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmln
YXRlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxf
b3JpZ2luYWxfb3JpZ2luLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRt
bAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9w
by1uYXZpZ2F0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2Uu
aHR0cHMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCisgICAgICAgICAg
ICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby1vYnNlcnZlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0
b0pTTmV3bHlDcmVhdGVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnNldFJlYWR5U3RhdGUpOgorICAgICAgICBTb21ldGltZXMgdGhl
IHJlYWR5IHN0YXRlIGp1bXBzIHJpZ2h0IHRvIENvbXBsZXRlIHdpdGhvdXQgaGl0dGluZyBJbnRl
cmFjdGl2ZSBhbG9uZyB0aGUgd2F5LgorICAgICAgICBXaGVuIHRoaXMgaGFwcGVucywgd2Ugd2Fu
dCB0byBtYXJrIGJvdGggbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSBhbmQgbV9kb2N1bWVu
dFRpbWluZy5kb21JbnRlcmFjdGl2ZS4KKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKToK
KyAgICAgICAgQ2FsbCBhZGROYXZpZ2F0aW9uVGltaW5nIGluIG5vdGlmeUZpbmlzaGVkIHRvIGNy
ZWF0ZSB0aGUgbmF2aWdhdGlvbiB0aW1pbmcgb2JqZWN0IHdoZW4gd2UgYXJlIGRvbmUgbmF2aWdh
dGluZworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVy
L1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFk
ZCBhIFVSTCBwYXJhbWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3Qn
cyBVUkwgYW5kIHNvbWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0
dGVuIGF0IGRpZmZlcmVudCB0aW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5n
Ojpwb3B1bGF0ZVNlcnZlclRpbWluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVRpbWluZzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRl
ci9SZXNvdXJjZVRpbWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OnVy
bCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6aW5pdGlhdG9yIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3Mg
Y29uc3QpOgorICAgICAgICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2U6OmdldEVudHJpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Omdl
dEVudHJpZXNCeVR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Omdl
dEVudHJpZXNCeU5hbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFw
cGVuZEJ1ZmZlcmVkRW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZTo6YWRkTmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZTo6cmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlOjpxdWV1ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpz
Y2hlZHVsZVRhc2tJZk5lZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VFbnRyeTo6c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlRW50cnk6OmR1cmF0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
RW50cnk6OmlzUmVzb3VyY2UgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VFbnRyeTo6aXNNYXJrIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlRW50cnk6OmlzTWVhc3VyZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojppc1BhaW50IGNvbnN0KTogRGVsZXRlZC4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlTWFyay5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4K
KyAgICAgICAgU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTi9FTkQgZG9lc24ndCB3b3JrIHdl
bGwgd2l0aCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgd2hpY2ggaW5oZXJpdHMgZnJvbSBQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIHdoaWNoIGJvdGggaGF2ZSBkaXN0aW5jdCB0eXBlcy4K
KyAgICAgICAgaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gZG9lc24ndCBnaXZlIHVzIHRo
ZSBpbmZvIHdlIG5lZWQuICBJIHJlcGxhY2VkIHRoYXQgd2l0aCAic3dpdGNoIChlbnRyeS0+cGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSkiIGluIHRoZSBvbmUgcGxhY2UgaXQncyB1c2VkLCBhbmQgaXQg
d29ya3MgbGlrZSBhIGNoYXJtLgorICAgICAgICBBbHNvIHJlbmFtZWQgdHlwZSB0byBwZXJmb3Jt
YW5jZUVudHJ5VHlwZSBzbyBpdCBkb2Vzbid0IGNvbmZsaWN0IHdpdGggUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nOjp0eXBlLCB3aGljaCBpcyBzcGVjaWZpZWQgaW4gdGhlIGlkbC4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6dG9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0
aW9uVHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6Om1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNo
ZWNrRmFpbHMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjps
b2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpyZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZHVyYXRp
b24gY29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmg6
IEFkZGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbDog
Q29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbC4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6dGFrZVJlY29yZHMpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU9ic2VydmVyOjpkZWxpdmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
T2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlwZXMpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VPYnNlcnZlci5oOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGw6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUg
Y29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oOgorICAgICAg
ICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2wgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RTdGFydCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0
YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OmRvbWFpbkxvb2t1cFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1cEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpzZWN1cmVDb25u
ZWN0aW9uU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZzo6cmVxdWVzdFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VFbmQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9E
T01IaWdoUmVzVGltZVN0YW1wIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmc6OmluaXRpYXRvclR5cGUgY29uc3QpOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOgorICAgICAgICAqIHBs
YXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmRvTm90aWZ5RmluaXNoKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2Fk
TWV0cmljcy5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ2xpZW50OjpkaWRGaW5pc2hM
b2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xp
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRG
aW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRs
ZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0
aW9uUXVldWU6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICBQYXNzIG1ldHJpY3MgaW5jbHVk
aW5nIHRoZSByZXNwb25zZSBlbmQgdGltZSBmcm9tIE5TVVJMQ29ubmVjdGlvbiBzbyB3ZSBkb24n
dCBhc3NlcnQgaW4gV2ViS2l0TGVnYWN5LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29j
b2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29weVRpbWluZ0Rh
dGEpOgorICAgICAgICBVc2UgY3VycmVudFJlcXVlc3QgaW5zdGVhZCBvZiBwYXNzaW5nIGluIHRo
ZSByZXNwb25zZSBzbyB3ZSBjYW4gY2FsbCBpdCBmcm9tIGRpZEZpbmlzaExvYWRpbmcsIHdoZXJl
IHdlIGRvbid0IGhhdmUgYSByZXNwb25zZSBzdG9yZWQgYW55d2hlcmUuCisgICAgICAgIFdlJ3Jl
IGp1c3QgbG9va2luZyBmb3Igd2hldGhlciBpdCdzIGh0dHAgb3IgaHR0cHMsIHNvIHRoZSBjdXJy
ZW50UmVxdWVzdCAod2hpY2ggaXMgdGhlIHJlcXVlc3QgYWZ0ZXIgYWxsIHRoZSByZWRpcmVjdHMp
IGZpdHMgb3VyIHB1cnBvc2UuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291
cmNlSGFuZGxlQ3VybC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6aGFu
ZGxlRGF0YVVSTCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tOgorICAgICAgICAoLVtXZWJDb3Jl
UmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUgY29ubmVjdGlvbjpkaWRSZWNl
aXZlUmVzcG9uc2U6XSk6CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0
aW9uUXVldWVEZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzpdKToKKwogMjAyMS0w
NS0xOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVUF0g
UmVtb3RlQXVkaW9TZXNzaW9uIGNhbGxzIGludG8gQVZBdWRpb1Nlc3Npb24gd2hlbiBHUFVQIGlz
IGVuYWJsZWQsIGNhdXNpbmcgaGFuZ3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYjlkYmE1NmI4ZDVhYWQwYzhlZmFl
NjU2ZWNjNzNiODFmMTdhMWQ1OC4uYmZhZGU2MWNkYmFkMWMwMjEzZjBhNzk2NzdlYzk4NTYyOGEw
YmRjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wNS0xOCAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZv
ciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9u
Q29jb2EubW06CisgICAgICAgICgtW1dLTmV0d29ya1Nlc3Npb25EZWxlZ2F0ZSBVUkxTZXNzaW9u
OnRhc2s6ZGlkRmluaXNoQ29sbGVjdGluZ01ldHJpY3M6XSk6CisgICAgICAgIE1hcmsgcmV1c2Vk
IFRMUyBjb25uZWN0aW9ucyBpbiBjb21wbGV0ZSBtZXRyaWNzIGxpa2UgSSBkaWQgaW4gaW5jb21w
bGV0ZSBtZXRyaWNzIGluIHIyNzc0OTMuCisKIDIwMjEtMDUtMTggIEFsZXggQ2hyaXN0ZW5zZW4g
IDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBbGxvdyBTYWZhcmlGb3JXZWJL
aXREZXZlbG9wbWVudCB0byBsYXVuY2ggc3VjY2Vzc2Z1bGx5CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCmlu
ZGV4IGFjOGQ2ZjY2ZDljNTE4N2MyNDNhNWI3NWE2YWEyZDk5NjRlY2YzOGUuLjkyNzZlYTQ5ZDk5
MTBhODA5ZDMxOTRmNWMzOGEzMjEyZTI3NGQ0ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTIgQEAKKzIwMjEtMDUtMTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcg
TGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmg6CisKIDIwMjEtMDUtMTcgIENocmlzIER1bWV6
ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBdm9pZCBtb3JlIFN0cmluZyBjcmVhdGlv
bnMgd2hlbiBwcmVwYXJpbmcgU1FMaXRlIHN0YXRlbWVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sIGIv
U291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVudGFs
LnlhbWwKaW5kZXggZjM0NjY1YjdlNmE5NmZmMDJhY2ExZjBlNGUyMzQ3ZTM4NzlhNTNlYS4uNDQ4
OTczMzZkYjc0Zjk1NWVlNjQxY2EwMzA0NzUwMjE0ZmZkNmM0YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwK
KysrIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJp
bWVudGFsLnlhbWwKQEAgLTc4Miw2ICs3ODIsMTkgQEAgUGVyRWxlbWVudFNwZWFrZXJTZWxlY3Rp
b25FbmFibGVkOgogICAgIFdlYkNvcmU6CiAgICAgICBkZWZhdWx0OiBmYWxzZQogCitQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkOgorICB0eXBlOiBib29sCisgIGh1bWFuUmVh
ZGFibGVOYW1lOiAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIgorICBodW1hblJlYWRhYmxl
RGVzY3JpcHRpb246ICJFbmFibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIEFQSSIKKyAg
d2ViY29yZUJpbmRpbmc6IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMKKyAgZGVmYXVsdFZhbHVlOgor
ICAgIFdlYktpdExlZ2FjeToKKyAgICAgIGRlZmF1bHQ6IGZhbHNlCisgICAgV2ViS2l0OgorICAg
ICAgZGVmYXVsdDogZmFsc2UKKyAgICBXZWJDb3JlOgorICAgICAgZGVmYXVsdDogZmFsc2UKKwog
UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnREZWJ1Z01vZGVFbmFibGVkOgogICB0eXBlOiBib29sCiAg
IGh1bWFuUmVhZGFibGVOYW1lOiAiUHJpdmF0ZSBDbGljayBNZWFzdXJlbWVudCBEZWJ1ZyBNb2Rl
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBjY2QyY2YxMjcxMmRmNDgzMzBmZjhkYzg3MWFlNTU1
MzkyZjdhMmZhLi5jYTI0YjUwYjk4MjIxMmY2NWU3YjM5ZmY3M2ZjNDJjN2JhZjY1NTM2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9DTWFrZUxpc3RzLnR4dApAQCAtMTEyOSw2ICsxMTI5LDcgQEAgc2V0KFdlYkNvcmVfTk9OX1NW
R19JRExfRklMRVMKICAgICBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwKICAg
ICBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaWRsCiAgICAgcGFnZS9QZXJmb3Jt
YW5jZU5hdmlnYXRpb24uaWRsCisgICAgcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcu
aWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlU2VydmVyVGltaW5n
LmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNm
aWxlbGlzdCBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QK
aW5kZXggYjg1MDU2YzgxM2NhMTM0MTkyYzZjMzlmMjU4NDU5NmU4NTE2MjJkOS4uYzNiYmIyZTg0
ZWJiMzYyNGE5OWIyODNiMGUxMWE5ZDc0ZGQ2ZTU5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0xMjAyLDYgKzEyMDIsNyBAQCAkKFBS
T0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTWFya09wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElS
KS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9y
bWFuY2VNZWFzdXJlT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uLmlkbAorJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCiAk
KFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5pZGwKICQoUFJP
SkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKaW5kZXggNWM2ZTkw
NGYwYTQxZjQ0YjE3YmExZDQzYmVhNGY2MGMwMWVhZmEwNS4uNThiNTg4ZjNlOGEyMThmOWE5ZmJk
N2I5OWU4NGE5MjgyMzg1NDdlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAgLTE2MDYsNiArMTYwNiw4IEBAICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9u
cy5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVy
Zm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5jcHAKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgK
KyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaAogJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmNw
cAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3Jt
YW5jZU9ic2VydmVyLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UKaW5kZXggOWVlMmEzMzFjN2ZiNjY4OGQyNzg4N2MyNTY3ZmIzYzdkNTU1YzAwYy4u
MTFlZGZjYTY5NzljNmU5ZjM4MWViMTlkOGFhNGU5YmE0NjY5MzVlMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCkBAIC0xMDQ4LDYgKzEwNDgsNyBAQCBKU19CSU5ESU5HX0lETFMgOj0g
XAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaWRsIFwKICAgICAkKFdl
YkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29y
ZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2Uv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1Bl
cmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlckNhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJFbnRyeUxpc3QuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMu
dHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggZWFiMjdlNGFkNWIxY2FmNTdh
MTgxNTYzYmEwNTdlYTk1OWVkYzQwOC4uMmY2NjA1YzEwMGFmYmJkM2Q5OWJiOTJhMDM0ZWM2ODA0
M2FmNzA5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTE3MzUsNiArMTczNSw3IEBAIHBhZ2UvUGVyZm9y
bWFuY2VNYXJrLmNwcAogcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuY3BwCiBwYWdlL1BlcmZvcm1h
bmNlTW9uaXRvci5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorcGFnZS9QZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3Bw
CiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwCiBwYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuY3BwCkBAIC0zMzU4LDYgKzMzNTksNyBAQCBKU1BlcmZvcm1hbmNlTWFy
a09wdGlvbnMuY3BwCiBKU1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIEpTUGVyZm9ybWFuY2VNZWFz
dXJlT3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAorSlNQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuY3BwCiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiBKU1BlcmZv
cm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlz
dC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBmMDJkZmVkY2M0Mjc5NThjYTZhNWY4MTY2MWEzZWRmZTI5OTE2ZmQyLi43MzA3
MjMyMDQwOTM2M2NkNDRkNTA5ZjRlNjM2NTQxNzk5NmJkNGIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNjA1Miw2ICsxNjA1
Miw5IEBACiAJCURFQ0E3RkY0MUY5RkU5QjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU1LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNTUu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UyNTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJ
REVDQTdGRjUxRjlGRTlCQTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTYuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1Ni5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI1
Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlERjE5RTJBQTI0
NzcyOUE2MDA3QkRBQ0IgLyogU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29v
a2llQmxvY2tpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREYzNjVEMDQyNUE5
ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNzI1QTk4NEM5MDA1
RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjRF
MzhEQzI1Mjc5NTkzMDAyQTc0ODEgLyogVmVyc2lvbkNoZWNrcy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZlcnNpb25DaGVja3MubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCURGNEUzOERFMjUyNzk1OTQwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZlcnNpb25DaGVja3MuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY3RTlBMjk0QzdBQUNFMEFEODlCM0REIC8qIE1h
dGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNYXRoTUxPcGVyYXRvckRpY3Rpb25hcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTIyNDYzLDYgKzIyNDY2LDkgQEAKIAkJCQk4QUY0RTU1MjExREM1QTM2MDAwRUQzREUgLyog
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJCQk4QUY0RTU1MzExREM1QTM2MDAwRUQz
REUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmggKi8sCiAJCQkJOEFGNEU1NTQxMURDNUEzNjAw
MEVEM0RFIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgKi8sCisJCQkJREYzNjVEMDQyNUE5
ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgKi8sCisJCQkJ
REYzNjVEMDYyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5o
ICovLAorCQkJCURGMzY1RDA3MjVBOTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuaWRsICovLAogCQkJCUE1QTk5MzM1MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3Jt
YW5jZU9ic2VydmVyLmNwcCAqLywKIAkJCQlBNUE5OTMzNjFFMzdGQUZEMDA1QjVFNEQgLyogUGVy
Zm9ybWFuY2VPYnNlcnZlci5oICovLAogCQkJCUE1QTk5MzM3MUUzN0ZBRkQwMDVCNUU0RCAvKiBQ
ZXJmb3JtYW5jZU9ic2VydmVyLmlkbCAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCmluZGV4IGJiZjgxMTE0MmRh
YjllNmE5MmNiNWM2Y2ZhYjA2YjI0NThiYTcxNDAuLmRmY2Q4YzFlYjk2NDQ5MTMxNDQ3ZTJmMjdj
OWQ2YmVjNWFjNjc5YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
UGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcApAQCAtMzUsMTAgKzM1LDEyIEBACiAjaW5j
bHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU1hcmsuaCIKICNp
bmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3VyZS5oIgorI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVBhaW50VGltaW5nLmgi
CiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQ
YWludFRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIApA
QCAtNDgsMTggKzUwLDIwIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIEpTVmFsdWUgdG9KU05l
d2x5Q3JlYXRlZChKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIFJlZjxQZXJmb3JtYW5jZUVudHJ5PiYmIGVudHJ5KQogewotICAgIGlmIChpczxQZXJmb3Jt
YW5jZVBhaW50VGltaW5nPihlbnRyeSkpCi0gICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBl
cmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwotCi0g
ICAgaWYgKGlzPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0
dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2JqZWN0
LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNYXJrPihlbnRyeSkp
CisgICAgc3dpdGNoIChlbnRyeS0+cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkgeworICAgIGNhc2Ug
UGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2aWdhdGlvbjoKKyAgICAgICAgcmV0dXJuIGNyZWF0
ZVdyYXBwZXI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPihnbG9iYWxPYmplY3QsIFdURk1v
dmUoZW50cnkpKTsKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1hcms6CiAgICAg
ICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWFyaz4oZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNZWFzdXJlPihlbnRyeSkp
CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpNZWFzdXJlOgogICAgICAgICByZXR1
cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU1lYXN1cmU+KGdsb2JhbE9iamVjdCwgV1RGTW92
ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UmVzb3VyY2U6Cisg
ICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGds
b2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6
VHlwZTo6UGFpbnQ6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUGFp
bnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIH0KIAorICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNl
RW50cnk+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKaW5kZXggYmVlMWU2YmRh
OGM5MWEzY2E4MjIyZGQ5MDI2OTI3NmU0NWY0ZjE3Mi4uZjgxM2JkZWNhNDljZmRkYWVhMjk0ZGI2
MzcwNmFmMzg0MTg3YzRlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTkyLDYgKzE5Miw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICBtYWNybyhQYXltZW50UmVxdWVzdCkgXAogICAgIG1hY3JvKFBheW1lbnRSZXF1ZXN0
VXBkYXRlRXZlbnQpIFwKICAgICBtYWNybyhQYXltZW50UmVzcG9uc2UpIFwKKyAgICBtYWNybyhQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcpIFwKICAgICBtYWNybyhQaWN0dXJlSW5QaWN0dXJl
V2luZG93KSBcCiAgICAgbWFjcm8oU1FMRXJyb3IpIFwKICAgICBtYWNybyhTUUxSZXN1bHRTZXQp
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDk4NWQxNDhmYWJiNWFhNWE0NTI0Yzg0YmVj
ZTRjNmQzNjdmNDUzZjQuLjFjODAzM2M4YTc0ODE5ZjdiZmFkMmM2YTI1OTZjOTEwNDczYzdhZGMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMTM4NiwxMyArMTM4NiwxMyBAQCB2b2lkIERv
Y3VtZW50OjpzZXRSZWFkeVN0YXRlKFJlYWR5U3RhdGUgcmVhZHlTdGF0ZSkKICAgICAgICAgaWYg
KCFtX2RvY3VtZW50VGltaW5nLmRvbUxvYWRpbmcpCiAgICAgICAgICAgICBtX2RvY3VtZW50VGlt
aW5nLmRvbUxvYWRpbmcgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJlYWs7Ci0g
ICAgY2FzZSBJbnRlcmFjdGl2ZToKLSAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUlu
dGVyYWN0aXZlKQotICAgICAgICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSA9
IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICBicmVhazsKICAgICBjYXNlIENvbXBsZXRl
OgogICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUpCiAgICAgICAgICAg
ICBtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlID0gTW9ub3RvbmljVGltZTo6bm93KCk7Cisg
ICAgICAgIEZBTExUSFJPVUdIOworICAgIGNhc2UgSW50ZXJhY3RpdmU6CisgICAgICAgIGlmICgh
bV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSkKKyAgICAgICAgICAgIG1fZG9jdW1lbnRU
aW1pbmcuZG9tSW50ZXJhY3RpdmUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKICAgICAgICAgYnJl
YWs7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRl
eCBlMzI1ZjJkMDkxNDMyZTAzNmM3YWI1YTkxNTEyZDAwOTkxYmFkYzhlLi4xOWRmMDM5ZjNiZjdj
ZjI3Njc2MTdiYmU1ZGFiMzIzYWJmMDliZjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1
bWVudExvYWRlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAKICNpbmNsdWRlICJOZXR3b3JrTG9hZE1l
dHJpY3MuaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJQ
YWdlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlICJQaW5nTG9hZGVyLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUG9saWN5Q2hlY2tl
ci5oIgpAQCAtNDExLDcgKzQxMiw3IEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZygp
IGNvbnN0CiAgICAgcmV0dXJuIGlzTG9hZGluZ01haW5SZXNvdXJjZSgpIHx8ICFtX3N1YnJlc291
cmNlTG9hZGVycy5pc0VtcHR5KCkgfHwgIW1fcGx1Z0luU3RyZWFtTG9hZGVycy5pc0VtcHR5KCk7
CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNl
JiByZXNvdXJjZSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJikKK3ZvaWQgRG9jdW1lbnRMb2Fk
ZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTmV0d29y
a0xvYWRNZXRyaWNzJiBtZXRyaWNzKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAj
aWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQpAQCAtNDE5LDYgKzQyMCwxMyBAQCB2b2lkIERv
Y3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNv
bnN0IE5ldHdvcmtMb2FkTQogICAgICAgICByZXR1cm47CiAjZW5kaWYKIAorICAgIGlmIChhdXRv
IGRvY3VtZW50ID0gbWFrZVJlZlB0cih0aGlzLT5kb2N1bWVudCgpKSkgeworICAgICAgICBpZiAo
YXV0byBkb21XaW5kb3cgPSBtYWtlUmVmUHRyKGRvY3VtZW50LT5kb21XaW5kb3coKSkpIHsKKyAg
ICAgICAgICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQoKSkKKyAgICAgICAgICAgICAgICBk
b21XaW5kb3ctPnBlcmZvcm1hbmNlKCkuYWRkTmF2aWdhdGlvblRpbWluZygqdGhpcywgKmRvY3Vt
ZW50LCByZXNvdXJjZSwgdGltaW5nKCksIG1ldHJpY3MpOworICAgICAgICB9CisgICAgfQorCiAg
ICAgQVNTRVJUX1VOVVNFRChyZXNvdXJjZSwgbV9tYWluUmVzb3VyY2UgPT0gJnJlc291cmNlKTsK
ICAgICBBU1NFUlQobV9tYWluUmVzb3VyY2UpOwogICAgIGlmICghbV9tYWluUmVzb3VyY2UtPmVy
cm9yT2NjdXJyZWQoKSAmJiAhbV9tYWluUmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDA3NWZiMWZhZWRmZWYzNDIw
OGE4MWFiYzNiZjEyOTE0MzI3NGEyNDMuLjI0NjczMDI3YjcwNjM1YjEyOWQwMWI5ZTQyZTU5YmM0
MWU5MzYyNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcApAQCAt
NzMzLDEwICs3MzMsOSBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlQnVmZmVyKFJl
c291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiBidWZmZQogICAgIGRpZFJlY2VpdmVC
dWZmZXIoV1RGTW92ZShidWZmZXIpLCBlbmNvZGVkRGF0YUxlbmd0aCwgRGF0YVBheWxvYWRCeXRl
cyk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VI
YW5kbGUqKQordm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhh
bmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKIHsKLSAgICBOZXR3b3Jr
TG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAgIGRpZEZpbmlzaExvYWRpbmcoZW1wdHlNZXRy
aWNzKTsKKyAgICBkaWRGaW5pc2hMb2FkaW5nKG1ldHJpY3MpOwogfQogCiB2b2lkIFJlc291cmNl
TG9hZGVyOjpkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJy
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCmluZGV4IGIyZjZhNWVjYjNi
ZWEwNGU5YmZhOGQxZWU3NjYyYzMyYzFkZjNkMTUuLmE0Mzc2ZDUwMTFiZjgyODZmYjQ3ZmMzMzg0
ZjI5YjVjM2RjMzI2NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCkBA
IC0yMDAsNyArMjAwLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdEFzeW5j
KFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFJlc291cmNlUmVzcG9uc2UmJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChSZXNvdXJjZVJlcXVlc3QmJik+JiYpIG92ZXJyaWRlOwog
ICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5z
aWduZWQsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNl
aXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVuY29k
ZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3Vy
Y2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VI
YW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKICAgICB2b2lkIGRp
ZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAg
ICAgdm9pZCB3YXNCbG9ja2VkKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CiAgICAgdm9pZCBj
YW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Jlc291cmNlVGltaW5nLmNwcAppbmRleCAxNjgyMzRmNDdiY2JlMDc5NTA2MDU0MGE5YTFh
YWU2ZWRiNDUxNmE3Li43ZTIzNDEwOGI2YTYyNzZjMmQ2ZmMxMDM2ZTA2NDY1M2MyZTg0ZDNkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKQEAgLTYyLDkgKzYyLDkg
QEAgUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21DYWNoZShjb25zdCBVUkwmIHVy
bCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IKICAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJs
LCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIHJlc3BvbnNlLCBzZWN1cml0eU9yaWdpbik7CiB9CiAK
LVJlc291cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYg
cmVzb3VyY2UsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2Fk
VGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29u
c3QgU2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQorUmVzb3VyY2VUaW1pbmcgUmVzb3Vy
Y2VUaW1pbmc6OmZyb21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgVVJMJiB1
cmwsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5n
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2Vj
dXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQogewotICAgIHJldHVybiBSZXNvdXJjZVRpbWlu
ZyhyZXNvdXJjZS5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKSwgaW5pdGlhdG9yLCBsb2FkVGltaW5n
LCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2lu
KTsKKyAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcs
IG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2UucmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4p
OwogfQogCiBSZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbVN5bmNocm9ub3VzTG9h
ZChjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1p
bmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRy
aWNzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgU2VjdXJpdHlPcmln
aW4mIHNlY3VyaXR5T3JpZ2luKQpAQCAtOTcsMTAgKzk3LDEwIEBAIHZvaWQgUmVzb3VyY2VUaW1p
bmc6OmluaXRTZXJ2ZXJUaW1pbmcoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAg
ICAgICAgIG1fc2VydmVyVGltaW5nID0gU2VydmVyVGltaW5nUGFyc2VyOjpwYXJzZVNlcnZlclRp
bWluZyhyZXNwb25zZS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlNlcnZlclRpbWlu
ZykpOwogfQogCi1WZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gUmVzb3VyY2VU
aW1pbmc6OnBvcHVsYXRlU2VydmVyVGltaW5nKCkKK1ZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2
ZXJUaW1pbmc+PiBSZXNvdXJjZVRpbWluZzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSBjb25zdAog
ewogICAgIHJldHVybiBXVEY6Om1hcChtX3NlcnZlclRpbWluZywgW10gKGF1dG8mIGVudHJ5KSB7
Ci0gICAgICAgIHJldHVybiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzo6Y3JlYXRlKFdURk1vdmUo
ZW50cnkubmFtZSksIGVudHJ5LmR1cmF0aW9uLCBXVEZNb3ZlKGVudHJ5LmRlc2NyaXB0aW9uKSk7
CisgICAgICAgIHJldHVybiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzo6Y3JlYXRlKFN0cmluZyhl
bnRyeS5uYW1lKSwgZW50cnkuZHVyYXRpb24sIFN0cmluZyhlbnRyeS5kZXNjcmlwdGlvbikpOwog
ICAgIH0pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VU
aW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5oCmluZGV4IDY0
Zjg3Y2IzYmZkYjUxNWQ2YzRlMzgzOTRmYmM0ZTNhZDUzZTMwYjcuLjY0ZDFlY2Y4ZTc4M2JjNmE0
ZDhmZjdlOWRhZGFlYmYwNjJkZDRmYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9SZXNvdXJjZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRp
bWluZy5oCkBAIC00MSwxNSArNDEsMTUgQEAgY2xhc3MgUmVzb3VyY2VUaW1pbmcgewogICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIHN0YXRpYyBSZXNvdXJjZVRpbWlu
ZyBmcm9tQ2FjaGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExv
YWRUaW1pbmcmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4m
KTsKLSAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUxvYWQoQ2FjaGVkUmVzb3VyY2UmLCBj
b25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtM
b2FkTWV0cmljcyYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CisgICAgc3RhdGljIFJlc291cmNl
VGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5n
JiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3Mm
LCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVRpbWluZyBmcm9t
U3luY2hyb25vdXNMb2FkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25z
dCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CiAKLSAgICBVUkwgdXJsKCkgY29uc3Qg
eyByZXR1cm4gbV91cmw7IH0KLSAgICBTdHJpbmcgaW5pdGlhdG9yKCkgY29uc3QgeyByZXR1cm4g
bV9pbml0aWF0b3I7IH0KLSAgICBMb2FkVGltaW5nIGxvYWRUaW1pbmcoKSBjb25zdCB7IHJldHVy
biBtX2xvYWRUaW1pbmc7IH0KLSAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya0xvYWRNZXRy
aWNzKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3M7IH0KKyAgICBjb25zdCBV
UkwmIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CisgICAgY29uc3QgU3RyaW5nJiBpbml0
aWF0b3IoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvcjsgfQorICAgIGNvbnN0IExvYWRUaW1p
bmcmIGxvYWRUaW1pbmcoKSBjb25zdCB7IHJldHVybiBtX2xvYWRUaW1pbmc7IH0KKyAgICBjb25z
dCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0IHsgcmV0dXJu
IG1fbmV0d29ya0xvYWRNZXRyaWNzOyB9CiAgICAgYm9vbCBhbGxvd1RpbWluZ0RldGFpbHMoKSBj
b25zdCB7IHJldHVybiBtX2FsbG93VGltaW5nRGV0YWlsczsgfQotICAgIFZlY3RvcjxSZWY8UGVy
Zm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWluZygpOworICAgIFZlY3Rv
cjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWluZygpIGNv
bnN0OwogICAgIFJlc291cmNlVGltaW5nIGlzb2xhdGVkQ29weSgpIGNvbnN0OwogCiAgICAgdm9p
ZCBvdmVycmlkZUluaXRpYXRvck5hbWUoY29uc3QgU3RyaW5nJiBuYW1lKSB7IG1faW5pdGlhdG9y
ID0gbmFtZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNl
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAK
aW5kZXggMDZhNTk1OWJjZDExZjA2NGMwYTczZTA3NGIwYmRmY2NmMzc1YTA1Mi4uNjBkZDg1YmVk
NTU3MGRiNDlmODYzOWRjNTBjYWM5ODc0NmNmN2ZiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCkBAIC05MDQsNyArOTA0LDcgQEAgdm9pZCBTdWJyZXNv
dXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcoY29uc3QgTmV0d29ya0xvYWRNZXRyaWNz
JiBuZXR3b3JrTG8KICAgICAgICAgcmV0dXJuOwogCiAgICAgU2VjdXJpdHlPcmlnaW4mIG9yaWdp
biA9IG1fb3JpZ2luID8gKm1fb3JpZ2luIDogZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0g
ICAgYXV0byByZXNvdXJjZVRpbWluZyA9IFJlc291cmNlVGltaW5nOjpmcm9tTG9hZCgqbV9yZXNv
dXJjZSwgbV9yZXNvdXJjZS0+aW5pdGlhdG9yTmFtZSgpLCBtX2xvYWRUaW1pbmcsIG5ldHdvcmtM
b2FkTWV0cmljcywgb3JpZ2luKTsKKyAgICBhdXRvIHJlc291cmNlVGltaW5nID0gUmVzb3VyY2VU
aW1pbmc6OmZyb21Mb2FkKCptX3Jlc291cmNlLCBtX3Jlc291cmNlLT5yZXNvdXJjZVJlcXVlc3Qo
KS51cmwoKSwgbV9yZXNvdXJjZS0+aW5pdGlhdG9yTmFtZSgpLCBtX2xvYWRUaW1pbmcsIG5ldHdv
cmtMb2FkTWV0cmljcywgb3JpZ2luKTsKIAogICAgIC8vIFdvcmtlciByZXNvdXJjZXMgbG9hZGVk
IGhlcmUgYXJlIGFsbCBDYWNoZWRSYXdSZXNvdXJjZXMgbG9hZGVkIHRocm91Z2ggV29ya2VyVGhy
ZWFkYWJsZUxvYWRlci4KICAgICAvLyBQYXNzIHRoZSBSZXNvdXJjZVRpbWluZyBpbmZvcm1hdGlv
biBvbiBzbyB0aGF0IFdvcmtlclRocmVhZGFibGVMb2FkZXIgbWF5IGFkZCB0aGVtIHRvIHRoZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAppbmRleCA3NjY5MDg1ZTVkOGY4MjJkZDNiMTcy
NmYwZGFjNGU2ZGYyNmMxZjExLi43NzM2ZjNiNmEzNGZmNjRjMjIzMDUxYTBjNTk3MzY2ODRhZmVi
NzJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcApAQCAtNDMsMTIgKzQzLDE0IEBA
CiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZvcm1h
bmNlTWVhc3VyZU9wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCIK
KyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQZXJm
b3JtYW5jZU9ic2VydmVyLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIgog
I2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3Jt
YW5jZVRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlVXNlclRpbWluZy5oIgogI2luY2x1
ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVz
LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKQEAgLTEyMiw2ICsxMjQsOSBAQCBWZWN0b3I8UmVmUHRyPFBl
cmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllcygpIGNvbnN0CiB7CiAgICAg
VmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25h
dmlnYXRpb25UaW1pbmcpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWlu
Zyk7CisKICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsK
IAogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE0MCw2ICsxNDUsOSBAQCBWZWN0b3I8UmVm
UHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5VHlwZShjb25z
dCBTdHJpbmcmIGVudAogewogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVu
dHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlwZSA9PSAibmF2
aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7Cisg
ICAgCiAgICAgaWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFw
cGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMTYxLDYgKzE2OSw5IEBA
IFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVz
QnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtCiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgKGVudHJ5
VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUgPT0gIm5hdmlnYXRpb24iKSAmJiBuYW1lID09IG1f
bmF2aWdhdGlvblRpbWluZy0+bmFtZSgpKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmln
YXRpb25UaW1pbmcpOworCiAgICAgaWYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUg
PT0gInJlc291cmNlIikgewogICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNvdXJj
ZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAgICAgaWYgKHJlc291cmNlLT5uYW1lKCkgPT0gbmFt
ZSkKQEAgLTE4NCw2ICsxOTUsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQ
ZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbQogCiB2b2lkIFBl
cmZvcm1hbmNlOjphcHBlbmRCdWZmZXJlZEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRy
eVR5cGUsIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+JiBlbnRyaWVzKSBjb25zdAog
eworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50cnlUeXBlID09ICJuYXZpZ2F0aW9u
IikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsKKwogICAgIGlm
IChlbnRyeVR5cGUgPT0gInJlc291cmNlIikKICAgICAgICAgZW50cmllcy5hcHBlbmRWZWN0b3Io
bV9yZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKQEAgLTIxNCw2ICsyMjgsMTMgQEAgdm9pZCBQZXJm
b3JtYW5jZTo6cmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQoKQogICAgIHF1ZXVlRW50cnkoKm1f
Zmlyc3RDb250ZW50ZnVsUGFpbnQpOwogfQogCit2b2lkIFBlcmZvcm1hbmNlOjphZGROYXZpZ2F0
aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiBkb2N1bWVudExvYWRlciwgRG9jdW1lbnQmIGRvY3Vt
ZW50LCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIHRpbWluZywg
Y29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQoreworICAgIEFTU0VSVChSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZ0FQSUVuYWJsZWQoKSk7CisgICAgbV9uYXZpZ2F0aW9uVGltaW5nID0gUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nOjpjcmVhdGUobV90aW1lT3JpZ2luLCByZXNvdXJjZSwgdGltaW5nLCBt
ZXRyaWNzLCBkb2N1bWVudC50aW1pbmcoKSwgZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgZG9j
dW1lbnRMb2FkZXIudHJpZ2dlcmluZ0FjdGlvbigpLnR5cGUoKSk7CisgICAgcXVldWVFbnRyeSgq
bV9uYXZpZ2F0aW9uVGltaW5nKTsKK30KKwogdm9pZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VU
aW1pbmcoUmVzb3VyY2VUaW1pbmcmJiByZXNvdXJjZVRpbWluZykKIHsKICAgICBBU1NFUlQoc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKQEAgLTM0Niw2ICszNjcsMTEgQEAgdm9pZCBQZXJmb3Jt
YW5jZTo6cmVtb3ZlQWxsT2JzZXJ2ZXJzKCkKIHZvaWQgUGVyZm9ybWFuY2U6OnJlZ2lzdGVyUGVy
Zm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5jZU9ic2VydmVyJiBvYnNlcnZlcikKIHsKICAgICBt
X29ic2VydmVycy5hZGQoJm9ic2VydmVyKTsKKworICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcg
JiYgb2JzZXJ2ZXIudHlwZUZpbHRlcigpLmNvbnRhaW5zKFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6
Ok5hdmlnYXRpb24pKSB7CisgICAgICAgIG9ic2VydmVyLnF1ZXVlRW50cnkoKm1fbmF2aWdhdGlv
blRpbWluZyk7CisgICAgICAgIHNjaGVkdWxlVGFza0lmTmVlZGVkKCk7CisgICAgfQogfQogCiB2
b2lkIFBlcmZvcm1hbmNlOjp1bnJlZ2lzdGVyUGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5j
ZU9ic2VydmVyJiBvYnNlcnZlcikKQEAgLTM1Nyw3ICszODMsNyBAQCB2b2lkIFBlcmZvcm1hbmNl
OjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KQogewogICAgIGJvb2wgc2hvdWxk
U2NoZWR1bGVUYXNrID0gZmFsc2U7CiAgICAgZm9yIChhdXRvJiBvYnNlcnZlciA6IG1fb2JzZXJ2
ZXJzKSB7Ci0gICAgICAgIGlmIChvYnNlcnZlci0+dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5
LnR5cGUoKSkpIHsKKyAgICAgICAgaWYgKG9ic2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMo
ZW50cnkucGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkpIHsKICAgICAgICAgICAgIG9ic2VydmVyLT5x
dWV1ZUVudHJ5KGVudHJ5KTsKICAgICAgICAgICAgIHNob3VsZFNjaGVkdWxlVGFzayA9IHRydWU7
CiAgICAgICAgIH0KQEAgLTM2Niw2ICszOTIsMTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVF
bnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkKICAgICBpZiAoIXNob3VsZFNjaGVkdWxlVGFz
aykKICAgICAgICAgcmV0dXJuOwogCisgICAgc2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKK30KKwor
dm9pZCBQZXJmb3JtYW5jZTo6c2NoZWR1bGVUYXNrSWZOZWVkZWQoKQorewogICAgIGlmIChtX2hh
c1NjaGVkdWxlZFRpbWluZ0J1ZmZlckRlbGl2ZXJ5VGFzaykKICAgICAgICAgcmV0dXJuOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKaW5kZXggOTlmMjU0YjNjOTUwOTZhNWNmZDM0YzJlOTBm
OWRjZGMzODc0NjRjOC4uNWU0Njg2NGJmZDA3NzExNDM0OThmZWNhNGU1NTA5NTU2MzM4NjM2YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaApAQCAtNDgsMTIgKzQ4LDE3IEBAIGNsYXNzIEpT
R2xvYmFsT2JqZWN0OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291
cmNlOworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRU
aW1pbmc7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJpY3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJU
aW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZUVudHJ5OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwog
Y2xhc3MgUGVyZm9ybWFuY2VNZWFzdXJlOwogY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOwor
Y2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNl
cnZlcjsKIGNsYXNzIFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRp
bWluZzsKQEAgLTkwLDYgKzk1LDcgQEAgcHVibGljOgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJm
b3JtYW5jZU1lYXN1cmU+PiBtZWFzdXJlKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJp
bmcmIG1lYXN1cmVOYW1lLCBPcHRpb25hbDxTdGFydE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0
IFN0cmluZyYgZW5kTWFyayk7CiAgICAgdm9pZCBjbGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYg
bWVhc3VyZU5hbWUpOwogCisgICAgdm9pZCBhZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9h
ZGVyJiwgRG9jdW1lbnQmLCBDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25z
dCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291
cmNlVGltaW5nJiYpOwogCiAgICAgdm9pZCByZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpA
QCAtMTIxLDYgKzEyNyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZl
ckZ1bGxUaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRy
eSYpOworICAgIHZvaWQgc2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVm
UHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVm
UHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3RpbWluZzsKQEAgLTEzOSw2ICsxNDYsNyBAQCBwcml2
YXRlOgogCiAgICAgTW9ub3RvbmljVGltZSBtX3RpbWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBtX25hdmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRy
PFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+IG1fZmlyc3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPFBlcmZvcm1hbmNlVXNlclRpbWluZz4gbV91c2VyVGltaW5nOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCmluZGV4IGFmYWNmYjA5MGIyMWNiYTYxNGQ3
OGNlODhhYzc1M2UyNjczZTEyNjUuLjNkZjVlNGVmYmFmMzI2YzU3MWY1ZTZlNjVlMzU2YzJkNDMy
ZmYwZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCkBAIC00NCwxMCAr
NDQsMTAgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflBlcmZvcm1hbmNlRW50cnkoKTsKIAogICAg
IGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQotICAgIGRvdWJs
ZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVybiBtX3N0YXJ0VGltZTsgfQotICAgIGRvdWJsZSBk
dXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fZHVyYXRpb247IH0KKyAgICB2aXJ0dWFsIGRvdWJs
ZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVybiBtX3N0YXJ0VGltZTsgfQorICAgIHZpcnR1YWwg
ZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQogCi0gICAgZW51
bSBjbGFzcyBUeXBlIHsKKyAgICBlbnVtIGNsYXNzIFR5cGUgOiB1aW50OF90IHsKICAgICAgICAg
TmF2aWdhdGlvbiAgPSAxIDw8IDAsCiAgICAgICAgIE1hcmsgICAgICAgID0gMSA8PCAxLAogICAg
ICAgICBNZWFzdXJlICAgICA9IDEgPDwgMiwKQEAgLTU1LDE2ICs1NSwxMSBAQCBwdWJsaWM6CiAg
ICAgICAgIFBhaW50ICAgICAgID0gMSA8PCA0CiAgICAgfTsKIAotICAgIHZpcnR1YWwgVHlwZSB0
eXBlKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgp
IGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCA9
IDA7CiAKICAgICBzdGF0aWMgT3B0aW9uYWw8VHlwZT4gcGFyc2VFbnRyeVR5cGVTdHJpbmcoY29u
c3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0gICAgYm9vbCBpc1Jlc291cmNlKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZSgpID09IFR5cGU6OlJlc291cmNlOyB9Ci0gICAgYm9vbCBpc01hcmsoKSBjb25z
dCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6TWFyazsgfQotICAgIGJvb2wgaXNNZWFzdXJlKCkg
Y29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6Ok1lYXN1cmU7IH0KLSAgICBib29sIGlzUGFp
bnQoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6UGFpbnQ7IH0KLQogICAgIHN0YXRp
YyBib29sIHN0YXJ0VGltZUNvbXBhcmVMZXNzVGhhbihjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeT4mIGEsIGNvbnN0IFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5PiYgYikKICAgICB7CiAgICAg
ICAgIHJldHVybiBhLT5zdGFydFRpbWUoKSA8IGItPnN0YXJ0VGltZSgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VNYXJrLmgKaW5kZXggYzczYjIzMTJmMzJhMDRjODIxYzhkMGVjYTg3N2Vh
YmIzM2ZlNGUyZi4uYjc1MTRmMDE1MzU4MDlkYWI1M2NjYWMwNjRjNTJiMGYxOGViNmM2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1hcmsuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJp
dmF0ZToKICAgICBQZXJmb3JtYW5jZU1hcmsoY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3Rh
cnRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmKTsKICAgICB+UGVyZm9ybWFuY2VN
YXJrKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJr
OyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IFR5cGU6Ok1hcms7IH0KICAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gIm1hcmsiX3M7IH0KIAogICAgIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1f
c2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lB
TElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZU1hcmspCi0gICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7
IHJldHVybiBlbnRyeS5pc01hcmsoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKaW5kZXggMzVkYjZhMTY2YjU3
ZWU4NmU2MzA4MzJkZjQyNjg1NWQ5N2E3ZmJmNS4uMmQyYWEzZWUxMjk1MjEyZTE2ZWRlNmUzZGRj
ODBmYzY0ZGUyNmY2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU1lYXN1cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5o
CkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToKICAgICBQZXJmb3JtYW5jZU1lYXN1cmUoY29u
c3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRUaW1lLCBkb3VibGUgZW5kVGltZSwgUmVmPFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkZXRhaWwpOwogICAgIH5QZXJmb3JtYW5jZU1lYXN1cmUo
KTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7
IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
VHlwZTo6TWVhc3VyZTsgfQogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAibWVhc3VyZSJfczsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1T
UEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWVhc3VyZSkK
LSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYg
ZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWVhc3VyZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJB
SVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTgxYjM1YmU2YzQ1YWRjZjg1YzY5M2ExOWMzYWEy
ZDgwMDg5MzM4NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApAQCAtMCwwICsxLDE0NyBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oIgorCisjaW5jbHVkZSAiQ2FjaGVkUmVzb3Vy
Y2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVRpbWluZy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK3N0YXRpYyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlIHRv
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUoTmF2aWdhdGlvblR5cGUg
bmF2aWdhdGlvblR5cGUpCit7CisgICAgc3dpdGNoIChuYXZpZ2F0aW9uVHlwZSkgeworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3YXJkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6QmFja19mb3J3YXJkOworICAgIGNh
c2UgTmF2aWdhdGlvblR5cGU6OlJlbG9hZDoKKyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6OlJlbG9hZDsKKyAgICBjYXNlIE5hdmlnYXRp
b25UeXBlOjpMaW5rQ2xpY2tlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpGb3JtU3VibWl0
dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1SZXN1Ym1pdHRlZDoKKyAgICBjYXNl
IE5hdmlnYXRpb25UeXBlOjpPdGhlcjoKKyAgICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6Ok5hdmlnYXRlOworICAgIH0KKyAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpO
YXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7Cit9CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
Q2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MsIGNvbnN0IERvY3VtZW50VGltaW5nJiBk
b2N1bWVudFRpbWluZywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbiwgV2ViQ29yZTo6TmF2
aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCisgICAgOiBQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nKHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChyZXNvdXJjZSwgcmVzb3Vy
Y2UucmVzcG9uc2UoKS51cmwoKSwgIm5hdmlnYXRpb24iX3MsIGxvYWRUaW1pbmcsIG1ldHJpY3Ms
IG9yaWdpbikpCisgICAgLCBtX2RvY3VtZW50VGltaW5nKGRvY3VtZW50VGltaW5nKQorICAgICwg
bV9uYXZpZ2F0aW9uVHlwZSh0b1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25U
eXBlKG5hdmlnYXRpb25UeXBlKSkgeyB9CisKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6
flBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZygpID0gZGVmYXVsdDsKKworZG91YmxlIFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bWlsbGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3Rvbmlj
VGltZSB0aW1lLCBPcHRpb25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2luKSBjb25zdAorewor
ICAgIGlmICghdGltZSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIFBlcmZvcm1hbmNl
OjpyZWR1Y2VUaW1lUmVzb2x1dGlvbih0aW1lIC0gKHRpbWVPcmlnaW4gPyAqdGltZU9yaWdpbiA6
IG1fdGltZU9yaWdpbikpLm1pbGxpc2Vjb25kcygpOworfQorCitib29sIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNoZWNrRmFpbHMoKSBjb25zdAoreworICAgIC8vIGh0
dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNkZm4tc2FtZS1vcmlnaW4t
Y2hlY2sKKyAgICByZXR1cm4gIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkK
KyAgICAgICAgfHwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5S
ZWRpcmVjdCgpCisgICAgICAgIHx8ICFtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNT
YW1lT3JpZ2luQXNQcmV2aW91c0RvY3VtZW50KCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50U3RhcnQoKSBjb25zdAoreworICAgIGlmIChzYW1l
T3JpZ2luQ2hlY2tGYWlscygpKQorICAgICAgICByZXR1cm4gMC4wOworICAgIHJldHVybiBtaWxs
aXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS51bmxvYWRF
dmVudFN0YXJ0KCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1
bmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgaWYgKHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkp
CisgICAgICAgIHJldHVybiAwLjA7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2lu
KG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnVubG9hZEV2ZW50RW5kKCkpOworfQorCitk
b3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcu
ZG9tSW50ZXJhY3RpdmUpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojpkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxp
c2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50
U3RhcnQpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250
ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5j
ZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCk7Cit9CisK
K2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbXBsZXRlKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5k
b21Db21wbGV0ZSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Omxv
YWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmln
aW4obV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkubG9hZEV2ZW50U3RhcnQoKSk7Cit9CisK
K2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcu
bG9hZFRpbWluZygpLmxvYWRFdmVudEVuZCgpKTsKK30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpOYXZpZ2F0aW9uVHlwZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUo
KSBjb25zdAoreworICAgIHJldHVybiBtX25hdmlnYXRpb25UeXBlOworfQorCit1bnNpZ25lZCBz
aG9ydCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnJlZGlyZWN0Q291bnQoKSBjb25zdAor
eworICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKKyAgICAg
ICAgcmV0dXJuIDA7CisKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuaGFz
Q3Jvc3NPcmlnaW5SZWRpcmVjdCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBt
X3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdENvdW50KCk7Cit9CisKK2RvdWJs
ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnN0YXJ0VGltZSgpIGNvbnN0Cit7CisgICAg
Ly8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmctc3RhcnRUaW1lCisgICAgcmV0dXJuIDAuMDsKK30KKworZG91
YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZHVyYXRpb24oKSBjb25zdAoreworICAg
IC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNkb20tUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLWR1cmF0aW9uCisgICAgcmV0dXJuIGxvYWRFdmVudEVuZCgp
IC0gc3RhcnRUaW1lKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjczYzBmN2FkZWNjMGM0NjFlNmJjODc4NGI4YjMyYTVkMWFjY2MxN2YKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCkBA
IC0wLDAgKzEsODEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
bmNsdWRlICJEb2N1bWVudFRpbWluZy5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgQ2FjaGVkUmVzb3VyY2U7CitjbGFzcyBMb2FkVGltaW5nOwor
Y2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOworY2xhc3MgU2VjdXJpdHlPcmlnaW47CitlbnVtIGNs
YXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhfdDsKKworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nIGZpbmFsIDogcHVibGljIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgeworcHVi
bGljOgorICAgIGVudW0gY2xhc3MgTmF2aWdhdGlvblR5cGUgOiB1aW50OF90IHsKKyAgICAgICAg
TmF2aWdhdGUsCisgICAgICAgIFJlbG9hZCwKKyAgICAgICAgQmFja19mb3J3YXJkLAorICAgICAg
ICBQcmVyZW5kZXIsCisgICAgfTsKKworICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0
YXRpYyBSZWY8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBjcmVhdGUoQXJncyYmLi4uIGFy
Z3MpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKHN0
ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLikpOyB9CisgICAgflBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZygpOworCisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIFR5cGU6Ok5hdmlnYXRpb247IH0KKyAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBl
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm5hdmlnYXRpb24iX3M7IH0KKworICAgIGRvdWJsZSB1
bmxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAgZG91YmxlIHVubG9hZEV2ZW50RW5kKCkgY29u
c3Q7CisgICAgZG91YmxlIGRvbUludGVyYWN0aXZlKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2Fk
ZWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRvdWJsZSBkb21Db21wbGV0ZSgpIGNvbnN0OworICAg
IGRvdWJsZSBsb2FkRXZlbnRTdGFydCgpIGNvbnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRFbmQo
KSBjb25zdDsKKyAgICBOYXZpZ2F0aW9uVHlwZSB0eXBlKCkgY29uc3Q7CisgICAgdW5zaWduZWQg
c2hvcnQgcmVkaXJlY3RDb3VudCgpIGNvbnN0OworCisgICAgZG91YmxlIHN0YXJ0VGltZSgpIGNv
bnN0IGZpbmFsOworICAgIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IGZpbmFsOworCitwcml2YXRl
OgorICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmln
aW4sIENhY2hlZFJlc291cmNlJiwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYsIGNvbnN0IERvY3VtZW50VGltaW5nJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mLCBX
ZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSk7CisKKyAgICBkb3VibGUgbWlsbGlzZWNvbmRzU2luY2VP
cmlnaW4oTW9ub3RvbmljVGltZSwgT3B0aW9uYWw8TW9ub3RvbmljVGltZT4gdGltZU9yaWdpbiA9
IFdURjo6bnVsbG9wdCkgY29uc3Q7CisgICAgYm9vbCBzYW1lT3JpZ2luQ2hlY2tGYWlscygpIGNv
bnN0OworCisgICAgRG9jdW1lbnRUaW1pbmcgbV9kb2N1bWVudFRpbWluZzsKKyAgICBOYXZpZ2F0
aW9uVHlwZSBtX25hdmlnYXRpb25UeXBlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcu
aWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmYyZTQzMGJmMmJkYmE5ZDE5MmE4YjEzNmY2YjEyMDAzODQ4YjdjNzgK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5pZGwKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKy8vIGh0dHBzOi8v
d3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNkb20tcGVyZm9ybWFuY2VuYXZpZ2F0
aW9udGltaW5nCisKK3R5cGVkZWYgZG91YmxlIERPTUhpZ2hSZXNUaW1lU3RhbXA7CisKK2VudW0g
TmF2aWdhdGlvblR5cGUgeworICAgICJuYXZpZ2F0ZSIsCisgICAgInJlbG9hZCIsCisgICAgImJh
Y2tfZm9yd2FyZCIsCisgICAgInByZXJlbmRlciIKK307CisKK1sKKyAgICBFbmFibGVkQXRSdW50
aW1lPVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSSwKKyAgICBFeHBvc2VkPVdpbmRvdwor
XSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIDogUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZyB7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGlt
ZVN0YW1wIHVubG9hZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBE
T01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBh
dHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBkb21JbnRlcmFjdGl2ZTsKKyAgICByZWFkb25s
eSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tQ29udGVudExvYWRlZEV2
ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0
YW1wIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmli
dXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tQ29tcGxldGU7CisgICAgcmVhZG9ubHkgICAgICAg
IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRv
bmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBsb2FkRXZlbnRFbmQ7Cisg
ICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBOYXZpZ2F0aW9uVHlwZSAgICAgIHR5cGU7Cisg
ICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCAgICAgIHJlZGlyZWN0
Q291bnQ7CisgICAgW0RlZmF1bHRdIG9iamVjdCB0b0pTT04oKTsKK307CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcAppbmRleCA0NjQ3MjY3ZDEyODlkYmI2YTUz
MjBhNGFmZWIyMDQ2MGFiZjI4NzYxLi45NDg3OTRiZWRkNzU0MDRmZjAzYmI2NTMzNDQzMmEzNjFk
MTRiNDZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAK
QEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIK
ICNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlT2JzZXJ2ZXJF
bnRyeUxpc3QuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVk
ZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTA3LDYg
KzEwOCwxMSBAQCBFeGNlcHRpb25Pcjx2b2lkPiBQZXJmb3JtYW5jZU9ic2VydmVyOjpvYnNlcnZl
KEluaXQmJiBpbml0KQogICAgIHJldHVybiB7IH07CiB9CiAKK1ZlY3RvcjxSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnRha2VSZWNvcmRzKCkKK3sKKyAgICBy
ZXR1cm4gc3RkOjpleGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIsIHsgfSk7Cit9CisKIHZvaWQg
UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCgpCiB7CiAgICAgaWYgKG1fcGVyZm9ybWFu
Y2UpCkBAIC0xMTQsNiArMTIwLDcgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25u
ZWN0KCkKIAogICAgIG1fcmVnaXN0ZXJlZCA9IGZhbHNlOwogICAgIG1fZW50cmllc1RvRGVsaXZl
ci5jbGVhcigpOworICAgIG1fdHlwZUZpbHRlciA9IHsgfTsKIH0KIAogdm9pZCBQZXJmb3JtYW5j
ZU9ic2VydmVyOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KQpAQCAtMTMwLDcg
KzEzNyw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcigpCiAgICAgaWYgKCFj
b250ZXh0KQogICAgICAgICByZXR1cm47CiAKLSAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNl
RW50cnk+PiBlbnRyaWVzID0gV1RGTW92ZShtX2VudHJpZXNUb0RlbGl2ZXIpOworICAgIFZlY3Rv
cjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXMgPSBzdGQ6OmV4Y2hhbmdlKG1fZW50
cmllc1RvRGVsaXZlciwgeyB9KTsKICAgICBhdXRvIGxpc3QgPSBQZXJmb3JtYW5jZU9ic2VydmVy
RW50cnlMaXN0OjpjcmVhdGUoV1RGTW92ZShlbnRyaWVzKSk7CiAKICAgICBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxGaXJlT2JzZXJ2ZXJDYWxsYmFjaygqY29udGV4dCwgIlBlcmZvcm1h
bmNlT2JzZXJ2ZXIiX3MpOwpAQCAtMTQxLDEyICsxNDgsMTMgQEAgdm9pZCBQZXJmb3JtYW5jZU9i
c2VydmVyOjpkZWxpdmVyKCkKIFZlY3RvcjxTdHJpbmc+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1
cHBvcnRlZEVudHJ5VHlwZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkKIHsKICAg
ICBWZWN0b3I8U3RyaW5nPiBlbnRyeVR5cGVzID0gewotICAgICAgICAvLyBGSVhNRTogPGh0dHBz
Oi8vd2Via2l0Lm9yZy9iLzE4NDM2Mz4gQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5n
IExldmVsIDIKLSAgICAgICAgLy8gIm5hdmlnYXRpb24iX3MsCiAgICAgICAgICJtYXJrIl9zLAot
ICAgICAgICAibWVhc3VyZSJfcworICAgICAgICAibWVhc3VyZSJfcywKICAgICB9OwogCisgICAg
aWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nQVBJRW5hYmxlZCgpKQorICAgICAgICBlbnRyeVR5cGVzLmFwcGVuZCgi
bmF2aWdhdGlvbiJfcyk7CisKICAgICBpZiAoaXM8RG9jdW1lbnQ+KGNvbnRleHQpICYmIGRvd25j
YXN0PERvY3VtZW50Pihjb250ZXh0KS5zdXBwb3J0c1BhaW50VGltaW5nKCkpCiAgICAgICAgIGVu
dHJ5VHlwZXMuYXBwZW5kKCJwYWludCJfcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU9ic2VydmVyLmgKaW5kZXggMjg3MmYxN2FhYjViNTc2NmJmYzQ4Y2M0ODAwMDRhZGQ4YmRl
MWZmOS4uNDE5MzA1ZDQ3YzIxNTI3ZDhlMWNiZWI1N2JjZTVjMGQ4MmMyYTdkOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKQEAgLTU3LDYgKzU3LDcgQEAgcHVi
bGljOgogCiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gb2JzZXJ2ZShJbml0JiYpOwogICAgIHZvaWQg
ZGlzY29ubmVjdCgpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IHRha2VS
ZWNvcmRzKCk7CiAKICAgICBPcHRpb25TZXQ8UGVyZm9ybWFuY2VFbnRyeTo6VHlwZT4gdHlwZUZp
bHRlcigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZUZpbHRlcjsgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAppbmRleCBiNzA3ZjY2MDJlMzA5N2FjMjM3Y2Vh
YzcyZTRhN2QwNjcyNjM2NTEzLi42ODNhMmJlYTAxNDU5NDMyNTdmOWM3ZjIwMmU2ZjU1YzNkYjRi
ZDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKQEAg
LTMzLDggKzMzLDkgQEAKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgewogICAgIFtD
YWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihQZXJmb3JtYW5jZU9i
c2VydmVyQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgdW5kZWZpbmVkIG9ic2VydmUoUGVyZm9y
bWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CisgICAgdW5kZWZpbmVkIG9ic2VydmUob3B0aW9u
YWwgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CiAgICAgdW5kZWZpbmVkIGRpc2Nv
bm5lY3QoKTsKKyAgICBzZXF1ZW5jZTxQZXJmb3JtYW5jZUVudHJ5PiB0YWtlUmVjb3JkcygpOwog
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBzdGF0aWMgcmVhZG9ubHkgYXR0
cmlidXRlIEZyb3plbkFycmF5PERPTVN0cmluZz4gc3VwcG9ydGVkRW50cnlUeXBlczsKIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5
TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxp
c3QuY3BwCmluZGV4IGUwMzY2NWFhY2I3MGJiOGY4NjM5YWY0YmM3YWUxZDA2MGRiYjFlNDYuLmRk
N2ZjOTdjYTM4ZjgzZTI0NTVlOTI3MDgyMzUxNTAwM2U5YTljZTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcApAQCAtNjQs
NyArNjQsNyBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZU9i
c2VydmVyRW50cnlMaXN0OjpnZXRFbnRyaWVzQnlOYW1lKAogICAgIGZvciAoYXV0byYgZW50cnkg
OiBtX2VudHJpZXMpIHsKICAgICAgICAgaWYgKCFuYW1lLmlzTnVsbCgpICYmIGVudHJ5LT5uYW1l
KCkgIT0gbmFtZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBpZiAodHlwZSAmJiBl
bnRyeS0+dHlwZSgpICE9ICp0eXBlKQorICAgICAgICBpZiAodHlwZSAmJiBlbnRyeS0+cGVyZm9y
bWFuY2VFbnRyeVR5cGUoKSAhPSAqdHlwZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAg
ICBlbnRyaWVzLmFwcGVuZChlbnRyeS5jb3B5UmVmKCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmgKaW5kZXggYTI4MWJhMzgyMjQ4ZjgyMzYw
ZjM3NzhiMWJmZmY1NWUzOTZlMjVjZi4uNzBmODA4NWY5Y2M3NTg3OTA0NjI5MTBjODBhYTc0YTZi
Yzc3NDAyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50
VGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5n
LmgKQEAgLTQ0LDEzICs0NCw5IEBAIHByaXZhdGU6CiAgICAgfQogCiAgICAgQVNDSUlMaXRlcmFs
IGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJwYWludCJfczsgfQotICAgIFR5cGUg
dHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9CisgICAgVHlwZSBwZXJm
b3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9CiAK
ICAgICB+UGVyZm9ybWFuY2VQYWludFRpbWluZygpID0gZGVmYXVsdDsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQ
ZXJmb3JtYW5jZVBhaW50VGltaW5nKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJD
b3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNQYWludCgpOyB9
Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCBkZDcxYWE3Y2IxNzhiM2IwODVl
M2FhOWUyYzViYjNjZjIzN2ViMGE5Li5lNWRkMTJiOWY4M2E0MTQzYTNmYzZhNTNjNTFhZmEyOWM5
ODk5ZGQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5jcHAKQEAgLTgxLDEyICs4MSw5IEBAIFJlZjxQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nPiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3RvbmljVGltZSB0CiAK
IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoTW9u
b3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQog
ICAgIDogUGVyZm9ybWFuY2VFbnRyeShyZXNvdXJjZVRpbWluZy51cmwoKS5zdHJpbmcoKSwgZW50
cnlTdGFydFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpLCBlbnRyeUVuZFRpbWUodGlt
ZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpKQotICAgICwgbV9pbml0aWF0b3JUeXBlKHJlc291cmNl
VGltaW5nLmluaXRpYXRvcigpKQogICAgICwgbV90aW1lT3JpZ2luKHRpbWVPcmlnaW4pCi0gICAg
LCBtX2xvYWRUaW1pbmcocmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpKQotICAgICwgbV9uZXR3
b3JrTG9hZE1ldHJpY3MocmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkpCi0gICAg
LCBtX3Nob3VsZFJlcG9ydERldGFpbHMocmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxz
KCkpCi0gICAgLCBtX3NlcnZlclRpbWluZyhyZXNvdXJjZVRpbWluZy5wb3B1bGF0ZVNlcnZlclRp
bWluZygpKQorICAgICwgbV9yZXNvdXJjZVRpbWluZyhXVEZNb3ZlKHJlc291cmNlVGltaW5nKSkK
KyAgICAsIG1fc2VydmVyVGltaW5nKG1fcmVzb3VyY2VUaW1pbmcucG9wdWxhdGVTZXJ2ZXJUaW1p
bmcoKSkKIHsKIH0KIApAQCAtOTQsNyArOTEsNyBAQCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
Ojp+UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZygpID0gZGVmYXVsdDsKIAogY29uc3QgU3RyaW5n
JiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2woKSBjb25zdAogewot
ICAgIHJldHVybiBtX25ldHdvcmtMb2FkTWV0cmljcy5wcm90b2NvbDsKKyAgICByZXR1cm4gbV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5wcm90b2NvbDsKIH0KIAogZG91Ymxl
IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OndvcmtlclN0YXJ0KCkgY29uc3QKQEAgLTEwNSwx
NDAgKzEwMiwxNDAgQEAgZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OndvcmtlclN0
YXJ0KCkgY29uc3QKIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlZGlyZWN0
U3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlm
ICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJu
IDAuMDsKIAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1f
dGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlZGlyZWN0U3RhcnQoKSk7CisgICAgcmV0dXJuIG1v
bm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291cmNl
VGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdFN0YXJ0KCkpOwogfQogCiBkb3VibGUgUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RFbmQoKSBjb25zdAogewotICAgIGlmICghbV9z
aG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWlu
Z0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9uaWNU
aW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlZGly
ZWN0RW5kKCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVkaXJlY3RFbmQo
KSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0YXJ0KCkg
Y29uc3QKIHsKICAgICAvLyBmZXRjaFN0YXJ0IGlzIGEgcmVxdWlyZWQgcHJvcGVydHkuCi0gICAg
QVNTRVJUKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkpOworICAgIEFTU0VSVChtX3Jlc291cmNl
VGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwogCi0gICAgcmV0dXJuIG1vbm90b25p
Y1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1pbmcuZmV0
Y2hTdGFydCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFt
cChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNoU3RhcnQo
KSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpkb21haW5Mb29rdXBT
dGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYg
KCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4g
MC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0IDw9
IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9t
YWluTG9va3VwU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGZldGNoU3RhcnQoKTsKIAot
ICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3Jr
TG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRp
bWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJp
Y3MoKS5kb21haW5Mb29rdXBTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nOjpkb21haW5Mb29rdXBFbmQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBv
cnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMo
KSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5k
b21haW5Mb29rdXBFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3Jr
TG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGRv
bWFpbkxvb2t1cFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdo
UmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCk7CisgICAg
cmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCk7CiB9CiAKIGRvdWJsZSBQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQoKSBjb25zdAogewotICAgIGlm
ICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxv
d1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdv
cmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRp
bWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcykKICAgICAgICAg
cmV0dXJuIGRvbWFpbkxvb2t1cEVuZCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRv
RE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQpOwor
ICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQpOwogfQogCiBkb3VibGUg
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCgpIGNvbnN0CiB7Ci0gICAgaWYg
KCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93
VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29y
a0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWlu
Zy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpCiAgICAgICAgIHJldHVy
biBjb25uZWN0U3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hS
ZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCk7CisgICAgcmV0dXJu
IG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZzo6c2VjdXJlQ29ubmVjdGlvblN0YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAo
IW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dU
aW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAobV9uZXR3b3Jr
TG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IHJldXNlZFRMU0Nvbm5lY3Rpb25T
ZW50aW5lbCkKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5z
ZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2VkVExTQ29ubmVjdGlvblNlbnRpbmVsKQogICAg
ICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNz
LnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQogICAg
ICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJl
c1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQpOwor
ICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQpOwogfQog
CiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVxdWVzdFN0YXJ0KCkgY29uc3QK
IHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VU
aW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKICAgICAv
LyByZXF1ZXN0U3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBtYWRlLgot
ICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcykKKyAgICBp
ZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQgPD0g
MF9tcykKICAgICAgICAgcmV0dXJuIGNvbm5lY3RFbmQoKTsKIAotICAgIHJldHVybiBuZXR3b3Jr
TG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVz
dFN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVzdFN0YXJ0KTsKIH0K
IAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQoKSBjb25z
dAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJj
ZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAogICAg
IC8vIHJlc3BvbnNlU3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBtYWRl
LgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpCisg
ICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VTdGFy
dCA8PSAwX21zKQogICAgICAgICByZXR1cm4gcmVxdWVzdFN0YXJ0KCk7CiAKLSAgICByZXR1cm4g
bmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNz
LnJlc3BvbnNlU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNU
aW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25zZVN0
YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlRW5k
KCkgY29uc3QKIHsKICAgICAvLyByZXNwb25zZUVuZCBpcyBhIHJlcXVpcmVkIHByb3BlcnR5Lgot
ICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0NvbXBsZXRlKCkgfHwgbV9sb2FkVGlt
aW5nLnJlc3BvbnNlRW5kKCkpOworICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSB8fCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmco
KS5yZXNwb25zZUVuZCgpKTsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0NvbXBs
ZXRlKCkpIHsKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5p
c0NvbXBsZXRlKCkpIHsKICAgICAgICAgLy8gcmVzcG9uc2VFbmQgaXMgMCB3aGVuIGEgbmV0d29y
ayByZXF1ZXN0IGlzIG5vdCBtYWRlLgogICAgICAgICAvLyBUaGlzIHNob3VsZCBtZWFuIGFsbCBv
dGhlciBwcm9wZXJ0aWVzIGFyZSBlbXB0eS4KLSAgICAgICAgaWYgKG1fbmV0d29ya0xvYWRNZXRy
aWNzLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdvcmtM
b2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1f
bmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFT
U0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7Ci0gICAgICAg
ICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0IDw9
IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RF
bmQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29u
bmVjdFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRy
aWNzLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdv
cmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAgIHJl
dHVybiBmZXRjaFN0YXJ0KCk7CisgICAgICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKKyAgICAgICAgICAgIEFTU0VSVCht
X3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlU3RhcnQgPD0gMF9t
cyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJp
Y3MoKS5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7CisgICAg
ICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1
cmVDb25uZWN0aW9uU3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpOworICAgICAg
ICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuY29ubmVj
dFN0YXJ0IDw9IDBfbXMpOworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0
d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwRW5kIDw9IDBfbXMpOworICAgICAgICAgICAg
QVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3Vw
U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2VTdGFydCgpOwogICAg
ICAgICB9CiAKLSAgICAgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUVuZCk7CisgICAgICAgIHJldHVybiBu
ZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3
b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25zZUVuZCk7CiAgICAgfQogCi0gICAgcmV0dXJuIG1vbm90
b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1pbmcu
cmVzcG9uc2VFbmQoKSk7CisgICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1l
U3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZXNwb25z
ZUVuZCgpKTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Om5ldHdvcmtM
b2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChTZWNvbmRzIGRlbHRhKSBjb25zdAogewogICAg
IEFTU0VSVChkZWx0YSk7Ci0gICAgU2Vjb25kcyBmaW5hbCA9IChtX2xvYWRUaW1pbmcuZmV0Y2hT
dGFydCgpICsgZGVsdGEpIC0gbV90aW1lT3JpZ2luOworICAgIFNlY29uZHMgZmluYWwgPSAobV9y
ZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuZmV0Y2hTdGFydCgpICsgZGVsdGEpIC0gbV90aW1l
T3JpZ2luOwogICAgIHJldHVybiBQZXJmb3JtYW5jZTo6cmVkdWNlVGltZVJlc29sdXRpb24oZmlu
YWwpLm1pbGxpc2Vjb25kcygpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oCmluZGV4IDVkMDc5ZjRjNjY1NjUyMzE1YTAwMTI0NjNjOGNk
ZjljZTUyZWM1YTEuLmI3NjZjOWMwMDk1ZmQwYzkwODhmMzkxN2U1NmUxZGZlZDQ1NTVhNmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCkBA
IC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiTG9hZFRpbWluZy5oIgogI2luY2x1ZGUgIk5ldHdv
cmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKKyNpbmNsdWRl
ICJSZXNvdXJjZVRpbWluZy5oIgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNDIsMTEgKzQzLDExIEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIGNsYXNzIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nOwogY2xhc3MgUmVzb3VyY2VUaW1pbmc7
CiAKLWNsYXNzIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgZmluYWwgOiBwdWJsaWMgUGVyZm9y
bWFuY2VFbnRyeSB7CitjbGFzcyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIDogcHVibGljIFBl
cmZvcm1hbmNlRW50cnkgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8UGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZz4gY3JlYXRlKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1p
bmcmJik7CiAKLSAgICBjb25zdCBBdG9tU3RyaW5nJiBpbml0aWF0b3JUeXBlKCkgY29uc3QgeyBy
ZXR1cm4gbV9pbml0aWF0b3JUeXBlOyB9CisgICAgY29uc3QgU3RyaW5nJiBpbml0aWF0b3JUeXBl
KCkgY29uc3QgeyByZXR1cm4gbV9yZXNvdXJjZVRpbWluZy5pbml0aWF0b3IoKTsgfQogICAgIGNv
bnN0IFN0cmluZyYgbmV4dEhvcFByb3RvY29sKCkgY29uc3Q7CiAKICAgICBkb3VibGUgd29ya2Vy
U3RhcnQoKSBjb25zdDsKQEAgLTYxLDI3ICs2MiwyMSBAQCBwdWJsaWM6CiAgICAgZG91YmxlIHJl
cXVlc3RTdGFydCgpIGNvbnN0OwogICAgIGRvdWJsZSByZXNwb25zZVN0YXJ0KCkgY29uc3Q7CiAg
ICAgZG91YmxlIHJlc3BvbnNlRW5kKCkgY29uc3Q7CisKICAgICBjb25zdCBWZWN0b3I8UmVmPFBl
cmZvcm1hbmNlU2VydmVyVGltaW5nPj4mIHNlcnZlclRpbWluZygpIGNvbnN0IHsgcmV0dXJuIG1f
c2VydmVyVGltaW5nOyB9CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBU
eXBlOjpSZXNvdXJjZTsgfQotICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAicmVzb3VyY2UiX3M7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBl
KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KKyAgICBBU0NJSUxp
dGVyYWwgZW50cnlUeXBlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gInJlc291cmNlIl9zOyB9
CiAKLXByaXZhdGU6Citwcm90ZWN0ZWQ6CiAgICAgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyhN
b25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYpOwogICAgIH5QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nKCk7CiAKICAgICBkb3VibGUgbmV0d29ya0xvYWRUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKFNlY29uZHMpIGNvbnN0OwogCi0gICAgQXRvbVN0cmluZyBtX2luaXRp
YXRvclR5cGU7CiAgICAgTW9ub3RvbmljVGltZSBtX3RpbWVPcmlnaW47Ci0gICAgTG9hZFRpbWlu
ZyBtX2xvYWRUaW1pbmc7Ci0gICAgTmV0d29ya0xvYWRNZXRyaWNzV2l0aG91dE5vblRpbWluZ0Rh
dGEgbV9uZXR3b3JrTG9hZE1ldHJpY3M7Ci0gICAgYm9vbCBtX3Nob3VsZFJlcG9ydERldGFpbHM7
CisgICAgY29uc3QgUmVzb3VyY2VUaW1pbmcgbV9yZXNvdXJjZVRpbWluZzsKICAgICBWZWN0b3I8
UmVmPFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gbV9zZXJ2ZXJUaW1pbmc7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29u
c3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzUmVz
b3VyY2UoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKaW5kZXggNDZhOGYwZjI1
MTFjZWI1YzBjN2RkMzExNmMyZjhmYTc3ZmM4ZDdkZC4uZjA2NTY2ZDVlMGZhN2UxZmQwYjQ1OTdm
MTBiNWYyMmVmNjZhMTZkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuaWRsCkBAIC01MCw2ICs1MCwxMSBAQCB0eXBlZGVmIGRvdWJsZSBE
T01IaWdoUmVzVGltZVN0YW1wOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01IaWdoUmVzVGlt
ZVN0YW1wIHJlcXVlc3RTdGFydDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NSGlnaFJlc1Rp
bWVTdGFtcCByZXNwb25zZVN0YXJ0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01IaWdoUmVz
VGltZVN0YW1wIHJlc3BvbnNlRW5kOworCisgICAgLy8gTm90ZTogdHJhbnNmZXJTaXplLCBlbmNv
ZGVkQm9keVNpemUsIGFuZCBkZWNvZGVkQm9keVNpemUgYXJlIGludGVudGlvbmFsbHkgb21pdHRl
ZAorICAgIC8vIGJlY2F1c2Ugb2YgcHJpdmFjeSBjb25jZXJucyBzdWNoIGFzIGh0dHBzOi8vZ2l0
aHViLmNvbS93M2MvcmVzb3VyY2UtdGltaW5nL2lzc3Vlcy8yMzgKKworICAgIC8vIGh0dHBzOi8v
d3d3LnczLm9yZy9UUi9zZXJ2ZXItdGltaW5nLyNleHRlbnNpb24tdG8tdGhlLXBlcmZvcm1hbmNl
cmVzb3VyY2V0aW1pbmctaW50ZXJmYWNlCiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9U2VydmVyVGlt
aW5nXSByZWFkb25seSBhdHRyaWJ1dGUgRnJvemVuQXJyYXk8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1p
bmc+IHNlcnZlclRpbWluZzsKIAogICAgIFtEZWZhdWx0XSBvYmplY3QgdG9KU09OKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDczNmQzZDE1
YTkyMTlkMmQwYTdlYzE4NDUxODVkOTM5NTAzZjcwNjMuLjAzNDIwMTE3ODIwNDI3ZTViYjM0ZjRm
ZGQ3Zjk4YWNmZmJmMWE0MjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGlt
ZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJs
ZWRGZWF0dXJlcy5oCkBAIC0xODQsNiArMTg0LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0U2Vy
dmljZVdvcmtlckVuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9zZXJ2aWNlV29ya2VyRW5hYmxl
ZCA9IGlzRW5hYmxlZDsgfQogI2VuZGlmCiAKKyAgICBib29sIHBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZ0FQSUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3BlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZ0FQSUVuYWJsZWQ7IH0KKyAgICB2b2lkIHNldFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZ0FQSUVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fcGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nQVBJRW5hYmxlZCA9IGVuYWJsZWQ7IH0KKyAgICAKICAgICB2b2lkIHNldENTU0xvZ2ljYWxF
bmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1fQ1NTTG9naWNhbEVuYWJsZWQgPSBpc0VuYWJsZWQ7
IH0KICAgICBib29sIGNzc0xvZ2ljYWxFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9DU1NMb2dp
Y2FsRW5hYmxlZDsgfQogCkBAIC0zMzUsNiArMzM4LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAg
ICAgYm9vbCBtX0NTU0xvZ2ljYWxFbmFibGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1fcGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nQVBJRW5hYmxlZCB7IGZhbHNlIH07CiAKICAgICAvLyBGYWxz
ZSBieSBkZWZhdWx0IHVudGlsIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMTEzNTEgLwogICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS93M2MvY3Nzd2ctZHJhZnRzL2lz
c3Vlcy8zMjU3IGhhdmUgYmVlbiBzb3J0ZWQgb3V0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwCmluZGV4IDlmZjIzMzYy
MzA0NWE4OTk0NDU1MmQ4MmJmM2E3MmYxMjFiZDk4NzUuLjE0Nzc0ZjIzMjMyN2UxMTk4ZTM3NGJj
MTg3NmFhOWU3OWM5NjhjYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhhbmRsZS5jcHAKQEAgLTYzNCw3ICs2MzQsNyBAQCBzdGF0
aWMgdm9pZCBkb05vdGlmeUZpbmlzaChCbG9iUmVzb3VyY2VIYW5kbGUmIGhhbmRsZSkKICAgICBp
ZiAoIWhhbmRsZS5jbGllbnQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaGFuZGxlLmNsaWVu
dCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZoYW5kbGUpOworICAgIGhhbmRsZS5jbGllbnQoKS0+ZGlk
RmluaXNoTG9hZGluZygmaGFuZGxlLCB7IH0pOwogfQogCiB2b2lkIEJsb2JSZXNvdXJjZUhhbmRs
ZTo6bm90aWZ5RmluaXNoKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oCmluZGV4IGQ3MTA3YWE0NTY3ODE3YmUzYTVmNzkyMDQ0
MzA2ZmVmNzBiOWJjYTEuLjE2OTY1ZWU5YTUxN2E0NTU5NjE1MzY3Njc5NmY5OWJjYjM2ZjI1ZDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRN
ZXRyaWNzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9h
ZE1ldHJpY3MuaApAQCAtMjAwLDcgKzIwMCw3IEBAIHB1YmxpYzoKIH07CiAKICNpZiBQTEFURk9S
TShDT0NPQSkKLUJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29u
bmVjdGlvbiAqLCBOU1VSTFJlc3BvbnNlICopOworQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29w
eVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICopOwogV0VCQ09SRV9FWFBPUlQgQm94PE5ldHdv
cmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxTZXNzaW9uVGFza1RyYW5zYWN0aW9u
TWV0cmljcyAqaW5jb21wbGV0ZU1ldHJpY3MpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaAppbmRleCA5
YTgwZTExM2ZiNDgyODI5NGQ3YWZmY2FlMDI5ZWYwY2FmODVkZDE1Li5mYmEwMjMzYmVmYTJjZDRj
MTYxNGY3MDU2YjRiMDc1Mzc5MzFlY2VmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUNsaWVudC5oCkBAIC00NCw2ICs0NCw3IEBA
IE9CSkNfQ0xBU1MgTlNDYWNoZWRVUkxSZXNwb25zZTsKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNs
YXNzIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOwogY2xhc3MgQ3JlZGVudGlhbDsKK2NsYXNzIE5l
dHdvcmtMb2FkTWV0cmljczsKIGNsYXNzIFByb3RlY3Rpb25TcGFjZTsKIGNsYXNzIFJlc291cmNl
SGFuZGxlOwogY2xhc3MgUmVzb3VyY2VFcnJvcjsKQEAgLTY3LDcgKzY4LDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNo
YXIqLCB1bnNpZ25lZCwgaW50IC8qZW5jb2RlZERhdGFMZW5ndGgqLykgeyB9CiAgICAgV0VCQ09S
RV9FWFBPUlQgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVCdWZmZXIoUmVzb3VyY2VIYW5kbGUqLCBS
ZWY8U2hhcmVkQnVmZmVyPiYmLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOwogICAgIAotICAgIHZp
cnR1YWwgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKikgeyB9CisgICAgdmly
dHVhbCB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBOZXR3b3Jr
TG9hZE1ldHJpY3MmKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRs
ZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgd2FzQmxvY2tl
ZChSZXNvdXJjZUhhbmRsZSopIHsgfQogICAgIHZpcnR1YWwgdm9pZCBjYW5ub3RTaG93VVJMKFJl
c291cmNlSGFuZGxlKikgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuY3BwCmluZGV4IGM3YzEyY2U4ZTc1
MWE1MmJiNDUxN2RkMDJkNmY1OGFkZTY5MTIwZWQuLjJhN2Y4ODQxMWI0YTEzOTViN2YzMTYwMDIx
NjJhZTkzNzFmNGZlYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuY3BwCkBAIC03Niw3ICs3Niw3IEBA
IHZvaWQgU3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFu
ZGxlKiwgY29uc3QgY2hhciogZGF0YSwKICAgICBtX2RhdGEuYXBwZW5kKGRhdGEsIGxlbmd0aCk7
CiB9CiAKLXZvaWQgU3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VIYW5kbGUqIGhhbmRsZSkKK3ZvaWQgU3luY2hyb25vdXNMb2FkZXJDbGllbnQ6OmRpZEZp
bmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJikKIHsKICAgICBtX21lc3NhZ2VRdWV1ZS0+a2lsbCgpOwogI2lmIFBMQVRGT1JNKENPQ09B
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91
c0xvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJv
bm91c0xvYWRlckNsaWVudC5oCmluZGV4IDhkMmE5NzcxOTMxNGZjODkyNWMyMmRiZmRlYzU4ZWY5
MmIzMjdkYzQuLmY4OGRmZjdmOTM1YjYzNTVlYTI3MTA0YWFlNWU0MmNmNmI0MjRkNTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJD
bGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50LmgKQEAgLTY3LDcgKzY3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFJl
Y2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9u
c2VBc3luYyhSZXNvdXJjZUhhbmRsZSosIFJlc291cmNlUmVzcG9uc2UmJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291
cmNlSGFuZGxlKiwgY29uc3QgY2hhciosIHVuc2lnbmVkLCBpbnQgLyplbmNvZGVkRGF0YUxlbmd0
aCovKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUq
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoUmVz
b3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAjaWYgVVNFKFBS
T1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKICAgICB2b2lkIGNhbkF1dGhlbnRpY2F0ZUFn
YWluc3RQcm90ZWN0aW9uU3BhY2VBc3luYyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFByb3RlY3Rp
b25TcGFjZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIG92ZXJyaWRlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRs
ZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25E
ZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAKaW5kZXggM2M4MmJjM2I0YzY4NTliOGJhOTRh
MzJiZTlhNDI2YTgzOTk2ZWM1MC4uMjRkMTQ4NTgyMDVlMTIyZDJmYmVkZjFhMzkzZDdhODBlY2Yy
YzgxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNv
dXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZV
UkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwCkBAIC0zMiw2ICszMiw3
IEBACiAjaW5jbHVkZSAiQXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaCIKICNpbmNsdWRlICJMb2dn
aW5nLmgiCiAjaW5jbHVkZSAiTUlNRVR5cGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIk5ldHdvcmtM
b2FkTWV0cmljcy5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlLmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VIYW5kbGVDbGllbnQuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCkBAIC0y
MzgsNyArMjM5LDcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRl
V2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRGaW5pc2hMb2FkaW5nKCkKIAogICAgICAgICBMT0coTmV0
d29yaywgIkNGTmV0IC0gUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhP
cGVyYXRpb25RdWV1ZTo6ZGlkRmluaXNoTG9hZGluZyhoYW5kbGU9JXApICglcykiLCBoYW5kbGUs
IGhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCkudXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAK
LSAgICAgICAgaGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUpOworICAg
ICAgICBoYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKGhhbmRsZSwgTmV0d29ya0xv
YWRNZXRyaWNzIHsgfSk7CiAgICAgICAgIGlmIChwcm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1
ZSkgewogICAgICAgICAgICAgcHJvdGVjdGVkVGhpcy0+bV9tZXNzYWdlUXVldWUtPmtpbGwoKTsK
ICAgICAgICAgICAgIHByb3RlY3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlID0gbnVsbHB0cjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya0xv
YWRNZXRyaWNzLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3
b3JrTG9hZE1ldHJpY3MubW0KaW5kZXggNWIzYzg5OGJkMzAyN2RkZDU3MjQ5MTY2YWMxNGJlZWIx
ZTcwN2IyYS4uNjRhZWE0ZmQ1MmY5ZDVlMmUzZDBiMzljNjMyMGRjOTZhN2ZkYTdmMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1l
dHJpY3MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3
b3JrTG9hZE1ldHJpY3MubW0KQEAgLTY3LDcgKzY3LDcgQEAgQm94PE5ldHdvcmtMb2FkTWV0cmlj
cz4gY29weVRpbWluZ0RhdGEoTlNVUkxTZXNzaW9uVGFza1RyYW5zYWN0aW9uTWV0cmljcyAqaW5j
b20KICAgICApOwogfQogCi1Cb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShO
U1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rpb24sIE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKQorQm94
PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25u
ZWN0aW9uKQogewogICAgIE5TRGljdGlvbmFyeSAqdGltaW5nRGF0YSA9IFtjb25uZWN0aW9uIF90
aW1pbmdEYXRhXTsKICAgICBpZiAoIXRpbWluZ0RhdGEpCkBAIC04OSw3ICs4OSw3IEBAIEJveDxO
ZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVj
dGlvbiwgTlNVUkxSZXNwb25zCiAgICAgICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0RhdGEsIEAiX2tD
Rk5UaW1pbmdEYXRhUmVxdWVzdFN0YXJ0IiksCiAgICAgICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0Rh
dGEsIEAiX2tDRk5UaW1pbmdEYXRhUmVzcG9uc2VTdGFydCIpLAogICAgICAgICB0aW1pbmdWYWx1
ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YUNvbm5lY3Rpb25SZXVzZWQiKSwKLSAgICAg
ICAgcmVzcG9uc2UuVVJMLnNjaGVtZQorICAgICAgICBjb25uZWN0aW9uLmN1cnJlbnRSZXF1ZXN0
LlVSTC5zY2hlbWUKICAgICApOwogfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxl
Z2F0ZS5jcHAKaW5kZXggNWI4MjdkZWIwNTc4NWUzNGQxN2RkMjk5ZDk2MTQ2MjI4MDY2Y2M4OC4u
ZTU2NGEwY2U2NjYxNGE0OWExMDMxMzY4ODUxYzRkYTg4MjM1MmE2MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVn
YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJl
c291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCkBAIC0xNTIsNyArMTUyLDcgQEAgdm9pZCBDdXJsUmVz
b3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZFJlY2VpdmVCdWZmZXIoQ3VybFJlcXVlc3QmLCBS
ZWY8U2hhcmVkQnUKICAgICBjbGllbnQoKS0+ZGlkUmVjZWl2ZUJ1ZmZlcigmbV9oYW5kbGUsIFdU
Rk1vdmUoYnVmZmVyKSwgYnVmZmVyLT5zaXplKCkpOwogfQogCi12b2lkIEN1cmxSZXNvdXJjZUhh
bmRsZURlbGVnYXRlOjpjdXJsRGlkQ29tcGxldGUoQ3VybFJlcXVlc3QmLCBOZXR3b3JrTG9hZE1l
dHJpY3MmJikKK3ZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRDb21wbGV0
ZShDdXJsUmVxdWVzdCYsIE5ldHdvcmtMb2FkTWV0cmljcyYmIG1ldHJpY3MpCiB7CiAgICAgQVNT
RVJUKGlzTWFpblRocmVhZCgpKTsKIApAQCAtMTYwLDcgKzE2MCw3IEBAIHZvaWQgQ3VybFJlc291
cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRDb21wbGV0ZShDdXJsUmVxdWVzdCYsIE5ldHdvcmtM
b2FkTWV0cmljCiAgICAgICAgIHJldHVybjsKIAogICAgIEN1cmxDYWNoZU1hbmFnZXI6OnNpbmds
ZXRvbigpLmRpZEZpbmlzaExvYWRpbmcobV9oYW5kbGUpOwotICAgIGNsaWVudCgpLT5kaWRGaW5p
c2hMb2FkaW5nKCZtX2hhbmRsZSk7CisgICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoJm1f
aGFuZGxlLCBXVEZNb3ZlKG1ldHJpY3MpKTsKIH0KIAogdm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVE
ZWxlZ2F0ZTo6Y3VybERpZEZhaWxXaXRoRXJyb3IoQ3VybFJlcXVlc3QmLCBSZXNvdXJjZUVycm9y
JiYgcmVzb3VyY2VFcnJvciwgQ2VydGlmaWNhdGVJbmZvJiYpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3Bw
CmluZGV4IDhmMTc1YjY1NDJlYTJmMGM4NjhmNzAxZDU2MjgwNGJmN2UyZmQ1OTcuLmM3ZTFhMjRm
ZTk1NTllOThmNWJjNTZmZjIyNzAwYTFlNGFlNTkzMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3Bw
CkBAIC0zOSw2ICszOSw3IEBACiAjaW5jbHVkZSAiQ3VybFJlcXVlc3QuaCIKICNpbmNsdWRlICJI
VFRQUGFyc2Vycy5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJOZXR3b3JrTG9h
ZE1ldHJpY3MuaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRl
ICJSZXNvdXJjZUhhbmRsZUludGVybmFsLmgiCiAjaW5jbHVkZSAiU2FtZVNpdGVJbmZvLmgiCkBA
IC01ODIsNyArNTgzLDcgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZTo6aGFuZGxlRGF0YVVSTCgpCiAg
ICAgfQogCiAgICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9h
ZGluZyh0aGlzKTsKKyAgICAgICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcodGhpcywgeyB9
KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25R
dWV1ZURlbGVnYXRlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2Vi
Q29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tCmluZGV4IGQ0OTc4
NjBkODc0NWNjMjIyNWZkMTNlZTZkMGQzMjgyNjc0YTVjYTYuLjhhNDBiNjAxN2VhMDk5ZTk4MWQ2
OWQxZjI5ODU4ZTExOTE1NDFkODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0
ZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVz
b3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KQEAgLTM4LDYgKzM4LDcgQEAK
ICNpbXBvcnQgIlN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgiCiAjaW1wb3J0ICJXZWJDb3JlVVJM
UmVzcG9uc2UuaCIKICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg+CisjaW1wb3J0
IDxwYWwvc3BpL2NvY29hL05TVVJMQ29ubmVjdGlvblNQSS5oPgogI2ltcG9ydCA8d3RmL0Jsb2Nr
UHRyLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogCkBAIC0yNTIsNyArMjUzLDcgQEAg
QUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKICAgICAgICAgUmVzb3VyY2VS
ZXNwb25zZSByZXNvdXJjZVJlc3BvbnNlKHIuZ2V0KCkpOwogICAgICAgICByZXNvdXJjZVJlc3Bv
bnNlLnNldFNvdXJjZShSZXNvdXJjZVJlc3BvbnNlOjpTb3VyY2U6Ok5ldHdvcmspOwotICAgICAg
ICByZXNvdXJjZVJlc3BvbnNlLnNldERlcHJlY2F0ZWROZXR3b3JrTG9hZE1ldHJpY3MoY29weVRp
bWluZ0RhdGEoY29ubmVjdGlvbi5nZXQoKSwgci5nZXQoKSkpOworICAgICAgICByZXNvdXJjZVJl
c3BvbnNlLnNldERlcHJlY2F0ZWROZXR3b3JrTG9hZE1ldHJpY3MoY29weVRpbWluZ0RhdGEoY29u
bmVjdGlvbi5nZXQoKSkpOwogCiAgICAgICAgIG1faGFuZGxlLT5kaWRSZWNlaXZlUmVzcG9uc2Uo
V1RGTW92ZShyZXNvdXJjZVJlc3BvbnNlKSwgW3NlbGYsIHByb3RlY3RlZFNlbGYgPSBXVEZNb3Zl
KHByb3RlY3RlZFNlbGYpXSB7CiAgICAgICAgICAgICBtX3NlbWFwaG9yZS5zaWduYWwoKTsKQEAg
LTMxNCwxMSArMzE1LDIxIEBAIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAog
CiAgICAgTE9HKE5ldHdvcmssICJIYW5kbGUgJXAgZGVsZWdhdGUgY29ubmVjdGlvbkRpZEZpbmlz
aExvYWRpbmc6JXAiLCBtX2hhbmRsZSwgY29ubmVjdGlvbik7CiAKLSAgICBhdXRvIHdvcmsgPSBb
c2VsZiA9IHNlbGYsIHByb3RlY3RlZFNlbGYgPSByZXRhaW5QdHIoc2VsZildICgpIG11dGFibGUg
eworICAgIGF1dG8gd29yayA9IFtzZWxmID0gc2VsZiwgcHJvdGVjdGVkU2VsZiA9IHJldGFpblB0
cihzZWxmKSwgY29ubmVjdGlvbiA9IHJldGFpblB0cihjb25uZWN0aW9uKV0gKCkgbXV0YWJsZSB7
CiAgICAgICAgIGlmICghbV9oYW5kbGUgfHwgIW1faGFuZGxlLT5jbGllbnQoKSkKICAgICAgICAg
ICAgIHJldHVybjsKIAotICAgICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRp
bmcobV9oYW5kbGUpOworICAgICAgICBpZiAoYXV0byBtZXRyaWNzID0gY29weVRpbWluZ0RhdGEo
Y29ubmVjdGlvbi5nZXQoKSkpIHsKKyAgICAgICAgICAgIGRvdWJsZSByZXNwb25zZUVuZFRpbWUg
PSBbW1tjb25uZWN0aW9uIF90aW1pbmdEYXRhXSBvYmplY3RGb3JLZXk6QCJfa0NGTlRpbWluZ0Rh
dGFSZXNwb25zZUVuZCJdIGRvdWJsZVZhbHVlXTsKKyAgICAgICAgICAgIG1ldHJpY3MtPnJlc3Bv
bnNlRW5kID0gU2Vjb25kcyhyZXNwb25zZUVuZFRpbWUgPD0gMCA/IG1ldHJpY3MtPnJlc3BvbnNl
U3RhcnQudmFsdWUoKSA6IHJlc3BvbnNlRW5kVGltZSAtIG1ldHJpY3MtPmZldGNoU3RhcnQudmFs
dWUoKSk7CisgICAgICAgICAgICBtZXRyaWNzLT5tYXJrQ29tcGxldGUoKTsKKyAgICAgICAgICAg
IG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSwgKm1ldHJpY3Mp
OworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVtcHR5
TWV0cmljczsKKyAgICAgICAgICAgIGVtcHR5TWV0cmljcy5tYXJrQ29tcGxldGUoKTsKKyAgICAg
ICAgICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSwgZW1w
dHlNZXRyaWNzKTsKKyAgICAgICAgfQorCiAgICAgICAgIGlmIChtX21lc3NhZ2VRdWV1ZSkgewog
ICAgICAgICAgICAgbV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICAgICAgICAgICAgIG1fbWVzc2Fn
ZVF1ZXVlID0gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQppbmRleCBmMzVjNWYzYTY1M2RlMGJj
ZDE0NGRlY2E1Njg1MjdhZWE3MGQ1NGJmLi43MjYxNWFjOWNmYzY3ZDU4OGY4NzFlMzdhNTQzNDk1
OThiYzM3NGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29h
L05ldHdvcmtTZXNzaW9uQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCkBAIC03OTAsNyArNzkwLDEwIEBAIHN0YXRp
YyBpbmxpbmUgdm9pZCBwcm9jZXNzU2VydmVyVHJ1c3RFdmFsdWF0aW9uKE5ldHdvcmtTZXNzaW9u
Q29jb2EmIHNlc3Npb24sIFNlCiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29r
dXBTdGFydCA9IFNlY29uZHMoZG9tYWluTG9va3VwU3RhcnRJbnRlcnZhbCk7CiAgICAgICAgIG5l
dHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBFbmQgPSBTZWNvbmRzKGRvbWFpbkxvb2t1cEVu
ZEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCA9IFNl
Y29uZHMoY29ubmVjdFN0YXJ0SW50ZXJ2YWwpOwotICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3Mu
c2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gU2Vjb25kcyhzZWN1cmVDb25uZWN0aW9uU3RhcnRJbnRl
cnZhbCk7CisgICAgICAgIGlmIChtLnJldXNlZENvbm5lY3Rpb24gJiYgW20ucmVzcG9uc2UuVVJM
LnNjaGVtZSBpc0VxdWFsVG9TdHJpbmc6QCJodHRwcyJdKQorICAgICAgICAgICAgbmV0d29ya0xv
YWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFdlYkNvcmU6OnJldXNlZFRMU0Nvbm5l
Y3Rpb25TZW50aW5lbDsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbmV0d29ya0xvYWRNZXRy
aWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA9IFNlY29uZHMoc2VjdXJlQ29ubmVjdGlvblN0YXJ0
SW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA9IFNlY29u
ZHMoY29ubmVjdEVuZEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVl
c3RTdGFydCA9IFNlY29uZHMocmVxdWVzdFN0YXJ0SW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MucmVzcG9uc2VTdGFydCA9IFNlY29uZHMocmVzcG9uc2VTdGFydEludGVydmFs
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvUGluZ0hh
bmRsZS5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmgK
aW5kZXggMTc1OTU0Yzk4ZjQ2NjJjYjNkYWZlMDBjZmFjNGZmOGM5NWFiNGU3NS4uMDkyOWNlZjk3
ODljMGNjZjExYTNlOTQxMGY1ZGU2ZmZjYWZlYmE2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmgKKysrIGIvU291cmNlL1dlYktpdExl
Z2FjeS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmgKQEAgLTc0LDcgKzc0LDcgQEAgcHJpdmF0
ZToKICAgICAgICAgcGluZ0xvYWRDb21wbGV0ZSh7IH0sIHJlc3BvbnNlKTsKICAgICB9CiAgICAg
dm9pZCBkaWRSZWNlaXZlQnVmZmVyKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlKiwgUmVmPFdlYkNv
cmU6OlNoYXJlZEJ1ZmZlcj4mJiwgaW50KSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoKTsgfQot
ICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSopIGZpbmFs
IHsgcGluZ0xvYWRDb21wbGV0ZSgpOyB9CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdlYkNv
cmU6OlJlc291cmNlSGFuZGxlKiwgY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJikg
ZmluYWwgeyBwaW5nTG9hZENvbXBsZXRlKCk7IH0KICAgICB2b2lkIGRpZEZhaWwoV2ViQ29yZTo6
UmVzb3VyY2VIYW5kbGUqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiBlcnJvcikgZmlu
YWwgeyBwaW5nTG9hZENvbXBsZXRlKGVycm9yKTsgfQogICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGUqKSBmaW5hbCB7IHJldHVybiBtX3No
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlOyB9CiAgICAgdm9pZCB0aW1lb3V0VGltZXJGaXJlZCgp
IHsgcGluZ0xvYWRDb21wbGV0ZShXZWJDb3JlOjpSZXNvdXJjZUVycm9yIHsgU3RyaW5nKCksIDAs
IG1fY3VycmVudFJlcXVlc3QudXJsKCksICJMb2FkIHRpbWVkIG91dCJfcywgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvcjo6VHlwZTo6VGltZW91dCB9KTsgfQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJl
bmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlv
bnMuY3BwCmluZGV4IGQxYjUxYzYxZmUwZDhmNTU2Mzg5ZDc4OWI2ZmNlZWMxNWZiYTRkMGQuLmI3
ZjgxZDFjZmQ1Zjk2Yzg1NjhlMTJlMDM5OWIyZjg0NDk5YjFkNTcgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9UZXN0T3B0aW9ucy5jcHAKQEAgLTkyLDYgKzkyLDcgQEAgY29uc3QgVGVzdEZlYXR1cmVzJiBU
ZXN0T3B0aW9uczo6ZGVmYXVsdHMoKQogICAgICAgICAgICAgeyAiTlBBUElQbHVnSW5zRW5hYmxl
ZEZvclRlc3RpbmdJbldlYktpdExlZ2FjeSIsIHRydWUgfSwKICAgICAgICAgICAgIHsgIk5lZWRz
U3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrIiwgZmFsc2UgfSwKICAgICAgICAgICAgIHsg
Ik9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCIsIHRydWUgfSwKKyAgICAgICAgICAg
IHsgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQiLCB0cnVlIH0sCiAgICAg
ICAgICAgICB7ICJSZXF1aXJlc1VzZXJHZXN0dXJlRm9yQXVkaW9QbGF5YmFjayIsIGZhbHNlIH0s
CiAgICAgICAgICAgICB7ICJSZXF1aXJlc1VzZXJHZXN0dXJlRm9yTWVkaWFQbGF5YmFjayIsIGZh
bHNlIH0sCiAgICAgICAgICAgICB7ICJSZXF1aXJlc1VzZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFj
ayIsIGZhbHNlIH0sCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RPcHRp
b25zLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMuY3BwCmluZGV4IDQ2
OTAxMzY1MzdhYTI4M2VmZmFlNWQxZjk1MTQxMTYxZmE4YmU5MTEuLjg3NjM4ODYzYTE5YjI0NWFi
NTIxZWRiMWIwYTZmYmE5ODdhOGExZmQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvVGVzdE9wdGlvbnMuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlv
bnMuY3BwCkBAIC0xMDIsNiArMTAyLDcgQEAgY29uc3QgVGVzdEZlYXR1cmVzJiBUZXN0T3B0aW9u
czo6ZGVmYXVsdHMoKQogICAgICAgICAgICAgeyAiT2Zmc2NyZWVuQ2FudmFzRW5hYmxlZCIsIHRy
dWUgfSwKICAgICAgICAgICAgIHsgIk9mZnNjcmVlbkNhbnZhc0luV29ya2Vyc0VuYWJsZWQiLCB0
cnVlIH0sCiAgICAgICAgICAgICB7ICJQYWdlVmlzaWJpbGl0eUJhc2VkUHJvY2Vzc1N1cHByZXNz
aW9uRW5hYmxlZCIsIGZhbHNlIH0sCisgICAgICAgICAgICB7ICJQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmdBUElFbmFibGVkIiwgdHJ1ZSB9LAogICAgICAgICAgICAgeyAiUGx1Z2luc0VuYWJs
ZWQiLCB0cnVlIH0sCiAgICAgICAgICAgICB7ICJSZXF1aXJlc1VzZXJHZXN0dXJlRm9yQXVkaW9Q
bGF5YmFjayIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJSZXF1aXJlc1VzZXJHZXN0dXJlRm9y
TWVkaWFQbGF5YmFjayIsIGZhbHNlIH0sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggY2VjNGExZTNhMGE5MjBmMDg1MTFlMThj
ZWQ3ZjA2YmNkYzIzMjg3Yi4uYzRmN2NhYTQxMWQ1NTQwOTdmODkxMDZiMjE5ZGM3YmUwNDIxODZk
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIxLTA1LTE4ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmln
YXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4K
KworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgIEFubm95aW5nbHkgc2VjdXJl
X2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMuaHRtbCBiZWNvbWVzIGZsYWt5IHdpdGgg
YSBjb3JyZWN0IGltcGxlbWVudGF0aW9uIGJlY2F1c2UgaXQgYXNzdW1lcworICAgICAgICB0aGF0
IG5vIGNvbm5lY3Rpb24gaXMgcmV1c2VkLiAgSG93ZXZlciwgd2hlbiBydW5uaW5nIHRoaXMgdGVz
dCBhZnRlciBvdGhlciB0ZXN0cywgYW5vdGhlciBjb25uZWN0aW9uIGlzIG9mdGVuIHJldXNlZC4K
KyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2Vy
dmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZv
cm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVu
dGZ1bC1wYWludC5odG1sOgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1v
YnNlcnZlci1hcGktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wZXJm
b3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZvcm1hbmNl
LWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzOgorICAgICAgICAqIHBsYXRmb3JtL21hYy13
azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICBOZXh0IGhvcCBw
cm90b2NvbCBpc24ndCBpbXBsZW1lbnRlZCBpbiBSZXNvdXJjZUhhbmRsZS4gIFRoYXQncyBwcm9i
YWJseSBubyBiaWcgZGVhbCBiZWNhdXNlIFdlYktpdExlZ2FjeSBpcyBkZXByZWNhdGVkIGFuZCBu
b3QgdXNlZCBieSBTYWZhcmkuCisKIDIwMjEtMDUtMTggIFJvYmVydCBKZW5uZXIgIDxqZW5uZXJA
YXBwbGUuY29tPgogCiAgICAgICAgIERpc2FibGUgV2ViU1FMIGluIFdlYktpdFRlc3RSdW5uZXIK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDYxOGUyZDMyMDU5NWJmOGIwMWFmOThj
NzZkM2JkOTNkNjU0MWY1M2UuLjFmODRiNDg0NGU3MjQyNGJlY2EzZTFkYjcxMmNiNjQzNmIzNjc0
ZjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyOSBAQAorMjAy
MS0wNS0xOCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisg
ICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1l
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50
ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlh
X2RvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qczoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbDogQWRkZWQuCisgICAgICAg
IFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIHdlIGhhdmUgbm90IGltcGxlbWVudGVkIHRyYW5zZmVy
U2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFzIG5vdGVkIGluIFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbDogQWRkZWQuCisgICAgICAgIFRoaXMg
dGVzdCBmYWlscyBiZWNhdXNlIHdlIGhhdmUgbm90IGltcGxlbWVudGVkIHRyYW5zZmVyU2l6ZSwg
ZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFzIG5vdGVkIGluIFBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuaWRsCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3Vt
ZW50X29wZW4uaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50
X3JlcGxhY2VkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2Fj
Y2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJs
ZV9mcm9tX3RoZV9zdGFydC5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1l
bnQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVf
cmVsb2FkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdp
bi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICBUaGlzIHRlc3QgZmFpbHMgYmVjYXVzZSBv
dXIgdGVzdCBpbmZyYXN0cnVjdHVyZSBkb2Vzbid0IHN1cHBvcnQgbG9hZGluZyBmcm9tIHd3dy5s
b2NhbGhvc3QuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5o
dG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3Bh
cnRpYWxfb3B0X2luLmh0bWwuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2lu
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGZhaWxzIGJlY2F1c2Ugb3VyIHRlc3Qg
aW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBwb3J0IGxvYWRpbmcgZnJvbSB3d3cubG9jYWxob3N0
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
bm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgdGVzdCBmYWlsdXJlIG5l
ZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci5odG1sOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3RfeHNlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNl
IG91ciB0ZXN0IGluZnJhc3RydWN0dXJlIGRvZXNuJ3Qgc3VwcG9ydCBsb2FkaW5nIGZyb20gd3d3
LmxvY2FsaG9zdC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2Vz
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlsdXJlIG5lZWRzIGZ1
cnRoZXIgaW52ZXN0aWdhdGlvbi4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0
aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhh
cm5lc3MuanM6CisgICAgICAgICh0ZXN0X25hbWVzcGFjZSk6CisgICAgICAgICh0ZXN0X2F0dHJp
YnV0ZV9leGlzdHMpOgorICAgICAgICAodGVzdF9lbnVtKToKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2Uu
aHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRt
bDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgVGhpcyB0ZXN0IGhhcyBiZWVuIG1hcmtlZCBhcyBmbGFreS4gIEl0IG5lZWRzIHRvIGJl
IGZpeGVkIHRvIG5vdCByZWx5IG9uIG5vIGluaXRpYWwgY29ubmVjdGlvbiByZXVzZS4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmln
YXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9h
ZC5odG1sOiBBZGRlZC4KKyAgICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMgZnVydGhlciBp
bnZlc3RpZ2F0aW9uLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2Ft
ZS1vcmlnaW4tY2hlY2suaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvTUVUQS55bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55
LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBfdGltZW91dCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZs
YWctb2JzZXJ2ZXIuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9n
ZXQtaW52YWxpZC1lbnRyaWVzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qczogQWRkZWQuCisgICAg
ICAgIChhc3luYyBpZGxfYXJyYXkpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnkuanM6
IEFkZGVkLgorICAgICAgICAocHJvbWlzZV90ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25v
dC1jbG9uYWJsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzOiBBZGRlZC4K
KyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBfdGltZW91dCk6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29u
LmFueS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qczogQWRk
ZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVz
LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanM6IEFk
ZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFu
eS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanM6IEFkZGVk
LgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanM6IEFkZGVkLgorICAgICAg
ICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10
eXBlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
cmVzb3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRz
LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVu
dHJ5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qczogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNl
cy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qczogQWRkZWQuCisgICAgICAgIChj
YXRjaCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0
IGZhaWx1cmUgbmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0aW9uLiAgSXQncyBhIGJpbmRpbmdzIGdl
bmVyYXRpb24gcHJvYmxlbSBJJ3ZlIHVuc3VjY2Vzc2Z1bGx5IGxvb2tlZCBpbnRvIGJlZm9yZS4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnkuanM6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnku
d29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzOiBBZGRlZC4KKyAgICAg
ICAgKHRlc3RUaW1lUmVzb2x1dGlvbik6CisgICAgICAgICh0aW1lQnlVc2VyVGltaW5nKToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdp
dGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9y
bWFuY2Utb2JzZXJ2ZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1l
eHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgZXhpc3RpbmcgdGVzdCBmYWlsdXJlIG5lZWRzIG1v
cmUgaW52ZXN0aWdhdGlvbi4gIFdlIGFyZSBwcm9iYWJseSBjbG9zZSB0byBhIGZpeCBhZnRlciB0
aGlzIHBhdGNoLgorCiAyMDIxLTA1LTE4ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIFRlbXBvcmFyaWx5IHJldmVydCByMjc2NTkyIGFzIGl0IGJyZWFr
cyBzb21lIG5hdGl2ZSBhcHBzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA2ZTA3ZTk3ZjZhNjk2Njkx
MjQwZjY1Y2FmNjdlNDM2OWNmZGMwYzljLi40Nzg5NWRmZGRhZGQ3ZWE1MDA3OTQxY2E1ZjQxN2E2
ZTc0NTRjNDE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTkzOSw2ICs5MzksNyBAQCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5k
d2ljaC1uby1UQU8uc3ViLgogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJj
ZS10aW1pbmcvY29ycy1wcmVmbGlnaHQuYW55Lmh0bWwgWyBGYWlsdXJlIFBhc3MgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY3Jvc3NvcmlnaW4tc2Fu
ZHdpY2gtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3JpZ2luLXNhbmR3aWNoLXBhcnRpYWwt
VEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8u
aHR0cHMuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbWVkaWFjYXB0dXJlLXN0cmVhbXMvTWVkaWFTdHJlYW0tZGVmYXVsdC1mZWF0dXJlLXBv
bGljeS5odHRwcy5odG1sIFsgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIF0KIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXJlY29yZC9wYXNzdGhyb3VnaC9NZWRp
YVJlY29yZGVyLXBhc3N0aHJvdWdoLmh0dHBzLmh0bWwgWyBGYWlsdXJlIFRpbWVvdXQgUGFzcyBd
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
ZmIwZTBmMWY2N2E5YzZhYTJlN2U5MjFiMDllODVmOGQ5NzBiMjkwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9NRVRBLnltbApAQCAtMCwwICsxLDUgQEAKK3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1
Yi5pby9uYXZpZ2F0aW9uLXRpbWluZy8KK3N1Z2dlc3RlZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVn
YXIKKyAgLSBpZ3JpZ29yaWsKKyAgLSB5b2F2d2Vpc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMjhjMTBjZTM2YzNj
NzQ0ODQ4OTdlNWQyNGRhZmY5MTczOTVlYjU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21f
aW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAor
RGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgaW1hZ2UgZG9jdW1lbnQgaGFzIHBvc2l0
aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZl
IG9uIGltYWdlIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2lt
YWdlX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjM2NzQyZjBlZmY2ZDA3YzdjMDY5NGIwNjZkZmEwMTdmMGQxMDQyYmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5o
dG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBk
b21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudC48L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIg
Lz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0
d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5j
X3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1lbnQiKTsKKyAgICAgICAg
ZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0
aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9z
aXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwv
c2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAg
ICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUg
ZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0iLi4vaW1hZ2VzL3NtaWxl
eS5wbmciIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zN2Y2NzJkYjgyNzM0
OTk2YmFhNmQ0MTJkNjE5Y2VmN2JkYjgxZWNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21f
aW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAor
RGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgbWVkaWEgZG9jdW1lbnQgaGFzIHBvc2l0
aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0IGRvbUludGVyYWN0aXZl
IG9uIG1lZGlhIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21l
ZGlhX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmU0ZTQ1NzI1ZDgzNjA1YjUxOWNlNzRlYThmZjQ1NjFkY2QzZDc1OTUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC5o
dG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+VGVzdCBk
b21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudC48L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIg
Lz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2h0bWwuc3BlYy53aGF0
d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVhZC1tZWRpYSIvPgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgY29uc3QgdCA9IGFzeW5j
X3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1lbnQiKTsKKyAgICAgICAg
ZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25zdCB0aW1pbmcgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLmRvbUludGVyYWN0
aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJhY3RpdmUgdG8gYmUgcG9z
aXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfQorICAgIDwv
c2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAg
ICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUtdmFsdWUg
ZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0iLi4vbWVkaWEvQTQubXA0
IiBvbmxvYWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZyYW1lPgorICAgIDwvYm9keT4KKzwvaHRtbD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mu
d2luZG93LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qcwppbmRleCA4Y2MzNTQ2YjNjMjdh
OWQ5M2VlNTYyMTU4NGQ4M2Q1NmEzMDg1MTNjLi43MmNmMGMzYTNkM2M4Y2I3NzU0MTYyNWEwNTU0
ZDg0NjRkN2MxMTJiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKQEAgLTEsMjEgKzEsMjAgQEAKIC8vIE1FVEE6IHNj
cmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcwogLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJj
ZXMvaWRsaGFybmVzcy5qcworLy8gTUVUQTogdGltZW91dD1sb25nCiAKICd1c2Ugc3RyaWN0JzsK
IAogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvCiAKIGlkbF90ZXN0
KAotICBbJ25hdmlnYXRpb24tdGltaW5nJ10sCi0gIFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZv
cm1hbmNlLXRpbWVsaW5lJywgJ2hyLXRpbWUnLCAnZG9tJ10sCi0gIGlkbF9hcnJheSA9PiB7Ci0g
ICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsKKyAgWyduYXZpZ2F0aW9uLXRpbWluZycsICdoci10
aW1lJ10sCisgIFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJywgJ2Rv
bScsICdodG1sJ10sCisgIGlkbEFycmF5ID0+IHsKKyAgICBpZGxBcnJheS5hZGRfb2JqZWN0cyh7
CiAgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3JtYW5jZSddLAogICAgICAgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uOiBbJ3BlcmZvcm1hbmNlLm5hdmlnYXRpb24nXSwKICAgICAgIFBlcmZvcm1hbmNl
VGltaW5nOiBbJ3BlcmZvcm1hbmNlLnRpbWluZyddLAotICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOiBbCi0gICAgICAgICdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIilbMF0nCi0gICAgICBdCisgICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
IFsncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdJ10KICAgICB9
KTsKICAgfQogKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3Qt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uOGIyM2I3NjA1ZDkyMmRhMzg3MmFiNTZkY2ZlYWM1ODNjMmVlNDJiMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2IHRpbWluZyAyIGluc3Rh
bmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5hdiB0aW1pbmcgMiBpbnN0
YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhlIHZhbHVlcyBhcmUgY29y
cmVjdCkuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFy
ZSBvYnNlcnZhYmxlLiBhc3NlcnRfdHJ1ZTogRXhwZWN0ZWQgYXR0cmlidXRlOiBkZWNvZGVkQm9k
eVNpemUuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhp
c3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iNjA0OGUwNjFiYTA1N2NkOTcxYjA4ZTAzMmJlNzE3ZjBhZDA0
ZDBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5o
dG1sCkBAIC0wLDAgKzEsNjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRp
b24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxl
PSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5r
IHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmct
Mi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hl
YWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxw
PlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbiBvYnNlcnZl
IG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhhdCB0aGUgZXhwZWN0ZWQgYXR0cmlidXRlcyBp
biBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3QgKGJ1dCBkb2VzIG5vdCB2YWxpZGF0ZSB0aGF0
IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLjwvcD4KKworICAgICAgICA8c2NyaXB0PgorICAgICAg
ICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAnY29ubmVjdEVuZCcs
CisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdkZWNvZGVkQm9keVNp
emUnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAgICdkb21Db250ZW50
TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0
JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAnZG9tYWluTG9v
a3VwRW5kJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAn
ZHVyYXRpb24nLAorICAgICAgICAgICAgJ2VuY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAn
ZW50cnlUeXBlJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAgICdpbml0
aWF0b3JUeXBlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2xv
YWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICduYW1lJywKKyAgICAgICAgICAgICduZXh0SG9w
UHJvdG9jb2wnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3Jl
ZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdy
ZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdy
ZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAg
ICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAg
ICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAg
ICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0
KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBlbnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJp
ZXMoKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwg
MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUaGVyZSBzaG91bGQgYmUgb25seSBvbmUgbmF2
aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ldIGluIGVu
dHJpZXNbMF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGF0dHJpYnV0
ZTogIiArIG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ldICsgIi4iKTsKKyAgICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAg
ICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAp
OworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9u
Il19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgZW50cmll
cyBhcmUgb2JzZXJ2YWJsZS4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmI0OTlmOGFlZGRjOWJmMzZlM2ViNTFjYjY4YjY5Nzc4ODgyMGIwMmIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRo
YXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBh
dHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBl
Y3RlZCB2YWx1ZXMuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0
YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIGFzc2VydF90cnVlOiBFeHBlY3RlZCB0cmFuc2Zl
clNpemUgdG8gYmUgZ3JlYXRlciB0aGFuIGVuY29kZWRCb2R5U2l6ZSBpbiB1bmNhY2hlZCBuYXZp
Z2F0aW9uLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192
YWx1ZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OTgwOWU0MWRkZDdmNjhiMWQzZmE2OTc5Y2EwZDZmYjE1
MzhhNGU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1
ZXMuaHRtbApAQCAtMCwwICsxLDEzNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8
aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIg
dGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAg
PGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRp
bWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+
CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGlt
aW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWlu
IG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuPC9wPgorCisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgIC8vIEhvc3QgbmFtZXMgYW5kIHBvcnRzIG1heSBiZSBjb25m
aWd1cmVkIGF0IHRlc3QgZXhlY3V0aW9uIHRpbWUuIFRoZQorICAgICAgICAvLyB3ZWItcGxhdGZv
cm0tdGVzdHMgc2VydmVyIG9mZmVycyB0d28gbWVjaGFuaXNtcyBmb3IgcmV0cmlldmluZyB0aGVz
ZQorICAgICAgICAvLyB2YWx1ZXMgZHluYW1pY2FsbHk6IGRpcmVjdCB0ZXh0IHN1YnN0aXR1dGlv
biBhbmQgdGhlIGBnZXQtaG9zdC1pbmZvYAorICAgICAgICAvLyBzY3JpcHQuIFRoZSBmb3JtZXIg
aXMgaW5hcHByb3ByYXRlIGZvciB0aGlzIHRlc3QgYmVjYXVzZSBpdAorICAgICAgICAvLyBpbmZs
dWVuY2VzIHRoZSBzaXplIG9mIHRoZSBkb2N1bWVudCwgYW5kIHRoaXMgdGVzdCBpbmNsdWRlcyBz
dGF0aWMKKyAgICAgICAgLy8gYXNzZXJ0aW9ucyBmb3IgdGhhdCB2YWx1ZS4KKyAgICAgICAgdmFy
IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKKyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0g
Imh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJTkFMX0hPU1QgKyAiOiIgKworICAgICAgICAgICAg
aG9zdF9pbmZvLkhUVFBfUE9SVCArCisgICAgICAgICAgICAiL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIjsKKyAgICAgICAgdmFyIG5hdlRpbWluZzJF
dmVudE9yZGVyMSA9IFsKKyAgICAgICAgICAgICdzdGFydFRpbWUnLAorICAgICAgICAgICAgJ3Jl
ZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAg
ICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRFbmQnLAorICAg
ICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywK
KyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFy
dCcsCisgICAgICAgICAgICAvLydzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAg
J2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAn
cmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAg
J2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAg
ICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2
ZW50T3JkZXIyID0gWworICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAg
J3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAg
ICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcKKyAgICAgICAg
XTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIzID0gWworICAgICAgICAgICAg
J2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAg
ICAgICAgICAgICdjb25uZWN0RW5kJworICAgICAgICBdOworCisgICAgICAgIC8vIE5hdmlnYXRp
b24gVGltaW5nIGF0dHJpYnV0ZXMgZm9yIGNvbXBhcmlzb24uCisgICAgICAgIHZhciBuYXZUaW1p
bmcxRXZlbnRPcmRlciA9IFsKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAg
ICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAg
ICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcsCisg
ICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywK
KyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisg
ICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcK
KyAgICAgICAgXTsKKworICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2
ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CisgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsrKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3Ry
dWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPD0gdGltaW5nRW50cnlbZXZlbnRPcmRlcltp
ICsgMV1dLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50T3JkZXJbaV0g
KyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltpICsgMV0gKyAiLiIpOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
CisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAg
ICAgICAgICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICJu
YXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBlbnRyeVR5cGUg
dG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZW50cmllc1swXS5uYW1lLCBleHBlY3RlZFVybCk7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cmllc1swXS5zdGFydFRpbWUsIDAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAiRXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlOiAwLiIpOworICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZHVyYXRpb24sIGVudHJpZXNbMF0ubG9hZEV2ZW50RW5k
LAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGR1cmF0aW9uIHRvIGJlIGVxdWFs
IHRvIGxvYWRFdmVudEVuZC4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyaWVzWzBdLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICJFeHBlY3RlZCBpbml0aWF0b3JUeXBlIHRvIGJlOiBuYXZpZ2F0aW9uLiIpOworICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0ubmV4dEhvcFByb3RvY29s
LCAiaHR0cC8xLjEiKTsKKyAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyB0ZXN0IG1heSBmYWls
IHdoZW4gcmVzcG9uc2UgaXMgZnJvbSBjYWNoLiBEaXNhYmxlIG9yIGNsZWFuIGNhY2ggYmVmb3Jl
CisgICAgICAgICAgICAgICAgICAgIC8vIHJ1bm5pbmcgdGhpcyB0ZXN0LgorICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZShlbnRyaWVzWzBdLnRyYW5zZmVyU2l6ZSA+IGVudHJpZXNbMF0u
ZW5jb2RlZEJvZHlTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHRyYW5z
ZmVyU2l6ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5h
dmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1sw
XS5lbmNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGVudHJpZXNbMF0uZGVjb2RlZEJvZHlTaXplLCA1OTU1KTsKKyAgICAgICAgICAgICAgICAg
ICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRl
cjEpOworICAgICAgICAgICAgICAgICAgICAvLyBWZXJpZnkgaWYgdGhlIHJlcG9ydGVkIHRpbWlu
ZyBpcyBub3QgdGhhdCBkaWZmZXJlbnQKKyAgICAgICAgICAgICAgICAgICAgLy8gZnJvbSB3aGF0
IGlzIHJlcG9ydGVkIGJ5IE5hdmlnYXRpb24gVGltaW5nIDEuCisgICAgICAgICAgICAgICAgICAg
IG5hdlRpbWluZzFFdmVudE9yZGVyLmZvckVhY2goCisgICAgICAgICAgICAgICAgICAgICAgZnVu
Y3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nW2V2ZW50XSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgPiAwKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cmllc1swXVtldmVudF0sIDAsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2ZW50ICsgIiB0byBi
ZSBncmVhdGVyIHRoYW4gMCIpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgLy8gV2hlbiB1bmxvYWRFdmVudCBo
YXBwZW5zCisgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBdWyJ1bmxvYWRFdmVudFN0
YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRP
cmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjIpOworICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gYSBzZWN1cmUgdHJhbnNwb3J0IGlz
IHVzZWQKKyAgICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInNlY3VyZUNvbm5lY3Rp
b25TdGFydCJdICE9IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2
ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIzKTsKKyAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAg
ICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZp
Z2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcg
aW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9v
cGVuLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQu
dHh0CmluZGV4IDQ5OTk5ZDg5NDExMDQ5NzliMzI2YTdmZmE2Yjg5MDE4NWE4ZmE2OGUuLjA1ZjIz
MGI5ZmIwZmFiOGQ4ZDdjYjU4NWVjOTg1YzIwODExMTlmZDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2Rv
Y3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdF
OiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1p
bmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2
YWxpZGF0ZXMgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KSByZW1haW5zIGNvbnN0YW50IHdoZW4gYSBkb2N1bWVudCBpcyByZXBsYWNlZCB1c2luZyBkb2N1
bWVudC5vcGVuLgpAQCAtOSw2ICs4LDUgQEAgVGhlIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUg
Y2hlY2tzIHRvIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24KIAogCiAK
LUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ld
XScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Bl
bi5odG1sCmluZGV4IGJjMDZlZDU4NDBhNzU1NWQxZTJhNjI1ODBjZjVhOTg4Y2E1OGE3MTguLmFh
MTA5NzI0OGRkMTMzZTVlNjFiMTdjNmY5MmYxNDM3NTc5YjU4OGMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVu
dF9vcGVuLmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgICA8c2Ny
aXB0PgorICAgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAg
ICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAgICAgICAg
ICdjb25uZWN0RW5kJywKICAgICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0CmluZGV4IGE5N2M4NmJj
YjRmNjdmNTI0YjFiY2UzODk4Y2U1ZWQzMDc0NzhjYmUuLjM1YTU2YTNmZTU3NzI5ODFiZGMyYmM1
YWNlMDc5M2MxMDMxMjVmZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3Jl
cGxhY2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNl
ZC1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTEgQEAKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAt
IGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAx
IG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5s
b2FkIGhhbmRsZXIocykKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRo
aXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhIFBlcmZvcm1hbmNlTmF2aWdhdGluZ1RpbWluZyBjb3Jy
ZXNwb25kaW5nIHRvIGEgZGV0YWNoZWQgZG9jdW1lbnQgY2FuJ3QgYWNjZXNzIGEgZGlmZmVyZW50
IGRvY3VtZW50J3Mgc3RhdGUuCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEu
dHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3Vt
ZW50X3JlcGxhY2VkLmh0bWwKaW5kZXggYjkxMGY0NTNkMTI5NTFkMDFjYjU4NDg5OTc2NmI2NGZl
MDhlODM2Yy4uNTk3MmYyMGU5YmQ3ZmZkZjI3ZDMyYjViMzBiNjM5MTNjZWVlZWQwOSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCkBAIC04LDYgKzgsOCBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUg
fSk7CisKICAgICAgICAgICAgIHZhciBuYXZpZ2F0aW9uX2ZyYW1lOwogICAgICAgICAgICAgdmFy
IHBudDE7CiAgICAgICAgICAgICB2YXIgc3RlcCA9IDE7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3Jl
bW92ZWQtZXhwZWN0ZWQudHh0CmluZGV4IGI1ZjhiZWVmMzlmNjA5OTUyMzI0M2VjZTE5OWJkZGZi
ZDAxZjE2OTEuLjk3NzNkZGE1OWIzZmNhNmI4OGYzNDY4OGRjNjg4MTRiMDc3ZDU3OTkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CkBAIC00LDUgKzQsNSBAQCBE
ZXNjcmlwdGlvbgogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6dHlwZSgpJ3MgZGVmYXVsdCB2YWx1ZSBpcyBuYXZpZ2F0ZQogCiAKLUZBSUwgTmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQgdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ3BudC50eXBlJykKK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0
YXJ0LWV4cGVjdGVkLnR4dAppbmRleCA2YzMxYWZkMGIyOWIxMGU5Mzg4YjRmYzIxOTczY2UyYzZl
MTRjYTIwLi4zNzdjZTk4NjgwNmE0OWYyODFjNjFlYzE2YjBmMTEyMWNiMWRkZTMwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21f
dGhlX3N0YXJ0LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29uYWJsZSB2YWx1ZXMuCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQuaHRtbAppbmRleCA3NzkwMDgxZDAxYzdiODI2MmM1MzRkMzk1MDg1NjkwZWJlMmRmZmU4
Li5hZDUwYzZhODdkMmI0NjYyOTdkYzBmMmViY2VmOTJhMzc2NTViMDEzIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1s
CkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIHRlc3QoZnVuY3Rpb24oKSB7CiAgIHZhciBuYXZp
Z2F0aW9uVGltaW5nMiA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCduYXZp
Z2F0aW9uJylbMF07Ci0gIGFzc2VydF90cnVlKG5hdmlnYXRpb25UaW1pbmcyICE9PSB1bmRlZmlu
ZWQpOworICBhc3NlcnRfbm90X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMiwgdW5kZWZpbmVkKTsK
ICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5lbnRyeVR5cGUsICJuYXZpZ2F0aW9u
Iik7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvblRpbWluZzIuc3RhcnRUaW1lLCAwKTsKICAg
YXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5pbml0aWF0b3JUeXBlLCAibmF2aWdhdGlv
biIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTE4NDg2MjkxNTAxYjVjYzRmMTcxMDMwMTY1ZDk2ZTA0YzdhZmVjYgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZm
ZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJk
b2N1bWVudCIpCisKKworUEFTUyBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVz
IGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4KKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGZiZmI0YTMwNjI1
NDI0ZThlODQyZWIyYjgwNjJkYTRlM2U4OTMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKQEAgLTAsMCArMSw3OCBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgi
PgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAg
ICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29n
bGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3Lncz
Lm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48
L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1p
bmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8
aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQg
bmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQg
YWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
L2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVu
dCIpPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBob3N0X2luZm8gPSBnZXRf
aG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJodHRwOi8vIiArIGhvc3Rf
aW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhvc3RfaW5mby5IVFRQX1BP
UlQgKyAiL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRt
bCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdj
b25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2Rl
Y29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAg
J2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRl
ZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAg
ICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAg
ICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAg
ICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAg
ICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAg
ICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAg
ICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAg
ICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAg
ICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6
ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAor
ICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0
JworICAgICAgICBdOworCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAg
ICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIGluc3RhbmNlMSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXTsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMiA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMyA9
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwpWzBdOworCisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmln
YXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwpLmxlbmd0aCwgMSwg
IkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIp
OworCisgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0
dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwgaW5zdGFuY2UyW25hdlRp
bWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0
aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGluc3RhbmNl
MVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGluc3RhbmNlM1tuYXZUaW1pbmcyQXR0cmlidXRl
c1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIG9ic2Vy
dmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAg
ICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZl
KHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0sICJQZXJmb3JtYW5j
ZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUg
ZGlmZmVyZW50IGFjY2Vzc29ycy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYTdmMzU2ZGYxMTZjOTI1NzI2MjkwODNlMDkxMDgwNDZjNzkxMjc5NAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw0IEBACisKKworUEFTUyBuYXZpZ2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlm
cmFtZSBVUkwgY2hhbmdlcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9p
ZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjBjMTQ0YmRhNDU0YmU4NjE4MGJiZmJhNTAzYzRkMWRhOTQ1NzMzZTQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbApAQCAtMCwwICsxLDQw
IEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8bWV0YSBjaGFyc2V0
PXV0Zi04PgorICAgIDx0aXRsZT5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcubmFtZSB1cGRh
dGVkIGluIGlmcmFtZXM8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlw
dD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbiAodCkgeworICB2YXIgaWZyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQo
aWZyKTsKKworICBpZnIuc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIjsKKyAg
YXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9ubG9hZCA9IGZ1bmN0aW9u
KCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdh
dGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1lLCBpZnIu
Y29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdhdGlvbiBuYW1lIG1hdGNo
ZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3RydWUoaWZyLmNvbnRlbnRX
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUu
ZW5kc1dpdGgoImJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1lIGlzIGJs
YW5rX3BhZ2VfZ3JlZW4uaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7CisK
KworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgc2V0VGltZW91dChyZXNvbHZlLCAx
MDApOyB9KTsKKyAgaWZyLnNyYyA9InJlc291cmNlcy9ibGFua19wYWdlX3llbGxvdy5odG1sIjsK
KworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVu
Y3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBu
YXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRX
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUs
IGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUg
bWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29u
dGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0u
bmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1l
IGlzIGJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKTsKKyAgICAgIHJlc29sdmUoKTsKKyAgICB9Cisg
IH0pOworfSwgIm5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBjaGFuZ2Vz
Iik7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0CmluZGV4IDRiMjBl
YzZmOWIyMDhjNzNkODVhOTQ0ZDg5YTFiN2I4ZDg0MGVhOTAuLmVkYWE5Mjg4YTlhZmI2ZTJjY2Nh
MWM0MzdkNWRhY2E1OWZmYWFmYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRl
X3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDcgQEAKLUNPTlNPTEUg
TUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAndGltaW5nW3Byb3BlcnR5XScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1bWVu
dCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS4KIAogCi1IYXJuZXNzIEVycm9yIChG
QUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIg
V1BUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVu
dC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKaW5k
ZXggZjM5Y2EwNTc2OTU1OTk5ZWNhOGEwODMzMWU1NWNjMjkyNTgxNmYzNi4uNzVlNmUxMTNiNmRi
YTM2ODdkZjFjOGZkYmY5Yzk4M2E5ZmFlOGE2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKQEAgLTEzLDYgKzEzLDggQEAKICAgICAgICAgPHA+VGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGFsbCBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSBhdHRyaWJ1dGVzIHJlbWFpbiB1bmNoYW5nZWQgYWZ0
ZXIgYW4gaW4gZG9jdW1lbnQgbmF2aWdhdGlvbiAoVVJMIGZyYWdtZW50IGNoYW5nZSkuPC9wPgog
CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVl
IH0pOworCiAgICAgICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCiAgICAgICAg
ICAgICAgICAgJ2Nvbm5lY3RFbmQnLAogICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1l
eHBlY3RlZC50eHQKaW5kZXggOWUyY2FhNjIwZjVhZGViOWRhZGE0YzgyZGQxZDY4MzdjY2E3ZjEy
NS4uMmMwNDYzMGJhZTE1NmRhNzllMDUwMTdmM2ViYTU5YmNmYzlhN2FhNCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQu
dHh0CkBAIC0xLDYgKzEsNyBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxv
YWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQgaGFu
ZGxlcihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAt
IGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKK2ZyYW1lICI8IS0tZnJhbWUxLS0+IiAtIGhhcyAx
IG9udW5sb2FkIGhhbmRsZXIocykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMg
dGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0udHlwZSB3aXRoIGEgZm9yd2FyZCBhbmQgYmFjayBuYXZpZ2F0aW9uLgpAQCAtMTMs
NiArMTQsNSBAQCBUaGlzIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIHRoZSB3
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZQogCiAKIAotSGFybmVzcyBFcnJvciAo
RkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCmlu
ZGV4IGM0YjU3NTgxMDY5MTEwM2RiNjljNjEwYjllYzY5NDI1MTEwZDc2MzUuLmQwMDQ1NDE1Yjg5
YzQ1ZWQ5YTFhODg5ZThiZTBhYmM4MTIzMDkyZDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUg
fSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmMzMGRjZTQ0ZDgzMTEwMzdjYjVjNzljZTI5MTlmMzA2ZmI0MGE2
YTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2
aWdhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLgorCisKK1BBU1MgTmF2
aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9uYXZpZ2F0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVmYWVmMWVjMGJiYjg4ZTVmYjE1YzJh
MzFmZDVmOTMzYzE2YTA5ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4K
KyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5v
cmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvI3NlYy1uYXZpZ2F0aW9uLXRpbWluZy1pbnRlcmZhY2Ui
Lz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlM
aXN0LmdldEVudHJpZXMoKVswXS50eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0ZWQgbmF2aWdhdGlv
biB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2
ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAg
ICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAg
ICAgICB9LCAiTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICA8L3Nj
cmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPgorICAgICAgICAg
ICAgRGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD4KKyAgICAgICAgICAgIFRoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBuYXZpZ2F0ZS48L3A+CisKKyAgICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVs
b2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQt
ZXhwZWN0ZWQudHh0CmluZGV4IDcxYzQ3ZTViOGRmN2E1MWVlOGViZGU2OThhZTg1NmVhNjcyM2E1
ODAuLmE0ZDZiZGE2ZDQ0OWYxYWUxZjZiYjU4ZGM1ODI2NWUzNmVhYWFlN2IgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CkBAIC0x
LDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScpCiBEZXNjcmlwdGlvbgog
CiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLih0eXBlL3VubG9hZEV2ZW50RW5kL3VubG9h
ZEV2ZW50U3RhcnQpIHdpdGggYSByZWxvYWRlZCBuYXZpZ2F0aW9uLgpAQCAtMTAsNiArOSw1IEBA
IFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLnVu
bG9hZEV2ZW50U3RhcnQgPiAwIGFmdGVyCiBUaGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKS51bmxvYWRFdmVudEVuZCA+IDAgYWZ0ZXIgcmVsb2FkCiAK
IAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScpCi0KK1BBU1Mg
TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X3JlbG9hZC5odG1sCmluZGV4IDc0Yjg1YzlkYmI1ZTAzMjY2YzBiYTAxNDVhZDQ1ZDY3YTAyNWZk
MGMuLjBmMDNmMDdjNTdjOWMxYWMzYzg2ODc0MWEyM2Q5ZjJlNmViYjJiMmIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2Ny
aXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDog
dHJ1ZSB9KTsKIAogICAgICAgICAgICAgdmFyIHJlbG9hZF9mcmFtZTsKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmln
aW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9m
aW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFkMzg5ODc2MWI4
NzE1MGQwYTc2NWFiMzFjMmU2MTk3NmQ5MjE2MTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQmxvY2tlZCBhY2Nlc3MgdG8gZXh0ZXJuYWwgVVJM
IGh0dHA6Ly93d3cubG9jYWxob3N0Ojg4MDAvY29tbW9uL3JlZGlyZWN0LW9wdC1pbi5weT9sb2Nh
dGlvbj1odHRwOi8vbG9jYWxob3N0Ojg4MDAvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2Js
YW5rX3BhZ2VfZ3JlZW4uaHRtbAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0
aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZv
ciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4gdGhl
IGZpbmFsIGRvY3VtZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uCisKKwor
CitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworTk9UUlVOIE5hdmln
YXRpb24gVGltaW5nIDIgV1BUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmZkZWZhMjAyNTAwYTQ0OTcxNmVhYWI1ZDJkNzU2MTZhYzQ3MzA1YTEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29y
aWdpbmFsX29yaWdpbi5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAg
ICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayBy
ZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIg
Lz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9u
YXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4K
KyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91dGlscy5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVl
IH0pOworCisgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgY29uc3QgZnJhbWVfcGVyZm9ybWFuY2UgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZTsKKyAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlLAorICAgICAgICAgICAgICAgICAgICAibmF2aWdh
dGUiLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJl
IG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQsIDAs
CisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7
CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS5yZWRpcmVjdEVuZCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVj
dGVkIHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgZG9uZSgpOworICAg
ICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlk
YXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZQorICAgICAgICAgICB3aW5k
b3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0
U3RhcnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBu
YXZpZ2F0aW9uIHdoZW4gdGhlIGZpbmFsCisgICAgICAgICAgIGRvY3VtZW50IGlzIHRoZSBzYW1l
IGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uPC9wPgorCisgICAgICAgIDxpZnJhbWUgaWQ9ImZyYW1l
Q29udGV4dCIgc3JjPSIiIHN0eWxlPSJ3aWR0aDogMjUwcHg7IGhlaWdodDogMjUwcHg7Ij48L2lm
cmFtZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIC8vIGNvbWJpbmUgdGhlIHBhZ2Ug
b3JpZ2luIGFuZCByZWRpcmVjdCBvcmlnaW4gaW50byB0aGUgSUZSQU1FJ3Mgc3JjIFVSTAorICAg
ICAgICAgICAgY29uc3QgZGVzdFVybF9maXJzdCA9IG1ha2VfYWJzb2x1dGVfdXJsKHtzdWJkb21h
aW46ICJ3d3ciLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cGF0aDogIi9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5IiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXJ5OiAibG9jYXRpb249IiArIG1ha2VfYWJzb2x1
dGVfdXJsKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAge3BhdGg6ICIvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2Vf
Z3JlZW4uaHRtbCJ9KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfSk7CisgICAgICAgICAgICBjb25zdCBkZXN0VXJsID0gbWFrZV9hYnNvbHV0ZV91cmwoewor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogIi9jb21t
b24vcmVkaXJlY3QucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgZGVzdFVybF9maXJzdH0pOworICAgICAgICAgICAg
bGV0IGZyYW1lQ29udGV4dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQi
KTsKKyAgICAgICAgICAgIGZyYW1lQ29udGV4dC5vbmxvYWQgPSBvbmxvYWRfdGVzdDsKKyAgICAg
ICAgICAgIGZyYW1lQ29udGV4dC5zcmMgPSBkZXN0VXJsOworICAgICAgICA8L3NjcmlwdD4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CmluZGV4
IDcxZWQ0N2ZlMzVhMTQyZTQwZmY0NzkwNWY3Nzg4YTFkYzVhY2EwZmIuLjRlNzlhN2ZkYmEwODYx
NmY5NDUwOGRiZmZlODJjNTY5MDRjNGJiZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0
ZWQudHh0CkBAIC02LDYgKzYsNSBAQCBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2Yg
dGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZwogCiAKIAotSGFy
bmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQg
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVf
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxf
b3B0X2luLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRp
YWxfb3B0X2luLmh0bWwKaW5kZXggYzBkZDI0OTU0NWE2NDBlYzBjZGQ3NTliMjExNGFiNzI1YTYw
OTAzOS4uMGZlYjNiZmE3ZjFjMDEzOGU0YzlmOWUzZmQ0ZDM4M2U1ZWY2NTg1ZCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9v
cHRfaW4uaHRtbApAQCAtOSwxMyArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9
Ii9jb21tb24vdXRpbHMuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgotCi0gICAgICAg
ICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0Vu
dHJ5KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxl
bmd0aCAtIDE7IGkrKykgewotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmdF
bnRyeVtldmVudE9yZGVyW2ldXSA8IHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIgdG8g
YmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7Ci0gICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgfQorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVz
dDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAg
ICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lNzFhZTk0MDQxYWFhYzczOTQzZDIxYzJiNDIzNThmNzk3OWE0ZDJhCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZh
bHVlIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdLnJlZGlyZWN0Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQg
YW5kIHJlZGlyZWN0RW5kIGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9u
LgorCisKK1BBU1MgTmFpdmF0aW9uIHdpdGhvdXQgcmVkaXJlY3RzLgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVj
dF9ub25lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTc0MzdlMWE1ZWYyYjYxYWU2NTc2MmJmYTM1MTYzMGVi
NDcxNGNkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUu
aHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmln
YXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRp
dGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxs
aW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1p
bmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAg
IDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUgb2YgdGhlIHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBh
dHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQgcmVkaXJlY3RFbmQgYXR0cmli
dXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uPC9wPgorCisgICAgICAgIDxzY3Jp
cHQ+CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFy
IG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIg
bmF2VGltaW5nID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
OworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdENv
dW50LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RDb3VudCB0byBiZSAwLiIpOworICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdFN0YXJ0LCAwLCAiRXhwZWN0
ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdEVuZCwgMCwgIkV4cGVjdGVkIHJlZGlyZWN0RW5kIHRv
IGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAg
ICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAg
ICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmln
YXRpb24iXX0pOworCisgICAgICAgIH0sICJOYWl2YXRpb24gd2l0aG91dCByZWRpcmVjdHMuIik7
CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLWV4cGVjdGVkLnR4
dAppbmRleCAwNGEyNDhjZGU1MDFkMjY4OTRiMjIwN2ZlOWFmNWY1NTBkMjBjYmM3Li40ZmIxNWNh
ZmNlN2U2MTcyZWQyZWY5YjlmMTNjODQ3MWY1OTYzZTk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsOSBAQAotQ09OU09MRSBNRVNT
QUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0aW9uX2VudHJ5LnR5cGUnKQorQ09OU09MRSBNRVNTQUdFOiBFcnJvcjogYXNzZXJ0X3Ry
dWU6IEV4cGVjdGVkIHN0YXJ0VGltZSB0byBiZSBubyBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFy
dC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxp
ZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLnJlZGlyZWN0Q291bnQg
YW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVz
IGZvciBhIHNhbWUtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24uCiAKIAog
Ci1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZW50cnkudHlwZScpCi0KK0ZB
SUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgRXJyb3I6IGFzc2VydF90cnVlOiBFeHBlY3RlZCBz
dGFydFRpbWUgdG8gYmUgbm8gZ3JlYXRlciB0aGFuIHJlZGlyZWN0U3RhcnQuIGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZl
ci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKaW5kZXggMWQ3ZjZj
OTI4Y2U2M2M5NGVkYzE0OTFkMjg4M2M4NzMzMWUzODcyMi4uOWVjMjk5MmJlZjU4ZWM2ZTAzMDRm
YjE1Mjg4MTQwNTkwNDFmMzE0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKQEAg
LTksNiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KIAogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0
dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5
VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgewogICAgICAgICAgICAg
ICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKaW5kZXggYTA5MTZj
NDU4YzYyODJkMzFkNTM4NDhkNzlmNTM3NGNlZjQyNzVjNi4uZTgxY2NlZGE5ZWJmM2VkNzU4MzAz
NzI2MTU5OWZkOTkxOTNkMWM4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
eHNlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZl
ci1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZh
bHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAK
IAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BlcmZvcm1hbmNlTmFtZXNwYWNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRp
bWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbAppbmRleCAwNmM5Yjdm
M2I2NzhhMjI3NTFhMWU4ZTFhNTcwMjgyMTZhYjIxODc5Li5kOGFjYzgwNTRkODdhOTcyZDAwNTk2
ZDk3OTQ4NTg0N2NmNmNmNGU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94
c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sCkBA
IC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
c3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxz
LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2lu
Z2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkK
ICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5z
dGFuY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2Vz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzY4YzUwMDQ2NWQ3N2I1ZDFhOTgzYmM0NjZiZTFh
ZGU0N2ZlOTgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9p
bnN0YW5jZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5n
IDIgaW5zdGFuY2UuCisKKworRkFJTCBFYWNoIHdpbmRvdyBoYXMgYSB1bmlxdWUgbmF2IHRpbWlu
ZyAyIGluc3RhbmNlLiBhc3NlcnRfZXF1YWxzOiBPbmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNl
IGV4aXN0cy4gZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3N2FiNmJhZTEwMWI3MDRkMTI2N2U4YjAzNDE2
MDExZjI4ZDY3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gx
PgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFjaCB3aW5kb3cgaGFzIGEg
dW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS48L3A+CisgICAgICAgIDxpZnJhbWUgaWQ9ImZy
YW1lQ29udGV4dCIgc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIiBzdHlsZT0i
ZGlzcGxheTpub25lOyI7PjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0PgorCisgICAgICAgICAg
ICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RF
bmQnLAorICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgICAgICdk
ZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAg
ICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAgICAgJ2Rv
bUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZG9tSW50ZXJhY3Rp
dmUnLAorICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgICAg
ICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAgICAgJ2R1cmF0aW9uJywKKyAgICAg
ICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICAgICAnZW50cnlUeXBl
JywKKyAgICAgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAgICAgJ2luaXRp
YXRvclR5cGUnLAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAg
ICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAor
ICAgICAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVxdWVz
dFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgICAg
ICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0
JywKKyAgICAgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICAgICAndHlw
ZScsCisgICAgICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAn
dW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAg
ICAgICAgXTsKKworICAgICAgICAgICAgZnVuY3Rpb24gbm90X3NhbWVfaW5zdGFuY2UoaW5zdGFu
Y2UxLCBpbnN0YW5jZTIsIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICBmb3IgKHZhciBp
IGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlMVthdHRy
aWJ1dGVzW2ldXSAhPSBpbnN0YW5jZTJbYXR0cmlidXRlc1tpXV0pCisgICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlM
aXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBu
YXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRl
bnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0
aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT25seSBvbmUgbmF2IHRpbWluZyBp
bnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWFpbl9mcmFt
ZV9pbnN0YW5jZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07
CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaWZyYW1lX2luc3RhbmNlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X3RydWUobm90X3NhbWVfaW5zdGFuY2UobWFpbl9mcmFtZV9pbnN0YW5jZSwgaWZy
YW1lX2luc3RhbmNlLCBuYXZUaW1pbmcyQXR0cmlidXRlcyksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIlR3byBuYXYgdGltaW5nIGluc3RhbmNlcyBhcmUgbm90IHRoZSBzYW1lIGluc3Rh
bmNlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAgICB9LCAiRWFjaCB3aW5k
b3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4iKTsKKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjBlYjFmNWZiMjQ0MjAwYzNiZjUwYTVlYWQ4ODZkNzg0Y2NhYjcyOAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitQ
ZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbgorCitOYXZpZ2F0aW9uIHdpbGwgcXVldWUg
YSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgbmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZh
YmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZp
Z2F0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0ZmIyYWZmOGVhYjc0ZTU5YzVhODRmYzJiY2Y0ODdm
MTIyZWM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sCkBAIC0w
LDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRs
ZT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNl
cnZlcnM6IG5hdmlnYXRpb248L2gxPgorPHA+CitOYXZpZ2F0aW9uIHdpbGwgPGEgaHJlZj0iaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNkZm4tcXVldWUtYS1wZXJm
b3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+LgorPC9wPgorPGRpdiBp
ZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAg
ICBmdW5jdGlvbiBjaGVja0VudHJ5KHBlcykgeworICAgICAgYXNzZXJ0X2VxdWFscyhwZXMubGVu
Z3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgZW50cnkiKTsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMocGVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLCAiZW50cnlUeXBlIGlzIFwi
bmF2aWdhdGlvblwiIik7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlc1swXS5uYW1lLCB3aW5kb3cu
bG9jYXRpb24udG9TdHJpbmcoKSwgIm5hbWUgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIGRvY3VtZW50
Iik7CisgICAgfQorICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAor
ICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAg
ICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGNoZWNrRW50
cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSk7CisgICAgICAgICAg
Y2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSh3aW5kb3cubG9jYXRpb24udG9T
dHJpbmcoKSkpOworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKyAgfSwgIm5hdmlnYXRpb24gZW50cnkgaXMgb2Jz
ZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJm
dGVzdGhhcm5lc3MuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMKaW5k
ZXggM2VmYjUyNzgzZjFlNWRjYjBkNDJhYWQxMWFlYzJhOWU0NzI1N2QzMy4uMGMyN2MyZWUzMDdm
NGI4MDk5YTZiNGM1YjA0OTdiYWY1MGI2MTEwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMv
d2VicGVyZnRlc3RoYXJuZXNzLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFy
bmVzcy5qcwpAQCAtNDIsMjUgKzQyLDI1IEBAIGZ1bmN0aW9uIHRlc3RfbmFtZXNwYWNlKGNoaWxk
X25hbWUsIHNraXBfcm9vdCkKIHsKICAgICBpZiAoc2tpcF9yb290ID09PSB1bmRlZmluZWQpIHsK
ICAgICAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UgaXMgZGVmaW5lZCc7Ci0gICAg
ICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFj
ZSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cpOworICAgICAgICB3cF90ZXN0KGZ1bmN0aW9u
ICgpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2UsIHVuZGVmaW5lZCwg
bXNnKTsgfSwgbXNnKTsKICAgICB9CiAKICAgICBpZiAoY2hpbGRfbmFtZSAhPT0gdW5kZWZpbmVk
KSB7CiAgICAgICAgIHZhciBtc2cyID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgY2hpbGRfbmFt
ZSArICcgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90
cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdICE9PSB1bmRlZmluZWQsIG1zZzIp
OyB9LCBtc2cyKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVh
bHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0sIHVuZGVmaW5lZCwgbXNnMik7IH0s
IG1zZzIpOwogICAgIH0KIH0KIAogZnVuY3Rpb24gdGVzdF9hdHRyaWJ1dGVfZXhpc3RzKHBhcmVu
dF9uYW1lLCBhdHRyaWJ1dGVfbmFtZSwgcHJvcGVydGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dp
bmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBhdHRyaWJ1dGVfbmFtZSAr
ICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF90cnVlKHBl
cmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVfbmFtZV0gIT09IHVuZGVm
aW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkg
eyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bYXR0
cmlidXRlX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CiB9CiAK
IGZ1bmN0aW9uIHRlc3RfZW51bShwYXJlbnRfbmFtZSwgZW51bV9uYW1lLCB2YWx1ZSwgcHJvcGVy
dGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25h
bWUgKyAnLicgKyBlbnVtX25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAgICB3cF90ZXN0KGZ1bmN0
aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51
bV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdw
X3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNl
W3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVy
dGllcyk7CiAKICAgICBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSAr
ICcuJyArIGVudW1fbmFtZSArICcgPSAnICsgdmFsdWU7CiAgICAgd3BfdGVzdChmdW5jdGlvbigp
IHsgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJlbnRfbmFtZV1bZW51bV9u
YW1lXSwgdmFsdWUsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CkBAIC0xMjIsNSArMTIyLDUg
QEAgZnVuY3Rpb24gdGVzdF9ncmVhdGVyX29yX2VxdWFscyh2YWx1ZSwgZ3JlYXRlcl90aGFuLCBt
c2csIHByb3BlcnRpZXMpCiAKIGZ1bmN0aW9uIHRlc3Rfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1
YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0
X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAg
ICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyh2YWx1ZSwgbm90ZXF1YWxz
LCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUt
Y29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1j
b25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMTA4
ZDJlODMzNjRhZDE0ZmRmMmEzMDRmN2Q1NDgyODc4MGQ5ZWEyCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZh
bHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
LWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTJhMjU5ZWNkNDI1YzIxMmQ4
OWViMTE0OTgxZDRmMTJlODBmMzA1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29u
bmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorPHRpdGxl
Pk5hdmlnYXRpb24gVGltaW5nIHNlY3VyZWNvbm5lY3Rpb25zdGFydCByZXVzZTwvdGl0bGU+Cis8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
PgorY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQg
dmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVzZWQiKTsKK3dpbmRvdy5hZGRFdmVudExpc3Rl
bmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1bmNfZG9uZShlID0+IHsKKyAgYXNzZXJ0X2VxdWFscyhl
LmRhdGEsICJQQVNTIik7Cit9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMv
c2VjdXJlLWNvbm5lY3Rpb24taW50ZXJpbS5odG1sIj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1
cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Nl
Y3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4
MjIwNGQwNjUxNjY5NTdhYTkwMDk4OWNlYzdkYWNjYWNkZTM4NDg2Li41MTgyNzU4M2FkMzdlMWUx
MmMxYWJmNWYyMWM4Y2U2MjUwZTMxMDBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0
aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9j
b25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUg
QEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBoYXMg
YSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3Rh
cnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2Vu
dHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitGQUlMIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0
aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dyZWF0ZXJfdGhhbjogc2VjdXJlQ29ubmVjdGlv
blN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBn
b3QgMAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0MWEyNWZjNTAuLmQyZWE5
NTA0NzZkOTFiZTU2MDQ2ZDAzM2QxZmNkNjYxZDQ3OTgwZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3Vw
cG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9y
dGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCi1G
QUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLiBhc3NlcnRfdHJ1
ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICduYXZpZ2F0aW9uJyBpbiBQZXJmb3JtYW5jZU9i
c2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1Mg
c3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuCitQQVNTICduYXZpZ2F0
aW9uJyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZhYmxlLgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1
cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1
cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggNTc5
NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uMzQzODM1YTQyODQ1M2UwYjFj
ZjY1ZDg0ZGI4MzNmOTFhYmM4MzYxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdh
dGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25h
dmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDYgQEAKIAot
RkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4gYXNzZXJ0X3Ry
dWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicgaW4gUGVyZm9ybWFuY2VP
YnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitIYXJu
ZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworUEFTUyBzdXBwb3J0ZWRFbnRy
eVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1RJTUVPVVQgJ25hdmlnYXRpb24nIGVudHJp
ZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3QgdGltZWQgb3V0CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50
X29ubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU5YTM4NGE1YmIzNzAwNGU4ZjcwNDI4
NWIzNTJlZWFiNDkxM2NlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9v
bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVj
b2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQg
aW4gdGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMg
aGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCBhc3NlcnRfZ3JlYXRl
cl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKK0ZB
SUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9u
bG9hZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290
IGEgInVuZGVmaW5lZCIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjYzE4NDkx
ZDYyMDI0ZjFkNGZhM2QyMGM1MTczYjMxMzI2OWIzZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKQEAgLTAsMCArMSw0OCBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgor
ICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gYXR0cmlidXRlczwv
dGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iTW96aWxsYSIgaHJlZj0i
aHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNwcm9jZXNzaW5n
LW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9wZXJmb3Jt
YW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+Cisg
ICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMg
dGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNpemUgYW5kIGRl
Y29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hlbiBjaGVja2Vk
IGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVu
dExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAgICAgICAgICBs
ZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnRy
YW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9n
cmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVkQm9keVNpemUs
IDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAgICAgIH0sICJU
ZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29u
dGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCB0LnN0ZXBfZnVu
Y19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJk
ZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVu
Y29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAg
ICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNjciIpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmVuY29kZWRC
b2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAgICAgICAgICAgfSwgIlRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBhIHRhc2sg
YWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkpOworICAgICAgICAgICAgfSwgIlRl
c3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBvbmxvYWQi
KTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQKaW5kZXggZGE1MjYw
YTIyM2QyMmFkMWFjNGQ1ZDI5NzI2YzRhZTI3M2ViMWIyOC4uM2ZlZWFkMWZkZTcyMDMzNzM2ZGVm
MWYwNGU1YjQ3MTA5OGIwZDM4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1v
cmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2FkLWV2ZW50LXNhbWUtb3Jp
Z2luLWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwxNiBAQCBUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgdGhlIHZhbHVlcyBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aQogCiAKIAotRkFJTCBSZWRpcmVjdCBjaGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0
LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgot
RkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUn
KSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQt
aW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnku
dHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQ
cmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3Vt
ZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5
LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9y
aWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBv
cmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3Nz
IG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jv
c3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91
cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRoIFRBTyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCitQQVNT
IFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4KK1BBU1MgUmVkaXJlY3Qg
Y2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BBU1MgU2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0
IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0
IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBv
cmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4KK1BBU1MgTm8gcHJldmlv
dXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1l
IG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3Jp
Z2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2lu
IHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJl
ZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBj
cm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRB
LnltbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvTUVUQS55bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODlmYWUxZGIwZDliN2FmZDIwMjcz
N2UzNDc1NGI0ZTg5MzI5OGQ0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwK
QEAgLTAsMCArMSw0IEBACitzcGVjOiBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2Ut
dGltZWxpbmUvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhlZ2FyCisgIC0gaWdyaWdv
cmlrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnku
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMDhiM2UzMjMxNDY1ODU3Y2YyNDhlNGFjZThlZjU3NDQ2OWExNDg2NAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwpAQCAtMCww
ICsxLDExIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsK
KyAgdC5zdGVwX3RpbWVvdXQoKCkgPT4geworICAgIC8vIEFmdGVyIGEgdGltZW91dCwgUGVyZm9y
bWFuY2VPYnNlcnZlciBzaG91bGQgc3RpbGwgcmVjZWl2ZSBlbnRyeSBpZiB1c2luZyB0aGUgYnVm
ZmVyZWQgZmxhZy4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcih0LnN0ZXBfZnVuY19kb25l
KGxpc3QgPT4geworICAgICAgY29uc3QgZW50cmllcyA9IGxpc3QuZ2V0RW50cmllcygpOworICAg
ICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwgMSwgJ1RoZXJlIHNob3VsZCBiZSAxIG1h
cmsgZW50cnkuJyk7CisgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlUeXBlLCAn
bWFyaycpOworICAgIH0pKS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7
CisgIH0sIDEwMCk7Cit9LCAnUGVyZm9ybWFuY2VPYnNlcnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcg
c2VlcyBlbnRyeSBhZnRlciB0aW1lb3V0Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVk
LWZsYWctb2JzZXJ2ZXIuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFu
eS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zMWRjMzljMTI4YWQ1NWMxM2VlZjY2NTgzYTY4ODg2MjJmODZiZjYz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLW9ic2VydmVyLmFueS5q
cwpAQCAtMCwwICsxLDE1IEBACithc3luY190ZXN0KCB0PT4geworICBmb3IgKGxldCBpID0gMDsg
aSA8IDUwOyBpKyspCisgICAgcGVyZm9ybWFuY2UubWFyaygnZm9vJyArIGkpOworICBsZXQgbWFy
a3NDcmVhdGVkID0gNTA7CisgIGxldCBtYXJrc1JlY2VpdmVkID0gMDsKKyAgbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgbWFya3NSZWNlaXZlZCArPSBsaXN0LmdldEVudHJp
ZXMoKS5sZW5ndGg7CisgICAgaWYgKG1hcmtzQ3JlYXRlZCA8IDEwMCkgeworICAgICAgcGVyZm9y
bWFuY2UubWFyaygnYmFyJyArIG1hcmtzQ3JlYXRlZCk7CisgICAgICBtYXJrc0NyZWF0ZWQrKzsK
KyAgICB9CisgICAgaWYgKG1hcmtzUmVjZWl2ZWQgPT0gMTAwKQorICAgICAgdC5kb25lKCk7Cisg
IH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKK30sICdQZXJmb3Jt
YW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzaG91bGQgc2VlIHBhc3QgYW5kIGZ1dHVy
ZSBlbnRyaWVzLicpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTY5MTkwODE5ZjUzZWI0NTM3ZGEwMTljOTBjYzMzYmQwZGEzZDhkZgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwzIEBACisKK1BBU1MgR2V0IGludmFsaWQgZW50cmllcyBmcm9tIHdvcmtlciBhbmQg
d2luZG93LgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMzZDY1ODllMjc1
ZTI2NTE4MGUwNTcxY2EzMTAzZGJmOWFhMTc5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1bmN0
aW9uKHQpIHsKKyAgcGVyZm9ybWFuY2UubWFyaygnd2luZG93TWFyaycpOworICBjb25zdCB3b3Jr
ZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcyIpOwor
ICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICBhc3NlcnRfZXF1YWxz
KGV2ZW50LmRhdGFbJ2ludmFsaWQnXSwgMCwgJ1RoZSB3b3JrZXIgbXVzdCBoYXZlIDAgaW52YWxp
ZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWFyayddLCAxLCAn
VGhlIHdvcmtlciBtdXN0IGhhdmUgMSBtYXJrIGVudHJ5LicpOworICAgIGFzc2VydF9lcXVhbHMo
ZXZlbnQuZGF0YVsnbWVhc3VyZSddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBtZWFzdXJl
IGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCdpbnZhbGlkJykubGVuZ3RoLCAwLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAg
aW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwgMSwKKyAgICAgICdUaGUgd2luZG93IG11c3QgaGF2
ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoLCAwLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBo
YXZlIDAgbWVhc3VyZSBlbnRyaWVzLicpCisgICAgdC5kb25lKCk7CisgIH0KK30sICdHZXQgaW52
YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cuJyk7Cis8L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnkuanMgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL2lkbGhhcm5lc3MuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMyZWZlYmU5OGZmZDQ3MmVlMTAxMDAy
N2ZmOTY2YTFlZjkwN2YxN2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3Mu
YW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csd29ya2VyCisv
LyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9XZWJJRExQYXJzZXIuanMKKy8vIE1FVEE6IHNjcmlw
dD0vcmVzb3VyY2VzL2lkbGhhcm5lc3MuanMKKworLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lLworCisndXNlIHN0cmljdCc7CisKK2lkbF90ZXN0KAorICBbJ3Bl
cmZvcm1hbmNlLXRpbWVsaW5lJ10sCisgIFsnaHItdGltZScsICdkb20nXSwKKyAgYXN5bmMgaWRs
X2FycmF5ID0+IHsKKyAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMoeworICAgICAgUGVyZm9ybWFu
Y2U6IFsncGVyZm9ybWFuY2UnXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6IFsnb2JzZXJ2
ZXInXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6IFsnZW50cnlMaXN0J10s
CisgICAgfSk7CisKKyAgICBzZWxmLmVudHJ5TGlzdCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNv
bHZlLCByZWplY3QpID0+IHsKKyAgICAgIHNlbGYub2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihyZXNvbHZlKTsKKyAgICAgIG9ic2VydmVyLm9ic2VydmUoeyBlbnRyeVR5cGVzOiBb
J21hcmsnXSB9KTsKKyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3Rlc3QnKTsKKyAgICB9KTsKKyAg
fQorKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZl
cnMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5hbnku
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNWRkNDRmYjE4ZmJkYjljM2MzMmY0NTM4ZDJlZjdlYzJjYWM0NzMwMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZl
cnMuYW55LmpzCkBAIC0wLDAgKzEsMzIgQEAKK3Byb21pc2VfdGVzdCgoKSA9PiB7CisgIC8vIFRo
ZSBmaXJzdCBwcm9taXNlIHdhaXRzIGZvciBvbmUgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byBy
ZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJvbWlzZTEgPSBuZXcgUHJvbWlzZShyZXNvbHZl
MSA9PiB7CisgICAgbGV0IG51bU9ic2VydmVkMSA9IDA7CisgICAgbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoKGVudHJ5TGlzdCwgb2JzKSA9PiB7CisgICAgICAvLyBUaGlzIGJ1ZmZlcmVkIGZsYWcg
b2JzZXJ2ZXIgaXMgY29uc3RydWN0ZWQgYWZ0ZXIgYSByZWd1bGFyIG9ic2VydmVyIGRldGVjdHMg
YSBtYXJrLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAg
IG51bU9ic2VydmVkMSArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChu
dW1PYnNlcnZlZDEgPT0gMykKKyAgICAgICAgICByZXNvbHZlMSgpOworICAgICAgfSkub2JzZXJ2
ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgICAgb2JzLmRpc2Nvbm5lY3Qo
KTsKKyAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbJ21hcmsnXX0pOworICAgIHBlcmZvcm1h
bmNlLm1hcmsoJ2ZvbycpOworICB9KTsKKyAgLy8gVGhlIHNlY29uZCBwcm9taXNlIHdhaXRzIGZv
ciBhbm90aGVyIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgdG8gcmVjZWl2ZSAzIGVudHJpZXMuCisg
IGNvbnN0IHByb21pc2UyID0gbmV3IFByb21pc2UocmVzb2x2ZTIgPT4geworICAgIHN0ZXBfdGlt
ZW91dCgoKSA9PiB7CisgICAgICBsZXQgbnVtT2JzZXJ2ZWQyID0gMDsKKyAgICAgIC8vIFRoaXMg
YnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBhIGRlbGF5IG9mIDEw
MG1zLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgICAgIG51
bU9ic2VydmVkMiArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgICAgIGlmIChudW1P
YnNlcnZlZDIgPT0gMykKKyAgICAgICAgICByZXNvbHZlMigpOworICAgICAgfSkub2JzZXJ2ZSh7
dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgIH0sIDEwMCk7CisgICAgcGVyZm9y
bWFuY2UubWFyaygnYmFyJyk7CisgIH0pOworICBwZXJmb3JtYW5jZS5tYXJrKCdtZW93Jyk7Cisg
IC8vIFBhc3MgaWYgYW5kIG9ubHkgaWYgYm90aCBidWZmZXJlZCBvYnNlcnZlcnMgcmVjZWl2ZWQg
YWxsIDMgbWFyayBlbnRyaWVzLgorICByZXR1cm4gUHJvbWlzZS5hbGwoW3Byb21pc2UxLCBwcm9t
aXNlMl0pOworfSwgJ011bHRpcGxlIFBlcmZvcm1hbmNlT2JzZXJ2ZXJzIHdpdGggYnVmZmVyZWQg
ZmxhZyBzZWUgYWxsIGVudHJpZXMnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mNTQyY2Y3YzRhYWNmMDI5MTY2NWE4ZjQ5NzY1YWRkODg1ZWJjNDJkCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBA
QAorCisKK1BBU1MgVGVzdCB0aGF0IGEgcG9zdE1lc3NhZ2Ugb2YgYSBwZXJmb3JtYW5jZSBlbnRy
eSBmYWlscworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9ub3QtY2xvbmFibGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNjUxNzc2ZTVmNGI5NDUzMjhlOWRlMjY1
MWI4YTU5ZjExYjUzNDI2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUu
aHRtbApAQCAtMCwwICsxLDEwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgIGNvbnN0IHQgPSBh
c3luY190ZXN0KCJUZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5
IGZhaWxzIik7CisgIGFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0LnN0ZXBfZnVuY19kb25l
KGUgPT4geworICAgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIpOworICB9KSk7Cis8L3Nj
cmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbCI+PC9p
ZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEy
ODEwMGIwZmRiYTJlMDA1Nzk4MDlhNTgxOTM1ZDMxMmNmMTI0NWUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwpAQCAtMCwwICsxLDEyIEBA
Cithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nKTsKKyAgLy8gVXNl
IGEgdGltZW91dCB0byBlbnN1cmUgdGhlIHJlbWFpbmRlciBvZiB0aGUgdGVzdCBydW5zIGFmdGVy
IHRoZSBlbnRyeSBpcyBjcmVhdGVkLgorICB0LnN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8g
T2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNldCB0byBmYWxzZSBzaG91bGQgbm90IHNlZSBl
bnRyeS4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoKSA9PiB7CisgICAgICBhc3NlcnRf
dW5yZWFjaGVkKCdTaG91bGQgbm90IGhhdmUgb2JzZXJ2ZWQgYW55IGVudHJ5IScpOworICAgIH0p
Lm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IGZhbHNlfSk7CisgICAgLy8gVXNlIGEg
dGltZW91dCB0byBnaXZlIHRpbWUgdG8gdGhlIG9ic2VydmVyLgorICAgIHQuc3RlcF90aW1lb3V0
KHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4ge30pLCAxMDApOworICB9LCAwKTsKK30sICdQZXJmb3Jt
YW5jZU9ic2VydmVyIHdpdGhvdXQgYnVmZmVyZWQgZmxhZyBzZXQgdG8gZmFsc2UgY2Fubm90IHNl
ZSBwYXN0IGVudHJpZXMuJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnkt
dG9qc29uLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjQ0ZjAxNTZlZWMxOTI0MTk3MDAyOGMyOGU1ODk3YmU0ZDZmMWNiODEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcwpAQCAt
MCwwICsxLDIxIEBACit0ZXN0KCgpID0+IHsKKyAgcGVyZm9ybWFuY2UubWFyaygnbWFya05hbWUn
KTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgnbWVhc3VyZU5hbWUnKTsKKworICBjb25zdCBlbnRy
aWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpOworICBjb25zdCBwZXJmb3JtYW5jZUVudHJ5
S2V5cyA9IFsKKyAgICAnbmFtZScsCisgICAgJ2VudHJ5VHlwZScsCisgICAgJ3N0YXJ0VGltZScs
CisgICAgJ2R1cmF0aW9uJworICBdOworICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVu
Z3RoOyArK2kpIHsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihlbnRyaWVzW2ldLnRvSlNPTiks
ICdmdW5jdGlvbicpOworICAgIGNvbnN0IGpzb24gPSBlbnRyaWVzW2ldLnRvSlNPTigpOworICAg
IGFzc2VydF9lcXVhbHModHlwZW9mKGpzb24pLCAnb2JqZWN0Jyk7CisgICAgZm9yIChjb25zdCBr
ZXkgb2YgcGVyZm9ybWFuY2VFbnRyeUtleXMpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoanNvbltr
ZXldLCBlbnRyaWVzW2ldW2tleV0sCisgICAgICAgIGBlbnRyaWVzWyR7aX1dLnRvSlNPTigpLiR7
a2V5fSBzaG91bGQgbWF0Y2ggZW50cmllc1ske2l9XS4ke2tleX1gKTsKKyAgICB9CisgIH0KK30s
ICdUZXN0IHRvSlNPTigpIGluIFBlcmZvcm1hbmNlRW50cnknKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRl
LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44ZjFiMDliYzM3NzEyMDgwMjQwMWRlMWIyNDdhYTU3ZGI3NDE0
YzY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55Lmpz
CkBAIC0wLDAgKzEsNjYgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5q
cworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgY2FsbGJhY2tDb3VudCA9
IDA7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAg
IHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNhbGxi
YWNrQ291bnQrKzsKKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAxKSB7CisgICAg
ICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAg
ICAgXSk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsi
XX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICAgICAg
ICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMiIpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSAy
KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWwor
ICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAg
ICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3Jl
LWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLW1lYXN1cmUiKTsKKyAgICAgICAgICAgIHNlbGYucGVy
Zm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8t
bWVhc3VyZSIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJt
ZWFzdXJlIl19KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazMiKTsK
KyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTMiKTsKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBpZiAoY2FsbGJhY2tDb3Vu
dCA9PT0gMykgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCksIFsKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3Vy
ZTMifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyay1iZWZv
cmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSJ9LAorICAgICAgICAgICAgXSk7Cisg
ICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNl
cnZlLXN0YXRlLXRvLWJvdGgiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3Vy
ZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tYm90aCIpOworICAgICAg
ICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0p
OworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrNCIpOworICAgICAgICAg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlNCIpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09PSA0KSB7
CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwgWworICAg
ICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLWJlZm9yZS1j
aGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIn0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmU0In0sCisgICAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtYXJrIiwgbmFtZTogIm1hcms0In0sCisgICAgICAgICAgICBdKTsKKyAgICAgICAgICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtZGlzY29ubmVjdCIpOworICAgICAgICAg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1kaXNjb25uZWN0Iik7
CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1hcmsoIm1hcmstYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAgICAgc2Vs
Zi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWFmdGVyLWRpc2Nvbm5lY3QiKTsKKyAgICAg
ICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAg
ICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBjYWxsYmFjayBtdXN0IG5vdCBiZSBpbnZva2Vk
IGFmdGVyIGRpc2Nvbm5lY3RpbmciKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNl
cnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmUxIik7CisgIH0sICJQZXJmb3JtYW5jZU9ic2VydmVyIG1vZGlmaWNhdGlvbnMgaW5zaWRlIGNh
bGxiYWNrIHNob3VsZCB1cGRhdGUgZmlsdGVyaW5nIGFuZCBub3QgY2xlYXIgYnVmZmVyIik7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5h
bnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNlcnZlZC10eXBlcy5hbnku
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uY2FjOTdiZWEwNzU1YzExODI5NTZmZGY5NGM5OGVlNzhjYTQwYjAxNwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVk
LXR5cGVzLmFueS5qcwpAQCAtMCwwICsxLDE5IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFu
Y2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNl
cnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0
aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgLy8gVGhlcmUgc2hvdWxkIGJlIG5vIG1hcmsgZW50
cnkuCisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAg
ICAgIFt7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAiYiJ9XSk7CisgICAgICAgIHQuZG9u
ZSgpOworICAgICAgfSkKKyAgICApOworICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9
KTsKKyAgLy8gRGlzY29ubmVjdCB0aGUgb2JzZXJ2ZXIuCisgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgLy8gTm93LCBvbmx5IG9ic2VydmUgbWVhc3VyZS4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
dHlwZTogIm1lYXN1cmUifSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoImEiKTsKKyAgcGVyZm9ybWFu
Y2UubWVhc3VyZSgiYiIpOworfSwgIlR5cGVzIG9ic2VydmVkIGFyZSBmb3Jnb3R0ZW4gd2hlbiBk
aXNjb25uZWN0KCkgaXMgY2FsbGVkLiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25u
ZWN0LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY1
ZmI1YWE0M2JhNDYyNjhmOGMzNTVmZGM5M2M2ZjE4Mjk5NjhiNAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMKQEAgLTAsMCArMSwzNyBAQAorLy8gTUVUQTog
c2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAg
ICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3Nl
cnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAg
ICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJr
IiwgIm1lYXN1cmUiLCAibmF2aWdhdGlvbiJdfSk7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgdC5zdGVwX3RpbWVvdXQoZnVuY3Rpb24gKCkg
eworICAgICAgdC5kb25lKCk7CisgICAgfSwgMjAwMCk7CisgIH0sICJkaXNjb25uZWN0ZWQgY2Fs
bGJhY2tzIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKworICB0ZXN0KGZ1bmN0aW9uICgpIHsKKyAg
ICB2YXIgb2JzID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKCkgeyByZXR1cm4g
dHJ1ZTsgfSk7CisgICAgb2JzLmRpc2Nvbm5lY3QoKTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOwor
ICB9LCAiZGlzY29ubmVjdGluZyBhbiB1bmNvbm5lY3RlZCBvYnNlcnZlciBpcyBhIG5vLW9wIik7
CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlM
aXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11
c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIu
b2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1h
cmsoIm1hcmsxIik7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyazIiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7Cisg
ICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgIkFuIG9ic2VydmVyIGRpc2Nvbm5l
Y3RlZCBhZnRlciBhIG1hcmsgbXVzdCBub3QgaGF2ZSBpdHMgY2FsbGJhY2sgaW52b2tlZCIpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55LmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1l
bnRyaWVzLXNvcnQuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwYzc4MWEzYzBjMDNiZjgxZTgyMDE2OGJk
ZjcwYjUzNjI3NTA0MGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29y
dC5hbnkuanMKQEAgLTAsMCArMSw2NCBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2Jz
ZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9yZWRf
ZW50cmllcyA9IFtdOworICAgIHZhciBzdG9yZWRfZW50cmllc19ieV90eXBlID0gW107CisgICAg
dmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9m
dW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworCisgICAgICAgICAgc3RvcmVkX2VudHJp
ZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5
X3R5cGUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpOworICAgICAgICAgIHN0
b3JlZF9lbnRyaWVzX2J5X25hbWUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibmFtZS1y
ZXBlYXQiKTsKKyAgICAgICAgICB2YXIgc3RhcnRUaW1lT2ZNYXJrMiA9IGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlOYW1lKCJtYXJrMiIpWzBdLnN0YXJ0VGltZTsKKworICAgICAgICAgIGNoZWNrU29y
dGVkKHN0b3JlZF9lbnRyaWVzKTsKKyAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJp
ZXMsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUx
In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9
LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwK
KyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0s
CisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAg
ICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtl
bnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSJ9LAor
ICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGlu
Zy1tYXJrMi0yIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1l
LXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1y
ZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9l
bnRyaWVzX2J5X3R5cGUpOworICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllc19i
eV90eXBlLCBbCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9
LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAg
IF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSk7Cisg
ICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X25hbWUsIFsKKyAgICAgICAg
ICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAg
ICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAg
ICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBd
KTsKKworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0LmRvbmUo
KTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5
cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmso
Im1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAg
IHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsxICE9PSBtYXJrMiBzdGFydFRpbWUgYnkgbWFraW5nIHN1
cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygi
bWFyazIiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAg
c2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTEiLCAibWFy
azIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBtYXJrMiAhPT0gbWFyazMgc3RhcnRUaW1lIGJ5
IG1ha2luZyBzdXJlIHBlcmZvcm1hbmNlLm5vdyBhZHZhbmNlcy4KKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1hcmsoIm5hbWUtcmVwZWF0Iik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlMyIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1tYXRjaGlu
Zy1tYXJrMi0yIiwgIm1hcmsyIik7CisgICAgd2FpdCgpOyAvLyBFbnN1cmUgbmFtZS1yZXBlYXQg
c3RhcnRUaW1lIHdpbGwgZGlmZmVyLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1y
ZXBlYXQiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2ls
bCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJuYW1lLXJlcGVhdCIpOwor
ICB9LCAiZ2V0RW50cmllcywgZ2V0RW50cmllc0J5VHlwZSwgZ2V0RW50cmllc0J5TmFtZSBzb3J0
IG9yZGVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJpZXMuYW55LmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNjE2OWQ1ZGJkNmUwZTIwNTA2
ZDIwMTQ2NTg1ZGJjODllNzUwYzI1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRl
bnRyaWVzLmFueS5qcwpAQCAtMCwwICsxLDM4IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFu
Y2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9i
c2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1
bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxp
c3QuZ2V0RW50cmllcygpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6
ICJtYXJrMSJ9XSwgImdldEVudHJpZXMiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRy
eUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeVR5cGUiKTsKKyAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtZWFzdXJlIikubGVu
Z3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVu
dHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlw
ZSgiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0
LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSIpOworICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIikubGVuZ3RoLCAw
LAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIp
OworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIjIz
NDU2NyIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggbm8g
ZXhwZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0
RW50cmllc0J5TmFtZSgibWFyazEiLCAibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUi
KTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJt
YXJrMSIsICJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5h
bWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIiwgIm1lYXN1cmUiKS5s
ZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAg
ICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIp
OworCisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgp
OworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVz
OiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgfSwg
ImdldEVudHJpZXMsIGdldEVudHJpZXNCeVR5cGUgYW5kIGdldEVudHJpZXNCeU5hbWUgd29yayIp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1tYXJrLW1lYXN1cmUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBiMjA1ZTA5NGM3NWUxMGJjMWI5M2Zm
OTY2YWVhMGZkMjNhNTg2ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVh
c3VyZS5hbnkuanMKQEAgLTAsMCArMSw2MSBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNl
b2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9y
ZWRfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7Cisg
ICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29u
Y2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlmIChzdG9yZWRfZW50cmll
cy5sZW5ndGggPj0gNCkgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVz
LAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisg
ICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAg
ICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwKKyAgICAg
ICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn1dKTsKKyAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0pOworICB9LCAiZW50cmllcyBhcmUgb2Jz
ZXJ2YWJsZSIpOworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgbWFya19l
bnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
CisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAg
ICAgIG1hcmtfZW50cmllcyA9CisgICAgICAgICAgICBtYXJrX2VudHJpZXMuY29uY2F0KGVudHJ5
TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlmIChtYXJrX2VudHJpZXMubGVuZ3RoID49
IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhtYXJrX2VudHJpZXMsCisgICAgICAgICAg
ICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAgICAgICAgICAg
eyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn1dKTsKKyAgICAgICAgICAgIG9ic2Vy
dmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAg
ICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJt
YXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICB9LCAibWFyayBlbnRyaWVzIGFyZSBvYnNlcnZh
YmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBtZWFzdXJlX2Vu
dHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigK
KyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAg
ICAgbWVhc3VyZV9lbnRyaWVzID0KKyAgICAgICAgICAgIG1lYXN1cmVfZW50cmllcy5jb25jYXQo
ZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKG1lYXN1cmVfZW50cmllcy5s
ZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKG1lYXN1cmVfZW50cmllcywK
KyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9
LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIi
fV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmUyIik7CisgIH0sICJtZWFzdXJlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmODVlNTg1NmNlODczZjEyMWRjNTE1NDRjNTQ0YjQx
NDM5ZmEyNmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJJbml0LmJ1ZmZlcmVkCisKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNo
b3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKworCitQQVNTIFBlcmZv
cm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1
ZmZlcmVkIGVudHJpZXMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVk
LXR5cGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjJiYmEzOTZhNmI2OWViYWQ1NmFkNGYxYjEzNWNiOGFkNDlkMzIxYjcKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKQEAg
LTAsMCArMSwxNyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisK
K2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgY29uc3Qgb2JzZXJ2ZXIgID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7
CisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAg
IFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAiZWFybHkifV0pOworICAgICAgICBvYnNlcnZl
ci5kaXNjb25uZWN0KCk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAgfSkKKyAgICApOworICBw
ZXJmb3JtYW5jZS5tYXJrKCJlYXJseSIpOworICAvLyBUaGlzIGNhbGwgd2lsbCBub3QgdHJpZ2dl
ciBhbnl0aGluZy4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1hcmsifSk7CisgIC8vIFRo
aXMgY2FsbCBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIGNhbGwgYW5kIGRldGVjdCB0aGUg
ZWFybHkgbWFyay4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1hcmsiLCBidWZmZXJlZDog
dHJ1ZX0pOworfSwgIlR3byBjYWxscyBvZiBvYnNlcnZlKCkgd2l0aCB0aGUgc2FtZSAndHlwZScg
Y2F1c2Ugb3ZlcnJpZGUuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0OGYwZjM3NjRiZGE0Y2ViODhi
MmE4YmU0ZDY1ZjE2ODM2MjYyN2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2Vy
dmUuaHRtbApAQCAtMCwwICsxLDg2IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9
dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJ
bml0LmJ1ZmZlcmVkPC90aXRsZT4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9Imxvbmci
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3Jt
YW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8L2gxPgorPHA+
CitQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlv
dXNseSBidWZmZXJlZCBlbnRyaWVzCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlw
dD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9uIGluaXRUZXN0KCkg
eworICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2Jz
ZXJ2ZXIpIHsKKyAgICAgICAgZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9u
KGVudHJ5KSB7CisgICAgICAgICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgb2JzZXJ2ZWRFbnRyaWVzLnB1
c2goZW50cnkpOworICAgICAgICAgIGlmIChvYnNlcnZlZEVudHJpZXMubGVuZ3RoID09PSBlbnRy
eVR5cGVzLmxlbmd0aCkgeworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAg
ICAgICAgICAgcnVuVGVzdCgpOworICAgICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9KS5v
YnNlcnZlKHtlbnRyeVR5cGVzfSk7CisKKyAgICAgIC8vIGNyZWF0ZXMgYSBgcmVzb3VyY2VgIGVu
dHJ5CisgICAgICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAg
ICBpbWcuc3JjID0gIi4vcmVzb3VyY2VzL3NxdWFyZS5wbmciOworICAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChpbWcpOworCisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCJtYXJrTmFtZSIp
OyAvLyBjcmVhdGVzIGEgYG1hcmtgIGVudHJ5CisgICAgICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1lYXN1cmVgIGVudHJ5CisgICAgfQorICAgIGZ1
bmN0aW9uIHNob3VsZEV4Y2x1ZGUoZW50cnkpIHsKKyAgICAgIC8vIGV4Y2x1ZGUgYWxsIGByZXNv
dXJjZWAgZW50cmllcyB0aGF0IGFyZW4ndCBmb3IgInNxdWFyZS5wbmciCisgICAgICByZXR1cm4g
ZW50cnkuZW50cnlUeXBlID09PSAicmVzb3VyY2UiICYmCisgICAgICAgICAgICAgZW50cnkubmFt
ZS5pbmRleE9mKCJzcXVhcmUucG5nIikgPT09IC0xOworICAgIH0KKyAgICBmdW5jdGlvbiBydW5U
ZXN0KCkgeworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIGlzIGEgbm9wIGJlY2F1
c2Ugd2UndmUgYWxyZWFkeSBiZWVuIG5vdGlmaWVkIGFib3V0IGFsbCBvZiBvdXIgYGVudHJ5VHlw
ZXNgCisgICAgICB2YXIgcG9fbm9wID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgaWYgKGVudHJ5TGlzdC5nZXRFbnRyaWVz
KCkuZmluZChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIHJldHVybiAhc2hvdWxkRXhjbHVk
ZShlbnRyeSk7CisgICAgICAgIH0pKSB7CisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgidGhp
cyBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbGxiYWNrIHNob3VsZCBuZXZlciBiZSBjYWxsZWQiKTsK
KyAgICAgICAgfQorICAgICAgfSk7CisgICAgICBwb19ub3Aub2JzZXJ2ZSh7CisgICAgICAgIGVu
dHJ5VHlwZXMsCisgICAgICB9KTsKKworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVy
IHNob3VsZCBiZSBub3RpZmllZCBhYm91dCB0aGUgcHJldmlvdXNseQorICAgICAgLy8gYnVmZmVy
ZWQgbWFyayBlbnRyeSBvbmx5CisgICAgICBjb25zdCBidWZmZXJlZEVudHJpZXMgPSBbXTsKKyAg
ICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVy
KSB7CisgICAgICAgIGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZm9yRWFjaChmdW5jdGlvbihlbnRy
eSkgeworICAgICAgICAgIGlmIChzaG91bGRFeGNsdWRlKGVudHJ5KSkgeworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGJ1ZmZlcmVkRW50cmllcy5wdXNoKGVu
dHJ5KTsKKyAgICAgICAgICBpZiAoYnVmZmVyZWRFbnRyaWVzLmxlbmd0aCA9PT0gMSkgeworICAg
ICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcG9fbm9wLmRpc2Nv
bm5lY3QoKTsKKyAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBidWZmZXJlZEVudHJpZXMubGVu
Z3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhidWZmZXJlZEVudHJpZXNb
aV0uZW50cnlUeXBlLCAibWFyayIpCisgICAgICAgICAgICB9CisgICAgICAgICAgICB0LmRvbmUo
KTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOworICAgICAgfSkub2JzZXJ2ZSh7CisgICAgICAg
IHR5cGU6ICJtYXJrIiwKKyAgICAgICAgYnVmZmVyZWQ6IHRydWUKKyAgICAgIH0pOworICAgIH0K
KworICAgIGNvbnN0IGVudHJ5VHlwZXMgPSBbIm5hdmlnYXRpb24iLCAicmVzb3VyY2UiLCAibWFy
ayIsICJtZWFzdXJlIl07CisgICAgY29uc3Qgb2JzZXJ2ZWRFbnRyaWVzID0gW107CisgICAgaW5p
dFRlc3QoKTsKKyAgfSwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCBy
ZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMiKTsKKworPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVz
b3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFlZWU2NWU5ZjlhYjVmYjIzMzczZWI5ZDhh
NzBhMzM5YzA1YTAyMzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiByZXNvdXJj
ZQorCitOZXcgcmVzb3VyY2VzIHdpbGwgcXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BB
U1MgcmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXJlc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MDBjMTczZWVhZTkyMWZiZWNjM2VlZWE1NGQ4YWRmYTZiOWVkNTM2NQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUg
SFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6
IHJlc291cmNlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJwZXJmb3JtYW5jZW9ic2VydmVycy5qcyI+PC9zY3Jp
cHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC9oMT4KKzxwPgorTmV3IHJl
c291cmNlcyB3aWxsIDxhIGhyZWY9Imh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10
aW1lbGluZS8jZGZuLXF1ZXVlLWEtcGVyZm9ybWFuY2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5j
ZUVudHJ5PC9hPi4KKzwvcD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3lu
Y190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVuY3Rpb24gcGF0aChwYXRobmFtZSkgeworICAg
ICAgdmFyIGZpbGVuYW1lID0gcGF0aG5hbWUuc3Vic3RyaW5nKHBhdGhuYW1lLmxhc3RJbmRleE9m
KCcvJykrMSk7CisgICAgICByZXR1cm4gcGF0aG5hbWUuc3Vic3RyaW5nKDAsIHBhdGhuYW1lLmxl
bmd0aCAtIGZpbGVuYW1lLmxlbmd0aCk7CisgICAgfQorICAgIHZhciBnVW5pcXVlQ291bnRlciA9
IDA7CisgICAgZnVuY3Rpb24gZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKSB7CisgICAgICByZXR1cm4g
RGF0ZS5ub3coKSArICItIiArICgrK2dVbmlxdWVDb3VudGVyKTsKKyAgICB9CisgICAgdmFyIHN0
b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIGltZ19sb2NhdGlvbiA9IGRvY3VtZW50LmxvY2F0
aW9uLm9yaWdpbiArIHBhdGgoZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWUpCisgICAgICAgKyAi
cmVzb3VyY2VzL3NxdWFyZS5wbmc/cmFuZG9tPSI7CisgICAgdmFyIGltZzEgPSBpbWdfbG9jYXRp
b24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpOworICAgIHZhciBpbWcyID0gaW1nX2xvY2F0aW9u
ICsgZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwg
b2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2Vu
dHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpKTsKKyAg
ICAgICAgICBpZiAoc3RvcmVkX2VudHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNo
ZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAi
cmVzb3VyY2UiLCBuYW1lOiBpbWcxfSwKKyAgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAicmVz
b3VyY2UiLCBuYW1lOiBpbWcyfV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAg
KTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbInJlc291cmNlIl19KTsKKyAg
ICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9
IGltZzE7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworICAgIGltZyA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOworICAgIGltZy5zcmMgPSBpbWcyOworICAgIGRv
Y3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsKKyAgfSwgInJlc291cmNlIGVudHJpZXMgYXJl
IG9ic2VydmFibGUiKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVj
b3Jkcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
NmFkMzk3YjBhNWMzNzlkMDEyOWQ0M2M5Mjk1MmJjNmM4YzVjMGNmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMKQEAgLTAsMCArMSwzNCBAQAorLy8gTUVU
QTogdGl0bGU9UGVyZm9ybWFuY2VPYnNlcnZlcjogdGFrZVJlY29yZHMKKy8vIE1FVEE6IHNjcmlw
dD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7Cisg
ICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50
cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVGhpcyBjYWxsYmFj
ayBzaG91bGQgbm90IGhhdmUgYmVlbiBjYWxsZWQuJykKKyAgICB9KTsKKyAgICBsZXQgZW50cmll
cyA9IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtd
LCAnTm8gcmVjb3JkcyBiZWZvcmUgb2JzZXJ2ZScpOworICAgIG9ic2VydmVyLm9ic2VydmUoe2Vu
dHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2Yob2JzZXJ2ZXIu
dGFrZVJlY29yZHMpLCAnZnVuY3Rpb24nKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJl
Y29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRzIGp1c3Qg
ZnJvbSBvYnNlcnZlJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYScpOworICAgIHBlcmZvcm1h
bmNlLm1hcmsoJ2InKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAg
ICBjaGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1l
OiAnYSd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYid9CisgICAgXSk7Cisg
ICAgcGVyZm9ybWFuY2UubWFyaygnYycpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2QnKTsKKyAg
ICBwZXJmb3JtYW5jZS5tYXJrKCdlJyk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNv
cmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFsKKyAgICAgIHtlbnRyeVR5cGU6ICdt
YXJrJywgbmFtZTogJ2MnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2QnfSwK
KyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2UnfQorICAgIF0pOworICAgIGVudHJp
ZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBb
XSwgJ05vIGVudHJpZXMgcmlnaHQgYWZ0ZXIgdGFrZVJlY29yZHMnKTsKKyAgICBvYnNlcnZlci5k
aXNjb25uZWN0KCk7CisgICAgdC5kb25lKCk7CisgIH0sICJUZXN0IFBlcmZvcm1hbmNlT2JzZXJ2
ZXIncyB0YWtlUmVjb3JkcygpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0
bWVzc2FnZS1lbnRyeS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnku
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lZjViZTczMzk1YjQ5ZDg5NWEyNTg5YmU1NDdhN2YzOTUwZjQxNmJh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnku
aHRtbApAQCAtMCwwICsxLDE3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQ+CithZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgKCkgPT4geworICBjb25zdCBlbnRyeSA9IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgdHJ5IHsKKyAgICB3aW5kb3cudG9w
LnBvc3RNZXNzYWdlKGVudHJ5LCAiKiIpOworICB9IGNhdGNoKGVycm9yKSB7CisgICAgaWYgKGVy
cm9yLm5hbWUgPT0gIkRhdGFDbG9uZUVycm9yIikgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVz
c2FnZSgiUEFTUyIsICIqIik7CisgICAgfSBlbHNlIHsKKyAgICAgIHdpbmRvdy50b3AucG9zdE1l
c3NhZ2UoIkZBSUwgLSBXcm9uZyBleGNlcHRpb24gbmFtZTogIiArIGVycm9yLm5hbWUsICIqIik7
CisgICAgfQorICB9CisgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBObyBleGNlcHRp
b24gdGhyb3duIiwgIioiKTsKK30pOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93
b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkN2ZiYTJjY2Y0YjZhYjdlNjA0
MjczYzI1MDEwZTMxZTQ0M2UzNzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNl
cy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCkBAIC0wLDAgKzEsNiBAQAorcGVyZm9ybWFuY2Uu
bWFyaygnd29ya2VyTWFyaycpOworcG9zdE1lc3NhZ2UoeworICAnaW52YWxpZCcgOiBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLAorICAnbWFyaycgOiBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtYXJrJykubGVuZ3RoLAorICAnbWVhc3VyZScgOiBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoCit9KTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVy
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYTcyZmU4MWM0N2ZlYWNlNzY1NjEzYTA5NjJmMmE3ZTYzZjcxZmEyNQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1h
bmNlLW9ic2VydmVyLmpzCkBAIC0wLDAgKzEsNiBAQAordHJ5IHsKKyAgbmV3IFBlcmZvcm1hbmNl
T2JzZXJ2ZXIoKCkgPT4gdHJ1ZSk7CisgIHBvc3RNZXNzYWdlKCJTVUNDRVNTIik7Cit9IGNhdGNo
IChleCkgeworICBwb3N0TWVzc2FnZSgiRkFJTFVSRSIpOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRl
ZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAxMzhiZGU2NjE5NjI0M2U2NzAzMGQx
YWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIyMjQzZDFjYTM0NTc1MDk1NDBhMjA4MjgwMjg5
ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0
dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5
cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCmluZGV4IGEwMjI1YWQyZjc2ZmRjZmViYjBhN2M5
YWZmOWJkMDAzMGVjZjg2YWEuLjI1ZjE5NTkzOWU3YjY5MjUwOTYyNWI4MTMxZTUzNzE2NGNkZjU2
YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanMKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcwpAQCAtMTAsMyArMTAsMTAgQEAgdGVz
dCgoKSA9PiB7CiAgICAgICAiJyBhcmUgcmVwZWF0ZWQgb3IgdGhleSBhcmUgbm90IGluIGFscGhh
YmV0aWNhbCBvcmRlci4iKQogICB9CiB9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5k
IHJldHVybnMgZW50cmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIiKTsKKwordGVzdCgoKSA9PiB7
CisgIGlmICh0eXBlb2YgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzID09
PSAidW5kZWZpbmVkIikKKyAgICBhc3NlcnRfdW5yZWFjaGVkKCJzdXBwb3J0ZWRFbnRyeVR5cGVz
IGlzIG5vdCBzdXBwb3J0ZWQuIik7CisgIGFzc2VydF90cnVlKFBlcmZvcm1hbmNlT2JzZXJ2ZXIu
c3VwcG9ydGVkRW50cnlUeXBlcyA9PT0KKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9y
dGVkRW50cnlUeXBlcyk7Cit9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBjYWNoZXMgcmVzdWx0Iik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQKaW5kZXggMTM4YmRlNjYxOTYyNDNlNjcwMzBkMWFlMTQyYmRhNDExNDhlMjMwYi4uZTVl
YjExOGFiMjI0M2QxY2EzNDU3NTA5NTQwYTIwODI4MDI4OWQ5NiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsx
LDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0dXJucyBlbnRy
aWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hl
cyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1p
bmctcmVzb2x1dGlvbi5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDg2OWM3YzUyZDU1ZDY5ZTIxMjNmNjRk
NDg2ZWQxZTMyMzVkM2ZiNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJl
c29sdXRpb24uYW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKK2Z1bmN0aW9uIHRlc3RUaW1lUmVzb2x1
dGlvbihoaWdoUmVzVGltZUZ1bmMsIGZ1bmNTdHJpbmcpIHsKKyAgICB0ZXN0KCgpID0+IHsKKyAg
ICAgICAgY29uc3QgdDAgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgbGV0IHQxID0gaGln
aFJlc1RpbWVGdW5jKCk7CisgICAgICAgIHdoaWxlICh0MCA9PSB0MSkgeworICAgICAgICAgICAg
dDEgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgfQorICAgICAgICBjb25zdCBlcHNpbG9u
ID0gMWUtNTsKKyAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbCh0MSAtIHQwLCAwLjAw
NSAtIGVwc2lsb24sICdUaGUgc2Vjb25kICcgKyBmdW5jU3RyaW5nICsgJyBzaG91bGQgYmUgbXVj
aCBncmVhdGVyIHRoYW4gdGhlIGZpcnN0Jyk7CisgICAgfSwgJ1ZlcmlmaWVzIHRoZSByZXNvbHV0
aW9uIG9mICcgKyBmdW5jU3RyaW5nICsgJyBpcyBhdCBsZWFzdCA1IG1pY3Jvc2Vjb25kcy4nKTsK
K30KKworZnVuY3Rpb24gdGltZUJ5UGVyZm9ybWFuY2VOb3coKSB7CisgICAgcmV0dXJuIHBlcmZv
cm1hbmNlLm5vdygpOworfQorCitmdW5jdGlvbiB0aW1lQnlVc2VyVGltaW5nKCkgeworICAgIHBl
cmZvcm1hbmNlLm1hcmsoJ3RpbWVyJyk7CisgICAgY29uc3QgdGltZSA9IHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeU5hbWUoJ3RpbWVyJylbMF0uc3RhcnRUaW1lOworICAgIHBlcmZvcm1hbmNlLmNs
ZWFyTWFya3MoJ3RpbWVyJyk7CisgICAgcmV0dXJuIHRpbWU7Cit9CisKK3Rlc3RUaW1lUmVzb2x1
dGlvbih0aW1lQnlQZXJmb3JtYW5jZU5vdywgJ3BlcmZvcm1hbmNlLm5vdygpJyk7Cit0ZXN0VGlt
ZVJlc29sdXRpb24odGltZUJ5VXNlclRpbWluZywgJ2VudHJ5LnN0YXJ0VGltZScpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42ODI2YjljYmRhZjJjNWZkNDQxMzRjMTIxN2RhMzRlMjQzNjRiNzA4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZl
ci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1MgV29ya2VyOiBUZXN0IFBlcmZv
cm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0
aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZjOTJiYzk3MTAwM2YyZWE5
MmZiZDE2OWQ4ZGQ3YTY0ZDA2MjA2MmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKQEAgLTAsMCArMSwxOCBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorYXN5bmNfdGVz
dChmdW5jdGlvbih0KSB7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoInJlc291cmNlcy93
b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcyIpOworICB3b3JrZXIub25tZXNzYWdl
ID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICB0LnN0ZXAoKCkgPT4gYXNzZXJ0X2VxdWFscyhldmVu
dC5kYXRhLCAnU1VDQ0VTUycpKTsKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ1dvcmtlcjogVGVz
dCBQZXJmb3JtYW5jZSBPYnNlcnZlciBpbnNpZGUgYSB3b3JrZXIuJyk7Cis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24t
dGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24t
dGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA3MzAwODFmNGQ2N2IwNjQxZGU4MDBlMmE4
ODFhZjAyNzJiMjJiOWIyLi42NGU3ZTI1YzIwZGNkODlkYWZmYzcyMjE3NDJkOTUwYzg3MjY3OWFl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0
cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNv
bnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCBy
ZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmcu
d29ya2VyU3RhcnQnKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKLUZBSUwgU2VydmljZSB3b3Jr
ZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBuZXR3b3JrIGZhbGxiYWNrIGFzc2VydF91
bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAndGltaW5nW3RpbWluZ0V2ZW50T3JkZXJbaV1dJykgUmVhY2hlZCB1bnJl
YWNoYWJsZSBjb2RlCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0
aW1pbmcgcmVkaXJlY3QgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbdGltaW5nRXZlbnRP
cmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK0ZBSUwgU2VydmljZSB3b3JrZXIg
Y29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVk
IHJlamVjdGlvbjogYXNzZXJ0X2dyZWF0ZXJfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRl
ciB0aGFuIDAgYnV0IGdvdCAwIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBTZXJ2aWNl
IHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sKK1BB
U1MgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3Bl
cmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNl
cnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dAppbmRleCA3ZmZiMzg1ODNk
YTg0YjY0Njk0NTVhZTc0MDRkMjI0YzRiNTczMGRhLi40ZWJkY2NmNWIyYmQ0N2RhNGQ1ZDIxNWQx
ZThhMjc4MWE0YzJkZTAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkv
cGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1p
bmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50
eHQKQEAgLTEsNSArMSw1IEBACiBQQVNTIGRpZFJlY2VpdmVGaXJzdENvbnRlbnRmdWxQYWludCBp
cyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggaXMgMQorUEFTUyBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoIGlzIDIKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIpLmxlbmd0aCBpcyAxCiBQQVNT
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiLCAi
cGFpbnQiKS5sZW5ndGggaXMgMQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJw
YWludCIpLmxlbmd0aCBpcyAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1h
cGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFp
bnQuaHRtbCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9y
bWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCmluZGV4IDAwNzhhNDM1
NDViOWY0YjZjZmFiZjgxNzE2NjFiM2I2MDFjNGFhNzkuLjFmMjgwYjQwNzc1ZTJhOWE4MmY4ZDNi
NjZlNzk4ZjcwYTc1NTdlMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFw
aS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWlu
dC5odG1sCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVy
Zm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCkBAIC0zNiw3ICsz
Niw3IEBAIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKICAgICBkb2N1bWVudC5ib2R5Lmlu
bmVyVGV4dCA9ICdURVhUMic7CiAgICAgYXdhaXQgd2FpdEZvckZDUCgpOwogICAgIHNob3VsZEJl
VHJ1ZSgnZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50Jyk7Ci0gICAgc2hvdWxkQmUoJ3Bl
cmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGgnLCAiMSIpOworICAgIHNob3VsZEJlKCdwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoJywgIjIiKTsKICAgICBzaG91bGRCZSgncGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIpLmxlbmd0aCcs
ICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0
LWNvbnRlbnRmdWwtcGFpbnQiLCAicGFpbnQiKS5sZW5ndGgnLCAiMSIpOwogICAgIHNob3VsZEJl
KCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpLmxlbmd0aCcsICIxIik7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2JzZXJ2
ZXItYXBpLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3Jt
YW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CmluZGV4IDc2NDlhODQzMWNhNDQyYjE2MDdl
MjhlZWQ2ZDQ2YWM5ZTZjZGYwZGEuLjNhNjdkYzBiYjYzZDYwOWRhODIxNDZiNzYyZTNkZThjZGYw
YTk0NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNl
LWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CkBAIC0xMSw3ICsxMSw3
IEBAIFBBU1MgUGVyZm9ybWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IENvbnN0cnVjdG9yIHJlcXVpcmVzICduZXcnCiBQQVNTIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNT
IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKDEpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFy
Z3VtZW50IDEgKCdjYWxsYmFjaycpIHRvIHRoZSBQZXJmb3JtYW5jZU9ic2VydmVyIGNvbnN0cnVj
dG9yIG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1Mgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihmdW5jdGlvbigpIHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KLVBBU1Mgb2Jz
ZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJn
dW1lbnRzLgorUEFTUyBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQQVNTIG9ic2VydmVyLm9i
c2VydmUoIm1hcmsiKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgogUEFT
UyBvYnNlcnZlci5vYnNlcnZlKHt9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBl
IG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczoibWFyayJ9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBWYWx1ZSBpcyBub3Qg
YSBzZXF1ZW5jZS4KQEAgLTM5LDcgKzM5LDcgQEAgUEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZU9i
c2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29uc3RydWN0b3IgcmVxdWkKIFBB
U1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2Nh
bGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBh
IGZ1bmN0aW9uLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKGZ1bmN0aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBbV29ya2Vy
XSBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3Vn
aCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBB
U1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgibWFyayIpIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoe30pIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3Zp
ZGVkLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJrIn0p
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5l
LWFwaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFu
Y2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAppbmRleCBlZDAxYWUwMDMxZjRlNWU4Zjc2ZTYw
MTVkYjIzODgyMjY0NGI5MTJkLi5jMTQ2MjE0ZWYyZDZhOGFiMWQ2YjhhZTM4Nzg2NWUxMDdiYTNm
NzBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Ut
dGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1h
cGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dApAQCAtMTYsMTQgKzE2LDE0
IEBAIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXMgaXMgZGVmaW5lZC4KIFBB
U1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeVR5cGUgaXMgZGVmaW5lZC4KIFBB
U1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeU5hbWUgaXMgZGVmaW5lZC4KIFBB
U1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2YgQXJyYXkgaXMgdHJ1ZQotUEFT
UyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwIGlzIHRydWUKLVBBU1MgcGVy
Zm9ybWFuY2UubWFyaygidGVzdCIpOyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1h
bmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQot
UEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIKLVBBU1MgdHlwZW9m
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRy
dWUKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5kdXJhdGlvbiA9PT0g
Im51bWJlciIgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3Qg
dGhyb3cgZXhjZXB0aW9uLgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09
PSAyIGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5z
dGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlzICJtYXJrIgorUEFTUyB0eXBlb2YgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0
cnVlCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJh
dGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlU
eXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQ
QVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAw
IGlzIHRydWUKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0
aCA9PT0gMSBpcyB0cnVlCkBAIC02MCwxMSArNjAsMTEgQEAgUEFTUyBbV29ya2VyXSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCiBQQVNTIFtXb3JrZXJd
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFTUyBbV29y
a2VyXSBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgog
UEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRy
dWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdIGluc3RhbmNlb2Yg
UGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQot
UEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9u
ID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCitQQVNT
IFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLm5hbWUgaXMgInRl
c3QiCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmVu
dHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBb
V29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRp
b24gPT09ICJudW1iZXIiIGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1l
bnRzLgogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJub3QtcmVh
bCIpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm1hcmsiKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMgYi9MYXlv
dXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcwppbmRleCAx
ZWY3YWE1YzU4NDJmZGU5ZTFiZDIwM2YxZDI1NzM4N2I5NTM2MDRkLi5iOGMyOTk0MDI2Y2Y5NGUw
NzQ5ZWZiOTQyMWJjMWRiY2JiMjAzMjNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3Jt
YW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcworKysgYi9MYXlvdXRUZXN0cy9wZXJm
b3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcwpAQCAtNCw2ICs0LDggQEAgaWYg
KHNlbGYuaW1wb3J0U2NyaXB0cykKIGlmIChzZWxmLndpbmRvdykKICAgICBkZXNjcmlwdGlvbigi
QmFzaWMgSW50ZXJmYWNlIHRlc3QgZm9yIHBlcmZvcm1hbmNlLXRpbWVsaW5lIEFQSXMuIik7CiAK
K2xldCBydW5uaW5nSW5Xb3JrZXIgPSAhIXNlbGYuaW1wb3J0U2NyaXB0czsKKwogZGVidWcoIlBl
cmZvcm1hbmNlRW50cnkiKTsKIHNob3VsZEJlRGVmaW5lZCgiUGVyZm9ybWFuY2VFbnRyeSIpOwog
c2hvdWxkQmVUcnVlKGAibmFtZSIgaW4gUGVyZm9ybWFuY2VFbnRyeS5wcm90b3R5cGVgKTsKQEAg
LTIxLDE0ICsyMywyNSBAQCBzaG91bGRCZURlZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlwZS5n
ZXRFbnRyaWVzQnlUeXBlYCk7CiBzaG91bGRCZURlZmluZWQoYFBlcmZvcm1hbmNlLnByb3RvdHlw
ZS5nZXRFbnRyaWVzQnlOYW1lYCk7CiAKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpIGluc3RhbmNlb2YgQXJyYXlgKTsKLXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpLmxlbmd0aCA9PT0gMGApOworaWYgKHJ1bm5pbmdJbldvcmtlcikgeworICAgIC8v
IFdvcmtlcnMgZG9uJ3QgaGF2ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuCisgICAgc2hv
dWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwYCk7Cit9IGVs
c2UgeworICAgIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9
PT0gMWApOworfQogc2hvdWxkTm90VGhyb3coYHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTtgKTsK
LXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMWApOwot
c2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJm
b3JtYW5jZUVudHJ5YCk7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVswXS5uYW1lYCwgInRlc3QiKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZWAsICJtYXJrIik7Ci1zaG91bGRCZVRydWUo
YHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVy
ImApOwotc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1
cmF0aW9uID09PSAibnVtYmVyImApOworaWYgKHJ1bm5pbmdJbldvcmtlcikgeworICAgIG1hcmtJ
bmRleCA9IDA7CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAxYCk7Cit9IGVsc2UgeworICAgIG1hcmtJbmRleCA9IDE7CisgICAgc2hvdWxkQmVU
cnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAyYCk7Cit9CitzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVy
Zm9ybWFuY2VFbnRyeWApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbbWFya0luZGV4XS5uYW1lYCwgInRlc3QiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlYCwgIm1hcmsi
KTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5k
ZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciJgKTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9uID09PSAibnVtYmVyImApOwog
CiBzaG91bGRUaHJvdyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgpYCk7CiBzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09
PSAwYCk7CkBAIC01MCw1ICs2Myw1IEBAIHNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlCiBzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiLCAibm90LXJlYWwiKS5s
ZW5ndGggPT09IDBgKTsKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFt
ZSgidGVzdCIsICJtYXJrIikubGVuZ3RoID09PSAxYCk7CiAKLWlmIChzZWxmLmltcG9ydFNjcmlw
dHMpCitpZiAocnVubmluZ0luV29ya2VyKQogICAgIGZpbmlzaEpTVGVzdCgpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFs
dWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OThkNGVkM2NlMTg0YzY4ZDMzMTg2MTNmOGQy
MGZlMjcyZDUyZTM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
LXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitE
ZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYg
dGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0
YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJ
TCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNv
bmFibGUuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJodHRwLzEuMSIgYnV0IGdvdCAiIgorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428985</attachid>
            <date>2021-05-18 15:06:21 -0700</date>
            <delta_ts>2021-05-19 10:11:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210518150620.patch</filename>
            <type>text/plain</type>
            <size>226056</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhiNWQwYTY0OTIzZDIy
NjViNjcyNmUzZjRiOTAyNzU3Y2IwZmVmNy4uY2Q1YjQ3N2M5OTgyOGY1NzI0MDU2NWRmMWJkYWQ0
MGNhZTIzOGYwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xOCAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgVGhpcyBpcyBiYXNpY2FsbHkganVzdCBhIG5ldyBz
aGFwZSBmb3IgZXhwb3NpbmcgdGhlIHNhbWUgZGF0YSBhcyB3aW5kb3cucGVyZm9ybWFuY2UubmF2
aWdhdGlvbiwgYnV0IHdpdGggYSBzaGFwZSB0aGF0IGZpdHMgYmV0dGVyIGludG8gdGhlIHJlc3Qg
b2YgdGhlCisgICAgICAgIHBlcmZvcm1hbmNlIHRpbWVsaW5lIG1lYXN1cmVtZW50cyB0aGF0IGhh
dmUgYmVlbiBhZGRlZCB0byB0aGUgd2ViIHBsYXRmb3JtIHNpbmNlIHBlcmZvcm1hbmNlLm5hdmln
YXRpb24uCisKKyAgICAgICAgSSBub3RlZCB0aGF0IGV4cG9zaW5nIHRyYW5zZmVyIHNpemUgaXMg
cHJvYmxlbWF0aWMsIGFuZCBzb21lIG9mIHRoZSB0ZXN0cyBmb3IgcmVhZGluZyB0cmFuc2ZlciBz
aXplIHN0aWxsIGZhaWwuCisgICAgICAgIFRoZXJlIGFyZSBzdGlsbCBhIGZldyByZWxhdGl2ZWx5
IG1pbm9yIHRlc3QgZmFpbHVyZXMgdG8gZml4IGluIGZ1dHVyZSBwYXRjaGVzLiAgRWFjaCBvbmUg
aXMgYW5ub3RhdGVkIGluIHRoZSBMYXlvdXRUZXN0cyBDaGFuZ2VMb2dzLgorCisgICAgICAgIFRl
c3RzOiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2Rv
bV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2
ZV9tZWRpYV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKKyAgICAgICAg
ICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0ZV9pZnJhbWUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmln
YXRlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxf
b3JpZ2luYWxfb3JpZ2luLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRt
bAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9w
by1uYXZpZ2F0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2Uu
aHR0cHMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCisgICAgICAgICAg
ICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby1vYnNlcnZlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0
b0pTTmV3bHlDcmVhdGVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnNldFJlYWR5U3RhdGUpOgorICAgICAgICBTb21ldGltZXMgdGhl
IHJlYWR5IHN0YXRlIGp1bXBzIHJpZ2h0IHRvIENvbXBsZXRlIHdpdGhvdXQgaGl0dGluZyBJbnRl
cmFjdGl2ZSBhbG9uZyB0aGUgd2F5LgorICAgICAgICBXaGVuIHRoaXMgaGFwcGVucywgd2Ugd2Fu
dCB0byBtYXJrIGJvdGggbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSBhbmQgbV9kb2N1bWVu
dFRpbWluZy5kb21JbnRlcmFjdGl2ZS4KKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKToK
KyAgICAgICAgQ2FsbCBhZGROYXZpZ2F0aW9uVGltaW5nIGluIG5vdGlmeUZpbmlzaGVkIHRvIGNy
ZWF0ZSB0aGUgbmF2aWdhdGlvbiB0aW1pbmcgb2JqZWN0IHdoZW4gd2UgYXJlIGRvbmUgbmF2aWdh
dGluZworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVy
L1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFk
ZCBhIFVSTCBwYXJhbWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3Qn
cyBVUkwgYW5kIHNvbWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0
dGVuIGF0IGRpZmZlcmVudCB0aW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5n
Ojpwb3B1bGF0ZVNlcnZlclRpbWluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVRpbWluZzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRl
ci9SZXNvdXJjZVRpbWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OnVy
bCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6aW5pdGlhdG9yIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3Mg
Y29uc3QpOgorICAgICAgICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2U6OmdldEVudHJpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Omdl
dEVudHJpZXNCeVR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Omdl
dEVudHJpZXNCeU5hbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFw
cGVuZEJ1ZmZlcmVkRW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZTo6YWRkTmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZTo6cmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlOjpxdWV1ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpz
Y2hlZHVsZVRhc2tJZk5lZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VFbnRyeTo6c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlRW50cnk6OmR1cmF0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
RW50cnk6OmlzUmVzb3VyY2UgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VFbnRyeTo6aXNNYXJrIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlRW50cnk6OmlzTWVhc3VyZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojppc1BhaW50IGNvbnN0KTogRGVsZXRlZC4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlTWFyay5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4K
KyAgICAgICAgU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTi9FTkQgZG9lc24ndCB3b3JrIHdl
bGwgd2l0aCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgd2hpY2ggaW5oZXJpdHMgZnJvbSBQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIHdoaWNoIGJvdGggaGF2ZSBkaXN0aW5jdCB0eXBlcy4K
KyAgICAgICAgaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gZG9lc24ndCBnaXZlIHVzIHRo
ZSBpbmZvIHdlIG5lZWQuICBJIHJlcGxhY2VkIHRoYXQgd2l0aCAic3dpdGNoIChlbnRyeS0+cGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSkiIGluIHRoZSBvbmUgcGxhY2UgaXQncyB1c2VkLCBhbmQgaXQg
d29ya3MgbGlrZSBhIGNoYXJtLgorICAgICAgICBBbHNvIHJlbmFtZWQgdHlwZSB0byBwZXJmb3Jt
YW5jZUVudHJ5VHlwZSBzbyBpdCBkb2Vzbid0IGNvbmZsaWN0IHdpdGggUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nOjp0eXBlLCB3aGljaCBpcyBzcGVjaWZpZWQgaW4gdGhlIGlkbC4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6dG9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0
aW9uVHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6Om1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNo
ZWNrRmFpbHMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjps
b2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpyZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZHVyYXRp
b24gY29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmg6
IEFkZGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbDog
Q29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbC4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6dGFrZVJlY29yZHMpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU9ic2VydmVyOjpkZWxpdmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
T2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlwZXMpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VPYnNlcnZlci5oOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGw6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUg
Y29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oOgorICAgICAg
ICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2wgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RTdGFydCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0
YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OmRvbWFpbkxvb2t1cFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1cEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpzZWN1cmVDb25u
ZWN0aW9uU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZzo6cmVxdWVzdFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VFbmQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9E
T01IaWdoUmVzVGltZVN0YW1wIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmc6OmluaXRpYXRvclR5cGUgY29uc3QpOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOgorICAgICAgICAqIHBs
YXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmRvTm90aWZ5RmluaXNoKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2Fk
TWV0cmljcy5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ2xpZW50OjpkaWRGaW5pc2hM
b2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xp
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRG
aW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRs
ZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0
aW9uUXVldWU6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICBQYXNzIG1ldHJpY3MgaW5jbHVk
aW5nIHRoZSByZXNwb25zZSBlbmQgdGltZSBmcm9tIE5TVVJMQ29ubmVjdGlvbiBzbyB3ZSBkb24n
dCBhc3NlcnQgaW4gV2ViS2l0TGVnYWN5LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29j
b2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29weVRpbWluZ0Rh
dGEpOgorICAgICAgICBVc2UgY3VycmVudFJlcXVlc3QgaW5zdGVhZCBvZiBwYXNzaW5nIGluIHRo
ZSByZXNwb25zZSBzbyB3ZSBjYW4gY2FsbCBpdCBmcm9tIGRpZEZpbmlzaExvYWRpbmcsIHdoZXJl
IHdlIGRvbid0IGhhdmUgYSByZXNwb25zZSBzdG9yZWQgYW55d2hlcmUuCisgICAgICAgIFdlJ3Jl
IGp1c3QgbG9va2luZyBmb3Igd2hldGhlciBpdCdzIGh0dHAgb3IgaHR0cHMsIHNvIHRoZSBjdXJy
ZW50UmVxdWVzdCAod2hpY2ggaXMgdGhlIHJlcXVlc3QgYWZ0ZXIgYWxsIHRoZSByZWRpcmVjdHMp
IGZpdHMgb3VyIHB1cnBvc2UuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291
cmNlSGFuZGxlQ3VybC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6aGFu
ZGxlRGF0YVVSTCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tOgorICAgICAgICAoLVtXZWJDb3Jl
UmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUgY29ubmVjdGlvbjpkaWRSZWNl
aXZlUmVzcG9uc2U6XSk6CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0
aW9uUXVldWVEZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzpdKToKKwogMjAyMS0w
NS0xOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVUF0g
UmVtb3RlQXVkaW9TZXNzaW9uIGNhbGxzIGludG8gQVZBdWRpb1Nlc3Npb24gd2hlbiBHUFVQIGlz
IGVuYWJsZWQsIGNhdXNpbmcgaGFuZ3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYjlkYmE1NmI4ZDVhYWQwYzhlZmFl
NjU2ZWNjNzNiODFmMTdhMWQ1OC4uMDFhYjUyMTljYWM3YjU4OGNlYzAwYjc2MzFhYzIzMWIwMzdm
NWQxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wNS0xOCAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZv
ciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtl
IE5pd2EuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tOgorICAgICAgICAoLVtXS05ldHdvcmtTZXNzaW9uRGVsZWdhdGUgVVJMU2Vzc2lvbjp0
YXNrOmRpZEZpbmlzaENvbGxlY3RpbmdNZXRyaWNzOl0pOgorICAgICAgICBNYXJrIHJldXNlZCBU
TFMgY29ubmVjdGlvbnMgaW4gY29tcGxldGUgbWV0cmljcyBsaWtlIEkgZGlkIGluIGluY29tcGxl
dGUgbWV0cmljcyBpbiByMjc3NDkzLgorCiAyMDIxLTA1LTE4ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWxsb3cgU2FmYXJpRm9yV2ViS2l0
RGV2ZWxvcG1lbnQgdG8gbGF1bmNoIHN1Y2Nlc3NmdWxseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwppbmRl
eCBhYzhkNmY2NmQ5YzUxODdjMjQzYTViNzVhNmFhMmQ5OTY0ZWNmMzhlLi41ZTU2Njc4M2IwZDFj
ODFlM2UxYWUyZGJjOWQ4ZDY2YzljZTcyYzJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEyIEBACisyMDIxLTA1LTE4ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExl
dmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaDoKKwogMjAyMS0wNS0xNyAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEF2b2lkIG1vcmUgU3RyaW5nIGNyZWF0aW9ucyB3
aGVuIHByZXBhcmluZyBTUUxpdGUgc3RhdGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9T
Y3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwgYi9Tb3Vy
Y2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFt
bAppbmRleCBmMzQ2NjViN2U2YTk2ZmYwMmFjYTFmMGU0ZTIzNDdlMzg3OWE1M2VhLi40NDg5NzMz
NmRiNzRmOTU1ZWU2NDFjYTAzMDQ3NTAyMTRmZmQ2YzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RG
L1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbAorKysg
Yi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50
YWwueWFtbApAQCAtNzgyLDYgKzc4MiwxOSBAQCBQZXJFbGVtZW50U3BlYWtlclNlbGVjdGlvbkVu
YWJsZWQ6CiAgICAgV2ViQ29yZToKICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAKK1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQ6CisgIHR5cGU6IGJvb2wKKyAgaHVtYW5SZWFkYWJs
ZU5hbWU6ICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciCisgIGh1bWFuUmVhZGFibGVEZXNj
cmlwdGlvbjogIkVuYWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgQVBJIgorICB3ZWJj
b3JlQmluZGluZzogUnVudGltZUVuYWJsZWRGZWF0dXJlcworICBkZWZhdWx0VmFsdWU6CisgICAg
V2ViS2l0TGVnYWN5OgorICAgICAgZGVmYXVsdDogZmFsc2UKKyAgICBXZWJLaXQ6CisgICAgICBk
ZWZhdWx0OiBmYWxzZQorICAgIFdlYkNvcmU6CisgICAgICBkZWZhdWx0OiBmYWxzZQorCiBQcml2
YXRlQ2xpY2tNZWFzdXJlbWVudERlYnVnTW9kZUVuYWJsZWQ6CiAgIHR5cGU6IGJvb2wKICAgaHVt
YW5SZWFkYWJsZU5hbWU6ICJQcml2YXRlIENsaWNrIE1lYXN1cmVtZW50IERlYnVnIE1vZGUiCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CmluZGV4IGNjZDJjZjEyNzEyZGY0ODMzMGZmOGRjODcxYWU1NTUzOTJm
N2EyZmEuLmNhMjRiNTBiOTgyMjEyZjY1ZTdiMzlmZjczZmM0MmM3YmFmNjU1MzYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CkBAIC0xMTI5LDYgKzExMjksNyBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lE
TF9GSUxFUwogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogICAgIHBh
Z2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvbi5pZGwKKyAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwK
ICAgICBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmcuaWRs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRl
eCBiODUwNTZjODEzY2ExMzQxOTJjNmMzOWYyNTg0NTk2ZTg1MTYyMmQ5Li5jM2JiYjJlODRlYmIz
NjI0YTk5YjI4M2IwZTExYTlkNzRkZDZlNTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTEyMDIsNiArMTIwMiw3IEBAICQoUFJPSkVD
VF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL3Bh
Z2UvUGVyZm9ybWFuY2VNZWFzdXJlLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5j
ZU1lYXN1cmVPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaWRsCiskKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwKICQoUFJP
SkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmlkbAogJChQUk9KRUNU
X0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCA1YzZlOTA0ZjBh
NDFmNDRiMTdiYTFkNDNiZWE0ZjYwYzAxZWFmYTA1Li41OGI1ODhmM2U4YTIxOGY5YTlmYmQ3Yjk5
ZTg0YTkyODIzODU0N2UxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1v
dXRwdXQueGNmaWxlbGlzdApAQCAtMTYwNiw2ICsxNjA2LDggQEAgJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmNw
cAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3Jt
YW5jZU1lYXN1cmVPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmcuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCiAkKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQppbmRleCA5ZWUyYTMzMWM3ZmI2Njg4ZDI3ODg3YzI1NjdmYjNjN2Q1NTVjMDBjLi4xMWVk
ZmNhNjk3OWM2ZTlmMzgxZWIxOWQ4YWE0ZTliYTQ2NjkzNWUxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UKQEAgLTEwNDgsNiArMTA0OCw3IEBAIEpTX0JJTkRJTkdfSURMUyA6PSBcCiAg
ICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwgXAogICAgICQoV2ViQ29y
ZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbCBcCiAgICAgJChXZWJDb3JlKS9w
YWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9y
bWFuY2VPYnNlcnZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU9ic2Vy
dmVyQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZl
ckVudHJ5TGlzdC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQg
Yi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBlYWIyN2U0YWQ1YjFjYWY1N2ExODE1
NjNiYTA1N2VhOTU5ZWRjNDA4Li4yZjY2MDVjMTAwYWZiYmQzZDk5YmI5MmEwMzRlYzY4MDQzYWY3
MDlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTczNSw2ICsxNzM1LDcgQEAgcGFnZS9QZXJmb3JtYW5j
ZU1hcmsuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VN
b25pdG9yLmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitwYWdlL1BlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKIHBh
Z2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAKQEAgLTMzNTgsNiArMzM1OSw3IEBAIEpTUGVyZm9ybWFuY2VNYXJrT3B0
aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQZXJmb3JtYW5jZU1lYXN1cmVP
cHRpb25zLmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitKU1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKIEpTUGVyZm9ybWFu
Y2VPYnNlcnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IGYwMmRmZWRjYzQyNzk1OGNhNmE1ZjgxNjYxYTNlZGZlMjk5MTZmZDIuLjczMDcyMzIw
NDA5MzYzY2Q0NGQ1MDlmNGU2MzY1NDE3OTk2YmQ0YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2MDUyLDYgKzE2MDUyLDkg
QEAKIAkJREVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1NS5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTI1NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlERUNB
N0ZGNTFGOUZFOUJBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ni5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU2LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjU2LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCURGMTlFMkFBMjQ3NzI5
QTYwMDdCREFDQiAvKiBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVC
bG9ja2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNDI1QTk4NEM4
MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCURGMzY1RDA2MjVBOTg0QzgwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA3MjVBOTg0QzkwMDVEREI4
QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUzOERD
MjUyNzk1OTMwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJREY0RTM4REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZlcnNpb25DaGVja3MuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlERjdFOUEyOTRDN0FBQ0UwQUQ4OUIzREQgLyogTWF0aE1M
T3BlcmF0b3JEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1h
dGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MjI0NjMsNiArMjI0NjYsOSBAQAogCQkJCThBRjRFNTUyMTFEQzVBMzYwMDBFRDNERSAvKiBQZXJm
b3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAogCQkJCThBRjRFNTUzMTFEQzVBMzYwMDBFRDNERSAv
KiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKIAkJCQk4QUY0RTU1NDExREM1QTM2MDAwRUQz
REUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCAqLywKKwkJCQlERjM2NUQwNDI1QTk4NEM4
MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcCAqLywKKwkJCQlERjM2
NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8s
CisJCQkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5pZGwgKi8sCiAJCQkJQTVBOTkzMzUxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwICovLAogCQkJCUE1QTk5MzM2MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3Jt
YW5jZU9ic2VydmVyLmggKi8sCiAJCQkJQTVBOTkzMzcxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZv
cm1hbmNlT2JzZXJ2ZXIuaWRsICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKaW5kZXggYmJmODExMTQyZGFiOWU2
YTkyY2I1YzZjZmFiMDZiMjQ1OGJhNzE0MC4uZGZjZDhjMWViOTY0NDkxMzE0NDdlMmYyN2M5ZDZi
ZWM1YWM2NzlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBAIC0zNSwxMCArMzUsMTIgQEAKICNpbmNsdWRl
ICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1
ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCIKICNp
bmNsdWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3Jt
YW5jZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUuaCIKKyNpbmNsdWRlICJQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVBhaW50
VGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgogCkBAIC00
OCwxOCArNTAsMjAgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogSlNWYWx1ZSB0b0pTTmV3bHlD
cmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
UmVmPFBlcmZvcm1hbmNlRW50cnk+JiYgZW50cnkpCiB7Ci0gICAgaWYgKGlzPFBlcmZvcm1hbmNl
UGFpbnRUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9y
bWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBp
ZiAoaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZW50cnkpKQotICAgICAgICByZXR1cm4g
Y3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1hcms+KGVudHJ5KSkKKyAg
ICBzd2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSB7CisgICAgY2FzZSBQZXJm
b3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uOgorICAgICAgICByZXR1cm4gY3JlYXRlV3Jh
cHBlcjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShl
bnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TWFyazoKICAgICAgICAg
cmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VNYXJrPihnbG9iYWxPYmplY3QsIFdURk1v
dmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1lYXN1cmU+KGVudHJ5KSkKKyAg
ICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1lYXN1cmU6CiAgICAgICAgIHJldHVybiBj
cmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWVhc3VyZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVu
dHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpSZXNvdXJjZToKKyAgICAg
ICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBl
OjpQYWludDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VQYWludFRp
bWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgfQogCisgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VFbnRy
eT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAppbmRleCBiZWUxZTZiZGE4Yzkx
YTNjYTgyMjJkZDkwMjY5Mjc2ZTQ1ZjRmMTcyLi5mODEzYmRlY2E0OWNmZGRhZWEyOTRkYjYzNzA2
YWYzODQxODdjNGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJD
b3JlQnVpbHRpbk5hbWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29y
ZUJ1aWx0aW5OYW1lcy5oCkBAIC0xOTIsNiArMTkyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgIG1hY3JvKFBheW1lbnRSZXF1ZXN0KSBcCiAgICAgbWFjcm8oUGF5bWVudFJlcXVlc3RVcGRh
dGVFdmVudCkgXAogICAgIG1hY3JvKFBheW1lbnRSZXNwb25zZSkgXAorICAgIG1hY3JvKFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZykgXAogICAgIG1hY3JvKFBpY3R1cmVJblBpY3R1cmVXaW5k
b3cpIFwKICAgICBtYWNybyhTUUxFcnJvcikgXAogICAgIG1hY3JvKFNRTFJlc3VsdFNldCkgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggOTg1ZDE0OGZhYmI1YWE1YTQ1MjRjODRiZWNlNGM2
ZDM2N2Y0NTNmNC4uMWM4MDMzYzhhNzQ4MTlmN2JmYWQyYzZhMjU5NmM5MTA0NzNjN2FkYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0xMzg2LDEzICsxMzg2LDEzIEBAIHZvaWQgRG9jdW1l
bnQ6OnNldFJlYWR5U3RhdGUoUmVhZHlTdGF0ZSByZWFkeVN0YXRlKQogICAgICAgICBpZiAoIW1f
ZG9jdW1lbnRUaW1pbmcuZG9tTG9hZGluZykKICAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcu
ZG9tTG9hZGluZyA9IE1vbm90b25pY1RpbWU6Om5vdygpOwogICAgICAgICBicmVhazsKLSAgICBj
YXNlIEludGVyYWN0aXZlOgotICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJh
Y3RpdmUpCi0gICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlID0gTW9u
b3RvbmljVGltZTo6bm93KCk7Ci0gICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ29tcGxldGU6CiAg
ICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSkKICAgICAgICAgICAgIG1f
ZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKKyAgICAg
ICAgRkFMTFRIUk9VR0g7CisgICAgY2FzZSBJbnRlcmFjdGl2ZToKKyAgICAgICAgaWYgKCFtX2Rv
Y3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlKQorICAgICAgICAgICAgbV9kb2N1bWVudFRpbWlu
Zy5kb21JbnRlcmFjdGl2ZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwogICAgICAgICBicmVhazsK
ICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCmluZGV4IGUz
MjVmMmQwOTE0MzJlMDM2YzdhYjVhOTE1MTJkMDA5OTFiYWRjOGUuLjE5ZGYwMzlmM2JmN2NmMjc2
NzYxN2JiZTVkYWIzMjNhYmYwOWJmOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudExvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50
TG9hZGVyLmNwcApAQCAtNzIsNiArNzIsNyBAQAogI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmlj
cy5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlBhZ2Uu
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIlBpbmdMb2FkZXIuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJQb2xpY3lDaGVja2VyLmgi
CkBAIC00MTEsNyArNDEyLDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6aXNMb2FkaW5nKCkgY29u
c3QKICAgICByZXR1cm4gaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwgIW1fc3VicmVzb3VyY2VM
b2FkZXJzLmlzRW1wdHkoKSB8fCAhbV9wbHVnSW5TdHJlYW1Mb2FkZXJzLmlzRW1wdHkoKTsKIH0K
IAotdm9pZCBEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmIHJl
c291cmNlLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKQordm9pZCBEb2N1bWVudExvYWRlcjo6
bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBOZXR3b3JrTG9h
ZE1ldHJpY3MmIG1ldHJpY3MpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKICNpZiBF
TkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCkBAIC00MTksNiArNDIwLDEzIEBAIHZvaWQgRG9jdW1l
bnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3Qg
TmV0d29ya0xvYWRNCiAgICAgICAgIHJldHVybjsKICNlbmRpZgogCisgICAgaWYgKGF1dG8gZG9j
dW1lbnQgPSBtYWtlUmVmUHRyKHRoaXMtPmRvY3VtZW50KCkpKSB7CisgICAgICAgIGlmIChhdXRv
IGRvbVdpbmRvdyA9IG1ha2VSZWZQdHIoZG9jdW1lbnQtPmRvbVdpbmRvdygpKSkgeworICAgICAg
ICAgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nQVBJRW5hYmxlZCgpKQorICAgICAgICAgICAgICAgIGRvbVdp
bmRvdy0+cGVyZm9ybWFuY2UoKS5hZGROYXZpZ2F0aW9uVGltaW5nKCp0aGlzLCAqZG9jdW1lbnQs
IHJlc291cmNlLCB0aW1pbmcoKSwgbWV0cmljcyk7CisgICAgICAgIH0KKyAgICB9CisKICAgICBB
U1NFUlRfVU5VU0VEKHJlc291cmNlLCBtX21haW5SZXNvdXJjZSA9PSAmcmVzb3VyY2UpOwogICAg
IEFTU0VSVChtX21haW5SZXNvdXJjZSk7CiAgICAgaWYgKCFtX21haW5SZXNvdXJjZS0+ZXJyb3JP
Y2N1cnJlZCgpICYmICFtX21haW5SZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMDc1ZmIxZmFlZGZlZjM0MjA4YTgx
YWJjM2JmMTI5MTQzMjc0YTI0My4uMjQ2NzMwMjdiNzA2MzViMTI5ZDAxYjllNDJlNTliYzQxZTkz
NjI2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC03MzMs
MTAgKzczMyw5IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVCdWZmZXIoUmVzb3Vy
Y2VIYW5kbGUqLCBSZWY8U2hhcmVkQnVmZmVyPiYmIGJ1ZmZlCiAgICAgZGlkUmVjZWl2ZUJ1ZmZl
cihXVEZNb3ZlKGJ1ZmZlciksIGVuY29kZWREYXRhTGVuZ3RoLCBEYXRhUGF5bG9hZEJ5dGVzKTsK
IH0KIAotdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRs
ZSopCit2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxl
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQogewotICAgIE5ldHdvcmtMb2Fk
TWV0cmljcyBlbXB0eU1ldHJpY3M7Ci0gICAgZGlkRmluaXNoTG9hZGluZyhlbXB0eU1ldHJpY3Mp
OworICAgIGRpZEZpbmlzaExvYWRpbmcobWV0cmljcyk7CiB9CiAKIHZvaWQgUmVzb3VyY2VMb2Fk
ZXI6OmRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKaW5kZXggYjJmNmE1ZWNiM2JlYTA0
ZTliZmE4ZDFlZTc2NjJjMzJjMWRmM2QxNS4uYTQzNzZkNTAxMWJmODI4NmZiNDdmYzMzODRmMjli
NWMzZGMzMjY1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKQEAgLTIw
MCw3ICsyMDAsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0QXN5bmMoUmVz
b3VyY2VIYW5kbGUqLCBSZXNvdXJjZVJlcXVlc3QmJiwgUmVzb3VyY2VSZXNwb25zZSYmLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKFJlc291cmNlUmVxdWVzdCYmKT4mJikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUhhbmRsZSosIGNvbnN0IGNoYXIqLCB1bnNpZ25l
ZCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVC
dWZmZXIoUmVzb3VyY2VIYW5kbGUqLCBSZWY8U2hhcmVkQnVmZmVyPiYmLCBpbnQgZW5jb2RlZERh
dGFMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhh
bmRsZSopIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRs
ZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmFp
bChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICAgICB2
b2lkIHdhc0Jsb2NrZWQoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKICAgICB2b2lkIGNhbm5v
dFNob3dVUkwoUmVzb3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IDE2ODIzNGY0N2JjYmUwNzk1MDYwNTQwYTlhMWFhZTZl
ZGI0NTE2YTcuLjdlMjM0MTA4YjZhNjI3NmMyZDZmYzEwMzZlMDY0NjUzYzJlODRkM2QgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcApAQCAtNjIsOSArNjIsOSBAQCBS
ZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbUNhY2hlKGNvbnN0IFVSTCYgdXJsLCBj
b25zdCBTdHJpbmcmIGluaXRpYXRvcgogICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyh1cmwsIGlu
aXRpYXRvciwgbG9hZFRpbWluZywgcmVzcG9uc2UsIHNlY3VyaXR5T3JpZ2luKTsKIH0KIAotUmVz
b3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNv
dXJjZSwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1p
bmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBT
ZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4pCitSZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRp
bWluZzo6ZnJvbUxvYWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNv
bnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBTZWN1cml0
eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4pCiB7Ci0gICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHJl
c291cmNlLnJlc291cmNlUmVxdWVzdCgpLnVybCgpLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5l
dHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2UucmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOwor
ICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyh1cmwsIGluaXRpYXRvciwgbG9hZFRpbWluZywgbmV0
d29ya0xvYWRNZXRyaWNzLCByZXNvdXJjZS5yZXNwb25zZSgpLCBzZWN1cml0eU9yaWdpbik7CiB9
CiAKIFJlc291cmNlVGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tU3luY2hyb25vdXNMb2FkKGNv
bnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYg
bG9hZFRpbWluZywgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3Ms
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBTZWN1cml0eU9yaWdpbiYg
c2VjdXJpdHlPcmlnaW4pCkBAIC05NywxMCArOTcsMTAgQEAgdm9pZCBSZXNvdXJjZVRpbWluZzo6
aW5pdFNlcnZlclRpbWluZyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAgICAg
ICAgbV9zZXJ2ZXJUaW1pbmcgPSBTZXJ2ZXJUaW1pbmdQYXJzZXI6OnBhcnNlU2VydmVyVGltaW5n
KHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6U2VydmVyVGltaW5nKSk7
CiB9CiAKLVZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBSZXNvdXJjZVRpbWlu
Zzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKQorVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRp
bWluZz4+IFJlc291cmNlVGltaW5nOjpwb3B1bGF0ZVNlcnZlclRpbWluZygpIGNvbnN0CiB7CiAg
ICAgcmV0dXJuIFdURjo6bWFwKG1fc2VydmVyVGltaW5nLCBbXSAoYXV0byYgZW50cnkpIHsKLSAg
ICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nOjpjcmVhdGUoV1RGTW92ZShlbnRy
eS5uYW1lKSwgZW50cnkuZHVyYXRpb24sIFdURk1vdmUoZW50cnkuZGVzY3JpcHRpb24pKTsKKyAg
ICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nOjpjcmVhdGUoU3RyaW5nKGVudHJ5
Lm5hbWUpLCBlbnRyeS5kdXJhdGlvbiwgU3RyaW5nKGVudHJ5LmRlc2NyaXB0aW9uKSk7CiAgICAg
fSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWlu
Zy5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmgKaW5kZXggNjRmODdj
YjNiZmRiNTE1ZDZjNGUzODM5NGZiYzRlM2FkNTNlMzBiNy4uNjRkMWVjZjhlNzgzYmM2YTRkOGZm
N2U5ZGFkYWViZjA2MmRkNGZhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jl
c291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5n
LmgKQEAgLTQxLDE1ICs0MSwxNSBAQCBjbGFzcyBSZXNvdXJjZVRpbWluZyB7CiAgICAgV1RGX01B
S0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZy
b21DYWNoZShjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRp
bWluZyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwot
ICAgIHN0YXRpYyBSZXNvdXJjZVRpbWluZyBmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYsIGNvbnN0
IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mKTsKKyAgICBzdGF0aWMgUmVzb3VyY2VUaW1p
bmcgZnJvbUxvYWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIGlu
aXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNv
bnN0IFNlY3VyaXR5T3JpZ2luJik7CiAgICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZyb21TeW5j
aHJvbm91c0xvYWQoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExv
YWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mKTsKIAotICAgIFVSTCB1cmwoKSBjb25zdCB7IHJl
dHVybiBtX3VybDsgfQotICAgIFN0cmluZyBpbml0aWF0b3IoKSBjb25zdCB7IHJldHVybiBtX2lu
aXRpYXRvcjsgfQotICAgIExvYWRUaW1pbmcgbG9hZFRpbWluZygpIGNvbnN0IHsgcmV0dXJuIG1f
bG9hZFRpbWluZzsgfQotICAgIE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTG9hZE1ldHJpY3Mo
KSBjb25zdCB7IHJldHVybiBtX25ldHdvcmtMb2FkTWV0cmljczsgfQorICAgIGNvbnN0IFVSTCYg
dXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KKyAgICBjb25zdCBTdHJpbmcmIGluaXRpYXRv
cigpIGNvbnN0IHsgcmV0dXJuIG1faW5pdGlhdG9yOyB9CisgICAgY29uc3QgTG9hZFRpbWluZyYg
bG9hZFRpbWluZygpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRpbWluZzsgfQorICAgIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QgeyByZXR1cm4gbV9u
ZXR3b3JrTG9hZE1ldHJpY3M7IH0KICAgICBib29sIGFsbG93VGltaW5nRGV0YWlscygpIGNvbnN0
IHsgcmV0dXJuIG1fYWxsb3dUaW1pbmdEZXRhaWxzOyB9Ci0gICAgVmVjdG9yPFJlZjxQZXJmb3Jt
YW5jZVNlcnZlclRpbWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCk7CisgICAgVmVjdG9yPFJl
ZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IHBvcHVsYXRlU2VydmVyVGltaW5nKCkgY29uc3Q7
CiAgICAgUmVzb3VyY2VUaW1pbmcgaXNvbGF0ZWRDb3B5KCkgY29uc3Q7CiAKICAgICB2b2lkIG92
ZXJyaWRlSW5pdGlhdG9yTmFtZShjb25zdCBTdHJpbmcmIG5hbWUpIHsgbV9pbml0aWF0b3IgPSBu
YW1lOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRl
eCAwNmE1OTU5YmNkMTFmMDY0YzBhNzNlMDc0YjBiZGZjY2YzNzVhMDUyLi42MGRkODViZWQ1NTcw
ZGI0OWY4NjM5ZGM1MGNhYzk4NzQ2Y2Y3ZmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9T
dWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTkwNCw3ICs5MDQsNyBAQCB2b2lkIFN1YnJlc291cmNl
TG9hZGVyOjpyZXBvcnRSZXNvdXJjZVRpbWluZyhjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMbwogICAgICAgICByZXR1cm47CiAKICAgICBTZWN1cml0eU9yaWdpbiYgb3JpZ2luID0g
bV9vcmlnaW4gPyAqbV9vcmlnaW4gOiBkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBh
dXRvIHJlc291cmNlVGltaW5nID0gUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKCptX3Jlc291cmNl
LCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRN
ZXRyaWNzLCBvcmlnaW4pOworICAgIGF1dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNvdXJjZVRpbWlu
Zzo6ZnJvbUxvYWQoKm1fcmVzb3VyY2UsIG1fcmVzb3VyY2UtPnJlc291cmNlUmVxdWVzdCgpLnVy
bCgpLCBtX3Jlc291cmNlLT5pbml0aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xv
YWRNZXRyaWNzLCBvcmlnaW4pOwogCiAgICAgLy8gV29ya2VyIHJlc291cmNlcyBsb2FkZWQgaGVy
ZSBhcmUgYWxsIENhY2hlZFJhd1Jlc291cmNlcyBsb2FkZWQgdGhyb3VnaCBXb3JrZXJUaHJlYWRh
YmxlTG9hZGVyLgogICAgIC8vIFBhc3MgdGhlIFJlc291cmNlVGltaW5nIGluZm9ybWF0aW9uIG9u
IHNvIHRoYXQgV29ya2VyVGhyZWFkYWJsZUxvYWRlciBtYXkgYWRkIHRoZW0gdG8gdGhlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCmluZGV4IDc2NjkwODVlNWQ4ZjgyMmRkM2IxNzI2ZjBk
YWM0ZTZkZjI2YzFmMTEuLjc3MzZmM2I2YTM0ZmY2NGMyMjMwNTFhMGM1OTczNjY4NGFmZWI3MmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCkBAIC00MywxMiArNDMsMTQgQEAKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1hcmtPcHRpb25zLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VN
ZWFzdXJlT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvbi5oIgorI2lu
Y2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1h
bmNlT2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5j
bHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNl
VGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VVc2VyVGltaW5nLmgiCiAjaW5jbHVkZSAi
UmVzb3VyY2VSZXNwb25zZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIK
ICNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSA8d3RmL0lzb01h
bGxvY0lubGluZXMuaD4KIApAQCAtMTIyLDYgKzEyNCw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzKCkgY29uc3QKIHsKICAgICBWZWN0
b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzOwogCisgICAgaWYgKG1fbmF2aWdh
dGlvblRpbWluZykKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsK
KwogICAgIGVudHJpZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCiAg
ICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTQwLDYgKzE0NSw5IEBAIFZlY3RvcjxSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0
cmluZyYgZW50CiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmll
czsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50cnlUeXBlID09ICJuYXZpZ2F0
aW9uIikKKyAgICAgICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsKKyAgICAK
ICAgICBpZiAoZW50cnlUeXBlID09ICJyZXNvdXJjZSIpCiAgICAgICAgIGVudHJpZXMuYXBwZW5k
VmVjdG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCkBAIC0xNjEsNiArMTY5LDkgQEAgVmVj
dG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5h
bWUoY29uc3QgU3RyaW5nJiBuYW0KIHsKICAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50
cnk+PiBlbnRyaWVzOwogCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiAoZW50cnlUeXBl
LmlzTnVsbCgpIHx8IGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpICYmIG5hbWUgPT0gbV9uYXZp
Z2F0aW9uVGltaW5nLT5uYW1lKCkpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlv
blRpbWluZyk7CisKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8IGVudHJ5VHlwZSA9PSAi
cmVzb3VyY2UiKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNlVGlt
aW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5hbWUoKSA9PSBuYW1lKQpA
QCAtMTg0LDYgKzE5NSw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZv
cm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtCiAKIHZvaWQgUGVyZm9y
bWFuY2U6OmFwcGVuZEJ1ZmZlcmVkRW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlw
ZSwgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4mIGVudHJpZXMpIGNvbnN0CiB7Cisg
ICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiBlbnRyeVR5cGUgPT0gIm5hdmlnYXRpb24iKQor
ICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAgICAgaWYgKGVu
dHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jl
c291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMjE0LDYgKzIyOCwxMyBAQCB2b2lkIFBlcmZvcm1h
bmNlOjpyZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpCiAgICAgcXVldWVFbnRyeSgqbV9maXJz
dENvbnRlbnRmdWxQYWludCk7CiB9CiAKK3ZvaWQgUGVyZm9ybWFuY2U6OmFkZE5hdmlnYXRpb25U
aW1pbmcoRG9jdW1lbnRMb2FkZXImIGRvY3VtZW50TG9hZGVyLCBEb2N1bWVudCYgZG9jdW1lbnQs
IENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTG9hZFRpbWluZyYgdGltaW5nLCBjb25z
dCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCit7CisgICAgQVNTRVJUKFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
QVBJRW5hYmxlZCgpKTsKKyAgICBtX25hdmlnYXRpb25UaW1pbmcgPSBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OmNyZWF0ZShtX3RpbWVPcmlnaW4sIHJlc291cmNlLCB0aW1pbmcsIG1ldHJp
Y3MsIGRvY3VtZW50LnRpbWluZygpLCBkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBkb2N1bWVu
dExvYWRlci50cmlnZ2VyaW5nQWN0aW9uKCkudHlwZSgpKTsKKyAgICBxdWV1ZUVudHJ5KCptX25h
dmlnYXRpb25UaW1pbmcpOworfQorCiB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWlu
ZyhSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQogewogICAgIEFTU0VSVChzY3JpcHRF
eGVjdXRpb25Db250ZXh0KCkpOwpAQCAtMzQ2LDYgKzM2NywxMSBAQCB2b2lkIFBlcmZvcm1hbmNl
OjpyZW1vdmVBbGxPYnNlcnZlcnMoKQogdm9pZCBQZXJmb3JtYW5jZTo6cmVnaXN0ZXJQZXJmb3Jt
YW5jZU9ic2VydmVyKFBlcmZvcm1hbmNlT2JzZXJ2ZXImIG9ic2VydmVyKQogewogICAgIG1fb2Jz
ZXJ2ZXJzLmFkZCgmb2JzZXJ2ZXIpOworCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiBv
YnNlcnZlci50eXBlRmlsdGVyKCkuY29udGFpbnMoUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2
aWdhdGlvbikpIHsKKyAgICAgICAgb2JzZXJ2ZXIucXVldWVFbnRyeSgqbV9uYXZpZ2F0aW9uVGlt
aW5nKTsKKyAgICAgICAgc2NoZWR1bGVUYXNrSWZOZWVkZWQoKTsKKyAgICB9CiB9CiAKIHZvaWQg
UGVyZm9ybWFuY2U6OnVucmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXImIG9ic2VydmVyKQpAQCAtMzU3LDcgKzM4Myw3IEBAIHZvaWQgUGVyZm9ybWFuY2U6OnF1
ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpCiB7CiAgICAgYm9vbCBzaG91bGRTY2hl
ZHVsZVRhc2sgPSBmYWxzZTsKICAgICBmb3IgKGF1dG8mIG9ic2VydmVyIDogbV9vYnNlcnZlcnMp
IHsKLSAgICAgICAgaWYgKG9ic2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkudHlw
ZSgpKSkgeworICAgICAgICBpZiAob2JzZXJ2ZXItPnR5cGVGaWx0ZXIoKS5jb250YWlucyhlbnRy
eS5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSkgewogICAgICAgICAgICAgb2JzZXJ2ZXItPnF1ZXVl
RW50cnkoZW50cnkpOwogICAgICAgICAgICAgc2hvdWxkU2NoZWR1bGVUYXNrID0gdHJ1ZTsKICAg
ICAgICAgfQpAQCAtMzY2LDYgKzM5MiwxMSBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5
KFBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KQogICAgIGlmICghc2hvdWxkU2NoZWR1bGVUYXNrKQog
ICAgICAgICByZXR1cm47CiAKKyAgICBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOworfQorCit2b2lk
IFBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJZk5lZWRlZCgpCit7CiAgICAgaWYgKG1faGFzU2No
ZWR1bGVkVGltaW5nQnVmZmVyRGVsaXZlcnlUYXNrKQogICAgICAgICByZXR1cm47CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5OWYyNTRiM2M5NTA5NmE1Y2ZkMzRjMmU5MGY5ZGNk
YzM4NzQ2NGM4Li41ZTQ2ODY0YmZkMDc3MTE0MzQ5OGZlY2E0ZTU1MDk1NTYzMzg2MzZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC00OCwxMiArNDgsMTcgQEAgY2xhc3MgSlNHbG9i
YWxPYmplY3Q7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgQ2FjaGVkUmVzb3VyY2U7
CitjbGFzcyBEb2N1bWVudDsKK2NsYXNzIERvY3VtZW50TG9hZGVyOwogY2xhc3MgTG9hZFRpbWlu
ZzsKK2NsYXNzIE5ldHdvcmtMb2FkTWV0cmljczsKIGNsYXNzIFBlcmZvcm1hbmNlVXNlclRpbWlu
ZzsKIGNsYXNzIFBlcmZvcm1hbmNlRW50cnk7CiBjbGFzcyBQZXJmb3JtYW5jZU1hcms7CiBjbGFz
cyBQZXJmb3JtYW5jZU1lYXN1cmU7CiBjbGFzcyBQZXJmb3JtYW5jZU5hdmlnYXRpb247CitjbGFz
cyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZU9ic2VydmVy
OwogY2xhc3MgUGVyZm9ybWFuY2VQYWludFRpbWluZzsKIGNsYXNzIFBlcmZvcm1hbmNlVGltaW5n
OwpAQCAtOTAsNiArOTUsNyBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8UmVmPFBlcmZvcm1h
bmNlTWVhc3VyZT4+IG1lYXN1cmUoSlNDOjpKU0dsb2JhbE9iamVjdCYsIGNvbnN0IFN0cmluZyYg
bWVhc3VyZU5hbWUsIE9wdGlvbmFsPFN0YXJ0T3JNZWFzdXJlT3B0aW9ucz4mJiwgY29uc3QgU3Ry
aW5nJiBlbmRNYXJrKTsKICAgICB2b2lkIGNsZWFyTWVhc3VyZXMoY29uc3QgU3RyaW5nJiBtZWFz
dXJlTmFtZSk7CiAKKyAgICB2b2lkIGFkZE5hdmlnYXRpb25UaW1pbmcoRG9jdW1lbnRMb2FkZXIm
LCBEb2N1bWVudCYsIENhY2hlZFJlc291cmNlJiwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYpOwogICAgIHZvaWQgYWRkUmVzb3VyY2VUaW1pbmcoUmVzb3VyY2VU
aW1pbmcmJik7CiAKICAgICB2b2lkIHJlcG9ydEZpcnN0Q29udGVudGZ1bFBhaW50KCk7CkBAIC0x
MjEsNiArMTI3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlc291cmNlVGltaW5nQnVmZmVyRnVs
bFRpbWVyRmlyZWQoKTsKIAogICAgIHZvaWQgcXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5Jik7
CisgICAgdm9pZCBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOwogCiAgICAgbXV0YWJsZSBSZWZQdHI8
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uPiBtX25hdmlnYXRpb247CiAgICAgbXV0YWJsZSBSZWZQdHI8
UGVyZm9ybWFuY2VUaW1pbmc+IG1fdGltaW5nOwpAQCAtMTM5LDYgKzE0Niw3IEBAIHByaXZhdGU6
CiAKICAgICBNb25vdG9uaWNUaW1lIG1fdGltZU9yaWdpbjsKIAorICAgIFJlZlB0cjxQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc+IG1fbmF2aWdhdGlvblRpbWluZzsKICAgICBSZWZQdHI8UGVy
Zm9ybWFuY2VQYWludFRpbWluZz4gbV9maXJzdENvbnRlbnRmdWxQYWludDsKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8UGVyZm9ybWFuY2VVc2VyVGltaW5nPiBtX3VzZXJUaW1pbmc7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKaW5kZXggYWZhY2ZiMDkwYjIxY2JhNjE0ZDc4Y2U4
OGFjNzUzZTI2NzNlMTI2NS4uM2RmNWU0ZWZiYWYzMjZjNTcxZjVlNmU2NWUzNTZjMmQ0MzJmZjBm
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKQEAgLTQ0LDEwICs0NCwx
MCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+UGVyZm9ybWFuY2VFbnRyeSgpOwogCiAgICAgY29u
c3QgU3RyaW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9Ci0gICAgZG91YmxlIHN0
YXJ0VGltZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9Ci0gICAgZG91YmxlIGR1cmF0
aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQorICAgIHZpcnR1YWwgZG91YmxlIHN0
YXJ0VGltZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9CisgICAgdmlydHVhbCBkb3Vi
bGUgZHVyYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9uOyB9CiAKLSAgICBlbnVtIGNs
YXNzIFR5cGUgeworICAgIGVudW0gY2xhc3MgVHlwZSA6IHVpbnQ4X3QgewogICAgICAgICBOYXZp
Z2F0aW9uICA9IDEgPDwgMCwKICAgICAgICAgTWFyayAgICAgICAgPSAxIDw8IDEsCiAgICAgICAg
IE1lYXN1cmUgICAgID0gMSA8PCAyLApAQCAtNTUsMTYgKzU1LDExIEBAIHB1YmxpYzoKICAgICAg
ICAgUGFpbnQgICAgICAgPSAxIDw8IDQKICAgICB9OwogCi0gICAgdmlydHVhbCBUeXBlIHR5cGUo
KSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29u
c3QgPSAwOwogICAgIHZpcnR1YWwgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0ID0gMDsK
IAogICAgIHN0YXRpYyBPcHRpb25hbDxUeXBlPiBwYXJzZUVudHJ5VHlwZVN0cmluZyhjb25zdCBT
dHJpbmcmIGVudHJ5VHlwZSk7CiAKLSAgICBib29sIGlzUmVzb3VyY2UoKSBjb25zdCB7IHJldHVy
biB0eXBlKCkgPT0gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBib29sIGlzTWFyaygpIGNvbnN0IHsg
cmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpNYXJrOyB9Ci0gICAgYm9vbCBpc01lYXN1cmUoKSBjb25z
dCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6TWVhc3VyZTsgfQotICAgIGJvb2wgaXNQYWludCgp
IGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpQYWludDsgfQotCiAgICAgc3RhdGljIGJv
b2wgc3RhcnRUaW1lQ29tcGFyZUxlc3NUaGFuKGNvbnN0IFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5
PiYgYSwgY29uc3QgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+JiBiKQogICAgIHsKICAgICAgICAg
cmV0dXJuIGEtPnN0YXJ0VGltZSgpIDwgYi0+c3RhcnRUaW1lKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZU1hcmsuaAppbmRleCBjNzNiMjMxMmYzMmEwNGM4MjFjOGQwZWNhODc3ZWFiYjMz
ZmU0ZTJmLi5iNzUxNGYwMTUzNTgwOWRhYjUzY2NhYzA2NGM1MmIwZjE4ZWI2YzZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFyay5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJrLmgKQEAgLTQ4LDE0ICs0OCwxMCBAQCBwcml2YXRl
OgogICAgIFBlcmZvcm1hbmNlTWFyayhjb25zdCBTdHJpbmcmIG5hbWUsIGRvdWJsZSBzdGFydFRp
bWUsIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYpOwogICAgIH5QZXJmb3JtYW5jZU1hcmso
KTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1hcms7IH0K
KyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlw
ZTo6TWFyazsgfQogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiAibWFyayJfczsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gbV9zZXJp
YWxpemVkRGV0YWlsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWFyaykKLSAgICBzdGF0aWMg
Ym9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0
dXJuIGVudHJ5LmlzTWFyaygpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAppbmRleCAzNWRiNmExNjZiNTdlZTg2
ZTYzMDgzMmRmNDI2ODU1ZDk3YTdmYmY1Li4yZDJhYTNlZTEyOTUyMTJlMTZlZGU2ZTNkZGM4MGZj
NjRkZTI2ZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVh
c3VyZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgKQEAg
LTQ4LDE0ICs0OCwxMCBAQCBwcml2YXRlOgogICAgIFBlcmZvcm1hbmNlTWVhc3VyZShjb25zdCBT
dHJpbmcmIG5hbWUsIGRvdWJsZSBzdGFydFRpbWUsIGRvdWJsZSBlbmRUaW1lLCBSZWY8U2VyaWFs
aXplZFNjcmlwdFZhbHVlPiYmIGRldGFpbCk7CiAgICAgflBlcmZvcm1hbmNlTWVhc3VyZSgpOwog
Ci0gICAgVHlwZSB0eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWVhc3VyZTsgfQor
ICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBUeXBl
OjpNZWFzdXJlOyB9CiAgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuICJtZWFzdXJlIl9zOyB9CiAKICAgICBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBt
X3NlcmlhbGl6ZWREZXRhaWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJ
QUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VNZWFzdXJlKQotICAg
IHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkgeyByZXR1cm4gZW50cnkuaXNNZWFzdXJlKCk7IH0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNf
RU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ODFiMzViZTZjNDVhZGNmODVjNjkzYTE5YzNhYTJkODAw
ODkzMzg2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuY3BwCkBAIC0wLDAgKzEsMTQ3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCisKKyNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZS5o
IgorI2luY2x1ZGUgIlJlc291cmNlVGltaW5nLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
c3RhdGljIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGUgdG9QZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0aW9uVHlwZShOYXZpZ2F0aW9uVHlwZSBuYXZp
Z2F0aW9uVHlwZSkKK3sKKyAgICBzd2l0Y2ggKG5hdmlnYXRpb25UeXBlKSB7CisgICAgY2FzZSBO
YXZpZ2F0aW9uVHlwZTo6QmFja0ZvcndhcmQ6CisgICAgICAgIHJldHVybiBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpCYWNrX2ZvcndhcmQ7CisgICAgY2FzZSBO
YXZpZ2F0aW9uVHlwZTo6UmVsb2FkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6UmVsb2FkOworICAgIGNhc2UgTmF2aWdhdGlvblR5
cGU6OkxpbmtDbGlja2VkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1TdWJtaXR0ZWQ6
CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6Rm9ybVJlc3VibWl0dGVkOgorICAgIGNhc2UgTmF2
aWdhdGlvblR5cGU6Ok90aGVyOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7CisgICAgfQorICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIHJldHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmln
YXRpb25UeXBlOjpOYXZpZ2F0ZTsKK30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNo
ZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcywgY29uc3QgRG9jdW1lbnRUaW1pbmcmIGRvY3Vt
ZW50VGltaW5nLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgb3JpZ2luLCBXZWJDb3JlOjpOYXZpZ2F0
aW9uVHlwZSBuYXZpZ2F0aW9uVHlwZSkKKyAgICA6IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmco
dGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKHJlc291cmNlLCByZXNvdXJjZS5y
ZXNwb25zZSgpLnVybCgpLCAibmF2aWdhdGlvbiJfcywgbG9hZFRpbWluZywgbWV0cmljcywgb3Jp
Z2luKSkKKyAgICAsIG1fZG9jdW1lbnRUaW1pbmcoZG9jdW1lbnRUaW1pbmcpCisgICAgLCBtX25h
dmlnYXRpb25UeXBlKHRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUo
bmF2aWdhdGlvblR5cGUpKSB7IH0KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp+UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKCkgPSBkZWZhdWx0OworCitkb3VibGUgUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nOjptaWxsaXNlY29uZHNTaW5jZU9yaWdpbihNb25vdG9uaWNUaW1l
IHRpbWUsIE9wdGlvbmFsPE1vbm90b25pY1RpbWU+IHRpbWVPcmlnaW4pIGNvbnN0Cit7CisgICAg
aWYgKCF0aW1lKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2U6OnJl
ZHVjZVRpbWVSZXNvbHV0aW9uKHRpbWUgLSAodGltZU9yaWdpbiA/ICp0aW1lT3JpZ2luIDogbV90
aW1lT3JpZ2luKSkubWlsbGlzZWNvbmRzKCk7Cit9CisKK2Jvb2wgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOjpzYW1lT3JpZ2luQ2hlY2tGYWlscygpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6
Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2Rmbi1zYW1lLW9yaWdpbi1jaGVj
aworICAgIHJldHVybiAhbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKQorICAg
ICAgICB8fCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNDcm9zc09yaWdpblJlZGly
ZWN0KCkKKyAgICAgICAgfHwgIW1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmhhc1NhbWVP
cmlnaW5Bc1ByZXZpb3VzRG9jdW1lbnQoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6dW5sb2FkRXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgaWYgKHNhbWVPcmln
aW5DaGVja0ZhaWxzKCkpCisgICAgICAgIHJldHVybiAwLjA7CisgICAgcmV0dXJuIG1pbGxpc2Vj
b25kc1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnVubG9hZEV2ZW50
U3RhcnQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9h
ZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICBpZiAoc2FtZU9yaWdpbkNoZWNrRmFpbHMoKSkKKyAg
ICAgICAgcmV0dXJuIDAuMDsKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9y
ZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkudW5sb2FkRXZlbnRFbmQoKSk7Cit9CisKK2RvdWJs
ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUludGVyYWN0aXZlKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21J
bnRlcmFjdGl2ZSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRv
bUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNv
bmRzU2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFy
dCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRM
b2FkZWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3Jp
Z2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kKTsKK30KKworZG91
YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUoKSBjb25zdAorewor
ICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNv
bXBsZXRlKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2
ZW50U3RhcnQoKSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbiht
X3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5sb2FkRXZlbnRTdGFydCgpKTsKK30KKworZG91
YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2Fk
VGltaW5nKCkubG9hZEV2ZW50RW5kKCkpOworfQorCitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6Ok5hdmlnYXRpb25UeXBlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fbmF2aWdhdGlvblR5cGU7Cit9CisKK3Vuc2lnbmVkIHNob3J0
IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6cmVkaXJlY3RDb3VudCgpIGNvbnN0Cit7Cisg
ICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQorICAgICAgICBy
ZXR1cm4gMDsKKworICAgIGlmIChtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNDcm9z
c09yaWdpblJlZGlyZWN0KCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgcmV0dXJuIG1fcmVz
b3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnJlZGlyZWN0Q291bnQoKTsKK30KKworZG91YmxlIFBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lKCkgY29uc3QKK3sKKyAgICAvLyBo
dHRwczovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jZG9tLVBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy1zdGFydFRpbWUKKyAgICByZXR1cm4gMC4wOworfQorCitkb3VibGUg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkdXJhdGlvbigpIGNvbnN0Cit7CisgICAgLy8g
aHR0cHM6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmctZHVyYXRpb24KKyAgICByZXR1cm4gbG9hZEV2ZW50RW5kKCkgLSBz
dGFydFRpbWUoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNj
MGY3YWRlY2MwYzQ2MWU2YmM4Nzg0YjhiMzJhNWQxYWNjYzE3ZgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgKQEAgLTAs
MCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgIkRvY3VtZW50VGltaW5nLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5oIgorI2luY2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitjbGFzcyBDYWNoZWRSZXNvdXJjZTsKK2NsYXNzIExvYWRUaW1pbmc7CitjbGFz
cyBOZXR3b3JrTG9hZE1ldHJpY3M7CitjbGFzcyBTZWN1cml0eU9yaWdpbjsKK2VudW0gY2xhc3Mg
TmF2aWdhdGlvblR5cGUgOiB1aW50OF90OworCitjbGFzcyBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcgZmluYWwgOiBwdWJsaWMgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7CitwdWJsaWM6
CisgICAgZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSA6IHVpbnQ4X3QgeworICAgICAgICBOYXZp
Z2F0ZSwKKyAgICAgICAgUmVsb2FkLAorICAgICAgICBCYWNrX2ZvcndhcmQsCisgICAgICAgIFBy
ZXJlbmRlciwKKyAgICB9OworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gQXJncz4gc3RhdGlj
IFJlZjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+IGNyZWF0ZShBcmdzJiYuLi4gYXJncykg
eyByZXR1cm4gYWRvcHRSZWYoKm5ldyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcoc3RkOjpm
b3J3YXJkPEFyZ3M+KGFyZ3MpLi4uKSk7IH0KKyAgICB+UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nKCk7CisKKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyBy
ZXR1cm4gVHlwZTo6TmF2aWdhdGlvbjsgfQorICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBj
b25zdCBmaW5hbCB7IHJldHVybiAibmF2aWdhdGlvbiJfczsgfQorCisgICAgZG91YmxlIHVubG9h
ZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgdW5sb2FkRXZlbnRFbmQoKSBjb25zdDsK
KyAgICBkb3VibGUgZG9tSW50ZXJhY3RpdmUoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29udGVu
dExvYWRlZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29udGVudExvYWRlZEV2
ZW50RW5kKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNvbXBsZXRlKCkgY29uc3Q7CisgICAgZG91
YmxlIGxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAgZG91YmxlIGxvYWRFdmVudEVuZCgpIGNv
bnN0OworICAgIE5hdmlnYXRpb25UeXBlIHR5cGUoKSBjb25zdDsKKyAgICB1bnNpZ25lZCBzaG9y
dCByZWRpcmVjdENvdW50KCkgY29uc3Q7CisKKyAgICBkb3VibGUgc3RhcnRUaW1lKCkgY29uc3Qg
ZmluYWw7CisgICAgZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgZmluYWw7CisKK3ByaXZhdGU6Cisg
ICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwg
Q2FjaGVkUmVzb3VyY2UmLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJiwgY29uc3QgRG9jdW1lbnRUaW1pbmcmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYsIFdlYkNv
cmU6Ok5hdmlnYXRpb25UeXBlKTsKKworICAgIGRvdWJsZSBtaWxsaXNlY29uZHNTaW5jZU9yaWdp
bihNb25vdG9uaWNUaW1lLCBPcHRpb25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2luID0gV1RG
OjpudWxsb3B0KSBjb25zdDsKKyAgICBib29sIHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkgY29uc3Q7
CisKKyAgICBEb2N1bWVudFRpbWluZyBtX2RvY3VtZW50VGltaW5nOworICAgIE5hdmlnYXRpb25U
eXBlIG1fbmF2aWdhdGlvblR5cGU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZjJlNDMwYmYyYmRiYTlkMTkyYThiMTM2ZjZiMTIwMDM4NDhiN2M3OAotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nLmlkbApAQCAtMCwwICsxLDUyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworLy8gaHR0cHM6Ly93d3cu
dzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2RvbS1wZXJmb3JtYW5jZW5hdmlnYXRpb250
aW1pbmcKKwordHlwZWRlZiBkb3VibGUgRE9NSGlnaFJlc1RpbWVTdGFtcDsKKworZW51bSBOYXZp
Z2F0aW9uVHlwZSB7CisgICAgIm5hdmlnYXRlIiwKKyAgICAicmVsb2FkIiwKKyAgICAiYmFja19m
b3J3YXJkIiwKKyAgICAicHJlcmVuZGVyIgorfTsKKworWworICAgIEVuYWJsZWRBdFJ1bnRpbWU9
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nQVBJLAorICAgIEV4cG9zZWQ9V2luZG93CitdIGlu
dGVyZmFjZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgOiBQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nIHsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3Rh
bXAgdW5sb2FkRXZlbnRTdGFydDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhp
Z2hSZXNUaW1lU3RhbXAgdW5sb2FkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJp
YnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUludGVyYWN0aXZlOworICAgIHJlYWRvbmx5ICAg
ICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRT
dGFydDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAg
ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUg
RE9NSGlnaFJlc1RpbWVTdGFtcCBkb21Db21wbGV0ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0
cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgbG9hZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkg
ICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGxvYWRFdmVudEVuZDsKKyAgICBy
ZWFkb25seSAgICAgICAgYXR0cmlidXRlIE5hdmlnYXRpb25UeXBlICAgICAgdHlwZTsKKyAgICBy
ZWFkb25seSAgICAgICAgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAgICAgcmVkaXJlY3RDb3Vu
dDsKKyAgICBbRGVmYXVsdF0gb2JqZWN0IHRvSlNPTigpOworfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCmluZGV4IDQ2NDcyNjdkMTI4OWRiYjZhNTMyMGE0
YWZlYjIwNDYwYWJmMjg3NjEuLjk0ODc5NGJlZGQ3NTQwNGZmMDNiYjY1MzM0NDMyYTM2MWQxNGI0
NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcApAQCAt
MzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgogI2lu
Y2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5
TGlzdC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJX
b3JrZXJHbG9iYWxTY29wZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xMDcsNiArMTA4
LDExIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6Om9ic2VydmUoSW5p
dCYmIGluaXQpCiAgICAgcmV0dXJuIHsgfTsKIH0KIAorVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6dGFrZVJlY29yZHMoKQoreworICAgIHJldHVy
biBzdGQ6OmV4Y2hhbmdlKG1fZW50cmllc1RvRGVsaXZlciwgeyB9KTsKK30KKwogdm9pZCBQZXJm
b3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KCkKIHsKICAgICBpZiAobV9wZXJmb3JtYW5jZSkK
QEAgLTExNCw2ICsxMjAsNyBAQCB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3Qo
KQogCiAgICAgbV9yZWdpc3RlcmVkID0gZmFsc2U7CiAgICAgbV9lbnRyaWVzVG9EZWxpdmVyLmNs
ZWFyKCk7CisgICAgbV90eXBlRmlsdGVyID0geyB9OwogfQogCiB2b2lkIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXI6OnF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpCkBAIC0xMzAsNyArMTM3
LDcgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkZWxpdmVyKCkKICAgICBpZiAoIWNvbnRl
eHQpCiAgICAgICAgIHJldHVybjsKIAotICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eT4+IGVudHJpZXMgPSBXVEZNb3ZlKG1fZW50cmllc1RvRGVsaXZlcik7CisgICAgVmVjdG9yPFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllcyA9IHN0ZDo6ZXhjaGFuZ2UobV9lbnRyaWVz
VG9EZWxpdmVyLCB7IH0pOwogICAgIGF1dG8gbGlzdCA9IFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRy
eUxpc3Q6OmNyZWF0ZShXVEZNb3ZlKGVudHJpZXMpKTsKIAogICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6d2lsbEZpcmVPYnNlcnZlckNhbGxiYWNrKCpjb250ZXh0LCAiUGVyZm9ybWFuY2VP
YnNlcnZlciJfcyk7CkBAIC0xNDEsMTIgKzE0OCwxMyBAQCB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2
ZXI6OmRlbGl2ZXIoKQogVmVjdG9yPFN0cmluZz4gUGVyZm9ybWFuY2VPYnNlcnZlcjo6c3VwcG9y
dGVkRW50cnlUeXBlcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQogewogICAgIFZl
Y3RvcjxTdHJpbmc+IGVudHJ5VHlwZXMgPSB7Ci0gICAgICAgIC8vIEZJWE1FOiA8aHR0cHM6Ly93
ZWJraXQub3JnL2IvMTg0MzYzPiBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2
ZWwgMgotICAgICAgICAvLyAibmF2aWdhdGlvbiJfcywKICAgICAgICAgIm1hcmsiX3MsCi0gICAg
ICAgICJtZWFzdXJlIl9zCisgICAgICAgICJtZWFzdXJlIl9zLAogICAgIH07CiAKKyAgICBpZiAo
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5wZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmdBUElFbmFibGVkKCkpCisgICAgICAgIGVudHJ5VHlwZXMuYXBwZW5kKCJuYXZp
Z2F0aW9uIl9zKTsKKwogICAgIGlmIChpczxEb2N1bWVudD4oY29udGV4dCkgJiYgZG93bmNhc3Q8
RG9jdW1lbnQ+KGNvbnRleHQpLnN1cHBvcnRzUGFpbnRUaW1pbmcoKSkKICAgICAgICAgZW50cnlU
eXBlcy5hcHBlbmQoInBhaW50Il9zKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuaAppbmRleCAyODcyZjE3YWFiNWI1NzY2YmZjNDhjYzQ4MDAwNGFkZDhiZGUxZmY5
Li40MTkzMDVkNDdjMjE1MjdkOGUxY2JlYjU3YmNlNWMwZDgyYzJhN2Q4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaApAQCAtNTcsNiArNTcsNyBAQCBwdWJsaWM6
CiAKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBvYnNlcnZlKEluaXQmJik7CiAgICAgdm9pZCBkaXNj
b25uZWN0KCk7CisgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gdGFrZVJlY29y
ZHMoKTsKIAogICAgIE9wdGlvblNldDxQZXJmb3JtYW5jZUVudHJ5OjpUeXBlPiB0eXBlRmlsdGVy
KCkgY29uc3QgeyByZXR1cm4gbV90eXBlRmlsdGVyOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCmluZGV4IGI3MDdmNjYwMmUzMDk3YWMyMzdjZWFjNzJl
NGE3ZDA2NzI2MzY1MTMuLjY4M2EyYmVhMDE0NTk0MzI1N2Y5YzdmMjAyZTZmNTVjM2RiNGJkMGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbApAQCAtMzMs
OCArMzMsOSBAQAogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VPYnNlcnZlciB7CiAgICAgW0NhbGxX
aXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKFBlcmZvcm1hbmNlT2JzZXJ2
ZXJDYWxsYmFjayBjYWxsYmFjayk7CiAKLSAgICB1bmRlZmluZWQgb2JzZXJ2ZShQZXJmb3JtYW5j
ZU9ic2VydmVySW5pdCBvcHRpb25zKTsKKyAgICB1bmRlZmluZWQgb2JzZXJ2ZShvcHRpb25hbCBQ
ZXJmb3JtYW5jZU9ic2VydmVySW5pdCBvcHRpb25zKTsKICAgICB1bmRlZmluZWQgZGlzY29ubmVj
dCgpOworICAgIHNlcXVlbmNlPFBlcmZvcm1hbmNlRW50cnk+IHRha2VSZWNvcmRzKCk7CiAgICAg
W0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIHN0YXRpYyByZWFkb25seSBhdHRyaWJ1
dGUgRnJvemVuQXJyYXk8RE9NU3RyaW5nPiBzdXBwb3J0ZWRFbnRyeVR5cGVzOwogfTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5j
cHAKaW5kZXggZTAzNjY1YWFjYjcwYmI4Zjg2MzlhZjRiYzdhZTFkMDYwZGJiMWU0Ni4uZGQ3ZmM5
N2NhMzhmODNlMjQ1NWU5MjcwODIzNTE1MDAzZTlhOWNlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwCkBAIC02NCw3ICs2
NCw3IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlT2JzZXJ2
ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUoCiAgICAgZm9yIChhdXRvJiBlbnRyeSA6IG1f
ZW50cmllcykgewogICAgICAgICBpZiAoIW5hbWUuaXNOdWxsKCkgJiYgZW50cnktPm5hbWUoKSAh
PSBuYW1lKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmICh0eXBlICYmIGVudHJ5
LT50eXBlKCkgIT0gKnR5cGUpCisgICAgICAgIGlmICh0eXBlICYmIGVudHJ5LT5wZXJmb3JtYW5j
ZUVudHJ5VHlwZSgpICE9ICp0eXBlKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGVu
dHJpZXMuYXBwZW5kKGVudHJ5LmNvcHlSZWYoKSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaAppbmRleCBhMjgxYmEzODIyNDhmODIzNjBmMzc3
OGIxYmZmZjU1ZTM5NmUyNWNmLi43MGY4MDg1ZjljYzc1ODc5MDQ2MjkxMGM4MGFhNzRhNmJjNzc0
MDJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1p
bmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaApA
QCAtNDQsMTMgKzQ0LDkgQEAgcHJpdmF0ZToKICAgICB9CiAKICAgICBBU0NJSUxpdGVyYWwgZW50
cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gInBhaW50Il9zOyB9Ci0gICAgVHlwZSB0eXBl
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UGFpbnQ7IH0KKyAgICBUeXBlIHBlcmZvcm1h
bmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6UGFpbnQ7IH0KIAogICAg
IH5QZXJmb3JtYW5jZVBhaW50VGltaW5nKCkgPSBkZWZhdWx0OwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZv
cm1hbmNlUGFpbnRUaW1pbmcpCi0gICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6
OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRyeS5pc1BhaW50KCk7IH0KLVNQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IGRkNzFhYTdjYjE3OGIzYjA4NWUzYWE5
ZTJjNWJiM2NmMjM3ZWIwYTkuLmU1ZGQxMmI5ZjgzYTQxNDNhM2ZjNmE1M2M1MWFmYTI5Yzk4OTlk
ZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmNwcApAQCAtODEsMTIgKzgxLDkgQEAgUmVmPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+
IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNyZWF0ZShNb25vdG9uaWNUaW1lIHQKIAogUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyhNb25vdG9u
aWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYgcmVzb3VyY2VUaW1pbmcpCiAgICAg
OiBQZXJmb3JtYW5jZUVudHJ5KHJlc291cmNlVGltaW5nLnVybCgpLnN0cmluZygpLCBlbnRyeVN0
YXJ0VGltZSh0aW1lT3JpZ2luLCByZXNvdXJjZVRpbWluZyksIGVudHJ5RW5kVGltZSh0aW1lT3Jp
Z2luLCByZXNvdXJjZVRpbWluZykpCi0gICAgLCBtX2luaXRpYXRvclR5cGUocmVzb3VyY2VUaW1p
bmcuaW5pdGlhdG9yKCkpCiAgICAgLCBtX3RpbWVPcmlnaW4odGltZU9yaWdpbikKLSAgICAsIG1f
bG9hZFRpbWluZyhyZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkpCi0gICAgLCBtX25ldHdvcmtM
b2FkTWV0cmljcyhyZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKSkKLSAgICAsIG1f
c2hvdWxkUmVwb3J0RGV0YWlscyhyZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkK
LSAgICAsIG1fc2VydmVyVGltaW5nKHJlc291cmNlVGltaW5nLnBvcHVsYXRlU2VydmVyVGltaW5n
KCkpCisgICAgLCBtX3Jlc291cmNlVGltaW5nKFdURk1vdmUocmVzb3VyY2VUaW1pbmcpKQorICAg
ICwgbV9zZXJ2ZXJUaW1pbmcobV9yZXNvdXJjZVRpbWluZy5wb3B1bGF0ZVNlcnZlclRpbWluZygp
KQogewogfQogCkBAIC05NCw3ICs5MSw3IEBAIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6On5Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKCkgPSBkZWZhdWx0OwogCiBjb25zdCBTdHJpbmcmIFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Om5leHRIb3BQcm90b2NvbCgpIGNvbnN0CiB7Ci0gICAg
cmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzLnByb3RvY29sOworICAgIHJldHVybiBtX3Jlc291
cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnByb3RvY29sOwogfQogCiBkb3VibGUgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6d29ya2VyU3RhcnQoKSBjb25zdApAQCAtMTA1LDE0MCAr
MTAyLDE0MCBAQCBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6d29ya2VyU3RhcnQo
KSBjb25zdAogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RTdGFy
dCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFt
X3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4w
OwogCi0gICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1l
T3JpZ2luLCBtX2xvYWRUaW1pbmcucmVkaXJlY3RTdGFydCgpKTsKKyAgICByZXR1cm4gbW9ub3Rv
bmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1p
bmcubG9hZFRpbWluZygpLnJlZGlyZWN0U3RhcnQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3Vs
ZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0
YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG1vbm90b25pY1RpbWVU
b0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1pbmcucmVkaXJlY3RF
bmQoKSk7CisgICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90
aW1lT3JpZ2luLCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdEVuZCgpKTsK
IH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmZldGNoU3RhcnQoKSBjb25z
dAogewogICAgIC8vIGZldGNoU3RhcnQgaXMgYSByZXF1aXJlZCBwcm9wZXJ0eS4KLSAgICBBU1NF
UlQobV9sb2FkVGltaW5nLmZldGNoU3RhcnQoKSk7CisgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1p
bmcubG9hZFRpbWluZygpLmZldGNoU3RhcnQoKSk7CiAKLSAgICByZXR1cm4gbW9ub3RvbmljVGlt
ZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fbG9hZFRpbWluZy5mZXRjaFN0
YXJ0KCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1f
dGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuZmV0Y2hTdGFydCgpKTsK
IH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1cFN0YXJ0
KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1f
cmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7
CiAKLSAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQgPD0gMF9t
cykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5M
b29rdXBTdGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOwogCi0gICAg
cmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2Fk
TWV0cmljcy5kb21haW5Mb29rdXBTdGFydCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRv
RE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygp
LmRvbWFpbkxvb2t1cFN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmc6OmRvbWFpbkxvb2t1cEVuZCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERl
dGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQog
ICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFp
bkxvb2t1cEVuZCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2Fk
TWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKQogICAgICAgICByZXR1cm4gZG9tYWlu
TG9va3VwU3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNU
aW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwRW5kKTsKKyAgICByZXR1
cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcu
bmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwRW5kKTsKIH0KIAogZG91YmxlIFBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNvbm5lY3RTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFt
X3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGlt
aW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xv
YWRNZXRyaWNzLmNvbm5lY3RTdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RTdGFydCA8PSAwX21zKQogICAgICAgICByZXR1
cm4gZG9tYWluTG9va3VwRW5kKCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01I
aWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RTdGFydCk7CisgICAg
cmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0RW5kKCkgY29uc3QKIHsKLSAgICBpZiAoIW1f
c2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1p
bmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAobV9uZXR3b3JrTG9h
ZE1ldHJpY3MuY29ubmVjdEVuZCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGNv
bm5lY3RTdGFydCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1Rp
bWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kKTsKKyAgICByZXR1cm4gbmV0
d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29y
a0xvYWRNZXRyaWNzKCkuY29ubmVjdEVuZCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpzZWN1cmVDb25uZWN0aW9uU3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9z
aG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWlu
Z0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2Fk
TWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2VkVExTQ29ubmVjdGlvblNlbnRp
bmVsKQorICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3Vy
ZUNvbm5lY3Rpb25TdGFydCA9PSByZXVzZWRUTFNDb25uZWN0aW9uU2VudGluZWwpCiAgICAgICAg
IHJldHVybiBmZXRjaFN0YXJ0KCk7CiAKLSAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2Vj
dXJlQ29ubmVjdGlvblN0YXJ0IDw9IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0
d29ya0xvYWRNZXRyaWNzKCkuc2VjdXJlQ29ubmVjdGlvblN0YXJ0IDw9IDBfbXMpCiAgICAgICAg
IHJldHVybiAwLjA7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCk7CisgICAg
cmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCk7CiB9CiAKIGRv
dWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXF1ZXN0U3RhcnQoKSBjb25zdAogewot
ICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWlu
Zy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAogICAgIC8vIHJl
cXVlc3RTdGFydCBpcyAwIHdoZW4gYSBuZXR3b3JrIHJlcXVlc3QgaXMgbm90IG1hZGUuCi0gICAg
aWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKQorICAgIGlmICht
X3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlcXVlc3RTdGFydCA8PSAwX21z
KQogICAgICAgICByZXR1cm4gY29ubmVjdEVuZCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2Fk
VGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3Rh
cnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQpOwogfQogCiBk
b3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VTdGFydCgpIGNvbnN0CiB7
Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGlt
aW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCiAgICAgLy8g
cmVzcG9uc2VTdGFydCBpcyAwIHdoZW4gYSBuZXR3b3JrIHJlcXVlc3QgaXMgbm90IG1hZGUuCi0g
ICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlU3RhcnQgPD0gMF9tcykKKyAgICBp
ZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25zZVN0YXJ0IDw9
IDBfbXMpCiAgICAgICAgIHJldHVybiByZXF1ZXN0U3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3
b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MucmVz
cG9uc2VTdGFydCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVT
dGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlU3RhcnQp
OwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VFbmQoKSBj
b25zdAogewogICAgIC8vIHJlc3BvbnNlRW5kIGlzIGEgcmVxdWlyZWQgcHJvcGVydHkuCi0gICAg
QVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmlzQ29tcGxldGUoKSB8fCBtX2xvYWRUaW1pbmcu
cmVzcG9uc2VFbmQoKSk7CisgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRN
ZXRyaWNzKCkuaXNDb21wbGV0ZSgpIHx8IG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnJl
c3BvbnNlRW5kKCkpOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmlzQ29tcGxldGUo
KSkgeworICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmlzQ29t
cGxldGUoKSkgewogICAgICAgICAvLyByZXNwb25zZUVuZCBpcyAwIHdoZW4gYSBuZXR3b3JrIHJl
cXVlc3QgaXMgbm90IG1hZGUuCiAgICAgICAgIC8vIFRoaXMgc2hvdWxkIG1lYW4gYWxsIG90aGVy
IHByb3BlcnRpZXMgYXJlIGVtcHR5LgotICAgICAgICBpZiAobV9uZXR3b3JrTG9hZE1ldHJpY3Mu
cmVzcG9uc2VFbmQgPD0gMF9tcykgewotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLnJlc3BvbnNlU3RhcnQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3
b3JrTG9hZE1ldHJpY3MucmVxdWVzdFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJU
KG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKLSAgICAgICAgICAg
IEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPD0gMF9t
cyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCA8
PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0
U3RhcnQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Mu
ZG9tYWluTG9va3VwRW5kIDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xv
YWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgcmV0dXJu
IGZldGNoU3RhcnQoKTsKKyAgICAgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRN
ZXRyaWNzKCkucmVzcG9uc2VFbmQgPD0gMF9tcykgeworICAgICAgICAgICAgQVNTRVJUKG1fcmVz
b3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9uc2VTdGFydCA8PSAwX21zKTsK
KyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygp
LnJlcXVlc3RTdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKKyAgICAgICAg
ICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNv
bm5lY3Rpb25TdGFydCA8PSAwX21zKTsKKyAgICAgICAgICAgIEFTU0VSVChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQgPD0gMF9tcyk7CisgICAgICAgICAg
ICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3Rh
cnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3Jr
TG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NF
UlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBTdGFy
dCA8PSAwX21zKTsKKyAgICAgICAgICAgIHJldHVybiByZXNwb25zZVN0YXJ0KCk7CiAgICAgICAg
IH0KIAotICAgICAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1w
KG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlRW5kKTsKKyAgICAgICAgcmV0dXJuIG5ldHdv
cmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtM
b2FkTWV0cmljcygpLnJlc3BvbnNlRW5kKTsKICAgICB9CiAKLSAgICByZXR1cm4gbW9ub3Rvbmlj
VGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fbG9hZFRpbWluZy5yZXNw
b25zZUVuZCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFt
cChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnJlc3BvbnNlRW5k
KCkpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRU
aW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKFNlY29uZHMgZGVsdGEpIGNvbnN0CiB7CiAgICAgQVNT
RVJUKGRlbHRhKTsKLSAgICBTZWNvbmRzIGZpbmFsID0gKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0
KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmlnaW47CisgICAgU2Vjb25kcyBmaW5hbCA9IChtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkgKyBkZWx0YSkgLSBtX3RpbWVPcmln
aW47CiAgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpyZWR1Y2VUaW1lUmVzb2x1dGlvbihmaW5hbCku
bWlsbGlzZWNvbmRzKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmgKaW5kZXggNWQwNzlmNGM2NjU2NTIzMTVhMDAxMjQ2M2M4Y2RmOWNl
NTJlYzVhMS4uYjc2NmM5YzAwOTVmZDBjOTA4OGYzOTE3ZTU2ZTFkZmVkNDU1NWE2ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKQEAgLTM0
LDYgKzM0LDcgQEAKICNpbmNsdWRlICJMb2FkVGltaW5nLmgiCiAjaW5jbHVkZSAiTmV0d29ya0xv
YWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgorI2luY2x1ZGUgIlJl
c291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1JlZi5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgogCkBAIC00MiwxMSArNDMsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
Y2xhc3MgUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc7CiBjbGFzcyBSZXNvdXJjZVRpbWluZzsKIAot
Y2xhc3MgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyBmaW5hbCA6IHB1YmxpYyBQZXJmb3JtYW5j
ZUVudHJ5IHsKK2NsYXNzIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgOiBwdWJsaWMgUGVyZm9y
bWFuY2VFbnRyeSB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nPiBjcmVhdGUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYm
KTsKIAotICAgIGNvbnN0IEF0b21TdHJpbmcmIGluaXRpYXRvclR5cGUoKSBjb25zdCB7IHJldHVy
biBtX2luaXRpYXRvclR5cGU7IH0KKyAgICBjb25zdCBTdHJpbmcmIGluaXRpYXRvclR5cGUoKSBj
b25zdCB7IHJldHVybiBtX3Jlc291cmNlVGltaW5nLmluaXRpYXRvcigpOyB9CiAgICAgY29uc3Qg
U3RyaW5nJiBuZXh0SG9wUHJvdG9jb2woKSBjb25zdDsKIAogICAgIGRvdWJsZSB3b3JrZXJTdGFy
dCgpIGNvbnN0OwpAQCAtNjEsMjcgKzYyLDIxIEBAIHB1YmxpYzoKICAgICBkb3VibGUgcmVxdWVz
dFN0YXJ0KCkgY29uc3Q7CiAgICAgZG91YmxlIHJlc3BvbnNlU3RhcnQoKSBjb25zdDsKICAgICBk
b3VibGUgcmVzcG9uc2VFbmQoKSBjb25zdDsKKwogICAgIGNvbnN0IFZlY3RvcjxSZWY8UGVyZm9y
bWFuY2VTZXJ2ZXJUaW1pbmc+PiYgc2VydmVyVGltaW5nKCkgY29uc3QgeyByZXR1cm4gbV9zZXJ2
ZXJUaW1pbmc7IH0KIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6
OlJlc291cmNlOyB9Ci0gICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuICJyZXNvdXJjZSJfczsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBj
b25zdCBvdmVycmlkZSB7IHJldHVybiBUeXBlOjpSZXNvdXJjZTsgfQorICAgIEFTQ0lJTGl0ZXJh
bCBlbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiAicmVzb3VyY2UiX3M7IH0KIAot
cHJpdmF0ZToKK3Byb3RlY3RlZDoKICAgICBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKE1vbm90
b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJik7CiAgICAgflBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcoKTsKIAogICAgIGRvdWJsZSBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hS
ZXNUaW1lU3RhbXAoU2Vjb25kcykgY29uc3Q7CiAKLSAgICBBdG9tU3RyaW5nIG1faW5pdGlhdG9y
VHlwZTsKICAgICBNb25vdG9uaWNUaW1lIG1fdGltZU9yaWdpbjsKLSAgICBMb2FkVGltaW5nIG1f
bG9hZFRpbWluZzsKLSAgICBOZXR3b3JrTG9hZE1ldHJpY3NXaXRob3V0Tm9uVGltaW5nRGF0YSBt
X25ldHdvcmtMb2FkTWV0cmljczsKLSAgICBib29sIG1fc2hvdWxkUmVwb3J0RGV0YWlsczsKKyAg
ICBjb25zdCBSZXNvdXJjZVRpbWluZyBtX3Jlc291cmNlVGltaW5nOwogICAgIFZlY3RvcjxSZWY8
UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBtX3NlcnZlclRpbWluZzsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBX
ZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNSZXNvdXJj
ZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAppbmRleCA0NmE4ZjBmMjUxMWNl
YjVjMGM3ZGQzMTE2YzJmOGZhNzdmYzhkN2RkLi5mMDY1NjZkNWUwZmE3ZTFmZDBiNDU5N2YxMGI1
ZjIyZWY2NmExNmQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5pZGwKQEAgLTUwLDYgKzUwLDExIEBAIHR5cGVkZWYgZG91YmxlIERPTUhp
Z2hSZXNUaW1lU3RhbXA7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3Rh
bXAgcmVxdWVzdFN0YXJ0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0
YW1wIHJlc3BvbnNlU3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1l
U3RhbXAgcmVzcG9uc2VFbmQ7CisKKyAgICAvLyBOb3RlOiB0cmFuc2ZlclNpemUsIGVuY29kZWRC
b2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBhcmUgaW50ZW50aW9uYWxseSBvbWl0dGVkCisg
ICAgLy8gYmVjYXVzZSBvZiBwcml2YWN5IGNvbmNlcm5zIHN1Y2ggYXMgaHR0cHM6Ly9naXRodWIu
Y29tL3czYy9yZXNvdXJjZS10aW1pbmcvaXNzdWVzLzIzOAorCisgICAgLy8gaHR0cHM6Ly93d3cu
dzMub3JnL1RSL3NlcnZlci10aW1pbmcvI2V4dGVuc2lvbi10by10aGUtcGVyZm9ybWFuY2VyZXNv
dXJjZXRpbWluZy1pbnRlcmZhY2UKICAgICBbRW5hYmxlZEF0UnVudGltZT1TZXJ2ZXJUaW1pbmdd
IHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJheTxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4g
c2VydmVyVGltaW5nOwogCiAgICAgW0RlZmF1bHRdIG9iamVjdCB0b0pTT04oKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKaW5kZXggNzM2ZDNkMTVhOTIx
OWQyZDBhN2VjMTg0NTE4NWQ5Mzk1MDNmNzA2My4uMDM0MjAxMTc4MjA0MjdlNWJiMzRmNGZkZDdm
OThhY2ZmYmYxYTQyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmgKQEAgLTE4NCw2ICsxODQsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRTZXJ2aWNl
V29ya2VyRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX3NlcnZpY2VXb3JrZXJFbmFibGVkID0g
aXNFbmFibGVkOyB9CiAjZW5kaWYKIAorICAgIGJvb2wgcGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nQVBJRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nQVBJRW5hYmxlZDsgfQorICAgIHZvaWQgc2V0UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
QVBJRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9wZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdB
UElFbmFibGVkID0gZW5hYmxlZDsgfQorICAgIAogICAgIHZvaWQgc2V0Q1NTTG9naWNhbEVuYWJs
ZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9DU1NMb2dpY2FsRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQog
ICAgIGJvb2wgY3NzTG9naWNhbEVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX0NTU0xvZ2ljYWxF
bmFibGVkOyB9CiAKQEAgLTMzNSw2ICszMzgsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAKICAgICBi
b29sIG1fQ1NTTG9naWNhbEVuYWJsZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9wZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkIHsgZmFsc2UgfTsKIAogICAgIC8vIEZhbHNlIGJ5
IGRlZmF1bHQgdW50aWwgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
MTM1MSAvCiAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3czYy9jc3N3Zy1kcmFmdHMvaXNzdWVz
LzMyNTcgaGF2ZSBiZWVuIHNvcnRlZCBvdXQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNvdXJjZUhhbmRsZS5jcHAKaW5kZXggOWZmMjMzNjIzMDQ1
YTg5OTQ0NTUyZDgyYmYzYTcyZjEyMWJkOTg3NS4uMTQ3NzRmMjMyMzI3ZTExOThlMzc0YmMxODc2
YWE5ZTc5Yzk2OGNiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9CbG9iUmVzb3VyY2VIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcApAQCAtNjM0LDcgKzYzNCw3IEBAIHN0YXRpYyB2
b2lkIGRvTm90aWZ5RmluaXNoKEJsb2JSZXNvdXJjZUhhbmRsZSYgaGFuZGxlKQogICAgIGlmICgh
aGFuZGxlLmNsaWVudCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBoYW5kbGUuY2xpZW50KCkt
PmRpZEZpbmlzaExvYWRpbmcoJmhhbmRsZSk7CisgICAgaGFuZGxlLmNsaWVudCgpLT5kaWRGaW5p
c2hMb2FkaW5nKCZoYW5kbGUsIHsgfSk7CiB9CiAKIHZvaWQgQmxvYlJlc291cmNlSGFuZGxlOjpu
b3RpZnlGaW5pc2goKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9OZXR3b3JrTG9hZE1ldHJpY3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
TmV0d29ya0xvYWRNZXRyaWNzLmgKaW5kZXggZDcxMDdhYTQ1Njc4MTdiZTNhNWY3OTIwNDQzMDZm
ZWY3MGI5YmNhMS4uMTY5NjVlZTlhNTE3YTQ1NTk2MTUzNjc2Nzk2Zjk5YmNiMzZmMjVkOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJp
Y3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0
cmljcy5oCkBAIC0yMDAsNyArMjAwLDcgQEAgcHVibGljOgogfTsKIAogI2lmIFBMQVRGT1JNKENP
Q09BKQotQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0
aW9uICosIE5TVVJMUmVzcG9uc2UgKik7CitCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGlt
aW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKik7CiBXRUJDT1JFX0VYUE9SVCBCb3g8TmV0d29ya0xv
YWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTFNlc3Npb25UYXNrVHJhbnNhY3Rpb25NZXRy
aWNzICppbmNvbXBsZXRlTWV0cmljcyk7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUNsaWVudC5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZUNsaWVudC5oCmluZGV4IDlhODBl
MTEzZmI0ODI4Mjk0ZDdhZmZjYWUwMjllZjBjYWY4NWRkMTUuLmZiYTAyMzNiZWZhMmNkNGMxNjE0
ZjcwNTZiNGIwNzUzNzkzMWVjZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50LmgKQEAgLTQ0LDYgKzQ0LDcgQEAgT0JK
Q19DTEFTUyBOU0NhY2hlZFVSTFJlc3BvbnNlOwogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3Mg
QXV0aGVudGljYXRpb25DaGFsbGVuZ2U7CiBjbGFzcyBDcmVkZW50aWFsOworY2xhc3MgTmV0d29y
a0xvYWRNZXRyaWNzOwogY2xhc3MgUHJvdGVjdGlvblNwYWNlOwogY2xhc3MgUmVzb3VyY2VIYW5k
bGU7CiBjbGFzcyBSZXNvdXJjZUVycm9yOwpAQCAtNjcsNyArNjgsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhcios
IHVuc2lnbmVkLCBpbnQgLyplbmNvZGVkRGF0YUxlbmd0aCovKSB7IH0KICAgICBXRUJDT1JFX0VY
UE9SVCB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZUJ1ZmZlcihSZXNvdXJjZUhhbmRsZSosIFJlZjxT
aGFyZWRCdWZmZXI+JiYsIGludCBlbmNvZGVkRGF0YUxlbmd0aCk7CiAgICAgCi0gICAgdmlydHVh
bCB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKSB7IH0KKyAgICB2aXJ0dWFs
IHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwg
Y29uc3QgUmVzb3VyY2VFcnJvciYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCB3YXNCbG9ja2VkKFJl
c291cmNlSGFuZGxlKikgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNhbm5vdFNob3dVUkwoUmVzb3Vy
Y2VIYW5kbGUqKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHAKaW5kZXggYzdjMTJjZThlNzUxYTUy
YmI0NTE3ZGQwMmQ2ZjU4YWRlNjkxMjBlZC4uMmE3Zjg4NDExYjRhMTM5NWI3ZjMxNjAwMjE2MmFl
OTM3MWY0ZmViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9T
eW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHAKQEAgLTc2LDcgKzc2LDcgQEAgdm9p
ZCBTeW5jaHJvbm91c0xvYWRlckNsaWVudDo6ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUq
LCBjb25zdCBjaGFyKiBkYXRhLAogICAgIG1fZGF0YS5hcHBlbmQoZGF0YSwgbGVuZ3RoKTsKIH0K
IAotdm9pZCBTeW5jaHJvbm91c0xvYWRlckNsaWVudDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJj
ZUhhbmRsZSogaGFuZGxlKQordm9pZCBTeW5jaHJvbm91c0xvYWRlckNsaWVudDo6ZGlkRmluaXNo
TG9hZGluZyhSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3Mm
KQogewogICAgIG1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3Vz
TG9hZGVyQ2xpZW50LmgKaW5kZXggOGQyYTk3NzE5MzE0ZmM4OTI1YzIyZGJmZGVjNThlZjkyYjMy
N2RjNC4uZjg4ZGZmN2Y5MzViNjM1NWVhMjcxMDRhYWU1ZTQyY2Y2YjQyNGQ1NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2Fk
ZXJDbGllbnQuaApAQCAtNjcsNyArNjcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkUmVjZWl2
ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFJlc291cmNlSGFuZGxlKiwgY29uc3QgQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUFz
eW5jKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXNwb25zZSYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VI
YW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQsIGludCAvKmVuY29kZWREYXRhTGVuZ3RoKi8p
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIG92
ZXJyaWRlOworICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmFpbChSZXNvdXJj
ZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICNpZiBVU0UoUFJPVEVD
VElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQogICAgIHZvaWQgY2FuQXV0aGVudGljYXRlQWdhaW5z
dFByb3RlY3Rpb25TcGFjZUFzeW5jKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUHJvdGVjdGlvblNw
YWNlJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgb3ZlcnJpZGU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZV
UkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVn
YXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcAppbmRleCAzYzgyYmMzYjRjNjg1OWI4YmE5NGEzMmJl
OWE0MjZhODM5OTZlYzUwLi4yNGQxNDg1ODIwNWUxMjJkMmZiZWRmMWEzOTNkN2E4MGVjZjJjODFi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENv
bm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHAKQEAgLTMyLDYgKzMyLDcgQEAK
ICNpbmNsdWRlICJBdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oIgogI2luY2x1ZGUgIkxvZ2dpbmcu
aCIKICNpbmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRN
ZXRyaWNzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJSZXNvdXJj
ZUhhbmRsZUNsaWVudC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAgLTIzOCw3
ICsyMzksNyBAQCB2b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRo
T3BlcmF0aW9uUXVldWU6OmRpZEZpbmlzaExvYWRpbmcoKQogCiAgICAgICAgIExPRyhOZXR3b3Jr
LCAiQ0ZOZXQgLSBSZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJh
dGlvblF1ZXVlOjpkaWRGaW5pc2hMb2FkaW5nKGhhbmRsZT0lcCkgKCVzKSIsIGhhbmRsZSwgaGFu
ZGxlLT5maXJzdFJlcXVlc3QoKS51cmwoKS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKIAotICAg
ICAgICBoYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKGhhbmRsZSk7CisgICAgICAg
IGhhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlLCBOZXR3b3JrTG9hZE1l
dHJpY3MgeyB9KTsKICAgICAgICAgaWYgKHByb3RlY3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlKSB7
CiAgICAgICAgICAgICBwcm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1ZS0+a2lsbCgpOwogICAg
ICAgICAgICAgcHJvdGVjdGVkVGhpcy0+bV9tZXNzYWdlUXVldWUgPSBudWxscHRyOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1l
dHJpY3MubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtM
b2FkTWV0cmljcy5tbQppbmRleCA1YjNjODk4YmQzMDI3ZGRkNTcyNDkxNjZhYzE0YmVlYjFlNzA3
YjJhLi42NGFlYTRmZDUyZjlkNWUyZTNkMGIzOWM2MzIwZGM5NmE3ZmRhN2YwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmlj
cy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtM
b2FkTWV0cmljcy5tbQpAQCAtNjcsNyArNjcsNyBAQCBCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBj
b3B5VGltaW5nRGF0YShOU1VSTFNlc3Npb25UYXNrVHJhbnNhY3Rpb25NZXRyaWNzICppbmNvbQog
ICAgICk7CiB9CiAKLUJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJM
Q29ubmVjdGlvbiAqY29ubmVjdGlvbiwgTlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpCitCb3g8TmV0
d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rp
b24pCiB7CiAgICAgTlNEaWN0aW9uYXJ5ICp0aW1pbmdEYXRhID0gW2Nvbm5lY3Rpb24gX3RpbWlu
Z0RhdGFdOwogICAgIGlmICghdGltaW5nRGF0YSkKQEAgLTg5LDcgKzg5LDcgQEAgQm94PE5ldHdv
cmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25uZWN0aW9u
LCBOU1VSTFJlc3BvbnMKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwgQCJfa0NGTlRp
bWluZ0RhdGFSZXF1ZXN0U3RhcnQiKSwKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwg
QCJfa0NGTlRpbWluZ0RhdGFSZXNwb25zZVN0YXJ0IiksCiAgICAgICAgIHRpbWluZ1ZhbHVlKHRp
bWluZ0RhdGEsIEAiX2tDRk5UaW1pbmdEYXRhQ29ubmVjdGlvblJldXNlZCIpLAotICAgICAgICBy
ZXNwb25zZS5VUkwuc2NoZW1lCisgICAgICAgIGNvbm5lY3Rpb24uY3VycmVudFJlcXVlc3QuVVJM
LnNjaGVtZQogICAgICk7CiB9CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRl
LmNwcAppbmRleCA1YjgyN2RlYjA1Nzg1ZTM0ZDE3ZGQyOTlkOTYxNDYyMjgwNjZjYzg4Li5lNTY0
YTBjZTY2NjE0YTQ5YTEwMzEzNjg4NTFjNGRhODgyMzUyYTYxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3Vy
Y2VIYW5kbGVEZWxlZ2F0ZS5jcHAKQEAgLTE1Miw3ICsxNTIsNyBAQCB2b2lkIEN1cmxSZXNvdXJj
ZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkUmVjZWl2ZUJ1ZmZlcihDdXJsUmVxdWVzdCYsIFJlZjxT
aGFyZWRCdQogICAgIGNsaWVudCgpLT5kaWRSZWNlaXZlQnVmZmVyKCZtX2hhbmRsZSwgV1RGTW92
ZShidWZmZXIpLCBidWZmZXItPnNpemUoKSk7CiB9CiAKLXZvaWQgQ3VybFJlc291cmNlSGFuZGxl
RGVsZWdhdGU6OmN1cmxEaWRDb21wbGV0ZShDdXJsUmVxdWVzdCYsIE5ldHdvcmtMb2FkTWV0cmlj
cyYmKQordm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZENvbXBsZXRlKEN1
cmxSZXF1ZXN0JiwgTmV0d29ya0xvYWRNZXRyaWNzJiYgbWV0cmljcykKIHsKICAgICBBU1NFUlQo
aXNNYWluVGhyZWFkKCkpOwogCkBAIC0xNjAsNyArMTYwLDcgQEAgdm9pZCBDdXJsUmVzb3VyY2VI
YW5kbGVEZWxlZ2F0ZTo6Y3VybERpZENvbXBsZXRlKEN1cmxSZXF1ZXN0JiwgTmV0d29ya0xvYWRN
ZXRyaWMKICAgICAgICAgcmV0dXJuOwogCiAgICAgQ3VybENhY2hlTWFuYWdlcjo6c2luZ2xldG9u
KCkuZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSk7Ci0gICAgY2xpZW50KCktPmRpZEZpbmlzaExv
YWRpbmcoJm1faGFuZGxlKTsKKyAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmbV9oYW5k
bGUsIFdURk1vdmUobWV0cmljcykpOwogfQogCiB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVn
YXRlOjpjdXJsRGlkRmFpbFdpdGhFcnJvcihDdXJsUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImJiBy
ZXNvdXJjZUVycm9yLCBDZXJ0aWZpY2F0ZUluZm8mJikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKaW5k
ZXggOGYxNzViNjU0MmVhMmYwYzg2OGY3MDFkNTYyODA0YmY3ZTJmZDU5Ny4uYzdlMWEyNGZlOTU1
OWU5OGY1YmM1NmZmMjI3MDBhMWU0YWU1OTMxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKQEAg
LTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJDdXJsUmVxdWVzdC5oIgogI2luY2x1ZGUgIkhUVFBQ
YXJzZXJzLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0
cmljcy5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlJl
c291cmNlSGFuZGxlSW50ZXJuYWwuaCIKICNpbmNsdWRlICJTYW1lU2l0ZUluZm8uaCIKQEAgLTU4
Miw3ICs1ODMsNyBAQCB2b2lkIFJlc291cmNlSGFuZGxlOjpoYW5kbGVEYXRhVVJMKCkKICAgICB9
CiAKICAgICBpZiAoY2xpZW50KCkpCi0gICAgICAgIGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5n
KHRoaXMpOworICAgICAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyh0aGlzLCB7IH0pOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVl
RGVsZWdhdGUubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3Jl
UmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0KaW5kZXggZDQ5Nzg2MGQ4
NzQ1Y2MyMjI1ZmQxM2VlNmQwZDMyODI2NzRhNWNhNi4uOGE0MGI2MDE3ZWEwOTllOTgxZDY5ZDFm
Mjk4NThlMTE5MTU0MWQ4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9tYWMvV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJj
ZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQpAQCAtMzgsNiArMzgsNyBAQAogI2lt
cG9ydCAiU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaCIKICNpbXBvcnQgIldlYkNvcmVVUkxSZXNw
b25zZS5oIgogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KKyNpbXBvcnQgPHBh
bC9zcGkvY29jb2EvTlNVUkxDb25uZWN0aW9uU1BJLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tQdHIu
aD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAKQEAgLTI1Miw3ICsyNTMsNyBAQCBBTExP
V19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIAogICAgICAgICBSZXNvdXJjZVJlc3Bv
bnNlIHJlc291cmNlUmVzcG9uc2Uoci5nZXQoKSk7CiAgICAgICAgIHJlc291cmNlUmVzcG9uc2Uu
c2V0U291cmNlKFJlc291cmNlUmVzcG9uc2U6OlNvdXJjZTo6TmV0d29yayk7Ci0gICAgICAgIHJl
c291cmNlUmVzcG9uc2Uuc2V0RGVwcmVjYXRlZE5ldHdvcmtMb2FkTWV0cmljcyhjb3B5VGltaW5n
RGF0YShjb25uZWN0aW9uLmdldCgpLCByLmdldCgpKSk7CisgICAgICAgIHJlc291cmNlUmVzcG9u
c2Uuc2V0RGVwcmVjYXRlZE5ldHdvcmtMb2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0
aW9uLmdldCgpKSk7CiAKICAgICAgICAgbV9oYW5kbGUtPmRpZFJlY2VpdmVSZXNwb25zZShXVEZN
b3ZlKHJlc291cmNlUmVzcG9uc2UpLCBbc2VsZiwgcHJvdGVjdGVkU2VsZiA9IFdURk1vdmUocHJv
dGVjdGVkU2VsZildIHsKICAgICAgICAgICAgIG1fc2VtYXBob3JlLnNpZ25hbCgpOwpAQCAtMzE0
LDExICszMTUsMjEgQEAgQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKICAg
ICBMT0coTmV0d29yaywgIkhhbmRsZSAlcCBkZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9h
ZGluZzolcCIsIG1faGFuZGxlLCBjb25uZWN0aW9uKTsKIAotICAgIGF1dG8gd29yayA9IFtzZWxm
ID0gc2VsZiwgcHJvdGVjdGVkU2VsZiA9IHJldGFpblB0cihzZWxmKV0gKCkgbXV0YWJsZSB7Cisg
ICAgYXV0byB3b3JrID0gW3NlbGYgPSBzZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNl
bGYpLCBjb25uZWN0aW9uID0gcmV0YWluUHRyKGNvbm5lY3Rpb24pXSAoKSBtdXRhYmxlIHsKICAg
ICAgICAgaWYgKCFtX2hhbmRsZSB8fCAhbV9oYW5kbGUtPmNsaWVudCgpKQogICAgICAgICAgICAg
cmV0dXJuOwogCi0gICAgICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyht
X2hhbmRsZSk7CisgICAgICAgIGlmIChhdXRvIG1ldHJpY3MgPSBjb3B5VGltaW5nRGF0YShjb25u
ZWN0aW9uLmdldCgpKSkgeworICAgICAgICAgICAgZG91YmxlIHJlc3BvbnNlRW5kVGltZSA9IFtb
W2Nvbm5lY3Rpb24gX3RpbWluZ0RhdGFdIG9iamVjdEZvcktleTpAIl9rQ0ZOVGltaW5nRGF0YVJl
c3BvbnNlRW5kIl0gZG91YmxlVmFsdWVdOworICAgICAgICAgICAgbWV0cmljcy0+cmVzcG9uc2VF
bmQgPSBTZWNvbmRzKHJlc3BvbnNlRW5kVGltZSA8PSAwID8gbWV0cmljcy0+cmVzcG9uc2VTdGFy
dC52YWx1ZSgpIDogcmVzcG9uc2VFbmRUaW1lIC0gbWV0cmljcy0+ZmV0Y2hTdGFydC52YWx1ZSgp
KTsKKyAgICAgICAgICAgIG1ldHJpY3MtPm1hcmtDb21wbGV0ZSgpOworICAgICAgICAgICAgbV9o
YW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlLCAqbWV0cmljcyk7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRy
aWNzOworICAgICAgICAgICAgZW1wdHlNZXRyaWNzLm1hcmtDb21wbGV0ZSgpOworICAgICAgICAg
ICAgbV9oYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlLCBlbXB0eU1l
dHJpY3MpOworICAgICAgICB9CisKICAgICAgICAgaWYgKG1fbWVzc2FnZVF1ZXVlKSB7CiAgICAg
ICAgICAgICBtX21lc3NhZ2VRdWV1ZS0+a2lsbCgpOwogICAgICAgICAgICAgbV9tZXNzYWdlUXVl
dWUgPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IGYzNWM1ZjNhNjUzZGUwYmNkMTQ0
ZGVjYTU2ODUyN2FlYTcwZDU0YmYuLjcyNjE1YWM5Y2ZjNjdkNTg4Zjg3MWUzN2E1NDM0OTU5OGJj
Mzc0YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0
d29ya1Nlc3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2Nv
Y29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTc5MCw3ICs3OTAsMTAgQEAgc3RhdGljIGlu
bGluZSB2b2lkIHByb2Nlc3NTZXJ2ZXJUcnVzdEV2YWx1YXRpb24oTmV0d29ya1Nlc3Npb25Db2Nv
YSYgc2Vzc2lvbiwgU2UKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0
YXJ0ID0gU2Vjb25kcyhkb21haW5Mb29rdXBTdGFydEludGVydmFsKTsKICAgICAgICAgbmV0d29y
a0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA9IFNlY29uZHMoZG9tYWluTG9va3VwRW5kSW50
ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdFN0YXJ0ID0gU2Vjb25k
cyhjb25uZWN0U3RhcnRJbnRlcnZhbCk7Ci0gICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1
cmVDb25uZWN0aW9uU3RhcnQgPSBTZWNvbmRzKHNlY3VyZUNvbm5lY3Rpb25TdGFydEludGVydmFs
KTsKKyAgICAgICAgaWYgKG0ucmV1c2VkQ29ubmVjdGlvbiAmJiBbbS5yZXNwb25zZS5VUkwuc2No
ZW1lIGlzRXF1YWxUb1N0cmluZzpAImh0dHBzIl0pCisgICAgICAgICAgICBuZXR3b3JrTG9hZE1l
dHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gV2ViQ29yZTo6cmV1c2VkVExTQ29ubmVjdGlv
blNlbnRpbmVsOworICAgICAgICBlbHNlCisgICAgICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3Mu
c2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gU2Vjb25kcyhzZWN1cmVDb25uZWN0aW9uU3RhcnRJbnRl
cnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kID0gU2Vjb25kcyhj
b25uZWN0RW5kSW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdFN0
YXJ0ID0gU2Vjb25kcyhyZXF1ZXN0U3RhcnRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2Fk
TWV0cmljcy5yZXNwb25zZVN0YXJ0ID0gU2Vjb25kcyhyZXNwb25zZVN0YXJ0SW50ZXJ2YWwpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxl
LmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaAppbmRl
eCAxNzU5NTRjOThmNDY2MmNiM2RhZmUwMGNmYWM0ZmY4Yzk1YWI0ZTc1Li4wOTI5Y2VmOTc4OWMw
Y2NmMTFhM2U5NDEwZjVkZTZmZmNhZmViYTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaApAQCAtNzQsNyArNzQsNyBAQCBwcml2YXRlOgog
ICAgICAgICBwaW5nTG9hZENvbXBsZXRlKHsgfSwgcmVzcG9uc2UpOwogICAgIH0KICAgICB2b2lk
IGRpZFJlY2VpdmVCdWZmZXIoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGUqLCBSZWY8V2ViQ29yZTo6
U2hhcmVkQnVmZmVyPiYmLCBpbnQpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0ZSgpOyB9Ci0gICAg
dm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlKikgZmluYWwgeyBw
aW5nTG9hZENvbXBsZXRlKCk7IH0KKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6
UmVzb3VyY2VIYW5kbGUqLCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmKSBmaW5h
bCB7IHBpbmdMb2FkQ29tcGxldGUoKTsgfQogICAgIHZvaWQgZGlkRmFpbChXZWJDb3JlOjpSZXNv
dXJjZUhhbmRsZSosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9yKSBmaW5hbCB7
IHBpbmdMb2FkQ29tcGxldGUoZXJyb3IpOyB9CiAgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFs
U3RvcmFnZShXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSopIGZpbmFsIHsgcmV0dXJuIG1fc2hvdWxk
VXNlQ3JlZGVudGlhbFN0b3JhZ2U7IH0KICAgICB2b2lkIHRpbWVvdXRUaW1lckZpcmVkKCkgeyBw
aW5nTG9hZENvbXBsZXRlKFdlYkNvcmU6OlJlc291cmNlRXJyb3IgeyBTdHJpbmcoKSwgMCwgbV9j
dXJyZW50UmVxdWVzdC51cmwoKSwgIkxvYWQgdGltZWQgb3V0Il9zLCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yOjpUeXBlOjpUaW1lb3V0IH0pOyB9CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9UZXN0T3B0aW9ucy5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9UZXN0T3B0aW9ucy5j
cHAKaW5kZXggZDFiNTFjNjFmZTBkOGY1NTYzODlkNzg5YjZmY2VlYzE1ZmJhNGQwZC4uYjdmODFk
MWNmZDVmOTZjODU2OGUxMmUwMzk5YjJmODQ0OTliMWQ1NyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rl
c3RPcHRpb25zLmNwcApAQCAtOTIsNiArOTIsNyBAQCBjb25zdCBUZXN0RmVhdHVyZXMmIFRlc3RP
cHRpb25zOjpkZWZhdWx0cygpCiAgICAgICAgICAgICB7ICJOUEFQSVBsdWdJbnNFbmFibGVkRm9y
VGVzdGluZ0luV2ViS2l0TGVnYWN5IiwgdHJ1ZSB9LAogICAgICAgICAgICAgeyAiTmVlZHNTdG9y
YWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmsiLCBmYWxzZSB9LAogICAgICAgICAgICAgeyAiT2Zm
bGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkIiwgdHJ1ZSB9LAorICAgICAgICAgICAgeyAi
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nQVBJRW5hYmxlZCIsIHRydWUgfSwKICAgICAgICAg
ICAgIHsgIlJlcXVpcmVzVXNlckdlc3R1cmVGb3JBdWRpb1BsYXliYWNrIiwgZmFsc2UgfSwKICAg
ICAgICAgICAgIHsgIlJlcXVpcmVzVXNlckdlc3R1cmVGb3JNZWRpYVBsYXliYWNrIiwgZmFsc2Ug
fSwKICAgICAgICAgICAgIHsgIlJlcXVpcmVzVXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrIiwg
ZmFsc2UgfSwKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdE9wdGlvbnMu
Y3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5jcHAKaW5kZXggNDY5MDEz
NjUzN2FhMjgzZWZmYWU1ZDFmOTUxNDExNjFmYThiZTkxMS4uODc2Mzg4NjNhMTliMjQ1YWI1MjFl
ZGIxYjBhNmZiYTk4N2E4YTFmZCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9U
ZXN0T3B0aW9ucy5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0T3B0aW9ucy5j
cHAKQEAgLTEwMiw2ICsxMDIsNyBAQCBjb25zdCBUZXN0RmVhdHVyZXMmIFRlc3RPcHRpb25zOjpk
ZWZhdWx0cygpCiAgICAgICAgICAgICB7ICJPZmZzY3JlZW5DYW52YXNFbmFibGVkIiwgdHJ1ZSB9
LAogICAgICAgICAgICAgeyAiT2Zmc2NyZWVuQ2FudmFzSW5Xb3JrZXJzRW5hYmxlZCIsIHRydWUg
fSwKICAgICAgICAgICAgIHsgIlBhZ2VWaXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25F
bmFibGVkIiwgZmFsc2UgfSwKKyAgICAgICAgICAgIHsgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZ0FQSUVuYWJsZWQiLCB0cnVlIH0sCiAgICAgICAgICAgICB7ICJQbHVnaW5zRW5hYmxlZCIs
IHRydWUgfSwKICAgICAgICAgICAgIHsgIlJlcXVpcmVzVXNlckdlc3R1cmVGb3JBdWRpb1BsYXli
YWNrIiwgZmFsc2UgfSwKICAgICAgICAgICAgIHsgIlJlcXVpcmVzVXNlckdlc3R1cmVGb3JNZWRp
YVBsYXliYWNrIiwgZmFsc2UgfSwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjZWM0YTFlM2EwYTkyMGYwODUxMWUxOGNlZDdm
MDZiY2RjMjMyODdiLi5jNGY3Y2FhNDExZDU1NDA5N2Y4OTEwNmIyMTlkYzdiZTA0MjE4NmRmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjEtMDUtMTggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlv
biBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisg
ICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgQW5ub3lpbmdseSBzZWN1cmVfY29u
bmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy5odG1sIGJlY29tZXMgZmxha3kgd2l0aCBhIGNv
cnJlY3QgaW1wbGVtZW50YXRpb24gYmVjYXVzZSBpdCBhc3N1bWVzCisgICAgICAgIHRoYXQgbm8g
Y29ubmVjdGlvbiBpcyByZXVzZWQuICBIb3dldmVyLCB3aGVuIHJ1bm5pbmcgdGhpcyB0ZXN0IGFm
dGVyIG90aGVyIHRlc3RzLCBhbm90aGVyIGNvbm5lY3Rpb24gaXMgb2Z0ZW4gcmV1c2VkLgorICAg
ICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXIt
Zmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGVyZm9ybWFu
Y2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVs
LXBhaW50Lmh0bWw6CisgICAgICAgICogcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2Vy
dmVyLWFwaS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1h
bmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGVyZm9ybWFuY2UtYXBp
L3Jlc291cmNlcy90aW1lbGluZS1hcGkuanM6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMS9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQ6CisgICAgICAgIE5leHQgaG9wIHByb3Rv
Y29sIGlzbid0IGltcGxlbWVudGVkIGluIFJlc291cmNlSGFuZGxlLiAgVGhhdCdzIHByb2JhYmx5
IG5vIGJpZyBkZWFsIGJlY2F1c2UgV2ViS2l0TGVnYWN5IGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1
c2VkIGJ5IFNhZmFyaS4KKwogMjAyMS0wNS0xOCAgUm9iZXJ0IEplbm5lciAgPGplbm5lckBhcHBs
ZS5jb20+CiAKICAgICAgICAgRGlzYWJsZSBXZWJTUUwgaW4gV2ViS2l0VGVzdFJ1bm5lcgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNjE4ZTJkMzIwNTk1YmY4YjAxYWY5OGM3NmQz
YmQ5M2Q2NTQxZjUzZS4uMWY4NGI0ODQ0ZTcyNDI0YmVjYTNlMWRiNzEyY2I2NDM2YjM2NzRmOCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTI5IEBACisyMDIxLTA1
LTE4ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJl
dmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFj
dGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sOiBBZGRlZC4KKyAgICAgICAgVGhp
cyB0ZXN0IGZhaWxzIGJlY2F1c2Ugd2UgaGF2ZSBub3QgaW1wbGVtZW50ZWQgdHJhbnNmZXJTaXpl
LCBlbmNvZGVkQm9keVNpemUsIGFuZCBkZWNvZGVkQm9keVNpemUgYXMgbm90ZWQgaW4gUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sOiBBZGRlZC4KKyAgICAgICAgVGhpcyB0ZXN0
IGZhaWxzIGJlY2F1c2Ugd2UgaGF2ZSBub3QgaW1wbGVtZW50ZWQgdHJhbnNmZXJTaXplLCBlbmNv
ZGVkQm9keVNpemUsIGFuZCBkZWNvZGVkQm9keVNpemUgYXMgbm90ZWQgaW4gUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5pZGwKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
b3Blbi5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVw
bGFjZWQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNz
aWJsZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zy
b21fdGhlX3N0YXJ0Lmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVf
d2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5o
dG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9iYWNrZm9yd2FyZC5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxv
YWQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIG91ciB0
ZXN0IGluZnJhc3RydWN0dXJlIGRvZXNuJ3Qgc3VwcG9ydCBsb2FkaW5nIGZyb20gd3d3LmxvY2Fs
aG9zdC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWw6
IENvcGllZCBmcm9tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlh
bF9vcHRfaW4uaHRtbC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhw
ZWN0ZWQudHh0OgorICAgICAgICBUaGlzIHRlc3QgZmFpbHMgYmVjYXVzZSBvdXIgdGVzdCBpbmZy
YXN0cnVjdHVyZSBkb2Vzbid0IHN1cHBvcnQgbG9hZGluZyBmcm9tIHd3dy5sb2NhbGhvc3QuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWw6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25l
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfc2VydmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMg
ZnVydGhlciBpbnZlc3RpZ2F0aW9uLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWw6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94
c2VydmVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGZhaWxzIGJlY2F1c2Ugb3Vy
IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBwb3J0IGxvYWRpbmcgZnJvbSB3d3cubG9j
YWxob3N0LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMgZnVydGhl
ciBpbnZlc3RpZ2F0aW9uLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbDogQWRkZWQuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24t
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVz
cy5qczoKKyAgICAgICAgKHRlc3RfbmFtZXNwYWNlKToKKyAgICAgICAgKHRlc3RfYXR0cmlidXRl
X2V4aXN0cyk6CisgICAgICAgICh0ZXN0X2VudW0pOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRw
cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2Vj
dXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAg
ICBUaGlzIHRlc3QgaGFzIGJlZW4gbWFya2VkIGFzIGZsYWt5LiAgSXQgbmVlZHMgdG8gYmUgZml4
ZWQgdG8gbm90IHJlbHkgb24gbm8gaW5pdGlhbCBjb25uZWN0aW9uIHJldXNlLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlv
bl90eXBlLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Rlc3RfZG9jdW1lbnRfb25sb2FkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0
bWw6IEFkZGVkLgorICAgICAgICBUaGlzIHRlc3QgZmFpbHVyZSBuZWVkcyBmdXJ0aGVyIGludmVz
dGlnYXRpb24uCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9y
aWdpbi1jaGVjay5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9NRVRBLnltbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanM6
IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdC50LnQuc3RlcF90aW1lb3V0KToKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1v
YnNlcnZlci5hbnkuanM6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1p
bnZhbGlkLWVudHJpZXMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzOiBBZGRlZC4KKyAgICAgICAg
KGFzeW5jIGlkbF9hcnJheSk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWctb2JzZXJ2ZXJzLmFueS5qczogQWRk
ZWQuCisgICAgICAgIChwcm9taXNlX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNs
b25hYmxlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9vYnNlcnZlci1idWZmZXJlZC1mYWxzZS5hbnkuanM6IEFkZGVkLgorICAg
ICAgICAoYXN5bmNfdGVzdC50LnQuc3RlcF90aW1lb3V0KToKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55
LmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55LmpzOiBBZGRlZC4K
KyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlwZXMuYW55
LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qczogQWRkZWQu
CisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55Lmpz
OiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qczogQWRkZWQuCisg
ICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qczogQWRkZWQuCisgICAgICAgIChh
c3luY190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUu
YW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNv
dXJjZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tdGFrZVJlY29yZHMuYW55
LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnku
aHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dv
cmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzOiBBZGRlZC4KKyAgICAgICAgKGNhdGNo
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3Vw
cG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICBUaGlzIHRlc3QgZmFp
bHVyZSBuZWVkcyBmdXJ0aGVyIGludmVzdGlnYXRpb24uICBJdCdzIGEgYmluZGluZ3MgZ2VuZXJh
dGlvbiBwcm9ibGVtIEkndmUgdW5zdWNjZXNzZnVsbHkgbG9va2VkIGludG8gYmVmb3JlLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRF
bnRyeVR5cGVzLmFueS5qczoKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanM6IEFkZGVkLgorICAgICAgICAo
dGVzdFRpbWVSZXNvbHV0aW9uKToKKyAgICAgICAgKHRpbWVCeVVzZXJUaW1pbmcpOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1w
ZXJmb3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5j
ZS1vYnNlcnZlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgVGhpcyBleGlzdGluZyB0ZXN0IGZhaWx1cmUgbmVlZHMgbW9yZSBp
bnZlc3RpZ2F0aW9uLiAgV2UgYXJlIHByb2JhYmx5IGNsb3NlIHRvIGEgZml4IGFmdGVyIHRoaXMg
cGF0Y2guCisKIDIwMjEtMDUtMTggIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBhcHBsZS5j
b20+CiAKICAgICAgICAgVGVtcG9yYXJpbHkgcmV2ZXJ0IHIyNzY1OTIgYXMgaXQgYnJlYWtzIHNv
bWUgbmF0aXZlIGFwcHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDZlMDdlOTdmNmE2OTY2OTEyNDBm
NjVjYWY2N2U0MzY5Y2ZkYzBjOWMuLjQ3ODk1ZGZkZGFkZDdlYTUwMDc5NDFjYTVmNDE3YTZlNzQ1
NGM0MTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5
b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtOTM5LDYgKzkzOSw3IEBAIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3JpZ2luLXNhbmR3aWNo
LW5vLVRBTy5zdWIuCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRp
bWluZy9jb3JzLXByZWZsaWdodC5hbnkuaHRtbCBbIEZhaWx1cmUgUGFzcyBdCiBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jcm9zc29yaWdpbi1zYW5kd2lj
aC1UQU8uc3ViLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY3Jvc3NvcmlnaW4tc2FuZHdpY2gtcGFydGlhbC1UQU8u
c3ViLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRw
cy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9tZWRpYWNhcHR1cmUtc3RyZWFtcy9NZWRpYVN0cmVhbS1kZWZhdWx0LWZlYXR1cmUtcG9saWN5
Lmh0dHBzLmh0bWwgWyBEdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIgXQogaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtcmVjb3JkL3Bhc3N0aHJvdWdoL01lZGlhUmVj
b3JkZXItcGFzc3Rocm91Z2guaHR0cHMuaHRtbCBbIEZhaWx1cmUgVGltZW91dCBQYXNzIF0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvTUVUQS55bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJmYjBl
MGYxZjY3YTljNmFhMmU3ZTkyMWIwOWU4NWY4ZDk3MGIyOTAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL01FVEEueW1sCkBAIC0wLDAgKzEsNSBAQAorc3BlYzogaHR0cHM6Ly93M2MuZ2l0aHViLmlv
L25hdmlnYXRpb24tdGltaW5nLworc3VnZ2VzdGVkX3Jldmlld2VyczoKKyAgLSBwbGVoZWdhcgor
ICAtIGlncmlnb3JpaworICAtIHlvYXZ3ZWlzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJh
Y3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVf
aW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIyOGMxMGNlMzZjM2M3NDQ4
NDg5N2U1ZDI0ZGFmZjkxNzM5NWViNTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRl
cmFjdGl2ZV9pbWFnZV9kb2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNj
cmlwdGlvbgorCitUaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1bWVudCBoYXMgcG9zaXRpdmUt
dmFsdWUgZG9tSW50ZXJhY3RpdmUuCisKKworCitQQVNTIFRlc3QgZG9tSW50ZXJhY3RpdmUgb24g
aW1hZ2UgZG9jdW1lbnQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2Vf
ZG9jdW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMzY3NDJmMGVmZjZkMDdjN2MwNjk0YjA2NmRmYTAxN2YwZDEwNDJiZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwK
QEAgLTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5UZXN0IGRvbUlu
dGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50LjwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5v
cmcvbXVsdGlwYWdlL2Jyb3dzaW5nLXRoZS13ZWIuaHRtbCNyZWFkLW1lZGlhIi8+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorICAgIDwvaGVhZD4KKyAgICA8c2NyaXB0PgorICAgICAgICBjb25zdCB0ID0gYXN5bmNfdGVz
dCgiVGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudCIpOworICAgICAgICBmdW5j
dGlvbiBmcmFtZUxvYWRlZCgpIHsKKyAgICAgICAgICAgIGNvbnN0IHRpbWluZyA9IGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoImlmcmFtZSIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UudGltaW5n
OworICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbih0aW1pbmcuZG9tSW50ZXJhY3RpdmUs
IDAsCisgICAgICAgICAgICAgICAgIkV4cGVjdCBkb21JbnRlcmFjdGl2ZSB0byBiZSBwb3NpdGl2
ZSB2YWx1ZS4iKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9CisgICAgPC9zY3Jp
cHQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxw
PlRoaXMgdGVzdHMgdGhhdCBhIGltYWdlIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21J
bnRlcmFjdGl2ZS48L3A+CisgICAgICAgIDxpZnJhbWUgc3JjPSIuLi9pbWFnZXMvc21pbGV5LnBu
ZyIgb25sb2FkPSJmcmFtZUxvYWRlZCgpIj48L2lmcmFtZT4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJh
Y3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVf
bWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3ZjY3MmRiODI3MzQ5OTZi
YWE2ZDQxMmQ2MTljZWY3YmRiODFlY2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRl
cmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNj
cmlwdGlvbgorCitUaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMgcG9zaXRpdmUt
dmFsdWUgZG9tSW50ZXJhY3RpdmUuCisKKworCitQQVNTIFRlc3QgZG9tSW50ZXJhY3RpdmUgb24g
bWVkaWEgZG9jdW1lbnQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFf
ZG9jdW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZTRlNDU3MjVkODM2MDViNTE5Y2U3NGVhOGZmNDU2MWRjZDNkNzU5NQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwK
QEAgLTAsMCArMSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5UZXN0IGRvbUlu
dGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50LjwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5v
cmcvbXVsdGlwYWdlL2Jyb3dzaW5nLXRoZS13ZWIuaHRtbCNyZWFkLW1lZGlhIi8+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorICAgIDwvaGVhZD4KKyAgICA8c2NyaXB0PgorICAgICAgICBjb25zdCB0ID0gYXN5bmNfdGVz
dCgiVGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudCIpOworICAgICAgICBmdW5j
dGlvbiBmcmFtZUxvYWRlZCgpIHsKKyAgICAgICAgICAgIGNvbnN0IHRpbWluZyA9IGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoImlmcmFtZSIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UudGltaW5n
OworICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbih0aW1pbmcuZG9tSW50ZXJhY3RpdmUs
IDAsCisgICAgICAgICAgICAgICAgIkV4cGVjdCBkb21JbnRlcmFjdGl2ZSB0byBiZSBwb3NpdGl2
ZSB2YWx1ZS4iKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICB9CisgICAgPC9zY3Jp
cHQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxw
PlRoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGRvY3VtZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21J
bnRlcmFjdGl2ZS48L3A+CisgICAgICAgIDxpZnJhbWUgc3JjPSIuLi9tZWRpYS9BNC5tcDQiIG9u
bG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5k
b3cuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2luZG93LmpzCmluZGV4IDhjYzM1NDZiM2MyN2E5ZDkz
ZWU1NjIxNTg0ZDgzZDU2YTMwODUxM2MuLjcyY2YwYzNhM2QzYzhjYjc3NTQxNjI1YTA1NTRkODQ2
NGQ3YzExMmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9pZGxoYXJuZXNzLndpbmRvdy5qcwpAQCAtMSwyMSArMSwyMCBAQAogLy8gTUVUQTogc2NyaXB0
PS9yZXNvdXJjZXMvV2ViSURMUGFyc2VyLmpzCiAvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9p
ZGxoYXJuZXNzLmpzCisvLyBNRVRBOiB0aW1lb3V0PWxvbmcKIAogJ3VzZSBzdHJpY3QnOwogCiAv
LyBodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy8KIAogaWRsX3Rlc3QoCi0g
IFsnbmF2aWdhdGlvbi10aW1pbmcnXSwKLSAgWydyZXNvdXJjZS10aW1pbmcnLCAncGVyZm9ybWFu
Y2UtdGltZWxpbmUnLCAnaHItdGltZScsICdkb20nXSwKLSAgaWRsX2FycmF5ID0+IHsKLSAgICBp
ZGxfYXJyYXkuYWRkX29iamVjdHMoeworICBbJ25hdmlnYXRpb24tdGltaW5nJywgJ2hyLXRpbWUn
XSwKKyAgWydyZXNvdXJjZS10aW1pbmcnLCAncGVyZm9ybWFuY2UtdGltZWxpbmUnLCAnZG9tJywg
J2h0bWwnXSwKKyAgaWRsQXJyYXkgPT4geworICAgIGlkbEFycmF5LmFkZF9vYmplY3RzKHsKICAg
ICAgIFBlcmZvcm1hbmNlOiBbJ3BlcmZvcm1hbmNlJ10sCiAgICAgICBQZXJmb3JtYW5jZU5hdmln
YXRpb246IFsncGVyZm9ybWFuY2UubmF2aWdhdGlvbiddLAogICAgICAgUGVyZm9ybWFuY2VUaW1p
bmc6IFsncGVyZm9ybWFuY2UudGltaW5nJ10sCi0gICAgICBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6IFsKLSAgICAgICAgJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRp
b24iKVswXScKLSAgICAgIF0KKyAgICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzogWydw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nXQogICAgIH0pOwog
ICB9CiApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44YjIzYjc2MDVkOTIyZGEzODcyYWI1NmRjZmVhYzU4M2MyZWU0MmIyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRo
YXQgUGVyZm9ybWFuY2VPYnNlcnZlciBjYW4gb2JzZXJ2ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2Ug
YW5kIHRoYXQgdGhlIGV4cGVjdGVkIGF0dHJpYnV0ZXMgaW4gbmF2IHRpbWluZyAyIGluc3RhbmNl
IGV4aXN0IChidXQgZG9lcyBub3QgdmFsaWRhdGUgdGhhdCB0aGUgdmFsdWVzIGFyZSBjb3JyZWN0
KS4KKworCitGQUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIG9i
c2VydmFibGUuIGFzc2VydF90cnVlOiBFeHBlY3RlZCBhdHRyaWJ1dGU6IGRlY29kZWRCb2R5U2l6
ZS4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
YXR0cmlidXRlc19leGlzdC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmI2MDQ4ZTA2MWJhMDU3Y2Q5NzFiMDhlMDMyYmU3MTdmMGFkMDRkMGQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwK
QEAgLTAsMCArMSw2NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBU
aW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdv
b2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVs
PSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNz
ZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2
IHRpbWluZyAyIGluc3RhbmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5h
diB0aW1pbmcgMiBpbnN0YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhl
IHZhbHVlcyBhcmUgY29ycmVjdCkuPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZh
ciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAg
ICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScs
CisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2Fk
ZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAor
ICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBF
bmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJh
dGlvbicsCisgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRy
eVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRv
clR5cGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2
ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25hbWUnLAorICAgICAgICAgICAgJ25leHRIb3BQcm90
b2NvbCcsCisgICAgICAgICAgICAncmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJl
Y3RFbmQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVl
c3RTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3Bv
bnNlU3RhcnQnLAorICAgICAgICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAg
ICAgICAndHJhbnNmZXJTaXplJywKKyAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1
bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAg
ICAgICAnd29ya2VyU3RhcnQnCisgICAgICAgIF07CisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGVudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygp
OworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIlRoZXJlIHNob3VsZCBiZSBvbmx5IG9uZSBuYXZpZ2F0
aW9uIHRpbWluZyBpbnN0YW5jZS4iKTsKKyAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmlidXRlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X3RydWUobmF2VGltaW5nMkF0dHJpYnV0ZXNbaV0gaW4gZW50cmll
c1swXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgYXR0cmlidXRlOiAi
ICsgbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV0gKyAiLiIpOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAg
ICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7Cisg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFy
ZSBvYnNlcnZhYmxlLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYjQ5OWY4YWVkZGM5YmYzNmUzZWI1MWNiNjhiNjk3Nzg4ODIwYjAyYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0
aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJp
YnV0ZXMgYXJlIGluIGNlcnRhaW4gb3JkZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVk
IHZhbHVlcy4KKworCitGQUlMIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNl
J3MgdmFsdWUgaXMgcmVhc29uYWJsZS4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHRyYW5zZmVyU2l6
ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXplIGluIHVuY2FjaGVkIG5hdmlnYXRp
b24uIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVl
cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjc5ODA5ZTQxZGRkN2Y2OGIxZDNmYTY5NzljYTBkNmZiMTUzOGE0
ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5o
dG1sCkBAIC0wLDAgKzEsMTM3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRs
ZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGlu
ayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5n
LTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzIj48L3NjcmlwdD4KKyAg
ICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAg
ICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1pbmcg
MiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4gb3Jk
ZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy48L3A+CisKKyAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgLy8gSG9zdCBuYW1lcyBhbmQgcG9ydHMgbWF5IGJlIGNvbmZpZ3Vy
ZWQgYXQgdGVzdCBleGVjdXRpb24gdGltZS4gVGhlCisgICAgICAgIC8vIHdlYi1wbGF0Zm9ybS10
ZXN0cyBzZXJ2ZXIgb2ZmZXJzIHR3byBtZWNoYW5pc21zIGZvciByZXRyaWV2aW5nIHRoZXNlCisg
ICAgICAgIC8vIHZhbHVlcyBkeW5hbWljYWxseTogZGlyZWN0IHRleHQgc3Vic3RpdHV0aW9uIGFu
ZCB0aGUgYGdldC1ob3N0LWluZm9gCisgICAgICAgIC8vIHNjcmlwdC4gVGhlIGZvcm1lciBpcyBp
bmFwcHJvcHJhdGUgZm9yIHRoaXMgdGVzdCBiZWNhdXNlIGl0CisgICAgICAgIC8vIGluZmx1ZW5j
ZXMgdGhlIHNpemUgb2YgdGhlIGRvY3VtZW50LCBhbmQgdGhpcyB0ZXN0IGluY2x1ZGVzIHN0YXRp
YworICAgICAgICAvLyBhc3NlcnRpb25zIGZvciB0aGF0IHZhbHVlLgorICAgICAgICB2YXIgaG9z
dF9pbmZvID0gZ2V0X2hvc3RfaW5mbygpOworICAgICAgICB2YXIgZXhwZWN0ZWRVcmwgPSAiaHR0
cDovLyIgKyBob3N0X2luZm8uT1JJR0lOQUxfSE9TVCArICI6IiArCisgICAgICAgICAgICBob3N0
X2luZm8uSFRUUF9QT1JUICsKKyAgICAgICAgICAgICIvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwiOworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50
T3JkZXIxID0gWworICAgICAgICAgICAgJ3N0YXJ0VGltZScsCisgICAgICAgICAgICAncmVkaXJl
Y3RTdGFydCcsCisgICAgICAgICAgICAvLyd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAg
ICdyZWRpcmVjdEVuZCcsCisgICAgICAgICAgICAvLyd1bmxvYWRFdmVudEVuZCcsCisgICAgICAg
ICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAg
ICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywK
KyAgICAgICAgICAgIC8vJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAnY29u
bmVjdEVuZCcsCisgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNw
b25zZVN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAnZG9t
SW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywK
KyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2Rv
bUNvbXBsZXRlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAn
bG9hZEV2ZW50RW5kJworICAgICAgICBdOworCisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRP
cmRlcjIgPSBbCisgICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAndW5s
b2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAg
J3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JworICAgICAgICBdOwor
CisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRPcmRlcjMgPSBbCisgICAgICAgICAgICAnY29u
bmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAg
ICAgICAgJ2Nvbm5lY3RFbmQnCisgICAgICAgIF07CisKKyAgICAgICAgLy8gTmF2aWdhdGlvbiBU
aW1pbmcgYXR0cmlidXRlcyBmb3IgY29tcGFyaXNvbi4KKyAgICAgICAgdmFyIG5hdlRpbWluZzFF
dmVudE9yZGVyID0gWworICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAg
ICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcsCisgICAgICAg
ICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAg
ICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAg
ICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21D
b250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAg
ICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJworICAg
ICAgICBdOworCisgICAgICAgIGZ1bmN0aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRP
cmRlciwgdGltaW5nRW50cnkpIHsKKyAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZl
bnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0
aW1pbmdFbnRyeVtldmVudE9yZGVyW2ldXSA8PSB0aW1pbmdFbnRyeVtldmVudE9yZGVyW2kgKyAx
XV0sCisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRPcmRlcltpXSArICIg
dG8gYmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSArICIuIik7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7
CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAg
ICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciBlbnRyaWVzID0gZW50cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVudHJ5VHlwZSwgIm5hdmln
YXRpb24iLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGVudHJ5VHlwZSB0byBi
ZTogbmF2aWdhdGlvbi4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRy
aWVzWzBdLm5hbWUsIGV4cGVjdGVkVXJsKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyaWVzWzBdLnN0YXJ0VGltZSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJF
eHBlY3RlZCBzdGFydFRpbWUgdG8gYmU6IDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cmllc1swXS5kdXJhdGlvbiwgZW50cmllc1swXS5sb2FkRXZlbnRFbmQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgZHVyYXRpb24gdG8gYmUgZXF1YWwgdG8g
bG9hZEV2ZW50RW5kLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJp
ZXNbMF0uaW5pdGlhdG9yVHlwZSwgIm5hdmlnYXRpb24iLAorICAgICAgICAgICAgICAgICAgICAg
ICAgIkV4cGVjdGVkIGluaXRpYXRvclR5cGUgdG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5uZXh0SG9wUHJvdG9jb2wsICJo
dHRwLzEuMSIpOworICAgICAgICAgICAgICAgICAgICAvLyBUaGlzIHRlc3QgbWF5IGZhaWwgd2hl
biByZXNwb25zZSBpcyBmcm9tIGNhY2guIERpc2FibGUgb3IgY2xlYW4gY2FjaCBiZWZvcmUKKyAg
ICAgICAgICAgICAgICAgICAgLy8gcnVubmluZyB0aGlzIHRlc3QuCisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF90cnVlKGVudHJpZXNbMF0udHJhbnNmZXJTaXplID4gZW50cmllc1swXS5lbmNv
ZGVkQm9keVNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgdHJhbnNmZXJT
aXplIHRvIGJlIGdyZWF0ZXIgdGhhbiBlbmNvZGVkQm9keVNpemUgaW4gdW5jYWNoZWQgbmF2aWdh
dGlvbi4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmVu
Y29kZWRCb2R5U2l6ZSwgNTk1NSk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZW50cmllc1swXS5kZWNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAgICAgICB2
ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMSk7
CisgICAgICAgICAgICAgICAgICAgIC8vIFZlcmlmeSBpZiB0aGUgcmVwb3J0ZWQgdGltaW5nIGlz
IG5vdCB0aGF0IGRpZmZlcmVudAorICAgICAgICAgICAgICAgICAgICAvLyBmcm9tIHdoYXQgaXMg
cmVwb3J0ZWQgYnkgTmF2aWdhdGlvbiBUaW1pbmcgMS4KKyAgICAgICAgICAgICAgICAgICAgbmF2
VGltaW5nMUV2ZW50T3JkZXIuZm9yRWFjaCgKKyAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlv
bihldmVudCkgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmdbZXZlbnRdIC0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCA+IDApIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyaWVzWzBdW2V2ZW50XSwgMCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnQgKyAiIHRvIGJlIGdy
ZWF0ZXIgdGhhbiAwIik7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgICAgICAgICAvLyBXaGVuIHVubG9hZEV2ZW50IGhhcHBl
bnMKKyAgICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1bInVubG9hZEV2ZW50U3RhcnQi
XSAhPSAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVy
KGVudHJpZXNbMF0sIG5hdlRpbWluZzJFdmVudE9yZGVyMik7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgLy8gV2hlbiBhIHNlY3VyZSB0cmFuc3BvcnQgaXMgdXNl
ZAorICAgICAgICAgICAgICAgICAgICBpZiAoZW50cmllc1swXVsic2VjdXJlQ29ubmVjdGlvblN0
YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRP
cmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjMpOworICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAg
ICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAg
ICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRp
b24iXX0pOworCisgICAgICAgIH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0
YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4t
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQK
aW5kZXggNDk5OTlkODk0MTEwNDk3OWIzMjZhN2ZmYTZiODkwMTg1YThmYTY4ZS4uMDVmMjMwYjlm
YjBmYWI4ZDhkN2NiNTg1ZWM5ODVjMjA4MTExOWZkNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1l
bnRfb3Blbi1leHBlY3RlZC50eHQKQEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5
cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1tu
YXZUaW1pbmcyQXR0cmlidXRlc1tpXV0nKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlk
YXRlcyB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIHJl
bWFpbnMgY29uc3RhbnQgd2hlbiBhIGRvY3VtZW50IGlzIHJlcGxhY2VkIHVzaW5nIGRvY3VtZW50
Lm9wZW4uCkBAIC05LDYgKzgsNSBAQCBUaGUgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVj
a3MgdG8gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbgogCiAKIAotSGFy
bmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykK
LQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9kb2N1bWVudF9vcGVuLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLmh0
bWwKaW5kZXggYmMwNmVkNTg0MGE3NTU1ZDFlMmE2MjU4MGNmNWE5ODhjYTU4YTcxOC4uYWExMDk3
MjQ4ZGQxMzNlNWU2MWIxN2M2ZjkyZjE0Mzc1NzliNTg4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29w
ZW4uaHRtbApAQCAtOCw2ICs4LDggQEAKICAgICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICAgIDxzY3JpcHQ+
CisgICAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAg
ICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWwogICAgICAgICAgICAgICAgICAgJ2Nv
bm5lY3RFbmQnLAogICAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKaW5kZXggYTk3Yzg2YmNiNGY2
N2Y1MjRiMWJjZTM4OThjZTVlZDMwNzQ3OGNiZS4uMzVhNTZhM2ZlNTc3Mjk4MWJkYzJiYzVhY2Uw
NzkzYzEwMzEyNWZkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFj
ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4
cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMSBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251
bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251bmxvYWQg
aGFuZGxlcihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdwbnQxLnR5cGUnKQogRGVzY3JpcHRpb24KIAogVGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGF0IGEgUGVyZm9ybWFuY2VOYXZpZ2F0aW5nVGltaW5nIGNvcnJlc3Bv
bmRpbmcgdG8gYSBkZXRhY2hlZCBkb2N1bWVudCBjYW4ndCBhY2Nlc3MgYSBkaWZmZXJlbnQgZG9j
dW1lbnQncyBzdGF0ZS4KIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBl
JykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
cmVwbGFjZWQuaHRtbAppbmRleCBiOTEwZjQ1M2QxMjk1MWQwMWNiNTg0ODk5NzY2YjY0ZmUwOGU4
MzZjLi41OTcyZjIwZTliZDdmZmRmMjdkMzJiNWIzMGI2MzkxM2NlZWVlZDA5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsK
KwogICAgICAgICAgICAgdmFyIG5hdmlnYXRpb25fZnJhbWU7CiAgICAgICAgICAgICB2YXIgcG50
MTsKICAgICAgICAgICAgIHZhciBzdGVwID0gMTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3Zl
ZC1leHBlY3RlZC50eHQKaW5kZXggYjVmOGJlZWYzOWY2MDk5NTIzMjQzZWNlMTk5YmRkZmJkMDFm
MTY5MS4uOTc3M2RkYTU5YjNmY2E2Yjg4ZjM0Njg4ZGM2ODgxNGIwNzdkNTc5OSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50eHQKQEAgLTQsNSArNCw1IEBAIERlc2Ny
aXB0aW9uCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nOjp0eXBlKCkncyBkZWZhdWx0IHZhbHVlIGlzIG5hdmlnYXRlCiAKIAotRkFJTCBOYXZpZ2F0
aW9uIFRpbWluZyAyIFdQVCB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
cG50LnR5cGUnKQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQt
ZXhwZWN0ZWQudHh0CmluZGV4IDZjMzFhZmQwYjI5YjEwZTkzODhiNGZjMjE5NzNjZTJjNmUxNGNh
MjAuLjM3N2NlOTg2ODA2YTQ5ZjI4MWM2MWVjMTZiMGYxMTIxY2IxZGRlMzAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVf
c3RhcnQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZyBpbnN0YW5jZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZyBpbnN0YW5jZSBleGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4KIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFy
dC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFy
dC5odG1sCmluZGV4IDc3OTAwODFkMDFjN2I4MjYyYzUzNGQzOTUwODU2OTBlYmUyZGZmZTguLmFk
NTBjNmE4N2QyYjQ2NjI5N2RjMGYyZWJjZWY5MmEzNzY1NWIwMTMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0Lmh0bWwKQEAg
LTQsNyArNCw3IEBACiA8c2NyaXB0PgogdGVzdChmdW5jdGlvbigpIHsKICAgdmFyIG5hdmlnYXRp
b25UaW1pbmcyID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ25hdmlnYXRp
b24nKVswXTsKLSAgYXNzZXJ0X3RydWUobmF2aWdhdGlvblRpbWluZzIgIT09IHVuZGVmaW5lZCk7
CisgIGFzc2VydF9ub3RfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLCB1bmRlZmluZWQpOwogICBh
c3NlcnRfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iKTsK
ICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5zdGFydFRpbWUsIDApOwogICBhc3Nl
cnRfZXF1YWxzKG5hdmlnYXRpb25UaW1pbmcyLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hMTg0ODYyOTE1MDFiNWNjNGYxNzEwMzAxNjVkOTZlMDRjN2FmZWNiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhh
dCBuYXYgdGltaW5nIDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVu
dCBhY2Nlc3NvcnMgb25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KCkvZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3Vt
ZW50IikKKworCitQQVNTIFBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJl
IGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzLgorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE4ZmJmYjRhMzA2MjU0MjRl
OGU4NDJlYjJiODA2MmRhNGUzZTg5MzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbApAQCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cisg
ICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxs
aW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5j
b20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3Jn
L1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmci
Lz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8u
c3ViLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5E
ZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBuYXYg
dGltaW5nIDIgaW5zdGFuY2UgY2FuIGJlIGFjY2Vzc2VkIGJ5IHRocmVlIGRpZmZlcmVudCBhY2Nl
c3NvcnMgb25jZSBhdmFpbGFibGU6IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkvZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpL2dldEVudHJpZXNCeU5hbWUoImRvY3VtZW50Iik8
L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0
X2luZm8oKTsKKyAgICAgICAgdmFyIGV4cGVjdGVkVXJsID0gImh0dHA6Ly8iICsgaG9zdF9pbmZv
Lk9SSUdJTkFMX0hPU1QgKyAiOiIgKworICAgICAgICAgICAgaG9zdF9pbmZvLkhUVFBfUE9SVCAr
ICIvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sIjsK
KyAgICAgICAgdmFyIG5hdlRpbWluZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5l
Y3RFbmQnLAorICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZl
bnRTdGFydCcsCisgICAgICAgICAgICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAg
ICAgICAgJ2R1cmF0aW9uJywKKyAgICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAg
ICAgICAgJ2VudHJ5VHlwZScsCisgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAg
ICAnaW5pdGlhdG9yVHlwZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAg
ICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAn
cmVkaXJlY3RDb3VudCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAg
J3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAg
ICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAg
ICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAndHJhbnNmZXJTaXplJywK
KyAgICAgICAgICAgICd0eXBlJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisg
ICAgICAgIF07CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAg
ICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAg
ICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAg
ICB2YXIgaW5zdGFuY2UxID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdOworICAgICAgICAg
ICAgICAgICAgICB2YXIgaW5zdGFuY2UyID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICB2YXIgaW5zdGFuY2UzID0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShleHBlY3RlZFVybClbMF07CisKKyAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZp
Z2F0aW9uIikubGVuZ3RoLCAxLCAiRXhwZWN0ZWQgdGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlv
biB0aW1pbmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShleHBlY3RlZFVybCkubGVuZ3RoLCAxLCAiRXhw
ZWN0ZWQgdGhlcmUgaXMgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisK
KyAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuYXZUaW1pbmcyQXR0cmli
dXRlcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhpbnN0YW5jZTFbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dLCBpbnN0YW5jZTJbbmF2VGltaW5n
MkF0dHJpYnV0ZXNbaV1dKTsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAg
ICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBp
KyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25h
dlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwgaW5zdGFuY2UzW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ld
XSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAg
ICAgICB9KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2Vu
dHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgfSwgIlBlcmZvcm1hbmNlIG5h
dmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aHJlZSBkaWZm
ZXJlbnQgYWNjZXNzb3JzLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hN2YzNTZkZjExNmM5MjU3MjYyOTA4M2UwOTEwODA0NmM3OTEyNzk0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQgQEAKKworCitQQVNTIG5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1l
IFVSTCBjaGFuZ2VzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFt
ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MGMxNDRiZGE0NTRiZTg2MTgwYmJmYmE1MDNjNGQxZGE5NDU3MzNlNAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1sCkBAIC0wLDAgKzEsNDAgQEAK
KzwhRE9DVFlQRSBIVE1MPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDxtZXRhIGNoYXJzZXQ9dXRm
LTg+CisgICAgPHRpdGxlPlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5uYW1lIHVwZGF0ZWQg
aW4gaWZyYW1lczwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2NyaXB0Pgor
cHJvbWlzZV90ZXN0KGFzeW5jIGZ1bmN0aW9uICh0KSB7CisgIHZhciBpZnIgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIp
OworCisgIGlmci5zcmM9InJlc291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwiOworICBhd2Fp
dCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2FkID0gZnVuY3Rpb24oKSB7
CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9u
IHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLm5hbWUsIGlmci5jb250
ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0
aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShpZnIuY29udGVudFdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRz
V2l0aCgiYmxhbmtfcGFnZV9ncmVlbi5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMgYmxhbmtf
cGFnZV9ncmVlbi5odG1sIik7CisgICAgICByZXNvbHZlKCk7CisgICAgfQorICB9KTsKKworCisg
IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geyBzZXRUaW1lb3V0KHJlc29sdmUsIDEwMCk7
IH0pOworICBpZnIuc3JjID0icmVzb3VyY2VzL2JsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiOworCisg
IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIGlmci5vbmxvYWQgPSBmdW5jdGlv
bigpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdmln
YXRpb24gdGltZSBlbnRyeSIpOworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ubmFtZSwgaWZy
LmNvbnRlbnRXaW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hdmlnYXRpb24gbmFtZSBtYXRj
aGVzIHRoZSB3aW5kb3cubG9jYXRpb24iKTsKKyAgICAgIGFzc2VydF90cnVlKGlmci5jb250ZW50
V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1l
LmVuZHNXaXRoKCJibGFua19wYWdlX3llbGxvdy5odG1sIiksICJuYXZpZ2F0aW9uIG5hbWUgaXMg
YmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAgfSk7
Cit9LCAibmF2aWdhdGlvbi5uYW1lIHVwZGF0ZWQgd2hlbiBpZnJhbWUgVVJMIGNoYW5nZXMiKTsK
KyAgICA8L3NjcmlwdD4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKaW5kZXggNGIyMGVjNmY5
YjIwOGM3M2Q4NWE5NDRkODlhMWI3YjhkODQwZWE5MC4uZWRhYTkyODhhOWFmYjZlMmNjY2ExYzQz
N2Q1ZGFjYTU5ZmZhYWZhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0
aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93
aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsNyBAQAotQ09OU09MRSBNRVNT
QUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0
aW1pbmdbcHJvcGVydHldJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhh
dCBhbGwgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIikgYXR0cmlidXRlcyByZW1haW4gdW5jaGFuZ2VkIGFmdGVyIGFuIGluIGRvY3VtZW50IG5h
dmlnYXRpb24gKFVSTCBmcmFnbWVudCBjaGFuZ2UpLgogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwp
LCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAndGltaW5nW3Byb3BlcnR5XScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbAppbmRleCBm
MzljYTA1NzY5NTU5OTllY2E4YTA4MzMxZTU1Y2MyOTI1ODE2ZjM2Li43NWU2ZTExM2I2ZGJhMzY4
N2RmMWM4ZmRiZjljOTgzYTlmYWU4YTY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93
aXRoaW5fZG9jdW1lbnQuaHRtbApAQCAtMTMsNiArMTMsOCBAQAogICAgICAgICA8cD5UaGlzIHRl
c3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBh
biBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS48L3A+CiAKICAg
ICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7
CisKICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAgICAgICAgICAg
ICAgICAnY29ubmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLWV4cGVj
dGVkLnR4dAppbmRleCA5ZTJjYWE2MjBmNWFkZWI5ZGFkYTRjODJkZDFkNjgzN2NjYTdmMTI1Li4y
YzA0NjMwYmFlMTU2ZGE3OWUwNTAxN2YzZWJhNTliY2ZjOWE3YWE0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQK
QEAgLTEsNiArMSw3IEBACiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBo
YW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVy
KHMpCi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFzIDEgb251
bmxvYWQgaGFuZGxlcihzKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUg
dmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KVswXS50eXBlIHdpdGggYSBmb3J3YXJkIGFuZCBiYWNrIG5hdmlnYXRpb24uCkBAIC0xMyw2ICsx
NCw1IEBAIFRoaXMgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8gdGhlIHdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlM
KSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpWzBdLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKaW5kZXgg
YzRiNTc1ODEwNjkxMTAzZGI2OWM2MTBiOWVjNjk0MjUxMTBkNzYzNS4uZDAwNDU0MTViODljNDVl
ZDlhMWE4ODllOGJlMGFiYzgxMjMwOTJkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGlvbl90eXBlX2JhY2tmb3J3YXJkLmh0bWwKQEAgLTgsNiArOCw3IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsK
IAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAgICAgICAgICAgewpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzMwZGNlNDRkODMxMTAzN2NiNWM3OWNlMjkxOWYzMDZmYjQwYTZhOQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3Qg
dmFsaWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUgdG8gYmUgbmF2aWdhdGUuCisKKworUEFTUyBOYXZpZ2F0
aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX25hdmlnYXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWZhZWYxZWMwYmJiODhlNWZiMTVjMmEzMWZk
NWY5MzNjMTZhMDlmNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9uYXZpZ2F0ZS5odG1sCkBAIC0wLDAgKzEsMzIgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAg
ICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGlu
ayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29t
LyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9U
Ui9uYXZpZ2F0aW9uLXRpbWluZy8jc2VjLW5hdmlnYXRpb24tdGltaW5nLWludGVyZmFjZSIvPgor
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCkgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllcygpWzBdLnR5cGUsICJuYXZpZ2F0ZSIsICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5
cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5k
aXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAg
ICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAg
IH0sICJOYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgIDwvc2NyaXB0
PgorCisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+CisgICAgICAgICAgICBE
ZXNjcmlwdGlvbjwvaDE+CisgICAgICAgIDxwPgorICAgICAgICAgICAgVGhpcyB0ZXN0IHZhbGlk
YXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLjwvcD4KKworICAgIDwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBl
Y3RlZC50eHQKaW5kZXggNzFjNDdlNWI4ZGY3YTUxZWU4ZWJkZTY5OGFlODU2ZWE2NzIzYTU4MC4u
YTRkNmJkYTZkNDQ5ZjFhZTFmNmJiNThkYzU4MjY1ZTM2ZWFhYWU3YiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNCAr
MSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKIERlc2NyaXB0aW9uCiAKIFRo
aXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0uKHR5cGUvdW5sb2FkRXZlbnRFbmQvdW5sb2FkRXZl
bnRTdGFydCkgd2l0aCBhIHJlbG9hZGVkIG5hdmlnYXRpb24uCkBAIC0xMCw2ICs5LDUgQEAgVGhl
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2Fk
RXZlbnRTdGFydCA+IDAgYWZ0ZXIKIFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpLnVubG9hZEV2ZW50RW5kID4gMCBhZnRlciByZWxvYWQKIAogCi1I
YXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKLQorUEFTUyBOYXZp
Z2F0aW9uIFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
aW9uX3R5cGVfcmVsb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVs
b2FkLmh0bWwKaW5kZXggNzRiODVjOWRiYjVlMDMyNjZjMGJhMDE0NWFkNDVkNjdhMDI1ZmQwYy4u
MGYwM2YwN2M1N2M5YzFhYzNjODY4NzQxYTIzZDlmMmU2ZWJiMmIyYiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICAgICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVl
IH0pOwogCiAgICAgICAgICAgICB2YXIgcmVsb2FkX2ZyYW1lOwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFs
X29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWQzODk4NzYxYjg3MTUw
ZDBhNzY1YWIzMWMyZTYxOTc2ZDkyMTYxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDExIEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBVUkwgaHR0
cDovL3d3dy5sb2NhbGhvc3Q6ODgwMC9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5P2xvY2F0aW9u
PWh0dHA6Ly9sb2NhbGhvc3Q6ODgwMC9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtf
cGFnZV9ncmVlbi5odG1sCitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2
YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEg
Y3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmlu
YWwgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi4KKworCisKK0hh
cm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCitOT1RSVU4gTmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZmRlZmEyMDI1MDBhNDQ5NzE2ZWFhYjVkMmQ3NTYxNmFjNDczMDVhMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2lu
YWxfb3JpZ2luLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KKyAg
ICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7
CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBjb25zdCBmcmFtZV9wZXJmb3JtYW5jZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlOworICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUsCisgICAgICAgICAgICAgICAgICAgICJuYXZpZ2F0ZSIs
CisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2
aWdhdGUuIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCwgMCwKKyAg
ICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0LCAwLAorICAgICAgICAgICAgICAg
ICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLnJlZGlyZWN0RW5kLCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQg
cmVkaXJlY3RFbmQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBkb25lKCk7CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorCisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVz
IHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlCisgICAgICAgICAgIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFy
dC9FbmQgdGltZXMgZm9yIGEgY3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmln
YXRpb24gd2hlbiB0aGUgZmluYWwKKyAgICAgICAgICAgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMg
dGhlIG9yaWdpbmFsIG9yaWdpbi48L3A+CisKKyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250
ZXh0IiBzcmM9IiIgc3R5bGU9IndpZHRoOiAyNTBweDsgaGVpZ2h0OiAyNTBweDsiPjwvaWZyYW1l
PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgLy8gY29tYmluZSB0aGUgcGFnZSBvcmln
aW4gYW5kIHJlZGlyZWN0IG9yaWdpbiBpbnRvIHRoZSBJRlJBTUUncyBzcmMgVVJMCisgICAgICAg
ICAgICBjb25zdCBkZXN0VXJsX2ZpcnN0ID0gbWFrZV9hYnNvbHV0ZV91cmwoe3N1YmRvbWFpbjog
Ind3dyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRo
OiAiL2NvbW1vbi9yZWRpcmVjdC1vcHQtaW4ucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgbWFrZV9hYnNvbHV0ZV91
cmwoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB7cGF0aDogIi9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVl
bi5odG1sIn0pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgIGNvbnN0IGRlc3RVcmwgPSBtYWtlX2Fic29sdXRlX3VybCh7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9y
ZWRpcmVjdC5weSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBxdWVyeTogImxvY2F0aW9uPSIgKyBkZXN0VXJsX2ZpcnN0fSk7CisgICAgICAgICAgICBsZXQg
ZnJhbWVDb250ZXh0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpOwor
ICAgICAgICAgICAgZnJhbWVDb250ZXh0Lm9ubG9hZCA9IG9ubG9hZF90ZXN0OworICAgICAgICAg
ICAgZnJhbWVDb250ZXh0LnNyYyA9IGRlc3RVcmw7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWlu
X3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVk
aXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKaW5kZXggNzFl
ZDQ3ZmUzNWExNDJlNDBmZjQ3OTA1Zjc3ODhhMWRjNWFjYTBmYi4uNGU3OWE3ZmRiYTA4NjE2Zjk0
NTA4ZGJmZmU4MmM1NjkwNGM0YmJkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi1leHBlY3RlZC50
eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUg
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnCiAKIAogCi1IYXJuZXNz
IEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ2ZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJTCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRf
aW4uaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9v
cHRfaW4uaHRtbAppbmRleCBjMGRkMjQ5NTQ1YTY0MGVjMGNkZDc1OWIyMTE0YWI3MjVhNjA5MDM5
Li4wZmViM2JmYTdmMWMwMTM4ZTRjOWY5ZTNmZDRkMzgzZTVlZjY1ODVkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9p
bi5odG1sCkBAIC05LDEzICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL2Nv
bW1vbi91dGlscy5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+Ci0KLSAgICAgICAgICAg
IGZ1bmN0aW9uIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZXZlbnRPcmRlciwgdGltaW5nRW50cnkp
IHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3Ro
IC0gMTsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWluZ0VudHJ5
W2V2ZW50T3JkZXJbaV1dIDwgdGltaW5nRW50cnlbZXZlbnRPcmRlcltpICsgMV1dLAotICAgICAg
ICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkICIgKyBldmVudE9yZGVyW2ldICsgIiB0byBiZSBu
byBncmVhdGVyIHRoYW4gIiArIGV2ZW50T3JkZXJbaSArIDFdICsgIi4iKTsKLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0
cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgpCiAgICAgICAgICAg
ICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmU3MWFlOTQwNDFhYWFjNzM5NDNkMjFjMmI0MjM1OGY3OTc5YTRkMmEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDcgQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUg
b2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF0ucmVkaXJlY3RDb3VudCBhdHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQg
cmVkaXJlY3RFbmQgYXR0cmlidXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uCisK
KworUEFTUyBOYWl2YXRpb24gd2l0aG91dCByZWRpcmVjdHMuCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25v
bmUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45NzQzN2UxYTVlZjJiNjFhZTY1NzYyYmZhMzUxNjMwZWI0NzE0
Y2RmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5odG1s
CkBAIC0wLDAgKzEsMzMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+Cisg
ICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9
Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsg
cmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0y
LyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDwvaGVh
ZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+
VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZSBvZiB0aGUgd2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdENvdW50IGF0dHJp
YnV0ZSwgYXMgd2VsbCBhcyB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
Im5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0IGFuZCByZWRpcmVjdEVuZCBhdHRyaWJ1dGVz
IG9uIGEgbm9uLXJlZGlyZWN0ZWQgbmF2aWdhdGlvbi48L3A+CisKKyAgICAgICAgPHNjcmlwdD4K
KworICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2Jz
ZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBf
ZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBuYXZU
aW1pbmcgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0Q291bnQs
IDAsICJFeHBlY3RlZCByZWRpcmVjdENvdW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMobmF2VGltaW5nLnJlZGlyZWN0U3RhcnQsIDAsICJFeHBlY3RlZCBy
ZWRpcmVjdFN0YXJ0IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMobmF2VGltaW5nLnJlZGlyZWN0RW5kLCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUg
MC4iKTsKKyAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAg
ICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAg
KTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlv
biJdfSk7CisKKyAgICAgICAgfSwgIk5haXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4iKTsKKyAg
ICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDA0YTI0OGNkZTUwMWQyNjg5NGIyMjA3ZmU5YWY1ZjU1MGQyMGNiYzcuLjRmYjE1Y2FmY2U3
ZTYxNzJlZDJlZjliOWYxM2M4NDcxZjU5NjNlOTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfc2VydmVyLWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSw5IEBACi1DT05TT0xFIE1FU1NBR0U6
IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRpb25fZW50cnkudHlwZScpCitDT05TT0xFIE1FU1NBR0U6IEVycm9yOiBhc3NlcnRfdHJ1ZTog
RXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiByZWRpcmVjdFN0YXJ0LiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UucmVkaXJlY3RDb3VudCBhbmQg
dGhlIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9y
IGEgc2FtZS1vcmlnaW4gc2VydmVyIHNpZGUgcmVkaXJlY3QgbmF2aWdhdGlvbi4KIAogCiAKLUhh
cm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKLQorRkFJTCBO
YXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBFcnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0YXJ0
VGltZSB0byBiZSBubyBncmVhdGVyIHRoYW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbAppbmRleCAxZDdmNmM5Mjhj
ZTYzYzk0ZWRjMTQ5MWQyODgzYzg3MzMxZTM4NzIyLi45ZWMyOTkyYmVmNThlYzZlMDMwNGZiMTUy
ODgxNDA1OTA0MWYzMTQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2
ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXIuaHRtbApAQCAtOSw2
ICs5LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgogCiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7
IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1p
bmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CiAgICAgICAgICAgICAgICAg
Zm9yIChsZXQgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgewpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVkLnR4dAppbmRleCBhMDkxNmM0NThj
NjI4MmQzMWQ1Mzg0OGQ3OWY1Mzc0Y2VmNDI3NWM2Li5lODFjY2VkYTllYmYzZWQ3NTgzMDM3MjYx
NTk5ZmQ5OTE5M2QxYzhkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2Vy
dmVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLWV4
cGVjdGVkLnR4dApAQCAtNiw2ICs2LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVz
IG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWcKIAogCiAK
LUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncGVyZm9ybWFuY2VOYW1lc3BhY2UuZ2V0RW50cmll
c0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQotCitGQUlMIE5hdmlnYXRpb24gVGltaW5n
IDIgV1BUIFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J3BlcmZvcm1hbmNlTmFtZXNwYWNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50
eXBlJykKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sCmluZGV4IDA2YzliN2YzYjY3
OGEyMjc1MWExZThlMWE1NzAyODIxNmFiMjE4NzkuLmQ4YWNjODA1NGQ4N2E5NzJkMDA1OTZkOTc5
NDg1ODQ3Y2Y2Y2Y0ZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2
ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKQEAgLTks
NiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vdXRpbHMuanMi
Pjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVf
dGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2FkX3Rlc3QoKQogICAg
ICAgICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5j
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ3NjhjNTAwNDY1ZDc3YjVkMWE5ODNiYzQ2NmJlMWFkZTQ3
ZmU5ODMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3Rh
bmNlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRl
c3QgdmFsaWRhdGVzIHRoYXQgZWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBp
bnN0YW5jZS4KKworCitGQUlMIEVhY2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIg
aW5zdGFuY2UuIGFzc2VydF9lcXVhbHM6IE9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFuY2UgZXhp
c3RzLiBleHBlY3RlZCAxIGJ1dCBnb3QgMAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91
bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0
YW5jZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZDc3YWI2YmFlMTAxYjcwNGQxMjY3ZThiMDM0MTYwMTFm
MjhkNjc2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0
YW5jZXMuaHRtbApAQCAtMCwwICsxLDc2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxl
Pk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRo
b3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAg
ICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlv
bi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+Cisg
ICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBlYWNoIHdpbmRvdyBoYXMgYSB1bmlx
dWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLjwvcD4KKyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVD
b250ZXh0IiBzcmM9InJlc291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwiIHN0eWxlPSJkaXNw
bGF5Om5vbmU7Ijs+PC9pZnJhbWU+CisgICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAgICAgIHZh
ciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICAgICAnY29ubmVjdEVuZCcs
CisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAgICAgJ2RlY29k
ZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAgICAg
ICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAnZG9tQ29u
dGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScs
CisgICAgICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAgICAgJ2Rv
bWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZHVyYXRpb24nLAorICAgICAgICAg
ICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdlbnRyeVR5cGUnLAor
ICAgICAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnaW5pdGlhdG9y
VHlwZScsCisgICAgICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAgICAg
J2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAg
ICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisgICAg
ICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgICAgICdyZXF1ZXN0U3Rh
cnQnLAorICAgICAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAgICAgJ3Jl
c3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAor
ICAgICAgICAgICAgICAgICd0cmFuc2ZlclNpemUnLAorICAgICAgICAgICAgICAgICd0eXBlJywK
KyAgICAgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgICAgICd1bmxv
YWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisgICAgICAgICAg
ICBdOworCisgICAgICAgICAgICBmdW5jdGlvbiBub3Rfc2FtZV9pbnN0YW5jZShpbnN0YW5jZTEs
IGluc3RhbmNlMiwgYXR0cmlidXRlcykgeworICAgICAgICAgICAgICAgIGZvciAodmFyIGkgaW4g
YXR0cmlidXRlcykgeworICAgICAgICAgICAgICAgICAgICBpZiAoaW5zdGFuY2UxW2F0dHJpYnV0
ZXNbaV1dICE9IGluc3RhbmNlMlthdHRyaWJ1dGVzW2ldXSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigKKyAgICAgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCkgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5hdiB0
aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdp
bmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAx
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPbmx5IG9uZSBuYXYgdGltaW5nIGluc3Rh
bmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZhciBtYWluX2ZyYW1lX2lu
c3RhbmNlID0gZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHZhciBpZnJhbWVfaW5zdGFuY2UgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfdHJ1ZShub3Rfc2FtZV9pbnN0YW5jZShtYWluX2ZyYW1lX2luc3RhbmNlLCBpZnJhbWVf
aW5zdGFuY2UsIG5hdlRpbWluZzJBdHRyaWJ1dGVzKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAiVHdvIG5hdiB0aW1pbmcgaW5zdGFuY2VzIGFyZSBub3QgdGhlIHNhbWUgaW5zdGFuY2Uu
Iik7CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
ICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICAgICAgfSkKKyAg
ICAgICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5
VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAgIH0sICJFYWNoIHdpbmRvdyBo
YXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLiIpOworICAgICAgICA8L3NjcmlwdD4K
KyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
MGViMWY1ZmIyNDQyMDBjM2JmNTBhNWVhZDg4NmQ3ODRjY2FiNzI4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1BlcmZv
cm1hbmNlT2JzZXJ2ZXJzOiBuYXZpZ2F0aW9uCisKK05hdmlnYXRpb24gd2lsbCBxdWV1ZSBhIFBl
cmZvcm1hbmNlRW50cnkuCisKKworUEFTUyBuYXZpZ2F0aW9uIGVudHJ5IGlzIG9ic2VydmFibGUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRp
b24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5hNTRmYjJhZmY4ZWFiNzRlNTljNWE4NGZjMmJjZjQ4N2YxMjJl
YzQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwKQEAgLTAsMCAr
MSwyOSBAQAorPCFET0NUWVBFIEhUTUw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPlBl
cmZvcm1hbmNlT2JzZXJ2ZXJzOiBuYXZpZ2F0aW9uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVy
czogbmF2aWdhdGlvbjwvaDE+Cis8cD4KK05hdmlnYXRpb24gd2lsbCA8YSBocmVmPSJodHRwczov
L3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvI2Rmbi1xdWV1ZS1hLXBlcmZvcm1h
bmNlZW50cnkiPnF1ZXVlIGEgUGVyZm9ybWFuY2VFbnRyeTwvYT4uCis8L3A+Cis8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1
bmN0aW9uIGNoZWNrRW50cnkocGVzKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlcy5sZW5ndGgs
IDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyeSIpOworICAgICAgYXNzZXJ0X2Vx
dWFscyhwZXNbMF0uZW50cnlUeXBlLCAibmF2aWdhdGlvbiIsICJlbnRyeVR5cGUgaXMgXCJuYXZp
Z2F0aW9uXCIiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMocGVzWzBdLm5hbWUsIHdpbmRvdy5sb2Nh
dGlvbi50b1N0cmluZygpLCAibmFtZSBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgZG9jdW1lbnQiKTsK
KyAgICB9CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAg
ICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNo
ZWNrRW50cnkoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgY2hlY2tFbnRyeShl
bnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpKTsKKyAgICAgICAgICBjaGVj
a0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKHdpbmRvdy5sb2NhdGlvbi50b1N0cmlu
ZygpKSk7CisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9u
ZSgpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5
cGVzOiBbIm5hdmlnYXRpb24iXX0pOworICB9LCAibmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZh
YmxlIik7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0
aGFybmVzcy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcwppbmRleCAz
ZWZiNTI3ODNmMWU1ZGNiMGQ0MmFhZDExYWVjMmE5ZTQ3MjU3ZDMzLi4wYzI3YzJlZTMwN2Y0Yjgw
OTlhNmI0YzViMDQ5N2JhZjUwYjYxMTA0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJw
ZXJmdGVzdGhhcm5lc3MuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNz
LmpzCkBAIC00MiwyNSArNDIsMjUgQEAgZnVuY3Rpb24gdGVzdF9uYW1lc3BhY2UoY2hpbGRfbmFt
ZSwgc2tpcF9yb290KQogewogICAgIGlmIChza2lwX3Jvb3QgPT09IHVuZGVmaW5lZCkgewogICAg
ICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZSBpcyBkZWZpbmVkJzsKLSAgICAgICAg
d3BfdGVzdChmdW5jdGlvbiAoKSB7IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlICE9
PSB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZyk7CisgICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkg
eyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZSwgdW5kZWZpbmVkLCBtc2cp
OyB9LCBtc2cpOwogICAgIH0KIAogICAgIGlmIChjaGlsZF9uYW1lICE9PSB1bmRlZmluZWQpIHsK
ICAgICAgICAgdmFyIG1zZzIgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBjaGlsZF9uYW1lICsg
JyBpcyBkZWZpbmVkJzsKLSAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUo
cGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0gIT09IHVuZGVmaW5lZCwgbXNnMik7IH0s
IG1zZzIpOworICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhw
ZXJmb3JtYW5jZU5hbWVzcGFjZVtjaGlsZF9uYW1lXSwgdW5kZWZpbmVkLCBtc2cyKTsgfSwgbXNn
Mik7CiAgICAgfQogfQogCiBmdW5jdGlvbiB0ZXN0X2F0dHJpYnV0ZV9leGlzdHMocGFyZW50X25h
bWUsIGF0dHJpYnV0ZV9uYW1lLCBwcm9wZXJ0aWVzKQogewogICAgIHZhciBtc2cgPSAnd2luZG93
LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSArICcuJyArIGF0dHJpYnV0ZV9uYW1lICsgJyBp
cyBkZWZpbmVkLic7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9y
bWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVdW2F0dHJpYnV0ZV9uYW1lXSAhPT0gdW5kZWZpbmVk
LCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFz
c2VydF9ub3RfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1
dGVfbmFtZV0sIHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIH0KIAogZnVu
Y3Rpb24gdGVzdF9lbnVtKHBhcmVudF9uYW1lLCBlbnVtX25hbWUsIHZhbHVlLCBwcm9wZXJ0aWVz
KQogewogICAgIHZhciBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSAr
ICcuJyArIGVudW1fbmFtZSArICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24o
KSB7IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25h
bWVdICE9PSB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CisgICAgd3BfdGVz
dChmdW5jdGlvbigpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFy
ZW50X25hbWVdW2VudW1fbmFtZV0sIHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVz
KTsKIAogICAgIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsgJy4n
ICsgZW51bV9uYW1lICsgJyA9ICcgKyB2YWx1ZTsKICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBh
c3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVd
LCB2YWx1ZSwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKQEAgLTEyMiw1ICsxMjIsNSBAQCBm
dW5jdGlvbiB0ZXN0X2dyZWF0ZXJfb3JfZXF1YWxzKHZhbHVlLCBncmVhdGVyX3RoYW4sIG1zZywg
cHJvcGVydGllcykKIAogZnVuY3Rpb24gdGVzdF9ub3RfZXF1YWxzKHZhbHVlLCBub3RlcXVhbHMs
IG1zZywgcHJvcGVydGllcykKIHsKLSAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1
ZSh2YWx1ZSAhPT0gbm90ZXF1YWxzLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdw
X3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHZhbHVlLCBub3RlcXVhbHMsIG1z
Zyk7IH0sIG1zZywgcHJvcGVydGllcyk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25u
ZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5l
Y3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYxMDhkMmU4
MzM2NGFkMTRmZGYyYTMwNGY3ZDU0ODI4NzgwZDllYTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDQgQEAKKworCitQQVNTIFRlc3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgdmFsdWUg
aXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVzZWQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29u
bmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1z
dGFydC1yZXVzZS5odHRwcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1MmEyNTllY2Q0MjVjMjEyZDg5ZWIx
MTQ5ODFkNGYxMmU4MGYzMDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0
aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwKQEAgLTAsMCArMSwxNSBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+Cis8dGl0bGU+TmF2
aWdhdGlvbiBUaW1pbmcgc2VjdXJlY29ubmVjdGlvbnN0YXJ0IHJldXNlPC90aXRsZT4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+Citj
b25zdCB0ID0gYXN5bmNfdGVzdCgiVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCB2YWx1
ZSBpcyBhcyBleHBlY3RlZCB3aGVuIHJldXNlZCIpOword2luZG93LmFkZEV2ZW50TGlzdGVuZXIo
Im1lc3NhZ2UiLCB0LnN0ZXBfZnVuY19kb25lKGUgPT4geworICBhc3NlcnRfZXF1YWxzKGUuZGF0
YSwgIlBBU1MiKTsKK30pKTsKKzwvc2NyaXB0PgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9zZWN1
cmUtY29ubmVjdGlvbi1pbnRlcmltLmh0bWwiPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9j
b25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
X2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDgyMjA0
ZDA2NTE2Njk1N2FhOTAwOTg5Y2VjN2RhY2NhY2RlMzg0ODYuLjUxODI3NTgzYWQzN2UxZTEyYzFh
YmY1ZjIxYzhjZTYyNTBlMzEwMGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25f
c3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5l
Y3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0zLDUgKzMsNSBAQCBE
ZXNjcmlwdGlvbgogVGhlIHRlc3RzIHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IGhhcyBhIG5v
bi16ZXJvIHZhbHVlLgogCiAKLUZBSUwgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFydCBp
cyBub3QgemVybyB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnku
c2VjdXJlQ29ubmVjdGlvblN0YXJ0JykKK0ZBSUwgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25T
dGFydCBpcyBub3QgemVybyBhc3NlcnRfZ3JlYXRlcl90aGFuOiBzZWN1cmVDb25uZWN0aW9uU3Rh
cnQgaXMgbm9uLXplcm8gZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAw
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQK
aW5kZXggNTc5NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uZDJlYTk1MDQ3
NmQ5MWJlNTYwNDZkMDMzZDFmY2Q2NjFkNDc5ODBmOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0
ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRf
bmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMyArMSw0IEBACiAKLUZBSUwg
c3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicuIGFzc2VydF90cnVlOiBU
aGVyZSBzaG91bGQgYmUgYW4gZW50cnkgJ25hdmlnYXRpb24nIGluIFBlcmZvcm1hbmNlT2JzZXJ2
ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBzdXBw
b3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1BBU1MgJ25hdmlnYXRpb24n
IGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9y
dGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9y
dGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA1Nzk3OGJm
MjZkYjBlNDEzY2JmMmQ0YzJmMzg2MzljNDFhMjVmYzUwLi4zNDM4MzVhNDI4NDUzZTBiMWNmNjVk
ODRkYjgzM2Y5MWFiYzgzNjE4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9u
X3R5cGUuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdh
dGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNiBAQAogCi1GQUlM
IHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLiBhc3NlcnRfdHJ1ZTog
VGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICduYXZpZ2F0aW9uJyBpbiBQZXJmb3JtYW5jZU9ic2Vy
dmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0hhcm5lc3Mg
RXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCitQQVNTIHN1cHBvcnRlZEVudHJ5VHlw
ZXMgY29udGFpbnMgJ25hdmlnYXRpb24nLgorVElNRU9VVCAnbmF2aWdhdGlvbicgZW50cmllcyBz
aG91bGQgYmUgb2JzZXJ2YWJsZS4gVGVzdCB0aW1lZCBvdXQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90
ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25s
b2FkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZTlhMzg0YTViYjM3MDA0ZThmNzA0Mjg1YjM1
MmVlYWI0OTEzY2U1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9h
ZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgdGhlIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplIGFuZCBkZWNvZGVk
Qm9keVNpemUgYXR0cmlidXRlcyBoYXZlIGNvcnJlY3QgdmFsdWVzIHdoZW4gY2hlY2tlZCBpbiB0
aGUgb25sb2FkIGhhbmRsZXIKKworCitGQUlMIFRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZl
IGEgcHJvcGVyIHZhbHVlIGR1cmluZyBET01Db250ZW50TG9hZGVkIGFzc2VydF9ncmVhdGVyX3Ro
YW46IGRlc2NyIGV4cGVjdGVkIGEgbnVtYmVyIGJ1dCBnb3QgYSAidW5kZWZpbmVkIgorRkFJTCBU
ZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgb25sb2Fk
IGFzc2VydF9ncmVhdGVyX3RoYW46IGRlc2NyIGV4cGVjdGVkIGEgbnVtYmVyIGJ1dCBnb3QgYSAi
dW5kZWZpbmVkIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2NjMTg0OTFkNjIw
MjRmMWQ0ZmEzZDIwYzUxNzNiMzEzMjY5YjNlOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdGVz
dF9kb2N1bWVudF9vbmxvYWQuaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAg
ICAgIDx0aXRsZT53aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiBhdHRyaWJ1dGVzPC90aXRs
ZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJNb3ppbGxhIiBocmVmPSJodHRw
czovL3d3dy5tb3ppbGxhLm9yZy8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0i
aHR0cHM6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3Byb2Nlc3NpbmctbW9k
ZWwiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9y
dC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3BlcmZvcm1hbmNl
LXRpbWVsaW5lLXV0aWxzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9InJlc291
cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0
IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVjb2Rl
ZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQgaW4g
dGhlIG9ubG9hZCBoYW5kbGVyPC9wPgorCisgICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CisK
KyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsK
KyAgICAgICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9h
ZGVkIiwgdC5zdGVwX2Z1bmNfZG9uZSgoKSA9PiB7CisgICAgICAgICAgICAgICAgICAgIGxldCBl
bnRyeSA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilb
MF07CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkudHJhbnNm
ZXJTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0
ZXJfdGhhbihlbnRyeS5lbmNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAg
ICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmRlY29kZWRCb2R5U2l6ZSwgMTAw
MCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgfSkpOworICAgICAgICAgICAgfSwgIlRlc3Qg
dGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmluZyBET01Db250ZW50
TG9hZGVkIik7CisKKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHQuc3RlcF9mdW5jX2Rv
bmUoKCkgPT4geworICAgICAgICAgICAgICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2Ny
Iik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2Rl
ZEJvZHlTaXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dy
ZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAg
ICAgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBzZXRUaW1lb3V0KHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAg
ICAgICAgICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuKGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlT
aXplLCAxMDAwLCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dy
ZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAg
ICAgICAgICAgICAgICAgICAgfSksIDApOworICAgICAgICAgICAgICAgICAgICB9LCAiVGVzdCB0
aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIGEgdGFzayBhZnRl
ciBvbmxvYWQiKTsKKyAgICAgICAgICAgICAgICB9KSk7CisgICAgICAgICAgICB9LCAiVGVzdCB0
aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9ubG9hZCIpOwor
CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdW5sb2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5s
b2FkLWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dAppbmRleCBkYTUyNjBhMjIz
ZDIyYWQxYWM0ZDVkMjk3MjZjNGFlMjczZWIxYjI4Li4zZmVlYWQxZmRlNzIwMzM3MzZkZWYxZjA0
ZTViNDcxMDk4YjBkMzhhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdp
bi1jaGVjay1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4t
Y2hlY2stZXhwZWN0ZWQudHh0CkBAIC00LDE2ICs0LDE2IEBAIFRoaXMgdGVzdCB2YWxpZGF0ZXMg
dGhhdCB0aGUgdmFsdWVzIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpCiAKIAogCi1GQUlMIFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlw
ZScpIgotRkFJTCBSZWRpcmVjdCBjaGFpbiB3aXRoIGZ1bGwgVEFPIG9wdC1pbiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlM
IFNhbWUtY3Jvc3Mtc2FtZSByZWRpcmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgot
RkFJTCBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBl
JykiCi1GQUlMIFByZXZpb3VzIGRvY3VtZW50IGNyb3NzIG9yaWdpbiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIFByZXZp
b3VzIGRvY3VtZW50IHNhbWUgb3JpZ2luIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlw
ZScpIgotRkFJTCBTYW1lIG9yaWdpbiBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3JpZ2lu
IHJlZGlyZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdp
biByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3Jp
Z2luIHJlZGlyZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBv
cmlnaW4gcmVkaXJlY3Qgd2l0aCBwYXJ0aWFsIFRBTyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRv
Y3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggVEFPIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKK1BBU1MgUmVk
aXJlY3QgY2hhaW4gd2l0aCBhIHBhcnRpYWwgVEFPIG9wdC1pbgorUEFTUyBSZWRpcmVjdCBjaGFp
biB3aXRoIGZ1bGwgVEFPIG9wdC1pbgorUEFTUyBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hh
aW4gd2l0aCBubyBUQU8gb3B0LWluCitQQVNTIGNyb3NzLWNyb3NzLXNhbWUgUmVkaXJlY3QgY2hh
aW4gd2l0aCBubyBUQU8gb3B0LWluCitQQVNTIFByZXZpb3VzIGRvY3VtZW50IGNyb3NzIG9yaWdp
bgorUEFTUyBQcmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbgorUEFTUyBObyBwcmV2aW91cyBk
b2N1bWVudAorUEFTUyBTYW1lIG9yaWdpbiBwcmV2aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3Jp
Z2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmlnaW4g
cmVkaXJlY3QKK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVk
aXJlY3QKK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJl
Y3Qgd2l0aCBwYXJ0aWFsIFRBTworUEFTUyBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3Nz
IG9yaWdpbiByZWRpcmVjdCB3aXRoIFRBTwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9NRVRBLnltbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OWZhZTFkYjBkOWI3YWZkMjAyNzM3ZTM0
NzU0YjRlODkzMjk4ZDQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9NRVRBLnltbApAQCAt
MCwwICsxLDQgQEAKK3NwZWM6IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1l
bGluZS8KK3N1Z2dlc3RlZF9yZXZpZXdlcnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4w
OGIzZTMyMzE0NjU4NTdjZjI0OGU0YWNlOGVmNTc0NDY5YTE0ODY0Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCkBAIC0wLDAgKzEs
MTEgQEAKK2FzeW5jX3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB0
LnN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8gQWZ0ZXIgYSB0aW1lb3V0LCBQZXJmb3JtYW5j
ZU9ic2VydmVyIHNob3VsZCBzdGlsbCByZWNlaXZlIGVudHJ5IGlmIHVzaW5nIHRoZSBidWZmZXJl
ZCBmbGFnLgorICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKHQuc3RlcF9mdW5jX2RvbmUobGlz
dCA9PiB7CisgICAgICBjb25zdCBlbnRyaWVzID0gbGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICBh
c3NlcnRfZXF1YWxzKGVudHJpZXMubGVuZ3RoLCAxLCAnVGhlcmUgc2hvdWxkIGJlIDEgbWFyayBl
bnRyeS4nKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5lbnRyeVR5cGUsICdtYXJr
Jyk7CisgICAgfSkpLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9KTsKKyAg
fSwgMTAwKTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzZWVz
IGVudHJ5IGFmdGVyIHRpbWVvdXQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxh
Zy1vYnNlcnZlci5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjMxZGMzOWMxMjhhZDU1YzEzZWVmNjY1ODNhNjg4ODYyMmY4NmJmNjMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzCkBA
IC0wLDAgKzEsMTUgQEAKK2FzeW5jX3Rlc3QoIHQ9PiB7CisgIGZvciAobGV0IGkgPSAwOyBpIDwg
NTA7IGkrKykKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdmb28nICsgaSk7CisgIGxldCBtYXJrc0Ny
ZWF0ZWQgPSA1MDsKKyAgbGV0IG1hcmtzUmVjZWl2ZWQgPSAwOworICBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihsaXN0ID0+IHsKKyAgICBtYXJrc1JlY2VpdmVkICs9IGxpc3QuZ2V0RW50cmllcygp
Lmxlbmd0aDsKKyAgICBpZiAobWFya3NDcmVhdGVkIDwgMTAwKSB7CisgICAgICBwZXJmb3JtYW5j
ZS5tYXJrKCdiYXInICsgbWFya3NDcmVhdGVkKTsKKyAgICAgIG1hcmtzQ3JlYXRlZCsrOworICAg
IH0KKyAgICBpZiAobWFya3NSZWNlaXZlZCA9PSAxMDApCisgICAgICB0LmRvbmUoKTsKKyAgfSku
b2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgJ1BlcmZvcm1hbmNl
T2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNob3VsZCBzZWUgcGFzdCBhbmQgZnV0dXJlIGVu
dHJpZXMuJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi45NjkxOTA4MTlmNTNlYjQ1MzdkYTAxOWM5MGNjMzNiZDBkYTNkOGRmCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDMgQEAKKworUEFTUyBHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5k
b3cuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzNkNjU4OWUyNzVlMjY1
MTgwZTA1NzFjYTMxMDNkYmY5YWExNzliOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0
LWludmFsaWQtZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2FzeW5jX3Rlc3QoZnVuY3Rpb24o
dCkgeworICBwZXJmb3JtYW5jZS5tYXJrKCd3aW5kb3dNYXJrJyk7CisgIGNvbnN0IHdvcmtlciA9
IG5ldyBXb3JrZXIoInJlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzIik7CisgIHdv
cmtlci5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkgeworICAgIGFzc2VydF9lcXVhbHMoZXZl
bnQuZGF0YVsnaW52YWxpZCddLCAwLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMCBpbnZhbGlkIGVu
dHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVudC5kYXRhWydtYXJrJ10sIDEsICdUaGUg
d29ya2VyIG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhldmVu
dC5kYXRhWydtZWFzdXJlJ10sIDAsICdUaGUgd29ya2VyIG11c3QgaGF2ZSAwIG1lYXN1cmUgZW50
cmllcy4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
J2ludmFsaWQnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUgMCBpbnZh
bGlkIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCdtYXJrJykubGVuZ3RoLCAxLAorICAgICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDEg
bWFyayBlbnRyeS4nKTsKKyAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoJ21lYXN1cmUnKS5sZW5ndGgsIDAsCisgICAgICAnVGhlIHdpbmRvdyBtdXN0IGhhdmUg
MCBtZWFzdXJlIGVudHJpZXMuJykKKyAgICB0LmRvbmUoKTsKKyAgfQorfSwgJ0dldCBpbnZhbGlk
IGVudHJpZXMgZnJvbSB3b3JrZXIgYW5kIHdpbmRvdy4nKTsKKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
aWRsaGFybmVzcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzJlZmViZTk4ZmZkNDcyZWUxMDEwMDI3ZmY5
NjZhMWVmOTA3ZjE3ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVzcy5hbnku
anMKQEAgLTAsMCArMSwyNSBAQAorLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyx3b3JrZXIKKy8vIE1F
VEE6IHNjcmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0PS9y
ZXNvdXJjZXMvaWRsaGFybmVzcy5qcworCisvLyBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9y
bWFuY2UtdGltZWxpbmUvCisKKyd1c2Ugc3RyaWN0JzsKKworaWRsX3Rlc3QoCisgIFsncGVyZm9y
bWFuY2UtdGltZWxpbmUnXSwKKyAgWydoci10aW1lJywgJ2RvbSddLAorICBhc3luYyBpZGxfYXJy
YXkgPT4geworICAgIGlkbF9hcnJheS5hZGRfb2JqZWN0cyh7CisgICAgICBQZXJmb3JtYW5jZTog
WydwZXJmb3JtYW5jZSddLAorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlcjogWydvYnNlcnZlcidd
LAorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdDogWydlbnRyeUxpc3QnXSwKKyAg
ICB9KTsKKworICAgIHNlbGYuZW50cnlMaXN0ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUs
IHJlamVjdCkgPT4geworICAgICAgc2VsZi5vYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKHJlc29sdmUpOworICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7IGVudHJ5VHlwZXM6IFsnbWFy
ayddIH0pOworICAgICAgcGVyZm9ybWFuY2UubWFyaygndGVzdCcpOworICAgIH0pOworICB9Cisp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5h
bnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL211bHRpcGxlLWJ1ZmZlcmVkLWZsYWctb2JzZXJ2ZXJzLmFueS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41ZGQ0NGZiMThmYmRiOWMzYzMyZjQ1MzhkMmVmN2VjMmNhYzQ3MzAyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9ic2VydmVycy5h
bnkuanMKQEAgLTAsMCArMSwzMiBAQAorcHJvbWlzZV90ZXN0KCgpID0+IHsKKyAgLy8gVGhlIGZp
cnN0IHByb21pc2Ugd2FpdHMgZm9yIG9uZSBidWZmZXJlZCBmbGFnIG9ic2VydmVyIHRvIHJlY2Vp
dmUgMyBlbnRyaWVzLgorICBjb25zdCBwcm9taXNlMSA9IG5ldyBQcm9taXNlKHJlc29sdmUxID0+
IHsKKyAgICBsZXQgbnVtT2JzZXJ2ZWQxID0gMDsKKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cigoZW50cnlMaXN0LCBvYnMpID0+IHsKKyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNl
cnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBhIHJlZ3VsYXIgb2JzZXJ2ZXIgZGV0ZWN0cyBhIG1h
cmsuCisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVt
T2JzZXJ2ZWQxICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9i
c2VydmVkMSA9PSAzKQorICAgICAgICAgIHJlc29sdmUxKCk7CisgICAgICB9KS5vYnNlcnZlKHt0
eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgICBvYnMuZGlzY29ubmVjdCgpOwor
ICAgIH0pLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgcGVyZm9ybWFuY2Uu
bWFyaygnZm9vJyk7CisgIH0pOworICAvLyBUaGUgc2Vjb25kIHByb21pc2Ugd2FpdHMgZm9yIGFu
b3RoZXIgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29u
c3QgcHJvbWlzZTIgPSBuZXcgUHJvbWlzZShyZXNvbHZlMiA9PiB7CisgICAgc3RlcF90aW1lb3V0
KCgpID0+IHsKKyAgICAgIGxldCBudW1PYnNlcnZlZDIgPSAwOworICAgICAgLy8gVGhpcyBidWZm
ZXJlZCBmbGFnIG9ic2VydmVyIGlzIGNvbnN0cnVjdGVkIGFmdGVyIGEgZGVsYXkgb2YgMTAwbXMu
CisgICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihsaXN0ID0+IHsKKyAgICAgICAgbnVtT2Jz
ZXJ2ZWQyICs9IGxpc3QuZ2V0RW50cmllcygpLmxlbmd0aDsKKyAgICAgICAgaWYgKG51bU9ic2Vy
dmVkMiA9PSAzKQorICAgICAgICAgIHJlc29sdmUyKCk7CisgICAgICB9KS5vYnNlcnZlKHt0eXBl
OiAnbWFyaycsIGJ1ZmZlcmVkOiB0cnVlfSk7CisgICAgfSwgMTAwKTsKKyAgICBwZXJmb3JtYW5j
ZS5tYXJrKCdiYXInKTsKKyAgfSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ21lb3cnKTsKKyAgLy8g
UGFzcyBpZiBhbmQgb25seSBpZiBib3RoIGJ1ZmZlcmVkIG9ic2VydmVycyByZWNlaXZlZCBhbGwg
MyBtYXJrIGVudHJpZXMuCisgIHJldHVybiBQcm9taXNlLmFsbChbcHJvbWlzZTEsIHByb21pc2Uy
XSk7Cit9LCAnTXVsdGlwbGUgUGVyZm9ybWFuY2VPYnNlcnZlcnMgd2l0aCBidWZmZXJlZCBmbGFn
IHNlZSBhbGwgZW50cmllcycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmY1NDJjZjdjNGFhY2YwMjkxNjY1YThmNDk3NjVhZGQ4ODVlYmM0MmQKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisK
KworUEFTUyBUZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVudHJ5IGZh
aWxzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25v
dC1jbG9uYWJsZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ2NTE3NzZlNWY0Yjk0NTMyOGU5ZGUyNjUxYjhh
NTlmMTFiNTM0MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1s
CkBAIC0wLDAgKzEsMTAgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgY29uc3QgdCA9IGFzeW5j
X3Rlc3QoIlRlc3QgdGhhdCBhIHBvc3RNZXNzYWdlIG9mIGEgcGVyZm9ybWFuY2UgZW50cnkgZmFp
bHMiKTsKKyAgYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2RvbmUoZSA9
PiB7CisgICAgYXNzZXJ0X2VxdWFscyhlLmRhdGEsICJQQVNTIik7CisgIH0pKTsKKzwvc2NyaXB0
PgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIj48L2lmcmFt
ZT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9vYnNlcnZlci1idWZmZXJlZC1mYWxzZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTI4MTAw
YjBmZGJhMmUwMDU3OTgwOWE1ODE5MzVkMzEyY2YxMjQ1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55LmpzCkBAIC0wLDAgKzEsMTIgQEAKK2Fz
eW5jX3Rlc3QodCA9PiB7CisgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICAvLyBVc2UgYSB0
aW1lb3V0IHRvIGVuc3VyZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB0ZXN0IHJ1bnMgYWZ0ZXIgdGhl
IGVudHJ5IGlzIGNyZWF0ZWQuCisgIHQuc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICAvLyBPYnNl
cnZlciB3aXRoIGJ1ZmZlcmVkIGZsYWcgc2V0IHRvIGZhbHNlIHNob3VsZCBub3Qgc2VlIGVudHJ5
LgorICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCgpID0+IHsKKyAgICAgIGFzc2VydF91bnJl
YWNoZWQoJ1Nob3VsZCBub3QgaGF2ZSBvYnNlcnZlZCBhbnkgZW50cnkhJyk7CisgICAgfSkub2Jz
ZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogZmFsc2V9KTsKKyAgICAvLyBVc2UgYSB0aW1l
b3V0IHRvIGdpdmUgdGltZSB0byB0aGUgb2JzZXJ2ZXIuCisgICAgdC5zdGVwX3RpbWVvdXQodC5z
dGVwX2Z1bmNfZG9uZSgoKSA9PiB7fSksIDEwMCk7CisgIH0sIDApOworfSwgJ1BlcmZvcm1hbmNl
T2JzZXJ2ZXIgd2l0aG91dCBidWZmZXJlZCBmbGFnIHNldCB0byBmYWxzZSBjYW5ub3Qgc2VlIHBh
c3QgZW50cmllcy4nKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pz
b24uYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wZXJmb3JtYW5jZWVudHJ5LXRvanNvbi5hbnkuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNDRmMDE1NmVlYzE5MjQxOTcwMDI4YzI4ZTU4OTdiZTRkNmYxY2I4MQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10b2pzb24uYW55LmpzCkBAIC0wLDAg
KzEsMjEgQEAKK3Rlc3QoKCkgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdtYXJrTmFtZScpOwor
ICBwZXJmb3JtYW5jZS5tZWFzdXJlKCdtZWFzdXJlTmFtZScpOworCisgIGNvbnN0IGVudHJpZXMg
PSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCk7CisgIGNvbnN0IHBlcmZvcm1hbmNlRW50cnlLZXlz
ID0gWworICAgICduYW1lJywKKyAgICAnZW50cnlUeXBlJywKKyAgICAnc3RhcnRUaW1lJywKKyAg
ICAnZHVyYXRpb24nCisgIF07CisgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7
ICsraSkgeworICAgIGFzc2VydF9lcXVhbHModHlwZW9mKGVudHJpZXNbaV0udG9KU09OKSwgJ2Z1
bmN0aW9uJyk7CisgICAgY29uc3QganNvbiA9IGVudHJpZXNbaV0udG9KU09OKCk7CisgICAgYXNz
ZXJ0X2VxdWFscyh0eXBlb2YoanNvbiksICdvYmplY3QnKTsKKyAgICBmb3IgKGNvbnN0IGtleSBv
ZiBwZXJmb3JtYW5jZUVudHJ5S2V5cykgeworICAgICAgYXNzZXJ0X2VxdWFscyhqc29uW2tleV0s
IGVudHJpZXNbaV1ba2V5XSwKKyAgICAgICAgYGVudHJpZXNbJHtpfV0udG9KU09OKCkuJHtrZXl9
IHNob3VsZCBtYXRjaCBlbnRyaWVzWyR7aX1dLiR7a2V5fWApOworICAgIH0KKyAgfQorfSwgJ1Rl
c3QgdG9KU09OKCkgaW4gUGVyZm9ybWFuY2VFbnRyeScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9w
by1jYWxsYmFjay1tdXRhdGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjhmMWIwOWJjMzc3MTIwODAyNDAxZGUxYjI0N2FhNTdkYjc0MTRjNjgK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0ZS5hbnkuanMKQEAg
LTAsMCArMSw2NiBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisK
KyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBjYWxsYmFja0NvdW50ID0gMDsK
KyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2FsbGJhY2tD
b3VudCsrOworCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDEpIHsKKyAgICAgICAg
ICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICBd
KTsKKyAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWFyayJdfSk7
CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsyIik7CisgICAgICAgICAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDIpIHsK
KyAgICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAg
ICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAg
ICBdKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hh
bmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3Jt
YW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFz
dXJlIik7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1
cmUiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMyIpOworICAg
ICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50ID09
PSAzKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMoKSwg
WworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9
LAorICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrLWJlZm9yZS1j
aGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1tZWFzdXJlIn0sCisgICAgICAgICAgICBdKTsKKyAgICAg
ICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUt
c3RhdGUtdG8tYm90aCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIik7CisgICAgICAgICAg
ICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7Cisg
ICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcms0Iik7CisgICAgICAgICAgICBz
ZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmU0Iik7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKGNhbGxiYWNrQ291bnQgPT09IDQpIHsKKyAg
ICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLCBbCisgICAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtYmVmb3JlLWNoYW5n
ZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1l
YXN1cmUiLCBuYW1lOiAibWVhc3VyZTQifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1h
cmsiLCBuYW1lOiAibWFyazQifSwKKyAgICAgICAgICAgIF0pOworICAgICAgICAgICAgc2VsZi5w
ZXJmb3JtYW5jZS5tYXJrKCJtYXJrLWJlZm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBz
ZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYmVmb3JlLWRpc2Nvbm5lY3QiKTsKKyAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9y
bWFuY2UubWFyaygibWFyay1hZnRlci1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBzZWxmLnBl
cmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtYWZ0ZXItZGlzY29ubmVjdCIpOworICAgICAgICAg
ICAgdC5kb25lKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAg
ICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhlIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQgYWZ0
ZXIgZGlzY29ubmVjdGluZyIpOworICAgICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2VydmVy
Lm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEi
KTsKKyAgfSwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXIgbW9kaWZpY2F0aW9ucyBpbnNpZGUgY2FsbGJh
Y2sgc2hvdWxkIHVwZGF0ZSBmaWx0ZXJpbmcgYW5kIG5vdCBjbGVhciBidWZmZXIiKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jYWM5N2JlYTA3NTVjMTE4Mjk1NmZkZjk0Yzk4ZWU3OGNhNDBiMDE3Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJlbW92ZXMtb2JzZXJ2ZWQtdHlw
ZXMuYW55LmpzCkBAIC0wLDAgKzEsMTkgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9i
c2VydmVycy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgIGNvbnN0IG9ic2VydmVy
ICA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24g
KGVudHJ5TGlzdCkgeworICAgICAgICAvLyBUaGVyZSBzaG91bGQgYmUgbm8gbWFyayBlbnRyeS4K
KyAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAg
W3sgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJiIn1dKTsKKyAgICAgICAgdC5kb25lKCk7
CisgICAgICB9KQorICAgICk7CisgIG9ic2VydmVyLm9ic2VydmUoe3R5cGU6ICJtYXJrIn0pOwor
ICAvLyBEaXNjb25uZWN0IHRoZSBvYnNlcnZlci4KKyAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAvLyBOb3csIG9ubHkgb2JzZXJ2ZSBtZWFzdXJlLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBl
OiAibWVhc3VyZSJ9KTsKKyAgcGVyZm9ybWFuY2UubWFyaygiYSIpOworICBwZXJmb3JtYW5jZS5t
ZWFzdXJlKCJiIik7Cit9LCAiVHlwZXMgb2JzZXJ2ZWQgYXJlIGZvcmdvdHRlbiB3aGVuIGRpc2Nv
bm5lY3QoKSBpcyBjYWxsZWQuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3Qu
YW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZjVmYjVh
YTQzYmE0NjI2OGY4YzM1NWZkYzkzYzZmMTgyOTk2OGI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1kaXNjb25uZWN0LmFueS5qcwpAQCAtMCwwICsxLDM3IEBACisvLyBNRVRBOiBzY3Jp
cHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7
CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQu
c3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGFzc2VydF91
bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBub3QgYmUgaW52b2tlZCIpOworICAgICAgICB9
KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAi
bWVhc3VyZSIsICJuYXZpZ2F0aW9uIl19KTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlvbiAoKSB7Cisg
ICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgImRpc2Nvbm5lY3RlZCBjYWxsYmFj
a3MgbXVzdCBub3QgYmUgaW52b2tlZCIpOworCisgIHRlc3QoZnVuY3Rpb24gKCkgeworICAgIHZh
ciBvYnMgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoKSB7IHJldHVybiB0cnVl
OyB9KTsKKyAgICBvYnMuZGlzY29ubmVjdCgpOworICAgIG9icy5kaXNjb25uZWN0KCk7CisgIH0s
ICJkaXNjb25uZWN0aW5nIGFuIHVuY29ubmVjdGVkIG9ic2VydmVyIGlzIGEgbm8tb3AiKTsKKwor
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qs
IG9icykgeworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoaXMgY2FsbGJhY2sgbXVzdCBu
b3QgYmUgaW52b2tlZCIpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNl
cnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygi
bWFyazEiKTsKKyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgc2VsZi5wZXJmb3JtYW5j
ZS5tYXJrKCJtYXJrMiIpOworICAgIHQuc3RlcF90aW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAg
IHQuZG9uZSgpOworICAgIH0sIDIwMDApOworICB9LCAiQW4gb2JzZXJ2ZXIgZGlzY29ubmVjdGVk
IGFmdGVyIGEgbWFyayBtdXN0IG5vdCBoYXZlIGl0cyBjYWxsYmFjayBpbnZva2VkIik7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWVudHJp
ZXMtc29ydC5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjBjNzgxYTNjMGMwM2JmODFlODIwMTY4YmRmNzBi
NTM2Mjc1MDQwYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFu
eS5qcwpAQCAtMCwwICsxLDY0IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZl
cnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9lbnRy
aWVzID0gW107CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBbXTsKKyAgICB2YXIg
b2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMo
ZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9
IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXNfYnlfdHlw
ZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIik7CisgICAgICAgICAgc3RvcmVk
X2VudHJpZXNfYnlfbmFtZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJuYW1lLXJlcGVh
dCIpOworICAgICAgICAgIHZhciBzdGFydFRpbWVPZk1hcmsyID0gZW50cnlMaXN0LmdldEVudHJp
ZXNCeU5hbWUoIm1hcmsyIilbMF0uc3RhcnRUaW1lOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQo
c3RvcmVkX2VudHJpZXMpOworICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywg
WworICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTEifSwK
KyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUyIn0sCisg
ICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMyJ9LAorICAg
ICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAg
ICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAg
ICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAge2VudHJ5
VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0xIn0sCisgICAg
ICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlLW1hdGNoaW5nLW1h
cmsyLTIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVw
ZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVh
dCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJp
ZXNfYnlfdHlwZSk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X3R5
cGUsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn0sCisg
ICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAg
ICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgXSk7
CisKKyAgICAgICAgICBjaGVja1NvcnRlZChzdG9yZWRfZW50cmllc19ieV9uYW1lKTsKKyAgICAg
ICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSwgWworICAgICAgICAgICAg
e2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICAg
IHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7
ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOwor
CisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICB9KQorICAgICAgKTsKKworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6
IFsibWFyayIsICJtZWFzdXJlIl19KTsKKworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFy
azEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgd2Fp
dCgpOyAvLyBFbnN1cmUgbWFyazEgIT09IG1hcmsyIHN0YXJ0VGltZSBieSBtYWtpbmcgc3VyZSBw
ZXJmb3JtYW5jZS5ub3cgYWR2YW5jZXMuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJr
MiIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIiKTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSIsICJtYXJrMiIp
OworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsyICE9PSBtYXJrMyBzdGFydFRpbWUgYnkgbWFr
aW5nIHN1cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWFyaygibmFtZS1yZXBlYXQiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmUzIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5nLW1h
cmsyLTIiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFy
dFRpbWUgd2lsbCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJuYW1lLXJlcGVh
dCIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG5hbWUtcmVwZWF0IHN0YXJ0VGltZSB3aWxsIGRp
ZmZlci4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm5hbWUtcmVwZWF0Iik7CisgIH0s
ICJnZXRFbnRyaWVzLCBnZXRFbnRyaWVzQnlUeXBlLCBnZXRFbnRyaWVzQnlOYW1lIHNvcnQgb3Jk
ZXIiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmllcy5hbnkuanMgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLWdldGVudHJpZXMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2MTY5ZDVkYmQ2ZTBlMjA1MDZkMjAx
NDY1ODVkYmM4OWU3NTBjMjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJp
ZXMuYW55LmpzCkBAIC0wLDAgKzEsMzggQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9i
c2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIgb2JzZXJ2
ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rp
b24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5n
ZXRFbnRyaWVzKCksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1h
cmsxIn1dLCAiZ2V0RW50cmllcyIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlz
dC5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5VHlwZSIpOworICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm1lYXN1cmUiKS5sZW5ndGgs
IDAsCisgICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8gZXhwZWN0ZWQgZW50cnki
KTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCIy
MzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICJnZXRFbnRyaWVzQnlUeXBlIHdpdGggbm8g
ZXhwZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0
RW50cmllc0J5TmFtZSgibWFyazEiKSwKKyAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibWFyazEifV0sICJnZXRFbnRyaWVzQnlOYW1lIik7CisgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiKS5sZW5ndGgsIDAsCisg
ICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7Cisg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgiMjM0NTY3
IikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBl
Y3RlZCBlbnRyeSIpOworCisgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRy
aWVzQnlOYW1lKCJtYXJrMSIsICJtYXJrIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSIpOwor
ICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsx
IiwgIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3
aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazIiLCAibWVhc3VyZSIpLmxlbmd0
aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggYSB0eXBlIHdpdGggbm8g
ZXhwZWN0ZWQgZW50cnkiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlOYW1lKCJtYXJrMSIsICIyMzQ1NjciKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAi
Z2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisK
KyAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgdC5kb25lKCk7Cisg
ICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsi
bWFyayJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMSIpOworICB9LCAiZ2V0
RW50cmllcywgZ2V0RW50cmllc0J5VHlwZSBhbmQgZ2V0RW50cmllc0J5TmFtZSB3b3JrIik7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1h
cmstbWVhc3VyZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGIyMDVlMDk0Yzc1ZTEwYmMxYjkzZmY5NjZh
ZWEwZmQyM2E1ODZmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tbWFyay1tZWFzdXJl
LmFueS5qcwpAQCAtMCwwICsxLDYxIEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNl
cnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIHN0b3JlZF9l
bnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyICA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAg
ICAgICBzdG9yZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmllcy5jb25jYXQo
ZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKHN0b3JlZF9lbnRyaWVzLmxl
bmd0aCA+PSA0KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsCisg
ICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwKKyAgICAg
ICAgICAgICAgeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn0sCisgICAgICAgICAg
ICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAg
ICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAg
ICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAg
ICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisgIH0sICJlbnRyaWVzIGFyZSBvYnNlcnZh
YmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBtYXJrX2VudHJp
ZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAg
ICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAg
bWFya19lbnRyaWVzID0KKyAgICAgICAgICAgIG1hcmtfZW50cmllcy5jb25jYXQoZW50cnlMaXN0
LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKG1hcmtfZW50cmllcy5sZW5ndGggPj0gMikg
eworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKG1hcmtfZW50cmllcywKKyAgICAgICAgICAgICAg
W3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAgICB7IGVu
dHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAg
ICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsi
XX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZv
cm1hbmNlLm1hcmsoIm1hcmsyIik7CisgIH0sICJtYXJrIGVudHJpZXMgYXJlIG9ic2VydmFibGUi
KTsKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG1lYXN1cmVfZW50cmll
cyA9IFtdOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAg
ICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBt
ZWFzdXJlX2VudHJpZXMgPQorICAgICAgICAgICAgbWVhc3VyZV9lbnRyaWVzLmNvbmNhdChlbnRy
eUxpc3QuZ2V0RW50cmllcygpKTsKKyAgICAgICAgICBpZiAobWVhc3VyZV9lbnRyaWVzLmxlbmd0
aCA+PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMobWVhc3VyZV9lbnRyaWVzLAorICAg
ICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisg
ICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9XSk7
CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICB0LmRvbmUo
KTsKKyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOworICAgIG9ic2VydmVyLm9ic2Vy
dmUoe2VudHJ5VHlwZXM6IFsibWVhc3VyZSJdfSk7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFz
dXJlKCJtZWFzdXJlMSIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTIi
KTsKKyAgfSwgIm1lYXN1cmUgZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZGY4NWU1ODU2Y2U4NzNmMTIxZGM1MTU0NGM1NDRiNDE0Mzlm
YTI2YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw3IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZl
ckluaXQuYnVmZmVyZWQKKworUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxk
IHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcworCisKK1BBU1MgUGVyZm9ybWFu
Y2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJpZXZlIHByZXZpb3VzbHkgYnVmZmVy
ZWQgZW50cmllcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlw
ZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMmJiYTM5NmE2YjY5ZWJhZDU2YWQ0ZjFiMTM1Y2I4YWQ0OWQzMjFiNwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qcwpAQCAtMCww
ICsxLDE3IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5
bmNfdGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAg
ICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCksCisgICAgICAgICAgW3sg
ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJlYXJseSJ9XSk7CisgICAgICAgIG9ic2VydmVyLmRp
c2Nvbm5lY3QoKTsKKyAgICAgICAgdC5kb25lKCk7CisgICAgICB9KQorICAgICk7CisgIHBlcmZv
cm1hbmNlLm1hcmsoImVhcmx5Iik7CisgIC8vIFRoaXMgY2FsbCB3aWxsIG5vdCB0cmlnZ2VyIGFu
eXRoaW5nLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gVGhpcyBj
YWxsIHNob3VsZCBvdmVycmlkZSB0aGUgcHJldmlvdXMgY2FsbCBhbmQgZGV0ZWN0IHRoZSBlYXJs
eSBtYXJrLgorICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayIsIGJ1ZmZlcmVkOiB0cnVl
fSk7Cit9LCAiVHdvIGNhbGxzIG9mIG9ic2VydmUoKSB3aXRoIHRoZSBzYW1lICd0eXBlJyBjYXVz
ZSBvdmVycmlkZS4iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1vYnNlcnZlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTQ4ZjBmMzc2NGJkYTRjZWI4OGIyYThi
ZTRkNjVmMTY4MzYyNjI3YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5o
dG1sCkBAIC0wLDAgKzEsODYgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNldD11dGYt
OD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQu
YnVmZmVyZWQ8L3RpdGxlPgorPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+Cis8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0icGVyZm9ybWFuY2VvYnNlcnZlcnMuanMiPjwvc2NyaXB0PgorPGgxPlBlcmZvcm1hbmNl
T2JzZXJ2ZXJzOiBQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZDwvaDE+Cis8cD4KK1Bl
cmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5
IGJ1ZmZlcmVkIGVudHJpZXMKKzwvcD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0Pgor
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVuY3Rpb24gaW5pdFRlc3QoKSB7Cisg
ICAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZl
cikgeworICAgICAgICBlbnRyeUxpc3QuZ2V0RW50cmllcygpLmZvckVhY2goZnVuY3Rpb24oZW50
cnkpIHsKKyAgICAgICAgICBpZiAoc2hvdWxkRXhjbHVkZShlbnRyeSkpIHsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBvYnNlcnZlZEVudHJpZXMucHVzaChl
bnRyeSk7CisgICAgICAgICAgaWYgKG9ic2VydmVkRW50cmllcy5sZW5ndGggPT09IGVudHJ5VHlw
ZXMubGVuZ3RoKSB7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAg
ICAgICBydW5UZXN0KCk7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKyAgICAgIH0pLm9ic2Vy
dmUoe2VudHJ5VHlwZXN9KTsKKworICAgICAgLy8gY3JlYXRlcyBhIGByZXNvdXJjZWAgZW50cnkK
KyAgICAgIHZhciBpbWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICAgIGlt
Zy5zcmMgPSAiLi9yZXNvdXJjZXMvc3F1YXJlLnBuZyI7CisgICAgICBkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKGltZyk7CisKKyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoIm1hcmtOYW1lIik7IC8v
IGNyZWF0ZXMgYSBgbWFya2AgZW50cnkKKyAgICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1
cmVOYW1lIik7IC8vIGNyZWF0ZXMgYSBgbWVhc3VyZWAgZW50cnkKKyAgICB9CisgICAgZnVuY3Rp
b24gc2hvdWxkRXhjbHVkZShlbnRyeSkgeworICAgICAgLy8gZXhjbHVkZSBhbGwgYHJlc291cmNl
YCBlbnRyaWVzIHRoYXQgYXJlbid0IGZvciAic3F1YXJlLnBuZyIKKyAgICAgIHJldHVybiBlbnRy
eS5lbnRyeVR5cGUgPT09ICJyZXNvdXJjZSIgJiYKKyAgICAgICAgICAgICBlbnRyeS5uYW1lLmlu
ZGV4T2YoInNxdWFyZS5wbmciKSA9PT0gLTE7CisgICAgfQorICAgIGZ1bmN0aW9uIHJ1blRlc3Qo
KSB7CisgICAgICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgaXMgYSBub3AgYmVjYXVzZSB3
ZSd2ZSBhbHJlYWR5IGJlZW4gbm90aWZpZWQgYWJvdXQgYWxsIG9mIG91ciBgZW50cnlUeXBlc2AK
KyAgICAgIHZhciBwb19ub3AgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50
cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgICBpZiAoZW50cnlMaXN0LmdldEVudHJpZXMoKS5m
aW5kKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAgICAgcmV0dXJuICFzaG91bGRFeGNsdWRlKGVu
dHJ5KTsKKyAgICAgICAgfSkpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJ0aGlzIFBl
cmZvcm1hbmNlT2JzZXJ2ZXIgY2FsbGJhY2sgc2hvdWxkIG5ldmVyIGJlIGNhbGxlZCIpOworICAg
ICAgICB9CisgICAgICB9KTsKKyAgICAgIHBvX25vcC5vYnNlcnZlKHsKKyAgICAgICAgZW50cnlU
eXBlcywKKyAgICAgIH0pOworCisgICAgICAvLyB0aGlzIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgc2hv
dWxkIGJlIG5vdGlmaWVkIGFib3V0IHRoZSBwcmV2aW91c2x5CisgICAgICAvLyBidWZmZXJlZCBt
YXJrIGVudHJ5IG9ubHkKKyAgICAgIGNvbnN0IGJ1ZmZlcmVkRW50cmllcyA9IFtdOworICAgICAg
bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsK
KyAgICAgICAgZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7
CisgICAgICAgICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgYnVmZmVyZWRFbnRyaWVzLnB1c2goZW50cnkp
OworICAgICAgICAgIGlmIChidWZmZXJlZEVudHJpZXMubGVuZ3RoID09PSAxKSB7CisgICAgICAg
ICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgICAgICBwb19ub3AuZGlzY29ubmVj
dCgpOworICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGJ1ZmZlcmVkRW50cmllcy5sZW5ndGg7
IGkrKykgeworICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGJ1ZmZlcmVkRW50cmllc1tpXS5l
bnRyeVR5cGUsICJtYXJrIikKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9KS5vYnNlcnZlKHsKKyAgICAgICAgdHlw
ZTogIm1hcmsiLAorICAgICAgICBidWZmZXJlZDogdHJ1ZQorICAgICAgfSk7CisgICAgfQorCisg
ICAgY29uc3QgZW50cnlUeXBlcyA9IFsibmF2aWdhdGlvbiIsICJyZXNvdXJjZSIsICJtYXJrIiwg
Im1lYXN1cmUiXTsKKyAgICBjb25zdCBvYnNlcnZlZEVudHJpZXMgPSBbXTsKKyAgICBpbml0VGVz
dCgpOworICB9LCAiUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQgc2hvdWxkIHJldHJp
ZXZlIHByZXZpb3VzbHkgYnVmZmVyZWQgZW50cmllcyIpOworCis8L3NjcmlwdD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJj
ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWVlZTY1ZTlmOWFiNWZiMjMzNzNlYjlkOGE3MGEz
MzljMDVhMDIzNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlCisK
K05ldyByZXNvdXJjZXMgd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKworUEFTUyBy
ZXNvdXJjZSBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
cmVzb3VyY2UuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMGMx
NzNlZWFlOTIxZmJlY2MzZWVlYTU0ZDhhZGZhNmI5ZWQ1MzY1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1yZXNvdXJjZS5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBIVE1M
PgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVz
b3VyY2U8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4K
KzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogcmVzb3VyY2U8L2gxPgorPHA+CitOZXcgcmVzb3Vy
Y2VzIHdpbGwgPGEgaHJlZj0iaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVs
aW5lLyNkZm4tcXVldWUtYS1wZXJmb3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50
cnk8L2E+LgorPC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rl
c3QoZnVuY3Rpb24gKHQpIHsKKyAgICBmdW5jdGlvbiBwYXRoKHBhdGhuYW1lKSB7CisgICAgICB2
YXIgZmlsZW5hbWUgPSBwYXRobmFtZS5zdWJzdHJpbmcocGF0aG5hbWUubGFzdEluZGV4T2YoJy8n
KSsxKTsKKyAgICAgIHJldHVybiBwYXRobmFtZS5zdWJzdHJpbmcoMCwgcGF0aG5hbWUubGVuZ3Ro
IC0gZmlsZW5hbWUubGVuZ3RoKTsKKyAgICB9CisgICAgdmFyIGdVbmlxdWVDb3VudGVyID0gMDsK
KyAgICBmdW5jdGlvbiBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpIHsKKyAgICAgIHJldHVybiBEYXRl
Lm5vdygpICsgIi0iICsgKCsrZ1VuaXF1ZUNvdW50ZXIpOworICAgIH0KKyAgICB2YXIgc3RvcmVk
X2VudHJpZXMgPSBbXTsKKyAgICB2YXIgaW1nX2xvY2F0aW9uID0gZG9jdW1lbnQubG9jYXRpb24u
b3JpZ2luICsgcGF0aChkb2N1bWVudC5sb2NhdGlvbi5wYXRobmFtZSkKKyAgICAgICArICJyZXNv
dXJjZXMvc3F1YXJlLnBuZz9yYW5kb209IjsKKyAgICB2YXIgaW1nMSA9IGltZ19sb2NhdGlvbiAr
IGdlbmVyYXRlVW5pcXVlVmFsdWVzKCk7CisgICAgdmFyIGltZzIgPSBpbWdfbG9jYXRpb24gKyBn
ZW5lcmF0ZVVuaXF1ZVZhbHVlcygpOworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5j
ZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMp
IHsKKyAgICAgICAgICBzdG9yZWRfZW50cmllcyA9CisgICAgICAgICAgICBzdG9yZWRfZW50cmll
cy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikpOworICAgICAg
ICAgIGlmIChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tF
bnRyaWVzKHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJyZXNv
dXJjZSIsIG5hbWU6IGltZzF9LAorICAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJyZXNvdXJj
ZSIsIG5hbWU6IGltZzJ9XSk7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pCisgICAgICApOwor
ICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsicmVzb3VyY2UiXX0pOworICAgIHZh
ciBpbWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICBpbWcuc3JjID0gaW1n
MTsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CisgICAgaW1nID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9IGltZzI7CisgICAgZG9jdW1l
bnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworICB9LCAicmVzb3VyY2UgZW50cmllcyBhcmUgb2Jz
ZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRz
LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tdGFrZVJlY29yZHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2YWQz
OTdiMGE1YzM3OWQwMTI5ZDQzYzkyOTUyYmM2YzhjNWMwY2YKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBNRVRBOiB0
aXRsZT1QZXJmb3JtYW5jZU9ic2VydmVyOiB0YWtlUmVjb3JkcworLy8gTUVUQTogc2NyaXB0PXBl
cmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICBj
b25zdCBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxp
c3QsIG9ic2VydmVyKSB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdUaGlzIGNhbGxiYWNrIHNo
b3VsZCBub3QgaGF2ZSBiZWVuIGNhbGxlZC4nKQorICAgIH0pOworICAgIGxldCBlbnRyaWVzID0g
b2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdO
byByZWNvcmRzIGJlZm9yZSBvYnNlcnZlJyk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlU
eXBlczogWydtYXJrJ119KTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihvYnNlcnZlci50YWtl
UmVjb3JkcyksICdmdW5jdGlvbicpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3Jk
cygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBbXSwgJ05vIHJlY29yZHMganVzdCBmcm9t
IG9ic2VydmUnKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdhJyk7CisgICAgcGVyZm9ybWFuY2Uu
bWFyaygnYicpOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNo
ZWNrRW50cmllcyhlbnRyaWVzLCBbCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdh
J30sCisgICAgICB7ZW50cnlUeXBlOiAnbWFyaycsIG5hbWU6ICdiJ30KKyAgICBdKTsKKyAgICBw
ZXJmb3JtYW5jZS5tYXJrKCdjJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnZCcpOworICAgIHBl
cmZvcm1hbmNlLm1hcmsoJ2UnKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMo
KTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsn
LCBuYW1lOiAnYyd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZCd9LAorICAg
ICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnZSd9CisgICAgXSk7CisgICAgZW50cmllcyA9
IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAn
Tm8gZW50cmllcyByaWdodCBhZnRlciB0YWtlUmVjb3JkcycpOworICAgIG9ic2VydmVyLmRpc2Nv
bm5lY3QoKTsKKyAgICB0LmRvbmUoKTsKKyAgfSwgIlRlc3QgUGVyZm9ybWFuY2VPYnNlcnZlcidz
IHRha2VSZWNvcmRzKCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bvc3RtZXNz
YWdlLWVudHJ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmVmNWJlNzMzOTViNDlkODk1YTI1ODliZTU0N2E3ZjM5NTBmNDE2YmEKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1s
CkBAIC0wLDAgKzEsMTcgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2FkZEV2ZW50TGlz
dGVuZXIoImxvYWQiLCAoKSA9PiB7CisgIGNvbnN0IGVudHJ5ID0gcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICB0cnkgeworICAgIHdpbmRvdy50b3AucG9z
dE1lc3NhZ2UoZW50cnksICIqIik7CisgIH0gY2F0Y2goZXJyb3IpIHsKKyAgICBpZiAoZXJyb3Iu
bmFtZSA9PSAiRGF0YUNsb25lRXJyb3IiKSB7CisgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdl
KCJQQVNTIiwgIioiKTsKKyAgICB9IGVsc2UgeworICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2Fn
ZSgiRkFJTCAtIFdyb25nIGV4Y2VwdGlvbiBuYW1lOiAiICsgZXJyb3IubmFtZSwgIioiKTsKKyAg
ICB9CisgIH0KKyAgd2luZG93LnRvcC5wb3N0TWVzc2FnZSgiRkFJTCAtIE5vIGV4Y2VwdGlvbiB0
aHJvd24iLCAiKiIpOworfSk7CisKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNv
dXJjZXMvd29ya2VyLWludmFsaWQtZW50cmllcy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtl
ci1pbnZhbGlkLWVudHJpZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmQ3ZmJhMmNjZjRiNmFiN2U2MDQyNzNj
MjUwMTBlMzFlNDQzZTM3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dv
cmtlci1pbnZhbGlkLWVudHJpZXMuanMKQEAgLTAsMCArMSw2IEBACitwZXJmb3JtYW5jZS5tYXJr
KCd3b3JrZXJNYXJrJyk7Citwb3N0TWVzc2FnZSh7CisgICdpbnZhbGlkJyA6IHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoJ2ludmFsaWQnKS5sZW5ndGgsCisgICdtYXJrJyA6IHBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoJ21hcmsnKS5sZW5ndGgsCisgICdtZWFzdXJlJyA6IHBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ21lYXN1cmUnKS5sZW5ndGgKK30pOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hNzJmZTgxYzQ3ZmVhY2U3NjU2MTNhMDk2MmYyYTdlNjNmNzFmYTI1Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Ut
b2JzZXJ2ZXIuanMKQEAgLTAsMCArMSw2IEBACit0cnkgeworICBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigoKSA9PiB0cnVlKTsKKyAgcG9zdE1lc3NhZ2UoIlNVQ0NFU1MiKTsKK30gY2F0Y2ggKGV4
KSB7CisgIHBvc3RNZXNzYWdlKCJGQUlMVVJFIik7Cit9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1
cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50
cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDEzOGJkZTY2MTk2MjQzZTY3MDMwZDFhZTE0
MmJkYTQxMTQ4ZTIzMGIuLmU1ZWIxMThhYjIyNDNkMWNhMzQ1NzUwOTU0MGEyMDgyODAyODlkOTYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsNCBAQAogCiBQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5z
IGVudHJpZXMgaW4gYWxwaGFiZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMg
Y2FjaGVzIHJlc3VsdCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3Vw
cG9ydGVkRW50cnlUeXBlcy5hbnkuanMKaW5kZXggYTAyMjVhZDJmNzZmZGNmZWJiMGE3YzlhZmY5
YmQwMDMwZWNmODZhYS4uMjVmMTk1OTM5ZTdiNjkyNTA5NjI1YjgxMzFlNTM3MTY0Y2RmNTZjMCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcworKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCkBAIC0xMCwzICsxMCwxMCBAQCB0ZXN0KCgp
ID0+IHsKICAgICAgICInIGFyZSByZXBlYXRlZCBvciB0aGV5IGFyZSBub3QgaW4gYWxwaGFiZXRp
Y2FsIG9yZGVyLiIpCiAgIH0KIH0sICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBhbmQgcmV0
dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlciIpOworCit0ZXN0KCgpID0+IHsKKyAg
aWYgKHR5cGVvZiBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgPT09ICJ1
bmRlZmluZWQiKQorICAgIGFzc2VydF91bnJlYWNoZWQoInN1cHBvcnRlZEVudHJ5VHlwZXMgaXMg
bm90IHN1cHBvcnRlZC4iKTsKKyAgYXNzZXJ0X3RydWUoUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBw
b3J0ZWRFbnRyeVR5cGVzID09PQorICAgICAgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRF
bnRyeVR5cGVzKTsKK30sICJzdXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQiKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4
dAppbmRleCAxMzhiZGU2NjE5NjI0M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4
YWIyMjQzZDFjYTM0NTc1MDk1NDBhMjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1
cHBvcnRlZEVudHJ5VHlwZXMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9z
dXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBA
QAogCiBQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJpZXMg
aW4gYWxwaGFiZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJl
c3VsdCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dlYnRpbWluZy1y
ZXNvbHV0aW9uLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kODY5YzdjNTJkNTVkNjllMjEyM2Y2NGQ0ODZl
ZDFlMzIzNWQzZmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1
dGlvbi5hbnkuanMKQEAgLTAsMCArMSwyNSBAQAorZnVuY3Rpb24gdGVzdFRpbWVSZXNvbHV0aW9u
KGhpZ2hSZXNUaW1lRnVuYywgZnVuY1N0cmluZykgeworICAgIHRlc3QoKCkgPT4geworICAgICAg
ICBjb25zdCB0MCA9IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICBsZXQgdDEgPSBoaWdoUmVz
VGltZUZ1bmMoKTsKKyAgICAgICAgd2hpbGUgKHQwID09IHQxKSB7CisgICAgICAgICAgICB0MSA9
IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICB9CisgICAgICAgIGNvbnN0IGVwc2lsb24gPSAx
ZS01OworICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKHQxIC0gdDAsIDAuMDA1IC0g
ZXBzaWxvbiwgJ1RoZSBzZWNvbmQgJyArIGZ1bmNTdHJpbmcgKyAnIHNob3VsZCBiZSBtdWNoIGdy
ZWF0ZXIgdGhhbiB0aGUgZmlyc3QnKTsKKyAgICB9LCAnVmVyaWZpZXMgdGhlIHJlc29sdXRpb24g
b2YgJyArIGZ1bmNTdHJpbmcgKyAnIGlzIGF0IGxlYXN0IDUgbWljcm9zZWNvbmRzLicpOworfQor
CitmdW5jdGlvbiB0aW1lQnlQZXJmb3JtYW5jZU5vdygpIHsKKyAgICByZXR1cm4gcGVyZm9ybWFu
Y2Uubm93KCk7Cit9CisKK2Z1bmN0aW9uIHRpbWVCeVVzZXJUaW1pbmcoKSB7CisgICAgcGVyZm9y
bWFuY2UubWFyaygndGltZXInKTsKKyAgICBjb25zdCB0aW1lID0gcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5TmFtZSgndGltZXInKVswXS5zdGFydFRpbWU7CisgICAgcGVyZm9ybWFuY2UuY2xlYXJN
YXJrcygndGltZXInKTsKKyAgICByZXR1cm4gdGltZTsKK30KKwordGVzdFRpbWVSZXNvbHV0aW9u
KHRpbWVCeVBlcmZvcm1hbmNlTm93LCAncGVyZm9ybWFuY2Uubm93KCknKTsKK3Rlc3RUaW1lUmVz
b2x1dGlvbih0aW1lQnlVc2VyVGltaW5nLCAnZW50cnkuc3RhcnRUaW1lJyk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjY4MjZiOWNiZGFmMmM1ZmQ0NDEzNGMxMjE3ZGEzNGUyNDM2NGI3MDgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKworUEFTUyBXb3JrZXI6IFRlc3QgUGVyZm9ybWFu
Y2UgT2JzZXJ2ZXIgaW5zaWRlIGEgd29ya2VyLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBl
cmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmM5MmJjOTcxMDAzZjJlYTkyZmJk
MTY5ZDhkZDdhNjRkMDYyMDYyZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2VyLXdp
dGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbApAQCAtMCwwICsxLDE4IEBACis8IWRvY3R5cGUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
cy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9y
dC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cithc3luY190ZXN0KGZ1
bmN0aW9uKHQpIHsKKyAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcigicmVzb3VyY2VzL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzIik7CisgIHdvcmtlci5vbm1lc3NhZ2UgPSBm
dW5jdGlvbihldmVudCkgeworICAgIHQuc3RlcCgoKSA9PiBhc3NlcnRfZXF1YWxzKGV2ZW50LmRh
dGEsICdTVUNDRVNTJykpOworICAgIHQuZG9uZSgpOworICB9Cit9LCAnV29ya2VyOiBUZXN0IFBl
cmZvcm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4nKTsKKzwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1p
bmcuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1p
bmcuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDczMDA4MWY0ZDY3YjA2NDFkZTgwMGUyYTg4MWFm
MDI3MmIyMmI5YjIuLjY0ZTdlMjVjMjBkY2Q4OWRhZmZjNzIyMTc0MmQ5NTBjODcyNjc5YWUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1l
eHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJv
bGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVj
dGlvbjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZy53b3Jr
ZXJTdGFydCcpIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQotRkFJTCBTZXJ2aWNlIHdvcmtlciBj
b250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sgYXNzZXJ0X3VucmVh
Y2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICd0aW1pbmdbdGltaW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hh
YmxlIGNvZGUKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWlu
ZyByZWRpcmVjdCBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1t0aW1pbmdFdmVudE9yZGVy
W2ldXScpIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250
cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVq
ZWN0aW9uOiBhc3NlcnRfZ3JlYXRlcl90aGFuOiBleHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRo
YW4gMCBidXQgZ290IDAgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIFNlcnZpY2Ugd29y
a2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgbmV0d29yayBmYWxsYmFjaworUEFTUyBT
ZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIHJlZGlyZWN0CiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9y
bWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVy
LWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0CmluZGV4IDdmZmIzODU4M2RhODRi
NjQ2OTQ1NWFlNzQwNGQyMjRjNGI1NzMwZGEuLjRlYmRjY2Y1YjJiZDQ3ZGE0ZDVkMjE1ZDFlOGEy
NzgxYTRjMmRlMDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWlu
dC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9w
ZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dApA
QCAtMSw1ICsxLDUgQEAKIFBBU1MgZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50IGlzIHRy
dWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCBpcyAxCitQQVNTIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggaXMgMgogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoIGlzIDEKIFBBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIsICJwYWlu
dCIpLmxlbmd0aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInBhaW50
IikubGVuZ3RoIGlzIDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9w
YWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5o
dG1sIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5j
ZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKaW5kZXggMDA3OGE0MzU0NWI5
ZjRiNmNmYWJmODE3MTY2MWIzYjYwMWM0YWE3OS4uMWYyODBiNDA3NzVlMmE5YTgyZjhkM2I2NmU3
OThmNzBhNzU1N2UyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Bh
aW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3Jt
YW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50Lmh0bWwKQEAgLTM2LDcgKzM2LDcg
QEAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogICAgIGRvY3VtZW50LmJvZHkuaW5uZXJU
ZXh0ID0gJ1RFWFQyJzsKICAgICBhd2FpdCB3YWl0Rm9yRkNQKCk7CiAgICAgc2hvdWxkQmVUcnVl
KCdkaWRSZWNlaXZlRmlyc3RDb250ZW50ZnVsUGFpbnQnKTsKLSAgICBzaG91bGRCZSgncGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCcsICIxIik7CisgICAgc2hvdWxkQmUoJ3BlcmZvcm1h
bmNlLmdldEVudHJpZXMoKS5sZW5ndGgnLCAiMiIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoJywgIjEi
KTsKICAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29u
dGVudGZ1bC1wYWludCIsICJwYWludCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxkQmUoJ3Bl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikubGVuZ3RoJywgIjEiKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1h
cGktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNl
LW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQKaW5kZXggNzY0OWE4NDMxY2E0NDJiMTYwN2UyOGVl
ZDZkNDZhYzllNmNkZjBkYS4uM2E2N2RjMGJiNjNkNjA5ZGE4MjE0NmI3NjJlM2RlOGNkZjBhOTQ0
ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9i
c2VydmVyLWFwaS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBp
L3BlcmZvcm1hbmNlLW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQKQEAgLTExLDcgKzExLDcgQEAg
UEFTUyBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29u
c3RydWN0b3IgcmVxdWlyZXMgJ25ldycKIFBBU1MgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1l
bnQgMSAoJ2NhbGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3Ig
bXVzdCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKGZ1bmN0aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBvYnNlcnZl
ci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVu
dHMuCitQQVNTIG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBu
byB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2
ZSgibWFyayIpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIG9i
c2VydmVyLm9ic2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3Ig
ZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5
cGVzOiJtYXJrIn0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNl
cXVlbmNlLgpAQCAtMzksNyArMzksNyBAQCBQQVNTIFtXb3JrZXJdIFBlcmZvcm1hbmNlT2JzZXJ2
ZXIoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBDb25zdHJ1Y3RvciByZXF1aQogUEFTUyBb
V29ya2VyXSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBbV29ya2VyXSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcigxKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAxICgnY2FsbGJh
Y2snKSB0byB0aGUgUGVyZm9ybWFuY2VPYnNlcnZlciBjb25zdHJ1Y3RvciBtdXN0IGJlIGEgZnVu
Y3Rpb24uCiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIo
ZnVuY3Rpb24oKSB7fSkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCi1QQVNTIFtXb3JrZXJdIG9i
c2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFy
Z3VtZW50cy4KK1BBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBb
V29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKCJtYXJrIikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogVHlwZSBlcnJvci4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSh7fSkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQu
CiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6Im1hcmsifSkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVmFsdWUgaXMgbm90IGEgc2VxdWVuY2UuCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBp
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10
aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0CmluZGV4IGVkMDFhZTAwMzFmNGU1ZThmNzZlNjAxNWRi
MjM4ODIyNjQ0YjkxMmQuLmMxNDYyMTRlZjJkNmE4YWIxZDZiOGFlMzg3ODY1ZTEwN2JhM2Y3MGMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1l
bGluZS1hcGktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9w
ZXJmb3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0CkBAIC0xNiwxNCArMTYsMTQgQEAg
UEFTUyBQZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllcyBpcyBkZWZpbmVkLgogUEFTUyBQ
ZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5VHlwZSBpcyBkZWZpbmVkLgogUEFTUyBQ
ZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5TmFtZSBpcyBkZWZpbmVkLgogUEFTUyBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCi1QQVNTIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQotUEFTUyBwZXJmb3Jt
YW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgogUEFTUyBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpWzBdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNT
IHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyB0eXBlb2YgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIgaXMgdHJ1ZQot
UEFTUyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVt
YmVyIiBpcyB0cnVlCitQQVNTIHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJv
dyBleGNlcHRpb24uCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDIg
aXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5j
ZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KClbbWFya0luZGV4XS5uYW1lIGlzICJ0ZXN0IgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KClbbWFya0luZGV4XS5lbnRyeVR5cGUgaXMgIm1hcmsiCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUK
K1BBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9u
ID09PSAibnVtYmVyIiBpcyB0cnVlCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUo
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1Mg
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDAgaXMg
dHJ1ZQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIikubGVuZ3RoID09
PSAxIGlzIHRydWUKQEAgLTYwLDExICs2MCwxMSBAQCBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKSBpbnN0YW5jZW9mIEFycmF5IGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJd
IHBlcmZvcm1hbmNlLm1hcmsoInRlc3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCiBQQVNT
IFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQot
UEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0gaW5zdGFuY2VvZiBQZXJm
b3JtYW5jZUVudHJ5IGlzIHRydWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpWzBdLm5hbWUgaXMgInRlc3QiCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVswXS5lbnRyeVR5cGUgaXMgIm1hcmsiCi1QQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCi1QQVNT
IFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRpb24gPT09
ICJudW1iZXIiIGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
W21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgW1dv
cmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIK
K1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlU
eXBlIGlzICJtYXJrIgorUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3Jr
ZXJdIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9
PT0gIm51bWJlciIgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMu
CiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIiku
bGVuZ3RoID09PSAwIGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcyBiL0xheW91dFRl
c3RzL3BlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCmluZGV4IDFlZjdh
YTVjNTg0MmZkZTllMWJkMjAzZjFkMjU3Mzg3Yjk1MzYwNGQuLmI4YzI5OTQwMjZjZjk0ZTA3NDll
ZmI5NDIxYmMxZGJjYmIyMDMyM2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNl
LWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1h
bmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCkBAIC00LDYgKzQsOCBAQCBpZiAoc2Vs
Zi5pbXBvcnRTY3JpcHRzKQogaWYgKHNlbGYud2luZG93KQogICAgIGRlc2NyaXB0aW9uKCJCYXNp
YyBJbnRlcmZhY2UgdGVzdCBmb3IgcGVyZm9ybWFuY2UtdGltZWxpbmUgQVBJcy4iKTsKIAorbGV0
IHJ1bm5pbmdJbldvcmtlciA9ICEhc2VsZi5pbXBvcnRTY3JpcHRzOworCiBkZWJ1ZygiUGVyZm9y
bWFuY2VFbnRyeSIpOwogc2hvdWxkQmVEZWZpbmVkKCJQZXJmb3JtYW5jZUVudHJ5Iik7CiBzaG91
bGRCZVRydWUoYCJuYW1lIiBpbiBQZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZWApOwpAQCAtMjEs
MTQgKzIzLDI1IEBAIHNob3VsZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVu
dHJpZXNCeVR5cGVgKTsKIHNob3VsZEJlRGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdl
dEVudHJpZXNCeU5hbWVgKTsKIAogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
KCkgaW5zdGFuY2VvZiBBcnJheWApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkubGVuZ3RoID09PSAwYCk7CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgLy8gV29y
a2VycyBkb24ndCBoYXZlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy4KKyAgICBzaG91bGRC
ZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDBgKTsKK30gZWxzZSB7
CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAx
YCk7Cit9CiBzaG91bGROb3RUaHJvdyhgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpO2ApOwotc2hv
dWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Ci1zaG91
bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1h
bmNlRW50cnlgKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpWzBdLm5hbWVgLCAidGVzdCIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlYCwgIm1hcmsiKTsKLXNob3VsZEJlVHJ1ZShgdHlw
ZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiYCk7
Ci1zaG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZHVyYXRp
b24gPT09ICJudW1iZXIiYCk7CitpZiAocnVubmluZ0luV29ya2VyKSB7CisgICAgbWFya0luZGV4
ID0gMDsKKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGgg
PT09IDFgKTsKK30gZWxzZSB7CisgICAgbWFya0luZGV4ID0gMTsKKyAgICBzaG91bGRCZVRydWUo
YHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDJgKTsKK30KK3Nob3VsZEJlVHJ1
ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3Jt
YW5jZUVudHJ5YCk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVttYXJrSW5kZXhdLm5hbWVgLCAidGVzdCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5lbnRyeVR5cGVgLCAibWFyayIpOwor
c2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0u
c3RhcnRUaW1lID09PSAibnVtYmVyImApOworc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiYCk7CiAKIHNo
b3VsZFRocm93KGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKClgKTsKIHNob3VsZEJlVHJ1
ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDBg
KTsKQEAgLTUwLDUgKzYzLDUgQEAgc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5TmFtZSgidGVzdCIpWzBdLmR1cmF0aW9uID09PSAibnVtYmUKIHNob3VsZEJlVHJ1
ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJub3QtcmVhbCIpLmxlbmd0
aCA9PT0gMGApOwogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCJ0
ZXN0IiwgIm1hcmsiKS5sZW5ndGggPT09IDFgKTsKIAotaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykK
K2lmIChydW5uaW5nSW5Xb3JrZXIpCiAgICAgZmluaXNoSlNUZXN0KCk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk5OGQ0ZWQzY2UxODRjNjhkMzMxODYxM2Y4ZDIwZmUy
NzJkNTJlMzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sx
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Rlc2Ny
aXB0aW9uCisKK1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWVzIG9mIG5hdiB0aW1p
bmcgMiBpbnN0YW5jZSdzIHRpbWluZy1yZWxhdGVkIGF0dHJpYnV0ZXMgYXJlIGluIGNlcnRhaW4g
b3JkZXIgYW5kIHRoZSBvdGhlcnMgYXJlIG9mIGV4cGVjdGVkIHZhbHVlcy4KKworCitGQUlMIFBl
cmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVhc29uYWJs
ZS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgImh0dHAvMS4xIiBidXQgZ290ICIiCisK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>429059</attachid>
            <date>2021-05-19 10:11:11 -0700</date>
            <delta_ts>2021-05-19 12:30:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210519101110.patch</filename>
            <type>text/plain</type>
            <size>224023</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhiNWQwYTY0OTIzZDIy
NjViNjcyNmUzZjRiOTAyNzU3Y2IwZmVmNy4uMmY3MjlkZTBjYTU4NDEwNzRmYzM0MGY3NDJhOGJi
MmMzMTQ2ZmMzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1OSBAQAorMjAyMS0wNS0xOSAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgVGhpcyBpcyBiYXNpY2FsbHkganVzdCBhIG5ldyBz
aGFwZSBmb3IgZXhwb3NpbmcgdGhlIHNhbWUgZGF0YSBhcyB3aW5kb3cucGVyZm9ybWFuY2UubmF2
aWdhdGlvbiwgYnV0IHdpdGggYSBzaGFwZSB0aGF0IGZpdHMgYmV0dGVyIGludG8gdGhlIHJlc3Qg
b2YgdGhlCisgICAgICAgIHBlcmZvcm1hbmNlIHRpbWVsaW5lIG1lYXN1cmVtZW50cyB0aGF0IGhh
dmUgYmVlbiBhZGRlZCB0byB0aGUgd2ViIHBsYXRmb3JtIHNpbmNlIHBlcmZvcm1hbmNlLm5hdmln
YXRpb24uCisKKyAgICAgICAgSSBub3RlZCB0aGF0IGV4cG9zaW5nIHRyYW5zZmVyIHNpemUgaXMg
cHJvYmxlbWF0aWMsIGFuZCBzb21lIG9mIHRoZSB0ZXN0cyBmb3IgcmVhZGluZyB0cmFuc2ZlciBz
aXplIHN0aWxsIGZhaWwuCisgICAgICAgIFRoZXJlIGFyZSBzdGlsbCBhIGZldyByZWxhdGl2ZWx5
IG1pbm9yIHRlc3QgZmFpbHVyZXMgdG8gZml4IGluIGZ1dHVyZSBwYXRjaGVzLiAgRWFjaCBvbmUg
aXMgYW5ub3RhdGVkIGluIHRoZSBMYXlvdXRUZXN0cyBDaGFuZ2VMb2dzLgorCisgICAgICAgIFRl
c3RzOiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2Rv
bV9pbnRlcmFjdGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2
ZV9tZWRpYV9kb2N1bWVudC5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwKKyAgICAgICAg
ICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0ZV9pZnJhbWUuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmln
YXRlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxf
b3JpZ2luYWxfb3JpZ2luLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUuaHRt
bAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAorICAgICAgICAg
ICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9w
by1uYXZpZ2F0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2Uu
aHR0cHMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCisgICAgICAgICAg
ICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby1vYnNlcnZlLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0
b0pTTmV3bHlDcmVhdGVkKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnNldFJlYWR5U3RhdGUpOgorICAgICAgICBTb21ldGltZXMgdGhl
IHJlYWR5IHN0YXRlIGp1bXBzIHJpZ2h0IHRvIENvbXBsZXRlIHdpdGhvdXQgaGl0dGluZyBJbnRl
cmFjdGl2ZSBhbG9uZyB0aGUgd2F5LgorICAgICAgICBXaGVuIHRoaXMgaGFwcGVucywgd2Ugd2Fu
dCB0byBtYXJrIGJvdGggbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSBhbmQgbV9kb2N1bWVu
dFRpbWluZy5kb21JbnRlcmFjdGl2ZS4KKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKToK
KyAgICAgICAgQ2FsbCBhZGROYXZpZ2F0aW9uVGltaW5nIGluIG5vdGlmeUZpbmlzaGVkIHRvIGNy
ZWF0ZSB0aGUgbmF2aWdhdGlvbiB0aW1pbmcgb2JqZWN0IHdoZW4gd2UgYXJlIGRvbmUgbmF2aWdh
dGluZworICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogbG9hZGVy
L1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlVGltaW5nLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpmcm9tTG9hZCk6CisgICAgICAgIEFk
ZCBhIFVSTCBwYXJhbWV0ZXIuICBTb21ldGltZXMgd2UgbmVlZCB0byB1c2UgdGhlIHJlcXVlc3Qn
cyBVUkwgYW5kIHNvbWV0aW1lcyB0aGUgcmVzcG9uc2Uncy4gIERpZmZlcmVudCBzcGVjcyB3cml0
dGVuIGF0IGRpZmZlcmVudCB0aW1lcy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5n
Ojpwb3B1bGF0ZVNlcnZlclRpbWluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVRpbWluZzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRl
ci9SZXNvdXJjZVRpbWluZy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OnVy
bCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6aW5pdGlhdG9yIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpsb2FkVGltaW5nIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjpuZXR3b3JrTG9hZE1ldHJpY3Mg
Y29uc3QpOgorICAgICAgICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcpOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2U6OmdldEVudHJpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Omdl
dEVudHJpZXNCeVR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Omdl
dEVudHJpZXNCeU5hbWUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFw
cGVuZEJ1ZmZlcmVkRW50cmllc0J5VHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZTo6YWRkTmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZTo6cmVnaXN0ZXJQZXJmb3JtYW5jZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlOjpxdWV1ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpz
Y2hlZHVsZVRhc2tJZk5lZWRlZCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9y
bWFuY2VFbnRyeTo6c3RhcnRUaW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlRW50cnk6OmR1cmF0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
RW50cnk6OmlzUmVzb3VyY2UgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VFbnRyeTo6aXNNYXJrIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlRW50cnk6OmlzTWVhc3VyZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojppc1BhaW50IGNvbnN0KTogRGVsZXRlZC4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlTWFyay5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4K
KyAgICAgICAgU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTi9FTkQgZG9lc24ndCB3b3JrIHdl
bGwgd2l0aCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgd2hpY2ggaW5oZXJpdHMgZnJvbSBQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIHdoaWNoIGJvdGggaGF2ZSBkaXN0aW5jdCB0eXBlcy4K
KyAgICAgICAgaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gZG9lc24ndCBnaXZlIHVzIHRo
ZSBpbmZvIHdlIG5lZWQuICBJIHJlcGxhY2VkIHRoYXQgd2l0aCAic3dpdGNoIChlbnRyeS0+cGVy
Zm9ybWFuY2VFbnRyeVR5cGUoKSkiIGluIHRoZSBvbmUgcGxhY2UgaXQncyB1c2VkLCBhbmQgaXQg
d29ya3MgbGlrZSBhIGNoYXJtLgorICAgICAgICBBbHNvIHJlbmFtZWQgdHlwZSB0byBwZXJmb3Jt
YW5jZUVudHJ5VHlwZSBzbyBpdCBkb2Vzbid0IGNvbmZsaWN0IHdpdGggUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nOjp0eXBlLCB3aGljaCBpcyBzcGVjaWZpZWQgaW4gdGhlIGlkbC4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA6IEFkZGVk
LgorICAgICAgICAoV2ViQ29yZTo6dG9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdOYXZpZ2F0
aW9uVHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6Om1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNo
ZWNrRmFpbHMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nOjp1bmxvYWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21JbnRlcmFjdGl2ZSBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNv
bnRlbnRMb2FkZWRFdmVudFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29udGVudExvYWRlZEV2ZW50RW5kIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjps
b2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OmxvYWRFdmVudEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpyZWRpcmVjdENvdW50IGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c3RhcnRUaW1lIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZHVyYXRp
b24gY29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmg6
IEFkZGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbDog
Q29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbC4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VPYnNlcnZlcjo6dGFrZVJlY29yZHMpOgorICAgICAgICAoV2ViQ29yZTo6
UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJm
b3JtYW5jZU9ic2VydmVyOjpkZWxpdmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
T2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlwZXMpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VPYnNlcnZlci5oOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGw6Cisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6OmdldEVudHJpZXNCeU5hbWUg
Y29uc3QpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oOgorICAgICAg
ICAoaXNUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2wgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RTdGFydCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZWRpcmVjdEVuZCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0
YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OmRvbWFpbkxvb2t1cFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc6OmRvbWFpbkxvb2t1cEVuZCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpzZWN1cmVDb25u
ZWN0aW9uU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZzo6cmVxdWVzdFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzcG9uc2VFbmQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRUaW1lVG9E
T01IaWdoUmVzVGltZVN0YW1wIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmc6OmluaXRpYXRvclR5cGUgY29uc3QpOgorICAgICAgICAoaXNUeXBlKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOgorICAgICAgICAqIHBs
YXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmRvTm90aWZ5RmluaXNoKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2Fk
TWV0cmljcy5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ2xpZW50OjpkaWRGaW5pc2hM
b2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xp
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRG
aW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZUhhbmRs
ZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0
aW9uUXVldWU6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICBQYXNzIG1ldHJpY3MgaW5jbHVk
aW5nIHRoZSByZXNwb25zZSBlbmQgdGltZSBmcm9tIE5TVVJMQ29ubmVjdGlvbiBzbyB3ZSBkb24n
dCBhc3NlcnQgaW4gV2ViS2l0TGVnYWN5LgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29j
b2EvTmV0d29ya0xvYWRNZXRyaWNzLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29weVRpbWluZ0Rh
dGEpOgorICAgICAgICBVc2UgY3VycmVudFJlcXVlc3QgaW5zdGVhZCBvZiBwYXNzaW5nIGluIHRo
ZSByZXNwb25zZSBzbyB3ZSBjYW4gY2FsbCBpdCBmcm9tIGRpZEZpbmlzaExvYWRpbmcsIHdoZXJl
IHdlIGRvbid0IGhhdmUgYSByZXNwb25zZSBzdG9yZWQgYW55d2hlcmUuCisgICAgICAgIFdlJ3Jl
IGp1c3QgbG9va2luZyBmb3Igd2hldGhlciBpdCdzIGh0dHAgb3IgaHR0cHMsIHNvIHRoZSBjdXJy
ZW50UmVxdWVzdCAod2hpY2ggaXMgdGhlIHJlcXVlc3QgYWZ0ZXIgYWxsIHRoZSByZWRpcmVjdHMp
IGZpdHMgb3VyIHB1cnBvc2UuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291
cmNlSGFuZGxlQ3VybC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6aGFu
ZGxlRGF0YVVSTCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tOgorICAgICAgICAoLVtXZWJDb3Jl
UmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUgY29ubmVjdGlvbjpkaWRSZWNl
aXZlUmVzcG9uc2U6XSk6CisgICAgICAgICgtW1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0
aW9uUXVldWVEZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzpdKToKKwogMjAyMS0w
NS0xOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVUF0g
UmVtb3RlQXVkaW9TZXNzaW9uIGNhbGxzIGludG8gQVZBdWRpb1Nlc3Npb24gd2hlbiBHUFVQIGlz
IGVuYWJsZWQsIGNhdXNpbmcgaGFuZ3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYjlkYmE1NmI4ZDVhYWQwYzhlZmFl
NjU2ZWNjNzNiODFmMTdhMWQ1OC4uOTUzYWRmNDgzMWI0MGRmNGNhZTQ5NTFhNWY2MDgwMzYwMWE1
MjlkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wNS0xOSAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZv
ciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtl
IE5pd2EuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tOgorICAgICAgICAoLVtXS05ldHdvcmtTZXNzaW9uRGVsZWdhdGUgVVJMU2Vzc2lvbjp0
YXNrOmRpZEZpbmlzaENvbGxlY3RpbmdNZXRyaWNzOl0pOgorICAgICAgICBNYXJrIHJldXNlZCBU
TFMgY29ubmVjdGlvbnMgaW4gY29tcGxldGUgbWV0cmljcyBsaWtlIEkgZGlkIGluIGluY29tcGxl
dGUgbWV0cmljcyBpbiByMjc3NDkzLgorCiAyMDIxLTA1LTE4ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWxsb3cgU2FmYXJpRm9yV2ViS2l0
RGV2ZWxvcG1lbnQgdG8gbGF1bmNoIHN1Y2Nlc3NmdWxseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwppbmRl
eCBhYzhkNmY2NmQ5YzUxODdjMjQzYTViNzVhNmFhMmQ5OTY0ZWNmMzhlLi5lMTFiNTNkZmM5YzQ2
Nzc5Nzc2ODNkOWUwZTg2N2M2OTlhMDNlOGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEyIEBACisyMDIxLTA1LTE5ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExl
dmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaDoKKwogMjAyMS0wNS0xNyAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEF2b2lkIG1vcmUgU3RyaW5nIGNyZWF0aW9ucyB3
aGVuIHByZXBhcmluZyBTUUxpdGUgc3RhdGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9T
Y3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwgYi9Tb3Vy
Y2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFt
bAppbmRleCBmMzQ2NjViN2U2YTk2ZmYwMmFjYTFmMGU0ZTIzNDdlMzg3OWE1M2VhLi42YjM0OTY5
M2YxMTE5YzRiN2Y5ZjIzOWFkNGYwYTU0NjQ0NjI1M2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RG
L1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbAorKysg
Yi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50
YWwueWFtbApAQCAtNzgyLDYgKzc4MiwxOCBAQCBQZXJFbGVtZW50U3BlYWtlclNlbGVjdGlvbkVu
YWJsZWQ6CiAgICAgV2ViQ29yZToKICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAKK1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQ6CisgIHR5cGU6IGJvb2wKKyAgaHVtYW5SZWFkYWJs
ZU5hbWU6ICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciCisgIGh1bWFuUmVhZGFibGVEZXNj
cmlwdGlvbjogIkVuYWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgQVBJIgorICBkZWZh
dWx0VmFsdWU6CisgICAgV2ViS2l0TGVnYWN5OgorICAgICAgZGVmYXVsdDogZmFsc2UKKyAgICBX
ZWJLaXQ6CisgICAgICBkZWZhdWx0OiBmYWxzZQorICAgIFdlYkNvcmU6CisgICAgICBkZWZhdWx0
OiBmYWxzZQorCiBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudERlYnVnTW9kZUVuYWJsZWQ6CiAgIHR5
cGU6IGJvb2wKICAgaHVtYW5SZWFkYWJsZU5hbWU6ICJQcml2YXRlIENsaWNrIE1lYXN1cmVtZW50
IERlYnVnIE1vZGUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGNjZDJjZjEyNzEyZGY0ODMzMGZm
OGRjODcxYWU1NTUzOTJmN2EyZmEuLmNhMjRiNTBiOTgyMjEyZjY1ZTdiMzlmZjczZmM0MmM3YmFm
NjU1MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMTI5LDYgKzExMjksNyBAQCBzZXQoV2Vi
Q29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxi
YWNrLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwKICAgICBw
YWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwKKyAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaWRsCiAgICAg
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VT
ZXJ2ZXJUaW1pbmcuaWRsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQu
eGNmaWxlbGlzdAppbmRleCBiODUwNTZjODEzY2ExMzQxOTJjNmMzOWYyNTg0NTk2ZTg1MTYyMmQ5
Li5jM2JiYjJlODRlYmIzNjI0YTk5YjI4M2IwZTExYTlkNzRkZDZlNTkzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKQEAgLTEyMDIsNiArMTIw
Miw3IEBAICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5pZGwKICQo
UFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmlkbAogJChQUk9KRUNUX0RJUikv
cGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9Q
ZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsCiskKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZy5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwKICQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNr
LmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0Lmlk
bApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmls
ZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApp
bmRleCA1YzZlOTA0ZjBhNDFmNDRiMTdiYTFkNDNiZWE0ZjYwYzAxZWFmYTA1Li41OGI1ODhmM2U4
YTIxOGY5YTlmYmQ3Yjk5ZTg0YTkyODIzODU0N2UxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtMTYwNiw2ICsxNjA2LDggQEAgJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU1l
YXN1cmVPcHRpb25zLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcAogJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU5h
dmlnYXRpb24uaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCiskKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA5ZWUyYTMzMWM3ZmI2Njg4ZDI3ODg3YzI1NjdmYjNj
N2Q1NTVjMDBjLi4xMWVkZmNhNjk3OWM2ZTlmMzgxZWIxOWQ4YWE0ZTliYTQ2NjkzNWUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTEwNDgsNiArMTA0OCw3IEBAIEpTX0JJTkRJ
TkdfSURMUyA6PSBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5pZGwg
XAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgXAorICAgICQoV2Vi
Q29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9Q
ZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBlYWIyN2U0
YWQ1YjFjYWY1N2ExODE1NjNiYTA1N2VhOTU5ZWRjNDA4Li4yZjY2MDVjMTAwYWZiYmQzZDk5YmI5
MmEwMzRlYzY4MDQzYWY3MDlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTczNSw2ICsxNzM1LDcgQEAg
cGFnZS9QZXJmb3JtYW5jZU1hcmsuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAKIHBh
Z2UvUGVyZm9ybWFuY2VNb25pdG9yLmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uY3Bw
CitwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VP
YnNlcnZlci5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBhZ2Uv
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMzNTgsNiArMzM1OSw3IEBAIEpTUGVy
Zm9ybWFuY2VNYXJrT3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQZXJm
b3JtYW5jZU1lYXN1cmVPcHRpb25zLmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwCitK
U1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5j
cHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9ic2Vy
dmVyRW50cnlMaXN0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IGYwMmRmZWRjYzQyNzk1OGNhNmE1ZjgxNjYxYTNlZGZlMjk5
MTZmZDIuLjczMDcyMzIwNDA5MzYzY2Q0NGQ1MDlmNGU2MzY1NDE3OTk2YmQ0YjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2
MDUyLDYgKzE2MDUyLDkgQEAKIAkJREVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyNTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTI1NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTI1NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OwogCQlERUNBN0ZGNTFGOUZFOUJBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ni5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjU2
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMjU2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJ
CURGMTlFMkFBMjQ3NzI5QTYwMDdCREFDQiAvKiBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVC
bG9ja2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRSZWxheFRo
aXJkUGFydHlDb29raWVCbG9ja2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlE
RjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA2MjVBOTg0QzgwMDVEREI4QyAvKiBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGMzY1RDA3
MjVBOTg0QzkwMDVEREI4QyAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCURGNEUzOERDMjUyNzk1OTMwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmVyc2lvbkNoZWNrcy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY0RTM4REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZl
cnNpb25DaGVja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVyc2lvbkNo
ZWNrcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlERjdFOUEyOTRDN0FBQ0UwQUQ4
OUIzREQgLyogTWF0aE1MT3BlcmF0b3JEaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjI0NjMsNiArMjI0NjYsOSBAQAogCQkJCThBRjRFNTUyMTFEQzVBMzYw
MDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAogCQkJCThBRjRFNTUzMTFE
QzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKIAkJCQk4QUY0RTU1
NDExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCAqLywKKwkJCQlE
RjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNw
cCAqLywKKwkJCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmggKi8sCisJCQkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhDIC8qIFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZy5pZGwgKi8sCiAJCQkJQTVBOTkzMzUxRTM3RkFGRDAwNUI1RTRE
IC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwICovLAogCQkJCUE1QTk5MzM2MUUzN0ZBRkQwMDVC
NUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmggKi8sCiAJCQkJQTVBOTkzMzcxRTM3RkFGRDAw
NUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsICovLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKaW5kZXgg
YmJmODExMTQyZGFiOWU2YTkyY2I1YzZjZmFiMDZiMjQ1OGJhNzE0MC4uZGZjZDhjMWViOTY0NDkx
MzE0NDdlMmYyN2M5ZDZiZWM1YWM2NzlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBAIC0zNSwxMCArMzUs
MTIgQEAKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNl
TWFyay5oIgogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjaW5jbHVkZSAiSlNQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUGFp
bnRUaW1pbmcuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUu
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZVBhaW50VGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oIgogCkBAIC00OCwxOCArNTAsMjAgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogSlNW
YWx1ZSB0b0pTTmV3bHlDcmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgUmVmPFBlcmZvcm1hbmNlRW50cnk+JiYgZW50cnkpCiB7Ci0gICAgaWYg
KGlzPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGVudHJ5KSkKLSAgICAgICAgcmV0dXJuIGNyZWF0
ZVdyYXBwZXI8UGVyZm9ybWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVu
dHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZW50cnkpKQot
ICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihn
bG9iYWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1h
cms+KGVudHJ5KSkKKyAgICBzd2l0Y2ggKGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpKSB7
CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9uOgorICAgICAgICBy
ZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+KGdsb2JhbE9i
amVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6
TWFyazoKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VNYXJrPihnbG9i
YWxPYmplY3QsIFdURk1vdmUoZW50cnkpKTsKLQotICAgIGlmIChpczxQZXJmb3JtYW5jZU1lYXN1
cmU+KGVudHJ5KSkKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1lYXN1cmU6CiAg
ICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWVhc3VyZT4oZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpS
ZXNvdXJjZToKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAgY2FzZSBQZXJmb3Jt
YW5jZUVudHJ5OjpUeXBlOjpQYWludDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVy
Zm9ybWFuY2VQYWludFRpbWluZz4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CisgICAg
fQogCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8
UGVyZm9ybWFuY2VFbnRyeT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAppbmRl
eCBiZWUxZTZiZGE4YzkxYTNjYTgyMjJkZDkwMjY5Mjc2ZTQ1ZjRmMTcyLi5mODEzYmRlY2E0OWNm
ZGRhZWEyOTRkYjYzNzA2YWYzODQxODdjNGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCkBAIC0xOTIsNiArMTkyLDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIG1hY3JvKFBheW1lbnRSZXF1ZXN0KSBcCiAgICAgbWFjcm8oUGF5
bWVudFJlcXVlc3RVcGRhdGVFdmVudCkgXAogICAgIG1hY3JvKFBheW1lbnRSZXNwb25zZSkgXAor
ICAgIG1hY3JvKFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZykgXAogICAgIG1hY3JvKFBpY3R1
cmVJblBpY3R1cmVXaW5kb3cpIFwKICAgICBtYWNybyhTUUxFcnJvcikgXAogICAgIG1hY3JvKFNR
TFJlc3VsdFNldCkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggOTg1ZDE0OGZhYmI1YWE1
YTQ1MjRjODRiZWNlNGM2ZDM2N2Y0NTNmNC4uMWM4MDMzYzhhNzQ4MTlmN2JmYWQyYzZhMjU5NmM5
MTA0NzNjN2FkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0xMzg2LDEzICsxMzg2LDEz
IEBAIHZvaWQgRG9jdW1lbnQ6OnNldFJlYWR5U3RhdGUoUmVhZHlTdGF0ZSByZWFkeVN0YXRlKQog
ICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tTG9hZGluZykKICAgICAgICAgICAgIG1f
ZG9jdW1lbnRUaW1pbmcuZG9tTG9hZGluZyA9IE1vbm90b25pY1RpbWU6Om5vdygpOwogICAgICAg
ICBicmVhazsKLSAgICBjYXNlIEludGVyYWN0aXZlOgotICAgICAgICBpZiAoIW1fZG9jdW1lbnRU
aW1pbmcuZG9tSW50ZXJhY3RpdmUpCi0gICAgICAgICAgICBtX2RvY3VtZW50VGltaW5nLmRvbUlu
dGVyYWN0aXZlID0gTW9ub3RvbmljVGltZTo6bm93KCk7Ci0gICAgICAgIGJyZWFrOwogICAgIGNh
c2UgQ29tcGxldGU6CiAgICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSkK
ICAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUgPSBNb25vdG9uaWNUaW1l
Ojpub3coKTsKKyAgICAgICAgRkFMTFRIUk9VR0g7CisgICAgY2FzZSBJbnRlcmFjdGl2ZToKKyAg
ICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlKQorICAgICAgICAgICAg
bV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwog
ICAgICAgICBicmVhazsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2Fk
ZXIuY3BwCmluZGV4IGUzMjVmMmQwOTE0MzJlMDM2YzdhYjVhOTE1MTJkMDA5OTFiYWRjOGUuLjRj
NjdiNjM4MjNmZjZhNDk3YTYxMmQ2ZDYzYWU0NWE2ZDhkYjBhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcApAQCAtNzIsNiArNzIsNyBAQAogI2luY2x1ZGUgIk5l
dHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIgog
I2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIlBp
bmdMb2FkZXIuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJQ
b2xpY3lDaGVja2VyLmgiCkBAIC00MTEsNyArNDEyLDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6
aXNMb2FkaW5nKCkgY29uc3QKICAgICByZXR1cm4gaXNMb2FkaW5nTWFpblJlc291cmNlKCkgfHwg
IW1fc3VicmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSB8fCAhbV9wbHVnSW5TdHJlYW1Mb2FkZXJz
LmlzRW1wdHkoKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2Fj
aGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKQordm9pZCBE
b2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCkBAIC00MTksNiArNDIwLDEz
IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiBy
ZXNvdXJjZSwgY29uc3QgTmV0d29ya0xvYWRNCiAgICAgICAgIHJldHVybjsKICNlbmRpZgogCisg
ICAgaWYgKGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVmUHRyKHRoaXMtPmRvY3VtZW50KCkpKSB7Cisg
ICAgICAgIGlmIChhdXRvIGRvbVdpbmRvdyA9IG1ha2VSZWZQdHIoZG9jdW1lbnQtPmRvbVdpbmRv
dygpKSkgeworICAgICAgICAgICAgaWYgKGRvY3VtZW50LT5zZXR0aW5ncygpLnBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQoKSkKKyAgICAgICAgICAgICAgICBkb21XaW5kb3ct
PnBlcmZvcm1hbmNlKCkuYWRkTmF2aWdhdGlvblRpbWluZygqdGhpcywgKmRvY3VtZW50LCByZXNv
dXJjZSwgdGltaW5nKCksIG1ldHJpY3MpOworICAgICAgICB9CisgICAgfQorCiAgICAgQVNTRVJU
X1VOVVNFRChyZXNvdXJjZSwgbV9tYWluUmVzb3VyY2UgPT0gJnJlc291cmNlKTsKICAgICBBU1NF
UlQobV9tYWluUmVzb3VyY2UpOwogICAgIGlmICghbV9tYWluUmVzb3VyY2UtPmVycm9yT2NjdXJy
ZWQoKSAmJiAhbV9tYWluUmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDA3NWZiMWZhZWRmZWYzNDIwOGE4MWFiYzNi
ZjEyOTE0MzI3NGEyNDMuLjI0NjczMDI3YjcwNjM1YjEyOWQwMWI5ZTQyZTU5YmM0MWU5MzYyNmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNzMzLDEwICs3
MzMsOSBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFu
ZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiBidWZmZQogICAgIGRpZFJlY2VpdmVCdWZmZXIoV1RG
TW92ZShidWZmZXIpLCBlbmNvZGVkRGF0YUxlbmd0aCwgRGF0YVBheWxvYWRCeXRlcyk7CiB9CiAK
LXZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqKQor
dm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNv
bnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKIHsKLSAgICBOZXR3b3JrTG9hZE1ldHJp
Y3MgZW1wdHlNZXRyaWNzOwotICAgIGRpZEZpbmlzaExvYWRpbmcoZW1wdHlNZXRyaWNzKTsKKyAg
ICBkaWRGaW5pc2hMb2FkaW5nKG1ldHJpY3MpOwogfQogCiB2b2lkIFJlc291cmNlTG9hZGVyOjpk
aWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCmluZGV4IGIyZjZhNWVjYjNiZWEwNGU5YmZh
OGQxZWU3NjYyYzMyYzFkZjNkMTUuLmE0Mzc2ZDUwMTFiZjgyODZmYjQ3ZmMzMzg0ZjI5YjVjM2Rj
MzI2NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCkBAIC0yMDAsNyAr
MjAwLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdEFzeW5jKFJlc291cmNl
SGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFJlc291cmNlUmVzcG9uc2UmJiwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChSZXNvdXJjZVJlcXVlc3QmJik+JiYpIG92ZXJyaWRlOwogICAgIHZvaWQg
ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQsIGlu
dCBlbmNvZGVkRGF0YUxlbmd0aCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlQnVmZmVy
KFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVuY29kZWREYXRhTGVu
Z3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUq
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoUmVz
b3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAgICAgdm9pZCB3
YXNCbG9ja2VkKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CiAgICAgdm9pZCBjYW5ub3RTaG93
VVJMKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlVGltaW5nLmNwcAppbmRleCAxNjgyMzRmNDdiY2JlMDc5NTA2MDU0MGE5YTFhYWU2ZWRiNDUx
NmE3Li43ZTIzNDEwOGI2YTYyNzZjMmQ2ZmMxMDM2ZTA2NDY1M2MyZTg0ZDNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAKQEAgLTYyLDkgKzYyLDkgQEAgUmVzb3Vy
Y2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21DYWNoZShjb25zdCBVUkwmIHVybCwgY29uc3Qg
U3RyaW5nJiBpbml0aWF0b3IKICAgICByZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0
b3IsIGxvYWRUaW1pbmcsIHJlc3BvbnNlLCBzZWN1cml0eU9yaWdpbik7CiB9CiAKLVJlc291cmNl
VGltaW5nIFJlc291cmNlVGltaW5nOjpmcm9tTG9hZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2Us
IGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQorUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6
OmZyb21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgY29uc3QgU2VjdXJpdHlPcmln
aW4mIHNlY3VyaXR5T3JpZ2luKQogewotICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyhyZXNvdXJj
ZS5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKSwgaW5pdGlhdG9yLCBsb2FkVGltaW5nLCBuZXR3b3Jr
TG9hZE1ldHJpY3MsIHJlc291cmNlLnJlc3BvbnNlKCksIHNlY3VyaXR5T3JpZ2luKTsKKyAgICBy
ZXR1cm4gUmVzb3VyY2VUaW1pbmcodXJsLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5ldHdvcmtM
b2FkTWV0cmljcywgcmVzb3VyY2UucmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOwogfQogCiBS
ZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbVN5bmNocm9ub3VzTG9hZChjb25zdCBV
UkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRU
aW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgU2VjdXJpdHlPcmlnaW4mIHNlY3Vy
aXR5T3JpZ2luKQpAQCAtOTcsMTAgKzk3LDEwIEBAIHZvaWQgUmVzb3VyY2VUaW1pbmc6OmluaXRT
ZXJ2ZXJUaW1pbmcoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgICAgIG1f
c2VydmVyVGltaW5nID0gU2VydmVyVGltaW5nUGFyc2VyOjpwYXJzZVNlcnZlclRpbWluZyhyZXNw
b25zZS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlNlcnZlclRpbWluZykpOwogfQog
Ci1WZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gUmVzb3VyY2VUaW1pbmc6OnBv
cHVsYXRlU2VydmVyVGltaW5nKCkKK1ZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+
PiBSZXNvdXJjZVRpbWluZzo6cG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSBjb25zdAogewogICAgIHJl
dHVybiBXVEY6Om1hcChtX3NlcnZlclRpbWluZywgW10gKGF1dG8mIGVudHJ5KSB7Ci0gICAgICAg
IHJldHVybiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzo6Y3JlYXRlKFdURk1vdmUoZW50cnkubmFt
ZSksIGVudHJ5LmR1cmF0aW9uLCBXVEZNb3ZlKGVudHJ5LmRlc2NyaXB0aW9uKSk7CisgICAgICAg
IHJldHVybiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZzo6Y3JlYXRlKFN0cmluZyhlbnRyeS5uYW1l
KSwgZW50cnkuZHVyYXRpb24sIFN0cmluZyhlbnRyeS5kZXNjcmlwdGlvbikpOwogICAgIH0pOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5oCmluZGV4IDY0Zjg3Y2IzYmZk
YjUxNWQ2YzRlMzgzOTRmYmM0ZTNhZDUzZTMwYjcuLjY0ZDFlY2Y4ZTc4M2JjNmE0ZDhmZjdlOWRh
ZGFlYmYwNjJkZDRmYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5oCkBA
IC00MSwxNSArNDEsMTUgQEAgY2xhc3MgUmVzb3VyY2VUaW1pbmcgewogICAgIFdURl9NQUtFX0ZB
U1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIHN0YXRpYyBSZXNvdXJjZVRpbWluZyBmcm9tQ2Fj
aGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcm
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mKTsKLSAgICBz
dGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUxvYWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBTdHJp
bmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmlj
cyYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CisgICAgc3RhdGljIFJlc291cmNlVGltaW5nIGZy
b21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0
b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBjb25zdCBT
ZWN1cml0eU9yaWdpbiYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVRpbWluZyBmcm9tU3luY2hyb25v
dXNMb2FkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yLCBjb25zdCBMb2FkVGlt
aW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CiAKLSAgICBVUkwgdXJsKCkgY29uc3QgeyByZXR1cm4g
bV91cmw7IH0KLSAgICBTdHJpbmcgaW5pdGlhdG9yKCkgY29uc3QgeyByZXR1cm4gbV9pbml0aWF0
b3I7IH0KLSAgICBMb2FkVGltaW5nIGxvYWRUaW1pbmcoKSBjb25zdCB7IHJldHVybiBtX2xvYWRU
aW1pbmc7IH0KLSAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya0xvYWRNZXRyaWNzKCkgY29u
c3QgeyByZXR1cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3M7IH0KKyAgICBjb25zdCBVUkwmIHVybCgp
IGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CisgICAgY29uc3QgU3RyaW5nJiBpbml0aWF0b3IoKSBj
b25zdCB7IHJldHVybiBtX2luaXRpYXRvcjsgfQorICAgIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRU
aW1pbmcoKSBjb25zdCB7IHJldHVybiBtX2xvYWRUaW1pbmc7IH0KKyAgICBjb25zdCBOZXR3b3Jr
TG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0IHsgcmV0dXJuIG1fbmV0d29y
a0xvYWRNZXRyaWNzOyB9CiAgICAgYm9vbCBhbGxvd1RpbWluZ0RldGFpbHMoKSBjb25zdCB7IHJl
dHVybiBtX2FsbG93VGltaW5nRGV0YWlsczsgfQotICAgIFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VT
ZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWluZygpOworICAgIFZlY3RvcjxSZWY8UGVy
Zm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWluZygpIGNvbnN0OwogICAg
IFJlc291cmNlVGltaW5nIGlzb2xhdGVkQ29weSgpIGNvbnN0OwogCiAgICAgdm9pZCBvdmVycmlk
ZUluaXRpYXRvck5hbWUoY29uc3QgU3RyaW5nJiBuYW1lKSB7IG1faW5pdGlhdG9yID0gbmFtZTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMDZh
NTk1OWJjZDExZjA2NGMwYTczZTA3NGIwYmRmY2NmMzc1YTA1Mi4uNjBkZDg1YmVkNTU3MGRiNDlm
ODYzOWRjNTBjYWM5ODc0NmNmN2ZiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1N1YnJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVz
b3VyY2VMb2FkZXIuY3BwCkBAIC05MDQsNyArOTA0LDcgQEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRl
cjo6cmVwb3J0UmVzb3VyY2VUaW1pbmcoY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3Jr
TG8KICAgICAgICAgcmV0dXJuOwogCiAgICAgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbiA9IG1fb3Jp
Z2luID8gKm1fb3JpZ2luIDogZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgYXV0byBy
ZXNvdXJjZVRpbWluZyA9IFJlc291cmNlVGltaW5nOjpmcm9tTG9hZCgqbV9yZXNvdXJjZSwgbV9y
ZXNvdXJjZS0+aW5pdGlhdG9yTmFtZSgpLCBtX2xvYWRUaW1pbmcsIG5ldHdvcmtMb2FkTWV0cmlj
cywgb3JpZ2luKTsKKyAgICBhdXRvIHJlc291cmNlVGltaW5nID0gUmVzb3VyY2VUaW1pbmc6OmZy
b21Mb2FkKCptX3Jlc291cmNlLCBtX3Jlc291cmNlLT5yZXNvdXJjZVJlcXVlc3QoKS51cmwoKSwg
bV9yZXNvdXJjZS0+aW5pdGlhdG9yTmFtZSgpLCBtX2xvYWRUaW1pbmcsIG5ldHdvcmtMb2FkTWV0
cmljcywgb3JpZ2luKTsKIAogICAgIC8vIFdvcmtlciByZXNvdXJjZXMgbG9hZGVkIGhlcmUgYXJl
IGFsbCBDYWNoZWRSYXdSZXNvdXJjZXMgbG9hZGVkIHRocm91Z2ggV29ya2VyVGhyZWFkYWJsZUxv
YWRlci4KICAgICAvLyBQYXNzIHRoZSBSZXNvdXJjZVRpbWluZyBpbmZvcm1hdGlvbiBvbiBzbyB0
aGF0IFdvcmtlclRocmVhZGFibGVMb2FkZXIgbWF5IGFkZCB0aGVtIHRvIHRoZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmNwcAppbmRleCA3NjY5MDg1ZTVkOGY4MjJkZDNiMTcyNmYwZGFjNGU2
ZGYyNmMxZjExLi41MGQ1ZGExODNiYTM0YTQyMGE0MWU5Mjc1ZWEyNDViYTE5ZTg0MTBmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcApAQCAtNDMsMTIgKzQzLDE0IEBACiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWVhc3Vy
ZU9wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCIKKyNpbmNsdWRl
ICJQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU9i
c2VydmVyLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1ZGUg
IlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVRpbWlu
Zy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlVXNlclRpbWluZy5oIgogI2luY2x1ZGUgIlJlc291
cmNlUmVzcG9uc2UuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJ
bmxpbmVzLmg+CiAKQEAgLTEyMiw2ICsxMjQsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNl
RW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllcygpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25U
aW1pbmcpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisKICAg
ICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIAogICAgIGlm
IChtX3VzZXJUaW1pbmcpIHsKQEAgLTE0MCw2ICsxNDUsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZv
cm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcm
IGVudAogewogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAK
KyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIp
CisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisgICAgCiAgICAg
aWYgKGVudHJ5VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFwcGVuZFZlY3Rv
cihtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMTYxLDYgKzE2OSw5IEBAIFZlY3RvcjxS
ZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNv
bnN0IFN0cmluZyYgbmFtCiB7CiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4g
ZW50cmllczsKIAorICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgKGVudHJ5VHlwZS5pc051
bGwoKSB8fCBlbnRyeVR5cGUgPT0gIm5hdmlnYXRpb24iKSAmJiBuYW1lID09IG1fbmF2aWdhdGlv
blRpbWluZy0+bmFtZSgpKQorICAgICAgICBlbnRyaWVzLmFwcGVuZChtX25hdmlnYXRpb25UaW1p
bmcpOworCiAgICAgaWYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlbnRyeVR5cGUgPT0gInJlc291
cmNlIikgewogICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1
ZmZlcikgewogICAgICAgICAgICAgaWYgKHJlc291cmNlLT5uYW1lKCkgPT0gbmFtZSkKQEAgLTE4
NCw2ICsxOTUsOSBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5j
ZTo6Z2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbQogCiB2b2lkIFBlcmZvcm1hbmNl
OjphcHBlbmRCdWZmZXJlZEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUsIFZl
Y3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+JiBlbnRyaWVzKSBjb25zdAogeworICAgIGlm
IChtX25hdmlnYXRpb25UaW1pbmcgJiYgZW50cnlUeXBlID09ICJuYXZpZ2F0aW9uIikKKyAgICAg
ICAgZW50cmllcy5hcHBlbmQobV9uYXZpZ2F0aW9uVGltaW5nKTsKKwogICAgIGlmIChlbnRyeVR5
cGUgPT0gInJlc291cmNlIikKICAgICAgICAgZW50cmllcy5hcHBlbmRWZWN0b3IobV9yZXNvdXJj
ZVRpbWluZ0J1ZmZlcik7CiAKQEAgLTIxNCw2ICsyMjgsMTMgQEAgdm9pZCBQZXJmb3JtYW5jZTo6
cmVwb3J0Rmlyc3RDb250ZW50ZnVsUGFpbnQoKQogICAgIHF1ZXVlRW50cnkoKm1fZmlyc3RDb250
ZW50ZnVsUGFpbnQpOwogfQogCit2b2lkIFBlcmZvcm1hbmNlOjphZGROYXZpZ2F0aW9uVGltaW5n
KERvY3VtZW50TG9hZGVyJiBkb2N1bWVudExvYWRlciwgRG9jdW1lbnQmIGRvY3VtZW50LCBDYWNo
ZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IExvYWRUaW1pbmcmIHRpbWluZywgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQoreworICAgIEFTU0VSVChkb2N1bWVudC5zZXR0aW5n
cygpLnBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQoKSk7CisgICAgbV9uYXZp
Z2F0aW9uVGltaW5nID0gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpjcmVhdGUobV90aW1l
T3JpZ2luLCByZXNvdXJjZSwgdGltaW5nLCBtZXRyaWNzLCBkb2N1bWVudC50aW1pbmcoKSwgZG9j
dW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnRMb2FkZXIudHJpZ2dlcmluZ0FjdGlvbigp
LnR5cGUoKSk7CisgICAgcXVldWVFbnRyeSgqbV9uYXZpZ2F0aW9uVGltaW5nKTsKK30KKwogdm9p
ZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VUaW1pbmcoUmVzb3VyY2VUaW1pbmcmJiByZXNvdXJj
ZVRpbWluZykKIHsKICAgICBBU1NFUlQoc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKQEAgLTM0
Niw2ICszNjcsMTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cmVtb3ZlQWxsT2JzZXJ2ZXJzKCkKIHZv
aWQgUGVyZm9ybWFuY2U6OnJlZ2lzdGVyUGVyZm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5jZU9i
c2VydmVyJiBvYnNlcnZlcikKIHsKICAgICBtX29ic2VydmVycy5hZGQoJm9ic2VydmVyKTsKKwor
ICAgIGlmIChtX25hdmlnYXRpb25UaW1pbmcgJiYgb2JzZXJ2ZXIudHlwZUZpbHRlcigpLmNvbnRh
aW5zKFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok5hdmlnYXRpb24pKSB7CisgICAgICAgIG9ic2Vy
dmVyLnF1ZXVlRW50cnkoKm1fbmF2aWdhdGlvblRpbWluZyk7CisgICAgICAgIHNjaGVkdWxlVGFz
a0lmTmVlZGVkKCk7CisgICAgfQogfQogCiB2b2lkIFBlcmZvcm1hbmNlOjp1bnJlZ2lzdGVyUGVy
Zm9ybWFuY2VPYnNlcnZlcihQZXJmb3JtYW5jZU9ic2VydmVyJiBvYnNlcnZlcikKQEAgLTM1Nyw3
ICszODMsNyBAQCB2b2lkIFBlcmZvcm1hbmNlOjpxdWV1ZUVudHJ5KFBlcmZvcm1hbmNlRW50cnkm
IGVudHJ5KQogewogICAgIGJvb2wgc2hvdWxkU2NoZWR1bGVUYXNrID0gZmFsc2U7CiAgICAgZm9y
IChhdXRvJiBvYnNlcnZlciA6IG1fb2JzZXJ2ZXJzKSB7Ci0gICAgICAgIGlmIChvYnNlcnZlci0+
dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnR5cGUoKSkpIHsKKyAgICAgICAgaWYgKG9ic2Vy
dmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkucGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkp
IHsKICAgICAgICAgICAgIG9ic2VydmVyLT5xdWV1ZUVudHJ5KGVudHJ5KTsKICAgICAgICAgICAg
IHNob3VsZFNjaGVkdWxlVGFzayA9IHRydWU7CiAgICAgICAgIH0KQEAgLTM2Niw2ICszOTIsMTEg
QEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkK
ICAgICBpZiAoIXNob3VsZFNjaGVkdWxlVGFzaykKICAgICAgICAgcmV0dXJuOwogCisgICAgc2No
ZWR1bGVUYXNrSWZOZWVkZWQoKTsKK30KKwordm9pZCBQZXJmb3JtYW5jZTo6c2NoZWR1bGVUYXNr
SWZOZWVkZWQoKQorewogICAgIGlmIChtX2hhc1NjaGVkdWxlZFRpbWluZ0J1ZmZlckRlbGl2ZXJ5
VGFzaykKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKaW5kZXgg
OTlmMjU0YjNjOTUwOTZhNWNmZDM0YzJlOTBmOWRjZGMzODc0NjRjOC4uNWU0Njg2NGJmZDA3NzEx
NDM0OThmZWNhNGU1NTA5NTU2MzM4NjM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaApA
QCAtNDgsMTIgKzQ4LDE3IEBAIGNsYXNzIEpTR2xvYmFsT2JqZWN0OwogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291cmNlOworY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBE
b2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRUaW1pbmc7CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJp
Y3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZUVudHJ5
OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwogY2xhc3MgUGVyZm9ybWFuY2VNZWFzdXJlOwogY2xh
c3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNlcnZlcjsKIGNsYXNzIFBlcmZvcm1hbmNlUGFpbnRU
aW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRpbWluZzsKQEAgLTkwLDYgKzk1LDcgQEAgcHVibGlj
OgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJmb3JtYW5jZU1lYXN1cmU+PiBtZWFzdXJlKEpTQzo6
SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lLCBPcHRpb25hbDxTdGFy
dE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0IFN0cmluZyYgZW5kTWFyayk7CiAgICAgdm9pZCBj
bGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYgbWVhc3VyZU5hbWUpOwogCisgICAgdm9pZCBhZGRO
YXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiwgRG9jdW1lbnQmLCBDYWNoZWRSZXNvdXJj
ZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAgICB2
b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGltaW5nJiYpOwogCiAgICAgdm9pZCByZXBv
cnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpAQCAtMTIxLDYgKzEyNyw3IEBAIHByaXZhdGU6CiAg
ICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGxUaW1lckZpcmVkKCk7CiAKICAgICB2b2lk
IHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYpOworICAgIHZvaWQgc2NoZWR1bGVUYXNrSWZO
ZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9u
YXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3RpbWlu
ZzsKQEAgLTEzOSw2ICsxNDYsNyBAQCBwcml2YXRlOgogCiAgICAgTW9ub3RvbmljVGltZSBtX3Rp
bWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPiBtX25h
dmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+IG1fZmly
c3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlcmZvcm1hbmNlVXNlclRp
bWluZz4gbV91c2VyVGltaW5nOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5o
CmluZGV4IGFmYWNmYjA5MGIyMWNiYTYxNGQ3OGNlODhhYzc1M2UyNjczZTEyNjUuLjNkZjVlNGVm
YmFmMzI2YzU3MWY1ZTZlNjVlMzU2YzJkNDMyZmYwZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5oCkBAIC00NCwxMCArNDQsMTAgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
flBlcmZvcm1hbmNlRW50cnkoKTsKIAogICAgIGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0IHsg
cmV0dXJuIG1fbmFtZTsgfQotICAgIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVybiBt
X3N0YXJ0VGltZTsgfQotICAgIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fZHVy
YXRpb247IH0KKyAgICB2aXJ0dWFsIGRvdWJsZSBzdGFydFRpbWUoKSBjb25zdCB7IHJldHVybiBt
X3N0YXJ0VGltZTsgfQorICAgIHZpcnR1YWwgZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgeyByZXR1
cm4gbV9kdXJhdGlvbjsgfQogCi0gICAgZW51bSBjbGFzcyBUeXBlIHsKKyAgICBlbnVtIGNsYXNz
IFR5cGUgOiB1aW50OF90IHsKICAgICAgICAgTmF2aWdhdGlvbiAgPSAxIDw8IDAsCiAgICAgICAg
IE1hcmsgICAgICAgID0gMSA8PCAxLAogICAgICAgICBNZWFzdXJlICAgICA9IDEgPDwgMiwKQEAg
LTU1LDE2ICs1NSwxMSBAQCBwdWJsaWM6CiAgICAgICAgIFBhaW50ICAgICAgID0gMSA8PCA0CiAg
ICAgfTsKIAotICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwg
VHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIEFTQ0lJ
TGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCA9IDA7CiAKICAgICBzdGF0aWMgT3B0aW9uYWw8VHlw
ZT4gcGFyc2VFbnRyeVR5cGVTdHJpbmcoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0gICAg
Ym9vbCBpc1Jlc291cmNlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6OlJlc291cmNl
OyB9Ci0gICAgYm9vbCBpc01hcmsoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gVHlwZTo6TWFy
azsgfQotICAgIGJvb2wgaXNNZWFzdXJlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFR5cGU6
Ok1lYXN1cmU7IH0KLSAgICBib29sIGlzUGFpbnQoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0g
VHlwZTo6UGFpbnQ7IH0KLQogICAgIHN0YXRpYyBib29sIHN0YXJ0VGltZUNvbXBhcmVMZXNzVGhh
bihjb25zdCBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4mIGEsIGNvbnN0IFJlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5PiYgYikKICAgICB7CiAgICAgICAgIHJldHVybiBhLT5zdGFydFRpbWUoKSA8IGIt
PnN0YXJ0VGltZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU1hcmsuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNYXJrLmgKaW5kZXggYzcz
YjIzMTJmMzJhMDRjODIxYzhkMGVjYTg3N2VhYmIzM2ZlNGUyZi4uYjc1MTRmMDE1MzU4MDlkYWI1
M2NjYWMwNjRjNTJiMGYxOGViNmM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZU1hcmsuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWFy
ay5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToKICAgICBQZXJmb3JtYW5jZU1hcmsoY29u
c3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRUaW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiYmKTsKICAgICB+UGVyZm9ybWFuY2VNYXJrKCk7CiAKLSAgICBUeXBlIHR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBUeXBlOjpNYXJrOyB9CisgICAgVHlwZSBwZXJmb3JtYW5jZUVudHJ5
VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1hcms7IH0KICAgICBBU0NJSUxpdGVy
YWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm1hcmsiX3M7IH0KIAogICAgIFJl
ZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1fc2VyaWFsaXplZERldGFpbDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpQZXJmb3JtYW5jZU1hcmspCi0gICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6
OlBlcmZvcm1hbmNlRW50cnkmIGVudHJ5KSB7IHJldHVybiBlbnRyeS5pc01hcmsoKTsgfQotU1BF
Q0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU1lYXN1cmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VN
ZWFzdXJlLmgKaW5kZXggMzVkYjZhMTY2YjU3ZWU4NmU2MzA4MzJkZjQyNjg1NWQ5N2E3ZmJmNS4u
MmQyYWEzZWUxMjk1MjEyZTE2ZWRlNmUzZGRjODBmYzY0ZGUyNmY2OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oCkBAIC00OCwxNCArNDgsMTAgQEAgcHJpdmF0ZToK
ICAgICBQZXJmb3JtYW5jZU1lYXN1cmUoY29uc3QgU3RyaW5nJiBuYW1lLCBkb3VibGUgc3RhcnRU
aW1lLCBkb3VibGUgZW5kVGltZSwgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiBkZXRhaWwp
OwogICAgIH5QZXJmb3JtYW5jZU1lYXN1cmUoKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIFR5cGU6Ok1lYXN1cmU7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlU
eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlwZTo6TWVhc3VyZTsgfQogICAgIEFTQ0lJTGl0
ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAibWVhc3VyZSJfczsgfQogCiAg
ICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gbV9zZXJpYWxpemVkRGV0YWlsOwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdl
YkNvcmU6OlBlcmZvcm1hbmNlTWVhc3VyZSkKLSAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3Qg
V2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0dXJuIGVudHJ5LmlzTWVhc3Vy
ZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTgx
YjM1YmU2YzQ1YWRjZjg1YzY5M2ExOWMzYWEyZDgwMDg5MzM4NgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcApAQCAt
MCwwICsxLDE0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5o
IgorCisjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVRpbWlu
Zy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlIHRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2
aWdhdGlvblR5cGUoTmF2aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCit7CisgICAgc3dpdGNo
IChuYXZpZ2F0aW9uVHlwZSkgeworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkJhY2tGb3J3YXJk
OgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9u
VHlwZTo6QmFja19mb3J3YXJkOworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OlJlbG9hZDoKKyAg
ICAgICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6
OlJlbG9hZDsKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpMaW5rQ2xpY2tlZDoKKyAgICBjYXNl
IE5hdmlnYXRpb25UeXBlOjpGb3JtU3VibWl0dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6
OkZvcm1SZXN1Ym1pdHRlZDoKKyAgICBjYXNlIE5hdmlnYXRpb25UeXBlOjpPdGhlcjoKKyAgICAg
ICAgcmV0dXJuIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGU6Ok5h
dmlnYXRlOworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZTo6TmF2aWdhdGU7Cit9CisK
K1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
KE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25z
dCBMb2FkVGltaW5nJiBsb2FkVGltaW5nLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJp
Y3MsIGNvbnN0IERvY3VtZW50VGltaW5nJiBkb2N1bWVudFRpbWluZywgY29uc3QgU2VjdXJpdHlP
cmlnaW4mIG9yaWdpbiwgV2ViQ29yZTo6TmF2aWdhdGlvblR5cGUgbmF2aWdhdGlvblR5cGUpCisg
ICAgOiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5n
Ojpmcm9tTG9hZChyZXNvdXJjZSwgcmVzb3VyY2UucmVzcG9uc2UoKS51cmwoKSwgIm5hdmlnYXRp
b24iX3MsIGxvYWRUaW1pbmcsIG1ldHJpY3MsIG9yaWdpbikpCisgICAgLCBtX2RvY3VtZW50VGlt
aW5nKGRvY3VtZW50VGltaW5nKQorICAgICwgbV9uYXZpZ2F0aW9uVHlwZSh0b1BlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZ05hdmlnYXRpb25UeXBlKG5hdmlnYXRpb25UeXBlKSkgeyB9CisKK1Bl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6flBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZygp
ID0gZGVmYXVsdDsKKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bWlsbGlz
ZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSB0aW1lLCBPcHRpb25hbDxNb25vdG9uaWNU
aW1lPiB0aW1lT3JpZ2luKSBjb25zdAoreworICAgIGlmICghdGltZSkKKyAgICAgICAgcmV0dXJu
IDA7CisgICAgcmV0dXJuIFBlcmZvcm1hbmNlOjpyZWR1Y2VUaW1lUmVzb2x1dGlvbih0aW1lIC0g
KHRpbWVPcmlnaW4gPyAqdGltZU9yaWdpbiA6IG1fdGltZU9yaWdpbikpLm1pbGxpc2Vjb25kcygp
OworfQorCitib29sIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6c2FtZU9yaWdpbkNoZWNr
RmFpbHMoKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9u
LXRpbWluZy0yLyNkZm4tc2FtZS1vcmlnaW4tY2hlY2sKKyAgICByZXR1cm4gIW1fcmVzb3VyY2VU
aW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkKKyAgICAgICAgfHwgbV9yZXNvdXJjZVRpbWluZy5s
b2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5SZWRpcmVjdCgpCisgICAgICAgIHx8ICFtX3Jlc291
cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNTYW1lT3JpZ2luQXNQcmV2aW91c0RvY3VtZW50KCk7
Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50U3Rh
cnQoKSBjb25zdAoreworICAgIGlmIChzYW1lT3JpZ2luQ2hlY2tGYWlscygpKQorICAgICAgICBy
ZXR1cm4gMC4wOworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291cmNl
VGltaW5nLmxvYWRUaW1pbmcoKS51bmxvYWRFdmVudFN0YXJ0KCkpOworfQorCitkb3VibGUgUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp1bmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAg
aWYgKHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkpCisgICAgICAgIHJldHVybiAwLjA7CisgICAgcmV0
dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygp
LnVubG9hZEV2ZW50RW5kKCkpOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nOjpkb21JbnRlcmFjdGl2ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1Np
bmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpOworfQorCitkb3VibGUg
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRU
aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQpOworfQorCitkb3VibGUgUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVkRXZlbnRFbmQoKSBjb25zdAorewor
ICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNv
bnRlbnRMb2FkZWRFdmVudEVuZCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6OmRvbUNvbXBsZXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2lu
Y2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21Db21wbGV0ZSk7Cit9CisKK2RvdWJsZSBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmxvYWRFdmVudFN0YXJ0KCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5n
KCkubG9hZEV2ZW50U3RhcnQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmc6OmxvYWRFdmVudEVuZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1Np
bmNlT3JpZ2luKG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmxvYWRFdmVudEVuZCgpKTsK
K30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9uVHlwZSBQZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmc6OnR5cGUoKSBjb25zdAoreworICAgIHJldHVybiBtX25hdmln
YXRpb25UeXBlOworfQorCit1bnNpZ25lZCBzaG9ydCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1p
bmc6OnJlZGlyZWN0Q291bnQoKSBjb25zdAoreworICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5h
bGxvd1RpbWluZ0RldGFpbHMoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAobV9yZXNv
dXJjZVRpbWluZy5sb2FkVGltaW5nKCkuaGFzQ3Jvc3NPcmlnaW5SZWRpcmVjdCgpKQorICAgICAg
ICByZXR1cm4gMDsKKworICAgIHJldHVybiBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5y
ZWRpcmVjdENvdW50KCk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6
OnN0YXJ0VGltZSgpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmctc3RhcnRUaW1l
CisgICAgcmV0dXJuIDAuMDsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6ZHVyYXRpb24oKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZp
Z2F0aW9uLXRpbWluZy0yLyNkb20tUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLWR1cmF0aW9u
CisgICAgcmV0dXJuIGxvYWRFdmVudEVuZCgpIC0gc3RhcnRUaW1lKCk7Cit9CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczYzBmN2FkZWNjMGM0NjFlNmJjODc4NGI4YjMy
YTVkMWFjY2MxN2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJEb2N1bWVudFRpbWluZy5oIgorI2lu
Y2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3Rv
bmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQ2FjaGVkUmVz
b3VyY2U7CitjbGFzcyBMb2FkVGltaW5nOworY2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOworY2xh
c3MgU2VjdXJpdHlPcmlnaW47CitlbnVtIGNsYXNzIE5hdmlnYXRpb25UeXBlIDogdWludDhfdDsK
KworY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIGZpbmFsIDogcHVibGljIFBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcgeworcHVibGljOgorICAgIGVudW0gY2xhc3MgTmF2aWdhdGlv
blR5cGUgOiB1aW50OF90IHsKKyAgICAgICAgTmF2aWdhdGUsCisgICAgICAgIFJlbG9hZCwKKyAg
ICAgICAgQmFja19mb3J3YXJkLAorICAgICAgICBQcmVyZW5kZXIsCisgICAgfTsKKworICAgIHRl
bXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0YXRpYyBSZWY8UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nPiBjcmVhdGUoQXJncyYmLi4uIGFyZ3MpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLikpOyB9
CisgICAgflBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZygpOworCisgICAgVHlwZSBwZXJmb3Jt
YW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok5hdmlnYXRpb247IH0K
KyAgICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIm5hdmln
YXRpb24iX3M7IH0KKworICAgIGRvdWJsZSB1bmxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAg
ZG91YmxlIHVubG9hZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUludGVyYWN0aXZl
KCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KCkgY29uc3Q7
CisgICAgZG91YmxlIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCgpIGNvbnN0OworICAgIGRvdWJs
ZSBkb21Db21wbGV0ZSgpIGNvbnN0OworICAgIGRvdWJsZSBsb2FkRXZlbnRTdGFydCgpIGNvbnN0
OworICAgIGRvdWJsZSBsb2FkRXZlbnRFbmQoKSBjb25zdDsKKyAgICBOYXZpZ2F0aW9uVHlwZSB0
eXBlKCkgY29uc3Q7CisgICAgdW5zaWduZWQgc2hvcnQgcmVkaXJlY3RDb3VudCgpIGNvbnN0Owor
CisgICAgZG91YmxlIHN0YXJ0VGltZSgpIGNvbnN0IGZpbmFsOworICAgIGRvdWJsZSBkdXJhdGlv
bigpIGNvbnN0IGZpbmFsOworCitwcml2YXRlOgorICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIENhY2hlZFJlc291cmNlJiwgY29uc3QgTG9h
ZFRpbWluZyYsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IERvY3VtZW50VGltaW5n
JiwgY29uc3QgU2VjdXJpdHlPcmlnaW4mLCBXZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSk7CisKKyAg
ICBkb3VibGUgbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4oTW9ub3RvbmljVGltZSwgT3B0aW9uYWw8
TW9ub3RvbmljVGltZT4gdGltZU9yaWdpbiA9IFdURjo6bnVsbG9wdCkgY29uc3Q7CisgICAgYm9v
bCBzYW1lT3JpZ2luQ2hlY2tGYWlscygpIGNvbnN0OworCisgICAgRG9jdW1lbnRUaW1pbmcgbV9k
b2N1bWVudFRpbWluZzsKKyAgICBOYXZpZ2F0aW9uVHlwZSBtX25hdmlnYXRpb25UeXBlOworfTsK
KworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4ZTdhYTFlMWU1ZmM3
MGU3NWY4ZmE4YThhYWVmOWExMmEwNzY0MDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwKQEAgLTAsMCArMSw1MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKy8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWlu
Zy0yLyNkb20tcGVyZm9ybWFuY2VuYXZpZ2F0aW9udGltaW5nCisKK3R5cGVkZWYgZG91YmxlIERP
TUhpZ2hSZXNUaW1lU3RhbXA7CisKK2VudW0gTmF2aWdhdGlvblR5cGUgeworICAgICJuYXZpZ2F0
ZSIsCisgICAgInJlbG9hZCIsCisgICAgImJhY2tfZm9yd2FyZCIsCisgICAgInByZXJlbmRlciIK
K307CisKK1sKKyAgICBFbmFibGVkQnlTZXR0aW5nPVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Z0FQSSwKKyAgICBFeHBvc2VkPVdpbmRvdworXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nIDogUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7CisgICAgcmVhZG9ubHkgICAg
ICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50U3RhcnQ7CisgICAg
cmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIHVubG9hZEV2ZW50
RW5kOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBk
b21JbnRlcmFjdGl2ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNU
aW1lU3RhbXAgZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkgICAgICAg
IGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZDsK
KyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tQ29t
cGxldGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1w
IGxvYWRFdmVudFN0YXJ0OworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJl
c1RpbWVTdGFtcCBsb2FkRXZlbnRFbmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBO
YXZpZ2F0aW9uVHlwZSAgICAgIHR5cGU7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSB1
bnNpZ25lZCBzaG9ydCAgICAgIHJlZGlyZWN0Q291bnQ7CisgICAgW0RlZmF1bHRdIG9iamVjdCB0
b0pTT04oKTsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNw
cAppbmRleCA0NjQ3MjY3ZDEyODlkYmI2YTUzMjBhNGFmZWIyMDQ2MGFiZjI4NzYxLi5lNThmYzYy
NTk4YzI2NGY1YjQ0NzY2NWQ3NTI5ZDIwYWRjZTQyMDFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2lu
Y2x1ZGUgIlBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaCIKKyNpbmNsdWRlICJSdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiV29ya2VyR2xvYmFsU2NvcGUuaCIKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewpAQCAtMTA3LDYgKzEwOCwxMSBAQCBFeGNlcHRpb25Pcjx2b2lkPiBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpvYnNlcnZlKEluaXQmJiBpbml0KQogICAgIHJldHVybiB7IH07
CiB9CiAKK1ZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBlcmZvcm1hbmNlT2JzZXJ2
ZXI6OnRha2VSZWNvcmRzKCkKK3sKKyAgICByZXR1cm4gc3RkOjpleGNoYW5nZShtX2VudHJpZXNU
b0RlbGl2ZXIsIHsgfSk7Cit9CisKIHZvaWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGlzY29ubmVj
dCgpCiB7CiAgICAgaWYgKG1fcGVyZm9ybWFuY2UpCkBAIC0xMTQsNiArMTIwLDcgQEAgdm9pZCBQ
ZXJmb3JtYW5jZU9ic2VydmVyOjpkaXNjb25uZWN0KCkKIAogICAgIG1fcmVnaXN0ZXJlZCA9IGZh
bHNlOwogICAgIG1fZW50cmllc1RvRGVsaXZlci5jbGVhcigpOworICAgIG1fdHlwZUZpbHRlciA9
IHsgfTsKIH0KIAogdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpxdWV1ZUVudHJ5KFBlcmZvcm1h
bmNlRW50cnkmIGVudHJ5KQpAQCAtMTMwLDcgKzEzNyw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNl
cnZlcjo6ZGVsaXZlcigpCiAgICAgaWYgKCFjb250ZXh0KQogICAgICAgICByZXR1cm47CiAKLSAg
ICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzID0gV1RGTW92ZShtX2Vu
dHJpZXNUb0RlbGl2ZXIpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVu
dHJpZXMgPSBzdGQ6OmV4Y2hhbmdlKG1fZW50cmllc1RvRGVsaXZlciwgeyB9KTsKICAgICBhdXRv
IGxpc3QgPSBQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OjpjcmVhdGUoV1RGTW92ZShlbnRy
aWVzKSk7CiAKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxGaXJlT2JzZXJ2ZXJD
YWxsYmFjaygqY29udGV4dCwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXIiX3MpOwpAQCAtMTQxLDEyICsx
NDgsMTMgQEAgdm9pZCBQZXJmb3JtYW5jZU9ic2VydmVyOjpkZWxpdmVyKCkKIFZlY3RvcjxTdHJp
bmc+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OnN1cHBvcnRlZEVudHJ5VHlwZXMoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYgY29udGV4dCkKIHsKICAgICBWZWN0b3I8U3RyaW5nPiBlbnRyeVR5cGVzID0g
ewotICAgICAgICAvLyBGSVhNRTogPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4NDM2Mz4gQWRkIHN1
cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKLSAgICAgICAgLy8gIm5hdmlnYXRp
b24iX3MsCiAgICAgICAgICJtYXJrIl9zLAotICAgICAgICAibWVhc3VyZSJfcworICAgICAgICAi
bWVhc3VyZSJfcywKICAgICB9OwogCisgICAgaWYgKGNvbnRleHQuc2V0dGluZ3NWYWx1ZXMoKS5w
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFibGVkKQorICAgICAgICBlbnRyeVR5cGVz
LmFwcGVuZCgibmF2aWdhdGlvbiJfcyk7CisKICAgICBpZiAoaXM8RG9jdW1lbnQ+KGNvbnRleHQp
ICYmIGRvd25jYXN0PERvY3VtZW50Pihjb250ZXh0KS5zdXBwb3J0c1BhaW50VGltaW5nKCkpCiAg
ICAgICAgIGVudHJ5VHlwZXMuYXBwZW5kKCJwYWludCJfcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKaW5kZXggMjg3MmYxN2FhYjViNTc2NmJmYzQ4Y2M0ODAw
MDRhZGQ4YmRlMWZmOS4uNDE5MzA1ZDQ3YzIxNTI3ZDhlMWNiZWI1N2JjZTVjMGQ4MmMyYTdkOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgKQEAgLTU3LDYgKzU3
LDcgQEAgcHVibGljOgogCiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gb2JzZXJ2ZShJbml0JiYpOwog
ICAgIHZvaWQgZGlzY29ubmVjdCgpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eT4+IHRha2VSZWNvcmRzKCk7CiAKICAgICBPcHRpb25TZXQ8UGVyZm9ybWFuY2VFbnRyeTo6VHlw
ZT4gdHlwZUZpbHRlcigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZUZpbHRlcjsgfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmlkbAppbmRleCBiNzA3ZjY2MDJlMzA5
N2FjMjM3Y2VhYzcyZTRhN2QwNjcyNjM2NTEzLi42ODNhMmJlYTAxNDU5NDMyNTdmOWM3ZjIwMmU2
ZjU1YzNkYjRiZDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZl
ci5pZGwKQEAgLTMzLDggKzMzLDkgQEAKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIg
ewogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihQZXJm
b3JtYW5jZU9ic2VydmVyQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgdW5kZWZpbmVkIG9ic2Vy
dmUoUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CisgICAgdW5kZWZpbmVkIG9ic2Vy
dmUob3B0aW9uYWwgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CiAgICAgdW5kZWZp
bmVkIGRpc2Nvbm5lY3QoKTsKKyAgICBzZXF1ZW5jZTxQZXJmb3JtYW5jZUVudHJ5PiB0YWtlUmVj
b3JkcygpOwogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBzdGF0aWMgcmVh
ZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5PERPTVN0cmluZz4gc3VwcG9ydGVkRW50cnlUeXBl
czsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNl
cnZlckVudHJ5TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2
ZXJFbnRyeUxpc3QuY3BwCmluZGV4IGUwMzY2NWFhY2I3MGJiOGY4NjM5YWY0YmM3YWUxZDA2MGRi
YjFlNDYuLmRkN2ZjOTdjYTM4ZjgzZTI0NTVlOTI3MDgyMzUxNTAwM2U5YTljZTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNw
cApAQCAtNjQsNyArNjQsNyBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJm
b3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRyaWVzQnlOYW1lKAogICAgIGZvciAoYXV0
byYgZW50cnkgOiBtX2VudHJpZXMpIHsKICAgICAgICAgaWYgKCFuYW1lLmlzTnVsbCgpICYmIGVu
dHJ5LT5uYW1lKCkgIT0gbmFtZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBpZiAo
dHlwZSAmJiBlbnRyeS0+dHlwZSgpICE9ICp0eXBlKQorICAgICAgICBpZiAodHlwZSAmJiBlbnRy
eS0+cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSAhPSAqdHlwZSkKICAgICAgICAgICAgIGNvbnRpbnVl
OwogICAgICAgICBlbnRyaWVzLmFwcGVuZChlbnRyeS5jb3B5UmVmKCkpOwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5nLmgKaW5kZXggYTI4MWJhMzgy
MjQ4ZjgyMzYwZjM3NzhiMWJmZmY1NWUzOTZlMjVjZi4uNzBmODA4NWY5Y2M3NTg3OTA0NjI5MTBj
ODBhYTc0YTZiYzc3NDAyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVBhaW50VGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBh
aW50VGltaW5nLmgKQEAgLTQ0LDEzICs0NCw5IEBAIHByaXZhdGU6CiAgICAgfQogCiAgICAgQVND
SUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJwYWludCJfczsgfQot
ICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBhaW50OyB9CisgICAg
VHlwZSBwZXJmb3JtYW5jZUVudHJ5VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6OlBh
aW50OyB9CiAKICAgICB+UGVyZm9ybWFuY2VQYWludFRpbWluZygpID0gZGVmYXVsdDsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihX
ZWJDb3JlOjpQZXJmb3JtYW5jZVBhaW50VGltaW5nKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShj
b25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNQ
YWludCgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCBkZDcxYWE3Y2Ix
NzhiM2IwODVlM2FhOWUyYzViYjNjZjIzN2ViMGE5Li5lNWRkMTJiOWY4M2E0MTQzYTNmYzZhNTNj
NTFhZmEyOWM5ODk5ZGQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTgxLDEyICs4MSw5IEBAIFJlZjxQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nPiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjcmVhdGUoTW9ub3Rvbmlj
VGltZSB0CiAKIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNl
VGltaW5nKQogICAgIDogUGVyZm9ybWFuY2VFbnRyeShyZXNvdXJjZVRpbWluZy51cmwoKS5zdHJp
bmcoKSwgZW50cnlTdGFydFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpLCBlbnRyeUVu
ZFRpbWUodGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpKQotICAgICwgbV9pbml0aWF0b3JUeXBl
KHJlc291cmNlVGltaW5nLmluaXRpYXRvcigpKQogICAgICwgbV90aW1lT3JpZ2luKHRpbWVPcmln
aW4pCi0gICAgLCBtX2xvYWRUaW1pbmcocmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpKQotICAg
ICwgbV9uZXR3b3JrTG9hZE1ldHJpY3MocmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNz
KCkpCi0gICAgLCBtX3Nob3VsZFJlcG9ydERldGFpbHMocmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1p
bmdEZXRhaWxzKCkpCi0gICAgLCBtX3NlcnZlclRpbWluZyhyZXNvdXJjZVRpbWluZy5wb3B1bGF0
ZVNlcnZlclRpbWluZygpKQorICAgICwgbV9yZXNvdXJjZVRpbWluZyhXVEZNb3ZlKHJlc291cmNl
VGltaW5nKSkKKyAgICAsIG1fc2VydmVyVGltaW5nKG1fcmVzb3VyY2VUaW1pbmcucG9wdWxhdGVT
ZXJ2ZXJUaW1pbmcoKSkKIHsKIH0KIApAQCAtOTQsNyArOTEsNyBAQCBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjp+UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZygpID0gZGVmYXVsdDsKIAogY29u
c3QgU3RyaW5nJiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpuZXh0SG9wUHJvdG9jb2woKSBj
b25zdAogewotICAgIHJldHVybiBtX25ldHdvcmtMb2FkTWV0cmljcy5wcm90b2NvbDsKKyAgICBy
ZXR1cm4gbV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5wcm90b2NvbDsKIH0K
IAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OndvcmtlclN0YXJ0KCkgY29uc3QK
QEAgLTEwNSwxNDAgKzEwMiwxNDAgQEAgZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OndvcmtlclN0YXJ0KCkgY29uc3QKIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
OnJlZGlyZWN0U3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxz
KQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAg
ICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlZGlyZWN0U3RhcnQoKSk7CisgICAg
cmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBt
X3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdFN0YXJ0KCkpOwogfQogCiBkb3Vi
bGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RFbmQoKSBjb25zdAogewotICAg
IGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5h
bGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBt
b25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGlt
aW5nLnJlZGlyZWN0RW5kKCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVz
VGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVk
aXJlY3RFbmQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRj
aFN0YXJ0KCkgY29uc3QKIHsKICAgICAvLyBmZXRjaFN0YXJ0IGlzIGEgcmVxdWlyZWQgcHJvcGVy
dHkuCi0gICAgQVNTRVJUKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkpOworICAgIEFTU0VSVCht
X3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwogCi0gICAgcmV0dXJu
IG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRU
aW1pbmcuZmV0Y2hTdGFydCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJl
c1RpbWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZl
dGNoU3RhcnQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpkb21h
aW5Mb29rdXBTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMp
CisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAg
ICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1
cFN0YXJ0IDw9IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRy
aWNzKCkuZG9tYWluTG9va3VwU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGZldGNoU3Rh
cnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAo
bV9uZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQpOworICAgIHJldHVybiBuZXR3
b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3Jr
TG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nOjpkb21haW5Mb29rdXBFbmQoKSBjb25zdAogewotICAgIGlmICghbV9z
aG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWlu
Z0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2Fk
TWV0cmljcy5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWlu
Zy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKICAgICAgICAg
cmV0dXJuIGRvbWFpbkxvb2t1cFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1l
VG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVu
ZCk7CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jl
c291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCk7CiB9CiAK
IGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQoKSBjb25zdAog
ewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRp
bWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlm
IChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPD0gMF9tcykKKyAgICBpZiAobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcykK
ICAgICAgICAgcmV0dXJuIGRvbWFpbkxvb2t1cEVuZCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtM
b2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0
U3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAo
bV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQpOwogfQog
CiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCgpIGNvbnN0CiB7
Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGlt
aW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYg
KG1fbmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpCiAgICAg
ICAgIHJldHVybiBjb25uZWN0U3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVU
b0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCk7Cisg
ICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNl
VGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQpOwogfQogCiBkb3VibGUgUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6c2VjdXJlQ29ubmVjdGlvblN0YXJ0KCkgY29uc3QKIHsK
LSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1p
bmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAo
bV9uZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IHJldXNlZFRMU0Nv
bm5lY3Rpb25TZW50aW5lbCkKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1l
dHJpY3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2VkVExTQ29ubmVjdGlvblNlbnRp
bmVsKQogICAgICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOwogCi0gICAgaWYgKG1fbmV0d29ya0xv
YWRNZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291
cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAw
X21zKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRv
RE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9u
U3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAo
bV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1cmVDb25uZWN0aW9uU3Rh
cnQpOwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVxdWVzdFN0YXJ0
KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1f
cmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7
CiAKICAgICAvLyByZXF1ZXN0U3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5v
dCBtYWRlLgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9t
cykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0
U3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGNvbm5lY3RFbmQoKTsKIAotICAgIHJldHVy
biBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJp
Y3MucmVxdWVzdFN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVz
VGltZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVzdFN0
YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3Rh
cnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICgh
bV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAu
MDsKIAogICAgIC8vIHJlc3BvbnNlU3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlz
IG5vdCBtYWRlLgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9
IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVz
cG9uc2VTdGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gcmVxdWVzdFN0YXJ0KCk7CiAKLSAg
ICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xv
YWRNZXRyaWNzLnJlc3BvbnNlU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RP
TUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5y
ZXNwb25zZVN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJl
c3BvbnNlRW5kKCkgY29uc3QKIHsKICAgICAvLyByZXNwb25zZUVuZCBpcyBhIHJlcXVpcmVkIHBy
b3BlcnR5LgotICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0NvbXBsZXRlKCkgfHwg
bV9sb2FkVGltaW5nLnJlc3BvbnNlRW5kKCkpOworICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSB8fCBtX3Jlc291cmNlVGltaW5nLmxv
YWRUaW1pbmcoKS5yZXNwb25zZUVuZCgpKTsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmlj
cy5pc0NvbXBsZXRlKCkpIHsKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1l
dHJpY3MoKS5pc0NvbXBsZXRlKCkpIHsKICAgICAgICAgLy8gcmVzcG9uc2VFbmQgaXMgMCB3aGVu
IGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBtYWRlLgogICAgICAgICAvLyBUaGlzIHNob3VsZCBt
ZWFuIGFsbCBvdGhlciBwcm9wZXJ0aWVzIGFyZSBlbXB0eS4KLSAgICAgICAgaWYgKG1fbmV0d29y
a0xvYWRNZXRyaWNzLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKLSAgICAgICAgICAgIEFTU0VSVCht
X25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAg
QVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKLSAgICAg
ICAgICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7
Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlv
blN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNz
LmNvbm5lY3RFbmQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1l
dHJpY3MuY29ubmVjdFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29y
a0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VS
VChtX25ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKLSAgICAg
ICAgICAgIHJldHVybiBmZXRjaFN0YXJ0KCk7CisgICAgICAgIGlmIChtX3Jlc291cmNlVGltaW5n
Lm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKKyAgICAgICAgICAg
IEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlU3Rh
cnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3Jr
TG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQo
bV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQgPD0gMF9t
cyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJp
Y3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQo
bV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMp
OworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNz
KCkuY29ubmVjdFN0YXJ0IDw9IDBfbXMpOworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VU
aW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwRW5kIDw9IDBfbXMpOworICAg
ICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9t
YWluTG9va3VwU3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2VTdGFy
dCgpOwogICAgICAgICB9CiAKLSAgICAgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGln
aFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUVuZCk7CisgICAgICAg
IHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRp
bWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25zZUVuZCk7CiAgICAgfQogCi0gICAgcmV0
dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xv
YWRUaW1pbmcucmVzcG9uc2VFbmQoKSk7CisgICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhp
Z2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmco
KS5yZXNwb25zZUVuZCgpKTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6
Om5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChTZWNvbmRzIGRlbHRhKSBjb25z
dAogewogICAgIEFTU0VSVChkZWx0YSk7Ci0gICAgU2Vjb25kcyBmaW5hbCA9IChtX2xvYWRUaW1p
bmcuZmV0Y2hTdGFydCgpICsgZGVsdGEpIC0gbV90aW1lT3JpZ2luOworICAgIFNlY29uZHMgZmlu
YWwgPSAobV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuZmV0Y2hTdGFydCgpICsgZGVsdGEp
IC0gbV90aW1lT3JpZ2luOwogICAgIHJldHVybiBQZXJmb3JtYW5jZTo6cmVkdWNlVGltZVJlc29s
dXRpb24oZmluYWwpLm1pbGxpc2Vjb25kcygpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCmluZGV4IDVkMDc5ZjRjNjY1NjUyMzE1YTAw
MTI0NjNjOGNkZjljZTUyZWM1YTEuLmI3NjZjOWMwMDk1ZmQwYzkwODhmMzkxN2U1NmUxZGZlZDQ1
NTVhNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiTG9hZFRpbWluZy5oIgogI2luY2x1
ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIK
KyNpbmNsdWRlICJSZXNvdXJjZVRpbWluZy5oIgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNDIsMTEgKzQzLDExIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIGNsYXNzIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nOwogY2xhc3MgUmVzb3Vy
Y2VUaW1pbmc7CiAKLWNsYXNzIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgZmluYWwgOiBwdWJs
aWMgUGVyZm9ybWFuY2VFbnRyeSB7CitjbGFzcyBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIDog
cHVibGljIFBlcmZvcm1hbmNlRW50cnkgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8UGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZz4gY3JlYXRlKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVz
b3VyY2VUaW1pbmcmJik7CiAKLSAgICBjb25zdCBBdG9tU3RyaW5nJiBpbml0aWF0b3JUeXBlKCkg
Y29uc3QgeyByZXR1cm4gbV9pbml0aWF0b3JUeXBlOyB9CisgICAgY29uc3QgU3RyaW5nJiBpbml0
aWF0b3JUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9yZXNvdXJjZVRpbWluZy5pbml0aWF0b3IoKTsg
fQogICAgIGNvbnN0IFN0cmluZyYgbmV4dEhvcFByb3RvY29sKCkgY29uc3Q7CiAKICAgICBkb3Vi
bGUgd29ya2VyU3RhcnQoKSBjb25zdDsKQEAgLTYxLDI3ICs2MiwyMSBAQCBwdWJsaWM6CiAgICAg
ZG91YmxlIHJlcXVlc3RTdGFydCgpIGNvbnN0OwogICAgIGRvdWJsZSByZXNwb25zZVN0YXJ0KCkg
Y29uc3Q7CiAgICAgZG91YmxlIHJlc3BvbnNlRW5kKCkgY29uc3Q7CisKICAgICBjb25zdCBWZWN0
b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4mIHNlcnZlclRpbWluZygpIGNvbnN0IHsg
cmV0dXJuIG1fc2VydmVyVGltaW5nOyB9CiAKLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7
IHJldHVybiBUeXBlOjpSZXNvdXJjZTsgfQotICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBj
b25zdCBmaW5hbCB7IHJldHVybiAicmVzb3VyY2UiX3M7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNl
RW50cnlUeXBlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gVHlwZTo6UmVzb3VyY2U7IH0KKyAg
ICBBU0NJSUxpdGVyYWwgZW50cnlUeXBlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gInJlc291
cmNlIl9zOyB9CiAKLXByaXZhdGU6Citwcm90ZWN0ZWQ6CiAgICAgUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZyhNb25vdG9uaWNUaW1lIHRpbWVPcmlnaW4sIFJlc291cmNlVGltaW5nJiYpOwogICAg
IH5QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKCk7CiAKICAgICBkb3VibGUgbmV0d29ya0xvYWRU
aW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKFNlY29uZHMpIGNvbnN0OwogCi0gICAgQXRvbVN0cmlu
ZyBtX2luaXRpYXRvclR5cGU7CiAgICAgTW9ub3RvbmljVGltZSBtX3RpbWVPcmlnaW47Ci0gICAg
TG9hZFRpbWluZyBtX2xvYWRUaW1pbmc7Ci0gICAgTmV0d29ya0xvYWRNZXRyaWNzV2l0aG91dE5v
blRpbWluZ0RhdGEgbV9uZXR3b3JrTG9hZE1ldHJpY3M7Ci0gICAgYm9vbCBtX3Nob3VsZFJlcG9y
dERldGFpbHM7CisgICAgY29uc3QgUmVzb3VyY2VUaW1pbmcgbV9yZXNvdXJjZVRpbWluZzsKICAg
ICBWZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVyVGltaW5nPj4gbV9zZXJ2ZXJUaW1pbmc7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVH
SU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykKLSAgICBzdGF0aWMgYm9vbCBp
c1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkpIHsgcmV0dXJuIGVu
dHJ5LmlzUmVzb3VyY2UoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKaW5kZXgg
NDZhOGYwZjI1MTFjZWI1YzBjN2RkMzExNmMyZjhmYTc3ZmM4ZDdkZC4uZjA2NTY2ZDVlMGZhN2Ux
ZmQwYjQ1OTdmMTBiNWYyMmVmNjZhMTZkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCkBAIC01MCw2ICs1MCwxMSBAQCB0eXBlZGVm
IGRvdWJsZSBET01IaWdoUmVzVGltZVN0YW1wOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01I
aWdoUmVzVGltZVN0YW1wIHJlcXVlc3RTdGFydDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9N
SGlnaFJlc1RpbWVTdGFtcCByZXNwb25zZVN0YXJ0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBE
T01IaWdoUmVzVGltZVN0YW1wIHJlc3BvbnNlRW5kOworCisgICAgLy8gTm90ZTogdHJhbnNmZXJT
aXplLCBlbmNvZGVkQm9keVNpemUsIGFuZCBkZWNvZGVkQm9keVNpemUgYXJlIGludGVudGlvbmFs
bHkgb21pdHRlZAorICAgIC8vIGJlY2F1c2Ugb2YgcHJpdmFjeSBjb25jZXJucyBzdWNoIGFzIGh0
dHBzOi8vZ2l0aHViLmNvbS93M2MvcmVzb3VyY2UtdGltaW5nL2lzc3Vlcy8yMzgKKworICAgIC8v
IGh0dHBzOi8vd3d3LnczLm9yZy9UUi9zZXJ2ZXItdGltaW5nLyNleHRlbnNpb24tdG8tdGhlLXBl
cmZvcm1hbmNlcmVzb3VyY2V0aW1pbmctaW50ZXJmYWNlCiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9
U2VydmVyVGltaW5nXSByZWFkb25seSBhdHRyaWJ1dGUgRnJvemVuQXJyYXk8UGVyZm9ybWFuY2VT
ZXJ2ZXJUaW1pbmc+IHNlcnZlclRpbWluZzsKIAogICAgIFtEZWZhdWx0XSBvYmplY3QgdG9KU09O
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNv
dXJjZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Jsb2JSZXNv
dXJjZUhhbmRsZS5jcHAKaW5kZXggOWZmMjMzNjIzMDQ1YTg5OTQ0NTUyZDgyYmYzYTcyZjEyMWJk
OTg3NS4uMTQ3NzRmMjMyMzI3ZTExOThlMzc0YmMxODc2YWE5ZTc5Yzk2OGNiMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9CbG9iUmVzb3VyY2VIYW5kbGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxl
LmNwcApAQCAtNjM0LDcgKzYzNCw3IEBAIHN0YXRpYyB2b2lkIGRvTm90aWZ5RmluaXNoKEJsb2JS
ZXNvdXJjZUhhbmRsZSYgaGFuZGxlKQogICAgIGlmICghaGFuZGxlLmNsaWVudCgpKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBoYW5kbGUuY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoJmhhbmRs
ZSk7CisgICAgaGFuZGxlLmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZoYW5kbGUsIHsgfSk7
CiB9CiAKIHZvaWQgQmxvYlJlc291cmNlSGFuZGxlOjpub3RpZnlGaW5pc2goKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKaW5k
ZXggZDcxMDdhYTQ1Njc4MTdiZTNhNWY3OTIwNDQzMDZmZWY3MGI5YmNhMS4uMTY5NjVlZTlhNTE3
YTQ1NTk2MTUzNjc2Nzk2Zjk5YmNiMzZmMjVkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtMb2FkTWV0cmljcy5oCkBAIC0yMDAsNyArMjAwLDcg
QEAgcHVibGljOgogfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQotQm94PE5ldHdvcmtMb2FkTWV0
cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICosIE5TVVJMUmVzcG9uc2UgKik7
CitCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENvbm5lY3Rpb24g
Kik7CiBXRUJDT1JFX0VYUE9SVCBCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0
YShOU1VSTFNlc3Npb25UYXNrVHJhbnNhY3Rpb25NZXRyaWNzICppbmNvbXBsZXRlTWV0cmljcyk7
CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9S
ZXNvdXJjZUhhbmRsZUNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9S
ZXNvdXJjZUhhbmRsZUNsaWVudC5oCmluZGV4IDlhODBlMTEzZmI0ODI4Mjk0ZDdhZmZjYWUwMjll
ZjBjYWY4NWRkMTUuLmZiYTAyMzNiZWZhMmNkNGMxNjE0ZjcwNTZiNGIwNzUzNzkzMWVjZWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVD
bGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFu
ZGxlQ2xpZW50LmgKQEAgLTQ0LDYgKzQ0LDcgQEAgT0JKQ19DTEFTUyBOU0NhY2hlZFVSTFJlc3Bv
bnNlOwogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgQXV0aGVudGljYXRpb25DaGFsbGVuZ2U7
CiBjbGFzcyBDcmVkZW50aWFsOworY2xhc3MgTmV0d29ya0xvYWRNZXRyaWNzOwogY2xhc3MgUHJv
dGVjdGlvblNwYWNlOwogY2xhc3MgUmVzb3VyY2VIYW5kbGU7CiBjbGFzcyBSZXNvdXJjZUVycm9y
OwpAQCAtNjcsNyArNjgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVE
YXRhKFJlc291cmNlSGFuZGxlKiwgY29uc3QgY2hhciosIHVuc2lnbmVkLCBpbnQgLyplbmNvZGVk
RGF0YUxlbmd0aCovKSB7IH0KICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZUJ1ZmZlcihSZXNvdXJjZUhhbmRsZSosIFJlZjxTaGFyZWRCdWZmZXI+JiYsIGludCBlbmNv
ZGVkRGF0YUxlbmd0aCk7CiAgICAgCi0gICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRpbmco
UmVzb3VyY2VIYW5kbGUqKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZGluZyhS
ZXNvdXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpIHsgfQogICAgIHZpcnR1
YWwgdm9pZCBkaWRGYWlsKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCB3YXNCbG9ja2VkKFJlc291cmNlSGFuZGxlKikgeyB9CiAgICAg
dmlydHVhbCB2b2lkIGNhbm5vdFNob3dVUkwoUmVzb3VyY2VIYW5kbGUqKSB7IH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGll
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRl
ckNsaWVudC5jcHAKaW5kZXggYzdjMTJjZThlNzUxYTUyYmI0NTE3ZGQwMmQ2ZjU4YWRlNjkxMjBl
ZC4uMmE3Zjg4NDExYjRhMTM5NWI3ZjMxNjAwMjE2MmFlOTM3MWY0ZmViMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRl
ckNsaWVudC5jcHAKQEAgLTc2LDcgKzc2LDcgQEAgdm9pZCBTeW5jaHJvbm91c0xvYWRlckNsaWVu
dDo6ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiBkYXRhLAogICAg
IG1fZGF0YS5hcHBlbmQoZGF0YSwgbGVuZ3RoKTsKIH0KIAotdm9pZCBTeW5jaHJvbm91c0xvYWRl
ckNsaWVudDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSogaGFuZGxlKQordm9pZCBT
eW5jaHJvbm91c0xvYWRlckNsaWVudDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSog
aGFuZGxlLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKQogewogICAgIG1fbWVzc2FnZVF1ZXVl
LT5raWxsKCk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmgKaW5kZXggOGQy
YTk3NzE5MzE0ZmM4OTI1YzIyZGJmZGVjNThlZjkyYjMyN2RjNC4uZjg4ZGZmN2Y5MzViNjM1NWVh
MjcxMDRhYWU1ZTQyY2Y2YjQyNGQ1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaApAQCAtNjcsNyArNjcs
NyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KFJlc291cmNlSGFuZGxlKiwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBvdmVycmlk
ZTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUFzeW5jKFJlc291cmNlSGFuZGxlKiwgUmVz
b3VyY2VSZXNwb25zZSYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpIG92ZXJyaWRlOwog
ICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwgdW5z
aWduZWQsIGludCAvKmVuY29kZWREYXRhTGVuZ3RoKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgZGlk
RmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpIG92
ZXJyaWRlOwogICAgIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNl
RXJyb3ImKSBvdmVycmlkZTsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNL
KQogICAgIHZvaWQgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZUFzeW5jKFJl
c291cmNlSGFuZGxlKiwgY29uc3QgUHJvdGVjdGlvblNwYWNlJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRo
T3BlcmF0aW9uUXVldWUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9S
ZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlLmNw
cAppbmRleCAzYzgyYmMzYjRjNjg1OWI4YmE5NGEzMmJlOWE0MjZhODM5OTZlYzUwLi4yNGQxNDg1
ODIwNWUxMjJkMmZiZWRmMWEzOTNkN2E4MGVjZjJjODFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVs
ZWdhdGVXaXRoT3BlcmF0aW9uUXVldWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVy
YXRpb25RdWV1ZS5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZS5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJNSU1FVHlwZVJl
Z2lzdHJ5LmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZUNsaWVudC5oIgogI2luY2x1
ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAgLTIzOCw3ICsyMzksNyBAQCB2b2lkIFJlc291cmNl
SGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZEZpbmlz
aExvYWRpbmcoKQogCiAgICAgICAgIExPRyhOZXR3b3JrLCAiQ0ZOZXQgLSBSZXNvdXJjZUhhbmRs
ZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpkaWRGaW5pc2hMb2Fk
aW5nKGhhbmRsZT0lcCkgKCVzKSIsIGhhbmRsZSwgaGFuZGxlLT5maXJzdFJlcXVlc3QoKS51cmwo
KS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKIAotICAgICAgICBoYW5kbGUtPmNsaWVudCgpLT5k
aWRGaW5pc2hMb2FkaW5nKGhhbmRsZSk7CisgICAgICAgIGhhbmRsZS0+Y2xpZW50KCktPmRpZEZp
bmlzaExvYWRpbmcoaGFuZGxlLCBOZXR3b3JrTG9hZE1ldHJpY3MgeyB9KTsKICAgICAgICAgaWYg
KHByb3RlY3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlKSB7CiAgICAgICAgICAgICBwcm90ZWN0ZWRU
aGlzLT5tX21lc3NhZ2VRdWV1ZS0+a2lsbCgpOwogICAgICAgICAgICAgcHJvdGVjdGVkVGhpcy0+
bV9tZXNzYWdlUXVldWUgPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbQppbmRleCA1YjNj
ODk4YmQzMDI3ZGRkNTcyNDkxNjZhYzE0YmVlYjFlNzA3YjJhLi42NGFlYTRmZDUyZjlkNWUyZTNk
MGIzOWM2MzIwZGM5NmE3ZmRhN2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbQpAQCAtNjcsNyAr
NjcsNyBAQCBCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTFNlc3Np
b25UYXNrVHJhbnNhY3Rpb25NZXRyaWNzICppbmNvbQogICAgICk7CiB9CiAKLUJveDxOZXR3b3Jr
TG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbiwg
TlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpCitCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGlt
aW5nRGF0YShOU1VSTENvbm5lY3Rpb24gKmNvbm5lY3Rpb24pCiB7CiAgICAgTlNEaWN0aW9uYXJ5
ICp0aW1pbmdEYXRhID0gW2Nvbm5lY3Rpb24gX3RpbWluZ0RhdGFdOwogICAgIGlmICghdGltaW5n
RGF0YSkKQEAgLTg5LDcgKzg5LDcgQEAgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWlu
Z0RhdGEoTlNVUkxDb25uZWN0aW9uICpjb25uZWN0aW9uLCBOU1VSTFJlc3BvbnMKICAgICAgICAg
dGltaW5nVmFsdWUodGltaW5nRGF0YSwgQCJfa0NGTlRpbWluZ0RhdGFSZXF1ZXN0U3RhcnQiKSwK
ICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwgQCJfa0NGTlRpbWluZ0RhdGFSZXNwb25z
ZVN0YXJ0IiksCiAgICAgICAgIHRpbWluZ1ZhbHVlKHRpbWluZ0RhdGEsIEAiX2tDRk5UaW1pbmdE
YXRhQ29ubmVjdGlvblJldXNlZCIpLAotICAgICAgICByZXNwb25zZS5VUkwuc2NoZW1lCisgICAg
ICAgIGNvbm5lY3Rpb24uY3VycmVudFJlcXVlc3QuVVJMLnNjaGVtZQogICAgICk7CiB9CiAgICAg
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJl
c291cmNlSGFuZGxlRGVsZWdhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcAppbmRleCA1YjgyN2RlYjA1Nzg1
ZTM0ZDE3ZGQyOTlkOTYxNDYyMjgwNjZjYzg4Li5lNTY0YTBjZTY2NjE0YTQ5YTEwMzEzNjg4NTFj
NGRhODgyMzUyYTYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAKQEAg
LTE1Miw3ICsxNTIsNyBAQCB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlk
UmVjZWl2ZUJ1ZmZlcihDdXJsUmVxdWVzdCYsIFJlZjxTaGFyZWRCdQogICAgIGNsaWVudCgpLT5k
aWRSZWNlaXZlQnVmZmVyKCZtX2hhbmRsZSwgV1RGTW92ZShidWZmZXIpLCBidWZmZXItPnNpemUo
KSk7CiB9CiAKLXZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRDb21wbGV0
ZShDdXJsUmVxdWVzdCYsIE5ldHdvcmtMb2FkTWV0cmljcyYmKQordm9pZCBDdXJsUmVzb3VyY2VI
YW5kbGVEZWxlZ2F0ZTo6Y3VybERpZENvbXBsZXRlKEN1cmxSZXF1ZXN0JiwgTmV0d29ya0xvYWRN
ZXRyaWNzJiYgbWV0cmljcykKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogCkBAIC0x
NjAsNyArMTYwLDcgQEAgdm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZENv
bXBsZXRlKEN1cmxSZXF1ZXN0JiwgTmV0d29ya0xvYWRNZXRyaWMKICAgICAgICAgcmV0dXJuOwog
CiAgICAgQ3VybENhY2hlTWFuYWdlcjo6c2luZ2xldG9uKCkuZGlkRmluaXNoTG9hZGluZyhtX2hh
bmRsZSk7Ci0gICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoJm1faGFuZGxlKTsKKyAgICBj
bGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmbV9oYW5kbGUsIFdURk1vdmUobWV0cmljcykpOwog
fQogCiB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkRmFpbFdpdGhFcnJv
cihDdXJsUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImJiByZXNvdXJjZUVycm9yLCBDZXJ0aWZpY2F0
ZUluZm8mJikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3Vy
bC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKaW5kZXggOGYxNzViNjU0MmVhMmYwYzg2OGY3
MDFkNTYyODA0YmY3ZTJmZDU5Ny4uYzdlMWEyNGZlOTU1OWU5OGY1YmM1NmZmMjI3MDBhMWU0YWU1
OTMxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jl
c291cmNlSGFuZGxlQ3VybC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybC5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRl
ICJDdXJsUmVxdWVzdC5oIgogI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCiAjaW5jbHVkZSAiTG9n
Z2luZy5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUgIk5ldHdv
cmtTdG9yYWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlSW50ZXJuYWwuaCIK
ICNpbmNsdWRlICJTYW1lU2l0ZUluZm8uaCIKQEAgLTU4Miw3ICs1ODMsNyBAQCB2b2lkIFJlc291
cmNlSGFuZGxlOjpoYW5kbGVEYXRhVVJMKCkKICAgICB9CiAKICAgICBpZiAoY2xpZW50KCkpCi0g
ICAgICAgIGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKHRoaXMpOworICAgICAgICBjbGllbnQo
KS0+ZGlkRmluaXNoTG9hZGluZyh0aGlzLCB7IH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJD
b3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlv
blF1ZXVlRGVsZWdhdGUubW0KaW5kZXggZDQ5Nzg2MGQ4NzQ1Y2MyMjI1ZmQxM2VlNmQwZDMyODI2
NzRhNWNhNi4uOGE0MGI2MDE3ZWEwOTllOTgxZDY5ZDFmMjk4NThlMTE5MTU0MWQ4NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291cmNl
SGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVE
ZWxlZ2F0ZS5tbQpAQCAtMzgsNiArMzgsNyBAQAogI2ltcG9ydCAiU3luY2hyb25vdXNMb2FkZXJD
bGllbnQuaCIKICNpbXBvcnQgIldlYkNvcmVVUkxSZXNwb25zZS5oIgogI2ltcG9ydCA8cGFsL3Nw
aS9jZi9DRk5ldHdvcmtTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNVUkxDb25uZWN0
aW9uU1BJLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tQdHIuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhy
ZWFkLmg+CiAKQEAgLTI1Miw3ICsyNTMsNyBAQCBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFU
SU9OU19FTkQKIAogICAgICAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc291cmNlUmVzcG9uc2Uoci5n
ZXQoKSk7CiAgICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0U291cmNlKFJlc291cmNlUmVzcG9u
c2U6OlNvdXJjZTo6TmV0d29yayk7Ci0gICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0RGVwcmVj
YXRlZE5ldHdvcmtMb2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpLCBy
LmdldCgpKSk7CisgICAgICAgIHJlc291cmNlUmVzcG9uc2Uuc2V0RGVwcmVjYXRlZE5ldHdvcmtM
b2FkTWV0cmljcyhjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpKSk7CiAKICAgICAgICAg
bV9oYW5kbGUtPmRpZFJlY2VpdmVSZXNwb25zZShXVEZNb3ZlKHJlc291cmNlUmVzcG9uc2UpLCBb
c2VsZiwgcHJvdGVjdGVkU2VsZiA9IFdURk1vdmUocHJvdGVjdGVkU2VsZildIHsKICAgICAgICAg
ICAgIG1fc2VtYXBob3JlLnNpZ25hbCgpOwpAQCAtMzE0LDExICszMTUsMjEgQEAgQUxMT1dfREVQ
UkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKICAgICBMT0coTmV0d29yaywgIkhhbmRsZSAl
cCBkZWxlZ2F0ZSBjb25uZWN0aW9uRGlkRmluaXNoTG9hZGluZzolcCIsIG1faGFuZGxlLCBjb25u
ZWN0aW9uKTsKIAotICAgIGF1dG8gd29yayA9IFtzZWxmID0gc2VsZiwgcHJvdGVjdGVkU2VsZiA9
IHJldGFpblB0cihzZWxmKV0gKCkgbXV0YWJsZSB7CisgICAgYXV0byB3b3JrID0gW3NlbGYgPSBz
ZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpLCBjb25uZWN0aW9uID0gcmV0YWlu
UHRyKGNvbm5lY3Rpb24pXSAoKSBtdXRhYmxlIHsKICAgICAgICAgaWYgKCFtX2hhbmRsZSB8fCAh
bV9oYW5kbGUtPmNsaWVudCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIG1faGFu
ZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhtX2hhbmRsZSk7CisgICAgICAgIGlmIChh
dXRvIG1ldHJpY3MgPSBjb3B5VGltaW5nRGF0YShjb25uZWN0aW9uLmdldCgpKSkgeworICAgICAg
ICAgICAgZG91YmxlIHJlc3BvbnNlRW5kVGltZSA9IFtbW2Nvbm5lY3Rpb24gX3RpbWluZ0RhdGFd
IG9iamVjdEZvcktleTpAIl9rQ0ZOVGltaW5nRGF0YVJlc3BvbnNlRW5kIl0gZG91YmxlVmFsdWVd
OworICAgICAgICAgICAgbWV0cmljcy0+cmVzcG9uc2VFbmQgPSBTZWNvbmRzKHJlc3BvbnNlRW5k
VGltZSA8PSAwID8gbWV0cmljcy0+cmVzcG9uc2VTdGFydC52YWx1ZSgpIDogcmVzcG9uc2VFbmRU
aW1lIC0gbWV0cmljcy0+ZmV0Y2hTdGFydC52YWx1ZSgpKTsKKyAgICAgICAgICAgIG1ldHJpY3Mt
Pm1hcmtDb21wbGV0ZSgpOworICAgICAgICAgICAgbV9oYW5kbGUtPmNsaWVudCgpLT5kaWRGaW5p
c2hMb2FkaW5nKG1faGFuZGxlLCAqbWV0cmljcyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOworICAgICAgICAgICAgZW1wdHlN
ZXRyaWNzLm1hcmtDb21wbGV0ZSgpOworICAgICAgICAgICAgbV9oYW5kbGUtPmNsaWVudCgpLT5k
aWRGaW5pc2hMb2FkaW5nKG1faGFuZGxlLCBlbXB0eU1ldHJpY3MpOworICAgICAgICB9CisKICAg
ICAgICAgaWYgKG1fbWVzc2FnZVF1ZXVlKSB7CiAgICAgICAgICAgICBtX21lc3NhZ2VRdWV1ZS0+
a2lsbCgpOwogICAgICAgICAgICAgbV9tZXNzYWdlUXVldWUgPSBudWxscHRyOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tCmluZGV4IGYzNWM1ZjNhNjUzZGUwYmNkMTQ0ZGVjYTU2ODUyN2FlYTcwZDU0YmYuLjcy
NjE1YWM5Y2ZjNjdkNTg4Zjg3MWUzN2E1NDM0OTU5OGJjMzc0YjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2Eu
bW0KQEAgLTc5MCw3ICs3OTAsMTAgQEAgc3RhdGljIGlubGluZSB2b2lkIHByb2Nlc3NTZXJ2ZXJU
cnVzdEV2YWx1YXRpb24oTmV0d29ya1Nlc3Npb25Db2NvYSYgc2Vzc2lvbiwgU2UKICAgICAgICAg
bmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0YXJ0ID0gU2Vjb25kcyhkb21haW5Mb29r
dXBTdGFydEludGVydmFsKTsKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1
cEVuZCA9IFNlY29uZHMoZG9tYWluTG9va3VwRW5kSW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3Jr
TG9hZE1ldHJpY3MuY29ubmVjdFN0YXJ0ID0gU2Vjb25kcyhjb25uZWN0U3RhcnRJbnRlcnZhbCk7
Ci0gICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBTZWNv
bmRzKHNlY3VyZUNvbm5lY3Rpb25TdGFydEludGVydmFsKTsKKyAgICAgICAgaWYgKG0ucmV1c2Vk
Q29ubmVjdGlvbiAmJiBbbS5yZXNwb25zZS5VUkwuc2NoZW1lIGlzRXF1YWxUb1N0cmluZzpAImh0
dHBzIl0pCisgICAgICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0
YXJ0ID0gV2ViQ29yZTo6cmV1c2VkVExTQ29ubmVjdGlvblNlbnRpbmVsOworICAgICAgICBlbHNl
CisgICAgICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0g
U2Vjb25kcyhzZWN1cmVDb25uZWN0aW9uU3RhcnRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtM
b2FkTWV0cmljcy5jb25uZWN0RW5kID0gU2Vjb25kcyhjb25uZWN0RW5kSW50ZXJ2YWwpOwogICAg
ICAgICBuZXR3b3JrTG9hZE1ldHJpY3MucmVxdWVzdFN0YXJ0ID0gU2Vjb25kcyhyZXF1ZXN0U3Rh
cnRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0ID0g
U2Vjb25kcyhyZXNwb25zZVN0YXJ0SW50ZXJ2YWwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5kbGUuaAppbmRleCAxNzU5NTRjOThmNDY2MmNiM2RhZmUw
MGNmYWM0ZmY4Yzk1YWI0ZTc1Li4wOTI5Y2VmOTc4OWMwY2NmMTFhM2U5NDEwZjVkZTZmZmNhZmVi
YTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdI
YW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1BpbmdIYW5k
bGUuaApAQCAtNzQsNyArNzQsNyBAQCBwcml2YXRlOgogICAgICAgICBwaW5nTG9hZENvbXBsZXRl
KHsgfSwgcmVzcG9uc2UpOwogICAgIH0KICAgICB2b2lkIGRpZFJlY2VpdmVCdWZmZXIoV2ViQ29y
ZTo6UmVzb3VyY2VIYW5kbGUqLCBSZWY8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiYmLCBpbnQpIGZp
bmFsIHsgcGluZ0xvYWRDb21wbGV0ZSgpOyB9Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdl
YkNvcmU6OlJlc291cmNlSGFuZGxlKikgZmluYWwgeyBwaW5nTG9hZENvbXBsZXRlKCk7IH0KKyAg
ICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGUqLCBjb25zdCBX
ZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoKTsg
fQogICAgIHZvaWQgZGlkRmFpbChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImIGVycm9yKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoZXJyb3Ip
OyB9CiAgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpSZXNvdXJj
ZUhhbmRsZSopIGZpbmFsIHsgcmV0dXJuIG1fc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2U7IH0K
ICAgICB2b2lkIHRpbWVvdXRUaW1lckZpcmVkKCkgeyBwaW5nTG9hZENvbXBsZXRlKFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgeyBTdHJpbmcoKSwgMCwgbV9jdXJyZW50UmVxdWVzdC51cmwoKSwgIkxv
YWQgdGltZWQgb3V0Il9zLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yOjpUeXBlOjpUaW1lb3V0IH0p
OyB9CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9UZXN0T3B0aW9ucy5jcHAgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9UZXN0T3B0aW9ucy5jcHAKaW5kZXggZDFiNTFjNjFmZTBkOGY1
NTYzODlkNzg5YjZmY2VlYzE1ZmJhNGQwZC4uNDdhODU2OTgzMGNhMTdkN2M5MjMyNDNmNGYwZmNi
NzgwMjY4ZmNlMSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMu
Y3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcApAQCAtMTU4LDYg
KzE1OCw3IEBAIGNvbnN0IFRlc3RGZWF0dXJlcyYgVGVzdE9wdGlvbnM6OmRlZmF1bHRzKCkKICAg
ICAgICAgICAgIHsgIk1vZGVybk1lZGlhQ29udHJvbHNFbmFibGVkIiwgdHJ1ZSB9LAogICAgICAg
ICAgICAgeyAiTmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmsiLCBmYWxzZSB9LAog
ICAgICAgICAgICAgeyAiT3ZlcnNjcm9sbEJlaGF2aW9yRW5hYmxlZCIsIHRydWUgfSwKKyAgICAg
ICAgICAgIHsgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJsZWQiLCB0cnVlIH0s
CiAgICAgICAgICAgICB7ICJQbHVnaW5zRW5hYmxlZCIsIHRydWUgfSwKICAgICAgICAgICAgIHsg
IlByaXZhdGVDbGlja01lYXN1cmVtZW50RW5hYmxlZCIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7
ICJSZXF1ZXN0SWRsZUNhbGxiYWNrRW5hYmxlZCIsIGZhbHNlIH0sCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggY2VjNGExZTNh
MGE5MjBmMDg1MTFlMThjZWQ3ZjA2YmNkYzIzMjg3Yi4uYjA0MDI4ZDYxZWE2YjI5NGU3ZmIwMzVm
ZGE2NWM1NzI2ZTJkZmFhNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIxLTA1LTE5ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1
cHBvcnQgZm9yIE5hdmlnYXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5
IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgIEFu
bm95aW5nbHkgc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMuaHRtbCBiZWNv
bWVzIGZsYWt5IHdpdGggYSBjb3JyZWN0IGltcGxlbWVudGF0aW9uIGJlY2F1c2UgaXQgYXNzdW1l
cworICAgICAgICB0aGF0IG5vIGNvbm5lY3Rpb24gaXMgcmV1c2VkLiAgSG93ZXZlciwgd2hlbiBy
dW5uaW5nIHRoaXMgdGVzdCBhZnRlciBvdGhlciB0ZXN0cywgYW5vdGhlciBjb25uZWN0aW9uIGlz
IG9mdGVuIHJldXNlZC4KKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3Bl
cmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHBlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2
ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sOgorICAgICAgICAqIHBlcmZvcm1hbmNlLWFw
aS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBlcmZv
cm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzOgorICAgICAgICAq
IHBsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICBOZXh0IGhvcCBwcm90b2NvbCBpc24ndCBpbXBsZW1lbnRlZCBpbiBSZXNvdXJjZUhhbmRs
ZS4gIFRoYXQncyBwcm9iYWJseSBubyBiaWcgZGVhbCBiZWNhdXNlIFdlYktpdExlZ2FjeSBpcyBk
ZXByZWNhdGVkIGFuZCBub3QgdXNlZCBieSBTYWZhcmkuCisKIDIwMjEtMDUtMTggIFJvYmVydCBK
ZW5uZXIgIDxqZW5uZXJAYXBwbGUuY29tPgogCiAgICAgICAgIERpc2FibGUgV2ViU1FMIGluIFdl
YktpdFRlc3RSdW5uZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDYxOGUyZDMy
MDU5NWJmOGIwMWFmOThjNzZkM2JkOTNkNjU0MWY1M2UuLmMwMDY1MDA1OTFlNmYwMmMzZTBiMzM1
OWUxZTg2NDE2N2ZlMDFjMmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEyOSBAQAorMjAyMS0wNS0xOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBM
ZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWw6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3Rp
dmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3Vt
ZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qczoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJp
YnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbDog
QWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIHdlIGhhdmUgbm90IGltcGxl
bWVudGVkIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXpl
IGFzIG5vdGVkIGluIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3Zh
bHVlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbDogQWRkZWQu
CisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIHdlIGhhdmUgbm90IGltcGxlbWVudGVk
IHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlTaXplIGFzIG5v
dGVkIGluIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9vcGVuLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5z
dGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sOgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3Jz
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbDogQWRkZWQuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
ZV93aXRoaW5fZG9jdW1lbnQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25f
dHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX25hdmln
YXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9u
YXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFs
X29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICBUaGlzIHRlc3Qg
ZmFpbHMgYmVjYXVzZSBvdXIgdGVzdCBpbmZyYXN0cnVjdHVyZSBkb2Vzbid0IHN1cHBvcnQgbG9h
ZGluZyBmcm9tIHd3dy5sb2NhbGhvc3QuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29y
aWdpbmFsX29yaWdpbi5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVy
X3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGZhaWxzIGJl
Y2F1c2Ugb3VyIHRlc3QgaW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBwb3J0IGxvYWRpbmcgZnJv
bSB3d3cubG9jYWxob3N0LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5o
dG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMg
dGVzdCBmYWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZl
ci5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgdGVz
dCBmYWlscyBiZWNhdXNlIG91ciB0ZXN0IGluZnJhc3RydWN0dXJlIGRvZXNuJ3Qgc3VwcG9ydCBs
b2FkaW5nIGZyb20gd3d3LmxvY2FsaG9zdC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRtbDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1
ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBm
YWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2Vz
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRtbDogQWRkZWQu
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNl
cy93ZWJwZXJmdGVzdGhhcm5lc3MuanM6CisgICAgICAgICh0ZXN0X25hbWVzcGFjZSk6CisgICAg
ICAgICh0ZXN0X2F0dHJpYnV0ZV9leGlzdHMpOgorICAgICAgICAodGVzdF9lbnVtKToKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQt
cmV1c2UuaHR0cHMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGhhcyBiZWVuIG1hcmtlZCBhcyBmbGFreS4g
IEl0IG5lZWRzIHRvIGJlIGZpeGVkIHRvIG5vdCByZWx5IG9uIG5vIGluaXRpYWwgY29ubmVjdGlv
biByZXVzZS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90
eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0
X2RvY3VtZW50X29ubG9hZC5odG1sOiBBZGRlZC4KKyAgICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUg
bmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0aW9uLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91
bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWw6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFnLWFm
dGVyLXRpbWVvdXQuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBf
dGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5q
czogQWRkZWQuCisgICAgICAgIChhc3luYyBpZGxfYXJyYXkpOgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFnLW9i
c2VydmVycy5hbnkuanM6IEFkZGVkLgorICAgICAgICAocHJvbWlzZV90ZXN0KToKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2Uu
YW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBfdGltZW91dCk6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1h
bmNlZW50cnktdG9qc29uLmFueS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0KToKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0
YXRlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1yZW1vdmVz
LW9ic2VydmVkLXR5cGVzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29u
bmVjdC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICh0ZXN0
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
ZW50cmllcy1zb3J0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmll
cy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanM6
IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2Jz
ZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2Jz
ZXJ2ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXRha2VSZWNvcmRzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2Vz
L3Bvc3RtZXNzYWdlLWVudHJ5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFsaWQtZW50cmll
cy5qczogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qczogQWRk
ZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0aW9uLiAgSXQn
cyBhIGJpbmRpbmdzIGdlbmVyYXRpb24gcHJvYmxlbSBJJ3ZlIHVuc3VjY2Vzc2Z1bGx5IGxvb2tl
ZCBpbnRvIGJlZm9yZS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanM6CisgICAgICAgICh0ZXN0KToKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVk
RW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55Lmpz
OiBBZGRlZC4KKyAgICAgICAgKHRlc3RUaW1lUmVzb2x1dGlvbik6CisgICAgICAgICh0aW1lQnlV
c2VyVGltaW5nKToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29y
a2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9u
LXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgZXhpc3RpbmcgdGVzdCBm
YWlsdXJlIG5lZWRzIG1vcmUgaW52ZXN0aWdhdGlvbi4gIFdlIGFyZSBwcm9iYWJseSBjbG9zZSB0
byBhIGZpeCBhZnRlciB0aGlzIHBhdGNoLgorCiAyMDIxLTA1LTE4ICBLZWl0aCBNaWxsZXIgIDxr
ZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFRlbXBvcmFyaWx5IHJldmVydCByMjc2
NTkyIGFzIGl0IGJyZWFrcyBzb21lIG5hdGl2ZSBhcHBzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA2
ZTA3ZTk3ZjZhNjk2NjkxMjQwZjY1Y2FmNjdlNDM2OWNmZGMwYzljLi40Nzg5NWRmZGRhZGQ3ZWE1
MDA3OTQxY2E1ZjQxN2E2ZTc0NTRjNDE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTkzOSw2ICs5
MzksNyBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9j
cm9zc29yaWdpbi1zYW5kd2ljaC1uby1UQU8uc3ViLgogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY29ycy1wcmVmbGlnaHQuYW55Lmh0bWwgWyBGYWlsdXJl
IFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcv
Y3Jvc3NvcmlnaW4tc2FuZHdpY2gtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2UtdGltaW5nL2Nyb3Nzb3JpZ2luLXNh
bmR3aWNoLXBhcnRpYWwtVEFPLnN1Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25f
c3RhcnRfbm9uX3plcm8uaHR0cHMuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXN0cmVhbXMvTWVkaWFTdHJlYW0tZGVm
YXVsdC1mZWF0dXJlLXBvbGljeS5odHRwcy5odG1sIFsgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJy
IF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXJlY29yZC9w
YXNzdGhyb3VnaC9NZWRpYVJlY29yZGVyLXBhc3N0aHJvdWdoLmh0dHBzLmh0bWwgWyBGYWlsdXJl
IFRpbWVvdXQgUGFzcyBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL01FVEEueW1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnlt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iZmIwZTBmMWY2N2E5YzZhYTJlN2U5MjFiMDllODVmOGQ5NzBiMjkwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbApAQCAtMCwwICsxLDUgQEAKK3NwZWM6IGh0
dHBzOi8vdzNjLmdpdGh1Yi5pby9uYXZpZ2F0aW9uLXRpbWluZy8KK3N1Z2dlc3RlZF9yZXZpZXdl
cnM6CisgIC0gcGxlaGVnYXIKKyAgLSBpZ3JpZ29yaWsKKyAgLSB5b2F2d2Vpc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5iMjhjMTBjZTM2YzNjNzQ0ODQ4OTdlNWQyNGRhZmY5MTczOTVlYjU2Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgaW1hZ2UgZG9j
dW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0
IGRvbUludGVyYWN0aXZlIG9uIGltYWdlIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9t
X2ludGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9p
bWFnZV9kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2NzQyZjBlZmY2ZDA3YzdjMDY5NGIwNjZk
ZmEwMTdmMGQxMDQyYmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9p
bWFnZV9kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAg
ICA8dGl0bGU+VGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudC48L3RpdGxlPgor
ICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3
dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczov
L2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVh
ZC1tZWRpYSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAg
Y29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1hZ2UgZG9jdW1l
bnQiKTsKKyAgICAgICAgZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25z
dCB0aW1pbmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGlt
aW5nLmRvbUludGVyYWN0aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJh
Y3RpdmUgdG8gYmUgcG9zaXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAg
ICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRp
b248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBpbWFnZSBkb2N1bWVudCBoYXMg
cG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0i
Li4vaW1hZ2VzL3NtaWxleS5wbmciIG9ubG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zN2Y2NzJkYjgyNzM0OTk2YmFhNmQ0MTJkNjE5Y2VmN2JkYjgxZWNjCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0cyB0aGF0IGEgbWVkaWEgZG9j
dW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLgorCisKKworUEFTUyBUZXN0
IGRvbUludGVyYWN0aXZlIG9uIG1lZGlhIGRvY3VtZW50CisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9t
X2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9t
ZWRpYV9kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0ZTQ1NzI1ZDgzNjA1YjUxOWNlNzRlYThm
ZjQ1NjFkY2QzZDc1OTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9t
ZWRpYV9kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorICAgICAg
ICA8dGl0bGU+VGVzdCBkb21JbnRlcmFjdGl2ZSBvbiBtZWRpYSBkb2N1bWVudC48L3RpdGxlPgor
ICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3
dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczov
L2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10aGUtd2ViLmh0bWwjcmVh
ZC1tZWRpYSIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAg
Y29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1l
bnQiKTsKKyAgICAgICAgZnVuY3Rpb24gZnJhbWVMb2FkZWQoKSB7CisgICAgICAgICAgICBjb25z
dCB0aW1pbmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKS5jb250ZW50V2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZzsKKyAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGlt
aW5nLmRvbUludGVyYWN0aXZlLCAwLAorICAgICAgICAgICAgICAgICJFeHBlY3QgZG9tSW50ZXJh
Y3RpdmUgdG8gYmUgcG9zaXRpdmUgdmFsdWUuIik7CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAg
ICAgICAgfQorICAgIDwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRp
b248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBkb2N1bWVudCBoYXMg
cG9zaXRpdmUtdmFsdWUgZG9tSW50ZXJhY3RpdmUuPC9wPgorICAgICAgICA8aWZyYW1lIHNyYz0i
Li4vbWVkaWEvQTQubXA0IiBvbmxvYWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZyYW1lPgorICAgIDwv
Ym9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL2lkbGhhcm5lc3Mud2luZG93LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qcwppbmRl
eCA4Y2MzNTQ2YjNjMjdhOWQ5M2VlNTYyMTU4NGQ4M2Q1NmEzMDg1MTNjLi43MmNmMGMzYTNkM2M4
Y2I3NzU0MTYyNWEwNTU0ZDg0NjRkN2MxMTJiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mu
d2luZG93LmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvaWRsaGFybmVzcy53aW5kb3cuanMKQEAgLTEsMjEgKzEsMjAg
QEAKIC8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcwogLy8gTUVUQTog
c2NyaXB0PS9yZXNvdXJjZXMvaWRsaGFybmVzcy5qcworLy8gTUVUQTogdGltZW91dD1sb25nCiAK
ICd1c2Ugc3RyaWN0JzsKIAogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1p
bmcvCiAKIGlkbF90ZXN0KAotICBbJ25hdmlnYXRpb24tdGltaW5nJ10sCi0gIFsncmVzb3VyY2Ut
dGltaW5nJywgJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJywgJ2hyLXRpbWUnLCAnZG9tJ10sCi0gIGlk
bF9hcnJheSA9PiB7Ci0gICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsKKyAgWyduYXZpZ2F0aW9u
LXRpbWluZycsICdoci10aW1lJ10sCisgIFsncmVzb3VyY2UtdGltaW5nJywgJ3BlcmZvcm1hbmNl
LXRpbWVsaW5lJywgJ2RvbScsICdodG1sJ10sCisgIGlkbEFycmF5ID0+IHsKKyAgICBpZGxBcnJh
eS5hZGRfb2JqZWN0cyh7CiAgICAgICBQZXJmb3JtYW5jZTogWydwZXJmb3JtYW5jZSddLAogICAg
ICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOiBbJ3BlcmZvcm1hbmNlLm5hdmlnYXRpb24nXSwKICAg
ICAgIFBlcmZvcm1hbmNlVGltaW5nOiBbJ3BlcmZvcm1hbmNlLnRpbWluZyddLAotICAgICAgUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiBbCi0gICAgICAgICdwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0nCi0gICAgICBdCisgICAgICBQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmc6IFsncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdJ10KICAgICB9KTsKICAgfQogKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0
dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19l
eGlzdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIyM2I3NjA1ZDkyMmRhMzg3MmFiNTZkY2Zl
YWM1ODNjMmVlNDJiMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0
ZXNfZXhpc3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY2FuIG9ic2VydmUgbmF2
IHRpbWluZyAyIGluc3RhbmNlIGFuZCB0aGF0IHRoZSBleHBlY3RlZCBhdHRyaWJ1dGVzIGluIG5h
diB0aW1pbmcgMiBpbnN0YW5jZSBleGlzdCAoYnV0IGRvZXMgbm90IHZhbGlkYXRlIHRoYXQgdGhl
IHZhbHVlcyBhcmUgY29ycmVjdCkuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRp
bWluZyBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlLiBhc3NlcnRfdHJ1ZTogRXhwZWN0ZWQgYXR0cmli
dXRlOiBkZWNvZGVkQm9keVNpemUuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNjA0OGUwNjFiYTA1N2NkOTcxYjA4
ZTAzMmJlNzE3ZjBhZDA0ZDBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0
cmlidXRlc19leGlzdC5odG1sCkBAIC0wLDAgKzEsNjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAg
PHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVs
PSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+
CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2
aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwv
aDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU9ic2Vy
dmVyIGNhbiBvYnNlcnZlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhhdCB0aGUgZXhwZWN0
ZWQgYXR0cmlidXRlcyBpbiBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3QgKGJ1dCBkb2VzIG5v
dCB2YWxpZGF0ZSB0aGF0IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLjwvcD4KKworICAgICAgICA8
c2NyaXB0PgorICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAg
ICAnY29ubmVjdEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0JywKKyAgICAgICAgICAg
ICdkZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAg
ICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRM
b2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAg
ICAgICAnZG9tYWluTG9va3VwRW5kJywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcs
CisgICAgICAgICAgICAnZHVyYXRpb24nLAorICAgICAgICAgICAgJ2VuY29kZWRCb2R5U2l6ZScs
CisgICAgICAgICAgICAnZW50cnlUeXBlJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAg
ICAgICAgICAgICdpbml0aWF0b3JUeXBlJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnLAor
ICAgICAgICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICduYW1lJywKKyAgICAg
ICAgICAgICduZXh0SG9wUHJvdG9jb2wnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAor
ICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywK
KyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywK
KyAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0
aW9uU3RhcnQnLAorICAgICAgICAgICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlw
ZScsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2
ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworICAgICAg
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICB0LnN0ZXBfZnVuYyhmdW5j
dGlvbiAoZW50cnlMaXN0KSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBlbnRyaWVzID0gZW50
cnlMaXN0LmdldEVudHJpZXMoKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyaWVzLmxlbmd0aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUaGVyZSBzaG91bGQg
YmUgb25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UuIik7CisgICAgICAgICAgICAg
ICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBp
KyspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKG5hdlRpbWluZzJBdHRy
aWJ1dGVzW2ldIGluIGVudHJpZXNbMF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4
cGVjdGVkIGF0dHJpYnV0ZTogIiArIG5hdlRpbWluZzJBdHRyaWJ1dGVzW2ldICsgIi4iKTsKKyAg
ICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25u
ZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBl
czogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2aWdhdGlv
biB0aW1pbmcgZW50cmllcyBhcmUgb2JzZXJ2YWJsZS4iKTsKKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRl
c192YWx1ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI0OTlmOGFlZGRjOWJmMzZlM2ViNTFjYjY4YjY5Nzc4
ODgyMGIwMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3Zh
bHVlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRl
c3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0
aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3Ro
ZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1ZXMuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0
aW9uIHRpbWluZyBpbnN0YW5jZSdzIHZhbHVlIGlzIHJlYXNvbmFibGUuIGFzc2VydF90cnVlOiBF
eHBlY3RlZCB0cmFuc2ZlclNpemUgdG8gYmUgZ3JlYXRlciB0aGFuIGVuY29kZWRCb2R5U2l6ZSBp
biB1bmNhY2hlZCBuYXZpZ2F0aW9uLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OTgwOWU0MWRkZDdmNjhiMWQz
ZmE2OTc5Y2EwZDZmYjE1MzhhNGU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
YXR0cmlidXRlc192YWx1ZXMuaHRtbApAQCAtMCwwICsxLDEzNyBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAg
ICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgorICAgICAgICA8bGlu
ayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3dy5nb29nbGUuY29t
LyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9U
Ui9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIi8+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1
Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVz
Y3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZh
bHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1dGVz
IGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2YWx1
ZXMuPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIC8vIEhvc3QgbmFtZXMgYW5kIHBv
cnRzIG1heSBiZSBjb25maWd1cmVkIGF0IHRlc3QgZXhlY3V0aW9uIHRpbWUuIFRoZQorICAgICAg
ICAvLyB3ZWItcGxhdGZvcm0tdGVzdHMgc2VydmVyIG9mZmVycyB0d28gbWVjaGFuaXNtcyBmb3Ig
cmV0cmlldmluZyB0aGVzZQorICAgICAgICAvLyB2YWx1ZXMgZHluYW1pY2FsbHk6IGRpcmVjdCB0
ZXh0IHN1YnN0aXR1dGlvbiBhbmQgdGhlIGBnZXQtaG9zdC1pbmZvYAorICAgICAgICAvLyBzY3Jp
cHQuIFRoZSBmb3JtZXIgaXMgaW5hcHByb3ByYXRlIGZvciB0aGlzIHRlc3QgYmVjYXVzZSBpdAor
ICAgICAgICAvLyBpbmZsdWVuY2VzIHRoZSBzaXplIG9mIHRoZSBkb2N1bWVudCwgYW5kIHRoaXMg
dGVzdCBpbmNsdWRlcyBzdGF0aWMKKyAgICAgICAgLy8gYXNzZXJ0aW9ucyBmb3IgdGhhdCB2YWx1
ZS4KKyAgICAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKKyAgICAgICAgdmFy
IGV4cGVjdGVkVXJsID0gImh0dHA6Ly8iICsgaG9zdF9pbmZvLk9SSUdJTkFMX0hPU1QgKyAiOiIg
KworICAgICAgICAgICAgaG9zdF9pbmZvLkhUVFBfUE9SVCArCisgICAgICAgICAgICAiL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sIjsKKyAgICAgICAg
dmFyIG5hdlRpbWluZzJFdmVudE9yZGVyMSA9IFsKKyAgICAgICAgICAgICdzdGFydFRpbWUnLAor
ICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8ndW5sb2FkRXZlbnRT
dGFydCcsCisgICAgICAgICAgICAncmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgLy8ndW5sb2Fk
RXZlbnRFbmQnLAorICAgICAgICAgICAgJ2ZldGNoU3RhcnQnLAorICAgICAgICAgICAgJ2RvbWFp
bkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAg
ICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAvLydzZWN1cmVDb25uZWN0aW9uU3RhcnQn
LAorICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcs
CisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQn
LAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21Db250ZW50
TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5k
JywKKyAgICAgICAgICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3Rh
cnQnLAorICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICB2
YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIyID0gWworICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQn
LAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0
RW5kJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZmV0Y2hT
dGFydCcKKyAgICAgICAgXTsKKworICAgICAgICB2YXIgbmF2VGltaW5nMkV2ZW50T3JkZXIzID0g
WworICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnc2VjdXJlQ29ubmVj
dGlvblN0YXJ0JywKKyAgICAgICAgICAgICdjb25uZWN0RW5kJworICAgICAgICBdOworCisgICAg
ICAgIC8vIE5hdmlnYXRpb24gVGltaW5nIGF0dHJpYnV0ZXMgZm9yIGNvbXBhcmlzb24uCisgICAg
ICAgIHZhciBuYXZUaW1pbmcxRXZlbnRPcmRlciA9IFsKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0
JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAnZG9tYWlu
TG9va3VwRW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgJ2Nv
bm5lY3RFbmQnLAorICAgICAgICAgICAgJ3JlcXVlc3RTdGFydCcsCisgICAgICAgICAgICAncmVz
cG9uc2VTdGFydCcsCisgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAorICAgICAgICAgICAgJ2Rv
bUludGVyYWN0aXZlJywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcs
CisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdk
b21Db21wbGV0ZScsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAg
J2xvYWRFdmVudEVuZCcKKyAgICAgICAgXTsKKworICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1p
bmdFdmVudE9yZGVyKGV2ZW50T3JkZXIsIHRpbWluZ0VudHJ5KSB7CisgICAgICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGV2ZW50T3JkZXIubGVuZ3RoIC0gMTsgaSsrKSB7CisgICAgICAgICAg
ICAgICAgYXNzZXJ0X3RydWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPD0gdGltaW5nRW50
cnlbZXZlbnRPcmRlcltpICsgMV1dLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiAr
IGV2ZW50T3JkZXJbaV0gKyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltp
ICsgMV0gKyAiLiIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVu
dHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5n
ZXRFbnRyaWVzKCk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1sw
XS5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBl
Y3RlZCBlbnRyeVR5cGUgdG8gYmU6IG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5uYW1lLCBleHBlY3RlZFVybCk7CisgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5zdGFydFRpbWUsIDAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlOiAwLiIpOworICAgICAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZHVyYXRpb24sIGVudHJpZXNb
MF0ubG9hZEV2ZW50RW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIGR1cmF0
aW9uIHRvIGJlIGVxdWFsIHRvIGxvYWRFdmVudEVuZC4iKTsKKyAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmluaXRpYXRvclR5cGUsICJuYXZpZ2F0aW9uIiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBpbml0aWF0b3JUeXBlIHRvIGJlOiBuYXZp
Z2F0aW9uLiIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0u
bmV4dEhvcFByb3RvY29sLCAiaHR0cC8xLjEiKTsKKyAgICAgICAgICAgICAgICAgICAgLy8gVGhp
cyB0ZXN0IG1heSBmYWlsIHdoZW4gcmVzcG9uc2UgaXMgZnJvbSBjYWNoLiBEaXNhYmxlIG9yIGNs
ZWFuIGNhY2ggYmVmb3JlCisgICAgICAgICAgICAgICAgICAgIC8vIHJ1bm5pbmcgdGhpcyB0ZXN0
LgorICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShlbnRyaWVzWzBdLnRyYW5zZmVyU2l6
ZSA+IGVudHJpZXNbMF0uZW5jb2RlZEJvZHlTaXplLAorICAgICAgICAgICAgICAgICAgICAgICAg
IkV4cGVjdGVkIHRyYW5zZmVyU2l6ZSB0byBiZSBncmVhdGVyIHRoYW4gZW5jb2RlZEJvZHlTaXpl
IGluIHVuY2FjaGVkIG5hdmlnYXRpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZW50cmllc1swXS5lbmNvZGVkQm9keVNpemUsIDU5NTUpOworICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZGVjb2RlZEJvZHlTaXplLCA1OTU1KTsKKyAg
ICAgICAgICAgICAgICAgICAgdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZU
aW1pbmcyRXZlbnRPcmRlcjEpOworICAgICAgICAgICAgICAgICAgICAvLyBWZXJpZnkgaWYgdGhl
IHJlcG9ydGVkIHRpbWluZyBpcyBub3QgdGhhdCBkaWZmZXJlbnQKKyAgICAgICAgICAgICAgICAg
ICAgLy8gZnJvbSB3aGF0IGlzIHJlcG9ydGVkIGJ5IE5hdmlnYXRpb24gVGltaW5nIDEuCisgICAg
ICAgICAgICAgICAgICAgIG5hdlRpbWluZzFFdmVudE9yZGVyLmZvckVhY2goCisgICAgICAgICAg
ICAgICAgICAgICAgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlm
ICh3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nW2V2ZW50XSAtCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgPiAwKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cmllc1sw
XVtldmVudF0sIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiAr
IGV2ZW50ICsgIiB0byBiZSBncmVhdGVyIHRoYW4gMCIpOworICAgICAgICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgLy8gV2hl
biB1bmxvYWRFdmVudCBoYXBwZW5zCisgICAgICAgICAgICAgICAgICAgIGlmIChlbnRyaWVzWzBd
WyJ1bmxvYWRFdmVudFN0YXJ0Il0gIT0gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgdmVy
aWZ5VGltaW5nRXZlbnRPcmRlcihlbnRyaWVzWzBdLCBuYXZUaW1pbmcyRXZlbnRPcmRlcjIpOwor
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gYSBzZWN1
cmUgdHJhbnNwb3J0IGlzIHVzZWQKKyAgICAgICAgICAgICAgICAgICAgaWYgKGVudHJpZXNbMF1b
InNlY3VyZUNvbm5lY3Rpb25TdGFydCJdICE9IDApIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIz
KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5k
aXNjb25uZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAg
ICAgIH0pCisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiUGVyZm9ybWFuY2UgbmF2
aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxlLiIpOworICAgICAg
ICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9kb2N1bWVudF9vcGVuLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50
X29wZW4tZXhwZWN0ZWQudHh0CmluZGV4IDQ5OTk5ZDg5NDExMDQ5NzliMzI2YTdmZmE2Yjg5MDE4
NWE4ZmE2OGUuLjA1ZjIzMGI5ZmIwZmFiOGQ4ZDdjYjU4NWVjOTg1YzIwODExMTlmZDcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAot
Q09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNbaV1dJykKIERlc2NyaXB0aW9u
CiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm5hdmlnYXRpb24iKSByZW1haW5zIGNvbnN0YW50IHdoZW4gYSBkb2N1bWVudCBpcyByZXBs
YWNlZCB1c2luZyBkb2N1bWVudC5vcGVuLgpAQCAtOSw2ICs4LDUgQEAgVGhlIHRlc3QgcGFzc2Vz
IGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5h
dmlnYXRpb24KIAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW25hdlRpbWlu
ZzJBdHRyaWJ1dGVzW2ldXScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfZG9jdW1lbnRfb3Blbi5odG1sCmluZGV4IGJjMDZlZDU4NDBhNzU1NWQxZTJhNjI1ODBjZjVh
OTg4Y2E1OGE3MTguLmFhMTA5NzI0OGRkMTMzZTVlNjFiMTdjNmY5MmYxNDM3NTc5YjU4OGMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKQEAgLTgsNiArOCw4IEBACiAgICAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
ICAgICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0
cnVlIH0pOworCiAgICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKICAg
ICAgICAgICAgICAgICAgICdjb25uZWN0RW5kJywKICAgICAgICAgICAgICAgICAgICdjb25uZWN0
U3RhcnQnLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0ZWQudHh0
CmluZGV4IGE5N2M4NmJjYjRmNjdmNTI0YjFiY2UzODk4Y2U1ZWQzMDc0NzhjYmUuLjM1YTU2YTNm
ZTU3NzI5ODFiZGMyYmM1YWNlMDc5M2MxMDMxMjVmZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9k
b2N1bWVudF9yZXBsYWNlZC1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTEgQEAKIGZyYW1lICI8
IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJh
bWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIGZyYW1lICI8IS0tZnJhbWUxLS0+
IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncG50MS50eXBlJykKIERl
c2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBhIFBlcmZvcm1hbmNlTmF2aWdh
dGluZ1RpbWluZyBjb3JyZXNwb25kaW5nIHRvIGEgZGV0YWNoZWQgZG9jdW1lbnQgY2FuJ3QgYWNj
ZXNzIGEgZGlmZmVyZW50IGRvY3VtZW50J3Mgc3RhdGUuCiAKIAogCi1IYXJuZXNzIEVycm9yIChG
QUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ3BudDEudHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwKaW5kZXggYjkxMGY0NTNkMTI5NTFkMDFj
YjU4NDg5OTc2NmI2NGZlMDhlODM2Yy4uNTk3MmYyMGU5YmQ3ZmZkZjI3ZDMyYjViMzBiNjM5MTNj
ZWVlZWQwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9yZXBsYWNlZC5odG1sCkBAIC04LDYgKzgs
OCBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2lu
Z2xlX3Rlc3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgIHZhciBuYXZpZ2F0aW9uX2ZyYW1lOwog
ICAgICAgICAgICAgdmFyIHBudDE7CiAgICAgICAgICAgICB2YXIgc3RlcCA9IDE7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CmluZGV4IGI1ZjhiZWVmMzlmNjA5OTUy
MzI0M2VjZTE5OWJkZGZiZDAxZjE2OTEuLjk3NzNkZGE1OWIzZmNhNmI4OGYzNDY4OGRjNjg4MTRi
MDc3ZDU3OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhwZWN0ZWQudHh0CkBA
IC00LDUgKzQsNSBAQCBEZXNjcmlwdGlvbgogVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgpJ3MgZGVmYXVsdCB2YWx1ZSBpcyBuYXZpZ2F0
ZQogCiAKLUZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ3BudC50eXBlJykKK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBX
UFQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9t
X3RoZV9zdGFydC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3Np
YmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dAppbmRleCA2YzMxYWZkMGIyOWIxMGU5Mzg4
YjRmYzIxOTczY2UyYzZlMTRjYTIwLi4zNzdjZTk4NjgwNmE0OWYyODFjNjFlYzE2YjBmMTEyMWNi
MWRkZTMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zy
b21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9h
Y2Nlc3NpYmxlX2Zyb21fdGhlX3N0YXJ0LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAot
RkFJTCBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVh
c29uYWJsZSB2YWx1ZXMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFT
UyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgaW5zdGFuY2UgZXhpc3RzIHdpdGggcmVhc29u
YWJsZSB2YWx1ZXMuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vz
c2libGVfZnJvbV90aGVfc3RhcnQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vz
c2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAppbmRleCA3NzkwMDgxZDAxYzdiODI2MmM1MzRkMzk1
MDg1NjkwZWJlMmRmZmU4Li5hZDUwYzZhODdkMmI0NjYyOTdkYzBmMmViY2VmOTJhMzc2NTViMDEz
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NpYmxlX2Zyb21fdGhl
X3N0YXJ0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9t
X3RoZV9zdGFydC5odG1sCkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIHRlc3QoZnVuY3Rpb24o
KSB7CiAgIHZhciBuYXZpZ2F0aW9uVGltaW5nMiA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlUeXBlKCduYXZpZ2F0aW9uJylbMF07Ci0gIGFzc2VydF90cnVlKG5hdmlnYXRpb25UaW1p
bmcyICE9PSB1bmRlZmluZWQpOworICBhc3NlcnRfbm90X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5n
MiwgdW5kZWZpbmVkKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5lbnRyeVR5
cGUsICJuYXZpZ2F0aW9uIik7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvblRpbWluZzIuc3Rh
cnRUaW1lLCAwKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5pbml0aWF0b3JU
eXBlLCAibmF2aWdhdGlvbiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2Vf
YWNjZXNzb3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29y
cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTE4NDg2MjkxNTAxYjVjYzRmMTcxMDMwMTY1ZDk2
ZTA0YzdhZmVjYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2Fj
Y2Vzc29ycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlz
IHRlc3QgdmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3Nl
ZCBieSB0aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRF
bnRyaWVzQnlOYW1lKCJkb2N1bWVudCIpCisKKworUEFTUyBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9u
IHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFj
Y2Vzc29ycy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3Jz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5hOGZiZmI0YTMwNjI1NDI0ZThlODQyZWIyYjgwNjJkYTRlM2U4OTMwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKQEAgLTAsMCArMSw3
OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEg
Y2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8
L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0i
aHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVm
PSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2Nv
bW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxi
b2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3Qg
dmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0
aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVz
QnlOYW1lKCJkb2N1bWVudCIpPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBo
b3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJo
dHRwOi8vIiArIGhvc3RfaW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhv
c3RfaW5mby5IVFRQX1BPUlQgKyAiL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NvcnMuaHRtbCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsK
KyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAor
ICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUn
LAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZl
JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxv
b2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAgICAnZW5jb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNo
U3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgJ2xvYWRF
dmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25h
bWUnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0
RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0
U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdyZXNwb25z
ZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAg
ICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAndW5s
b2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMSA9IHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMiA9IHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGluc3RhbmNlMyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwp
WzBdOworCisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlz
IG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRV
cmwpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGlt
aW5nIGluc3RhbmNlLiIpOworCisgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwg
aW5zdGFuY2UyW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJB
dHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGluc3RhbmNlMVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGluc3RhbmNlM1tuYXZU
aW1pbmcyQXR0cmlidXRlc1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAg
IH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxl
IHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdh
dGVfaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFtZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTdmMzU2ZGYxMTZjOTI1NzI2MjkwODNlMDkxMDgwNDZj
NzkxMjc5NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFt
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBuYXZpZ2F0aW9uLm5hbWUg
dXBkYXRlZCB3aGVuIGlmcmFtZSBVUkwgY2hhbmdlcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lmcmFt
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjBjMTQ0YmRhNDU0YmU4NjE4MGJiZmJhNTAzYzRkMWRhOTQ1NzMz
ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRt
bApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorICA8aGVhZD4KKyAg
ICA8bWV0YSBjaGFyc2V0PXV0Zi04PgorICAgIDx0aXRsZT5QZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcubmFtZSB1cGRhdGVkIGluIGlmcmFtZXM8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJv
ZHk+CisgICAgPHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbiAodCkgeworICB2
YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQoaWZyKTsKKworICBpZnIuc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9n
cmVlbi5odG1sIjsKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9u
bG9hZCA9IGZ1bmN0aW9uKCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRv
dy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAi
T25seSBvbmUgbmF2aWdhdGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlm
ci5jb250ZW50V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KVswXS5uYW1lLCBpZnIuY29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdh
dGlvbiBuYW1lIG1hdGNoZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3Ry
dWUoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLm5hbWUuZW5kc1dpdGgoImJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpLCAibmF2aWdh
dGlvbiBuYW1lIGlzIGJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOwor
ICAgIH0KKyAgfSk7CisKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgc2V0VGlt
ZW91dChyZXNvbHZlLCAxMDApOyB9KTsKKyAgaWZyLnNyYyA9InJlc291cmNlcy9ibGFua19wYWdl
X3llbGxvdy5odG1sIjsKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBp
ZnIub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50
V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgs
IDEsICJPbmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVh
bHMoaWZyLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdh
dGlvbiIpWzBdLm5hbWUsIGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJu
YXZpZ2F0aW9uIG5hbWUgbWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3Nl
cnRfdHJ1ZShpZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF0ubmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpLCAi
bmF2aWdhdGlvbiBuYW1lIGlzIGJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKTsKKyAgICAgIHJlc29s
dmUoKTsKKyAgICB9CisgIH0pOworfSwgIm5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZy
YW1lIFVSTCBjaGFuZ2VzIik7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQtZXhwZWN0ZWQu
dHh0CmluZGV4IDRiMjBlYzZmOWIyMDhjNzNkODVhOTQ0ZDg5YTFiN2I4ZDg0MGVhOTAuLmVkYWE5
Mjg4YTlhZmI2ZTJjY2NhMWM0MzdkNWRhY2E1OWZmYWFmYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsx
LDcgQEAKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAndGltaW5nW3Byb3BlcnR5XScpCiBEZXNjcmlwdGlvbgogCiBUaGlz
IHRlc3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRl
ciBhbiBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS4KIAogCi1I
YXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQotCitQQVNTIE5hdmln
YXRpb24gVGltaW5nIDIgV1BUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRl
X3dpdGhpbl9kb2N1bWVudC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2Rv
Y3VtZW50Lmh0bWwKaW5kZXggZjM5Y2EwNTc2OTU1OTk5ZWNhOGEwODMzMWU1NWNjMjkyNTgxNmYz
Ni4uNzVlNmUxMTNiNmRiYTM2ODdkZjFjOGZkYmY5Yzk4M2E5ZmFlOGE2OSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50Lmh0bWwKQEAgLTEzLDYgKzEzLDggQEAK
ICAgICAgICAgPHA+VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGFsbCBvZiB0aGUgd2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSBhdHRyaWJ1dGVzIHJlbWFp
biB1bmNoYW5nZWQgYWZ0ZXIgYW4gaW4gZG9jdW1lbnQgbmF2aWdhdGlvbiAoVVJMIGZyYWdtZW50
IGNoYW5nZSkuPC9wPgogCiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNp
bmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAgICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0
ZXMgPSBbCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAogICAgICAgICAgICAgICAgICdj
b25uZWN0U3RhcnQnLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X2JhY2tmb3J3YXJkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQKaW5kZXggOWUyY2FhNjIwZjVhZGViOWRhZGE0Yzgy
ZGQxZDY4MzdjY2E3ZjEyNS4uMmMwNDYzMGJhZTE1NmRhNzllMDUwMTdmM2ViYTU5YmNmYzlhN2Fh
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX2JhY2tmb3J3YXJk
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2Zv
cndhcmQtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNyBAQAogZnJhbWUgIjwhLS1mcmFtZTEtLT4i
IC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQogZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKK2ZyYW1lICI8
IS0tZnJhbWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKK2ZyYW1lICI8IS0tZnJh
bWUxLS0+IiAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKIERlc2NyaXB0aW9uCiAKIFRoaXMg
dGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB3aXRoIGEgZm9yd2FyZCBhbmQgYmFjayBuYXZp
Z2F0aW9uLgpAQCAtMTMsNiArMTQsNSBAQCBUaGlzIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUg
Y2hlY2tzIHRvIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZQogCiAKIAot
SGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2ZyYW1lLnBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorUEFTUyBOYXZpZ2F0aW9u
IFRpbWluZyAyIFdQVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfYmFja2ZvcndhcmQuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNr
Zm9yd2FyZC5odG1sCmluZGV4IGM0YjU3NTgxMDY5MTEwM2RiNjljNjEwYjllYzY5NDI1MTEwZDc2
MzUuLmQwMDQ1NDE1Yjg5YzQ1ZWQ5YTFhODg5ZThiZTBhYmM4MTIzMDkyZDUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCkBAIC04LDYgKzgs
NyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2lu
Z2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90ZXN0KCkK
ICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVf
bmF2aWdhdGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzMGRjZTQ0ZDgzMTEwMzdjYjVjNzlj
ZTI5MTlmMzA2ZmI0MGE2YTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVzY3Jp
cHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRl
LgorCisKK1BBU1MgTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLgorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVmYWVmMWVj
MGJiYjg4ZTVmYjE1YzJhMzFmZDVmOTMzYzE2YTA5ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUuaHRtbApAQCAtMCwwICsxLDMyIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFy
c2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90
aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0
dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0i
aHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvI3NlYy1uYXZpZ2F0aW9uLXRp
bWluZy1pbnRlcmZhY2UiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVy
ID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9m
dW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXMoKVswXS50eXBlLCAibmF2aWdhdGUiLCAiRXhw
ZWN0ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAg
ICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAg
dC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAg
ICAgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24i
XX0pOworCisgICAgICAgICAgICB9LCAiTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIp
OworICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAg
PGgxPgorICAgICAgICAgICAgRGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD4KKyAgICAgICAg
ICAgIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBuYXZpZ2F0ZS48L3A+
CisKKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRp
b25fdHlwZV9yZWxvYWQtZXhwZWN0ZWQudHh0CmluZGV4IDcxYzQ3ZTViOGRmN2E1MWVlOGViZGU2
OThhZTg1NmVhNjcyM2E1ODAuLmE0ZDZiZGE2ZDQ0OWYxYWUxZjZiYjU4ZGM1ODI2NWUzNmVhYWFl
N2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQtZXhw
ZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcudHlwZScp
CiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZSBvZiB3aW5kb3cu
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLih0eXBlL3VubG9h
ZEV2ZW50RW5kL3VubG9hZEV2ZW50U3RhcnQpIHdpdGggYSByZWxvYWRlZCBuYXZpZ2F0aW9uLgpA
QCAtMTAsNiArOSw1IEBAIFRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpLnVubG9hZEV2ZW50U3RhcnQgPiAwIGFmdGVyCiBUaGUgd2luZG93LnBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS51bmxvYWRFdmVudEVuZCA+IDAg
YWZ0ZXIgcmVsb2FkCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduZXdOYXZUaW1pbmcu
dHlwZScpCi0KK1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
bmF2aWdhdGlvbl90eXBlX3JlbG9hZC5odG1sCmluZGV4IDc0Yjg1YzlkYmI1ZTAzMjY2YzBiYTAx
NDVhZDQ1ZDY3YTAyNWZkMGMuLjBmMDNmMDdjNTdjOWMxYWMzYzg2ODc0MWEyM2Q5ZjJlNmViYjJi
MmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwKQEAgLTgs
NiArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAo
eyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgdmFyIHJlbG9hZF9mcmFtZTsK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5h
bF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
Y2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmFkMzg5ODc2MWI4NzE1MGQwYTc2NWFiMzFjMmU2MTk3NmQ5MjE2MTUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdp
bmFsX29yaWdpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQmxvY2tlZCBhY2Nlc3Mg
dG8gZXh0ZXJuYWwgVVJMIGh0dHA6Ly93d3cubG9jYWxob3N0Ojg4MDAvY29tbW9uL3JlZGlyZWN0
LW9wdC1pbi5weT9sb2NhdGlvbj1odHRwOi8vbG9jYWxob3N0Ojg4MDAvbmF2aWdhdGlvbi10aW1p
bmcvcmVzb3VyY2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbAorRGVzY3JpcHRpb24KKworVGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cu
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3Rh
cnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBuYXZp
Z2F0aW9uIHdoZW4gdGhlIGZpbmFsIGRvY3VtZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5h
bCBvcmlnaW4uCisKKworCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwK
KworTk9UUlVOIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29y
aWdpbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkZWZhMjAyNTAwYTQ0OTcxNmVhYWI1ZDJkNzU2MTZhYzQ3
MzA1YTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94
c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0
Zi04IiAvPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8L3RpdGxlPgor
ICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0iaHR0cDovL3d3
dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwOi8v
d3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1vbi91dGls
cy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXR1cCh7IHNp
bmdsZV90ZXN0OiB0cnVlIH0pOworCisgICAgICAgICAgICBmdW5jdGlvbiBvbmxvYWRfdGVzdCgp
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY29uc3QgZnJhbWVfcGVyZm9ybWFuY2Ug
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5w
ZXJmb3JtYW5jZTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1h
bmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlLAorICAgICAgICAgICAg
ICAgICAgICAibmF2aWdhdGUiLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgbmF2aWdh
dGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJl
ZGlyZWN0Q291bnQsIDAsCisgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCByZWRpcmVjdENv
dW50IHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCwg
MCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4i
KTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lX3BlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdEVuZCwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgIkV4cGVjdGVkIHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7CisgICAgICAgICAgICAg
ICAgZG9uZSgpOworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVh
ZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+
VGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYW5kIHRoZQor
ICAgICAgICAgICB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdLnJlZGlyZWN0U3RhcnQvRW5kIHRpbWVzIGZvciBhIGNyb3NzLW9yaWdpbiBzZXJ2ZXIg
c2lkZSByZWRpcmVjdCBuYXZpZ2F0aW9uIHdoZW4gdGhlIGZpbmFsCisgICAgICAgICAgIGRvY3Vt
ZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBvcmlnaW5hbCBvcmlnaW4uPC9wPgorCisgICAgICAgIDxp
ZnJhbWUgaWQ9ImZyYW1lQ29udGV4dCIgc3JjPSIiIHN0eWxlPSJ3aWR0aDogMjUwcHg7IGhlaWdo
dDogMjUwcHg7Ij48L2lmcmFtZT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIC8vIGNv
bWJpbmUgdGhlIHBhZ2Ugb3JpZ2luIGFuZCByZWRpcmVjdCBvcmlnaW4gaW50byB0aGUgSUZSQU1F
J3Mgc3JjIFVSTAorICAgICAgICAgICAgY29uc3QgZGVzdFVybF9maXJzdCA9IG1ha2VfYWJzb2x1
dGVfdXJsKHtzdWJkb21haW46ICJ3d3ciLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcGF0aDogIi9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5IiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXJ5OiAibG9jYXRpb249
IiArIG1ha2VfYWJzb2x1dGVfdXJsKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAge3BhdGg6ICIvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3Vy
Y2VzL2JsYW5rX3BhZ2VfZ3JlZW4uaHRtbCJ9KQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBjb25zdCBkZXN0VXJsID0gbWFrZV9h
YnNvbHV0ZV91cmwoeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcGF0aDogIi9jb21tb24vcmVkaXJlY3QucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcXVlcnk6ICJsb2NhdGlvbj0iICsgZGVzdFVybF9maXJzdH0p
OworICAgICAgICAgICAgbGV0IGZyYW1lQ29udGV4dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJmcmFtZUNvbnRleHQiKTsKKyAgICAgICAgICAgIGZyYW1lQ29udGV4dC5vbmxvYWQgPSBvbmxv
YWRfdGVzdDsKKyAgICAgICAgICAgIGZyYW1lQ29udGV4dC5zcmMgPSBkZXN0VXJsOworICAgICAg
ICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhw
ZWN0ZWQudHh0CmluZGV4IDcxZWQ0N2ZlMzVhMTQyZTQwZmY0NzkwNWY3Nzg4YTFkYzVhY2EwZmIu
LjRlNzlhN2ZkYmEwODYxNmY5NDUwOGRiZmZlODJjNTY5MDRjNGJiZDMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlh
bF9vcHRfaW4tZXhwZWN0ZWQudHh0CkBAIC02LDYgKzYsNSBAQCBUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZwogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlv
biBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIp
WzBdLnR5cGUnKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94
c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFp
bl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwKaW5kZXggYzBkZDI0OTU0NWE2NDBlYzBjZGQ3
NTliMjExNGFiNzI1YTYwOTAzOS4uMGZlYjNiZmE3ZjFjMDEzOGU0YzlmOWUzZmQ0ZDM4M2U1ZWY2
NTg1ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9w
YXJ0aWFsX29wdF9pbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hz
ZXJ2ZXJfcGFydGlhbF9vcHRfaW4uaHRtbApAQCAtOSwxMyArOSw3IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9jb21tb24vdXRpbHMuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2Ny
aXB0PgotCi0gICAgICAgICAgICBmdW5jdGlvbiB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGV2ZW50
T3JkZXIsIHRpbWluZ0VudHJ5KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkg
PCBldmVudE9yZGVyLmxlbmd0aCAtIDE7IGkrKykgewotICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfdHJ1ZSh0aW1pbmdFbnRyeVtldmVudE9yZGVyW2ldXSA8IHRpbWluZ0VudHJ5W2V2ZW50T3Jk
ZXJbaSArIDFdXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAiICsgZXZlbnRP
cmRlcltpXSArICIgdG8gYmUgbm8gZ3JlYXRlciB0aGFuICIgKyBldmVudE9yZGVyW2kgKyAxXSAr
ICIuIik7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQorICAgICAgICAgICAgc2V0
dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2Fk
X3Rlc3QoKQogICAgICAgICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfbm9uZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5lNzFhZTk0MDQxYWFhYzczOTQzZDIxYzJiNDIzNThmNzk3OWE0
ZDJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFz
IHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
LnJlZGlyZWN0U3RhcnQgYW5kIHJlZGlyZWN0RW5kIGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJl
Y3RlZCBuYXZpZ2F0aW9uLgorCisKK1BBU1MgTmFpdmF0aW9uIHdpdGhvdXQgcmVkaXJlY3RzLgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTc0MzdlMWE1ZWYyYjYxYWU2
NTc2MmJmYTM1MTYzMGViNDcxNGNkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X25vbmUuaHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAg
ICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsg
cmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8i
IC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIv
bmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgor
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlv
bjwvaDE+CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCB0aGUgdmFsdWUgb2Yg
dGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0u
cmVkaXJlY3RDb3VudCBhdHRyaWJ1dGUsIGFzIHdlbGwgYXMgdGhlIHdpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydCBhbmQgcmVk
aXJlY3RFbmQgYXR0cmlidXRlcyBvbiBhIG5vbi1yZWRpcmVjdGVkIG5hdmlnYXRpb24uPC9wPgor
CisgICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgewor
ICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAg
ICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAg
ICAgICAgICAgICB2YXIgbmF2VGltaW5nID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRp
bWluZy5yZWRpcmVjdENvdW50LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RDb3VudCB0byBiZSAwLiIp
OworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdFN0
YXJ0LCAwLCAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFydCB0byBiZSAwLiIpOworICAgICAgICAgICAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKG5hdlRpbWluZy5yZWRpcmVjdEVuZCwgMCwgIkV4cGVjdGVk
IHJlZGlyZWN0RW5kIHRvIGJlIDAuIik7CisgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRp
c2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgICAg
ICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgIH0sICJOYWl2YXRpb24gd2l0aG91
dCByZWRpcmVjdHMuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2Vy
dmVyLWV4cGVjdGVkLnR4dAppbmRleCAwNGEyNDhjZGU1MDFkMjY4OTRiMjIwN2ZlOWFmNWY1NTBk
MjBjYmM3Li40ZmIxNWNhZmNlN2U2MTcyZWQyZWY5YjlmMTNjODQ3MWY1OTYzZTk2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsOSBA
QAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2VudHJ5LnR5cGUnKQorQ09OU09MRSBNRVNTQUdFOiBF
cnJvcjogYXNzZXJ0X3RydWU6IEV4cGVjdGVkIHN0YXJ0VGltZSB0byBiZSBubyBncmVhdGVyIHRo
YW4gcmVkaXJlY3RTdGFydC4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIERlc2NyaXB0aW9uCiAK
IFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNl
LnJlZGlyZWN0Q291bnQgYW5kIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0
U3RhcnQvRW5kIHRpbWVzIGZvciBhIHNhbWUtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5h
dmlnYXRpb24uCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZW50
cnkudHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgRXJyb3I6IGFzc2VydF90
cnVlOiBFeHBlY3RlZCBzdGFydFRpbWUgdG8gYmUgbm8gZ3JlYXRlciB0aGFuIHJlZGlyZWN0U3Rh
cnQuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3JlZGlyZWN0X3NlcnZlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0
bWwKaW5kZXggMWQ3ZjZjOTI4Y2U2M2M5NGVkYzE0OTFkMjg4M2M4NzMzMWUzODcyMi4uOWVjMjk5
MmJlZjU4ZWM2ZTAzMDRmYjE1Mjg4MTQwNTkwNDFmMzE0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3Rfc2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
c2VydmVyLmh0bWwKQEAgLTksNiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KIAogICAgICAgICA8c2NyaXB0Pgor
ICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAg
ZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkg
ewogICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZlbnRPcmRlci5sZW5ndGgg
LSAxOyBpKyspIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50
eHQKaW5kZXggYTA5MTZjNDU4YzYyODJkMzFkNTM4NDhkNzlmNTM3NGNlZjQyNzVjNi4uZTgxY2Nl
ZGE5ZWJmM2VkNzU4MzAzNzI2MTU5OWZkOTkxOTNkMWM4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3Rf
cmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQKQEAgLTYsNiArNiw1IEBAIFRoaXMgdGVzdCB2
YWxpZGF0ZXMgdGhlIHZhbHVlcyBvZiB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eVR5cGUoIm5hdmlnCiAKIAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BlcmZvcm1hbmNl
TmFtZXNwYWNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS50eXBlJykKLQorRkFJ
TCBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVCBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3Jl
ZGlyZWN0X3hzZXJ2ZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRt
bAppbmRleCAwNmM5YjdmM2I2NzhhMjI3NTFhMWU4ZTFhNTcwMjgyMTZhYjIxODc5Li5kOGFjYzgw
NTRkODdhOTcyZDAwNTk2ZDk3OTQ4NTg0N2NmNmNmNGU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
eHNlcnZlci5odG1sCkBAIC05LDYgKzksNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3Jj
PSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ICAgIHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9u
IG9ubG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1
ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzY4YzUwMDQ2NWQ3N2I1
ZDFhOTgzYmM0NjZiZTFhZGU0N2ZlOTgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfdW5pcXVlX25hdl9pbnN0YW5jZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRGVz
Y3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IGVhY2ggd2luZG93IGhhcyBhIHVu
aXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuCisKKworRkFJTCBFYWNoIHdpbmRvdyBoYXMgYSB1
bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLiBhc3NlcnRfZXF1YWxzOiBPbmx5IG9uZSBuYXYg
dGltaW5nIGluc3RhbmNlIGV4aXN0cy4gZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQ3N2FiNmJhZTEwMWI3
MDRkMTI2N2U4YjAzNDE2MDExZjI4ZDY3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgi
IC8+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAg
ICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdv
b2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cu
dzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3Jl
cG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+
RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFj
aCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS48L3A+CisgICAgICAg
IDxpZnJhbWUgaWQ9ImZyYW1lQ29udGV4dCIgc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVl
bi5odG1sIiBzdHlsZT0iZGlzcGxheTpub25lOyI7PjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0
PgorCisgICAgICAgICAgICB2YXIgbmF2VGltaW5nMkF0dHJpYnV0ZXMgPSBbCisgICAgICAgICAg
ICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAg
ICAgICAgICAgICAgICdkZWNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdkb21Db21w
bGV0ZScsCisgICAgICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAg
ICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAg
ICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAor
ICAgICAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAgICAgJ2R1
cmF0aW9uJywKKyAgICAgICAgICAgICAgICAnZW5jb2RlZEJvZHlTaXplJywKKyAgICAgICAgICAg
ICAgICAnZW50cnlUeXBlJywKKyAgICAgICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAg
ICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRFbmQn
LAorICAgICAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ25h
bWUnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICAgICAn
cmVkaXJlY3RFbmQnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAg
ICAgICAgICAncmVxdWVzdFN0YXJ0JywKKyAgICAgICAgICAgICAgICAncmVzcG9uc2VFbmQnLAor
ICAgICAgICAgICAgICAgICdyZXNwb25zZVN0YXJ0JywKKyAgICAgICAgICAgICAgICAnc2VjdXJl
Q29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICAgICAndHJhbnNmZXJTaXplJywKKyAgICAg
ICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAgICAgJ3VubG9hZEV2ZW50RW5kJywKKyAg
ICAgICAgICAgICAgICAndW5sb2FkRXZlbnRTdGFydCcsCisgICAgICAgICAgICAgICAgJ3dvcmtl
clN0YXJ0JworICAgICAgICAgICAgXTsKKworICAgICAgICAgICAgZnVuY3Rpb24gbm90X3NhbWVf
aW5zdGFuY2UoaW5zdGFuY2UxLCBpbnN0YW5jZTIsIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAg
ICAgICBmb3IgKHZhciBpIGluIGF0dHJpYnV0ZXMpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYg
KGluc3RhbmNlMVthdHRyaWJ1dGVzW2ldXSAhPSBpbnN0YW5jZTJbYXR0cmlidXRlc1tpXV0pCisg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVy
ID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9m
dW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgs
IDEsICJPbmx5IG9uZSBuYXYgdGltaW5nIGluc3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1l
Q29udGV4dCIpLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2
aWdhdGlvbiIpLmxlbmd0aCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT25seSBv
bmUgbmF2IHRpbWluZyBpbnN0YW5jZSBleGlzdHMuIik7CisgICAgICAgICAgICAgICAgICAgICAg
ICB2YXIgbWFpbl9mcmFtZV9pbnN0YW5jZSA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaWZyYW1lX2luc3Rh
bmNlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpLmNvbnRlbnRXaW5k
b3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUobm90X3NhbWVfaW5zdGFuY2UobWFpbl9mcmFt
ZV9pbnN0YW5jZSwgaWZyYW1lX2luc3RhbmNlLCBuYXZUaW1pbmcyQXR0cmlidXRlcyksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIlR3byBuYXYgdGltaW5nIGluc3RhbmNlcyBhcmUgbm90
IHRoZSBzYW1lIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAg
ICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBvYnNl
cnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAgICAg
ICB9LCAiRWFjaCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4iKTsK
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMjBlYjFmNWZiMjQ0MjAwYzNiZjUwYTVlYWQ4ODZkNzg0Y2NhYjcy
OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw3IEBACitQZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbgorCitOYXZpZ2F0
aW9uIHdpbGwgcXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5LgorCisKK1BBU1MgbmF2aWdhdGlvbiBl
bnRyeSBpcyBvYnNlcnZhYmxlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0ZmIyYWZmOGVhYjc0ZTU5
YzVhODRmYzJiY2Y0ODdmMTIyZWM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdh
dGlvbi5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPG1ldGEgY2hhcnNl
dD11dGYtOD4KKzx0aXRsZT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2aWdhdGlvbjwvdGl0bGU+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8aDE+
UGVyZm9ybWFuY2VPYnNlcnZlcnM6IG5hdmlnYXRpb248L2gxPgorPHA+CitOYXZpZ2F0aW9uIHdp
bGwgPGEgaHJlZj0iaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLyNk
Zm4tcXVldWUtYS1wZXJmb3JtYW5jZWVudHJ5Ij5xdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnk8L2E+
LgorPC9wPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisgIGFzeW5jX3Rlc3QoZnVu
Y3Rpb24gKHQpIHsKKyAgICBmdW5jdGlvbiBjaGVja0VudHJ5KHBlcykgeworICAgICAgYXNzZXJ0
X2VxdWFscyhwZXMubGVuZ3RoLCAxLCAiT25seSBvbmUgbmF2aWdhdGlvbiB0aW1pbmcgZW50cnki
KTsKKyAgICAgIGFzc2VydF9lcXVhbHMocGVzWzBdLmVudHJ5VHlwZSwgIm5hdmlnYXRpb24iLCAi
ZW50cnlUeXBlIGlzIFwibmF2aWdhdGlvblwiIik7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlc1sw
XS5uYW1lLCB3aW5kb3cubG9jYXRpb24udG9TdHJpbmcoKSwgIm5hbWUgaXMgdGhlIGFkZHJlc3Mg
b2YgdGhlIGRvY3VtZW50Iik7CisgICAgfQorICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3Jt
YW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBv
YnMpIHsKKyAgICAgICAgICBjaGVja0VudHJ5KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAg
ICAgICAgIGNoZWNrRW50cnkoZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24i
KSk7CisgICAgICAgICAgY2hlY2tFbnRyeShlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSh3aW5k
b3cubG9jYXRpb24udG9TdHJpbmcoKSkpOworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3Qo
KTsKKyAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2
ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJuYXZpZ2F0aW9uIl19KTsKKyAgfSwgIm5hdmlnYXRp
b24gZW50cnkgaXMgb2JzZXJ2YWJsZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jl
c291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Jlc291cmNlcy93ZWJwZXJmdGVz
dGhhcm5lc3MuanMKaW5kZXggM2VmYjUyNzgzZjFlNWRjYjBkNDJhYWQxMWFlYzJhOWU0NzI1N2Qz
My4uMGMyN2MyZWUzMDdmNGI4MDk5YTZiNGM1YjA0OTdiYWY1MGI2MTEwNCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcmVzb3VyY2Vz
L3dlYnBlcmZ0ZXN0aGFybmVzcy5qcwpAQCAtNDIsMjUgKzQyLDI1IEBAIGZ1bmN0aW9uIHRlc3Rf
bmFtZXNwYWNlKGNoaWxkX25hbWUsIHNraXBfcm9vdCkKIHsKICAgICBpZiAoc2tpcF9yb290ID09
PSB1bmRlZmluZWQpIHsKICAgICAgICAgdmFyIG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UgaXMg
ZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRfdHJ1ZShwZXJm
b3JtYW5jZU5hbWVzcGFjZSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cpOworICAgICAgICB3
cF90ZXN0KGZ1bmN0aW9uICgpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3Bh
Y2UsIHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnKTsKICAgICB9CiAKICAgICBpZiAoY2hpbGRfbmFt
ZSAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgIHZhciBtc2cyID0gJ3dpbmRvdy5wZXJmb3JtYW5j
ZS4nICsgY2hpbGRfbmFtZSArICcgaXMgZGVmaW5lZCc7Ci0gICAgICAgIHdwX3Rlc3QoZnVuY3Rp
b24oKSB7IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW2NoaWxkX25hbWVdICE9PSB1
bmRlZmluZWQsIG1zZzIpOyB9LCBtc2cyKTsKKyAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsg
YXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0sIHVuZGVm
aW5lZCwgbXNnMik7IH0sIG1zZzIpOwogICAgIH0KIH0KIAogZnVuY3Rpb24gdGVzdF9hdHRyaWJ1
dGVfZXhpc3RzKHBhcmVudF9uYW1lLCBhdHRyaWJ1dGVfbmFtZSwgcHJvcGVydGllcykKIHsKICAg
ICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBh
dHRyaWJ1dGVfbmFtZSArICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7
IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVf
bmFtZV0gIT09IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKKyAgICB3cF90
ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtw
YXJlbnRfbmFtZV1bYXR0cmlidXRlX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJv
cGVydGllcyk7CiB9CiAKIGZ1bmN0aW9uIHRlc3RfZW51bShwYXJlbnRfbmFtZSwgZW51bV9uYW1l
LCB2YWx1ZSwgcHJvcGVydGllcykKIHsKICAgICB2YXIgbXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5j
ZS4nICsgcGFyZW50X25hbWUgKyAnLicgKyBlbnVtX25hbWUgKyAnIGlzIGRlZmluZWQuJzsKLSAg
ICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfdHJ1ZShwZXJmb3JtYW5jZU5hbWVzcGFjZVtw
YXJlbnRfbmFtZV1bZW51bV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2csIHByb3Bl
cnRpZXMpOworICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3RfZXF1YWxzKHBlcmZv
cm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB1bmRlZmluZWQsIG1zZyk7
IH0sIG1zZywgcHJvcGVydGllcyk7CiAKICAgICBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicg
KyBwYXJlbnRfbmFtZSArICcuJyArIGVudW1fbmFtZSArICcgPSAnICsgdmFsdWU7CiAgICAgd3Bf
dGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZVtwYXJl
bnRfbmFtZV1bZW51bV9uYW1lXSwgdmFsdWUsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CkBA
IC0xMjIsNSArMTIyLDUgQEAgZnVuY3Rpb24gdGVzdF9ncmVhdGVyX29yX2VxdWFscyh2YWx1ZSwg
Z3JlYXRlcl90aGFuLCBtc2csIHByb3BlcnRpZXMpCiAKIGZ1bmN0aW9uIHRlc3Rfbm90X2VxdWFs
cyh2YWx1ZSwgbm90ZXF1YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAgd3BfdGVzdChmdW5j
dGlvbigpIHsgYXNzZXJ0X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNnKTsgfSwgbXNnLCBw
cm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyh2
YWx1ZSwgbm90ZXF1YWxzLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mMTA4ZDJlODMzNjRhZDE0ZmRmMmEzMDRmN2Q1NDgyODc4MGQ5ZWEyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBUZXN0IHRoYXQgc2VjdXJlQ29u
bmVjdGlvblN0YXJ0IHZhbHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1c2VkCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
c2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNTJh
MjU5ZWNkNDI1YzIxMmQ4OWViMTE0OTgxZDRmMTJlODBmMzA1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9zZWN1cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCkBAIC0wLDAgKzEs
MTUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0
Zi04IiAvPgorPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIHNlY3VyZWNvbm5lY3Rpb25zdGFydCBy
ZXVzZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0PgorY29uc3QgdCA9IGFzeW5jX3Rlc3QoIlRlc3QgdGhhdCBzZWN1cmVD
b25uZWN0aW9uU3RhcnQgdmFsdWUgaXMgYXMgZXhwZWN0ZWQgd2hlbiByZXVzZWQiKTsKK3dpbmRv
dy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgdC5zdGVwX2Z1bmNfZG9uZShlID0+IHsKKyAg
YXNzZXJ0X2VxdWFscyhlLmRhdGEsICJQQVNTIik7Cit9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUg
c3JjPSJyZXNvdXJjZXMvc2VjdXJlLWNvbm5lY3Rpb24taW50ZXJpbS5odG1sIj4KKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9zZWN1cmVfY29ubmVjdGlvbl9zdGFydF9ub25femVyby5odHRwcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVj
dGVkLnR4dAppbmRleCA4MjIwNGQwNjUxNjY5NTdhYTkwMDk4OWNlYzdkYWNjYWNkZTM4NDg2Li41
MTgyNzU4M2FkMzdlMWUxMmMxYWJmNWYyMWM4Y2U2MjUwZTMxMDBiIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4
dApAQCAtMyw1ICszLDUgQEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0IHNlY3VyZUNvbm5l
Y3Rpb25TdGFydCBoYXMgYSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRlc3QgdGhhdCBzZWN1
cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ2VudHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitGQUlMIFRlc3QgdGhh
dCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dyZWF0ZXJfdGhhbjog
c2VjdXJlQ29ubmVjdGlvblN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0
ZXIgdGhhbiAwIGJ1dCBnb3QgMAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0
aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlw
ZS5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDU3OTc4YmYyNmRiMGU0MTNjYmYyZDRjMmYzODYzOWM0
MWEyNWZjNTAuLmQyZWE5NTA0NzZkOTFiZTU2MDQ2ZDAzM2QxZmNkNjYxZDQ3OTgwZjkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsNCBAQAogCi1GQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY29udGFpbnMgJ25hdmlnYXRp
b24nLiBhc3NlcnRfdHJ1ZTogVGhlcmUgc2hvdWxkIGJlIGFuIGVudHJ5ICduYXZpZ2F0aW9uJyBp
biBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMgZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKK1BBU1Mgc3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAnbmF2aWdhdGlvbicu
CitQQVNTICduYXZpZ2F0aW9uJyBlbnRyaWVzIHNob3VsZCBiZSBvYnNlcnZhYmxlLgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQKaW5kZXggNTc5NzhiZjI2ZGIwZTQxM2NiZjJkNGMyZjM4NjM5YzQxYTI1ZmM1MC4uMzQz
ODM1YTQyODQ1M2UwYjFjZjY1ZDg0ZGI4MzNmOTFhYmM4MzYxOCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9z
dXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MSwzICsxLDYgQEAKIAotRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0
aW9uJy4gYXNzZXJ0X3RydWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlvbicg
aW4gUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworUEFT
UyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1RJTUVPVVQgJ25h
dmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3QgdGltZWQgb3V0CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU5YTM4NGE1
YmIzNzAwNGU4ZjcwNDI4NWIzNTJlZWFiNDkxM2NlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
dGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorRGVzY3Jp
cHRpb24KKworVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRC
b2R5U2l6ZSBhbmQgZGVjb2RlZEJvZHlTaXplIGF0dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVl
cyB3aGVuIGNoZWNrZWQgaW4gdGhlIG9ubG9hZCBoYW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQg
dGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRl
ZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEg
InVuZGVmaW5lZCIKK0ZBSUwgVGVzdCB0aGF0IHRoZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIg
dmFsdWUgZHVyaW5nIG9ubG9hZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBh
IG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2Rv
Y3VtZW50X29ubG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjdjYzE4NDkxZDYyMDI0ZjFkNGZhM2QyMGM1MTczYjMxMzI2OWIzZTgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3Rlc3RfZG9jdW1lbnRfb25sb2FkLmh0bWwKQEAgLTAsMCArMSw0OCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hh
cnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRp
b24gYXR0cmlidXRlczwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0i
TW96aWxsYSIgaHJlZj0iaHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAgICA8bGlu
ayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWlu
Zy0yLyNwcm9jZXNzaW5nLW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0i
L2NvbW1vbi9wZXJmb3JtYW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+Cisg
ICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVk
Qm9keVNpemUgYW5kIGRlY29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1
ZXMgd2hlbiBjaGVja2VkIGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAgICA8ZGl2
IGlkPSJsb2ciPjwvZGl2PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190
ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAg
ICAgICAgICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRl
cl90aGFuKGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAi
ZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5k
ZWNvZGVkQm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAg
ICAgICAgICAgIH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1
ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxv
YWQiLCB0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVu
dHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVsw
XTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2Zl
clNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRl
cl90aGFuKGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAw
LCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkg
eworICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgp
ID0+IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAs
ICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFu
KGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAw
LCAiZGVzY3IiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAg
ICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVl
IGR1cmluZyBhIHRhc2sgYWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkpOworICAg
ICAgICAgICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVl
IGR1cmluZyBvbmxvYWQiKTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50
eHQKaW5kZXggZGE1MjYwYTIyM2QyMmFkMWFjNGQ1ZDI5NzI2YzRhZTI3M2ViMWIyOC4uM2ZlZWFk
MWZkZTcyMDMzNzM2ZGVmMWYwNGU1YjQ3MTA5OGIwZDM4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxv
YWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvdW5sb2Fk
LWV2ZW50LXNhbWUtb3JpZ2luLWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwxNiBAQCBU
aGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlcyBvZiB3aW5kb3cucGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5VHlwZSgibmF2aQogCiAKIAotRkFJTCBSZWRpcmVjdCBjaGFpbiB3aXRoIGEg
cGFydGlhbCBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRB
TyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
ZW50cnkudHlwZScpIgotRkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3QgY2hhaW4gd2l0aCBu
byBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRpcmVjdCBjaGFpbiB3
aXRoIG5vIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmln
aW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnku
dHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5v
IHByZXZpb3VzIGRvY3VtZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9jdW1l
bnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3Vt
ZW50IHdpdGggc2FtZSBvcmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1
bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHByZXZpb3VzIGRv
Y3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgot
RkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCB3aXRo
IFRBTyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRy
eS50eXBlJykiCitQQVNTIFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFsIFRBTyBvcHQtaW4K
K1BBU1MgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BBU1MgU2FtZS1jcm9z
cy1zYW1lIHJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBjcm9zcy1jcm9z
cy1zYW1lIFJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFTUyBQcmV2aW91cyBk
b2N1bWVudCBjcm9zcyBvcmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQgc2FtZSBvcmlnaW4K
K1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4gcHJldmlvdXMgZG9j
dW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2aW91cyBkb2N1bWVu
dCB3aXRoIHNhbWUgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdp
dGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRvY3VtZW50IHdpdGgg
Y3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1MgTm8gcHJldmlvdXMg
ZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8KIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9NRVRBLnltbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODlmYWUx
ZGIwZDliN2FmZDIwMjczN2UzNDc1NGI0ZTg5MzI5OGQ0OQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvTUVUQS55bWwKQEAgLTAsMCArMSw0IEBACitzcGVjOiBodHRwczovL3czYy5naXRodWIu
aW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhl
Z2FyCisgIC0gaWdyaWdvcmlrCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0
ZXItdGltZW91dC5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5h
bnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMDhiM2UzMjMxNDY1ODU3Y2YyNDhlNGFjZThlZjU3NDQ2OWExNDg2
NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0
LmFueS5qcwpAQCAtMCwwICsxLDExIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5j
ZS5tYXJrKCdmb28nKTsKKyAgdC5zdGVwX3RpbWVvdXQoKCkgPT4geworICAgIC8vIEFmdGVyIGEg
dGltZW91dCwgUGVyZm9ybWFuY2VPYnNlcnZlciBzaG91bGQgc3RpbGwgcmVjZWl2ZSBlbnRyeSBp
ZiB1c2luZyB0aGUgYnVmZmVyZWQgZmxhZy4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcih0
LnN0ZXBfZnVuY19kb25lKGxpc3QgPT4geworICAgICAgY29uc3QgZW50cmllcyA9IGxpc3QuZ2V0
RW50cmllcygpOworICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwgMSwgJ1RoZXJl
IHNob3VsZCBiZSAxIG1hcmsgZW50cnkuJyk7CisgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNb
MF0uZW50cnlUeXBlLCAnbWFyaycpOworICAgIH0pKS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1
ZmZlcmVkOiB0cnVlfSk7CisgIH0sIDEwMCk7Cit9LCAnUGVyZm9ybWFuY2VPYnNlcnZlciB3aXRo
IGJ1ZmZlcmVkIGZsYWcgc2VlcyBlbnRyeSBhZnRlciB0aW1lb3V0Jyk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1m
bGFnLW9ic2VydmVyLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMWRjMzljMTI4YWQ1NWMxM2VlZjY2NTgz
YTY4ODg2MjJmODZiZjYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFn
LW9ic2VydmVyLmFueS5qcwpAQCAtMCwwICsxLDE1IEBACithc3luY190ZXN0KCB0PT4geworICBm
b3IgKGxldCBpID0gMDsgaSA8IDUwOyBpKyspCisgICAgcGVyZm9ybWFuY2UubWFyaygnZm9vJyAr
IGkpOworICBsZXQgbWFya3NDcmVhdGVkID0gNTA7CisgIGxldCBtYXJrc1JlY2VpdmVkID0gMDsK
KyAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAgbWFya3NSZWNlaXZlZCAr
PSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgaWYgKG1hcmtzQ3JlYXRlZCA8IDEwMCkg
eworICAgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyArIG1hcmtzQ3JlYXRlZCk7CisgICAgICBt
YXJrc0NyZWF0ZWQrKzsKKyAgICB9CisgICAgaWYgKG1hcmtzUmVjZWl2ZWQgPT0gMTAwKQorICAg
ICAgdC5kb25lKCk7CisgIH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IHRydWV9
KTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQgZmxhZyBzaG91bGQgc2Vl
IHBhc3QgYW5kIGZ1dHVyZSBlbnRyaWVzLicpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52
YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTY5MTkwODE5ZjUzZWI0NTM3ZGEwMTljOTBjYzMzYmQw
ZGEzZDhkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1MgR2V0IGludmFsaWQgZW50cmllcyBm
cm9tIHdvcmtlciBhbmQgd2luZG93LgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlk
LWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQtZW50cmllcy5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjMzZDY1ODllMjc1ZTI2NTE4MGUwNTcxY2EzMTAzZGJmOWFhMTc5YjgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbApAQCAtMCwwICsxLDI3IEBA
Cis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Cith
c3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgcGVyZm9ybWFuY2UubWFyaygnd2luZG93TWFyaycp
OworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMvd29ya2VyLWludmFsaWQt
ZW50cmllcy5qcyIpOworICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAg
ICBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGFbJ2ludmFsaWQnXSwgMCwgJ1RoZSB3b3JrZXIgbXVz
dCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0
YVsnbWFyayddLCAxLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMSBtYXJrIGVudHJ5LicpOworICAg
IGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWVhc3VyZSddLCAwLCAnVGhlIHdvcmtlciBtdXN0
IGhhdmUgMCBtZWFzdXJlIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLCAwLAorICAgICAgJ1RoZSB3aW5k
b3cgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMocGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwgMSwKKyAgICAgICdUaGUg
d2luZG93IG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoLCAwLAorICAgICAgJ1Ro
ZSB3aW5kb3cgbXVzdCBoYXZlIDAgbWVhc3VyZSBlbnRyaWVzLicpCisgICAgdC5kb25lKCk7Cisg
IH0KK30sICdHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cuJyk7Cis8
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVz
cy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMyZWZlYmU5
OGZmZDQ3MmVlMTAxMDAyN2ZmOTY2YTFlZjkwN2YxN2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL2lkbGhhcm5lc3MuYW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIE1FVEE6IGdsb2JhbD13
aW5kb3csd29ya2VyCisvLyBNRVRBOiBzY3JpcHQ9L3Jlc291cmNlcy9XZWJJRExQYXJzZXIuanMK
Ky8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL2lkbGhhcm5lc3MuanMKKworLy8gaHR0cHM6Ly93
M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRpbWVsaW5lLworCisndXNlIHN0cmljdCc7CisKK2lk
bF90ZXN0KAorICBbJ3BlcmZvcm1hbmNlLXRpbWVsaW5lJ10sCisgIFsnaHItdGltZScsICdkb20n
XSwKKyAgYXN5bmMgaWRsX2FycmF5ID0+IHsKKyAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMoewor
ICAgICAgUGVyZm9ybWFuY2U6IFsncGVyZm9ybWFuY2UnXSwKKyAgICAgIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXI6IFsnb2JzZXJ2ZXInXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6
IFsnZW50cnlMaXN0J10sCisgICAgfSk7CisKKyAgICBzZWxmLmVudHJ5TGlzdCA9IGF3YWl0IG5l
dyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgIHNlbGYub2JzZXJ2ZXIgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihyZXNvbHZlKTsKKyAgICAgIG9ic2VydmVyLm9ic2VydmUo
eyBlbnRyeVR5cGVzOiBbJ21hcmsnXSB9KTsKKyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3Rlc3Qn
KTsKKyAgICB9KTsKKyAgfQorKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVy
ZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJlZC1mbGFn
LW9ic2VydmVycy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWRkNDRmYjE4ZmJkYjljM2MzMmY0NTM4ZDJl
ZjdlYzJjYWM0NzMwMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVy
ZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzCkBAIC0wLDAgKzEsMzIgQEAKK3Byb21pc2VfdGVzdCgo
KSA9PiB7CisgIC8vIFRoZSBmaXJzdCBwcm9taXNlIHdhaXRzIGZvciBvbmUgYnVmZmVyZWQgZmxh
ZyBvYnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJvbWlzZTEgPSBuZXcg
UHJvbWlzZShyZXNvbHZlMSA9PiB7CisgICAgbGV0IG51bU9ic2VydmVkMSA9IDA7CisgICAgbmV3
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKGVudHJ5TGlzdCwgb2JzKSA9PiB7CisgICAgICAvLyBUaGlz
IGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgaXMgY29uc3RydWN0ZWQgYWZ0ZXIgYSByZWd1bGFyIG9i
c2VydmVyIGRldGVjdHMgYSBtYXJrLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlz
dCA9PiB7CisgICAgICAgIG51bU9ic2VydmVkMSArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7
CisgICAgICAgIGlmIChudW1PYnNlcnZlZDEgPT0gMykKKyAgICAgICAgICByZXNvbHZlMSgpOwor
ICAgICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgICAg
b2JzLmRpc2Nvbm5lY3QoKTsKKyAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbJ21hcmsnXX0p
OworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB9KTsKKyAgLy8gVGhlIHNlY29uZCBw
cm9taXNlIHdhaXRzIGZvciBhbm90aGVyIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgdG8gcmVjZWl2
ZSAzIGVudHJpZXMuCisgIGNvbnN0IHByb21pc2UyID0gbmV3IFByb21pc2UocmVzb2x2ZTIgPT4g
eworICAgIHN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgICBsZXQgbnVtT2JzZXJ2ZWQyID0gMDsK
KyAgICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRl
ciBhIGRlbGF5IG9mIDEwMG1zLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9
PiB7CisgICAgICAgIG51bU9ic2VydmVkMiArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7Cisg
ICAgICAgIGlmIChudW1PYnNlcnZlZDIgPT0gMykKKyAgICAgICAgICByZXNvbHZlMigpOworICAg
ICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgIH0sIDEw
MCk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyk7CisgIH0pOworICBwZXJmb3JtYW5jZS5t
YXJrKCdtZW93Jyk7CisgIC8vIFBhc3MgaWYgYW5kIG9ubHkgaWYgYm90aCBidWZmZXJlZCBvYnNl
cnZlcnMgcmVjZWl2ZWQgYWxsIDMgbWFyayBlbnRyaWVzLgorICByZXR1cm4gUHJvbWlzZS5hbGwo
W3Byb21pc2UxLCBwcm9taXNlMl0pOworfSwgJ011bHRpcGxlIFBlcmZvcm1hbmNlT2JzZXJ2ZXJz
IHdpdGggYnVmZmVyZWQgZmxhZyBzZWUgYWxsIGVudHJpZXMnKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvbm90LWNsb25hYmxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5mNTQyY2Y3YzRhYWNmMDI5MTY2NWE4ZjQ5NzY1YWRkODg1ZWJj
NDJkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0IGEgcG9zdE1lc3NhZ2Ugb2YgYSBw
ZXJmb3JtYW5jZSBlbnRyeSBmYWlscworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJs
ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNjUxNzc2ZTVm
NGI5NDUzMjhlOWRlMjY1MWI4YTU5ZjExYjUzNDI2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9ub3QtY2xvbmFibGUuaHRtbApAQCAtMCwwICsxLDEwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+
CisgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBl
cmZvcm1hbmNlIGVudHJ5IGZhaWxzIik7CisgIGFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0
LnN0ZXBfZnVuY19kb25lKGUgPT4geworICAgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIp
OworICB9KSk7Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvcG9zdG1lc3NhZ2Ut
ZW50cnkuaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZl
cmVkLWZhbHNlLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVyZWQtZmFsc2UuYW55Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmEyODEwMGIwZmRiYTJlMDA1Nzk4MDlhNTgxOTM1ZDMxMmNmMTI0NWUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwpA
QCAtMCwwICsxLDEyIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdm
b28nKTsKKyAgLy8gVXNlIGEgdGltZW91dCB0byBlbnN1cmUgdGhlIHJlbWFpbmRlciBvZiB0aGUg
dGVzdCBydW5zIGFmdGVyIHRoZSBlbnRyeSBpcyBjcmVhdGVkLgorICB0LnN0ZXBfdGltZW91dCgo
KSA9PiB7CisgICAgLy8gT2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNldCB0byBmYWxzZSBz
aG91bGQgbm90IHNlZSBlbnRyeS4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoKSA9PiB7
CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdTaG91bGQgbm90IGhhdmUgb2JzZXJ2ZWQgYW55IGVu
dHJ5IScpOworICAgIH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVyZWQ6IGZhbHNlfSk7
CisgICAgLy8gVXNlIGEgdGltZW91dCB0byBnaXZlIHRpbWUgdG8gdGhlIG9ic2VydmVyLgorICAg
IHQuc3RlcF90aW1lb3V0KHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4ge30pLCAxMDApOworICB9LCAw
KTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGhvdXQgYnVmZmVyZWQgZmxhZyBzZXQgdG8g
ZmFsc2UgY2Fubm90IHNlZSBwYXN0IGVudHJpZXMuJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bl
cmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcGVyZm9ybWFuY2VlbnRyeS10
b2pzb24uYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0ZjAxNTZlZWMxOTI0MTk3MDAyOGMyOGU1ODk3YmU0
ZDZmMWNiODEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BlcmZvcm1hbmNlZW50cnktdG9q
c29uLmFueS5qcwpAQCAtMCwwICsxLDIxIEBACit0ZXN0KCgpID0+IHsKKyAgcGVyZm9ybWFuY2Uu
bWFyaygnbWFya05hbWUnKTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgnbWVhc3VyZU5hbWUnKTsK
KworICBjb25zdCBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpOworICBjb25zdCBw
ZXJmb3JtYW5jZUVudHJ5S2V5cyA9IFsKKyAgICAnbmFtZScsCisgICAgJ2VudHJ5VHlwZScsCisg
ICAgJ3N0YXJ0VGltZScsCisgICAgJ2R1cmF0aW9uJworICBdOworICBmb3IgKGxldCBpID0gMDsg
aSA8IGVudHJpZXMubGVuZ3RoOyArK2kpIHsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihlbnRy
aWVzW2ldLnRvSlNPTiksICdmdW5jdGlvbicpOworICAgIGNvbnN0IGpzb24gPSBlbnRyaWVzW2ld
LnRvSlNPTigpOworICAgIGFzc2VydF9lcXVhbHModHlwZW9mKGpzb24pLCAnb2JqZWN0Jyk7Cisg
ICAgZm9yIChjb25zdCBrZXkgb2YgcGVyZm9ybWFuY2VFbnRyeUtleXMpIHsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMoanNvbltrZXldLCBlbnRyaWVzW2ldW2tleV0sCisgICAgICAgIGBlbnRyaWVzWyR7
aX1dLnRvSlNPTigpLiR7a2V5fSBzaG91bGQgbWF0Y2ggZW50cmllc1ske2l9XS4ke2tleX1gKTsK
KyAgICB9CisgIH0KK30sICdUZXN0IHRvSlNPTigpIGluIFBlcmZvcm1hbmNlRW50cnknKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJhY2stbXV0YXRlLmFueS5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
Y2FsbGJhY2stbXV0YXRlLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZjFiMDliYzM3NzEyMDgwMjQwMWRl
MWIyNDdhYTU3ZGI3NDE0YzY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFj
ay1tdXRhdGUuYW55LmpzCkBAIC0wLDAgKzEsNjYgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJmb3Jt
YW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2YXIg
Y2FsbGJhY2tDb3VudCA9IDA7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgewor
ICAgICAgICAgIGNhbGxiYWNrQ291bnQrKzsKKworICAgICAgICAgIGlmIChjYWxsYmFja0NvdW50
ID09PSAxKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXMo
KSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJl
MSJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiBbIm1hcmsiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJt
YXJrMiIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMiIp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxs
YmFja0NvdW50ID09PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0Lmdl
dEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJt
YXJrMiJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1h
cmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLW1lYXN1cmUiKTsKKyAgICAg
ICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9i
c2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
ZW50cnlUeXBlczogWyJtZWFzdXJlIl19KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2Uu
bWFyaygibWFyazMiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVh
c3VyZTMiKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBp
ZiAoY2FsbGJhY2tDb3VudCA9PT0gMykgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVudHJ5
TGlzdC5nZXRFbnRyaWVzKCksIFsKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUi
LCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBu
YW1lOiAibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSJ9LAorICAg
ICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYmVm
b3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgiKTsKKyAgICAgICAgICAgIHNlbGYucGVy
Zm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8t
Ym90aCIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJr
IiwgIm1lYXN1cmUiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJr
NCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlNCIpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxsYmFj
a0NvdW50ID09PSA0KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVu
dHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJt
ZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIn0sCisgICAgICAgICAg
ICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmU0In0sCisgICAgICAgICAg
ICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcms0In0sCisgICAgICAgICAgICBdKTsK
KyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtZGlzY29ubmVj
dCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJlZm9y
ZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAg
ICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYWZ0ZXItZGlzY29ubmVjdCIpOwor
ICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWFmdGVyLWRpc2Nv
bm5lY3QiKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICAgIH0KKworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBjYWxsYmFjayBtdXN0
IG5vdCBiZSBpbnZva2VkIGFmdGVyIGRpc2Nvbm5lY3RpbmciKTsKKyAgICAgICAgfSkKKyAgICAg
ICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOwor
ICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1lYXN1cmUoIm1lYXN1cmUxIik7CisgIH0sICJQZXJmb3JtYW5jZU9ic2VydmVyIG1vZGlmaWNh
dGlvbnMgaW5zaWRlIGNhbGxiYWNrIHNob3VsZCB1cGRhdGUgZmlsdGVyaW5nIGFuZCBub3QgY2xl
YXIgYnVmZmVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1v
YnNlcnZlZC10eXBlcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNl
cnZlZC10eXBlcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2FjOTdiZWEwNzU1YzExODI5NTZmZGY5NGM5
OGVlNzhjYTQwYjAxNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC1y
ZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwpAQCAtMCwwICsxLDE5IEBACisvLyBNRVRBOiBz
Y3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworYXN5bmNfdGVzdChmdW5jdGlvbiAodCkg
eworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgIHQu
c3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgLy8gVGhlcmUgc2hvdWxk
IGJlIG5vIG1hcmsgZW50cnkuCisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50
cmllcygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAiYiJ9XSk7
CisgICAgICAgIHQuZG9uZSgpOworICAgICAgfSkKKyAgICApOworICBvYnNlcnZlci5vYnNlcnZl
KHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gRGlzY29ubmVjdCB0aGUgb2JzZXJ2ZXIuCisgIG9ic2Vy
dmVyLmRpc2Nvbm5lY3QoKTsKKyAgLy8gTm93LCBvbmx5IG9ic2VydmUgbWVhc3VyZS4KKyAgb2Jz
ZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1lYXN1cmUifSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoImEi
KTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgiYiIpOworfSwgIlR5cGVzIG9ic2VydmVkIGFyZSBm
b3Jnb3R0ZW4gd2hlbiBkaXNjb25uZWN0KCkgaXMgY2FsbGVkLiIpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby1kaXNjb25uZWN0LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNWY1ZmI1YWE0M2JhNDYyNjhmOGMzNTVmZGM5M2M2ZjE4Mjk5NjhiNAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVjdC5hbnkuanMKQEAgLTAsMCArMSwz
NyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNf
dGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9i
c2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsK
KyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGlu
dm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50
cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiLCAibmF2aWdhdGlvbiJdfSk7CisgICAgb2JzZXJ2
ZXIuZGlzY29ubmVjdCgpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgdC5zdGVwX3RpbWVv
dXQoZnVuY3Rpb24gKCkgeworICAgICAgdC5kb25lKCk7CisgICAgfSwgMjAwMCk7CisgIH0sICJk
aXNjb25uZWN0ZWQgY2FsbGJhY2tzIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKworICB0ZXN0KGZ1
bmN0aW9uICgpIHsKKyAgICB2YXIgb2JzID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rp
b24gKCkgeyByZXR1cm4gdHJ1ZTsgfSk7CisgICAgb2JzLmRpc2Nvbm5lY3QoKTsKKyAgICBvYnMu
ZGlzY29ubmVjdCgpOworICB9LCAiZGlzY29ubmVjdGluZyBhbiB1bmNvbm5lY3RlZCBvYnNlcnZl
ciBpcyBhIG5vLW9wIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBv
YnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhm
dW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJU
aGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7
CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICB0LnN0ZXBfdGltZW91dChm
dW5jdGlvbiAoKSB7CisgICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgIkFuIG9i
c2VydmVyIGRpc2Nvbm5lY3RlZCBhZnRlciBhIG1hcmsgbXVzdCBub3QgaGF2ZSBpdHMgY2FsbGJh
Y2sgaW52b2tlZCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55Lmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5j
ZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwYzc4MWEzYzBj
MDNiZjgxZTgyMDE2OGJkZjcwYjUzNjI3NTA0MGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLWVudHJpZXMtc29ydC5hbnkuanMKQEAgLTAsMCArMSw2NCBAQAorLy8gTUVUQTogc2NyaXB0
PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgewor
ICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBzdG9yZWRfZW50cmllc19ieV90
eXBlID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisg
ICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworCisgICAgICAg
ICAgc3RvcmVkX2VudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgIHN0
b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIp
OworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X25hbWUgPSBlbnRyeUxpc3QuZ2V0RW50cmll
c0J5TmFtZSgibmFtZS1yZXBlYXQiKTsKKyAgICAgICAgICB2YXIgc3RhcnRUaW1lT2ZNYXJrMiA9
IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMiIpWzBdLnN0YXJ0VGltZTsKKworICAg
ICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzKTsKKyAgICAgICAgICBjaGVja0VudHJp
ZXMoc3RvcmVkX2VudHJpZXMsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwg
bmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5h
bWU6ICJtZWFzdXJlMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1l
OiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTog
Im5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJt
YXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwK
KyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUtbWF0Y2hp
bmctbWFyazItMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAi
bWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIn0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFy
ayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIGNoZWNr
U29ydGVkKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUpOworICAgICAgICAgIGNoZWNrRW50cmllcyhz
dG9yZWRfZW50cmllc19ieV90eXBlLCBbCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIs
IG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm5hbWUtcmVw
ZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVh
dCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgY2hlY2tTb3J0ZWQoc3RvcmVkX2VudHJp
ZXNfYnlfbmFtZSk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzX2J5X25h
bWUsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVw
ZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVh
dCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQi
fSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAg
ICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisKKyAgICBvYnNlcnZlci5v
YnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJdfSk7CisKKyAgICBzZWxmLnBl
cmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJt
ZWFzdXJlMSIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsxICE9PSBtYXJrMiBzdGFydFRp
bWUgYnkgbWFraW5nIHN1cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFuY2VzLgorICAgIHNlbGYucGVy
Zm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1l
YXN1cmUyIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLW1hdGNoaW5n
LW1hcmsyLTEiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBtYXJrMiAhPT0gbWFy
azMgc3RhcnRUaW1lIGJ5IG1ha2luZyBzdXJlIHBlcmZvcm1hbmNlLm5vdyBhZHZhbmNlcy4KKyAg
ICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm5hbWUtcmVwZWF0Iik7CisgICAgc2VsZi5wZXJmb3Jt
YW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgi
bWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIiwgIm1hcmsyIik7CisgICAgd2FpdCgpOyAvLyBFbnN1
cmUgbmFtZS1yZXBlYXQgc3RhcnRUaW1lIHdpbGwgZGlmZmVyLgorICAgIHNlbGYucGVyZm9ybWFu
Y2UubWFyaygibmFtZS1yZXBlYXQiKTsKKyAgICB3YWl0KCk7IC8vIEVuc3VyZSBuYW1lLXJlcGVh
dCBzdGFydFRpbWUgd2lsbCBkaWZmZXIuCisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJu
YW1lLXJlcGVhdCIpOworICB9LCAiZ2V0RW50cmllcywgZ2V0RW50cmllc0J5VHlwZSwgZ2V0RW50
cmllc0J5TmFtZSBzb3J0IG9yZGVyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWdldGVudHJp
ZXMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNjE2
OWQ1ZGJkNmUwZTIwNTA2ZDIwMTQ2NTg1ZGJjODllNzUwYzI1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwpAQCAtMCwwICsxLDM4IEBACisvLyBNRVRBOiBz
Y3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0
KSB7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAg
IHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNoZWNr
RW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXMiKTsKKworICAgICAgICAgIGNo
ZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLAorICAgICAgICAg
ICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeVR5
cGUiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBl
KCJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllc0J5VHlwZSgiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50
cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAgICBjaGVja0Vu
dHJpZXMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiksCisgICAgICAgICAgICBb
eyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSIp
OworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1h
cmsyIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBl
eHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVu
dHJpZXNCeU5hbWUoIjIzNDU2NyIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVz
QnlOYW1lIHdpdGggbm8gZXhwZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmll
cyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAibWFyayIpLAorICAgICAgICAg
ICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeU5h
bWUgd2l0aCBhIHR5cGUiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlOYW1lKCJtYXJrMSIsICJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAg
ImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOwor
ICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsy
IiwgIm1lYXN1cmUiKS5sZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3
aXRoIGEgdHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAiMjM0NTY3IikubGVuZ3Ro
LCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0aCBubyBl
eHBlY3RlZCBlbnRyeSIpOworCisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAg
ICAgICAgIHQuZG9uZSgpOworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNl
cnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygi
bWFyazEiKTsKKyAgfSwgImdldEVudHJpZXMsIGdldEVudHJpZXNCeVR5cGUgYW5kIGdldEVudHJp
ZXNCeU5hbWUgd29yayIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBiMjA1ZTA5
NGM3NWUxMGJjMWI5M2ZmOTY2YWVhMGZkMjNhNTg2ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLW1hcmstbWVhc3VyZS5hbnkuanMKQEAgLTAsMCArMSw2MSBAQAorLy8gTUVUQTogc2Ny
aXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkg
eworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNlcnZlciAgPSBuZXcg
UGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5
TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAgICAgICAgc3Rv
cmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlm
IChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gNCkgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVz
KHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFt
ZTogIm1hcmsxIn0sCisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJt
YXJrMiJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBuYW1lOiAibWVh
c3VyZTEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1l
YXN1cmUyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAg
ICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2Jz
ZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0pOworICB9LCAi
ZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsK
KyAgICB2YXIgbWFya19lbnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qs
IG9icykgeworICAgICAgICAgIG1hcmtfZW50cmllcyA9CisgICAgICAgICAgICBtYXJrX2VudHJp
ZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlmIChtYXJrX2Vu
dHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhtYXJrX2VudHJp
ZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibWFyazEifSwK
KyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsyIn1dKTsKKyAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7
ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsx
Iik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICB9LCAibWFyayBlbnRy
aWVzIGFyZSBvYnNlcnZhYmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAg
IHZhciBtZWFzdXJlX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9y
bWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwg
b2JzKSB7CisgICAgICAgICAgbWVhc3VyZV9lbnRyaWVzID0KKyAgICAgICAgICAgIG1lYXN1cmVf
ZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgaWYgKG1l
YXN1cmVfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKG1l
YXN1cmVfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWVhc3VyZSIsIG5h
bWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBu
YW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOwor
ICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsK
KyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0pOworICAgIHNl
bGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1lYXN1cmUoIm1lYXN1cmUyIik7CisgIH0sICJtZWFzdXJlIGVudHJpZXMgYXJlIG9ic2VydmFi
bGUiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmODVlNTg1NmNlODczZjEy
MWRjNTE1NDRjNTQ0YjQxNDM5ZmEyNmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9i
c2VydmUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6
IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkCisKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJ
bml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMK
KworCitQQVNTIFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2
ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1v
YnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVk
LXR5cGUuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJiYmEzOTZhNmI2OWViYWQ1NmFkNGYxYjEzNWNiOGFk
NDlkMzIxYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQt
dHlwZS5hbnkuanMKQEAgLTAsMCArMSwxNyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNl
b2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgY29uc3Qgb2JzZXJ2
ZXIgID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlv
biAoZW50cnlMaXN0KSB7CisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmll
cygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAiZWFybHkifV0pOwor
ICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAg
fSkKKyAgICApOworICBwZXJmb3JtYW5jZS5tYXJrKCJlYXJseSIpOworICAvLyBUaGlzIGNhbGwg
d2lsbCBub3QgdHJpZ2dlciBhbnl0aGluZy4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1h
cmsifSk7CisgIC8vIFRoaXMgY2FsbCBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIGNhbGwg
YW5kIGRldGVjdCB0aGUgZWFybHkgbWFyay4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1h
cmsiLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgIlR3byBjYWxscyBvZiBvYnNlcnZlKCkgd2l0aCB0
aGUgc2FtZSAndHlwZScgY2F1c2Ugb3ZlcnJpZGUuIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW9ic2VydmUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0OGYw
ZjM3NjRiZGE0Y2ViODhiMmE4YmU0ZDY1ZjE2ODM2MjYyN2EKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3BvLW9ic2VydmUuaHRtbApAQCAtMCwwICsxLDg2IEBACis8IURPQ1RZUEUgSFRNTD4K
KzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZv
cm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkPC90aXRsZT4KKzxtZXRhIG5hbWU9InRpbWVvdXQi
IGNvbnRlbnQ9ImxvbmciPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzIj48L3Njcmlw
dD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVyZm9ybWFuY2VPYnNlcnZlckluaXQuYnVm
ZmVyZWQ8L2gxPgorPHA+CitQZXJmb3JtYW5jZU9ic2VydmVySW5pdC5idWZmZXJlZCBzaG91bGQg
cmV0cmlldmUgcHJldmlvdXNseSBidWZmZXJlZCBlbnRyaWVzCis8L3A+Cis8ZGl2IGlkPSJsb2ci
PjwvZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1bmN0
aW9uIGluaXRUZXN0KCkgeworICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24g
KGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgZW50cnlMaXN0LmdldEVudHJpZXMoKS5m
b3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAgICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50
cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorCisgICAgICAgICAgb2Jz
ZXJ2ZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAgICAgIGlmIChvYnNlcnZlZEVudHJpZXMu
bGVuZ3RoID09PSBlbnRyeVR5cGVzLmxlbmd0aCkgeworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlz
Y29ubmVjdCgpOworICAgICAgICAgICAgcnVuVGVzdCgpOworICAgICAgICAgIH0KKyAgICAgICAg
fSk7CisgICAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVzfSk7CisKKyAgICAgIC8vIGNyZWF0ZXMg
YSBgcmVzb3VyY2VgIGVudHJ5CisgICAgICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiaW1nIik7CisgICAgICBpbWcuc3JjID0gIi4vcmVzb3VyY2VzL3NxdWFyZS5wbmciOworICAg
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcpOworCisgICAgICBwZXJmb3JtYW5jZS5t
YXJrKCJtYXJrTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1hcmtgIGVudHJ5CisgICAgICBwZXJmb3Jt
YW5jZS5tZWFzdXJlKCJtZWFzdXJlTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1lYXN1cmVgIGVudHJ5
CisgICAgfQorICAgIGZ1bmN0aW9uIHNob3VsZEV4Y2x1ZGUoZW50cnkpIHsKKyAgICAgIC8vIGV4
Y2x1ZGUgYWxsIGByZXNvdXJjZWAgZW50cmllcyB0aGF0IGFyZW4ndCBmb3IgInNxdWFyZS5wbmci
CisgICAgICByZXR1cm4gZW50cnkuZW50cnlUeXBlID09PSAicmVzb3VyY2UiICYmCisgICAgICAg
ICAgICAgZW50cnkubmFtZS5pbmRleE9mKCJzcXVhcmUucG5nIikgPT09IC0xOworICAgIH0KKyAg
ICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVy
IGlzIGEgbm9wIGJlY2F1c2Ugd2UndmUgYWxyZWFkeSBiZWVuIG5vdGlmaWVkIGFib3V0IGFsbCBv
ZiBvdXIgYGVudHJ5VHlwZXNgCisgICAgICB2YXIgcG9fbm9wID0gbmV3IFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAgaWYgKGVudHJ5
TGlzdC5nZXRFbnRyaWVzKCkuZmluZChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIHJldHVy
biAhc2hvdWxkRXhjbHVkZShlbnRyeSk7CisgICAgICAgIH0pKSB7CisgICAgICAgICAgYXNzZXJ0
X3VucmVhY2hlZCgidGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbGxiYWNrIHNob3VsZCBuZXZl
ciBiZSBjYWxsZWQiKTsKKyAgICAgICAgfQorICAgICAgfSk7CisgICAgICBwb19ub3Aub2JzZXJ2
ZSh7CisgICAgICAgIGVudHJ5VHlwZXMsCisgICAgICB9KTsKKworICAgICAgLy8gdGhpcyBQZXJm
b3JtYW5jZU9ic2VydmVyIHNob3VsZCBiZSBub3RpZmllZCBhYm91dCB0aGUgcHJldmlvdXNseQor
ICAgICAgLy8gYnVmZmVyZWQgbWFyayBlbnRyeSBvbmx5CisgICAgICBjb25zdCBidWZmZXJlZEVu
dHJpZXMgPSBbXTsKKyAgICAgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRy
eUxpc3QsIG9ic2VydmVyKSB7CisgICAgICAgIGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZm9yRWFj
aChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIGlmIChzaG91bGRFeGNsdWRlKGVudHJ5KSkg
eworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGJ1ZmZlcmVk
RW50cmllcy5wdXNoKGVudHJ5KTsKKyAgICAgICAgICBpZiAoYnVmZmVyZWRFbnRyaWVzLmxlbmd0
aCA9PT0gMSkgeworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAg
ICAgcG9fbm9wLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBidWZm
ZXJlZEVudHJpZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhi
dWZmZXJlZEVudHJpZXNbaV0uZW50cnlUeXBlLCAibWFyayIpCisgICAgICAgICAgICB9CisgICAg
ICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOworICAgICAgfSkub2Jz
ZXJ2ZSh7CisgICAgICAgIHR5cGU6ICJtYXJrIiwKKyAgICAgICAgYnVmZmVyZWQ6IHRydWUKKyAg
ICAgIH0pOworICAgIH0KKworICAgIGNvbnN0IGVudHJ5VHlwZXMgPSBbIm5hdmlnYXRpb24iLCAi
cmVzb3VyY2UiLCAibWFyayIsICJtZWFzdXJlIl07CisgICAgY29uc3Qgb2JzZXJ2ZWRFbnRyaWVz
ID0gW107CisgICAgaW5pdFRlc3QoKTsKKyAgfSwgIlBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1
ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMiKTsKKwor
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFlZWU2NWU5Zjlh
YjVmYjIzMzczZWI5ZDhhNzBhMzM5YzA1YTAyMzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXJlc291cmNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2Jz
ZXJ2ZXJzOiByZXNvdXJjZQorCitOZXcgcmVzb3VyY2VzIHdpbGwgcXVldWUgYSBQZXJmb3JtYW5j
ZUVudHJ5LgorCisKK1BBU1MgcmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMDBjMTczZWVhZTkyMWZiZWNjM2VlZWE1NGQ4YWRmYTZiOWVkNTM2NQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbApAQCAtMCwwICsxLDQ4
IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVyZm9y
bWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJwZXJmb3JtYW5jZW9ic2Vy
dmVycy5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC9o
MT4KKzxwPgorTmV3IHJlc291cmNlcyB3aWxsIDxhIGhyZWY9Imh0dHBzOi8vdzNjLmdpdGh1Yi5p
by9wZXJmb3JtYW5jZS10aW1lbGluZS8jZGZuLXF1ZXVlLWEtcGVyZm9ybWFuY2VlbnRyeSI+cXVl
dWUgYSBQZXJmb3JtYW5jZUVudHJ5PC9hPi4KKzwvcD4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8
c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgZnVuY3Rpb24gcGF0aChw
YXRobmFtZSkgeworICAgICAgdmFyIGZpbGVuYW1lID0gcGF0aG5hbWUuc3Vic3RyaW5nKHBhdGhu
YW1lLmxhc3RJbmRleE9mKCcvJykrMSk7CisgICAgICByZXR1cm4gcGF0aG5hbWUuc3Vic3RyaW5n
KDAsIHBhdGhuYW1lLmxlbmd0aCAtIGZpbGVuYW1lLmxlbmd0aCk7CisgICAgfQorICAgIHZhciBn
VW5pcXVlQ291bnRlciA9IDA7CisgICAgZnVuY3Rpb24gZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKSB7
CisgICAgICByZXR1cm4gRGF0ZS5ub3coKSArICItIiArICgrK2dVbmlxdWVDb3VudGVyKTsKKyAg
ICB9CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFyIGltZ19sb2NhdGlvbiA9
IGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbiArIHBhdGgoZG9jdW1lbnQubG9jYXRpb24ucGF0aG5h
bWUpCisgICAgICAgKyAicmVzb3VyY2VzL3NxdWFyZS5wbmc/cmFuZG9tPSI7CisgICAgdmFyIGlt
ZzEgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygpOworICAgIHZhciBpbWcy
ID0gaW1nX2xvY2F0aW9uICsgZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKTsKKyAgICB2YXIgb2JzZXJ2
ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rp
b24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAg
ICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJy
ZXNvdXJjZSIpKTsKKyAgICAgICAgICBpZiAoc3RvcmVkX2VudHJpZXMubGVuZ3RoID49IDIpIHsK
KyAgICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywKKyAgICAgICAgICAgICAg
W3sgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcxfSwKKyAgICAgICAgICAgICAgIHsg
ZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcyfV0pOworICAgICAgICAgICAgb2JzZXJ2
ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAg
ICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbInJl
c291cmNlIl19KTsKKyAgICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7
CisgICAgaW1nLnNyYyA9IGltZzE7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcp
OworICAgIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOworICAgIGltZy5zcmMg
PSBpbWcyOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsKKyAgfSwgInJlc291
cmNlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44NmFkMzk3YjBhNWMzNzlkMDEyOWQ0M2M5Mjk1MmJjNmM4YzVjMGNmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMKQEAgLTAsMCAr
MSwzNCBAQAorLy8gTUVUQTogdGl0bGU9UGVyZm9ybWFuY2VPYnNlcnZlcjogdGFrZVJlY29yZHMK
Ky8vIE1FVEE6IHNjcmlwdD1wZXJmb3JtYW5jZW9ic2VydmVycy5qcworCithc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZl
cihmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnNlcnZlcikgeworICAgICAgYXNzZXJ0X3VucmVhY2hl
ZCgnVGhpcyBjYWxsYmFjayBzaG91bGQgbm90IGhhdmUgYmVlbiBjYWxsZWQuJykKKyAgICB9KTsK
KyAgICBsZXQgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRy
aWVzKGVudHJpZXMsIFtdLCAnTm8gcmVjb3JkcyBiZWZvcmUgb2JzZXJ2ZScpOworICAgIG9ic2Vy
dmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsnbWFyayddfSk7CisgICAgYXNzZXJ0X2VxdWFscyh0
eXBlb2Yob2JzZXJ2ZXIudGFrZVJlY29yZHMpLCAnZnVuY3Rpb24nKTsKKyAgICBlbnRyaWVzID0g
b2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdO
byByZWNvcmRzIGp1c3QgZnJvbSBvYnNlcnZlJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYScp
OworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2InKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFr
ZVJlY29yZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlw
ZTogJ21hcmsnLCBuYW1lOiAnYSd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAn
Yid9CisgICAgXSk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYycpOworICAgIHBlcmZvcm1hbmNl
Lm1hcmsoJ2QnKTsKKyAgICBwZXJmb3JtYW5jZS5tYXJrKCdlJyk7CisgICAgZW50cmllcyA9IG9i
c2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFsKKyAgICAg
IHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2MnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJr
JywgbmFtZTogJ2QnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2UnfQorICAg
IF0pOworICAgIGVudHJpZXMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50
cmllcyhlbnRyaWVzLCBbXSwgJ05vIGVudHJpZXMgcmlnaHQgYWZ0ZXIgdGFrZVJlY29yZHMnKTsK
KyAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgdC5kb25lKCk7CisgIH0sICJUZXN0IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIncyB0YWtlUmVjb3JkcygpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lbnRyeS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9z
dG1lc3NhZ2UtZW50cnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZjViZTczMzk1YjQ5ZDg5NWEyNTg5YmU1
NDdhN2YzOTUwZjQxNmJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9z
dG1lc3NhZ2UtZW50cnkuaHRtbApAQCAtMCwwICsxLDE3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxz
Y3JpcHQ+CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgKCkgPT4geworICBjb25zdCBlbnRyeSA9
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgdHJ5IHsK
KyAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKGVudHJ5LCAiKiIpOworICB9IGNhdGNoKGVycm9y
KSB7CisgICAgaWYgKGVycm9yLm5hbWUgPT0gIkRhdGFDbG9uZUVycm9yIikgeworICAgICAgd2lu
ZG93LnRvcC5wb3N0TWVzc2FnZSgiUEFTUyIsICIqIik7CisgICAgfSBlbHNlIHsKKyAgICAgIHdp
bmRvdy50b3AucG9zdE1lc3NhZ2UoIkZBSUwgLSBXcm9uZyBleGNlcHRpb24gbmFtZTogIiArIGVy
cm9yLm5hbWUsICIqIik7CisgICAgfQorICB9CisgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIkZB
SUwgLSBObyBleGNlcHRpb24gdGhyb3duIiwgIioiKTsKK30pOworCis8L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJpZXMuanMgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkN2Zi
YTJjY2Y0YjZhYjdlNjA0MjczYzI1MDEwZTMxZTQ0M2UzNzYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVzLmpzCkBAIC0wLDAgKzEsNiBA
QAorcGVyZm9ybWFuY2UubWFyaygnd29ya2VyTWFyaycpOworcG9zdE1lc3NhZ2UoeworICAnaW52
YWxpZCcgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLAor
ICAnbWFyaycgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtYXJrJykubGVuZ3RoLAor
ICAnbWVhc3VyZScgOiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVu
Z3RoCit9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZv
cm1hbmNlLW9ic2VydmVyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLXdpdGgtcGVyZm9y
bWFuY2Utb2JzZXJ2ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTcyZmU4MWM0N2ZlYWNlNzY1NjEzYTA5NjJm
MmE3ZTYzZjcxZmEyNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtl
ci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzCkBAIC0wLDAgKzEsNiBAQAordHJ5IHsKKyAg
bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKCkgPT4gdHJ1ZSk7CisgIHBvc3RNZXNzYWdlKCJTVUND
RVNTIik7Cit9IGNhdGNoIChleCkgeworICBwb3N0TWVzc2FnZSgiRkFJTFVSRSIpOworfQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAxMzhiZGU2
NjE5NjI0M2U2NzAzMGQxYWUxNDJiZGE0MTE0OGUyMzBiLi5lNWViMTE4YWIyMjQzZDFjYTM0NTc1
MDk1NDBhMjA4MjgwMjg5ZDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlw
ZXMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVz
IGV4aXN0cyBhbmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJTCBz
dXBwb3J0ZWRFbnRyeVR5cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5h
bnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCmluZGV4IGEwMjI1YWQy
Zjc2ZmRjZmViYjBhN2M5YWZmOWJkMDAzMGVjZjg2YWEuLjI1ZjE5NTkzOWU3YjY5MjUwOTYyNWI4
MTMxZTUzNzE2NGNkZjU2YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBl
cy5hbnkuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS5qcwpAQCAtMTAs
MyArMTAsMTAgQEAgdGVzdCgoKSA9PiB7CiAgICAgICAiJyBhcmUgcmVwZWF0ZWQgb3IgdGhleSBh
cmUgbm90IGluIGFscGhhYmV0aWNhbCBvcmRlci4iKQogICB9CiB9LCAic3VwcG9ydGVkRW50cnlU
eXBlcyBleGlzdHMgYW5kIHJldHVybnMgZW50cmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIiKTsK
KwordGVzdCgoKSA9PiB7CisgIGlmICh0eXBlb2YgUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0
ZWRFbnRyeVR5cGVzID09PSAidW5kZWZpbmVkIikKKyAgICBhc3NlcnRfdW5yZWFjaGVkKCJzdXBw
b3J0ZWRFbnRyeVR5cGVzIGlzIG5vdCBzdXBwb3J0ZWQuIik7CisgIGFzc2VydF90cnVlKFBlcmZv
cm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyA9PT0KKyAgICAgIFBlcmZvcm1hbmNl
T2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyk7Cit9LCAic3VwcG9ydGVkRW50cnlUeXBlcyBj
YWNoZXMgcmVzdWx0Iik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMu
YW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggMTM4YmRlNjYxOTYyNDNlNjcwMzBkMWFlMTQyYmRh
NDExNDhlMjMwYi4uZTVlYjExOGFiMjI0M2QxY2EzNDU3NTA5NTQwYTIwODI4MDI4OWQ5NiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDQgQEAKIAogUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGV4aXN0cyBh
bmQgcmV0dXJucyBlbnRyaWVzIGluIGFscGhhYmV0aWNhbCBvcmRlcgorRkFJTCBzdXBwb3J0ZWRF
bnRyeVR5cGVzIGNhY2hlcyByZXN1bHQgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10
aW1lbGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDg2OWM3YzUy
ZDU1ZDY5ZTIxMjNmNjRkNDg2ZWQxZTMyMzVkM2ZiNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvd2VidGltaW5nLXJlc29sdXRpb24uYW55LmpzCkBAIC0wLDAgKzEsMjUgQEAKK2Z1bmN0aW9u
IHRlc3RUaW1lUmVzb2x1dGlvbihoaWdoUmVzVGltZUZ1bmMsIGZ1bmNTdHJpbmcpIHsKKyAgICB0
ZXN0KCgpID0+IHsKKyAgICAgICAgY29uc3QgdDAgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAg
ICAgbGV0IHQxID0gaGlnaFJlc1RpbWVGdW5jKCk7CisgICAgICAgIHdoaWxlICh0MCA9PSB0MSkg
eworICAgICAgICAgICAgdDEgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgfQorICAgICAg
ICBjb25zdCBlcHNpbG9uID0gMWUtNTsKKyAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVh
bCh0MSAtIHQwLCAwLjAwNSAtIGVwc2lsb24sICdUaGUgc2Vjb25kICcgKyBmdW5jU3RyaW5nICsg
JyBzaG91bGQgYmUgbXVjaCBncmVhdGVyIHRoYW4gdGhlIGZpcnN0Jyk7CisgICAgfSwgJ1Zlcmlm
aWVzIHRoZSByZXNvbHV0aW9uIG9mICcgKyBmdW5jU3RyaW5nICsgJyBpcyBhdCBsZWFzdCA1IG1p
Y3Jvc2Vjb25kcy4nKTsKK30KKworZnVuY3Rpb24gdGltZUJ5UGVyZm9ybWFuY2VOb3coKSB7Cisg
ICAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpOworfQorCitmdW5jdGlvbiB0aW1lQnlVc2VyVGlt
aW5nKCkgeworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3RpbWVyJyk7CisgICAgY29uc3QgdGltZSA9
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoJ3RpbWVyJylbMF0uc3RhcnRUaW1lOworICAg
IHBlcmZvcm1hbmNlLmNsZWFyTWFya3MoJ3RpbWVyJyk7CisgICAgcmV0dXJuIHRpbWU7Cit9CisK
K3Rlc3RUaW1lUmVzb2x1dGlvbih0aW1lQnlQZXJmb3JtYW5jZU5vdywgJ3BlcmZvcm1hbmNlLm5v
dygpJyk7Cit0ZXN0VGltZVJlc29sdXRpb24odGltZUJ5VXNlclRpbWluZywgJ2VudHJ5LnN0YXJ0
VGltZScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNl
cnZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2Vy
dmVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ODI2YjljYmRhZjJjNWZkNDQxMzRjMTIxN2Rh
MzRlMjQzNjRiNzA4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJm
b3JtYW5jZS1vYnNlcnZlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1MgV29y
a2VyOiBUZXN0IFBlcmZvcm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4KKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZj
OTJiYzk3MTAwM2YyZWE5MmZiZDE2OWQ4ZGQ3YTY0ZDA2MjA2MmQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmh0bWwKQEAgLTAsMCAr
MSwxOCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2Ny
aXB0PgorYXN5bmNfdGVzdChmdW5jdGlvbih0KSB7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3Jr
ZXIoInJlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcyIpOworICB3
b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICB0LnN0ZXAoKCkgPT4gYXNz
ZXJ0X2VxdWFscyhldmVudC5kYXRhLCAnU1VDQ0VTUycpKTsKKyAgICB0LmRvbmUoKTsKKyAgfQor
fSwgJ1dvcmtlcjogVGVzdCBQZXJmb3JtYW5jZSBPYnNlcnZlciBpbnNpZGUgYSB3b3JrZXIuJyk7
Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA3MzAwODFmNGQ2
N2IwNjQxZGU4MDBlMmE4ODFhZjAyNzJiMjJiOWIyLi42NGU3ZTI1YzIwZGNkODlkYWZmYzcyMjE3
NDJkOTUwYzg3MjY3OWFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9u
LXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdh
dGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNl
cnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgYXNzZXJ0X3VucmVhY2hl
ZDogdW5leHBlY3RlZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICd0aW1pbmcud29ya2VyU3RhcnQnKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKLUZB
SUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBuZXR3b3JrIGZh
bGxiYWNrIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3RpbWluZ0V2ZW50T3JkZXJbaV1d
JykgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xs
ZWQgbmF2aWdhdGlvbiB0aW1pbmcgcmVkaXJlY3QgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3Rl
ZCByZWplY3Rpb246IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1p
bmdbdGltaW5nRXZlbnRPcmRlcltpXV0nKSBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK0ZBSUwg
U2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBhc3NlcnRfdW5yZWFj
aGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0X2dyZWF0ZXJfdGhhbjogZXhwZWN0ZWQg
YSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAwIFJlYWNoZWQgdW5yZWFjaGFibGUgY29k
ZQorUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5ldHdv
cmsgZmFsbGJhY2sKK1BBU1MgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRp
bWluZyByZWRpcmVjdAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkv
cGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9w
ZXJmb3JtYW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dApp
bmRleCA3ZmZiMzg1ODNkYTg0YjY0Njk0NTVhZTc0MDRkMjI0YzRiNTczMGRhLi40ZWJkY2NmNWIy
YmQ0N2RhNGQ1ZDIxNWQxZThhMjc4MWE0YzJkZTAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
ZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNv
bnRlbnRmdWwtcGFpbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNl
LWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1w
YWludC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiBQQVNTIGRpZFJlY2VpdmVGaXJzdENv
bnRlbnRmdWxQYWludCBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5n
dGggaXMgMQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoIGlzIDIKIFBBU1Mg
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWludCIpLmxl
bmd0aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRl
bnRmdWwtcGFpbnQiLCAicGFpbnQiKS5sZW5ndGggaXMgMQogUEFTUyBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJwYWludCIpLmxlbmd0aCBpcyAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0
LWNvbnRlbnRmdWwtcGFpbnQuaHRtbCBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWlu
dC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1s
CmluZGV4IDAwNzhhNDM1NDViOWY0YjZjZmFiZjgxNzE2NjFiM2I2MDFjNGFhNzkuLjFmMjgwYjQw
Nzc1ZTJhOWE4MmY4ZDNiNjZlNzk4ZjcwYTc1NTdlMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3Qt
Y29udGVudGZ1bC1wYWludC5odG1sCisrKyBiL0xheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9w
YWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5o
dG1sCkBAIC0zNiw3ICszNiw3IEBAIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKICAgICBk
b2N1bWVudC5ib2R5LmlubmVyVGV4dCA9ICdURVhUMic7CiAgICAgYXdhaXQgd2FpdEZvckZDUCgp
OwogICAgIHNob3VsZEJlVHJ1ZSgnZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBhaW50Jyk7Ci0g
ICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGgnLCAiMSIpOworICAg
IHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoJywgIjIiKTsKICAgICBz
aG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1w
YWludCIpLmxlbmd0aCcsICIxIik7CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeU5hbWUoImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiLCAicGFpbnQiKS5sZW5ndGgnLCAiMSIp
OwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpLmxl
bmd0aCcsICIxIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVy
Zm9ybWFuY2Utb2JzZXJ2ZXItYXBpLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BlcmZvcm1h
bmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CmluZGV4IDc2NDlh
ODQzMWNhNDQyYjE2MDdlMjhlZWQ2ZDQ2YWM5ZTZjZGYwZGEuLjNhNjdkYzBiYjYzZDYwOWRhODIx
NDZiNzYyZTNkZThjZGYwYTk0NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BlcmZvcm1hbmNl
LWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0
CkBAIC0xMSw3ICsxMSw3IEBAIFBBU1MgUGVyZm9ybWFuY2VPYnNlcnZlcigpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IENvbnN0cnVjdG9yIHJlcXVpcmVzICduZXcnCiBQQVNTIG5ldyBQZXJm
b3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBh
cmd1bWVudHMuCiBQQVNTIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKDEpIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IEFyZ3VtZW50IDEgKCdjYWxsYmFjaycpIHRvIHRoZSBQZXJmb3JtYW5jZU9i
c2VydmVyIGNvbnN0cnVjdG9yIG11c3QgYmUgYSBmdW5jdGlvbi4KIFBBU1Mgb2JzZXJ2ZXIgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbigpIHt9KSBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KLVBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IE5vdCBlbm91Z2ggYXJndW1lbnRzLgorUEFTUyBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQuCiBQ
QVNTIG9ic2VydmVyLm9ic2VydmUoIm1hcmsiKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBU
eXBlIGVycm9yLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHt9KSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2
ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczoibWFyayJ9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBWYWx1ZSBpcyBub3QgYSBzZXF1ZW5jZS4KQEAgLTM5LDcgKzM5LDcgQEAgUEFTUyBbV29ya2Vy
XSBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ29uc3Ry
dWN0b3IgcmVxdWkKIFBBU1MgW1dvcmtlcl0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgW1dvcmtl
cl0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
QXJndW1lbnQgMSAoJ2NhbGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3Ry
dWN0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlciA9IG5ldyBQ
ZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9u
LgotUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2Vy
dmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2Vy
ZSBwcm92aWRlZC4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgibWFyayIpIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIFtXb3JrZXJdIG9ic2VydmVy
Lm9ic2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlU
eXBlcyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKHtlbnRy
eVR5cGVzOiJtYXJrIn0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBh
IHNlcXVlbmNlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZv
cm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5j
ZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAppbmRleCBlZDAxYWUw
MDMxZjRlNWU4Zjc2ZTYwMTVkYjIzODgyMjY0NGI5MTJkLi5jMTQ2MjE0ZWYyZDZhOGFiMWQ2Yjhh
ZTM4Nzg2NWUxMDdiYTNmNzBjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1h
cGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dApA
QCAtMTYsMTQgKzE2LDE0IEBAIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXMg
aXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeVR5cGUg
aXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeU5hbWUg
aXMgZGVmaW5lZC4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2YgQXJy
YXkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwIGlz
IHRydWUKLVBBU1MgcGVyZm9ybWFuY2UubWFyaygidGVzdCIpOyBkaWQgbm90IHRocm93IGV4Y2Vw
dGlvbi4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMSBpcyB0cnVl
Ci1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNl
RW50cnkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0ubmFtZSBpcyAi
dGVzdCIKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZSBpcyAibWFy
ayIKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09
ICJudW1iZXIiIGlzIHRydWUKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVsw
XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5tYXJrKCJ0
ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkubGVuZ3RoID09PSAyIGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
W21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlzICJtYXJrIgorUEFT
UyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09
PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClb
bWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQogUEFTUyBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3Vn
aCBhcmd1bWVudHMuCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFs
IikubGVuZ3RoID09PSAwIGlzIHRydWUKIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCkBAIC02MCwxMSArNjAsMTEgQEAgUEFTUyBb
V29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVl
CiBQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMg
dHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhy
b3cgZXhjZXB0aW9uLgogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAxIGlzIHRydWUKLVBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
WzBdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeSBpcyB0cnVlCi1QQVNTIFtXb3JrZXJdIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lIGlzICJ0ZXN0IgotUEFTUyBbV29ya2VyXSBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlIGlzICJtYXJrIgotUEFTUyBbV29y
a2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLnN0YXJ0VGltZSA9PT0gIm51
bWJlciIgaXMgdHJ1ZQotUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdIGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRy
eSBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5k
ZXhdLm5hbWUgaXMgInRlc3QiCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVttYXJrSW5kZXhdLmVudHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIg
aXMgdHJ1ZQorUEFTUyBbV29ya2VyXSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21h
cmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiIGlzIHRydWUKIFBBU1MgW1dvcmtlcl0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5v
dCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlUeXBlKCJub3QtcmVhbCIpLmxlbmd0aCA9PT0gMCBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1hcmsiKS5sZW5ndGggPT09IDEgaXMgdHJ1ZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGlu
ZS1hcGkuanMgYi9MYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5l
LWFwaS5qcwppbmRleCAxZWY3YWE1YzU4NDJmZGU5ZTFiZDIwM2YxZDI1NzM4N2I5NTM2MDRkLi5i
OGMyOTk0MDI2Y2Y5NGUwNzQ5ZWZiOTQyMWJjMWRiY2JiMjAzMjNlIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcworKysgYi9M
YXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qcwpAQCAt
NCw2ICs0LDggQEAgaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykKIGlmIChzZWxmLndpbmRvdykKICAg
ICBkZXNjcmlwdGlvbigiQmFzaWMgSW50ZXJmYWNlIHRlc3QgZm9yIHBlcmZvcm1hbmNlLXRpbWVs
aW5lIEFQSXMuIik7CiAKK2xldCBydW5uaW5nSW5Xb3JrZXIgPSAhIXNlbGYuaW1wb3J0U2NyaXB0
czsKKwogZGVidWcoIlBlcmZvcm1hbmNlRW50cnkiKTsKIHNob3VsZEJlRGVmaW5lZCgiUGVyZm9y
bWFuY2VFbnRyeSIpOwogc2hvdWxkQmVUcnVlKGAibmFtZSIgaW4gUGVyZm9ybWFuY2VFbnRyeS5w
cm90b3R5cGVgKTsKQEAgLTIxLDE0ICsyMywyNSBAQCBzaG91bGRCZURlZmluZWQoYFBlcmZvcm1h
bmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlUeXBlYCk7CiBzaG91bGRCZURlZmluZWQoYFBlcmZv
cm1hbmNlLnByb3RvdHlwZS5nZXRFbnRyaWVzQnlOYW1lYCk7CiAKIHNob3VsZEJlVHJ1ZShgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNlb2YgQXJyYXlgKTsKLXNob3VsZEJlVHJ1ZShg
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCA9PT0gMGApOworaWYgKHJ1bm5pbmdJbldv
cmtlcikgeworICAgIC8vIFdvcmtlcnMgZG9uJ3QgaGF2ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmcuCisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3Ro
ID09PSAwYCk7Cit9IGVsc2UgeworICAgIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpLmxlbmd0aCA9PT0gMWApOworfQogc2hvdWxkTm90VGhyb3coYHBlcmZvcm1hbmNlLm1h
cmsoInRlc3QiKTtgKTsKLXNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxl
bmd0aCA9PT0gMWApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0g
aW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5YCk7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5uYW1lYCwgInRlc3QiKTsKLXNob3VsZEJlRXF1YWxU
b1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZWAsICJtYXJrIik7
Ci1zaG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uc3RhcnRU
aW1lID09PSAibnVtYmVyImApOwotc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0
RW50cmllcygpWzBdLmR1cmF0aW9uID09PSAibnVtYmVyImApOworaWYgKHJ1bm5pbmdJbldvcmtl
cikgeworICAgIG1hcmtJbmRleCA9IDA7CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxYCk7Cit9IGVsc2UgeworICAgIG1hcmtJbmRleCA9IDE7
CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAy
YCk7Cit9CitzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhd
IGluc3RhbmNlb2YgUGVyZm9ybWFuY2VFbnRyeWApOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKGBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5uYW1lYCwgInRlc3QiKTsKK3Nob3Vs
ZEJlRXF1YWxUb1N0cmluZyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50
cnlUeXBlYCwgIm1hcmsiKTsKK3Nob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciJgKTsKK3Nob3VsZEJlVHJ1
ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLmR1cmF0aW9uID09
PSAibnVtYmVyImApOwogCiBzaG91bGRUaHJvdyhgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlw
ZSgpYCk7CiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5vdC1y
ZWFsIikubGVuZ3RoID09PSAwYCk7CkBAIC01MCw1ICs2Myw1IEBAIHNob3VsZEJlVHJ1ZShgdHlw
ZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXS5kdXJhdGlvbiA9PT0g
Im51bWJlCiBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3Qi
LCAibm90LXJlYWwiKS5sZW5ndGggPT09IDBgKTsKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2Uu
Z2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJtYXJrIikubGVuZ3RoID09PSAxYCk7CiAKLWlmIChz
ZWxmLmltcG9ydFNjcmlwdHMpCitpZiAocnVubmluZ0luV29ya2VyKQogICAgIGZpbmlzaEpTVGVz
dCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1
dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0
X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OThkNGVkM2NlMTg0
YzY4ZDMzMTg2MTNmOGQyMGZlMjcyZDUyZTM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhl
IHZhbHVlcyBvZiBuYXYgdGltaW5nIDIgaW5zdGFuY2UncyB0aW1pbmctcmVsYXRlZCBhdHRyaWJ1
dGVzIGFyZSBpbiBjZXJ0YWluIG9yZGVyIGFuZCB0aGUgb3RoZXJzIGFyZSBvZiBleHBlY3RlZCB2
YWx1ZXMuCisKKworRkFJTCBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBpbnN0YW5jZSdz
IHZhbHVlIGlzIHJlYXNvbmFibGUuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJodHRwLzEuMSIg
YnV0IGdvdCAiIgorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>429085</attachid>
            <date>2021-05-19 12:30:34 -0700</date>
            <delta_ts>2021-05-19 12:51:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184363-20210519123033.patch</filename>
            <type>text/plain</type>
            <size>221563</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNzc3NDIpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDIxLTA1LTE5ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIE5hdmln
YXRpb24gVGltaW5nIExldmVsIDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE4NDM2MworCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4K
KworICAgICAgICAqIFNjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50
YWwueWFtbDoKKwogMjAyMS0wNS0xOSAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CiAK
ICAgICAgICAgVXBkYXRlIEJhc2U2NCBlbmNvZGluZy9kZWNvZGluZyB0byBtYXRjaCBtb3JlIG1v
ZGVybiBXZWJLaXQgY29udmVudGlvbnMKSW5kZXg6IFNvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJl
bmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1s
CShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2Vi
UHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbAkod29ya2luZyBjb3B5KQpAQCAtNzgyLDYgKzc4
MiwxOCBAQCBQZXJFbGVtZW50U3BlYWtlclNlbGVjdGlvbkVuYWJsZWQ6CiAgICAgV2ViQ29yZToK
ICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAKK1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVu
YWJsZWQ6CisgIHR5cGU6IGJvb2wKKyAgaHVtYW5SZWFkYWJsZU5hbWU6ICJQZXJmb3JtYW5jZU5h
dmlnYXRpb25UaW1pbmciCisgIGh1bWFuUmVhZGFibGVEZXNjcmlwdGlvbjogIkVuYWJsZSBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcgQVBJIgorICBkZWZhdWx0VmFsdWU6CisgICAgV2ViS2l0
TGVnYWN5OgorICAgICAgZGVmYXVsdDogZmFsc2UKKyAgICBXZWJLaXQ6CisgICAgICBkZWZhdWx0
OiBmYWxzZQorICAgIFdlYkNvcmU6CisgICAgICBkZWZhdWx0OiBmYWxzZQorCiBQcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudERlYnVnTW9kZUVuYWJsZWQ6CiAgIHR5cGU6IGJvb2wKICAgaHVtYW5SZWFk
YWJsZU5hbWU6ICJQcml2YXRlIENsaWNrIE1lYXN1cmVtZW50IERlYnVnIE1vZGUiCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwxNTkgQEAKKzIwMjEtMDUtMTkgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Ig
TmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBO
aXdhLgorCisgICAgICAgIFRoaXMgaXMgYmFzaWNhbGx5IGp1c3QgYSBuZXcgc2hhcGUgZm9yIGV4
cG9zaW5nIHRoZSBzYW1lIGRhdGEgYXMgd2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24sIGJ1
dCB3aXRoIGEgc2hhcGUgdGhhdCBmaXRzIGJldHRlciBpbnRvIHRoZSByZXN0IG9mIHRoZQorICAg
ICAgICBwZXJmb3JtYW5jZSB0aW1lbGluZSBtZWFzdXJlbWVudHMgdGhhdCBoYXZlIGJlZW4gYWRk
ZWQgdG8gdGhlIHdlYiBwbGF0Zm9ybSBzaW5jZSBwZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLgorCisg
ICAgICAgIEkgbm90ZWQgdGhhdCBleHBvc2luZyB0cmFuc2ZlciBzaXplIGlzIHByb2JsZW1hdGlj
LCBhbmQgc29tZSBvZiB0aGUgdGVzdHMgZm9yIHJlYWRpbmcgdHJhbnNmZXIgc2l6ZSBzdGlsbCBm
YWlsLgorICAgICAgICBUaGVyZSBhcmUgc3RpbGwgYSBmZXcgcmVsYXRpdmVseSBtaW5vciB0ZXN0
IGZhaWx1cmVzIHRvIGZpeCBpbiBmdXR1cmUgcGF0Y2hlcy4gIEVhY2ggb25lIGlzIGFubm90YXRl
ZCBpbiB0aGUgTGF5b3V0VGVzdHMgQ2hhbmdlTG9ncy4KKworICAgICAgICBUZXN0czogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3Rp
dmVfaW1hZ2VfZG9jdW1lbnQuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sCisgICAg
ICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCisgICAgICAgICAgICAgICBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9p
bnN0YW5jZV9hY2Nlc3NvcnMuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZyYW1l
Lmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS5odG1sCisg
ICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29y
aWdpbi5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwKKyAgICAgICAg
ICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlv
bi5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL3NlY3VyZS1jb25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwK
KyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxp
ZC1lbnRyaWVzLmh0bWwKKyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxlLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tb2JzZXJ2ZS5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
d29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbAorCisgICAgICAgICogQ01ha2VM
aXN0cy50eHQ6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDoKKyAg
ICAgICAgKiBEZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJp
dmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1Bl
cmZvcm1hbmNlRW50cnlDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9KU05ld2x5Q3Jl
YXRlZCk6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50OjpzZXRSZWFkeVN0YXRlKToKKyAgICAgICAgU29tZXRpbWVzIHRoZSByZWFkeSBzdGF0
ZSBqdW1wcyByaWdodCB0byBDb21wbGV0ZSB3aXRob3V0IGhpdHRpbmcgSW50ZXJhY3RpdmUgYWxv
bmcgdGhlIHdheS4KKyAgICAgICAgV2hlbiB0aGlzIGhhcHBlbnMsIHdlIHdhbnQgdG8gbWFyayBi
b3RoIG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUgYW5kIG1fZG9jdW1lbnRUaW1pbmcuZG9t
SW50ZXJhY3RpdmUuCisgICAgICAgICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpub3RpZnlGaW5pc2hlZCk6CisgICAgICAgIENh
bGwgYWRkTmF2aWdhdGlvblRpbWluZyBpbiBub3RpZnlGaW5pc2hlZCB0byBjcmVhdGUgdGhlIG5h
dmlnYXRpb24gdGltaW5nIG9iamVjdCB3aGVuIHdlIGFyZSBkb25lIG5hdmlnYXRpbmcKKyAgICAg
ICAgKiBsb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxv
YWRlci5oOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZVRpbWluZy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQpOgorICAgICAgICBBZGQgYSBVUkwgcGFy
YW1ldGVyLiAgU29tZXRpbWVzIHdlIG5lZWQgdG8gdXNlIHRoZSByZXF1ZXN0J3MgVVJMIGFuZCBz
b21ldGltZXMgdGhlIHJlc3BvbnNlJ3MuICBEaWZmZXJlbnQgc3BlY3Mgd3JpdHRlbiBhdCBkaWZm
ZXJlbnQgdGltZXMuCisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6cG9wdWxhdGVT
ZXJ2ZXJUaW1pbmcgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OnBv
cHVsYXRlU2VydmVyVGltaW5nKTogRGVsZXRlZC4KKyAgICAgICAgKiBsb2FkZXIvUmVzb3VyY2VU
aW1pbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlVGltaW5nOjp1cmwgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VUaW1pbmc6OmluaXRpYXRvciBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6bG9hZFRpbWluZyBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpSZXNvdXJjZVRpbWluZzo6bmV0d29ya0xvYWRNZXRyaWNzIGNvbnN0KToKKyAg
ICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXI6OnJlcG9ydFJlc291cmNlVGltaW5nKToKKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpnZXRFbnRy
aWVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlU
eXBlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlO
YW1lIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjphcHBlbmRCdWZmZXJl
ZEVudHJpZXNCeVR5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OmFk
ZE5hdmlnYXRpb25UaW1pbmcpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OnJlZ2lz
dGVyUGVyZm9ybWFuY2VPYnNlcnZlcik6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6
cXVldWVFbnRyeSk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6c2NoZWR1bGVUYXNr
SWZOZWVkZWQpOgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuaDoKKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlRW50cnkuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnk6
OnN0YXJ0VGltZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojpk
dXJhdGlvbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5Ojppc1Jl
c291cmNlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50
cnk6OmlzTWFyayBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5j
ZUVudHJ5Ojppc01lYXN1cmUgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVy
Zm9ybWFuY2VFbnRyeTo6aXNQYWludCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9Q
ZXJmb3JtYW5jZU1hcmsuaDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgIFNQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4vRU5EIGRvZXNuJ3Qgd29yayB3ZWxsIHdpdGggUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nIHdoaWNoIGluaGVyaXRzIGZyb20gUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZyB3aGljaCBib3RoIGhhdmUgZGlzdGluY3QgdHlwZXMuCisgICAgICAgIGlz
PFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+IGRvZXNuJ3QgZ2l2ZSB1cyB0aGUgaW5mbyB3ZSBu
ZWVkLiAgSSByZXBsYWNlZCB0aGF0IHdpdGggInN3aXRjaCAoZW50cnktPnBlcmZvcm1hbmNlRW50
cnlUeXBlKCkpIiBpbiB0aGUgb25lIHBsYWNlIGl0J3MgdXNlZCwgYW5kIGl0IHdvcmtzIGxpa2Ug
YSBjaGFybS4KKyAgICAgICAgQWxzbyByZW5hbWVkIHR5cGUgdG8gcGVyZm9ybWFuY2VFbnRyeVR5
cGUgc28gaXQgZG9lc24ndCBjb25mbGljdCB3aXRoIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zzo6dHlwZSwgd2hpY2ggaXMgc3BlY2lmaWVkIGluIHRoZSBpZGwuCisgICAgICAgICogcGFnZS9Q
ZXJmb3JtYW5jZU1lYXN1cmUuaDoKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAg
ICogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwOiBBZGRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OnRvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUpOgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOjptaWxsaXNlY29uZHNTaW5jZU9yaWdpbiBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnNhbWVPcmlnaW5DaGVja0ZhaWxzIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5s
b2FkRXZlbnRTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OnVubG9hZEV2ZW50RW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBl
cmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6ZG9tSW50ZXJhY3RpdmUgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpkb21Db250ZW50TG9hZGVk
RXZlbnRTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbXBsZXRlIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50U3Rh
cnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
Ojpsb2FkRXZlbnRFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nOjp0eXBlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzo6cmVkaXJlY3RDb3VudCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnN0YXJ0VGltZSBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmR1cmF0aW9uIGNvbnN0KToK
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oOiBBZGRlZC4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGw6IENvcGllZCBmcm9t
IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwuCisgICAgICAgICog
cGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlT2JzZXJ2ZXI6OnRha2VSZWNvcmRzKToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNl
T2JzZXJ2ZXI6OmRpc2Nvbm5lY3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VPYnNl
cnZlcjo6ZGVsaXZlcik6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZU9ic2VydmVyOjpz
dXBwb3J0ZWRFbnRyeVR5cGVzKToKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIu
aDoKKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsOgorICAgICAgICAqIHBh
Z2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0OjpnZXRFbnRyaWVzQnlOYW1lIGNvbnN0KToKKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaDoKKyAgICAgICAgKGlzVHlwZSk6
IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OlBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZzo6bmV4dEhvcFByb3RvY29sIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6OnJlZGlyZWN0U3RhcnQgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RFbmQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6ZmV0Y2hTdGFydCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpkb21haW5Mb29r
dXBTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nOjpkb21haW5Mb29rdXBFbmQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdFN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OmNvbm5lY3RFbmQgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6c2VjdXJlQ29ubmVjdGlvblN0YXJ0
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJl
cXVlc3RTdGFydCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nOjpyZXNwb25zZVN0YXJ0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlRW5kIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Om5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1Rp
bWVTdGFtcCBjb25zdCk6CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
Lmg6CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjppbml0aWF0
b3JUeXBlIGNvbnN0KToKKyAgICAgICAgKGlzVHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogcGFn
ZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL0Jsb2JSZXNvdXJjZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkb05vdGlmeUZp
bmlzaCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xpZW50Lmg6CisgICAg
ICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUNsaWVudDo6ZGlkRmluaXNoTG9hZGluZyk6Cisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTeW5jaHJvbm91c0xvYWRlckNsaWVudDo6ZGlkRmluaXNoTG9hZGlu
Zyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5o
OgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5l
Y3Rpb25EZWxlZ2F0ZVdpdGhPcGVyYXRpb25RdWV1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUhhbmRsZUNGVVJMQ29ubmVjdGlvbkRlbGVnYXRlV2l0aE9wZXJhdGlvblF1ZXVlOjpk
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgUGFzcyBtZXRyaWNzIGluY2x1ZGluZyB0aGUgcmVz
cG9uc2UgZW5kIHRpbWUgZnJvbSBOU1VSTENvbm5lY3Rpb24gc28gd2UgZG9uJ3QgYXNzZXJ0IGlu
IFdlYktpdExlZ2FjeS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtM
b2FkTWV0cmljcy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmNvcHlUaW1pbmdEYXRhKToKKyAgICAg
ICAgVXNlIGN1cnJlbnRSZXF1ZXN0IGluc3RlYWQgb2YgcGFzc2luZyBpbiB0aGUgcmVzcG9uc2Ug
c28gd2UgY2FuIGNhbGwgaXQgZnJvbSBkaWRGaW5pc2hMb2FkaW5nLCB3aGVyZSB3ZSBkb24ndCBo
YXZlIGEgcmVzcG9uc2Ugc3RvcmVkIGFueXdoZXJlLgorICAgICAgICBXZSdyZSBqdXN0IGxvb2tp
bmcgZm9yIHdoZXRoZXIgaXQncyBodHRwIG9yIGh0dHBzLCBzbyB0aGUgY3VycmVudFJlcXVlc3Qg
KHdoaWNoIGlzIHRoZSByZXF1ZXN0IGFmdGVyIGFsbCB0aGUgcmVkaXJlY3RzKSBmaXRzIG91ciBw
dXJwb3NlLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1
cmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGU6OmhhbmRsZURhdGFVUkwp
OgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFz
T3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbToKKyAgICAgICAgKC1bV2ViQ29yZVJlc291cmNlSGFu
ZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlIGNvbm5lY3Rpb246ZGlkUmVjZWl2ZVJlc3BvbnNl
Ol0pOgorICAgICAgICAoLVtXZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVs
ZWdhdGUgY29ubmVjdGlvbkRpZEZpbmlzaExvYWRpbmc6XSk6CisKIDIwMjEtMDUtMTkgIFNhbSBX
ZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBCYXNlNjQgZW5jb2Rp
bmcvZGVjb2RpbmcgdG8gbWF0Y2ggbW9yZSBtb2Rlcm4gV2ViS2l0IGNvbnZlbnRpb25zCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTExMjksNiArMTEyOSw3IEBAIHNldChX
ZWJDb3JlX05PTl9TVkdfSURMX0ZJTEVTCiAgICAgcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyQ2Fs
bGJhY2suaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbAogICAg
IHBhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbAorICAgIHBhZ2UvUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nLmlkbAogICAgIHBhZ2UvUGVyZm9ybWFuY2VQYWludFRpbWluZy5pZGwKICAg
ICBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5j
ZVNlcnZlclRpbWluZy5pZGwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlu
cHV0LnhjZmlsZWxpc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMtaW5wdXQueGNmaWxlbGlzdAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAkod29ya2luZyBjb3B5KQpAQCAtMTIwMyw2
ICsxMjAzLDcgQEAgJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU1hcmtPcHRpbwogJChQ
Uk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaWRsCiAkKFBST0pFQ1RfRElSKS9w
YWdlL1BlcmZvcm1hbmNlTWVhc3VyZU9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1Bl
cmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwKKyQoUFJPSkVDVF9ESVIpL3BhZ2UvUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uVGltaW5nLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2Vy
dmVyLmlkbAogJChQUk9KRUNUX0RJUikvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2su
aWRsCiAkKFBST0pFQ1RfRElSKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaWRs
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxl
bGlzdAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMt
b3V0cHV0LnhjZmlsZWxpc3QJKHdvcmtpbmcgY29weSkKQEAgLTE2MDgsNiArMTYwOCw4IEBAICQo
QlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWIKICQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5o
CiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1BlcmZvcm1h
bmNlTmF2aWdhdGlvbi5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmNwcAor
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5j
ZU5hdmlnYXRpb25UaW1pbmcuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNQZXJmb3JtYW5jZU9ic2VydmVyLmgKICQoQlVJTFRf
UFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTUGVyZm9ybWFuY2VPYnNlcnZl
ckNhbGxiYWNrLmNwcApJbmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lv
biAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5n
IGNvcHkpCkBAIC0xMDQ5LDYgKzEwNDksNyBAQCBKU19CSU5ESU5HX0lETFMgOj0gXAogICAgICQo
V2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU1lYXN1cmUuaWRsIFwKICAgICAkKFdlYkNvcmUpL3Bh
Z2UvUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9Q
ZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNl
T2JzZXJ2ZXIuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckNh
bGxiYWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRy
eUxpc3QuaWRsIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTczNSw2ICsxNzM1LDcg
QEAgcGFnZS9QZXJmb3JtYW5jZU1hcmsuY3BwCiBwYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5jcHAK
IHBhZ2UvUGVyZm9ybWFuY2VNb25pdG9yLmNwcAogcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24u
Y3BwCitwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIHBhZ2UvUGVyZm9ybWFu
Y2VPYnNlcnZlci5jcHAKIHBhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAKIHBh
Z2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMzNTgsNiArMzM1OSw3IEBAIEpT
UGVyZm9ybWFuY2VNYXJrT3B0aW9ucy5jcHAKIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcAogSlNQ
ZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmNwcAogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3Bw
CitKU1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZl
ci5jcHAKIEpTUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmNwcAogSlNQZXJmb3JtYW5jZU9i
c2VydmVyRW50cnlMaXN0LmNwcApJbmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBA
IC0xNjA1NSw2ICsxNjA1NSw5IEBACiAJCURFQ0E3RkY0MUY5RkU5QjkwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjU1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2UyNTUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKIAkJREVDQTdGRjUxRjlGRTlCQTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Uy
NTYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTI1Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTI1Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OwogCQlERjE5RTJBQTI0NzcyOUE2MDA3QkRBQ0IgLyogU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29v
a2llQmxvY2tpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hvdWxkUmVs
YXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMg
LyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1h
bmNlTmF2aWdhdGlvblRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2
NUQwNzI1QTk4NEM5MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlERjRFMzhEQzI1Mjc5NTkzMDAyQTc0ODEgLyogVmVyc2lvbkNoZWNrcy5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZlcnNpb25DaGVja3MubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURGNEUzOERFMjUyNzk1OTQwMDJBNzQ4MSAv
KiBWZXJzaW9uQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZlcnNp
b25DaGVja3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREY3RTlBMjk0QzdBQUNF
MEFEODlCM0REIC8qIE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBNYXRoTUxPcGVyYXRvckRpY3Rpb25hcnkuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTIyNDY4LDYgKzIyNDcxLDkgQEAKIAkJCQk4QUY0RTU1MjExREM1
QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJCQk4QUY0RTU1
MzExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmggKi8sCiAJCQkJOEFG
NEU1NTQxMURDNUEzNjAwMEVEM0RFIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwgKi8sCisJ
CQkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWlu
Zy5jcHAgKi8sCisJCQkJREYzNjVEMDYyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZy5oICovLAorCQkJCURGMzY1RDA3MjVBOTg0QzkwMDVEREI4QyAvKiBQZXJm
b3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsICovLAogCQkJCUE1QTk5MzM1MUUzN0ZBRkQwMDVC
NUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmNwcCAqLywKIAkJCQlBNUE5OTMzNjFFMzdGQUZE
MDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlci5oICovLAogCQkJCUE1QTk5MzM3MUUzN0ZB
RkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmlkbCAqLywKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9t
LmNwcAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQ
ZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTAgKzM1LDEy
IEBACiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU1h
cmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3VyZS5oIgorI2luY2x1ZGUgIkpTUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVBhaW50
VGltaW5nLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5j
bHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJlLmgi
CisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VQYWludFRpbWluZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaCIKIApAQCAtNDgsMTggKzUwLDIwIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIEpTVmFs
dWUgdG9KU05ld2x5Q3JlYXRlZChKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIFJlZjxQZXJmb3JtYW5jZUVudHJ5PiYmIGVudHJ5KQogewotICAgIGlmIChp
czxQZXJmb3JtYW5jZVBhaW50VGltaW5nPihlbnRyeSkpCi0gICAgICAgIHJldHVybiBjcmVhdGVX
cmFwcGVyPFBlcmZvcm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRy
eSkpOwotCi0gICAgaWYgKGlzPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGVudHJ5KSkKLSAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNYXJr
PihlbnRyeSkpCisgICAgc3dpdGNoIChlbnRyeS0+cGVyZm9ybWFuY2VFbnRyeVR5cGUoKSkgewor
ICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6TmF2aWdhdGlvbjoKKyAgICAgICAgcmV0
dXJuIGNyZWF0ZVdyYXBwZXI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPihnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoZW50cnkpKTsKKyAgICBjYXNlIFBlcmZvcm1hbmNlRW50cnk6OlR5cGU6Ok1h
cms6CiAgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlTWFyaz4oZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGVudHJ5KSk7Ci0KLSAgICBpZiAoaXM8UGVyZm9ybWFuY2VNZWFzdXJl
PihlbnRyeSkpCisgICAgY2FzZSBQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpNZWFzdXJlOgogICAg
ICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxQZXJmb3JtYW5jZU1lYXN1cmU+KGdsb2JhbE9iamVj
dCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFuY2VFbnRyeTo6VHlwZTo6UmVz
b3VyY2U6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIGNhc2UgUGVyZm9ybWFu
Y2VFbnRyeTo6VHlwZTo6UGFpbnQ6CisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBlcmZv
cm1hbmNlUGFpbnRUaW1pbmc+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOworICAgIH0K
IAorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPFBl
cmZvcm1hbmNlRW50cnk+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShlbnRyeSkpOwogfQogCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5o
CShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3Jl
QnVpbHRpbk5hbWVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTE5Miw2ICsxOTIsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgbWFjcm8oUGF5bWVudFJlcXVlc3QpIFwKICAgICBtYWNybyhQYXlt
ZW50UmVxdWVzdFVwZGF0ZUV2ZW50KSBcCiAgICAgbWFjcm8oUGF5bWVudFJlc3BvbnNlKSBcCisg
ICAgbWFjcm8oUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKSBcCiAgICAgbWFjcm8oUGljdHVy
ZUluUGljdHVyZVdpbmRvdykgXAogICAgIG1hY3JvKFNRTEVycm9yKSBcCiAgICAgbWFjcm8oU1FM
UmVzdWx0U2V0KSBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHJldmlzaW9uIDI3Nzc0
MSkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEzODYsMTMgKzEzODYsMTMgQEAgdm9pZCBEb2N1bWVudDo6c2V0UmVhZHlTdGF0ZShSZWFkeVN0
YXRlIAogICAgICAgICBpZiAoIW1fZG9jdW1lbnRUaW1pbmcuZG9tTG9hZGluZykKICAgICAgICAg
ICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tTG9hZGluZyA9IE1vbm90b25pY1RpbWU6Om5vdygpOwog
ICAgICAgICBicmVhazsKLSAgICBjYXNlIEludGVyYWN0aXZlOgotICAgICAgICBpZiAoIW1fZG9j
dW1lbnRUaW1pbmcuZG9tSW50ZXJhY3RpdmUpCi0gICAgICAgICAgICBtX2RvY3VtZW50VGltaW5n
LmRvbUludGVyYWN0aXZlID0gTW9ub3RvbmljVGltZTo6bm93KCk7Ci0gICAgICAgIGJyZWFrOwog
ICAgIGNhc2UgQ29tcGxldGU6CiAgICAgICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21Db21w
bGV0ZSkKICAgICAgICAgICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29tcGxldGUgPSBNb25vdG9u
aWNUaW1lOjpub3coKTsKKyAgICAgICAgRkFMTFRIUk9VR0g7CisgICAgY2FzZSBJbnRlcmFjdGl2
ZToKKyAgICAgICAgaWYgKCFtX2RvY3VtZW50VGltaW5nLmRvbUludGVyYWN0aXZlKQorICAgICAg
ICAgICAgbV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSA9IE1vbm90b25pY1RpbWU6Om5v
dygpOwogICAgICAgICBicmVhazsKICAgICB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudExvYWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmNwcAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIsNyBA
QAogI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9y
YWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZS5o
IgogI2luY2x1ZGUgIlBpbmdMb2FkZXIuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMu
aCIKICNpbmNsdWRlICJQb2xpY3lDaGVja2VyLmgiCkBAIC00MTEsNyArNDEyLDcgQEAgYm9vbCBE
b2N1bWVudExvYWRlcjo6aXNMb2FkaW5nKCkgY29uc3QKICAgICByZXR1cm4gaXNMb2FkaW5nTWFp
blJlc291cmNlKCkgfHwgIW1fc3VicmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSB8fCAhbV9wbHVn
SW5TdHJlYW1Mb2FkZXJzLmlzRW1wdHkoKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6bm90
aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmKQordm9pZCBEb2N1bWVudExvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3Vy
Y2UmIHJlc291cmNlLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiB7CiAgICAg
QVNTRVJUKGlzTWFpblRocmVhZCgpKTsKICNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCkBA
IC00MTksNiArNDIwLDEzIEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENh
Y2gKICAgICAgICAgcmV0dXJuOwogI2VuZGlmCiAKKyAgICBpZiAoYXV0byBkb2N1bWVudCA9IG1h
a2VSZWZQdHIodGhpcy0+ZG9jdW1lbnQoKSkpIHsKKyAgICAgICAgaWYgKGF1dG8gZG9tV2luZG93
ID0gbWFrZVJlZlB0cihkb2N1bWVudC0+ZG9tV2luZG93KCkpKSB7CisgICAgICAgICAgICBpZiAo
ZG9jdW1lbnQtPnNldHRpbmdzKCkucGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nQVBJRW5hYmxl
ZCgpKQorICAgICAgICAgICAgICAgIGRvbVdpbmRvdy0+cGVyZm9ybWFuY2UoKS5hZGROYXZpZ2F0
aW9uVGltaW5nKCp0aGlzLCAqZG9jdW1lbnQsIHJlc291cmNlLCB0aW1pbmcoKSwgbWV0cmljcyk7
CisgICAgICAgIH0KKyAgICB9CisKICAgICBBU1NFUlRfVU5VU0VEKHJlc291cmNlLCBtX21haW5S
ZXNvdXJjZSA9PSAmcmVzb3VyY2UpOwogICAgIEFTU0VSVChtX21haW5SZXNvdXJjZSk7CiAgICAg
aWYgKCFtX21haW5SZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFtX21haW5SZXNvdXJjZS0+
d2FzQ2FuY2VsZWQoKSkgewpJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9h
ZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
ZXIuY3BwCShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3Vy
Y2VMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MzMsMTAgKzczMyw5IEBAIHZvaWQgUmVz
b3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVCdWZmZXIoUmUKICAgICBkaWRSZWNlaXZlQnVmZmVyKFdU
Rk1vdmUoYnVmZmVyKSwgZW5jb2RlZERhdGFMZW5ndGgsIERhdGFQYXlsb2FkQnl0ZXMpOwogfQog
Ci12b2lkIFJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKikK
K3ZvaWQgUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VIYW5kbGUqLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiB7Ci0gICAgTmV0d29ya0xvYWRNZXRy
aWNzIGVtcHR5TWV0cmljczsKLSAgICBkaWRGaW5pc2hMb2FkaW5nKGVtcHR5TWV0cmljcyk7Cisg
ICAgZGlkRmluaXNoTG9hZGluZyhtZXRyaWNzKTsKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWRlcjo6
ZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgJKHJldmlzaW9uIDI3Nzc0MSkK
KysrIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMDAsNyArMjAwLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdEFz
eW5jKFJlc291cmNlSGFuZGxlKiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFJlc291cmNlUmVzcG9uc2Um
JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZXNvdXJjZVJlcXVlc3QmJik+JiYpIG92ZXJyaWRl
OwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFyKiwg
dW5zaWduZWQsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRS
ZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwgUmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVu
Y29kZWREYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VIYW5kbGUqKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3Vy
Y2VIYW5kbGUqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKICAgICB2b2lk
IGRpZEZhaWwoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7
CiAgICAgdm9pZCB3YXNCbG9ja2VkKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CiAgICAgdm9p
ZCBjYW5ub3RTaG93VVJMKFJlc291cmNlSGFuZGxlKikgb3ZlcnJpZGU7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VUaW1pbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNv
dXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTYyLDkgKzYyLDkgQEAgUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1pbmc6OmZyb21DYWNoZQog
ICAgIHJldHVybiBSZXNvdXJjZVRpbWluZyh1cmwsIGluaXRpYXRvciwgbG9hZFRpbWluZywgcmVz
cG9uc2UsIHNlY3VyaXR5T3JpZ2luKTsKIH0KIAotUmVzb3VyY2VUaW1pbmcgUmVzb3VyY2VUaW1p
bmc6OmZyb21Mb2FkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgU3RyaW5nJiBpbml0
aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlP
cmlnaW4pCitSZXNvdXJjZVRpbWluZyBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoQ2FjaGVkUmVz
b3VyY2UmIHJlc291cmNlLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3Is
IGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYg
bmV0d29ya0xvYWRNZXRyaWNzLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4p
CiB7Ci0gICAgcmV0dXJuIFJlc291cmNlVGltaW5nKHJlc291cmNlLnJlc291cmNlUmVxdWVzdCgp
LnVybCgpLCBpbml0aWF0b3IsIGxvYWRUaW1pbmcsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3Vy
Y2UucmVzcG9uc2UoKSwgc2VjdXJpdHlPcmlnaW4pOworICAgIHJldHVybiBSZXNvdXJjZVRpbWlu
Zyh1cmwsIGluaXRpYXRvciwgbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNvdXJj
ZS5yZXNwb25zZSgpLCBzZWN1cml0eU9yaWdpbik7CiB9CiAKIFJlc291cmNlVGltaW5nIFJlc291
cmNlVGltaW5nOjpmcm9tU3luY2hyb25vdXNMb2FkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJp
bmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYgbG9hZFRpbWluZywgY29uc3QgTmV0d29y
a0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlLCBjb25zdCBTZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4pCkBAIC05Nywx
MCArOTcsMTAgQEAgdm9pZCBSZXNvdXJjZVRpbWluZzo6aW5pdFNlcnZlclRpbWluZyhjbwogICAg
ICAgICBtX3NlcnZlclRpbWluZyA9IFNlcnZlclRpbWluZ1BhcnNlcjo6cGFyc2VTZXJ2ZXJUaW1p
bmcocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpTZXJ2ZXJUaW1pbmcp
KTsKIH0KIAotVmVjdG9yPFJlZjxQZXJmb3JtYW5jZVNlcnZlclRpbWluZz4+IFJlc291cmNlVGlt
aW5nOjpwb3B1bGF0ZVNlcnZlclRpbWluZygpCitWZWN0b3I8UmVmPFBlcmZvcm1hbmNlU2VydmVy
VGltaW5nPj4gUmVzb3VyY2VUaW1pbmc6OnBvcHVsYXRlU2VydmVyVGltaW5nKCkgY29uc3QKIHsK
ICAgICByZXR1cm4gV1RGOjptYXAobV9zZXJ2ZXJUaW1pbmcsIFtdIChhdXRvJiBlbnRyeSkgewot
ICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc6OmNyZWF0ZShXVEZNb3ZlKGVu
dHJ5Lm5hbWUpLCBlbnRyeS5kdXJhdGlvbiwgV1RGTW92ZShlbnRyeS5kZXNjcmlwdGlvbikpOwor
ICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc6OmNyZWF0ZShTdHJpbmcoZW50
cnkubmFtZSksIGVudHJ5LmR1cmF0aW9uLCBTdHJpbmcoZW50cnkuZGVzY3JpcHRpb24pKTsKICAg
ICB9KTsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlVGltaW5nLmgJKHJl
dmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZVRpbWluZy5o
CSh3b3JraW5nIGNvcHkpCkBAIC00MSwxNSArNDEsMTUgQEAgY2xhc3MgUmVzb3VyY2VUaW1pbmcg
ewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIHN0YXRpYyBSZXNv
dXJjZVRpbWluZyBmcm9tQ2FjaGUoY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBpbml0aWF0b3Is
IGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgU2VjdXJp
dHlPcmlnaW4mKTsKLSAgICBzdGF0aWMgUmVzb3VyY2VUaW1pbmcgZnJvbUxvYWQoQ2FjaGVkUmVz
b3VyY2UmLCBjb25zdCBTdHJpbmcmIGluaXRpYXRvciwgY29uc3QgTG9hZFRpbWluZyYsIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CisgICAgc3RhdGlj
IFJlc291cmNlVGltaW5nIGZyb21Mb2FkKENhY2hlZFJlc291cmNlJiwgY29uc3QgVVJMJiwgY29u
c3QgU3RyaW5nJiBpbml0aWF0b3IsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9h
ZE1ldHJpY3MmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYpOwogICAgIHN0YXRpYyBSZXNvdXJjZVRp
bWluZyBmcm9tU3luY2hyb25vdXNMb2FkKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgaW5pdGlh
dG9yLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFNlY3VyaXR5T3JpZ2luJik7CiAKLSAgICBVUkwgdXJs
KCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KLSAgICBTdHJpbmcgaW5pdGlhdG9yKCkgY29uc3Qg
eyByZXR1cm4gbV9pbml0aWF0b3I7IH0KLSAgICBMb2FkVGltaW5nIGxvYWRUaW1pbmcoKSBjb25z
dCB7IHJldHVybiBtX2xvYWRUaW1pbmc7IH0KLSAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29y
a0xvYWRNZXRyaWNzKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3M7IH0KKyAg
ICBjb25zdCBVUkwmIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CisgICAgY29uc3QgU3Ry
aW5nJiBpbml0aWF0b3IoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYXRvcjsgfQorICAgIGNvbnN0
IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcoKSBjb25zdCB7IHJldHVybiBtX2xvYWRUaW1pbmc7IH0K
KyAgICBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0
IHsgcmV0dXJuIG1fbmV0d29ya0xvYWRNZXRyaWNzOyB9CiAgICAgYm9vbCBhbGxvd1RpbWluZ0Rl
dGFpbHMoKSBjb25zdCB7IHJldHVybiBtX2FsbG93VGltaW5nRGV0YWlsczsgfQotICAgIFZlY3Rv
cjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRpbWluZygpOwor
ICAgIFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBwb3B1bGF0ZVNlcnZlclRp
bWluZygpIGNvbnN0OwogICAgIFJlc291cmNlVGltaW5nIGlzb2xhdGVkQ29weSgpIGNvbnN0Owog
CiAgICAgdm9pZCBvdmVycmlkZUluaXRpYXRvck5hbWUoY29uc3QgU3RyaW5nJiBuYW1lKSB7IG1f
aW5pdGlhdG9yID0gbmFtZTsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291
cmNlTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVz
b3VyY2VMb2FkZXIuY3BwCShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MDQsNyArOTA0LDcg
QEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6cmVwb3J0UmVzb3VyY2VUaQogICAgICAgICByZXR1
cm47CiAKICAgICBTZWN1cml0eU9yaWdpbiYgb3JpZ2luID0gbV9vcmlnaW4gPyAqbV9vcmlnaW4g
OiBkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBhdXRvIHJlc291cmNlVGltaW5nID0g
UmVzb3VyY2VUaW1pbmc6OmZyb21Mb2FkKCptX3Jlc291cmNlLCBtX3Jlc291cmNlLT5pbml0aWF0
b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOworICAg
IGF1dG8gcmVzb3VyY2VUaW1pbmcgPSBSZXNvdXJjZVRpbWluZzo6ZnJvbUxvYWQoKm1fcmVzb3Vy
Y2UsIG1fcmVzb3VyY2UtPnJlc291cmNlUmVxdWVzdCgpLnVybCgpLCBtX3Jlc291cmNlLT5pbml0
aWF0b3JOYW1lKCksIG1fbG9hZFRpbWluZywgbmV0d29ya0xvYWRNZXRyaWNzLCBvcmlnaW4pOwog
CiAgICAgLy8gV29ya2VyIHJlc291cmNlcyBsb2FkZWQgaGVyZSBhcmUgYWxsIENhY2hlZFJhd1Jl
c291cmNlcyBsb2FkZWQgdGhyb3VnaCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyLgogICAgIC8vIFBh
c3MgdGhlIFJlc291cmNlVGltaW5nIGluZm9ybWF0aW9uIG9uIHNvIHRoYXQgV29ya2VyVGhyZWFk
YWJsZUxvYWRlciBtYXkgYWRkIHRoZW0gdG8gdGhlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmNwcAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzLDEyICs0MywxNCBAQAogI2luY2x1ZGUg
IlBlcmZvcm1hbmNlTWFya09wdGlvbnMuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmVP
cHRpb25zLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgiCisjaW5jbHVkZSAi
UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VPYnNl
cnZlci5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VUaW1pbmcu
aCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVVzZXJUaW1pbmcuaCIKICNpbmNsdWRlICJSZXNvdXJj
ZVJlc3BvbnNlLmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1
ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5s
aW5lcy5oPgogCkBAIC0xMjIsNiArMTI0LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVu
dHJ5Pj4gUGVyZm9ybQogewogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVu
dHJpZXM7CiAKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nKQorICAgICAgICBlbnRyaWVzLmFw
cGVuZChtX25hdmlnYXRpb25UaW1pbmcpOworCiAgICAgZW50cmllcy5hcHBlbmRWZWN0b3IobV9y
ZXNvdXJjZVRpbWluZ0J1ZmZlcik7CiAKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBAIC0xNDAs
NiArMTQ1LDkgQEAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gUGVyZm9ybQogewog
ICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IGVudHJpZXM7CiAKKyAgICBpZiAo
bV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAg
IGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRpbWluZyk7CisgICAgCiAgICAgaWYgKGVudHJ5
VHlwZSA9PSAicmVzb3VyY2UiKQogICAgICAgICBlbnRyaWVzLmFwcGVuZFZlY3RvcihtX3Jlc291
cmNlVGltaW5nQnVmZmVyKTsKIApAQCAtMTYxLDYgKzE2OSw5IEBAIFZlY3RvcjxSZWZQdHI8UGVy
Zm9ybWFuY2VFbnRyeT4+IFBlcmZvcm0KIHsKICAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNl
RW50cnk+PiBlbnRyaWVzOwogCisgICAgaWYgKG1fbmF2aWdhdGlvblRpbWluZyAmJiAoZW50cnlU
eXBlLmlzTnVsbCgpIHx8IGVudHJ5VHlwZSA9PSAibmF2aWdhdGlvbiIpICYmIG5hbWUgPT0gbV9u
YXZpZ2F0aW9uVGltaW5nLT5uYW1lKCkpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdh
dGlvblRpbWluZyk7CisKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8IGVudHJ5VHlwZSA9
PSAicmVzb3VyY2UiKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNl
VGltaW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5hbWUoKSA9PSBuYW1l
KQpAQCAtMTg0LDYgKzE5NSw5IEBAIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IFBl
cmZvcm0KIAogdm9pZCBQZXJmb3JtYW5jZTo6YXBwZW5kQnVmZmVyZWRFbnRyaWVzQnlUeXBlKGNv
bnN0IFN0cmluZyYgZW50cnlUeXBlLCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiYg
ZW50cmllcykgY29uc3QKIHsKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIGVudHJ5VHlw
ZSA9PSAibmF2aWdhdGlvbiIpCisgICAgICAgIGVudHJpZXMuYXBwZW5kKG1fbmF2aWdhdGlvblRp
bWluZyk7CisKICAgICBpZiAoZW50cnlUeXBlID09ICJyZXNvdXJjZSIpCiAgICAgICAgIGVudHJp
ZXMuYXBwZW5kVmVjdG9yKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwogCkBAIC0yMTQsNiArMjI4
LDEzIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnJlcG9ydEZpcnN0Q29udGVudGZ1bFAKICAgICBxdWV1
ZUVudHJ5KCptX2ZpcnN0Q29udGVudGZ1bFBhaW50KTsKIH0KIAordm9pZCBQZXJmb3JtYW5jZTo6
YWRkTmF2aWdhdGlvblRpbWluZyhEb2N1bWVudExvYWRlciYgZG9jdW1lbnRMb2FkZXIsIERvY3Vt
ZW50JiBkb2N1bWVudCwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25zdCBMb2FkVGltaW5n
JiB0aW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKK3sKKyAgICBBU1NF
UlQoZG9jdW1lbnQuc2V0dGluZ3MoKS5wZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmdBUElFbmFi
bGVkKCkpOworICAgIG1fbmF2aWdhdGlvblRpbWluZyA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZzo6Y3JlYXRlKG1fdGltZU9yaWdpbiwgcmVzb3VyY2UsIHRpbWluZywgbWV0cmljcywgZG9j
dW1lbnQudGltaW5nKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIGRvY3VtZW50TG9hZGVy
LnRyaWdnZXJpbmdBY3Rpb24oKS50eXBlKCkpOworICAgIHF1ZXVlRW50cnkoKm1fbmF2aWdhdGlv
blRpbWluZyk7Cit9CisKIHZvaWQgUGVyZm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKFJlc291
cmNlVGltaW5nJiYgcmVzb3VyY2VUaW1pbmcpCiB7CiAgICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKSk7CkBAIC0zNDYsNiArMzY3LDExIEBAIHZvaWQgUGVyZm9ybWFuY2U6OnJlbW92
ZUFsbE9ic2VydmVycygpCiB2b2lkIFBlcmZvcm1hbmNlOjpyZWdpc3RlclBlcmZvcm1hbmNlT2Jz
ZXJ2ZXIoUGVyZm9ybWFuY2VPYnNlcnZlciYgb2JzZXJ2ZXIpCiB7CiAgICAgbV9vYnNlcnZlcnMu
YWRkKCZvYnNlcnZlcik7CisKKyAgICBpZiAobV9uYXZpZ2F0aW9uVGltaW5nICYmIG9ic2VydmVy
LnR5cGVGaWx0ZXIoKS5jb250YWlucyhQZXJmb3JtYW5jZUVudHJ5OjpUeXBlOjpOYXZpZ2F0aW9u
KSkgeworICAgICAgICBvYnNlcnZlci5xdWV1ZUVudHJ5KCptX25hdmlnYXRpb25UaW1pbmcpOwor
ICAgICAgICBzY2hlZHVsZVRhc2tJZk5lZWRlZCgpOworICAgIH0KIH0KIAogdm9pZCBQZXJmb3Jt
YW5jZTo6dW5yZWdpc3RlclBlcmZvcm1hbmNlT2JzZXJ2ZXIoUGVyZm9ybWFuY2VPYnNlcnZlciYg
b2JzZXJ2ZXIpCkBAIC0zNTcsNyArMzgzLDcgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRy
eShQZXJmb3JtYW5jZQogewogICAgIGJvb2wgc2hvdWxkU2NoZWR1bGVUYXNrID0gZmFsc2U7CiAg
ICAgZm9yIChhdXRvJiBvYnNlcnZlciA6IG1fb2JzZXJ2ZXJzKSB7Ci0gICAgICAgIGlmIChvYnNl
cnZlci0+dHlwZUZpbHRlcigpLmNvbnRhaW5zKGVudHJ5LnR5cGUoKSkpIHsKKyAgICAgICAgaWYg
KG9ic2VydmVyLT50eXBlRmlsdGVyKCkuY29udGFpbnMoZW50cnkucGVyZm9ybWFuY2VFbnRyeVR5
cGUoKSkpIHsKICAgICAgICAgICAgIG9ic2VydmVyLT5xdWV1ZUVudHJ5KGVudHJ5KTsKICAgICAg
ICAgICAgIHNob3VsZFNjaGVkdWxlVGFzayA9IHRydWU7CiAgICAgICAgIH0KQEAgLTM2Niw2ICsz
OTIsMTEgQEAgdm9pZCBQZXJmb3JtYW5jZTo6cXVldWVFbnRyeShQZXJmb3JtYW5jZQogICAgIGlm
ICghc2hvdWxkU2NoZWR1bGVUYXNrKQogICAgICAgICByZXR1cm47CiAKKyAgICBzY2hlZHVsZVRh
c2tJZk5lZWRlZCgpOworfQorCit2b2lkIFBlcmZvcm1hbmNlOjpzY2hlZHVsZVRhc2tJZk5lZWRl
ZCgpCit7CiAgICAgaWYgKG1faGFzU2NoZWR1bGVkVGltaW5nQnVmZmVyRGVsaXZlcnlUYXNrKQog
ICAgICAgICByZXR1cm47CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2Uu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgJKHJldmlz
aW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDgsMTIgKzQ4LDE3IEBAIGNsYXNzIEpTR2xvYmFsT2JqZWN0OwogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIENhY2hlZFJlc291cmNlOworY2xhc3MgRG9jdW1lbnQ7
CitjbGFzcyBEb2N1bWVudExvYWRlcjsKIGNsYXNzIExvYWRUaW1pbmc7CitjbGFzcyBOZXR3b3Jr
TG9hZE1ldHJpY3M7CiBjbGFzcyBQZXJmb3JtYW5jZVVzZXJUaW1pbmc7CiBjbGFzcyBQZXJmb3Jt
YW5jZUVudHJ5OwogY2xhc3MgUGVyZm9ybWFuY2VNYXJrOwogY2xhc3MgUGVyZm9ybWFuY2VNZWFz
dXJlOwogY2xhc3MgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uOworY2xhc3MgUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nOwogY2xhc3MgUGVyZm9ybWFuY2VPYnNlcnZlcjsKIGNsYXNzIFBlcmZvcm1h
bmNlUGFpbnRUaW1pbmc7CiBjbGFzcyBQZXJmb3JtYW5jZVRpbWluZzsKQEAgLTkwLDYgKzk1LDcg
QEAgcHVibGljOgogICAgIEV4Y2VwdGlvbk9yPFJlZjxQZXJmb3JtYW5jZU1lYXN1cmU+PiBtZWFz
dXJlKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBjb25zdCBTdHJpbmcmIG1lYXN1cmVOYW1lLCBPcHRp
b25hbDxTdGFydE9yTWVhc3VyZU9wdGlvbnM+JiYsIGNvbnN0IFN0cmluZyYgZW5kTWFyayk7CiAg
ICAgdm9pZCBjbGVhck1lYXN1cmVzKGNvbnN0IFN0cmluZyYgbWVhc3VyZU5hbWUpOwogCisgICAg
dm9pZCBhZGROYXZpZ2F0aW9uVGltaW5nKERvY3VtZW50TG9hZGVyJiwgRG9jdW1lbnQmLCBDYWNo
ZWRSZXNvdXJjZSYsIGNvbnN0IExvYWRUaW1pbmcmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3Mm
KTsKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKFJlc291cmNlVGltaW5nJiYpOwogCiAgICAg
dm9pZCByZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwpAQCAtMTIxLDYgKzEyNyw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCByZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGxUaW1lckZpcmVkKCk7CiAK
ICAgICB2b2lkIHF1ZXVlRW50cnkoUGVyZm9ybWFuY2VFbnRyeSYpOworICAgIHZvaWQgc2NoZWR1
bGVUYXNrSWZOZWVkZWQoKTsKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdh
dGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlVGltaW5n
PiBtX3RpbWluZzsKQEAgLTEzOSw2ICsxNDYsNyBAQCBwcml2YXRlOgogCiAgICAgTW9ub3Rvbmlj
VGltZSBtX3RpbWVPcmlnaW47CiAKKyAgICBSZWZQdHI8UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGlt
aW5nPiBtX25hdmlnYXRpb25UaW1pbmc7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlUGFpbnRUaW1p
bmc+IG1fZmlyc3RDb250ZW50ZnVsUGFpbnQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFBlcmZvcm1h
bmNlVXNlclRpbWluZz4gbV91c2VyVGltaW5nOwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlRW50cnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnkuaAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDEwICs0NCwxMCBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB+UGVyZm9ybWFuY2VFbnRyeSgpOwogCiAgICAgY29uc3QgU3Ry
aW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9Ci0gICAgZG91YmxlIHN0YXJ0VGlt
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9Ci0gICAgZG91YmxlIGR1cmF0aW9uKCkg
Y29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQorICAgIHZpcnR1YWwgZG91YmxlIHN0YXJ0VGlt
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRUaW1lOyB9CisgICAgdmlydHVhbCBkb3VibGUgZHVy
YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9uOyB9CiAKLSAgICBlbnVtIGNsYXNzIFR5
cGUgeworICAgIGVudW0gY2xhc3MgVHlwZSA6IHVpbnQ4X3QgewogICAgICAgICBOYXZpZ2F0aW9u
ICA9IDEgPDwgMCwKICAgICAgICAgTWFyayAgICAgICAgPSAxIDw8IDEsCiAgICAgICAgIE1lYXN1
cmUgICAgID0gMSA8PCAyLApAQCAtNTUsMTYgKzU1LDExIEBAIHB1YmxpYzoKICAgICAgICAgUGFp
bnQgICAgICAgPSAxIDw8IDQKICAgICB9OwogCi0gICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25z
dCA9IDA7CisgICAgdmlydHVhbCBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgPSAw
OwogICAgIHZpcnR1YWwgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNvbnN0ID0gMDsKIAogICAg
IHN0YXRpYyBPcHRpb25hbDxUeXBlPiBwYXJzZUVudHJ5VHlwZVN0cmluZyhjb25zdCBTdHJpbmcm
IGVudHJ5VHlwZSk7CiAKLSAgICBib29sIGlzUmVzb3VyY2UoKSBjb25zdCB7IHJldHVybiB0eXBl
KCkgPT0gVHlwZTo6UmVzb3VyY2U7IH0KLSAgICBib29sIGlzTWFyaygpIGNvbnN0IHsgcmV0dXJu
IHR5cGUoKSA9PSBUeXBlOjpNYXJrOyB9Ci0gICAgYm9vbCBpc01lYXN1cmUoKSBjb25zdCB7IHJl
dHVybiB0eXBlKCkgPT0gVHlwZTo6TWVhc3VyZTsgfQotICAgIGJvb2wgaXNQYWludCgpIGNvbnN0
IHsgcmV0dXJuIHR5cGUoKSA9PSBUeXBlOjpQYWludDsgfQotCiAgICAgc3RhdGljIGJvb2wgc3Rh
cnRUaW1lQ29tcGFyZUxlc3NUaGFuKGNvbnN0IFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5PiYgYSwg
Y29uc3QgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+JiBiKQogICAgIHsKICAgICAgICAgcmV0dXJu
IGEtPnN0YXJ0VGltZSgpIDwgYi0+c3RhcnRUaW1lKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlTWFyay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VNYXJrLmgJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VNYXJrLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDE0ICs0OCwxMCBAQCBw
cml2YXRlOgogICAgIFBlcmZvcm1hbmNlTWFyayhjb25zdCBTdHJpbmcmIG5hbWUsIGRvdWJsZSBz
dGFydFRpbWUsIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYpOwogICAgIH5QZXJmb3JtYW5j
ZU1hcmsoKTsKIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFR5cGU6Ok1h
cms7IH0KKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gVHlwZTo6TWFyazsgfQogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAibWFyayJfczsgfQogCiAgICAgUmVmPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
bV9zZXJpYWxpemVkRGV0YWlsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi1TUEVD
SUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlTWFyaykKLSAgICBz
dGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkp
IHsgcmV0dXJuIGVudHJ5LmlzTWFyaygpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgp
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTWVhc3VyZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgJKHJldmlzaW9u
IDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VNZWFzdXJlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTQ4LDE0ICs0OCwxMCBAQCBwcml2YXRlOgogICAgIFBlcmZvcm1hbmNl
TWVhc3VyZShjb25zdCBTdHJpbmcmIG5hbWUsIGRvdWJsZSBzdGFydFRpbWUsIGRvdWJsZSBlbmRU
aW1lLCBSZWY8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiYmIGRldGFpbCk7CiAgICAgflBlcmZvcm1h
bmNlTWVhc3VyZSgpOwogCi0gICAgVHlwZSB0eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gVHlw
ZTo6TWVhc3VyZTsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBUeXBlOjpNZWFzdXJlOyB9CiAgICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuICJtZWFzdXJlIl9zOyB9CiAKICAgICBSZWY8U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlPiBtX3NlcmlhbGl6ZWREZXRhaWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFu
Y2VNZWFzdXJlKQotICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3Jt
YW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50cnkuaXNNZWFzdXJlKCk7IH0KLVNQRUNJQUxJ
WkVfVFlQRV9UUkFJVFNfRU5EKCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5jcHAJKG5vbmV4aXN0ZW50KQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsMTQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nLmgiCisKKyNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZS5oIgorI2luY2x1ZGUgIlJlc291
cmNlVGltaW5nLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZzo6TmF2aWdhdGlvblR5cGUgdG9QZXJmb3JtYW5jZU5hdmlnYXRpb25U
aW1pbmdOYXZpZ2F0aW9uVHlwZShOYXZpZ2F0aW9uVHlwZSBuYXZpZ2F0aW9uVHlwZSkKK3sKKyAg
ICBzd2l0Y2ggKG5hdmlnYXRpb25UeXBlKSB7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6QmFj
a0ZvcndhcmQ6CisgICAgICAgIHJldHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5h
dmlnYXRpb25UeXBlOjpCYWNrX2ZvcndhcmQ7CisgICAgY2FzZSBOYXZpZ2F0aW9uVHlwZTo6UmVs
b2FkOgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0
aW9uVHlwZTo6UmVsb2FkOworICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkxpbmtDbGlja2VkOgor
ICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6OkZvcm1TdWJtaXR0ZWQ6CisgICAgY2FzZSBOYXZpZ2F0
aW9uVHlwZTo6Rm9ybVJlc3VibWl0dGVkOgorICAgIGNhc2UgTmF2aWdhdGlvblR5cGU6Ok90aGVy
OgorICAgICAgICByZXR1cm4gUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpOYXZpZ2F0aW9u
VHlwZTo6TmF2aWdhdGU7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJl
dHVybiBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBlOjpOYXZpZ2F0
ZTsKK30KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBDYWNoZWRSZXNvdXJjZSYgcmVzb3Vy
Y2UsIGNvbnN0IExvYWRUaW1pbmcmIGxvYWRUaW1pbmcsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmlj
cyYgbWV0cmljcywgY29uc3QgRG9jdW1lbnRUaW1pbmcmIGRvY3VtZW50VGltaW5nLCBjb25zdCBT
ZWN1cml0eU9yaWdpbiYgb3JpZ2luLCBXZWJDb3JlOjpOYXZpZ2F0aW9uVHlwZSBuYXZpZ2F0aW9u
VHlwZSkKKyAgICA6IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcodGltZU9yaWdpbiwgUmVzb3Vy
Y2VUaW1pbmc6OmZyb21Mb2FkKHJlc291cmNlLCByZXNvdXJjZS5yZXNwb25zZSgpLnVybCgpLCAi
bmF2aWdhdGlvbiJfcywgbG9hZFRpbWluZywgbWV0cmljcywgb3JpZ2luKSkKKyAgICAsIG1fZG9j
dW1lbnRUaW1pbmcoZG9jdW1lbnRUaW1pbmcpCisgICAgLCBtX25hdmlnYXRpb25UeXBlKHRvUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nTmF2aWdhdGlvblR5cGUobmF2aWdhdGlvblR5cGUpKSB7
IH0KKworUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjp+UGVyZm9ybWFuY2VOYXZpZ2F0aW9u
VGltaW5nKCkgPSBkZWZhdWx0OworCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
OjptaWxsaXNlY29uZHNTaW5jZU9yaWdpbihNb25vdG9uaWNUaW1lIHRpbWUsIE9wdGlvbmFsPE1v
bm90b25pY1RpbWU+IHRpbWVPcmlnaW4pIGNvbnN0Cit7CisgICAgaWYgKCF0aW1lKQorICAgICAg
ICByZXR1cm4gMDsKKyAgICByZXR1cm4gUGVyZm9ybWFuY2U6OnJlZHVjZVRpbWVSZXNvbHV0aW9u
KHRpbWUgLSAodGltZU9yaWdpbiA/ICp0aW1lT3JpZ2luIDogbV90aW1lT3JpZ2luKSkubWlsbGlz
ZWNvbmRzKCk7Cit9CisKK2Jvb2wgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOjpzYW1lT3Jp
Z2luQ2hlY2tGYWlscygpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25h
dmlnYXRpb24tdGltaW5nLTIvI2Rmbi1zYW1lLW9yaWdpbi1jaGVjaworICAgIHJldHVybiAhbV9y
ZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKQorICAgICAgICB8fCBtX3Jlc291cmNl
VGltaW5nLmxvYWRUaW1pbmcoKS5oYXNDcm9zc09yaWdpblJlZGlyZWN0KCkKKyAgICAgICAgfHwg
IW1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmhhc1NhbWVPcmlnaW5Bc1ByZXZpb3VzRG9j
dW1lbnQoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dW5sb2Fk
RXZlbnRTdGFydCgpIGNvbnN0Cit7CisgICAgaWYgKHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkpCisg
ICAgICAgIHJldHVybiAwLjA7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1f
cmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLnVubG9hZEV2ZW50U3RhcnQoKSk7Cit9CisKK2Rv
dWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OnVubG9hZEV2ZW50RW5kKCkgY29uc3QK
K3sKKyAgICBpZiAoc2FtZU9yaWdpbkNoZWNrRmFpbHMoKSkKKyAgICAgICAgcmV0dXJuIDAuMDsK
KyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2Fk
VGltaW5nKCkudW5sb2FkRXZlbnRFbmQoKSk7Cit9CisKK2RvdWJsZSBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmc6OmRvbUludGVyYWN0aXZlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlz
ZWNvbmRzU2luY2VPcmlnaW4obV9kb2N1bWVudFRpbWluZy5kb21JbnRlcmFjdGl2ZSk7Cit9CisK
K2RvdWJsZSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVu
dFN0YXJ0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzU2luY2VPcmlnaW4obV9k
b2N1bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCk7Cit9CisKK2RvdWJsZSBQ
ZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6OmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1NpbmNlT3JpZ2luKG1fZG9jdW1lbnRUaW1p
bmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6ZG9tQ29tcGxldGUoKSBjb25zdAoreworICAgIHJldHVybiBtaWxsaXNl
Y29uZHNTaW5jZU9yaWdpbihtX2RvY3VtZW50VGltaW5nLmRvbUNvbXBsZXRlKTsKK30KKworZG91
YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50U3RhcnQoKSBjb25zdAor
eworICAgIHJldHVybiBtaWxsaXNlY29uZHNTaW5jZU9yaWdpbihtX3Jlc291cmNlVGltaW5nLmxv
YWRUaW1pbmcoKS5sb2FkRXZlbnRTdGFydCgpKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2
aWdhdGlvblRpbWluZzo6bG9hZEV2ZW50RW5kKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbWlsbGlz
ZWNvbmRzU2luY2VPcmlnaW4obV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkubG9hZEV2ZW50
RW5kKCkpOworfQorCitQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc6Ok5hdmlnYXRpb25UeXBl
IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fbmF2aWdhdGlvblR5cGU7Cit9CisKK3Vuc2lnbmVkIHNob3J0IFBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZzo6cmVkaXJlY3RDb3VudCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3Jlc291cmNl
VGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlm
IChtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5oYXNDcm9zc09yaWdpblJlZGlyZWN0KCkp
CisgICAgICAgIHJldHVybiAwOworCisgICAgcmV0dXJuIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRp
bWluZygpLnJlZGlyZWN0Q291bnQoKTsKK30KKworZG91YmxlIFBlcmZvcm1hbmNlTmF2aWdhdGlv
blRpbWluZzo6c3RhcnRUaW1lKCkgY29uc3QKK3sKKyAgICAvLyBodHRwczovL3d3dy53My5vcmcv
VFIvbmF2aWdhdGlvbi10aW1pbmctMi8jZG9tLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy1z
dGFydFRpbWUKKyAgICByZXR1cm4gMC4wOworfQorCitkb3VibGUgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nOjpkdXJhdGlvbigpIGNvbnN0Cit7CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3Jn
L1RSL25hdmlnYXRpb24tdGltaW5nLTIvI2RvbS1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmct
ZHVyYXRpb24KKyAgICByZXR1cm4gbG9hZEV2ZW50RW5kKCkgLSBzdGFydFRpbWUoKTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5oCShub25leGlzdGVudCkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmgJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgIkRvY3VtZW50VGltaW5nLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5oIgorI2luY2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitjbGFzcyBDYWNoZWRSZXNvdXJjZTsKK2NsYXNzIExvYWRUaW1pbmc7
CitjbGFzcyBOZXR3b3JrTG9hZE1ldHJpY3M7CitjbGFzcyBTZWN1cml0eU9yaWdpbjsKK2VudW0g
Y2xhc3MgTmF2aWdhdGlvblR5cGUgOiB1aW50OF90OworCitjbGFzcyBQZXJmb3JtYW5jZU5hdmln
YXRpb25UaW1pbmcgZmluYWwgOiBwdWJsaWMgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyB7Citw
dWJsaWM6CisgICAgZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSA6IHVpbnQ4X3QgeworICAgICAg
ICBOYXZpZ2F0ZSwKKyAgICAgICAgUmVsb2FkLAorICAgICAgICBCYWNrX2ZvcndhcmQsCisgICAg
ICAgIFByZXJlbmRlciwKKyAgICB9OworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gQXJncz4g
c3RhdGljIFJlZjxQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmc+IGNyZWF0ZShBcmdzJiYuLi4g
YXJncykgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmco
c3RkOjpmb3J3YXJkPEFyZ3M+KGFyZ3MpLi4uKSk7IH0KKyAgICB+UGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nKCk7CisKKyAgICBUeXBlIHBlcmZvcm1hbmNlRW50cnlUeXBlKCkgY29uc3QgZmlu
YWwgeyByZXR1cm4gVHlwZTo6TmF2aWdhdGlvbjsgfQorICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5
cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAibmF2aWdhdGlvbiJfczsgfQorCisgICAgZG91Ymxl
IHVubG9hZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgdW5sb2FkRXZlbnRFbmQoKSBj
b25zdDsKKyAgICBkb3VibGUgZG9tSW50ZXJhY3RpdmUoKSBjb25zdDsKKyAgICBkb3VibGUgZG9t
Q29udGVudExvYWRlZEV2ZW50U3RhcnQoKSBjb25zdDsKKyAgICBkb3VibGUgZG9tQ29udGVudExv
YWRlZEV2ZW50RW5kKCkgY29uc3Q7CisgICAgZG91YmxlIGRvbUNvbXBsZXRlKCkgY29uc3Q7Cisg
ICAgZG91YmxlIGxvYWRFdmVudFN0YXJ0KCkgY29uc3Q7CisgICAgZG91YmxlIGxvYWRFdmVudEVu
ZCgpIGNvbnN0OworICAgIE5hdmlnYXRpb25UeXBlIHR5cGUoKSBjb25zdDsKKyAgICB1bnNpZ25l
ZCBzaG9ydCByZWRpcmVjdENvdW50KCkgY29uc3Q7CisKKyAgICBkb3VibGUgc3RhcnRUaW1lKCkg
Y29uc3QgZmluYWw7CisgICAgZG91YmxlIGR1cmF0aW9uKCkgY29uc3QgZmluYWw7CisKK3ByaXZh
dGU6CisgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9y
aWdpbiwgQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBMb2FkVGltaW5nJiwgY29uc3QgTmV0d29ya0xv
YWRNZXRyaWNzJiwgY29uc3QgRG9jdW1lbnRUaW1pbmcmLCBjb25zdCBTZWN1cml0eU9yaWdpbiYs
IFdlYkNvcmU6Ok5hdmlnYXRpb25UeXBlKTsKKworICAgIGRvdWJsZSBtaWxsaXNlY29uZHNTaW5j
ZU9yaWdpbihNb25vdG9uaWNUaW1lLCBPcHRpb25hbDxNb25vdG9uaWNUaW1lPiB0aW1lT3JpZ2lu
ID0gV1RGOjpudWxsb3B0KSBjb25zdDsKKyAgICBib29sIHNhbWVPcmlnaW5DaGVja0ZhaWxzKCkg
Y29uc3Q7CisKKyAgICBEb2N1bWVudFRpbWluZyBtX2RvY3VtZW50VGltaW5nOworICAgIE5hdmln
YXRpb25UeXBlIG1fbmF2aWdhdGlvblR5cGU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5p
ZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcuaWRsCShub25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDUyIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5n
LTIvI2RvbS1wZXJmb3JtYW5jZW5hdmlnYXRpb250aW1pbmcKKwordHlwZWRlZiBkb3VibGUgRE9N
SGlnaFJlc1RpbWVTdGFtcDsKKworZW51bSBOYXZpZ2F0aW9uVHlwZSB7CisgICAgIm5hdmlnYXRl
IiwKKyAgICAicmVsb2FkIiwKKyAgICAiYmFja19mb3J3YXJkIiwKKyAgICAicHJlcmVuZGVyIgor
fTsKKworWworICAgIEVuYWJsZWRCeVNldHRpbmc9UGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5n
QVBJLAorICAgIEV4cG9zZWQ9V2luZG93CitdIGludGVyZmFjZSBQZXJmb3JtYW5jZU5hdmlnYXRp
b25UaW1pbmcgOiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIHsKKyAgICByZWFkb25seSAgICAg
ICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgdW5sb2FkRXZlbnRTdGFydDsKKyAgICBy
ZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgdW5sb2FkRXZlbnRF
bmQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVzVGltZVN0YW1wIGRv
bUludGVyYWN0aXZlOworICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1Rp
bWVTdGFtcCBkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydDsKKyAgICByZWFkb25seSAgICAgICAg
YXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAgZG9tQ29udGVudExvYWRlZEV2ZW50RW5kOwor
ICAgIHJlYWRvbmx5ICAgICAgICBhdHRyaWJ1dGUgRE9NSGlnaFJlc1RpbWVTdGFtcCBkb21Db21w
bGV0ZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIERPTUhpZ2hSZXNUaW1lU3RhbXAg
bG9hZEV2ZW50U3RhcnQ7CisgICAgcmVhZG9ubHkgICAgICAgIGF0dHJpYnV0ZSBET01IaWdoUmVz
VGltZVN0YW1wIGxvYWRFdmVudEVuZDsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIE5h
dmlnYXRpb25UeXBlICAgICAgdHlwZTsKKyAgICByZWFkb25seSAgICAgICAgYXR0cmlidXRlIHVu
c2lnbmVkIHNob3J0ICAgICAgcmVkaXJlY3RDb3VudDsKKyAgICBbRGVmYXVsdF0gb2JqZWN0IHRv
SlNPTigpOworfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZl
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZU9ic2Vy
dmVyLmNwcAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZU9ic2VydmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1
ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgi
CiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5oIgorI2luY2x1ZGUgIlJ1
bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJXb3JrZXJHbG9iYWxTY29wZS5oIgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xMDcsNiArMTA4LDExIEBAIEV4Y2VwdGlvbk9yPHZv
aWQ+IFBlcmZvcm1hbmNlT2JzZXJ2ZXI6Om8KICAgICByZXR1cm4geyB9OwogfQogCitWZWN0b3I8
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3JtYW5jZU9ic2VydmVyOjp0YWtlUmVjb3Jk
cygpCit7CisgICAgcmV0dXJuIHN0ZDo6ZXhjaGFuZ2UobV9lbnRyaWVzVG9EZWxpdmVyLCB7IH0p
OworfQorCiB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRpc2Nvbm5lY3QoKQogewogICAgIGlm
IChtX3BlcmZvcm1hbmNlKQpAQCAtMTE0LDYgKzEyMCw3IEBAIHZvaWQgUGVyZm9ybWFuY2VPYnNl
cnZlcjo6ZGlzY29ubmVjdCgpCiAKICAgICBtX3JlZ2lzdGVyZWQgPSBmYWxzZTsKICAgICBtX2Vu
dHJpZXNUb0RlbGl2ZXIuY2xlYXIoKTsKKyAgICBtX3R5cGVGaWx0ZXIgPSB7IH07CiB9CiAKIHZv
aWQgUGVyZm9ybWFuY2VPYnNlcnZlcjo6cXVldWVFbnRyeShQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkKQEAgLTEzMCw3ICsxMzcsNyBAQCB2b2lkIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6OmRlbGl2ZXIo
KQogICAgIGlmICghY29udGV4dCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgVmVjdG9yPFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5Pj4gZW50cmllcyA9IFdURk1vdmUobV9lbnRyaWVzVG9EZWxpdmVy
KTsKKyAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBlbnRyaWVzID0gc3RkOjpl
eGNoYW5nZShtX2VudHJpZXNUb0RlbGl2ZXIsIHsgfSk7CiAgICAgYXV0byBsaXN0ID0gUGVyZm9y
bWFuY2VPYnNlcnZlckVudHJ5TGlzdDo6Y3JlYXRlKFdURk1vdmUoZW50cmllcykpOwogCiAgICAg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsRmlyZU9ic2VydmVyQ2FsbGJhY2soKmNvbnRl
eHQsICJQZXJmb3JtYW5jZU9ic2VydmVyIl9zKTsKQEAgLTE0MSwxMiArMTQ4LDEzIEBAIHZvaWQg
UGVyZm9ybWFuY2VPYnNlcnZlcjo6ZGVsaXZlcigpCiBWZWN0b3I8U3RyaW5nPiBQZXJmb3JtYW5j
ZU9ic2VydmVyOjpzdXBwb3J0ZWRFbnRyeVR5cGVzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNv
bnRleHQpCiB7CiAgICAgVmVjdG9yPFN0cmluZz4gZW50cnlUeXBlcyA9IHsKLSAgICAgICAgLy8g
RklYTUU6IDxodHRwczovL3dlYmtpdC5vcmcvYi8xODQzNjM+IEFkZCBzdXBwb3J0IGZvciBOYXZp
Z2F0aW9uIFRpbWluZyBMZXZlbCAyCi0gICAgICAgIC8vICJuYXZpZ2F0aW9uIl9zLAogICAgICAg
ICAibWFyayJfcywKLSAgICAgICAgIm1lYXN1cmUiX3MKKyAgICAgICAgIm1lYXN1cmUiX3MsCiAg
ICAgfTsKIAorICAgIGlmIChjb250ZXh0LnNldHRpbmdzVmFsdWVzKCkucGVyZm9ybWFuY2VOYXZp
Z2F0aW9uVGltaW5nQVBJRW5hYmxlZCkKKyAgICAgICAgZW50cnlUeXBlcy5hcHBlbmQoIm5hdmln
YXRpb24iX3MpOworCiAgICAgaWYgKGlzPERvY3VtZW50Pihjb250ZXh0KSAmJiBkb3duY2FzdDxE
b2N1bWVudD4oY29udGV4dCkuc3VwcG9ydHNQYWludFRpbWluZygpKQogICAgICAgICBlbnRyeVR5
cGVzLmFwcGVuZCgicGFpbnQiX3MpOwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuaAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZU9ic2VydmVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDYgKzU3LDcgQEAg
cHVibGljOgogCiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gb2JzZXJ2ZShJbml0JiYpOwogICAgIHZv
aWQgZGlzY29ubmVjdCgpOworICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IHRh
a2VSZWNvcmRzKCk7CiAKICAgICBPcHRpb25TZXQ8UGVyZm9ybWFuY2VFbnRyeTo6VHlwZT4gdHlw
ZUZpbHRlcigpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZUZpbHRlcjsgfQogCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwJKHJldmlzaW9uIDI3Nzc0MSkK
KysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlci5pZGwJKHdvcmtpbmcg
Y29weSkKQEAgLTMzLDggKzMzLDkgQEAKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIg
ewogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihQZXJm
b3JtYW5jZU9ic2VydmVyQ2FsbGJhY2sgY2FsbGJhY2spOwogCi0gICAgdW5kZWZpbmVkIG9ic2Vy
dmUoUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CisgICAgdW5kZWZpbmVkIG9ic2Vy
dmUob3B0aW9uYWwgUGVyZm9ybWFuY2VPYnNlcnZlckluaXQgb3B0aW9ucyk7CiAgICAgdW5kZWZp
bmVkIGRpc2Nvbm5lY3QoKTsKKyAgICBzZXF1ZW5jZTxQZXJmb3JtYW5jZUVudHJ5PiB0YWtlUmVj
b3JkcygpOwogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBzdGF0aWMgcmVh
ZG9ubHkgYXR0cmlidXRlIEZyb3plbkFycmF5PERPTVN0cmluZz4gc3VwcG9ydGVkRW50cnlUeXBl
czsKIH07CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VPYnNlcnZlckVu
dHJ5TGlzdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZU9ic2VydmVyRW50cnlMaXN0LmNwcAkocmV2aXNpb24gMjc3NzQxKQorKysgU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjQsNyArNjQsNyBAQCBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBQZXJmb3Jt
CiAgICAgZm9yIChhdXRvJiBlbnRyeSA6IG1fZW50cmllcykgewogICAgICAgICBpZiAoIW5hbWUu
aXNOdWxsKCkgJiYgZW50cnktPm5hbWUoKSAhPSBuYW1lKQogICAgICAgICAgICAgY29udGludWU7
Ci0gICAgICAgIGlmICh0eXBlICYmIGVudHJ5LT50eXBlKCkgIT0gKnR5cGUpCisgICAgICAgIGlm
ICh0eXBlICYmIGVudHJ5LT5wZXJmb3JtYW5jZUVudHJ5VHlwZSgpICE9ICp0eXBlKQogICAgICAg
ICAgICAgY29udGludWU7CiAgICAgICAgIGVudHJpZXMuYXBwZW5kKGVudHJ5LmNvcHlSZWYoKSk7
CiAgICAgfQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGltaW5n
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVBhaW50VGlt
aW5nLmgJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VQYWludFRpbWluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCwxMyArNDQsOSBAQCBwcml2YXRl
OgogICAgIH0KIAogICAgIEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiAicGFpbnQiX3M7IH0KLSAgICBUeXBlIHR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBU
eXBlOjpQYWludDsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VFbnRyeVR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBUeXBlOjpQYWludDsgfQogCiAgICAgflBlcmZvcm1hbmNlUGFpbnRUaW1pbmco
KSA9IGRlZmF1bHQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VQYWludFRpbWluZykKLSAgICBz
dGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50cnkp
IHsgcmV0dXJuIGVudHJ5LmlzUGFpbnQoKTsgfQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQo
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuY3BwCShyZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04MSwxMiArODEsOSBA
QCBSZWY8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4gUGVyZm9ybWFuCiAKIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmc6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoTW9ub3RvbmljVGltZSB0
aW1lT3JpZ2luLCBSZXNvdXJjZVRpbWluZyYmIHJlc291cmNlVGltaW5nKQogICAgIDogUGVyZm9y
bWFuY2VFbnRyeShyZXNvdXJjZVRpbWluZy51cmwoKS5zdHJpbmcoKSwgZW50cnlTdGFydFRpbWUo
dGltZU9yaWdpbiwgcmVzb3VyY2VUaW1pbmcpLCBlbnRyeUVuZFRpbWUodGltZU9yaWdpbiwgcmVz
b3VyY2VUaW1pbmcpKQotICAgICwgbV9pbml0aWF0b3JUeXBlKHJlc291cmNlVGltaW5nLmluaXRp
YXRvcigpKQogICAgICwgbV90aW1lT3JpZ2luKHRpbWVPcmlnaW4pCi0gICAgLCBtX2xvYWRUaW1p
bmcocmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpKQotICAgICwgbV9uZXR3b3JrTG9hZE1ldHJp
Y3MocmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkpCi0gICAgLCBtX3Nob3VsZFJl
cG9ydERldGFpbHMocmVzb3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCi0gICAgLCBt
X3NlcnZlclRpbWluZyhyZXNvdXJjZVRpbWluZy5wb3B1bGF0ZVNlcnZlclRpbWluZygpKQorICAg
ICwgbV9yZXNvdXJjZVRpbWluZyhXVEZNb3ZlKHJlc291cmNlVGltaW5nKSkKKyAgICAsIG1fc2Vy
dmVyVGltaW5nKG1fcmVzb3VyY2VUaW1pbmcucG9wdWxhdGVTZXJ2ZXJUaW1pbmcoKSkKIHsKIH0K
IApAQCAtOTQsNyArOTEsNyBAQCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjp+UGVyZm9ybWFu
Y2VSCiAKIGNvbnN0IFN0cmluZyYgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6bmV4dEhvcFBy
b3RvY29sKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9uZXR3b3JrTG9hZE1ldHJpY3MucHJvdG9j
b2w7CisgICAgcmV0dXJuIG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucHJv
dG9jb2w7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjp3b3JrZXJTdGFy
dCgpIGNvbnN0CkBAIC0xMDUsMTQwICsxMDIsMTQwIEBAIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjp3b3JrZXIKIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJl
ZGlyZWN0U3RhcnQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQor
ICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAg
cmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0
YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5nLnJlZGlyZWN0U3RhcnQoKSk7CisgICAgcmV0
dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jl
c291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5yZWRpcmVjdFN0YXJ0KCkpOwogfQogCiBkb3VibGUg
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVkaXJlY3RFbmQoKSBjb25zdAogewotICAgIGlm
ICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxv
d1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIHJldHVybiBtb25v
dG9uaWNUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9sb2FkVGltaW5n
LnJlZGlyZWN0RW5kKCkpOworICAgIHJldHVybiBtb25vdG9uaWNUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKG1fdGltZU9yaWdpbiwgbV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkucmVkaXJl
Y3RFbmQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpmZXRjaFN0
YXJ0KCkgY29uc3QKIHsKICAgICAvLyBmZXRjaFN0YXJ0IGlzIGEgcmVxdWlyZWQgcHJvcGVydHku
Ci0gICAgQVNTRVJUKG1fbG9hZFRpbWluZy5mZXRjaFN0YXJ0KCkpOworICAgIEFTU0VSVChtX3Jl
c291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5mZXRjaFN0YXJ0KCkpOwogCi0gICAgcmV0dXJuIG1v
bm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRUaW1p
bmcuZmV0Y2hTdGFydCgpKTsKKyAgICByZXR1cm4gbW9ub3RvbmljVGltZVRvRE9NSGlnaFJlc1Rp
bWVTdGFtcChtX3RpbWVPcmlnaW4sIG1fcmVzb3VyY2VUaW1pbmcubG9hZFRpbWluZygpLmZldGNo
U3RhcnQoKSk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpkb21haW5M
b29rdXBTdGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisg
ICAgaWYgKCFtX3Jlc291cmNlVGltaW5nLmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICBy
ZXR1cm4gMC4wOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cFN0
YXJ0IDw9IDBfbXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNz
KCkuZG9tYWluTG9va3VwU3RhcnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGZldGNoU3RhcnQo
KTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9u
ZXR3b3JrTG9hZE1ldHJpY3MuZG9tYWluTG9va3VwU3RhcnQpOworICAgIHJldHVybiBuZXR3b3Jr
TG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9h
ZE1ldHJpY3MoKS5kb21haW5Mb29rdXBTdGFydCk7CiB9CiAKIGRvdWJsZSBQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nOjpkb21haW5Mb29rdXBFbmQoKSBjb25zdAogewotICAgIGlmICghbV9zaG91
bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0Rl
dGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0
cmljcy5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5u
ZXR3b3JrTG9hZE1ldHJpY3MoKS5kb21haW5Mb29rdXBFbmQgPD0gMF9tcykKICAgICAgICAgcmV0
dXJuIGRvbWFpbkxvb2t1cFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9E
T01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCk7
CisgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291
cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmRvbWFpbkxvb2t1cEVuZCk7CiB9CiAKIGRv
dWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpjb25uZWN0U3RhcnQoKSBjb25zdAogewot
ICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9yZXNvdXJjZVRpbWlu
Zy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsKIAotICAgIGlmICht
X25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3RhcnQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNv
dXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQgPD0gMF9tcykKICAg
ICAgICAgcmV0dXJuIGRvbWFpbkxvb2t1cEVuZCgpOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2Fk
VGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0U3Rh
cnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0U3RhcnQpOwogfQogCiBk
b3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6Y29ubmVjdEVuZCgpIGNvbnN0CiB7Ci0g
ICAgaWYgKCFtX3Nob3VsZFJlcG9ydERldGFpbHMpCisgICAgaWYgKCFtX3Jlc291cmNlVGltaW5n
LmFsbG93VGltaW5nRGV0YWlscygpKQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgaWYgKG1f
bmV0d29ya0xvYWRNZXRyaWNzLmNvbm5lY3RFbmQgPD0gMF9tcykKKyAgICBpZiAobV9yZXNvdXJj
ZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpCiAgICAgICAg
IHJldHVybiBjb25uZWN0U3RhcnQoKTsKIAotICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RP
TUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdEVuZCk7CisgICAg
cmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChtX3Jlc291cmNlVGlt
aW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLmNvbm5lY3RFbmQpOwogfQogCiBkb3VibGUgUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZzo6c2VjdXJlQ29ubmVjdGlvblN0YXJ0KCkgY29uc3QKIHsKLSAg
ICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVzb3VyY2VUaW1pbmcu
YWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAKLSAgICBpZiAobV9u
ZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID09IHJldXNlZFRMU0Nvbm5l
Y3Rpb25TZW50aW5lbCkKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJp
Y3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPT0gcmV1c2VkVExTQ29ubmVjdGlvblNlbnRpbmVs
KQogICAgICAgICByZXR1cm4gZmV0Y2hTdGFydCgpOwogCi0gICAgaWYgKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21zKQorICAgIGlmIChtX3Jlc291cmNl
VGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnNlY3VyZUNvbm5lY3Rpb25TdGFydCA8PSAwX21z
KQogICAgICAgICByZXR1cm4gMC4wOwogCi0gICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9N
SGlnaFJlc1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5zZWN1cmVDb25uZWN0aW9uU3Rh
cnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5zZWN1cmVDb25uZWN0aW9uU3RhcnQp
OwogfQogCiBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZzo6cmVxdWVzdFN0YXJ0KCkg
Y29uc3QKIHsKLSAgICBpZiAoIW1fc2hvdWxkUmVwb3J0RGV0YWlscykKKyAgICBpZiAoIW1fcmVz
b3VyY2VUaW1pbmcuYWxsb3dUaW1pbmdEZXRhaWxzKCkpCiAgICAgICAgIHJldHVybiAwLjA7CiAK
ICAgICAvLyByZXF1ZXN0U3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5vdCBt
YWRlLgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcykK
KyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3Rh
cnQgPD0gMF9tcykKICAgICAgICAgcmV0dXJuIGNvbm5lY3RFbmQoKTsKIAotICAgIHJldHVybiBu
ZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9uZXR3b3JrTG9hZE1ldHJpY3Mu
cmVxdWVzdFN0YXJ0KTsKKyAgICByZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGlt
ZVN0YW1wKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVxdWVzdFN0YXJ0
KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3BvbnNlU3RhcnQo
KSBjb25zdAogewotICAgIGlmICghbV9zaG91bGRSZXBvcnREZXRhaWxzKQorICAgIGlmICghbV9y
ZXNvdXJjZVRpbWluZy5hbGxvd1RpbWluZ0RldGFpbHMoKSkKICAgICAgICAgcmV0dXJuIDAuMDsK
IAogICAgIC8vIHJlc3BvbnNlU3RhcnQgaXMgMCB3aGVuIGEgbmV0d29yayByZXF1ZXN0IGlzIG5v
dCBtYWRlLgotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBf
bXMpCisgICAgaWYgKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkucmVzcG9u
c2VTdGFydCA8PSAwX21zKQogICAgICAgICByZXR1cm4gcmVxdWVzdFN0YXJ0KCk7CiAKLSAgICBy
ZXR1cm4gbmV0d29ya0xvYWRUaW1lVG9ET01IaWdoUmVzVGltZVN0YW1wKG1fbmV0d29ya0xvYWRN
ZXRyaWNzLnJlc3BvbnNlU3RhcnQpOworICAgIHJldHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhp
Z2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNw
b25zZVN0YXJ0KTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc3Bv
bnNlRW5kKCkgY29uc3QKIHsKICAgICAvLyByZXNwb25zZUVuZCBpcyBhIHJlcXVpcmVkIHByb3Bl
cnR5LgotICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5pc0NvbXBsZXRlKCkgfHwgbV9s
b2FkVGltaW5nLnJlc3BvbnNlRW5kKCkpOworICAgIEFTU0VSVChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLmlzQ29tcGxldGUoKSB8fCBtX3Jlc291cmNlVGltaW5nLmxvYWRU
aW1pbmcoKS5yZXNwb25zZUVuZCgpKTsKIAotICAgIGlmIChtX25ldHdvcmtMb2FkTWV0cmljcy5p
c0NvbXBsZXRlKCkpIHsKKyAgICBpZiAobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJp
Y3MoKS5pc0NvbXBsZXRlKCkpIHsKICAgICAgICAgLy8gcmVzcG9uc2VFbmQgaXMgMCB3aGVuIGEg
bmV0d29yayByZXF1ZXN0IGlzIG5vdCBtYWRlLgogICAgICAgICAvLyBUaGlzIHNob3VsZCBtZWFu
IGFsbCBvdGhlciBwcm9wZXJ0aWVzIGFyZSBlbXB0eS4KLSAgICAgICAgaWYgKG1fbmV0d29ya0xv
YWRNZXRyaWNzLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKLSAgICAgICAgICAgIEFTU0VSVChtX25l
dHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNT
RVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLnJlcXVlc3RTdGFydCA8PSAwX21zKTsKLSAgICAgICAg
ICAgIEFTU0VSVChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7Ci0g
ICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0
YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xvYWRNZXRyaWNzLmNv
bm5lY3RFbmQgPD0gMF9tcyk7Ci0gICAgICAgICAgICBBU1NFUlQobV9uZXR3b3JrTG9hZE1ldHJp
Y3MuY29ubmVjdFN0YXJ0IDw9IDBfbXMpOwotICAgICAgICAgICAgQVNTRVJUKG1fbmV0d29ya0xv
YWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA8PSAwX21zKTsKLSAgICAgICAgICAgIEFTU0VSVCht
X25ldHdvcmtMb2FkTWV0cmljcy5kb21haW5Mb29rdXBTdGFydCA8PSAwX21zKTsKLSAgICAgICAg
ICAgIHJldHVybiBmZXRjaFN0YXJ0KCk7CisgICAgICAgIGlmIChtX3Jlc291cmNlVGltaW5nLm5l
dHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlRW5kIDw9IDBfbXMpIHsKKyAgICAgICAgICAgIEFT
U0VSVChtX3Jlc291cmNlVGltaW5nLm5ldHdvcmtMb2FkTWV0cmljcygpLnJlc3BvbnNlU3RhcnQg
PD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9h
ZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXF1ZXN0U3RhcnQgPD0gMF9tcyk7
CisgICAgICAgICAgICBBU1NFUlQobV9yZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3Mo
KS5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICBBU1NFUlQobV9y
ZXNvdXJjZVRpbWluZy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5jb25uZWN0RW5kIDw9IDBfbXMpOwor
ICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCku
Y29ubmVjdFN0YXJ0IDw9IDBfbXMpOworICAgICAgICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1p
bmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWluTG9va3VwRW5kIDw9IDBfbXMpOworICAgICAg
ICAgICAgQVNTRVJUKG1fcmVzb3VyY2VUaW1pbmcubmV0d29ya0xvYWRNZXRyaWNzKCkuZG9tYWlu
TG9va3VwU3RhcnQgPD0gMF9tcyk7CisgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2VTdGFydCgp
OwogICAgICAgICB9CiAKLSAgICAgICAgcmV0dXJuIG5ldHdvcmtMb2FkVGltZVRvRE9NSGlnaFJl
c1RpbWVTdGFtcChtX25ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUVuZCk7CisgICAgICAgIHJl
dHVybiBuZXR3b3JrTG9hZFRpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV9yZXNvdXJjZVRpbWlu
Zy5uZXR3b3JrTG9hZE1ldHJpY3MoKS5yZXNwb25zZUVuZCk7CiAgICAgfQogCi0gICAgcmV0dXJu
IG1vbm90b25pY1RpbWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX2xvYWRU
aW1pbmcucmVzcG9uc2VFbmQoKSk7CisgICAgcmV0dXJuIG1vbm90b25pY1RpbWVUb0RPTUhpZ2hS
ZXNUaW1lU3RhbXAobV90aW1lT3JpZ2luLCBtX3Jlc291cmNlVGltaW5nLmxvYWRUaW1pbmcoKS5y
ZXNwb25zZUVuZCgpKTsKIH0KIAogZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6Om5l
dHdvcmtMb2FkVGltZVRvRE9NSGlnaFJlc1RpbWVTdGFtcChTZWNvbmRzIGRlbHRhKSBjb25zdAog
ewogICAgIEFTU0VSVChkZWx0YSk7Ci0gICAgU2Vjb25kcyBmaW5hbCA9IChtX2xvYWRUaW1pbmcu
ZmV0Y2hTdGFydCgpICsgZGVsdGEpIC0gbV90aW1lT3JpZ2luOworICAgIFNlY29uZHMgZmluYWwg
PSAobV9yZXNvdXJjZVRpbWluZy5sb2FkVGltaW5nKCkuZmV0Y2hTdGFydCgpICsgZGVsdGEpIC0g
bV90aW1lT3JpZ2luOwogICAgIHJldHVybiBQZXJmb3JtYW5jZTo6cmVkdWNlVGltZVJlc29sdXRp
b24oZmluYWwpLm1pbGxpc2Vjb25kcygpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAkocmV2aXNpb24gMjc3NzQxKQorKysg
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJMb2FkVGltaW5nLmgiCiAjaW5jbHVk
ZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgor
I2luY2x1ZGUgIlJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1JlZi5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00MiwxMSArNDMsMTEgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogY2xhc3MgUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc7CiBjbGFzcyBSZXNvdXJj
ZVRpbWluZzsKIAotY2xhc3MgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyBmaW5hbCA6IHB1Ymxp
YyBQZXJmb3JtYW5jZUVudHJ5IHsKK2NsYXNzIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgOiBw
dWJsaWMgUGVyZm9ybWFuY2VFbnRyeSB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nPiBjcmVhdGUoTW9ub3RvbmljVGltZSB0aW1lT3JpZ2luLCBSZXNv
dXJjZVRpbWluZyYmKTsKIAotICAgIGNvbnN0IEF0b21TdHJpbmcmIGluaXRpYXRvclR5cGUoKSBj
b25zdCB7IHJldHVybiBtX2luaXRpYXRvclR5cGU7IH0KKyAgICBjb25zdCBTdHJpbmcmIGluaXRp
YXRvclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlVGltaW5nLmluaXRpYXRvcigpOyB9
CiAgICAgY29uc3QgU3RyaW5nJiBuZXh0SG9wUHJvdG9jb2woKSBjb25zdDsKIAogICAgIGRvdWJs
ZSB3b3JrZXJTdGFydCgpIGNvbnN0OwpAQCAtNjEsMjcgKzYyLDIxIEBAIHB1YmxpYzoKICAgICBk
b3VibGUgcmVxdWVzdFN0YXJ0KCkgY29uc3Q7CiAgICAgZG91YmxlIHJlc3BvbnNlU3RhcnQoKSBj
b25zdDsKICAgICBkb3VibGUgcmVzcG9uc2VFbmQoKSBjb25zdDsKKwogICAgIGNvbnN0IFZlY3Rv
cjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiYgc2VydmVyVGltaW5nKCkgY29uc3QgeyBy
ZXR1cm4gbV9zZXJ2ZXJUaW1pbmc7IH0KIAotICAgIFR5cGUgdHlwZSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIFR5cGU6OlJlc291cmNlOyB9Ci0gICAgQVNDSUlMaXRlcmFsIGVudHJ5VHlwZSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuICJyZXNvdXJjZSJfczsgfQorICAgIFR5cGUgcGVyZm9ybWFuY2VF
bnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBUeXBlOjpSZXNvdXJjZTsgfQorICAg
IEFTQ0lJTGl0ZXJhbCBlbnRyeVR5cGUoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiAicmVzb3Vy
Y2UiX3M7IH0KIAotcHJpdmF0ZToKK3Byb3RlY3RlZDoKICAgICBQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nKE1vbm90b25pY1RpbWUgdGltZU9yaWdpbiwgUmVzb3VyY2VUaW1pbmcmJik7CiAgICAg
flBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcoKTsKIAogICAgIGRvdWJsZSBuZXR3b3JrTG9hZFRp
bWVUb0RPTUhpZ2hSZXNUaW1lU3RhbXAoU2Vjb25kcykgY29uc3Q7CiAKLSAgICBBdG9tU3RyaW5n
IG1faW5pdGlhdG9yVHlwZTsKICAgICBNb25vdG9uaWNUaW1lIG1fdGltZU9yaWdpbjsKLSAgICBM
b2FkVGltaW5nIG1fbG9hZFRpbWluZzsKLSAgICBOZXR3b3JrTG9hZE1ldHJpY3NXaXRob3V0Tm9u
VGltaW5nRGF0YSBtX25ldHdvcmtMb2FkTWV0cmljczsKLSAgICBib29sIG1fc2hvdWxkUmVwb3J0
RGV0YWlsczsKKyAgICBjb25zdCBSZXNvdXJjZVRpbWluZyBtX3Jlc291cmNlVGltaW5nOwogICAg
IFZlY3RvcjxSZWY8UGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmc+PiBtX3NlcnZlclRpbWluZzsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJ
TihXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKQotICAgIHN0YXRpYyBib29sIGlz
VHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRyeSkgeyByZXR1cm4gZW50
cnkuaXNSZXNvdXJjZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwJ
KHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTUwLDYgKzUwLDExIEBAIHR5cGVkZWYg
ZG91YmxlIERPTUhpZ2hSZXNUaW1lU3RhbXA7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUhp
Z2hSZXNUaW1lU3RhbXAgcmVxdWVzdFN0YXJ0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01I
aWdoUmVzVGltZVN0YW1wIHJlc3BvbnNlU3RhcnQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TUhpZ2hSZXNUaW1lU3RhbXAgcmVzcG9uc2VFbmQ7CisKKyAgICAvLyBOb3RlOiB0cmFuc2ZlclNp
emUsIGVuY29kZWRCb2R5U2l6ZSwgYW5kIGRlY29kZWRCb2R5U2l6ZSBhcmUgaW50ZW50aW9uYWxs
eSBvbWl0dGVkCisgICAgLy8gYmVjYXVzZSBvZiBwcml2YWN5IGNvbmNlcm5zIHN1Y2ggYXMgaHR0
cHM6Ly9naXRodWIuY29tL3czYy9yZXNvdXJjZS10aW1pbmcvaXNzdWVzLzIzOAorCisgICAgLy8g
aHR0cHM6Ly93d3cudzMub3JnL1RSL3NlcnZlci10aW1pbmcvI2V4dGVuc2lvbi10by10aGUtcGVy
Zm9ybWFuY2VyZXNvdXJjZXRpbWluZy1pbnRlcmZhY2UKICAgICBbRW5hYmxlZEF0UnVudGltZT1T
ZXJ2ZXJUaW1pbmddIHJlYWRvbmx5IGF0dHJpYnV0ZSBGcm96ZW5BcnJheTxQZXJmb3JtYW5jZVNl
cnZlclRpbWluZz4gc2VydmVyVGltaW5nOwogCiAgICAgW0RlZmF1bHRdIG9iamVjdCB0b0pTT04o
KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFu
ZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Js
b2JSZXNvdXJjZUhhbmRsZS5jcHAJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvQmxvYlJlc291cmNlSGFuZGxlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjM0LDcgKzYzNCw3IEBAIHN0YXRpYyB2b2lkIGRvTm90aWZ5RmluaXNoKEJsb2JSZXNvdXJj
ZUgKICAgICBpZiAoIWhhbmRsZS5jbGllbnQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaGFu
ZGxlLmNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKCZoYW5kbGUpOworICAgIGhhbmRsZS5jbGll
bnQoKS0+ZGlkRmluaXNoTG9hZGluZygmaGFuZGxlLCB7IH0pOwogfQogCiB2b2lkIEJsb2JSZXNv
dXJjZUhhbmRsZTo6bm90aWZ5RmluaXNoKCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvTmV0d29ya0xvYWRNZXRyaWNzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3MuaAkocmV2aXNpb24gMjc3NzQx
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrTG9hZE1ldHJpY3Mu
aAkod29ya2luZyBjb3B5KQpAQCAtMjAwLDcgKzIwMCw3IEBAIHB1YmxpYzoKIH07CiAKICNpZiBQ
TEFURk9STShDT0NPQSkKLUJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNvcHlUaW1pbmdEYXRhKE5T
VVJMQ29ubmVjdGlvbiAqLCBOU1VSTFJlc3BvbnNlICopOworQm94PE5ldHdvcmtMb2FkTWV0cmlj
cz4gY29weVRpbWluZ0RhdGEoTlNVUkxDb25uZWN0aW9uICopOwogV0VCQ09SRV9FWFBPUlQgQm94
PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTlNVUkxTZXNzaW9uVGFza1RyYW5z
YWN0aW9uTWV0cmljcyAqaW5jb21wbGV0ZU1ldHJpY3MpOwogI2VuZGlmCiAKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlQ2xp
ZW50LmgJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDQsNiArNDQsNyBA
QCBPQkpDX0NMQVNTIE5TQ2FjaGVkVVJMUmVzcG9uc2U7CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBj
bGFzcyBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTsKIGNsYXNzIENyZWRlbnRpYWw7CitjbGFzcyBO
ZXR3b3JrTG9hZE1ldHJpY3M7CiBjbGFzcyBQcm90ZWN0aW9uU3BhY2U7CiBjbGFzcyBSZXNvdXJj
ZUhhbmRsZTsKIGNsYXNzIFJlc291cmNlRXJyb3I7CkBAIC02Nyw3ICs2OCw3IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBj
aGFyKiwgdW5zaWduZWQsIGludCAvKmVuY29kZWREYXRhTGVuZ3RoKi8pIHsgfQogICAgIFdFQkNP
UkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQnVmZmVyKFJlc291cmNlSGFuZGxlKiwg
UmVmPFNoYXJlZEJ1ZmZlcj4mJiwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKICAgICAKLSAgICB2
aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIHsgfQorICAgIHZp
cnR1YWwgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiwgY29uc3QgTmV0d29y
a0xvYWRNZXRyaWNzJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoUmVzb3VyY2VIYW5k
bGUqLCBjb25zdCBSZXNvdXJjZUVycm9yJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHdhc0Jsb2Nr
ZWQoUmVzb3VyY2VIYW5kbGUqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgY2Fubm90U2hvd1VSTChS
ZXNvdXJjZUhhbmRsZSopIHsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9TeW5jaHJvbm91c0xvYWRlckNsaWVudC5jcHAJKHJldmlzaW9u
IDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNM
b2FkZXJDbGllbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Niw3ICs3Niw3IEBAIHZvaWQgU3lu
Y2hyb25vdXNMb2FkZXJDbGllbnQ6OmRpZFJlY2VpdmUKICAgICBtX2RhdGEuYXBwZW5kKHJlaW50
ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCo+KGRhdGEpLCBsZW5ndGgpOwogfQogCi12b2lkIFN5
bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlSGFuZGxlKiBo
YW5kbGUpCit2b2lkIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJl
c291cmNlSGFuZGxlKiBoYW5kbGUsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpCiB7CiAgICAg
bV9tZXNzYWdlUXVldWUtPmtpbGwoKTsKICNpZiBQTEFURk9STShDT0NPQSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1N5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50LmgJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNjcs
NyArNjcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlKFJlc291cmNlSGFuZGxlKiwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBv
dmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUFzeW5jKFJlc291cmNlSGFuZGxl
KiwgUmVzb3VyY2VSZXNwb25zZSYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpIG92ZXJy
aWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VIYW5kbGUqLCBjb25zdCBjaGFy
KiwgdW5zaWduZWQsIGludCAvKmVuY29kZWREYXRhTGVuZ3RoKi8pIG92ZXJyaWRlOwotICAgIHZv
aWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSopIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUhhbmRsZSosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmlj
cyYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmFpbChSZXNvdXJjZUhhbmRsZSosIGNvbnN0IFJl
c291cmNlRXJyb3ImKSBvdmVycmlkZTsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NB
TExCQUNLKQogICAgIHZvaWQgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZUFz
eW5jKFJlc291cmNlSGFuZGxlKiwgY29uc3QgUHJvdGVjdGlvblNwYWNlJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sKT4mJikgb3ZlcnJpZGU7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhdGVXaXRo
T3BlcmF0aW9uUXVldWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhPcGVy
YXRpb25RdWV1ZS5jcHAJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRlVSTENvbm5lY3Rpb25EZWxlZ2F0ZVdpdGhP
cGVyYXRpb25RdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNs
dWRlICJBdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNp
bmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNz
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJSZXNvdXJjZUhhbmRs
ZUNsaWVudC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAgLTIzOCw3ICsyMzks
NyBAQCB2b2lkIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdhCiAKICAgICAgICAg
TE9HKE5ldHdvcmssICJDRk5ldCAtIFJlc291cmNlSGFuZGxlQ0ZVUkxDb25uZWN0aW9uRGVsZWdh
dGVXaXRoT3BlcmF0aW9uUXVldWU6OmRpZEZpbmlzaExvYWRpbmcoaGFuZGxlPSVwKSAoJXMpIiwg
aGFuZGxlLCBoYW5kbGUtPmZpcnN0UmVxdWVzdCgpLnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRh
KCkpOwogCi0gICAgICAgIGhhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcoaGFuZGxl
KTsKKyAgICAgICAgaGFuZGxlLT5jbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZyhoYW5kbGUsIE5l
dHdvcmtMb2FkTWV0cmljcyB7IH0pOwogICAgICAgICBpZiAocHJvdGVjdGVkVGhpcy0+bV9tZXNz
YWdlUXVldWUpIHsKICAgICAgICAgICAgIHByb3RlY3RlZFRoaXMtPm1fbWVzc2FnZVF1ZXVlLT5r
aWxsKCk7CiAgICAgICAgICAgICBwcm90ZWN0ZWRUaGlzLT5tX21lc3NhZ2VRdWV1ZSA9IG51bGxw
dHI7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtM
b2FkTWV0cmljcy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL2NvY29hL05ldHdvcmtMb2FkTWV0cmljcy5tbQkocmV2aXNpb24gMjc3NzQxKQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrTG9hZE1ldHJpY3MubW0J
KHdvcmtpbmcgY29weSkKQEAgLTY3LDcgKzY3LDcgQEAgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4g
Y29weVRpbWluZ0RhdGEoTgogICAgICk7CiB9CiAKLUJveDxOZXR3b3JrTG9hZE1ldHJpY3M+IGNv
cHlUaW1pbmdEYXRhKE5TVVJMQ29ubmVjdGlvbiAqY29ubmVjdGlvbiwgTlNVUkxSZXNwb25zZSAq
cmVzcG9uc2UpCitCb3g8TmV0d29ya0xvYWRNZXRyaWNzPiBjb3B5VGltaW5nRGF0YShOU1VSTENv
bm5lY3Rpb24gKmNvbm5lY3Rpb24pCiB7CiAgICAgTlNEaWN0aW9uYXJ5ICp0aW1pbmdEYXRhID0g
W2Nvbm5lY3Rpb24gX3RpbWluZ0RhdGFdOwogICAgIGlmICghdGltaW5nRGF0YSkKQEAgLTg5LDcg
Kzg5LDcgQEAgQm94PE5ldHdvcmtMb2FkTWV0cmljcz4gY29weVRpbWluZ0RhdGEoTgogICAgICAg
ICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJlcXVlc3RTdGFydCIp
LAogICAgICAgICB0aW1pbmdWYWx1ZSh0aW1pbmdEYXRhLCBAIl9rQ0ZOVGltaW5nRGF0YVJlc3Bv
bnNlU3RhcnQiKSwKICAgICAgICAgdGltaW5nVmFsdWUodGltaW5nRGF0YSwgQCJfa0NGTlRpbWlu
Z0RhdGFDb25uZWN0aW9uUmV1c2VkIiksCi0gICAgICAgIHJlc3BvbnNlLlVSTC5zY2hlbWUKKyAg
ICAgICAgY29ubmVjdGlvbi5jdXJyZW50UmVxdWVzdC5VUkwuc2NoZW1lCiAgICAgKTsKIH0KICAg
ICAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3Vy
Y2VIYW5kbGVEZWxlZ2F0ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcAkocmV2aXNpb24g
Mjc3NzQxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNv
dXJjZUhhbmRsZURlbGVnYXRlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDcgKzE1Miw3IEBA
IHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWQKICAgICBjbGllbnQoKS0+
ZGlkUmVjZWl2ZUJ1ZmZlcigmbV9oYW5kbGUsIFdURk1vdmUoYnVmZmVyKSwgYnVmZmVyLT5zaXpl
KCkpOwogfQogCi12b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkQ29tcGxl
dGUoQ3VybFJlcXVlc3QmLCBOZXR3b3JrTG9hZE1ldHJpY3MmJikKK3ZvaWQgQ3VybFJlc291cmNl
SGFuZGxlRGVsZWdhdGU6OmN1cmxEaWRDb21wbGV0ZShDdXJsUmVxdWVzdCYsIE5ldHdvcmtMb2Fk
TWV0cmljcyYmIG1ldHJpY3MpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIApAQCAt
MTYwLDcgKzE2MCw3IEBAIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6OmN1cmxEaWQK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgQ3VybENhY2hlTWFuYWdlcjo6c2luZ2xldG9uKCkuZGlk
RmluaXNoTG9hZGluZyhtX2hhbmRsZSk7Ci0gICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmco
Jm1faGFuZGxlKTsKKyAgICBjbGllbnQoKS0+ZGlkRmluaXNoTG9hZGluZygmbV9oYW5kbGUsIFdU
Rk1vdmUobWV0cmljcykpOwogfQogCiB2b2lkIEN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpj
dXJsRGlkRmFpbFdpdGhFcnJvcihDdXJsUmVxdWVzdCYsIFJlc291cmNlRXJyb3ImJiByZXNvdXJj
ZUVycm9yLCBDZXJ0aWZpY2F0ZUluZm8mJikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCShy
ZXZpc2lvbiAyNzc3NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
UmVzb3VyY2VIYW5kbGVDdXJsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzksNiArMzksNyBAQAog
I2luY2x1ZGUgIkN1cmxSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKICNpbmNs
dWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCiAjaW5jbHVk
ZSAiTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVJbnRl
cm5hbC5oIgogI2luY2x1ZGUgIlNhbWVTaXRlSW5mby5oIgpAQCAtNTgyLDcgKzU4Myw3IEBAIHZv
aWQgUmVzb3VyY2VIYW5kbGU6OmhhbmRsZURhdGFVUkwoKQogICAgIH0KIAogICAgIGlmIChjbGll
bnQoKSkKLSAgICAgICAgY2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcodGhpcyk7CisgICAgICAg
IGNsaWVudCgpLT5kaWRGaW5pc2hMb2FkaW5nKHRoaXMsIHsgfSk7CiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dl
YkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VI
YW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0JKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFz
T3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQkod29ya2luZyBjb3B5KQpAQCAtMzgsNiArMzgsNyBA
QAogI2ltcG9ydCAiU3luY2hyb25vdXNMb2FkZXJDbGllbnQuaCIKICNpbXBvcnQgIldlYkNvcmVV
UkxSZXNwb25zZS5oIgogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KKyNpbXBv
cnQgPHBhbC9zcGkvY29jb2EvTlNVUkxDb25uZWN0aW9uU1BJLmg+CiAjaW1wb3J0IDx3dGYvQmxv
Y2tQdHIuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAKQEAgLTI1Miw3ICsyNTMsNyBA
QCAtICh2b2lkKWNvbm5lY3Rpb246KE5TVVJMQ29ubmVjdGlvbiAqKWNvCiAKICAgICAgICAgUmVz
b3VyY2VSZXNwb25zZSByZXNvdXJjZVJlc3BvbnNlKHIuZ2V0KCkpOwogICAgICAgICByZXNvdXJj
ZVJlc3BvbnNlLnNldFNvdXJjZShSZXNvdXJjZVJlc3BvbnNlOjpTb3VyY2U6Ok5ldHdvcmspOwot
ICAgICAgICByZXNvdXJjZVJlc3BvbnNlLnNldERlcHJlY2F0ZWROZXR3b3JrTG9hZE1ldHJpY3Mo
Y29weVRpbWluZ0RhdGEoY29ubmVjdGlvbi5nZXQoKSwgci5nZXQoKSkpOworICAgICAgICByZXNv
dXJjZVJlc3BvbnNlLnNldERlcHJlY2F0ZWROZXR3b3JrTG9hZE1ldHJpY3MoY29weVRpbWluZ0Rh
dGEoY29ubmVjdGlvbi5nZXQoKSkpOwogCiAgICAgICAgIG1faGFuZGxlLT5kaWRSZWNlaXZlUmVz
cG9uc2UoV1RGTW92ZShyZXNvdXJjZVJlc3BvbnNlKSwgW3NlbGYsIHByb3RlY3RlZFNlbGYgPSBX
VEZNb3ZlKHByb3RlY3RlZFNlbGYpXSB7CiAgICAgICAgICAgICBtX3NlbWFwaG9yZS5zaWduYWwo
KTsKQEAgLTMxNCwxMSArMzE1LDIxIEBAIC0gKHZvaWQpY29ubmVjdGlvbkRpZEZpbmlzaExvYWRp
bmc6KE5TVVIKIAogICAgIExPRyhOZXR3b3JrLCAiSGFuZGxlICVwIGRlbGVnYXRlIGNvbm5lY3Rp
b25EaWRGaW5pc2hMb2FkaW5nOiVwIiwgbV9oYW5kbGUsIGNvbm5lY3Rpb24pOwogCi0gICAgYXV0
byB3b3JrID0gW3NlbGYgPSBzZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpXSAo
KSBtdXRhYmxlIHsKKyAgICBhdXRvIHdvcmsgPSBbc2VsZiA9IHNlbGYsIHByb3RlY3RlZFNlbGYg
PSByZXRhaW5QdHIoc2VsZiksIGNvbm5lY3Rpb24gPSByZXRhaW5QdHIoY29ubmVjdGlvbildICgp
IG11dGFibGUgewogICAgICAgICBpZiAoIW1faGFuZGxlIHx8ICFtX2hhbmRsZS0+Y2xpZW50KCkp
CiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgbV9oYW5kbGUtPmNsaWVudCgpLT5kaWRG
aW5pc2hMb2FkaW5nKG1faGFuZGxlKTsKKyAgICAgICAgaWYgKGF1dG8gbWV0cmljcyA9IGNvcHlU
aW1pbmdEYXRhKGNvbm5lY3Rpb24uZ2V0KCkpKSB7CisgICAgICAgICAgICBkb3VibGUgcmVzcG9u
c2VFbmRUaW1lID0gW1tbY29ubmVjdGlvbiBfdGltaW5nRGF0YV0gb2JqZWN0Rm9yS2V5OkAiX2tD
Rk5UaW1pbmdEYXRhUmVzcG9uc2VFbmQiXSBkb3VibGVWYWx1ZV07CisgICAgICAgICAgICBtZXRy
aWNzLT5yZXNwb25zZUVuZCA9IFNlY29uZHMocmVzcG9uc2VFbmRUaW1lIDw9IDAgPyBtZXRyaWNz
LT5yZXNwb25zZVN0YXJ0LnZhbHVlKCkgOiByZXNwb25zZUVuZFRpbWUgLSBtZXRyaWNzLT5mZXRj
aFN0YXJ0LnZhbHVlKCkpOworICAgICAgICAgICAgbWV0cmljcy0+bWFya0NvbXBsZXRlKCk7Cisg
ICAgICAgICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcobV9oYW5kbGUs
ICptZXRyaWNzKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIE5ldHdvcmtMb2FkTWV0
cmljcyBlbXB0eU1ldHJpY3M7CisgICAgICAgICAgICBlbXB0eU1ldHJpY3MubWFya0NvbXBsZXRl
KCk7CisgICAgICAgICAgICBtX2hhbmRsZS0+Y2xpZW50KCktPmRpZEZpbmlzaExvYWRpbmcobV9o
YW5kbGUsIGVtcHR5TWV0cmljcyk7CisgICAgICAgIH0KKwogICAgICAgICBpZiAobV9tZXNzYWdl
UXVldWUpIHsKICAgICAgICAgICAgIG1fbWVzc2FnZVF1ZXVlLT5raWxsKCk7CiAgICAgICAgICAg
ICBtX21lc3NhZ2VRdWV1ZSA9IG51bGxwdHI7CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjc3NzQx
KQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
NCBAQAorMjAyMS0wNS0xOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0aW9uIFRpbWluZyBMZXZlbCAy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQzNjMK
KworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoLVtXS05ldHdv
cmtTZXNzaW9uRGVsZWdhdGUgVVJMU2Vzc2lvbjp0YXNrOmRpZEZpbmlzaENvbGxlY3RpbmdNZXRy
aWNzOl0pOgorICAgICAgICBNYXJrIHJldXNlZCBUTFMgY29ubmVjdGlvbnMgaW4gY29tcGxldGUg
bWV0cmljcyBsaWtlIEkgZGlkIGluIGluY29tcGxldGUgbWV0cmljcyBpbiByMjc3NDkzLgorCiAy
MDIxLTA1LTE5ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBVcGRh
dGUgQmFzZTY0IGVuY29kaW5nL2RlY29kaW5nIHRvIG1hdGNoIG1vcmUgbW9kZXJuIFdlYktpdCBj
b252ZW50aW9ucwpJbmRleDogU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3
b3JrU2Vzc2lvbkNvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQkocmV2aXNpb24gMjc3NzQxKQorKysg
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC03OTAsNyArNzkwLDEwIEBAIC0gKHZvaWQpVVJMU2Vzc2lvbjoo
TlNVUkxTZXNzaW9uICopc2Vzc2kKICAgICAgICAgbmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxv
b2t1cFN0YXJ0ID0gU2Vjb25kcyhkb21haW5Mb29rdXBTdGFydEludGVydmFsKTsKICAgICAgICAg
bmV0d29ya0xvYWRNZXRyaWNzLmRvbWFpbkxvb2t1cEVuZCA9IFNlY29uZHMoZG9tYWluTG9va3Vw
RW5kSW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MuY29ubmVjdFN0YXJ0ID0g
U2Vjb25kcyhjb25uZWN0U3RhcnRJbnRlcnZhbCk7Ci0gICAgICAgIG5ldHdvcmtMb2FkTWV0cmlj
cy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgPSBTZWNvbmRzKHNlY3VyZUNvbm5lY3Rpb25TdGFydElu
dGVydmFsKTsKKyAgICAgICAgaWYgKG0ucmV1c2VkQ29ubmVjdGlvbiAmJiBbbS5yZXNwb25zZS5V
Ukwuc2NoZW1lIGlzRXF1YWxUb1N0cmluZzpAImh0dHBzIl0pCisgICAgICAgICAgICBuZXR3b3Jr
TG9hZE1ldHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gV2ViQ29yZTo6cmV1c2VkVExTQ29u
bmVjdGlvblNlbnRpbmVsOworICAgICAgICBlbHNlCisgICAgICAgICAgICBuZXR3b3JrTG9hZE1l
dHJpY3Muc2VjdXJlQ29ubmVjdGlvblN0YXJ0ID0gU2Vjb25kcyhzZWN1cmVDb25uZWN0aW9uU3Rh
cnRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdvcmtMb2FkTWV0cmljcy5jb25uZWN0RW5kID0gU2Vj
b25kcyhjb25uZWN0RW5kSW50ZXJ2YWwpOwogICAgICAgICBuZXR3b3JrTG9hZE1ldHJpY3MucmVx
dWVzdFN0YXJ0ID0gU2Vjb25kcyhyZXF1ZXN0U3RhcnRJbnRlcnZhbCk7CiAgICAgICAgIG5ldHdv
cmtMb2FkTWV0cmljcy5yZXNwb25zZVN0YXJ0ID0gU2Vjb25kcyhyZXNwb25zZVN0YXJ0SW50ZXJ2
YWwpOwpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3Nzc0MSkKKysrIFNvdXJj
ZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMjEtMDUtMTkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgTmF2aWdhdGlvbiBUaW1pbmcgTGV2ZWwgMgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MzYzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvUGluZ0hhbmRsZS5oOgorCiAyMDIxLTA1LTE5ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxl
LmNvbT4KIAogICAgICAgICBVcGRhdGUgQmFzZTY0IGVuY29kaW5nL2RlY29kaW5nIHRvIG1hdGNo
IG1vcmUgbW9kZXJuIFdlYktpdCBjb252ZW50aW9ucwpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9QaW5nSGFuZGxlLmgJKHJldmlzaW9uIDI3Nzc0MSkKKysr
IFNvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvUGluZ0hhbmRsZS5oCSh3b3JraW5n
IGNvcHkpCkBAIC03NCw3ICs3NCw3IEBAIHByaXZhdGU6CiAgICAgICAgIHBpbmdMb2FkQ29tcGxl
dGUoeyB9LCByZXNwb25zZSk7CiAgICAgfQogICAgIHZvaWQgZGlkUmVjZWl2ZUJ1ZmZlcihXZWJD
b3JlOjpSZXNvdXJjZUhhbmRsZSosIFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYsIGludCkg
ZmluYWwgeyBwaW5nTG9hZENvbXBsZXRlKCk7IH0KLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
V2ViQ29yZTo6UmVzb3VyY2VIYW5kbGUqKSBmaW5hbCB7IHBpbmdMb2FkQ29tcGxldGUoKTsgfQor
ICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZSosIGNvbnN0
IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0ZSgp
OyB9CiAgICAgdm9pZCBkaWRGYWlsKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlKiwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciYgZXJyb3IpIGZpbmFsIHsgcGluZ0xvYWRDb21wbGV0ZShlcnJv
cik7IH0KICAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OlJlc291
cmNlSGFuZGxlKikgZmluYWwgeyByZXR1cm4gbV9zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZTsg
fQogICAgIHZvaWQgdGltZW91dFRpbWVyRmlyZWQoKSB7IHBpbmdMb2FkQ29tcGxldGUoV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciB7IFN0cmluZygpLCAwLCBtX2N1cnJlbnRSZXF1ZXN0LnVybCgpLCAi
TG9hZCB0aW1lZCBvdXQiX3MsIFdlYkNvcmU6OlJlc291cmNlRXJyb3I6OlR5cGU6OlRpbWVvdXQg
fSk7IH0KSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9EdW1wUmVuZGVyVHJlZS9UZXN0T3B0aW9ucy5jcHAJKHJldmlzaW9uIDI3
Nzc0MSkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTU4LDYgKzE1OCw3IEBAIGNvbnN0IFRlc3RGZWF0dXJlcyYgVGVzdE9wdGlvbnM6
OmRlZmF1bHQKICAgICAgICAgICAgIHsgIk1vZGVybk1lZGlhQ29udHJvbHNFbmFibGVkIiwgdHJ1
ZSB9LAogICAgICAgICAgICAgeyAiTmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmsi
LCBmYWxzZSB9LAogICAgICAgICAgICAgeyAiT3ZlcnNjcm9sbEJlaGF2aW9yRW5hYmxlZCIsIHRy
dWUgfSwKKyAgICAgICAgICAgIHsgIlBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZ0FQSUVuYWJs
ZWQiLCB0cnVlIH0sCiAgICAgICAgICAgICB7ICJQbHVnaW5zRW5hYmxlZCIsIHRydWUgfSwKICAg
ICAgICAgICAgIHsgIlByaXZhdGVDbGlja01lYXN1cmVtZW50RW5hYmxlZCIsIGZhbHNlIH0sCiAg
ICAgICAgICAgICB7ICJSZXF1ZXN0SWRsZUNhbGxiYWNrRW5hYmxlZCIsIGZhbHNlIH0sCkluZGV4
OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wNS0xOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0
aW9uIFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisK
KyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAgICBBbm5veWluZ2x5IHNlY3VyZV9j
b25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLmh0bWwgYmVjb21lcyBmbGFreSB3aXRoIGEg
Y29ycmVjdCBpbXBsZW1lbnRhdGlvbiBiZWNhdXNlIGl0IGFzc3VtZXMKKyAgICAgICAgdGhhdCBu
byBjb25uZWN0aW9uIGlzIHJldXNlZC4gIEhvd2V2ZXIsIHdoZW4gcnVubmluZyB0aGlzIHRlc3Qg
YWZ0ZXIgb3RoZXIgdGVzdHMsIGFub3RoZXIgY29ubmVjdGlvbiBpcyBvZnRlbiByZXVzZWQuCisg
ICAgICAgICogcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1vYnNlcnZl
ci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3Jt
YW5jZS1hcGkvcGFpbnQtdGltaW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRm
dWwtcGFpbnQuaHRtbDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2Utb2Jz
ZXJ2ZXItYXBpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1hcGkvcGVyZm9y
bWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwZXJmb3JtYW5jZS1h
cGkvcmVzb3VyY2VzL3RpbWVsaW5lLWFwaS5qczoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sx
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgTmV4dCBob3AgcHJv
dG9jb2wgaXNuJ3QgaW1wbGVtZW50ZWQgaW4gUmVzb3VyY2VIYW5kbGUuICBUaGF0J3MgcHJvYmFi
bHkgbm8gYmlnIGRlYWwgYmVjYXVzZSBXZWJLaXRMZWdhY3kgaXMgZGVwcmVjYXRlZCBhbmQgbm90
IHVzZWQgYnkgU2FmYXJpLgorCiAyMDIxLTA1LTE5ICBLeWxlIFBpZGRpbmd0b24gIDxrcGlkZGlu
Z3RvbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0FOR0xFIE1ldGFsXSBTdXBwb3J0IHByb3Zva2lu
ZyB2ZXJ0ZXggZW11bGF0aW9uLCBwYXNzIGZyYWdtZW50T3V0cHV0IHRlc3RzCkluZGV4OiBMYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3RzL1Rlc3RFeHBlY3Rh
dGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTkzOSw2ICs5MzksNyBAQCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3Jlc291cmNlLXRpbWluZy9jb3JzLXByZWZsaWdodC5hbnkuaHRtbCBbIEZhaWx1cmUgUGFzcyBd
CiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9jcm9zc29y
aWdpbi1zYW5kd2ljaC1UQU8uc3ViLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZS10aW1pbmcvY3Jvc3NvcmlnaW4tc2FuZHdpY2gt
cGFydGlhbC1UQU8uc3ViLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQoraW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1cmVfY29ubmVjdGlvbl9zdGFydF9u
b25femVyby5odHRwcy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtc3RyZWFtcy9NZWRpYVN0cmVhbS1kZWZhdWx0LWZl
YXR1cmUtcG9saWN5Lmh0dHBzLmh0bWwgWyBEdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIgXQogaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtcmVjb3JkL3Bhc3N0aHJv
dWdoL01lZGlhUmVjb3JkZXItcGFzc3Rocm91Z2guaHR0cHMuaHRtbCBbIEZhaWx1cmUgVGltZW91
dCBQYXNzIF0KSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwkocmV2aXNpb24gMjc3
NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDEyOSBAQAorMjAyMS0wNS0xOSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBOYXZpZ2F0aW9u
IFRpbWluZyBMZXZlbCAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODQzNjMKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWw6IEFk
ZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21f
aW50ZXJhY3RpdmVfaW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX2lt
YWdlX2RvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9jdW1lbnQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvZG9tX2ludGVyYWN0aXZlX21lZGlhX2RvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5q
czoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfZXhpc3QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhp
c3QuaHRtbDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIHdlIGhhdmUg
bm90IGltcGxlbWVudGVkIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2Rl
ZEJvZHlTaXplIGFzIG5vdGVkIGluIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRy
aWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRt
bDogQWRkZWQuCisgICAgICAgIFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIHdlIGhhdmUgbm90IGlt
cGxlbWVudGVkIHRyYW5zZmVyU2l6ZSwgZW5jb2RlZEJvZHlTaXplLCBhbmQgZGVjb2RlZEJvZHlT
aXplIGFzIG5vdGVkIGluIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1bWVudF9v
cGVuLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4uaHRtbDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2Vk
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10
aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWw6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9mcmFtZV9yZW1vdmVkLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2Vf
YWNjZXNzb3JzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5jZV9hY2Nlc3NvcnMuaHRtbDog
QWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX2lm
cmFtZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVz
dF9uYXZpZ2F0ZV93aXRoaW5fZG9jdW1lbnQuaHRtbDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9y
d2FyZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQuaHRtbDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25h
dmlnYXRpb25fdHlwZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90
eXBlX25hdmlnYXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2Vy
dmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICBU
aGlzIHRlc3QgZmFpbHMgYmVjYXVzZSBvdXIgdGVzdCBpbmZyYXN0cnVjdHVyZSBkb2Vzbid0IHN1
cHBvcnQgbG9hZGluZyBmcm9tIHd3dy5sb2NhbGhvc3QuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVy
X2ZpbmFsX29yaWdpbmFsX29yaWdpbi5odG1sOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwuCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFp
bl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0
IGZhaWxzIGJlY2F1c2Ugb3VyIHRlc3QgaW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBwb3J0IGxv
YWRpbmcgZnJvbSB3d3cubG9jYWxob3N0LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFs
X29wdF9pbi5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfbm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfbm9uZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3NlcnZlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgIFRoaXMgdGVzdCBmYWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X3NlcnZlci5odG1sOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci1leHBlY3RlZC50eHQ6CisgICAgICAg
IFRoaXMgdGVzdCBmYWlscyBiZWNhdXNlIG91ciB0ZXN0IGluZnJhc3RydWN0dXJlIGRvZXNuJ3Qg
c3VwcG9ydCBsb2FkaW5nIGZyb20gd3d3LmxvY2FsaG9zdC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X3hzZXJ2ZXIuaHRt
bDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgIFRo
aXMgdGVzdCBmYWlsdXJlIG5lZWRzIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4KKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZf
aW5zdGFuY2VzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24uaHRt
bDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L3Jlc291cmNlcy93ZWJwZXJmdGVzdGhhcm5lc3MuanM6CisgICAgICAgICh0ZXN0X25hbWVzcGFj
ZSk6CisgICAgICAgICh0ZXN0X2F0dHJpYnV0ZV9leGlzdHMpOgorICAgICAgICAodGVzdF9lbnVt
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
LWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rp
b24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJv
Lmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGhhcyBiZWVuIG1hcmtlZCBh
cyBmbGFreS4gIEl0IG5lZWRzIHRvIGJlIGZpeGVkIHRvIG5vdCByZWx5IG9uIG5vIGluaXRpYWwg
Y29ubmVjdGlvbiByZXVzZS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnktZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zdXBwb3J0ZWRfbmF2
aWdhdGlvbl90eXBlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRp
bWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sOiBBZGRlZC4KKyAgICAgICAgVGhpcyB0ZXN0
IGZhaWx1cmUgbmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0aW9uLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hl
Y2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2suaHRtbDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvTUVUQS55bWw6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJl
ZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3Qu
dC50LnN0ZXBfdGltZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL2J1ZmZlcmVkLWZsYWctb2JzZXJ2ZXIuYW55LmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvZ2V0LWludmFsaWQt
ZW50cmllcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9nZXQtaW52YWxpZC1lbnRyaWVzLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJu
ZXNzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luYyBpZGxfYXJyYXkpOgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9tdWx0aXBsZS1idWZmZXJl
ZC1mbGFnLW9ic2VydmVycy5hbnkuanM6IEFkZGVkLgorICAgICAgICAocHJvbWlzZV90ZXN0KToK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNs
b25hYmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvb2JzZXJ2ZXItYnVmZmVy
ZWQtZmFsc2UuYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5jX3Rlc3QudC50LnN0ZXBfdGlt
ZW91dCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0KToK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2Fs
bGJhY2stbXV0YXRlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0KToKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZGlzY29ubmVj
dC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190
ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cG8tZGlzY29ubmVjdC5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAg
ICAgICh0ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190ZXN0
KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
Z2V0ZW50cmllcy5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW1hcmstbWVhc3Vy
ZS5hbnkuanM6IEFkZGVkLgorICAgICAgICAoYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3lu
Y190ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tb2JzZXJ2ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3Vy
Y2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNl
LXRpbWVsaW5lL3BvLXRha2VSZWNvcmRzLmFueS5qczogQWRkZWQuCisgICAgICAgIChhc3luY190
ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
cmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWVudHJ5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFs
aWQtZW50cmllcy5qczogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZl
ci5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgVGhpcyB0ZXN0IGZhaWx1cmUgbmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0
aW9uLiAgSXQncyBhIGJpbmRpbmdzIGdlbmVyYXRpb24gcHJvYmxlbSBJJ3ZlIHVuc3VjY2Vzc2Z1
bGx5IGxvb2tlZCBpbnRvIGJlZm9yZS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVy
Zm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkuanM6CisgICAgICAgICh0
ZXN0KToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUv
c3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd2VidGltaW5nLXJlc29sdXRp
b24uYW55LmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RUaW1lUmVzb2x1dGlvbik6CisgICAgICAg
ICh0aW1lQnlVc2VyVGltaW5nKToKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvd29ya2VyLXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbDogQWRkZWQuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9u
YXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgIFRoaXMgZXhpc3Rp
bmcgdGVzdCBmYWlsdXJlIG5lZWRzIG1vcmUgaW52ZXN0aWdhdGlvbi4gIFdlIGFyZSBwcm9iYWJs
eSBjbG9zZSB0byBhIGZpeCBhZnRlciB0aGlzIHBhdGNoLgorCiAyMDIxLTA1LTE5ICBSb2IgQnVp
cyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTk2NApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9NRVRBLnltbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL01FVEEueW1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvTUVUQS55bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw1IEBACitzcGVjOiBodHRwczovL3czYy5naXRodWIuaW8vbmF2aWdh
dGlvbi10aW1pbmcvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhlZ2FyCisgIC0gaWdy
aWdvcmlrCisgIC0geW9hdndlaXNzCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9pbWFnZV9k
b2N1bWVudC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVf
aW1hZ2VfZG9jdW1lbnQtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2lu
dGVyYWN0aXZlX2ltYWdlX2RvY3VtZW50LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDggQEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdHMgdGhhdCBhIGltYWdlIGRvY3Vt
ZW50IGhhcyBwb3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS4KKworCisKK1BBU1MgVGVzdCBk
b21JbnRlcmFjdGl2ZSBvbiBpbWFnZSBkb2N1bWVudAorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFj
dGl2ZV9pbWFnZV9kb2N1bWVudC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0
aXZlX2ltYWdlX2RvY3VtZW50Lmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJh
Y3RpdmVfaW1hZ2VfZG9jdW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI1IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFy
c2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gaW1h
Z2UgZG9jdW1lbnQuPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJH
b29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJl
bD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvYnJv
d3NpbmctdGhlLXdlYi5odG1sI3JlYWQtbWVkaWEiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgor
ICAgIDxzY3JpcHQ+CisgICAgICAgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IGRvbUludGVy
YWN0aXZlIG9uIGltYWdlIGRvY3VtZW50Iik7CisgICAgICAgIGZ1bmN0aW9uIGZyYW1lTG9hZGVk
KCkgeworICAgICAgICAgICAgY29uc3QgdGltaW5nID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
aWZyYW1lIikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmc7CisgICAgICAgICAgICBh
c3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy5kb21JbnRlcmFjdGl2ZSwgMCwKKyAgICAgICAgICAg
ICAgICAiRXhwZWN0IGRvbUludGVyYWN0aXZlIHRvIGJlIHBvc2l0aXZlIHZhbHVlLiIpOworICAg
ICAgICAgICAgdC5kb25lKCk7CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0
IGEgaW1hZ2UgZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLjwvcD4K
KyAgICAgICAgPGlmcmFtZSBzcmM9Ii4uL2ltYWdlcy9zbWlsZXkucG5nIiBvbmxvYWQ9ImZyYW1l
TG9hZGVkKCkiPjwvaWZyYW1lPgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRpYV9kb2N1bWVudC1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVkaWFfZG9j
dW1lbnQtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZl
X21lZGlhX2RvY3VtZW50LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDgg
QEAKK0Rlc2NyaXB0aW9uCisKK1RoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGRvY3VtZW50IGhhcyBw
b3NpdGl2ZS12YWx1ZSBkb21JbnRlcmFjdGl2ZS4KKworCisKK1BBU1MgVGVzdCBkb21JbnRlcmFj
dGl2ZSBvbiBtZWRpYSBkb2N1bWVudAorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2RvbV9pbnRlcmFjdGl2ZV9tZWRp
YV9kb2N1bWVudC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvZG9tX2ludGVyYWN0aXZlX21lZGlh
X2RvY3VtZW50Lmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9kb21faW50ZXJhY3RpdmVfbWVk
aWFfZG9jdW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYt
OCIgLz4KKyAgICAgICAgPHRpdGxlPlRlc3QgZG9tSW50ZXJhY3RpdmUgb24gbWVkaWEgZG9jdW1l
bnQuPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhy
ZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIg
aHJlZj0iaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvYnJvd3NpbmctdGhl
LXdlYi5odG1sI3JlYWQtbWVkaWEiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxzY3Jp
cHQ+CisgICAgICAgIGNvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0IGRvbUludGVyYWN0aXZlIG9u
IG1lZGlhIGRvY3VtZW50Iik7CisgICAgICAgIGZ1bmN0aW9uIGZyYW1lTG9hZGVkKCkgeworICAg
ICAgICAgICAgY29uc3QgdGltaW5nID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaWZyYW1lIiku
Y29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmc7CisgICAgICAgICAgICBhc3NlcnRfZ3Jl
YXRlcl90aGFuKHRpbWluZy5kb21JbnRlcmFjdGl2ZSwgMCwKKyAgICAgICAgICAgICAgICAiRXhw
ZWN0IGRvbUludGVyYWN0aXZlIHRvIGJlIHBvc2l0aXZlIHZhbHVlLiIpOworICAgICAgICAgICAg
dC5kb25lKCk7CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgICA8Ym9keT4KKyAgICAgICAg
PGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IGEgbWVkaWEg
ZG9jdW1lbnQgaGFzIHBvc2l0aXZlLXZhbHVlIGRvbUludGVyYWN0aXZlLjwvcD4KKyAgICAgICAg
PGlmcmFtZSBzcmM9Ii4uL21lZGlhL0E0Lm1wNCIgb25sb2FkPSJmcmFtZUxvYWRlZCgpIj48L2lm
cmFtZT4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJ
bmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9pZGxoYXJuZXNzLndpbmRvdy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhh
cm5lc3Mud2luZG93LmpzCShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL2lkbGhhcm5lc3Mud2lu
ZG93LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xLDIxICsxLDIwIEBACiAvLyBNRVRBOiBzY3JpcHQ9
L3Jlc291cmNlcy9XZWJJRExQYXJzZXIuanMKIC8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL2lk
bGhhcm5lc3MuanMKKy8vIE1FVEE6IHRpbWVvdXQ9bG9uZwogCiAndXNlIHN0cmljdCc7CiAKIC8v
IGh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLwogCiBpZGxfdGVzdCgKLSAg
WyduYXZpZ2F0aW9uLXRpbWluZyddLAotICBbJ3Jlc291cmNlLXRpbWluZycsICdwZXJmb3JtYW5j
ZS10aW1lbGluZScsICdoci10aW1lJywgJ2RvbSddLAotICBpZGxfYXJyYXkgPT4gewotICAgIGlk
bF9hcnJheS5hZGRfb2JqZWN0cyh7CisgIFsnbmF2aWdhdGlvbi10aW1pbmcnLCAnaHItdGltZSdd
LAorICBbJ3Jlc291cmNlLXRpbWluZycsICdwZXJmb3JtYW5jZS10aW1lbGluZScsICdkb20nLCAn
aHRtbCddLAorICBpZGxBcnJheSA9PiB7CisgICAgaWRsQXJyYXkuYWRkX29iamVjdHMoewogICAg
ICAgUGVyZm9ybWFuY2U6IFsncGVyZm9ybWFuY2UnXSwKICAgICAgIFBlcmZvcm1hbmNlTmF2aWdh
dGlvbjogWydwZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJ10sCiAgICAgICBQZXJmb3JtYW5jZVRpbWlu
ZzogWydwZXJmb3JtYW5jZS50aW1pbmcnXSwKLSAgICAgIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZzogWwotICAgICAgICAncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlv
biIpWzBdJwotICAgICAgXQorICAgICAgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiBbJ3Bl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXSddCiAgICAgfSk7CiAg
IH0KICk7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4cGVjdGVk
LnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0LWV4
cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKK0Rlc2NyaXB0aW9uCisK
K1RoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBQZXJmb3JtYW5jZU9ic2VydmVyIGNhbiBvYnNlcnZl
IG5hdiB0aW1pbmcgMiBpbnN0YW5jZSBhbmQgdGhhdCB0aGUgZXhwZWN0ZWQgYXR0cmlidXRlcyBp
biBuYXYgdGltaW5nIDIgaW5zdGFuY2UgZXhpc3QgKGJ1dCBkb2VzIG5vdCB2YWxpZGF0ZSB0aGF0
IHRoZSB2YWx1ZXMgYXJlIGNvcnJlY3QpLgorCisKK0ZBSUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlv
biB0aW1pbmcgZW50cmllcyBhcmUgb2JzZXJ2YWJsZS4gYXNzZXJ0X3RydWU6IEV4cGVjdGVkIGF0
dHJpYnV0ZTogZGVjb2RlZEJvZHlTaXplLiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorCkluZGV4
OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX2V4aXN0Lmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfYXR0cmlidXRlc19leGlzdC5odG1sCShub25leGlzdGVudCkKKysrIExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X2F0dHJpYnV0ZXNfZXhpc3QuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDY3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQ
VDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVm
PSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5
PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFs
aWRhdGVzIHRoYXQgUGVyZm9ybWFuY2VPYnNlcnZlciBjYW4gb2JzZXJ2ZSBuYXYgdGltaW5nIDIg
aW5zdGFuY2UgYW5kIHRoYXQgdGhlIGV4cGVjdGVkIGF0dHJpYnV0ZXMgaW4gbmF2IHRpbWluZyAy
IGluc3RhbmNlIGV4aXN0IChidXQgZG9lcyBub3QgdmFsaWRhdGUgdGhhdCB0aGUgdmFsdWVzIGFy
ZSBjb3JyZWN0KS48L3A+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIG5hdlRpbWlu
ZzJBdHRyaWJ1dGVzID0gWworICAgICAgICAgICAgJ2Nvbm5lY3RFbmQnLAorICAgICAgICAgICAg
J2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAnZGVjb2RlZEJvZHlTaXplJywKKyAgICAgICAg
ICAgICdkb21Db21wbGV0ZScsCisgICAgICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5k
JywKKyAgICAgICAgICAgICdkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCcsCisgICAgICAgICAg
ICAnZG9tSW50ZXJhY3RpdmUnLAorICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAg
ICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAorICAgICAgICAgICAgJ2R1cmF0aW9uJywKKyAg
ICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgJ2VudHJ5VHlwZScsCisg
ICAgICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnaW5pdGlhdG9yVHlwZScsCisg
ICAgICAgICAgICAnbG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdsb2FkRXZlbnRTdGFydCcs
CisgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAgICAnbmV4dEhvcFByb3RvY29sJywKKyAg
ICAgICAgICAgICdyZWRpcmVjdENvdW50JywKKyAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisg
ICAgICAgICAgICAncmVkaXJlY3RTdGFydCcsCisgICAgICAgICAgICAncmVxdWVzdFN0YXJ0JywK
KyAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAncmVzcG9uc2VTdGFydCcs
CisgICAgICAgICAgICAnc2VjdXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICd0cmFu
c2ZlclNpemUnLAorICAgICAgICAgICAgJ3R5cGUnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50
RW5kJywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICd3b3Jr
ZXJTdGFydCcKKyAgICAgICAgXTsKKyAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgewor
ICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAg
ICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCkgeworICAgICAgICAg
ICAgICAgICAgICB2YXIgZW50cmllcyA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzKCk7CisgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllcy5sZW5ndGgsIDEsCisgICAgICAgICAg
ICAgICAgICAgICAgICAiVGhlcmUgc2hvdWxkIGJlIG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5n
IGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5h
dlRpbWluZzJBdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfdHJ1ZShuYXZUaW1pbmcyQXR0cmlidXRlc1tpXSBpbiBlbnRyaWVzWzBdLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCBhdHRyaWJ1dGU6ICIgKyBuYXZUaW1p
bmcyQXR0cmlidXRlc1tpXSArICIuIik7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0
LmRvbmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAg
IG9ic2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAg
ICAgfSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGVudHJpZXMgYXJlIG9ic2VydmFi
bGUuIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvbmF2Ml90ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy1leHBlY3RlZC50eHQJKG5vbmV4aXN0
ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0CSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZh
bGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgbmF2IHRpbWluZyAyIGluc3RhbmNlJ3MgdGltaW5n
LXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUgaW4gY2VydGFpbiBvcmRlciBhbmQgdGhlIG90aGVycyBh
cmUgb2YgZXhwZWN0ZWQgdmFsdWVzLgorCisKK0ZBSUwgUGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0
aW1pbmcgaW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25hYmxlLiBhc3NlcnRfdHJ1ZTogRXhwZWN0
ZWQgdHJhbnNmZXJTaXplIHRvIGJlIGdyZWF0ZXIgdGhhbiBlbmNvZGVkQm9keVNpemUgaW4gdW5j
YWNoZWQgbmF2aWdhdGlvbi4gZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKKwpJbmRleDogTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9hdHRyaWJ1dGVzX3ZhbHVlcy5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X2F0dHJpYnV0ZXNfdmFsdWVzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMzcg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNo
YXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90
aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0
dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0i
aHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNl
TmF2aWdhdGlvblRpbWluZyIvPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21t
b24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9k
eT4KKyAgICAgICAgPGgxPkRlc2NyaXB0aW9uPC9oMT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHZh
bGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgbmF2IHRpbWluZyAyIGluc3RhbmNlJ3MgdGltaW5n
LXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUgaW4gY2VydGFpbiBvcmRlciBhbmQgdGhlIG90aGVycyBh
cmUgb2YgZXhwZWN0ZWQgdmFsdWVzLjwvcD4KKworICAgICAgICA8c2NyaXB0PgorICAgICAgICAv
LyBIb3N0IG5hbWVzIGFuZCBwb3J0cyBtYXkgYmUgY29uZmlndXJlZCBhdCB0ZXN0IGV4ZWN1dGlv
biB0aW1lLiBUaGUKKyAgICAgICAgLy8gd2ViLXBsYXRmb3JtLXRlc3RzIHNlcnZlciBvZmZlcnMg
dHdvIG1lY2hhbmlzbXMgZm9yIHJldHJpZXZpbmcgdGhlc2UKKyAgICAgICAgLy8gdmFsdWVzIGR5
bmFtaWNhbGx5OiBkaXJlY3QgdGV4dCBzdWJzdGl0dXRpb24gYW5kIHRoZSBgZ2V0LWhvc3QtaW5m
b2AKKyAgICAgICAgLy8gc2NyaXB0LiBUaGUgZm9ybWVyIGlzIGluYXBwcm9wcmF0ZSBmb3IgdGhp
cyB0ZXN0IGJlY2F1c2UgaXQKKyAgICAgICAgLy8gaW5mbHVlbmNlcyB0aGUgc2l6ZSBvZiB0aGUg
ZG9jdW1lbnQsIGFuZCB0aGlzIHRlc3QgaW5jbHVkZXMgc3RhdGljCisgICAgICAgIC8vIGFzc2Vy
dGlvbnMgZm9yIHRoYXQgdmFsdWUuCisgICAgICAgIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9p
bmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJodHRwOi8vIiArIGhvc3RfaW5mby5P
UklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhvc3RfaW5mby5IVFRQX1BPUlQgKwor
ICAgICAgICAgICAgIi9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1
ZXMuaHRtbCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyRXZlbnRPcmRlcjEgPSBbCisgICAgICAg
ICAgICAnc3RhcnRUaW1lJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAg
ICAgIC8vJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0RW5kJywKKyAg
ICAgICAgICAgIC8vJ3VubG9hZEV2ZW50RW5kJywKKyAgICAgICAgICAgICdmZXRjaFN0YXJ0JywK
KyAgICAgICAgICAgICdkb21haW5Mb29rdXBTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9v
a3VwRW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAgICAgICAgLy8nc2Vj
dXJlQ29ubmVjdGlvblN0YXJ0JywKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAg
ICAgICdyZXF1ZXN0U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAg
ICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAg
ICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUNv
bnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAg
ICAgICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnCisgICAg
ICAgIF07CisKKyAgICAgICAgdmFyIG5hdlRpbWluZzJFdmVudE9yZGVyMiA9IFsKKyAgICAgICAg
ICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICd1bmxvYWRFdmVudFN0YXJ0JywKKyAg
ICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAor
ICAgICAgICAgICAgJ2ZldGNoU3RhcnQnCisgICAgICAgIF07CisKKyAgICAgICAgdmFyIG5hdlRp
bWluZzJFdmVudE9yZGVyMyA9IFsKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAorICAgICAg
ICAgICAgJ3NlY3VyZUNvbm5lY3Rpb25TdGFydCcsCisgICAgICAgICAgICAnY29ubmVjdEVuZCcK
KyAgICAgICAgXTsKKworICAgICAgICAvLyBOYXZpZ2F0aW9uIFRpbWluZyBhdHRyaWJ1dGVzIGZv
ciBjb21wYXJpc29uLgorICAgICAgICB2YXIgbmF2VGltaW5nMUV2ZW50T3JkZXIgPSBbCisgICAg
ICAgICAgICAnZmV0Y2hTdGFydCcsCisgICAgICAgICAgICAnZG9tYWluTG9va3VwU3RhcnQnLAor
ICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAnY29ubmVjdFN0YXJ0
JywKKyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdyZXF1ZXN0U3RhcnQn
LAorICAgICAgICAgICAgJ3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5k
JywKKyAgICAgICAgICAgICdkb21JbnRlcmFjdGl2ZScsCisgICAgICAgICAgICAnZG9tQ29udGVu
dExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVu
ZCcsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUnLAorICAgICAgICAgICAgJ2xvYWRFdmVudFN0
YXJ0JywKKyAgICAgICAgICAgICdsb2FkRXZlbnRFbmQnCisgICAgICAgIF07CisKKyAgICAgICAg
ZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVyLCB0aW1pbmdFbnRyeSkg
eworICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBldmVudE9yZGVyLmxlbmd0aCAtIDE7
IGkrKykgeworICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRpbWluZ0VudHJ5W2V2ZW50T3Jk
ZXJbaV1dIDw9IHRpbWluZ0VudHJ5W2V2ZW50T3JkZXJbaSArIDFdXSwKKyAgICAgICAgICAgICAg
ICAgICAgIkV4cGVjdGVkICIgKyBldmVudE9yZGVyW2ldICsgIiB0byBiZSBubyBncmVhdGVyIHRo
YW4gIiArIGV2ZW50T3JkZXJbaSArIDFdICsgIi4iKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
fQorCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAgICAgICAgIHZhciBv
YnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAgICAgICAgIHQuc3Rl
cF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGVu
dHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmllcygpOworICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlUeXBlLCAibmF2aWdhdGlvbiIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAiRXhwZWN0ZWQgZW50cnlUeXBlIHRvIGJlOiBuYXZpZ2F0aW9uLiIpOwor
ICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0ubmFtZSwgZXhwZWN0
ZWRVcmwpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uc3Rh
cnRUaW1lLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVkIHN0YXJ0VGltZSB0
byBiZTogMC4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBd
LmR1cmF0aW9uLCBlbnRyaWVzWzBdLmxvYWRFdmVudEVuZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICJFeHBlY3RlZCBkdXJhdGlvbiB0byBiZSBlcXVhbCB0byBsb2FkRXZlbnRFbmQuIik7Cisg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cmllc1swXS5pbml0aWF0b3JUeXBl
LCAibmF2aWdhdGlvbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgaW5pdGlh
dG9yVHlwZSB0byBiZTogbmF2aWdhdGlvbi4iKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhlbnRyaWVzWzBdLm5leHRIb3BQcm90b2NvbCwgImh0dHAvMS4xIik7CisgICAgICAg
ICAgICAgICAgICAgIC8vIFRoaXMgdGVzdCBtYXkgZmFpbCB3aGVuIHJlc3BvbnNlIGlzIGZyb20g
Y2FjaC4gRGlzYWJsZSBvciBjbGVhbiBjYWNoIGJlZm9yZQorICAgICAgICAgICAgICAgICAgICAv
LyBydW5uaW5nIHRoaXMgdGVzdC4KKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoZW50
cmllc1swXS50cmFuc2ZlclNpemUgPiBlbnRyaWVzWzBdLmVuY29kZWRCb2R5U2l6ZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCB0cmFuc2ZlclNpemUgdG8gYmUgZ3JlYXRlciB0
aGFuIGVuY29kZWRCb2R5U2l6ZSBpbiB1bmNhY2hlZCBuYXZpZ2F0aW9uLiIpOworICAgICAgICAg
ICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW5jb2RlZEJvZHlTaXplLCA1OTU1
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzWzBdLmRlY29kZWRC
b2R5U2l6ZSwgNTk1NSk7CisgICAgICAgICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2ZW50T3Jk
ZXIoZW50cmllc1swXSwgbmF2VGltaW5nMkV2ZW50T3JkZXIxKTsKKyAgICAgICAgICAgICAgICAg
ICAgLy8gVmVyaWZ5IGlmIHRoZSByZXBvcnRlZCB0aW1pbmcgaXMgbm90IHRoYXQgZGlmZmVyZW50
CisgICAgICAgICAgICAgICAgICAgIC8vIGZyb20gd2hhdCBpcyByZXBvcnRlZCBieSBOYXZpZ2F0
aW9uIFRpbWluZyAxLgorICAgICAgICAgICAgICAgICAgICBuYXZUaW1pbmcxRXZlbnRPcmRlci5m
b3JFYWNoKAorICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBpZiAod2luZG93LnBlcmZvcm1hbmNlLnRpbWluZ1tldmVudF0gLQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2
aWdhdGlvblN0YXJ0ID4gMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3Jl
YXRlcl90aGFuKGVudHJpZXNbMF1bZXZlbnRdLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIkV4cGVjdGVkICIgKyBldmVudCArICIgdG8gYmUgZ3JlYXRlciB0aGFuIDAiKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAg
ICAgICAgICAgICAgIC8vIFdoZW4gdW5sb2FkRXZlbnQgaGFwcGVucworICAgICAgICAgICAgICAg
ICAgICBpZiAoZW50cmllc1swXVsidW5sb2FkRXZlbnRTdGFydCJdICE9IDApIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIHZlcmlmeVRpbWluZ0V2ZW50T3JkZXIoZW50cmllc1swXSwgbmF2VGlt
aW5nMkV2ZW50T3JkZXIyKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgICAvLyBXaGVuIGEgc2VjdXJlIHRyYW5zcG9ydCBpcyB1c2VkCisgICAgICAgICAgICAgICAg
ICAgIGlmIChlbnRyaWVzWzBdWyJzZWN1cmVDb25uZWN0aW9uU3RhcnQiXSAhPSAwKSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICB2ZXJpZnlUaW1pbmdFdmVudE9yZGVyKGVudHJpZXNbMF0sIG5h
dlRpbWluZzJFdmVudE9yZGVyMyk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICB0LmRv
bmUoKTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIG9i
c2VydmVyLm9ic2VydmUoe2VudHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAg
fSwgIlBlcmZvcm1hbmNlIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlJ3MgdmFsdWUgaXMgcmVh
c29uYWJsZS4iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpJbmRl
eDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfb3Blbi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3
Nzc0MSkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X29wZW4tZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDQgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0
dHJpYnV0ZXNbaV1dJykKIERlc2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgd2luZG93
LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKSByZW1haW5zIGNvbnN0
YW50IHdoZW4gYSBkb2N1bWVudCBpcyByZXBsYWNlZCB1c2luZyBkb2N1bWVudC5vcGVuLgpAQCAt
OSw2ICs4LDUgQEAgVGhlIHRlc3QgcGFzc2VzIGlmIGFsbCBvZiB0aGUgY2hlY2tzIHRvIAogCiAK
IAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd0aW1pbmdbbmF2VGltaW5nMkF0dHJpYnV0ZXNb
aV1dJykKLQorUEFTUyBOYXZpZ2F0aW9uIFRpbWluZyAyIFdQVAogCkluZGV4OiBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9kb2N1bWVudF9vcGVuLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9j
dW1lbnRfb3Blbi5odG1sCShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9kb2N1
bWVudF9vcGVuLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTgsNiArOCw4IEBACiAgICAgICAgICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KICAgICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0
OiB0cnVlIH0pOworCiAgICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsK
ICAgICAgICAgICAgICAgICAgICdjb25uZWN0RW5kJywKICAgICAgICAgICAgICAgICAgICdjb25u
ZWN0U3RhcnQnLApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRf
cmVwbGFjZWQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDEzICsxLDExIEBACiBm
cmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAi
PCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZy
YW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBoYW5kbGVyKHMpCi1DT05TT0xFIE1FU1NBR0U6IFR5
cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudDEudHlw
ZScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYSBQZXJmb3JtYW5j
ZU5hdmlnYXRpbmdUaW1pbmcgY29ycmVzcG9uZGluZyB0byBhIGRldGFjaGVkIGRvY3VtZW50IGNh
bid0IGFjY2VzcyBhIGRpZmZlcmVudCBkb2N1bWVudCdzIHN0YXRlLgogCiAKIAotSGFybmVzcyBF
cnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICdwbnQxLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIg
V1BUCiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2RvY3VtZW50X3JlcGxhY2VkLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbAkocmV2aXNpb24g
Mjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZG9jdW1lbnRfcmVwbGFjZWQuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtOCw2ICs4LDggQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAg
ICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOworCiAgICAgICAgICAgICB2YXIg
bmF2aWdhdGlvbl9mcmFtZTsKICAgICAgICAgICAgIHZhciBwbnQxOwogICAgICAgICAgICAgdmFy
IHN0ZXAgPSAxOwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfZnJhbWVfcmVtb3ZlZC1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2ZyYW1lX3JlbW92ZWQtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC00LDUgKzQsNSBAQCBEZXNjcmlwdGlvbgogVGhp
cyB0ZXN0IHZhbGlkYXRlcyB0aGF0IFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzo6dHlwZSgp
J3MgZGVmYXVsdCB2YWx1ZSBpcyBuYXZpZ2F0ZQogCiAKLUZBSUwgTmF2aWdhdGlvbiBUaW1pbmcg
MiBXUFQgdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3BudC50eXBlJykK
K1BBU1MgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQKIApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5z
dGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X2luc3RhbmNlX2Fj
Y2Vzc2libGVfZnJvbV90aGVfc3RhcnQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyBpbnN0YW5jZSBl
eGlzdHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCitQQVNTIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyBpbnN0YW5jZSBleGlz
dHMgd2l0aCByZWFzb25hYmxlIHZhbHVlcy4KIApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFu
Y2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9zdGFydC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc2libGVfZnJvbV90aGVfc3RhcnQuaHRtbAkocmV2aXNpb24g
Mjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzaWJsZV9mcm9tX3RoZV9z
dGFydC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIHRlc3Qo
ZnVuY3Rpb24oKSB7CiAgIHZhciBuYXZpZ2F0aW9uVGltaW5nMiA9IHdpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCduYXZpZ2F0aW9uJylbMF07Ci0gIGFzc2VydF90cnVlKG5hdmln
YXRpb25UaW1pbmcyICE9PSB1bmRlZmluZWQpOworICBhc3NlcnRfbm90X2VxdWFscyhuYXZpZ2F0
aW9uVGltaW5nMiwgdW5kZWZpbmVkKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5n
Mi5lbnRyeVR5cGUsICJuYXZpZ2F0aW9uIik7CiAgIGFzc2VydF9lcXVhbHMobmF2aWdhdGlvblRp
bWluZzIuc3RhcnRUaW1lLCAwKTsKICAgYXNzZXJ0X2VxdWFscyhuYXZpZ2F0aW9uVGltaW5nMi5p
bml0aWF0b3JUeXBlLCAibmF2aWdhdGlvbiIpOwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfaW5zdGFu
Y2VfYWNjZXNzb3JzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9p
bnN0YW5jZV9hY2Nlc3NvcnMtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X2luc3RhbmNlX2FjY2Vzc29ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgbmF2
IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0aHJlZSBkaWZmZXJlbnQgYWNj
ZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcygpL2dl
dEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVzQnlOYW1lKCJkb2N1bWVudCIp
CisKKworUEFTUyBQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nl
c3NpYmxlIHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4KKwpJbmRleDogTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9u
YXYyX3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfaW5zdGFuY2VfYWNjZXNzb3JzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw3
OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEg
Y2hhcnNldD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+TmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQ8
L3RpdGxlPgorICAgICAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ikdvb2dsZSIgaHJlZj0i
aHR0cDovL3d3dy5nb29nbGUuY29tLyIgLz4KKyAgICAgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVm
PSJodHRwOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNzZWMtUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uVGltaW5nIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2Nv
bW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxi
b2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD5UaGlzIHRlc3Qg
dmFsaWRhdGVzIHRoYXQgbmF2IHRpbWluZyAyIGluc3RhbmNlIGNhbiBiZSBhY2Nlc3NlZCBieSB0
aHJlZSBkaWZmZXJlbnQgYWNjZXNzb3JzIG9uY2UgYXZhaWxhYmxlOiB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllcygpL2dldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS9nZXRFbnRyaWVz
QnlOYW1lKCJkb2N1bWVudCIpPC9wPgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBo
b3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CisgICAgICAgIHZhciBleHBlY3RlZFVybCA9ICJo
dHRwOi8vIiArIGhvc3RfaW5mby5PUklHSU5BTF9IT1NUICsgIjoiICsKKyAgICAgICAgICAgIGhv
c3RfaW5mby5IVFRQX1BPUlQgKyAiL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9pbnN0YW5j
ZV9hY2Nlc3NvcnMuaHRtbCI7CisgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsK
KyAgICAgICAgICAgICdjb25uZWN0RW5kJywKKyAgICAgICAgICAgICdjb25uZWN0U3RhcnQnLAor
ICAgICAgICAgICAgJ2RlY29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAnZG9tQ29tcGxldGUn
LAorICAgICAgICAgICAgJ2RvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCcsCisgICAgICAgICAgICAn
ZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ2RvbUludGVyYWN0aXZl
JywKKyAgICAgICAgICAgICdkb21haW5Mb29rdXBFbmQnLAorICAgICAgICAgICAgJ2RvbWFpbkxv
b2t1cFN0YXJ0JywKKyAgICAgICAgICAgICdkdXJhdGlvbicsCisgICAgICAgICAgICAnZW5jb2Rl
ZEJvZHlTaXplJywKKyAgICAgICAgICAgICdlbnRyeVR5cGUnLAorICAgICAgICAgICAgJ2ZldGNo
U3RhcnQnLAorICAgICAgICAgICAgJ2luaXRpYXRvclR5cGUnLAorICAgICAgICAgICAgJ2xvYWRF
dmVudEVuZCcsCisgICAgICAgICAgICAnbG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgJ25h
bWUnLAorICAgICAgICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgJ3JlZGlyZWN0
RW5kJywKKyAgICAgICAgICAgICdyZWRpcmVjdFN0YXJ0JywKKyAgICAgICAgICAgICdyZXF1ZXN0
U3RhcnQnLAorICAgICAgICAgICAgJ3Jlc3BvbnNlRW5kJywKKyAgICAgICAgICAgICdyZXNwb25z
ZVN0YXJ0JywKKyAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQnLAorICAgICAgICAg
ICAgJ3RyYW5zZmVyU2l6ZScsCisgICAgICAgICAgICAndHlwZScsCisgICAgICAgICAgICAndW5s
b2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgJ3VubG9hZEV2ZW50U3RhcnQnLAorICAgICAgICAg
ICAgJ3dvcmtlclN0YXJ0JworICAgICAgICBdOworCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICAgICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2Vy
dmVyKAorICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMSA9IHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVswXTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGluc3RhbmNlMiA9IHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGluc3RhbmNlMyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRVcmwp
WzBdOworCisgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlz
IG9ubHkgb25lIG5hdmlnYXRpb24gdGltaW5nIGluc3RhbmNlLiIpOworICAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoZXhwZWN0ZWRV
cmwpLmxlbmd0aCwgMSwgIkV4cGVjdGVkIHRoZXJlIGlzIG9ubHkgb25lIG5hdmlnYXRpb24gdGlt
aW5nIGluc3RhbmNlLiIpOworCisgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgbmF2VGltaW5nMkF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoaW5zdGFuY2UxW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSwg
aW5zdGFuY2UyW25hdlRpbWluZzJBdHRyaWJ1dGVzW2ldXSk7CisgICAgICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG5hdlRpbWluZzJB
dHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGluc3RhbmNlMVtuYXZUaW1pbmcyQXR0cmlidXRlc1tpXV0sIGluc3RhbmNlM1tuYXZU
aW1pbmcyQXR0cmlidXRlc1tpXV0pOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICk7CisgICAgICAgICAgICBv
YnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0pOworCisgICAgICAg
IH0sICJQZXJmb3JtYW5jZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyaWVzIGFyZSBhY2Nlc3NpYmxl
IHRocm91Z2ggdGhyZWUgZGlmZmVyZW50IGFjY2Vzc29ycy4iKTsKKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfaWZy
YW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9p
ZnJhbWUtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmln
YXRlX2lmcmFtZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0IEBACisK
KworUEFTUyBuYXZpZ2F0aW9uLm5hbWUgdXBkYXRlZCB3aGVuIGlmcmFtZSBVUkwgY2hhbmdlcwor
CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmln
YXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24t
dGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGlt
aW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV9pZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCww
ICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8bWV0YSBj
aGFyc2V0PXV0Zi04PgorICAgIDx0aXRsZT5QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcubmFt
ZSB1cGRhdGVkIGluIGlmcmFtZXM8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAg
PHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbiAodCkgeworICB2YXIgaWZyID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoaWZyKTsKKworICBpZnIuc3JjPSJyZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1s
IjsKKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgaWZyLm9ubG9hZCA9IGZ1
bmN0aW9uKCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhpZnIuY29udGVudFdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3RoLCAxLCAiT25seSBvbmUg
bmF2aWdhdGlvbiB0aW1lIGVudHJ5Iik7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50
V2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5uYW1l
LCBpZnIuY29udGVudFdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLCAibmF2aWdhdGlvbiBuYW1l
IG1hdGNoZXMgdGhlIHdpbmRvdy5sb2NhdGlvbiIpOworICAgICAgYXNzZXJ0X3RydWUoaWZyLmNv
bnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
Lm5hbWUuZW5kc1dpdGgoImJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpLCAibmF2aWdhdGlvbiBuYW1l
IGlzIGJsYW5rX3BhZ2VfZ3JlZW4uaHRtbCIpOworICAgICAgcmVzb2x2ZSgpOworICAgIH0KKyAg
fSk7CisKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgc2V0VGltZW91dChyZXNv
bHZlLCAxMDApOyB9KTsKKyAgaWZyLnNyYyA9InJlc291cmNlcy9ibGFua19wYWdlX3llbGxvdy5o
dG1sIjsKKworICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBpZnIub25sb2Fk
ID0gZnVuY3Rpb24oKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmci5jb250ZW50V2luZG93LnBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKS5sZW5ndGgsIDEsICJPbmx5
IG9uZSBuYXZpZ2F0aW9uIHRpbWUgZW50cnkiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyLmNv
bnRlbnRXaW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBd
Lm5hbWUsIGlmci5jb250ZW50V2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCksICJuYXZpZ2F0aW9u
IG5hbWUgbWF0Y2hlcyB0aGUgd2luZG93LmxvY2F0aW9uIik7CisgICAgICBhc3NlcnRfdHJ1ZShp
ZnIuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF0ubmFtZS5lbmRzV2l0aCgiYmxhbmtfcGFnZV95ZWxsb3cuaHRtbCIpLCAibmF2aWdhdGlv
biBuYW1lIGlzIGJsYW5rX3BhZ2VfeWVsbG93Lmh0bWwiKTsKKyAgICAgIHJlc29sdmUoKTsKKyAg
ICB9CisgIH0pOworfSwgIm5hdmlnYXRpb24ubmFtZSB1cGRhdGVkIHdoZW4gaWZyYW1lIFVSTCBj
aGFuZ2VzIik7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2RvY3VtZW50LWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGVfd2l0aGluX2Rv
Y3VtZW50LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw5ICsxLDcgQEAKLUNPTlNP
TEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAndGltaW5nW3Byb3BlcnR5XScpCiBEZXNjcmlwdGlvbgogCiBUaGlzIHRlc3QgdmFsaWRh
dGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hhbmdlZCBhZnRlciBhbiBpbiBkb2N1
bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdlKS4KIAogCi1IYXJuZXNzIEVycm9y
IChGQUlMKSwgbWVzc2FnZSA9IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ3RpbWluZ1twcm9wZXJ0eV0nKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5n
IDIgV1BUCiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVudC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRlX3dpdGhpbl9kb2N1bWVu
dC5odG1sCShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0ZV93aXRo
aW5fZG9jdW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNiArMTMsOCBAQAogICAgICAg
ICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgYWxsIG9mIHRoZSB3aW5kb3cucGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpIGF0dHJpYnV0ZXMgcmVtYWluIHVuY2hh
bmdlZCBhZnRlciBhbiBpbiBkb2N1bWVudCBuYXZpZ2F0aW9uIChVUkwgZnJhZ21lbnQgY2hhbmdl
KS48L3A+CiAKICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVwKHsgc2luZ2xlX3Rl
c3Q6IHRydWUgfSk7CisKICAgICAgICAgICAgIHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsK
ICAgICAgICAgICAgICAgICAnY29ubmVjdEVuZCcsCiAgICAgICAgICAgICAgICAgJ2Nvbm5lY3RT
dGFydCcsCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfYmFja2ZvcndhcmQt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2
Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNiArMSw3IEBACiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVu
bG9hZCBoYW5kbGVyKHMpCiBmcmFtZSAiPCEtLWZyYW1lMS0tPiIgLSBoYXMgMSBvbnVubG9hZCBo
YW5kbGVyKHMpCi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRpb25fZnJhbWUucGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUnKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4i
IC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorZnJhbWUgIjwhLS1mcmFtZTEtLT4iIC0gaGFz
IDEgb251bmxvYWQgaGFuZGxlcihzKQogRGVzY3JpcHRpb24KIAogVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXS50eXBlIHdpdGggYSBmb3J3YXJkIGFuZCBiYWNrIG5hdmlnYXRpb24uCkBAIC0x
Myw2ICsxNCw1IEBAIFRoaXMgdGVzdCBwYXNzZXMgaWYgYWxsIG9mIHRoZSBjaGVja3MgdG8KIAog
CiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9mcmFtZS5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK1BBU1MgTmF2aWdh
dGlvbiBUaW1pbmcgMiBXUFQKIApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBl
X2JhY2tmb3J3YXJkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2aWdhdGlv
bl90eXBlX2JhY2tmb3J3YXJkLmh0bWwJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90
ZXN0X25hdmlnYXRpb25fdHlwZV9iYWNrZm9yd2FyZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC04
LDYgKzgsNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldHVw
KHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9ubG9hZF90
ZXN0KCkKICAgICAgICAgICAgIHsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlw
ZV9uYXZpZ2F0ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfbmF2
aWdhdGlvbl90eXBlX25hdmlnYXRlLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfbmF2aWdhdGUtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsNyBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRl
cyB0aGUgdmFsdWUgb2Ygd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXS50eXBlIHRvIGJlIG5hdmlnYXRlLgorCisKK1BBU1MgTmF2aWdhdGlvbiB0eXBl
IHRvIGJlIG5hdmlnYXRlLgorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVf
bmF2aWdhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfbmF2aWdhdGUuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0
aW9uX3R5cGVfbmF2aWdhdGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDMyIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0
PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRs
ZT4KKyAgICAgICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6
Ly93d3cuZ29vZ2xlLmNvbS8iIC8+CisgICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0
cDovL3d3dy53My5vcmcvVFIvbmF2aWdhdGlvbi10aW1pbmcvI3NlYy1uYXZpZ2F0aW9uLXRpbWlu
Zy1pbnRlcmZhY2UiLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBh
c3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0g
bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgICAgICAgICAgICAgIHQuc3RlcF9mdW5j
KGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXMoKVswXS50eXBlLCAibmF2aWdhdGUiLCAiRXhwZWN0
ZWQgbmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOworICAgICAgICAgICAgICAgICAg
ICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgICAgICAgICAgdC5k
b25lKCk7CisgICAgICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgKTsKKyAgICAg
ICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm5hdmlnYXRpb24iXX0p
OworCisgICAgICAgICAgICB9LCAiTmF2aWdhdGlvbiB0eXBlIHRvIGJlIG5hdmlnYXRlLiIpOwor
ICAgICAgICA8L3NjcmlwdD4KKworICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGgx
PgorICAgICAgICAgICAgRGVzY3JpcHRpb248L2gxPgorICAgICAgICA8cD4KKyAgICAgICAgICAg
IFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZSB0byBiZSBuYXZpZ2F0ZS48L3A+CisK
KyAgICA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5
cGVfcmVsb2FkLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9uYXZp
Z2F0aW9uX3R5cGVfcmVsb2FkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9uYXYyX3Rlc3RfbmF2aWdhdGlvbl90eXBlX3JlbG9hZC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25ld05hdlRpbWluZy50eXBlJykKIERl
c2NyaXB0aW9uCiAKIFRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhlIHZhbHVlIG9mIHdpbmRvdy5wZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0uKHR5cGUvdW5sb2FkRXZl
bnRFbmQvdW5sb2FkRXZlbnRTdGFydCkgd2l0aCBhIHJlbG9hZGVkIG5hdmlnYXRpb24uCkBAIC0x
MCw2ICs5LDUgQEAgVGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKAogVGhl
IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikudW5sb2Fk
RXZlbnRFbmQgPiAwIGFmdGVyIHJlbG9hZAogCiAKLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNz
YWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
bmV3TmF2VGltaW5nLnR5cGUnKQotCitQQVNTIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUCiAKSW5k
ZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL25hdjJfdGVzdF9uYXZpZ2F0aW9uX3R5cGVfcmVsb2FkLmh0bWwJKHJldmlzaW9u
IDI3Nzc0MSkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X25hdmlnYXRpb25fdHlwZV9yZWxvYWQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtOCw2ICs4LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+
CisgICAgICAgICAgICBzZXR1cCh7IHNpbmdsZV90ZXN0OiB0cnVlIH0pOwogCiAgICAgICAgICAg
ICB2YXIgcmVsb2FkX2ZyYW1lOwogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFp
bl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9v
cmlnaW4tZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X2NoYWluX3hzZXJ2ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDExIEBACitCbG9ja2VkIGFjY2VzcyB0byBleHRlcm5hbCBV
UkwgaHR0cDovL3d3dy5sb2NhbGhvc3Q6ODgwMC9jb21tb24vcmVkaXJlY3Qtb3B0LWluLnB5P2xv
Y2F0aW9uPWh0dHA6Ly9sb2NhbGhvc3Q6ODgwMC9uYXZpZ2F0aW9uLXRpbWluZy9yZXNvdXJjZXMv
YmxhbmtfcGFnZV9ncmVlbi5odG1sCitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVz
IHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJu
YXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3VudCBhbmQgdGhlIHdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMg
Zm9yIGEgY3Jvc3Mtb3JpZ2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0
aGUgZmluYWwgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi4KKwor
CisKK0hhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCitOT1RSVU4gTmF2
aWdhdGlvbiBUaW1pbmcgMiBXUFQKKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfY2hh
aW5feHNlcnZlcl9maW5hbF9vcmlnaW5hbF9vcmlnaW4uaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5n
L25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX2ZpbmFsX29yaWdpbmFsX29yaWdpbi5o
dG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2
ZXJfZmluYWxfb3JpZ2luYWxfb3JpZ2luLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw1
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEg
Y2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQ
VDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVm
PSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgorICAgICAgICA8bGluayByZWw9ImhlbHAiIGhy
ZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmlnYXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3Jt
YW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIv
Y29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAg
IHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIG9u
bG9hZF90ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBjb25zdCBmcmFtZV9w
ZXJmb3JtYW5jZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZUNvbnRleHQiKS5jb250
ZW50V2luZG93LnBlcmZvcm1hbmNlOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJh
bWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5cGUsCisg
ICAgICAgICAgICAgICAgICAgICJuYXZpZ2F0ZSIsCisgICAgICAgICAgICAgICAgICAgICJFeHBl
Y3RlZCBuYXZpZ2F0aW9uIHR5cGUgdG8gYmUgbmF2aWdhdGUuIik7CisgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhmcmFtZV9wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0
aW9uIilbMF0ucmVkaXJlY3RDb3VudCwgMCwKKyAgICAgICAgICAgICAgICAgICAgIkV4cGVjdGVk
IHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGZyYW1lX3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRp
cmVjdFN0YXJ0LCAwLAorICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RTdGFy
dCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWVfcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0RW5kLCAwLAor
ICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgcmVkaXJlY3RFbmQgdG8gYmUgMC4iKTsKKyAg
ICAgICAgICAgICAgICBkb25lKCk7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gxPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RDb3Vu
dCBhbmQgdGhlCisgICAgICAgICAgIHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCJuYXZpZ2F0aW9uIilbMF0ucmVkaXJlY3RTdGFydC9FbmQgdGltZXMgZm9yIGEgY3Jvc3Mtb3Jp
Z2luIHNlcnZlciBzaWRlIHJlZGlyZWN0IG5hdmlnYXRpb24gd2hlbiB0aGUgZmluYWwKKyAgICAg
ICAgICAgZG9jdW1lbnQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbi48L3A+CisK
KyAgICAgICAgPGlmcmFtZSBpZD0iZnJhbWVDb250ZXh0IiBzcmM9IiIgc3R5bGU9IndpZHRoOiAy
NTBweDsgaGVpZ2h0OiAyNTBweDsiPjwvaWZyYW1lPgorICAgICAgICA8c2NyaXB0PgorICAgICAg
ICAgICAgLy8gY29tYmluZSB0aGUgcGFnZSBvcmlnaW4gYW5kIHJlZGlyZWN0IG9yaWdpbiBpbnRv
IHRoZSBJRlJBTUUncyBzcmMgVVJMCisgICAgICAgICAgICBjb25zdCBkZXN0VXJsX2ZpcnN0ID0g
bWFrZV9hYnNvbHV0ZV91cmwoe3N1YmRvbWFpbjogInd3dyIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVjdC1vcHQtaW4u
cHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlcnk6
ICJsb2NhdGlvbj0iICsgbWFrZV9hYnNvbHV0ZV91cmwoCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGF0aDogIi9uYXZpZ2F0aW9uLXRp
bWluZy9yZXNvdXJjZXMvYmxhbmtfcGFnZV9ncmVlbi5odG1sIn0pCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIGNvbnN0IGRlc3RV
cmwgPSBtYWtlX2Fic29sdXRlX3VybCh7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYXRoOiAiL2NvbW1vbi9yZWRpcmVjdC5weSIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVyeTogImxvY2F0aW9uPSIgKyBkZXN0
VXJsX2ZpcnN0fSk7CisgICAgICAgICAgICBsZXQgZnJhbWVDb250ZXh0ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImZyYW1lQ29udGV4dCIpOworICAgICAgICAgICAgZnJhbWVDb250ZXh0Lm9u
bG9hZCA9IG9ubG9hZF90ZXN0OworICAgICAgICAgICAgZnJhbWVDb250ZXh0LnNyYyA9IGRlc3RV
cmw7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcv
bmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJfcGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X2NoYWluX3hzZXJ2ZXJf
cGFydGlhbF9vcHRfaW4tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25h
djJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtNiw2ICs2LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUg
dmFsdWVzIG9mIHRoZSB3aQogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdmcmFtZV9w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZB
SUwgTmF2aWdhdGlvbiBUaW1pbmcgMiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZnJhbWVfcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdLnR5cGUnKQogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9j
aGFpbl94c2VydmVyX3BhcnRpYWxfb3B0X2luLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYy
X3Rlc3RfcmVkaXJlY3RfY2hhaW5feHNlcnZlcl9wYXJ0aWFsX29wdF9pbi5odG1sCShyZXZpc2lv
biAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9jaGFpbl94c2VydmVyX3BhcnRp
YWxfb3B0X2luLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTMgKzksNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CiAg
ICAgICAgIDxzY3JpcHQgc3JjPSIvY29tbW9uL3V0aWxzLmpzIj48L3NjcmlwdD4KICAgICAgICAg
PHNjcmlwdD4KLQotICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihl
dmVudE9yZGVyLCB0aW1pbmdFbnRyeSkgewotICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAw
OyBpIDwgZXZlbnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKLSAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X3RydWUodGltaW5nRW50cnlbZXZlbnRPcmRlcltpXV0gPCB0aW1pbmdFbnRyeVtldmVu
dE9yZGVyW2kgKyAxXV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAiRXhwZWN0ZWQgIiArIGV2
ZW50T3JkZXJbaV0gKyAiIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiAiICsgZXZlbnRPcmRlcltpICsg
MV0gKyAiLiIpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IHNldHVwKHsgc2luZ2xlX3Rlc3Q6IHRydWUgfSk7CiAKICAgICAgICAgICAgIGZ1bmN0aW9uIG9u
bG9hZF90ZXN0KCkKICAgICAgICAgICAgIHsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X25vbmUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X25vbmUtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X25vbmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNyBAQAorRGVz
Y3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZSBvZiB0aGUgd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVj
dENvdW50IGF0dHJpYnV0ZSwgYXMgd2VsbCBhcyB0aGUgd2luZG93LnBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXS5yZWRpcmVjdFN0YXJ0IGFuZCByZWRpcmVjdEVu
ZCBhdHRyaWJ1dGVzIG9uIGEgbm9uLXJlZGlyZWN0ZWQgbmF2aWdhdGlvbi4KKworCitQQVNTIE5h
aXZhdGlvbiB3aXRob3V0IHJlZGlyZWN0cy4KKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJl
Y3Rfbm9uZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0X25vbmUu
aHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9ub25lLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisgICAgICAgIDx0
aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyAyIFdQVDwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iR29vZ2xlIiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20vIiAvPgor
ICAgICAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL25hdmln
YXRpb24tdGltaW5nLTIvI3NlYy1QZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmciLz4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8aDE+RGVzY3JpcHRpb248L2gx
PgorICAgICAgICA8cD5UaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgdGhlIHZhbHVlIG9mIHRoZSB3
aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGly
ZWN0Q291bnQgYXR0cmlidXRlLCBhcyB3ZWxsIGFzIHRoZSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnJlZGlyZWN0U3RhcnQgYW5kIHJlZGlyZWN0
RW5kIGF0dHJpYnV0ZXMgb24gYSBub24tcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLjwvcD4KKworICAg
ICAgICA8c2NyaXB0PgorCisgICAgICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICAg
ICAgICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICAg
ICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QpIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIG5hdlRpbWluZyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmln
YXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcu
cmVkaXJlY3RDb3VudCwgMCwgIkV4cGVjdGVkIHJlZGlyZWN0Q291bnQgdG8gYmUgMC4iKTsKKyAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVkaXJlY3RTdGFydCwg
MCwgIkV4cGVjdGVkIHJlZGlyZWN0U3RhcnQgdG8gYmUgMC4iKTsKKyAgICAgICAgICAgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhuYXZUaW1pbmcucmVkaXJlY3RFbmQsIDAsICJFeHBlY3RlZCByZWRp
cmVjdEVuZCB0byBiZSAwLiIpOworICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25u
ZWN0KCk7CisgICAgICAgICAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICApOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBl
czogWyJuYXZpZ2F0aW9uIl19KTsKKworICAgICAgICB9LCAiTmFpdmF0aW9uIHdpdGhvdXQgcmVk
aXJlY3RzLiIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rfc2Vy
dmVyLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9z
ZXJ2ZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9y
ZWRpcmVjdF9zZXJ2ZXItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDEwICsxLDkg
QEAKLUNPTlNPTEUgTUVTU0FHRTogVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnbmF2aWdhdGlvbl9lbnRyeS50eXBlJykKK0NPTlNPTEUgTUVTU0FHRTog
RXJyb3I6IGFzc2VydF90cnVlOiBFeHBlY3RlZCBzdGFydFRpbWUgdG8gYmUgbm8gZ3JlYXRlciB0
aGFuIHJlZGlyZWN0U3RhcnQuIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBEZXNjcmlwdGlvbgog
CiBUaGlzIHRlc3QgdmFsaWRhdGVzIHRoZSB2YWx1ZXMgb2YgdGhlIHdpbmRvdy5wZXJmb3JtYW5j
ZS5yZWRpcmVjdENvdW50IGFuZCB0aGUgd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVj
dFN0YXJ0L0VuZCB0aW1lcyBmb3IgYSBzYW1lLW9yaWdpbiBzZXJ2ZXIgc2lkZSByZWRpcmVjdCBu
YXZpZ2F0aW9uLgogCiAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0aW9uX2Vu
dHJ5LnR5cGUnKQotCitGQUlMIE5hdmlnYXRpb24gVGltaW5nIDIgV1BUIEVycm9yOiBhc3NlcnRf
dHJ1ZTogRXhwZWN0ZWQgc3RhcnRUaW1lIHRvIGJlIG5vIGdyZWF0ZXIgdGhhbiByZWRpcmVjdFN0
YXJ0LiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRp
cmVjdF9zZXJ2ZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF9z
ZXJ2ZXIuaHRtbAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3Rf
c2VydmVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksNiArOSw3IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KIAogICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsK
IAogICAgICAgICAgICAgZnVuY3Rpb24gdmVyaWZ5VGltaW5nRXZlbnRPcmRlcihldmVudE9yZGVy
LCB0aW1pbmdFbnRyeSkgewogICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZl
bnRPcmRlci5sZW5ndGggLSAxOyBpKyspIHsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGlyZWN0
X3hzZXJ2ZXItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3JlZGly
ZWN0X3hzZXJ2ZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF9yZWRpcmVjdF94c2VydmVyLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiw2
ICs2LDUgQEAgVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGUgdmFsdWVzIG9mIHRoZSB3aQogCiAKIAot
SGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZU5hbWVzcGFjZS5nZXRFbnRyaWVz
QnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0udHlwZScpCi0KK0ZBSUwgTmF2aWdhdGlvbiBUaW1pbmcg
MiBXUFQgVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
cGVyZm9ybWFuY2VOYW1lc3BhY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdLnR5
cGUnKQogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfcmVkaXJlY3RfeHNlcnZlci5odG1sCShyZXZpc2lvbiAy
Nzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25h
dmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF9yZWRpcmVjdF94c2VydmVyLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTksNiArOSw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii9jb21t
b24vdXRpbHMuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0
dXAoeyBzaW5nbGVfdGVzdDogdHJ1ZSB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gb25sb2Fk
X3Rlc3QoKQogICAgICAgICAgICAgewpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9p
bnN0YW5jZXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1
ZV9uYXZfaW5zdGFuY2VzLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL25hdjJf
dGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSw3IEBACitEZXNjcmlwdGlvbgorCitUaGlzIHRlc3QgdmFsaWRhdGVzIHRoYXQgZWFj
aCB3aW5kb3cgaGFzIGEgdW5pcXVlIG5hdiB0aW1pbmcgMiBpbnN0YW5jZS4KKworCitGQUlMIEVh
Y2ggd2luZG93IGhhcyBhIHVuaXF1ZSBuYXYgdGltaW5nIDIgaW5zdGFuY2UuIGFzc2VydF9lcXVh
bHM6IE9ubHkgb25lIG5hdiB0aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiBleHBlY3RlZCAxIGJ1dCBn
b3QgMAorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L25hdmlnYXRpb24tdGltaW5nL25hdjJfdGVzdF91bmlxdWVfbmF2X2luc3RhbmNlcy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvbmF2Ml90ZXN0X3VuaXF1ZV9uYXZfaW5zdGFuY2VzLmh0bWwJKG5v
bmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfdW5pcXVlX25hdl9pbnN0YW5jZXMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDc2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
ICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKyAgICAgICAgPHRp
dGxlPk5hdmlnYXRpb24gVGltaW5nIDIgV1BUPC90aXRsZT4KKyAgICAgICAgPGxpbmsgcmVsPSJh
dXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS8iIC8+Cisg
ICAgICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvbmF2aWdh
dGlvbi10aW1pbmctMi8jc2VjLVBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyIvPgorICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+
CisgICAgICAgIDxwPlRoaXMgdGVzdCB2YWxpZGF0ZXMgdGhhdCBlYWNoIHdpbmRvdyBoYXMgYSB1
bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLjwvcD4KKyAgICAgICAgPGlmcmFtZSBpZD0iZnJh
bWVDb250ZXh0IiBzcmM9InJlc291cmNlcy9ibGFua19wYWdlX2dyZWVuLmh0bWwiIHN0eWxlPSJk
aXNwbGF5Om5vbmU7Ijs+PC9pZnJhbWU+CisgICAgICAgIDxzY3JpcHQ+CisKKyAgICAgICAgICAg
IHZhciBuYXZUaW1pbmcyQXR0cmlidXRlcyA9IFsKKyAgICAgICAgICAgICAgICAnY29ubmVjdEVu
ZCcsCisgICAgICAgICAgICAgICAgJ2Nvbm5lY3RTdGFydCcsCisgICAgICAgICAgICAgICAgJ2Rl
Y29kZWRCb2R5U2l6ZScsCisgICAgICAgICAgICAgICAgJ2RvbUNvbXBsZXRlJywKKyAgICAgICAg
ICAgICAgICAnZG9tQ29udGVudExvYWRlZEV2ZW50RW5kJywKKyAgICAgICAgICAgICAgICAnZG9t
Q29udGVudExvYWRlZEV2ZW50U3RhcnQnLAorICAgICAgICAgICAgICAgICdkb21JbnRlcmFjdGl2
ZScsCisgICAgICAgICAgICAgICAgJ2RvbWFpbkxvb2t1cEVuZCcsCisgICAgICAgICAgICAgICAg
J2RvbWFpbkxvb2t1cFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnZHVyYXRpb24nLAorICAgICAg
ICAgICAgICAgICdlbmNvZGVkQm9keVNpemUnLAorICAgICAgICAgICAgICAgICdlbnRyeVR5cGUn
LAorICAgICAgICAgICAgICAgICdmZXRjaFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnaW5pdGlh
dG9yVHlwZScsCisgICAgICAgICAgICAgICAgJ2xvYWRFdmVudEVuZCcsCisgICAgICAgICAgICAg
ICAgJ2xvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnbmFtZScsCisgICAgICAgICAg
ICAgICAgJ3JlZGlyZWN0Q291bnQnLAorICAgICAgICAgICAgICAgICdyZWRpcmVjdEVuZCcsCisg
ICAgICAgICAgICAgICAgJ3JlZGlyZWN0U3RhcnQnLAorICAgICAgICAgICAgICAgICdyZXF1ZXN0
U3RhcnQnLAorICAgICAgICAgICAgICAgICdyZXNwb25zZUVuZCcsCisgICAgICAgICAgICAgICAg
J3Jlc3BvbnNlU3RhcnQnLAorICAgICAgICAgICAgICAgICdzZWN1cmVDb25uZWN0aW9uU3RhcnQn
LAorICAgICAgICAgICAgICAgICd0cmFuc2ZlclNpemUnLAorICAgICAgICAgICAgICAgICd0eXBl
JywKKyAgICAgICAgICAgICAgICAndW5sb2FkRXZlbnRFbmQnLAorICAgICAgICAgICAgICAgICd1
bmxvYWRFdmVudFN0YXJ0JywKKyAgICAgICAgICAgICAgICAnd29ya2VyU3RhcnQnCisgICAgICAg
ICAgICBdOworCisgICAgICAgICAgICBmdW5jdGlvbiBub3Rfc2FtZV9pbnN0YW5jZShpbnN0YW5j
ZTEsIGluc3RhbmNlMiwgYXR0cmlidXRlcykgeworICAgICAgICAgICAgICAgIGZvciAodmFyIGkg
aW4gYXR0cmlidXRlcykgeworICAgICAgICAgICAgICAgICAgICBpZiAoaW5zdGFuY2UxW2F0dHJp
YnV0ZXNbaV1dICE9IGluc3RhbmNlMlthdHRyaWJ1dGVzW2ldXSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGFzeW5jX3Rlc3QoZnVu
Y3Rpb24gKHQpIHsKKyAgICAgICAgICAgICAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFu
Y2VPYnNlcnZlcigKKyAgICAgICAgICAgICAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVu
dHJ5TGlzdCkgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxp
c3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLmxlbmd0aCwgMSwgIk9ubHkgb25lIG5h
diB0aW1pbmcgaW5zdGFuY2UgZXhpc3RzLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVu
dFdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIikubGVuZ3Ro
LCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPbmx5IG9uZSBuYXYgdGltaW5nIGlu
c3RhbmNlIGV4aXN0cy4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZhciBtYWluX2ZyYW1l
X2luc3RhbmNlID0gZW50cnlMaXN0LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpZnJhbWVfaW5zdGFuY2UgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZnJhbWVDb250ZXh0IikuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF07CisgICAgICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfdHJ1ZShub3Rfc2FtZV9pbnN0YW5jZShtYWluX2ZyYW1lX2luc3RhbmNlLCBpZnJh
bWVfaW5zdGFuY2UsIG5hdlRpbWluZzJBdHRyaWJ1dGVzKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAiVHdvIG5hdiB0aW1pbmcgaW5zdGFuY2VzIGFyZSBub3QgdGhlIHNhbWUgaW5zdGFu
Y2UuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICAgICAgICAgICAgfSkK
KyAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoe2Vu
dHJ5VHlwZXM6IFsibmF2aWdhdGlvbiJdfSk7CisKKyAgICAgICAgICAgIH0sICJFYWNoIHdpbmRv
dyBoYXMgYSB1bmlxdWUgbmF2IHRpbWluZyAyIGluc3RhbmNlLiIpOworICAgICAgICA8L3Njcmlw
dD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3BvLW5hdmlnYXRpb24tZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvcG8tbmF2aWdhdGlvbi1leHBlY3RlZC50eHQJKG5v
bmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dAkod29ya2luZyBj
b3B5KQpAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBuYXZpZ2F0aW9uCisK
K05hdmlnYXRpb24gd2lsbCBxdWV1ZSBhIFBlcmZvcm1hbmNlRW50cnkuCisKKworUEFTUyBuYXZp
Z2F0aW9uIGVudHJ5IGlzIG9ic2VydmFibGUKKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwJKG5vbmV4aXN0ZW50KQor
KysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9u
LXRpbWluZy9wby1uYXZpZ2F0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyOSBA
QAorPCFET0NUWVBFIEhUTUw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPlBlcmZvcm1h
bmNlT2JzZXJ2ZXJzOiBuYXZpZ2F0aW9uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogbmF2
aWdhdGlvbjwvaDE+Cis8cD4KK05hdmlnYXRpb24gd2lsbCA8YSBocmVmPSJodHRwczovL3czYy5n
aXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvI2Rmbi1xdWV1ZS1hLXBlcmZvcm1hbmNlZW50
cnkiPnF1ZXVlIGEgUGVyZm9ybWFuY2VFbnRyeTwvYT4uCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwv
ZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9u
IGNoZWNrRW50cnkocGVzKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKHBlcy5sZW5ndGgsIDEsICJP
bmx5IG9uZSBuYXZpZ2F0aW9uIHRpbWluZyBlbnRyeSIpOworICAgICAgYXNzZXJ0X2VxdWFscyhw
ZXNbMF0uZW50cnlUeXBlLCAibmF2aWdhdGlvbiIsICJlbnRyeVR5cGUgaXMgXCJuYXZpZ2F0aW9u
XCIiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMocGVzWzBdLm5hbWUsIHdpbmRvdy5sb2NhdGlvbi50
b1N0cmluZygpLCAibmFtZSBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgZG9jdW1lbnQiKTsKKyAgICB9
CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQu
c3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNoZWNrRW50
cnkoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAgICAgY2hlY2tFbnRyeShlbnRyeUxp
c3QuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpKTsKKyAgICAgICAgICBjaGVja0VudHJ5
KGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKHdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpKSk7
CisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgpOwor
ICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBb
Im5hdmlnYXRpb24iXX0pOworICB9LCAibmF2aWdhdGlvbiBlbnRyeSBpcyBvYnNlcnZhYmxlIik7
Cis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0
cHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlLWNvbm5lY3Rpb24tc3Rh
cnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJl
LWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0IHNlY3VyZUNvbm5lY3Rpb25TdGFy
dCB2YWx1ZSBpcyBhcyBleHBlY3RlZCB3aGVuIHJldXNlZAorCkluZGV4OiBMYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3NlY3VyZS1j
b25uZWN0aW9uLXN0YXJ0LXJldXNlLmh0dHBzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9zZWN1
cmUtY29ubmVjdGlvbi1zdGFydC1yZXVzZS5odHRwcy5odG1sCShub25leGlzdGVudCkKKysrIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvc2VjdXJlLWNvbm5lY3Rpb24tc3RhcnQtcmV1c2UuaHR0cHMuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKzx0aXRsZT5OYXZpZ2F0aW9uIFRpbWluZyBzZWN1cmVjb25u
ZWN0aW9uc3RhcnQgcmV1c2U8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2NvbnN0IHQgPSBhc3luY190ZXN0KCJUZXN0
IHRoYXQgc2VjdXJlQ29ubmVjdGlvblN0YXJ0IHZhbHVlIGlzIGFzIGV4cGVjdGVkIHdoZW4gcmV1
c2VkIik7Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHQuc3RlcF9mdW5jX2Rv
bmUoZSA9PiB7CisgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIpOworfSkpOworPC9zY3Jp
cHQ+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL3NlY3VyZS1jb25uZWN0aW9uLWludGVyaW0uaHRt
bCI+CisKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
bmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRfbm9uX3plcm8uaHR0cHMt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc2VjdXJlX2Nvbm5lY3Rpb25fc3RhcnRf
bm9uX3plcm8uaHR0cHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Nl
Y3VyZV9jb25uZWN0aW9uX3N0YXJ0X25vbl96ZXJvLmh0dHBzLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMyw1ICszLDUgQEAgRGVzY3JpcHRpb24KIFRoZSB0ZXN0cyB0aGF0IHNlY3Vy
ZUNvbm5lY3Rpb25TdGFydCBoYXMgYSBub24temVybyB2YWx1ZS4KIAogCi1GQUlMIFRlc3QgdGhh
dCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnNlY3VyZUNvbm5lY3Rpb25TdGFydCcpCitGQUlMIFRl
c3QgdGhhdCBzZWN1cmVDb25uZWN0aW9uU3RhcnQgaXMgbm90IHplcm8gYXNzZXJ0X2dyZWF0ZXJf
dGhhbjogc2VjdXJlQ29ubmVjdGlvblN0YXJ0IGlzIG5vbi16ZXJvIGV4cGVjdGVkIGEgbnVtYmVy
IGdyZWF0ZXIgdGhhbiAwIGJ1dCBnb3QgMAogCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0
aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9u
YXZpZ2F0aW9uX3R5cGUuYW55LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWlu
Zy9zdXBwb3J0ZWRfbmF2aWdhdGlvbl90eXBlLmFueS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSw0IEBACiAKLUZBSUwgc3VwcG9ydGVkRW50cnlUeXBlcyBjb250YWlucyAn
bmF2aWdhdGlvbicuIGFzc2VydF90cnVlOiBUaGVyZSBzaG91bGQgYmUgYW4gZW50cnkgJ25hdmln
YXRpb24nIGluIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZp
Z2F0aW9uJy4KK1BBU1MgJ25hdmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUu
CiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVkX25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3N1cHBvcnRlZF9uYXZpZ2F0aW9uX3R5cGUuYW55
Lndvcmtlci1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1pbmcvc3VwcG9ydGVk
X25hdmlnYXRpb25fdHlwZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDYgQEAKIAotRkFJTCBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZp
Z2F0aW9uJy4gYXNzZXJ0X3RydWU6IFRoZXJlIHNob3VsZCBiZSBhbiBlbnRyeSAnbmF2aWdhdGlv
bicgaW4gUGVyZm9ybWFuY2VPYnNlcnZlci5zdXBwb3J0ZWRFbnRyeVR5cGVzIGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKwor
UEFTUyBzdXBwb3J0ZWRFbnRyeVR5cGVzIGNvbnRhaW5zICduYXZpZ2F0aW9uJy4KK1RJTUVPVVQg
J25hdmlnYXRpb24nIGVudHJpZXMgc2hvdWxkIGJlIG9ic2VydmFibGUuIFRlc3QgdGltZWQgb3V0
CiAKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2
aWdhdGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0CShub25leGlzdGVu
dCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdh
dGlvbi10aW1pbmcvdGVzdF9kb2N1bWVudF9vbmxvYWQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsOCBAQAorRGVzY3JpcHRpb24KKworVGhpcyB0ZXN0IGNoZWNrcyB0aGF0
IHRoZSB0cmFuc2ZlclNpemUsIGVuY29kZWRCb2R5U2l6ZSBhbmQgZGVjb2RlZEJvZHlTaXplIGF0
dHJpYnV0ZXMgaGF2ZSBjb3JyZWN0IHZhbHVlcyB3aGVuIGNoZWNrZWQgaW4gdGhlIG9ubG9hZCBo
YW5kbGVyCisKKworRkFJTCBUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2
YWx1ZSBkdXJpbmcgRE9NQ29udGVudExvYWRlZCBhc3NlcnRfZ3JlYXRlcl90aGFuOiBkZXNjciBl
eHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIKK0ZBSUwgVGVzdCB0aGF0IHRo
ZSBhdHRyaWJ1dGVzIGhhdmUgYSBwcm9wZXIgdmFsdWUgZHVyaW5nIG9ubG9hZCBhc3NlcnRfZ3Jl
YXRlcl90aGFuOiBkZXNjciBleHBlY3RlZCBhIG51bWJlciBidXQgZ290IGEgInVuZGVmaW5lZCIK
KwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy90ZXN0X2RvY3VtZW50X29ubG9hZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlvbi10aW1p
bmcvdGVzdF9kb2N1bWVudF9vbmxvYWQuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3Rlc3Rf
ZG9jdW1lbnRfb25sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0OCBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorICAgICAgICA8dGl0bGU+d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gYXR0
cmlidXRlczwvdGl0bGU+CisgICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iTW96aWxs
YSIgaHJlZj0iaHR0cHM6Ly93d3cubW96aWxsYS5vcmcvIiAvPgorICAgICAgICA8bGluayByZWw9
ImhlbHAiIGhyZWY9Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9uYXZpZ2F0aW9uLXRpbWluZy0yLyNw
cm9jZXNzaW5nLW1vZGVsIi8+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL2NvbW1v
bi9wZXJmb3JtYW5jZS10aW1lbGluZS11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxoMT5EZXNjcmlwdGlvbjwvaDE+CisgICAgICAg
IDxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgdHJhbnNmZXJTaXplLCBlbmNvZGVkQm9keVNp
emUgYW5kIGRlY29kZWRCb2R5U2l6ZSBhdHRyaWJ1dGVzIGhhdmUgY29ycmVjdCB2YWx1ZXMgd2hl
biBjaGVja2VkIGluIHRoZSBvbmxvYWQgaGFuZGxlcjwvcD4KKworICAgICAgICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBhc3luY190ZXN0KGZ1
bmN0aW9uICh0KSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigi
RE9NQ29udGVudExvYWRlZCIsIHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4geworICAgICAgICAgICAg
ICAgICAgICBsZXQgZW50cnkgPSB3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgi
bmF2aWdhdGlvbiIpWzBdOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFu
KGVudHJ5LnRyYW5zZmVyU2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAg
IGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZW5jb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVzY3Ii
KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kZWNvZGVk
Qm9keVNpemUsIDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgIH0pKTsKKyAgICAgICAg
ICAgIH0sICJUZXN0IHRoYXQgdGhlIGF0dHJpYnV0ZXMgaGF2ZSBhIHByb3BlciB2YWx1ZSBkdXJp
bmcgRE9NQ29udGVudExvYWRlZCIpOworCisgICAgICAgICAgICBhc3luY190ZXN0KGZ1bmN0aW9u
ICh0KSB7CisgICAgICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCB0
LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0g
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUs
IDEwMDAsICJkZXNjciIpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFu
KGVudHJ5LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVz
Y3IiKTsKKyAgICAgICAgICAgICAgICAgICAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAg
ICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKVswXTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS50cmFuc2ZlclNpemUsIDEwMDAsICJkZXNj
ciIpOworICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5
LmVuY29kZWRCb2R5U2l6ZSwgMTAwMCwgImRlc2NyIik7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZGVjb2RlZEJvZHlTaXplLCAxMDAwLCAiZGVz
Y3IiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAgICAgICAg
ICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmlu
ZyBhIHRhc2sgYWZ0ZXIgb25sb2FkIik7CisgICAgICAgICAgICAgICAgfSkpOworICAgICAgICAg
ICAgfSwgIlRlc3QgdGhhdCB0aGUgYXR0cmlidXRlcyBoYXZlIGEgcHJvcGVyIHZhbHVlIGR1cmlu
ZyBvbmxvYWQiKTsKKworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL25hdmlnYXRp
b24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1jaGVjay1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9u
YXZpZ2F0aW9uLXRpbWluZy91bmxvYWQtZXZlbnQtc2FtZS1vcmlnaW4tY2hlY2stZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL25hdmlnYXRpb24tdGltaW5nL3VubG9hZC1ldmVudC1zYW1lLW9yaWdpbi1j
aGVjay1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTQsMTYgKzQsMTYgQEAgVGhpcyB0
ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgdwogCiAKIAotRkFJTCBSZWRpcmVjdCBj
aGFpbiB3aXRoIGEgcGFydGlhbCBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgUmVkaXJlY3QgY2hhaW4g
d2l0aCBmdWxsIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBTYW1lLWNyb3NzLXNhbWUgcmVkaXJlY3Qg
Y2hhaW4gd2l0aCBubyBUQU8gb3B0LWluIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgY3Jvc3MtY3Jvc3Mtc2FtZSBSZWRp
cmVjdCBjaGFpbiB3aXRoIG5vIFRBTyBvcHQtaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVu
dCBjcm9zcyBvcmlnaW4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnZW50cnkudHlwZScpIgotRkFJTCBQcmV2aW91cyBkb2N1bWVudCBzYW1lIG9yaWdpbiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBl
JykiCi1GQUlMIE5vIHByZXZpb3VzIGRvY3VtZW50IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ2VudHJ5LnR5cGUnKSIKLUZBSUwgU2FtZSBvcmlnaW4gcHJl
dmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5vIHBy
ZXZpb3VzIGRvY3VtZW50IHdpdGggc2FtZSBvcmlnaW4gcmVkaXJlY3QgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50cnkudHlwZScpIgotRkFJTCBObyBw
cmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiByZWRpcmVjdCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdlbnRyeS50eXBlJykiCi1GQUlMIE5v
IHByZXZpb3VzIGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlh
bCBUQU8gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnZW50
cnkudHlwZScpIgotRkFJTCBObyBwcmV2aW91cyBkb2N1bWVudCB3aXRoIGNyb3NzIG9yaWdpbiBy
ZWRpcmVjdCB3aXRoIFRBTyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICdlbnRyeS50eXBlJykiCitQQVNTIFJlZGlyZWN0IGNoYWluIHdpdGggYSBwYXJ0aWFs
IFRBTyBvcHQtaW4KK1BBU1MgUmVkaXJlY3QgY2hhaW4gd2l0aCBmdWxsIFRBTyBvcHQtaW4KK1BB
U1MgU2FtZS1jcm9zcy1zYW1lIHJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFT
UyBjcm9zcy1jcm9zcy1zYW1lIFJlZGlyZWN0IGNoYWluIHdpdGggbm8gVEFPIG9wdC1pbgorUEFT
UyBQcmV2aW91cyBkb2N1bWVudCBjcm9zcyBvcmlnaW4KK1BBU1MgUHJldmlvdXMgZG9jdW1lbnQg
c2FtZSBvcmlnaW4KK1BBU1MgTm8gcHJldmlvdXMgZG9jdW1lbnQKK1BBU1MgU2FtZSBvcmlnaW4g
cHJldmlvdXMgZG9jdW1lbnQgd2l0aCBzYW1lIG9yaWdpbiByZWRpcmVjdAorUEFTUyBObyBwcmV2
aW91cyBkb2N1bWVudCB3aXRoIHNhbWUgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3Vz
IGRvY3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0CitQQVNTIE5vIHByZXZpb3VzIGRv
Y3VtZW50IHdpdGggY3Jvc3Mgb3JpZ2luIHJlZGlyZWN0IHdpdGggcGFydGlhbCBUQU8KK1BBU1Mg
Tm8gcHJldmlvdXMgZG9jdW1lbnQgd2l0aCBjcm9zcyBvcmlnaW4gcmVkaXJlY3Qgd2l0aCBUQU8K
IApJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbmF2aWdhdGlv
bi10aW1pbmcvcmVzb3VyY2VzL3dlYnBlcmZ0ZXN0aGFybmVzcy5qcwkocmV2aXNpb24gMjc3NzQx
KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0
aW9uLXRpbWluZy9yZXNvdXJjZXMvd2VicGVyZnRlc3RoYXJuZXNzLmpzCSh3b3JraW5nIGNvcHkp
CkBAIC00MiwyNSArNDIsMjUgQEAgZnVuY3Rpb24gdGVzdF9uYW1lc3BhY2UoY2hpbGRfbmFtZSwg
c2tpcAogewogICAgIGlmIChza2lwX3Jvb3QgPT09IHVuZGVmaW5lZCkgewogICAgICAgICB2YXIg
bXNnID0gJ3dpbmRvdy5wZXJmb3JtYW5jZSBpcyBkZWZpbmVkJzsKLSAgICAgICAgd3BfdGVzdChm
dW5jdGlvbiAoKSB7IGFzc2VydF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlICE9PSB1bmRlZmlu
ZWQsIG1zZyk7IH0sIG1zZyk7CisgICAgICAgIHdwX3Rlc3QoZnVuY3Rpb24gKCkgeyBhc3NlcnRf
bm90X2VxdWFscyhwZXJmb3JtYW5jZU5hbWVzcGFjZSwgdW5kZWZpbmVkLCBtc2cpOyB9LCBtc2cp
OwogICAgIH0KIAogICAgIGlmIChjaGlsZF9uYW1lICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAg
dmFyIG1zZzIgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBjaGlsZF9uYW1lICsgJyBpcyBkZWZp
bmVkJzsKLSAgICAgICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFu
Y2VOYW1lc3BhY2VbY2hpbGRfbmFtZV0gIT09IHVuZGVmaW5lZCwgbXNnMik7IH0sIG1zZzIpOwor
ICAgICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyhwZXJmb3JtYW5j
ZU5hbWVzcGFjZVtjaGlsZF9uYW1lXSwgdW5kZWZpbmVkLCBtc2cyKTsgfSwgbXNnMik7CiAgICAg
fQogfQogCiBmdW5jdGlvbiB0ZXN0X2F0dHJpYnV0ZV9leGlzdHMocGFyZW50X25hbWUsIGF0dHJp
YnV0ZV9uYW1lLCBwcm9wZXJ0aWVzKQogewogICAgIHZhciBtc2cgPSAnd2luZG93LnBlcmZvcm1h
bmNlLicgKyBwYXJlbnRfbmFtZSArICcuJyArIGF0dHJpYnV0ZV9uYW1lICsgJyBpcyBkZWZpbmVk
Lic7Ci0gICAgd3BfdGVzdChmdW5jdGlvbigpIHsgYXNzZXJ0X3RydWUocGVyZm9ybWFuY2VOYW1l
c3BhY2VbcGFyZW50X25hbWVdW2F0dHJpYnV0ZV9uYW1lXSAhPT0gdW5kZWZpbmVkLCBtc2cpOyB9
LCBtc2csIHByb3BlcnRpZXMpOworICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2VydF9ub3Rf
ZXF1YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVthdHRyaWJ1dGVfbmFtZV0s
IHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIH0KIAogZnVuY3Rpb24gdGVz
dF9lbnVtKHBhcmVudF9uYW1lLCBlbnVtX25hbWUsIHZhbHVlLCBwcm9wZXJ0aWVzKQogewogICAg
IHZhciBtc2cgPSAnd2luZG93LnBlcmZvcm1hbmNlLicgKyBwYXJlbnRfbmFtZSArICcuJyArIGVu
dW1fbmFtZSArICcgaXMgZGVmaW5lZC4nOwotICAgIHdwX3Rlc3QoZnVuY3Rpb24oKSB7IGFzc2Vy
dF90cnVlKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdICE9PSB1
bmRlZmluZWQsIG1zZyk7IH0sIG1zZywgcHJvcGVydGllcyk7CisgICAgd3BfdGVzdChmdW5jdGlv
bigpIHsgYXNzZXJ0X25vdF9lcXVhbHMocGVyZm9ybWFuY2VOYW1lc3BhY2VbcGFyZW50X25hbWVd
W2VudW1fbmFtZV0sIHVuZGVmaW5lZCwgbXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKIAogICAg
IG1zZyA9ICd3aW5kb3cucGVyZm9ybWFuY2UuJyArIHBhcmVudF9uYW1lICsgJy4nICsgZW51bV9u
YW1lICsgJyA9ICcgKyB2YWx1ZTsKICAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfZXF1
YWxzKHBlcmZvcm1hbmNlTmFtZXNwYWNlW3BhcmVudF9uYW1lXVtlbnVtX25hbWVdLCB2YWx1ZSwg
bXNnKTsgfSwgbXNnLCBwcm9wZXJ0aWVzKTsKQEAgLTEyMiw1ICsxMjIsNSBAQCBmdW5jdGlvbiB0
ZXN0X2dyZWF0ZXJfb3JfZXF1YWxzKHZhbHVlLCBnCiAKIGZ1bmN0aW9uIHRlc3Rfbm90X2VxdWFs
cyh2YWx1ZSwgbm90ZXF1YWxzLCBtc2csIHByb3BlcnRpZXMpCiB7Ci0gICAgd3BfdGVzdChmdW5j
dGlvbigpIHsgYXNzZXJ0X3RydWUodmFsdWUgIT09IG5vdGVxdWFscywgbXNnKTsgfSwgbXNnLCBw
cm9wZXJ0aWVzKTsKKyAgICB3cF90ZXN0KGZ1bmN0aW9uKCkgeyBhc3NlcnRfbm90X2VxdWFscyh2
YWx1ZSwgbm90ZXF1YWxzLCBtc2cpOyB9LCBtc2csIHByb3BlcnRpZXMpOwogfQpJbmRleDogTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS9NRVRBLnltbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL01FVEEueW1sCShub25leGlzdGVu
dCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvTUVUQS55bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0IEBACitz
cGVjOiBodHRwczovL3czYy5naXRodWIuaW8vcGVyZm9ybWFuY2UtdGltZWxpbmUvCitzdWdnZXN0
ZWRfcmV2aWV3ZXJzOgorICAtIHBsZWhlZ2FyCisgIC0gaWdyaWdvcmlrCkluZGV4OiBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2J1ZmZlcmVkLWZsYWctYWZ0ZXItdGltZW91dC5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9idWZmZXJlZC1mbGFnLWFmdGVyLXRpbWVvdXQuYW55LmpzCShub25leGlzdGVudCkKKysrIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvYnVmZmVyZWQtZmxhZy1hZnRlci10aW1lb3V0LmFueS5qcwkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDExIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3JtYW5jZS5tYXJrKCdm
b28nKTsKKyAgdC5zdGVwX3RpbWVvdXQoKCkgPT4geworICAgIC8vIEFmdGVyIGEgdGltZW91dCwg
UGVyZm9ybWFuY2VPYnNlcnZlciBzaG91bGQgc3RpbGwgcmVjZWl2ZSBlbnRyeSBpZiB1c2luZyB0
aGUgYnVmZmVyZWQgZmxhZy4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcih0LnN0ZXBfZnVu
Y19kb25lKGxpc3QgPT4geworICAgICAgY29uc3QgZW50cmllcyA9IGxpc3QuZ2V0RW50cmllcygp
OworICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyaWVzLmxlbmd0aCwgMSwgJ1RoZXJlIHNob3VsZCBi
ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgICBhc3NlcnRfZXF1YWxzKGVudHJpZXNbMF0uZW50cnlU
eXBlLCAnbWFyaycpOworICAgIH0pKS5vYnNlcnZlKHt0eXBlOiAnbWFyaycsIGJ1ZmZlcmVkOiB0
cnVlfSk7CisgIH0sIDEwMCk7Cit9LCAnUGVyZm9ybWFuY2VPYnNlcnZlciB3aXRoIGJ1ZmZlcmVk
IGZsYWcgc2VlcyBlbnRyeSBhZnRlciB0aW1lb3V0Jyk7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL2J1ZmZlcmVk
LWZsYWctb2JzZXJ2ZXIuYW55LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvYnVmZmVyZWQtZmxh
Zy1vYnNlcnZlci5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9idWZmZXJlZC1mbGFn
LW9ic2VydmVyLmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE1IEBACithc3luY190
ZXN0KCB0PT4geworICBmb3IgKGxldCBpID0gMDsgaSA8IDUwOyBpKyspCisgICAgcGVyZm9ybWFu
Y2UubWFyaygnZm9vJyArIGkpOworICBsZXQgbWFya3NDcmVhdGVkID0gNTA7CisgIGxldCBtYXJr
c1JlY2VpdmVkID0gMDsKKyAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7CisgICAg
bWFya3NSZWNlaXZlZCArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAgaWYgKG1hcmtz
Q3JlYXRlZCA8IDEwMCkgeworICAgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyArIG1hcmtzQ3Jl
YXRlZCk7CisgICAgICBtYXJrc0NyZWF0ZWQrKzsKKyAgICB9CisgICAgaWYgKG1hcmtzUmVjZWl2
ZWQgPT0gMTAwKQorICAgICAgdC5kb25lKCk7CisgIH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywg
YnVmZmVyZWQ6IHRydWV9KTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGggYnVmZmVyZWQg
ZmxhZyBzaG91bGQgc2VlIHBhc3QgYW5kIGZ1dHVyZSBlbnRyaWVzLicpOwpJbmRleDogTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9nZXQtaW52YWxpZC1lbnRyaWVzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L2dldC1pbnZhbGlkLWVudHJpZXMtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvZ2V0LWludmFsaWQtZW50cmllcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzIEBACisKK1BBU1MgR2V0IGludmFsaWQgZW50cmllcyBmcm9tIHdvcmtlciBhbmQgd2lu
ZG93LgorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL2dldC1pbnZhbGlkLWVudHJpZXMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDI3IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3Jp
cHQ+Cithc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgcGVyZm9ybWFuY2UubWFyaygnd2luZG93
TWFyaycpOworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMvd29ya2VyLWlu
dmFsaWQtZW50cmllcy5qcyIpOworICB3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGFbJ2ludmFsaWQnXSwgMCwgJ1RoZSB3b3Jr
ZXIgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVhbHMoZXZl
bnQuZGF0YVsnbWFyayddLCAxLCAnVGhlIHdvcmtlciBtdXN0IGhhdmUgMSBtYXJrIGVudHJ5Licp
OworICAgIGFzc2VydF9lcXVhbHMoZXZlbnQuZGF0YVsnbWVhc3VyZSddLCAwLCAnVGhlIHdvcmtl
ciBtdXN0IGhhdmUgMCBtZWFzdXJlIGVudHJpZXMuJyk7CisgICAgYXNzZXJ0X2VxdWFscyhwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdpbnZhbGlkJykubGVuZ3RoLCAwLAorICAgICAgJ1Ro
ZSB3aW5kb3cgbXVzdCBoYXZlIDAgaW52YWxpZCBlbnRyaWVzLicpOworICAgIGFzc2VydF9lcXVh
bHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwgMSwKKyAgICAg
ICdUaGUgd2luZG93IG11c3QgaGF2ZSAxIG1hcmsgZW50cnkuJyk7CisgICAgYXNzZXJ0X2VxdWFs
cyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdtZWFzdXJlJykubGVuZ3RoLCAwLAorICAg
ICAgJ1RoZSB3aW5kb3cgbXVzdCBoYXZlIDAgbWVhc3VyZSBlbnRyaWVzLicpCisgICAgdC5kb25l
KCk7CisgIH0KK30sICdHZXQgaW52YWxpZCBlbnRyaWVzIGZyb20gd29ya2VyIGFuZCB3aW5kb3cu
Jyk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvaWRsaGFybmVz
cy5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9pZGxoYXJuZXNzLmFueS5qcwkobm9uZXhp
c3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL2lkbGhhcm5lc3MuYW55LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsMjUgQEAKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csd29ya2VyCisvLyBNRVRBOiBzY3Jp
cHQ9L3Jlc291cmNlcy9XZWJJRExQYXJzZXIuanMKKy8vIE1FVEE6IHNjcmlwdD0vcmVzb3VyY2Vz
L2lkbGhhcm5lc3MuanMKKworLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BlcmZvcm1hbmNlLXRp
bWVsaW5lLworCisndXNlIHN0cmljdCc7CisKK2lkbF90ZXN0KAorICBbJ3BlcmZvcm1hbmNlLXRp
bWVsaW5lJ10sCisgIFsnaHItdGltZScsICdkb20nXSwKKyAgYXN5bmMgaWRsX2FycmF5ID0+IHsK
KyAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMoeworICAgICAgUGVyZm9ybWFuY2U6IFsncGVyZm9y
bWFuY2UnXSwKKyAgICAgIFBlcmZvcm1hbmNlT2JzZXJ2ZXI6IFsnb2JzZXJ2ZXInXSwKKyAgICAg
IFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3Q6IFsnZW50cnlMaXN0J10sCisgICAgfSk7CisK
KyAgICBzZWxmLmVudHJ5TGlzdCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3Qp
ID0+IHsKKyAgICAgIHNlbGYub2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihyZXNv
bHZlKTsKKyAgICAgIG9ic2VydmVyLm9ic2VydmUoeyBlbnRyeVR5cGVzOiBbJ21hcmsnXSB9KTsK
KyAgICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3Rlc3QnKTsKKyAgICB9KTsKKyAgfQorKTsKSW5kZXg6
IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9y
bWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMuYW55LmpzCShu
b25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbXVsdGlwbGUtYnVmZmVyZWQtZmxhZy1vYnNlcnZlcnMu
YW55LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzIgQEAKK3Byb21pc2VfdGVzdCgoKSA9
PiB7CisgIC8vIFRoZSBmaXJzdCBwcm9taXNlIHdhaXRzIGZvciBvbmUgYnVmZmVyZWQgZmxhZyBv
YnNlcnZlciB0byByZWNlaXZlIDMgZW50cmllcy4KKyAgY29uc3QgcHJvbWlzZTEgPSBuZXcgUHJv
bWlzZShyZXNvbHZlMSA9PiB7CisgICAgbGV0IG51bU9ic2VydmVkMSA9IDA7CisgICAgbmV3IFBl
cmZvcm1hbmNlT2JzZXJ2ZXIoKGVudHJ5TGlzdCwgb2JzKSA9PiB7CisgICAgICAvLyBUaGlzIGJ1
ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgaXMgY29uc3RydWN0ZWQgYWZ0ZXIgYSByZWd1bGFyIG9ic2Vy
dmVyIGRldGVjdHMgYSBtYXJrLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9
PiB7CisgICAgICAgIG51bU9ic2VydmVkMSArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7Cisg
ICAgICAgIGlmIChudW1PYnNlcnZlZDEgPT0gMykKKyAgICAgICAgICByZXNvbHZlMSgpOworICAg
ICAgfSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgICAgb2Jz
LmRpc2Nvbm5lY3QoKTsKKyAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbJ21hcmsnXX0pOwor
ICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2ZvbycpOworICB9KTsKKyAgLy8gVGhlIHNlY29uZCBwcm9t
aXNlIHdhaXRzIGZvciBhbm90aGVyIGJ1ZmZlcmVkIGZsYWcgb2JzZXJ2ZXIgdG8gcmVjZWl2ZSAz
IGVudHJpZXMuCisgIGNvbnN0IHByb21pc2UyID0gbmV3IFByb21pc2UocmVzb2x2ZTIgPT4gewor
ICAgIHN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgICBsZXQgbnVtT2JzZXJ2ZWQyID0gMDsKKyAg
ICAgIC8vIFRoaXMgYnVmZmVyZWQgZmxhZyBvYnNlcnZlciBpcyBjb25zdHJ1Y3RlZCBhZnRlciBh
IGRlbGF5IG9mIDEwMG1zLgorICAgICAgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIobGlzdCA9PiB7
CisgICAgICAgIG51bU9ic2VydmVkMiArPSBsaXN0LmdldEVudHJpZXMoKS5sZW5ndGg7CisgICAg
ICAgIGlmIChudW1PYnNlcnZlZDIgPT0gMykKKyAgICAgICAgICByZXNvbHZlMigpOworICAgICAg
fSkub2JzZXJ2ZSh7dHlwZTogJ21hcmsnLCBidWZmZXJlZDogdHJ1ZX0pOworICAgIH0sIDEwMCk7
CisgICAgcGVyZm9ybWFuY2UubWFyaygnYmFyJyk7CisgIH0pOworICBwZXJmb3JtYW5jZS5tYXJr
KCdtZW93Jyk7CisgIC8vIFBhc3MgaWYgYW5kIG9ubHkgaWYgYm90aCBidWZmZXJlZCBvYnNlcnZl
cnMgcmVjZWl2ZWQgYWxsIDMgbWFyayBlbnRyaWVzLgorICByZXR1cm4gUHJvbWlzZS5hbGwoW3By
b21pc2UxLCBwcm9taXNlMl0pOworfSwgJ011bHRpcGxlIFBlcmZvcm1hbmNlT2JzZXJ2ZXJzIHdp
dGggYnVmZmVyZWQgZmxhZyBzZWUgYWxsIGVudHJpZXMnKTsKSW5kZXg6IExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNs
b25hYmxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL25vdC1jbG9uYWJsZS1l
eHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNCBAQAorCisKK1BBU1MgVGVzdCB0aGF0
IGEgcG9zdE1lc3NhZ2Ugb2YgYSBwZXJmb3JtYW5jZSBlbnRyeSBmYWlscworCkluZGV4OiBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL25vdC1jbG9uYWJsZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvbm90LWNsb25hYmxl
Lmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9ub3QtY2xvbmFibGUuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDEwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgIGNvbnN0IHQg
PSBhc3luY190ZXN0KCJUZXN0IHRoYXQgYSBwb3N0TWVzc2FnZSBvZiBhIHBlcmZvcm1hbmNlIGVu
dHJ5IGZhaWxzIik7CisgIGFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCB0LnN0ZXBfZnVuY19k
b25lKGUgPT4geworICAgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAiUEFTUyIpOworICB9KSk7Cis8
L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZW50cnkuaHRtbCI+
PC9pZnJhbWU+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwkobm9u
ZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL29ic2VydmVyLWJ1ZmZlcmVkLWZhbHNlLmFueS5qcwkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDEyIEBACithc3luY190ZXN0KHQgPT4geworICBwZXJmb3Jt
YW5jZS5tYXJrKCdmb28nKTsKKyAgLy8gVXNlIGEgdGltZW91dCB0byBlbnN1cmUgdGhlIHJlbWFp
bmRlciBvZiB0aGUgdGVzdCBydW5zIGFmdGVyIHRoZSBlbnRyeSBpcyBjcmVhdGVkLgorICB0LnN0
ZXBfdGltZW91dCgoKSA9PiB7CisgICAgLy8gT2JzZXJ2ZXIgd2l0aCBidWZmZXJlZCBmbGFnIHNl
dCB0byBmYWxzZSBzaG91bGQgbm90IHNlZSBlbnRyeS4KKyAgICBuZXcgUGVyZm9ybWFuY2VPYnNl
cnZlcigoKSA9PiB7CisgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdTaG91bGQgbm90IGhhdmUgb2Jz
ZXJ2ZWQgYW55IGVudHJ5IScpOworICAgIH0pLm9ic2VydmUoe3R5cGU6ICdtYXJrJywgYnVmZmVy
ZWQ6IGZhbHNlfSk7CisgICAgLy8gVXNlIGEgdGltZW91dCB0byBnaXZlIHRpbWUgdG8gdGhlIG9i
c2VydmVyLgorICAgIHQuc3RlcF90aW1lb3V0KHQuc3RlcF9mdW5jX2RvbmUoKCkgPT4ge30pLCAx
MDApOworICB9LCAwKTsKK30sICdQZXJmb3JtYW5jZU9ic2VydmVyIHdpdGhvdXQgYnVmZmVyZWQg
ZmxhZyBzZXQgdG8gZmFsc2UgY2Fubm90IHNlZSBwYXN0IGVudHJpZXMuJyk7CkluZGV4OiBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BlcmZvcm1hbmNlZW50cnktdG9qc29uLmFueS5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDIxIEBACit0ZXN0KCgpID0+IHsKKyAgcGVyZm9ybWFuY2UubWFyaygnbWFya05hbWUnKTsKKyAg
cGVyZm9ybWFuY2UubWVhc3VyZSgnbWVhc3VyZU5hbWUnKTsKKworICBjb25zdCBlbnRyaWVzID0g
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpOworICBjb25zdCBwZXJmb3JtYW5jZUVudHJ5S2V5cyA9
IFsKKyAgICAnbmFtZScsCisgICAgJ2VudHJ5VHlwZScsCisgICAgJ3N0YXJ0VGltZScsCisgICAg
J2R1cmF0aW9uJworICBdOworICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyAr
K2kpIHsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZihlbnRyaWVzW2ldLnRvSlNPTiksICdmdW5j
dGlvbicpOworICAgIGNvbnN0IGpzb24gPSBlbnRyaWVzW2ldLnRvSlNPTigpOworICAgIGFzc2Vy
dF9lcXVhbHModHlwZW9mKGpzb24pLCAnb2JqZWN0Jyk7CisgICAgZm9yIChjb25zdCBrZXkgb2Yg
cGVyZm9ybWFuY2VFbnRyeUtleXMpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoanNvbltrZXldLCBl
bnRyaWVzW2ldW2tleV0sCisgICAgICAgIGBlbnRyaWVzWyR7aX1dLnRvSlNPTigpLiR7a2V5fSBz
aG91bGQgbWF0Y2ggZW50cmllc1ske2l9XS4ke2tleX1gKTsKKyAgICB9CisgIH0KK30sICdUZXN0
IHRvSlNPTigpIGluIFBlcmZvcm1hbmNlRW50cnknKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tY2FsbGJh
Y2stbXV0YXRlLmFueS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWNhbGxiYWNrLW11dGF0
ZS5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1jYWxsYmFjay1tdXRhdGUuYW55
LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjYgQEAKKy8vIE1FVEE6IHNjcmlwdD1wZXJm
b3JtYW5jZW9ic2VydmVycy5qcworCisgIGFzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgICB2
YXIgY2FsbGJhY2tDb3VudCA9IDA7CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZvcm1hbmNl
T2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9icykg
eworICAgICAgICAgIGNhbGxiYWNrQ291bnQrKzsKKworICAgICAgICAgIGlmIChjYWxsYmFja0Nv
dW50ID09PSAxKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0LmdldEVudHJp
ZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFz
dXJlMSJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbIm1hcmsiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJr
KCJtYXJrMiIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJl
MiIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChj
YWxsYmFja0NvdW50ID09PSAyKSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0
LmdldEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6
ICJtYXJrMiJ9LAorICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNl
Lm1hcmsoIm1hcmstYmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLW1lYXN1cmUiKTsKKyAg
ICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdl
LW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2
ZSh7ZW50cnlUeXBlczogWyJtZWFzdXJlIl19KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFu
Y2UubWFyaygibWFyazMiKTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgi
bWVhc3VyZTMiKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICB9CisKKyAgICAgICAg
ICBpZiAoY2FsbGJhY2tDb3VudCA9PT0gMykgeworICAgICAgICAgICAgY2hlY2tFbnRyaWVzKGVu
dHJ5TGlzdC5nZXRFbnRyaWVzKCksIFsKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1lYXN1
cmUiLCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibWFyay1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUtdG8tbWVhc3VyZSJ9LAor
ICAgICAgICAgICAgXSk7CisgICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmst
YmVmb3JlLWNoYW5nZS1vYnNlcnZlLXN0YXRlLXRvLWJvdGgiKTsKKyAgICAgICAgICAgIHNlbGYu
cGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1iZWZvcmUtY2hhbmdlLW9ic2VydmUtc3RhdGUt
dG8tYm90aCIpOworICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJt
YXJrIiwgIm1lYXN1cmUiXX0pOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJt
YXJrNCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlNCIp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmIChjYWxs
YmFja0NvdW50ID09PSA0KSB7CisgICAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0Lmdl
dEVudHJpZXMoKSwgWworICAgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWVhc3VyZSIsIG5hbWU6
ICJtZWFzdXJlLWJlZm9yZS1jaGFuZ2Utb2JzZXJ2ZS1zdGF0ZS10by1ib3RoIn0sCisgICAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmU0In0sCisgICAgICAg
ICAgICAgIHtlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcms0In0sCisgICAgICAgICAgICBd
KTsKKyAgICAgICAgICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyay1iZWZvcmUtZGlzY29u
bmVjdCIpOworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWJl
Zm9yZS1kaXNjb25uZWN0Iik7CisgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7Cisg
ICAgICAgICAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmstYWZ0ZXItZGlzY29ubmVjdCIp
OworICAgICAgICAgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlLWFmdGVyLWRp
c2Nvbm5lY3QiKTsKKyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICAgIH0KKworICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBjYWxsYmFjayBt
dXN0IG5vdCBiZSBpbnZva2VkIGFmdGVyIGRpc2Nvbm5lY3RpbmciKTsKKyAgICAgICAgfSkKKyAg
ICAgICk7CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0p
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxmLnBlcmZvcm1h
bmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgIH0sICJQZXJmb3JtYW5jZU9ic2VydmVyIG1vZGlm
aWNhdGlvbnMgaW5zaWRlIGNhbGxiYWNrIHNob3VsZCB1cGRhdGUgZmlsdGVyaW5nIGFuZCBub3Qg
Y2xlYXIgYnVmZmVyIik7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QtcmVtb3Zlcy1vYnNl
cnZlZC10eXBlcy5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LXJl
bW92ZXMtb2JzZXJ2ZWQtdHlwZXMuYW55LmpzCShub25leGlzdGVudCkKKysrIExheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8t
ZGlzY29ubmVjdC1yZW1vdmVzLW9ic2VydmVkLXR5cGVzLmFueS5qcwkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDE5IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFuY2VvYnNlcnZlcnMuanMK
KworYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICBjb25zdCBvYnNlcnZlciAgPSBuZXcgUGVy
Zm9ybWFuY2VPYnNlcnZlcigKKyAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qp
IHsKKyAgICAgICAgLy8gVGhlcmUgc2hvdWxkIGJlIG5vIG1hcmsgZW50cnkuCisgICAgICAgIGNo
ZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmllcygpLAorICAgICAgICAgIFt7IGVudHJ5VHlw
ZTogIm1lYXN1cmUiLCBuYW1lOiAiYiJ9XSk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAgfSkK
KyAgICApOworICBvYnNlcnZlci5vYnNlcnZlKHt0eXBlOiAibWFyayJ9KTsKKyAgLy8gRGlzY29u
bmVjdCB0aGUgb2JzZXJ2ZXIuCisgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgLy8gTm93LCBv
bmx5IG9ic2VydmUgbWVhc3VyZS4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1lYXN1cmUi
fSk7CisgIHBlcmZvcm1hbmNlLm1hcmsoImEiKTsKKyAgcGVyZm9ybWFuY2UubWVhc3VyZSgiYiIp
OworfSwgIlR5cGVzIG9ic2VydmVkIGFyZSBmb3Jnb3R0ZW4gd2hlbiBkaXNjb25uZWN0KCkgaXMg
Y2FsbGVkLiIpOwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1kaXNjb25uZWN0LmFueS5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLWRpc2Nvbm5lY3QuYW55LmpzCShub25leGlzdGVudCkKKysrIExheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxp
bmUvcG8tZGlzY29ubmVjdC5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzNyBAQAor
Ly8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVy
KAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlvbiAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAg
ICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNhbGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQi
KTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBl
czogWyJtYXJrIiwgIm1lYXN1cmUiLCAibmF2aWdhdGlvbiJdfSk7CisgICAgb2JzZXJ2ZXIuZGlz
Y29ubmVjdCgpOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgICBzZWxm
LnBlcmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUxIik7CisgICAgdC5zdGVwX3RpbWVvdXQoZnVu
Y3Rpb24gKCkgeworICAgICAgdC5kb25lKCk7CisgICAgfSwgMjAwMCk7CisgIH0sICJkaXNjb25u
ZWN0ZWQgY2FsbGJhY2tzIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKworICB0ZXN0KGZ1bmN0aW9u
ICgpIHsKKyAgICB2YXIgb2JzID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKCkg
eyByZXR1cm4gdHJ1ZTsgfSk7CisgICAgb2JzLmRpc2Nvbm5lY3QoKTsKKyAgICBvYnMuZGlzY29u
bmVjdCgpOworICB9LCAiZGlzY29ubmVjdGluZyBhbiB1bmNvbm5lY3RlZCBvYnNlcnZlciBpcyBh
IG5vLW9wIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAodCkgeworICAgIHZhciBvYnNlcnZl
ciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKAorICAgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlv
biAoZW50cnlMaXN0LCBvYnMpIHsKKyAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCJUaGlzIGNh
bGxiYWNrIG11c3Qgbm90IGJlIGludm9rZWQiKTsKKyAgICAgICAgfSkKKyAgICAgICk7CisgICAg
b2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZv
cm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgIHNl
bGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICB0LnN0ZXBfdGltZW91dChmdW5jdGlv
biAoKSB7CisgICAgICB0LmRvbmUoKTsKKyAgICB9LCAyMDAwKTsKKyAgfSwgIkFuIG9ic2VydmVy
IGRpc2Nvbm5lY3RlZCBhZnRlciBhIG1hcmsgbXVzdCBub3QgaGF2ZSBpdHMgY2FsbGJhY2sgaW52
b2tlZCIpOwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1lbnRyaWVzLXNvcnQuYW55LmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFu
Y2UtdGltZWxpbmUvcG8tZW50cmllcy1zb3J0LmFueS5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVs
aW5lL3BvLWVudHJpZXMtc29ydC5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw2NCBA
QAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVz
dChmdW5jdGlvbiAodCkgeworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBz
dG9yZWRfZW50cmllc19ieV90eXBlID0gW107CisgICAgdmFyIG9ic2VydmVyID0gbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChlbnRyeUxpc3Qs
IG9icykgeworCisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPSBlbnRyeUxpc3QuZ2V0RW50cmll
cygpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUgPSBlbnRyeUxpc3QuZ2V0RW50
cmllc0J5VHlwZSgibWFyayIpOworICAgICAgICAgIHN0b3JlZF9lbnRyaWVzX2J5X25hbWUgPSBl
bnRyeUxpc3QuZ2V0RW50cmllc0J5TmFtZSgibmFtZS1yZXBlYXQiKTsKKyAgICAgICAgICB2YXIg
c3RhcnRUaW1lT2ZNYXJrMiA9IGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJtYXJrMiIpWzBd
LnN0YXJ0VGltZTsKKworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzKTsKKyAg
ICAgICAgICBjaGVja0VudHJpZXMoc3RvcmVkX2VudHJpZXMsIFsKKyAgICAgICAgICAgIHtlbnRy
eVR5cGU6ICJtZWFzdXJlIiwgbmFtZTogIm1lYXN1cmUxIn0sCisgICAgICAgICAgICB7ZW50cnlU
eXBlOiAibWVhc3VyZSIsIG5hbWU6ICJtZWFzdXJlMiJ9LAorICAgICAgICAgICAge2VudHJ5VHlw
ZTogIm1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZTMifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6
ICJtZWFzdXJlIiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsi
LCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJlIiwgbmFt
ZTogIm1lYXN1cmUtbWF0Y2hpbmctbWFyazItMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTog
Im1lYXN1cmUiLCBuYW1lOiAibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIn0sCisgICAgICAgICAg
ICB7ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgICAg
e2VudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBdKTsK
KworICAgICAgICAgIGNoZWNrU29ydGVkKHN0b3JlZF9lbnRyaWVzX2J5X3R5cGUpOworICAgICAg
ICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllc19ieV90eXBlLCBbCisgICAgICAgICAgICB7
ZW50cnlUeXBlOiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9LAorICAgICAgICAgICAge2VudHJ5VHlw
ZTogIm1hcmsiLCBuYW1lOiAibWFyazIifSwKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtYXJr
IiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIs
IG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgIF0pOworCisgICAgICAgICAgY2hlY2tT
b3J0ZWQoc3RvcmVkX2VudHJpZXNfYnlfbmFtZSk7CisgICAgICAgICAgY2hlY2tFbnRyaWVzKHN0
b3JlZF9lbnRyaWVzX2J5X25hbWUsIFsKKyAgICAgICAgICAgIHtlbnRyeVR5cGU6ICJtZWFzdXJl
IiwgbmFtZTogIm5hbWUtcmVwZWF0In0sCisgICAgICAgICAgICB7ZW50cnlUeXBlOiAibWFyayIs
IG5hbWU6ICJuYW1lLXJlcGVhdCJ9LAorICAgICAgICAgICAge2VudHJ5VHlwZTogIm1hcmsiLCBu
YW1lOiAibmFtZS1yZXBlYXQifSwKKyAgICAgICAgICBdKTsKKworICAgICAgICAgIG9ic2VydmVy
LmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgfSkKKyAgICAgICk7
CisKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1hcmsiLCAibWVhc3VyZSJd
fSk7CisKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJm
b3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMSIpOworICAgIHdhaXQoKTsgLy8gRW5zdXJlIG1hcmsx
ICE9PSBtYXJrMiBzdGFydFRpbWUgYnkgbWFraW5nIHN1cmUgcGVyZm9ybWFuY2Uubm93IGFkdmFu
Y2VzLgorICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazIiKTsKKyAgICBzZWxmLnBlcmZv
cm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJl
KCJtZWFzdXJlLW1hdGNoaW5nLW1hcmsyLTEiLCAibWFyazIiKTsKKyAgICB3YWl0KCk7IC8vIEVu
c3VyZSBtYXJrMiAhPT0gbWFyazMgc3RhcnRUaW1lIGJ5IG1ha2luZyBzdXJlIHBlcmZvcm1hbmNl
Lm5vdyBhZHZhbmNlcy4KKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1hcmsoIm5hbWUtcmVwZWF0Iik7
CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlMyIpOworICAgIHNlbGYucGVy
Zm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZS1tYXRjaGluZy1tYXJrMi0yIiwgIm1hcmsyIik7Cisg
ICAgd2FpdCgpOyAvLyBFbnN1cmUgbmFtZS1yZXBlYXQgc3RhcnRUaW1lIHdpbGwgZGlmZmVyLgor
ICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibmFtZS1yZXBlYXQiKTsKKyAgICB3YWl0KCk7IC8v
IEVuc3VyZSBuYW1lLXJlcGVhdCBzdGFydFRpbWUgd2lsbCBkaWZmZXIuCisgICAgc2VsZi5wZXJm
b3JtYW5jZS5tZWFzdXJlKCJuYW1lLXJlcGVhdCIpOworICB9LCAiZ2V0RW50cmllcywgZ2V0RW50
cmllc0J5VHlwZSwgZ2V0RW50cmllc0J5TmFtZSBzb3J0IG9yZGVyIik7CkluZGV4OiBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLWdldGVudHJpZXMuYW55LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tZ2V0ZW50cmll
cy5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1nZXRlbnRyaWVzLmFueS5qcwko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM4IEBACisvLyBNRVRBOiBzY3JpcHQ9cGVyZm9ybWFu
Y2VvYnNlcnZlcnMuanMKKworICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAgdmFyIG9i
c2VydmVyID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1
bmN0aW9uIChlbnRyeUxpc3QsIG9icykgeworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxp
c3QuZ2V0RW50cmllcygpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWFyayIsIG5hbWU6
ICJtYXJrMSJ9XSwgImdldEVudHJpZXMiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRy
eUxpc3QuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeVR5cGUiKTsKKyAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlUeXBlKCJtZWFzdXJlIikubGVu
Z3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRoIG5vIGV4cGVjdGVkIGVu
dHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QuZ2V0RW50cmllc0J5VHlw
ZSgiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAgICAiZ2V0RW50cmllc0J5VHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisKKyAgICAgICAgICBjaGVja0VudHJpZXMoZW50cnlMaXN0
LmdldEVudHJpZXNCeU5hbWUoIm1hcmsxIiksCisgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn1dLCAiZ2V0RW50cmllc0J5TmFtZSIpOworICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIikubGVuZ3RoLCAw
LAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIp
OworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIjIz
NDU2NyIpLmxlbmd0aCwgMCwKKyAgICAgICAgICAgICJnZXRFbnRyaWVzQnlOYW1lIHdpdGggbm8g
ZXhwZWN0ZWQgZW50cnkiKTsKKworICAgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0
RW50cmllc0J5TmFtZSgibWFyazEiLCAibWFyayIpLAorICAgICAgICAgICAgW3sgZW50cnlUeXBl
OiAibWFyayIsIG5hbWU6ICJtYXJrMSJ9XSwgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUi
KTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5nZXRFbnRyaWVzQnlOYW1lKCJt
YXJrMSIsICJtZWFzdXJlIikubGVuZ3RoLCAwLAorICAgICAgICAgICAgImdldEVudHJpZXNCeU5h
bWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIpOworICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZW50cnlMaXN0LmdldEVudHJpZXNCeU5hbWUoIm1hcmsyIiwgIm1lYXN1cmUiKS5s
ZW5ndGgsIDAsCisgICAgICAgICAgICAiZ2V0RW50cmllc0J5TmFtZSB3aXRoIGEgdHlwZSB3aXRo
IG5vIGV4cGVjdGVkIGVudHJ5Iik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3Qu
Z2V0RW50cmllc0J5TmFtZSgibWFyazEiLCAiMjM0NTY3IikubGVuZ3RoLCAwLAorICAgICAgICAg
ICAgImdldEVudHJpZXNCeU5hbWUgd2l0aCBhIHR5cGUgd2l0aCBubyBleHBlY3RlZCBlbnRyeSIp
OworCisgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgIHQuZG9uZSgp
OworICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVz
OiBbIm1hcmsiXX0pOworICAgIHNlbGYucGVyZm9ybWFuY2UubWFyaygibWFyazEiKTsKKyAgfSwg
ImdldEVudHJpZXMsIGdldEVudHJpZXNCeVR5cGUgYW5kIGdldEVudHJpZXNCeU5hbWUgd29yayIp
OwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9wby1tYXJrLW1lYXN1cmUuYW55LmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGlt
ZWxpbmUvcG8tbWFyay1tZWFzdXJlLmFueS5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Bv
LW1hcmstbWVhc3VyZS5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw2MSBAQAorLy8g
TUVUQTogc2NyaXB0PXBlcmZvcm1hbmNlb2JzZXJ2ZXJzLmpzCisKKyAgYXN5bmNfdGVzdChmdW5j
dGlvbiAodCkgeworICAgIHZhciBzdG9yZWRfZW50cmllcyA9IFtdOworICAgIHZhciBvYnNlcnZl
ciAgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rp
b24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2VudHJpZXMgPQorICAgICAg
ICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAg
ICAgICAgIGlmIChzdG9yZWRfZW50cmllcy5sZW5ndGggPj0gNCkgeworICAgICAgICAgICAgY2hl
Y2tFbnRyaWVzKHN0b3JlZF9lbnRyaWVzLAorICAgICAgICAgICAgICBbeyBlbnRyeVR5cGU6ICJt
YXJrIiwgbmFtZTogIm1hcmsxIn0sCisgICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAibWFyayIs
IG5hbWU6ICJtYXJrMiJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1lYXN1cmUiLCBu
YW1lOiAibWVhc3VyZTEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtZWFzdXJlIiwg
bmFtZTogIm1lYXN1cmUyIn1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsK
KyAgICAgICAgICAgIHQuZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7
CisgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIiwgIm1lYXN1cmUiXX0p
OworICB9LCAiZW50cmllcyBhcmUgb2JzZXJ2YWJsZSIpOworCisgIGFzeW5jX3Rlc3QoZnVuY3Rp
b24gKHQpIHsKKyAgICB2YXIgbWFya19lbnRyaWVzID0gW107CisgICAgdmFyIG9ic2VydmVyID0g
bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICAgIHQuc3RlcF9mdW5jKGZ1bmN0aW9uIChl
bnRyeUxpc3QsIG9icykgeworICAgICAgICAgIG1hcmtfZW50cmllcyA9CisgICAgICAgICAgICBt
YXJrX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkpOworICAgICAgICAgIGlm
IChtYXJrX2VudHJpZXMubGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyht
YXJrX2VudHJpZXMsCisgICAgICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAi
bWFyazEifSwKKyAgICAgICAgICAgICAgeyBlbnRyeVR5cGU6ICJtYXJrIiwgbmFtZTogIm1hcmsy
In1dKTsKKyAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgICAgIHQu
ZG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSkKKyAgICAgICk7CisgICAgb2JzZXJ2ZXIu
b2JzZXJ2ZSh7ZW50cnlUeXBlczogWyJtYXJrIl19KTsKKyAgICBzZWxmLnBlcmZvcm1hbmNlLm1h
cmsoIm1hcmsxIik7CisgICAgc2VsZi5wZXJmb3JtYW5jZS5tYXJrKCJtYXJrMiIpOworICB9LCAi
bWFyayBlbnRyaWVzIGFyZSBvYnNlcnZhYmxlIik7CisKKyAgYXN5bmNfdGVzdChmdW5jdGlvbiAo
dCkgeworICAgIHZhciBtZWFzdXJlX2VudHJpZXMgPSBbXTsKKyAgICB2YXIgb2JzZXJ2ZXIgPSBu
ZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5zdGVwX2Z1bmMoZnVuY3Rpb24gKGVu
dHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgbWVhc3VyZV9lbnRyaWVzID0KKyAgICAgICAgICAg
IG1lYXN1cmVfZW50cmllcy5jb25jYXQoZW50cnlMaXN0LmdldEVudHJpZXMoKSk7CisgICAgICAg
ICAgaWYgKG1lYXN1cmVfZW50cmllcy5sZW5ndGggPj0gMikgeworICAgICAgICAgICAgY2hlY2tF
bnRyaWVzKG1lYXN1cmVfZW50cmllcywKKyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAibWVh
c3VyZSIsIG5hbWU6ICJtZWFzdXJlMSJ9LAorICAgICAgICAgICAgICB7IGVudHJ5VHlwZTogIm1l
YXN1cmUiLCBuYW1lOiAibWVhc3VyZTIifV0pOworICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29u
bmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9KQor
ICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiBbIm1lYXN1cmUiXX0p
OworICAgIHNlbGYucGVyZm9ybWFuY2UubWVhc3VyZSgibWVhc3VyZTEiKTsKKyAgICBzZWxmLnBl
cmZvcm1hbmNlLm1lYXN1cmUoIm1lYXN1cmUyIik7CisgIH0sICJtZWFzdXJlIGVudHJpZXMgYXJl
IG9ic2VydmFibGUiKTsKSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
ZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQp
CisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsNyBAQAorUGVyZm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0
LmJ1ZmZlcmVkCisKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRy
aWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVudHJpZXMKKworCitQQVNTIFBlcmZvcm1hbmNlT2Jz
ZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5IGJ1ZmZlcmVkIGVu
dHJpZXMKKwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1vYnNlcnZlLXJlcGVhdGVkLXR5cGUuYW55LmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tb2JzZXJ2ZS1yZXBlYXRlZC10eXBlLmFueS5qcwkobm9u
ZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUtcmVwZWF0ZWQtdHlwZS5hbnkuanMJKHdv
cmtpbmcgY29weSkKQEAgLTAsMCArMSwxNyBAQAorLy8gTUVUQTogc2NyaXB0PXBlcmZvcm1hbmNl
b2JzZXJ2ZXJzLmpzCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24gKHQpIHsKKyAgY29uc3Qgb2JzZXJ2
ZXIgID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoCisgICAgICB0LnN0ZXBfZnVuYyhmdW5jdGlv
biAoZW50cnlMaXN0KSB7CisgICAgICAgIGNoZWNrRW50cmllcyhlbnRyeUxpc3QuZ2V0RW50cmll
cygpLAorICAgICAgICAgIFt7IGVudHJ5VHlwZTogIm1hcmsiLCBuYW1lOiAiZWFybHkifV0pOwor
ICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7CisgICAgICAgIHQuZG9uZSgpOworICAgICAg
fSkKKyAgICApOworICBwZXJmb3JtYW5jZS5tYXJrKCJlYXJseSIpOworICAvLyBUaGlzIGNhbGwg
d2lsbCBub3QgdHJpZ2dlciBhbnl0aGluZy4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1h
cmsifSk7CisgIC8vIFRoaXMgY2FsbCBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIGNhbGwg
YW5kIGRldGVjdCB0aGUgZWFybHkgbWFyay4KKyAgb2JzZXJ2ZXIub2JzZXJ2ZSh7dHlwZTogIm1h
cmsiLCBidWZmZXJlZDogdHJ1ZX0pOworfSwgIlR3byBjYWxscyBvZiBvYnNlcnZlKCkgd2l0aCB0
aGUgc2FtZSAndHlwZScgY2F1c2Ugb3ZlcnJpZGUuIik7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2Vy
dmUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbAkobm9uZXhpc3Rl
bnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZv
cm1hbmNlLXRpbWVsaW5lL3BvLW9ic2VydmUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDg2IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+UGVy
Zm9ybWFuY2VPYnNlcnZlcnM6IFBlcmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkPC90aXRs
ZT4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgorPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InBlcmZvcm1h
bmNlb2JzZXJ2ZXJzLmpzIj48L3NjcmlwdD4KKzxoMT5QZXJmb3JtYW5jZU9ic2VydmVyczogUGVy
Zm9ybWFuY2VPYnNlcnZlckluaXQuYnVmZmVyZWQ8L2gxPgorPHA+CitQZXJmb3JtYW5jZU9ic2Vy
dmVySW5pdC5idWZmZXJlZCBzaG91bGQgcmV0cmlldmUgcHJldmlvdXNseSBidWZmZXJlZCBlbnRy
aWVzCis8L3A+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlwdD4KKyAgYXN5bmNfdGVzdChm
dW5jdGlvbiAodCkgeworICAgIGZ1bmN0aW9uIGluaXRUZXN0KCkgeworICAgICAgbmV3IFBlcmZv
cm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2ZXIpIHsKKyAgICAgICAg
ZW50cnlMaXN0LmdldEVudHJpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KSB7CisgICAgICAg
ICAgaWYgKHNob3VsZEV4Y2x1ZGUoZW50cnkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgICAgfQorCisgICAgICAgICAgb2JzZXJ2ZWRFbnRyaWVzLnB1c2goZW50cnkpOworICAgICAg
ICAgIGlmIChvYnNlcnZlZEVudHJpZXMubGVuZ3RoID09PSBlbnRyeVR5cGVzLmxlbmd0aCkgewor
ICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcnVuVGVzdCgp
OworICAgICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9KS5vYnNlcnZlKHtlbnRyeVR5cGVz
fSk7CisKKyAgICAgIC8vIGNyZWF0ZXMgYSBgcmVzb3VyY2VgIGVudHJ5CisgICAgICB2YXIgaW1n
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgICBpbWcuc3JjID0gIi4vcmVz
b3VyY2VzL3NxdWFyZS5wbmciOworICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcp
OworCisgICAgICBwZXJmb3JtYW5jZS5tYXJrKCJtYXJrTmFtZSIpOyAvLyBjcmVhdGVzIGEgYG1h
cmtgIGVudHJ5CisgICAgICBwZXJmb3JtYW5jZS5tZWFzdXJlKCJtZWFzdXJlTmFtZSIpOyAvLyBj
cmVhdGVzIGEgYG1lYXN1cmVgIGVudHJ5CisgICAgfQorICAgIGZ1bmN0aW9uIHNob3VsZEV4Y2x1
ZGUoZW50cnkpIHsKKyAgICAgIC8vIGV4Y2x1ZGUgYWxsIGByZXNvdXJjZWAgZW50cmllcyB0aGF0
IGFyZW4ndCBmb3IgInNxdWFyZS5wbmciCisgICAgICByZXR1cm4gZW50cnkuZW50cnlUeXBlID09
PSAicmVzb3VyY2UiICYmCisgICAgICAgICAgICAgZW50cnkubmFtZS5pbmRleE9mKCJzcXVhcmUu
cG5nIikgPT09IC0xOworICAgIH0KKyAgICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgLy8g
dGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIGlzIGEgbm9wIGJlY2F1c2Ugd2UndmUgYWxyZWFkeSBi
ZWVuIG5vdGlmaWVkIGFib3V0IGFsbCBvZiBvdXIgYGVudHJ5VHlwZXNgCisgICAgICB2YXIgcG9f
bm9wID0gbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzZXJ2
ZXIpIHsKKyAgICAgICAgaWYgKGVudHJ5TGlzdC5nZXRFbnRyaWVzKCkuZmluZChmdW5jdGlvbihl
bnRyeSkgeworICAgICAgICAgIHJldHVybiAhc2hvdWxkRXhjbHVkZShlbnRyeSk7CisgICAgICAg
IH0pKSB7CisgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgidGhpcyBQZXJmb3JtYW5jZU9ic2Vy
dmVyIGNhbGxiYWNrIHNob3VsZCBuZXZlciBiZSBjYWxsZWQiKTsKKyAgICAgICAgfQorICAgICAg
fSk7CisgICAgICBwb19ub3Aub2JzZXJ2ZSh7CisgICAgICAgIGVudHJ5VHlwZXMsCisgICAgICB9
KTsKKworICAgICAgLy8gdGhpcyBQZXJmb3JtYW5jZU9ic2VydmVyIHNob3VsZCBiZSBub3RpZmll
ZCBhYm91dCB0aGUgcHJldmlvdXNseQorICAgICAgLy8gYnVmZmVyZWQgbWFyayBlbnRyeSBvbmx5
CisgICAgICBjb25zdCBidWZmZXJlZEVudHJpZXMgPSBbXTsKKyAgICAgIG5ldyBQZXJmb3JtYW5j
ZU9ic2VydmVyKGZ1bmN0aW9uIChlbnRyeUxpc3QsIG9ic2VydmVyKSB7CisgICAgICAgIGVudHJ5
TGlzdC5nZXRFbnRyaWVzKCkuZm9yRWFjaChmdW5jdGlvbihlbnRyeSkgeworICAgICAgICAgIGlm
IChzaG91bGRFeGNsdWRlKGVudHJ5KSkgeworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
IH0KKworICAgICAgICAgIGJ1ZmZlcmVkRW50cmllcy5wdXNoKGVudHJ5KTsKKyAgICAgICAgICBp
ZiAoYnVmZmVyZWRFbnRyaWVzLmxlbmd0aCA9PT0gMSkgeworICAgICAgICAgICAgb2JzZXJ2ZXIu
ZGlzY29ubmVjdCgpOworICAgICAgICAgICAgcG9fbm9wLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAg
ICAgIGZvciAoaSA9IDA7IGkgPCBidWZmZXJlZEVudHJpZXMubGVuZ3RoOyBpKyspIHsKKyAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhidWZmZXJlZEVudHJpZXNbaV0uZW50cnlUeXBlLCAibWFy
ayIpCisgICAgICAgICAgICB9CisgICAgICAgICAgICB0LmRvbmUoKTsKKyAgICAgICAgICB9Cisg
ICAgICAgIH0pOworICAgICAgfSkub2JzZXJ2ZSh7CisgICAgICAgIHR5cGU6ICJtYXJrIiwKKyAg
ICAgICAgYnVmZmVyZWQ6IHRydWUKKyAgICAgIH0pOworICAgIH0KKworICAgIGNvbnN0IGVudHJ5
VHlwZXMgPSBbIm5hdmlnYXRpb24iLCAicmVzb3VyY2UiLCAibWFyayIsICJtZWFzdXJlIl07Cisg
ICAgY29uc3Qgb2JzZXJ2ZWRFbnRyaWVzID0gW107CisgICAgaW5pdFRlc3QoKTsKKyAgfSwgIlBl
cmZvcm1hbmNlT2JzZXJ2ZXJJbml0LmJ1ZmZlcmVkIHNob3VsZCByZXRyaWV2ZSBwcmV2aW91c2x5
IGJ1ZmZlcmVkIGVudHJpZXMiKTsKKworPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291
cmNlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVj
dGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3BvLXJlc291cmNlLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKK1BlcmZvcm1hbmNlT2JzZXJ2ZXJzOiBy
ZXNvdXJjZQorCitOZXcgcmVzb3VyY2VzIHdpbGwgcXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5Lgor
CisKK1BBU1MgcmVzb3VyY2UgZW50cmllcyBhcmUgb2JzZXJ2YWJsZQorCkluZGV4OiBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3BvLXJlc291cmNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby1yZXNvdXJjZS5odG1s
CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcG8tcmVzb3VyY2UuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+
Cis8dGl0bGU+UGVyZm9ybWFuY2VPYnNlcnZlcnM6IHJlc291cmNlPC90aXRsZT4KKzxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJw
ZXJmb3JtYW5jZW9ic2VydmVycy5qcyI+PC9zY3JpcHQ+Cis8aDE+UGVyZm9ybWFuY2VPYnNlcnZl
cnM6IHJlc291cmNlPC9oMT4KKzxwPgorTmV3IHJlc291cmNlcyB3aWxsIDxhIGhyZWY9Imh0dHBz
Oi8vdzNjLmdpdGh1Yi5pby9wZXJmb3JtYW5jZS10aW1lbGluZS8jZGZuLXF1ZXVlLWEtcGVyZm9y
bWFuY2VlbnRyeSI+cXVldWUgYSBQZXJmb3JtYW5jZUVudHJ5PC9hPi4KKzwvcD4KKzxkaXYgaWQ9
ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorICBhc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAg
ZnVuY3Rpb24gcGF0aChwYXRobmFtZSkgeworICAgICAgdmFyIGZpbGVuYW1lID0gcGF0aG5hbWUu
c3Vic3RyaW5nKHBhdGhuYW1lLmxhc3RJbmRleE9mKCcvJykrMSk7CisgICAgICByZXR1cm4gcGF0
aG5hbWUuc3Vic3RyaW5nKDAsIHBhdGhuYW1lLmxlbmd0aCAtIGZpbGVuYW1lLmxlbmd0aCk7Cisg
ICAgfQorICAgIHZhciBnVW5pcXVlQ291bnRlciA9IDA7CisgICAgZnVuY3Rpb24gZ2VuZXJhdGVV
bmlxdWVWYWx1ZXMoKSB7CisgICAgICByZXR1cm4gRGF0ZS5ub3coKSArICItIiArICgrK2dVbmlx
dWVDb3VudGVyKTsKKyAgICB9CisgICAgdmFyIHN0b3JlZF9lbnRyaWVzID0gW107CisgICAgdmFy
IGltZ19sb2NhdGlvbiA9IGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbiArIHBhdGgoZG9jdW1lbnQu
bG9jYXRpb24ucGF0aG5hbWUpCisgICAgICAgKyAicmVzb3VyY2VzL3NxdWFyZS5wbmc/cmFuZG9t
PSI7CisgICAgdmFyIGltZzEgPSBpbWdfbG9jYXRpb24gKyBnZW5lcmF0ZVVuaXF1ZVZhbHVlcygp
OworICAgIHZhciBpbWcyID0gaW1nX2xvY2F0aW9uICsgZ2VuZXJhdGVVbmlxdWVWYWx1ZXMoKTsK
KyAgICB2YXIgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigKKyAgICAgICAgdC5z
dGVwX2Z1bmMoZnVuY3Rpb24gKGVudHJ5TGlzdCwgb2JzKSB7CisgICAgICAgICAgc3RvcmVkX2Vu
dHJpZXMgPQorICAgICAgICAgICAgc3RvcmVkX2VudHJpZXMuY29uY2F0KGVudHJ5TGlzdC5nZXRF
bnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpKTsKKyAgICAgICAgICBpZiAoc3RvcmVkX2VudHJpZXMu
bGVuZ3RoID49IDIpIHsKKyAgICAgICAgICAgIGNoZWNrRW50cmllcyhzdG9yZWRfZW50cmllcywK
KyAgICAgICAgICAgICAgW3sgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcxfSwKKyAg
ICAgICAgICAgICAgIHsgZW50cnlUeXBlOiAicmVzb3VyY2UiLCBuYW1lOiBpbWcyfV0pOworICAg
ICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgdC5kb25lKCk7Cisg
ICAgICAgICAgfQorICAgICAgICB9KQorICAgICAgKTsKKyAgICBvYnNlcnZlci5vYnNlcnZlKHtl
bnRyeVR5cGVzOiBbInJlc291cmNlIl19KTsKKyAgICB2YXIgaW1nID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiaW1nIik7CisgICAgaW1nLnNyYyA9IGltZzE7CisgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChpbWcpOworICAgIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIp
OworICAgIGltZy5zcmMgPSBpbWcyOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1n
KTsKKyAgfSwgInJlc291cmNlIGVudHJpZXMgYXJlIG9ic2VydmFibGUiKTsKKzwvc2NyaXB0PgpJ
bmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3Jt
YW5jZS10aW1lbGluZS9wby10YWtlUmVjb3Jkcy5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGlu
ZS9wby10YWtlUmVjb3Jkcy5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9wby10YWtl
UmVjb3Jkcy5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzNCBAQAorLy8gTUVUQTog
dGl0bGU9UGVyZm9ybWFuY2VPYnNlcnZlcjogdGFrZVJlY29yZHMKKy8vIE1FVEE6IHNjcmlwdD1w
ZXJmb3JtYW5jZW9ic2VydmVycy5qcworCithc3luY190ZXN0KGZ1bmN0aW9uICh0KSB7CisgICAg
Y29uc3Qgb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VPYnNlcnZlcihmdW5jdGlvbiAoZW50cnlM
aXN0LCBvYnNlcnZlcikgeworICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVGhpcyBjYWxsYmFjayBz
aG91bGQgbm90IGhhdmUgYmVlbiBjYWxsZWQuJykKKyAgICB9KTsKKyAgICBsZXQgZW50cmllcyA9
IG9ic2VydmVyLnRha2VSZWNvcmRzKCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFtdLCAn
Tm8gcmVjb3JkcyBiZWZvcmUgb2JzZXJ2ZScpOworICAgIG9ic2VydmVyLm9ic2VydmUoe2VudHJ5
VHlwZXM6IFsnbWFyayddfSk7CisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2Yob2JzZXJ2ZXIudGFr
ZVJlY29yZHMpLCAnZnVuY3Rpb24nKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29y
ZHMoKTsKKyAgICBjaGVja0VudHJpZXMoZW50cmllcywgW10sICdObyByZWNvcmRzIGp1c3QgZnJv
bSBvYnNlcnZlJyk7CisgICAgcGVyZm9ybWFuY2UubWFyaygnYScpOworICAgIHBlcmZvcm1hbmNl
Lm1hcmsoJ2InKTsKKyAgICBlbnRyaWVzID0gb2JzZXJ2ZXIudGFrZVJlY29yZHMoKTsKKyAgICBj
aGVja0VudHJpZXMoZW50cmllcywgWworICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAn
YSd9LAorICAgICAge2VudHJ5VHlwZTogJ21hcmsnLCBuYW1lOiAnYid9CisgICAgXSk7CisgICAg
cGVyZm9ybWFuY2UubWFyaygnYycpOworICAgIHBlcmZvcm1hbmNlLm1hcmsoJ2QnKTsKKyAgICBw
ZXJmb3JtYW5jZS5tYXJrKCdlJyk7CisgICAgZW50cmllcyA9IG9ic2VydmVyLnRha2VSZWNvcmRz
KCk7CisgICAgY2hlY2tFbnRyaWVzKGVudHJpZXMsIFsKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJr
JywgbmFtZTogJ2MnfSwKKyAgICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2QnfSwKKyAg
ICAgIHtlbnRyeVR5cGU6ICdtYXJrJywgbmFtZTogJ2UnfQorICAgIF0pOworICAgIGVudHJpZXMg
PSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworICAgIGNoZWNrRW50cmllcyhlbnRyaWVzLCBbXSwg
J05vIGVudHJpZXMgcmlnaHQgYWZ0ZXIgdGFrZVJlY29yZHMnKTsKKyAgICBvYnNlcnZlci5kaXNj
b25uZWN0KCk7CisgICAgdC5kb25lKCk7CisgIH0sICJUZXN0IFBlcmZvcm1hbmNlT2JzZXJ2ZXIn
cyB0YWtlUmVjb3JkcygpIik7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3N1cHBvcnRlZEVudHJ5VHlwZXMu
YW55LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRF
bnRyeVR5cGVzLmFueS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw0IEBA
CiAKIFBBU1Mgc3VwcG9ydGVkRW50cnlUeXBlcyBleGlzdHMgYW5kIHJldHVybnMgZW50cmllcyBp
biBhbHBoYWJldGljYWwgb3JkZXIKK0ZBSUwgc3VwcG9ydGVkRW50cnlUeXBlcyBjYWNoZXMgcmVz
dWx0IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCkluZGV4OiBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3N1cHBvcnRlZEVudHJ5VHlwZXMuYW55LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnkuanMJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9y
dGVkRW50cnlUeXBlcy5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTEwLDMgKzEwLDEwIEBAIHRl
c3QoKCkgPT4gewogICAgICAgIicgYXJlIHJlcGVhdGVkIG9yIHRoZXkgYXJlIG5vdCBpbiBhbHBo
YWJldGljYWwgb3JkZXIuIikKICAgfQogfSwgInN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFu
ZCByZXR1cm5zIGVudHJpZXMgaW4gYWxwaGFiZXRpY2FsIG9yZGVyIik7CisKK3Rlc3QoKCkgPT4g
eworICBpZiAodHlwZW9mIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuc3VwcG9ydGVkRW50cnlUeXBlcyA9
PT0gInVuZGVmaW5lZCIpCisgICAgYXNzZXJ0X3VucmVhY2hlZCgic3VwcG9ydGVkRW50cnlUeXBl
cyBpcyBub3Qgc3VwcG9ydGVkLiIpOworICBhc3NlcnRfdHJ1ZShQZXJmb3JtYW5jZU9ic2VydmVy
LnN1cHBvcnRlZEVudHJ5VHlwZXMgPT09CisgICAgICBQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBv
cnRlZEVudHJ5VHlwZXMpOworfSwgInN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVzIHJlc3VsdCIp
OwpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJm
b3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRyeVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvc3VwcG9ydGVkRW50cnlUeXBlcy5hbnkud29ya2Vy
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc3NzQxKQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9zdXBwb3J0ZWRFbnRy
eVR5cGVzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
NCBAQAogCiBQQVNTIHN1cHBvcnRlZEVudHJ5VHlwZXMgZXhpc3RzIGFuZCByZXR1cm5zIGVudHJp
ZXMgaW4gYWxwaGFiZXRpY2FsIG9yZGVyCitGQUlMIHN1cHBvcnRlZEVudHJ5VHlwZXMgY2FjaGVz
IHJlc3VsdCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApJbmRleDogTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1l
bGluZS93ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93
ZWJ0aW1pbmctcmVzb2x1dGlvbi5hbnkuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93ZWJ0
aW1pbmctcmVzb2x1dGlvbi5hbnkuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAor
ZnVuY3Rpb24gdGVzdFRpbWVSZXNvbHV0aW9uKGhpZ2hSZXNUaW1lRnVuYywgZnVuY1N0cmluZykg
eworICAgIHRlc3QoKCkgPT4geworICAgICAgICBjb25zdCB0MCA9IGhpZ2hSZXNUaW1lRnVuYygp
OworICAgICAgICBsZXQgdDEgPSBoaWdoUmVzVGltZUZ1bmMoKTsKKyAgICAgICAgd2hpbGUgKHQw
ID09IHQxKSB7CisgICAgICAgICAgICB0MSA9IGhpZ2hSZXNUaW1lRnVuYygpOworICAgICAgICB9
CisgICAgICAgIGNvbnN0IGVwc2lsb24gPSAxZS01OworICAgICAgICBhc3NlcnRfZ3JlYXRlcl90
aGFuX2VxdWFsKHQxIC0gdDAsIDAuMDA1IC0gZXBzaWxvbiwgJ1RoZSBzZWNvbmQgJyArIGZ1bmNT
dHJpbmcgKyAnIHNob3VsZCBiZSBtdWNoIGdyZWF0ZXIgdGhhbiB0aGUgZmlyc3QnKTsKKyAgICB9
LCAnVmVyaWZpZXMgdGhlIHJlc29sdXRpb24gb2YgJyArIGZ1bmNTdHJpbmcgKyAnIGlzIGF0IGxl
YXN0IDUgbWljcm9zZWNvbmRzLicpOworfQorCitmdW5jdGlvbiB0aW1lQnlQZXJmb3JtYW5jZU5v
dygpIHsKKyAgICByZXR1cm4gcGVyZm9ybWFuY2Uubm93KCk7Cit9CisKK2Z1bmN0aW9uIHRpbWVC
eVVzZXJUaW1pbmcoKSB7CisgICAgcGVyZm9ybWFuY2UubWFyaygndGltZXInKTsKKyAgICBjb25z
dCB0aW1lID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgndGltZXInKVswXS5zdGFydFRp
bWU7CisgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcygndGltZXInKTsKKyAgICByZXR1cm4gdGlt
ZTsKK30KKwordGVzdFRpbWVSZXNvbHV0aW9uKHRpbWVCeVBlcmZvcm1hbmNlTm93LCAncGVyZm9y
bWFuY2Uubm93KCknKTsKK3Rlc3RUaW1lUmVzb2x1dGlvbih0aW1lQnlVc2VyVGltaW5nLCAnZW50
cnkuc3RhcnRUaW1lJyk7CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9i
c2VydmVyLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBl
cmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5l
L3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLWV4cGVjdGVkLnR4dAkod29ya2luZyBj
b3B5KQpAQCAtMCwwICsxLDMgQEAKKworUEFTUyBXb3JrZXI6IFRlc3QgUGVyZm9ybWFuY2UgT2Jz
ZXJ2ZXIgaW5zaWRlIGEgd29ya2VyLgorCkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3dvcmtlci13aXRoLXBlcmZv
cm1hbmNlLW9ic2VydmVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS93b3JrZXItd2l0aC1w
ZXJmb3JtYW5jZS1vYnNlcnZlci5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvd29ya2Vy
LXdpdGgtcGVyZm9ybWFuY2Utb2JzZXJ2ZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDE4IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3Jp
cHQ+Cithc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtl
cigicmVzb3VyY2VzL3dvcmtlci13aXRoLXBlcmZvcm1hbmNlLW9ic2VydmVyLmpzIik7CisgIHdv
cmtlci5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkgeworICAgIHQuc3RlcCgoKSA9PiBhc3Nl
cnRfZXF1YWxzKGV2ZW50LmRhdGEsICdTVUNDRVNTJykpOworICAgIHQuZG9uZSgpOworICB9Cit9
LCAnV29ya2VyOiBUZXN0IFBlcmZvcm1hbmNlIE9ic2VydmVyIGluc2lkZSBhIHdvcmtlci4nKTsK
Kzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvcG9z
dG1lc3NhZ2UtZW50cnkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy9wb3N0
bWVzc2FnZS1lbnRyeS5odG1sCShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3Bv
c3RtZXNzYWdlLWVudHJ5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxNyBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8c2NyaXB0PgorYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsK
KyAgY29uc3QgZW50cnkgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9u
IilbMF07CisgIHRyeSB7CisgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZShlbnRyeSwgIioiKTsK
KyAgfSBjYXRjaChlcnJvcikgeworICAgIGlmIChlcnJvci5uYW1lID09ICJEYXRhQ2xvbmVFcnJv
ciIpIHsKKyAgICAgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UoIlBBU1MiLCAiKiIpOworICAgIH0g
ZWxzZSB7CisgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKCJGQUlMIC0gV3JvbmcgZXhjZXB0
aW9uIG5hbWU6ICIgKyBlcnJvci5uYW1lLCAiKiIpOworICAgIH0KKyAgfQorICB3aW5kb3cudG9w
LnBvc3RNZXNzYWdlKCJGQUlMIC0gTm8gZXhjZXB0aW9uIHRocm93biIsICIqIik7Cit9KTsKKwor
PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItaW52YWxpZC1lbnRyaWVz
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcGVyZm9ybWFuY2UtdGltZWxpbmUvcmVzb3VyY2VzL3dvcmtlci1pbnZhbGlkLWVudHJp
ZXMuanMJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wZXJmb3JtYW5jZS10aW1lbGluZS9yZXNvdXJjZXMvd29ya2VyLWludmFsaWQt
ZW50cmllcy5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDYgQEAKK3BlcmZvcm1hbmNlLm1h
cmsoJ3dvcmtlck1hcmsnKTsKK3Bvc3RNZXNzYWdlKHsKKyAgJ2ludmFsaWQnIDogcGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5VHlwZSgnaW52YWxpZCcpLmxlbmd0aCwKKyAgJ21hcmsnIDogcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWFyaycpLmxlbmd0aCwKKyAgJ21lYXN1cmUnIDogcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgnbWVhc3VyZScpLmxlbmd0aAorfSk7CkluZGV4OiBM
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNlcnZlci5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1wZXJmb3JtYW5jZS1vYnNl
cnZlci5qcwkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BlcmZvcm1hbmNlLXRpbWVsaW5lL3Jlc291cmNlcy93b3JrZXItd2l0aC1w
ZXJmb3JtYW5jZS1vYnNlcnZlci5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDYgQEAKK3Ry
eSB7CisgIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCgpID0+IHRydWUpOworICBwb3N0TWVzc2Fn
ZSgiU1VDQ0VTUyIpOworfSBjYXRjaCAoZXgpIHsKKyAgcG9zdE1lc3NhZ2UoIkZBSUxVUkUiKTsK
K30KSW5kZXg6IExheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWlu
Zy5odHRwcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRp
b24gdGltaW5nIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nLndvcmtlclN0YXJ0JykgUmVh
Y2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2
aWdhdGlvbiB0aW1pbmcgbmV0d29yayBmYWxsYmFjayBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVj
dGVkIHJlamVjdGlvbjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ3Rp
bWluZ1t0aW1pbmdFdmVudE9yZGVyW2ldXScpIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQotRkFJ
TCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIHJlZGlyZWN0IGFz
c2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAndGltaW5nW3RpbWluZ0V2ZW50T3JkZXJbaV1dJykgUmVhY2hl
ZCB1bnJlYWNoYWJsZSBjb2RlCitGQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdh
dGlvbiB0aW1pbmcgYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3RlZCByZWplY3Rpb246IGFzc2Vy
dF9ncmVhdGVyX3RoYW46IGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBnb3Qg
MCBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1MgU2VydmljZSB3b3JrZXIgY29udHJvbGxl
ZCBuYXZpZ2F0aW9uIHRpbWluZyBuZXR3b3JrIGZhbGxiYWNrCitQQVNTIFNlcnZpY2Ugd29ya2Vy
IGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgcmVkaXJlY3QKIApJbmRleDogTGF5b3V0VGVz
dHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9ic2VydmVyLWFwaS1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BlcmZvcm1hbmNlLW9i
c2VydmVyLWFwaS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI3Nzc0MSkKKysrIExheW91dFRlc3Rz
L3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS1vYnNlcnZlci1hcGktZXhwZWN0ZWQudHh0CSh3
b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIFBBU1MgUGVyZm9ybWFuY2VPYnNlcnZlcigp
IHRocmV3IGV4Y2VwdGkKIFBBU1MgbmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgbmV3IFBlcmZvcm1h
bmNlT2JzZXJ2ZXIoMSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQXJndW1lbnQgMSAoJ2Nh
bGxiYWNrJykgdG8gdGhlIFBlcmZvcm1hbmNlT2JzZXJ2ZXIgY29uc3RydWN0b3IgbXVzdCBiZSBh
IGZ1bmN0aW9uLgogUEFTUyBvYnNlcnZlciA9IG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKGZ1bmN0
aW9uKCkge30pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgotUEFTUyBvYnNlcnZlci5vYnNlcnZl
KCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNT
IG9ic2VydmVyLm9ic2VydmUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9y
IGVudHJ5VHlwZXMgd2VyZSBwcm92aWRlZC4KIFBBU1Mgb2JzZXJ2ZXIub2JzZXJ2ZSgibWFyayIp
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCiBQQVNTIG9ic2VydmVyLm9i
c2VydmUoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IG5vIHR5cGUgb3IgZW50cnlUeXBl
cyB3ZXJlIHByb3ZpZGVkLgogUEFTUyBvYnNlcnZlci5vYnNlcnZlKHtlbnRyeVR5cGVzOiJtYXJr
In0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlLgpA
QCAtMzksNyArMzksNyBAQCBQQVNTIFtXb3JrZXJdIFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKSB0aHJl
CiBQQVNTIFtXb3JrZXJdIG5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKCkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIFtXb3JrZXJdIG5ldyBQZXJm
b3JtYW5jZU9ic2VydmVyKDEpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFyZ3VtZW50IDEg
KCdjYWxsYmFjaycpIHRvIHRoZSBQZXJmb3JtYW5jZU9ic2VydmVyIGNvbnN0cnVjdG9yIG11c3Qg
YmUgYSBmdW5jdGlvbi4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIgPSBuZXcgUGVyZm9ybWFuY2VP
YnNlcnZlcihmdW5jdGlvbigpIHt9KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KLVBBU1MgW1dv
cmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBl
bm91Z2ggYXJndW1lbnRzLgorUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKCkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogbm8gdHlwZSBvciBlbnRyeVR5cGVzIHdlcmUgcHJvdmlkZWQu
CiBQQVNTIFtXb3JrZXJdIG9ic2VydmVyLm9ic2VydmUoIm1hcmsiKSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUeXBlIGVycm9yLgogUEFTUyBbV29ya2VyXSBvYnNlcnZlci5vYnNlcnZlKHt9
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBubyB0eXBlIG9yIGVudHJ5VHlwZXMgd2VyZSBw
cm92aWRlZC4KIFBBU1MgW1dvcmtlcl0gb2JzZXJ2ZXIub2JzZXJ2ZSh7ZW50cnlUeXBlczoibWFy
ayJ9KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBWYWx1ZSBpcyBub3QgYSBzZXF1ZW5jZS4K
SW5kZXg6IExheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10aW1lbGluZS1h
cGktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFw
aS9wZXJmb3JtYW5jZS10aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNzc3NDEp
CisrKyBMYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBp
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTYsMTQgKzE2LDE0IEBAIFBBU1MgUGVy
Zm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXMgaXMKIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90
eXBlLmdldEVudHJpZXNCeVR5cGUgaXMgZGVmaW5lZC4KIFBBU1MgUGVyZm9ybWFuY2UucHJvdG90
eXBlLmdldEVudHJpZXNCeU5hbWUgaXMgZGVmaW5lZC4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpIGluc3RhbmNlb2YgQXJyYXkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkubGVuZ3RoID09PSAwIGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UubWFyaygidGVzdCIp
OyBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KIFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
Lmxlbmd0aCA9PT0gMSBpcyB0cnVlCi1QQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBp
bnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQotUEFTUyBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygp
WzBdLmVudHJ5VHlwZSBpcyAibWFyayIKLVBBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKLVBBU1MgdHlwZW9mIHBlcmZv
cm1hbmNlLmdldEVudHJpZXMoKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFT
UyBwZXJmb3JtYW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFT
UyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAyIGlzIHRydWUKK1BBU1MgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVu
dHJ5IGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0ubmFt
ZSBpcyAidGVzdCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50
cnlUeXBlIGlzICJtYXJrIgorUEFTUyB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21h
cmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIHR5cGVvZiBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMg
dHJ1ZQogUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKIFBBU1MgcGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCkBAIC02
MCwxMSArNjAsMTEgQEAgUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkgaQog
UEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwIGlzIHRy
dWUKIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UubWFyaygidGVzdCIpOyBkaWQgbm90IHRocm93
IGV4Y2VwdGlvbi4KIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0
aCA9PT0gMSBpcyB0cnVlCi1QQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVsw
XSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQotUEFTUyBbV29ya2VyXSBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKClbMF0ubmFtZSBpcyAidGVzdCIKLVBBU1MgW1dvcmtlcl0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIKLVBBU1MgW1dvcmtl
cl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRpbWUgPT09ICJudW1i
ZXIiIGlzIHRydWUKLVBBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVswXS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkg
aXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4
XS5uYW1lIGlzICJ0ZXN0IgorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClb
bWFya0luZGV4XS5lbnRyeVR5cGUgaXMgIm1hcmsiCitQQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlz
IHRydWUKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJr
SW5kZXhdLmR1cmF0aW9uID09PSAibnVtYmVyIiBpcyB0cnVlCiBQQVNTIFtXb3JrZXJdIHBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeVR5cGUoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3Qg
ZW5vdWdoIGFyZ3VtZW50cy4KIFBBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgibm90LXJlYWwiKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQogUEFTUyBbV29ya2VyXSBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIikubGVuZ3RoID09PSAxIGlzIHRydWUKSW5k
ZXg6IExheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Ut
b2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3JtYW5jZS1v
YnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc3
NzQxKQorKysgTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3BhaW50LXRpbWluZy9wZXJmb3Jt
YW5jZS1vYnNlcnZlci1maXJzdC1jb250ZW50ZnVsLXBhaW50LWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIFBBU1MgZGlkUmVjZWl2ZUZpcnN0Q29udGVudGZ1bFBh
aW50IGlzIHRydWUKLVBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCBpcyAxCitQ
QVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggaXMgMgogUEFTUyBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IikubGVuZ3RoIGlzIDEK
IFBBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgiZmlyc3QtY29udGVudGZ1bC1wYWlu
dCIsICJwYWludCIpLmxlbmd0aCBpcyAxCiBQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoInBhaW50IikubGVuZ3RoIGlzIDEKSW5kZXg6IExheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFw
aS9wYWludC10aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWlu
dC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9wYWludC10
aW1pbmcvcGVyZm9ybWFuY2Utb2JzZXJ2ZXItZmlyc3QtY29udGVudGZ1bC1wYWludC5odG1sCShy
ZXZpc2lvbiAyNzc3NDEpCisrKyBMYXlvdXRUZXN0cy9wZXJmb3JtYW5jZS1hcGkvcGFpbnQtdGlt
aW5nL3BlcmZvcm1hbmNlLW9ic2VydmVyLWZpcnN0LWNvbnRlbnRmdWwtcGFpbnQuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNyBAQCB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7
CiAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSAnVEVYVDInOwogICAgIGF3YWl0IHdhaXRG
b3JGQ1AoKTsKICAgICBzaG91bGRCZVRydWUoJ2RpZFJlY2VpdmVGaXJzdENvbnRlbnRmdWxQYWlu
dCcpOwotICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoJywgIjEi
KTsKKyAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllcygpLmxlbmd0aCcsICIyIik7
CiAgICAgc2hvdWxkQmUoJ3BlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoImZpcnN0LWNvbnRl
bnRmdWwtcGFpbnQiKS5sZW5ndGgnLCAiMSIpOwogICAgIHNob3VsZEJlKCdwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlOYW1lKCJmaXJzdC1jb250ZW50ZnVsLXBhaW50IiwgInBhaW50IikubGVuZ3Ro
JywgIjEiKTsKICAgICBzaG91bGRCZSgncGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgicGFp
bnQiKS5sZW5ndGgnLCAiMSIpOwpJbmRleDogTGF5b3V0VGVzdHMvcGVyZm9ybWFuY2UtYXBpL3Jl
c291cmNlcy90aW1lbGluZS1hcGkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGVyZm9y
bWFuY2UtYXBpL3Jlc291cmNlcy90aW1lbGluZS1hcGkuanMJKHJldmlzaW9uIDI3Nzc0MSkKKysr
IExheW91dFRlc3RzL3BlcmZvcm1hbmNlLWFwaS9yZXNvdXJjZXMvdGltZWxpbmUtYXBpLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC00LDYgKzQsOCBAQCBpZiAoc2VsZi5pbXBvcnRTY3JpcHRzKQogaWYg
KHNlbGYud2luZG93KQogICAgIGRlc2NyaXB0aW9uKCJCYXNpYyBJbnRlcmZhY2UgdGVzdCBmb3Ig
cGVyZm9ybWFuY2UtdGltZWxpbmUgQVBJcy4iKTsKIAorbGV0IHJ1bm5pbmdJbldvcmtlciA9ICEh
c2VsZi5pbXBvcnRTY3JpcHRzOworCiBkZWJ1ZygiUGVyZm9ybWFuY2VFbnRyeSIpOwogc2hvdWxk
QmVEZWZpbmVkKCJQZXJmb3JtYW5jZUVudHJ5Iik7CiBzaG91bGRCZVRydWUoYCJuYW1lIiBpbiBQ
ZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZWApOwpAQCAtMjEsMTQgKzIzLDI1IEBAIHNob3VsZEJl
RGVmaW5lZChgUGVyZm9ybWFuY2UucHJvdG90eXBlLmcKIHNob3VsZEJlRGVmaW5lZChgUGVyZm9y
bWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNCeU5hbWVgKTsKIAogc2hvdWxkQmVUcnVlKGBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzKCkgaW5zdGFuY2VvZiBBcnJheWApOwotc2hvdWxkQmVUcnVlKGBw
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAwYCk7CitpZiAocnVubmluZ0luV29y
a2VyKSB7CisgICAgLy8gV29ya2VycyBkb24ndCBoYXZlIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy4KKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGgg
PT09IDBgKTsKK30gZWxzZSB7CisgICAgc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkubGVuZ3RoID09PSAxYCk7Cit9CiBzaG91bGROb3RUaHJvdyhgcGVyZm9ybWFuY2UubWFy
aygidGVzdCIpO2ApOwotc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVu
Z3RoID09PSAxYCk7Ci1zaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXSBp
bnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnlgKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZyhgcGVy
Zm9ybWFuY2UuZ2V0RW50cmllcygpWzBdLm5hbWVgLCAidGVzdCIpOwotc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbMF0uZW50cnlUeXBlYCwgIm1hcmsiKTsK
LXNob3VsZEJlVHJ1ZShgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKVswXS5zdGFydFRp
bWUgPT09ICJudW1iZXIiYCk7Ci1zaG91bGRCZVRydWUoYHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbMF0uZHVyYXRpb24gPT09ICJudW1iZXIiYCk7CitpZiAocnVubmluZ0luV29ya2Vy
KSB7CisgICAgbWFya0luZGV4ID0gMDsKKyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdl
dEVudHJpZXMoKS5sZW5ndGggPT09IDFgKTsKK30gZWxzZSB7CisgICAgbWFya0luZGV4ID0gMTsK
KyAgICBzaG91bGRCZVRydWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXMoKS5sZW5ndGggPT09IDJg
KTsKK30KK3Nob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0g
aW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5YCk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoYHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLm5hbWVgLCAidGVzdCIpOworc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0luZGV4XS5lbnRy
eVR5cGVgLCAibWFyayIpOworc2hvdWxkQmVUcnVlKGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50
cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09PSAibnVtYmVyImApOworc2hvdWxkQmVUcnVl
KGB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24gPT09
ICJudW1iZXIiYCk7CiAKIHNob3VsZFRocm93KGBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KClgKTsKIHNob3VsZEJlVHJ1ZShgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibm90LXJl
YWwiKS5sZW5ndGggPT09IDBgKTsKQEAgLTUwLDUgKzYzLDUgQEAgc2hvdWxkQmVUcnVlKGB0eXBl
b2YgcGVyZm9ybWFuY2UuZ2V0RW50cgogc2hvdWxkQmVUcnVlKGBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzQnlOYW1lKCJ0ZXN0IiwgIm5vdC1yZWFsIikubGVuZ3RoID09PSAwYCk7CiBzaG91bGRCZVRy
dWUoYHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiLCAibWFyayIpLmxlbmd0aCA9
PT0gMWApOwogCi1pZiAoc2VsZi5pbXBvcnRTY3JpcHRzKQoraWYgKHJ1bm5pbmdJbldvcmtlcikK
ICAgICBmaW5pc2hKU1Rlc3QoKTsKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rl
c3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZp
Z2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRlc192YWx1ZXMtZXhwZWN0ZWQudHh0CShu
b25leGlzdGVudCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9uYXZpZ2F0aW9uLXRpbWluZy9uYXYyX3Rlc3RfYXR0cmlidXRl
c192YWx1ZXMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNyBAQAorRGVz
Y3JpcHRpb24KKworVGhpcyB0ZXN0IHZhbGlkYXRlcyB0aGF0IHRoZSB2YWx1ZXMgb2YgbmF2IHRp
bWluZyAyIGluc3RhbmNlJ3MgdGltaW5nLXJlbGF0ZWQgYXR0cmlidXRlcyBhcmUgaW4gY2VydGFp
biBvcmRlciBhbmQgdGhlIG90aGVycyBhcmUgb2YgZXhwZWN0ZWQgdmFsdWVzLgorCisKK0ZBSUwg
UGVyZm9ybWFuY2UgbmF2aWdhdGlvbiB0aW1pbmcgaW5zdGFuY2UncyB2YWx1ZSBpcyByZWFzb25h
YmxlLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiaHR0cC8xLjEiIGJ1dCBnb3QgIiIKKwpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL3BlcmZvcm1hbmNlLWFwaS9wZXJmb3JtYW5jZS10
aW1lbGluZS1hcGktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9wZXJmb3JtYW5jZS1hcGkvcGVyZm9ybWFuY2UtdGltZWxpbmUtYXBpLWV4cGVjdGVk
LnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vcGVyZm9ybWFu
Y2UtYXBpL3BlcmZvcm1hbmNlLXRpbWVsaW5lLWFwaS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSw4OSBAQAorQmFzaWMgSW50ZXJmYWNlIHRlc3QgZm9yIHBlcmZvcm1hbmNl
LXRpbWVsaW5lIEFQSXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQZXJmb3Jt
YW5jZUVudHJ5CitQQVNTIFBlcmZvcm1hbmNlRW50cnkgaXMgZGVmaW5lZC4KK1BBU1MgIm5hbWUi
IGluIFBlcmZvcm1hbmNlRW50cnkucHJvdG90eXBlIGlzIHRydWUKK1BBU1MgImVudHJ5VHlwZSIg
aW4gUGVyZm9ybWFuY2VFbnRyeS5wcm90b3R5cGUgaXMgdHJ1ZQorUEFTUyAic3RhcnRUaW1lIiBp
biBQZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZSBpcyB0cnVlCitQQVNTICJkdXJhdGlvbiIgaW4g
UGVyZm9ybWFuY2VFbnRyeS5wcm90b3R5cGUgaXMgdHJ1ZQorUEFTUyBuZXcgUGVyZm9ybWFuY2VF
bnRyeSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IElsbGVnYWwgY29uc3RydWN0b3IuCisK
K1BlcmZvcm1hbmNlIGV4dGVuc2lvbnMKK1BBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVu
dHJpZXMgaXMgZGVmaW5lZC4KK1BBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNC
eVR5cGUgaXMgZGVmaW5lZC4KK1BBU1MgUGVyZm9ybWFuY2UucHJvdG90eXBlLmdldEVudHJpZXNC
eU5hbWUgaXMgZGVmaW5lZC4KK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpIGluc3RhbmNl
b2YgQXJyYXkgaXMgdHJ1ZQorRkFJTCBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09
PSAxIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitQQVNTIHBlcmZvcm1hbmNlLm1hcmsoInRl
c3QiKTsgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitGQUlMIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXMoKS5sZW5ndGggPT09IDIgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KK0ZBSUwgcGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJmb3JtYW5jZUVudHJ5
IHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitGQUlMIHBlcmZvcm1hbmNlLmdldEVudHJpZXMo
KVttYXJrSW5kZXhdLm5hbWUgc2hvdWxkIGJlIHRlc3QuIFRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzKClbbWFya0luZGV4XS5uYW1lJykKK0ZBSUwgcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpW21hcmtJbmRleF0uZW50cnlUeXBlIHNob3VsZCBiZSBtYXJrLiBUaHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncGVyZm9y
bWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlJykKK0ZBSUwgdHlwZW9mIHBl
cmZvcm1hbmNlLmdldEVudHJpZXMoKVttYXJrSW5kZXhdLnN0YXJ0VGltZSA9PT0gIm51bWJlciIg
c2hvdWxkIGJlIHRydWUuIFRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKClbbWFya0lu
ZGV4XS5zdGFydFRpbWUnKQorRkFJTCB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21h
cmtJbmRleF0uZHVyYXRpb24gPT09ICJudW1iZXIiIHNob3VsZCBiZSB0cnVlLiBUaHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
cGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uZHVyYXRpb24nKQorUEFTUyBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90
IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5v
dC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgibWFyayIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCitQQVNTIHBlcmZvcm1hbmNlLmdl
dEVudHJpZXNCeVR5cGUoIm1hcmsiKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMg
dHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIilbMF0ubmFtZSBp
cyAidGVzdCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpWzBdLmVu
dHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5
cGUoIm1hcmsiKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKK1BBU1MgdHlwZW9m
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1hcmsiKVswXS5kdXJhdGlvbiA9PT0gIm51
bWJlciIgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKCkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIHBlcmZvcm1h
bmNlLmdldEVudHJpZXNCeU5hbWUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKK1BB
U1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIpLmxlbmd0aCA9PT0gMSBpcyB0
cnVlCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXSBpbnN0YW5j
ZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlOYW1lKCJ0ZXN0IilbMF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50
cmllc0J5TmFtZSgidGVzdCIpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgdHlwZW9mIHBl
cmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXS5zdGFydFRpbWUgPT09ICJudW1i
ZXIiIGlzIHRydWUKK1BBU1MgdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRl
c3QiKVswXS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBwZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzQnlOYW1lKCJ0ZXN0IiwgIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUK
K1BBU1MgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJtYXJrIikubGVuZ3Ro
ID09PSAxIGlzIHRydWUKKworU3RhcnRpbmcgd29ya2VyOiByZXNvdXJjZXMvdGltZWxpbmUtYXBp
LmpzCitbV29ya2VyXSBQZXJmb3JtYW5jZUVudHJ5CitQQVNTIFtXb3JrZXJdIFBlcmZvcm1hbmNl
RW50cnkgaXMgZGVmaW5lZC4KK1BBU1MgW1dvcmtlcl0gIm5hbWUiIGluIFBlcmZvcm1hbmNlRW50
cnkucHJvdG90eXBlIGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gImVudHJ5VHlwZSIgaW4gUGVyZm9y
bWFuY2VFbnRyeS5wcm90b3R5cGUgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSAic3RhcnRUaW1lIiBp
biBQZXJmb3JtYW5jZUVudHJ5LnByb3RvdHlwZSBpcyB0cnVlCitQQVNTIFtXb3JrZXJdICJkdXJh
dGlvbiIgaW4gUGVyZm9ybWFuY2VFbnRyeS5wcm90b3R5cGUgaXMgdHJ1ZQorUEFTUyBbV29ya2Vy
XSBuZXcgUGVyZm9ybWFuY2VFbnRyeSgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IElsbGVn
YWwgY29uc3RydWN0b3IuCitbV29ya2VyXQorW1dvcmtlcl0gUGVyZm9ybWFuY2UgZXh0ZW5zaW9u
cworUEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllcyBpcyBkZWZp
bmVkLgorUEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50cmllc0J5VHlw
ZSBpcyBkZWZpbmVkLgorUEFTUyBbV29ya2VyXSBQZXJmb3JtYW5jZS5wcm90b3R5cGUuZ2V0RW50
cmllc0J5TmFtZSBpcyBkZWZpbmVkLgorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRy
aWVzKCkgaW5zdGFuY2VvZiBBcnJheSBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNl
LmdldEVudHJpZXMoKS5sZW5ndGggPT09IDAgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3Jt
YW5jZS5tYXJrKCJ0ZXN0Iik7IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBbV29ya2Vy
XSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzKCkubGVuZ3RoID09PSAxIGlzIHRydWUKK1BBU1MgW1dv
cmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0gaW5zdGFuY2VvZiBQZXJm
b3JtYW5jZUVudHJ5IGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmll
cygpW21hcmtJbmRleF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2Uu
Z2V0RW50cmllcygpW21hcmtJbmRleF0uZW50cnlUeXBlIGlzICJtYXJrIgorUEFTUyBbV29ya2Vy
XSB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllcygpW21hcmtJbmRleF0uc3RhcnRUaW1lID09
PSAibnVtYmVyIiBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHR5cGVvZiBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzKClbbWFya0luZGV4XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBb
V29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNl
LmdldEVudHJpZXNCeVR5cGUoIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKK1BBU1Mg
W1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpLmxlbmd0aCA9PT0g
MSBpcyB0cnVlCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1h
cmsiKVswXSBpbnN0YW5jZW9mIFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQorUEFTUyBbV29ya2Vy
XSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJtYXJrIilbMF0ubmFtZSBpcyAidGVzdCIK
K1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibWFyayIpWzBdLmVu
dHJ5VHlwZSBpcyAibWFyayIKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoIm1hcmsiKVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKK1BB
U1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm1hcmsiKVsw
XS5kdXJhdGlvbiA9PT0gIm51bWJlciIgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlOYW1lKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3Vn
aCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUo
Im5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gcGVyZm9ybWFu
Y2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIpLmxlbmd0aCA9PT0gMSBpcyB0cnVlCitQQVNTIFtX
b3JrZXJdIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXSBpbnN0YW5jZW9m
IFBlcmZvcm1hbmNlRW50cnkgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRF
bnRyaWVzQnlOYW1lKCJ0ZXN0IilbMF0ubmFtZSBpcyAidGVzdCIKK1BBU1MgW1dvcmtlcl0gcGVy
Zm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIpWzBdLmVudHJ5VHlwZSBpcyAibWFyayIK
K1BBU1MgW1dvcmtlcl0gdHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3Qi
KVswXS5zdGFydFRpbWUgPT09ICJudW1iZXIiIGlzIHRydWUKK1BBU1MgW1dvcmtlcl0gdHlwZW9m
IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoInRlc3QiKVswXS5kdXJhdGlvbiA9PT0gIm51
bWJlciIgaXMgdHJ1ZQorUEFTUyBbV29ya2VyXSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1l
KCJ0ZXN0IiwgIm5vdC1yZWFsIikubGVuZ3RoID09PSAwIGlzIHRydWUKK1BBU1MgW1dvcmtlcl0g
cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSgidGVzdCIsICJtYXJrIikubGVuZ3RoID09PSAx
IGlzIHRydWUKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>