<?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>157133</bug_id>
          
          <creation_ts>2016-04-28 05:44:01 -0700</creation_ts>
          <short_desc>Move ResourceTiming behind a runtime flag</short_desc>
          <delta_ts>2016-06-10 09:15:53 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>157189</dependson>
          <blocked>61138</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yoav Weiss">yoav</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ossy</cc>
    
    <cc>ryanhaddad</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1188215</commentid>
    <comment_count>0</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 05:44:01 -0700</bug_when>
    <thetext>Move ResourceTiming behind a runtime flag</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188219</commentid>
    <comment_count>1</comment_count>
      <attachid>277614</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 06:09:10 -0700</bug_when>
    <thetext>Created attachment 277614
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188228</commentid>
    <comment_count>2</comment_count>
      <attachid>277617</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 06:44:40 -0700</bug_when>
    <thetext>Created attachment 277617
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188234</commentid>
    <comment_count>3</comment_count>
      <attachid>277620</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 07:01:51 -0700</bug_when>
    <thetext>Created attachment 277620
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188246</commentid>
    <comment_count>4</comment_count>
      <attachid>277621</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 08:29:43 -0700</bug_when>
    <thetext>Created attachment 277621
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188288</commentid>
    <comment_count>5</comment_count>
      <attachid>277621</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-04-28 10:08:33 -0700</bug_when>
    <thetext>Comment on attachment 277621
Patch

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

Probably r=me.  I have two questions:
A resourceTimingBufferSize is set.  Is a buffer allocated if the feature is disabled at run time?
How is the timing data collected?  It shouldn&apos;t be collected if the feature is disabled at run time.

&gt; Source/WebCore/ChangeLog:5248
&gt; +2016-04-28  2016-04-18  Brady Eidson  &lt;beidson@apple.com&gt;

This change must have been an accident.

&gt; Source/WebCore/page/Performance.idl:39
&gt; +    [EnabledAtRuntime=ResourceTiming] PerformanceEntryList webkitGetEntries();

Since we&apos;ve never shipped this before, now would be a good time to unprefix everything in this file.

&gt; LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html:36
&gt; +    if (typeof value == &quot;object&quot; &amp;&amp; value == null) //;

What&apos;s with the //;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188339</commentid>
    <comment_count>6</comment_count>
      <attachid>277621</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 12:18:56 -0700</bug_when>
    <thetext>Comment on attachment 277621
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:5248
&gt;&gt; +2016-04-28  2016-04-18  Brady Eidson  &lt;beidson@apple.com&gt;
&gt; 
&gt; This change must have been an accident.

Indeed

&gt;&gt; Source/WebCore/page/Performance.idl:39
&gt;&gt; +    [EnabledAtRuntime=ResourceTiming] PerformanceEntryList webkitGetEntries();
&gt; 
&gt; Since we&apos;ve never shipped this before, now would be a good time to unprefix everything in this file.

With pleasure! :)

&gt;&gt; LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html:36
&gt;&gt; +    if (typeof value == &quot;object&quot; &amp;&amp; value == null) //;
&gt; 
&gt; What&apos;s with the //;?

I copied this test from another one, and just enabled resource timing . I&apos;ll get rid of the &quot;//;&quot; (in both tests).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188343</commentid>
    <comment_count>7</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 12:25:14 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 277621 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=277621&amp;action=review
&gt; 
&gt; Probably r=me.  I have two questions:
&gt; A resourceTimingBufferSize is set.  Is a buffer allocated if the feature is
&gt; disabled at run time?
&gt; How is the timing data collected?  It shouldn&apos;t be collected if the feature
&gt; is disabled at run time.
&gt; 

When the feature is disabled at runtime, A vector of RefPtr&lt;PerformanceEntry&gt; is created, but nothing is ever appended to it, nor does it get allocated to resourceTimingBufferSize.

The timing data is not collected when the feature is disabled, as addResourceTiming() in CachedResourceLoader::loadDone() is never called unless RuntimeEnabledFeatures()::sharedFeatures().resourceTimingEnabled().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188367</commentid>
    <comment_count>8</comment_count>
      <attachid>277646</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 13:44:34 -0700</bug_when>
    <thetext>Created attachment 277646
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188380</commentid>
    <comment_count>9</comment_count>
      <attachid>277648</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 14:07:02 -0700</bug_when>
    <thetext>Created attachment 277648
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188382</commentid>
    <comment_count>10</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 14:23:38 -0700</bug_when>
    <thetext>review comments addressed. PTAL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188501</commentid>
    <comment_count>11</comment_count>
      <attachid>277648</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-04-28 21:16:37 -0700</bug_when>
    <thetext>Comment on attachment 277648
Patch

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

&gt; Source/WebCore/loader/cache/CachedResourceLoader.cpp:79
&gt;  #include &quot;Performance.h&quot;

This should go up with the other includes.

&gt; Source/WebCore/page/Performance.h:69
&gt; +    PassRefPtr&lt;PerformanceEntryList&gt; getEntries() const;
&gt; +    PassRefPtr&lt;PerformanceEntryList&gt; getEntriesByType(const String&amp; entryType);
&gt; +    PassRefPtr&lt;PerformanceEntryList&gt; getEntriesByName(const String&amp; name, const String&amp; entryType);

Not necessary to return PassRefPtr.  Can just be RefPtr, or we could do that in another patch.  We&apos;re trying to get rid of PassRefPtr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188522</commentid>
    <comment_count>12</comment_count>
      <attachid>277676</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 23:32:11 -0700</bug_when>
    <thetext>Created attachment 277676
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188523</commentid>
    <comment_count>13</comment_count>
      <attachid>277676</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 23:33:05 -0700</bug_when>
    <thetext>Comment on attachment 277676
Patch

Thanks for reviewing! :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188524</commentid>
    <comment_count>14</comment_count>
      <attachid>277676</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-28 23:35:09 -0700</bug_when>
    <thetext>Comment on attachment 277676
Patch

Rejecting attachment 277676 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 277676, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
g file LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html
patching file LayoutTests/fast/dom/Window/window-properties-performance.html
patching file LayoutTests/http/tests/performance/performance-resource-timing-entries-expected.txt
patching file LayoutTests/http/tests/performance/performance-resource-timing-entries.html
patching file ChangeLog

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.webkit.org/results/1238223</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188526</commentid>
    <comment_count>15</comment_count>
      <attachid>277678</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-28 23:38:33 -0700</bug_when>
    <thetext>Created attachment 277678
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188543</commentid>
    <comment_count>16</comment_count>
      <attachid>277678</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-29 00:32:33 -0700</bug_when>
    <thetext>Comment on attachment 277678
Patch

Clearing flags on attachment: 277678

Committed r200232: &lt;http://trac.webkit.org/changeset/200232&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188544</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-29 00:32:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188559</commentid>
    <comment_count>18</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-04-29 02:13:56 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; Comment on attachment 277678 [details]
&gt; Patch
&gt; 
&gt; Clearing flags on attachment: 277678
&gt; 
&gt; Committed r200232: &lt;http://trac.webkit.org/changeset/200232&gt;

It broke the Apple Mac cmake build, see build.webkit.org for details.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188682</commentid>
    <comment_count>19</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2016-04-29 10:21:48 -0700</bug_when>
    <thetext>http/tests/performance/performance-resource-timing-entries.html is failing on Mac and flaky on other platforms.

http://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=http%2Ftests%2Fperformance%2Fperformance-resource-timing-entries.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188696</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-29 10:36:10 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 157189</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188747</commentid>
    <comment_count>21</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-04-29 12:21:48 -0700</bug_when>
    <thetext>*** Bug 157177 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189183</commentid>
    <comment_count>22</comment_count>
      <attachid>277846</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-01 02:06:39 -0700</bug_when>
    <thetext>Created attachment 277846
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189184</commentid>
    <comment_count>23</comment_count>
      <attachid>277847</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-01 02:20:59 -0700</bug_when>
    <thetext>Created attachment 277847
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189185</commentid>
    <comment_count>24</comment_count>
      <attachid>277848</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-01 02:26:03 -0700</bug_when>
    <thetext>Created attachment 277848
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189186</commentid>
    <comment_count>25</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-01 02:32:55 -0700</bug_when>
    <thetext>I&apos;ve updated the tests to be less flaky (Looks like ResourceTiming is not registering resource loads if it gets the resource from, so only the first run of the previous test passed, and all subsequent ones failed).
I fixed it by cache busting the tested resource URL. I&apos;ll file a bug against that behavior in a separate issue.

I also merged the patch from https://bugs.webkit.org/show_bug.cgi?id=157177 which fixed the cmake build.

Alex - could you review this new patch? (Mostly the new test, as you already r+ed the rest)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189190</commentid>
    <comment_count>26</comment_count>
      <attachid>277852</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-01 03:08:59 -0700</bug_when>
    <thetext>Created attachment 277852
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189332</commentid>
    <comment_count>27</comment_count>
      <attachid>277852</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-05-02 00:19:54 -0700</bug_when>
    <thetext>Comment on attachment 277852
Patch

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

&gt; LayoutTests/http/tests/performance/performance-resource-timing-entries.html:8
&gt; +    var url = &quot;../../resources/square100.png?&quot;;
&gt; +    url += Math.random();
&gt; +    document.write(&quot;&lt;img src=&apos;&quot; + url + &quot;&apos;&gt;&quot;);

This definitely will force reloading.  There are better ways of doing this, and we should handle caching better, but this is fine to go in if you file a bug to fix that.

&gt; LayoutTests/http/tests/performance/performance-resource-timing-entries.html:17
&gt; +        var resources = performance.getEntriesByType(&apos;resource&apos;);
&gt; +        for (var i = 0; i &lt; resources.length; ++i) {
&gt; +            if (resources[i].name.indexOf(&quot;square100&quot;) != -1) {

Last time we just made sure that resources.length was 2.  Now we iterate it and make sure square100.png?randomnumber is in it. Was the length 2 before because the main resource and the image were expected to be in it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189333</commentid>
    <comment_count>28</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-02 00:24:25 -0700</bug_when>
    <thetext>(In reply to comment #27)
&gt; Comment on attachment 277852 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=277852&amp;action=review
&gt; 
&gt; &gt; LayoutTests/http/tests/performance/performance-resource-timing-entries.html:8
&gt; &gt; +    var url = &quot;../../resources/square100.png?&quot;;
&gt; &gt; +    url += Math.random();
&gt; &gt; +    document.write(&quot;&lt;img src=&apos;&quot; + url + &quot;&apos;&gt;&quot;);
&gt; 
&gt; This definitely will force reloading.  There are better ways of doing this,
&gt; and we should handle caching better, but this is fine to go in if you file a
&gt; bug to fix that.

Will do.

&gt; 
&gt; &gt; LayoutTests/http/tests/performance/performance-resource-timing-entries.html:17
&gt; &gt; +        var resources = performance.getEntriesByType(&apos;resource&apos;);
&gt; &gt; +        for (var i = 0; i &lt; resources.length; ++i) {
&gt; &gt; +            if (resources[i].name.indexOf(&quot;square100&quot;) != -1) {
&gt; 
&gt; Last time we just made sure that resources.length was 2.  Now we iterate it
&gt; and make sure square100.png?randomnumber is in it. Was the length 2 before
&gt; because the main resource and the image were expected to be in it?

The length was 2 because the of the test framework JS files. 
I changed the test to look for a specific resource as I didn&apos;t want to cache-bust the JS framework, and checking only length now would be flaky, as the JS would be cached, while the image will not be (so length would be 2 on the first run, and 1 in following runs).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189335</commentid>
    <comment_count>29</comment_count>
      <attachid>277852</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-02 00:29:38 -0700</bug_when>
    <thetext>Comment on attachment 277852
Patch

Thanks for reviewing! :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189347</commentid>
    <comment_count>30</comment_count>
      <attachid>277852</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-05-02 01:21:16 -0700</bug_when>
    <thetext>Comment on attachment 277852
Patch

Clearing flags on attachment: 277852

Committed r200320: &lt;http://trac.webkit.org/changeset/200320&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189348</commentid>
    <comment_count>31</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-05-02 01:21:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189356</commentid>
    <comment_count>32</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-05-02 02:38:12 -0700</bug_when>
    <thetext>(In reply to comment #30)
&gt; Comment on attachment 277852 [details]
&gt; Patch
&gt; 
&gt; Clearing flags on attachment: 277852
&gt; 
&gt; Committed r200320: &lt;http://trac.webkit.org/changeset/200320&gt;

It broke the Apple Mac cmake build:

/Volumes/Data/slave/elcapitan-cmake-debug/build/Source/WebCore/loader/cache/CachedResourceLoader.cpp:983:45: error: no member named &apos;performance&apos; in &apos;WebCore::DOMWindow&apos;
            initiatorDocument-&gt;domWindow()-&gt;performance()-&gt;addResourceTiming(info.name, initiatorDocument, resource-&gt;resourceRequest(), resource-&gt;response(), info.startTime, resource-&gt;loadFinishTime());
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ^</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189362</commentid>
    <comment_count>33</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2016-05-02 02:54:54 -0700</bug_when>
    <thetext>(In reply to comment #32)
&gt; (In reply to comment #30)
&gt; &gt; Comment on attachment 277852 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; Clearing flags on attachment: 277852
&gt; &gt; 
&gt; &gt; Committed r200320: &lt;http://trac.webkit.org/changeset/200320&gt;
&gt; 
&gt; It broke the Apple Mac cmake build:
&gt; 
&gt; /Volumes/Data/slave/elcapitan-cmake-debug/build/Source/WebCore/loader/cache/
&gt; CachedResourceLoader.cpp:983:45: error: no member named &apos;performance&apos; in
&gt; &apos;WebCore::DOMWindow&apos;
&gt;            
&gt; initiatorDocument-&gt;domWindow()-&gt;performance()-&gt;addResourceTiming(info.name,
&gt; initiatorDocument, resource-&gt;resourceRequest(), resource-&gt;response(),
&gt; info.startTime, resource-&gt;loadFinishTime());
&gt;             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ^

Speculative fix at https://bugs.webkit.org/show_bug.cgi?id=157262</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277614</attachid>
            <date>2016-04-28 06:09:10 -0700</date>
            <delta_ts>2016-04-28 06:44:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160428150940.patch</filename>
            <type>text/plain</type>
            <size>57179</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk5NzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
NDJlMzRkNjMwNDgxZDFjZWJlZjJmMTQxMjBkZGM3MDQxNTkyYzA1Li4zODA0NTQzNDRlZDA3ZGYx
MTFlN2FmM2M5NzY3NzRiZDFkYzdiMWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZGVkIFBlcmZvcm1hbmNlRW50cnksIFBlcmZvcm1hbmNlRW50cnlMaXN0
IGFuZCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIGFzIHByb3BlcnR5IG5hbWVzLgorCiAyMDE2
LTA0LTE4ICBTYWFtIGJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIGltcGxl
bWVudCBkeW5hbWljIHNjb3BlIGFjY2Vzc2VzIGluIHRoZSBERkcvRlRMCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NzU1ZmYwYmNhNjJhNGE1ZmE3YmY3ODAxZDA1YTc5YTI1YWZlMjRhZC4uZWE5NDA1MzhjYWJlYzJm
MGE4Mzk1ZjQwZDI0ZDEwZTllNTZkM2E4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisy
MDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVz
b3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNb3ZlIHRoZSBSZXNvdXJjZVRpbWluZyBBUEkgZnJv
bSBiZWluZyBiZWhpbmQgYSBidWlsZCB0aW1lIGZsYWcgdG8gYmUgYmVoaW5kIGFuCisgICAgICAg
IG9mZi1ieS1kZWZhdWx0IHJ1bnRpbWUgZmxhZywgdGhhdCBjYW4gYmUgdHVybmVkIG9uIHVzaW5n
IGludGVybmFscy4KKworICAgICAgICBUZXN0czogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9w
ZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sCisgICAgICAgICAgICAgICBo
dHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVz
Lmh0bWwKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZGVkIGlkbCBmaWxlcyBm
b3IgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxpc3QgYW5kIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOiBBZGRlZCB0aGUgdmFyaW91cyBQZXJmb3JtYW5jZSogZmlsZXMgdG8gdGhlIHByb2plY3Qu
CisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcDog
QWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3Jl
OjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzKToKKyAgICAg
ICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDogQWRkZWQgUmVz
b3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzZXRSZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6cmVzb3VyY2VUaW1pbmdFbmFibGVkKToKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwOiBSZW1vdmVk
ICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuIEFkZGVkIGJ1aWxkIGZsYWcgYXJvdW5kIFVzZXJUaW1p
bmcgcmVsYXRlZCBoIGZpbGVzLgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6IERlbGV0ZWQuCisg
ICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6IFJlcGxhY2UgI2lm
IGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRl
ci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWlu
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlm
aWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlTG9hZGVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdp
dGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6
OnJldmFsaWRhdGVSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6bG9hZFJlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9h
ZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKToKKyAgICAgICAgKiBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VU
aW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5jcHA6IFJlbW92ZSAjaWYgZm9yIFJl
c291cmNlVGltaW5nLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNl
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRy
aWVzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRF
bnRyaWVzQnlUeXBlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3
ZWJraXRHZXRFbnRyaWVzQnlOYW1lKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1h
bmNlLmg6IFJlbW92ZSAjaWYgZm9yIFJlc291cmNlVGltaW5nLgorICAgICAgICAqIHBhZ2UvUGVy
Zm9ybWFuY2UuaWRsOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0aCBydW50aW1l
IGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcDogUmVtb3ZlIHRoZSBQ
RVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeS5oOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbDogUmVwbGFjZSB0aGUgUEVSRk9STUFO
Q0VfVElNRUxJTkUgYnVpbGQgZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElO
RSBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaDogUmVt
b3ZlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElO
RSBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5jcHA6IFJlbW92ZSB0aGUgUkVTT1VSQ0VfVElNSU5HIGJ1aWxkIGZs
YWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmg6IFJlbW92ZSB0
aGUgUkVTT1VSQ0VfVElNSU5HIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmlkbDogUmVwbGFjZSB0aGUgUkVTT1VSQ0VfVElNSU5HIGJ1aWxkIGZs
YWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOiBB
ZGQgYSBtZXRob2QgdGhhdCBlbmFibGVzIFJlc291cmNlVGltaW5nLgorICAgICAgICAoV2ViQ29y
ZTo6SW50ZXJuYWxzOjpzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQpOgorICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmg6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcu
CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOiBBZGQgYSBtZXRob2QgdGhhdCBlbmFi
bGVzIFJlc291cmNlVGltaW5nLgorCiAyMDE2LTA0LTE4ICBCcmFkeSBFaWRzb24gIDxiZWlkc29u
QGFwcGxlLmNvbT4KIAogICAgICAgICBNb2Rlcm4gSURCIChCbG9iIHN1cHBvcnQpOiBXaGVuIHJl
YWRpbmcgQmxvYnMgZnJvbSB0aGUgZGF0YWJhc2UsIGdyYW50IHRoZSBOZXR3b3JraW5nIHByb2Nl
c3Mgc2FuZGJveCBhY2Nlc3MgdG8gdGhlIGZpbGVzLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXggNzJmZTE2NDc0OTRjMTEyNzFh
NTIwOTc0NDJjMGVlNzVjNzBlM2UwMi4uMjFkMGRiZjhjZmE5M2ZiYjcwODMxNTc2ZWRhYmRmYThk
MDgzODM3MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25J
ZGVudGlmaWVycy5oCkBAIC03MSw2ICs3MSw5IEBACiAgICAgbWFjcm8oTnVtYmVyKSBcCiAgICAg
bWFjcm8oTnVtYmVyRm9ybWF0KSBcCiAgICAgbWFjcm8oT2JqZWN0KSBcCisgICAgbWFjcm8oUGVy
Zm9ybWFuY2VFbnRyeSkgXAorICAgIG1hY3JvKFBlcmZvcm1hbmNlRW50cnlMaXN0KSBcCisgICAg
bWFjcm8oUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykgXAogICAgIG1hY3JvKFByb21pc2UpIFwK
ICAgICBtYWNybyhQcm94eSkgXAogICAgIG1hY3JvKFJhbmdlRXJyb3IpIFwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCmluZGV4IDQyMGE3OTA0N2I2ODQxMDhmNjMxNGQ3OWE5NWE3YzQyODdm
MTk5ZjUuLmMzYTEyZTRjNjQ2YTYzOTY3NGViOTc2N2NiMjRlMmNmMWEwNTI5NGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNTE4LDcgKzUxOCwxMCBAQCBOT05fU1ZHX0JJTkRJ
TkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvTG9jYXRpb24uaWRsIFwKICAgICAkKFdl
YkNvcmUpL3BhZ2UvTmF2aWdhdG9yLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1h
bmNlLmlkbCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsIFwKKyAg
ICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCBcCisgICAgJChXZWJDb3JlKS9wYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VUaW1pbmcuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvU2NyZWVuLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9wYWdlL1dlYktpdFBvaW50LmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMDhkOGNiMWZkZTRkNjFh
NzBhODA3NDc3ZDEzYTFkZDI2ZGIzYTExOC4uOWY5Nzc0NTdkMGQ1Y2M2MzMwODQ5ZWM3ODdjMjMw
YmUxYzk3YWE3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtMjc5NCwxMCArMjc5NCwxMCBAQAogCQk3RTQ3NEUxRTEyNDk0REM5
MDAyMzUzNjQgLyogU1FMaXRlRGF0YWJhc2VUcmFja2VyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTQ3NEUxQjEyNDk0REM5MDAyMzUzNjQg
LyogU1FMaXRlRGF0YWJhc2VUcmFja2VyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0U0NzRFMUYxMjQ5NERDOTAwMjM1MzY0IC8qIFNR
TGl0ZURhdGFiYXNlVHJhY2tlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0U0NzRFMUMxMjQ5NERDOTAwMjM1MzY0IC8qIFNRTGl0ZURhdGFiYXNlVHJh
Y2tlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTdFNDc0RTIwMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFzZVRyYWNrZXIuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U0NzRFMUQxMjQ5
NERDOTAwMjM1MzY0IC8qIFNRTGl0ZURhdGFiYXNlVHJhY2tlci5jcHAgKi87IH07Ci0JCTdFNEM5
NkRDMUFENDQ4MzUwMDM2NUE1MSAvKiBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFNEM5NkQ4MUFENDQ4MzUw
MDM2NUE1MSAvKiBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmNwcCAqLzsgfTsKLQkJN0U0Qzk2REQx
QUQ0NDgzNTAwMzY1QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1Tb3VyY2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFNEM5NkQ5MUFENDQ4MzUwMDM2NUE1
MSAvKiBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmggKi87IH07CiAJCTdFNEM5NkRDMUFENDQ4MzUw
MDM2NUE1MCAvKiBKU0ZldGNoUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3RTRDOTZEODFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaFJl
cXVlc3QuY3BwICovOyB9OworCQk3RTRDOTZEQzFBRDQ0ODM1MDAzNjVBNTEgLyogSlNSZWFkYWJs
ZVN0cmVhbVNvdXJjZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3RTRDOTZEODFBRDQ0ODM1MDAzNjVBNTEgLyogSlNSZWFkYWJsZVN0cmVhbVNvdXJj
ZS5jcHAgKi87IH07CiAJCTdFNEM5NkREMUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoUmVxdWVz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U0Qzk2
RDkxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXF1ZXN0LmggKi87IH07CisJCTdFNEM5NkRE
MUFENDQ4MzUwMDM2NUE1MSAvKiBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTRDOTZEOTFBRDQ0ODM1MDAzNjVB
NTEgLyogSlNSZWFkYWJsZVN0cmVhbVNvdXJjZS5oICovOyB9OwogCQk3RTRERTEwRDE5OEIxMEI2
MDA1MUNCMDIgLyogRGlza0NhY2hlTW9uaXRvckNvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U0REUxMEMxOThCMTBCNjAwNTFDQjAyIC8qIERp
c2tDYWNoZU1vbml0b3JDb2NvYS5tbSAqLzsgfTsKIAkJN0U1RDdBNzYxNjFEM0Y4RjAwODk2QzM0
IC8qIE9FU0VsZW1lbnRJbmRleFVpbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gN0U1RDdBNzMxNjFEM0Y4RjAwODk2QzM0IC8qIE9FU0VsZW1lbnRJ
bmRleFVpbnQuY3BwICovOyB9OwogCQk3RTVEN0E3NzE2MUQzRjhGMDA4OTZDMzQgLyogT0VTRWxl
bWVudEluZGV4VWludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0U1RDdBNzQxNjFEM0Y4RjAwODk2QzM0IC8qIE9FU0VsZW1lbnRJbmRleFVpbnQuaCAq
LzsgfTsKQEAgLTU5OTEsNiArNTk5MSwxNCBAQAogCQlDQTNCRjY3RTEwRDk5QkFFMDBFNkNFNTMg
LyogU2Nyb2xsQW5pbWF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUNBRTlGOTBG
MTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBEMTQ2NDQxRjAwMEMyNDVC
MCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLzsgfTsKIAkJQ0FFOUY5MTAxNDY0NDFGMDAw
QzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlLmggKi87IH07CisJCUNCMzhGRDRCMUNDQ0YzNjYwMDU5MkEzRiAvKiBQZXJm
b3JtYW5jZUVudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAq
LzsgfTsKKwkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0
RDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLzsgfTsKKwkJQ0Iz
OEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEUxQ0NGOTM3RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oICovOyB9OworCQlDQjM4RkQ1MzFDQ0Y5MzlCMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi87IH07CisJCUNCMzhGRDU0MUNDRjkzOUUwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1MDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3Jt
YW5jZUVudHJ5TGlzdC5oICovOyB9OworCQlDQjM4RkQ1NzFDRDIxRTJBMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENCMzhGRDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNl
RW50cnlDdXN0b20uY3BwICovOyB9OworCQlDQjM4RkQ1QTFDRDIzMjU4MDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDU4MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuY3BwICovOyB9OworCQlDQjM4RkQ1QjFDRDIzMjVCMDA1OTJBM0Yg
LyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmggKi87IH07CiAJCUNCOENGMDE4MUE5MzU4RDQwMDBENTEw
QiAvKiBNaWNyb3Rhc2tzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb3Rhc2tzLmNwcCAqLzsg
fTsKIAkJQ0NDMkI1MTQxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUNDQzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsK
QEAgLTg5OTYsOCArOTAwNCw4IEBACiAJCTQxMjlERjg0MUJCNUI3RjcwMDMyMkExNiAvKiBKU1Jl
YWRhYmxlU3RyZWFtUHJpdmF0ZUNvbnN0cnVjdG9ycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1JlYWRhYmxlU3RyZWFtUHJpdmF0ZUNvbnN0cnVjdG9ycy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MTMwMTVENTFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hS
ZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGZXRjaFJl
c3BvbnNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDE1RDUxQzdCNTcw
NDAwMDkxQzZGIC8qIEZldGNoUmVzcG9uc2VTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRmV0Y2hSZXNwb25zZVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTQxMzAxNUQ2MUM3QjU3MDQwMDA5MUM2RiAvKiBGZXRjaFJlc3BvbnNl
U291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZldGNoUmVzcG9uc2VT
b3VyY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDE1RDYxQzdCNTcwNDAw
MDkxQzZFIC8qIEZldGNoUmVzcG9uc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRmV0Y2hSZXNwb25zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTMwMTVE
NjFDN0I1NzA0MDAwOTFDNkYgLyogRmV0Y2hSZXNwb25zZVNvdXJjZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaFJlc3BvbnNlU291cmNlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTQxMzAxNUQ3MUM3QjU3MDQwMDA5MUM2RSAvKiBGZXRjaFJlc3BvbnNl
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGZXRjaFJlc3BvbnNlLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDE1RDgxQzdCNTcwNDAwMDkxQzZFIC8qIEZldGNoUmVz
cG9uc2UuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBGZXRjaFJl
c3BvbnNlLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTM4RDMzMzEyNDQwNTQ4
MDAzMjNEMzMgLyogRXZlbnRDb250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEV2ZW50Q29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTA0NDYs
MTAgKzEwNDU0LDEwIEBACiAJCTdFNDc0RTFCMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRh
YmFzZVRyYWNrZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1FM
aXRlRGF0YWJhc2VUcmFja2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdFNDc0RTFDMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1FMaXRlRGF0YWJhc2VUcmFja2VyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFNDc0RTFEMTI0OTREQzkwMDIzNTM2NCAvKiBT
UUxpdGVEYXRhYmFzZVRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1FMaXRlRGF0YWJhc2VUcmFja2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJN0U0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1Tb3VyY2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVh
bVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdFNEM5NkQ5MUFENDQ4
MzUwMDM2NUE1MSAvKiBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTUmVhZGFibGVTdHJlYW1Tb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0U0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXF1ZXN0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmV0Y2hSZXF1ZXN0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U0Qzk2RDgxQUQ0NDgzNTAwMzY1
QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1Tb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVhbVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdFNEM5NkQ5MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoUmVxdWVz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ZldGNoUmVxdWVzdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3RTRDOTZEOTFBRDQ0ODM1MDAzNjVBNTEgLyog
SlNSZWFkYWJsZVN0cmVhbVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdFNERFMTBDMTk4QjEwQjYwMDUxQ0IwMiAvKiBEaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEaXNrQ2FjaGVNb25pdG9yQ29j
b2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFNUQ3QTczMTYxRDNGOEYwMDg5
NkMzNCAvKiBPRVNFbGVtZW50SW5kZXhVaW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IE9FU0VsZW1lbnRJbmRleFVpbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk3RTVEN0E3NDE2MUQzRjhGMDA4OTZDMzQgLyogT0VTRWxlbWVudEluZGV4VWlu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPRVNFbGVtZW50SW5kZXhVaW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzk1NSw2ICsxMzk2MywxNCBAQAog
CQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlv
VmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0
UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFuY2VFbnRy
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDREMUNDRjkzN0UwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IGZpbGVFbmNvZGluZyA9
IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50
cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU1MUNEMjFENUIw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQjhD
RjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRy
b2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29u
dHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODA1NSw2ICsxODA3
MSw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmggKi8s
CiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmlkbCAqLywKIAkJ
CQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJ
CUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKIAkJ
CQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5pZGwgKi8sCiAJ
CQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAq
LywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aCAqLywKQEAgLTIyMzEwLDYgKzIyMzI3LDcgQEAKIAkJCQk4M0YxMjA2QTFCOEMxMDM2MDBENzVG
NjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3QzkxQTM4RDFCNDk4QUJFMDAz
RjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdDOTFBMzhFMUI0OThBQkUwMDNG
OUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovLAogCQkJCTkzQjcwRDRGMDlFQjBD
N0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwICovLAogCQkJCTkzQjcw
RDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCAqLywKIAkJ
CQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25z
dHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NDcsOCArMjI2NjUsMTQgQEAKIAkJCQlBOUQyNDdGNjBE
NzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlFNTFBODFERTE3Mjk4RDc3
MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4MTAw
OEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJQ0IzOEZENEYxQ0NGOTM3RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovLAorCQkJCUNCMzhGRDUwMUND
RjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCiAJCQkJOEE5QTU4
NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJ
CQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAq
LywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUxODlFMTVBNjAwMDE5QUUyIC8q
IEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1ODc3MTFFODRDOTgwMDhBQ0ZE
MSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNFQzAxQzAwQzI3NERERDAwOUY0
RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1NTU0LDYgKzI1NTc4LDcgQEAKIAkJCQkyRDI5
RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogRGlzcGxheVJlZnJlc2hN
b25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUNDODE5MkVDQzgzMDA5ODRCNzgg
LyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Iz
OEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERpc3BsYXlTbGVlcERpc2FibGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJDMDAyNkNFNzIgLyogRGlzcGxh
eVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwOTExMkIwMjZG
NzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywKQEAgLTI3Njg4LDYgKzI3NzEz
LDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVmlldy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRlcldp
ZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg5Q0NDNTMw
RjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNv
bW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThCRTk4NDkwMDZDRUJDQyAvKiBS
ZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4MDE3LDYgKzI4MDQzLDcgQEAK
IAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxl
VHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTQxQ0NGOTM5RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0REVB
QTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxlVmlzdWFsRGF0YS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVy
LmggaW4gSGVhZGVycyAqLywKQEAgLTI5MTk4LDYgKzI5MjI1LDcgQEAKIAkJCQlCMjc1MzU3NzBC
MDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk0M0VERDY3
RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVy
cy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUzNDE4NjRENUFGMDA4
NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODRG
RTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTMxMjE4LDYgKzMxMjQ2LDcgQEAKIAkJCQlCQzk2REI0NjBGM0E4ODIyMDA1
NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNF
QTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzkyRjE0NDBBRDE4NUZF
MDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0VBNDg2
RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxz
TWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzE5OTQsNiArMzIwMjMsNyBAQAogCQkJCTQ0
NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MubW0gaW4gU291
cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMgLyogV2ViQ29yZVZpZXcubSBp
biBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlBREY1MCAvKiBXZWJEZWJ1Z2dl
ckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAv
KiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkUwRDg0
RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMjI1
QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA3Myw2ICszMjEwMyw3IEBACiAJCQkJQjEwQjY5ODEx
NDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93QW5pbWF0aW9uLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5cGUu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3MDBG
OTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTE5NTE2QjFCNjU5
OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXJNYWMu
bW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTEwLDYgKzMyMTQxLDcgQEAKIAkJCQkwMEI5MzE4OTEz
QkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNj
b3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAvKiBY
TUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM3NzJD
NDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZl
bnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RGRDQ4RjBFMzA1MjkwMDA5RDEw
QUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1
cmVzLmNwcAppbmRleCBlMWU0YzNlYWQ3OWViYjMwNzc3YWVmNWNjYzA3MTJmN2ZlM2E3YzdiLi4y
MGYwODM5NzkyMzlhZmUwNzVjN2VkN2I2MDkwOWQ2NTEwZGRmYjk5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5jcHAKQEAgLTYwLDYgKzYwLDcgQEAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6UnVudGltZUVu
YWJsZWRGZWF0dXJlcygpCiAjZWxzZQogICAgICwgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxl
ZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZChmYWxzZSkK
ICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICwgbV9pc01lZGlhU3RyZWFtRW5hYmxlZCh0
cnVlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmlj
L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVy
aWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IGQ1MjRmY2U4NDkyZDE3MzA5OTJmYTcw
NmQ0M2NjNjY4YzE1ZDE3YmEuLjZmMWVmMGNiMjRkYzgzZWFjYzAwOTA4ZjI2NWNkMGE1YzIyNWE4
MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVu
YWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xOTUsNiArMTk1LDkgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNQbHVn
aW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBib29sIHBsdWdpblJlcGxh
Y2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGJvb2wgaXNFbmFibGVk
KSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBib29sIHJl
c291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNSZXNvdXJjZVRpbWluZ0Vu
YWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1FUEFEKQogICAgIHZvaWQgc2V0R2FtZXBhZHNFbmFi
bGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZUdhbWVwYWRzRW5hYmxlZCA9IGFyZUVuYWJsZWQ7
IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJlR2FtZXBh
ZHNFbmFibGVkOyB9CkBAIC0yNTcsNiArMjYwLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faXND
U1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJlRm9y
bUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9vbCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVk
OworICAgIGJvb2wgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZDsKIAogI2lmIEVOQUJMRShKQVZB
U0NSSVBUX0kxOE5fQVBJKQogICAgIGJvb2wgbV9pc0phdmFTY3JpcHRJMThOQVBJRW5hYmxlZDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRy
eUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50
cnlDdXN0b20uY3BwCmluZGV4IGViZGQzN2Y4YzRjMjE3YjM5OTFmZWQzMGM4NTc0Nzk3NjFlZDIz
MDMuLjhmMTFlNzAyNTdmZGMxMTc1NTFiMDdiZmM4YzdiYzI4OGRkY2FjMDYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9t
LmNwcApAQCAtMzAsMTMgKzMwLDEzIEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVO
QUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLQogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VFbnRy
eS5oIgogCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCisjaWYgRU5BQkxFKFVTRVJfVElNSU5H
KQogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5j
ZU1lYXN1cmUuaCIKKyNlbmRpZgogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNl
TWVhc3VyZS5oIgpAQCAtNTEsMTAgKzUxLDggQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpT
RE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKICAg
ICBpZiAoIWVudHJ5KQogICAgICAgICByZXR1cm4ganNOdWxsKCk7CiAKLSNpZiBFTkFCTEUoUkVT
T1VSQ0VfVElNSU5HKQogICAgIGlmIChlbnRyeS0+aXNSZXNvdXJjZSgpKQogICAgICAgICByZXR1
cm4gd3JhcDxKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGdsb2JhbE9iamVjdCwgc3RhdGlj
X2Nhc3Q8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyo+KGVudHJ5KSk7Ci0jZW5kaWYKIAogI2lm
IEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzTWFyaygpKQpAQCAtNjgsNSAr
NjYsMyBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgUGVyZm9ybWFuY2VFbnRyeSogZW50cgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGNk
YzQ1OWYyYmZhOGExYmU2MmFmZWUzM2M0YjBiZTc3MWNiNjFhMWQuLjVmNWVmZDg0MThhMzdlYTAy
ZGZhYjYzNTNiMDI1YThhNjA2ZmFiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVk
ZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1
ZGUgIlJlc291cmNlUmVxdWVzdC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMu
aCIKICNpbmNsdWRlICJTY2hlbWVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2lu
LmgiCiAjaW5jbHVkZSAiU3VicmVzb3VyY2VMb2FkZXIuaCIKQEAgLTM4NSw5ICszODYsOCBAQCB2
b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QoY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBTZWN1cgogICAgICAgICB9CiAKICAgICAgICAgQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0IG5ld1JlcXVlc3QocmVxdWVzdCwgb3B0aW9ucyk7Ci0jaWYgRU5BQkxFKFJFU09V
UkNFX1RJTUlORykKLSAgICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25zLmlu
aXRpYXRvcik7Ci0jZW5kaWYKKyAgICAgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNo
YXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgICAgICBuZXdS
ZXF1ZXN0LnNldEluaXRpYXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKICAgICAgICAgQVNTRVJU
KCFtX3Jlc291cmNlKTsKICAgICAgICAgbV9yZXNvdXJjZSA9IG1fZG9jdW1lbnQuY2FjaGVkUmVz
b3VyY2VMb2FkZXIoKS5yZXF1ZXN0UmF3UmVzb3VyY2UobmV3UmVxdWVzdCk7CiAgICAgICAgIGlm
IChtX3Jlc291cmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNl
TG9hZE5vdGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3Rp
Zmllci5jcHAKaW5kZXggZDhmNmI1NGI3MDU2YzE4NDYzZjQ2ZjUyMjQ3NTFkN2YzYmRjNzE5NC4u
OWE5OGQ5NDNjOWU4MDU0Mzg0YTkyMTA2YTkxOWQ2MTE4ZTBmMzgyYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCkBAIC0zOSw2ICszOSw3IEBA
CiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVyLmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5o
IgogCiAjaWYgVVNFKFFVSUNLX0xPT0spCiAjaW5jbHVkZSAiUXVpY2tMb29rLmgiCkBAIC0xNDIs
OSArMTQzLDggQEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJl
cXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICBpZiAobG9hZGVyICYmICFy
ZXF1ZXN0LmlzTnVsbCgpICYmIHJlcXVlc3QudXJsKCkgPT0gbG9hZGVyLT51cmwoKSkKICAgICAg
ICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5nKHRydWUpOwogCi0jaWYgRU5BQkxFKFJFU09V
UkNFX1RJTUlORykKLSAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7Ci0jZW5k
aWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNv
dXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5n
KHRydWUpOwogfQogCiB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2Vp
dmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHIsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxv
YWRlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3Vy
Y2VMb2FkZXIuY3BwCmluZGV4IDIzNWU4YTNiMzcwMjEyMWI3NTRkODBjZTRiMThhMjA0NDlmYmM2
NzkuLmViYmIxMGQyZjgxNzViZTQ1ZmQyOWNjZjVjNWMzNzEzMmNhZjQ3ZWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApA
QCAtNjEsNiArNjEsNyBAQAogI2luY2x1ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgogI2luY2x1
ZGUgIlJlbmRlckVsZW1lbnQuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRJbmZvLmgiCisjaW5j
bHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xs
ZXIuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlNlc3Npb25JRC5o
IgpAQCAtNzUsOSArNzYsNyBAQAogI2luY2x1ZGUgIkNhY2hlZFRleHRUcmFjay5oIgogI2VuZGlm
CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgi
Ci0jZW5kaWYKIAogI2RlZmluZSBQUkVMT0FEX0RFQlVHIDAKIApAQCAtNjcxLDExICs2NzAsOCBA
QCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OnJldmFsaWRhdGVSZXNvdXJjZShjbwogICAgIAogICAgIG1lbW9yeUNhY2hlLnJlbW92ZSgq
cmVzb3VyY2UpOwogICAgIG1lbW9yeUNhY2hlLmFkZCgqbmV3UmVzb3VyY2UpOwotI2lmIEVOQUJM
RShSRVNPVVJDRV9USU1JTkcpCi0gICAgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9y
bWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHJlcXVl
c3QpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1
cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHN0b3JlUmVzb3VyY2VUaW1p
bmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7CiAgICAgcmV0dXJuIG5l
d1Jlc291cmNlOwogfQogCkBAIC02OTAsMTUgKzY4NiwxNCBAQCBDYWNoZWRSZXNvdXJjZUhhbmRs
ZTxDYWNoZWRSZXNvdXJjZT4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWRSZXNvdXJjZShDYWNo
ZWRSZQogCiAgICAgaWYgKHJlcXVlc3QuYWxsb3dzQ2FjaGluZygpICYmICFtZW1vcnlDYWNoZS5h
ZGQoKnJlc291cmNlKSkKICAgICAgICAgcmVzb3VyY2UtPnNldE93bmluZ0NhY2hlZFJlc291cmNl
TG9hZGVyKHRoaXMpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgc3RvcmVSZXNv
dXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKLSNlbmRp
ZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291
cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9y
SW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwogICAgIHJldHVybiByZXNvdXJjZTsKIH0K
IAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVy
OjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3QgQ2FjaGVkUmVz
b3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+JiByZXNvdXJjZSwgY29uc3QgQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0KQogeworICAgIEFTU0VSVChSdW50aW1lRW5hYmxlZEZlYXR1cmVz
OjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKTsKICAgICBpZiAocmVz
b3VyY2UtPnR5cGUoKSA9PSBDYWNoZWRSZXNvdXJjZTo6TWFpblJlc291cmNlKSB7CiAgICAgICAg
IC8vIDxpZnJhbWU+cyBzaG91bGQgcmVwb3J0IHRoZSBpbml0aWFsIG5hdmlnYXRpb24gcmVxdWVz
dGVkIGJ5IHRoZSBwYXJlbnQgZG9jdW1lbnQsIGJ1dCBub3Qgc3Vic2VxdWVudCBuYXZpZ2F0aW9u
cy4KICAgICAgICAgaWYgKGZyYW1lKCktPm93bmVyRWxlbWVudCgpICYmIG1fZG9jdW1lbnRMb2Fk
ZXItPmZyYW1lTG9hZGVyKCktPnN0YXRlTWFjaGluZSgpLmNvbW1pdHRpbmdGaXJzdFJlYWxMb2Fk
KCkpIHsKQEAgLTcxMCw3ICs3MDUsNiBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpzdG9y
ZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3QgQ2FjaGVkUgogICAgICAg
ICBtX2luaXRpYXRvck1hcC5hZGQocmVzb3VyY2UuZ2V0KCksIGluZm8pOwogICAgIH0KIH0KLSNl
bmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiBzdGF0aWMgdm9pZCBsb2dSZXZhbGlk
YXRpb24oY29uc3QgU3RyaW5nJiByZWFzb24sIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50JiBsb2dD
bGllbnQpCiB7CkBAIC05NzUsOCArOTY5LDkgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNob3VsZFBlcmZvcm0KICAg
ICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3REb2N1bWVudExvYWRlcihtX2RvY3VtZW50
TG9hZGVyKTsKICAgICBSZWZQdHI8RG9jdW1lbnQ+IHByb3RlY3REb2N1bWVudChtX2RvY3VtZW50
KTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgaWYgKHJlc291cmNlICYmIHJl
c291cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpICYmICgoIXJlc291cmNlLT5lcnJvck9jY3VycmVk
KCkgJiYgIXJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB8fCByZXNvdXJjZS0+cmVzcG9uc2UoKS5o
dHRwU3RhdHVzQ29kZSgpID09IDMwNCkpIHsKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJl
czo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKQorICAgICAgICAmJiBy
ZXNvdXJjZSAmJiByZXNvdXJjZS0+cmVzcG9uc2UoKS5pc0hUVFAoKQorICAgICAgICAmJiAoKCFy
ZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFyZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgfHwg
cmVzb3VyY2UtPnJlc3BvbnNlKCkuaHR0cFN0YXR1c0NvZGUoKSA9PSAzMDQpKSB7CiAgICAgICAg
IEhhc2hNYXA8Q2FjaGVkUmVzb3VyY2UqLCBJbml0aWF0b3JJbmZvPjo6aXRlcmF0b3IgaW5pdGlh
dG9ySXQgPSBtX2luaXRpYXRvck1hcC5maW5kKHJlc291cmNlKTsKICAgICAgICAgaWYgKGluaXRp
YXRvckl0ICE9IG1faW5pdGlhdG9yTWFwLmVuZCgpKSB7CiAgICAgICAgICAgICBBU1NFUlQoZG9j
dW1lbnQoKSk7CkBAIC05ODksOSArOTg0LDYgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNob3VsZFBlcmZvcm0KICAg
ICAgICAgICAgIG1faW5pdGlhdG9yTWFwLnJlbW92ZShpbml0aWF0b3JJdCk7CiAgICAgICAgIH0K
ICAgICB9Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShyZXNvdXJjZSk7Ci0jZW5kaWYgLy8gRU5B
QkxFKFJFU09VUkNFX1RJTUlORykKIAogICAgIGlmIChmcmFtZSgpKQogICAgICAgICBmcmFtZSgp
LT5sb2FkZXIoKS5sb2FkRG9uZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAppbmRleCBiMWY3YzRmYWY1ZGJiMDk2MDFjNTg5MmY1
ZDY0NzEzOTQ5YjFmNjBkLi40ZGY4MTk5NTljZWFiMTEwMzc0YjU1YjQ2MDM5MzBhODdlYjdjNjZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VM
b2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VM
b2FkZXIuaApAQCAtMTQ0LDkgKzE0NCw3IEBAIHByaXZhdGU6CiAgICAgQ2FjaGVkUmVzb3VyY2VI
YW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJlcXVlc3RSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlw
ZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2Fj
aGVkUmVzb3VyY2U+IHJldmFsaWRhdGVSZXNvdXJjZShjb25zdCBDYWNoZWRSZXNvdXJjZVJlcXVl
c3QmLCBDYWNoZWRSZXNvdXJjZSopOwogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJl
c291cmNlPiBsb2FkUmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291cmNl
UmVxdWVzdCYpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgdm9pZCBzdG9yZVJl
c291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3QgQ2FjaGVkUmVzb3VyY2VIYW5k
bGU8Q2FjaGVkUmVzb3VyY2U+JiwgY29uc3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7Ci0jZW5k
aWYKICAgICB2b2lkIHJlcXVlc3RQcmVsb2FkKENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNoZWRS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQpOwogCiAgICAgZW51bSBSZXZh
bGlkYXRpb25Qb2xpY3kgeyBVc2UsIFJldmFsaWRhdGUsIFJlbG9hZCwgTG9hZCB9OwpAQCAtMTc5
LDEzICsxNzcsMTEgQEAgcHJpdmF0ZToKIAogICAgIFRpbWVyIG1fZ2FyYmFnZUNvbGxlY3REb2N1
bWVudFJlc291cmNlc1RpbWVyOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBz
dHJ1Y3QgSW5pdGlhdG9ySW5mbyB7CiAgICAgICAgIEF0b21pY1N0cmluZyBuYW1lOwogICAgICAg
ICBkb3VibGUgc3RhcnRUaW1lOwogICAgIH07CiAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZSos
IEluaXRpYXRvckluZm8+IG1faW5pdGlhdG9yTWFwOwotI2VuZGlmCiAKICAgICAvLyAyOSBiaXRz
IGxlZnQKICAgICBib29sIG1fYXV0b0xvYWRJbWFnZXMgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmNwcAppbmRleCBlZDM5YTFkMTUwODFiNDc2NGFlOTdhZmFmNzM4YmE5Njc5N2U3MzJi
Li5iYzQ4MTVhM2I2MGY3MjYyMTlkNDZiZmU0YmNlMWY4OGE3MjViOTA1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmNwcApAQCAtNDcsMTUgKzQ3LDExIEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiBzdGF0aWMgY29uc3Qgc2l6ZV90
IGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgPSAxNTA7Ci0jZW5kaWYKIAogUGVyZm9y
bWFuY2U6OlBlcmZvcm1hbmNlKEZyYW1lJiBmcmFtZSkKICAgICA6IERPTVdpbmRvd1Byb3BlcnR5
KCZmcmFtZSkKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgICwgbV9yZXNvdXJjZVRp
bWluZ0J1ZmZlclNpemUoZGVmYXVsdFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSkKLSNlbmRpZiAv
LyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgICwgbV9yZWZlcmVuY2VUaW1lKGZyYW1lLmRv
Y3VtZW50KCktPmxvYWRlcigpID8gZnJhbWUuZG9jdW1lbnQoKS0+bG9hZGVyKCktPnRpbWluZygp
LnJlZmVyZW5jZU1vbm90b25pY1RpbWUoKSA6IG1vbm90b25pY2FsbHlJbmNyZWFzaW5nVGltZSgp
KQogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICAsIG1fdXNlclRpbWluZyhudWxscHRyKQpA
QCAtOTEsMTQgKzg3LDExIEBAIFBlcmZvcm1hbmNlVGltaW5nKiBQZXJmb3JtYW5jZTo6dGltaW5n
KCkgY29uc3QKICAgICByZXR1cm4gbV90aW1pbmcuZ2V0KCk7CiB9CiAKLSNpZiBFTkFCTEUoUEVS
Rk9STUFOQ0VfVElNRUxJTkUpCiBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJm
b3JtYW5jZTo6d2Via2l0R2V0RW50cmllcygpIGNvbnN0CiB7CiAgICAgUmVmUHRyPFBlcmZvcm1h
bmNlRW50cnlMaXN0PiBlbnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwog
Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBlbnRyaWVzLT5hcHBlbmRBbGwobV9y
ZXNvdXJjZVRpbWluZ0J1ZmZlcik7Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykK
IAogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBAIC0x
MTUsMTIgKzEwOCwxMCBAQCBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3Jt
YW5jZTo6d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbgogewogICAgIFJlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVh
dGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsKICAgICAgICAgZm9y
IChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpCiAgICAgICAgICAgICBl
bnRyaWVzLT5hcHBlbmQocmVzb3VyY2UpOwogICAgIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFVT
RVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTEzOSwxNCArMTMwLDEyIEBA
IFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRF
bnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluCiB7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlM
aXN0PiBlbnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwogCi0jaWYgRU5B
QkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8IGVxdWFs
TGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsKICAgICAg
ICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpIHsKICAgICAg
ICAgICAgIGlmIChyZXNvdXJjZS0+bmFtZSgpID09IG5hbWUpCiAgICAgICAgICAgICAgICAgZW50
cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICAgICAgfQogICAgIH0KLSNlbmRpZgogCiAjaWYg
RU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE2MSwxMCAr
MTUwLDYgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6Ondl
YmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW4KICAgICByZXR1cm4gZW50cmllczsKIH0K
IAotI2VuZGlmIC8vIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLQotI2lmIEVOQUJMRShS
RVNPVVJDRV9USU1JTkcpCi0KIHZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdENsZWFyUmVzb3VyY2VU
aW1pbmdzKCkKIHsKICAgICBtX3Jlc291cmNlVGltaW5nQnVmZmVyLmNsZWFyKCk7CkBAIC0xOTUs
OCArMTgwLDYgQEAgYm9vbCBQZXJmb3JtYW5jZTo6aXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwo
KQogICAgIHJldHVybiBtX3Jlc291cmNlVGltaW5nQnVmZmVyLnNpemUoKSA+PSBtX3Jlc291cmNl
VGltaW5nQnVmZmVyU2l6ZTsKIH0KIAotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcp
Ci0KICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiB2b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRNYXJr
KGNvbnN0IFN0cmluZyYgbWFya05hbWUsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZS5oCmluZGV4IDkzZjQ0MDY0NGJiNzYzZmE3ZGM4ZDE3ZTQ4NjJlMzIzNWU5
Yzc2ZjcuLjZmZmY0NWM4NDVlMDk4OWVlNzQyNTE3NjFiYjg1YzU0Yzc3Y2E0NWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlLmgKQEAgLTY0LDE4ICs2NCwxNCBAQCBwdWJsaWM6CiAgICAgUGVy
Zm9ybWFuY2VUaW1pbmcqIHRpbWluZygpIGNvbnN0OwogICAgIGRvdWJsZSBub3coKSBjb25zdDsK
IAotI2lmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKICAgICBQYXNzUmVmUHRyPFBlcmZv
cm1hbmNlRW50cnlMaXN0PiB3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3Q7CiAgICAgUGFzc1JlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJp
bmcmIGVudHJ5VHlwZSk7CiAgICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Vi
a2l0R2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50
cnlUeXBlKTsKLSNlbmRpZgogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICB2b2lk
IHdlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCk7CiAgICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJj
ZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgaW50KTsKIAogICAgIHZvaWQgYWRkUmVzb3VyY2VU
aW1pbmcoY29uc3QgU3RyaW5nJiBpbml0aWF0b3JOYW1lLCBEb2N1bWVudCosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBkb3VibGUgaW5pdGlhdGlvblRp
bWUsIGRvdWJsZSBmaW5pc2hUaW1lKTsKLSNlbmRpZgogCiAgICAgdXNpbmcgUmVmQ291bnRlZDxQ
ZXJmb3JtYW5jZT46OnJlZjsKICAgICB1c2luZyBSZWZDb3VudGVkPFBlcmZvcm1hbmNlPjo6ZGVy
ZWY7CkBAIC05NywxMSArOTMsOSBAQCBwcml2YXRlOgogCiAgICAgbXV0YWJsZSBSZWZQdHI8UGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uPiBtX25hdmlnYXRpb247CiAgICAgbXV0YWJsZSBSZWZQdHI8UGVy
Zm9ybWFuY2VUaW1pbmc+IG1fdGltaW5nOwotICAgIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCisKICAgICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBtX3Jlc291cmNlVGlt
aW5nQnVmZmVyOwogICAgIHVuc2lnbmVkIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplOwotI2Vu
ZGlmCiAKICAgICBkb3VibGUgbV9yZWZlcmVuY2VUaW1lOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2UuaWRsCmluZGV4IDQ3MWZiNTBmZGI1YzgzYmU0MzIxYzg2ZGE1ZWZmMjI4YzQ4ZmRjYjku
LmZiMjU4ZmVkYzYxMDc3M2NlZjliNzI5Zjc2NTI2NzdhZjM4ZmMzOTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2UuaWRsCkBAIC0zNiwxOCArMzYsMTUgQEAKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uIG5hdmlnYXRpb247CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIFBlcmZvcm1hbmNlVGltaW5nIHRpbWluZzsKIAotI2lmIGRlZmluZWQoRU5BQkxFX1BF
UkZPUk1BTkNFX1RJTUVMSU5FKSAmJiBFTkFCTEVfUEVSRk9STUFOQ0VfVElNRUxJTkUKLSAgICBQ
ZXJmb3JtYW5jZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzKCk7Ci0gICAgUGVyZm9ybWFuY2VF
bnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5VHlwZShET01TdHJpbmcgZW50cnlUeXBlKTsKLSAg
ICBQZXJmb3JtYW5jZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKERPTVN0cmluZyBu
YW1lLCBbRGVmYXVsdD1OdWxsU3RyaW5nXSBvcHRpb25hbCBET01TdHJpbmcgZW50cnlUeXBlKTsK
LSNlbmRpZgorICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5j
ZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzKCk7CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVz
b3VyY2VUaW1pbmddIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeVR5cGUo
RE9NU3RyaW5nIGVudHJ5VHlwZSk7CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1p
bmddIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeU5hbWUoRE9NU3RyaW5n
IG5hbWUsIFtEZWZhdWx0PU51bGxTdHJpbmddIG9wdGlvbmFsIERPTVN0cmluZyBlbnRyeVR5cGUp
OwogCi0jaWYgZGVmaW5lZChFTkFCTEVfUkVTT1VSQ0VfVElNSU5HKSAmJiBFTkFCTEVfUkVTT1VS
Q0VfVElNSU5HCi0gICAgdm9pZCB3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpOwotICAgIHZv
aWQgd2Via2l0U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGxvbmcgbWF4U2l6
ZSk7CiAKLSAgICBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9ud2Via2l0cmVzb3VyY2V0aW1pbmdi
dWZmZXJmdWxsOwotI2VuZGlmCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmdd
IHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKKyAgICBbRW5hYmxlZEF0UnVudGlt
ZT1SZXNvdXJjZVRpbWluZ10gdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUo
dW5zaWduZWQgbG9uZyBtYXhTaXplKTsKKworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNl
VGltaW5nXSBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9ud2Via2l0cmVzb3VyY2V0aW1pbmdidWZm
ZXJmdWxsOwogCiAgICAgLy8gU2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvQ1ItdXNlci10
aW1pbmctMjAxMjA3MjYvCiAjaWYgZGVmaW5lZChFTkFCTEVfVVNFUl9USU1JTkcpICYmIEVOQUJM
RV9VU0VSX1RJTUlORwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKaW5k
ZXggMzJkYjdjZmU1NjM1Y2RmMzJjMzA1ZWM0ZWFjMDk1MDFlNWY4M2VlNS4uMzc0ZTE0MjkzMTgz
Zjk3M2ZhYTc4NDE4MWRmZDU5ZTIzMDk1YjVhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnkuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAj
aW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYm
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC02OSw0ICs2OSw0IEBAIGRvdWJsZSBQZXJmb3JtYW5j
ZUVudHJ5OjpkdXJhdGlvbigpIGNvbnN0CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2Vu
ZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUp
CisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VFbnRyeS5oCmluZGV4IDEyOWEyNDY0MGNjNGQyYTM1Y2FlYWI2YmEyZjFhZmM4MTg0ZjM2MmIu
LmNmMzdjMGU1NjlkZDc0ZjJhNTBjZjljZjJkMmE5ZjA0ZDZkNWM5ODQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZv
cm1hbmNlRW50cnlfaAogI2RlZmluZSBQZXJmb3JtYW5jZUVudHJ5X2gKIAotI2lmIEVOQUJMRShX
RUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdF
Ql9USU1JTkcpCiAKICNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+CkBAIC03MSw1ICs3MSw1IEBAIHByaXZhdGU6CiAKIH0KIAotI2VuZGlmIC8vICFF
TkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlm
IC8vICFFTkFCTEUoV0VCX1RJTUlORykKICNlbmRpZiAvLyAhZGVmaW5lZChQZXJmb3JtYW5jZUVu
dHJ5X2gpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnku
aWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAppbmRleCA5YmNh
ZjRjMzQwMTg5ODU1YTJiNjRkNmYwNWIyOThjY2MxZjcyM2U2Li5mMzdlMmEzY2JhNDMyNDEzYTBh
ZjdiYmM0NmE4ZDVmMTQ0YmZhZjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9o
Zy93ZWJwZXJmL3Jhdy1maWxlL3RpcC9zcGVjcy9QZXJmb3JtYW5jZVRpbWVsaW5lL092ZXJ2aWV3
Lmh0bWwKIFsKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBF
UkZPUk1BTkNFX1RJTUVMSU5FLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcs
CiAgICAgQ3VzdG9tVG9KU09iamVjdCwKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnkgewog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKaW5kZXggZDlmYTA1NTc3ZGQ1NzllOWNhODI3
NGRkNzhiNGFjZTM0YmM3OTI4Yi4uYzAzNTkyOGIzMWM2ZGU5ZDYxZDg2MzExNjMxZDMzNTZmYzNi
ODI2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlz
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAK
QEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3Jt
YW5jZUVudHJ5TGlzdC5oIgogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJG
T1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgIlBl
cmZvcm1hbmNlRW50cnkuaCIKIApAQCAtNzUsNCArNzUsNCBAQCB2b2lkIFBlcmZvcm1hbmNlRW50
cnlMaXN0Ojpzb3J0KCkKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5B
QkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAv
LyBFTkFCTEUoV0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaAppbmRleCA5N2EyMTJkZDZmZDA1NDQ3NjZlZDc1NjNjMTc1NmI5MTM2ZDdmZWQ2Li5k
MmM0MWY1YWQ0N2YxOGFiMTEzMGQzYzA1NWFlMzUxMTAyYjBjNzkzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVm
IFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKICNkZWZpbmUgUGVyZm9ybWFuY2VFbnRyeUxpc3RfaAog
Ci0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkK
KyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTY0LDUgKzY0LDUgQEAgcHJpdmF0ZToKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAm
JiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gIUVOQUJMRShXRUJfVElN
SU5HKQogI2VuZGlmIC8vIFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKaW5kZXggN2UyNWE4NWNlNmM4OTM4NGVmZTU1
MmY4Mzc2OTI1OTM1ODAyODhmOS4uMTgwNjZjYzM3ZTU3M2YyMGUxYTkwNWMzODhiMDIxODE4ZWI3
OTM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlz
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwK
QEAgLTMyLDEwICszMiw5IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0
aW9uYWw9V0VCX1RJTUlORywKLSAgICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwK
KyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nLAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZUVudHJ5TGlzdCB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogICAgIGdldHRlciBQZXJmb3Jt
YW5jZUVudHJ5IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwotCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCAzMWI4OTcx
MzdmNTExZTQ1Zjc3NTdlOTU2YzI2ZjM3NTg3YWI2YTYwLi41YmI2MTQwOTcxOThmZjU2MjFjNTFj
ODY5NmE2ZDI3OTJkMGYwNjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMyLDggKzMyLDYgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAKLSNpZiBFTkFC
TEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJE
b2N1bWVudExvYWRUaW1pbmcuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgpAQCAtMTk5
LDUgKzE5NywzIEBAIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXNvdXJjZVRp
bWVUb0RvY3VtZW50TWlsbGlzZWNvbmRzKGludCBkZWx0YU1pCiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCmluZGV4IDk5ZGZjNWJj
ZGNkYzc5ZTM1M2U5NDkzNmM0ODI4NTM2MTdjNWY1M2YuLjM3YjVhZTkxZWRmMDc1YWY0OWIyMDU3
OTk1NDM4ZGQ4ZWY2YWE0ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5oCkBAIC0zMiw4ICszMiw2IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmdfaAogI2RlZmluZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nX2gKIAot
I2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0KICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NS
ZWZQdHIuaD4KQEAgLTg1LDYgKzgzLDQgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gRU5B
QkxFKFJFU09VUkNFX1RJTUlORykKLQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmdfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaWRsCmluZGV4IDNmMDExYjIzYjA1N2ExYWUwZTYzNGVmMTk0M2IxMDFmY2U2
ODY2ZDMuLjNmMzA5ZTNiYTJkYjY0YjQ0OTVlYWU2MTgwODIyOTllOWI2MmQ0NTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAt
MzAsNyArMzAsNyBAQAogCiAvLyBTZWU6IGh0dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9y
YXctZmlsZS90aXAvc3BlY3MvUmVzb3VyY2VUaW1pbmcvT3ZlcnZpZXcuaHRtbAogWwotICAgIENv
bmRpdGlvbmFsPVJFU09VUkNFX1RJTUlORywKKyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNl
VGltaW5nCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIDogUGVyZm9ybWFu
Y2VFbnRyeSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpbml0aWF0b3JUeXBl
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggNzJiYmI5Mzk2NzU1YjU3
NTU5YTlhOTFhMDRkN2M5ZGRiYTZmMDg1My4uZThkZDcxM2YzOWRkN2Q4ZGYxOWI5ZWE5YWUwOGJk
MTRjNDNhZGM4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMzMzMyw0
ICszMzMzLDkgQEAgdm9pZCBJbnRlcm5hbHM6OnNldExpbmtQcmVsb2FkU3VwcG9ydChib29sIGVu
YWJsZSkKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldExp
bmtQcmVsb2FkRW5hYmxlZChlbmFibGUpOwogfQogCit2b2lkIEludGVybmFsczo6c2V0UmVzb3Vy
Y2VUaW1pbmdTdXBwb3J0KGJvb2wgZW5hYmxlKQoreworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGVuYWJsZSk7Cit9
CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4IGU5MDA5ZWZhMWYwZjRhMzQ0
M2IxZTkwZjJkMTJjZTFhMWYzNjAyMDMuLjdkN2ZiZDRjNTk1NzY4NzY2YmFhMDFlOThkODRiNzQ3
NTczNDQ1OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApAQCAtNDcyLDYgKzQ3Miw3
IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lkIHNldFZpZXdwb3J0Rm9yY2VBbHdheXNVc2VyU2Nh
bGFibGUoYm9vbCk7CiAgICAgdm9pZCBzZXRMaW5rUHJlbG9hZFN1cHBvcnQoYm9vbCk7CisgICAg
dm9pZCBzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbCk7CiAKIHByaXZhdGU6CiAgICAgZXhw
bGljaXQgSW50ZXJuYWxzKERvY3VtZW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKaW5kZXggZjc4ZDU2NzlmOWFlNWY4ZWQ3MmIzMDYxNzk2NGY3YWU4MjY2NzEwMC4uZjM3YjQ3
Y2YxZjFhZjRmMjkzZjE1NWY2ODkwZmRkYzVlYzQ1MDE3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmlkbApAQCAtNDQ2LDQgKzQ0Niw1IEBAIGVudW0gQXV0b0ZpbGxCdXR0b25UeXBl
IHsKIAogICAgIHZvaWQgc2V0Vmlld3BvcnRGb3JjZUFsd2F5c1VzZXJTY2FsYWJsZShib29sZWFu
IHNjYWxhYmxlKTsKICAgICB2b2lkIHNldExpbmtQcmVsb2FkU3VwcG9ydChib29sZWFuIHNjYWxh
YmxlKTsKKyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sZWFuIHNjYWxhYmxl
KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9T
b3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggY2Q0OTM4M2FhZWJkM2FhZDg5
MDAzMDk2OWE3ZTczNzQ3NWUxOGU2OS4uZjVlMTE2ZTc5OTE5ZjVlMGNjY2I3OWU5NzMxNjcxYzVh
MmIxOGRmMSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisr
KyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtMTU4LDcgKzE1OCw2IEBA
IG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX05PVElGSUNBVElPTlMgIlRvZ2dsZSBEZXNrdG9wIE5vdGlmaWNhdGlvbnMgU3VwcG9ydCIg
UFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX09SSUVOVEFUSU9O
X0VWRU5UUyAiVG9nZ2xlIE9yaWVudGF0aW9uIEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikK
ICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUERGS0lUX1BMVUdJTiAiVG9nZ2xlIFBE
RktpdCBwbHVnaW4gc3VwcG9ydCIgUFJJVkFURSBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJ
TkUoRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FICJUb2dnbGUgUGVyZm9ybWFuY2UgVGltZWxp
bmUgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X1BPSU5URVJfTE9DSyAiVG9nZ2xlIHBvaW50ZXIgbG9jayBzdXBwb3J0IiBQUklWQVRFIE9GRikK
ICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUFJPWElNSVRZX0VWRU5UUyAiVG9nZ2xl
IFByb3hpbWl0eSBFdmVudHMgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElP
Tl9ERUZJTkUoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCAiVG9nZ2xlIHB1YmxpYyBzdWZmaXgg
bGlzdCBzdXBwb3J0IiBQUklWQVRFIE9GRikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyMzY2ZTNhZjZmN2E1ZTM3MDVhN2Mw
MzA2ZGQ3MmQyMzZhMDIxYjBmLi5hZTk1OWE4ZTgxNDlmNWJiZDYwMjNmNGZmMDdlYjgwOThhYmUx
ZmU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2
QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNvdXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1l
IGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZGVkIHRlc3RzIHRoYXQgbWFrZSBzdXJlIFJlc291cmNlVGltaW5nIEFQSXMgYXJlIGV4cG9zZWQg
YW5kIHRoYXQgcmVzb3VyY2VzCisgICAgICAgIHNob3cgdXAgYXMgZW50cmllcyBpbiB0aGUgcGVy
Zm9ybWFuY2UgdGltZWxpbmUuCisKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNl
LXJlc291cmNlLXRpbWluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3BlcmZv
cm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmctZW50cmllcy5odG1sOiBBZGRlZC4KKwogMjAxNi0wNC0xOCAgTWFydGluIFJv
Ymluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gUG9zc2libGUg
b2ZmLWJ5LW9uZSBpbiBoeXBoZW5hdGlvbiBjb2RlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGlt
aW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjg0ZTUyZDNmMWMzOWE3NWE2NTg5MzZiZTQ1ZDg5MjA2MDY0MGY1ODQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVy
Zm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ2IEBACitU
aGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNoYWJsZSBm
cm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0LCBhbG9uZyB3aXRoIHRoZWlyIHR5cGVz
LgorCit3aW5kb3cucGVyZm9ybWFuY2UgW29iamVjdCBQZXJmb3JtYW5jZV0KK3dpbmRvdy5wZXJm
b3JtYW5jZS5hZGRFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5k
aXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtv
YmplY3QgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRp
b24uVFlQRV9CQUNLX0ZPUldBUkQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0
aW9uLlRZUEVfTkFWSUdBVEUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9u
LlRZUEVfUkVMT0FEIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBF
X1JFU0VSVkVEIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5yZWRpcmVj
dENvdW50IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlIFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uubm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS5vbndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5yZW1vdmVFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50
aW1pbmcgW29iamVjdCBQZXJmb3JtYW5jZVRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcuY29ubmVjdEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25uZWN0
U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29tcGxldGUgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5k
IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUNvbnRlbnRMb2FkZWRFdmVu
dFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUludGVyYWN0aXZl
IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUxvYWRpbmcgW251bWJlcl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tYWluTG9va3VwRW5kIFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UudGltaW5nLmRvbWFpbkxvb2t1cFN0YXJ0IFtudW1iZXJdCit3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nLmZldGNoU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcubG9hZEV2ZW50RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5n
LmxvYWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLm5hdmln
YXRpb25TdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVjdEVu
ZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVjdFN0YXJ0IFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlcXVlc3RTdGFydCBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXNwb25zZUVuZCBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZy5yZXNwb25zZVN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uu
dGltaW5nLnNlY3VyZUNvbm5lY3Rpb25TdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZy51bmxvYWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWlu
Zy51bmxvYWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uud2Via2l0Q2xl
YXJSZXNvdXJjZVRpbWluZ3MgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdEdl
dEVudHJpZXMgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXNC
eU5hbWUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXNCeVR5
cGUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdFNldFJlc291cmNlVGltaW5n
QnVmZmVyU2l6ZSBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nIFtwcmludGVk
IGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmddCit3aW5kb3cucGVyZm9ybWFuY2Uu
bmF2aWdhdGlvbiBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlv
bl0KK3dpbmRvdy5wZXJmb3JtYW5jZSBbc3RyaW5nXQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2Ut
dGltaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWI3OTMxY2M1
YTBjNjBhZTE3ODYzM2E3YmM0NTU1MjYxZTFkNmMxMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmcuaHRtbApAQCAtMCwwICsxLDEwNCBAQAorPHA+VGhpcyB0ZXN0IGR1bXBzIGFs
bCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSByZWFjaGFibGUgZnJvbSB0aGUgd2luZG93LnBl
cmZvcm1hbmNlIG9iamVjdCwgYWxvbmcgd2l0aCB0aGVpciB0eXBlcy48L3A+Cis8aHI+Cis8cHJl
IGlkPSJwcmUiPjwvcHJlPgorCis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
IHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCitpZiAod2luZG93LmludGVybmFscykKKyAgICBp
bnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KHRydWUpOworICAgIAordmFyIGxvZ0J1
ZmZlciA9IFtdOworZnVuY3Rpb24gbG9nKHMpCit7CisgICAgbG9nQnVmZmVyLnB1c2gocyk7Cit9
CisKK3ZhciBwcmUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncHJlJyk7CitmdW5jdGlvbiBm
bHVzaExvZygpCit7CisgICAgdmFyIGxvZ01lc3NhZ2UgPSBsb2dCdWZmZXIuam9pbigiIik7Cisg
ICAgcHJlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGxvZ01lc3NhZ2UpKTsK
K30KKworZnVuY3Rpb24gdHJ5RXZhbChzdHJpbmcpCit7CisgICAgdHJ5IHsKKyAgICAgICAgcmV0
dXJuIGV2YWwoc3RyaW5nKTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIHJldHVybiBuZXcg
U3RyaW5nKCJDYXVnaHQgZXhjZXB0aW9uOiAiICsgZSk7CisgICAgfQorfQorCitmdW5jdGlvbiB0
eXBlT2ZOdWxsQXdhcmUodmFsdWUpCit7CisgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0
IiAmJiB2YWx1ZSA9PSBudWxsKSAvLzsKKyAgICAgICAgcmV0dXJuICJudWxsIjsKKyAgICByZXR1
cm4gdHlwZW9mIHZhbHVlOworfQorCitmdW5jdGlvbiB0eXBlU3RyaW5nTnVsbEF3YXJlKHZhbHVl
KQoreworICAgIHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworICAgIHJl
dHVybiB2YWx1ZVR5cGUgPT0gIm9iamVjdCIKKyAgICAgICAgPyBPYmplY3QucHJvdG90eXBlLnRv
U3RyaW5nLmNhbGwodmFsdWUpCisgICAgICAgIDogIlsiICsgdmFsdWVUeXBlICsgIl0iOworfQor
CitmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1ZU5hbWUpCit7CisgICAgdmFyIHZhbHVlID0gdHJ5RXZh
bCh2YWx1ZU5hbWUpOworICAgIHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUp
OworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHZhcmlhYmxlcwor
ICAgIGlmICh2YWx1ZSA9PSBsb2dCdWZmZXIgfHwgdmFsdWUgPT0gcHJlKQorICAgICAgICByZXR1
cm47CisKKyAgICAvLyBEb24ndCB0YWludCB0aGUgdGVzdCB3aXRoIG91ciBvd24gcHJvcGVydGll
cworICAgIGlmICgvX192aXNpdGVkQnlMb2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkgfHwgL19f
bmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJl
dHVybjsKKworICAgIC8vIFdvcmsgYXJvdW5kIEZpcmVmb3ggaW5maW5pdGUgcmVjdXJzaW9uCisg
ICAgaWYgKC9cLlswLTldLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAg
IC8vIEF2b2lkIGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVj
dCIgJiYgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fKSB7IC8vOworICAgICAgICBsb2codmFs
dWVOYW1lICsgIiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRC
eUxvZ1ZhbHVlX18gKyAiXVxuIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2co
dmFsdWVOYW1lICsgIiAiICsgdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKwor
ICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVk
QnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAgICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxv
Z1ZhbHVlX18gPSB2YWx1ZU5hbWU7CisgICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVl
TmFtZSk7CisgICAgfQorfQorCitmdW5jdGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0
TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkgPSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVy
dHkgaW4gb2JqZWN0KSB7CisgICAgICAgIGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAg
ICBhcnJheS5zb3J0KCk7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkr
KykgeworICAgICAgICB2YXIgcHJvcGVydHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUo
b2JqZWN0TmFtZSArICIuIiArIHByb3BlcnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5k
b3cucGVyZm9ybWFuY2UnKTsKK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgPSAndGltaW5nIGlz
IG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZycp
Oword2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gPSAnbmF2aWdhdGlvbiBpcyBub3QgcmVw
bGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJyk7Cit3
aW5kb3cucGVyZm9ybWFuY2UgPSAncGVyZm9ybWFuY2UgaXMgcmVwbGFjZWFibGUnOworbG9nVmFs
dWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOworZmx1c2hMb2coKTsKK2lmICh3aW5kb3cuaW50ZXJu
YWxzKQorICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3Bl
cmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVu
dHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUxMjg3N2IwZWZjZTc2NGViMWNkZjUzZGVj
ZTlmN2MwYTQzYzY1MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorUEFTUyBwZXJmb3JtYW5jZS53ZWJraXRHZXRFbnRyaWVzQnlUeXBlKCdy
ZXNvdXJjZScpLmxlbmd0aCBpcyAyCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2Ut
dGltaW5nLWVudHJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MmJjMDEyYzYzNTYwZThiYzdkMjc1Yjg3
NjdjNTNjYzkzZTg0OTY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sCkBA
IC0wLDAgKzEsMjMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+
CitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdT
dXBwb3J0KHRydWUpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNwYW4gaWQ9ImUiPjwv
c3Bhbj4KKzxzcGFuIGlkPSJmIj48L3NwYW4+Cis8c2NyaXB0Pgord2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICBzaG91bGRCZSgicGVyZm9ybWFuY2Uud2Vi
a2l0R2V0RW50cmllc0J5VHlwZSgncmVzb3VyY2UnKS5sZW5ndGgiLCAiMiIpOworICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFJlc291cmNlVGlt
aW5nU3VwcG9ydChmYWxzZSk7Cit9KTsKKworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggMWI0ZjVlNmU5MDk3NGMyNmYz
MzhmZGQyZDQ4ZThiMDQyN2FjNzAwNC4uMDViYThmN2I2ZDAzYjFiYjIwNDkwYTY1YTBkODlkZjcy
NzdjMGE5NCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDEyIEBACisyMDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAg
IE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9XZWJLaXRG
ZWF0dXJlcy5jbWFrZTogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFn
LgorCiAyMDE2LTA0LTE4ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgog
CiAgICAgICAgIFtKU0NPbmx5XSBJbXBsZW1lbnQgUnVuTG9vcCBhbmQgcmVtb3ZlIGdsaWIgZGVw
ZW5kZW5jeQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277617</attachid>
            <date>2016-04-28 06:44:40 -0700</date>
            <delta_ts>2016-04-28 07:01:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160428154509.patch</filename>
            <type>text/plain</type>
            <size>52269</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MjdiNWY0MDNkOTRlNzcwYzVkZjFlNWVkNWY1NmFiZTM5YzFkZjYzLi4yNjYwZWYyZWI1MjUwN2Fm
YTQzYjg5NGRmMDczOWMzZDg1YWJjZjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZGVkIFBlcmZvcm1hbmNlRW50cnksIFBlcmZvcm1hbmNlRW50cnlMaXN0
IGFuZCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIGFzIHByb3BlcnR5IG5hbWVzLgorCiAyMDE2
LTA0LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgR2V0
dGVyU2V0dGVyIHN0cnVjdHVyZSBuZWVkcyBhIGdsb2JhbE9iamVjdC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0
NDllZTkwMmU5MTMyYmQ4NDg2MDgzMTA1ZmM2NzU3ZTg0MDI2MGQ2Li43ZmYzZmUyYWM0ZmI0MjMz
ZTZhNzU4N2Q4MTllZDhmMTFjOTY2MTBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKK1lv
YXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNvdXJjZVRpbWluZyBi
ZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1vdmUgdGhlIFJlc291cmNlVGltaW5nIEFQSSBmcm9tIGJlaW5nIGJlaGlu
ZCBhIGJ1aWxkIHRpbWUgZmxhZyB0byBiZSBiZWhpbmQgYW4KKyAgICAgICAgb2ZmLWJ5LWRlZmF1
bHQgcnVudGltZSBmbGFnLCB0aGF0IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcgaW50ZXJuYWxzLgor
CisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9y
bWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvcGVy
Zm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbAorCisgICAg
ICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogQWRkZWQgaWRsIGZpbGVzIGZvciBQZXJmb3JtYW5j
ZUVudHJ5LCBQZXJmb3JtYW5jZUVudHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZGVkIHRo
ZSB2YXJpb3VzIFBlcmZvcm1hbmNlKiBmaWxlcyB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBi
aW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOiBBZGRlZCBSZXNvdXJj
ZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAgICAqIGJpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNvdXJjZVRpbWluZyBh
cyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNldFJlc291cmNlVGltaW5nRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpyZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQgI2lmIGZvciBSZXNv
dXJjZVRpbWluZy4gQWRkZWQgYnVpbGQgZmxhZyBhcm91bmQgVXNlclRpbWluZyByZWxhdGVkIGgg
ZmlsZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogRGVsZXRlZC4KKyAgICAgICAgKiBsb2Fk
ZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNl
VGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9h
ZE5vdGlmaWVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGlt
ZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNo
V2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VM
b2FkZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0aCBydW50aW1lIGZs
YWcuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmV2YWxpZGF0ZVJl
c291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkUmVz
b3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OnN0b3JlUmVz
b3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZUxvYWRlci5oOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRpbWluZy4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlLmNwcDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcu
CisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6UGVyZm9ybWFuY2UpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUp
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJp
ZXNCeU5hbWUpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuaDogUmVtb3Zl
ICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5pZGw6
IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJ
TUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5Lmg6IFJl
bW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdl
L1BlcmZvcm1hbmNlRW50cnkuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBi
dWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VF
bnRyeUxpc3QuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcu
CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oOiBSZW1vdmUgdGhlIFBFUkZP
Uk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5TGlzdC5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcg
d2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmNwcDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAg
KiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9U
SU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaWRsOiBSZXBsYWNlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZyB3aXRoIHJ1bnRp
bWUgZmxhZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0
aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6
OnNldFJlc291cmNlVGltaW5nU3VwcG9ydCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMu
aDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiB0
ZXN0aW5nL0ludGVybmFscy5pZGw6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VU
aW1pbmcuCisKIDIwMTYtMDQtMjggIEpvYW5tYXJpZSBEaWdncyAgPGpkaWdnc0BpZ2FsaWEuY29t
PgogCiAgICAgICAgIEFYOiBbQVRLXSBXZSBuZWVkIHRvIGJlIHNtYXJ0ZXIgYWJvdXQgZmxhdHRl
bmluZyBhbmQgdGhlIGFjY2Vzc2libGUgdGV4dCBpbXBsZW1lbnRhdGlvbgpAQCAtNTE5Miw3ICs1
MjQ1LDcgQEAKICAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0ay9BY2Nlc3NpYmlsaXR5T2JqZWN0
QXRrLmNwcDoKICAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmplY3Q6OmFjY2Vzc2li
aWxpdHlQbGF0Zm9ybUluY2x1ZGVzT2JqZWN0KToKIAotMjAxNi0wNC0xOCAgQnJhZHkgRWlkc29u
ICA8YmVpZHNvbkBhcHBsZS5jb20+CisyMDE2LTA0LTI4ICAyMDE2LTA0LTE4ICBCcmFkeSBFaWRz
b24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBNb2Rlcm4gSURCIChCbG9iIHN1cHBv
cnQpOiBXaGVuIHJlYWRpbmcgQmxvYnMgZnJvbSB0aGUgZGF0YWJhc2UsIGdyYW50IHRoZSBOZXR3
b3JraW5nIHByb2Nlc3Mgc2FuZGJveCBhY2Nlc3MgdG8gdGhlIGZpbGVzLgogICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2NjQwCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAppbmRleCBjNDRlNTgy
ZDdhMjY2YTc0YTE1NTExODgzNjVkMzNlOTY3N2VjZWE4Li5kNWIzMDNmMTRjNzNlODFlMGU1NDQ1
YjMyNmQwNjM3ZDk5MmE0OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTcxLDYgKzcxLDkgQEAKICAgICBtYWNybyhOdW1i
ZXIpIFwKICAgICBtYWNybyhOdW1iZXJGb3JtYXQpIFwKICAgICBtYWNybyhPYmplY3QpIFwKKyAg
ICBtYWNybyhQZXJmb3JtYW5jZUVudHJ5KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VFbnRyeUxp
c3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKSBcCiAgICAgbWFjcm8o
UHJvbWlzZSkgXAogICAgIG1hY3JvKFByb3h5KSBcCiAgICAgbWFjcm8oUmFuZ2VFcnJvcikgXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDIwYTc5MDQ3YjY4NDEwOGY2MzE0ZDc5
YTk1YTdjNDI4N2YxOTlmNS4uYzNhMTJlNGM2NDZhNjM5Njc0ZWI5NzY3Y2IyNGUyY2YxYTA1Mjk0
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC01MTgsNyArNTE4LDEwIEBAIE5P
Tl9TVkdfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvcGFnZS9Mb2NhdGlvbi5pZGwg
XAogICAgICQoV2ViQ29yZSkvcGFnZS9OYXZpZ2F0b3IuaWRsIFwKICAgICAkKFdlYkNvcmUpL3Bh
Z2UvUGVyZm9ybWFuY2UuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwgXAog
ICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsIFwKKyAgICAkKFdl
YkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29y
ZSkvcGFnZS9QZXJmb3JtYW5jZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9TY3Jl
ZW4uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvV2ViS2l0UG9pbnQuaWRsIFwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwZjE4
ZTIyZWU5YTZiZmZmNmU5NGUzMjJiNDQ3ZmMwOTU4Y2M5ZGMwLi40NWM0ZjM5MjUwNWY1MjAxNDg4
N2I3ODkyNGM2MTY2ZmQ5NjM4NTZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTkxLDYgKzU5OTEsMTQgQEAKIAkJQ0EzQkY2
N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyog
U2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5
RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi87IH07CiAJ
CUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRTE0NjQ0MUYw
MDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovOyB9OworCQlDQjM4RkQ0QjFDQ0NG
MzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0QTFDQ0NGMkREMDA1OTJBM0YgLyogUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUxMUNDRjkzODkwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRy
eS5jcHAgKi87IH07CisJCUNCMzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNl
RW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENC
MzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCAqLzsgfTsKKwkJ
Q0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEYxQ0NG
OTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovOyB9OworCQlDQjM4
RkQ1NDFDQ0Y5MzlFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTAxQ0NGOTM3RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLzsgfTsKKwkJQ0IzOEZENTcxQ0Qy
MUUyQTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1NTFDRDIxRDVCMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLzsgfTsKKwkJQ0IzOEZENUExQ0Qy
MzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1ODFDRDIzMTQ1MDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAqLzsgfTsKKwkJQ0IzOEZE
NUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTkxQ0QyMzE0
NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oICovOyB9OwogCQlDQjhD
RjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyog
TWljcm90YXNrcy5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZp
Y2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUxNTE1RjYxMzA2MDA0
OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29u
dHJvbGxlci5jcHAgKi87IH07CkBAIC0xMzk1Niw2ICsxMzk2NCwxNCBAQAogCQlDQTNCRjY3RDEw
RDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2NDQxRjAwMEMyNDVC
MCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFuY2VFbnRyeS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDREMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBK
U1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4
RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Bl
cmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Iz
OEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQjhDRjAxNTFBOTM0QjQz
MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0ND
MkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODA1OCw2ICsxODA3NCw3IEBACiAJCQkJ
OEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmggKi8sCiAJCQkJOEE4NDRE
MDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmlkbCAqLywKIAkJCQk4NkJFMzNGQjE1
MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCUNCMzhGRDRBMUND
Q0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKIAkJCQk4NkJFMzNGQzE1
MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5pZGwgKi8sCiAJCQkJODZCRTMzRkQx
NTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLywKIAkJCQk4NkJF
MzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLywKQEAgLTIy
MzEzLDYgKzIyMzMwLDcgQEAKIAkJCQk4M0YxMjA2QTFCOEMxMDM2MDBENzVGNjMgLyogSlNOb2Rl
RmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3QzkxQTM4RDFCNDk4QUJFMDAzRjlFRkEgLyogSlNO
b2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdDOTFBMzhFMUI0OThBQkUwMDNGOUVGQSAvKiBKU05v
ZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZv
cm1hbmNlRW50cnlDdXN0b20uY3BwICovLAogCQkJCTkzQjcwRDRGMDlFQjBDN0MwMDlEODQ2OCAv
KiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwICovLAogCQkJCTkzQjcwRDUwMDlFQjBDN0Mw
MDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCAqLywKIAkJCQk0MTI5REY4MzFC
QjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25zdHJ1Y3RvcnMuY3Bw
ICovLApAQCAtMjI2NDksOCArMjI2NjcsMTQgQEAKIAkJCQlBOUQyNDdGNjBENzU3RTMzMDBGREY5
NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlFNTFBODFERTE3Mjk4RDc3MDBCRkNBNjEgLyog
SlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4MTAwOEFDRkQxIC8qIEpT
UGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJm
b3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovLAorCQkJCUNCMzhGRDUwMUNDRjkzN0UwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCiAJCQkJOEE5QTU4NkUxMUU4NEMzNTAw
OEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJCQk4QTlBNTg2RjEx
RTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKKwkJCQlDQjM4
RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAq
LywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUxODlFMTVBNjAwMDE5QUUyIC8qIEpTUGVyZm9ybWFu
Y2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1ODc3MTFFODRDOTgwMDhBQ0ZEMSAvKiBKU1BlcmZv
cm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNFQzAxQzAwQzI3NERERDAwOUY0RUM5IC8qIEpTU2Ny
ZWVuLmNwcCAqLywKQEAgLTI1NTU2LDYgKzI1NTgwLDcgQEAKIAkJCQkyRDI5RUNDQTE5MkYxRjFE
MDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFjLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUNDODE5MkVDQzgzMDA5ODRCNzggLyogRGlzcGxheVJl
ZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTIxQ0NGOTM5
NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0Q1
MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERpc3BsYXlTbGVlcERpc2FibGVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJDMDAyNkNFNzIgLyogRGlzcGxheVNsZWVwRGlzYWJs
ZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwOTExMkIwMjZGNzAwQzFBMzU5IC8q
IERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywKQEAgLTI3NjkxLDYgKzI3NzE2LDcgQEAKIAkJCQlC
Q0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRlcldpZGdldC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVE
QTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5
MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThCRTk4NDkwMDZDRUJDQyAvKiBSZXBsYXlDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4MDIwLDYgKzI4MDQ2LDcgQEAKIAkJCQlBOEVBODAw
QTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTQxQ0NGOTM5RTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0REVBQTE4MTdBOTNEQzMw
MDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2
OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxlVmlzdWFsRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVyLmggaW4gSGVhZGVy
cyAqLywKQEAgLTI5MjAyLDYgKzI5MjI5LDcgQEAKIAkJCQlCMjc1MzU3NzBCMDUzODE0MDAyQ0U2
NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk0M0VERDY3RTFCNDg1REJGMDA2
NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVycy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRy
eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUzNDE4NjRENUFGMDA4NDNCMTAgLyogQ29t
bWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODRGRTJCMTg2Mzg3MEYw
MDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk2
NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAg
LTMxMjIwLDYgKzMxMjQ4LDcgQEAKIAkJCQlCQzk2REI0NjBGM0E4ODIyMDA1NzNDQjMgLyogUmVu
ZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFQTQ4NjUwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0U0NDEz
MzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuY3BwIGluIFNvdXJjZXMgKi8s
CisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzkyRjE0NDBBRDE4NUZFMDA2OTFCRDQgLyog
UmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0VBNDg2RDA5N0Q5MzAyMDA5
NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxzTWFya2VyLmNwcCBp
biBTb3VyY2VzICovLApAQCAtMzE5OTYsNiArMzIwMjUsNyBAQAogCQkJCTQ0NEQ0RTIzMEY3MDhC
MkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MubW0gaW4gU291cmNlcyAqLywKIAkJ
CQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMgLyogV2ViQ29yZVZpZXcubSBpbiBTb3VyY2VzICov
LAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlBREY1MCAvKiBXZWJEZWJ1Z2dlckFnZW50LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAvKiBKU1BlcmZvcm1h
bmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkUwRDg0RUIxMDQ4NDM2RTAw
MUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMjI1QTE2QjYwRDVDMTFF
OTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRDNGM0Qz
NkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwIGluIFNvdXJj
ZXMgKi8sCkBAIC0zMjA3NSw2ICszMjEwNSw3IEBACiAJCQkJQjEwQjY5ODExNDBDMTc0MDAwQkMx
QzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDgyMDMxMTEz
OTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93QW5pbWF0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5cGUuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRy
eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3MDBGOTkyRTAgLyogV2hl
ZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTE5NTE2QjFCNjU5OEQyMDBERjZFRUYg
LyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJFRUVFNTVD
MUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXJNYWMubW0gaW4gU291cmNl
cyAqLywKQEAgLTMyMTEyLDYgKzMyMTQzLDcgQEAKIAkJCQkwMEI5MzE4OTEzQkE4REJDMDAzNUE5
NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTAw
QjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNjb3BlLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9y
bWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM3NzJDNDYwQzRFQjJDNjAw
ODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUExMzZBMDBD
MTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RGRDQ4RjBFMzA1MjkwMDA5RDEwQUQgLyogWE1MSHR0
cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAppbmRl
eCAxY2Y0YWE3OGNkNzUzZDA3MGFkNWJlNDE4MTlhNDAyZDQ4Mzk0YjIwLi4wOTYyNmYyNWQzYjg1
YmM2NDEzZmM5ZWEzNjE2MGE4OGEzM2UwMzczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKQEAgLTY1
LDYgKzY1LDcgQEAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6UnVudGltZUVuYWJsZWRGZWF0dXJl
cygpCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKICAgICAsIG1faXNJ
bmRleGVkREJXb3JrZXJzRW5hYmxlZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jlc291cmNl
VGltaW5nRW5hYmxlZChmYWxzZSkKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICwgbV9p
c01lZGlhU3RyZWFtRW5hYmxlZCh0cnVlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDVk
NjQ2ODY1MDI2MWIxNzA3OGNlYjNjNTIwNjg5MTNlNTA1MDJlMGEuLmIxYmE2ZjNlY2MwMTViZTY5
NDZhODg0NzFiYTZlZWQ0MzZlMDAyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yMDEsNiArMjAx
LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2wg
aXNFbmFibGVkKSB7IG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0K
ICAgICBib29sIHBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNQ
bHVnaW5SZXBsYWNlbWVudEVuYWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdF
bmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgPSBpc0Vu
YWJsZWQ7IH0KKyAgICBib29sIHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJu
IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1FUEFEKQogICAg
IHZvaWQgc2V0R2FtZXBhZHNFbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZUdhbWVwYWRz
RW5hYmxlZCA9IGFyZUVuYWJsZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxlZCgpIGNvbnN0
IHsgcmV0dXJuIG1fYXJlR2FtZXBhZHNFbmFibGVkOyB9CkBAIC0yNjIsNiArMjY1LDcgQEAgcHJp
dmF0ZToKICAgICBib29sIG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lz
TGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9vbCBtX2lzUGx1
Z2luUmVwbGFjZW1lbnRFbmFibGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxl
ZDsKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wgbV9pc0luZGV4ZWRE
QkVuYWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZv
cm1hbmNlRW50cnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAppbmRleCBlYmRkMzdmOGM0YzIxN2IzOTkxZmVkMzBjODU3
NDc5NzYxZWQyMzAzLi44ZjExZTcwMjU3ZmRjMTE3NTUxYjA3YmZjOGM3YmMyODhkZGNhYzA2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlD
dXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VF
bnRyeUN1c3RvbS5jcHAKQEAgLTMwLDEzICszMCwxMyBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KICNpbmNsdWRlICJKU1BlcmZv
cm1hbmNlRW50cnkuaCIKIAogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2lmIEVOQUJMRShV
U0VSX1RJTUlORykKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIkpT
UGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZU1lYXN1cmUuaCIKQEAgLTUxLDEwICs1MSw4IEBAIEpTVmFsdWUgdG9KUyhFeGVj
U3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5jZUVudHJ5
KiBlbnRyCiAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVsbCgpOwogCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzUmVzb3VyY2UoKSkKICAg
ICAgICAgcmV0dXJuIHdyYXA8SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmpl
Y3QsIHN0YXRpY19jYXN0PFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcqPihlbnRyeSkpOwotI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKGVudHJ5LT5pc01hcmsoKSkK
QEAgLTY4LDUgKzY2LDMgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9NR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNw
cAppbmRleCBjZGM0NTlmMmJmYThhMWJlNjJhZmVlMzNjNGIwYmU3NzFjYjYxYTFkLi41ZjVlZmQ4
NDE4YTM3ZWEwMmRmYWI2MzUzYjAyNWE4YTYwNmZhYmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcApAQCAtNDUsNiArNDUsNyBA
QAogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3Iu
aCIKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NoZW1lUmVnaXN0cnkuaCIKICNpbmNsdWRlICJTZWN1
cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9hZGVyLmgiCkBAIC0zODUsOSAr
Mzg2LDggQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2VjdXIKICAgICAgICAgfQogCiAgICAgICAgIENh
Y2hlZFJlc291cmNlUmVxdWVzdCBuZXdSZXF1ZXN0KHJlcXVlc3QsIG9wdGlvbnMpOwotI2lmIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgICAgIG5ld1JlcXVlc3Quc2V0SW5pdGlhdG9yKG1f
b3B0aW9ucy5pbml0aWF0b3IpOwotI2VuZGlmCisgICAgICAgIGlmIChSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAg
ICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25zLmluaXRpYXRvcik7CiAgICAg
ICAgIEFTU0VSVCghbV9yZXNvdXJjZSk7CiAgICAgICAgIG1fcmVzb3VyY2UgPSBtX2RvY3VtZW50
LmNhY2hlZFJlc291cmNlTG9hZGVyKCkucmVxdWVzdFJhd1Jlc291cmNlKG5ld1JlcXVlc3QpOwog
ICAgICAgICBpZiAobV9yZXNvdXJjZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3Vy
Y2VMb2FkTm90aWZpZXIuY3BwCmluZGV4IGQzOWZkMjdkYzU2NmMwZmUyNGQxMGM2MDE0YzViZWRl
ZDNlNGZjYjkuLmU1NDY3ZmQxMTEwOGUyMTA5ZTFkMmY5ZDlkNTZiNWMzZTg2ZDEzMTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcApAQCAtMzks
NiArMzksNyBAQAogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNrZXIu
aCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaCIKIAogI2lmIFVTRShRVUlDS19MT09LKQogI2luY2x1ZGUgIlF1aWNrTG9vay5o
IgpAQCAtMTQ2LDkgKzE0Nyw4IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNo
V2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgaWYgKGxv
YWRlciAmJiAhcmVxdWVzdC5pc051bGwoKSAmJiByZXF1ZXN0LnVybCgpID09IGxvYWRlci0+dXJs
KCkpCiAgICAgICAgIHJlcXVlc3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKIAotI2lmIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5nKHRy
dWUpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1
cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHJlcXVlc3Quc2V0UmVwb3J0
TG9hZFRpbWluZyh0cnVlKTsKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0
Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNvdXJjZUxvYWRlciog
cmVzb3VyY2VMb2FkZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlTG9hZGVyLmNwcAppbmRleCBjMGE5OWEzZGU5Nzg5NDVmZDY0OWRjMmQ2ZWE3
OGRiNjc4NzEzMDFkLi4wOTY3NWZjNjEwZDhiMzQ5ODg0OTQ4YzBlY2UwZDM5NTJmOGZjNWEzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxv
YWRlci5jcHAKQEAgLTYxLDYgKzYxLDcgQEAKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMu
aCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkSW5m
by5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3Jp
cHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJT
ZXNzaW9uSUQuaCIKQEAgLTc1LDkgKzc2LDcgQEAKICNpbmNsdWRlICJDYWNoZWRUZXh0VHJhY2su
aCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICNpbmNsdWRlICJQZXJm
b3JtYW5jZS5oIgotI2VuZGlmCiAKICNkZWZpbmUgUFJFTE9BRF9ERUJVRyAwCiAKQEAgLTY3MSwx
MSArNjcwLDggQEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IENhY2hlZFJl
c291cmNlTG9hZGVyOjpyZXZhbGlkYXRlUmVzb3VyY2UoY28KICAgICAKICAgICBtZW1vcnlDYWNo
ZS5yZW1vdmUoKnJlc291cmNlKTsKICAgICBtZW1vcnlDYWNoZS5hZGQoKm5ld1Jlc291cmNlKTsK
LSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0
aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7Ci0jZWxzZQotICAgIFVOVVNFRF9Q
QVJBTShyZXF1ZXN0KTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpz
aGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICBzdG9yZVJl
c291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwogICAg
IHJldHVybiBuZXdSZXNvdXJjZTsKIH0KIApAQCAtNjkwLDE1ICs2ODYsMTQgQEAgQ2FjaGVkUmVz
b3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IENhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkUmVz
b3VyY2UoQ2FjaGVkUmUKIAogICAgIGlmIChyZXF1ZXN0LmFsbG93c0NhY2hpbmcoKSAmJiAhbWVt
b3J5Q2FjaGUuYWRkKCpyZXNvdXJjZSkpCiAgICAgICAgIHJlc291cmNlLT5zZXRPd25pbmdDYWNo
ZWRSZXNvdXJjZUxvYWRlcih0aGlzKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAg
IHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVz
dCk7Ci0jZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVy
ZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVSZXNvdXJjZVRpbWlu
Z0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAgICByZXR1cm4gcmVz
b3VyY2U7CiB9CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogdm9pZCBDYWNoZWRSZXNv
dXJjZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0
IENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiYgcmVzb3VyY2UsIGNvbnN0IENh
Y2hlZFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKKyAgICBBU1NFUlQoUnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSk7CiAg
ICAgaWYgKHJlc291cmNlLT50eXBlKCkgPT0gQ2FjaGVkUmVzb3VyY2U6Ok1haW5SZXNvdXJjZSkg
ewogICAgICAgICAvLyA8aWZyYW1lPnMgc2hvdWxkIHJlcG9ydCB0aGUgaW5pdGlhbCBuYXZpZ2F0
aW9uIHJlcXVlc3RlZCBieSB0aGUgcGFyZW50IGRvY3VtZW50LCBidXQgbm90IHN1YnNlcXVlbnQg
bmF2aWdhdGlvbnMuCiAgICAgICAgIGlmIChmcmFtZSgpLT5vd25lckVsZW1lbnQoKSAmJiBtX2Rv
Y3VtZW50TG9hZGVyLT5mcmFtZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5jb21taXR0aW5nRmly
c3RSZWFsTG9hZCgpKSB7CkBAIC03MTAsNyArNzA1LDYgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0IENhY2hl
ZFIKICAgICAgICAgbV9pbml0aWF0b3JNYXAuYWRkKHJlc291cmNlLmdldCgpLCBpbmZvKTsKICAg
ICB9CiB9Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAogc3RhdGljIHZvaWQg
bG9nUmV2YWxpZGF0aW9uKGNvbnN0IFN0cmluZyYgcmVhc29uLCBEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCYgbG9nQ2xpZW50KQogewpAQCAtOTc2LDggKzk3MCw5IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OmxvYWREb25lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9vbCBzaG91bGRQ
ZXJmb3JtCiAgICAgUmVmUHRyPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0RG9jdW1lbnRMb2FkZXIo
bV9kb2N1bWVudExvYWRlcik7CiAgICAgUmVmUHRyPERvY3VtZW50PiBwcm90ZWN0RG9jdW1lbnQo
bV9kb2N1bWVudCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIGlmIChyZXNv
dXJjZSAmJiByZXNvdXJjZS0+cmVzcG9uc2UoKS5pc0hUVFAoKSAmJiAoKCFyZXNvdXJjZS0+ZXJy
b3JPY2N1cnJlZCgpICYmICFyZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgfHwgcmVzb3VyY2UtPnJl
c3BvbnNlKCkuaHR0cFN0YXR1c0NvZGUoKSA9PSAzMDQpKSB7CisgICAgaWYgKFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkKKyAg
ICAgICAgJiYgcmVzb3VyY2UgJiYgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaXNIVFRQKCkKKyAgICAg
ICAgJiYgKCghcmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhcmVzb3VyY2UtPndhc0NhbmNl
bGVkKCkpIHx8IHJlc291cmNlLT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkgPT0gMzA0KSkg
ewogICAgICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlKiwgSW5pdGlhdG9ySW5mbz46Oml0ZXJh
dG9yIGluaXRpYXRvckl0ID0gbV9pbml0aWF0b3JNYXAuZmluZChyZXNvdXJjZSk7CiAgICAgICAg
IGlmIChpbml0aWF0b3JJdCAhPSBtX2luaXRpYXRvck1hcC5lbmQoKSkgewogICAgICAgICAgICAg
QVNTRVJUKGRvY3VtZW50KCkpOwpAQCAtOTkwLDkgKzk4NSw2IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OmxvYWREb25lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9vbCBzaG91bGRQ
ZXJmb3JtCiAgICAgICAgICAgICBtX2luaXRpYXRvck1hcC5yZW1vdmUoaW5pdGlhdG9ySXQpOwog
ICAgICAgICB9CiAgICAgfQotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0ocmVzb3VyY2UpOwotI2Vu
ZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKICAgICBpZiAoZnJhbWUoKSkKICAgICAg
ICAgZnJhbWUoKS0+bG9hZGVyKCkubG9hZERvbmUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKaW5kZXggYjFmN2M0ZmFmNWRiYjA5
NjAxYzU4OTJmNWQ2NDcxMzk0OWIxZjYwZC4uNGRmODE5OTU5Y2VhYjExMDM3NGI1NWI0NjAzOTMw
YTg3ZWI3YzY2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmgKQEAgLTE0NCw5ICsxNDQsNyBAQCBwcml2YXRlOgogICAgIENhY2hl
ZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiByZXF1ZXN0UmVzb3VyY2UoQ2FjaGVkUmVz
b3VyY2U6OlR5cGUsIENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwogICAgIENhY2hlZFJlc291cmNl
SGFuZGxlPENhY2hlZFJlc291cmNlPiByZXZhbGlkYXRlUmVzb3VyY2UoY29uc3QgQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0JiwgQ2FjaGVkUmVzb3VyY2UqKTsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRs
ZTxDYWNoZWRSZXNvdXJjZT4gbG9hZFJlc291cmNlKENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIHZv
aWQgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0IENhY2hlZFJl
c291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiYsIGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVz
dCYpOwotI2VuZGlmCiAgICAgdm9pZCByZXF1ZXN0UHJlbG9hZChDYWNoZWRSZXNvdXJjZTo6VHlw
ZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFyc2V0KTsKIAogICAg
IGVudW0gUmV2YWxpZGF0aW9uUG9saWN5IHsgVXNlLCBSZXZhbGlkYXRlLCBSZWxvYWQsIExvYWQg
fTsKQEAgLTE3OSwxMyArMTc3LDExIEBAIHByaXZhdGU6CiAKICAgICBUaW1lciBtX2dhcmJhZ2VD
b2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lcjsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCiAgICAgc3RydWN0IEluaXRpYXRvckluZm8gewogICAgICAgICBBdG9taWNTdHJpbmcgbmFt
ZTsKICAgICAgICAgZG91YmxlIHN0YXJ0VGltZTsKICAgICB9OwogICAgIEhhc2hNYXA8Q2FjaGVk
UmVzb3VyY2UqLCBJbml0aWF0b3JJbmZvPiBtX2luaXRpYXRvck1hcDsKLSNlbmRpZgogCiAgICAg
Ly8gMjkgYml0cyBsZWZ0CiAgICAgYm9vbCBtX2F1dG9Mb2FkSW1hZ2VzIDogMTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5jcHAKaW5kZXggZWQzOWExZDE1MDgxYjQ3NjRhZTk3YWZhZjczOGJh
OTY3OTdlNzMyYi4uYmM0ODE1YTNiNjBmNzI2MjE5ZDQ2YmZlNGJjZTFmODhhNzI1YjkwNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKQEAgLTQ3LDE1ICs0NywxMSBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogc3RhdGljIGNv
bnN0IHNpemVfdCBkZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplID0gMTUwOwotI2VuZGlm
CiAKIFBlcmZvcm1hbmNlOjpQZXJmb3JtYW5jZShGcmFtZSYgZnJhbWUpCiAgICAgOiBET01XaW5k
b3dQcm9wZXJ0eSgmZnJhbWUpCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICAsIG1f
cmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUp
Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICAsIG1fcmVmZXJlbmNlVGlt
ZShmcmFtZS5kb2N1bWVudCgpLT5sb2FkZXIoKSA/IGZyYW1lLmRvY3VtZW50KCktPmxvYWRlcigp
LT50aW1pbmcoKS5yZWZlcmVuY2VNb25vdG9uaWNUaW1lKCkgOiBtb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSkKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgLCBtX3VzZXJUaW1pbmco
bnVsbHB0cikKQEAgLTkxLDE0ICs4NywxMSBAQCBQZXJmb3JtYW5jZVRpbWluZyogUGVyZm9ybWFu
Y2U6OnRpbWluZygpIGNvbnN0CiAgICAgcmV0dXJuIG1fdGltaW5nLmdldCgpOwogfQogCi0jaWYg
RU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQogUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5
TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAogewogICAgIFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0Ojpj
cmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgZW50cmllcy0+YXBw
ZW5kQWxsKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJD
RV9USU1JTkcpCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWlu
ZykgewpAQCAtMTE1LDEyICsxMDgsMTAgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlz
dD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW4KIHsKICAg
ICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVudHJ5
TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIGlmIChl
cXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUsICJyZXNvdXJjZSIpKSB7CiAg
ICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNlVGltaW5nQnVmZmVyKQogICAg
ICAgICAgICAgZW50cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICB9Ci0jZW5kaWYKIAogI2lm
IEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBAIC0xMzksMTQg
KzEzMCwxMiBAQCBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6
d2Via2l0R2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbgogewogICAgIFJlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsK
IAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVudHJ5VHlwZS5pc051bGwo
KSB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUsICJyZXNvdXJjZSIp
KSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNlVGltaW5nQnVmZmVy
KSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5hbWUoKSA9PSBuYW1lKQogICAgICAgICAg
ICAgICAgIGVudHJpZXMtPmFwcGVuZChyZXNvdXJjZSk7CiAgICAgICAgIH0KICAgICB9Ci0jZW5k
aWYKIAogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBA
IC0xNjEsMTAgKzE1MCw2IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZv
cm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVu
dHJpZXM7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiB2b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRDbGVh
clJlc291cmNlVGltaW5ncygpCiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5jbGVhcigp
OwpAQCAtMTk1LDggKzE4MCw2IEBAIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3VyY2VUaW1pbmdC
dWZmZXJGdWxsKCkKICAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5zaXplKCkgPj0g
bV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQotCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogdm9pZCBQZXJmb3JtYW5jZTo6
d2Via2l0TWFyayhjb25zdCBTdHJpbmcmIG1hcmtOYW1lLCBFeGNlcHRpb25Db2RlJiBlYykKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5M2Y0NDA2NDRiYjc2M2ZhN2RjOGQxN2U0
ODYyZTMyMzVlOWM3NmY3Li42ZmZmNDVjODQ1ZTA5ODllZTc0MjUxNzYxYmI4NWM1NGM3N2NhNDVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC02NCwxOCArNjQsMTQgQEAgcHVibGlj
OgogICAgIFBlcmZvcm1hbmNlVGltaW5nKiB0aW1pbmcoKSBjb25zdDsKICAgICBkb3VibGUgbm93
KCkgY29uc3Q7CiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCiAgICAgUGFzc1Jl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllcygpIGNvbnN0OwogICAg
IFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVudHJpZXNCeVR5cGUo
Y29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eUxpc3Q+IHdlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBT
dHJpbmcmIGVudHJ5VHlwZSk7Ci0jZW5kaWYKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcp
CiAgICAgdm9pZCB3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpOwogICAgIHZvaWQgd2Via2l0
U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGludCk7CiAKICAgICB2b2lkIGFk
ZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQqLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgZG91YmxlIGlu
aXRpYXRpb25UaW1lLCBkb3VibGUgZmluaXNoVGltZSk7Ci0jZW5kaWYKIAogICAgIHVzaW5nIFJl
ZkNvdW50ZWQ8UGVyZm9ybWFuY2U+OjpyZWY7CiAgICAgdXNpbmcgUmVmQ291bnRlZDxQZXJmb3Jt
YW5jZT46OmRlcmVmOwpAQCAtOTcsMTEgKzkzLDkgQEAgcHJpdmF0ZToKIAogICAgIG11dGFibGUg
UmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUg
UmVmUHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3RpbWluZzsKLSAgICAKLSNpZiBFTkFCTEUoUkVT
T1VSQ0VfVElNSU5HKQorCiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gbV9y
ZXNvdXJjZVRpbWluZ0J1ZmZlcjsKICAgICB1bnNpZ25lZCBtX3Jlc291cmNlVGltaW5nQnVmZmVy
U2l6ZTsKLSNlbmRpZgogCiAgICAgZG91YmxlIG1fcmVmZXJlbmNlVGltZTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmlkbAppbmRleCAyMWJmYTRhOTkxNDQ2NDMxZjgyNzA4N2IxNDYyYWM1
NjY3YzJlY2RlLi5hMDU2NDc5MzUxNTEwZGZmZjk5ODY0YWQ0ZWMwZGVkMzZiOTk0NWUwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbApAQCAtMzYsMTggKzM2LDE1IEBACiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIFBlcmZvcm1hbmNlTmF2aWdhdGlvbiBuYXZpZ2F0aW9uOwogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBQZXJmb3JtYW5jZVRpbWluZyB0aW1pbmc7CiAKLSNpZiBkZWZpbmVk
KEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElORSkgJiYgRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVM
SU5FCi0gICAgUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllcygpOwotICAgIFBl
cmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeVR5cGUoRE9NU3RyaW5nIGVudHJ5
VHlwZSk7Ci0gICAgUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShE
T01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSA9IG51bGwpOwotI2Vu
ZGlmCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBlcmZvcm1hbmNlRW50
cnlMaXN0IHdlYmtpdEdldEVudHJpZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJj
ZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5VHlwZShET01T
dHJpbmcgZW50cnlUeXBlKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10g
UGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFt
ZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSA9IG51bGwpOwogCi0jaWYgZGVmaW5lZChF
TkFCTEVfUkVTT1VSQ0VfVElNSU5HKSAmJiBFTkFCTEVfUkVTT1VSQ0VfVElNSU5HCi0gICAgdm9p
ZCB3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpOwotICAgIHZvaWQgd2Via2l0U2V0UmVzb3Vy
Y2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGxvbmcgbWF4U2l6ZSk7CiAKLSAgICBhdHRyaWJ1
dGUgRXZlbnRIYW5kbGVyIG9ud2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsOwotI2VuZGlm
CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIHZvaWQgd2Via2l0Q2xlYXJS
ZXNvdXJjZVRpbWluZ3MoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10g
dm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgbG9uZyBtYXhT
aXplKTsKKworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBhdHRyaWJ1dGUg
RXZlbnRIYW5kbGVyIG9ud2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsOwogCiAgICAgLy8g
U2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvQ1ItdXNlci10aW1pbmctMjAxMjA3MjYvCiAj
aWYgZGVmaW5lZChFTkFCTEVfVVNFUl9USU1JTkcpICYmIEVOQUJMRV9VU0VSX1RJTUlORwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKaW5kZXggMzJkYjdjZmU1NjM1Y2Rm
MzJjMzA1ZWM0ZWFjMDk1MDFlNWY4M2VlNS4uMzc0ZTE0MjkzMTgzZjk3M2ZhYTc4NDE4MWRmZDU5
ZTIzMDk1YjVhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwCkBA
IC0zMSw3ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFu
Y2VFbnRyeS5oIgogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5D
RV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCkBAIC02OSw0ICs2OSw0IEBAIGRvdWJsZSBQZXJmb3JtYW5jZUVudHJ5OjpkdXJhdGlvbigp
IGNvbnN0CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShXRUJf
VElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxF
KFdFQl9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCmluZGV4IDEy
OWEyNDY0MGNjNGQyYTM1Y2FlYWI2YmEyZjFhZmM4MTg0ZjM2MmIuLmNmMzdjMGU1NjlkZDc0ZjJh
NTBjZjljZjJkMmE5ZjA0ZDZkNWM5ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlRW50cnlfaAogI2Rl
ZmluZSBQZXJmb3JtYW5jZUVudHJ5X2gKIAotI2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFC
TEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKICNpbmNs
dWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CkBAIC03MSw1
ICs3MSw1IEBAIHByaXZhdGU6CiAKIH0KIAotI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJTUlORykg
JiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJ
TUlORykKICNlbmRpZiAvLyAhZGVmaW5lZChQZXJmb3JtYW5jZUVudHJ5X2gpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAppbmRleCA5YmNhZjRjMzQwMTg5ODU1YTJiNjRk
NmYwNWIyOThjY2MxZjcyM2U2Li5mMzdlMmEzY2JhNDMyNDEzYTBhZjdiYmM0NmE4ZDVmMTQ0YmZh
ZjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKQEAgLTMxLDcg
KzMxLDcgQEAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1maWxl
L3RpcC9zcGVjcy9QZXJmb3JtYW5jZVRpbWVsaW5lL092ZXJ2aWV3Lmh0bWwKIFsKICAgICBDb25k
aXRpb25hbD1XRUJfVElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5F
LAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgQ3VzdG9tVG9KU09i
amVjdCwKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5TGlzdC5jcHAKaW5kZXggZDlmYTA1NTc3ZGQ1NzllOWNhODI3NGRkNzhiNGFjZTM0YmM3OTI4
Yi4uYzAzNTkyOGIzMWM2ZGU5ZDYxZDg2MzExNjMxZDMzNTZmYzNiODI2MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKQEAgLTMyLDcgKzMyLDcgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIgog
Ci0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkK
KyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIK
IApAQCAtNzUsNCArNzUsNCBAQCB2b2lkIFBlcmZvcm1hbmNlRW50cnlMaXN0Ojpzb3J0KCkKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpICYm
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlO
RykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaAppbmRleCA5N2Ey
MTJkZDZmZDA1NDQ3NjZlZDc1NjNjMTc1NmI5MTM2ZDdmZWQ2Li5kMmM0MWY1YWQ0N2YxOGFiMTEz
MGQzYzA1NWFlMzUxMTAyYjBjNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnlMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5TGlzdC5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlRW50cnlM
aXN0X2gKICNkZWZpbmUgUGVyZm9ybWFuY2VFbnRyeUxpc3RfaAogCi0jaWYgRU5BQkxFKFdFQl9U
SU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJ
TUlORykKIAogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KQEAgLTY0LDUgKzY0LDUgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFO
Q0VfVElNRUxJTkUpCisjZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vIFBl
cmZvcm1hbmNlRW50cnlMaXN0X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5TGlzdC5pZGwKaW5kZXggN2UyNWE4NWNlNmM4OTM4NGVmZTU1MmY4Mzc2OTI1OTM1ODAyODhm
OS4uMTgwNjZjYzM3ZTU3M2YyMGUxYTkwNWMzODhiMDIxODE4ZWI3OTM2YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKQEAgLTMyLDEwICszMiw5IEBA
CiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9V0VCX1RJTUlORywK
LSAgICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwKKyAgICBFbmFibGVkQXRSdW50
aW1lPVJlc291cmNlVGltaW5nLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGlu
dGVyZmFjZSBQZXJmb3JtYW5jZUVudHJ5TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVu
c2lnbmVkIGxvbmcgbGVuZ3RoOwogICAgIGdldHRlciBQZXJmb3JtYW5jZUVudHJ5IGl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7CiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCAzMWI4OTcxMzdmNTExZTQ1Zjc3NTdlOTU2
YzI2ZjM3NTg3YWI2YTYwLi41YmI2MTQwOTcxOThmZjU2MjFjNTFjODY5NmE2ZDI3OTJkMGYwNjEy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5jcHAKQEAgLTMyLDggKzMyLDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5H
KQotCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRUaW1pbmcu
aCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgpAQCAtMTk5LDUgKzE5NywzIEBAIGRvdWJs
ZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXNvdXJjZVRpbWVUb0RvY3VtZW50TWlsbGlz
ZWNvbmRzKGludCBkZWx0YU1pCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCmluZGV4IDk5ZGZjNWJjZGNkYzc5ZTM1M2U5NDkzNmM0
ODI4NTM2MTdjNWY1M2YuLjM3YjVhZTkxZWRmMDc1YWY0OWIyMDU3OTk1NDM4ZGQ4ZWY2YWE0ZmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5o
CkBAIC0zMiw4ICszMiw2IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdfaAog
I2RlZmluZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nX2gKIAotI2lmIEVOQUJMRShSRVNPVVJD
RV9USU1JTkcpCi0KICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VMb2FkVGltaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTg1LDYg
KzgzLDQgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlO
RykKLQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdfaCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCmlu
ZGV4IDNmMDExYjIzYjA1N2ExYWUwZTYzNGVmMTk0M2IxMDFmY2U2ODY2ZDMuLjNmMzA5ZTNiYTJk
YjY0YjQ0OTVlYWU2MTgwODIyOTllOWI2MmQ0NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtMzAsNyArMzAsNyBAQAogCiAv
LyBTZWU6IGh0dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9yYXctZmlsZS90aXAvc3BlY3Mv
UmVzb3VyY2VUaW1pbmcvT3ZlcnZpZXcuaHRtbAogWwotICAgIENvbmRpdGlvbmFsPVJFU09VUkNF
X1RJTUlORywKKyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nCiBdIGludGVyZmFj
ZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIDogUGVyZm9ybWFuY2VFbnRyeSB7CiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpbml0aWF0b3JUeXBlOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5jcHAKaW5kZXggZDQ1YWNjZDVmMGJjZTA2NzE3ZWZlYzhhOWIwMjZjYWM4
NjIyZmJhOS4uYzliNDZjMzMxNzQ5NTVhZTAyNGViYzAwNjlkNDc2ZmRhZTEwYzZhYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMzMxOCw0ICszMzE4LDkgQEAgdm9pZCBJ
bnRlcm5hbHM6OnNldExpbmtQcmVsb2FkU3VwcG9ydChib29sIGVuYWJsZSkKICAgICBSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldExpbmtQcmVsb2FkRW5hYmxlZChl
bmFibGUpOwogfQogCit2b2lkIEludGVybmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJv
b2wgZW5hYmxlKQoreworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVz
KCkuc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGVuYWJsZSk7Cit9CisKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oCmluZGV4IGYzYWZmMmZmOTcxODdjOTllYWUyYWU5ZDk3MmU1N2YzNzQ0
NzM2MTQuLmMwNzFhNDE1MTZjMTE5MWQwYzUyZDE4ZjJlNTQ1YjljZjMxNmRmMTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaApAQCAtNDY4LDYgKzQ2OCw3IEBAIHB1YmxpYzoKICAgICAK
ICAgICB2b2lkIHNldFZpZXdwb3J0Rm9yY2VBbHdheXNVc2VyU2NhbGFibGUoYm9vbCk7CiAgICAg
dm9pZCBzZXRMaW5rUHJlbG9hZFN1cHBvcnQoYm9vbCk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRp
bWluZ1N1cHBvcnQoYm9vbCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERv
Y3VtZW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggMzJhZGIxYzAx
M2FhZTg3NDA0MWQ0YTE3NTZkMDVlMDM0MDI3N2U0ZC4uMjY3N2Y3NWU4OGMzYmJkYWNkOTVmNTk2
YTc3MjcyOGQ2Y2NmNWM0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAt
NDQ2LDQgKzQ0Niw1IEBAIGVudW0gQXV0b0ZpbGxCdXR0b25UeXBlIHsKIAogICAgIHZvaWQgc2V0
Vmlld3BvcnRGb3JjZUFsd2F5c1VzZXJTY2FsYWJsZShib29sZWFuIHNjYWxhYmxlKTsKICAgICB2
b2lkIHNldExpbmtQcmVsb2FkU3VwcG9ydChib29sZWFuIHNjYWxhYmxlKTsKKyAgICB2b2lkIHNl
dFJlc291cmNlVGltaW5nU3VwcG9ydChib29sZWFuIHNjYWxhYmxlKTsKIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0
RmVhdHVyZXMuY21ha2UKaW5kZXggOTMwNGI1YWVkMjgyNmE5MTYxMTRkZWZkYzliZjU5ZmIwZDU2
YjcwMC4uNzY4ZTNlNTlkN2UxOWFhYWEwNGYwMjIxNzgzNWNlOTY5NjdjMDkyZSAxMDA2NDQKLS0t
IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9X
ZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtMTU4LDcgKzE1OCw2IEBAIG1hY3JvKFdFQktJVF9PUFRJ
T05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX05PVElGSUNBVElPTlMg
IlRvZ2dsZSBEZXNrdG9wIE5vdGlmaWNhdGlvbnMgU3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAg
V0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX09SSUVOVEFUSU9OX0VWRU5UUyAiVG9nZ2xlIE9y
aWVudGF0aW9uIEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfUERGS0lUX1BMVUdJTiAiVG9nZ2xlIFBERktpdCBwbHVnaW4gc3VwcG9y
dCIgUFJJVkFURSBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BFUkZPUk1B
TkNFX1RJTUVMSU5FICJUb2dnbGUgUGVyZm9ybWFuY2UgVGltZWxpbmUgc3VwcG9ydCIgUFJJVkFU
RSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BPSU5URVJfTE9DSyAiVG9n
Z2xlIHBvaW50ZXIgbG9jayBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfUFJPWElNSVRZX0VWRU5UUyAiVG9nZ2xlIFByb3hpbWl0eSBFdmVudHMg
c3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BV
QkxJQ19TVUZGSVhfTElTVCAiVG9nZ2xlIHB1YmxpYyBzdWZmaXggbGlzdCBzdXBwb3J0IiBQUklW
QVRFIE9GRikKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9w
cmVwYXJlY2hhbmdlbG9nLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3By
ZXBhcmVjaGFuZ2Vsb2cucHkKaW5kZXggNzE2YWI4MjZkNWJmYTA3YTFiZTg1NTMxMzUzMTRjNjVk
MDVmODIyYS4uNjNlYzMyNjgyMjlkMWU1NzYxMDNmY2RhZTNmYjJlZjU1N2E0MzA3ZCAxMDA2NDQK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3ByZXBhcmVjaGFuZ2Vsb2cu
cHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL3ByZXBhcmVjaGFuZ2Vs
b2cucHkKQEAgLTU1LDcgKzU1LDcgQEAgY2xhc3MgUHJlcGFyZUNoYW5nZUxvZyhBYnN0cmFjdFN0
ZXApOgogICAgICAgICBjaGFuZ2Vsb2dzID0gc2VsZi5jYWNoZWRfbG9va3VwKHN0YXRlLCAiY2hh
bmdlbG9ncyIpCiAgICAgICAgIGZvciBjaGFuZ2Vsb2dfcGF0aCBpbiBjaGFuZ2Vsb2dzOgogICAg
ICAgICAgICAgY2hhbmdlbG9nID0gQ2hhbmdlTG9nKGNoYW5nZWxvZ19wYXRoLCBzZWxmLl90b29s
LmZpbGVzeXN0ZW0pCi0gICAgICAgICAgICBpZiBub3QgY2hhbmdlbG9nLmxhdGVzdF9lbnRyeSgp
LmJ1Z19pZCgpOgorICAgICAgICAgICAgaWYgbm90IGNoYW5nZWxvZy5sYXRlc3RfZW50cnkoKSBv
ciBub3QgY2hhbmdlbG9nLmxhdGVzdF9lbnRyeSgpLmJ1Z19pZCgpOgogICAgICAgICAgICAgICAg
IGNoYW5nZWxvZy5zZXRfc2hvcnRfZGVzY3JpcHRpb25fYW5kX2J1Z191cmwoCiAgICAgICAgICAg
ICAgICAgICAgIHNlbGYuY2FjaGVkX2xvb2t1cChzdGF0ZSwgImJ1Z190aXRsZSIpLAogICAgICAg
ICAgICAgICAgICAgICBzZWxmLl90b29sLmJ1Z3MuYnVnX3VybF9mb3JfYnVnX2lkKGJ1Z19pZCkp
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggM2JjOWUyMjhiNDliZWU3YWRmMDA5YjNlZmU5NjdjMzE1NTlhMThiYi4uYjczYzU0
YTc4ZGM1M2JhYmU0ZDJiZTA3ZWMyZTFkYzc4NWJhMWQ1MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBA
CisyMDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUg
UmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCB0ZXN0cyB0aGF0IG1ha2Ugc3VyZSBS
ZXNvdXJjZVRpbWluZyBBUElzIGFyZSBleHBvc2VkIGFuZCB0aGF0IHJlc291cmNlcworICAgICAg
ICBzaG93IHVwIGFzIGVudHJpZXMgaW4gdGhlIHBlcmZvcm1hbmNlIHRpbWVsaW5lLgorCisgICAg
ICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291
cmNlLXRpbWluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJj
ZS10aW1pbmctZW50cmllcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbDog
QWRkZWQuCisKIDIwMTYtMDQtMjggIEpvYW5tYXJpZSBEaWdncyAgPGpkaWdnc0BpZ2FsaWEuY29t
PgogCiAgICAgICAgIEFYOiBbQVRLXSBXZSBuZWVkIHRvIGJlIHNtYXJ0ZXIgYWJvdXQgZmxhdHRl
bmluZyBhbmQgdGhlIGFjY2Vzc2libGUgdGV4dCBpbXBsZW1lbnRhdGlvbgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNl
LXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5k
b3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi44NGU1MmQzZjFjMzlhNzVhNjU4OTM2YmU0NWQ4OTIwNjA2NDBmNTg0
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw0NiBAQAorVGhpcyB0ZXN0IGR1bXBzIGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFy
ZSByZWFjaGFibGUgZnJvbSB0aGUgd2luZG93LnBlcmZvcm1hbmNlIG9iamVjdCwgYWxvbmcgd2l0
aCB0aGVpciB0eXBlcy4KKword2luZG93LnBlcmZvcm1hbmNlIFtvYmplY3QgUGVyZm9ybWFuY2Vd
Cit3aW5kb3cucGVyZm9ybWFuY2UuYWRkRXZlbnRMaXN0ZW5lciBbZnVuY3Rpb25dCit3aW5kb3cu
cGVyZm9ybWFuY2UuZGlzcGF0Y2hFdmVudCBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2Uu
bmF2aWdhdGlvbiBbb2JqZWN0IFBlcmZvcm1hbmNlTmF2aWdhdGlvbl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5uYXZpZ2F0aW9uLlRZUEVfQkFDS19GT1JXQVJEIFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2UubmF2aWdhdGlvbi5UWVBFX05BVklHQVRFIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFu
Y2UubmF2aWdhdGlvbi5UWVBFX1JFTE9BRCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLm5h
dmlnYXRpb24uVFlQRV9SRVNFUlZFRCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmln
YXRpb24ucmVkaXJlY3RDb3VudCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRp
b24udHlwZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLm5vdyBbZnVuY3Rpb25dCit3aW5k
b3cucGVyZm9ybWFuY2Uub253ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwgW251bGxdCit3
aW5kb3cucGVyZm9ybWFuY2UucmVtb3ZlRXZlbnRMaXN0ZW5lciBbZnVuY3Rpb25dCit3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nIFtvYmplY3QgUGVyZm9ybWFuY2VUaW1pbmddCit3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLmNvbm5lY3RFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50
aW1pbmcuY29ubmVjdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRv
bUNvbXBsZXRlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUNvbnRlbnRM
b2FkZWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21Db250
ZW50TG9hZGVkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5k
b21JbnRlcmFjdGl2ZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21Mb2Fk
aW5nIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbWFpbkxvb2t1cEVuZCBb
bnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21haW5Mb29rdXBTdGFydCBbbnVt
YmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5mZXRjaFN0YXJ0IFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UudGltaW5nLmxvYWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZy5sb2FkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcucmVkaXJlY3RFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVkaXJl
Y3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXF1ZXN0U3RhcnQg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVzcG9uc2VFbmQgW251bWJlcl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVzcG9uc2VTdGFydCBbbnVtYmVyXQord2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgW251bWJlcl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcudW5sb2FkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS50aW1pbmcudW5sb2FkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1h
bmNlLndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS53ZWJraXRHZXRFbnRyaWVzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS53ZWJr
aXRHZXRFbnRyaWVzQnlOYW1lIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS53ZWJraXRH
ZXRFbnRyaWVzQnlUeXBlIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS53ZWJraXRTZXRS
ZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZyBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nXQord2luZG93
LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LnBlcmZvcm1h
bmNlLm5hdmlnYXRpb25dCit3aW5kb3cucGVyZm9ybWFuY2UgW3N0cmluZ10KKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1h
bmNlLXJlc291cmNlLXRpbWluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjViNzkzMWNjNWEwYzYwYWUxNzg2MzNhN2JjNDU1NTI2MWUxZDZjMTMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVy
Zm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKQEAgLTAsMCArMSwxMDQgQEAKKzxwPlRoaXMg
dGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVhY2hhYmxlIGZyb20g
dGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3QsIGFsb25nIHdpdGggdGhlaXIgdHlwZXMuPC9w
PgorPGhyPgorPHByZSBpZD0icHJlIj48L3ByZT4KKworPHNjcmlwdD4KK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworaWYgKHdpbmRvdy5pbnRl
cm5hbHMpCisgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydCh0cnVlKTsKKyAg
ICAKK3ZhciBsb2dCdWZmZXIgPSBbXTsKK2Z1bmN0aW9uIGxvZyhzKQoreworICAgIGxvZ0J1ZmZl
ci5wdXNoKHMpOworfQorCit2YXIgcHJlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ByZScp
OworZnVuY3Rpb24gZmx1c2hMb2coKQoreworICAgIHZhciBsb2dNZXNzYWdlID0gbG9nQnVmZmVy
LmpvaW4oIiIpOworICAgIHByZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShs
b2dNZXNzYWdlKSk7Cit9CisKK2Z1bmN0aW9uIHRyeUV2YWwoc3RyaW5nKQoreworICAgIHRyeSB7
CisgICAgICAgIHJldHVybiBldmFsKHN0cmluZyk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAg
ICByZXR1cm4gbmV3IFN0cmluZygiQ2F1Z2h0IGV4Y2VwdGlvbjogIiArIGUpOworICAgIH0KK30K
KworZnVuY3Rpb24gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKQoreworICAgIGlmICh0eXBlb2YgdmFs
dWUgPT0gIm9iamVjdCIgJiYgdmFsdWUgPT0gbnVsbCkgLy87CisgICAgICAgIHJldHVybiAibnVs
bCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKK30KKworZnVuY3Rpb24gdHlwZVN0cmluZ051
bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZh
bHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBlID09ICJvYmplY3QiCisgICAgICAgID8gT2JqZWN0
LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKQorICAgICAgICA6ICJbIiArIHZhbHVlVHlw
ZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9nVmFsdWUodmFsdWVOYW1lKQoreworICAgIHZhciB2
YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsKKyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVs
bEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERvbid0IHRhaW50IHRoZSB0ZXN0IHdpdGggb3VyIG93
biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUgPT0gbG9nQnVmZmVyIHx8IHZhbHVlID09IHByZSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIg
b3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19fdmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1
ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUp
KQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBXb3JrIGFyb3VuZCBGaXJlZm94IGluZmluaXRl
IHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05XS8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZpbml0ZSByZWN1cnNpb24KKyAgICBpZiAodmFsdWVU
eXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAg
ICAgICAgbG9nKHZhbHVlTmFtZSArICIgW3ByaW50ZWQgYWJvdmUgYXMgIiArIHZhbHVlLl9fbmFt
ZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fICsgIl1cbiIpOworICAgICAgICByZXR1cm47CisgICAg
fQorCisgICAgbG9nKHZhbHVlTmFtZSArICIgIiArIHR5cGVTdHJpbmdOdWxsQXdhcmUodmFsdWUp
ICsgIlxuIik7CisKKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiKSB7CisgICAgICAgIHZh
bHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXyA9IHRydWU7CisgICAgICAgIHZhbHVlLl9fbmFtZVdo
ZW5WaXNpdGVkQnlMb2dWYWx1ZV9fID0gdmFsdWVOYW1lOworICAgICAgICBsb2dQcm9wZXJ0aWVz
KHZhbHVlLCB2YWx1ZU5hbWUpOworICAgIH0KK30KKworZnVuY3Rpb24gbG9nUHJvcGVydGllcyhv
YmplY3QsIG9iamVjdE5hbWUpCit7CisgICAgdmFyIGFycmF5ID0gbmV3IEFycmF5OworICAgIGZv
ciAodmFyIHByb3BlcnR5IGluIG9iamVjdCkgeworICAgICAgICBhcnJheS5wdXNoKHByb3BlcnR5
KTsKKyAgICB9CisgICAgYXJyYXkuc29ydCgpOworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJy
YXkubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgdmFyIHByb3BlcnR5ID0gYXJyYXlbaV07CisgICAg
ICAgIGxvZ1ZhbHVlKG9iamVjdE5hbWUgKyAiLiIgKyBwcm9wZXJ0eSk7CisgICAgfQorfQorCits
b2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5n
ID0gJ3RpbWluZyBpcyBub3QgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcnKTsKK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uID0gJ25hdmlnYXRp
b24gaXMgbm90IHJlcGxhY2VhYmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UubmF2
aWdhdGlvbicpOword2luZG93LnBlcmZvcm1hbmNlID0gJ3BlcmZvcm1hbmNlIGlzIHJlcGxhY2Vh
YmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UnKTsKK2ZsdXNoTG9nKCk7CitpZiAo
d2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0
KGZhbHNlKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9w
ZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291
cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MTI4NzdiMGVmY2U3
NjRlYjFjZGY1M2RlY2U5ZjdjMGE0M2M2NTI2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50
cmllcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK1BBU1MgcGVyZm9ybWFuY2Uud2Via2l0R2V0RW50
cmllc0J5VHlwZSgncmVzb3VyY2UnKS5sZW5ndGggaXMgMgorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1l
bnRyaWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1h
bmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzJiYzAxMmM2MzU2
MGU4YmM3ZDI3NWI4NzY3YzUzY2M5M2U4NDk2NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVu
dHJpZXMuaHRtbApAQCAtMCwwICsxLDIzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnNldFJl
c291cmNlVGltaW5nU3VwcG9ydCh0cnVlKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxz
cGFuIGlkPSJlIj48L3NwYW4+Cis8c3BhbiBpZD0iZiI+PC9zcGFuPgorPHNjcmlwdD4KK3dpbmRv
dy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CisgICAgc2hvdWxkQmUoInBl
cmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXNCeVR5cGUoJ3Jlc291cmNlJykubGVuZ3RoIiwgIjIi
KTsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgd2luZG93LmludGVybmFscy5z
ZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworfSk7CisKKzwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDY5NTY5
YzRjYWE3ZTZlMTEyZWRkM2EzYjQyM2JhOTM3ODNiODlhY2UuLjI1NjA3MmJmMDQ0ZWI1YWFjMDcz
OTBlM2NmZTA1NjM2OWQ2ZWVjNzEgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53
cz4KKworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2Uv
Y21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2U6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJ
TkUgYnVpbGQgZmxhZy4KKwogMjAxNi0wNC0yOCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVl
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIwMDE4NS4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277620</attachid>
            <date>2016-04-28 07:01:51 -0700</date>
            <delta_ts>2016-04-28 08:29:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160428160221.patch</filename>
            <type>text/plain</type>
            <size>51377</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MjdiNWY0MDNkOTRlNzcwYzVkZjFlNWVkNWY1NmFiZTM5YzFkZjYzLi4yNjYwZWYyZWI1MjUwN2Fm
YTQzYjg5NGRmMDczOWMzZDg1YWJjZjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZGVkIFBlcmZvcm1hbmNlRW50cnksIFBlcmZvcm1hbmNlRW50cnlMaXN0
IGFuZCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIGFzIHByb3BlcnR5IG5hbWVzLgorCiAyMDE2
LTA0LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgR2V0
dGVyU2V0dGVyIHN0cnVjdHVyZSBuZWVkcyBhIGdsb2JhbE9iamVjdC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0
NDllZTkwMmU5MTMyYmQ4NDg2MDgzMTA1ZmM2NzU3ZTg0MDI2MGQ2Li5hYTVhODkwY2MyNmM2OTg4
YmJkOWQ3NjQyM2E1MDY0YWFiYmMxMmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKKzIw
MTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNv
dXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgdGhlIFJlc291cmNlVGltaW5nIEFQSSBmcm9t
IGJlaW5nIGJlaGluZCBhIGJ1aWxkIHRpbWUgZmxhZyB0byBiZSBiZWhpbmQgYW4KKyAgICAgICAg
b2ZmLWJ5LWRlZmF1bHQgcnVudGltZSBmbGFnLCB0aGF0IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcg
aW50ZXJuYWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGh0
dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMu
aHRtbAorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogQWRkZWQgaWRsIGZpbGVzIGZv
ciBQZXJmb3JtYW5jZUVudHJ5LCBQZXJmb3JtYW5jZUVudHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IEFkZGVkIHRoZSB2YXJpb3VzIFBlcmZvcm1hbmNlKiBmaWxlcyB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOiBB
ZGRlZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6
OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAg
ICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNv
dXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNldFJlc291cmNlVGltaW5nRW5hYmxlZCk6CisgICAgICAgIChXZWJD
b3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpyZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQg
I2lmIGZvciBSZXNvdXJjZVRpbWluZy4gQWRkZWQgYnVpbGQgZmxhZyBhcm91bmQgVXNlclRpbWlu
ZyByZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDogUmVwbGFjZSAjaWYg
Zm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVy
L1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5n
IHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZp
ZXI6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2VMb2FkZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0
aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
cmV2YWxpZGF0ZVJlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9h
ZGVyOjpsb2FkUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OnN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbik6CisgICAgICAgIChX
ZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUpOgorICAgICAgICAqIGxvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRp
bWluZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmNwcDogUmVtb3ZlICNpZiBmb3IgUmVz
b3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6UGVyZm9ybWFuY2Up
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJp
ZXMpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVu
dHJpZXNCeVR5cGUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Ondl
YmtpdEdldEVudHJpZXNCeU5hbWUpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2UuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJm
b3JtYW5jZS5pZGw6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUg
ZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwOiBSZW1vdmUgdGhlIFBF
UkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5Lmg6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5D
RV9USU1FTElORSBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5F
IGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oOiBSZW1v
dmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5F
IGJ1aWxkIGZsYWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxh
Zy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaDogUmVtb3ZlIHRo
ZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaWRsOiBSZXBsYWNlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxh
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFk
ZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3Jl
OjpJbnRlcm5hbHM6OnNldFJlc291cmNlVGltaW5nU3VwcG9ydCk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4K
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5pZGw6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJs
ZXMgUmVzb3VyY2VUaW1pbmcuCisKIDIwMTYtMDQtMjggIEpvYW5tYXJpZSBEaWdncyAgPGpkaWdn
c0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEFYOiBbQVRLXSBXZSBuZWVkIHRvIGJlIHNtYXJ0ZXIg
YWJvdXQgZmxhdHRlbmluZyBhbmQgdGhlIGFjY2Vzc2libGUgdGV4dCBpbXBsZW1lbnRhdGlvbgpA
QCAtNTE5Miw3ICs1MjQ1LDcgQEAKICAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0ay9BY2Nlc3Np
YmlsaXR5T2JqZWN0QXRrLmNwcDoKICAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmpl
Y3Q6OmFjY2Vzc2liaWxpdHlQbGF0Zm9ybUluY2x1ZGVzT2JqZWN0KToKIAotMjAxNi0wNC0xOCAg
QnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisyMDE2LTA0LTI4ICAyMDE2LTA0LTE4
ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBNb2Rlcm4gSURC
IChCbG9iIHN1cHBvcnQpOiBXaGVuIHJlYWRpbmcgQmxvYnMgZnJvbSB0aGUgZGF0YWJhc2UsIGdy
YW50IHRoZSBOZXR3b3JraW5nIHByb2Nlc3Mgc2FuZGJveCBhY2Nlc3MgdG8gdGhlIGZpbGVzLgog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2NjQwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVy
cy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApp
bmRleCBjNDRlNTgyZDdhMjY2YTc0YTE1NTExODgzNjVkMzNlOTY3N2VjZWE4Li5kNWIzMDNmMTRj
NzNlODFlMGU1NDQ1YjMyNmQwNjM3ZDk5MmE0OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTcxLDYgKzcxLDkgQEAKICAg
ICBtYWNybyhOdW1iZXIpIFwKICAgICBtYWNybyhOdW1iZXJGb3JtYXQpIFwKICAgICBtYWNybyhP
YmplY3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZUVudHJ5KSBcCisgICAgbWFjcm8oUGVyZm9y
bWFuY2VFbnRyeUxpc3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKSBc
CiAgICAgbWFjcm8oUHJvbWlzZSkgXAogICAgIG1hY3JvKFByb3h5KSBcCiAgICAgbWFjcm8oUmFu
Z2VFcnJvcikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDIwYTc5MDQ3YjY4
NDEwOGY2MzE0ZDc5YTk1YTdjNDI4N2YxOTlmNS4uYzNhMTJlNGM2NDZhNjM5Njc0ZWI5NzY3Y2Iy
NGUyY2YxYTA1Mjk0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC01MTgsNyAr
NTE4LDEwIEBAIE5PTl9TVkdfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvcGFnZS9M
b2NhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9OYXZpZ2F0b3IuaWRsIFwKICAgICAk
KFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRs
IFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgXAog
ICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29y
ZSkvcGFnZS9TY3JlZW4uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvV2ViS2l0UG9pbnQuaWRs
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agppbmRleCAwZjE4ZTIyZWU5YTZiZmZmNmU5NGUzMjJiNDQ3ZmMwOTU4Y2M5ZGMwLi40NWM0ZjM5
MjUwNWY1MjAxNDg4N2I3ODkyNGM2MTY2ZmQ5NjM4NTZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTkxLDYgKzU5OTEsMTQg
QEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3RDEwRDk5QkFF
MDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNw
ZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5j
cHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1Zh
bHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5
RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovOyB9OworCQlD
QjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0QTFDQ0NGMkREMDA1
OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUxMUNDRjkzODkw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnku
aCAqLzsgfTsKKwkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRy
eUxpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICov
OyB9OworCQlDQjM4RkQ1NDFDQ0Y5MzlFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZE
NTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLzsgfTsKKwkJ
Q0IzOEZENTcxQ0QyMUUyQTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1NTFD
RDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLzsgfTsKKwkJ
Q0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1
ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAqLzsg
fTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Iz
OEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oICov
OyB9OwogCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxNTFBOTM0QjQz
MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4
Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUx
NTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYg
LyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi87IH07CkBAIC0xMzk1Niw2ICsxMzk2NCwxNCBAQAog
CQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlv
VmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0
UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFuY2VFbnRy
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDREMUNDRjkzN0UwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IGZpbGVFbmNvZGluZyA9
IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50
cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU1MUNEMjFENUIw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQjhD
RjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRy
b2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29u
dHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODA1OCw2ICsxODA3
NCw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmggKi8s
CiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmlkbCAqLywKIAkJ
CQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJ
CUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKIAkJ
CQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5pZGwgKi8sCiAJ
CQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAq
LywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aCAqLywKQEAgLTIyMzEzLDYgKzIyMzMwLDcgQEAKIAkJCQk4M0YxMjA2QTFCOEMxMDM2MDBENzVG
NjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3QzkxQTM4RDFCNDk4QUJFMDAz
RjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdDOTFBMzhFMUI0OThBQkUwMDNG
OUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovLAogCQkJCTkzQjcwRDRGMDlFQjBD
N0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwICovLAogCQkJCTkzQjcw
RDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCAqLywKIAkJ
CQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25z
dHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NDksOCArMjI2NjcsMTQgQEAKIAkJCQlBOUQyNDdGNjBE
NzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlFNTFBODFERTE3Mjk4RDc3
MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4MTAw
OEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJQ0IzOEZENEYxQ0NGOTM3RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovLAorCQkJCUNCMzhGRDUwMUND
RjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCiAJCQkJOEE5QTU4
NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJ
CQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAq
LywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUxODlFMTVBNjAwMDE5QUUyIC8q
IEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1ODc3MTFFODRDOTgwMDhBQ0ZE
MSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNFQzAxQzAwQzI3NERERDAwOUY0
RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1NTU2LDYgKzI1NTgwLDcgQEAKIAkJCQkyRDI5
RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogRGlzcGxheVJlZnJlc2hN
b25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUNDODE5MkVDQzgzMDA5ODRCNzgg
LyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Iz
OEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERpc3BsYXlTbGVlcERpc2FibGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJDMDAyNkNFNzIgLyogRGlzcGxh
eVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwOTExMkIwMjZG
NzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywKQEAgLTI3NjkxLDYgKzI3NzE2
LDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVmlldy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRlcldp
ZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg5Q0NDNTMw
RjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNv
bW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThCRTk4NDkwMDZDRUJDQyAvKiBS
ZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4MDIwLDYgKzI4MDQ2LDcgQEAK
IAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxl
VHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTQxQ0NGOTM5RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0REVB
QTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxlVmlzdWFsRGF0YS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVy
LmggaW4gSGVhZGVycyAqLywKQEAgLTI5MjAyLDYgKzI5MjI5LDcgQEAKIAkJCQlCMjc1MzU3NzBC
MDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk0M0VERDY3
RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVy
cy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUzNDE4NjRENUFGMDA4
NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODRG
RTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTMxMjIwLDYgKzMxMjQ4LDcgQEAKIAkJCQlCQzk2REI0NjBGM0E4ODIyMDA1
NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNF
QTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzkyRjE0NDBBRDE4NUZF
MDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0VBNDg2
RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxz
TWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzE5OTYsNiArMzIwMjUsNyBAQAogCQkJCTQ0
NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MubW0gaW4gU291
cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMgLyogV2ViQ29yZVZpZXcubSBp
biBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlBREY1MCAvKiBXZWJEZWJ1Z2dl
ckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAv
KiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkUwRDg0
RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMjI1
QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA3NSw2ICszMjEwNSw3IEBACiAJCQkJQjEwQjY5ODEx
NDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93QW5pbWF0aW9uLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5cGUu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3MDBG
OTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTE5NTE2QjFCNjU5
OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXJNYWMu
bW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTEyLDYgKzMyMTQzLDcgQEAKIAkJCQkwMEI5MzE4OTEz
QkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNj
b3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAvKiBY
TUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM3NzJD
NDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZl
bnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RGRDQ4RjBFMzA1MjkwMDA5RDEw
QUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1
cmVzLmNwcAppbmRleCAxY2Y0YWE3OGNkNzUzZDA3MGFkNWJlNDE4MTlhNDAyZDQ4Mzk0YjIwLi4w
OTYyNmYyNWQzYjg1YmM2NDEzZmM5ZWEzNjE2MGE4OGEzM2UwMzczIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5jcHAKQEAgLTY1LDYgKzY1LDcgQEAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6UnVudGltZUVu
YWJsZWRGZWF0dXJlcygpCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykK
ICAgICAsIG1faXNJbmRleGVkREJXb3JrZXJzRW5hYmxlZChmYWxzZSkKICNlbmRpZgorICAgICwg
bV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZChmYWxzZSkKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogICAgICwgbV9pc01lZGlhU3RyZWFtRW5hYmxlZCh0cnVlKQogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5oCmluZGV4IDVkNjQ2ODY1MDI2MWIxNzA3OGNlYjNjNTIwNjg5MTNlNTA1MDJlMGEuLmIxYmE2
ZjNlY2MwMTViZTY5NDZhODg0NzFiYTZlZWQ0MzZlMDAyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBA
IC0yMDEsNiArMjAxLDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRF
bmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBp
c0VuYWJsZWQ7IH0KICAgICBib29sIHBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsg
cmV0dXJuIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVz
b3VyY2VUaW1pbmdFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0Vu
YWJsZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBib29sIHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNv
bnN0IHsgcmV0dXJuIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShH
QU1FUEFEKQogICAgIHZvaWQgc2V0R2FtZXBhZHNFbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBt
X2FyZUdhbWVwYWRzRW5hYmxlZCA9IGFyZUVuYWJsZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5h
YmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJlR2FtZXBhZHNFbmFibGVkOyB9CkBAIC0yNjIsNiAr
MjY1LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAg
ICAgYm9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAg
Ym9vbCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNl
VGltaW5nRW5hYmxlZDsKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wg
bV9pc0luZGV4ZWREQkVuYWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAppbmRleCBlYmRkMzdmOGM0YzIxN2Iz
OTkxZmVkMzBjODU3NDc5NzYxZWQyMzAzLi44ZjExZTcwMjU3ZmRjMTE3NTUxYjA3YmZjOGM3YmMy
ODhkZGNhYzA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZv
cm1hbmNlRW50cnlDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
UGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKQEAgLTMwLDEzICszMCwxMyBAQAogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KICNpbmNs
dWRlICJKU1BlcmZvcm1hbmNlRW50cnkuaCIKIAogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgor
I2lmIEVOQUJMRShVU0VSX1RJTUlORykKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgog
I2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIK
ICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUuaCIKQEAgLTUxLDEwICs1MSw4IEBAIEpTVmFs
dWUgdG9KUyhFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJm
b3JtYW5jZUVudHJ5KiBlbnRyCiAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVs
bCgpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzUmVz
b3VyY2UoKSkKICAgICAgICAgcmV0dXJuIHdyYXA8SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
PihnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcqPihl
bnRyeSkpOwotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKGVudHJ5
LT5pc01hcmsoKSkKQEAgLTY4LDUgKzY2LDMgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpT
RE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRh
YmxlTG9hZGVyLmNwcAppbmRleCBjZGM0NTlmMmJmYThhMWJlNjJhZmVlMzNjNGIwYmU3NzFjYjYx
YTFkLi41ZjVlZmQ4NDE4YTM3ZWEwMmRmYWI2MzUzYjAyNWE4YTYwNmZhYmU1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcApAQCAt
NDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJl
c291cmNlRXJyb3IuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKKyNpbmNsdWRlICJS
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NoZW1lUmVnaXN0cnkuaCIKICNp
bmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9hZGVyLmgi
CkBAIC0zODUsOSArMzg2LDggQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRS
ZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2VjdXIKICAgICAgICAgfQog
CiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCBuZXdSZXF1ZXN0KHJlcXVlc3QsIG9wdGlv
bnMpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgICAgIG5ld1JlcXVlc3Quc2V0
SW5pdGlhdG9yKG1fb3B0aW9ucy5pbml0aWF0b3IpOwotI2VuZGlmCisgICAgICAgIGlmIChSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxl
ZCgpKQorICAgICAgICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25zLmluaXRp
YXRvcik7CiAgICAgICAgIEFTU0VSVCghbV9yZXNvdXJjZSk7CiAgICAgICAgIG1fcmVzb3VyY2Ug
PSBtX2RvY3VtZW50LmNhY2hlZFJlc291cmNlTG9hZGVyKCkucmVxdWVzdFJhd1Jlc291cmNlKG5l
d1JlcXVlc3QpOwogICAgICAgICBpZiAobV9yZXNvdXJjZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCmluZGV4IGQzOWZkMjdkYzU2NmMwZmUyNGQx
MGM2MDE0YzViZWRlZDNlNGZjYjkuLmU1NDY3ZmQxMTEwOGUyMTA5ZTFkMmY5ZDlkNTZiNWMzZTg2
ZDEzMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3Rp
Zmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVy
LmNwcApAQCAtMzksNiArMzksNyBAQAogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQcm9n
cmVzc1RyYWNrZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIlJ1
bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKIAogI2lmIFVTRShRVUlDS19MT09LKQogI2luY2x1ZGUg
IlF1aWNrTG9vay5oIgpAQCAtMTQ2LDkgKzE0Nyw4IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZp
ZXI6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2ln
CiAgICAgaWYgKGxvYWRlciAmJiAhcmVxdWVzdC5pc051bGwoKSAmJiByZXF1ZXN0LnVybCgpID09
IGxvYWRlci0+dXJsKCkpCiAgICAgICAgIHJlcXVlc3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVl
KTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgcmVxdWVzdC5zZXRSZXBvcnRM
b2FkVGltaW5nKHRydWUpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHJlcXVl
c3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWROb3Rp
Zmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNv
dXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAppbmRleCBjMGE5OWEzZGU5Nzg5NDVm
ZDY0OWRjMmQ2ZWE3OGRiNjc4NzEzMDFkLi4wOTY3NWZjNjEwZDhiMzQ5ODg0OTQ4YzBlY2UwZDM5
NTJmOGZjNWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTYxLDYgKzYxLDcgQEAKICNpbmNsdWRlICJQbGF0Zm9y
bVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNp
bmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIK
ICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKQEAgLTc1LDkgKzc2LDcgQEAKICNpbmNsdWRlICJDYWNo
ZWRUZXh0VHJhY2suaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICNp
bmNsdWRlICJQZXJmb3JtYW5jZS5oIgotI2VuZGlmCiAKICNkZWZpbmUgUFJFTE9BRF9ERUJVRyAw
CiAKQEAgLTY3MSwxMSArNjcwLDggQEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3Vy
Y2U+IENhY2hlZFJlc291cmNlTG9hZGVyOjpyZXZhbGlkYXRlUmVzb3VyY2UoY28KICAgICAKICAg
ICBtZW1vcnlDYWNoZS5yZW1vdmUoKnJlc291cmNlKTsKICAgICBtZW1vcnlDYWNoZS5hZGQoKm5l
d1Jlc291cmNlKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHN0b3JlUmVzb3Vy
Y2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7Ci0jZWxzZQot
ICAgIFVOVVNFRF9QQVJBTShyZXF1ZXN0KTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAg
ICAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJl
cXVlc3QpOwogICAgIHJldHVybiBuZXdSZXNvdXJjZTsKIH0KIApAQCAtNjkwLDE1ICs2ODYsMTQg
QEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IENhY2hlZFJlc291cmNlTG9h
ZGVyOjpsb2FkUmVzb3VyY2UoQ2FjaGVkUmUKIAogICAgIGlmIChyZXF1ZXN0LmFsbG93c0NhY2hp
bmcoKSAmJiAhbWVtb3J5Q2FjaGUuYWRkKCpyZXNvdXJjZSkpCiAgICAgICAgIHJlc291cmNlLT5z
ZXRPd25pbmdDYWNoZWRSZXNvdXJjZUxvYWRlcih0aGlzKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQotICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNv
dXJjZSwgcmVxdWVzdCk7Ci0jZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVS
ZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAg
ICByZXR1cm4gcmVzb3VyY2U7CiB9CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogdm9p
ZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9y
bWF0aW9uKGNvbnN0IENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiYgcmVzb3Vy
Y2UsIGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKKyAgICBBU1NFUlQo
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0Vu
YWJsZWQoKSk7CiAgICAgaWYgKHJlc291cmNlLT50eXBlKCkgPT0gQ2FjaGVkUmVzb3VyY2U6Ok1h
aW5SZXNvdXJjZSkgewogICAgICAgICAvLyA8aWZyYW1lPnMgc2hvdWxkIHJlcG9ydCB0aGUgaW5p
dGlhbCBuYXZpZ2F0aW9uIHJlcXVlc3RlZCBieSB0aGUgcGFyZW50IGRvY3VtZW50LCBidXQgbm90
IHN1YnNlcXVlbnQgbmF2aWdhdGlvbnMuCiAgICAgICAgIGlmIChmcmFtZSgpLT5vd25lckVsZW1l
bnQoKSAmJiBtX2RvY3VtZW50TG9hZGVyLT5mcmFtZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5j
b21taXR0aW5nRmlyc3RSZWFsTG9hZCgpKSB7CkBAIC03MTAsNyArNzA1LDYgQEAgdm9pZCBDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9u
KGNvbnN0IENhY2hlZFIKICAgICAgICAgbV9pbml0aWF0b3JNYXAuYWRkKHJlc291cmNlLmdldCgp
LCBpbmZvKTsKICAgICB9CiB9Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAog
c3RhdGljIHZvaWQgbG9nUmV2YWxpZGF0aW9uKGNvbnN0IFN0cmluZyYgcmVhc29uLCBEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudCYgbG9nQ2xpZW50KQogewpAQCAtOTc2LDggKzk3MCw5IEBAIHZvaWQg
Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwg
Ym9vbCBzaG91bGRQZXJmb3JtCiAgICAgUmVmUHRyPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0RG9j
dW1lbnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7CiAgICAgUmVmUHRyPERvY3VtZW50PiBwcm90
ZWN0RG9jdW1lbnQobV9kb2N1bWVudCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQot
ICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+cmVzcG9uc2UoKS5pc0hUVFAoKSAmJiAoKCFy
ZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFyZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgfHwg
cmVzb3VyY2UtPnJlc3BvbnNlKCkuaHR0cFN0YXR1c0NvZGUoKSA9PSAzMDQpKSB7CisgICAgaWYg
KFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdF
bmFibGVkKCkKKyAgICAgICAgJiYgcmVzb3VyY2UgJiYgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaXNI
VFRQKCkKKyAgICAgICAgJiYgKCghcmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhcmVzb3Vy
Y2UtPndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNlLT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2Rl
KCkgPT0gMzA0KSkgewogICAgICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlKiwgSW5pdGlhdG9y
SW5mbz46Oml0ZXJhdG9yIGluaXRpYXRvckl0ID0gbV9pbml0aWF0b3JNYXAuZmluZChyZXNvdXJj
ZSk7CiAgICAgICAgIGlmIChpbml0aWF0b3JJdCAhPSBtX2luaXRpYXRvck1hcC5lbmQoKSkgewog
ICAgICAgICAgICAgQVNTRVJUKGRvY3VtZW50KCkpOwpAQCAtOTkwLDkgKzk4NSw2IEBAIHZvaWQg
Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwg
Ym9vbCBzaG91bGRQZXJmb3JtCiAgICAgICAgICAgICBtX2luaXRpYXRvck1hcC5yZW1vdmUoaW5p
dGlhdG9ySXQpOwogICAgICAgICB9CiAgICAgfQotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0ocmVz
b3VyY2UpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKICAgICBpZiAoZnJh
bWUoKSkKICAgICAgICAgZnJhbWUoKS0+bG9hZGVyKCkubG9hZERvbmUoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKaW5kZXggYjFm
N2M0ZmFmNWRiYjA5NjAxYzU4OTJmNWQ2NDcxMzk0OWIxZjYwZC4uNGRmODE5OTU5Y2VhYjExMDM3
NGI1NWI0NjAzOTMwYTg3ZWI3YzY2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTE0NCw5ICsxNDQsNyBAQCBwcml2YXRl
OgogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiByZXF1ZXN0UmVzb3Vy
Y2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwogICAgIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiByZXZhbGlkYXRlUmVzb3VyY2UoY29u
c3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiwgQ2FjaGVkUmVzb3VyY2UqKTsKICAgICBDYWNoZWRS
ZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gbG9hZFJlc291cmNlKENhY2hlZFJlc291cmNl
OjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElN
SU5HKQogICAgIHZvaWQgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNv
bnN0IENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiYsIGNvbnN0IENhY2hlZFJl
c291cmNlUmVxdWVzdCYpOwotI2VuZGlmCiAgICAgdm9pZCByZXF1ZXN0UHJlbG9hZChDYWNoZWRS
ZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFy
c2V0KTsKIAogICAgIGVudW0gUmV2YWxpZGF0aW9uUG9saWN5IHsgVXNlLCBSZXZhbGlkYXRlLCBS
ZWxvYWQsIExvYWQgfTsKQEAgLTE3OSwxMyArMTc3LDExIEBAIHByaXZhdGU6CiAKICAgICBUaW1l
ciBtX2dhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lcjsKIAotI2lmIEVOQUJMRShS
RVNPVVJDRV9USU1JTkcpCiAgICAgc3RydWN0IEluaXRpYXRvckluZm8gewogICAgICAgICBBdG9t
aWNTdHJpbmcgbmFtZTsKICAgICAgICAgZG91YmxlIHN0YXJ0VGltZTsKICAgICB9OwogICAgIEhh
c2hNYXA8Q2FjaGVkUmVzb3VyY2UqLCBJbml0aWF0b3JJbmZvPiBtX2luaXRpYXRvck1hcDsKLSNl
bmRpZgogCiAgICAgLy8gMjkgYml0cyBsZWZ0CiAgICAgYm9vbCBtX2F1dG9Mb2FkSW1hZ2VzIDog
MTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKaW5kZXggZWQzOWExZDE1MDgxYjQ3NjRh
ZTk3YWZhZjczOGJhOTY3OTdlNzMyYi4uYmM0ODE1YTNiNjBmNzI2MjE5ZDQ2YmZlNGJjZTFmODhh
NzI1YjkwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKQEAgLTQ3LDE1ICs0Nywx
MSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5H
KQogc3RhdGljIGNvbnN0IHNpemVfdCBkZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplID0g
MTUwOwotI2VuZGlmCiAKIFBlcmZvcm1hbmNlOjpQZXJmb3JtYW5jZShGcmFtZSYgZnJhbWUpCiAg
ICAgOiBET01XaW5kb3dQcm9wZXJ0eSgmZnJhbWUpCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlO
RykKICAgICAsIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKGRlZmF1bHRSZXNvdXJjZVRpbWlu
Z0J1ZmZlclNpemUpCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICAsIG1f
cmVmZXJlbmNlVGltZShmcmFtZS5kb2N1bWVudCgpLT5sb2FkZXIoKSA/IGZyYW1lLmRvY3VtZW50
KCktPmxvYWRlcigpLT50aW1pbmcoKS5yZWZlcmVuY2VNb25vdG9uaWNUaW1lKCkgOiBtb25vdG9u
aWNhbGx5SW5jcmVhc2luZ1RpbWUoKSkKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgLCBt
X3VzZXJUaW1pbmcobnVsbHB0cikKQEAgLTkxLDE0ICs4NywxMSBAQCBQZXJmb3JtYW5jZVRpbWlu
ZyogUGVyZm9ybWFuY2U6OnRpbWluZygpIGNvbnN0CiAgICAgcmV0dXJuIG1fdGltaW5nLmdldCgp
OwogfQogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQogUGFzc1JlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAog
ewogICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNl
RW50cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAg
ZW50cmllcy0+YXBwZW5kQWxsKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwotI2VuZGlmIC8vIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYg
KG1fdXNlclRpbWluZykgewpAQCAtMTE1LDEyICsxMDgsMTAgQEAgUGFzc1JlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3Qg
U3RyaW4KIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJm
b3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5H
KQogICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUsICJyZXNv
dXJjZSIpKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNlVGltaW5n
QnVmZmVyKQogICAgICAgICAgICAgZW50cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICB9Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2VyVGltaW5nKSB7
CkBAIC0xMzksMTQgKzEzMCwxMiBAQCBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQ
ZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbgogewogICAgIFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0
OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVudHJ5
VHlwZS5pc051bGwoKSB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUs
ICJyZXNvdXJjZSIpKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNl
VGltaW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5hbWUoKSA9PSBuYW1l
KQogICAgICAgICAgICAgICAgIGVudHJpZXMtPmFwcGVuZChyZXNvdXJjZSk7CiAgICAgICAgIH0K
ICAgICB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2Vy
VGltaW5nKSB7CkBAIC0xNjEsMTAgKzE1MCw2IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluCiAg
ICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElN
RUxJTkUpCi0KLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiB2b2lkIFBlcmZvcm1hbmNl
Ojp3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpCiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1
ZmZlci5jbGVhcigpOwpAQCAtMTk1LDggKzE4MCw2IEBAIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVz
b3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkKICAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZl
ci5zaXplKCkgPj0gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7CiB9CiAKLSNlbmRpZiAvLyBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogdm9pZCBQ
ZXJmb3JtYW5jZTo6d2Via2l0TWFyayhjb25zdCBTdHJpbmcmIG1hcmtOYW1lLCBFeGNlcHRpb25D
b2RlJiBlYykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5M2Y0NDA2NDRiYjc2
M2ZhN2RjOGQxN2U0ODYyZTMyMzVlOWM3NmY3Li42ZmZmNDVjODQ1ZTA5ODllZTc0MjUxNzYxYmI4
NWM1NGM3N2NhNDVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC02NCwxOCArNjQs
MTQgQEAgcHVibGljOgogICAgIFBlcmZvcm1hbmNlVGltaW5nKiB0aW1pbmcoKSBjb25zdDsKICAg
ICBkb3VibGUgbm93KCkgY29uc3Q7CiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUp
CiAgICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllcygp
IGNvbnN0OwogICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVu
dHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogICAgIFBhc3NSZWZQdHI8UGVy
Zm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBu
YW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7Ci0jZW5kaWYKIAotI2lmIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCiAgICAgdm9pZCB3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpOwogICAg
IHZvaWQgd2Via2l0U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGludCk7CiAK
ICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwg
RG9jdW1lbnQqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiwgZG91YmxlIGluaXRpYXRpb25UaW1lLCBkb3VibGUgZmluaXNoVGltZSk7Ci0jZW5kaWYKIAog
ICAgIHVzaW5nIFJlZkNvdW50ZWQ8UGVyZm9ybWFuY2U+OjpyZWY7CiAgICAgdXNpbmcgUmVmQ291
bnRlZDxQZXJmb3JtYW5jZT46OmRlcmVmOwpAQCAtOTcsMTEgKzkzLDkgQEAgcHJpdmF0ZToKIAog
ICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwog
ICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlVGltaW5nPiBtX3RpbWluZzsKLSAgICAKLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorCiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5Pj4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcjsKICAgICB1bnNpZ25lZCBtX3Jlc291cmNl
VGltaW5nQnVmZmVyU2l6ZTsKLSNlbmRpZgogCiAgICAgZG91YmxlIG1fcmVmZXJlbmNlVGltZTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAppbmRleCAyMWJmYTRhOTkxNDQ2NDMxZjgy
NzA4N2IxNDYyYWM1NjY3YzJlY2RlLi5hMDU2NDc5MzUxNTEwZGZmZjk5ODY0YWQ0ZWMwZGVkMzZi
OTk0NWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbApAQCAtMzYsMTggKzM2LDE1
IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFBlcmZvcm1hbmNlTmF2aWdhdGlvbiBuYXZpZ2F0
aW9uOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBQZXJmb3JtYW5jZVRpbWluZyB0aW1pbmc7CiAK
LSNpZiBkZWZpbmVkKEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElORSkgJiYgRU5BQkxFX1BFUkZP
Uk1BTkNFX1RJTUVMSU5FCi0gICAgUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmll
cygpOwotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeVR5cGUoRE9N
U3RyaW5nIGVudHJ5VHlwZSk7Ci0gICAgUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50
cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSA9
IG51bGwpOwotI2VuZGlmCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBl
cmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVu
dGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmll
c0J5VHlwZShET01TdHJpbmcgZW50cnlUeXBlKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNv
dXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShE
T01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSA9IG51bGwpOwogCi0j
aWYgZGVmaW5lZChFTkFCTEVfUkVTT1VSQ0VfVElNSU5HKSAmJiBFTkFCTEVfUkVTT1VSQ0VfVElN
SU5HCi0gICAgdm9pZCB3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpOwotICAgIHZvaWQgd2Vi
a2l0U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGxvbmcgbWF4U2l6ZSk7CiAK
LSAgICBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9ud2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJm
dWxsOwotI2VuZGlmCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIHZvaWQg
d2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNv
dXJjZVRpbWluZ10gdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWdu
ZWQgbG9uZyBtYXhTaXplKTsKKworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5n
XSBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9ud2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxs
OwogCiAgICAgLy8gU2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvQ1ItdXNlci10aW1pbmct
MjAxMjA3MjYvCiAjaWYgZGVmaW5lZChFTkFCTEVfVVNFUl9USU1JTkcpICYmIEVOQUJMRV9VU0VS
X1RJTUlORwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKaW5kZXggMzJk
YjdjZmU1NjM1Y2RmMzJjMzA1ZWM0ZWFjMDk1MDFlNWY4M2VlNS4uMzc0ZTE0MjkzMTgzZjk3M2Zh
YTc4NDE4MWRmZDU5ZTIzMDk1YjVhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnkuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJM
RShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC02OSw0ICs2OSw0IEBAIGRvdWJsZSBQZXJmb3JtYW5jZUVudHJ5
OjpkdXJhdGlvbigpIGNvbnN0CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8v
IEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5k
aWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eS5oCmluZGV4IDEyOWEyNDY0MGNjNGQyYTM1Y2FlYWI2YmEyZjFhZmM4MTg0ZjM2MmIuLmNmMzdj
MGU1NjlkZDc0ZjJhNTBjZjljZjJkMmE5ZjA0ZDZkNWM5ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNl
RW50cnlfaAogI2RlZmluZSBQZXJmb3JtYW5jZUVudHJ5X2gKIAotI2lmIEVOQUJMRShXRUJfVElN
SU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1J
TkcpCiAKICNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRy
Lmg+CkBAIC03MSw1ICs3MSw1IEBAIHByaXZhdGU6CiAKIH0KIAotI2VuZGlmIC8vICFFTkFCTEUo
V0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vICFF
TkFCTEUoV0VCX1RJTUlORykKICNlbmRpZiAvLyAhZGVmaW5lZChQZXJmb3JtYW5jZUVudHJ5X2gp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAppbmRleCA5YmNhZjRjMzQw
MTg5ODU1YTJiNjRkNmYwNWIyOThjY2MxZjcyM2U2Li5mMzdlMmEzY2JhNDMyNDEzYTBhZjdiYmM0
NmE4ZDVmMTQ0YmZhZjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlRW50cnkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5p
ZGwKQEAgLTMxLDcgKzMxLDcgQEAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJw
ZXJmL3Jhdy1maWxlL3RpcC9zcGVjcy9QZXJmb3JtYW5jZVRpbWVsaW5lL092ZXJ2aWV3Lmh0bWwK
IFsKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1B
TkNFX1RJTUVMSU5FLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAg
Q3VzdG9tVG9KU09iamVjdCwKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKaW5kZXggZDlmYTA1NTc3ZGQ1NzllOWNhODI3NGRkNzhi
NGFjZTM0YmM3OTI4Yi4uYzAzNTkyOGIzMWM2ZGU5ZDYxZDg2MzExNjMxZDMzNTZmYzNiODI2MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKQEAgLTMy
LDcgKzMyLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVu
dHJ5TGlzdC5oIgogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5D
RV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1h
bmNlRW50cnkuaCIKIApAQCAtNzUsNCArNzUsNCBAQCB2b2lkIFBlcmZvcm1hbmNlRW50cnlMaXN0
Ojpzb3J0KCkKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdF
Ql9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aAppbmRleCA5N2EyMTJkZDZmZDA1NDQ3NjZlZDc1NjNjMTc1NmI5MTM2ZDdmZWQ2Li5kMmM0MWY1
YWQ0N2YxOGFiMTEzMGQzYzA1NWFlMzUxMTAyYjBjNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZv
cm1hbmNlRW50cnlMaXN0X2gKICNkZWZpbmUgUGVyZm9ybWFuY2VFbnRyeUxpc3RfaAogCi0jaWYg
RU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBF
TkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTY0LDUgKzY0LDUgQEAgcHJpdmF0ZToKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFC
TEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKQog
I2VuZGlmIC8vIFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKaW5kZXggN2UyNWE4NWNlNmM4OTM4NGVmZTU1MmY4Mzc2
OTI1OTM1ODAyODhmOS4uMTgwNjZjYzM3ZTU3M2YyMGUxYTkwNWMzODhiMDIxODE4ZWI3OTM2YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKQEAgLTMy
LDEwICszMiw5IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9
V0VCX1RJTUlORywKLSAgICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwKKyAgICBF
bmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NW
VGFibGUsCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZUVudHJ5TGlzdCB7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogICAgIGdldHRlciBQZXJmb3JtYW5jZUVu
dHJ5IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCAzMWI4OTcxMzdmNTEx
ZTQ1Zjc3NTdlOTU2YzI2ZjM3NTg3YWI2YTYwLi41YmI2MTQwOTcxOThmZjU2MjFjNTFjODY5NmE2
ZDI3OTJkMGYwNjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMyLDggKzMyLDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAKLSNpZiBFTkFCTEUoUkVT
T1VSQ0VfVElNSU5HKQotCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJEb2N1bWVu
dExvYWRUaW1pbmcuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRlci5oIgpAQCAtMTk5LDUgKzE5
NywzIEBAIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nOjpyZXNvdXJjZVRpbWVUb0Rv
Y3VtZW50TWlsbGlzZWNvbmRzKGludCBkZWx0YU1pCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCmluZGV4IDk5ZGZjNWJjZGNkYzc5
ZTM1M2U5NDkzNmM0ODI4NTM2MTdjNWY1M2YuLjM3YjVhZTkxZWRmMDc1YWY0OWIyMDU3OTk1NDM4
ZGQ4ZWY2YWE0ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5oCkBAIC0zMiw4ICszMiw2IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmdfaAogI2RlZmluZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nX2gKIAotI2lmIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCi0KICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5nLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KQEAgLTg1LDYgKzgzLDQgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKLQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmdfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuaWRsCmluZGV4IDNmMDExYjIzYjA1N2ExYWUwZTYzNGVmMTk0M2IxMDFmY2U2ODY2ZDMu
LjNmMzA5ZTNiYTJkYjY0YjQ0OTVlYWU2MTgwODIyOTllOWI2MmQ0NTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtMzAsNyAr
MzAsNyBAQAogCiAvLyBTZWU6IGh0dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9yYXctZmls
ZS90aXAvc3BlY3MvUmVzb3VyY2VUaW1pbmcvT3ZlcnZpZXcuaHRtbAogWwotICAgIENvbmRpdGlv
bmFsPVJFU09VUkNFX1RJTUlORywKKyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5n
CiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIDogUGVyZm9ybWFuY2VFbnRy
eSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpbml0aWF0b3JUeXBlOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggZDQ1YWNjZDVmMGJjZTA2NzE3ZWZl
YzhhOWIwMjZjYWM4NjIyZmJhOS4uYzliNDZjMzMxNzQ5NTVhZTAyNGViYzAwNjlkNDc2ZmRhZTEw
YzZhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMzMxOCw0ICszMzE4
LDkgQEAgdm9pZCBJbnRlcm5hbHM6OnNldExpbmtQcmVsb2FkU3VwcG9ydChib29sIGVuYWJsZSkK
ICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldExpbmtQcmVs
b2FkRW5hYmxlZChlbmFibGUpOwogfQogCit2b2lkIEludGVybmFsczo6c2V0UmVzb3VyY2VUaW1p
bmdTdXBwb3J0KGJvb2wgZW5hYmxlKQoreworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNo
YXJlZEZlYXR1cmVzKCkuc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGVuYWJsZSk7Cit9CisKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4IGYzYWZmMmZmOTcxODdjOTllYWUyYWU5
ZDk3MmU1N2YzNzQ0NzM2MTQuLmMwNzFhNDE1MTZjMTE5MWQwYzUyZDE4ZjJlNTQ1YjljZjMxNmRm
MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApAQCAtNDY4LDYgKzQ2OCw3IEBAIHB1
YmxpYzoKICAgICAKICAgICB2b2lkIHNldFZpZXdwb3J0Rm9yY2VBbHdheXNVc2VyU2NhbGFibGUo
Ym9vbCk7CiAgICAgdm9pZCBzZXRMaW5rUHJlbG9hZFN1cHBvcnQoYm9vbCk7CisgICAgdm9pZCBz
ZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQg
SW50ZXJuYWxzKERvY3VtZW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5k
ZXggMzJhZGIxYzAxM2FhZTg3NDA0MWQ0YTE3NTZkMDVlMDM0MDI3N2U0ZC4uMjY3N2Y3NWU4OGMz
YmJkYWNkOTVmNTk2YTc3MjcyOGQ2Y2NmNWM0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmlkbApAQCAtNDQ2LDQgKzQ0Niw1IEBAIGVudW0gQXV0b0ZpbGxCdXR0b25UeXBlIHsKIAog
ICAgIHZvaWQgc2V0Vmlld3BvcnRGb3JjZUFsd2F5c1VzZXJTY2FsYWJsZShib29sZWFuIHNjYWxh
YmxlKTsKICAgICB2b2lkIHNldExpbmtQcmVsb2FkU3VwcG9ydChib29sZWFuIHNjYWxhYmxlKTsK
KyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sZWFuIHNjYWxhYmxlKTsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2Uv
Y21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggOTMwNGI1YWVkMjgyNmE5MTYxMTRkZWZk
YzliZjU5ZmIwZDU2YjcwMC4uNzY4ZTNlNTlkN2UxOWFhYWEwNGYwMjIxNzgzNWNlOTY5NjdjMDky
ZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1Nv
dXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtMTU4LDcgKzE1OCw2IEBAIG1hY3Jv
KFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX05P
VElGSUNBVElPTlMgIlRvZ2dsZSBEZXNrdG9wIE5vdGlmaWNhdGlvbnMgU3VwcG9ydCIgUFJJVkFU
RSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX09SSUVOVEFUSU9OX0VWRU5U
UyAiVG9nZ2xlIE9yaWVudGF0aW9uIEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUERGS0lUX1BMVUdJTiAiVG9nZ2xlIFBERktpdCBw
bHVnaW4gc3VwcG9ydCIgUFJJVkFURSBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FICJUb2dnbGUgUGVyZm9ybWFuY2UgVGltZWxpbmUgc3Vw
cG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BPSU5U
RVJfTE9DSyAiVG9nZ2xlIHBvaW50ZXIgbG9jayBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUFJPWElNSVRZX0VWRU5UUyAiVG9nZ2xlIFByb3hp
bWl0eSBFdmVudHMgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJ
TkUoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCAiVG9nZ2xlIHB1YmxpYyBzdWZmaXggbGlzdCBz
dXBwb3J0IiBQUklWQVRFIE9GRikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzYmM5ZTIyOGI0OWJlZTdhZGYwMDliM2VmZTk2
N2MzMTU1OWExOGJiLi5iNzNjNTRhNzhkYzUzYmFiZTRkMmJlMDdlYzJlMWRjNzg1YmExZDUwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYu
d3M+CisKKyAgICAgICAgTW92ZSBSZXNvdXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRl
c3RzIHRoYXQgbWFrZSBzdXJlIFJlc291cmNlVGltaW5nIEFQSXMgYXJlIGV4cG9zZWQgYW5kIHRo
YXQgcmVzb3VyY2VzCisgICAgICAgIHNob3cgdXAgYXMgZW50cmllcyBpbiB0aGUgcGVyZm9ybWFu
Y2UgdGltZWxpbmUuCisKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291
cmNlLXRpbWluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3BlcmZvcm1hbmNl
L3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10
aW1pbmctZW50cmllcy5odG1sOiBBZGRlZC4KKwogMjAxNi0wNC0yOCAgSm9hbm1hcmllIERpZ2dz
ICA8amRpZ2dzQGlnYWxpYS5jb20+CiAKICAgICAgICAgQVg6IFtBVEtdIFdlIG5lZWQgdG8gYmUg
c21hcnRlciBhYm91dCBmbGF0dGVuaW5nIGFuZCB0aGUgYWNjZXNzaWJsZSB0ZXh0IGltcGxlbWVu
dGF0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg0ZTUyZDNmMWMzOWE3NWE2NTg5
MzZiZTQ1ZDg5MjA2MDY0MGY1ODQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ2IEBACitUaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRo
ZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFu
Y2Ugb2JqZWN0LCBhbG9uZyB3aXRoIHRoZWlyIHR5cGVzLgorCit3aW5kb3cucGVyZm9ybWFuY2Ug
W29iamVjdCBQZXJmb3JtYW5jZV0KK3dpbmRvdy5wZXJmb3JtYW5jZS5hZGRFdmVudExpc3RlbmVy
IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5kaXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtvYmplY3QgUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9CQUNLX0ZPUldBUkQgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfTkFWSUdBVEUgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVMT0FEIFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX1JFU0VSVkVEIFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5yZWRpcmVjdENvdW50IFtudW1iZXJdCit3aW5kb3cu
cGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uu
bm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5vbndlYmtpdHJlc291cmNldGltaW5n
YnVmZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJmb3JtYW5jZS5yZW1vdmVFdmVudExpc3RlbmVy
IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgW29iamVjdCBQZXJmb3JtYW5j
ZVRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuY29ubmVjdEVuZCBbbnVtYmVyXQor
d2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25uZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29tcGxldGUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nLmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nLmRvbUludGVyYWN0aXZlIFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nLmRvbUxvYWRpbmcgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcuZG9tYWluTG9va3VwRW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRv
bWFpbkxvb2t1cFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmZldGNo
U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubG9hZEV2ZW50RW5kIFtu
dW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmxvYWRFdmVudFN0YXJ0IFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVjdEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZy5yZWRpcmVjdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uu
dGltaW5nLnJlcXVlc3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5y
ZXNwb25zZUVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXNwb25zZVN0
YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnNlY3VyZUNvbm5lY3Rpb25T
dGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy51bmxvYWRFdmVudEVuZCBb
bnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy51bmxvYWRFdmVudFN0YXJ0IFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uud2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MgW2Z1bmN0
aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXMgW2Z1bmN0aW9uXQord2lu
ZG93LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXNCeU5hbWUgW2Z1bmN0aW9uXQord2luZG93
LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXNCeVR5cGUgW2Z1bmN0aW9uXQord2luZG93LnBl
cmZvcm1hbmNlLndlYmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSBbZnVuY3Rpb25dCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmddCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiBbcHJpbnRlZCBhYm92
ZSBhcyB3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZSBb
c3RyaW5nXQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2Ut
dGltaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWI3OTMxY2M1YTBjNjBhZTE3ODYzM2E3YmM0NTU1MjYx
ZTFkNmMxMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbApAQCAtMCww
ICsxLDEwNCBAQAorPHA+VGhpcyB0ZXN0IGR1bXBzIGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0
IGFyZSByZWFjaGFibGUgZnJvbSB0aGUgd2luZG93LnBlcmZvcm1hbmNlIG9iamVjdCwgYWxvbmcg
d2l0aCB0aGVpciB0eXBlcy48L3A+Cis8aHI+Cis8cHJlIGlkPSJwcmUiPjwvcHJlPgorCis8c2Ny
aXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1p
bmdTdXBwb3J0KHRydWUpOworICAgIAordmFyIGxvZ0J1ZmZlciA9IFtdOworZnVuY3Rpb24gbG9n
KHMpCit7CisgICAgbG9nQnVmZmVyLnB1c2gocyk7Cit9CisKK3ZhciBwcmUgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgncHJlJyk7CitmdW5jdGlvbiBmbHVzaExvZygpCit7CisgICAgdmFyIGxv
Z01lc3NhZ2UgPSBsb2dCdWZmZXIuam9pbigiIik7CisgICAgcHJlLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKGxvZ01lc3NhZ2UpKTsKK30KKworZnVuY3Rpb24gdHJ5RXZhbChz
dHJpbmcpCit7CisgICAgdHJ5IHsKKyAgICAgICAgcmV0dXJuIGV2YWwoc3RyaW5nKTsKKyAgICB9
IGNhdGNoIChlKSB7CisgICAgICAgIHJldHVybiBuZXcgU3RyaW5nKCJDYXVnaHQgZXhjZXB0aW9u
OiAiICsgZSk7CisgICAgfQorfQorCitmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpCit7
CisgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxsKSAvLzsK
KyAgICAgICAgcmV0dXJuICJudWxsIjsKKyAgICByZXR1cm4gdHlwZW9mIHZhbHVlOworfQorCitm
dW5jdGlvbiB0eXBlU3RyaW5nTnVsbEF3YXJlKHZhbHVlKQoreworICAgIHZhciB2YWx1ZVR5cGUg
PSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworICAgIHJldHVybiB2YWx1ZVR5cGUgPT0gIm9iamVj
dCIKKyAgICAgICAgPyBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpCisgICAg
ICAgIDogIlsiICsgdmFsdWVUeXBlICsgIl0iOworfQorCitmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1
ZU5hbWUpCit7CisgICAgdmFyIHZhbHVlID0gdHJ5RXZhbCh2YWx1ZU5hbWUpOworICAgIHZhciB2
YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworCisgICAgLy8gRG9uJ3QgdGFpbnQg
dGhlIHRlc3Qgd2l0aCBvdXIgb3duIHZhcmlhYmxlcworICAgIGlmICh2YWx1ZSA9PSBsb2dCdWZm
ZXIgfHwgdmFsdWUgPT0gcHJlKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBEb24ndCB0YWlu
dCB0aGUgdGVzdCB3aXRoIG91ciBvd24gcHJvcGVydGllcworICAgIGlmICgvX192aXNpdGVkQnlM
b2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkgfHwgL19fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1
ZV9fLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdvcmsgYXJv
dW5kIEZpcmVmb3ggaW5maW5pdGUgcmVjdXJzaW9uCisgICAgaWYgKC9cLlswLTldLy50ZXN0KHZh
bHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIEF2b2lkIGluZmluaXRlIHJlY3Vy
c2lvbgorICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNpdGVkQnlM
b2dWYWx1ZV9fKSB7IC8vOworICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRlZCBhYm92
ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2codmFsdWVOYW1lICsgIiAiICsgdHlwZVN0
cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9i
amVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAg
ICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB2YWx1ZU5hbWU7Cisg
ICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVlTmFtZSk7CisgICAgfQorfQorCitmdW5j
dGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkg
PSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KSB7CisgICAgICAg
IGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAgICBhcnJheS5zb3J0KCk7CisgICAgZm9y
ICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgeworICAgICAgICB2YXIgcHJvcGVy
dHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUob2JqZWN0TmFtZSArICIuIiArIHByb3Bl
cnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UnKTsKK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcgPSAndGltaW5nIGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dW
YWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZycpOword2luZG93LnBlcmZvcm1hbmNlLm5h
dmlnYXRpb24gPSAnbmF2aWdhdGlvbiBpcyBub3QgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dp
bmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UgPSAncGVy
Zm9ybWFuY2UgaXMgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScp
OworZmx1c2hMb2coKTsKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRS
ZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWlu
Zy1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFu
Y2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjUxMjg3N2IwZWZjZTc2NGViMWNkZjUzZGVjZTlmN2MwYTQzYzY1MjYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNl
LXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorUEFTUyBwZXJm
b3JtYW5jZS53ZWJraXRHZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScpLmxlbmd0aCBpcyAyCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFu
Y2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
cGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43MmJjMDEyYzYzNTYwZThiYzdkMjc1Yjg3NjdjNTNjYzkzZTg0OTY2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5j
ZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjMgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykK
KyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KHRydWUpOworPC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHNwYW4gaWQ9ImUiPjwvc3Bhbj4KKzxzcGFuIGlkPSJmIj48L3Nw
YW4+Cis8c2NyaXB0Pgord2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigp
IHsKKyAgICBzaG91bGRCZSgicGVyZm9ybWFuY2Uud2Via2l0R2V0RW50cmllc0J5VHlwZSgncmVz
b3VyY2UnKS5sZW5ndGgiLCAiMiIpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAg
ICB3aW5kb3cuaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydChmYWxzZSk7Cit9KTsK
KworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9D
aGFuZ2VMb2cKaW5kZXggNjk1NjljNGNhYTdlNmUxMTJlZGQzYTNiNDIzYmE5Mzc4M2I4OWFjZS4u
MjU2MDcyYmYwNDRlYjVhYWMwNzM5MGUzY2ZlMDU2MzY5ZDZlZWM3MSAxMDA2NDQKLS0tIGEvQ2hh
bmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE2LTA0LTI4ICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVo
aW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZTogUmVtb3ZlIHRo
ZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnLgorCiAyMDE2LTA0LTI4ICBDb21taXQg
UXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBy
b2xsaW5nIG91dCByMjAwMTg1Lgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277621</attachid>
            <date>2016-04-28 08:29:43 -0700</date>
            <delta_ts>2016-04-28 13:44:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160428173012.patch</filename>
            <type>text/plain</type>
            <size>51347</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MjdiNWY0MDNkOTRlNzcwYzVkZjFlNWVkNWY1NmFiZTM5YzFkZjYzLi4yNjYwZWYyZWI1MjUwN2Fm
YTQzYjg5NGRmMDczOWMzZDg1YWJjZjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZGVkIFBlcmZvcm1hbmNlRW50cnksIFBlcmZvcm1hbmNlRW50cnlMaXN0
IGFuZCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIGFzIHByb3BlcnR5IG5hbWVzLgorCiAyMDE2
LTA0LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgR2V0
dGVyU2V0dGVyIHN0cnVjdHVyZSBuZWVkcyBhIGdsb2JhbE9iamVjdC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0
NDllZTkwMmU5MTMyYmQ4NDg2MDgzMTA1ZmM2NzU3ZTg0MDI2MGQ2Li5hYTVhODkwY2MyNmM2OTg4
YmJkOWQ3NjQyM2E1MDY0YWFiYmMxMmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKKzIw
MTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNv
dXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgdGhlIFJlc291cmNlVGltaW5nIEFQSSBmcm9t
IGJlaW5nIGJlaGluZCBhIGJ1aWxkIHRpbWUgZmxhZyB0byBiZSBiZWhpbmQgYW4KKyAgICAgICAg
b2ZmLWJ5LWRlZmF1bHQgcnVudGltZSBmbGFnLCB0aGF0IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcg
aW50ZXJuYWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGh0
dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMu
aHRtbAorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogQWRkZWQgaWRsIGZpbGVzIGZv
ciBQZXJmb3JtYW5jZUVudHJ5LCBQZXJmb3JtYW5jZUVudHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IEFkZGVkIHRoZSB2YXJpb3VzIFBlcmZvcm1hbmNlKiBmaWxlcyB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOiBB
ZGRlZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6
OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAg
ICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNv
dXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNldFJlc291cmNlVGltaW5nRW5hYmxlZCk6CisgICAgICAgIChXZWJD
b3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpyZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQg
I2lmIGZvciBSZXNvdXJjZVRpbWluZy4gQWRkZWQgYnVpbGQgZmxhZyBhcm91bmQgVXNlclRpbWlu
ZyByZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDogUmVwbGFjZSAjaWYg
Zm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVy
L1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5n
IHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZp
ZXI6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2VMb2FkZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0
aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
cmV2YWxpZGF0ZVJlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9h
ZGVyOjpsb2FkUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OnN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbik6CisgICAgICAgIChX
ZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUpOgorICAgICAgICAqIGxvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRp
bWluZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmNwcDogUmVtb3ZlICNpZiBmb3IgUmVz
b3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6UGVyZm9ybWFuY2Up
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJp
ZXMpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVu
dHJpZXNCeVR5cGUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6Ondl
YmtpdEdldEVudHJpZXNCeU5hbWUpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2UuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJm
b3JtYW5jZS5pZGw6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUg
ZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwOiBSZW1vdmUgdGhlIFBF
UkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5Lmg6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5D
RV9USU1FTElORSBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5F
IGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oOiBSZW1v
dmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5F
IGJ1aWxkIGZsYWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxh
Zy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaDogUmVtb3ZlIHRo
ZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaWRsOiBSZXBsYWNlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxh
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFk
ZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3Jl
OjpJbnRlcm5hbHM6OnNldFJlc291cmNlVGltaW5nU3VwcG9ydCk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4K
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5pZGw6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJs
ZXMgUmVzb3VyY2VUaW1pbmcuCisKIDIwMTYtMDQtMjggIEpvYW5tYXJpZSBEaWdncyAgPGpkaWdn
c0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEFYOiBbQVRLXSBXZSBuZWVkIHRvIGJlIHNtYXJ0ZXIg
YWJvdXQgZmxhdHRlbmluZyBhbmQgdGhlIGFjY2Vzc2libGUgdGV4dCBpbXBsZW1lbnRhdGlvbgpA
QCAtNTE5Miw3ICs1MjQ1LDcgQEAKICAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0ay9BY2Nlc3Np
YmlsaXR5T2JqZWN0QXRrLmNwcDoKICAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmpl
Y3Q6OmFjY2Vzc2liaWxpdHlQbGF0Zm9ybUluY2x1ZGVzT2JqZWN0KToKIAotMjAxNi0wNC0xOCAg
QnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisyMDE2LTA0LTI4ICAyMDE2LTA0LTE4
ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBNb2Rlcm4gSURC
IChCbG9iIHN1cHBvcnQpOiBXaGVuIHJlYWRpbmcgQmxvYnMgZnJvbSB0aGUgZGF0YWJhc2UsIGdy
YW50IHRoZSBOZXR3b3JraW5nIHByb2Nlc3Mgc2FuZGJveCBhY2Nlc3MgdG8gdGhlIGZpbGVzLgog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU2NjQwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVy
cy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApp
bmRleCBjNDRlNTgyZDdhMjY2YTc0YTE1NTExODgzNjVkMzNlOTY3N2VjZWE4Li5kNWIzMDNmMTRj
NzNlODFlMGU1NDQ1YjMyNmQwNjM3ZDk5MmE0OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTcxLDYgKzcxLDkgQEAKICAg
ICBtYWNybyhOdW1iZXIpIFwKICAgICBtYWNybyhOdW1iZXJGb3JtYXQpIFwKICAgICBtYWNybyhP
YmplY3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZUVudHJ5KSBcCisgICAgbWFjcm8oUGVyZm9y
bWFuY2VFbnRyeUxpc3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKSBc
CiAgICAgbWFjcm8oUHJvbWlzZSkgXAogICAgIG1hY3JvKFByb3h5KSBcCiAgICAgbWFjcm8oUmFu
Z2VFcnJvcikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFr
ZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDIwYTc5MDQ3YjY4
NDEwOGY2MzE0ZDc5YTk1YTdjNDI4N2YxOTlmNS4uYzNhMTJlNGM2NDZhNjM5Njc0ZWI5NzY3Y2Iy
NGUyY2YxYTA1Mjk0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC01MTgsNyAr
NTE4LDEwIEBAIE5PTl9TVkdfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvcGFnZS9M
b2NhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9OYXZpZ2F0b3IuaWRsIFwKICAgICAk
KFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRs
IFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgXAog
ICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29y
ZSkvcGFnZS9TY3JlZW4uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvV2ViS2l0UG9pbnQuaWRs
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agppbmRleCAwZjE4ZTIyZWU5YTZiZmZmNmU5NGUzMjJiNDQ3ZmMwOTU4Y2M5ZGMwLi40NWM0ZjM5
MjUwNWY1MjAxNDg4N2I3ODkyNGM2MTY2ZmQ5NjM4NTZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTkxLDYgKzU5OTEsMTQg
QEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3RDEwRDk5QkFF
MDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNw
ZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5j
cHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1Zh
bHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5
RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovOyB9OworCQlD
QjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0QTFDQ0NGMkREMDA1
OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUxMUNDRjkzODkw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnku
aCAqLzsgfTsKKwkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRy
eUxpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICov
OyB9OworCQlDQjM4RkQ1NDFDQ0Y5MzlFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZE
NTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLzsgfTsKKwkJ
Q0IzOEZENTcxQ0QyMUUyQTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1NTFD
RDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLzsgfTsKKwkJ
Q0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1
ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAqLzsg
fTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Iz
OEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oICov
OyB9OwogCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxNTFBOTM0QjQz
MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4
Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUx
NTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYg
LyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi87IH07CkBAIC0xMzk1Niw2ICsxMzk2NCwxNCBAQAog
CQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlv
VmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0
UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFuY2VFbnRy
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDREMUNDRjkzN0UwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IGZpbGVFbmNvZGluZyA9
IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50
cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU1MUNEMjFENUIw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQjhD
RjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRy
b2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29u
dHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODA1OCw2ICsxODA3
NCw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmggKi8s
CiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmlkbCAqLywKIAkJ
CQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJ
CUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKIAkJ
CQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5pZGwgKi8sCiAJ
CQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAq
LywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aCAqLywKQEAgLTIyMzEzLDYgKzIyMzMwLDcgQEAKIAkJCQk4M0YxMjA2QTFCOEMxMDM2MDBENzVG
NjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3QzkxQTM4RDFCNDk4QUJFMDAz
RjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdDOTFBMzhFMUI0OThBQkUwMDNG
OUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovLAogCQkJCTkzQjcwRDRGMDlFQjBD
N0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwICovLAogCQkJCTkzQjcw
RDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCAqLywKIAkJ
CQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25z
dHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NDksOCArMjI2NjcsMTQgQEAKIAkJCQlBOUQyNDdGNjBE
NzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlFNTFBODFERTE3Mjk4RDc3
MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4MTAw
OEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJQ0IzOEZENEYxQ0NGOTM3RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovLAorCQkJCUNCMzhGRDUwMUND
RjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCiAJCQkJOEE5QTU4
NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJ
CQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAq
LywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUxODlFMTVBNjAwMDE5QUUyIC8q
IEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1ODc3MTFFODRDOTgwMDhBQ0ZE
MSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNFQzAxQzAwQzI3NERERDAwOUY0
RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1NTU2LDYgKzI1NTgwLDcgQEAKIAkJCQkyRDI5
RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogRGlzcGxheVJlZnJlc2hN
b25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUNDODE5MkVDQzgzMDA5ODRCNzgg
LyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Iz
OEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERpc3BsYXlTbGVlcERpc2FibGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJDMDAyNkNFNzIgLyogRGlzcGxh
eVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwOTExMkIwMjZG
NzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywKQEAgLTI3NjkxLDYgKzI3NzE2
LDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVmlldy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRlcldp
ZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg5Q0NDNTMw
RjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNv
bW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThCRTk4NDkwMDZDRUJDQyAvKiBS
ZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4MDIwLDYgKzI4MDQ2LDcgQEAK
IAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxl
VHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTQxQ0NGOTM5RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0REVB
QTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxlVmlzdWFsRGF0YS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVy
LmggaW4gSGVhZGVycyAqLywKQEAgLTI5MjAyLDYgKzI5MjI5LDcgQEAKIAkJCQlCMjc1MzU3NzBC
MDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk0M0VERDY3
RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVy
cy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUzNDE4NjRENUFGMDA4
NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODRG
RTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTMxMjIwLDYgKzMxMjQ4LDcgQEAKIAkJCQlCQzk2REI0NjBGM0E4ODIyMDA1
NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNF
QTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzkyRjE0NDBBRDE4NUZF
MDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0VBNDg2
RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxz
TWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzE5OTYsNiArMzIwMjUsNyBAQAogCQkJCTQ0
NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MubW0gaW4gU291
cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMgLyogV2ViQ29yZVZpZXcubSBp
biBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlBREY1MCAvKiBXZWJEZWJ1Z2dl
ckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAv
KiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkUwRDg0
RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMjI1
QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA3NSw2ICszMjEwNSw3IEBACiAJCQkJQjEwQjY5ODEx
NDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93QW5pbWF0aW9uLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5cGUu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3MDBG
OTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTE5NTE2QjFCNjU5
OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXJNYWMu
bW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTEyLDYgKzMyMTQzLDcgQEAKIAkJCQkwMEI5MzE4OTEz
QkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNj
b3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAvKiBY
TUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM3NzJD
NDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZl
bnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RGRDQ4RjBFMzA1MjkwMDA5RDEw
QUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1
cmVzLmNwcAppbmRleCAxY2Y0YWE3OGNkNzUzZDA3MGFkNWJlNDE4MTlhNDAyZDQ4Mzk0YjIwLi5j
ZDNlNmIxNzk1Njk5YTgyMTM2MmYzZjYyOTQ4NDZlNzgxNDEwNTA3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5jcHAKQEAgLTU5LDYgKzU5LDcgQEAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6UnVudGltZUVu
YWJsZWRGZWF0dXJlcygpCiAjZWxzZQogICAgICwgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxl
ZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZChmYWxzZSkK
ICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1faXNJbmRleGVkREJFbmFibGVk
KGZhbHNlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5l
cmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dl
bmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDVkNjQ2ODY1MDI2MWIxNzA3OGNl
YjNjNTIwNjg5MTNlNTA1MDJlMGEuLmIxYmE2ZjNlY2MwMTViZTY5NDZhODg0NzFiYTZlZWQ0MzZl
MDAyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGlt
ZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMv
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yMDEsNiArMjAxLDkgQEAgcHVibGljOgogICAg
IHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNQ
bHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBib29sIHBsdWdpblJl
cGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNQbHVnaW5SZXBsYWNlbWVudEVu
YWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGJvb2wgaXNFbmFi
bGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBib29s
IHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNSZXNvdXJjZVRpbWlu
Z0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1FUEFEKQogICAgIHZvaWQgc2V0R2FtZXBhZHNF
bmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZUdhbWVwYWRzRW5hYmxlZCA9IGFyZUVuYWJs
ZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJlR2Ft
ZXBhZHNFbmFibGVkOyB9CkBAIC0yNjIsNiArMjY1LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1f
aXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJl
Rm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9vbCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFi
bGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZDsKIAogI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wgbV9pc0luZGV4ZWREQkVuYWJsZWQ7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20u
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9t
LmNwcAppbmRleCBlYmRkMzdmOGM0YzIxN2IzOTkxZmVkMzBjODU3NDc5NzYxZWQyMzAzLi44ZjEx
ZTcwMjU3ZmRjMTE3NTUxYjA3YmZjOGM3YmMyODhkZGNhYzA2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKQEAg
LTMwLDEzICszMCwxMyBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAKLSNpZiBFTkFCTEUoUEVS
Rk9STUFOQ0VfVElNRUxJTkUpCi0KICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlRW50cnkuaCIKIAog
I2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICNpbmNs
dWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJl
LmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUu
aCIKQEAgLTUxLDEwICs1MSw4IEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqLCBKU0RPTUdsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5jZUVudHJ5KiBlbnRyCiAgICAgaWYgKCFl
bnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVsbCgpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJ
TUlORykKICAgICBpZiAoZW50cnktPmlzUmVzb3VyY2UoKSkKICAgICAgICAgcmV0dXJuIHdyYXA8
SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFBl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcqPihlbnRyeSkpOwotI2VuZGlmCiAKICNpZiBFTkFCTEUo
VVNFUl9USU1JTkcpCiAgICAgaWYgKGVudHJ5LT5pc01hcmsoKSkKQEAgLTY4LDUgKzY2LDMgQEAg
SlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFBlcmZvcm1hbmNlRW50cnkqIGVudHIKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCBjZGM0NTlmMmJm
YThhMWJlNjJhZmVlMzNjNGIwYmU3NzFjYjYxYTFkLi41ZjVlZmQ4NDE4YTM3ZWEwMmRmYWI2MzUz
YjAyNWE4YTYwNmZhYmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIlByb2dy
ZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKICNpbmNsdWRlICJSZXNv
dXJjZVJlcXVlc3QuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5j
bHVkZSAiU2NoZW1lUmVnaXN0cnkuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2lu
Y2x1ZGUgIlN1YnJlc291cmNlTG9hZGVyLmgiCkBAIC0zODUsOSArMzg2LDggQEAgdm9pZCBEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgU2VjdXIKICAgICAgICAgfQogCiAgICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVz
dCBuZXdSZXF1ZXN0KHJlcXVlc3QsIG9wdGlvbnMpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCi0gICAgICAgIG5ld1JlcXVlc3Quc2V0SW5pdGlhdG9yKG1fb3B0aW9ucy5pbml0aWF0b3Ip
OwotI2VuZGlmCisgICAgICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0
dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICAgICAgbmV3UmVxdWVzdC5z
ZXRJbml0aWF0b3IobV9vcHRpb25zLmluaXRpYXRvcik7CiAgICAgICAgIEFTU0VSVCghbV9yZXNv
dXJjZSk7CiAgICAgICAgIG1fcmVzb3VyY2UgPSBtX2RvY3VtZW50LmNhY2hlZFJlc291cmNlTG9h
ZGVyKCkucmVxdWVzdFJhd1Jlc291cmNlKG5ld1JlcXVlc3QpOwogICAgICAgICBpZiAobV9yZXNv
dXJjZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3Rp
Zmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3Bw
CmluZGV4IGQzOWZkMjdkYzU2NmMwZmUyNGQxMGM2MDE0YzViZWRlZDNlNGZjYjkuLmU1NDY3ZmQx
MTEwOGUyMTA5ZTFkMmY5ZDlkNTZiNWMzZTg2ZDEzMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcApAQCAtMzksNiArMzksNyBAQAogI2luY2x1
ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNrZXIuaCIKICNpbmNsdWRlICJSZXNv
dXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKIAogI2lm
IFVTRShRVUlDS19MT09LKQogI2luY2x1ZGUgIlF1aWNrTG9vay5oIgpAQCAtMTQ2LDkgKzE0Nyw4
IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgaWYgKGxvYWRlciAmJiAhcmVxdWVzdC5p
c051bGwoKSAmJiByZXF1ZXN0LnVybCgpID09IGxvYWRlci0+dXJsKCkpCiAgICAgICAgIHJlcXVl
c3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCi0gICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5nKHRydWUpOwotI2VuZGlmCisgICAg
aWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1p
bmdFbmFibGVkKCkpCisgICAgICAgIHJlcXVlc3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsK
IH0KIAogdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVy
LmNwcAppbmRleCBjMGE5OWEzZGU5Nzg5NDVmZDY0OWRjMmQ2ZWE3OGRiNjc4NzEzMDFkLi4wOTY3
NWZjNjEwZDhiMzQ5ODg0OTQ4YzBlY2UwZDM5NTJmOGZjNWEzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTYxLDYg
KzYxLDcgQEAKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJSZW5k
ZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJ1
bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKQEAgLTc1
LDkgKzc2LDcgQEAKICNpbmNsdWRlICJDYWNoZWRUZXh0VHJhY2suaCIKICNlbmRpZgogCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKICNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgotI2VuZGlm
CiAKICNkZWZpbmUgUFJFTE9BRF9ERUJVRyAwCiAKQEAgLTY3MSwxMSArNjcwLDggQEAgQ2FjaGVk
UmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IENhY2hlZFJlc291cmNlTG9hZGVyOjpyZXZh
bGlkYXRlUmVzb3VyY2UoY28KICAgICAKICAgICBtZW1vcnlDYWNoZS5yZW1vdmUoKnJlc291cmNl
KTsKICAgICBtZW1vcnlDYWNoZS5hZGQoKm5ld1Jlc291cmNlKTsKLSNpZiBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQotICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihy
ZXNvdXJjZSwgcmVxdWVzdCk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShyZXF1ZXN0KTsKLSNl
bmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJl
c291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlh
dG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwogICAgIHJldHVybiBuZXdSZXNvdXJj
ZTsKIH0KIApAQCAtNjkwLDE1ICs2ODYsMTQgQEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVk
UmVzb3VyY2U+IENhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkUmVzb3VyY2UoQ2FjaGVkUmUKIAog
ICAgIGlmIChyZXF1ZXN0LmFsbG93c0NhY2hpbmcoKSAmJiAhbWVtb3J5Q2FjaGUuYWRkKCpyZXNv
dXJjZSkpCiAgICAgICAgIHJlc291cmNlLT5zZXRPd25pbmdDYWNoZWRSZXNvdXJjZUxvYWRlcih0
aGlzKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHN0b3JlUmVzb3VyY2VUaW1p
bmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7Ci0jZW5kaWYKKyAgICBp
ZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWlu
Z0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0
aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAgICByZXR1cm4gcmVzb3VyY2U7CiB9CiAKLSNpZiBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6c3RvcmVS
ZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0IENhY2hlZFJlc291cmNlSGFu
ZGxlPENhY2hlZFJlc291cmNlPiYgcmVzb3VyY2UsIGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCkKIHsKKyAgICBBU1NFUlQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSk7CiAgICAgaWYgKHJlc291cmNlLT50
eXBlKCkgPT0gQ2FjaGVkUmVzb3VyY2U6Ok1haW5SZXNvdXJjZSkgewogICAgICAgICAvLyA8aWZy
YW1lPnMgc2hvdWxkIHJlcG9ydCB0aGUgaW5pdGlhbCBuYXZpZ2F0aW9uIHJlcXVlc3RlZCBieSB0
aGUgcGFyZW50IGRvY3VtZW50LCBidXQgbm90IHN1YnNlcXVlbnQgbmF2aWdhdGlvbnMuCiAgICAg
ICAgIGlmIChmcmFtZSgpLT5vd25lckVsZW1lbnQoKSAmJiBtX2RvY3VtZW50TG9hZGVyLT5mcmFt
ZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5jb21taXR0aW5nRmlyc3RSZWFsTG9hZCgpKSB7CkBA
IC03MTAsNyArNzA1LDYgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6c3RvcmVSZXNvdXJj
ZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0IENhY2hlZFIKICAgICAgICAgbV9pbml0
aWF0b3JNYXAuYWRkKHJlc291cmNlLmdldCgpLCBpbmZvKTsKICAgICB9CiB9Ci0jZW5kaWYgLy8g
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAogc3RhdGljIHZvaWQgbG9nUmV2YWxpZGF0aW9uKGNv
bnN0IFN0cmluZyYgcmVhc29uLCBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCYgbG9nQ2xpZW50KQog
ewpAQCAtOTc2LDggKzk3MCw5IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25l
KENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9vbCBzaG91bGRQZXJmb3JtCiAgICAgUmVmUHRy
PERvY3VtZW50TG9hZGVyPiBwcm90ZWN0RG9jdW1lbnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7
CiAgICAgUmVmUHRyPERvY3VtZW50PiBwcm90ZWN0RG9jdW1lbnQobV9kb2N1bWVudCk7CiAKLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+
cmVzcG9uc2UoKS5pc0hUVFAoKSAmJiAoKCFyZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFy
ZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgfHwgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaHR0cFN0YXR1
c0NvZGUoKSA9PSAzMDQpKSB7CisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJl
ZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkKKyAgICAgICAgJiYgcmVzb3VyY2Ug
JiYgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaXNIVFRQKCkKKyAgICAgICAgJiYgKCghcmVzb3VyY2Ut
PmVycm9yT2NjdXJyZWQoKSAmJiAhcmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNl
LT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkgPT0gMzA0KSkgewogICAgICAgICBIYXNoTWFw
PENhY2hlZFJlc291cmNlKiwgSW5pdGlhdG9ySW5mbz46Oml0ZXJhdG9yIGluaXRpYXRvckl0ID0g
bV9pbml0aWF0b3JNYXAuZmluZChyZXNvdXJjZSk7CiAgICAgICAgIGlmIChpbml0aWF0b3JJdCAh
PSBtX2luaXRpYXRvck1hcC5lbmQoKSkgewogICAgICAgICAgICAgQVNTRVJUKGRvY3VtZW50KCkp
OwpAQCAtOTkwLDkgKzk4NSw2IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25l
KENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9vbCBzaG91bGRQZXJmb3JtCiAgICAgICAgICAg
ICBtX2luaXRpYXRvck1hcC5yZW1vdmUoaW5pdGlhdG9ySXQpOwogICAgICAgICB9CiAgICAgfQot
I2Vsc2UKLSAgICBVTlVTRURfUEFSQU0ocmVzb3VyY2UpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCiAKICAgICBpZiAoZnJhbWUoKSkKICAgICAgICAgZnJhbWUoKS0+bG9hZGVy
KCkubG9hZERvbmUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmgKaW5kZXggYjFmN2M0ZmFmNWRiYjA5NjAxYzU4OTJmNWQ2NDcxMzk0
OWIxZjYwZC4uNGRmODE5OTU5Y2VhYjExMDM3NGI1NWI0NjAzOTMwYTg3ZWI3YzY2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgK
QEAgLTE0NCw5ICsxNDQsNyBAQCBwcml2YXRlOgogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENh
Y2hlZFJlc291cmNlPiByZXF1ZXN0UmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hl
ZFJlc291cmNlUmVxdWVzdCYpOwogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291
cmNlPiByZXZhbGlkYXRlUmVzb3VyY2UoY29uc3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiwgQ2Fj
aGVkUmVzb3VyY2UqKTsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4g
bG9hZFJlc291cmNlKENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Qm
KTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIHZvaWQgc3RvcmVSZXNvdXJjZVRp
bWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0IENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFJlc291cmNlPiYsIGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwotI2VuZGlmCiAgICAg
dm9pZCByZXF1ZXN0UHJlbG9hZChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFyc2V0KTsKIAogICAgIGVudW0gUmV2YWxpZGF0aW9u
UG9saWN5IHsgVXNlLCBSZXZhbGlkYXRlLCBSZWxvYWQsIExvYWQgfTsKQEAgLTE3OSwxMyArMTc3
LDExIEBAIHByaXZhdGU6CiAKICAgICBUaW1lciBtX2dhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNv
dXJjZXNUaW1lcjsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgc3RydWN0IElu
aXRpYXRvckluZm8gewogICAgICAgICBBdG9taWNTdHJpbmcgbmFtZTsKICAgICAgICAgZG91Ymxl
IHN0YXJ0VGltZTsKICAgICB9OwogICAgIEhhc2hNYXA8Q2FjaGVkUmVzb3VyY2UqLCBJbml0aWF0
b3JJbmZvPiBtX2luaXRpYXRvck1hcDsKLSNlbmRpZgogCiAgICAgLy8gMjkgYml0cyBsZWZ0CiAg
ICAgYm9vbCBtX2F1dG9Mb2FkSW1hZ2VzIDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5j
cHAKaW5kZXggZWQzOWExZDE1MDgxYjQ3NjRhZTk3YWZhZjczOGJhOTY3OTdlNzMyYi4uYmM0ODE1
YTNiNjBmNzI2MjE5ZDQ2YmZlNGJjZTFmODhhNzI1YjkwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5jcHAKQEAgLTQ3LDE1ICs0NywxMSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogc3RhdGljIGNvbnN0IHNpemVfdCBkZWZhdWx0
UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplID0gMTUwOwotI2VuZGlmCiAKIFBlcmZvcm1hbmNlOjpQ
ZXJmb3JtYW5jZShGcmFtZSYgZnJhbWUpCiAgICAgOiBET01XaW5kb3dQcm9wZXJ0eSgmZnJhbWUp
Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICAsIG1fcmVzb3VyY2VUaW1pbmdCdWZm
ZXJTaXplKGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUpCi0jZW5kaWYgLy8gRU5BQkxF
KFJFU09VUkNFX1RJTUlORykKICAgICAsIG1fcmVmZXJlbmNlVGltZShmcmFtZS5kb2N1bWVudCgp
LT5sb2FkZXIoKSA/IGZyYW1lLmRvY3VtZW50KCktPmxvYWRlcigpLT50aW1pbmcoKS5yZWZlcmVu
Y2VNb25vdG9uaWNUaW1lKCkgOiBtb25vdG9uaWNhbGx5SW5jcmVhc2luZ1RpbWUoKSkKICNpZiBF
TkFCTEUoVVNFUl9USU1JTkcpCiAgICAgLCBtX3VzZXJUaW1pbmcobnVsbHB0cikKQEAgLTkxLDE0
ICs4NywxMSBAQCBQZXJmb3JtYW5jZVRpbWluZyogUGVyZm9ybWFuY2U6OnRpbWluZygpIGNvbnN0
CiAgICAgcmV0dXJuIG1fdGltaW5nLmdldCgpOwogfQogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQogUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6
OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAogewogICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5
TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lmIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgZW50cmllcy0+YXBwZW5kQWxsKG1fcmVzb3VyY2VU
aW1pbmdCdWZmZXIpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKICNpZiBF
TkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTE1LDEyICsx
MDgsMTAgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6Ondl
YmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW4KIHsKICAgICBSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAK
LSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmlu
Z0FTQ0lJQ2FzZShlbnRyeVR5cGUsICJyZXNvdXJjZSIpKSB7CiAgICAgICAgIGZvciAoYXV0byYg
cmVzb3VyY2UgOiBtX3Jlc291cmNlVGltaW5nQnVmZmVyKQogICAgICAgICAgICAgZW50cmllcy0+
YXBwZW5kKHJlc291cmNlKTsKICAgICB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShVU0VSX1RJTUlO
RykKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBAIC0xMzksMTQgKzEzMCwxMiBAQCBQYXNzUmVm
UHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5
TmFtZShjb25zdCBTdHJpbgogewogICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50
cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCiAgICAgaWYgKGVudHJ5VHlwZS5pc051bGwoKSB8fCBlcXVhbExldHRlcnNJ
Z25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUsICJyZXNvdXJjZSIpKSB7CiAgICAgICAgIGZvciAo
YXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNlVGltaW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBp
ZiAocmVzb3VyY2UtPm5hbWUoKSA9PSBuYW1lKQogICAgICAgICAgICAgICAgIGVudHJpZXMtPmFw
cGVuZChyZXNvdXJjZSk7CiAgICAgICAgIH0KICAgICB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShV
U0VSX1RJTUlORykKICAgICBpZiAobV91c2VyVGltaW5nKSB7CkBAIC0xNjEsMTAgKzE1MCw2IEBA
IFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRF
bnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLSNlbmRp
ZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KLSNpZiBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQotCiB2b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygp
CiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5jbGVhcigpOwpAQCAtMTk1LDggKzE4MCw2
IEBAIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkKICAgICBy
ZXR1cm4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5zaXplKCkgPj0gbV9yZXNvdXJjZVRpbWluZ0J1
ZmZlclNpemU7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaWYg
RU5BQkxFKFVTRVJfVElNSU5HKQogdm9pZCBQZXJmb3JtYW5jZTo6d2Via2l0TWFyayhjb25zdCBT
dHJpbmcmIG1hcmtOYW1lLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2UuaAppbmRleCA5M2Y0NDA2NDRiYjc2M2ZhN2RjOGQxN2U0ODYyZTMyMzVlOWM3NmY3Li42
ZmZmNDVjODQ1ZTA5ODllZTc0MjUxNzYxYmI4NWM1NGM3N2NhNDVjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZS5oCkBAIC02NCwxOCArNjQsMTQgQEAgcHVibGljOgogICAgIFBlcmZvcm1hbmNl
VGltaW5nKiB0aW1pbmcoKSBjb25zdDsKICAgICBkb3VibGUgbm93KCkgY29uc3Q7CiAKLSNpZiBF
TkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCiAgICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVu
dHJ5TGlzdD4gd2Via2l0R2V0RW50cmllcygpIGNvbnN0OwogICAgIFBhc3NSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRy
eVR5cGUpOwogICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVu
dHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7
Ci0jZW5kaWYKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgdm9pZCB3ZWJraXRD
bGVhclJlc291cmNlVGltaW5ncygpOwogICAgIHZvaWQgd2Via2l0U2V0UmVzb3VyY2VUaW1pbmdC
dWZmZXJTaXplKHVuc2lnbmVkIGludCk7CiAKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKGNv
bnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQqLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgZG91YmxlIGluaXRpYXRpb25UaW1lLCBkb3Vi
bGUgZmluaXNoVGltZSk7Ci0jZW5kaWYKIAogICAgIHVzaW5nIFJlZkNvdW50ZWQ8UGVyZm9ybWFu
Y2U+OjpyZWY7CiAgICAgdXNpbmcgUmVmQ291bnRlZDxQZXJmb3JtYW5jZT46OmRlcmVmOwpAQCAt
OTcsMTEgKzkzLDkgQEAgcHJpdmF0ZToKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNl
TmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNl
VGltaW5nPiBtX3RpbWluZzsKLSAgICAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorCiAg
ICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZl
cjsKICAgICB1bnNpZ25lZCBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZTsKLSNlbmRpZgogCiAg
ICAgZG91YmxlIG1fcmVmZXJlbmNlVGltZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlk
bAppbmRleCAyMWJmYTRhOTkxNDQ2NDMxZjgyNzA4N2IxNDYyYWM1NjY3YzJlY2RlLi5hMDU2NDc5
MzUxNTEwZGZmZjk5ODY0YWQ0ZWMwZGVkMzZiOTk0NWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmlkbApAQCAtMzYsMTggKzM2LDE1IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFBl
cmZvcm1hbmNlTmF2aWdhdGlvbiBuYXZpZ2F0aW9uOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBQ
ZXJmb3JtYW5jZVRpbWluZyB0aW1pbmc7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9QRVJGT1JNQU5D
RV9USU1FTElORSkgJiYgRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FCi0gICAgUGVyZm9ybWFu
Y2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllcygpOwotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0
IHdlYmtpdEdldEVudHJpZXNCeVR5cGUoRE9NU3RyaW5nIGVudHJ5VHlwZSk7Ci0gICAgUGVyZm9y
bWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0
aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSA9IG51bGwpOwotI2VuZGlmCisgICAgW0VuYWJsZWRB
dFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVu
dHJpZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFu
Y2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5VHlwZShET01TdHJpbmcgZW50cnlUeXBlKTsK
KyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxp
c3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9NU3Ry
aW5nIGVudHJ5VHlwZSA9IG51bGwpOwogCi0jaWYgZGVmaW5lZChFTkFCTEVfUkVTT1VSQ0VfVElN
SU5HKSAmJiBFTkFCTEVfUkVTT1VSQ0VfVElNSU5HCi0gICAgdm9pZCB3ZWJraXRDbGVhclJlc291
cmNlVGltaW5ncygpOwotICAgIHZvaWQgd2Via2l0U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXpl
KHVuc2lnbmVkIGxvbmcgbWF4U2l6ZSk7CiAKLSAgICBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9u
d2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsOwotI2VuZGlmCisgICAgW0VuYWJsZWRBdFJ1
bnRpbWU9UmVzb3VyY2VUaW1pbmddIHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsK
KyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gdm9pZCB3ZWJraXRTZXRSZXNv
dXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgbG9uZyBtYXhTaXplKTsKKworICAgIFtFbmFi
bGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9ud2Vi
a2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsOwogCiAgICAgLy8gU2VlIGh0dHA6Ly93d3cudzMu
b3JnL1RSLzIwMTIvQ1ItdXNlci10aW1pbmctMjAxMjA3MjYvCiAjaWYgZGVmaW5lZChFTkFCTEVf
VVNFUl9USU1JTkcpICYmIEVOQUJMRV9VU0VSX1RJTUlORwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5jcHAKaW5kZXggMzJkYjdjZmU1NjM1Y2RmMzJjMzA1ZWM0ZWFjMDk1MDFl
NWY4M2VlNS4uMzc0ZTE0MjkzMTgzZjk3M2ZhYTc4NDE4MWRmZDU5ZTIzMDk1YjVhZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogCi0jaWYg
RU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBF
TkFCTEUoV0VCX1RJTUlORykKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC02OSw0ICs2OSw0
IEBAIGRvdWJsZSBQZXJmb3JtYW5jZUVudHJ5OjpkdXJhdGlvbigpIGNvbnN0CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUo
UEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCmluZGV4IDEyOWEyNDY0MGNjNGQyYTM1Y2Fl
YWI2YmEyZjFhZmM4MTg0ZjM2MmIuLmNmMzdjMGU1NjlkZDc0ZjJhNTBjZjljZjJkMmE5ZjA0ZDZk
NWM5ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oCkBAIC0zMiw3ICsz
Miw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlRW50cnlfaAogI2RlZmluZSBQZXJmb3JtYW5jZUVu
dHJ5X2gKIAotI2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElN
RUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKICNpbmNsdWRlICJQZXJmb3JtYW5jZS5o
IgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CkBAIC03MSw1ICs3MSw1IEBAIHByaXZhdGU6
CiAKIH0KIAotI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1B
TkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJTUlORykKICNlbmRpZiAvLyAh
ZGVmaW5lZChQZXJmb3JtYW5jZUVudHJ5X2gpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5LmlkbAppbmRleCA5YmNhZjRjMzQwMTg5ODU1YTJiNjRkNmYwNWIyOThjY2MxZjcyM2U2
Li5mMzdlMmEzY2JhNDMyNDEzYTBhZjdiYmM0NmE4ZDVmMTQ0YmZhZjIyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKIC8vIFNlZTog
aHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1maWxlL3RpcC9zcGVjcy9QZXJmb3Jt
YW5jZVRpbWVsaW5lL092ZXJ2aWV3Lmh0bWwKIFsKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5H
LAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5FLAorICAgIEVuYWJsZWRBdFJ1
bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKIF0gaW50ZXJmYWNl
IFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFt
ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKaW5kZXgg
ZDlmYTA1NTc3ZGQ1NzllOWNhODI3NGRkNzhiNGFjZTM0YmM3OTI4Yi4uYzAzNTkyOGIzMWM2ZGU5
ZDYxZDg2MzExNjMxZDMzNTZmYzNiODI2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5TGlzdC5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIgogCi0jaWYgRU5BQkxFKFdFQl9U
SU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJ
TUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKIApAQCAtNzUsNCArNzUsNCBA
QCB2b2lkIFBlcmZvcm1hbmNlRW50cnlMaXN0Ojpzb3J0KCkKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5D
RV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaAppbmRleCA5N2EyMTJkZDZmZDA1NDQ3NjZlZDc1
NjNjMTc1NmI5MTM2ZDdmZWQ2Li5kMmM0MWY1YWQ0N2YxOGFiMTEzMGQzYzA1NWFlMzUxMTAyYjBj
NzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oCkBAIC0z
Miw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKICNkZWZpbmUgUGVy
Zm9ybWFuY2VFbnRyeUxpc3RfaAogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQ
RVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUg
PHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTY0LDUg
KzY0LDUgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8g
IUVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5k
aWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vIFBlcmZvcm1hbmNlRW50cnlMaXN0
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKaW5kZXgg
N2UyNWE4NWNlNmM4OTM4NGVmZTU1MmY4Mzc2OTI1OTM1ODAyODhmOS4uMTgwNjZjYzM3ZTU3M2Yy
MGUxYTkwNWMzODhiMDIxODE4ZWI3OTM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5TGlzdC5pZGwKQEAgLTMyLDEwICszMiw5IEBACiBbCiAgICAgTm9JbnRlcmZh
Y2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9V0VCX1RJTUlORywKLSAgICBDb25kaXRpb25hbD1Q
RVJGT1JNQU5DRV9USU1FTElORSwKKyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5n
LAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBQZXJmb3JtYW5j
ZUVudHJ5TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3Ro
OwogICAgIGdldHRlciBQZXJmb3JtYW5jZUVudHJ5IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7
CiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmNwcAppbmRleCAzMWI4OTcxMzdmNTExZTQ1Zjc3NTdlOTU2YzI2ZjM3NTg3YWI2YTYwLi41
YmI2MTQwOTcxOThmZjU2MjFjNTFjODY5NmE2ZDI3OTJkMGYwNjEyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMyLDggKzMy
LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmgiCiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaW5jbHVkZSAiRG9j
dW1lbnQuaCIKICNpbmNsdWRlICJEb2N1bWVudExvYWRUaW1pbmcuaCIKICNpbmNsdWRlICJEb2N1
bWVudExvYWRlci5oIgpAQCAtMTk5LDUgKzE5NywzIEBAIGRvdWJsZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nOjpyZXNvdXJjZVRpbWVUb0RvY3VtZW50TWlsbGlzZWNvbmRzKGludCBkZWx0YU1p
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJD
RV9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oCmluZGV4IDk5ZGZjNWJjZGNkYzc5ZTM1M2U5NDkzNmM0ODI4NTM2MTdjNWY1M2YuLjM3
YjVhZTkxZWRmMDc1YWY0OWIyMDU3OTk1NDM4ZGQ4ZWY2YWE0ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCkBAIC0zMiw4ICszMiw2IEBA
CiAjaWZuZGVmIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdfaAogI2RlZmluZSBQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nX2gKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0KICNpbmNs
dWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5nLmgi
CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTg1LDYgKzgzLDQgQEAgcHJpdmF0ZToK
IAogfQogCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2VuZGlmIC8vICFk
ZWZpbmVkKFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCmluZGV4IDNmMDExYjIzYjA1N2Ex
YWUwZTYzNGVmMTk0M2IxMDFmY2U2ODY2ZDMuLjNmMzA5ZTNiYTJkYjY0YjQ0OTVlYWU2MTgwODIy
OTllOWI2MmQ0NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmlkbApAQCAtMzAsNyArMzAsNyBAQAogCiAvLyBTZWU6IGh0dHBzOi8vZHZj
cy53My5vcmcvaGcvd2VicGVyZi9yYXctZmlsZS90aXAvc3BlY3MvUmVzb3VyY2VUaW1pbmcvT3Zl
cnZpZXcuaHRtbAogWwotICAgIENvbmRpdGlvbmFsPVJFU09VUkNFX1RJTUlORywKKyAgICBFbmFi
bGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nIDogUGVyZm9ybWFuY2VFbnRyeSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBpbml0aWF0b3JUeXBlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAK
aW5kZXggZDQ1YWNjZDVmMGJjZTA2NzE3ZWZlYzhhOWIwMjZjYWM4NjIyZmJhOS4uYzliNDZjMzMx
NzQ5NTVhZTAyNGViYzAwNjlkNDc2ZmRhZTEwYzZhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmNwcApAQCAtMzMxOCw0ICszMzE4LDkgQEAgdm9pZCBJbnRlcm5hbHM6OnNldExpbmtQ
cmVsb2FkU3VwcG9ydChib29sIGVuYWJsZSkKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpz
aGFyZWRGZWF0dXJlcygpLnNldExpbmtQcmVsb2FkRW5hYmxlZChlbmFibGUpOwogfQogCit2b2lk
IEludGVybmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2wgZW5hYmxlKQoreworICAg
IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0UmVzb3VyY2VUaW1p
bmdFbmFibGVkKGVuYWJsZSk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmlu
ZGV4IGYzYWZmMmZmOTcxODdjOTllYWUyYWU5ZDk3MmU1N2YzNzQ0NzM2MTQuLmMwNzFhNDE1MTZj
MTE5MWQwYzUyZDE4ZjJlNTQ1YjljZjMxNmRmMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaApAQCAtNDY4LDYgKzQ2OCw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lkIHNldFZpZXdw
b3J0Rm9yY2VBbHdheXNVc2VyU2NhbGFibGUoYm9vbCk7CiAgICAgdm9pZCBzZXRMaW5rUHJlbG9h
ZFN1cHBvcnQoYm9vbCk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbCk7
CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Jik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggMzJhZGIxYzAxM2FhZTg3NDA0MWQ0YTE3NTZk
MDVlMDM0MDI3N2U0ZC4uMjY3N2Y3NWU4OGMzYmJkYWNkOTVmNTk2YTc3MjcyOGQ2Y2NmNWM0ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtNDQ2LDQgKzQ0Niw1IEBAIGVu
dW0gQXV0b0ZpbGxCdXR0b25UeXBlIHsKIAogICAgIHZvaWQgc2V0Vmlld3BvcnRGb3JjZUFsd2F5
c1VzZXJTY2FsYWJsZShib29sZWFuIHNjYWxhYmxlKTsKICAgICB2b2lkIHNldExpbmtQcmVsb2Fk
U3VwcG9ydChib29sZWFuIHNjYWxhYmxlKTsKKyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nU3Vw
cG9ydChib29sZWFuIHNjYWxhYmxlKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2Vi
S2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5k
ZXggOTMwNGI1YWVkMjgyNmE5MTYxMTRkZWZkYzliZjU5ZmIwZDU2YjcwMC4uNzY4ZTNlNTlkN2Ux
OWFhYWEwNGYwMjIxNzgzNWNlOTY5NjdjMDkyZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dl
YktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFr
ZQpAQCAtMTU4LDcgKzE1OCw2IEBAIG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX05PVElGSUNBVElPTlMgIlRvZ2dsZSBEZXNrdG9wIE5v
dGlmaWNhdGlvbnMgU3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJ
TkUoRU5BQkxFX09SSUVOVEFUSU9OX0VWRU5UUyAiVG9nZ2xlIE9yaWVudGF0aW9uIEV2ZW50cyBz
dXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUERG
S0lUX1BMVUdJTiAiVG9nZ2xlIFBERktpdCBwbHVnaW4gc3VwcG9ydCIgUFJJVkFURSBPRkYpCi0g
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FICJUb2dn
bGUgUGVyZm9ybWFuY2UgVGltZWxpbmUgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lU
X09QVElPTl9ERUZJTkUoRU5BQkxFX1BPSU5URVJfTE9DSyAiVG9nZ2xlIHBvaW50ZXIgbG9jayBz
dXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUFJP
WElNSVRZX0VWRU5UUyAiVG9nZ2xlIFByb3hpbWl0eSBFdmVudHMgc3VwcG9ydCIgUFJJVkFURSBP
RkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCAi
VG9nZ2xlIHB1YmxpYyBzdWZmaXggbGlzdCBzdXBwb3J0IiBQUklWQVRFIE9GRikKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAz
YmM5ZTIyOGI0OWJlZTdhZGYwMDliM2VmZTk2N2MzMTU1OWExOGJiLi5iNzNjNTRhNzhkYzUzYmFi
ZTRkMmJlMDdlYzJlMWRjNzg1YmExZDUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMDQt
MjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNvdXJjZVRp
bWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIHRoYXQgbWFrZSBzdXJlIFJlc291cmNlVGlt
aW5nIEFQSXMgYXJlIGV4cG9zZWQgYW5kIHRoYXQgcmVzb3VyY2VzCisgICAgICAgIHNob3cgdXAg
YXMgZW50cmllcyBpbiB0aGUgcGVyZm9ybWFuY2UgdGltZWxpbmUuCisKKyAgICAgICAgKiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1l
bnRyaWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9wZXJmb3Jt
YW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sOiBBZGRlZC4KKwog
MjAxNi0wNC0yOCAgSm9hbm1hcmllIERpZ2dzICA8amRpZ2dzQGlnYWxpYS5jb20+CiAKICAgICAg
ICAgQVg6IFtBVEtdIFdlIG5lZWQgdG8gYmUgc21hcnRlciBhYm91dCBmbGF0dGVuaW5nIGFuZCB0
aGUgYWNjZXNzaWJsZSB0ZXh0IGltcGxlbWVudGF0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2Ut
dGltaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ct
cHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjg0ZTUyZDNmMWMzOWE3NWE2NTg5MzZiZTQ1ZDg5MjA2MDY0MGY1ODQKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
cGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ2IEBA
CitUaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNoYWJs
ZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0LCBhbG9uZyB3aXRoIHRoZWlyIHR5
cGVzLgorCit3aW5kb3cucGVyZm9ybWFuY2UgW29iamVjdCBQZXJmb3JtYW5jZV0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS5hZGRFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS5kaXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9u
IFtvYmplY3QgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmln
YXRpb24uVFlQRV9CQUNLX0ZPUldBUkQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZp
Z2F0aW9uLlRZUEVfTkFWSUdBVEUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0
aW9uLlRZUEVfUkVMT0FEIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5U
WVBFX1JFU0VSVkVEIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5yZWRp
cmVjdENvdW50IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlIFtu
dW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uubm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5vbndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJm
b3JtYW5jZS5yZW1vdmVFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcgW29iamVjdCBQZXJmb3JtYW5jZVRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS50
aW1pbmcuY29ubmVjdEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25u
ZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29tcGxldGUg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50
RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUNvbnRlbnRMb2FkZWRF
dmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUludGVyYWN0
aXZlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUxvYWRpbmcgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tYWluTG9va3VwRW5kIFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbWFpbkxvb2t1cFN0YXJ0IFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UudGltaW5nLmZldGNoU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcubG9hZEV2ZW50RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nLmxvYWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLm5h
dmlnYXRpb25TdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVj
dEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZWRpcmVjdFN0YXJ0IFtu
dW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlcXVlc3RTdGFydCBbbnVtYmVyXQor
d2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXNwb25zZUVuZCBbbnVtYmVyXQord2luZG93LnBl
cmZvcm1hbmNlLnRpbWluZy5yZXNwb25zZVN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFu
Y2UudGltaW5nLnNlY3VyZUNvbm5lY3Rpb25TdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1h
bmNlLnRpbWluZy51bmxvYWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZy51bmxvYWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uud2Via2l0
Q2xlYXJSZXNvdXJjZVRpbWluZ3MgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtp
dEdldEVudHJpZXMgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJp
ZXNCeU5hbWUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdEdldEVudHJpZXNC
eVR5cGUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLndlYmtpdFNldFJlc291cmNlVGlt
aW5nQnVmZmVyU2l6ZSBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nIFtwcmlu
dGVkIGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmddCit3aW5kb3cucGVyZm9ybWFu
Y2UubmF2aWdhdGlvbiBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdh
dGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZSBbc3RyaW5nXQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3Vy
Y2UtdGltaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWI3OTMx
Y2M1YTBjNjBhZTE3ODYzM2E3YmM0NTU1MjYxZTFkNmMxMwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1y
ZXNvdXJjZS10aW1pbmcuaHRtbApAQCAtMCwwICsxLDEwNCBAQAorPHA+VGhpcyB0ZXN0IGR1bXBz
IGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSByZWFjaGFibGUgZnJvbSB0aGUgd2luZG93
LnBlcmZvcm1hbmNlIG9iamVjdCwgYWxvbmcgd2l0aCB0aGVpciB0eXBlcy48L3A+Cis8aHI+Cis8
cHJlIGlkPSJwcmUiPjwvcHJlPgorCis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCitpZiAod2luZG93LmludGVybmFscykKKyAg
ICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KHRydWUpOworICAgIAordmFyIGxv
Z0J1ZmZlciA9IFtdOworZnVuY3Rpb24gbG9nKHMpCit7CisgICAgbG9nQnVmZmVyLnB1c2gocyk7
Cit9CisKK3ZhciBwcmUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncHJlJyk7CitmdW5jdGlv
biBmbHVzaExvZygpCit7CisgICAgdmFyIGxvZ01lc3NhZ2UgPSBsb2dCdWZmZXIuam9pbigiIik7
CisgICAgcHJlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGxvZ01lc3NhZ2Up
KTsKK30KKworZnVuY3Rpb24gdHJ5RXZhbChzdHJpbmcpCit7CisgICAgdHJ5IHsKKyAgICAgICAg
cmV0dXJuIGV2YWwoc3RyaW5nKTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIHJldHVybiBu
ZXcgU3RyaW5nKCJDYXVnaHQgZXhjZXB0aW9uOiAiICsgZSk7CisgICAgfQorfQorCitmdW5jdGlv
biB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpCit7CisgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2Jq
ZWN0IiAmJiB2YWx1ZSA9PSBudWxsKSAvLzsKKyAgICAgICAgcmV0dXJuICJudWxsIjsKKyAgICBy
ZXR1cm4gdHlwZW9mIHZhbHVlOworfQorCitmdW5jdGlvbiB0eXBlU3RyaW5nTnVsbEF3YXJlKHZh
bHVlKQoreworICAgIHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworICAg
IHJldHVybiB2YWx1ZVR5cGUgPT0gIm9iamVjdCIKKyAgICAgICAgPyBPYmplY3QucHJvdG90eXBl
LnRvU3RyaW5nLmNhbGwodmFsdWUpCisgICAgICAgIDogIlsiICsgdmFsdWVUeXBlICsgIl0iOwor
fQorCitmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1ZU5hbWUpCit7CisgICAgdmFyIHZhbHVlID0gdHJ5
RXZhbCh2YWx1ZU5hbWUpOworICAgIHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxsQXdhcmUodmFs
dWUpOworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHZhcmlhYmxl
cworICAgIGlmICh2YWx1ZSA9PSBsb2dCdWZmZXIgfHwgdmFsdWUgPT0gcHJlKQorICAgICAgICBy
ZXR1cm47CisKKyAgICAvLyBEb24ndCB0YWludCB0aGUgdGVzdCB3aXRoIG91ciBvd24gcHJvcGVy
dGllcworICAgIGlmICgvX192aXNpdGVkQnlMb2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkgfHwg
L19fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAg
IHJldHVybjsKKworICAgIC8vIFdvcmsgYXJvdW5kIEZpcmVmb3ggaW5maW5pdGUgcmVjdXJzaW9u
CisgICAgaWYgKC9cLlswLTldLy50ZXN0KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIC8vIEF2b2lkIGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9i
amVjdCIgJiYgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fKSB7IC8vOworICAgICAgICBsb2co
dmFsdWVOYW1lICsgIiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0
ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBs
b2codmFsdWVOYW1lICsgIiAiICsgdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsK
KworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNp
dGVkQnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAgICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRC
eUxvZ1ZhbHVlX18gPSB2YWx1ZU5hbWU7CisgICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZh
bHVlTmFtZSk7CisgICAgfQorfQorCitmdW5jdGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2Jq
ZWN0TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkgPSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJv
cGVydHkgaW4gb2JqZWN0KSB7CisgICAgICAgIGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0K
KyAgICBhcnJheS5zb3J0KCk7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7
IGkrKykgeworICAgICAgICB2YXIgcHJvcGVydHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFs
dWUob2JqZWN0TmFtZSArICIuIiArIHByb3BlcnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3
aW5kb3cucGVyZm9ybWFuY2UnKTsKK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgPSAndGltaW5n
IGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlLnRpbWlu
ZycpOword2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gPSAnbmF2aWdhdGlvbiBpcyBub3Qg
cmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJyk7
Cit3aW5kb3cucGVyZm9ybWFuY2UgPSAncGVyZm9ybWFuY2UgaXMgcmVwbGFjZWFibGUnOworbG9n
VmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOworZmx1c2hMb2coKTsKK2lmICh3aW5kb3cuaW50
ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOwor
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNl
L3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
LWVudHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUxMjg3N2IwZWZjZTc2NGViMWNkZjUz
ZGVjZTlmN2MwYTQzYzY1MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorUEFTUyBwZXJmb3JtYW5jZS53ZWJraXRHZXRFbnRyaWVzQnlUeXBl
KCdyZXNvdXJjZScpLmxlbmd0aCBpcyAyCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRt
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3Vy
Y2UtdGltaW5nLWVudHJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MmJjMDEyYzYzNTYwZThiYzdkMjc1
Yjg3NjdjNTNjYzkzZTg0OTY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1s
CkBAIC0wLDAgKzEsMjMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3Jp
cHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1p
bmdTdXBwb3J0KHRydWUpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNwYW4gaWQ9ImUi
Pjwvc3Bhbj4KKzxzcGFuIGlkPSJmIj48L3NwYW4+Cis8c2NyaXB0Pgord2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICBzaG91bGRCZSgicGVyZm9ybWFuY2Uu
d2Via2l0R2V0RW50cmllc0J5VHlwZSgncmVzb3VyY2UnKS5sZW5ndGgiLCAiMiIpOworICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFJlc291cmNl
VGltaW5nU3VwcG9ydChmYWxzZSk7Cit9KTsKKworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggNjk1NjljNGNhYTdlNmUx
MTJlZGQzYTNiNDIzYmE5Mzc4M2I4OWFjZS4uMjU2MDcyYmYwNDRlYjVhYWMwNzM5MGUzY2ZlMDU2
MzY5ZDZlZWM3MSAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEyIEBACisyMDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAg
ICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9XZWJL
aXRGZWF0dXJlcy5jbWFrZTogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBm
bGFnLgorCiAyMDE2LTA0LTI4ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjAwMTg1Lgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277646</attachid>
            <date>2016-04-28 13:44:34 -0700</date>
            <delta_ts>2016-04-28 14:06:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160428224504.patch</filename>
            <type>text/plain</type>
            <size>54326</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MjdiNWY0MDNkOTRlNzcwYzVkZjFlNWVkNWY1NmFiZTM5YzFkZjYzLi4yNjYwZWYyZWI1MjUwN2Fm
YTQzYjg5NGRmMDczOWMzZDg1YWJjZjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZGVkIFBlcmZvcm1hbmNlRW50cnksIFBlcmZvcm1hbmNlRW50cnlMaXN0
IGFuZCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIGFzIHByb3BlcnR5IG5hbWVzLgorCiAyMDE2
LTA0LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgR2V0
dGVyU2V0dGVyIHN0cnVjdHVyZSBuZWVkcyBhIGdsb2JhbE9iamVjdC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0
NDllZTkwMmU5MTMyYmQ4NDg2MDgzMTA1ZmM2NzU3ZTg0MDI2MGQ2Li4wYjY2ZWQ1ZTVhMjI0ZWFl
MjQwMWFkM2QyNTI5ZDJmNjFlNDc3NWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTcgQEAKKzIw
MTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNv
dXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgdGhlIFJlc291cmNlVGltaW5nIEFQSSBmcm9t
IGJlaW5nIGJlaGluZCBhIGJ1aWxkIHRpbWUgZmxhZyB0byBiZSBiZWhpbmQgYW4KKyAgICAgICAg
b2ZmLWJ5LWRlZmF1bHQgcnVudGltZSBmbGFnLCB0aGF0IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcg
aW50ZXJuYWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGh0
dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMu
aHRtbAorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogQWRkZWQgaWRsIGZpbGVzIGZv
ciBQZXJmb3JtYW5jZUVudHJ5LCBQZXJmb3JtYW5jZUVudHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IEFkZGVkIHRoZSB2YXJpb3VzIFBlcmZvcm1hbmNlKiBmaWxlcyB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOiBB
ZGRlZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6
OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAg
ICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNv
dXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNldFJlc291cmNlVGltaW5nRW5hYmxlZCk6CisgICAgICAgIChXZWJD
b3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpyZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQg
I2lmIGZvciBSZXNvdXJjZVRpbWluZy4gQWRkZWQgYnVpbGQgZmxhZyBhcm91bmQgVXNlclRpbWlu
ZyByZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBkb20vRXZlbnROYW1lcy5oOiBSZW5hbWVkIHdlYmtpdHJlc291cmNldGltaW5nYnVm
ZmVyZnVsbCB0byByZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwuCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWlu
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlcjo6bG9hZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3Rp
Zmllci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxh
Zy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVy
LmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgor
ICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJldmFsaWRhdGVSZXNvdXJj
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJlc291cmNl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNl
VGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVz
b3VyY2VMb2FkZXI6OmxvYWREb25lKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICog
cGFnZS9QZXJmb3JtYW5jZS5jcHA6IFJlbW92ZSAjaWYgZm9yIFJlc291cmNlVGltaW5nLgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNlKTogUmVtb3ZlZCAjaWYgZm9y
IFJlc291cmNlVGltaW5nIHJlbGF0ZWQgaW5pdGlhbGl6YXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcyk6IFJlbmFtZWQgdG8gZ2V0RW50cmllcy4K
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlUeXBlKTog
UmVuYW1lZCB0byBnZXRFbnRyaWVzQnlUeXBlLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUpOiBSZW5hbWVkIHRvIGdldEVudHJpZXNCeU5hbWUu
CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRp
bWluZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmlkbDogUmVwbGFjZSAjaWYgZm9yIFJl
c291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeS5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuaDogUmVtb3ZlIHRoZSBQRVJGT1JNQU5D
RV9USU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5p
ZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcgd2l0aCBydW50
aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHA6IFJlbW92
ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlRW50cnlMaXN0Lmg6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVp
bGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbDogUmVwbGFj
ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOiBSZW1vdmUgdGhl
IFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oOiBSZW1vdmUgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6IFJlcGxhY2UgdGhl
IFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJj
ZVRpbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6c2V0UmVzb3VyY2VUaW1pbmdT
dXBwb3J0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOiBBZGQgYSBtZXRob2QgdGhh
dCBlbmFibGVzIFJlc291cmNlVGltaW5nLgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlk
bDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKwogMjAxNi0wNC0y
OCAgSm9hbm1hcmllIERpZ2dzICA8amRpZ2dzQGlnYWxpYS5jb20+CiAKICAgICAgICAgQVg6IFtB
VEtdIFdlIG5lZWQgdG8gYmUgc21hcnRlciBhYm91dCBmbGF0dGVuaW5nIGFuZCB0aGUgYWNjZXNz
aWJsZSB0ZXh0IGltcGxlbWVudGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAppbmRleCBjNDRlNTgyZDdhMjY2YTc0YTE1NTExODgz
NjVkMzNlOTY3N2VjZWE4Li5kNWIzMDNmMTRjNzNlODFlMGU1NDQ1YjMyNmQwNjM3ZDk5MmE0OThj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlm
aWVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZp
ZXJzLmgKQEAgLTcxLDYgKzcxLDkgQEAKICAgICBtYWNybyhOdW1iZXIpIFwKICAgICBtYWNybyhO
dW1iZXJGb3JtYXQpIFwKICAgICBtYWNybyhPYmplY3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5j
ZUVudHJ5KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VFbnRyeUxpc3QpIFwKKyAgICBtYWNybyhQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKSBcCiAgICAgbWFjcm8oUHJvbWlzZSkgXAogICAgIG1h
Y3JvKFByb3h5KSBcCiAgICAgbWFjcm8oUmFuZ2VFcnJvcikgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UKaW5kZXggNDIwYTc5MDQ3YjY4NDEwOGY2MzE0ZDc5YTk1YTdjNDI4N2YxOTlmNS4u
YzNhMTJlNGM2NDZhNjM5Njc0ZWI5NzY3Y2IyNGUyY2YxYTA1Mjk0YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCkBAIC01MTgsNyArNTE4LDEwIEBAIE5PTl9TVkdfQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvcGFnZS9Mb2NhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkv
cGFnZS9OYXZpZ2F0b3IuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2UuaWRs
IFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwgXAorICAgICQoV2Vi
Q29yZSkvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFn
ZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5j
ZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9TY3JlZW4uaWRsIFwKICAgICAkKFdl
YkNvcmUpL3BhZ2UvV2ViS2l0UG9pbnQuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwZjE4ZTIyZWU5YTZiZmZmNmU5NGUz
MjJiNDQ3ZmMwOTU4Y2M5ZGMwLi40NWM0ZjM5MjUwNWY1MjAxNDg4N2I3ODkyNGM2MTY2ZmQ5NjM4
NTZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC01OTkxLDYgKzU5OTEsMTQgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUz
IC8qIFNjcm9sbEFuaW1hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5Rjkw
RjE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1
QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAw
MEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNw
ZWN0UmF0aW9WYWx1ZS5oICovOyB9OworCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDQjM4RkQ0QTFDQ0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAg
Ki87IH07CisJCUNCMzhGRDUxMUNDRjkzODkwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnku
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZE
NEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNC
MzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCAqLzsgfTsKKwkJQ0IzOEZENTMxQ0NGOTM5QjAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovOyB9OworCQlDQjM4RkQ1NDFDQ0Y5MzlFMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9y
bWFuY2VFbnRyeUxpc3QuaCAqLzsgfTsKKwkJQ0IzOEZENTcxQ0QyMUUyQTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1NTFDRDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZUVudHJ5Q3VzdG9tLmNwcCAqLzsgfTsKKwkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmNwcCAqLzsgfTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oICovOyB9OwogCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUx
MEIgLyogTWljcm90YXNrcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi87
IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEzMDYw
MDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQlDQ0MyQjUxNTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29u
dHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi87IH07
CkBAIC0xMzk1Niw2ICsxMzk2NCwxNCBAQAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyog
U2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xs
QW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFG
MDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUNBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlv
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAw
NTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUGVyZm9ybWFuY2VFbnRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNCMzhGRDREMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnku
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
QjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlD
dXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3Jt
YW5jZUVudHJ5Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZE
NTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90
YXNrcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tz
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhD
REQ2IC8qIERldmljZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2
MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0xODA1OCw2ICsxODA3NCw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAw
MTQwNjVDIC8qIFBlcmZvcm1hbmNlLmggKi8sCiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVD
IC8qIFBlcmZvcm1hbmNlLmlkbCAqLywKIAkJCQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyog
UGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQ
ZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKIAkJCQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyog
UGVyZm9ybWFuY2VFbnRyeS5pZGwgKi8sCiAJCQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8q
IFBlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBG
RDggLyogUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLywKQEAgLTIyMzEzLDYgKzIyMzMwLDcgQEAK
IAkJCQk4M0YxMjA2QTFCOEMxMDM2MDBENzVGNjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAq
LywKIAkJCQk3QzkxQTM4RDFCNDk4QUJFMDAzRjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICov
LAogCQkJCTdDOTFBMzhFMUI0OThBQkUwMDNGOUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAor
CQkJCUNCMzhGRDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20u
Y3BwICovLAogCQkJCTkzQjcwRDRGMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRG
dW5jdGlvbnMuY3BwICovLAogCQkJCTkzQjcwRDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdp
bkVsZW1lbnRGdW5jdGlvbnMuaCAqLywKIAkJCQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyog
SlNSZWFkYWJsZVN0cmVhbVByaXZhdGVDb25zdHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NDksOCAr
MjI2NjcsMTQgQEAKIAkJCQlBOUQyNDdGNjBENzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3Iu
aCAqLywKIAkJCQlFNTFBODFERTE3Mjk4RDc3MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAg
Ki8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4MTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywK
KwkJCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAq
LywKKwkJCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Lmgg
Ki8sCisJCQkJQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuY3BwICovLAorCQkJCUNCMzhGRDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNl
RW50cnlMaXN0LmggKi8sCiAJCQkJOEE5QTU4NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywKIAkJCQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyog
SlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFD
RDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJ
MEY0M0M4NUUxODlFMTVBNjAwMDE5QUUyIC8qIEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAog
CQkJCThBOUE1ODc3MTFFODRDOTgwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8s
CiAJCQkJQkNFQzAxQzAwQzI3NERERDAwOUY0RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1
NTU2LDYgKzI1NTgwLDcgQEAKIAkJCQkyRDI5RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxh
eVJlZnJlc2hNb25pdG9ySU9TLmggaW4gSGVhZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJB
MDBCMDk3NUMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyRDI5RUNDODE5MkVDQzgzMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhB
MDdEIC8qIERpc3BsYXlTbGVlcERpc2FibGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERD
MDE0MjgyMjJDMDAyNkNFNzIgLyogRGlzcGxheVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRkQzMTYwOTExMkIwMjZGNzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVh
ZGVycyAqLywKQEAgLTI3NjkxLDYgKzI3NzE2LDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5
NEM5RTQgLyogUmVuZGVyVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThD
MjAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQw
QTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRlcldpZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Iz
OEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2Rl
V2l0aFNwYW5Db21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1
NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5
Q0MwQjU0MThCRTk4NDkwMDZDRUJDQyAvKiBSZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAq
LywKQEAgLTI4MDIwLDYgKzI4MDQ2LDcgQEAKIAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYg
LyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQw
MEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4
MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0IzOEZENTQxQ0NGOTM5RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
aCBpbiBIZWFkZXJzICovLAogCQkJCUU0REVBQTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRy
ZWVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1
IC8qIFN0eWxlVmlzdWFsRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlD
RDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI5MjAyLDYg
KzI5MjI5LDcgQEAKIAkJCQlCMjc1MzU3NzBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0g
aW4gU291cmNlcyAqLywKIAkJCQk0M0VERDY3RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRG
aWx0ZXJzQWxwaGFiZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAw
N0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVycy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4
RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlBNTg0RkUzNDE4NjRENUFGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODRGRTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5k
TGluZUFQSU1vZHVsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5
MEQ3ODEgLyogQ29tbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTMxMjIwLDYgKzMxMjQ4LDcg
QEAKIAkJCQlCQzk2REI0NjBGM0E4ODIyMDA1NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3Qu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFQTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRl
ckJ1dHRvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0Qjgg
LyogUmVuZGVyQ29tYmluZVRleHQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0Qy
MzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk5MzkyRjE0NDBBRDE4NUZFMDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlCQ0VBNDg2RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVw
cmVjYXRlZEZsZXhpYmxlQm94LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZF
ODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxzTWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAt
MzE5OTYsNiArMzIwMjUsNyBAQAogCQkJCTQ0NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJD
b3JlVVJMUmVzcG9uc2VJT1MubW0gaW4gU291cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5
MDAxRTlBQkMgLyogV2ViQ29yZVZpZXcubSBpbiBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5
NDU4MUYwMDlBREY1MCAvKiBXZWJEZWJ1Z2dlckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJRkUwRDg0RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMjI1QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2
ZW50UmVnaW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJC
IC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA3NSw2
ICszMjEwNSw3IEBACiAJCQkJQjEwQjY5ODExNDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2Vu
aXplci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyog
V2ViV2luZG93QW5pbWF0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEy
RDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZE
NTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3MDBGOTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQkyRTE5NTE2QjFCNjU5OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRh
RmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAv
KiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXJNYWMubW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTEyLDYg
KzMyMTQzLDcgQEAKIAkJCQkwMEI5MzE4OTEzQkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQ
YXJzZXJMaWJ4bWwyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1
QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNjb3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5
QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQkM3NzJDNDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBS
ZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAv
KiBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQ0RGRDQ4RjBFMzA1MjkwMDA5RDEwQUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5l
cmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
Z2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAppbmRleCAxY2Y0YWE3OGNkNzUzZDA3
MGFkNWJlNDE4MTlhNDAyZDQ4Mzk0YjIwLi5jZDNlNmIxNzk1Njk5YTgyMTM2MmYzZjYyOTQ4NDZl
NzgxNDEwNTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1
bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dl
bmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKQEAgLTU5LDYgKzU5LDcgQEAgUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6UnVudGltZUVuYWJsZWRGZWF0dXJlcygpCiAjZWxzZQogICAgICwg
bV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxlZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jl
c291cmNlVGltaW5nRW5hYmxlZChmYWxzZSkKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
ICAgICAsIG1faXNJbmRleGVkREJFbmFibGVkKGZhbHNlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5o
CmluZGV4IDVkNjQ2ODY1MDI2MWIxNzA3OGNlYjNjNTIwNjg5MTNlNTA1MDJlMGEuLmIxYmE2ZjNl
Y2MwMTViZTY5NDZhODg0NzFiYTZlZWQ0MzZlMDAyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0y
MDEsNiArMjAxLDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFi
bGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0Vu
YWJsZWQ7IH0KICAgICBib29sIHBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0
dXJuIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3Vy
Y2VUaW1pbmdFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJs
ZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBib29sIHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0
IHsgcmV0dXJuIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1F
UEFEKQogICAgIHZvaWQgc2V0R2FtZXBhZHNFbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2Fy
ZUdhbWVwYWRzRW5hYmxlZCA9IGFyZUVuYWJsZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxl
ZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJlR2FtZXBhZHNFbmFibGVkOyB9CkBAIC0yNjIsNiArMjY1
LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAg
Ym9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9v
bCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNlVGlt
aW5nRW5hYmxlZDsKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wgbV9p
c0luZGV4ZWREQkVuYWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAppbmRleCBlYmRkMzdmOGM0YzIxN2IzOTkx
ZmVkMzBjODU3NDc5NzYxZWQyMzAzLi44ZjExZTcwMjU3ZmRjMTE3NTUxYjA3YmZjOGM3YmMyODhk
ZGNhYzA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1h
bmNlRW50cnlDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVy
Zm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKQEAgLTMwLDEzICszMCwxMyBAQAogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KICNpbmNsdWRl
ICJKU1BlcmZvcm1hbmNlRW50cnkuaCIKIAogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2lm
IEVOQUJMRShVU0VSX1RJTUlORykKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2lu
Y2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUuaCIKQEAgLTUxLDEwICs1MSw4IEBAIEpTVmFsdWUg
dG9KUyhFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3Jt
YW5jZUVudHJ5KiBlbnRyCiAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVsbCgp
OwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzUmVzb3Vy
Y2UoKSkKICAgICAgICAgcmV0dXJuIHdyYXA8SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihn
bG9iYWxPYmplY3QsIHN0YXRpY19jYXN0PFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcqPihlbnRy
eSkpOwotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKGVudHJ5LT5p
c01hcmsoKSkKQEAgLTY4LDUgKzY2LDMgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9N
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJ
TUVMSU5FKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKaW5kZXggNGNlODY3ODUwMGRkY2E1MGI1ZTVj
ODEwYjJkMmRiMDNiOWZhN2JmNC4uZDU3NDczOGZiYjhjMGFjNmMyNDQ2MWYwMTI4YTFlZTMyOWE2
Zjg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCkBAIC0xODMsNiArMTgzLDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIG1hY3JvKHJlbW92ZXRyYWNrKSBcCiAgICAgbWFjcm8ocmVzZXQp
IFwKICAgICBtYWNybyhyZXNpemUpIFwKKyAgICBtYWNybyhyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1
bGwpIFwKICAgICBtYWNybyhyZXN1bHQpIFwKICAgICBtYWNybyhyZXN1bWUpIFwKICAgICBtYWNy
byhzY3JvbGwpIFwKQEAgLTI2MSw3ICsyNjIsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
bWFjcm8od2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQpIFwKICAgICBtYWNybyh3ZWJraXRy
ZWdpb25vdmVyc2V0Y2hhbmdlKSBcCiAgICAgbWFjcm8od2Via2l0cmVtb3Zlc291cmNlYnVmZmVy
KSBcCi0gICAgbWFjcm8od2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsKSBcCiAgICAgbWFj
cm8od2Via2l0c291cmNlY2xvc2UpIFwKICAgICBtYWNybyh3ZWJraXRzb3VyY2VlbmRlZCkgXAog
ICAgIG1hY3JvKHdlYmtpdHNvdXJjZW9wZW4pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggY2RjNDU5ZjJiZmE4YTFiZTYy
YWZlZTMzYzRiMGJlNzcxY2I2MWExZC4uNWY1ZWZkODQxOGEzN2VhMDJkZmFiNjM1M2IwMjVhOGE2
MDZmYWJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNr
ZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1
ZXN0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNj
aGVtZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJT
dWJyZXNvdXJjZUxvYWRlci5oIgpAQCAtMzg1LDkgKzM4Niw4IEBAIHZvaWQgRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IFNlY3VyCiAgICAgICAgIH0KIAogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgbmV3UmVx
dWVzdChyZXF1ZXN0LCBvcHRpb25zKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAg
ICAgICBuZXdSZXF1ZXN0LnNldEluaXRpYXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKLSNlbmRp
ZgorICAgICAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5y
ZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgICAgIG5ld1JlcXVlc3Quc2V0SW5pdGlh
dG9yKG1fb3B0aW9ucy5pbml0aWF0b3IpOwogICAgICAgICBBU1NFUlQoIW1fcmVzb3VyY2UpOwog
ICAgICAgICBtX3Jlc291cmNlID0gbV9kb2N1bWVudC5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJl
cXVlc3RSYXdSZXNvdXJjZShuZXdSZXF1ZXN0KTsKICAgICAgICAgaWYgKG1fcmVzb3VyY2UpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAppbmRleCBk
MzlmZDI3ZGM1NjZjMGZlMjRkMTBjNjAxNGM1YmVkZWQzZTRmY2I5Li5lNTQ2N2ZkMTExMDhlMjEw
OWUxZDJmOWQ5ZDU2YjVjM2U4NmQxMzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWROb3RpZmllci5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJQYWdl
LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXIuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAKICNpZiBVU0UoUVVJ
Q0tfTE9PSykKICNpbmNsdWRlICJRdWlja0xvb2suaCIKQEAgLTE0Niw5ICsxNDcsOCBAQCB2b2lk
IFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZwogICAgIGlmIChsb2FkZXIgJiYgIXJlcXVlc3QuaXNOdWxsKCkg
JiYgcmVxdWVzdC51cmwoKSA9PSBsb2FkZXItPnVybCgpKQogICAgICAgICByZXF1ZXN0LnNldFJl
cG9ydExvYWRUaW1pbmcodHJ1ZSk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAg
IHJlcXVlc3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKLSNlbmRpZgorICAgIGlmIChSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxl
ZCgpKQorICAgICAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7CiB9CiAKIHZv
aWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgciwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5k
ZXggYzBhOTlhM2RlOTc4OTQ1ZmQ2NDlkYzJkNmVhNzhkYjY3ODcxMzAxZC4uMDk2NzVmYzYxMGQ4
YjM0OTg4NDk0OGMwZWNlMGQzOTUyZjhmYzVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC02MSw2ICs2MSw3IEBA
CiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVu
dC5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZEluZm8uaCIKKyNpbmNsdWRlICJSdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUg
IlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2Vzc2lvbklELmgiCkBAIC03NSw5ICs3Niw3
IEBACiAjaW5jbHVkZSAiQ2FjaGVkVGV4dFRyYWNrLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShS
RVNPVVJDRV9USU1JTkcpCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKLSNlbmRpZgogCiAjZGVm
aW5lIFBSRUxPQURfREVCVUcgMAogCkBAIC02NzEsMTEgKzY3MCw4IEBAIENhY2hlZFJlc291cmNl
SGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmV2YWxpZGF0ZVJl
c291cmNlKGNvCiAgICAgCiAgICAgbWVtb3J5Q2FjaGUucmVtb3ZlKCpyZXNvdXJjZSk7CiAgICAg
bWVtb3J5Q2FjaGUuYWRkKCpuZXdSZXNvdXJjZSk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlO
RykKLSAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2Us
IHJlcXVlc3QpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0ocmVxdWVzdCk7Ci0jZW5kaWYKKyAg
ICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRp
bWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9y
bWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAgICByZXR1cm4gbmV3UmVzb3VyY2U7CiB9CiAK
QEAgLTY5MCwxNSArNjg2LDE0IEBAIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNl
PiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJlc291cmNlKENhY2hlZFJlCiAKICAgICBpZiAo
cmVxdWVzdC5hbGxvd3NDYWNoaW5nKCkgJiYgIW1lbW9yeUNhY2hlLmFkZCgqcmVzb3VyY2UpKQog
ICAgICAgICByZXNvdXJjZS0+c2V0T3duaW5nQ2FjaGVkUmVzb3VyY2VMb2FkZXIodGhpcyk7Ci0j
aWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlh
dG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVk
KCkpCisgICAgICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNv
dXJjZSwgcmVxdWVzdCk7CiAgICAgcmV0dXJuIHJlc291cmNlOwogfQogCi0jaWYgRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnN0b3JlUmVzb3VyY2VU
aW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNo
ZWRSZXNvdXJjZT4mIHJlc291cmNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QpCiB7CisgICAgQVNTRVJUKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVz
KCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpOwogICAgIGlmIChyZXNvdXJjZS0+dHlwZSgpID09
IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3VyY2UpIHsKICAgICAgICAgLy8gPGlmcmFtZT5zIHNo
b3VsZCByZXBvcnQgdGhlIGluaXRpYWwgbmF2aWdhdGlvbiByZXF1ZXN0ZWQgYnkgdGhlIHBhcmVu
dCBkb2N1bWVudCwgYnV0IG5vdCBzdWJzZXF1ZW50IG5hdmlnYXRpb25zLgogICAgICAgICBpZiAo
ZnJhbWUoKS0+b3duZXJFbGVtZW50KCkgJiYgbV9kb2N1bWVudExvYWRlci0+ZnJhbWVMb2FkZXIo
KS0+c3RhdGVNYWNoaW5lKCkuY29tbWl0dGluZ0ZpcnN0UmVhbExvYWQoKSkgewpAQCAtNzEwLDcg
KzcwNSw2IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnN0b3JlUmVzb3VyY2VUaW1pbmdJ
bml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSCiAgICAgICAgIG1faW5pdGlhdG9yTWFw
LmFkZChyZXNvdXJjZS5nZXQoKSwgaW5mbyk7CiAgICAgfQogfQotI2VuZGlmIC8vIEVOQUJMRShS
RVNPVVJDRV9USU1JTkcpCiAKIHN0YXRpYyB2b2lkIGxvZ1JldmFsaWRhdGlvbihjb25zdCBTdHJp
bmcmIHJlYXNvbiwgRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQmIGxvZ0NsaWVudCkKIHsKQEAgLTk3
Niw4ICs5NzAsOSBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkRG9uZShDYWNoZWRS
ZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hvdWxkUGVyZm9ybQogICAgIFJlZlB0cjxEb2N1bWVu
dExvYWRlcj4gcHJvdGVjdERvY3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgIFJl
ZlB0cjxEb2N1bWVudD4gcHJvdGVjdERvY3VtZW50KG1fZG9jdW1lbnQpOwogCi0jaWYgRU5BQkxF
KFJFU09VUkNFX1RJTUlORykKLSAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3VyY2UtPnJlc3BvbnNl
KCkuaXNIVFRQKCkgJiYgKCghcmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhcmVzb3VyY2Ut
Pndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNlLT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkg
PT0gMzA0KSkgeworICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJl
cygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpCisgICAgICAgICYmIHJlc291cmNlICYmIHJlc291
cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpCisgICAgICAgICYmICgoIXJlc291cmNlLT5lcnJvck9j
Y3VycmVkKCkgJiYgIXJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB8fCByZXNvdXJjZS0+cmVzcG9u
c2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkpIHsKICAgICAgICAgSGFzaE1hcDxDYWNoZWRS
ZXNvdXJjZSosIEluaXRpYXRvckluZm8+OjppdGVyYXRvciBpbml0aWF0b3JJdCA9IG1faW5pdGlh
dG9yTWFwLmZpbmQocmVzb3VyY2UpOwogICAgICAgICBpZiAoaW5pdGlhdG9ySXQgIT0gbV9pbml0
aWF0b3JNYXAuZW5kKCkpIHsKICAgICAgICAgICAgIEFTU0VSVChkb2N1bWVudCgpKTsKQEAgLTk5
MCw5ICs5ODUsNiBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkRG9uZShDYWNoZWRS
ZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hvdWxkUGVyZm9ybQogICAgICAgICAgICAgbV9pbml0
aWF0b3JNYXAucmVtb3ZlKGluaXRpYXRvckl0KTsKICAgICAgICAgfQogICAgIH0KLSNlbHNlCi0g
ICAgVU5VU0VEX1BBUkFNKHJlc291cmNlKTsKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElN
SU5HKQogCiAgICAgaWYgKGZyYW1lKCkpCiAgICAgICAgIGZyYW1lKCktPmxvYWRlcigpLmxvYWRE
b25lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5oCmluZGV4IGIxZjdjNGZhZjVkYmIwOTYwMWM1ODkyZjVkNjQ3MTM5NDliMWY2MGQu
LjRkZjgxOTk1OWNlYWIxMTAzNzRiNTViNDYwMzkzMGE4N2ViN2M2NmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCkBAIC0xNDQs
OSArMTQ0LDcgQEAgcHJpdmF0ZToKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNv
dXJjZT4gcmVxdWVzdFJlc291cmNlKENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3QmKTsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcmV2
YWxpZGF0ZVJlc291cmNlKGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVzdCYsIENhY2hlZFJlc291
cmNlKik7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IGxvYWRSZXNv
dXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7Ci0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICB2b2lkIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0
aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJj
ZT4mLCBjb25zdCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNlbmRpZgogICAgIHZvaWQgcmVx
dWVzdFByZWxvYWQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFN0cmluZyYgY2hhcnNldCk7CiAKICAgICBlbnVtIFJldmFsaWRhdGlvblBvbGljeSB7
IFVzZSwgUmV2YWxpZGF0ZSwgUmVsb2FkLCBMb2FkIH07CkBAIC0xNzksMTMgKzE3NywxMSBAQCBw
cml2YXRlOgogCiAgICAgVGltZXIgbV9nYXJiYWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGlt
ZXI7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIHN0cnVjdCBJbml0aWF0b3JJ
bmZvIHsKICAgICAgICAgQXRvbWljU3RyaW5nIG5hbWU7CiAgICAgICAgIGRvdWJsZSBzdGFydFRp
bWU7CiAgICAgfTsKICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlKiwgSW5pdGlhdG9ySW5mbz4g
bV9pbml0aWF0b3JNYXA7Ci0jZW5kaWYKIAogICAgIC8vIDI5IGJpdHMgbGVmdAogICAgIGJvb2wg
bV9hdXRvTG9hZEltYWdlcyA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCmluZGV4
IGVkMzlhMWQxNTA4MWI0NzY0YWU5N2FmYWY3MzhiYTk2Nzk3ZTczMmIuLjRjMTdkZjM3NzkzNTgz
MzI3MGQyOGQyNWRjYTI5OGYxZGYwNTYzM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2Uu
Y3BwCkBAIC00NywxNSArNDcsMTEgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0jaWYgRU5B
QkxFKFJFU09VUkNFX1RJTUlORykKIHN0YXRpYyBjb25zdCBzaXplX3QgZGVmYXVsdFJlc291cmNl
VGltaW5nQnVmZmVyU2l6ZSA9IDE1MDsKLSNlbmRpZgogCiBQZXJmb3JtYW5jZTo6UGVyZm9ybWFu
Y2UoRnJhbWUmIGZyYW1lKQogICAgIDogRE9NV2luZG93UHJvcGVydHkoJmZyYW1lKQotI2lmIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgLCBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZShk
ZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJD
RV9USU1JTkcpCiAgICAgLCBtX3JlZmVyZW5jZVRpbWUoZnJhbWUuZG9jdW1lbnQoKS0+bG9hZGVy
KCkgPyBmcmFtZS5kb2N1bWVudCgpLT5sb2FkZXIoKS0+dGltaW5nKCkucmVmZXJlbmNlTW9ub3Rv
bmljVGltZSgpIDogbW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCkpCiAjaWYgRU5BQkxFKFVT
RVJfVElNSU5HKQogICAgICwgbV91c2VyVGltaW5nKG51bGxwdHIpCkBAIC05MSwxNCArODcsMTEg
QEAgUGVyZm9ybWFuY2VUaW1pbmcqIFBlcmZvcm1hbmNlOjp0aW1pbmcoKSBjb25zdAogICAgIHJl
dHVybiBtX3RpbWluZy5nZXQoKTsKIH0KIAotI2lmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElO
RSkKLVBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRH
ZXRFbnRyaWVzKCkgY29uc3QKK1Bhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZv
cm1hbmNlOjpnZXRFbnRyaWVzKCkgY29uc3QKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eUxpc3Q+IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIGVudHJpZXMtPmFwcGVuZEFsbChtX3Jlc291cmNl
VGltaW5nQnVmZmVyKTsKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiAjaWYg
RU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTExMSwxNiAr
MTA0LDE0IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3
ZWJraXRHZXRFbnRyaWVzKCkgY29uc3QKICAgICByZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1Jl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNC
eVR5cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCitQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50
cnlMaXN0PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5
VHlwZSkKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJm
b3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5H
KQogICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUsICJyZXNv
dXJjZSIpKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNlVGltaW5n
QnVmZmVyKQogICAgICAgICAgICAgZW50cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICB9Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2VyVGltaW5nKSB7
CkBAIC0xMzUsMTggKzEyNiwxNiBAQCBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQ
ZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbgogICAgIHJldHVy
biBlbnRyaWVzOwogfQogCi1QYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3Jt
YW5jZTo6d2Via2l0R2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0
cmluZyYgZW50cnlUeXBlKQorUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9y
bWFuY2U6OmdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcm
IGVudHJ5VHlwZSkKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMg
PSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQogICAgIGlmIChlbnRyeVR5cGUuaXNOdWxsKCkgfHwgZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UoZW50cnlUeXBlLCAicmVzb3VyY2UiKSkgewogICAgICAgICBmb3IgKGF1dG8m
IHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAgICAgaWYgKHJl
c291cmNlLT5uYW1lKCkgPT0gbmFtZSkKICAgICAgICAgICAgICAgICBlbnRyaWVzLT5hcHBlbmQo
cmVzb3VyY2UpOwogICAgICAgICB9CiAgICAgfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9U
SU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTYxLDIwICsxNTAsMTYgQEAgUGFz
c1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJp
ZXNCeU5hbWUoY29uc3QgU3RyaW4KICAgICByZXR1cm4gZW50cmllczsKIH0KIAotI2VuZGlmIC8v
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLQotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCi0KLXZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCkKK3Zv
aWQgUGVyZm9ybWFuY2U6OmNsZWFyUmVzb3VyY2VUaW1pbmdzKCkKIHsKICAgICBtX3Jlc291cmNl
VGltaW5nQnVmZmVyLmNsZWFyKCk7CiB9CiAKLXZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdFNldFJl
c291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBzaXplKQordm9pZCBQZXJmb3JtYW5jZTo6
c2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIHNpemUpCiB7CiAgICAgbV9yZXNv
dXJjZVRpbWluZ0J1ZmZlclNpemUgPSBzaXplOwogICAgIGlmIChpc1Jlc291cmNlVGltaW5nQnVm
ZmVyRnVsbCgpKQotICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1l
cygpLndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsK
KyAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZXNvdXJj
ZXRpbWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKIHZvaWQgUGVyZm9y
bWFuY2U6OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9j
dW1lbnQqIGluaXRpYXRvckRvY3VtZW50LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBkb3VibGUgaW5pdGlhdGlvblRpbWUs
IGRvdWJsZSBmaW5pc2hUaW1lKQpAQCAtMTg3LDcgKzE3Miw3IEBAIHZvaWQgUGVyZm9ybWFuY2U6
OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQq
IGluaXRpCiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5hcHBlbmQoZW50cnkpOwogCiAgICAg
aWYgKGlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkpCi0gICAgICAgIGRpc3BhdGNoRXZlbnQo
RXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkud2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxs
RXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLnJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFs
c2UpKTsKIH0KIAogYm9vbCBQZXJmb3JtYW5jZTo6aXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwo
KQpAQCAtMTk1LDggKzE4MCw2IEBAIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3VyY2VUaW1pbmdC
dWZmZXJGdWxsKCkKICAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5zaXplKCkgPj0g
bV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQotCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogdm9pZCBQZXJmb3JtYW5jZTo6
d2Via2l0TWFyayhjb25zdCBTdHJpbmcmIG1hcmtOYW1lLCBFeGNlcHRpb25Db2RlJiBlYykKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5M2Y0NDA2NDRiYjc2M2ZhN2RjOGQxN2U0
ODYyZTMyMzVlOWM3NmY3Li5mMDY0OTU0MjhkNjM4YzVhZmRmZmY1M2IzOGVlOTUzODRjMjMxOWUw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC02NCwxOCArNjQsMTQgQEAgcHVibGlj
OgogICAgIFBlcmZvcm1hbmNlVGltaW5nKiB0aW1pbmcoKSBjb25zdDsKICAgICBkb3VibGUgbm93
KCkgY29uc3Q7CiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0gICAgUGFzc1Jl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllcygpIGNvbnN0OwotICAg
IFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVudHJpZXNCeVR5cGUo
Y29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwotICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRy
eUxpc3Q+IHdlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBT
dHJpbmcmIGVudHJ5VHlwZSk7Ci0jZW5kaWYKKyAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50
cnlMaXN0PiBnZXRFbnRyaWVzKCkgY29uc3Q7CisgICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVu
dHJ5TGlzdD4gZ2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7CisgICAg
UGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllc0J5TmFtZShjb25zdCBT
dHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKIAotI2lmIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCi0gICAgdm9pZCB3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpOwotICAg
IHZvaWQgd2Via2l0U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGludCk7Cisg
ICAgdm9pZCBjbGVhclJlc291cmNlVGltaW5ncygpOworICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1p
bmdCdWZmZXJTaXplKHVuc2lnbmVkKTsKIAogICAgIHZvaWQgYWRkUmVzb3VyY2VUaW1pbmcoY29u
c3QgU3RyaW5nJiBpbml0aWF0b3JOYW1lLCBEb2N1bWVudCosIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBkb3VibGUgaW5pdGlhdGlvblRpbWUsIGRvdWJs
ZSBmaW5pc2hUaW1lKTsKLSNlbmRpZgogCiAgICAgdXNpbmcgUmVmQ291bnRlZDxQZXJmb3JtYW5j
ZT46OnJlZjsKICAgICB1c2luZyBSZWZDb3VudGVkPFBlcmZvcm1hbmNlPjo6ZGVyZWY7CkBAIC05
NywxMSArOTMsOSBAQCBwcml2YXRlOgogCiAgICAgbXV0YWJsZSBSZWZQdHI8UGVyZm9ybWFuY2VO
YXZpZ2F0aW9uPiBtX25hdmlnYXRpb247CiAgICAgbXV0YWJsZSBSZWZQdHI8UGVyZm9ybWFuY2VU
aW1pbmc+IG1fdGltaW5nOwotICAgIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCisKICAg
ICBWZWN0b3I8UmVmUHRyPFBlcmZvcm1hbmNlRW50cnk+PiBtX3Jlc291cmNlVGltaW5nQnVmZmVy
OwogICAgIHVuc2lnbmVkIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplOwotI2VuZGlmCiAKICAg
ICBkb3VibGUgbV9yZWZlcmVuY2VUaW1lOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRs
CmluZGV4IDIxYmZhNGE5OTE0NDY0MzFmODI3MDg3YjE0NjJhYzU2NjdjMmVjZGUuLjg3OWM2OTg0
MzY2NjNmZTQwYzE3NjRjZmI1NDMwMzJjZTFkNGE2YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2UuaWRsCkBAIC0zNiwxOCArMzYsMTUgQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgUGVy
Zm9ybWFuY2VOYXZpZ2F0aW9uIG5hdmlnYXRpb247CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFBl
cmZvcm1hbmNlVGltaW5nIHRpbWluZzsKIAotI2lmIGRlZmluZWQoRU5BQkxFX1BFUkZPUk1BTkNF
X1RJTUVMSU5FKSAmJiBFTkFCTEVfUEVSRk9STUFOQ0VfVElNRUxJTkUKLSAgICBQZXJmb3JtYW5j
ZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzKCk7Ci0gICAgUGVyZm9ybWFuY2VFbnRyeUxpc3Qg
d2Via2l0R2V0RW50cmllc0J5VHlwZShET01TdHJpbmcgZW50cnlUeXBlKTsKLSAgICBQZXJmb3Jt
YW5jZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKERPTVN0cmluZyBuYW1lLCBvcHRp
b25hbCBET01TdHJpbmcgZW50cnlUeXBlID0gbnVsbCk7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0
UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmllcygp
OworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5
TGlzdCBnZXRFbnRyaWVzQnlUeXBlKERPTVN0cmluZyBlbnRyeVR5cGUpOworICAgIFtFbmFibGVk
QXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5TGlzdCBnZXRFbnRyaWVz
QnlOYW1lKERPTVN0cmluZyBuYW1lLCBvcHRpb25hbCBET01TdHJpbmcgZW50cnlUeXBlID0gbnVs
bCk7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9SRVNPVVJDRV9USU1JTkcpICYmIEVOQUJMRV9SRVNP
VVJDRV9USU1JTkcKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCk7Ci0gICAg
dm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgbG9uZyBtYXhT
aXplKTsKIAotICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb253ZWJraXRyZXNvdXJjZXRpbWlu
Z2J1ZmZlcmZ1bGw7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWlu
Z10gdm9pZCBjbGVhclJlc291cmNlVGltaW5ncygpOworICAgIFtFbmFibGVkQXRSdW50aW1lPVJl
c291cmNlVGltaW5nXSB2b2lkIHNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBs
b25nIG1heFNpemUpOworCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIGF0
dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGw7CiAKICAgICAv
LyBTZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMi9DUi11c2VyLXRpbWluZy0yMDEyMDcyNi8K
ICNpZiBkZWZpbmVkKEVOQUJMRV9VU0VSX1RJTUlORykgJiYgRU5BQkxFX1VTRVJfVElNSU5HCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcAppbmRleCAzMmRiN2NmZTU2MzVj
ZGYzMmMzMDVlYzRlYWMwOTUwMWU1ZjgzZWU1Li4zNzRlMTQyOTMxODNmOTczZmFhNzg0MTgxZGZk
NTllMjMwOTViNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAK
QEAgLTMxLDcgKzMxLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3Jt
YW5jZUVudHJ5LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1B
TkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKQEAgLTY5LDQgKzY5LDQgQEAgZG91YmxlIFBlcmZvcm1hbmNlRW50cnk6OmR1cmF0aW9u
KCkgY29uc3QKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdF
Ql9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VFbnRyeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKaW5kZXgg
MTI5YTI0NjQwY2M0ZDJhMzVjYWVhYjZiYTJmMWFmYzgxODRmMzYyYi4uY2YzN2MwZTU2OWRkNzRm
MmE1MGNmOWNmMmQyYTlmMDRkNmQ1Yzk4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYgUGVyZm9ybWFuY2VFbnRyeV9oCiAj
ZGVmaW5lIFBlcmZvcm1hbmNlRW50cnlfaAogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVO
QUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2lu
Y2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTcx
LDUgKzcxLDUgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5H
KSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gIUVOQUJMRShXRUJf
VElNSU5HKQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1hbmNlRW50cnlfaCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCmluZGV4IDliY2FmNGMzNDAxODk4NTVhMmI2
NGQ2ZjA1YjI5OGNjYzFmNzIzZTYuLmYzN2UyYTNjYmE0MzI0MTNhMGFmN2JiYzQ2YThkNWYxNDRi
ZmFmMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbApAQCAtMzEs
NyArMzEsNyBAQAogLy8gU2VlOiBodHRwczovL2R2Y3MudzMub3JnL2hnL3dlYnBlcmYvcmF3LWZp
bGUvdGlwL3NwZWNzL1BlcmZvcm1hbmNlVGltZWxpbmUvT3ZlcnZpZXcuaHRtbAogWwogICAgIENv
bmRpdGlvbmFsPVdFQl9USU1JTkcsCi0gICAgQ29uZGl0aW9uYWw9UEVSRk9STUFOQ0VfVElNRUxJ
TkUsCisgICAgRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZywKICAgICBDdXN0b21Ub0pT
T2JqZWN0LAogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VFbnRyeSB7CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIERPTVN0cmluZyBuYW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnlMaXN0LmNwcAppbmRleCBkOWZhMDU1NzdkZDU3OWU5Y2E4Mjc0ZGQ3OGI0YWNlMzRiYzc5
MjhiLi5jMDM1OTI4YjMxYzZkZTlkNjFkODYzMTE2MzFkMzM1NmZjM2I4MjYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcApAQCAtMzIsNyArMzIsNyBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnlMaXN0Lmgi
CiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5F
KQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeS5o
IgogCkBAIC03NSw0ICs3NSw0IEBAIHZvaWQgUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OnNvcnQoKQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykg
JiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vIEVOQUJMRShXRUJfVElN
SU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlz
dC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oCmluZGV4IDk3
YTIxMmRkNmZkMDU0NDc2NmVkNzU2M2MxNzU2YjkxMzZkN2ZlZDYuLmQyYzQxZjVhZDQ3ZjE4YWIx
MTMwZDNjMDU1YWUzNTExMDJiMGM3OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlRW50cnlMaXN0LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYgUGVyZm9ybWFuY2VFbnRy
eUxpc3RfaAogI2RlZmluZSBQZXJmb3JtYW5jZUVudHJ5TGlzdF9oCiAKLSNpZiBFTkFCTEUoV0VC
X1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJf
VElNSU5HKQogCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgpAQCAtNjQsNSArNjQsNSBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCiAKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JN
QU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpCiAjZW5kaWYgLy8g
UGVyZm9ybWFuY2VFbnRyeUxpc3RfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnlMaXN0LmlkbAppbmRleCA3ZTI1YTg1Y2U2Yzg5Mzg0ZWZlNTUyZjgzNzY5MjU5MzU4MDI4
OGY5Li4xODA2NmNjMzdlNTczZjIwZTFhOTA1YzM4OGIwMjE4MThlYjc5MzZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbApAQCAtMzIsMTAgKzMyLDkg
QEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5H
LAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5FLAorICAgIEVuYWJsZWRBdFJ1
bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0g
aW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnlMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
dW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgZ2V0dGVyIFBlcmZvcm1hbmNlRW50cnkgaXRlbSh1
bnNpZ25lZCBsb25nIGluZGV4KTsKIH07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IDMxYjg5NzEzN2Y1MTFlNDVmNzc1N2U5
NTZjMjZmMzc1ODdhYjZhNjAuLjViYjYxNDA5NzE5OGZmNTYyMWM1MWM4Njk2YTZkMjc5MmQwZjA2
MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmNwcApAQCAtMzIsOCArMzIsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCi0KICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZFRpbWlu
Zy5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCkBAIC0xOTksNSArMTk3LDMgQEAgZG91
YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc291cmNlVGltZVRvRG9jdW1lbnRNaWxs
aXNlY29uZHMoaW50IGRlbHRhTWkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggOTlkZmM1YmNkY2RjNzllMzUzZTk0OTM2
YzQ4Mjg1MzYxN2M1ZjUzZi4uMzdiNWFlOTFlZGYwNzVhZjQ5YjIwNTc5OTU0MzhkZDhlZjZhYTRm
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmgKQEAgLTMyLDggKzMyLDYgQEAKICNpZm5kZWYgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZ19o
CiAjZGVmaW5lIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdfaAogCi0jaWYgRU5BQkxFKFJFU09V
UkNFX1RJTUlORykKLQogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKICNpbmNsdWRlICJS
ZXNvdXJjZUxvYWRUaW1pbmcuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgpAQCAtODUs
NiArODMsNCBAQCBwcml2YXRlOgogCiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElN
SU5HKQotCiAjZW5kaWYgLy8gIWRlZmluZWQoUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZ19oKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwK
aW5kZXggM2YwMTFiMjNiMDU3YTFhZTBlNjM0ZWYxOTQzYjEwMWZjZTY4NjZkMy4uM2YzMDllM2Jh
MmRiNjRiNDQ5NWVhZTYxODA4MjI5OWU5YjYyZDQ1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCkBAIC0zMCw3ICszMCw3IEBACiAK
IC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1maWxlL3RpcC9zcGVj
cy9SZXNvdXJjZVRpbWluZy9PdmVydmlldy5odG1sCiBbCi0gICAgQ29uZGl0aW9uYWw9UkVTT1VS
Q0VfVElNSU5HLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcKIF0gaW50ZXJm
YWNlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgOiBQZXJmb3JtYW5jZUVudHJ5IHsKICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGluaXRpYXRvclR5cGU7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCBkNDVhY2NkNWYwYmNlMDY3MTdlZmVjOGE5YjAyNmNh
Yzg2MjJmYmE5Li5jOWI0NmMzMzE3NDk1NWFlMDI0ZWJjMDA2OWQ0NzZmZGFlMTBjNmFiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC0zMzE4LDQgKzMzMTgsOSBAQCB2b2lk
IEludGVybmFsczo6c2V0TGlua1ByZWxvYWRTdXBwb3J0KGJvb2wgZW5hYmxlKQogICAgIFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0TGlua1ByZWxvYWRFbmFibGVk
KGVuYWJsZSk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxzOjpzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQo
Ym9vbCBlbmFibGUpCit7CisgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVy
ZXMoKS5zZXRSZXNvdXJjZVRpbWluZ0VuYWJsZWQoZW5hYmxlKTsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggZjNhZmYyZmY5NzE4N2M5OWVhZTJhZTlkOTcyZTU3ZjM3
NDQ3MzYxNC4uYzA3MWE0MTUxNmMxMTkxZDBjNTJkMThmMmU1NDViOWNmMzE2ZGYxNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC00NjgsNiArNDY4LDcgQEAgcHVibGljOgogICAg
IAogICAgIHZvaWQgc2V0Vmlld3BvcnRGb3JjZUFsd2F5c1VzZXJTY2FsYWJsZShib29sKTsKICAg
ICB2b2lkIHNldExpbmtQcmVsb2FkU3VwcG9ydChib29sKTsKKyAgICB2b2lkIHNldFJlc291cmNl
VGltaW5nU3VwcG9ydChib29sKTsKIAogcHJpdmF0ZToKICAgICBleHBsaWNpdCBJbnRlcm5hbHMo
RG9jdW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCAzMmFkYjFj
MDEzYWFlODc0MDQxZDRhMTc1NmQwNWUwMzQwMjc3ZTRkLi4yNjc3Zjc1ZTg4YzNiYmRhY2Q5NWY1
OTZhNzcyNzI4ZDZjY2Y1YzRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBA
IC00NDYsNCArNDQ2LDUgQEAgZW51bSBBdXRvRmlsbEJ1dHRvblR5cGUgewogCiAgICAgdm9pZCBz
ZXRWaWV3cG9ydEZvcmNlQWx3YXlzVXNlclNjYWxhYmxlKGJvb2xlYW4gc2NhbGFibGUpOwogICAg
IHZvaWQgc2V0TGlua1ByZWxvYWRTdXBwb3J0KGJvb2xlYW4gc2NhbGFibGUpOworICAgIHZvaWQg
c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2xlYW4gc2NhbGFibGUpOwogfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9XZWJL
aXRGZWF0dXJlcy5jbWFrZQppbmRleCA5MzA0YjVhZWQyODI2YTkxNjExNGRlZmRjOWJmNTlmYjBk
NTZiNzAwLi43NjhlM2U1OWQ3ZTE5YWFhYTA0ZjAyMjE3ODM1Y2U5Njk2N2MwOTJlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKKysrIGIvU291cmNlL2NtYWtl
L1dlYktpdEZlYXR1cmVzLmNtYWtlCkBAIC0xNTgsNyArMTU4LDYgQEAgbWFjcm8oV0VCS0lUX09Q
VElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfTk9USUZJQ0FUSU9O
UyAiVG9nZ2xlIERlc2t0b3AgTm90aWZpY2F0aW9ucyBTdXBwb3J0IiBQUklWQVRFIE9GRikKICAg
ICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfT1JJRU5UQVRJT05fRVZFTlRTICJUb2dnbGUg
T3JpZW50YXRpb24gRXZlbnRzIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9QREZLSVRfUExVR0lOICJUb2dnbGUgUERGS2l0IHBsdWdpbiBzdXBw
b3J0IiBQUklWQVRFIE9GRikKLSAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUEVSRk9S
TUFOQ0VfVElNRUxJTkUgIlRvZ2dsZSBQZXJmb3JtYW5jZSBUaW1lbGluZSBzdXBwb3J0IiBQUklW
QVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUE9JTlRFUl9MT0NLICJU
b2dnbGUgcG9pbnRlciBsb2NrIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTICJUb2dnbGUgUHJveGltaXR5IEV2ZW50
cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVf
UFVCTElDX1NVRkZJWF9MSVNUICJUb2dnbGUgcHVibGljIHN1ZmZpeCBsaXN0IHN1cHBvcnQiIFBS
SVZBVEUgT0ZGKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDNiYzllMjI4YjQ5YmVlN2FkZjAwOWIzZWZlOTY3YzMxNTU5YTE4
YmIuLmI3M2M1NGE3OGRjNTNiYWJlNGQyYmUwN2VjMmUxZGM3ODViYTFkNTAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgdGVzdHMgdGhhdCBt
YWtlIHN1cmUgUmVzb3VyY2VUaW1pbmcgQVBJcyBhcmUgZXhwb3NlZCBhbmQgdGhhdCByZXNvdXJj
ZXMKKyAgICAgICAgc2hvdyB1cCBhcyBlbnRyaWVzIGluIHRoZSBwZXJmb3JtYW5jZSB0aW1lbGlu
ZS4KKworICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3Jt
YW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFu
Y2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRy
aWVzLmh0bWw6IEFkZGVkLgorCiAyMDE2LTA0LTI4ICBKb2FubWFyaWUgRGlnZ3MgIDxqZGlnZ3NA
aWdhbGlhLmNvbT4KIAogICAgICAgICBBWDogW0FUS10gV2UgbmVlZCB0byBiZSBzbWFydGVyIGFi
b3V0IGZsYXR0ZW5pbmcgYW5kIHRoZSBhY2Nlc3NpYmxlIHRleHQgaW1wbGVtZW50YXRpb24KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1w
ZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWlu
Zy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2ZiOTE1NGU5YjNiNDQyNzE4MmY3NmM0ZmJlZTI3
ZTU4MzI2ZTIzYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNDYgQEAKK1RoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRp
ZXMgdGhhdCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3Qs
IGFsb25nIHdpdGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5wZXJmb3JtYW5jZSBbb2JqZWN0IFBl
cmZvcm1hbmNlXQord2luZG93LnBlcmZvcm1hbmNlLmFkZEV2ZW50TGlzdGVuZXIgW2Z1bmN0aW9u
XQord2luZG93LnBlcmZvcm1hbmNlLmNsZWFyUmVzb3VyY2VUaW1pbmdzIFtmdW5jdGlvbl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS5kaXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
QnlOYW1lIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlIFtm
dW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtvYmplY3QgUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9CQUNLX0ZP
UldBUkQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfTkFWSUdB
VEUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVMT0FEIFtu
dW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX1JFU0VSVkVEIFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5yZWRpcmVjdENvdW50IFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlIFtudW1iZXJdCit3aW5kb3cucGVy
Zm9ybWFuY2Uubm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5vbnJlc291cmNldGlt
aW5nYnVmZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJmb3JtYW5jZS5yZW1vdmVFdmVudExpc3Rl
bmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5zZXRSZXNvdXJjZVRpbWluZ0J1ZmZl
clNpemUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZyBbb2JqZWN0IFBlcmZv
cm1hbmNlVGltaW5nXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25uZWN0RW5kIFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmNvbm5lY3RTdGFydCBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21Db21wbGV0ZSBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQgW251bWJlcl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tSW50ZXJhY3RpdmUgW251bWJlcl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcuZG9tTG9hZGluZyBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZy5kb21haW5Mb29rdXBFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcuZG9tYWluTG9va3VwU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcu
ZmV0Y2hTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5sb2FkRXZlbnRF
bmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubG9hZEV2ZW50U3RhcnQgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0IFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0RW5kIFtudW1iZXJdCit3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcucmVxdWVzdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nLnJlc3BvbnNlRW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3Bv
bnNlU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuc2VjdXJlQ29ubmVj
dGlvblN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50
RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50U3RhcnQg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgW3ByaW50ZWQgYWJvdmUgYXMgd2lu
ZG93LnBlcmZvcm1hbmNlLnRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtw
cmludGVkIGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uXQord2luZG93LnBl
cmZvcm1hbmNlIFtzdHJpbmddCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5j
ZS1yZXNvdXJjZS10aW1pbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNmI1ZDEzNWQxMGE5Mzg3YjI0NTIz
YjUyNzI5ZjkwYWM2NDZjNzBiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5o
dG1sCkBAIC0wLDAgKzEsMTA0IEBACis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9w
ZXJ0aWVzIHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2Jq
ZWN0LCBhbG9uZyB3aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+PC9w
cmU+CisKKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRS
ZXNvdXJjZVRpbWluZ1N1cHBvcnQodHJ1ZSk7CisgICAgCit2YXIgbG9nQnVmZmVyID0gW107Citm
dW5jdGlvbiBsb2cocykKK3sKKyAgICBsb2dCdWZmZXIucHVzaChzKTsKK30KKwordmFyIHByZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcmUnKTsKK2Z1bmN0aW9uIGZsdXNoTG9nKCkKK3sK
KyAgICB2YXIgbG9nTWVzc2FnZSA9IGxvZ0J1ZmZlci5qb2luKCIiKTsKKyAgICBwcmUuYXBwZW5k
Q2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobG9nTWVzc2FnZSkpOworfQorCitmdW5jdGlv
biB0cnlFdmFsKHN0cmluZykKK3sKKyAgICB0cnkgeworICAgICAgICByZXR1cm4gZXZhbChzdHJp
bmcpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgcmV0dXJuIG5ldyBTdHJpbmcoIkNhdWdo
dCBleGNlcHRpb246ICIgKyBlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIHR5cGVPZk51bGxBd2Fy
ZSh2YWx1ZSkKK3sKKyAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3QiICYmIHZhbHVlID09
IG51bGwpCisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsK
K30KKworZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIgdmFs
dWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBlID09
ICJvYmplY3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVl
KQorICAgICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9nVmFs
dWUodmFsdWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsKKyAg
ICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERvbid0
IHRhaW50IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUgPT0g
bG9nQnVmZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG9u
J3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19fdmlz
aXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRlZEJ5
TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBX
b3JrIGFyb3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05XS8u
dGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZpbml0
ZSByZWN1cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlz
aXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICAgICAgbG9nKHZhbHVlTmFtZSArICIgW3ByaW50
ZWQgYWJvdmUgYXMgIiArIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fICsgIl1c
biIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbG9nKHZhbHVlTmFtZSArICIgIiAr
IHR5cGVTdHJpbmdOdWxsQXdhcmUodmFsdWUpICsgIlxuIik7CisKKyAgICBpZiAodmFsdWVUeXBl
ID09ICJvYmplY3QiKSB7CisgICAgICAgIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXyA9IHRy
dWU7CisgICAgICAgIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fID0gdmFsdWVO
YW1lOworICAgICAgICBsb2dQcm9wZXJ0aWVzKHZhbHVlLCB2YWx1ZU5hbWUpOworICAgIH0KK30K
KworZnVuY3Rpb24gbG9nUHJvcGVydGllcyhvYmplY3QsIG9iamVjdE5hbWUpCit7CisgICAgdmFy
IGFycmF5ID0gbmV3IEFycmF5OworICAgIGZvciAodmFyIHByb3BlcnR5IGluIG9iamVjdCkgewor
ICAgICAgICBhcnJheS5wdXNoKHByb3BlcnR5KTsKKyAgICB9CisgICAgYXJyYXkuc29ydCgpOwor
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgdmFy
IHByb3BlcnR5ID0gYXJyYXlbaV07CisgICAgICAgIGxvZ1ZhbHVlKG9iamVjdE5hbWUgKyAiLiIg
KyBwcm9wZXJ0eSk7CisgICAgfQorfQorCitsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlJyk7
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nID0gJ3RpbWluZyBpcyBub3QgcmVwbGFjZWFibGUn
OworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcnKTsKK3dpbmRvdy5wZXJmb3Jt
YW5jZS5uYXZpZ2F0aW9uID0gJ25hdmlnYXRpb24gaXMgbm90IHJlcGxhY2VhYmxlJzsKK2xvZ1Zh
bHVlKCd3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbicpOword2luZG93LnBlcmZvcm1hbmNl
ID0gJ3BlcmZvcm1hbmNlIGlzIHJlcGxhY2VhYmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9y
bWFuY2UnKTsKK2ZsdXNoTG9nKCk7CitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5h
bHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGZhbHNlKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1h
bmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMt
cGVyZm9ybWFuY2UuaHRtbAppbmRleCAwYThmODFlZjEyNTg4ODI1ZDVkMTZkNWE5ZDJkZGJlNzZi
ODY5MzBkLi42ZGY0NjQ1ZTg1M2U0MWZiNTI2NzUzYTc5MjVmMTRjYjA3ZTk3NjQwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9y
bWFuY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UuaHRtbApAQCAtMzAsNyArMzAsNyBAQCBmdW5jdGlvbiB0cnlFdmFs
KHN0cmluZykKIAogZnVuY3Rpb24gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKQogewotICAgIGlmICh0
eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIgJiYgdmFsdWUgPT0gbnVsbCkgLy87CisgICAgaWYgKHR5
cGVvZiB2YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxsKQogICAgICAgICByZXR1cm4g
Im51bGwiOwogICAgIHJldHVybiB0eXBlb2YgdmFsdWU7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1l
bnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2Uv
cGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjczZDE3YmY5NzBjNTY0NDFmNWE4MzIwOGQwMDkzNjUzM2E2N2FmNDAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJl
c291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorUEFTUyBwZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScpLmxlbmd0aCBpcyAyCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3Vy
Y2UtdGltaW5nLWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFu
Y2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
ZWVjYmEyOTU3YzhlZTU5ZmE5NjVjMWI1Zjc0NTg1Y2U0YWM1YTY4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJj
ZS10aW1pbmctZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjMgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRl
cm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KHRydWUpOworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPHNwYW4gaWQ9ImUiPjwvc3Bhbj4KKzxzcGFuIGlkPSJmIj48L3NwYW4+Cis8c2Ny
aXB0Pgord2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICBz
aG91bGRCZSgicGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgncmVzb3VyY2UnKS5sZW5ndGgi
LCAiMiIpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICB3aW5kb3cuaW50ZXJu
YWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydChmYWxzZSk7Cit9KTsKKworPC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXgg
Njk1NjljNGNhYTdlNmUxMTJlZGQzYTNiNDIzYmE5Mzc4M2I4OWFjZS4uMjU2MDcyYmYwNDRlYjVh
YWMwNzM5MGUzY2ZlMDU2MzY5ZDZlZWM3MSAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5
b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBm
bGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcx
MzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNv
dXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZTogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9U
SU1FTElORSBidWlsZCBmbGFnLgorCiAyMDE2LTA0LTI4ICBDb21taXQgUXVldWUgIDxjb21taXQt
cXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjAw
MTg1Lgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277648</attachid>
            <date>2016-04-28 14:07:02 -0700</date>
            <delta_ts>2016-04-28 23:32:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160428230731.patch</filename>
            <type>text/plain</type>
            <size>54769</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
NWE2NmIzM2YyNzQxMmU2MTZkMDVmYzE2ZTVjMzQ0NjhhOTAxOTc5Li4zZGFjZTljMTc5ZmZjOTQ2
ZjU2NmZlZTMwN2I2N2U5ZDJiMWI5YTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZGVkIFBlcmZvcm1hbmNlRW50cnksIFBlcmZvcm1hbmNlRW50cnlMaXN0
IGFuZCBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nIGFzIHByb3BlcnR5IG5hbWVzLgorCiAyMDE2
LTA0LTI4ICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFtKU0NdIFVuaWZ5IE1hdGgucG93KCkgYWNjcm9zcyBhbGwgdGllcnMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA4
NmNkNGQxZmM0MmMyMWNlMDViZDU5OWZiZTJlY2M4MmQxN2VlNjZjLi43NGFmZmFhYWEzNDg1MDFl
MWM1YzUzMzk3ZGJiY2ZhMWVmYmI2YzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTcgQEAKKzIw
MTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNv
dXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgdGhlIFJlc291cmNlVGltaW5nIEFQSSBmcm9t
IGJlaW5nIGJlaGluZCBhIGJ1aWxkIHRpbWUgZmxhZyB0byBiZSBiZWhpbmQgYW4KKyAgICAgICAg
b2ZmLWJ5LWRlZmF1bHQgcnVudGltZSBmbGFnLCB0aGF0IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcg
aW50ZXJuYWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGh0
dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMu
aHRtbAorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogQWRkZWQgaWRsIGZpbGVzIGZv
ciBQZXJmb3JtYW5jZUVudHJ5LCBQZXJmb3JtYW5jZUVudHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IEFkZGVkIHRoZSB2YXJpb3VzIFBlcmZvcm1hbmNlKiBmaWxlcyB0byB0aGUgcHJvamVjdC4K
KyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOiBB
ZGRlZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6
OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAg
ICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNv
dXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNldFJlc291cmNlVGltaW5nRW5hYmxlZCk6CisgICAgICAgIChXZWJD
b3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpyZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQg
I2lmIGZvciBSZXNvdXJjZVRpbWluZy4gQWRkZWQgYnVpbGQgZmxhZyBhcm91bmQgVXNlclRpbWlu
ZyByZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBkb20vRXZlbnROYW1lcy5oOiBSZW5hbWVkIHdlYmtpdHJlc291cmNldGltaW5nYnVm
ZmVyZnVsbCB0byByZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwuCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWlu
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlcjo6bG9hZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3Rp
Zmllci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxh
Zy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVy
LmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgor
ICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJldmFsaWRhdGVSZXNvdXJj
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJlc291cmNl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNl
VGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVz
b3VyY2VMb2FkZXI6OmxvYWREb25lKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICog
cGFnZS9QZXJmb3JtYW5jZS5jcHA6IFJlbW92ZSAjaWYgZm9yIFJlc291cmNlVGltaW5nLgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNlKTogUmVtb3ZlZCAjaWYgZm9y
IFJlc291cmNlVGltaW5nIHJlbGF0ZWQgaW5pdGlhbGl6YXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcyk6IFJlbmFtZWQgdG8gZ2V0RW50cmllcy4K
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlUeXBlKTog
UmVuYW1lZCB0byBnZXRFbnRyaWVzQnlUeXBlLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFu
Y2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUpOiBSZW5hbWVkIHRvIGdldEVudHJpZXNCeU5hbWUu
CisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRp
bWluZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmlkbDogUmVwbGFjZSAjaWYgZm9yIFJl
c291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeS5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuaDogUmVtb3ZlIHRoZSBQRVJGT1JNQU5D
RV9USU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5p
ZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcgd2l0aCBydW50
aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHA6IFJlbW92
ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlRW50cnlMaXN0Lmg6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVp
bGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbDogUmVwbGFj
ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4K
KyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOiBSZW1vdmUgdGhl
IFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oOiBSZW1vdmUgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6IFJlcGxhY2UgdGhl
IFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJj
ZVRpbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6c2V0UmVzb3VyY2VUaW1pbmdT
dXBwb3J0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOiBBZGQgYSBtZXRob2QgdGhh
dCBlbmFibGVzIFJlc291cmNlVGltaW5nLgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlk
bDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKwogMjAxNi0wNC0y
OCAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8yNTk4NjMyND4gV2ViS2l0IGJ1aWxkIGJyb2tlbiB3aXRoIGVycm9yOiB1bmRlY2xhcmVk
IHNlbGVjdG9yICdjaGlsZFZpZXdDb250cm9sbGVyRm9yV2hpdGVQb2ludEFkYXB0aXZpdHlTdHls
ZScKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50
aWZpZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVy
cy5oCmluZGV4IGM0NGU1ODJkN2EyNjZhNzRhMTU1MTE4ODM2NWQzM2U5Njc3ZWNlYTguLmQ1YjMw
M2YxNGM3M2U4MWUwZTU0NDViMzI2ZDA2MzdkOTkyYTQ5OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApAQCAtNzEsNiArNzEsOSBA
QAogICAgIG1hY3JvKE51bWJlcikgXAogICAgIG1hY3JvKE51bWJlckZvcm1hdCkgXAogICAgIG1h
Y3JvKE9iamVjdCkgXAorICAgIG1hY3JvKFBlcmZvcm1hbmNlRW50cnkpIFwKKyAgICBtYWNybyhQ
ZXJmb3JtYW5jZUVudHJ5TGlzdCkgXAorICAgIG1hY3JvKFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcpIFwKICAgICBtYWNybyhQcm9taXNlKSBcCiAgICAgbWFjcm8oUHJveHkpIFwKICAgICBtYWNy
byhSYW5nZUVycm9yKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA0MjBhNzkw
NDdiNjg0MTA4ZjYzMTRkNzlhOTVhN2M0Mjg3ZjE5OWY1Li5jM2ExMmU0YzY0NmE2Mzk2NzRlYjk3
NjdjYjI0ZTJjZjFhMDUyOTRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTUx
OCw3ICs1MTgsMTAgQEAgTk9OX1NWR19CSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9w
YWdlL0xvY2F0aW9uLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL05hdmlnYXRvci5pZGwgXAog
ICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5LmlkbCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNl
RW50cnlMaXN0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlv
bi5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlk
bCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlVGltaW5nLmlkbCBcCiAgICAgJChX
ZWJDb3JlKS9wYWdlL1NjcmVlbi5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9XZWJLaXRQb2lu
dC5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCmluZGV4IDBmMThlMjJlZTlhNmJmZmY2ZTk0ZTMyMmI0NDdmYzA5NThjYzlkYzAuLjQ1
YzRmMzkyNTA1ZjUyMDE0ODg3Yjc4OTI0YzYxNjZmZDk2Mzg1NmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU5OTEsNiArNTk5
MSwxNCBAQAogCQlDQTNCRjY3RTEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBM0JGNjdEMTBE
OTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUNBRTlGOTBGMTQ2NDQxRjAwMEMyNDVCMCAvKiBD
U1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1Zh
bHVlLmNwcCAqLzsgfTsKIAkJQ0FFOUY5MTAxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJh
dGlvVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi87IH07
CisJCUNCMzhGRDRCMUNDQ0YzNjYwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDRBMUNDQ0Yy
REQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLzsgfTsKKwkJQ0IzOEZENTExQ0NG
OTM4OTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLzsgfTsKKwkJQ0IzOEZENTIxQ0NGOTM5NDAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0IzOEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VF
bnRyeS5oICovOyB9OworCQlDQjM4RkQ1MzFDQ0Y5MzlCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZUVudHJ5TGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5j
cHAgKi87IH07CisJCUNCMzhGRDU0MUNDRjkzOUUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnlMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
QjM4RkQ1MDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oICovOyB9
OworCQlDQjM4RkQ1NzFDRDIxRTJBMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9t
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhG
RDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovOyB9
OworCQlDQjM4RkQ1QTFDRDIzMjU4MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENC
MzhGRDU4MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3Bw
ICovOyB9OworCQlDQjM4RkQ1QjFDRDIzMjVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmggKi87IH07CiAJCUNCOENGMDE4MUE5MzU4RDQwMDBENTEwQiAvKiBNaWNyb3Rhc2tzLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCOENGMDE1MUE5
MzRCNDMwMDBENTEwQiAvKiBNaWNyb3Rhc2tzLmNwcCAqLzsgfTsKIAkJQ0NDMkI1MTQxNUY2MTMw
NjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVu
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUND
QzJCNTE1MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTExMTVGNjEzMDYwMDQ4
Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAqLzsgfTsKQEAgLTEzOTU2LDYgKzEzOTY0LDE0
IEBACiAJCUNBM0JGNjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0
UmF0aW9WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NB
c3BlY3RSYXRpb1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5
MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDQjM4RkQ0QTFDQ0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VF
bnRyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5j
ZUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEQxQ0NGOTM3
RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgZmlsZUVuY29k
aW5nID0gNDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDRGMUNDRjkzN0UwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDQjM4RkQ1MDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVu
dHJ5TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuaDsgcGF0aCA9IEpTUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTUxQ0Qy
MUQ1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU5MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAvKiBNaWNyb3Rhc2tzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1pY3JvdGFza3MuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmljZUNsaWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDQ0MyQjUxMTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNl
Q29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZXZp
Y2VDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4MDU4LDYg
KzE4MDc0LDcgQEAKIAkJCQk4QTg0NEQwMjExRDNDMThFMDAxNDA2NUMgLyogUGVyZm9ybWFuY2Uu
aCAqLywKIAkJCQk4QTg0NEQwMzExRDNDMThFMDAxNDA2NUMgLyogUGVyZm9ybWFuY2UuaWRsICov
LAogCQkJCTg2QkUzM0ZCMTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5LmggKi8s
CisJCQkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwICov
LAogCQkJCTg2QkUzM0ZDMTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5LmlkbCAq
LywKIAkJCQk4NkJFMzNGRDE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeUxpc3Qu
Y3BwICovLAogCQkJCTg2QkUzM0ZFMTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5
TGlzdC5oICovLApAQCAtMjIzMTMsNiArMjIzMzAsNyBAQAogCQkJCTgzRjEyMDZBMUI4QzEwMzYw
MEQ3NUY2MyAvKiBKU05vZGVGaWx0ZXJDdXN0b20uY3BwICovLAogCQkJCTdDOTFBMzhEMUI0OThB
QkUwMDNGOUVGQSAvKiBKU05vZGVPclN0cmluZy5jcHAgKi8sCiAJCQkJN0M5MUEzOEUxQjQ5OEFC
RTAwM0Y5RUZBIC8qIEpTTm9kZU9yU3RyaW5nLmggKi8sCisJCQkJQ0IzOEZENTUxQ0QyMUQ1QjAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgKi8sCiAJCQkJOTNCNzBENEYw
OUVCMEM3QzAwOUQ4NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5jcHAgKi8sCiAJCQkJ
OTNCNzBENTAwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5oICov
LAogCQkJCTQxMjlERjgzMUJCNUI3RjcwMDMyMkExNiAvKiBKU1JlYWRhYmxlU3RyZWFtUHJpdmF0
ZUNvbnN0cnVjdG9ycy5jcHAgKi8sCkBAIC0yMjY0OSw4ICsyMjY2NywxNCBAQAogCQkJCUE5RDI0
N0Y2MEQ3NTdFMzMwMEZERjk1OSAvKiBKU05hdmlnYXRvci5oICovLAogCQkJCUU1MUE4MURFMTcy
OThENzcwMEJGQ0E2MSAvKiBKU1BlcmZvcm1hbmNlLmNwcCAqLywKIAkJCQk4QTlBNTg3MzExRTg0
QzgxMDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZS5oICovLAorCQkJCUNCMzhGRDREMUNDRjkzN0Uw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovLAorCQkJCUNCMzhGRDRFMUNDRjkz
N0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCAqLywKKwkJCQlDQjM4RkQ0RjFDQ0Y5
MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8sCisJCQkJQ0IzOEZE
NTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLywKIAkJCQk4
QTlBNTg2RTExRTg0QzM1MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICov
LAogCQkJCThBOUE1ODZGMTFFODRDMzYwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlv
bi5oICovLAorCQkJCUNCMzhGRDU4MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuY3BwICovLAorCQkJCUNCMzhGRDU5MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCAqLywKIAkJCQkwRjQzQzg1RTE4OUUxNUE2MDAwMTlB
RTIgLyogSlNQZXJmb3JtYW5jZVRpbWluZy5jcHAgKi8sCiAJCQkJOEE5QTU4NzcxMUU4NEM5ODAw
OEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VUaW1pbmcuaCAqLywKIAkJCQlCQ0VDMDFDMDBDMjc0RERE
MDA5RjRFQzkgLyogSlNTY3JlZW4uY3BwICovLApAQCAtMjU1NTYsNiArMjU1ODAsNyBAQAogCQkJ
CTJEMjlFQ0NBMTkyRjFGMUQwMDk4NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JJT1MuaCBp
biBIZWFkZXJzICovLAogCQkJCTJERTcwMDIzMTkyRkU4MkEwMEIwOTc1QyAvKiBEaXNwbGF5UmVm
cmVzaE1vbml0b3JNYWMuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEMjlFQ0M4MTkyRUNDODMwMDk4
NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlDQjM4RkQ1MjFDQ0Y5Mzk0MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlDRDUyNDgxQjE4RTIwMEVEMDAwOEEwN0QgLyogRGlzcGxheVNsZWVwRGlz
YWJsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTVEOEM0REMwMTQyODIyMkMwMDI2Q0U3MiAvKiBE
aXNwbGF5U2xlZXBEaXNhYmxlckNvY29hLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDMxNjA5MTEy
QjAyNkY3MDBDMUEzNTkgLyogRGlzdGFuY2UuaCBpbiBIZWFkZXJzICovLApAQCAtMjc2OTEsNiAr
Mjc3MTYsNyBAQAogCQkJCUJDRUE0ODY4MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJWaWV3Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCRTIwNTA3RTE4QTQ1OEMyMDA4MDY0N0UgLyogUmVuZGVyVlRU
Q3VlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxREZFNDBBMTUzNzZCMDBCMTJBNjggLyogUmVu
ZGVyV2lkZ2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQlDQjM4RkQ1QjFDRDIzMjVCMDA1OTJBM0Yg
LyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODlD
Q0M1MzBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTkzMzA5RTBBMDk5RTY0OTIwMDU2RTU4MSAvKiBSZXBsYWNlU2VsZWN0
aW9uQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTlDQzBCNTQxOEJFOTg0OTAwNkNFQkND
IC8qIFJlcGxheUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjgwMjAsNiArMjgwNDYs
NyBAQAogCQkJCUE4RUE4MDBBMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzVFQjgxMDBFODFGMkNFMDBCMjU5NjUgLyog
U3R5bGVUcmFuc2Zvcm1EYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlDQjM4RkQ1NDFDQ0Y5MzlF
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RTRERUFBMTgxN0E5M0RDMzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlCQzVFQjY5QTBFODFEQTYzMDBCMjU5NjUgLyogU3R5bGVWaXN1YWxEYXRhLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlEMDAwRUQyODExQzFCOUNEMDBDNDc3MjYgLyogU3ViZnJhbWVM
b2FkZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjkyMDIsNiArMjkyMjksNyBAQAogCQkJCUIyNzUz
NTc3MEIwNTM4MTQwMDJDRTY0RiAvKiBDb2xvck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTQz
RURENjdFMUI0ODVEQkYwMDY0MEU3NSAvKiBDb21iaW5lZEZpbHRlcnNBbHBoYWJldC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkyNkU5NDREODFBQzRCMkREMDA3Qjg1QjUgLyogQ29tYmluZWRVUkxG
aWx0ZXJzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDRCMUNDQ0YzNjYwMDU5MkEzRiAv
KiBQZXJmb3JtYW5jZUVudHJ5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODRGRTM0MTg2NEQ1
QUYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSUhvc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTU4NEZFMkIxODYzODcwRjAwODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJTW9kdWxlLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTY1NTBCNkExMDk5REYwMjcwMDkwRDc4MSAvKiBDb21tZW50LmNwcCBp
biBTb3VyY2VzICovLApAQCAtMzEyMjAsNiArMzEyNDgsNyBAQAogCQkJCUJDOTZEQjQ2MEYzQTg4
MjIwMDU3M0NCMyAvKiBSZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQ0VBNDg2NTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQnV0dG9uLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDRTQ0MTMzMTJGNzQ4RTIwMDlCODRCOCAvKiBSZW5kZXJDb21iaW5lVGV4dC5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ1QTFDRDIzMjU4MDA1OTJBM0YgLyogSlNQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkzOTJGMTQ0MEFE
MTg1RkUwMDY5MUJENCAvKiBSZW5kZXJDb3VudGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJD
RUE0ODZEMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJEZXByZWNhdGVkRmxleGlibGVCb3guY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJRDMwMjc1NDkxMkE1RkU4NDAwNEJEODI4IC8qIFJlbmRlckRl
dGFpbHNNYXJrZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMTk5Niw2ICszMjAyNSw3IEBACiAJ
CQkJNDQ0RDRFMjMwRjcwOEIyRTAwMzE1OEUwIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5tbSBp
biBTb3VyY2VzICovLAogCQkJCTkzRjE5QjA3MDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJDb3JlVmll
dy5tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTVFNjE2NzMxODk0NTgxRjAwOUFERjUwIC8qIFdlYkRl
YnVnZ2VyQWdlbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTcxQ0QyMUUyQTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlG
RTBEODRFQjEwNDg0MzZFMDAxQTE3OUUgLyogV2ViRXZlbnQubW0gaW4gU291cmNlcyAqLywKIAkJ
CQkyMjVBMTZCNjBENUMxMUU5MDAwOTAyOTUgLyogV2ViRXZlbnRSZWdpb24ubW0gaW4gU291cmNl
cyAqLywKIAkJCQlEM0YzRDM2RDFBNjlCN0RDMDA1OUZDMkIgLyogV2ViR0wyUmVuZGVyaW5nQ29u
dGV4dC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTMyMDc1LDYgKzMyMTA1LDcgQEAKIAkJCQlCMTBC
Njk4MTE0MEMxNzQwMDBCQzFDMjYgLyogV2ViVlRUVG9rZW5pemVyLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUNEODIwMzExMTM5NUFDRTcwMEY5NTZDNiAvKiBXZWJXaW5kb3dBbmltYXRpb24ubW0g
aW4gU291cmNlcyAqLywKIAkJCQlGNTVCM0RERjEyNTFGMTJEMDAzRUYyNjkgLyogV2Vla0lucHV0
VHlwZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ1MTFDQ0Y5Mzg5MDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg1MDMxQjUwMEE0NEVG
QzcwMEY5OTJFMCAvKiBXaGVlbEV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJFMTk1MTZC
MUI2NTk4RDIwMERGNkVFRiAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMkVFRUU1NUMxQjY2QTA0NzAwOEUyQ0JDIC8qIFdoZWVsRXZlbnREZWx0YUZpbHRl
ck1hYy5tbSBpbiBTb3VyY2VzICovLApAQCAtMzIxMTIsNiArMzIxNDMsNyBAQAogCQkJCTAwQjkz
MTg5MTNCQThEQkMwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlckxpYnhtbDIuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMDBCOTMxOEIxM0JBOERDOTAwMzVBOTQ4IC8qIFhNTERvY3VtZW50UGFy
c2VyU2NvcGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTlDMjgwNDUxMzhEQzI0MTAwNzlCN0Uy
IC8qIFhNTEVycm9ycy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ1MzFDQ0Y5MzlCMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
Qzc3MkM0NjBDNEVCMkM2MDA4MzI4NUYgLyogWE1MSHR0cFJlcXVlc3QuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTEzNkEwMEMxMTM0REJEMjAwQ0M4RDUwIC8qIFhNTEh0dHBSZXF1ZXN0UHJvZ3Jl
c3NFdmVudFRocm90dGxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDREZENDhGMEUzMDUyOTAw
MDlEMTBBRCAvKiBYTUxIdHRwUmVxdWVzdFVwbG9hZC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0
dXJlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuY3BwCmluZGV4IDFjZjRhYTc4Y2Q3NTNkMDcwYWQ1YmU0MTgxOWE0MDJkNDgzOTRi
MjAuLmNkM2U2YjE3OTU2OTlhODIxMzYyZjNmNjI5NDg0NmU3ODE0MTA1MDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmNwcApAQCAtNTksNiArNTksNyBAQCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpSdW50
aW1lRW5hYmxlZEZlYXR1cmVzKCkKICNlbHNlCiAgICAgLCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRF
bmFibGVkKGZhbHNlKQogI2VuZGlmCisgICAgLCBtX2lzUmVzb3VyY2VUaW1pbmdFbmFibGVkKGZh
bHNlKQogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgICwgbV9pc0luZGV4ZWREQkVu
YWJsZWQoZmFsc2UpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKaW5kZXggNWQ2NDY4NjUwMjYxYjE3
MDc4Y2ViM2M1MjA2ODkxM2U1MDUwMmUwYS4uYjFiYTZmM2VjYzAxNWJlNjk0NmE4ODQ3MWJhNmVl
ZDQzNmUwMDI0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9S
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2Vu
ZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKQEAgLTIwMSw2ICsyMDEsOSBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsg
bV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxlZCA9IGlzRW5hYmxlZDsgfQogICAgIGJvb2wgcGx1
Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9pc1BsdWdpblJlcGxhY2Vt
ZW50RW5hYmxlZDsgfQogCisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ0VuYWJsZWQoYm9vbCBp
c0VuYWJsZWQpIHsgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAg
IGJvb2wgcmVzb3VyY2VUaW1pbmdFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9pc1Jlc291cmNl
VGltaW5nRW5hYmxlZDsgfQorCiAjaWYgRU5BQkxFKEdBTUVQQUQpCiAgICAgdm9pZCBzZXRHYW1l
cGFkc0VuYWJsZWQoYm9vbCBhcmVFbmFibGVkKSB7IG1fYXJlR2FtZXBhZHNFbmFibGVkID0gYXJl
RW5hYmxlZDsgfQogICAgIGJvb2wgZ2FtZXBhZHNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9h
cmVHYW1lcGFkc0VuYWJsZWQ7IH0KQEAgLTI2Miw2ICsyNjUsNyBAQCBwcml2YXRlOgogICAgIGJv
b2wgbV9pc0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKICAgICBib29sIG1faXNMYW5nQXR0cmlidXRl
QXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZDsKICAgICBib29sIG1faXNQbHVnaW5SZXBsYWNlbWVu
dEVuYWJsZWQ7CisgICAgYm9vbCBtX2lzUmVzb3VyY2VUaW1pbmdFbmFibGVkOwogCiAjaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgYm9vbCBtX2lzSW5kZXhlZERCRW5hYmxlZDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlD
dXN0b20uY3BwCmluZGV4IGViZGQzN2Y4YzRjMjE3YjM5OTFmZWQzMGM4NTc0Nzk3NjFlZDIzMDMu
LjhmMTFlNzAyNTdmZGMxMTc1NTFiMDdiZmM4YzdiYzI4OGRkY2FjMDYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNw
cApAQCAtMzAsMTMgKzMwLDEzIEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJM
RShQRVJGT1JNQU5DRV9USU1FTElORSkKLQogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VFbnRyeS5o
IgogCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCisjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQog
I2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZU1l
YXN1cmUuaCIKKyNlbmRpZgogI2luY2x1ZGUgIkpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5o
IgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTWVh
c3VyZS5oIgpAQCAtNTEsMTAgKzUxLDggQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9N
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKICAgICBp
ZiAoIWVudHJ5KQogICAgICAgICByZXR1cm4ganNOdWxsKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQogICAgIGlmIChlbnRyeS0+aXNSZXNvdXJjZSgpKQogICAgICAgICByZXR1cm4g
d3JhcDxKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KGdsb2JhbE9iamVjdCwgc3RhdGljX2Nh
c3Q8UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyo+KGVudHJ5KSk7Ci0jZW5kaWYKIAogI2lmIEVO
QUJMRShVU0VSX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzTWFyaygpKQpAQCAtNjgsNSArNjYs
MyBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgUGVyZm9ybWFuY2VFbnRyeSogZW50cgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
TmFtZXMuaAppbmRleCA0Y2U4Njc4NTAwZGRjYTUwYjVlNWM4MTBiMmQyZGIwM2I5ZmE3YmY0Li5k
NTc0NzM4ZmJiOGMwYWM2YzI0NDYxZjAxMjhhMWVlMzI5YTZmODc5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dE5hbWVzLmgKQEAgLTE4Myw2ICsxODMsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgbWFj
cm8ocmVtb3ZldHJhY2spIFwKICAgICBtYWNybyhyZXNldCkgXAogICAgIG1hY3JvKHJlc2l6ZSkg
XAorICAgIG1hY3JvKHJlc291cmNldGltaW5nYnVmZmVyZnVsbCkgXAogICAgIG1hY3JvKHJlc3Vs
dCkgXAogICAgIG1hY3JvKHJlc3VtZSkgXAogICAgIG1hY3JvKHNjcm9sbCkgXApAQCAtMjYxLDcg
KzI2Miw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyh3ZWJraXRwcmVzZW50YXRp
b25tb2RlY2hhbmdlZCkgXAogICAgIG1hY3JvKHdlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UpIFwK
ICAgICBtYWNybyh3ZWJraXRyZW1vdmVzb3VyY2VidWZmZXIpIFwKLSAgICBtYWNybyh3ZWJraXRy
ZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwpIFwKICAgICBtYWNybyh3ZWJraXRzb3VyY2VjbG9zZSkg
XAogICAgIG1hY3JvKHdlYmtpdHNvdXJjZWVuZGVkKSBcCiAgICAgbWFjcm8od2Via2l0c291cmNl
b3BlbikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyLmNwcAppbmRleCBjZGM0NTlmMmJmYThhMWJlNjJhZmVlMzNjNGIwYmU3NzFjYjYxYTFk
Li41ZjVlZmQ4NDE4YTM3ZWEwMmRmYWI2MzUzYjAyNWE4YTYwNmZhYmU1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcApAQCAtNDUs
NiArNDUsNyBAQAogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJlc291
cmNlRXJyb3IuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKKyNpbmNsdWRlICJSdW50
aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NoZW1lUmVnaXN0cnkuaCIKICNpbmNs
dWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9hZGVyLmgiCkBA
IC0zODUsOSArMzg2LDggQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1
ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2VjdXIKICAgICAgICAgfQogCiAg
ICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCBuZXdSZXF1ZXN0KHJlcXVlc3QsIG9wdGlvbnMp
OwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgICAgIG5ld1JlcXVlc3Quc2V0SW5p
dGlhdG9yKG1fb3B0aW9ucy5pbml0aWF0b3IpOwotI2VuZGlmCisgICAgICAgIGlmIChSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgp
KQorICAgICAgICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25zLmluaXRpYXRv
cik7CiAgICAgICAgIEFTU0VSVCghbV9yZXNvdXJjZSk7CiAgICAgICAgIG1fcmVzb3VyY2UgPSBt
X2RvY3VtZW50LmNhY2hlZFJlc291cmNlTG9hZGVyKCkucmVxdWVzdFJhd1Jlc291cmNlKG5ld1Jl
cXVlc3QpOwogICAgICAgICBpZiAobV9yZXNvdXJjZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCmluZGV4IGQzOWZkMjdkYzU2NmMwZmUyNGQxMGM2
MDE0YzViZWRlZDNlNGZjYjkuLmU1NDY3ZmQxMTEwOGUyMTA5ZTFkMmY5ZDlkNTZiNWMzZTg2ZDEz
MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmll
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNw
cApAQCAtMzksNiArMzksNyBAQAogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQcm9ncmVz
c1RyYWNrZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIlJ1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaCIKIAogI2lmIFVTRShRVUlDS19MT09LKQogI2luY2x1ZGUgIlF1
aWNrTG9vay5oIgpAQCAtMTQ2LDkgKzE0Nyw4IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAg
ICAgaWYgKGxvYWRlciAmJiAhcmVxdWVzdC5pc051bGwoKSAmJiByZXF1ZXN0LnVybCgpID09IGxv
YWRlci0+dXJsKCkpCiAgICAgICAgIHJlcXVlc3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsK
IAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgcmVxdWVzdC5zZXRSZXBvcnRMb2Fk
VGltaW5nKHRydWUpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNo
YXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHJlcXVlc3Qu
c2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKIH0KIAogdm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNvdXJj
ZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAppbmRleCBjMGE5OWEzZGU5Nzg5NDVmZDY0
OWRjMmQ2ZWE3OGRiNjc4NzEzMDFkLi4wOTY3NWZjNjEwZDhiMzQ5ODg0OTQ4YzBlY2UwZDM5NTJm
OGZjNWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5jcHAKQEAgLTYxLDYgKzYxLDcgQEAKICNpbmNsdWRlICJQbGF0Zm9ybVN0
cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNs
dWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNp
bmNsdWRlICJTZXNzaW9uSUQuaCIKQEAgLTc1LDkgKzc2LDcgQEAKICNpbmNsdWRlICJDYWNoZWRU
ZXh0VHJhY2suaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICNpbmNs
dWRlICJQZXJmb3JtYW5jZS5oIgotI2VuZGlmCiAKICNkZWZpbmUgUFJFTE9BRF9ERUJVRyAwCiAK
QEAgLTY3MSwxMSArNjcwLDggQEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+
IENhY2hlZFJlc291cmNlTG9hZGVyOjpyZXZhbGlkYXRlUmVzb3VyY2UoY28KICAgICAKICAgICBt
ZW1vcnlDYWNoZS5yZW1vdmUoKnJlc291cmNlKTsKICAgICBtZW1vcnlDYWNoZS5hZGQoKm5ld1Jl
c291cmNlKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHN0b3JlUmVzb3VyY2VU
aW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7Ci0jZWxzZQotICAg
IFVOVVNFRF9QQVJBTShyZXF1ZXN0KTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAg
ICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVl
c3QpOwogICAgIHJldHVybiBuZXdSZXNvdXJjZTsKIH0KIApAQCAtNjkwLDE1ICs2ODYsMTQgQEAg
Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IENhY2hlZFJlc291cmNlTG9hZGVy
Ojpsb2FkUmVzb3VyY2UoQ2FjaGVkUmUKIAogICAgIGlmIChyZXF1ZXN0LmFsbG93c0NhY2hpbmco
KSAmJiAhbWVtb3J5Q2FjaGUuYWRkKCpyZXNvdXJjZSkpCiAgICAgICAgIHJlc291cmNlLT5zZXRP
d25pbmdDYWNoZWRSZXNvdXJjZUxvYWRlcih0aGlzKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElN
SU5HKQotICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJj
ZSwgcmVxdWVzdCk7Ci0jZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hh
cmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVSZXNv
dXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAgICBy
ZXR1cm4gcmVzb3VyY2U7CiB9CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogdm9pZCBD
YWNoZWRSZXNvdXJjZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0
aW9uKGNvbnN0IENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiYgcmVzb3VyY2Us
IGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKKyAgICBBU1NFUlQoUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJs
ZWQoKSk7CiAgICAgaWYgKHJlc291cmNlLT50eXBlKCkgPT0gQ2FjaGVkUmVzb3VyY2U6Ok1haW5S
ZXNvdXJjZSkgewogICAgICAgICAvLyA8aWZyYW1lPnMgc2hvdWxkIHJlcG9ydCB0aGUgaW5pdGlh
bCBuYXZpZ2F0aW9uIHJlcXVlc3RlZCBieSB0aGUgcGFyZW50IGRvY3VtZW50LCBidXQgbm90IHN1
YnNlcXVlbnQgbmF2aWdhdGlvbnMuCiAgICAgICAgIGlmIChmcmFtZSgpLT5vd25lckVsZW1lbnQo
KSAmJiBtX2RvY3VtZW50TG9hZGVyLT5mcmFtZUxvYWRlcigpLT5zdGF0ZU1hY2hpbmUoKS5jb21t
aXR0aW5nRmlyc3RSZWFsTG9hZCgpKSB7CkBAIC03MTAsNyArNzA1LDYgQEAgdm9pZCBDYWNoZWRS
ZXNvdXJjZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNv
bnN0IENhY2hlZFIKICAgICAgICAgbV9pbml0aWF0b3JNYXAuYWRkKHJlc291cmNlLmdldCgpLCBp
bmZvKTsKICAgICB9CiB9Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAogc3Rh
dGljIHZvaWQgbG9nUmV2YWxpZGF0aW9uKGNvbnN0IFN0cmluZyYgcmVhc29uLCBEaWFnbm9zdGlj
TG9nZ2luZ0NsaWVudCYgbG9nQ2xpZW50KQogewpAQCAtOTc2LDggKzk3MCw5IEBAIHZvaWQgQ2Fj
aGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9v
bCBzaG91bGRQZXJmb3JtCiAgICAgUmVmUHRyPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0RG9jdW1l
bnRMb2FkZXIobV9kb2N1bWVudExvYWRlcik7CiAgICAgUmVmUHRyPERvY3VtZW50PiBwcm90ZWN0
RG9jdW1lbnQobV9kb2N1bWVudCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAg
IGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+cmVzcG9uc2UoKS5pc0hUVFAoKSAmJiAoKCFyZXNv
dXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFyZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgfHwgcmVz
b3VyY2UtPnJlc3BvbnNlKCkuaHR0cFN0YXR1c0NvZGUoKSA9PSAzMDQpKSB7CisgICAgaWYgKFJ1
bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFi
bGVkKCkKKyAgICAgICAgJiYgcmVzb3VyY2UgJiYgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaXNIVFRQ
KCkKKyAgICAgICAgJiYgKCghcmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAmJiAhcmVzb3VyY2Ut
Pndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNlLT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkg
PT0gMzA0KSkgewogICAgICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlKiwgSW5pdGlhdG9ySW5m
bz46Oml0ZXJhdG9yIGluaXRpYXRvckl0ID0gbV9pbml0aWF0b3JNYXAuZmluZChyZXNvdXJjZSk7
CiAgICAgICAgIGlmIChpbml0aWF0b3JJdCAhPSBtX2luaXRpYXRvck1hcC5lbmQoKSkgewogICAg
ICAgICAgICAgQVNTRVJUKGRvY3VtZW50KCkpOwpAQCAtOTkwLDkgKzk4NSw2IEBAIHZvaWQgQ2Fj
aGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9v
bCBzaG91bGRQZXJmb3JtCiAgICAgICAgICAgICBtX2luaXRpYXRvck1hcC5yZW1vdmUoaW5pdGlh
dG9ySXQpOwogICAgICAgICB9CiAgICAgfQotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0ocmVzb3Vy
Y2UpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKICAgICBpZiAoZnJhbWUo
KSkKICAgICAgICAgZnJhbWUoKS0+bG9hZGVyKCkubG9hZERvbmUoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKaW5kZXggYjFmN2M0
ZmFmNWRiYjA5NjAxYzU4OTJmNWQ2NDcxMzk0OWIxZjYwZC4uNGRmODE5OTU5Y2VhYjExMDM3NGI1
NWI0NjAzOTMwYTg3ZWI3YzY2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTE0NCw5ICsxNDQsNyBAQCBwcml2YXRlOgog
ICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiByZXF1ZXN0UmVzb3VyY2Uo
Q2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwogICAgIENhY2hl
ZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiByZXZhbGlkYXRlUmVzb3VyY2UoY29uc3Qg
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiwgQ2FjaGVkUmVzb3VyY2UqKTsKICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gbG9hZFJlc291cmNlKENhY2hlZFJlc291cmNlOjpU
eXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5H
KQogICAgIHZvaWQgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKGNvbnN0
IENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiYsIGNvbnN0IENhY2hlZFJlc291
cmNlUmVxdWVzdCYpOwotI2VuZGlmCiAgICAgdm9pZCByZXF1ZXN0UHJlbG9hZChDYWNoZWRSZXNv
dXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFyc2V0
KTsKIAogICAgIGVudW0gUmV2YWxpZGF0aW9uUG9saWN5IHsgVXNlLCBSZXZhbGlkYXRlLCBSZWxv
YWQsIExvYWQgfTsKQEAgLTE3OSwxMyArMTc3LDExIEBAIHByaXZhdGU6CiAKICAgICBUaW1lciBt
X2dhcmJhZ2VDb2xsZWN0RG9jdW1lbnRSZXNvdXJjZXNUaW1lcjsKIAotI2lmIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCiAgICAgc3RydWN0IEluaXRpYXRvckluZm8gewogICAgICAgICBBdG9taWNT
dHJpbmcgbmFtZTsKICAgICAgICAgZG91YmxlIHN0YXJ0VGltZTsKICAgICB9OwogICAgIEhhc2hN
YXA8Q2FjaGVkUmVzb3VyY2UqLCBJbml0aWF0b3JJbmZvPiBtX2luaXRpYXRvck1hcDsKLSNlbmRp
ZgogCiAgICAgLy8gMjkgYml0cyBsZWZ0CiAgICAgYm9vbCBtX2F1dG9Mb2FkSW1hZ2VzIDogMTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKaW5kZXggZWQzOWExZDE1MDgxYjQ3NjRhZTk3
YWZhZjczOGJhOTY3OTdlNzMyYi4uNGMxN2RmMzc3OTM1ODMzMjcwZDI4ZDI1ZGNhMjk4ZjFkZjA1
NjMzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAKQEAgLTQ3LDE1ICs0NywxMSBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQog
c3RhdGljIGNvbnN0IHNpemVfdCBkZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplID0gMTUw
OwotI2VuZGlmCiAKIFBlcmZvcm1hbmNlOjpQZXJmb3JtYW5jZShGcmFtZSYgZnJhbWUpCiAgICAg
OiBET01XaW5kb3dQcm9wZXJ0eSgmZnJhbWUpCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykK
ICAgICAsIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1
ZmZlclNpemUpCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICAsIG1fcmVm
ZXJlbmNlVGltZShmcmFtZS5kb2N1bWVudCgpLT5sb2FkZXIoKSA/IGZyYW1lLmRvY3VtZW50KCkt
PmxvYWRlcigpLT50aW1pbmcoKS5yZWZlcmVuY2VNb25vdG9uaWNUaW1lKCkgOiBtb25vdG9uaWNh
bGx5SW5jcmVhc2luZ1RpbWUoKSkKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgLCBtX3Vz
ZXJUaW1pbmcobnVsbHB0cikKQEAgLTkxLDE0ICs4NywxMSBAQCBQZXJmb3JtYW5jZVRpbWluZyog
UGVyZm9ybWFuY2U6OnRpbWluZygpIGNvbnN0CiAgICAgcmV0dXJuIG1fdGltaW5nLmdldCgpOwog
fQogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQotUGFzc1JlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAorUGFz
c1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXMoKSBj
b25zdAogewogICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZv
cm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcp
CiAgICAgZW50cmllcy0+YXBwZW5kQWxsKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwotI2VuZGlm
IC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAg
ICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTExLDE2ICsxMDQsMTQgQEAgUGFzc1JlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25z
dAogICAgIHJldHVybiBlbnRyaWVzOwogfQogCi1QYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlM
aXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVu
dHJ5VHlwZSkKK1Bhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpn
ZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKQogewogICAgIFJlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVh
dGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsKICAgICAgICAgZm9y
IChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpCiAgICAgICAgICAgICBl
bnRyaWVzLT5hcHBlbmQocmVzb3VyY2UpOwogICAgIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFVT
RVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTEzNSwxOCArMTI2LDE2IEBA
IFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRF
bnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLVBhc3NS
ZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVz
QnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCitQYXNz
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6Z2V0RW50cmllc0J5TmFt
ZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKQogewogICAgIFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0
OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVudHJ5
VHlwZS5pc051bGwoKSB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShlbnRyeVR5cGUs
ICJyZXNvdXJjZSIpKSB7CiAgICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3Jlc291cmNl
VGltaW5nQnVmZmVyKSB7CiAgICAgICAgICAgICBpZiAocmVzb3VyY2UtPm5hbWUoKSA9PSBuYW1l
KQogICAgICAgICAgICAgICAgIGVudHJpZXMtPmFwcGVuZChyZXNvdXJjZSk7CiAgICAgICAgIH0K
ICAgICB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICBpZiAobV91c2Vy
VGltaW5nKSB7CkBAIC0xNjEsMjAgKzE1MCwxNiBAQCBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50
cnlMaXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5TmFtZShjb25zdCBTdHJpbgog
ICAgIHJldHVybiBlbnRyaWVzOwogfQogCi0jZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJ
TUVMSU5FKQotCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQotdm9pZCBQZXJmb3JtYW5j
ZTo6d2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKQordm9pZCBQZXJmb3JtYW5jZTo6Y2xlYXJS
ZXNvdXJjZVRpbWluZ3MoKQogewogICAgIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIuY2xlYXIoKTsK
IH0KIAotdm9pZCBQZXJmb3JtYW5jZTo6d2Via2l0U2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXpl
KHVuc2lnbmVkIHNpemUpCit2b2lkIFBlcmZvcm1hbmNlOjpzZXRSZXNvdXJjZVRpbWluZ0J1ZmZl
clNpemUodW5zaWduZWQgc2l6ZSkKIHsKICAgICBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZSA9
IHNpemU7CiAgICAgaWYgKGlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkpCi0gICAgICAgIGRp
c3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkud2Via2l0cmVzb3VyY2V0aW1p
bmdidWZmZXJmdWxsRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgICAgICBkaXNwYXRjaEV2ZW50
KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLnJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50
LCBmYWxzZSwgZmFsc2UpKTsKIH0KIAogdm9pZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VUaW1p
bmcoY29uc3QgU3RyaW5nJiBpbml0aWF0b3JOYW1lLCBEb2N1bWVudCogaW5pdGlhdG9yRG9jdW1l
bnQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIGRvdWJsZSBpbml0aWF0aW9uVGltZSwgZG91YmxlIGZpbmlzaFRpbWUpCkBA
IC0xODcsNyArMTcyLDcgQEAgdm9pZCBQZXJmb3JtYW5jZTo6YWRkUmVzb3VyY2VUaW1pbmcoY29u
c3QgU3RyaW5nJiBpbml0aWF0b3JOYW1lLCBEb2N1bWVudCogaW5pdGkKICAgICBtX3Jlc291cmNl
VGltaW5nQnVmZmVyLmFwcGVuZChlbnRyeSk7CiAKICAgICBpZiAoaXNSZXNvdXJjZVRpbWluZ0J1
ZmZlckZ1bGwoKSkKLSAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFt
ZXMoKS53ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7
CisgICAgICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVzb3Vy
Y2V0aW1pbmdidWZmZXJmdWxsRXZlbnQsIGZhbHNlLCBmYWxzZSkpOwogfQogCiBib29sIFBlcmZv
cm1hbmNlOjppc1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpCkBAIC0xOTUsOCArMTgwLDYgQEAg
Ym9vbCBQZXJmb3JtYW5jZTo6aXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwoKQogICAgIHJldHVy
biBtX3Jlc291cmNlVGltaW5nQnVmZmVyLnNpemUoKSA+PSBtX3Jlc291cmNlVGltaW5nQnVmZmVy
U2l6ZTsKIH0KIAotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0KICNpZiBFTkFC
TEUoVVNFUl9USU1JTkcpCiB2b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRNYXJrKGNvbnN0IFN0cmlu
ZyYgbWFya05hbWUsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZS5oCmluZGV4IDkzZjQ0MDY0NGJiNzYzZmE3ZGM4ZDE3ZTQ4NjJlMzIzNWU5Yzc2ZjcuLmYwNjQ5
NTQyOGQ2MzhjNWFmZGZmZjUzYjM4ZWU5NTM4NGMyMzE5ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmgKQEAgLTY0LDE4ICs2NCwxNCBAQCBwdWJsaWM6CiAgICAgUGVyZm9ybWFuY2VUaW1p
bmcqIHRpbWluZygpIGNvbnN0OwogICAgIGRvdWJsZSBub3coKSBjb25zdDsKIAotI2lmIEVOQUJM
RShQRVJGT1JNQU5DRV9USU1FTElORSkKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlM
aXN0PiB3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlw
ZSk7Ci0gICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmll
c0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKLSNl
bmRpZgorICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGdldEVudHJpZXMoKSBj
b25zdDsKKyAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzQnlU
eXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKKyAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiBnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3Ry
aW5nJiBlbnRyeVR5cGUpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICB2b2lk
IHdlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCk7Ci0gICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJj
ZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgaW50KTsKKyAgICB2b2lkIGNsZWFyUmVzb3VyY2VU
aW1pbmdzKCk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQp
OwogCiAgICAgdm9pZCBhZGRSZXNvdXJjZVRpbWluZyhjb25zdCBTdHJpbmcmIGluaXRpYXRvck5h
bWUsIERvY3VtZW50KiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYsIGRvdWJsZSBpbml0aWF0aW9uVGltZSwgZG91YmxlIGZpbmlzaFRpbWUpOwotI2VuZGlm
CiAKICAgICB1c2luZyBSZWZDb3VudGVkPFBlcmZvcm1hbmNlPjo6cmVmOwogICAgIHVzaW5nIFJl
ZkNvdW50ZWQ8UGVyZm9ybWFuY2U+OjpkZXJlZjsKQEAgLTk3LDExICs5Myw5IEBAIHByaXZhdGU6
CiAKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZU5hdmlnYXRpb24+IG1fbmF2aWdhdGlv
bjsKICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZVRpbWluZz4gbV90aW1pbmc7Ci0gICAg
Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKKwogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeT4+IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXI7CiAgICAgdW5zaWduZWQgbV9yZXNv
dXJjZVRpbWluZ0J1ZmZlclNpemU7Ci0jZW5kaWYKIAogICAgIGRvdWJsZSBtX3JlZmVyZW5jZVRp
bWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKaW5kZXggOWIwYThiNzcwMDBjMjhl
NDA1Mjk4MjJlY2UzNTI2OTBhZWNkZTZmNi4uOTQ4OTY5MGIzNTYxNTJmNmVkMDdhZjQ3Mzg1M2Y2
MzIzMmY0NWJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKQEAgLTM2LDE4ICsz
NiwxNSBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb24gbmF2
aWdhdGlvbjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgUGVyZm9ybWFuY2VUaW1pbmcgdGltaW5n
OwogCi0jaWYgZGVmaW5lZChFTkFCTEVfUEVSRk9STUFOQ0VfVElNRUxJTkUpICYmIEVOQUJMRV9Q
RVJGT1JNQU5DRV9USU1FTElORQotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVu
dHJpZXMoKTsKLSAgICBQZXJmb3JtYW5jZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzQnlUeXBl
KERPTVN0cmluZyBlbnRyeVR5cGUpOwotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdl
dEVudHJpZXNCeU5hbWUoRE9NU3RyaW5nIG5hbWUsIG9wdGlvbmFsIERPTVN0cmluZyBlbnRyeVR5
cGUpOwotI2VuZGlmCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBlcmZv
cm1hbmNlRW50cnlMaXN0IGdldEVudHJpZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNv
dXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmllc0J5VHlwZShET01TdHJp
bmcgZW50cnlUeXBlKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVy
Zm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9u
YWwgRE9NU3RyaW5nIGVudHJ5VHlwZSk7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9SRVNPVVJDRV9U
SU1JTkcpICYmIEVOQUJMRV9SRVNPVVJDRV9USU1JTkcKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVz
b3VyY2VUaW1pbmdzKCk7Ci0gICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNp
emUodW5zaWduZWQgbG9uZyBtYXhTaXplKTsKIAotICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIg
b253ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGw7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0
UnVudGltZT1SZXNvdXJjZVRpbWluZ10gdm9pZCBjbGVhclJlc291cmNlVGltaW5ncygpOworICAg
IFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSB2b2lkIHNldFJlc291cmNlVGltaW5n
QnVmZmVyU2l6ZSh1bnNpZ25lZCBsb25nIG1heFNpemUpOworCisgICAgW0VuYWJsZWRBdFJ1bnRp
bWU9UmVzb3VyY2VUaW1pbmddIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25yZXNvdXJjZXRpbWlu
Z2J1ZmZlcmZ1bGw7CiAKICAgICAvLyBTZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMi9DUi11
c2VyLXRpbWluZy0yMDEyMDcyNi8KICNpZiBkZWZpbmVkKEVOQUJMRV9VU0VSX1RJTUlORykgJiYg
RU5BQkxFX1VTRVJfVElNSU5HCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNw
cAppbmRleCAzMmRiN2NmZTU2MzVjZGYzMmMzMDVlYzRlYWMwOTUwMWU1ZjgzZWU1Li4zNzRlMTQy
OTMxODNmOTczZmFhNzg0MTgxZGZkNTllMjMwOTViNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlO
RykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5H
KQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTY5LDQgKzY5LDQgQEAgZG91YmxlIFBlcmZv
cm1hbmNlRW50cnk6OmR1cmF0aW9uKCkgY29uc3QKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQog
Ci0jZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1F
TElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5LmgKaW5kZXggMTI5YTI0NjQwY2M0ZDJhMzVjYWVhYjZiYTJmMWFmYzgxODRm
MzYyYi4uY2YzN2MwZTU2OWRkNzRmMmE1MGNmOWNmMmQyYTlmMDRkNmQ1Yzk4NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYg
UGVyZm9ybWFuY2VFbnRyeV9oCiAjZGVmaW5lIFBlcmZvcm1hbmNlRW50cnlfaAogCi0jaWYgRU5B
QkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFC
TEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSA8d3Rm
L1Bhc3NSZWZQdHIuaD4KQEAgLTcxLDUgKzcxLDUgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYg
Ly8gIUVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisj
ZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1h
bmNlRW50cnlfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCmluZGV4
IDliY2FmNGMzNDAxODk4NTVhMmI2NGQ2ZjA1YjI5OGNjYzFmNzIzZTYuLmYzN2UyYTNjYmE0MzI0
MTNhMGFmN2JiYzQ2YThkNWYxNDRiZmFmMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5LmlkbApAQCAtMzEsNyArMzEsNyBAQAogLy8gU2VlOiBodHRwczovL2R2Y3MudzMu
b3JnL2hnL3dlYnBlcmYvcmF3LWZpbGUvdGlwL3NwZWNzL1BlcmZvcm1hbmNlVGltZWxpbmUvT3Zl
cnZpZXcuaHRtbAogWwogICAgIENvbmRpdGlvbmFsPVdFQl9USU1JTkcsCi0gICAgQ29uZGl0aW9u
YWw9UEVSRk9STUFOQ0VfVElNRUxJTkUsCisgICAgRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRp
bWluZywKICAgICBDdXN0b21Ub0pTT2JqZWN0LAogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VFbnRy
eSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBuYW1lOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcAppbmRleCBkOWZhMDU1NzdkZDU3OWU5
Y2E4Mjc0ZGQ3OGI0YWNlMzRiYzc5MjhiLi5jMDM1OTI4YjMxYzZkZTlkNjFkODYzMTE2MzFkMzM1
NmZjM2I4MjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50
cnlMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0
LmNwcApAQCAtMzIsNyArMzIsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBl
cmZvcm1hbmNlRW50cnlMaXN0LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxF
KFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogCkBAIC03NSw0ICs3NSw0IEBAIHZvaWQgUGVyZm9ybWFu
Y2VFbnRyeUxpc3Q6OnNvcnQoKQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAv
LyBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2Vu
ZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5TGlzdC5oCmluZGV4IDk3YTIxMmRkNmZkMDU0NDc2NmVkNzU2M2MxNzU2YjkxMzZkN2Zl
ZDYuLmQyYzQxZjVhZDQ3ZjE4YWIxMTMwZDNjMDU1YWUzNTExMDJiMGM3OTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNp
Zm5kZWYgUGVyZm9ybWFuY2VFbnRyeUxpc3RfaAogI2RlZmluZSBQZXJmb3JtYW5jZUVudHJ5TGlz
dF9oCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVM
SU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNjQsNSArNjQsNSBAQCBwcml2YXRl
OgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1J
TkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyAhRU5BQkxFKFdF
Ql9USU1JTkcpCiAjZW5kaWYgLy8gUGVyZm9ybWFuY2VFbnRyeUxpc3RfaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbAppbmRleCA3ZTI1YTg1Y2U2Yzg5Mzg0
ZWZlNTUyZjgzNzY5MjU5MzU4MDI4OGY5Li4xODA2NmNjMzdlNTczZjIwZTFhOTA1YzM4OGIwMjE4
MThlYjc5MzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50
cnlMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0
LmlkbApAQCAtMzIsMTAgKzMyLDkgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBD
b25kaXRpb25hbD1XRUJfVElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVM
SU5FLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgSW1wbGVtZW50
YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnlMaXN0IHsKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgZ2V0dGVyIFBl
cmZvcm1hbmNlRW50cnkgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07Ci0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IDMx
Yjg5NzEzN2Y1MTFlNDVmNzc1N2U5NTZjMjZmMzc1ODdhYjZhNjAuLjViYjYxNDA5NzE5OGZmNTYy
MWM1MWM4Njk2YTZkMjc5MmQwZjA2MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcApAQCAtMzIsOCArMzIsNiBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIAotI2lm
IEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0KICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1
ZGUgIkRvY3VtZW50TG9hZFRpbWluZy5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCkBA
IC0xOTksNSArMTk3LDMgQEAgZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc291
cmNlVGltZVRvRG9jdW1lbnRNaWxsaXNlY29uZHMoaW50IGRlbHRhTWkKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggOTlk
ZmM1YmNkY2RjNzllMzUzZTk0OTM2YzQ4Mjg1MzYxN2M1ZjUzZi4uMzdiNWFlOTFlZGYwNzVhZjQ5
YjIwNTc5OTU0MzhkZDhlZjZhYTRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmgKQEAgLTMyLDggKzMyLDYgQEAKICNpZm5kZWYgUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZ19oCiAjZGVmaW5lIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdf
aAogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2luY2x1ZGUgIlBlcmZvcm1hbmNl
RW50cnkuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRUaW1pbmcuaCIKICNpbmNsdWRlIDx3dGYv
UGFzc1JlZlB0ci5oPgpAQCAtODUsNiArODMsNCBAQCBwcml2YXRlOgogCiB9CiAKLSNlbmRpZiAv
LyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjZW5kaWYgLy8gIWRlZmluZWQoUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZ19oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5pZGwKaW5kZXggM2YwMTFiMjNiMDU3YTFhZTBlNjM0ZWYxOTQzYjEw
MWZjZTY4NjZkMy4uM2YzMDllM2JhMmRiNjRiNDQ5NWVhZTYxODA4MjI5OWU5YjYyZDQ1MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRs
CkBAIC0zMCw3ICszMCw3IEBACiAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJw
ZXJmL3Jhdy1maWxlL3RpcC9zcGVjcy9SZXNvdXJjZVRpbWluZy9PdmVydmlldy5odG1sCiBbCi0g
ICAgQ29uZGl0aW9uYWw9UkVTT1VSQ0VfVElNSU5HLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVz
b3VyY2VUaW1pbmcKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgOiBQZXJm
b3JtYW5jZUVudHJ5IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGluaXRpYXRv
clR5cGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCBkNDVhY2NkNWYw
YmNlMDY3MTdlZmVjOGE5YjAyNmNhYzg2MjJmYmE5Li5jOWI0NmMzMzE3NDk1NWFlMDI0ZWJjMDA2
OWQ0NzZmZGFlMTBjNmFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC0z
MzE4LDQgKzMzMTgsOSBAQCB2b2lkIEludGVybmFsczo6c2V0TGlua1ByZWxvYWRTdXBwb3J0KGJv
b2wgZW5hYmxlKQogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCku
c2V0TGlua1ByZWxvYWRFbmFibGVkKGVuYWJsZSk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxzOjpzZXRS
ZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbCBlbmFibGUpCit7CisgICAgUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRSZXNvdXJjZVRpbWluZ0VuYWJsZWQoZW5hYmxl
KTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggZjNhZmYyZmY5NzE4
N2M5OWVhZTJhZTlkOTcyZTU3ZjM3NDQ3MzYxNC4uYzA3MWE0MTUxNmMxMTkxZDBjNTJkMThmMmU1
NDViOWNmMzE2ZGYxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC00NjgsNiAr
NDY4LDcgQEAgcHVibGljOgogICAgIAogICAgIHZvaWQgc2V0Vmlld3BvcnRGb3JjZUFsd2F5c1Vz
ZXJTY2FsYWJsZShib29sKTsKICAgICB2b2lkIHNldExpbmtQcmVsb2FkU3VwcG9ydChib29sKTsK
KyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sKTsKIAogcHJpdmF0ZToKICAg
ICBleHBsaWNpdCBJbnRlcm5hbHMoRG9jdW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmlkbAppbmRleCAzMmFkYjFjMDEzYWFlODc0MDQxZDRhMTc1NmQwNWUwMzQwMjc3ZTRkLi4y
Njc3Zjc1ZTg4YzNiYmRhY2Q5NWY1OTZhNzcyNzI4ZDZjY2Y1YzRmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaWRsCkBAIC00NDYsNCArNDQ2LDUgQEAgZW51bSBBdXRvRmlsbEJ1dHRv
blR5cGUgewogCiAgICAgdm9pZCBzZXRWaWV3cG9ydEZvcmNlQWx3YXlzVXNlclNjYWxhYmxlKGJv
b2xlYW4gc2NhbGFibGUpOwogICAgIHZvaWQgc2V0TGlua1ByZWxvYWRTdXBwb3J0KGJvb2xlYW4g
c2NhbGFibGUpOworICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2xlYW4gc2Nh
bGFibGUpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFr
ZSBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQppbmRleCA5MzA0YjVhZWQyODI2
YTkxNjExNGRlZmRjOWJmNTlmYjBkNTZiNzAwLi43NjhlM2U1OWQ3ZTE5YWFhYTA0ZjAyMjE3ODM1
Y2U5Njk2N2MwOTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21h
a2UKKysrIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCkBAIC0xNTgsNyArMTU4
LDYgQEAgbWFjcm8oV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfTk9USUZJQ0FUSU9OUyAiVG9nZ2xlIERlc2t0b3AgTm90aWZpY2F0aW9ucyBTdXBw
b3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfT1JJRU5U
QVRJT05fRVZFTlRTICJUb2dnbGUgT3JpZW50YXRpb24gRXZlbnRzIHN1cHBvcnQiIFBSSVZBVEUg
T0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QREZLSVRfUExVR0lOICJUb2dn
bGUgUERGS2l0IHBsdWdpbiBzdXBwb3J0IiBQUklWQVRFIE9GRikKLSAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfUEVSRk9STUFOQ0VfVElNRUxJTkUgIlRvZ2dsZSBQZXJmb3JtYW5jZSBU
aW1lbGluZSBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShF
TkFCTEVfUE9JTlRFUl9MT0NLICJUb2dnbGUgcG9pbnRlciBsb2NrIHN1cHBvcnQiIFBSSVZBVEUg
T0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTICJU
b2dnbGUgUHJveGltaXR5IEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRf
T1BUSU9OX0RFRklORShFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUICJUb2dnbGUgcHVibGljIHN1
ZmZpeCBsaXN0IHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGQ3MDRmZTA0ZDE3N2Y0NTNh
Yzc3NTU1MzIzMjEzMWI5ZmUwNmI2YjMuLmI5YzI0MDZhNDMyYjM3NjllNGJmNGViN2I3Yjc3Nzll
ZDJjZWMxNjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAg
PHlvYXZAeW9hdi53cz4KKworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1
bnRpbWUgZmxhZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTU3MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQWRkZWQgdGVzdHMgdGhhdCBtYWtlIHN1cmUgUmVzb3VyY2VUaW1pbmcgQVBJcyBhcmUgZXhw
b3NlZCBhbmQgdGhhdCByZXNvdXJjZXMKKyAgICAgICAgc2hvdyB1cCBhcyBlbnRyaWVzIGluIHRo
ZSBwZXJmb3JtYW5jZSB0aW1lbGluZS4KKworICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9y
bWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sOiBSZW1vdmVkICIvLzsiLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGlt
aW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Bl
cmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWw6IEFkZGVk
LgorCiAyMDE2LTA0LTI4ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCBpb3Mtc2ltdWxhdG9yIGJhc2VsaW5lIGZvciBmYXN0L2Zvcm1zL3NlbGVjdC1u
b24tbmF0aXZlLXJlbmRlcmluZy1kaXJlY3Rpb24uaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNl
LXRpbWluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jZmI5MTU0ZTliM2I0NDI3MTgyZjc2YzRmYmVlMjdlNTgzMjZlMjNiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVz
LXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NiBA
QAorVGhpcyB0ZXN0IGR1bXBzIGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSByZWFjaGFi
bGUgZnJvbSB0aGUgd2luZG93LnBlcmZvcm1hbmNlIG9iamVjdCwgYWxvbmcgd2l0aCB0aGVpciB0
eXBlcy4KKword2luZG93LnBlcmZvcm1hbmNlIFtvYmplY3QgUGVyZm9ybWFuY2VdCit3aW5kb3cu
cGVyZm9ybWFuY2UuYWRkRXZlbnRMaXN0ZW5lciBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFu
Y2UuY2xlYXJSZXNvdXJjZVRpbWluZ3MgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLmRp
c3BhdGNoRXZlbnQgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXMgW2Z1
bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUgW2Z1bmN0aW9uXQor
d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUgW2Z1bmN0aW9uXQord2luZG93LnBl
cmZvcm1hbmNlLm5hdmlnYXRpb24gW29iamVjdCBQZXJmb3JtYW5jZU5hdmlnYXRpb25dCit3aW5k
b3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX0JBQ0tfRk9SV0FSRCBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9OQVZJR0FURSBbbnVtYmVyXQord2luZG93
LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9SRUxPQUQgW251bWJlcl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVTRVJWRUQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5uYXZpZ2F0aW9uLnJlZGlyZWN0Q291bnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS5uYXZpZ2F0aW9uLnR5cGUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5ub3cgW2Z1bmN0
aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm9ucmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsIFtudWxs
XQord2luZG93LnBlcmZvcm1hbmNlLnJlbW92ZUV2ZW50TGlzdGVuZXIgW2Z1bmN0aW9uXQord2lu
ZG93LnBlcmZvcm1hbmNlLnNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSBbZnVuY3Rpb25dCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nIFtvYmplY3QgUGVyZm9ybWFuY2VUaW1pbmddCit3aW5k
b3cucGVyZm9ybWFuY2UudGltaW5nLmNvbm5lY3RFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcuY29ubmVjdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nLmRvbUNvbXBsZXRlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbUNv
bnRlbnRMb2FkZWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5k
b21Db250ZW50TG9hZGVkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZy5kb21JbnRlcmFjdGl2ZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5k
b21Mb2FkaW5nIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbWFpbkxvb2t1
cEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21haW5Mb29rdXBTdGFy
dCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5mZXRjaFN0YXJ0IFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmxvYWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZy5sb2FkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcucmVkaXJlY3RFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcu
cmVkaXJlY3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXF1ZXN0
U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVzcG9uc2VFbmQgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVzcG9uc2VTdGFydCBbbnVtYmVyXQor
d2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgW251bWJlcl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcudW5sb2FkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcudW5sb2FkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBl
cmZvcm1hbmNlLnRpbWluZyBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gW3ByaW50ZWQgYWJvdmUgYXMgd2lu
ZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb25dCit3aW5kb3cucGVyZm9ybWFuY2UgW3N0cmluZ10K
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0
aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmQ1ZTgyYzZhNGIyYmJlOGM1YTdjODlkNWFhM2Q0ZTA0MTI3ODEyNjIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKQEAgLTAsMCArMSwxMDQg
QEAKKzxwPlRoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVh
Y2hhYmxlIGZyb20gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3QsIGFsb25nIHdpdGggdGhl
aXIgdHlwZXMuPC9wPgorPGhyPgorPHByZSBpZD0icHJlIj48L3ByZT4KKworPHNjcmlwdD4KK2lm
ICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworaWYg
KHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9y
dCh0cnVlKTsKKyAgICAKK3ZhciBsb2dCdWZmZXIgPSBbXTsKK2Z1bmN0aW9uIGxvZyhzKQorewor
ICAgIGxvZ0J1ZmZlci5wdXNoKHMpOworfQorCit2YXIgcHJlID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3ByZScpOworZnVuY3Rpb24gZmx1c2hMb2coKQoreworICAgIHZhciBsb2dNZXNzYWdl
ID0gbG9nQnVmZmVyLmpvaW4oIiIpOworICAgIHByZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZShsb2dNZXNzYWdlKSk7Cit9CisKK2Z1bmN0aW9uIHRyeUV2YWwoc3RyaW5nKQor
eworICAgIHRyeSB7CisgICAgICAgIHJldHVybiBldmFsKHN0cmluZyk7CisgICAgfSBjYXRjaCAo
ZSkgeworICAgICAgICByZXR1cm4gbmV3IFN0cmluZygiQ2F1Z2h0IGV4Y2VwdGlvbjogIiArIGUp
OworICAgIH0KK30KKworZnVuY3Rpb24gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKQoreworICAgIGlm
ICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIgJiYgdmFsdWUgPT0gbnVsbCkKKyAgICAgICAgcmV0
dXJuICJudWxsIjsKKyAgICByZXR1cm4gdHlwZW9mIHZhbHVlOworfQorCitmdW5jdGlvbiB0eXBl
U3RyaW5nTnVsbEF3YXJlKHZhbHVlKQoreworICAgIHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZOdWxs
QXdhcmUodmFsdWUpOworICAgIHJldHVybiB2YWx1ZVR5cGUgPT0gIm9iamVjdCIKKyAgICAgICAg
PyBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpCisgICAgICAgIDogIlsiICsg
dmFsdWVUeXBlICsgIl0iOworfQorCitmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1ZU5hbWUpCit7Cisg
ICAgdmFyIHZhbHVlID0gdHJ5RXZhbCh2YWx1ZU5hbWUpOworICAgIHZhciB2YWx1ZVR5cGUgPSB0
eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0
aCBvdXIgb3duIHZhcmlhYmxlcworICAgIGlmICh2YWx1ZSA9PSBsb2dCdWZmZXIgfHwgdmFsdWUg
PT0gcHJlKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBEb24ndCB0YWludCB0aGUgdGVzdCB3
aXRoIG91ciBvd24gcHJvcGVydGllcworICAgIGlmICgvX192aXNpdGVkQnlMb2dWYWx1ZV9fLy50
ZXN0KHZhbHVlTmFtZSkgfHwgL19fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fLy50ZXN0KHZh
bHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdvcmsgYXJvdW5kIEZpcmVmb3gg
aW5maW5pdGUgcmVjdXJzaW9uCisgICAgaWYgKC9cLlswLTldLy50ZXN0KHZhbHVlTmFtZSkpCisg
ICAgICAgIHJldHVybjsKKworICAgIC8vIEF2b2lkIGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlm
ICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fKSB7
CisgICAgICAgIGxvZyh2YWx1ZU5hbWUgKyAiIFtwcmludGVkIGFib3ZlIGFzICIgKyB2YWx1ZS5f
X25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXyArICJdXG4iKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKworICAgIGxvZyh2YWx1ZU5hbWUgKyAiICIgKyB0eXBlU3RyaW5nTnVsbEF3YXJlKHZh
bHVlKSArICJcbiIpOworCisgICAgaWYgKHZhbHVlVHlwZSA9PSAib2JqZWN0IikgeworICAgICAg
ICB2YWx1ZS5fX3Zpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB0cnVlOworICAgICAgICB2YWx1ZS5fX25h
bWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXyA9IHZhbHVlTmFtZTsKKyAgICAgICAgbG9nUHJvcGVy
dGllcyh2YWx1ZSwgdmFsdWVOYW1lKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIGxvZ1Byb3BlcnRp
ZXMob2JqZWN0LCBvYmplY3ROYW1lKQoreworICAgIHZhciBhcnJheSA9IG5ldyBBcnJheTsKKyAg
ICBmb3IgKHZhciBwcm9wZXJ0eSBpbiBvYmplY3QpIHsKKyAgICAgICAgYXJyYXkucHVzaChwcm9w
ZXJ0eSk7CisgICAgfQorICAgIGFycmF5LnNvcnQoKTsKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGFycmF5Lmxlbmd0aDsgaSsrKSB7CisgICAgICAgIHZhciBwcm9wZXJ0eSA9IGFycmF5W2ldOwor
ICAgICAgICBsb2dWYWx1ZShvYmplY3ROYW1lICsgIi4iICsgcHJvcGVydHkpOworICAgIH0KK30K
KworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOword2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZyA9ICd0aW1pbmcgaXMgbm90IHJlcGxhY2VhYmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiA9ICduYXZp
Z2F0aW9uIGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNl
Lm5hdmlnYXRpb24nKTsKK3dpbmRvdy5wZXJmb3JtYW5jZSA9ICdwZXJmb3JtYW5jZSBpcyByZXBs
YWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlJyk7CitmbHVzaExvZygpOwor
aWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3Vw
cG9ydChmYWxzZSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWwKaW5kZXgg
MGE4ZjgxZWYxMjU4ODgyNWQ1ZDE2ZDVhOWQyZGRiZTc2Yjg2OTMwZC4uMWIxMmUxN2NhZjA4MTY4
ZmMzYjlmOGNkYmNkYmUxY2MxZDdmMGMzNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWwK
QEAgLTMwLDcgKzMwLDcgQEAgZnVuY3Rpb24gdHJ5RXZhbChzdHJpbmcpCiAKIGZ1bmN0aW9uIHR5
cGVPZk51bGxBd2FyZSh2YWx1ZSkKIHsKLSAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3Qi
ICYmIHZhbHVlID09IG51bGwpIC8vOworICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIg
JiYgdmFsdWUgPT0gbnVsbCkKICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICByZXR1cm4gdHlw
ZW9mIHZhbHVlOwogfQpAQCAtNjEsNyArNjEsNyBAQCBmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1ZU5h
bWUpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIEF2b2lkIGluZmluaXRlIHJlY3Vyc2lvbgot
ICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1
ZV9fKSB7IC8vOworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNp
dGVkQnlMb2dWYWx1ZV9fKSB7CiAgICAgICAgIGxvZyh2YWx1ZU5hbWUgKyAiIFtwcmludGVkIGFi
b3ZlIGFzICIgKyB2YWx1ZS5fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXyArICJdXG4iKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1y
ZXNvdXJjZS10aW1pbmctZW50cmllcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNkMTdiZjk3
MGM1NjQ0MWY1YTgzMjA4ZDAwOTM2NTMzYTY3YWY0MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
LWVudHJpZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitQQVNTIHBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeVR5cGUoJ3Jlc291cmNlJykubGVuZ3RoIGlzIDIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50
cmllcy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5j
ZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZlZWNiYTI5NTdjOGVl
NTlmYTk2NWMxYjVmNzQ1ODVjZTRhYzVhNjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRy
aWVzLmh0bWwKQEAgLTAsMCArMSwyMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNv
dXJjZVRpbWluZ1N1cHBvcnQodHJ1ZSk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c3Bh
biBpZD0iZSI+PC9zcGFuPgorPHNwYW4gaWQ9ImYiPjwvc3Bhbj4KKzxzY3JpcHQ+Cit3aW5kb3cu
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgeworICAgIHNob3VsZEJlKCJwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScpLmxlbmd0aCIsICIyIik7CisgICAg
aWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0UmVzb3Vy
Y2VUaW1pbmdTdXBwb3J0KGZhbHNlKTsKK30pOworCis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA2OTU2OWM0Y2FhN2U2
ZTExMmVkZDNhM2I0MjNiYTkzNzgzYjg5YWNlLi4yNTYwNzJiZjA0NGViNWFhYzA3MzkwZTNjZmUw
NTYzNjlkNmVlYzcxIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTIgQEAKKzIwMTYtMDQtMjggIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAg
ICAgICAgTW92ZSBSZXNvdXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dl
YktpdEZlYXR1cmVzLmNtYWtlOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxk
IGZsYWcuCisKIDIwMTYtMDQtMjggIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMDAxODUuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277676</attachid>
            <date>2016-04-28 23:32:11 -0700</date>
            <delta_ts>2016-04-28 23:38:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160429083242.patch</filename>
            <type>text/plain</type>
            <size>55129</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
NWE2NmIzM2YyNzQxMmU2MTZkMDVmYzE2ZTVjMzQ0NjhhOTAxOTc5Li4wNjUxYzE5YWUyYjNjNjcz
ZDkzODk1NDFjNmVmYzhjYjg4Y2RhNWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaDogQWRkZWQgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxp
c3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgYXMgcHJvcGVydHkgbmFtZXMuCisKIDIw
MTYtMDQtMjggIEJlbmphbWluIFBvdWxhaW4gIDxicG91bGFpbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gVW5pZnkgTWF0aC5wb3coKSBhY2Nyb3NzIGFsbCB0aWVycwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4
IDg2Y2Q0ZDFmYzQyYzIxY2UwNWJkNTk5ZmJlMmVjYzgyZDE3ZWU2NmMuLmY0MzNlODM2MTMyZGE2
NmM3NWE2ZTZlZGU5MjE1ZmEyN2I5N2ZjYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1NyBAQAor
MjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAgICBNb3ZlIFJl
c291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBNb3ZlIHRoZSBSZXNvdXJjZVRpbWluZyBBUEkg
ZnJvbSBiZWluZyBiZWhpbmQgYSBidWlsZCB0aW1lIGZsYWcgdG8gYmUgYmVoaW5kIGFuCisgICAg
ICAgIG9mZi1ieS1kZWZhdWx0IHJ1bnRpbWUgZmxhZywgdGhhdCBjYW4gYmUgdHVybmVkIG9uIHVz
aW5nIGludGVybmFscy4KKworICAgICAgICBUZXN0czogZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sCisgICAgICAgICAgICAg
ICBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRy
aWVzLmh0bWwKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZGVkIGlkbCBmaWxl
cyBmb3IgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxpc3QgYW5kIFBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOiBBZGRlZCB0aGUgdmFyaW91cyBQZXJmb3JtYW5jZSogZmlsZXMgdG8gdGhlIHByb2pl
Y3QuCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNw
cDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJD
b3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzKToKKyAg
ICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDogQWRkZWQg
UmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRSZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAgICAgICAo
V2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6cmVzb3VyY2VUaW1pbmdFbmFibGVkKToK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwOiBSZW1v
dmVkICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuIEFkZGVkIGJ1aWxkIGZsYWcgYXJvdW5kIFVzZXJU
aW1pbmcgcmVsYXRlZCBoIGZpbGVzLgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6IERlbGV0ZWQu
CisgICAgICAgICogZG9tL0V2ZW50TmFtZXMuaDogUmVuYW1lZCB3ZWJraXRyZXNvdXJjZXRpbWlu
Z2J1ZmZlcmZ1bGwgdG8gcmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsLgorICAgICAgICAqIGxvYWRl
ci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VU
aW1pbmcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KToKKyAgICAgICAgKiBsb2FkZXIvUmVzb3VyY2VMb2Fk
Tm90aWZpZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0aCBydW50aW1l
IGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hX
aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxv
YWRlci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxh
Zy4KKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpyZXZhbGlkYXRlUmVz
b3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWRSZXNv
dXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6c3RvcmVSZXNv
dXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hl
ZFJlc291cmNlTG9hZGVyOjpsb2FkRG9uZSk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmg6IFJlbW92ZSAjaWYgZm9yIFJlc291cmNlVGltaW5nLgorICAgICAg
ICAqIHBhZ2UvUGVyZm9ybWFuY2UuY3BwOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRpbWluZy4K
KyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpQZXJmb3JtYW5jZSk6IFJlbW92ZWQgI2lm
IGZvciBSZXNvdXJjZVRpbWluZyByZWxhdGVkIGluaXRpYWxpemF0aW9uLgorICAgICAgICAoV2Vi
Q29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMpOiBSZW5hbWVkIHRvIGdldEVudHJp
ZXMuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5VHlw
ZSk6IFJlbmFtZWQgdG8gZ2V0RW50cmllc0J5VHlwZS4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZv
cm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKTogUmVuYW1lZCB0byBnZXRFbnRyaWVzQnlO
YW1lLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3Vy
Y2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5pZGw6IFJlcGxhY2UgI2lmIGZv
ciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZv
cm1hbmNlRW50cnkuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZs
YWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5Lmg6IFJlbW92ZSB0aGUgUEVSRk9S
TUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50
cnkuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnIHdpdGgg
cnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwOiBS
ZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5F
IGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGw6IFJl
cGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcgd2l0aCBydW50aW1lIGZs
YWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcDogUmVtb3Zl
IHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuaDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxh
Zy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsOiBSZXBsYWNl
IHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAg
ICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVz
b3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OnNldFJlc291cmNlVGlt
aW5nU3VwcG9ydCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDogQWRkIGEgbWV0aG9k
IHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5pZGw6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcuCisKIDIwMTYt
MDQtMjggIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjov
L3Byb2JsZW0vMjU5ODYzMjQ+IFdlYktpdCBidWlsZCBicm9rZW4gd2l0aCBlcnJvcjogdW5kZWNs
YXJlZCBzZWxlY3RvciAnY2hpbGRWaWV3Q29udHJvbGxlckZvcldoaXRlUG9pbnRBZGFwdGl2aXR5
U3R5bGUnCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25J
ZGVudGlmaWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRp
ZmllcnMuaAppbmRleCBjNDRlNTgyZDdhMjY2YTc0YTE1NTExODgzNjVkMzNlOTY3N2VjZWE4Li5k
NWIzMDNmMTRjNzNlODFlMGU1NDQ1YjMyNmQwNjM3ZDk5MmE0OThjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTcxLDYgKzcx
LDkgQEAKICAgICBtYWNybyhOdW1iZXIpIFwKICAgICBtYWNybyhOdW1iZXJGb3JtYXQpIFwKICAg
ICBtYWNybyhPYmplY3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZUVudHJ5KSBcCisgICAgbWFj
cm8oUGVyZm9ybWFuY2VFbnRyeUxpc3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nKSBcCiAgICAgbWFjcm8oUHJvbWlzZSkgXAogICAgIG1hY3JvKFByb3h5KSBcCiAgICAg
bWFjcm8oUmFuZ2VFcnJvcikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDIw
YTc5MDQ3YjY4NDEwOGY2MzE0ZDc5YTk1YTdjNDI4N2YxOTlmNS4uYzNhMTJlNGM2NDZhNjM5Njc0
ZWI5NzY3Y2IyNGUyY2YxYTA1Mjk0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBA
IC01MTgsNyArNTE4LDEwIEBAIE5PTl9TVkdfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29y
ZSkvcGFnZS9Mb2NhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9OYXZpZ2F0b3IuaWRs
IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIFwKKyAgICAkKFdlYkNvcmUp
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZVRpbWluZy5pZGwgXAogICAg
ICQoV2ViQ29yZSkvcGFnZS9TY3JlZW4uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvV2ViS2l0
UG9pbnQuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCAwZjE4ZTIyZWU5YTZiZmZmNmU5NGUzMjJiNDQ3ZmMwOTU4Y2M5ZGMw
Li40NWM0ZjM5MjUwNWY1MjAxNDg4N2I3ODkyNGM2MTY2ZmQ5NjM4NTZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTkxLDYg
KzU5OTEsMTQgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3
RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAg
LyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0
aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICov
OyB9OworCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0QTFD
Q0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUx
MUNDRjkzODkwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUyMUNDRjkzOTQwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1h
bmNlRW50cnkuaCAqLzsgfTsKKwkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9y
bWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuY3BwICovOyB9OworCQlDQjM4RkQ1NDFDQ0Y5MzlFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZUVudHJ5TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAq
LzsgfTsKKwkJQ0IzOEZENTcxQ0QyMUUyQTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1
c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
QjM4RkQ1NTFDRDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAq
LzsgfTsKKwkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmNwcCAqLzsgfTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oICovOyB9OwogCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm90YXNrcy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAx
NTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVG
NjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VD
bGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQlDQ0MyQjUxNTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2
MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi87IH07CkBAIC0xMzk1Niw2ICsxMzk2
NCwxNCBAQAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNB
RTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1h
bmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9y
bWFuY2VFbnRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDREMUND
RjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IGZpbGVF
bmNvZGluZyA9IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VF
bnRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU1BlcmZv
cm1hbmNlRW50cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU1
MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERl
dmljZUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RGV2aWNlQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODA1
OCw2ICsxODA3NCw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1h
bmNlLmggKi8sCiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmlk
bCAqLywKIAkJCQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5o
ICovLAorCQkJCUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNw
cCAqLywKIAkJCQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5p
ZGwgKi8sCiAJCQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlM
aXN0LmNwcCAqLywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VF
bnRyeUxpc3QuaCAqLywKQEAgLTIyMzEzLDYgKzIyMzMwLDcgQEAKIAkJCQk4M0YxMjA2QTFCOEMx
MDM2MDBENzVGNjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3QzkxQTM4RDFC
NDk4QUJFMDAzRjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdDOTFBMzhFMUI0
OThBQkUwMDNGOUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhGRDU1MUNEMjFE
NUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovLAogCQkJCTkzQjcw
RDRGMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwICovLAog
CQkJCTkzQjcwRDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMu
aCAqLywKIAkJCQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJsZVN0cmVhbVBy
aXZhdGVDb25zdHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NDksOCArMjI2NjcsMTQgQEAKIAkJCQlB
OUQyNDdGNjBENzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlFNTFBODFE
RTE3Mjk4RDc3MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMx
MUU4NEM4MTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4RkQ0RDFDQ0Y5
MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlDQjM4RkQ0RTFD
Q0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJQ0IzOEZENEYx
Q0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovLAorCQkJCUNC
MzhGRDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCiAJ
CQkJOEE5QTU4NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNw
cCAqLywKIAkJCQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmln
YXRpb24uaCAqLywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUxODlFMTVBNjAw
MDE5QUUyIC8qIEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1ODc3MTFFODRD
OTgwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNFQzAxQzAwQzI3
NERERDAwOUY0RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1NTU2LDYgKzI1NTgwLDcgQEAK
IAkJCQkyRDI5RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9T
LmggaW4gSGVhZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogRGlzcGxh
eVJlZnJlc2hNb25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUNDODE5MkVDQzgz
MDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0IzOEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERpc3BsYXlTbGVl
cERpc2FibGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJDMDAyNkNFNzIg
LyogRGlzcGxheVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYw
OTExMkIwMjZGNzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywKQEAgLTI3Njkx
LDYgKzI3NzE2LDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVmll
dy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdFIC8qIFJlbmRl
clZUVEN1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAwQjEyQTY4IC8q
IFJlbmRlcldpZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0QyMzI1QjAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNl
bGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThCRTk4NDkwMDZD
RUJDQyAvKiBSZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4MDIwLDYgKzI4
MDQ2LDcgQEAKIAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3Qu
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1
cnJvdW5kRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1
IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTQxQ0NG
OTM5RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovLAog
CQkJCUU0REVBQTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxlVmlzdWFsRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZy
YW1lTG9hZGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI5MjAyLDYgKzI5MjI5LDcgQEAKIAkJCQlC
Mjc1MzU3NzBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJ
CQk0M0VERDY3RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVk
VVJMRmlsdGVycy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJB
M0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUzNDE4
NjRENUFGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUE1ODRGRTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5j
cHAgaW4gU291cmNlcyAqLywKQEAgLTMxMjIwLDYgKzMxMjQ4LDcgQEAKIAkJCQlCQzk2REI0NjBG
M0E4ODIyMDA1NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQkNFQTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRl
eHQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzkyRjE0
NDBBRDE4NUZFMDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQ0VBNDg2RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5k
ZXJEZXRhaWxzTWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzE5OTYsNiArMzIwMjUsNyBA
QAogCQkJCTQ0NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1Mu
bW0gaW4gU291cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMgLyogV2ViQ29y
ZVZpZXcubSBpbiBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlBREY1MCAvKiBX
ZWJEZWJ1Z2dlckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3MUNEMjFFMkEw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRkUwRDg0RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJMjI1QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmlu
Z0NvbnRleHQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA3NSw2ICszMjEwNSw3IEBACiAJCQkJ
QjEwQjY5ODExNDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93QW5pbWF0aW9u
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJ
bnB1dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBB
NDRFRkM3MDBGOTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTE5
NTE2QjFCNjU5OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2ZW50RGVsdGFG
aWx0ZXJNYWMubW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTEyLDYgKzMyMTQzLDcgQEAKIAkJCQkw
MEI5MzE4OTEzQkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBYTUxEb2N1bWVu
dFBhcnNlclNjb3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4REMyNDEwMDc5
QjdFMiAvKiBYTUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTMxQ0NGOTM5
QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQkM3NzJDNDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRwUmVxdWVzdFBy
b2dyZXNzRXZlbnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RGRDQ4RjBFMzA1
MjkwMDA5RDEwQUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmNwcAppbmRleCAxY2Y0YWE3OGNkNzUzZDA3MGFkNWJlNDE4MTlhNDAyZDQ4
Mzk0YjIwLi5jZDNlNmIxNzk1Njk5YTgyMTM2MmYzZjYyOTQ4NDZlNzgxNDEwNTA3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJs
ZWRGZWF0dXJlcy5jcHAKQEAgLTU5LDYgKzU5LDcgQEAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
UnVudGltZUVuYWJsZWRGZWF0dXJlcygpCiAjZWxzZQogICAgICwgbV9pc1BsdWdpblJlcGxhY2Vt
ZW50RW5hYmxlZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxl
ZChmYWxzZSkKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1faXNJbmRleGVk
REJFbmFibGVkKGZhbHNlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDVkNjQ2ODY1MDI2
MWIxNzA3OGNlYjNjNTIwNjg5MTNlNTA1MDJlMGEuLmIxYmE2ZjNlY2MwMTViZTY5NDZhODg0NzFi
YTZlZWQ0MzZlMDAyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVy
aWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yMDEsNiArMjAxLDkgQEAgcHVi
bGljOgogICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVk
KSB7IG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBib29s
IHBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNQbHVnaW5SZXBs
YWNlbWVudEVuYWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGJv
b2wgaXNFbmFibGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgPSBpc0VuYWJsZWQ7IH0K
KyAgICBib29sIHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNSZXNv
dXJjZVRpbWluZ0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1FUEFEKQogICAgIHZvaWQgc2V0
R2FtZXBhZHNFbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZUdhbWVwYWRzRW5hYmxlZCA9
IGFyZUVuYWJsZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fYXJlR2FtZXBhZHNFbmFibGVkOyB9CkBAIC0yNjIsNiArMjY1LDcgQEAgcHJpdmF0ZToKICAg
ICBib29sIG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lzTGFuZ0F0dHJp
YnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9vbCBtX2lzUGx1Z2luUmVwbGFj
ZW1lbnRFbmFibGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZDsKIAogI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wgbV9pc0luZGV4ZWREQkVuYWJsZWQ7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50
cnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVu
dHJ5Q3VzdG9tLmNwcAppbmRleCBlYmRkMzdmOGM0YzIxN2IzOTkxZmVkMzBjODU3NDc5NzYxZWQy
MzAzLi44ZjExZTcwMjU3ZmRjMTE3NTUxYjA3YmZjOGM3YmMyODhkZGNhYzA2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3Rv
bS5jcHAKQEAgLTMwLDEzICszMCwxMyBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAKLSNpZiBF
TkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlRW50
cnkuaCIKIAogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2lmIEVOQUJMRShVU0VSX1RJTUlO
RykKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIkpTUGVyZm9ybWFu
Y2VNZWFzdXJlLmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5j
ZU1lYXN1cmUuaCIKQEAgLTUxLDEwICs1MSw4IEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqLCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5jZUVudHJ5KiBlbnRyCiAg
ICAgaWYgKCFlbnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVsbCgpOwogCi0jaWYgRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzUmVzb3VyY2UoKSkKICAgICAgICAgcmV0
dXJuIHdyYXA8SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmplY3QsIHN0YXRp
Y19jYXN0PFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcqPihlbnRyeSkpOwotI2VuZGlmCiAKICNp
ZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKGVudHJ5LT5pc01hcmsoKSkKQEAgLTY4LDUg
KzY2LDMgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudE5hbWVzLmgKaW5kZXggNGNlODY3ODUwMGRkY2E1MGI1ZTVjODEwYjJkMmRiMDNiOWZhN2Jm
NC4uZDU3NDczOGZiYjhjMGFjNmMyNDQ2MWYwMTI4YTFlZTMyOWE2Zjg3OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnROYW1lcy5oCkBAIC0xODMsNiArMTgzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
IG1hY3JvKHJlbW92ZXRyYWNrKSBcCiAgICAgbWFjcm8ocmVzZXQpIFwKICAgICBtYWNybyhyZXNp
emUpIFwKKyAgICBtYWNybyhyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwpIFwKICAgICBtYWNybyhy
ZXN1bHQpIFwKICAgICBtYWNybyhyZXN1bWUpIFwKICAgICBtYWNybyhzY3JvbGwpIFwKQEAgLTI2
MSw3ICsyNjIsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgbWFjcm8od2Via2l0cHJlc2Vu
dGF0aW9ubW9kZWNoYW5nZWQpIFwKICAgICBtYWNybyh3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdl
KSBcCiAgICAgbWFjcm8od2Via2l0cmVtb3Zlc291cmNlYnVmZmVyKSBcCi0gICAgbWFjcm8od2Vi
a2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsKSBcCiAgICAgbWFjcm8od2Via2l0c291cmNlY2xv
c2UpIFwKICAgICBtYWNybyh3ZWJraXRzb3VyY2VlbmRlZCkgXAogICAgIG1hY3JvKHdlYmtpdHNv
dXJjZW9wZW4pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAKaW5kZXggY2RjNDU5ZjJiZmE4YTFiZTYyYWZlZTMzYzRiMGJlNzcxY2I2
MWExZC4uNWY1ZWZkODQxOGEzN2VhMDJkZmFiNjM1M2IwMjVhOGE2MDZmYWJlNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAg
LTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNrZXIuaCIKICNpbmNsdWRlICJS
ZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCisjaW5jbHVkZSAi
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNjaGVtZVJlZ2lzdHJ5LmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTdWJyZXNvdXJjZUxvYWRlci5o
IgpAQCAtMzg1LDkgKzM4Niw4IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2Fk
UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlY3VyCiAgICAgICAgIH0K
IAogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgbmV3UmVxdWVzdChyZXF1ZXN0LCBvcHRp
b25zKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgICAgICBuZXdSZXF1ZXN0LnNl
dEluaXRpYXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKLSNlbmRpZgorICAgICAgICBpZiAoUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJs
ZWQoKSkKKyAgICAgICAgICAgIG5ld1JlcXVlc3Quc2V0SW5pdGlhdG9yKG1fb3B0aW9ucy5pbml0
aWF0b3IpOwogICAgICAgICBBU1NFUlQoIW1fcmVzb3VyY2UpOwogICAgICAgICBtX3Jlc291cmNl
ID0gbV9kb2N1bWVudC5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJlcXVlc3RSYXdSZXNvdXJjZShu
ZXdSZXF1ZXN0KTsKICAgICAgICAgaWYgKG1fcmVzb3VyY2UpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAppbmRleCBkMzlmZDI3ZGM1NjZjMGZlMjRk
MTBjNjAxNGM1YmVkZWQzZTRmY2I5Li5lNTQ2N2ZkMTExMDhlMjEwOWUxZDJmOWQ5ZDU2YjVjM2U4
NmQxMzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90
aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmll
ci5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUHJv
Z3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXIuaCIKKyNpbmNsdWRlICJS
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAKICNpZiBVU0UoUVVJQ0tfTE9PSykKICNpbmNsdWRl
ICJRdWlja0xvb2suaCIKQEAgLTE0Niw5ICsxNDcsOCBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlm
aWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNp
ZwogICAgIGlmIChsb2FkZXIgJiYgIXJlcXVlc3QuaXNOdWxsKCkgJiYgcmVxdWVzdC51cmwoKSA9
PSBsb2FkZXItPnVybCgpKQogICAgICAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1
ZSk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHJlcXVlc3Quc2V0UmVwb3J0
TG9hZFRpbWluZyh0cnVlKTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVz
OjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICByZXF1
ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7CiB9CiAKIHZvaWQgUmVzb3VyY2VMb2FkTm90
aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgciwgUmVz
b3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggYzBhOTlhM2RlOTc4OTQ1
ZmQ2NDlkYzJkNmVhNzhkYjY3ODcxMzAxZC4uM2RiOTAwN2YxZjgzNzg2YjZmZDdiMzQxYTBhNjQw
OTZiYjNlMTcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC01NywxMCArNTcsMTIgQEAKICNpbmNsdWRlICJNYWlu
RnJhbWUuaCIKICNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKKyNp
bmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIlBpbmdMb2FkZXIuaCIKICNpbmNsdWRl
ICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5j
bHVkZSAiUmVzb3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlP
cmlnaW4uaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKQEAgLTc1LDEwICs3Nyw2IEBACiAjaW5j
bHVkZSAiQ2FjaGVkVGV4dFRyYWNrLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9U
SU1JTkcpCi0jaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKLSNlbmRpZgotCiAjZGVmaW5lIFBSRUxP
QURfREVCVUcgMAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC02NzEsMTEgKzY2OSw4IEBAIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
cmV2YWxpZGF0ZVJlc291cmNlKGNvCiAgICAgCiAgICAgbWVtb3J5Q2FjaGUucmVtb3ZlKCpyZXNv
dXJjZSk7CiAgICAgbWVtb3J5Q2FjaGUuYWRkKCpuZXdSZXNvdXJjZSk7Ci0jaWYgRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKLSAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRp
b24ocmVzb3VyY2UsIHJlcXVlc3QpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0ocmVxdWVzdCk7
Ci0jZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMo
KS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVSZXNvdXJjZVRpbWluZ0lu
aXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAgICByZXR1cm4gbmV3UmVz
b3VyY2U7CiB9CiAKQEAgLTY5MCwxNSArNjg1LDE0IEBAIENhY2hlZFJlc291cmNlSGFuZGxlPENh
Y2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJlc291cmNlKENhY2hlZFJl
CiAKICAgICBpZiAocmVxdWVzdC5hbGxvd3NDYWNoaW5nKCkgJiYgIW1lbW9yeUNhY2hlLmFkZCgq
cmVzb3VyY2UpKQogICAgICAgICByZXNvdXJjZS0+c2V0T3duaW5nQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIodGhpcyk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBzdG9yZVJlc291cmNl
VGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwotI2VuZGlmCisg
ICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VU
aW1pbmdFbmFibGVkKCkpCisgICAgICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZv
cm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7CiAgICAgcmV0dXJuIHJlc291cmNlOwogfQogCi0j
aWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnN0
b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSZXNvdXJj
ZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4mIHJlc291cmNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QpCiB7CisgICAgQVNTRVJUKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNo
YXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpOwogICAgIGlmIChyZXNvdXJj
ZS0+dHlwZSgpID09IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3VyY2UpIHsKICAgICAgICAgLy8g
PGlmcmFtZT5zIHNob3VsZCByZXBvcnQgdGhlIGluaXRpYWwgbmF2aWdhdGlvbiByZXF1ZXN0ZWQg
YnkgdGhlIHBhcmVudCBkb2N1bWVudCwgYnV0IG5vdCBzdWJzZXF1ZW50IG5hdmlnYXRpb25zLgog
ICAgICAgICBpZiAoZnJhbWUoKS0+b3duZXJFbGVtZW50KCkgJiYgbV9kb2N1bWVudExvYWRlci0+
ZnJhbWVMb2FkZXIoKS0+c3RhdGVNYWNoaW5lKCkuY29tbWl0dGluZ0ZpcnN0UmVhbExvYWQoKSkg
ewpAQCAtNzEwLDcgKzcwNCw2IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnN0b3JlUmVz
b3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSCiAgICAgICAgIG1f
aW5pdGlhdG9yTWFwLmFkZChyZXNvdXJjZS5nZXQoKSwgaW5mbyk7CiAgICAgfQogfQotI2VuZGlm
IC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKIHN0YXRpYyB2b2lkIGxvZ1JldmFsaWRhdGlv
bihjb25zdCBTdHJpbmcmIHJlYXNvbiwgRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQmIGxvZ0NsaWVu
dCkKIHsKQEAgLTk3Niw4ICs5NjksOSBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpsb2Fk
RG9uZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hvdWxkUGVyZm9ybQogICAgIFJl
ZlB0cjxEb2N1bWVudExvYWRlcj4gcHJvdGVjdERvY3VtZW50TG9hZGVyKG1fZG9jdW1lbnRMb2Fk
ZXIpOwogICAgIFJlZlB0cjxEb2N1bWVudD4gcHJvdGVjdERvY3VtZW50KG1fZG9jdW1lbnQpOwog
Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3Vy
Y2UtPnJlc3BvbnNlKCkuaXNIVFRQKCkgJiYgKCghcmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSAm
JiAhcmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNlLT5yZXNwb25zZSgpLmh0dHBT
dGF0dXNDb2RlKCkgPT0gMzA0KSkgeworICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpz
aGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpCisgICAgICAgICYmIHJlc291
cmNlICYmIHJlc291cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpCisgICAgICAgICYmICgoIXJlc291
cmNlLT5lcnJvck9jY3VycmVkKCkgJiYgIXJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB8fCByZXNv
dXJjZS0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkpIHsKICAgICAgICAgSGFz
aE1hcDxDYWNoZWRSZXNvdXJjZSosIEluaXRpYXRvckluZm8+OjppdGVyYXRvciBpbml0aWF0b3JJ
dCA9IG1faW5pdGlhdG9yTWFwLmZpbmQocmVzb3VyY2UpOwogICAgICAgICBpZiAoaW5pdGlhdG9y
SXQgIT0gbV9pbml0aWF0b3JNYXAuZW5kKCkpIHsKICAgICAgICAgICAgIEFTU0VSVChkb2N1bWVu
dCgpKTsKQEAgLTk5MCw5ICs5ODQsNiBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpsb2Fk
RG9uZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hvdWxkUGVyZm9ybQogICAgICAg
ICAgICAgbV9pbml0aWF0b3JNYXAucmVtb3ZlKGluaXRpYXRvckl0KTsKICAgICAgICAgfQogICAg
IH0KLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHJlc291cmNlKTsKLSNlbmRpZiAvLyBFTkFCTEUo
UkVTT1VSQ0VfVElNSU5HKQogCiAgICAgaWYgKGZyYW1lKCkpCiAgICAgICAgIGZyYW1lKCktPmxv
YWRlcigpLmxvYWREb25lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZUxvYWRlci5oCmluZGV4IGIxZjdjNGZhZjVkYmIwOTYwMWM1ODkyZjVkNjQ3
MTM5NDliMWY2MGQuLjRkZjgxOTk1OWNlYWIxMTAzNzRiNTViNDYwMzkzMGE4N2ViN2M2NmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRl
ci5oCkBAIC0xNDQsOSArMTQ0LDcgQEAgcHJpdmF0ZToKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRs
ZTxDYWNoZWRSZXNvdXJjZT4gcmVxdWVzdFJlc291cmNlKENhY2hlZFJlc291cmNlOjpUeXBlLCBD
YWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRS
ZXNvdXJjZT4gcmV2YWxpZGF0ZVJlc291cmNlKGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVzdCYs
IENhY2hlZFJlc291cmNlKik7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3Vy
Y2U+IGxvYWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0Jik7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICB2b2lkIHN0b3JlUmVzb3Vy
Y2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxD
YWNoZWRSZXNvdXJjZT4mLCBjb25zdCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNlbmRpZgog
ICAgIHZvaWQgcmVxdWVzdFByZWxvYWQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgY2hhcnNldCk7CiAKICAgICBlbnVtIFJldmFsaWRh
dGlvblBvbGljeSB7IFVzZSwgUmV2YWxpZGF0ZSwgUmVsb2FkLCBMb2FkIH07CkBAIC0xNzksMTMg
KzE3NywxMSBAQCBwcml2YXRlOgogCiAgICAgVGltZXIgbV9nYXJiYWdlQ29sbGVjdERvY3VtZW50
UmVzb3VyY2VzVGltZXI7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIHN0cnVj
dCBJbml0aWF0b3JJbmZvIHsKICAgICAgICAgQXRvbWljU3RyaW5nIG5hbWU7CiAgICAgICAgIGRv
dWJsZSBzdGFydFRpbWU7CiAgICAgfTsKICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlKiwgSW5p
dGlhdG9ySW5mbz4gbV9pbml0aWF0b3JNYXA7Ci0jZW5kaWYKIAogICAgIC8vIDI5IGJpdHMgbGVm
dAogICAgIGJvb2wgbV9hdXRvTG9hZEltYWdlcyA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFu
Y2UuY3BwCmluZGV4IGVkMzlhMWQxNTA4MWI0NzY0YWU5N2FmYWY3MzhiYTk2Nzk3ZTczMmIuLjA4
YzcwMzFmNGZkMTI4MWQ1ZDViNTE0ZTdkYzQzMzA4MGI1NGFjZDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2UuY3BwCkBAIC00NywxNSArNDcsMTEgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIHN0YXRpYyBjb25zdCBzaXplX3QgZGVm
YXVsdFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSA9IDE1MDsKLSNlbmRpZgogCiBQZXJmb3JtYW5j
ZTo6UGVyZm9ybWFuY2UoRnJhbWUmIGZyYW1lKQogICAgIDogRE9NV2luZG93UHJvcGVydHkoJmZy
YW1lKQotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgLCBtX3Jlc291cmNlVGltaW5n
QnVmZmVyU2l6ZShkZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKQotI2VuZGlmIC8vIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgLCBtX3JlZmVyZW5jZVRpbWUoZnJhbWUuZG9jdW1l
bnQoKS0+bG9hZGVyKCkgPyBmcmFtZS5kb2N1bWVudCgpLT5sb2FkZXIoKS0+dGltaW5nKCkucmVm
ZXJlbmNlTW9ub3RvbmljVGltZSgpIDogbW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCkpCiAj
aWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgICwgbV91c2VyVGltaW5nKG51bGxwdHIpCkBAIC05
MSwxNCArODcsMTEgQEAgUGVyZm9ybWFuY2VUaW1pbmcqIFBlcmZvcm1hbmNlOjp0aW1pbmcoKSBj
b25zdAogICAgIHJldHVybiBtX3RpbWluZy5nZXQoKTsKIH0KIAotI2lmIEVOQUJMRShQRVJGT1JN
QU5DRV9USU1FTElORSkKLVBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1h
bmNlOjp3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3QKK1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlz
dD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXMoKSBjb25zdAogewogICAgIFJlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsK
IAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgZW50cmllcy0+YXBwZW5kQWxsKG1f
cmVzb3VyY2VUaW1pbmdCdWZmZXIpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcp
CiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAt
MTExLDE2ICsxMDQsMTQgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9y
bWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAogICAgIHJldHVybiBlbnRyaWVzOwogfQog
Ci1QYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0
RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSkKK1JlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBl
bnRyeVR5cGUpCiB7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBlbnRyaWVzID0g
UGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJ
TUlORykKICAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoZW50cnlUeXBlLCAi
cmVzb3VyY2UiKSkgewogICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNvdXJjZVRp
bWluZ0J1ZmZlcikKICAgICAgICAgICAgIGVudHJpZXMtPmFwcGVuZChyZXNvdXJjZSk7CiAgICAg
fQotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWlu
ZykgewpAQCAtMTM1LDE4ICsxMjYsMTYgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlz
dD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW4KICAgICBy
ZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVy
Zm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25z
dCBTdHJpbmcmIGVudHJ5VHlwZSkKK1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9y
bWFuY2U6OmdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcm
IGVudHJ5VHlwZSkKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMg
PSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQogICAgIGlmIChlbnRyeVR5cGUuaXNOdWxsKCkgfHwgZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UoZW50cnlUeXBlLCAicmVzb3VyY2UiKSkgewogICAgICAgICBmb3IgKGF1dG8m
IHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAgICAgaWYgKHJl
c291cmNlLT5uYW1lKCkgPT0gbmFtZSkKICAgICAgICAgICAgICAgICBlbnRyaWVzLT5hcHBlbmQo
cmVzb3VyY2UpOwogICAgICAgICB9CiAgICAgfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9U
SU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTYxLDIwICsxNTAsMTYgQEAgUGFz
c1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJp
ZXNCeU5hbWUoY29uc3QgU3RyaW4KICAgICByZXR1cm4gZW50cmllczsKIH0KIAotI2VuZGlmIC8v
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLQotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1J
TkcpCi0KLXZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCkKK3Zv
aWQgUGVyZm9ybWFuY2U6OmNsZWFyUmVzb3VyY2VUaW1pbmdzKCkKIHsKICAgICBtX3Jlc291cmNl
VGltaW5nQnVmZmVyLmNsZWFyKCk7CiB9CiAKLXZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdFNldFJl
c291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBzaXplKQordm9pZCBQZXJmb3JtYW5jZTo6
c2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIHNpemUpCiB7CiAgICAgbV9yZXNv
dXJjZVRpbWluZ0J1ZmZlclNpemUgPSBzaXplOwogICAgIGlmIChpc1Jlc291cmNlVGltaW5nQnVm
ZmVyRnVsbCgpKQotICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1l
cygpLndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsK
KyAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZXNvdXJj
ZXRpbWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKIHZvaWQgUGVyZm9y
bWFuY2U6OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9j
dW1lbnQqIGluaXRpYXRvckRvY3VtZW50LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBkb3VibGUgaW5pdGlhdGlvblRpbWUs
IGRvdWJsZSBmaW5pc2hUaW1lKQpAQCAtMTg3LDcgKzE3Miw3IEBAIHZvaWQgUGVyZm9ybWFuY2U6
OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQq
IGluaXRpCiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5hcHBlbmQoZW50cnkpOwogCiAgICAg
aWYgKGlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkpCi0gICAgICAgIGRpc3BhdGNoRXZlbnQo
RXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkud2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxs
RXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLnJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFs
c2UpKTsKIH0KIAogYm9vbCBQZXJmb3JtYW5jZTo6aXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwo
KQpAQCAtMTk1LDggKzE4MCw2IEBAIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3VyY2VUaW1pbmdC
dWZmZXJGdWxsKCkKICAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5zaXplKCkgPj0g
bV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQotCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogdm9pZCBQZXJmb3JtYW5jZTo6
d2Via2l0TWFyayhjb25zdCBTdHJpbmcmIG1hcmtOYW1lLCBFeGNlcHRpb25Db2RlJiBlYykKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5M2Y0NDA2NDRiYjc2M2ZhN2RjOGQxN2U0
ODYyZTMyMzVlOWM3NmY3Li4xNzZjMTUwYzRhOGY0ODczZDhiNzY2NDQ5MzMyNzliMzg4NWQ0MTcz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC00MCw3ICs0MCw2IEBACiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VUaW1pbmcu
aCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0
ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNjQsMTggKzYzLDE0IEBAIHB1
YmxpYzoKICAgICBQZXJmb3JtYW5jZVRpbWluZyogdGltaW5nKCkgY29uc3Q7CiAgICAgZG91Ymxl
IG5vdygpIGNvbnN0OwogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQotICAgIFBh
c3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVudHJpZXMoKSBjb25zdDsK
LSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiB3ZWJraXRHZXRFbnRyaWVzQnlU
eXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiB3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29u
c3QgU3RyaW5nJiBlbnRyeVR5cGUpOwotI2VuZGlmCisgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50
cnlMaXN0PiBnZXRFbnRyaWVzKCkgY29uc3Q7CisgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlM
aXN0PiBnZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKKyAgICBSZWZQ
dHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBu
YW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElN
SU5HKQotICAgIHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKLSAgICB2b2lkIHdl
YmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBpbnQpOworICAgIHZvaWQg
Y2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKKyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nQnVmZmVy
U2l6ZSh1bnNpZ25lZCk7CiAKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmlu
ZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiwgZG91YmxlIGluaXRpYXRpb25UaW1lLCBkb3VibGUgZmluaXNo
VGltZSk7Ci0jZW5kaWYKIAogICAgIHVzaW5nIFJlZkNvdW50ZWQ8UGVyZm9ybWFuY2U+OjpyZWY7
CiAgICAgdXNpbmcgUmVmQ291bnRlZDxQZXJmb3JtYW5jZT46OmRlcmVmOwpAQCAtOTcsMTEgKzky
LDkgQEAgcHJpdmF0ZToKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlTmF2aWdhdGlv
bj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNlVGltaW5nPiBt
X3RpbWluZzsKLSAgICAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorCiAgICAgVmVjdG9y
PFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcjsKICAgICB1
bnNpZ25lZCBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZTsKLSNlbmRpZgogCiAgICAgZG91Ymxl
IG1fcmVmZXJlbmNlVGltZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAppbmRleCA5
YjBhOGI3NzAwMGMyOGU0MDUyOTgyMmVjZTM1MjY5MGFlY2RlNmY2Li45NDg5NjkwYjM1NjE1MmY2
ZWQwN2FmNDczODUzZjYzMjMyZjQ1YmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BlcmZvcm1hbmNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlk
bApAQCAtMzYsMTggKzM2LDE1IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFBlcmZvcm1hbmNl
TmF2aWdhdGlvbiBuYXZpZ2F0aW9uOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBQZXJmb3JtYW5j
ZVRpbWluZyB0aW1pbmc7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElO
RSkgJiYgRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FCi0gICAgUGVyZm9ybWFuY2VFbnRyeUxp
c3Qgd2Via2l0R2V0RW50cmllcygpOwotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdl
dEVudHJpZXNCeVR5cGUoRE9NU3RyaW5nIGVudHJ5VHlwZSk7Ci0gICAgUGVyZm9ybWFuY2VFbnRy
eUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9N
U3RyaW5nIGVudHJ5VHlwZSk7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJj
ZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmllcygpOworICAgIFtFbmFibGVk
QXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5TGlzdCBnZXRFbnRyaWVz
QnlUeXBlKERPTVN0cmluZyBlbnRyeVR5cGUpOworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291
cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5TGlzdCBnZXRFbnRyaWVzQnlOYW1lKERPTVN0cmlu
ZyBuYW1lLCBvcHRpb25hbCBET01TdHJpbmcgZW50cnlUeXBlKTsKIAotI2lmIGRlZmluZWQoRU5B
QkxFX1JFU09VUkNFX1RJTUlORykgJiYgRU5BQkxFX1JFU09VUkNFX1RJTUlORwotICAgIHZvaWQg
d2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKLSAgICB2b2lkIHdlYmtpdFNldFJlc291cmNl
VGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBsb25nIG1heFNpemUpOwogCi0gICAgYXR0cmlidXRl
IEV2ZW50SGFuZGxlciBvbndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbDsKLSNlbmRpZgor
ICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSB2b2lkIGNsZWFyUmVzb3VyY2VU
aW1pbmdzKCk7CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIHZvaWQgc2V0
UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGxvbmcgbWF4U2l6ZSk7CisKKyAgICBb
RW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gYXR0cmlidXRlIEV2ZW50SGFuZGxlciBv
bnJlc291cmNldGltaW5nYnVmZmVyZnVsbDsKIAogICAgIC8vIFNlZSBodHRwOi8vd3d3LnczLm9y
Zy9UUi8yMDEyL0NSLXVzZXItdGltaW5nLTIwMTIwNzI2LwogI2lmIGRlZmluZWQoRU5BQkxFX1VT
RVJfVElNSU5HKSAmJiBFTkFCTEVfVVNFUl9USU1JTkcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnkuY3BwCmluZGV4IDMyZGI3Y2ZlNTYzNWNkZjMyYzMwNWVjNGVhYzA5NTAxZTVm
ODNlZTUuLjM3NGUxNDI5MzE4M2Y5NzNmYWE3ODQxODFkZmQ1OWUyMzA5NWI1YWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcApAQCAtMzEsNyArMzEsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKIAotI2lmIEVO
QUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5B
QkxFKFdFQl9USU1JTkcpCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNjksNCArNjksNCBA
QCBkb3VibGUgUGVyZm9ybWFuY2VFbnRyeTo6ZHVyYXRpb24oKSBjb25zdAogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBF
UkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAppbmRleCAxMjlhMjQ2NDBjYzRkMmEzNWNhZWFi
NmJhMmYxYWZjODE4NGYzNjJiLi5jZjM3YzBlNTY5ZGQ3NGYyYTUwY2Y5Y2YyZDJhOWYwNGQ2ZDVj
OTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaApAQCAtMzIsNyArMzIs
NyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZUVudHJ5X2gKICNkZWZpbmUgUGVyZm9ybWFuY2VFbnRy
eV9oCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVM
SU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIK
ICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgpAQCAtNzEsNSArNzEsNSBAQCBwcml2YXRlOgog
CiB9CiAKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5D
RV9USU1FTElORSkKKyNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpCiAjZW5kaWYgLy8gIWRl
ZmluZWQoUGVyZm9ybWFuY2VFbnRyeV9oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5pZGwKaW5kZXggOWJjYWY0YzM0MDE4OTg1NWEyYjY0ZDZmMDViMjk4Y2NjMWY3MjNlNi4u
ZjM3ZTJhM2NiYTQzMjQxM2EwYWY3YmJjNDZhOGQ1ZjE0NGJmYWYyMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCkBAIC0zMSw3ICszMSw3IEBACiAvLyBTZWU6IGh0
dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9yYXctZmlsZS90aXAvc3BlY3MvUGVyZm9ybWFu
Y2VUaW1lbGluZS9PdmVydmlldy5odG1sCiBbCiAgICAgQ29uZGl0aW9uYWw9V0VCX1RJTUlORywK
LSAgICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwKKyAgICBFbmFibGVkQXRSdW50
aW1lPVJlc291cmNlVGltaW5nLAogICAgIEN1c3RvbVRvSlNPYmplY3QsCiBdIGludGVyZmFjZSBQ
ZXJmb3JtYW5jZUVudHJ5IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwCmluZGV4IGQ5
ZmEwNTU3N2RkNTc5ZTljYTgyNzRkZDc4YjRhY2UzNGJjNzkyOGIuLmMwMzU5MjhiMzFjNmRlOWQ2
MWQ4NjMxMTYzMWQzMzU2ZmMzYjgyNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VFbnRyeUxpc3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCIKIAotI2lmIEVOQUJMRShXRUJfVElN
SU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1J
TkcpCiAKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAKQEAgLTc1LDQgKzc1LDQgQEAg
dm9pZCBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6c29ydCgpCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAotI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0Vf
VElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKaW5kZXggOTdhMjEyZGQ2ZmQwNTQ0NzY2ZWQ3NTYz
YzE3NTZiOTEzNmQ3ZmVkNi4uZDJjNDFmNWFkNDdmMThhYjExMzBkM2MwNTVhZTM1MTEwMmIwYzc5
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaApAQCAtMzIs
NyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZUVudHJ5TGlzdF9oCiAjZGVmaW5lIFBlcmZv
cm1hbmNlRW50cnlMaXN0X2gKIAotI2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVS
Rk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKICNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC02NCw1ICs2
NCw1IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vICFF
TkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlm
IC8vICFFTkFCTEUoV0VCX1RJTUlORykKICNlbmRpZiAvLyBQZXJmb3JtYW5jZUVudHJ5TGlzdF9o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsCmluZGV4IDdl
MjVhODVjZTZjODkzODRlZmU1NTJmODM3NjkyNTkzNTgwMjg4ZjkuLjE4MDY2Y2MzN2U1NzNmMjBl
MWE5MDVjMzg4YjAyMTgxOGViNzkzNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VFbnRyeUxpc3QuaWRsCkBAIC0zMiwxMCArMzIsOSBAQAogWwogICAgIE5vSW50ZXJmYWNl
T2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVdFQl9USU1JTkcsCi0gICAgQ29uZGl0aW9uYWw9UEVS
Rk9STUFOQ0VfVElNRUxJTkUsCisgICAgRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZywK
ICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VF
bnRyeUxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsK
ICAgICBnZXR0ZXIgUGVyZm9ybWFuY2VFbnRyeSBpdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwog
fTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5jcHAKaW5kZXggMzFiODk3MTM3ZjUxMWU0NWY3NzU3ZTk1NmMyNmYzNzU4N2FiNmE2MC4uNWJi
NjE0MDk3MTk4ZmY1NjIxYzUxYzg2OTZhNmQyNzkyZDBmMDYxMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCkBAIC0zMiw4ICszMiw2
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VSZXNvdXJjZVRp
bWluZy5oIgogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2luY2x1ZGUgIkRvY3Vt
ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkVGltaW5nLmgiCiAjaW5jbHVkZSAiRG9jdW1l
bnRMb2FkZXIuaCIKQEAgLTE5OSw1ICsxOTcsMyBAQCBkb3VibGUgUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZzo6cmVzb3VyY2VUaW1lVG9Eb2N1bWVudE1pbGxpc2Vjb25kcyhpbnQgZGVsdGFNaQog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1p
bmcuaAppbmRleCA5OWRmYzViY2RjZGM3OWUzNTNlOTQ5MzZjNDgyODUzNjE3YzVmNTNmLi4zN2I1
YWU5MWVkZjA3NWFmNDliMjA1Nzk5NTQzOGRkOGVmNmFhNGZmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaApAQCAtMzIsOCArMzIsNiBAQAog
I2lmbmRlZiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nX2gKICNkZWZpbmUgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZ19oCiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZFRpbWluZy5oIgog
I2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CkBAIC04NSw2ICs4Myw0IEBAIHByaXZhdGU6CiAK
IH0KIAotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0KICNlbmRpZiAvLyAhZGVm
aW5lZChQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nX2gpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAppbmRleCAzZjAxMWIyM2IwNTdhMWFl
MGU2MzRlZjE5NDNiMTAxZmNlNjg2NmQzLi4zZjMwOWUzYmEyZGI2NGI0NDk1ZWFlNjE4MDgyMjk5
ZTliNjJkNDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5pZGwKQEAgLTMwLDcgKzMwLDcgQEAKIAogLy8gU2VlOiBodHRwczovL2R2Y3Mu
dzMub3JnL2hnL3dlYnBlcmYvcmF3LWZpbGUvdGlwL3NwZWNzL1Jlc291cmNlVGltaW5nL092ZXJ2
aWV3Lmh0bWwKIFsKLSAgICBDb25kaXRpb25hbD1SRVNPVVJDRV9USU1JTkcsCisgICAgRW5hYmxl
ZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZwogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZyA6IFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01T
dHJpbmcgaW5pdGlhdG9yVHlwZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmlu
ZGV4IGQ0NWFjY2Q1ZjBiY2UwNjcxN2VmZWM4YTliMDI2Y2FjODYyMmZiYTkuLmM5YjQ2YzMzMTc0
OTU1YWUwMjRlYmMwMDY5ZDQ3NmZkYWUxMGM2YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAKQEAgLTMzMTgsNCArMzMxOCw5IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRMaW5rUHJl
bG9hZFN1cHBvcnQoYm9vbCBlbmFibGUpCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hh
cmVkRmVhdHVyZXMoKS5zZXRMaW5rUHJlbG9hZEVuYWJsZWQoZW5hYmxlKTsKIH0KIAordm9pZCBJ
bnRlcm5hbHM6OnNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sIGVuYWJsZSkKK3sKKyAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFJlc291cmNlVGltaW5n
RW5hYmxlZChlbmFibGUpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRl
eCBmM2FmZjJmZjk3MTg3Yzk5ZWFlMmFlOWQ5NzJlNTdmMzc0NDczNjE0Li5jMDcxYTQxNTE2YzEx
OTFkMGM1MmQxOGYyZTU0NWI5Y2YzMTZkZjE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmgKQEAgLTQ2OCw2ICs0NjgsNyBAQCBwdWJsaWM6CiAgICAgCiAgICAgdm9pZCBzZXRWaWV3cG9y
dEZvcmNlQWx3YXlzVXNlclNjYWxhYmxlKGJvb2wpOwogICAgIHZvaWQgc2V0TGlua1ByZWxvYWRT
dXBwb3J0KGJvb2wpOworICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2wpOwog
CiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhEb2N1bWVudCYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IDMyYWRiMWMwMTNhYWU4NzQwNDFkNGExNzU2ZDA1
ZTAzNDAyNzdlNGQuLjI2NzdmNzVlODhjM2JiZGFjZDk1ZjU5NmE3NzI3MjhkNmNjZjVjNGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTQ0Niw0ICs0NDYsNSBAQCBlbnVt
IEF1dG9GaWxsQnV0dG9uVHlwZSB7CiAKICAgICB2b2lkIHNldFZpZXdwb3J0Rm9yY2VBbHdheXNV
c2VyU2NhbGFibGUoYm9vbGVhbiBzY2FsYWJsZSk7CiAgICAgdm9pZCBzZXRMaW5rUHJlbG9hZFN1
cHBvcnQoYm9vbGVhbiBzY2FsYWJsZSk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ1N1cHBv
cnQoYm9vbGVhbiBzY2FsYWJsZSk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktp
dEZlYXR1cmVzLmNtYWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4
IDkzMDRiNWFlZDI4MjZhOTE2MTE0ZGVmZGM5YmY1OWZiMGQ1NmI3MDAuLjc2OGUzZTU5ZDdlMTlh
YWFhMDRmMDIyMTc4MzVjZTk2OTY3YzA5MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJL
aXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UK
QEAgLTE1OCw3ICsxNTgsNiBAQCBtYWNybyhXRUJLSVRfT1BUSU9OX0JFR0lOKQogICAgIFdFQktJ
VF9PUFRJT05fREVGSU5FKEVOQUJMRV9OT1RJRklDQVRJT05TICJUb2dnbGUgRGVza3RvcCBOb3Rp
ZmljYXRpb25zIFN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5F
KEVOQUJMRV9PUklFTlRBVElPTl9FVkVOVFMgIlRvZ2dsZSBPcmllbnRhdGlvbiBFdmVudHMgc3Vw
cG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BERktJ
VF9QTFVHSU4gIlRvZ2dsZSBQREZLaXQgcGx1Z2luIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQotICAg
IFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElORSAiVG9nZ2xl
IFBlcmZvcm1hbmNlIFRpbWVsaW5lIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9P
UFRJT05fREVGSU5FKEVOQUJMRV9QT0lOVEVSX0xPQ0sgIlRvZ2dsZSBwb2ludGVyIGxvY2sgc3Vw
cG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BST1hJ
TUlUWV9FVkVOVFMgIlRvZ2dsZSBQcm94aW1pdHkgRXZlbnRzIHN1cHBvcnQiIFBSSVZBVEUgT0ZG
KQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QgIlRv
Z2dsZSBwdWJsaWMgc3VmZml4IGxpc3Qgc3VwcG9ydCIgUFJJVkFURSBPRkYpCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDcw
NGZlMDRkMTc3ZjQ1M2FjNzc1NTUzMjMyMTMxYjlmZTA2YjZiMy4uY2Q2ZjZkZDI0ZGQ3M2Q0ZjFk
MThlMWEyNjBmZTdhMjFmYTVmZWFkNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE2LTA0LTI4
ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1p
bmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlz
dGVuc2VuLgorCisgICAgICAgIEFkZGVkIHRlc3RzIHRoYXQgbWFrZSBzdXJlIFJlc291cmNlVGlt
aW5nIEFQSXMgYXJlIGV4cG9zZWQgYW5kIHRoYXQgcmVzb3VyY2VzCisgICAgICAgIHNob3cgdXAg
YXMgZW50cmllcyBpbiB0aGUgcGVyZm9ybWFuY2UgdGltZWxpbmUuCisKKyAgICAgICAgKiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1w
cm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbDog
UmVtb3ZlZCAiLy87Ii4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1h
bmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50
cmllcy5odG1sOiBBZGRlZC4KKwogMjAxNi0wNC0yOCAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFk
QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgaW9zLXNpbXVsYXRvciBiYXNlbGluZSBmb3IgZmFz
dC9mb3Jtcy9zZWxlY3Qtbm9uLW5hdGl2ZS1yZW5kZXJpbmctZGlyZWN0aW9uLmh0bWwKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJm
b3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2ZiOTE1NGU5YjNiNDQyNzE4MmY3NmM0ZmJlZTI3ZTU4
MzI2ZTIzYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNDYgQEAKK1RoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMg
dGhhdCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3QsIGFs
b25nIHdpdGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5wZXJmb3JtYW5jZSBbb2JqZWN0IFBlcmZv
cm1hbmNlXQord2luZG93LnBlcmZvcm1hbmNlLmFkZEV2ZW50TGlzdGVuZXIgW2Z1bmN0aW9uXQor
d2luZG93LnBlcmZvcm1hbmNlLmNsZWFyUmVzb3VyY2VUaW1pbmdzIFtmdW5jdGlvbl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS5kaXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlO
YW1lIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlIFtmdW5j
dGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtvYmplY3QgUGVyZm9ybWFuY2VO
YXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9CQUNLX0ZPUldB
UkQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfTkFWSUdBVEUg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVMT0FEIFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX1JFU0VSVkVEIFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5yZWRpcmVjdENvdW50IFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlIFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2Uubm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5vbnJlc291cmNldGltaW5n
YnVmZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJmb3JtYW5jZS5yZW1vdmVFdmVudExpc3RlbmVy
IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5zZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNp
emUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZyBbb2JqZWN0IFBlcmZvcm1h
bmNlVGltaW5nXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25uZWN0RW5kIFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmNvbm5lY3RTdGFydCBbbnVtYmVyXQord2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZy5kb21Db21wbGV0ZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1h
bmNlLnRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tSW50ZXJhY3RpdmUgW251bWJlcl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS50aW1pbmcuZG9tTG9hZGluZyBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZy5kb21haW5Mb29rdXBFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcu
ZG9tYWluTG9va3VwU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZmV0
Y2hTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5sb2FkRXZlbnRFbmQg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubG9hZEV2ZW50U3RhcnQgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0IFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0RW5kIFtudW1iZXJdCit3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcucmVxdWVzdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5n
LnJlc3BvbnNlRW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNl
U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuc2VjdXJlQ29ubmVjdGlv
blN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50RW5k
IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50U3RhcnQgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtwcmlu
dGVkIGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uXQord2luZG93LnBlcmZv
cm1hbmNlIFtzdHJpbmddCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1y
ZXNvdXJjZS10aW1pbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNWU4MmM2YTRiMmJiZThjNWE3Yzg5ZDVh
YTNkNGUwNDEyNzgxMjYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1s
CkBAIC0wLDAgKzEsMTA0IEBACis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0
aWVzIHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0
LCBhbG9uZyB3aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+PC9wcmU+
CisKKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNv
dXJjZVRpbWluZ1N1cHBvcnQodHJ1ZSk7CisgICAgCit2YXIgbG9nQnVmZmVyID0gW107CitmdW5j
dGlvbiBsb2cocykKK3sKKyAgICBsb2dCdWZmZXIucHVzaChzKTsKK30KKwordmFyIHByZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcmUnKTsKK2Z1bmN0aW9uIGZsdXNoTG9nKCkKK3sKKyAg
ICB2YXIgbG9nTWVzc2FnZSA9IGxvZ0J1ZmZlci5qb2luKCIiKTsKKyAgICBwcmUuYXBwZW5kQ2hp
bGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobG9nTWVzc2FnZSkpOworfQorCitmdW5jdGlvbiB0
cnlFdmFsKHN0cmluZykKK3sKKyAgICB0cnkgeworICAgICAgICByZXR1cm4gZXZhbChzdHJpbmcp
OworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgcmV0dXJuIG5ldyBTdHJpbmcoIkNhdWdodCBl
eGNlcHRpb246ICIgKyBlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIHR5cGVPZk51bGxBd2FyZSh2
YWx1ZSkKK3sKKyAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3QiICYmIHZhbHVlID09IG51
bGwpCisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKK30K
KworZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIgdmFsdWVU
eXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBlID09ICJv
YmplY3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKQor
ICAgICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9nVmFsdWUo
dmFsdWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsKKyAgICB2
YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERvbid0IHRh
aW50IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUgPT0gbG9n
QnVmZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG9uJ3Qg
dGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19fdmlzaXRl
ZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRlZEJ5TG9n
VmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBXb3Jr
IGFyb3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05XS8udGVz
dCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZpbml0ZSBy
ZWN1cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRl
ZEJ5TG9nVmFsdWVfXykgeworICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRlZCBhYm92
ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2codmFsdWVOYW1lICsgIiAiICsgdHlwZVN0
cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9i
amVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAg
ICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB2YWx1ZU5hbWU7Cisg
ICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVlTmFtZSk7CisgICAgfQorfQorCitmdW5j
dGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkg
PSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KSB7CisgICAgICAg
IGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAgICBhcnJheS5zb3J0KCk7CisgICAgZm9y
ICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgeworICAgICAgICB2YXIgcHJvcGVy
dHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUob2JqZWN0TmFtZSArICIuIiArIHByb3Bl
cnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UnKTsKK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcgPSAndGltaW5nIGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dW
YWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZycpOword2luZG93LnBlcmZvcm1hbmNlLm5h
dmlnYXRpb24gPSAnbmF2aWdhdGlvbiBpcyBub3QgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dp
bmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UgPSAncGVy
Zm9ybWFuY2UgaXMgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScp
OworZmx1c2hMb2coKTsKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRS
ZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3Jt
YW5jZS5odG1sCmluZGV4IDBhOGY4MWVmMTI1ODg4MjVkNWQxNmQ1YTlkMmRkYmU3NmI4NjkzMGQu
LjFiMTJlMTdjYWYwODE2OGZjM2I5ZjhjZGJjZGJlMWNjMWQ3ZjBjMzYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1w
ZXJmb3JtYW5jZS5odG1sCkBAIC0zMCw3ICszMCw3IEBAIGZ1bmN0aW9uIHRyeUV2YWwoc3RyaW5n
KQogCiBmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpCiB7Ci0gICAgaWYgKHR5cGVvZiB2
YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxsKSAvLzsKKyAgICBpZiAodHlwZW9mIHZh
bHVlID09ICJvYmplY3QiICYmIHZhbHVlID09IG51bGwpCiAgICAgICAgIHJldHVybiAibnVsbCI7
CiAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKIH0KQEAgLTYxLDcgKzYxLDcgQEAgZnVuY3Rpb24g
bG9nVmFsdWUodmFsdWVOYW1lKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBBdm9pZCBpbmZp
bml0ZSByZWN1cnNpb24KLSAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9f
dmlzaXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3Qi
ICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykgewogICAgICAgICBsb2codmFsdWVOYW1l
ICsgIiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1Zh
bHVlX18gKyAiXVxuIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWlu
Zy1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFu
Y2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjczZDE3YmY5NzBjNTY0NDFmNWE4MzIwOGQwMDkzNjUzM2E2N2FmNDAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNl
LXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorUEFTUyBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScpLmxlbmd0aCBpcyAyCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVz
b3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9y
bWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42ZWVjYmEyOTU3YzhlZTU5ZmE5NjVjMWI1Zjc0NTg1Y2U0YWM1YTY4Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmctZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjMgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgICBp
bnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KHRydWUpOworPC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHNwYW4gaWQ9ImUiPjwvc3Bhbj4KKzxzcGFuIGlkPSJmIj48L3NwYW4+Cis8
c2NyaXB0Pgord2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAg
ICBzaG91bGRCZSgicGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgncmVzb3VyY2UnKS5sZW5n
dGgiLCAiMiIpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICB3aW5kb3cuaW50
ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydChmYWxzZSk7Cit9KTsKKworPC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5k
ZXggNjk1NjljNGNhYTdlNmUxMTJlZGQzYTNiNDIzYmE5Mzc4M2I4OWFjZS4uMDg4MTA0NzFmMGU2
NTJmZDg2MzYzYmYxZmFjYWExMWJiNzVkM2NmNiAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBi
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9h
dkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGlt
ZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAg
ICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlOiBSZW1vdmUgdGhlIFBFUkZPUk1B
TkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisKIDIwMTYtMDQtMjggIENvbW1pdCBRdWV1ZSAgPGNv
bW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0
IHIyMDAxODUuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277678</attachid>
            <date>2016-04-28 23:38:33 -0700</date>
            <delta_ts>2016-05-01 02:06:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160429083904.patch</filename>
            <type>text/plain</type>
            <size>55039</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMjMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
ZDg1NjhlY2VlMTYyMDA0NzQ4MDY4YmZmNjJjMzY2NzYyODJlMGQwLi42MDEyZDc5NTNmODJjOWQ5
ZWNmYmJlZTBkM2EzZTgyNTkzYzI2OGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNC0yOCAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaDogQWRkZWQgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxp
c3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgYXMgcHJvcGVydHkgbmFtZXMuCisKIDIw
MTYtMDQtMjggIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZW1vdmUgdW51c2VkIGJvb2wgcGFyYW1ldGVyIGluIENvZGVDYWNoZTo6Z2V0R2xvYmFsQ29k
ZUJsb2NrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggZmJlYTEwYjQ1NTUzMzY2Y2JhZWYwMjc5ZTc5MTYwNjZhNGUx
ZWI3My4uYjA1MjNlYzg2N2Y0YzJmMGI4YWE5NjY0MzAwMzE3ZWQ2NmNkZmM3NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDU3IEBACisyMDE2LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2Lndz
PgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAgIE1vdmUgdGhl
IFJlc291cmNlVGltaW5nIEFQSSBmcm9tIGJlaW5nIGJlaGluZCBhIGJ1aWxkIHRpbWUgZmxhZyB0
byBiZSBiZWhpbmQgYW4KKyAgICAgICAgb2ZmLWJ5LWRlZmF1bHQgcnVudGltZSBmbGFnLCB0aGF0
IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcgaW50ZXJuYWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
Lmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2Ut
cmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbAorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMu
bWFrZTogQWRkZWQgaWRsIGZpbGVzIGZvciBQZXJmb3JtYW5jZUVudHJ5LCBQZXJmb3JtYW5jZUVu
dHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZGVkIHRoZSB2YXJpb3VzIFBlcmZvcm1hbmNl
KiBmaWxlcyB0byB0aGUgcHJvamVjdC4KKyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuY3BwOiBBZGRlZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUg
ZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXMpOgorICAgICAgICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJs
ZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAg
ICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFJlc291cmNlVGltaW5n
RW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpyZXNv
dXJjZVRpbWluZ0VuYWJsZWQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VF
bnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQgI2lmIGZvciBSZXNvdXJjZVRpbWluZy4gQWRkZWQgYnVp
bGQgZmxhZyBhcm91bmQgVXNlclRpbWluZyByZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJD
b3JlOjp0b0pTKTogRGVsZXRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5oOiBSZW5hbWVk
IHdlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbCB0byByZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1
bGwuCisgICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6IFJlcGxh
Y2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QpOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJj
ZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9h
ZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGlt
aW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VM
b2FkZXI6OnJldmFsaWRhdGVSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNv
dXJjZUxvYWRlcjo6bG9hZFJlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291
cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24pOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKToKKyAgICAgICAg
KiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaDogUmVtb3ZlICNpZiBmb3IgUmVz
b3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5jcHA6IFJlbW92ZSAjaWYg
Zm9yIFJlc291cmNlVGltaW5nLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OlBlcmZv
cm1hbmNlKTogUmVtb3ZlZCAjaWYgZm9yIFJlc291cmNlVGltaW5nIHJlbGF0ZWQgaW5pdGlhbGl6
YXRpb24uCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcyk6
IFJlbmFtZWQgdG8gZ2V0RW50cmllcy4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3
ZWJraXRHZXRFbnRyaWVzQnlUeXBlKTogUmVuYW1lZCB0byBnZXRFbnRyaWVzQnlUeXBlLgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUpOiBSZW5h
bWVkIHRvIGdldEVudHJpZXNCeU5hbWUuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOiBS
ZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNl
LmlkbDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFO
Q0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnku
aDogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAq
IHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVM
SU5FIGJ1aWxkIGZsYWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5TGlzdC5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQg
ZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0Lmg6IFJlbW92ZSB0aGUg
UEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1h
bmNlRW50cnlMaXN0LmlkbDogUmVwbGFjZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQg
ZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuY3BwOiBSZW1vdmUgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOiBSZW1vdmUgdGhlIFJFU09V
UkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5pZGw6IFJlcGxhY2UgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnIHdpdGgg
cnVudGltZSBmbGFnLgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0
aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OkludGVy
bmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5oOiBBZGQgYSBtZXRob2QgdGhhdCBlbmFibGVzIFJlc291cmNlVGltaW5nLgorICAgICAg
ICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNv
dXJjZVRpbWluZy4KKwogMjAxNi0wNC0yOCAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5j
b20+CiAKICAgICAgICAgUmVtb3ZlIGV4dHJhbmVvdXMgc3BhY2UgY2hhcmFjdGVycyBmcm9tIHBh
cmFtZXRlciBsaXN0IGZvciBSZW5kZXJMaXN0Qm94OjpwYWludEl0ZW0oKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXggYzQ0ZTU4
MmQ3YTI2NmE3NGExNTUxMTg4MzY1ZDMzZTk2NzdlY2VhOC4uZDViMzAzZjE0YzczZTgxZTBlNTQ0
NWIzMjZkMDYzN2Q5OTJhNDk4YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC03MSw2ICs3MSw5IEBACiAgICAgbWFjcm8oTnVt
YmVyKSBcCiAgICAgbWFjcm8oTnVtYmVyRm9ybWF0KSBcCiAgICAgbWFjcm8oT2JqZWN0KSBcCisg
ICAgbWFjcm8oUGVyZm9ybWFuY2VFbnRyeSkgXAorICAgIG1hY3JvKFBlcmZvcm1hbmNlRW50cnlM
aXN0KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykgXAogICAgIG1hY3Jv
KFByb21pc2UpIFwKICAgICBtYWNybyhQcm94eSkgXAogICAgIG1hY3JvKFJhbmdlRXJyb3IpIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDQyMGE3OTA0N2I2ODQxMDhmNjMxNGQ3
OWE5NWE3YzQyODdmMTk5ZjUuLmMzYTEyZTRjNjQ2YTYzOTY3NGViOTc2N2NiMjRlMmNmMWEwNTI5
NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNTE4LDcgKzUxOCwxMCBAQCBO
T05fU1ZHX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvTG9jYXRpb24uaWRs
IFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvTmF2aWdhdG9yLmlkbCBcCiAgICAgJChXZWJDb3JlKS9w
YWdlL1BlcmZvcm1hbmNlLmlkbCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlRW50
cnkuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlkbCBcCisgICAgJChX
ZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvU2Ny
ZWVuLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1dlYktpdFBvaW50LmlkbCBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMGYx
OGUyMmVlOWE2YmZmZjZlOTRlMzIyYjQ0N2ZjMDk1OGNjOWRjMC4uNDVjNGYzOTI1MDVmNTIwMTQ4
ODdiNzg5MjRjNjE2NmZkOTYzODU2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTk5MSw2ICs1OTkxLDE0IEBACiAJCUNBM0JG
NjdFMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8q
IFNjcm9sbEFuaW1hdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJQ0FFOUY5MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFs
dWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FF
OUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovOyB9Owog
CQlDQUU5RjkxMDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FFOUY5MEUxNDY0NDFG
MDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJQ0IzOEZENEIxQ0ND
RjM2NjAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBl
cmZvcm1hbmNlRW50cnkuY3BwICovOyB9OworCQlDQjM4RkQ1MTFDQ0Y5Mzg5MDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENCMzhGRDREMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnkuY3BwICovOyB9OworCQlDQjM4RkQ1MjFDQ0Y5Mzk0MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZUVudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
QjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi87IH07CisJ
CUNCMzhGRDUzMUNDRjkzOUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDRGMUND
RjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLzsgfTsKKwkJQ0Iz
OEZENTQxQ0NGOTM5RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDUwMUNDRjkzN0Uw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi87IH07CisJCUNCMzhGRDU3MUNE
MjFFMkEwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTUxQ0QyMUQ1QjAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgKi87IH07CisJCUNCMzhGRDVBMUNE
MjMyNTgwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTgxQ0QyMzE0NTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi87IH07CisJCUNCMzhG
RDVCMUNEMjMyNUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDU5MUNEMjMx
NDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCAqLzsgfTsKIAkJQ0I4
Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8q
IE1pY3JvdGFza3MuY3BwICovOyB9OwogCQlDQ0MyQjUxNDE1RjYxMzA2MDA0OENERDYgLyogRGV2
aWNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0NDMkI1MTUxNUY2MTMwNjAw
NDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNv
bnRyb2xsZXIuY3BwICovOyB9OwpAQCAtMTM5NTYsNiArMTM5NjQsMTQgQEAKIAkJQ0EzQkY2N0Qx
MEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1
QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNp
dEZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBmaWxlRW5jb2RpbmcgPSA0OyBwYXRoID0g
SlNQZXJmb3JtYW5jZUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Iz
OEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQ
ZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNC
MzhGRDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1NTFDRDIxRDVCMDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNCMzhGRDU4MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0I4Q0YwMTUxQTkzNEI0
MzAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTWljcm90YXNrcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUND
QzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZUNvbnRyb2xsZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTgwNTgsNiArMTgwNzQsNyBAQAogCQkJ
CThBODQ0RDAyMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5oICovLAogCQkJCThBODQ0
RDAzMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5pZGwgKi8sCiAJCQkJODZCRTMzRkIx
NTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaCAqLywKKwkJCQlDQjM4RkQ0QTFD
Q0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8sCiAJCQkJODZCRTMzRkMx
NTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaWRsICovLAogCQkJCTg2QkUzM0ZE
MTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8sCiAJCQkJODZC
RTMzRkUxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCkBAIC0y
MjMxMyw2ICsyMjMzMCw3IEBACiAJCQkJODNGMTIwNkExQjhDMTAzNjAwRDc1RjYzIC8qIEpTTm9k
ZUZpbHRlckN1c3RvbS5jcHAgKi8sCiAJCQkJN0M5MUEzOEQxQjQ5OEFCRTAwM0Y5RUZBIC8qIEpT
Tm9kZU9yU3RyaW5nLmNwcCAqLywKIAkJCQk3QzkxQTM4RTFCNDk4QUJFMDAzRjlFRkEgLyogSlNO
b2RlT3JTdHJpbmcuaCAqLywKKwkJCQlDQjM4RkQ1NTFDRDIxRDVCMDA1OTJBM0YgLyogSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLywKIAkJCQk5M0I3MEQ0RjA5RUIwQzdDMDA5RDg0Njgg
LyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcCAqLywKIAkJCQk5M0I3MEQ1MDA5RUIwQzdD
MDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggKi8sCiAJCQkJNDEyOURGODMx
QkI1QjdGNzAwMzIyQTE2IC8qIEpTUmVhZGFibGVTdHJlYW1Qcml2YXRlQ29uc3RydWN0b3JzLmNw
cCAqLywKQEAgLTIyNjQ5LDggKzIyNjY3LDE0IEBACiAJCQkJQTlEMjQ3RjYwRDc1N0UzMzAwRkRG
OTU5IC8qIEpTTmF2aWdhdG9yLmggKi8sCiAJCQkJRTUxQTgxREUxNzI5OEQ3NzAwQkZDQTYxIC8q
IEpTUGVyZm9ybWFuY2UuY3BwICovLAogCQkJCThBOUE1ODczMTFFODRDODEwMDhBQ0ZEMSAvKiBK
U1BlcmZvcm1hbmNlLmggKi8sCisJCQkJQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VFbnRyeS5jcHAgKi8sCisJCQkJQ0IzOEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCUNCMzhGRDRGMUNDRjkzN0UwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLywKKwkJCQlDQjM4RkQ1MDFDQ0Y5MzdFMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oICovLAogCQkJCThBOUE1ODZFMTFFODRDMzUw
MDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5jcHAgKi8sCiAJCQkJOEE5QTU4NkYx
MUU4NEMzNjAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmggKi8sCisJCQkJQ0Iz
OEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAg
Ki8sCisJCQkJQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5oICovLAogCQkJCTBGNDNDODVFMTg5RTE1QTYwMDAxOUFFMiAvKiBKU1BlcmZvcm1h
bmNlVGltaW5nLmNwcCAqLywKIAkJCQk4QTlBNTg3NzExRTg0Qzk4MDA4QUNGRDEgLyogSlNQZXJm
b3JtYW5jZVRpbWluZy5oICovLAogCQkJCUJDRUMwMUMwMEMyNzREREQwMDlGNEVDOSAvKiBKU1Nj
cmVlbi5jcHAgKi8sCkBAIC0yNTU1Niw2ICsyNTU4MCw3IEBACiAJCQkJMkQyOUVDQ0ExOTJGMUYx
RDAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMkRFNzAwMjMxOTJGRTgyQTAwQjA5NzVDIC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hYy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMkQyOUVDQzgxOTJFQ0M4MzAwOTg0Qjc4IC8qIERpc3BsYXlS
ZWZyZXNoTW9uaXRvck1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNCMzhGRDUyMUNDRjkz
OTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCUNE
NTI0ODFCMThFMjAwRUQwMDA4QTA3RCAvKiBEaXNwbGF5U2xlZXBEaXNhYmxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNUQ4QzREQzAxNDI4MjIyQzAwMjZDRTcyIC8qIERpc3BsYXlTbGVlcERpc2Fi
bGVyQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCUZEMzE2MDkxMTJCMDI2RjcwMEMxQTM1OSAv
KiBEaXN0YW5jZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzY5MSw2ICsyNzcxNiw3IEBACiAJCQkJ
QkNFQTQ4NjgwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclZpZXcuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJFMjA1MDdFMThBNDU4QzIwMDgwNjQ3RSAvKiBSZW5kZXJWVFRDdWUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUE4NzFERkU0MEExNTM3NkIwMEIxMkE2OCAvKiBSZW5kZXJXaWRnZXQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUNCMzhGRDVCMUNEMjMyNUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4OUNDQzUzMEY0NEU5ODEwMEI1
REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
OTMzMDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggaW4g
SGVhZGVycyAqLywKIAkJCQk5OUNDMEI1NDE4QkU5ODQ5MDA2Q0VCQ0MgLyogUmVwbGF5Q29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODAyMCw2ICsyODA0Niw3IEBACiAJCQkJQThFQTgw
MEEwQTE5NTE2RTAwQThFRjVGIC8qIFN0eWxlU2hlZXRMaXN0LmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCQzVFQjVFNTBFODFCRjZEMDBCMjU5NjUgLyogU3R5bGVTdXJyb3VuZERhdGEuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDNUVCODEwMEU4MUYyQ0UwMEIyNTk2NSAvKiBTdHlsZVRyYW5zZm9ybURh
dGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUNCMzhGRDU0MUNDRjkzOUUwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlRW50cnlMaXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQlFNERFQUExODE3QTkzREMz
MDAwRTA0MzAgLyogU3R5bGVUcmVlUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVC
NjlBMEU4MURBNjMwMEIyNTk2NSAvKiBTdHlsZVZpc3VhbERhdGEuaCBpbiBIZWFkZXJzICovLAog
CQkJCUQwMDBFRDI4MTFDMUI5Q0QwMEM0NzcyNiAvKiBTdWJmcmFtZUxvYWRlci5oIGluIEhlYWRl
cnMgKi8sCkBAIC0yOTIwMiw2ICsyOTIyOSw3IEBACiAJCQkJQjI3NTM1NzcwQjA1MzgxNDAwMkNF
NjRGIC8qIENvbG9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDNFREQ2N0UxQjQ4NURCRjAw
NjQwRTc1IC8qIENvbWJpbmVkRmlsdGVyc0FscGhhYmV0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTI2RTk0NEQ4MUFDNEIyREQwMDdCODVCNSAvKiBDb21iaW5lZFVSTEZpbHRlcnMuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJQ0IzOEZENEIxQ0NDRjM2NjAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50
cnkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTU4NEZFMzQxODY0RDVBRjAwODQzQjEwIC8qIENv
bW1hbmRMaW5lQVBJSG9zdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUyQjE4NjM4NzBG
MDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElNb2R1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NjU1MEI2QTEwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBA
IC0zMTIyMCw2ICszMTI0OCw3IEBACiAJCQkJQkM5NkRCNDYwRjNBODgyMjAwNTczQ0IzIC8qIFJl
bmRlckJveE1vZGVsT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDRUE0ODY1MDk3RDkz
MDIwMDk0QzlFNCAvKiBSZW5kZXJCdXR0b24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFNDQx
MzMxMkY3NDhFMjAwOUI4NEI4IC8qIFJlbmRlckNvbWJpbmVUZXh0LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCUNCMzhGRDVBMUNEMjMyNTgwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5MkYxNDQwQUQxODVGRTAwNjkxQkQ0IC8q
IFJlbmRlckNvdW50ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFQTQ4NkQwOTdEOTMwMjAw
OTRDOUU0IC8qIFJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlEMzAyNzU0OTEyQTVGRTg0MDA0QkQ4MjggLyogUmVuZGVyRGV0YWlsc01hcmtlci5jcHAg
aW4gU291cmNlcyAqLywKQEAgLTMxOTk2LDYgKzMyMDI1LDcgQEAKIAkJCQk0NDRENEUyMzBGNzA4
QjJFMDAzMTU4RTAgLyogV2ViQ29yZVVSTFJlc3BvbnNlSU9TLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTNGMTlCMDcwODI0NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmVWaWV3Lm0gaW4gU291cmNlcyAq
LywKIAkJCQlBNUU2MTY3MzE4OTQ1ODFGMDA5QURGNTAgLyogV2ViRGVidWdnZXJBZ2VudC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ1NzFDRDIxRTJBMDA1OTJBM0YgLyogSlNQZXJmb3Jt
YW5jZUVudHJ5Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFMEQ4NEVCMTA0ODQzNkUw
MDFBMTc5RSAvKiBXZWJFdmVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTIyNUExNkI2MEQ1QzEx
RTkwMDA5MDI5NSAvKiBXZWJFdmVudFJlZ2lvbi5tbSBpbiBTb3VyY2VzICovLAogCQkJCUQzRjNE
MzZEMUE2OUI3REMwMDU5RkMyQiAvKiBXZWJHTDJSZW5kZXJpbmdDb250ZXh0LmNwcCBpbiBTb3Vy
Y2VzICovLApAQCAtMzIwNzUsNiArMzIxMDUsNyBAQAogCQkJCUIxMEI2OTgxMTQwQzE3NDAwMEJD
MUMyNiAvKiBXZWJWVFRUb2tlbml6ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0Q4MjAzMTEx
Mzk1QUNFNzAwRjk1NkM2IC8qIFdlYldpbmRvd0FuaW1hdGlvbi5tbSBpbiBTb3VyY2VzICovLAog
CQkJCUY1NUIzRERGMTI1MUYxMkQwMDNFRjI2OSAvKiBXZWVrSW5wdXRUeXBlLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCUNCMzhGRDUxMUNDRjkzODkwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODUwMzFCNTAwQTQ0RUZDNzAwRjk5MkUwIC8qIFdo
ZWVsRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUxOTUxNkIxQjY1OThEMjAwREY2RUVG
IC8qIFdoZWVsRXZlbnREZWx0YUZpbHRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRUVFRTU1
QzFCNjZBMDQ3MDA4RTJDQkMgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyTWFjLm1tIGluIFNvdXJj
ZXMgKi8sCkBAIC0zMjExMiw2ICszMjE0Myw3IEBACiAJCQkJMDBCOTMxODkxM0JBOERCQzAwMzVB
OTQ4IC8qIFhNTERvY3VtZW50UGFyc2VyTGlieG1sMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkw
MEI5MzE4QjEzQkE4REM5MDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJTY29wZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk1OUMyODA0NTEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDUzMUNDRjkzOUIwMDU5MkEzRiAvKiBKU1BlcmZv
cm1hbmNlRW50cnlMaXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDNzcyQzQ2MEM0RUIyQzYw
MDgzMjg1RiAvKiBYTUxIdHRwUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTM2QTAw
QzExMzREQkQyMDBDQzhENTAgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNERkQ0OEYwRTMwNTI5MDAwOUQxMEFEIC8qIFhNTEh0
dHBSZXF1ZXN0VXBsb2FkLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKaW5k
ZXggMmNjNjEyNDEzNzhmNDVkMTJkN2UyOTY4ZjE5MDNkMDBjYzY1ZTk1Zi4uMWI1ZGMxNWQ0YmRm
NTRiMTJhOGQxNmVmODgyYjRkYjFhZGMyY2FlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCkBAIC01
OSw2ICs1OSw3IEBAIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMoKQogI2Vsc2UKICAgICAsIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoZmFsc2UpCiAj
ZW5kaWYKKyAgICAsIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQoZmFsc2UpCiAjaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAgICAgLCBtX2lzSW5kZXhlZERCRW5hYmxlZChmYWxzZSkKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaAppbmRleCAxMWVjZDk1MzNkNGQ4YmVmOThlMWZkZDM1ZjE1Y2U0
ZWQxY2VkMWUxLi40ZDM2ZDY4OTBhMzRkZjliZjRiMDY5ZmNkZjU4Mzc0Mzk5NDA0Zjc0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaApAQCAtMjAxLDYgKzIwMSw5IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFBs
dWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX2lzUGx1Z2luUmVwbGFj
ZW1lbnRFbmFibGVkID0gaXNFbmFibGVkOyB9CiAgICAgYm9vbCBwbHVnaW5SZXBsYWNlbWVudEVu
YWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOyB9CiAK
KyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX2lz
UmVzb3VyY2VUaW1pbmdFbmFibGVkID0gaXNFbmFibGVkOyB9CisgICAgYm9vbCByZXNvdXJjZVRp
bWluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUmVzb3VyY2VUaW1pbmdFbmFibGVkOyB9
CisKICNpZiBFTkFCTEUoR0FNRVBBRCkKICAgICB2b2lkIHNldEdhbWVwYWRzRW5hYmxlZChib29s
IGFyZUVuYWJsZWQpIHsgbV9hcmVHYW1lcGFkc0VuYWJsZWQgPSBhcmVFbmFibGVkOyB9CiAgICAg
Ym9vbCBnYW1lcGFkc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2FyZUdhbWVwYWRzRW5hYmxl
ZDsgfQpAQCAtMjY3LDYgKzI3MCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2lzQ1NTQ29tcG9z
aXRpbmdFbmFibGVkOwogICAgIGJvb2wgbV9pc0xhbmdBdHRyaWJ1dGVBd2FyZUZvcm1Db250cm9s
VUlFbmFibGVkOwogICAgIGJvb2wgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxlZDsKKyAgICBi
b29sIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7CiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKICAgICBib29sIG1faXNJbmRleGVkREJFbmFibGVkOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAKaW5kZXgg
ZWJkZDM3ZjhjNGMyMTdiMzk5MWZlZDMwYzg1NzQ3OTc2MWVkMjMwMy4uOGYxMWU3MDI1N2ZkYzEx
NzU1MWIwN2JmYzhjN2JjMjg4ZGRjYWMwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBAIC0zMCwxMyArMzAs
MTMgQEAKIAogI2luY2x1ZGUgImNvbmZpZy5oIgogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJ
TUVMSU5FKQotCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZUVudHJ5LmgiCiAKICNpbmNsdWRlICJK
U0RPTUJpbmRpbmcuaCIKKyNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAjaW5jbHVkZSAiSlNQZXJm
b3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3VyZS5oIgorI2VuZGlm
CiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJlLmgiCkBAIC01MSwx
MCArNTEsOCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiwgSlNET01HbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgUGVyZm9ybWFuY2VFbnRyeSogZW50cgogICAgIGlmICghZW50cnkpCiAgICAg
ICAgIHJldHVybiBqc051bGwoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAg
aWYgKGVudHJ5LT5pc1Jlc291cmNlKCkpCiAgICAgICAgIHJldHVybiB3cmFwPEpTUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2JqZWN0LCBzdGF0aWNfY2FzdDxQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nKj4oZW50cnkpKTsKLSNlbmRpZgogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5H
KQogICAgIGlmIChlbnRyeS0+aXNNYXJrKCkpCkBAIC02OCw1ICs2NiwzIEBAIEpTVmFsdWUgdG9K
UyhFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5j
ZUVudHJ5KiBlbnRyCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVO
QUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudE5hbWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCmluZGV4IDRj
ZTg2Nzg1MDBkZGNhNTBiNWU1YzgxMGIyZDJkYjAzYjlmYTdiZjQuLmQ1NzQ3MzhmYmI4YzBhYzZj
MjQ0NjFmMDEyOGExZWUzMjlhNmY4NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
dmVudE5hbWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaApAQCAtMTgz
LDYgKzE4Myw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhyZW1vdmV0cmFjaykg
XAogICAgIG1hY3JvKHJlc2V0KSBcCiAgICAgbWFjcm8ocmVzaXplKSBcCisgICAgbWFjcm8ocmVz
b3VyY2V0aW1pbmdidWZmZXJmdWxsKSBcCiAgICAgbWFjcm8ocmVzdWx0KSBcCiAgICAgbWFjcm8o
cmVzdW1lKSBcCiAgICAgbWFjcm8oc2Nyb2xsKSBcCkBAIC0yNjEsNyArMjYyLDYgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIG1hY3JvKHdlYmtpdHByZXNlbnRhdGlvbm1vZGVjaGFuZ2VkKSBc
CiAgICAgbWFjcm8od2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSkgXAogICAgIG1hY3JvKHdlYmtp
dHJlbW92ZXNvdXJjZWJ1ZmZlcikgXAotICAgIG1hY3JvKHdlYmtpdHJlc291cmNldGltaW5nYnVm
ZmVyZnVsbCkgXAogICAgIG1hY3JvKHdlYmtpdHNvdXJjZWNsb3NlKSBcCiAgICAgbWFjcm8od2Vi
a2l0c291cmNlZW5kZWQpIFwKICAgICBtYWNybyh3ZWJraXRzb3VyY2VvcGVuKSBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4
IGNkYzQ1OWYyYmZhOGExYmU2MmFmZWUzM2M0YjBiZTc3MWNiNjFhMWQuLjVmNWVmZDg0MThhMzdl
YTAyZGZhYjYzNTNiMDI1YThhNjA2ZmFiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5j
bHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2lu
Y2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCIKICNpbmNsdWRlICJTY2hlbWVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3Jp
Z2luLmgiCiAjaW5jbHVkZSAiU3VicmVzb3VyY2VMb2FkZXIuaCIKQEAgLTM4NSw5ICszODYsOCBA
QCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBTZWN1cgogICAgICAgICB9CiAKICAgICAgICAgQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0IG5ld1JlcXVlc3QocmVxdWVzdCwgb3B0aW9ucyk7Ci0jaWYgRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKLSAgICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25z
LmluaXRpYXRvcik7Ci0jZW5kaWYKKyAgICAgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgICAgICBu
ZXdSZXF1ZXN0LnNldEluaXRpYXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKICAgICAgICAgQVNT
RVJUKCFtX3Jlc291cmNlKTsKICAgICAgICAgbV9yZXNvdXJjZSA9IG1fZG9jdW1lbnQuY2FjaGVk
UmVzb3VyY2VMb2FkZXIoKS5yZXF1ZXN0UmF3UmVzb3VyY2UobmV3UmVxdWVzdCk7CiAgICAgICAg
IGlmIChtX3Jlc291cmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZE5vdGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRO
b3RpZmllci5jcHAKaW5kZXggZDM5ZmQyN2RjNTY2YzBmZTI0ZDEwYzYwMTRjNWJlZGVkM2U0ZmNi
OS4uZTU0NjdmZDExMTA4ZTIxMDllMWQyZjlkOWQ1NmI1YzNlODZkMTMxNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCkBAIC0zOSw2ICszOSw3
IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2lu
Y2x1ZGUgIlJlc291cmNlTG9hZGVyLmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5oIgogCiAjaWYgVVNFKFFVSUNLX0xPT0spCiAjaW5jbHVkZSAiUXVpY2tMb29rLmgiCkBAIC0x
NDYsOSArMTQ3LDggQEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICBpZiAobG9hZGVyICYm
ICFyZXF1ZXN0LmlzTnVsbCgpICYmIHJlcXVlc3QudXJsKCkgPT0gbG9hZGVyLT51cmwoKSkKICAg
ICAgICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5nKHRydWUpOwogCi0jaWYgRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKLSAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7Ci0j
ZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5y
ZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGlt
aW5nKHRydWUpOwogfQogCiB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJl
Y2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHIsIFJlc291cmNlTG9hZGVyKiByZXNvdXJj
ZUxvYWRlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwCmluZGV4IGMwYTk5YTNkZTk3ODk0NWZkNjQ5ZGMyZDZlYTc4ZGI2Nzg3
MTMwMWQuLjNkYjkwMDdmMWY4Mzc4NmI2ZmQ3YjM0MWEwYTY0MDk2YmIzZTE3MDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNw
cApAQCAtNTcsMTAgKzU3LDEyIEBACiAjaW5jbHVkZSAiTWFpbkZyYW1lLmgiCiAjaW5jbHVkZSAi
TWVtb3J5Q2FjaGUuaCIKICNpbmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2Uu
aCIKICNpbmNsdWRlICJQaW5nTG9hZGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVz
LmgiCiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZElu
Zm8uaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2Ny
aXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAi
U2Vzc2lvbklELmgiCkBAIC03NSwxMCArNzcsNiBAQAogI2luY2x1ZGUgIkNhY2hlZFRleHRUcmFj
ay5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotI2luY2x1ZGUgIlBl
cmZvcm1hbmNlLmgiCi0jZW5kaWYKLQogI2RlZmluZSBQUkVMT0FEX0RFQlVHIDAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewpAQCAtNjcxLDExICs2NjksOCBAQCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxD
YWNoZWRSZXNvdXJjZT4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJldmFsaWRhdGVSZXNvdXJjZShj
bwogICAgIAogICAgIG1lbW9yeUNhY2hlLnJlbW92ZSgqcmVzb3VyY2UpOwogICAgIG1lbW9yeUNh
Y2hlLmFkZCgqbmV3UmVzb3VyY2UpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAg
c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0
KTsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHJlcXVlc3QpOwotI2VuZGlmCisgICAgaWYgKFJ1
bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFi
bGVkKCkpCisgICAgICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihy
ZXNvdXJjZSwgcmVxdWVzdCk7CiAgICAgcmV0dXJuIG5ld1Jlc291cmNlOwogfQogCkBAIC02OTAs
MTUgKzY4NSwxNCBAQCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gQ2FjaGVk
UmVzb3VyY2VMb2FkZXI6OmxvYWRSZXNvdXJjZShDYWNoZWRSZQogCiAgICAgaWYgKHJlcXVlc3Qu
YWxsb3dzQ2FjaGluZygpICYmICFtZW1vcnlDYWNoZS5hZGQoKnJlc291cmNlKSkKICAgICAgICAg
cmVzb3VyY2UtPnNldE93bmluZ0NhY2hlZFJlc291cmNlTG9hZGVyKHRoaXMpOwotI2lmIEVOQUJM
RShSRVNPVVJDRV9USU1JTkcpCi0gICAgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9y
bWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAg
ICAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJl
cXVlc3QpOwogICAgIHJldHVybiByZXNvdXJjZTsKIH0KIAotI2lmIEVOQUJMRShSRVNPVVJDRV9U
SU1JTkcpCiB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5p
dGlhdG9ySW5mb3JtYXRpb24oY29uc3QgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3Vy
Y2U+JiByZXNvdXJjZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewor
ICAgIEFTU0VSVChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291
cmNlVGltaW5nRW5hYmxlZCgpKTsKICAgICBpZiAocmVzb3VyY2UtPnR5cGUoKSA9PSBDYWNoZWRS
ZXNvdXJjZTo6TWFpblJlc291cmNlKSB7CiAgICAgICAgIC8vIDxpZnJhbWU+cyBzaG91bGQgcmVw
b3J0IHRoZSBpbml0aWFsIG5hdmlnYXRpb24gcmVxdWVzdGVkIGJ5IHRoZSBwYXJlbnQgZG9jdW1l
bnQsIGJ1dCBub3Qgc3Vic2VxdWVudCBuYXZpZ2F0aW9ucy4KICAgICAgICAgaWYgKGZyYW1lKCkt
Pm93bmVyRWxlbWVudCgpICYmIG1fZG9jdW1lbnRMb2FkZXItPmZyYW1lTG9hZGVyKCktPnN0YXRl
TWFjaGluZSgpLmNvbW1pdHRpbmdGaXJzdFJlYWxMb2FkKCkpIHsKQEAgLTcxMCw3ICs3MDQsNiBA
QCB2b2lkIENhY2hlZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9y
SW5mb3JtYXRpb24oY29uc3QgQ2FjaGVkUgogICAgICAgICBtX2luaXRpYXRvck1hcC5hZGQocmVz
b3VyY2UuZ2V0KCksIGluZm8pOwogICAgIH0KIH0KLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQogCiBzdGF0aWMgdm9pZCBsb2dSZXZhbGlkYXRpb24oY29uc3QgU3RyaW5nJiByZWFz
b24sIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50JiBsb2dDbGllbnQpCiB7CkBAIC05NzYsOCArOTY5
LDkgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2Uq
IHJlc291cmNlLCBib29sIHNob3VsZFBlcmZvcm0KICAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+
IHByb3RlY3REb2N1bWVudExvYWRlcihtX2RvY3VtZW50TG9hZGVyKTsKICAgICBSZWZQdHI8RG9j
dW1lbnQ+IHByb3RlY3REb2N1bWVudChtX2RvY3VtZW50KTsKIAotI2lmIEVOQUJMRShSRVNPVVJD
RV9USU1JTkcpCi0gICAgaWYgKHJlc291cmNlICYmIHJlc291cmNlLT5yZXNwb25zZSgpLmlzSFRU
UCgpICYmICgoIXJlc291cmNlLT5lcnJvck9jY3VycmVkKCkgJiYgIXJlc291cmNlLT53YXNDYW5j
ZWxlZCgpKSB8fCByZXNvdXJjZS0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkp
IHsKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNv
dXJjZVRpbWluZ0VuYWJsZWQoKQorICAgICAgICAmJiByZXNvdXJjZSAmJiByZXNvdXJjZS0+cmVz
cG9uc2UoKS5pc0hUVFAoKQorICAgICAgICAmJiAoKCFyZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgp
ICYmICFyZXNvdXJjZS0+d2FzQ2FuY2VsZWQoKSkgfHwgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaHR0
cFN0YXR1c0NvZGUoKSA9PSAzMDQpKSB7CiAgICAgICAgIEhhc2hNYXA8Q2FjaGVkUmVzb3VyY2Uq
LCBJbml0aWF0b3JJbmZvPjo6aXRlcmF0b3IgaW5pdGlhdG9ySXQgPSBtX2luaXRpYXRvck1hcC5m
aW5kKHJlc291cmNlKTsKICAgICAgICAgaWYgKGluaXRpYXRvckl0ICE9IG1faW5pdGlhdG9yTWFw
LmVuZCgpKSB7CiAgICAgICAgICAgICBBU1NFUlQoZG9jdW1lbnQoKSk7CkBAIC05OTAsOSArOTg0
LDYgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2Uq
IHJlc291cmNlLCBib29sIHNob3VsZFBlcmZvcm0KICAgICAgICAgICAgIG1faW5pdGlhdG9yTWFw
LnJlbW92ZShpbml0aWF0b3JJdCk7CiAgICAgICAgIH0KICAgICB9Ci0jZWxzZQotICAgIFVOVVNF
RF9QQVJBTShyZXNvdXJjZSk7Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAog
ICAgIGlmIChmcmFtZSgpKQogICAgICAgICBmcmFtZSgpLT5sb2FkZXIoKS5sb2FkRG9uZSgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9h
ZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIu
aAppbmRleCBiMWY3YzRmYWY1ZGJiMDk2MDFjNTg5MmY1ZDY0NzEzOTQ5YjFmNjBkLi40ZGY4MTk5
NTljZWFiMTEwMzc0YjU1YjQ2MDM5MzBhODdlYjdjNjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaApAQCAtMTQ0LDkgKzE0NCw3
IEBAIHByaXZhdGU6CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJl
cXVlc3RSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
Jik7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJldmFsaWRhdGVS
ZXNvdXJjZShjb25zdCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmLCBDYWNoZWRSZXNvdXJjZSopOwog
ICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBsb2FkUmVzb3VyY2UoQ2Fj
aGVkUmVzb3VyY2U6OlR5cGUsIENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwotI2lmIEVOQUJMRShS
RVNPVVJDRV9USU1JTkcpCiAgICAgdm9pZCBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5m
b3JtYXRpb24oY29uc3QgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+JiwgY29u
c3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7Ci0jZW5kaWYKICAgICB2b2lkIHJlcXVlc3RQcmVs
b2FkKENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBT
dHJpbmcmIGNoYXJzZXQpOwogCiAgICAgZW51bSBSZXZhbGlkYXRpb25Qb2xpY3kgeyBVc2UsIFJl
dmFsaWRhdGUsIFJlbG9hZCwgTG9hZCB9OwpAQCAtMTc5LDEzICsxNzcsMTEgQEAgcHJpdmF0ZToK
IAogICAgIFRpbWVyIG1fZ2FyYmFnZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyOwogCi0j
aWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBzdHJ1Y3QgSW5pdGlhdG9ySW5mbyB7CiAg
ICAgICAgIEF0b21pY1N0cmluZyBuYW1lOwogICAgICAgICBkb3VibGUgc3RhcnRUaW1lOwogICAg
IH07CiAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZSosIEluaXRpYXRvckluZm8+IG1faW5pdGlh
dG9yTWFwOwotI2VuZGlmCiAKICAgICAvLyAyOSBiaXRzIGxlZnQKICAgICBib29sIG1fYXV0b0xv
YWRJbWFnZXMgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAppbmRleCBlZDM5YTFk
MTUwODFiNDc2NGFlOTdhZmFmNzM4YmE5Njc5N2U3MzJiLi4wOGM3MDMxZjRmZDEyODFkNWQ1YjUx
NGU3ZGM0MzMwODBiNTRhY2Q0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcApAQCAt
NDcsMTUgKzQ3LDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCiBzdGF0aWMgY29uc3Qgc2l6ZV90IGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1
ZmZlclNpemUgPSAxNTA7Ci0jZW5kaWYKIAogUGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNlKEZyYW1l
JiBmcmFtZSkKICAgICA6IERPTVdpbmRvd1Byb3BlcnR5KCZmcmFtZSkKLSNpZiBFTkFCTEUoUkVT
T1VSQ0VfVElNSU5HKQogICAgICwgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUoZGVmYXVsdFJl
c291cmNlVGltaW5nQnVmZmVyU2l6ZSkKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5H
KQogICAgICwgbV9yZWZlcmVuY2VUaW1lKGZyYW1lLmRvY3VtZW50KCktPmxvYWRlcigpID8gZnJh
bWUuZG9jdW1lbnQoKS0+bG9hZGVyKCktPnRpbWluZygpLnJlZmVyZW5jZU1vbm90b25pY1RpbWUo
KSA6IG1vbm90b25pY2FsbHlJbmNyZWFzaW5nVGltZSgpKQogI2lmIEVOQUJMRShVU0VSX1RJTUlO
RykKICAgICAsIG1fdXNlclRpbWluZyhudWxscHRyKQpAQCAtOTEsMTQgKzg3LDExIEBAIFBlcmZv
cm1hbmNlVGltaW5nKiBQZXJmb3JtYW5jZTo6dGltaW5nKCkgY29uc3QKICAgICByZXR1cm4gbV90
aW1pbmcuZ2V0KCk7CiB9CiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi1QYXNz
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmll
cygpIGNvbnN0CitSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRF
bnRyaWVzKCkgY29uc3QKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJp
ZXMgPSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQogICAgIGVudHJpZXMtPmFwcGVuZEFsbChtX3Jlc291cmNlVGltaW5nQnVmZmVy
KTsKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiAjaWYgRU5BQkxFKFVTRVJf
VElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTExMSwxNiArMTA0LDE0IEBAIFBh
c3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRy
aWVzKCkgY29uc3QKICAgICByZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1JlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3Qg
U3RyaW5nJiBlbnRyeVR5cGUpCitSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1h
bmNlOjpnZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKQogewogICAgIFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0
OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVxdWFs
TGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsKICAgICAg
ICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpCiAgICAgICAg
ICAgICBlbnRyaWVzLT5hcHBlbmQocmVzb3VyY2UpOwogICAgIH0KLSNlbmRpZgogCiAjaWYgRU5B
QkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTEzNSwxOCArMTI2
LDE2IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJr
aXRHZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJpZXM7CiB9CiAK
LVBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRF
bnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUp
CitSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlO
YW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCiB7CiAgICAg
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBlbnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxp
c3Q6OmNyZWF0ZSgpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50
cnlUeXBlLmlzTnVsbCgpIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlw
ZSwgInJlc291cmNlIikpIHsKICAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3Vy
Y2VUaW1pbmdCdWZmZXIpIHsKICAgICAgICAgICAgIGlmIChyZXNvdXJjZS0+bmFtZSgpID09IG5h
bWUpCiAgICAgICAgICAgICAgICAgZW50cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICAgICAg
fQogICAgIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChtX3Vz
ZXJUaW1pbmcpIHsKQEAgLTE2MSwyMCArMTUwLDE2IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmlu
CiAgICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0Vf
VElNRUxJTkUpCi0KLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCi12b2lkIFBlcmZvcm1h
bmNlOjp3ZWJraXRDbGVhclJlc291cmNlVGltaW5ncygpCit2b2lkIFBlcmZvcm1hbmNlOjpjbGVh
clJlc291cmNlVGltaW5ncygpCiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5jbGVhcigp
OwogfQogCi12b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNp
emUodW5zaWduZWQgc2l6ZSkKK3ZvaWQgUGVyZm9ybWFuY2U6OnNldFJlc291cmNlVGltaW5nQnVm
ZmVyU2l6ZSh1bnNpZ25lZCBzaXplKQogewogICAgIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXpl
ID0gc2l6ZTsKICAgICBpZiAoaXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwoKSkKLSAgICAgICAg
ZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS53ZWJraXRyZXNvdXJjZXRp
bWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgICAgIGRpc3BhdGNoRXZl
bnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsRXZl
bnQsIGZhbHNlLCBmYWxzZSkpOwogfQogCiB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRp
bWluZyhjb25zdCBTdHJpbmcmIGluaXRpYXRvck5hbWUsIERvY3VtZW50KiBpbml0aWF0b3JEb2N1
bWVudCwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgZG91YmxlIGluaXRpYXRpb25UaW1lLCBkb3VibGUgZmluaXNoVGltZSkK
QEAgLTE4Nyw3ICsxNzIsNyBAQCB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhj
b25zdCBTdHJpbmcmIGluaXRpYXRvck5hbWUsIERvY3VtZW50KiBpbml0aQogICAgIG1fcmVzb3Vy
Y2VUaW1pbmdCdWZmZXIuYXBwZW5kKGVudHJ5KTsKIAogICAgIGlmIChpc1Jlc291cmNlVGltaW5n
QnVmZmVyRnVsbCgpKQotICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnRO
YW1lcygpLndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFsc2Up
KTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZXNv
dXJjZXRpbWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKIGJvb2wgUGVy
Zm9ybWFuY2U6OmlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkKQEAgLTE5NSw4ICsxODAsNiBA
QCBib29sIFBlcmZvcm1hbmNlOjppc1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpCiAgICAgcmV0
dXJuIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIuc2l6ZSgpID49IG1fcmVzb3VyY2VUaW1pbmdCdWZm
ZXJTaXplOwogfQogCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2lmIEVO
QUJMRShVU0VSX1RJTUlORykKIHZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdE1hcmsoY29uc3QgU3Ry
aW5nJiBtYXJrTmFtZSwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlLmgKaW5kZXggOTNmNDQwNjQ0YmI3NjNmYTdkYzhkMTdlNDg2MmUzMjM1ZTljNzZmNy4uMTc2
YzE1MGM0YThmNDg3M2Q4Yjc2NjQ0OTMzMjc5YjM4ODVkNDE3MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2UuaApAQCAtNDAsNyArNDAsNiBAQAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdh
dGlvbi5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiU2NyaXB0
V3JhcHBhYmxlLmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KQEAgLTY0LDE4ICs2MywxNCBAQCBwdWJsaWM6CiAgICAgUGVyZm9ybWFu
Y2VUaW1pbmcqIHRpbWluZygpIGNvbnN0OwogICAgIGRvdWJsZSBub3coKSBjb25zdDsKIAotI2lm
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiB3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxQZXJm
b3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVu
dHJ5VHlwZSk7Ci0gICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0
RW50cmllc0J5TmFtZShjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50cnlUeXBl
KTsKLSNlbmRpZgorICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllcygp
IGNvbnN0OworICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllc0J5VHlw
ZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7CisgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlM
aXN0PiBnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBl
bnRyeVR5cGUpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICB2b2lkIHdlYmtp
dENsZWFyUmVzb3VyY2VUaW1pbmdzKCk7Ci0gICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWlu
Z0J1ZmZlclNpemUodW5zaWduZWQgaW50KTsKKyAgICB2b2lkIGNsZWFyUmVzb3VyY2VUaW1pbmdz
KCk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQpOwogCiAg
ICAgdm9pZCBhZGRSZXNvdXJjZVRpbWluZyhjb25zdCBTdHJpbmcmIGluaXRpYXRvck5hbWUsIERv
Y3VtZW50KiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IGRvdWJsZSBpbml0aWF0aW9uVGltZSwgZG91YmxlIGZpbmlzaFRpbWUpOwotI2VuZGlmCiAKICAg
ICB1c2luZyBSZWZDb3VudGVkPFBlcmZvcm1hbmNlPjo6cmVmOwogICAgIHVzaW5nIFJlZkNvdW50
ZWQ8UGVyZm9ybWFuY2U+OjpkZXJlZjsKQEAgLTk3LDExICs5Miw5IEBAIHByaXZhdGU6CiAKICAg
ICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZU5hdmlnYXRpb24+IG1fbmF2aWdhdGlvbjsKICAg
ICBtdXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZVRpbWluZz4gbV90aW1pbmc7Ci0gICAgCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKKwogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeT4+IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXI7CiAgICAgdW5zaWduZWQgbV9yZXNvdXJjZVRp
bWluZ0J1ZmZlclNpemU7Ci0jZW5kaWYKIAogICAgIGRvdWJsZSBtX3JlZmVyZW5jZVRpbWU7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKaW5kZXggOWIwYThiNzcwMDBjMjhlNDA1Mjk4
MjJlY2UzNTI2OTBhZWNkZTZmNi4uOTQ4OTY5MGIzNTYxNTJmNmVkMDdhZjQ3Mzg1M2Y2MzIzMmY0
NWJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKQEAgLTM2LDE4ICszNiwxNSBA
QAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb24gbmF2aWdhdGlv
bjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgUGVyZm9ybWFuY2VUaW1pbmcgdGltaW5nOwogCi0j
aWYgZGVmaW5lZChFTkFCTEVfUEVSRk9STUFOQ0VfVElNRUxJTkUpICYmIEVOQUJMRV9QRVJGT1JN
QU5DRV9USU1FTElORQotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXMo
KTsKLSAgICBQZXJmb3JtYW5jZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzQnlUeXBlKERPTVN0
cmluZyBlbnRyeVR5cGUpOwotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJp
ZXNCeU5hbWUoRE9NU3RyaW5nIG5hbWUsIG9wdGlvbmFsIERPTVN0cmluZyBlbnRyeVR5cGUpOwot
I2VuZGlmCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBlcmZvcm1hbmNl
RW50cnlMaXN0IGdldEVudHJpZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRp
bWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmllc0J5VHlwZShET01TdHJpbmcgZW50
cnlUeXBlKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFu
Y2VFbnRyeUxpc3QgZ2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9N
U3RyaW5nIGVudHJ5VHlwZSk7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9SRVNPVVJDRV9USU1JTkcp
ICYmIEVOQUJMRV9SRVNPVVJDRV9USU1JTkcKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVzb3VyY2VU
aW1pbmdzKCk7Ci0gICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5z
aWduZWQgbG9uZyBtYXhTaXplKTsKIAotICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb253ZWJr
aXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGw7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0UnVudGlt
ZT1SZXNvdXJjZVRpbWluZ10gdm9pZCBjbGVhclJlc291cmNlVGltaW5ncygpOworICAgIFtFbmFi
bGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSB2b2lkIHNldFJlc291cmNlVGltaW5nQnVmZmVy
U2l6ZSh1bnNpZ25lZCBsb25nIG1heFNpemUpOworCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVz
b3VyY2VUaW1pbmddIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25yZXNvdXJjZXRpbWluZ2J1ZmZl
cmZ1bGw7CiAKICAgICAvLyBTZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMi9DUi11c2VyLXRp
bWluZy0yMDEyMDcyNi8KICNpZiBkZWZpbmVkKEVOQUJMRV9VU0VSX1RJTUlORykgJiYgRU5BQkxF
X1VTRVJfVElNSU5HCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcAppbmRl
eCAzMmRiN2NmZTU2MzVjZGYzMmMzMDVlYzRlYWMwOTUwMWU1ZjgzZWU1Li4zNzRlMTQyOTMxODNm
OTczZmFhNzg0MTgxZGZkNTllMjMwOTViNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VFbnRyeS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYg
RU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTY5LDQgKzY5LDQgQEAgZG91YmxlIFBlcmZvcm1hbmNl
RW50cnk6OmR1cmF0aW9uKCkgY29uc3QKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5k
aWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkK
KyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5LmgKaW5kZXggMTI5YTI0NjQwY2M0ZDJhMzVjYWVhYjZiYTJmMWFmYzgxODRmMzYyYi4u
Y2YzN2MwZTU2OWRkNzRmMmE1MGNmOWNmMmQyYTlmMDRkNmQ1Yzk4NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYgUGVyZm9y
bWFuY2VFbnRyeV9oCiAjZGVmaW5lIFBlcmZvcm1hbmNlRW50cnlfaAogCi0jaWYgRU5BQkxFKFdF
Ql9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VC
X1RJTUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NS
ZWZQdHIuaD4KQEAgLTcxLDUgKzcxLDUgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gIUVO
QUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYg
Ly8gIUVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1hbmNlRW50
cnlfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCmluZGV4IDliY2Fm
NGMzNDAxODk4NTVhMmI2NGQ2ZjA1YjI5OGNjYzFmNzIzZTYuLmYzN2UyYTNjYmE0MzI0MTNhMGFm
N2JiYzQ2YThkNWYxNDRiZmFmMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VFbnRyeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5LmlkbApAQCAtMzEsNyArMzEsNyBAQAogLy8gU2VlOiBodHRwczovL2R2Y3MudzMub3JnL2hn
L3dlYnBlcmYvcmF3LWZpbGUvdGlwL3NwZWNzL1BlcmZvcm1hbmNlVGltZWxpbmUvT3ZlcnZpZXcu
aHRtbAogWwogICAgIENvbmRpdGlvbmFsPVdFQl9USU1JTkcsCi0gICAgQ29uZGl0aW9uYWw9UEVS
Rk9STUFOQ0VfVElNRUxJTkUsCisgICAgRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZywK
ICAgICBDdXN0b21Ub0pTT2JqZWN0LAogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VFbnRyeSB7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBuYW1lOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcAppbmRleCBkOWZhMDU1NzdkZDU3OWU5Y2E4Mjc0
ZGQ3OGI0YWNlMzRiYzc5MjhiLi5jMDM1OTI4YjMxYzZkZTlkNjFkODYzMTE2MzFkMzM1NmZjM2I4
MjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcApA
QCAtMzIsNyArMzIsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1h
bmNlRW50cnlMaXN0LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZP
Uk1BTkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VFbnRyeS5oIgogCkBAIC03NSw0ICs3NSw0IEBAIHZvaWQgUGVyZm9ybWFuY2VFbnRy
eUxpc3Q6OnNvcnQoKQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFC
TEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8v
IEVOQUJMRShXRUJfVElNSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5TGlzdC5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
TGlzdC5oCmluZGV4IDk3YTIxMmRkNmZkMDU0NDc2NmVkNzU2M2MxNzU2YjkxMzZkN2ZlZDYuLmQy
YzQxZjVhZDQ3ZjE4YWIxMTMwZDNjMDU1YWUzNTExMDJiMGM3OTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYg
UGVyZm9ybWFuY2VFbnRyeUxpc3RfaAogI2RlZmluZSBQZXJmb3JtYW5jZUVudHJ5TGlzdF9oCiAK
LSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQor
I2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNjQsNSArNjQsNSBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpICYm
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1J
TkcpCiAjZW5kaWYgLy8gUGVyZm9ybWFuY2VFbnRyeUxpc3RfaApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbAppbmRleCA3ZTI1YTg1Y2U2Yzg5Mzg0ZWZlNTUy
ZjgzNzY5MjU5MzU4MDI4OGY5Li4xODA2NmNjMzdlNTczZjIwZTFhOTA1YzM4OGIwMjE4MThlYjc5
MzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbApA
QCAtMzIsMTAgKzMyLDkgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRp
b25hbD1XRUJfVElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5FLAor
ICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnlMaXN0IHsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAgICAgZ2V0dGVyIFBlcmZvcm1h
bmNlRW50cnkgaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKIH07Ci0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IDMxYjg5NzEz
N2Y1MTFlNDVmNzc1N2U5NTZjMjZmMzc1ODdhYjZhNjAuLjViYjYxNDA5NzE5OGZmNTYyMWM1MWM4
Njk2YTZkMjc5MmQwZjA2MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmNwcApAQCAtMzIsOCArMzIsNiBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIAotI2lmIEVOQUJM
RShSRVNPVVJDRV9USU1JTkcpCi0KICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkRv
Y3VtZW50TG9hZFRpbWluZy5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCkBAIC0xOTks
NSArMTk3LDMgQEAgZG91YmxlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc291cmNlVGlt
ZVRvRG9jdW1lbnRNaWxsaXNlY29uZHMoaW50IGRlbHRhTWkKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggOTlkZmM1YmNk
Y2RjNzllMzUzZTk0OTM2YzQ4Mjg1MzYxN2M1ZjUzZi4uMzdiNWFlOTFlZGYwNzVhZjQ5YjIwNTc5
OTU0MzhkZDhlZjZhYTRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmgKQEAgLTMyLDggKzMyLDYgQEAKICNpZm5kZWYgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZ19oCiAjZGVmaW5lIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdfaAogCi0j
aWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnku
aCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRUaW1pbmcuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgpAQCAtODUsNiArODMsNCBAQCBwcml2YXRlOgogCiB9CiAKLSNlbmRpZiAvLyBFTkFC
TEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjZW5kaWYgLy8gIWRlZmluZWQoUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZ19oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5pZGwKaW5kZXggM2YwMTFiMjNiMDU3YTFhZTBlNjM0ZWYxOTQzYjEwMWZjZTY4
NjZkMy4uM2YzMDllM2JhMmRiNjRiNDQ5NWVhZTYxODA4MjI5OWU5YjYyZDQ1MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCkBAIC0z
MCw3ICszMCw3IEBACiAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jh
dy1maWxlL3RpcC9zcGVjcy9SZXNvdXJjZVRpbWluZy9PdmVydmlldy5odG1sCiBbCi0gICAgQ29u
ZGl0aW9uYWw9UkVTT1VSQ0VfVElNSU5HLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VU
aW1pbmcKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgOiBQZXJmb3JtYW5j
ZUVudHJ5IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGluaXRpYXRvclR5cGU7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCAyMWQ4Yjc2OWRjZjI2YTQx
MmJhNmQwNWMxYzVmN2FlOWJiZmExZGY3Li5hZTljYzk4MDBiOGI2YmUwZjgxNzE0MzJhZGIzZmE3
M2QzMDJiY2RiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC0zMzI1LDQg
KzMzMjUsOSBAQCB2b2lkIEludGVybmFsczo6c2V0Q1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCBl
bmFibGUpCiB9CiAjZW5kaWYKIAordm9pZCBJbnRlcm5hbHM6OnNldFJlc291cmNlVGltaW5nU3Vw
cG9ydChib29sIGVuYWJsZSkKK3sKKyAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRG
ZWF0dXJlcygpLnNldFJlc291cmNlVGltaW5nRW5hYmxlZChlbmFibGUpOworfQorCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCA1ODgyZTc2ZjA2NWQxMDFlZmZhYTgwNDE2ZDNh
YjEwZmMzZDRjOWUyLi45NzE5NzI5ZjAxMzk4YjE3NTc2MjFlMTlhYTE2M2QxMDAyOGE5ZGQzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTQ2OCw2ICs0NjgsNyBAQCBwdWJsaWM6
CiAgICAgCiAgICAgdm9pZCBzZXRWaWV3cG9ydEZvcmNlQWx3YXlzVXNlclNjYWxhYmxlKGJvb2wp
OwogICAgIHZvaWQgc2V0TGlua1ByZWxvYWRTdXBwb3J0KGJvb2wpOworICAgIHZvaWQgc2V0UmVz
b3VyY2VUaW1pbmdTdXBwb3J0KGJvb2wpOwogCiAjaWYgRU5BQkxFKENTU19HUklEX0xBWU9VVCkK
ICAgICB2b2lkIHNldENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCmluZGV4IDNlMDI2NmY1ZjdjMWRkNGE3YjRmYWViZGFkMDI1ZmM4NTIz
NWIzZTEuLjRkNGRmMTk4Y2RlMzhiZGY1YTdkNDlhOWM2N2RlOWM2NmZkMzI5NzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTQ1MSw0ICs0NTEsNSBAQCBlbnVtIEF1dG9G
aWxsQnV0dG9uVHlwZSB7CiAgICAgdm9pZCBzZXRDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sZWFu
IGVuYWJsZSk7CiAjZW5kaWYKIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJv
b2xlYW4gc2NhbGFibGUpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0
dXJlcy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQppbmRleCA5MzA0
YjVhZWQyODI2YTkxNjExNGRlZmRjOWJmNTlmYjBkNTZiNzAwLi43NjhlM2U1OWQ3ZTE5YWFhYTA0
ZjAyMjE3ODM1Y2U5Njk2N2MwOTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVh
dHVyZXMuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCkBAIC0x
NTgsNyArMTU4LDYgQEAgbWFjcm8oV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BU
SU9OX0RFRklORShFTkFCTEVfTk9USUZJQ0FUSU9OUyAiVG9nZ2xlIERlc2t0b3AgTm90aWZpY2F0
aW9ucyBTdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFC
TEVfT1JJRU5UQVRJT05fRVZFTlRTICJUb2dnbGUgT3JpZW50YXRpb24gRXZlbnRzIHN1cHBvcnQi
IFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QREZLSVRfUExV
R0lOICJUb2dnbGUgUERGS2l0IHBsdWdpbiBzdXBwb3J0IiBQUklWQVRFIE9GRikKLSAgICBXRUJL
SVRfT1BUSU9OX0RFRklORShFTkFCTEVfUEVSRk9STUFOQ0VfVElNRUxJTkUgIlRvZ2dsZSBQZXJm
b3JtYW5jZSBUaW1lbGluZSBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfUE9JTlRFUl9MT0NLICJUb2dnbGUgcG9pbnRlciBsb2NrIHN1cHBvcnQi
IFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QUk9YSU1JVFlf
RVZFTlRTICJUb2dnbGUgUHJveGltaXR5IEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAg
ICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUICJUb2dnbGUg
cHVibGljIHN1ZmZpeCBsaXN0IHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDYzOGQ3M2I4
NGFjYzljMDE0MmI5ZmFjZDY1MzBjMzk0ODQ3Y2MzY2EuLjBkZjlmMTQxN2RmMzIxZjVhZDM4NDdl
YjY5NTEwZjhjYmNhM2M3MTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNi0wNC0yOCAgWW9h
diBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJl
aGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNl
bi4KKworICAgICAgICBBZGRlZCB0ZXN0cyB0aGF0IG1ha2Ugc3VyZSBSZXNvdXJjZVRpbWluZyBB
UElzIGFyZSBleHBvc2VkIGFuZCB0aGF0IHJlc291cmNlcworICAgICAgICBzaG93IHVwIGFzIGVu
dHJpZXMgaW4gdGhlIHBlcmZvcm1hbmNlIHRpbWVsaW5lLgorCisgICAgICAgICogZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVy
dGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWw6IFJlbW92
ZWQgIi8vOyIuCisgICAgICAgICogaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1y
ZXNvdXJjZS10aW1pbmctZW50cmllcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0
dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMu
aHRtbDogQWRkZWQuCisKIDIwMTYtMDQtMjggIEpvYW5tYXJpZSBEaWdncyAgPGpkaWdnc0BpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEFYOiBbQVRLXSBFeHBvc2Ugc3Vic2NyaXB0IGFuZCBzdXBlcnNj
cmlwdCBmb3JtYXQgc3R5bGUgZ3JvdXBzIHVzaW5nIEFUS19ST0xFX1NVQlNDUklQVCBhbmQgQVRL
X1JPTEVfU1VQRVJTQ1JJUFQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZv
cm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2ZiOTE1NGU5
YjNiNDQyNzE4MmY3NmM0ZmJlZTI3ZTU4MzI2ZTIzYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDYgQEAKK1RoaXMgdGVzdCBkdW1w
cyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHdpbmRv
dy5wZXJmb3JtYW5jZSBvYmplY3QsIGFsb25nIHdpdGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5w
ZXJmb3JtYW5jZSBbb2JqZWN0IFBlcmZvcm1hbmNlXQord2luZG93LnBlcmZvcm1hbmNlLmFkZEV2
ZW50TGlzdGVuZXIgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLmNsZWFyUmVzb3VyY2VU
aW1pbmdzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5kaXNwYXRjaEV2ZW50IFtmdW5j
dGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzIFtmdW5jdGlvbl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0
aW9uIFtvYmplY3QgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5h
dmlnYXRpb24uVFlQRV9CQUNLX0ZPUldBUkQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uLlRZUEVfTkFWSUdBVEUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZp
Z2F0aW9uLlRZUEVfUkVMT0FEIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlv
bi5UWVBFX1JFU0VSVkVEIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5y
ZWRpcmVjdENvdW50IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBl
IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uubm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS5vbnJlc291cmNldGltaW5nYnVmZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5yZW1vdmVFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5z
ZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZyBbb2JqZWN0IFBlcmZvcm1hbmNlVGltaW5nXQord2luZG93LnBlcmZvcm1hbmNlLnRp
bWluZy5jb25uZWN0RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmNvbm5l
Y3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21Db21wbGV0ZSBb
bnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRF
bmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2
ZW50U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tSW50ZXJhY3Rp
dmUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tTG9hZGluZyBbbnVtYmVy
XQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21haW5Mb29rdXBFbmQgW251bWJlcl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tYWluTG9va3VwU3RhcnQgW251bWJlcl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcuZmV0Y2hTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1h
bmNlLnRpbWluZy5sb2FkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcubG9hZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2
aWdhdGlvblN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0
RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVxdWVzdFN0YXJ0IFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlRW5kIFtudW1iZXJdCit3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcuc2VjdXJlQ29ubmVjdGlvblN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFu
Y2UudGltaW5nLnVubG9hZEV2ZW50RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nLnVubG9hZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcg
W3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZ10KK3dpbmRvdy5wZXJm
b3JtYW5jZS5uYXZpZ2F0aW9uIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5u
YXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlIFtzdHJpbmddCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1y
ZXNvdXJjZS10aW1pbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ct
cHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5k
NWU4MmM2YTRiMmJiZThjNWE3Yzg5ZDVhYTNkNGUwNDEyNzgxMjYyCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1h
bmNlLXJlc291cmNlLXRpbWluZy5odG1sCkBAIC0wLDAgKzEsMTA0IEBACis8cD5UaGlzIHRlc3Qg
ZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3
aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0LCBhbG9uZyB3aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxo
cj4KKzxwcmUgaWQ9InByZSI+PC9wcmU+CisKKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKK2lmICh3aW5kb3cuaW50ZXJuYWxz
KQorICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQodHJ1ZSk7CisgICAgCit2
YXIgbG9nQnVmZmVyID0gW107CitmdW5jdGlvbiBsb2cocykKK3sKKyAgICBsb2dCdWZmZXIucHVz
aChzKTsKK30KKwordmFyIHByZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcmUnKTsKK2Z1
bmN0aW9uIGZsdXNoTG9nKCkKK3sKKyAgICB2YXIgbG9nTWVzc2FnZSA9IGxvZ0J1ZmZlci5qb2lu
KCIiKTsKKyAgICBwcmUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobG9nTWVz
c2FnZSkpOworfQorCitmdW5jdGlvbiB0cnlFdmFsKHN0cmluZykKK3sKKyAgICB0cnkgeworICAg
ICAgICByZXR1cm4gZXZhbChzdHJpbmcpOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgcmV0
dXJuIG5ldyBTdHJpbmcoIkNhdWdodCBleGNlcHRpb246ICIgKyBlKTsKKyAgICB9Cit9CisKK2Z1
bmN0aW9uIHR5cGVPZk51bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICBpZiAodHlwZW9mIHZhbHVlID09
ICJvYmplY3QiICYmIHZhbHVlID09IG51bGwpCisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAg
cmV0dXJuIHR5cGVvZiB2YWx1ZTsKK30KKworZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2
YWx1ZSkKK3sKKyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAg
ICByZXR1cm4gdmFsdWVUeXBlID09ICJvYmplY3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlw
ZS50b1N0cmluZy5jYWxsKHZhbHVlKQorICAgICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsK
K30KKworZnVuY3Rpb24gbG9nVmFsdWUodmFsdWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRy
eUV2YWwodmFsdWVOYW1lKTsKKyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZh
bHVlKTsKKworICAgIC8vIERvbid0IHRhaW50IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJs
ZXMKKyAgICBpZiAodmFsdWUgPT0gbG9nQnVmZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3Bl
cnRpZXMKKyAgICBpZiAoL19fdmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8
IC9fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAg
ICByZXR1cm47CisKKyAgICAvLyBXb3JrIGFyb3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lv
bgorICAgIGlmICgvXC5bMC05XS8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisK
KyAgICAvLyBBdm9pZCBpbmZpbml0ZSByZWN1cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJv
YmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykgeworICAgICAgICBsb2codmFs
dWVOYW1lICsgIiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRC
eUxvZ1ZhbHVlX18gKyAiXVxuIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2co
dmFsdWVOYW1lICsgIiAiICsgdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKwor
ICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVk
QnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAgICAgICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxv
Z1ZhbHVlX18gPSB2YWx1ZU5hbWU7CisgICAgICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVl
TmFtZSk7CisgICAgfQorfQorCitmdW5jdGlvbiBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0
TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkgPSBuZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVy
dHkgaW4gb2JqZWN0KSB7CisgICAgICAgIGFycmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAg
ICBhcnJheS5zb3J0KCk7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkr
KykgeworICAgICAgICB2YXIgcHJvcGVydHkgPSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUo
b2JqZWN0TmFtZSArICIuIiArIHByb3BlcnR5KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5k
b3cucGVyZm9ybWFuY2UnKTsKK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgPSAndGltaW5nIGlz
IG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZycp
Oword2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gPSAnbmF2aWdhdGlvbiBpcyBub3QgcmVw
bGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJyk7Cit3
aW5kb3cucGVyZm9ybWFuY2UgPSAncGVyZm9ybWFuY2UgaXMgcmVwbGFjZWFibGUnOworbG9nVmFs
dWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOworZmx1c2hMb2coKTsKK2lmICh3aW5kb3cuaW50ZXJu
YWxzKQorICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXBy
b3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sCmluZGV4IDBhOGY4MWVmMTI1ODg4MjVk
NWQxNmQ1YTlkMmRkYmU3NmI4NjkzMGQuLjFiMTJlMTdjYWYwODE2OGZjM2I5ZjhjZGJjZGJlMWNj
MWQ3ZjBjMzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ct
cHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sCkBAIC0zMCw3ICszMCw3IEBA
IGZ1bmN0aW9uIHRyeUV2YWwoc3RyaW5nKQogCiBmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFs
dWUpCiB7Ci0gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxs
KSAvLzsKKyAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3QiICYmIHZhbHVlID09IG51bGwp
CiAgICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKIH0KQEAg
LTYxLDcgKzYxLDcgQEAgZnVuY3Rpb24gbG9nVmFsdWUodmFsdWVOYW1lKQogICAgICAgICByZXR1
cm47CiAKICAgICAvLyBBdm9pZCBpbmZpbml0ZSByZWN1cnNpb24KLSAgICBpZiAodmFsdWVUeXBl
ID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICBp
ZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykg
ewogICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFsdWUu
X19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3Bl
cmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVu
dHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczZDE3YmY5NzBjNTY0NDFmNWE4MzIwOGQw
MDkzNjUzM2E2N2FmNDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorUEFTUyBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJj
ZScpLmxlbmd0aCBpcyAyCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVy
Zm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
LWVudHJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZWVjYmEyOTU3YzhlZTU5ZmE5NjVjMWI1Zjc0NTg1
Y2U0YWM1YTY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJm
b3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sCkBAIC0wLDAg
KzEsMjMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAo
d2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0
KHRydWUpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNwYW4gaWQ9ImUiPjwvc3Bhbj4K
KzxzcGFuIGlkPSJmIj48L3NwYW4+Cis8c2NyaXB0Pgord2luZG93LmFkZEV2ZW50TGlzdGVuZXIo
ImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICBzaG91bGRCZSgicGVyZm9ybWFuY2UuZ2V0RW50cmll
c0J5VHlwZSgncmVzb3VyY2UnKS5sZW5ndGgiLCAiMiIpOworICAgIGlmICh3aW5kb3cuaW50ZXJu
YWxzKQorICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydChm
YWxzZSk7Cit9KTsKKworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9D
aGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggNjk1NjljNGNhYTdlNmUxMTJlZGQzYTNiNDIzYmE5
Mzc4M2I4OWFjZS4uMDg4MTA0NzFmMGU2NTJmZDg2MzYzYmYxZmFjYWExMWJiNzVkM2NmNiAxMDA2
NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE2
LTA0LTI4ICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3Vy
Y2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4
IENocmlzdGVuc2VuLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisKIDIwMTYt
MDQtMjggIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMDAxODUuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277846</attachid>
            <date>2016-05-01 02:06:39 -0700</date>
            <delta_ts>2016-05-01 02:20:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160501110712.patch</filename>
            <type>text/plain</type>
            <size>55210</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMjU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
NWEyYmRlMWFkYWU2NmZhODAzNGY4OTA1ZThiZTZlMjM1NGE5NmIzLi42NDRmODFiNjZhNTUwOTlk
ODRkZTBlZDRjMTZhN2RhNTcwOGJlNTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaDogQWRkZWQgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxp
c3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgYXMgcHJvcGVydHkgbmFtZXMuCisKIDIw
MTYtMDQtMjkgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMDAyMzIuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjMwNzI5
ZmJjYTQyOGM3ZTU5ZGEwN2YyNmU4MmNlZTFiMWU0YWZhNS4uYWY3MjFkOTZkYTVkNThlZWQ1ZWE5
YzgwNzAxYjMzNzJmY2EwNzgyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3IEBACisyMDE2LTA1
LTAxICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VU
aW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENo
cmlzdGVuc2VuLgorCisgICAgICAgIE1vdmUgdGhlIFJlc291cmNlVGltaW5nIEFQSSBmcm9tIGJl
aW5nIGJlaGluZCBhIGJ1aWxkIHRpbWUgZmxhZyB0byBiZSBiZWhpbmQgYW4KKyAgICAgICAgb2Zm
LWJ5LWRlZmF1bHQgcnVudGltZSBmbGFnLCB0aGF0IGNhbiBiZSB0dXJuZWQgb24gdXNpbmcgaW50
ZXJuYWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAv
dGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRt
bAorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogQWRkZWQgaWRsIGZpbGVzIGZvciBQ
ZXJmb3JtYW5jZUVudHJ5LCBQZXJmb3JtYW5jZUVudHJ5TGlzdCBhbmQgUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
IEFkZGVkIHRoZSB2YXJpb3VzIFBlcmZvcm1hbmNlKiBmaWxlcyB0byB0aGUgcHJvamVjdC4KKyAg
ICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOiBBZGRl
ZCBSZXNvdXJjZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1
bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAgICAq
IGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOiBBZGRlZCBSZXNvdXJj
ZVRpbWluZyBhcyBhIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNldFJlc291cmNlVGltaW5nRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpyZXNvdXJjZVRpbWluZ0VuYWJsZWQpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA6IFJlbW92ZWQgI2lm
IGZvciBSZXNvdXJjZVRpbWluZy4gQWRkZWQgYnVpbGQgZmxhZyBhcm91bmQgVXNlclRpbWluZyBy
ZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBkb20vRXZlbnROYW1lcy5oOiBSZW5hbWVkIHdlYmtpdHJlc291cmNldGltaW5nYnVmZmVy
ZnVsbCB0byByZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwuCisgICAgICAgICogbG9hZGVyL0RvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3
aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxv
YWRlcjo6bG9hZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmll
ci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4K
KyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5k
UmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNw
cDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAg
ICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJldmFsaWRhdGVSZXNvdXJjZSk6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJlc291cmNlKToK
KyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGlt
aW5nSW5pdGlhdG9ySW5mb3JtYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OmxvYWREb25lKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3Vy
Y2VMb2FkZXIuaDogUmVtb3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogcGFn
ZS9QZXJmb3JtYW5jZS5jcHA6IFJlbW92ZSAjaWYgZm9yIFJlc291cmNlVGltaW5nLgorICAgICAg
ICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNlKTogUmVtb3ZlZCAjaWYgZm9yIFJl
c291cmNlVGltaW5nIHJlbGF0ZWQgaW5pdGlhbGl6YXRpb24uCisgICAgICAgIChXZWJDb3JlOjpQ
ZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcyk6IFJlbmFtZWQgdG8gZ2V0RW50cmllcy4KKyAg
ICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlUeXBlKTogUmVu
YW1lZCB0byBnZXRFbnRyaWVzQnlUeXBlLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6
OndlYmtpdEdldEVudHJpZXNCeU5hbWUpOiBSZW5hbWVkIHRvIGdldEVudHJpZXNCeU5hbWUuCisg
ICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOiBSZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRpbWlu
Zy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlLmlkbDogUmVwbGFjZSAjaWYgZm9yIFJlc291
cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuaDogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9U
SU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGw6
IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcgd2l0aCBydW50aW1l
IGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHA6IFJlbW92ZSB0
aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZv
cm1hbmNlRW50cnlMaXN0Lmg6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQg
ZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbDogUmVwbGFjZSB0
aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOiBSZW1vdmUgdGhlIFJF
U09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5oOiBSZW1vdmUgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw6IFJlcGxhY2UgdGhlIFJF
U09VUkNFX1RJTUlORyBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHRl
c3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRp
bWluZy4KKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBw
b3J0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOiBBZGQgYSBtZXRob2QgdGhhdCBl
bmFibGVzIFJlc291cmNlVGltaW5nLgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDog
QWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKwogMjAxNi0wNC0yOCAg
SmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWJQbGF5YmFja0Nv
bnRyb2xzTWFuYWdlciBzaG91bGQgbm90IGJlIG93bmVkIGJ5IHRoZSBXZWJQbGF5YmFja1Nlc3Np
b25JbnRlcmZhY2VNYWMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db21tb25JZGVudGlmaWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29t
bW9uSWRlbnRpZmllcnMuaAppbmRleCBjNDRlNTgyZDdhMjY2YTc0YTE1NTExODgzNjVkMzNlOTY3
N2VjZWE4Li5kNWIzMDNmMTRjNzNlODFlMGU1NDQ1YjMyNmQwNjM3ZDk5MmE0OThjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAg
LTcxLDYgKzcxLDkgQEAKICAgICBtYWNybyhOdW1iZXIpIFwKICAgICBtYWNybyhOdW1iZXJGb3Jt
YXQpIFwKICAgICBtYWNybyhPYmplY3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZUVudHJ5KSBc
CisgICAgbWFjcm8oUGVyZm9ybWFuY2VFbnRyeUxpc3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nKSBcCiAgICAgbWFjcm8oUHJvbWlzZSkgXAogICAgIG1hY3JvKFByb3h5
KSBcCiAgICAgbWFjcm8oUmFuZ2VFcnJvcikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UK
aW5kZXggNDIwYTc5MDQ3YjY4NDEwOGY2MzE0ZDc5YTk1YTdjNDI4N2YxOTlmNS4uYzNhMTJlNGM2
NDZhNjM5Njc0ZWI5NzY3Y2IyNGUyY2YxYTA1Mjk0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCkBAIC01MTgsNyArNTE4LDEwIEBAIE5PTl9TVkdfQklORElOR19JRExTID0gXAogICAg
ICQoV2ViQ29yZSkvcGFnZS9Mb2NhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9OYXZp
Z2F0b3IuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3Jt
YW5jZU5hdmlnYXRpb24uaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZVRpbWluZy5p
ZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9TY3JlZW4uaWRsIFwKICAgICAkKFdlYkNvcmUpL3Bh
Z2UvV2ViS2l0UG9pbnQuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxMzNkOGQxNWM1NDc3ZTcxOGUxMWMxNDZmMmM2OTI5
MTQxNWYwNGJiLi4xOWNjZWYxMDIzMmZhOGZkZThlOWRjZWEyZjgxMWE1ZjU2MzJiZDVkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC01OTkxLDYgKzU5OTEsMTQgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9s
bEFuaW1hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYw
MDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NT
QXNwZWN0UmF0aW9WYWx1ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAv
KiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9W
YWx1ZS5oICovOyB9OworCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VF
bnRyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
QjM4RkQ0QTFDQ0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJ
CUNCMzhGRDUxMUNDRjkzODkwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEQxQ0NGOTM3
RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUyMUND
RjkzOTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlRW50cnkuaCAqLzsgfTsKKwkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8q
IEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuY3BwICovOyB9OworCQlDQjM4RkQ1NDFDQ0Y5MzlFMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaCAqLzsgfTsKKwkJQ0IzOEZENTcxQ0QyMUUyQTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VFbnRyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDQjM4RkQ1NTFDRDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3Vz
dG9tLmNwcCAqLzsgfTsKKwkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmNwcCAqLzsgfTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oICovOyB9OwogCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWlj
cm90YXNrcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi87IH07CiAJCUND
QzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAv
KiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQlDQ0MyQjUxNTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUx
MTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi87IH07CkBAIC0xMzk1
OCw2ICsxMzk2NiwxNCBAQAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5p
bWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3Iu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIw
IC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUNBRTlGOTBFMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8q
IFBlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUGVyZm9ybWFuY2VFbnRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNC
MzhGRDREMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVy
Zm9ybWFuY2VFbnRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFD
Q0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGgg
PSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNCMzhGRDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5
Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0
NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0Yg
LyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlDQjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERl
dmljZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhD
REQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0xODA2NCw2ICsxODA4MCw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8q
IFBlcmZvcm1hbmNlLmggKi8sCiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZv
cm1hbmNlLmlkbCAqLywKIAkJCQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFu
Y2VFbnRyeS5oICovLAorCQkJCUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5j
ZUVudHJ5LmNwcCAqLywKIAkJCQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFu
Y2VFbnRyeS5pZGwgKi8sCiAJCQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1h
bmNlRW50cnlMaXN0LmNwcCAqLywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVy
Zm9ybWFuY2VFbnRyeUxpc3QuaCAqLywKQEAgLTIyMzE5LDYgKzIyMzM2LDcgQEAKIAkJCQk4M0Yx
MjA2QTFCOEMxMDM2MDBENzVGNjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3
QzkxQTM4RDFCNDk4QUJFMDAzRjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdD
OTFBMzhFMUI0OThBQkUwMDNGOUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhG
RDU1MUNEMjFENUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovLAog
CQkJCTkzQjcwRDRGMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMu
Y3BwICovLAogCQkJCTkzQjcwRDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRG
dW5jdGlvbnMuaCAqLywKIAkJCQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJs
ZVN0cmVhbVByaXZhdGVDb25zdHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NTUsOCArMjI2NzMsMTQg
QEAKIAkJCQlBOUQyNDdGNjBENzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJ
CQlFNTFBODFERTE3Mjk4RDc3MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJ
OEE5QTU4NzMxMUU4NEM4MTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4
RkQ0RDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlD
QjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJ
Q0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICov
LAorCQkJCUNCMzhGRDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0
LmggKi8sCiAJCQkJOEE5QTU4NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uLmNwcCAqLywKIAkJCQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3Jt
YW5jZU5hdmlnYXRpb24uaCAqLywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUx
ODlFMTVBNjAwMDE5QUUyIC8qIEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1
ODc3MTFFODRDOTgwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNF
QzAxQzAwQzI3NERERDAwOUY0RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1NTYyLDYgKzI1
NTg2LDcgQEAKIAkJCQkyRDI5RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hN
b25pdG9ySU9TLmggaW4gSGVhZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMg
LyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUND
ODE5MkVDQzgzMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0IzOEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VF
bnRyeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERp
c3BsYXlTbGVlcERpc2FibGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJD
MDAyNkNFNzIgLyogRGlzcGxheVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRkQzMTYwOTExMkIwMjZGNzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywK
QEAgLTI3Njk4LDYgKzI3NzIzLDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyog
UmVuZGVyVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdF
IC8qIFJlbmRlclZUVEN1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAw
QjEyQTY4IC8qIFJlbmRlcldpZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0Qy
MzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5D
b21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyog
UmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThC
RTk4NDkwMDZDRUJDQyAvKiBSZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4
MDI3LDYgKzI4MDUzLDcgQEAKIAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVT
aGVldExpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAv
KiBTdHlsZVN1cnJvdW5kRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJD
RTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Iz
OEZENTQxQ0NGOTM5RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUU0REVBQTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxl
VmlzdWFsRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2
IC8qIFN1YmZyYW1lTG9hZGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI5MjA5LDYgKzI5MjM2LDcg
QEAKIAkJCQlCMjc1MzU3NzBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNl
cyAqLywKIAkJCQk0M0VERDY3RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxw
aGFiZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8q
IENvbWJpbmVkVVJMRmlsdGVycy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NG
MzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NTg0RkUzNDE4NjRENUFGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUE1ODRGRTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1v
ZHVsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyog
Q29tbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTMxMjI3LDYgKzMxMjU1LDcgQEAKIAkJCQlC
Qzk2REI0NjBGM0E4ODIyMDA1NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQkNFQTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVy
Q29tYmluZVRleHQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQk5MzkyRjE0NDBBRDE4NUZFMDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCQ0VBNDg2RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZs
ZXhpYmxlQm94LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgy
OCAvKiBSZW5kZXJEZXRhaWxzTWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzIwMDQsNiAr
MzIwMzMsNyBAQAogCQkJCTQ0NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVz
cG9uc2VJT1MubW0gaW4gU291cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMg
LyogV2ViQ29yZVZpZXcubSBpbiBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlB
REY1MCAvKiBXZWJEZWJ1Z2dlckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3
MUNEMjFFMkEwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJRkUwRDg0RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJMjI1QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9u
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdM
MlJlbmRlcmluZ0NvbnRleHQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA4Myw2ICszMjExMyw3
IEBACiAJCQkJQjEwQjY5ODExNDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93
QW5pbWF0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5
IC8qIFdlZWtJbnB1dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4
OTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4
NTAzMUI1MDBBNDRFRkM3MDBGOTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkyRTE5NTE2QjFCNjU5OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2
ZW50RGVsdGFGaWx0ZXJNYWMubW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTIwLDYgKzMyMTUxLDcg
QEAKIAkJCQkwMEI5MzE4OTEzQkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4
bWwyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBY
TUxEb2N1bWVudFBhcnNlclNjb3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4
REMyNDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZE
NTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQkM3NzJDNDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRw
UmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RG
RDQ4RjBFMzA1MjkwMDA5RDEwQUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJj
ZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9S
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAppbmRleCAyY2M2MTI0MTM3OGY0NWQxMmQ3ZTI5Njhm
MTkwM2QwMGNjNjVlOTVmLi4xYjVkYzE1ZDRiZGY1NGIxMmE4ZDE2ZWY4ODJiNGRiMWFkYzJjYWVi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKQEAgLTU5LDYgKzU5LDcgQEAgUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6UnVudGltZUVuYWJsZWRGZWF0dXJlcygpCiAjZWxzZQogICAgICwgbV9pc1BsdWdp
blJlcGxhY2VtZW50RW5hYmxlZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jlc291cmNlVGlt
aW5nRW5hYmxlZChmYWxzZSkKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1f
aXNJbmRleGVkREJFbmFibGVkKGZhbHNlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDEx
ZWNkOTUzM2Q0ZDhiZWY5OGUxZmRkMzVmMTVjZTRlZDFjZWQxZTEuLjRkMzZkNjg5MGEzNGRmOWJm
NGIwNjlmY2RmNTgzNzQzOTk0MDRmNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yMDEsNiArMjAx
LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2wg
aXNFbmFibGVkKSB7IG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0K
ICAgICBib29sIHBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNQ
bHVnaW5SZXBsYWNlbWVudEVuYWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdF
bmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgPSBpc0Vu
YWJsZWQ7IH0KKyAgICBib29sIHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJu
IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1FUEFEKQogICAg
IHZvaWQgc2V0R2FtZXBhZHNFbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZUdhbWVwYWRz
RW5hYmxlZCA9IGFyZUVuYWJsZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxlZCgpIGNvbnN0
IHsgcmV0dXJuIG1fYXJlR2FtZXBhZHNFbmFibGVkOyB9CkBAIC0yNjcsNiArMjcwLDcgQEAgcHJp
dmF0ZToKICAgICBib29sIG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lz
TGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9vbCBtX2lzUGx1
Z2luUmVwbGFjZW1lbnRFbmFibGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxl
ZDsKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wgbV9pc0luZGV4ZWRE
QkVuYWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZv
cm1hbmNlRW50cnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJm
b3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAppbmRleCBlYmRkMzdmOGM0YzIxN2IzOTkxZmVkMzBjODU3
NDc5NzYxZWQyMzAzLi44ZjExZTcwMjU3ZmRjMTE3NTUxYjA3YmZjOGM3YmMyODhkZGNhYzA2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlD
dXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VF
bnRyeUN1c3RvbS5jcHAKQEAgLTMwLDEzICszMCwxMyBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAKLSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KICNpbmNsdWRlICJKU1BlcmZv
cm1hbmNlRW50cnkuaCIKIAogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2lmIEVOQUJMRShV
U0VSX1RJTUlORykKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2luY2x1ZGUgIkpT
UGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZU1lYXN1cmUuaCIKQEAgLTUxLDEwICs1MSw4IEBAIEpTVmFsdWUgdG9KUyhFeGVj
U3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5jZUVudHJ5
KiBlbnRyCiAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVsbCgpOwogCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnktPmlzUmVzb3VyY2UoKSkKICAg
ICAgICAgcmV0dXJuIHdyYXA8SlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmpl
Y3QsIHN0YXRpY19jYXN0PFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcqPihlbnRyeSkpOwotI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKGVudHJ5LT5pc01hcmsoKSkK
QEAgLTY4LDUgKzY2LDMgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9NR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFBlcmZvcm1hbmNlRW50cnkqIGVudHIKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FdmVudE5hbWVzLmgKaW5kZXggNGNlODY3ODUwMGRkY2E1MGI1ZTVjODEwYjJkMmRi
MDNiOWZhN2JmNC4uZDU3NDczOGZiYjhjMGFjNmMyNDQ2MWYwMTI4YTFlZTMyOWE2Zjg3OSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRXZlbnROYW1lcy5oCkBAIC0xODMsNiArMTgzLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgIG1hY3JvKHJlbW92ZXRyYWNrKSBcCiAgICAgbWFjcm8ocmVzZXQpIFwKICAgICBt
YWNybyhyZXNpemUpIFwKKyAgICBtYWNybyhyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwpIFwKICAg
ICBtYWNybyhyZXN1bHQpIFwKICAgICBtYWNybyhyZXN1bWUpIFwKICAgICBtYWNybyhzY3JvbGwp
IFwKQEAgLTI2MSw3ICsyNjIsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgbWFjcm8od2Vi
a2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQpIFwKICAgICBtYWNybyh3ZWJraXRyZWdpb25vdmVy
c2V0Y2hhbmdlKSBcCiAgICAgbWFjcm8od2Via2l0cmVtb3Zlc291cmNlYnVmZmVyKSBcCi0gICAg
bWFjcm8od2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsKSBcCiAgICAgbWFjcm8od2Via2l0
c291cmNlY2xvc2UpIFwKICAgICBtYWNybyh3ZWJraXRzb3VyY2VlbmRlZCkgXAogICAgIG1hY3Jv
KHdlYmtpdHNvdXJjZW9wZW4pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9E
b2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggY2RjNDU5ZjJiZmE4YTFiZTYyYWZlZTMzYzRi
MGJlNzcxY2I2MWExZC4uNWY1ZWZkODQxOGEzN2VhMDJkZmFiNjM1M2IwMjVhOGE2MDZmYWJlNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNrZXIuaCIKICNp
bmNsdWRlICJSZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCisj
aW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNjaGVtZVJlZ2lz
dHJ5LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTdWJyZXNvdXJj
ZUxvYWRlci5oIgpAQCAtMzg1LDkgKzM4Niw4IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyOjpsb2FkUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlY3VyCiAg
ICAgICAgIH0KIAogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgbmV3UmVxdWVzdChyZXF1
ZXN0LCBvcHRpb25zKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgICAgICBuZXdS
ZXF1ZXN0LnNldEluaXRpYXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKLSNlbmRpZgorICAgICAg
ICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRp
bWluZ0VuYWJsZWQoKSkKKyAgICAgICAgICAgIG5ld1JlcXVlc3Quc2V0SW5pdGlhdG9yKG1fb3B0
aW9ucy5pbml0aWF0b3IpOwogICAgICAgICBBU1NFUlQoIW1fcmVzb3VyY2UpOwogICAgICAgICBt
X3Jlc291cmNlID0gbV9kb2N1bWVudC5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJlcXVlc3RSYXdS
ZXNvdXJjZShuZXdSZXF1ZXN0KTsKICAgICAgICAgaWYgKG1fcmVzb3VyY2UpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAppbmRleCBkMzlmZDI3ZGM1
NjZjMGZlMjRkMTBjNjAxNGM1YmVkZWQzZTRmY2I5Li5lNTQ2N2ZkMTExMDhlMjEwOWUxZDJmOWQ5
ZDU2YjVjM2U4NmQxMzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3Vy
Y2VMb2FkTm90aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxv
YWROb3RpZmllci5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5j
bHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXIuaCIKKyNp
bmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAKICNpZiBVU0UoUVVJQ0tfTE9PSykK
ICNpbmNsdWRlICJRdWlja0xvb2suaCIKQEAgLTE0Niw5ICsxNDcsOCBAQCB2b2lkIFJlc291cmNl
TG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9h
ZGVyLCB1bnNpZwogICAgIGlmIChsb2FkZXIgJiYgIXJlcXVlc3QuaXNOdWxsKCkgJiYgcmVxdWVz
dC51cmwoKSA9PSBsb2FkZXItPnVybCgpKQogICAgICAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRU
aW1pbmcodHJ1ZSk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHJlcXVlc3Qu
c2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAg
ICAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7CiB9CiAKIHZvaWQgUmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgciwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggYzBhOTlh
M2RlOTc4OTQ1ZmQ2NDlkYzJkNmVhNzhkYjY3ODcxMzAxZC4uM2RiOTAwN2YxZjgzNzg2YjZmZDdi
MzQxYTBhNjQwOTZiYjNlMTcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC01NywxMCArNTcsMTIgQEAKICNpbmNs
dWRlICJNYWluRnJhbWUuaCIKICNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIlBh
Z2UuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIlBpbmdMb2FkZXIuaCIK
ICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAi
U2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKQEAgLTc1LDEwICs3Nyw2
IEBACiAjaW5jbHVkZSAiQ2FjaGVkVGV4dFRyYWNrLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShS
RVNPVVJDRV9USU1JTkcpCi0jaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKLSNlbmRpZgotCiAjZGVm
aW5lIFBSRUxPQURfREVCVUcgMAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC02NzEsMTEgKzY2
OSw4IEBAIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6cmV2YWxpZGF0ZVJlc291cmNlKGNvCiAgICAgCiAgICAgbWVtb3J5Q2FjaGUucmVt
b3ZlKCpyZXNvdXJjZSk7CiAgICAgbWVtb3J5Q2FjaGUuYWRkKCpuZXdSZXNvdXJjZSk7Ci0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9y
SW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0o
cmVxdWVzdCk7Ci0jZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3RvcmVSZXNvdXJj
ZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKICAgICByZXR1
cm4gbmV3UmVzb3VyY2U7CiB9CiAKQEAgLTY5MCwxNSArNjg1LDE0IEBAIENhY2hlZFJlc291cmNl
SGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9hZFJlc291cmNl
KENhY2hlZFJlCiAKICAgICBpZiAocmVxdWVzdC5hbGxvd3NDYWNoaW5nKCkgJiYgIW1lbW9yeUNh
Y2hlLmFkZCgqcmVzb3VyY2UpKQogICAgICAgICByZXNvdXJjZS0+c2V0T3duaW5nQ2FjaGVkUmVz
b3VyY2VMb2FkZXIodGhpcyk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBzdG9y
ZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwot
I2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCku
cmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0
aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7CiAgICAgcmV0dXJuIHJlc291cmNl
OwogfQogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIHZvaWQgQ2FjaGVkUmVzb3VyY2VM
b2FkZXI6OnN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNo
ZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4mIHJlc291cmNlLCBjb25zdCBDYWNoZWRS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CisgICAgQVNTRVJUKFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpOwogICAgIGlm
IChyZXNvdXJjZS0+dHlwZSgpID09IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3VyY2UpIHsKICAg
ICAgICAgLy8gPGlmcmFtZT5zIHNob3VsZCByZXBvcnQgdGhlIGluaXRpYWwgbmF2aWdhdGlvbiBy
ZXF1ZXN0ZWQgYnkgdGhlIHBhcmVudCBkb2N1bWVudCwgYnV0IG5vdCBzdWJzZXF1ZW50IG5hdmln
YXRpb25zLgogICAgICAgICBpZiAoZnJhbWUoKS0+b3duZXJFbGVtZW50KCkgJiYgbV9kb2N1bWVu
dExvYWRlci0+ZnJhbWVMb2FkZXIoKS0+c3RhdGVNYWNoaW5lKCkuY29tbWl0dGluZ0ZpcnN0UmVh
bExvYWQoKSkgewpAQCAtNzEwLDcgKzcwNCw2IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6
OnN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSCiAg
ICAgICAgIG1faW5pdGlhdG9yTWFwLmFkZChyZXNvdXJjZS5nZXQoKSwgaW5mbyk7CiAgICAgfQog
fQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKIHN0YXRpYyB2b2lkIGxvZ1Jl
dmFsaWRhdGlvbihjb25zdCBTdHJpbmcmIHJlYXNvbiwgRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQm
IGxvZ0NsaWVudCkKIHsKQEAgLTk3Niw4ICs5NjksOSBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9h
ZGVyOjpsb2FkRG9uZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hvdWxkUGVyZm9y
bQogICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4gcHJvdGVjdERvY3VtZW50TG9hZGVyKG1fZG9j
dW1lbnRMb2FkZXIpOwogICAgIFJlZlB0cjxEb2N1bWVudD4gcHJvdGVjdERvY3VtZW50KG1fZG9j
dW1lbnQpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBpZiAocmVzb3VyY2Ug
JiYgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaXNIVFRQKCkgJiYgKCghcmVzb3VyY2UtPmVycm9yT2Nj
dXJyZWQoKSAmJiAhcmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNlLT5yZXNwb25z
ZSgpLmh0dHBTdGF0dXNDb2RlKCkgPT0gMzA0KSkgeworICAgIGlmIChSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpCisgICAgICAg
ICYmIHJlc291cmNlICYmIHJlc291cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpCisgICAgICAgICYm
ICgoIXJlc291cmNlLT5lcnJvck9jY3VycmVkKCkgJiYgIXJlc291cmNlLT53YXNDYW5jZWxlZCgp
KSB8fCByZXNvdXJjZS0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkpIHsKICAg
ICAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZSosIEluaXRpYXRvckluZm8+OjppdGVyYXRvciBp
bml0aWF0b3JJdCA9IG1faW5pdGlhdG9yTWFwLmZpbmQocmVzb3VyY2UpOwogICAgICAgICBpZiAo
aW5pdGlhdG9ySXQgIT0gbV9pbml0aWF0b3JNYXAuZW5kKCkpIHsKICAgICAgICAgICAgIEFTU0VS
VChkb2N1bWVudCgpKTsKQEAgLTk5MCw5ICs5ODQsNiBAQCB2b2lkIENhY2hlZFJlc291cmNlTG9h
ZGVyOjpsb2FkRG9uZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hvdWxkUGVyZm9y
bQogICAgICAgICAgICAgbV9pbml0aWF0b3JNYXAucmVtb3ZlKGluaXRpYXRvckl0KTsKICAgICAg
ICAgfQogICAgIH0KLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHJlc291cmNlKTsKLSNlbmRpZiAv
LyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiAgICAgaWYgKGZyYW1lKCkpCiAgICAgICAgIGZy
YW1lKCktPmxvYWRlcigpLmxvYWREb25lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCmluZGV4IGIxZjdjNGZhZjVkYmIwOTYwMWM1
ODkyZjVkNjQ3MTM5NDliMWY2MGQuLjRkZjgxOTk1OWNlYWIxMTAzNzRiNTViNDYwMzkzMGE4N2Vi
N2M2NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZUxvYWRlci5oCkBAIC0xNDQsOSArMTQ0LDcgQEAgcHJpdmF0ZToKICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcmVxdWVzdFJlc291cmNlKENhY2hlZFJlc291cmNl
OjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRs
ZTxDYWNoZWRSZXNvdXJjZT4gcmV2YWxpZGF0ZVJlc291cmNlKGNvbnN0IENhY2hlZFJlc291cmNl
UmVxdWVzdCYsIENhY2hlZFJlc291cmNlKik7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2Fj
aGVkUmVzb3VyY2U+IGxvYWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0Jik7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICB2b2lkIHN0
b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNoZWRSZXNvdXJj
ZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4mLCBjb25zdCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsK
LSNlbmRpZgogICAgIHZvaWQgcmVxdWVzdFByZWxvYWQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENh
Y2hlZFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgY2hhcnNldCk7CiAKICAgICBlbnVt
IFJldmFsaWRhdGlvblBvbGljeSB7IFVzZSwgUmV2YWxpZGF0ZSwgUmVsb2FkLCBMb2FkIH07CkBA
IC0xNzksMTMgKzE3NywxMSBAQCBwcml2YXRlOgogCiAgICAgVGltZXIgbV9nYXJiYWdlQ29sbGVj
dERvY3VtZW50UmVzb3VyY2VzVGltZXI7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQog
ICAgIHN0cnVjdCBJbml0aWF0b3JJbmZvIHsKICAgICAgICAgQXRvbWljU3RyaW5nIG5hbWU7CiAg
ICAgICAgIGRvdWJsZSBzdGFydFRpbWU7CiAgICAgfTsKICAgICBIYXNoTWFwPENhY2hlZFJlc291
cmNlKiwgSW5pdGlhdG9ySW5mbz4gbV9pbml0aWF0b3JNYXA7Ci0jZW5kaWYKIAogICAgIC8vIDI5
IGJpdHMgbGVmdAogICAgIGJvb2wgbV9hdXRvTG9hZEltYWdlcyA6IDE7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGVyZm9ybWFuY2UuY3BwCmluZGV4IGVkMzlhMWQxNTA4MWI0NzY0YWU5N2FmYWY3MzhiYTk2Nzk3
ZTczMmIuLjA4YzcwMzFmNGZkMTI4MWQ1ZDViNTE0ZTdkYzQzMzA4MGI1NGFjZDQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCkBAIC00NywxNSArNDcsMTEgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIHN0YXRpYyBjb25zdCBz
aXplX3QgZGVmYXVsdFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSA9IDE1MDsKLSNlbmRpZgogCiBQ
ZXJmb3JtYW5jZTo6UGVyZm9ybWFuY2UoRnJhbWUmIGZyYW1lKQogICAgIDogRE9NV2luZG93UHJv
cGVydHkoJmZyYW1lKQotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgLCBtX3Jlc291
cmNlVGltaW5nQnVmZmVyU2l6ZShkZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKQotI2Vu
ZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgLCBtX3JlZmVyZW5jZVRpbWUoZnJh
bWUuZG9jdW1lbnQoKS0+bG9hZGVyKCkgPyBmcmFtZS5kb2N1bWVudCgpLT5sb2FkZXIoKS0+dGlt
aW5nKCkucmVmZXJlbmNlTW9ub3RvbmljVGltZSgpIDogbW9ub3RvbmljYWxseUluY3JlYXNpbmdU
aW1lKCkpCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgICwgbV91c2VyVGltaW5nKG51bGxw
dHIpCkBAIC05MSwxNCArODcsMTEgQEAgUGVyZm9ybWFuY2VUaW1pbmcqIFBlcmZvcm1hbmNlOjp0
aW1pbmcoKSBjb25zdAogICAgIHJldHVybiBtX3RpbWluZy5nZXQoKTsKIH0KIAotI2lmIEVOQUJM
RShQRVJGT1JNQU5DRV9USU1FTElORSkKLVBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+
IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3QKK1JlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXMoKSBjb25zdAogewogICAgIFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0Ojpj
cmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgZW50cmllcy0+YXBw
ZW5kQWxsKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJD
RV9USU1JTkcpCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWlu
ZykgewpAQCAtMTExLDE2ICsxMDQsMTQgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlz
dD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAogICAgIHJldHVybiBlbnRy
aWVzOwogfQogCi1QYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6
d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSkKK1JlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5cGUoY29uc3Qg
U3RyaW5nJiBlbnRyeVR5cGUpCiB7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBl
bnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwogCi0jaWYgRU5BQkxFKFJF
U09VUkNFX1RJTUlORykKICAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoZW50
cnlUeXBlLCAicmVzb3VyY2UiKSkgewogICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9y
ZXNvdXJjZVRpbWluZ0J1ZmZlcikKICAgICAgICAgICAgIGVudHJpZXMtPmFwcGVuZChyZXNvdXJj
ZSk7CiAgICAgfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1f
dXNlclRpbWluZykgewpAQCAtMTM1LDE4ICsxMjYsMTYgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3Ry
aW4KICAgICByZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5
TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBu
YW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSkKK1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlz
dD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25z
dCBTdHJpbmcmIGVudHJ5VHlwZSkKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+
IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUo
UkVTT1VSQ0VfVElNSU5HKQogICAgIGlmIChlbnRyeVR5cGUuaXNOdWxsKCkgfHwgZXF1YWxMZXR0
ZXJzSWdub3JpbmdBU0NJSUNhc2UoZW50cnlUeXBlLCAicmVzb3VyY2UiKSkgewogICAgICAgICBm
b3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewogICAgICAgICAg
ICAgaWYgKHJlc291cmNlLT5uYW1lKCkgPT0gbmFtZSkKICAgICAgICAgICAgICAgICBlbnRyaWVz
LT5hcHBlbmQocmVzb3VyY2UpOwogICAgICAgICB9CiAgICAgfQotI2VuZGlmCiAKICNpZiBFTkFC
TEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTYxLDIwICsxNTAs
MTYgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtp
dEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW4KICAgICByZXR1cm4gZW50cmllczsKIH0KIAot
I2VuZGlmIC8vIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLQotI2lmIEVOQUJMRShSRVNP
VVJDRV9USU1JTkcpCi0KLXZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdENsZWFyUmVzb3VyY2VUaW1p
bmdzKCkKK3ZvaWQgUGVyZm9ybWFuY2U6OmNsZWFyUmVzb3VyY2VUaW1pbmdzKCkKIHsKICAgICBt
X3Jlc291cmNlVGltaW5nQnVmZmVyLmNsZWFyKCk7CiB9CiAKLXZvaWQgUGVyZm9ybWFuY2U6Ondl
YmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBzaXplKQordm9pZCBQZXJm
b3JtYW5jZTo6c2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIHNpemUpCiB7CiAg
ICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgPSBzaXplOwogICAgIGlmIChpc1Jlc291cmNl
VGltaW5nQnVmZmVyRnVsbCgpKQotICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUo
ZXZlbnROYW1lcygpLndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwg
ZmFsc2UpKTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMo
KS5yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKIHZv
aWQgUGVyZm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9y
TmFtZSwgRG9jdW1lbnQqIGluaXRpYXRvckRvY3VtZW50LCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBkb3VibGUgaW5pdGlh
dGlvblRpbWUsIGRvdWJsZSBmaW5pc2hUaW1lKQpAQCAtMTg3LDcgKzE3Miw3IEBAIHZvaWQgUGVy
Zm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwg
RG9jdW1lbnQqIGluaXRpCiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5hcHBlbmQoZW50cnkp
OwogCiAgICAgaWYgKGlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkpCi0gICAgICAgIGRpc3Bh
dGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkud2Via2l0cmVzb3VyY2V0aW1pbmdi
dWZmZXJmdWxsRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgICAgICBkaXNwYXRjaEV2ZW50KEV2
ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLnJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBm
YWxzZSwgZmFsc2UpKTsKIH0KIAogYm9vbCBQZXJmb3JtYW5jZTo6aXNSZXNvdXJjZVRpbWluZ0J1
ZmZlckZ1bGwoKQpAQCAtMTk1LDggKzE4MCw2IEBAIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3Vy
Y2VUaW1pbmdCdWZmZXJGdWxsKCkKICAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5z
aXplKCkgPj0gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7CiB9CiAKLSNlbmRpZiAvLyBFTkFC
TEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogdm9pZCBQZXJm
b3JtYW5jZTo6d2Via2l0TWFyayhjb25zdCBTdHJpbmcmIG1hcmtOYW1lLCBFeGNlcHRpb25Db2Rl
JiBlYykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5M2Y0NDA2NDRiYjc2M2Zh
N2RjOGQxN2U0ODYyZTMyMzVlOWM3NmY3Li4xNzZjMTUwYzRhOGY0ODczZDhiNzY2NDQ5MzMyNzli
Mzg4NWQ0MTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC00MCw3ICs0MCw2IEBA
CiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFu
Y2VUaW1pbmcuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKLSNpbmNsdWRlIDx3dGYv
UGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNjQsMTggKzYz
LDE0IEBAIHB1YmxpYzoKICAgICBQZXJmb3JtYW5jZVRpbWluZyogdGltaW5nKCkgY29uc3Q7CiAg
ICAgZG91YmxlIG5vdygpIGNvbnN0OwogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5F
KQotICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdldEVudHJpZXMo
KSBjb25zdDsKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiB3ZWJraXRHZXRF
bnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKLSAgICBQYXNzUmVmUHRyPFBl
cmZvcm1hbmNlRW50cnlMaXN0PiB3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYg
bmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwotI2VuZGlmCisgICAgUmVmUHRyPFBlcmZv
cm1hbmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzKCkgY29uc3Q7CisgICAgUmVmUHRyPFBlcmZvcm1h
bmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsK
KyAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGdldEVudHJpZXNCeU5hbWUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7CiAKLSNpZiBFTkFCTEUoUkVT
T1VSQ0VfVElNSU5HKQotICAgIHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKLSAg
ICB2b2lkIHdlYmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBpbnQpOwor
ICAgIHZvaWQgY2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKKyAgICB2b2lkIHNldFJlc291cmNlVGlt
aW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCk7CiAKICAgICB2b2lkIGFkZFJlc291cmNlVGltaW5nKGNv
bnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQqLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgZG91YmxlIGluaXRpYXRpb25UaW1lLCBkb3Vi
bGUgZmluaXNoVGltZSk7Ci0jZW5kaWYKIAogICAgIHVzaW5nIFJlZkNvdW50ZWQ8UGVyZm9ybWFu
Y2U+OjpyZWY7CiAgICAgdXNpbmcgUmVmQ291bnRlZDxQZXJmb3JtYW5jZT46OmRlcmVmOwpAQCAt
OTcsMTEgKzkyLDkgQEAgcHJpdmF0ZToKIAogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNl
TmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBlcmZvcm1hbmNl
VGltaW5nPiBtX3RpbWluZzsKLSAgICAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorCiAg
ICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gbV9yZXNvdXJjZVRpbWluZ0J1ZmZl
cjsKICAgICB1bnNpZ25lZCBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZTsKLSNlbmRpZgogCiAg
ICAgZG91YmxlIG1fcmVmZXJlbmNlVGltZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlk
bAppbmRleCA5YjBhOGI3NzAwMGMyOGU0MDUyOTgyMmVjZTM1MjY5MGFlY2RlNmY2Li45NDg5Njkw
YjM1NjE1MmY2ZWQwN2FmNDczODUzZjYzMjMyZjQ1YmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmlkbApAQCAtMzYsMTggKzM2LDE1IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFBl
cmZvcm1hbmNlTmF2aWdhdGlvbiBuYXZpZ2F0aW9uOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBQ
ZXJmb3JtYW5jZVRpbWluZyB0aW1pbmc7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9QRVJGT1JNQU5D
RV9USU1FTElORSkgJiYgRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FCi0gICAgUGVyZm9ybWFu
Y2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllcygpOwotICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0
IHdlYmtpdEdldEVudHJpZXNCeVR5cGUoRE9NU3RyaW5nIGVudHJ5VHlwZSk7Ci0gICAgUGVyZm9y
bWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0
aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSk7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0UnVudGlt
ZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmllcygpOworICAg
IFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5TGlzdCBn
ZXRFbnRyaWVzQnlUeXBlKERPTVN0cmluZyBlbnRyeVR5cGUpOworICAgIFtFbmFibGVkQXRSdW50
aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5TGlzdCBnZXRFbnRyaWVzQnlOYW1l
KERPTVN0cmluZyBuYW1lLCBvcHRpb25hbCBET01TdHJpbmcgZW50cnlUeXBlKTsKIAotI2lmIGRl
ZmluZWQoRU5BQkxFX1JFU09VUkNFX1RJTUlORykgJiYgRU5BQkxFX1JFU09VUkNFX1RJTUlORwot
ICAgIHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKLSAgICB2b2lkIHdlYmtpdFNl
dFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBsb25nIG1heFNpemUpOwogCi0gICAg
YXR0cmlidXRlIEV2ZW50SGFuZGxlciBvbndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbDsK
LSNlbmRpZgorICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSB2b2lkIGNsZWFy
UmVzb3VyY2VUaW1pbmdzKCk7CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmdd
IHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGxvbmcgbWF4U2l6ZSk7
CisKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gYXR0cmlidXRlIEV2ZW50
SGFuZGxlciBvbnJlc291cmNldGltaW5nYnVmZmVyZnVsbDsKIAogICAgIC8vIFNlZSBodHRwOi8v
d3d3LnczLm9yZy9UUi8yMDEyL0NSLXVzZXItdGltaW5nLTIwMTIwNzI2LwogI2lmIGRlZmluZWQo
RU5BQkxFX1VTRVJfVElNSU5HKSAmJiBFTkFCTEVfVVNFUl9USU1JTkcKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwCmluZGV4IDMyZGI3Y2ZlNTYzNWNkZjMyYzMwNWVjNGVh
YzA5NTAxZTVmODNlZTUuLjM3NGUxNDI5MzE4M2Y5NzNmYWE3ODQxODFkZmQ1OWUyMzA5NWI1YWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcApAQCAtMzEsNyArMzEs
NyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIK
IAotI2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUp
CisjaWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNjks
NCArNjksNCBAQCBkb3VibGUgUGVyZm9ybWFuY2VFbnRyeTo6ZHVyYXRpb24oKSBjb25zdAogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykgJiYg
RU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5H
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmggYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAppbmRleCAxMjlhMjQ2NDBjYzRk
MmEzNWNhZWFiNmJhMmYxYWZjODE4NGYzNjJiLi41OTA1ZWJkNWM4OGE1ZmE2Yzg1OTVkYmRhMDc4
MGFkODZkZGRlZGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
RW50cnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaApAQCAt
MzIsNyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZUVudHJ5X2gKICNkZWZpbmUgUGVyZm9y
bWFuY2VFbnRyeV9oCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1B
TkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSAiUGVyZm9y
bWFuY2UuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgpAQCAtNzEsNSArNzEsNSBAQCBw
cml2YXRlOgogCiB9CiAKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQ
RVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykKICNlbmRp
ZiAvLyAhZGVmaW5lZChQZXJmb3JtYW5jZUVudHJ5X2gpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5LmlkbAppbmRleCA5YmNhZjRjMzQwMTg5ODU1YTJiNjRkNmYwNWIyOThjY2Mx
ZjcyM2U2Li5mMzdlMmEzY2JhNDMyNDEzYTBhZjdiYmM0NmE4ZDVmMTQ0YmZhZjIyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKIC8v
IFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1maWxlL3RpcC9zcGVjcy9Q
ZXJmb3JtYW5jZVRpbWVsaW5lL092ZXJ2aWV3Lmh0bWwKIFsKICAgICBDb25kaXRpb25hbD1XRUJf
VElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5FLAorICAgIEVuYWJs
ZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKIF0gaW50
ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJp
bmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAK
aW5kZXggZDlmYTA1NTc3ZGQ1NzllOWNhODI3NGRkNzhiNGFjZTM0YmM3OTI4Yi4uYzAzNTkyOGIz
MWM2ZGU5ZDYxZDg2MzExNjMxZDMzNTZmYzNiODI2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIgogCi0jaWYgRU5BQkxF
KFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUo
V0VCX1RJTUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKIApAQCAtNzUsNCAr
NzUsNCBAQCB2b2lkIFBlcmZvcm1hbmNlRW50cnlMaXN0Ojpzb3J0KCkKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJG
T1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaAppbmRleCA5N2EyMTJkZDZmZDA1NDQ3
NjZlZDc1NjNjMTc1NmI5MTM2ZDdmZWQ2Li5kMmM0MWY1YWQ0N2YxOGFiMTEzMGQzYzA1NWFlMzUx
MTAyYjBjNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50
cnlMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5o
CkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKICNkZWZp
bmUgUGVyZm9ybWFuY2VFbnRyeUxpc3RfaAogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVO
QUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2lu
Y2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAg
LTY0LDUgKzY0LDUgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5k
aWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUp
CisjZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vIFBlcmZvcm1hbmNlRW50
cnlMaXN0X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwK
aW5kZXggN2UyNWE4NWNlNmM4OTM4NGVmZTU1MmY4Mzc2OTI1OTM1ODAyODhmOS4uMTgwNjZjYzM3
ZTU3M2YyMGUxYTkwNWMzODhiMDIxODE4ZWI3OTM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKQEAgLTMyLDEwICszMiw5IEBACiBbCiAgICAgTm9J
bnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9V0VCX1RJTUlORywKLSAgICBDb25kaXRp
b25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwKKyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNl
VGltaW5nLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBQZXJm
b3JtYW5jZUVudHJ5TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
bGVuZ3RoOwogICAgIGdldHRlciBQZXJmb3JtYW5jZUVudHJ5IGl0ZW0odW5zaWduZWQgbG9uZyBp
bmRleCk7CiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmNwcAppbmRleCAzMWI4OTcxMzdmNTExZTQ1Zjc3NTdlOTU2YzI2ZjM3NTg3YWI2
YTYwLi40YjBlMDdmOGQxN2I0ODAwMTdlZGI4Y2Y2NWVjYWJjOTMzZmVjOWUyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKQEAgLTMy
LDcgKzMyLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmgiCiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorI2lmIEVOQUJM
RShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJEb2N1bWVu
dExvYWRUaW1pbmcuaCIKQEAgLTE5OSw1ICsxOTksNCBAQCBkb3VibGUgUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZzo6cmVzb3VyY2VUaW1lVG9Eb2N1bWVudE1pbGxpc2Vjb25kcyhpbnQgZGVsdGFN
aQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQorI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAppbmRleCA5OWRmYzViY2RjZGM3
OWUzNTNlOTQ5MzZjNDgyODUzNjE3YzVmNTNmLi5hZGViMTQ0ZmNkZjhmYTY0MTk2Zjc1MmM0Yzc3
MjkxZTRlMzViZmEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaApAQCAtMzIsNyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nX2gKICNkZWZpbmUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZ19oCiAKLSNpZiBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZFRpbWluZy5oIgpA
QCAtODUsNiArODUsNSBAQCBwcml2YXRlOgogCiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VS
Q0VfVElNSU5HKQotCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCiAjZW5kaWYgLy8gIWRl
ZmluZWQoUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZ19oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKaW5kZXggM2YwMTFiMjNiMDU3YTFh
ZTBlNjM0ZWYxOTQzYjEwMWZjZTY4NjZkMy4uMjVhOTI4YjA5ZjJmYTYwY2NiMzdhNTM0YzY3MmYy
ZmRmZWZmMjg2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVz
b3VyY2VUaW1pbmcuaWRsCkBAIC0zMCw3ICszMCw4IEBACiAKIC8vIFNlZTogaHR0cHM6Ly9kdmNz
LnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1maWxlL3RpcC9zcGVjcy9SZXNvdXJjZVRpbWluZy9PdmVy
dmlldy5odG1sCiBbCi0gICAgQ29uZGl0aW9uYWw9UkVTT1VSQ0VfVElNSU5HLAorICAgIENvbmRp
dGlvbmFsPVdFQl9USU1JTkcsCisgICAgRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZwog
XSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZyA6IFBlcmZvcm1hbmNlRW50cnkg
ewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaW5pdGlhdG9yVHlwZTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDRlZWI5NDhlMzA0ZWExOGQ4MzUyYTEx
NGMxYjcwNjFkMTY5YjQxZTMuLmY5NjUwYTUzZWQ0NmNkZDIwNGQ3ZWMwYTgwZjU0M2NmY2I5ODUy
ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTMzMjAsNCArMzMyMCw5
IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sIGVuYWJsZSkK
IH0KICNlbmRpZgogCit2b2lkIEludGVybmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJv
b2wgZW5hYmxlKQoreworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVz
KCkuc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGVuYWJsZSk7Cit9CisKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oCmluZGV4IDYwMjQ4YWMyMjJmYzM4NGJiYzg0ZTdkYmRhZDVkYjZlYjEw
ZTkyNDcuLmEzYjA1YjhjZWRhYjk5NjI1ODI0OTgxMWRhZjViNzdmYzYyODA3ZDQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaApAQCAtNDY3LDYgKzQ2Nyw3IEBAIHB1YmxpYzoKICAgICAK
ICAgICB2b2lkIHNldFZpZXdwb3J0Rm9yY2VBbHdheXNVc2VyU2NhbGFibGUoYm9vbCk7CiAgICAg
dm9pZCBzZXRMaW5rUHJlbG9hZFN1cHBvcnQoYm9vbCk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRp
bWluZ1N1cHBvcnQoYm9vbCk7CiAKICNpZiBFTkFCTEUoQ1NTX0dSSURfTEFZT1VUKQogICAgIHZv
aWQgc2V0Q1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwKaW5kZXggODFkYTQ3MTU3NWEwODFiZjZhY2M1NGZmNzI4NGNkNjQ2NTkzNTEzZS4u
YTNhZWYxMjJmZGFmNTM1YmJiYjc3MTBiYzdhZjQyMDk0ZTZkY2E2MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtNDUxLDQgKzQ1MSw1IEBAIGVudW0gQXV0b0ZpbGxCdXR0
b25UeXBlIHsKICAgICB2b2lkIHNldENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2xlYW4gZW5hYmxl
KTsKICNlbmRpZgogCisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbGVhbiBz
Y2FsYWJsZSk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDkzMDRiNWFlZDI4
MjZhOTE2MTE0ZGVmZGM5YmY1OWZiMGQ1NmI3MDAuLjc2OGUzZTU5ZDdlMTlhYWFhMDRmMDIyMTc4
MzVjZTk2OTY3YzA5MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5j
bWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTE1OCw3ICsx
NTgsNiBAQCBtYWNybyhXRUJLSVRfT1BUSU9OX0JFR0lOKQogICAgIFdFQktJVF9PUFRJT05fREVG
SU5FKEVOQUJMRV9OT1RJRklDQVRJT05TICJUb2dnbGUgRGVza3RvcCBOb3RpZmljYXRpb25zIFN1
cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9PUklF
TlRBVElPTl9FVkVOVFMgIlRvZ2dsZSBPcmllbnRhdGlvbiBFdmVudHMgc3VwcG9ydCIgUFJJVkFU
RSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BERktJVF9QTFVHSU4gIlRv
Z2dsZSBQREZLaXQgcGx1Z2luIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQotICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElORSAiVG9nZ2xlIFBlcmZvcm1hbmNl
IFRpbWVsaW5lIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5F
KEVOQUJMRV9QT0lOVEVSX0xPQ0sgIlRvZ2dsZSBwb2ludGVyIGxvY2sgc3VwcG9ydCIgUFJJVkFU
RSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMg
IlRvZ2dsZSBQcm94aW1pdHkgRXZlbnRzIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJ
VF9PUFRJT05fREVGSU5FKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QgIlRvZ2dsZSBwdWJsaWMg
c3VmZml4IGxpc3Qgc3VwcG9ydCIgUFJJVkFURSBPRkYpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWU2M2E5MGYwMzQwYTky
ZTNkMmNmNWVhMTk4YmEyZWQwNThkNDIwMi4uMTNiNzFjODljOTlkZjY4NzlmNTAwY2Q3NTM0ZTM1
NjNmMTkwZDQ1OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE2LTA1LTAxICBZb2F2IFdlaXNz
ICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEg
cnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisg
ICAgICAgIEFkZGVkIHRlc3RzIHRoYXQgbWFrZSBzdXJlIFJlc291cmNlVGltaW5nIEFQSXMgYXJl
IGV4cG9zZWQgYW5kIHRoYXQgcmVzb3VyY2VzCisgICAgICAgIHNob3cgdXAgYXMgZW50cmllcyBp
biB0aGUgcGVyZm9ybWFuY2UgdGltZWxpbmUuCisKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cv
d2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBl
cmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbDogUmVtb3ZlZCAiLy87
Ii4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNl
LXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sOiBB
ZGRlZC4KKwogMjAxNi0wNC0yOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIwMDIzMi4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3Jt
YW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
V2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uY2ZiOTE1NGU5YjNiNDQyNzE4MmY3NmM0ZmJlZTI3ZTU4MzI2
ZTIzYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNDYgQEAKK1RoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhh
dCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3QsIGFsb25n
IHdpdGggdGhlaXIgdHlwZXMuCisKK3dpbmRvdy5wZXJmb3JtYW5jZSBbb2JqZWN0IFBlcmZvcm1h
bmNlXQord2luZG93LnBlcmZvcm1hbmNlLmFkZEV2ZW50TGlzdGVuZXIgW2Z1bmN0aW9uXQord2lu
ZG93LnBlcmZvcm1hbmNlLmNsZWFyUmVzb3VyY2VUaW1pbmdzIFtmdW5jdGlvbl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS5kaXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5n
ZXRFbnRyaWVzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1l
IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlIFtmdW5jdGlv
bl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtvYmplY3QgUGVyZm9ybWFuY2VOYXZp
Z2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9CQUNLX0ZPUldBUkQg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfTkFWSUdBVEUgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVMT0FEIFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX1JFU0VSVkVEIFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5yZWRpcmVjdENvdW50IFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFu
Y2Uubm93IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5vbnJlc291cmNldGltaW5nYnVm
ZmVyZnVsbCBbbnVsbF0KK3dpbmRvdy5wZXJmb3JtYW5jZS5yZW1vdmVFdmVudExpc3RlbmVyIFtm
dW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5zZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUg
W2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZyBbb2JqZWN0IFBlcmZvcm1hbmNl
VGltaW5nXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25uZWN0RW5kIFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmNvbm5lY3RTdGFydCBbbnVtYmVyXQord2luZG93LnBl
cmZvcm1hbmNlLnRpbWluZy5kb21Db21wbGV0ZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcuZG9tSW50ZXJhY3RpdmUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcuZG9tTG9hZGluZyBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWlu
Zy5kb21haW5Mb29rdXBFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9t
YWluTG9va3VwU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZmV0Y2hT
dGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5sb2FkRXZlbnRFbmQgW251
bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubG9hZEV2ZW50U3RhcnQgW251bWJlcl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0IFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UudGltaW5nLnJlZGlyZWN0RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nLnJlZGlyZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50
aW1pbmcucmVxdWVzdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJl
c3BvbnNlRW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3Rh
cnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuc2VjdXJlQ29ubmVjdGlvblN0
YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50RW5kIFtu
dW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50U3RhcnQgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LnBl
cmZvcm1hbmNlLnRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtwcmludGVk
IGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1h
bmNlIFtzdHJpbmddCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93
aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNWU4MmM2YTRiMmJiZThjNWE3Yzg5ZDVhYTNk
NGUwNDEyNzgxMjYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2lu
ZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sCkBA
IC0wLDAgKzEsMTA0IEBACis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVz
IHRoYXQgYXJlIHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0LCBh
bG9uZyB3aXRoIHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+PC9wcmU+CisK
KzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNvdXJj
ZVRpbWluZ1N1cHBvcnQodHJ1ZSk7CisgICAgCit2YXIgbG9nQnVmZmVyID0gW107CitmdW5jdGlv
biBsb2cocykKK3sKKyAgICBsb2dCdWZmZXIucHVzaChzKTsKK30KKwordmFyIHByZSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCdwcmUnKTsKK2Z1bmN0aW9uIGZsdXNoTG9nKCkKK3sKKyAgICB2
YXIgbG9nTWVzc2FnZSA9IGxvZ0J1ZmZlci5qb2luKCIiKTsKKyAgICBwcmUuYXBwZW5kQ2hpbGQo
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobG9nTWVzc2FnZSkpOworfQorCitmdW5jdGlvbiB0cnlF
dmFsKHN0cmluZykKK3sKKyAgICB0cnkgeworICAgICAgICByZXR1cm4gZXZhbChzdHJpbmcpOwor
ICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgcmV0dXJuIG5ldyBTdHJpbmcoIkNhdWdodCBleGNl
cHRpb246ICIgKyBlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIHR5cGVPZk51bGxBd2FyZSh2YWx1
ZSkKK3sKKyAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3QiICYmIHZhbHVlID09IG51bGwp
CisgICAgICAgIHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKK30KKwor
ZnVuY3Rpb24gdHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIgdmFsdWVUeXBl
ID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBlID09ICJvYmpl
Y3QiCisgICAgICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKQorICAg
ICAgICA6ICJbIiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9nVmFsdWUodmFs
dWVOYW1lKQoreworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsKKyAgICB2YXIg
dmFsdWVUeXBlID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERvbid0IHRhaW50
IHRoZSB0ZXN0IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUgPT0gbG9nQnVm
ZmVyIHx8IHZhbHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG9uJ3QgdGFp
bnQgdGhlIHRlc3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19fdmlzaXRlZEJ5
TG9nVmFsdWVfXy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFs
dWVfXy8udGVzdCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBXb3JrIGFy
b3VuZCBGaXJlZm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05XS8udGVzdCh2
YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZpbml0ZSByZWN1
cnNpb24KKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5
TG9nVmFsdWVfXykgeworICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRlZCBhYm92ZSBh
cyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsb2codmFsdWVOYW1lICsgIiAiICsgdHlwZVN0cmlu
Z051bGxBd2FyZSh2YWx1ZSkgKyAiXG4iKTsKKworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVj
dCIpIHsKKyAgICAgICAgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAgICAg
ICAgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB2YWx1ZU5hbWU7CisgICAg
ICAgIGxvZ1Byb3BlcnRpZXModmFsdWUsIHZhbHVlTmFtZSk7CisgICAgfQorfQorCitmdW5jdGlv
biBsb2dQcm9wZXJ0aWVzKG9iamVjdCwgb2JqZWN0TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkgPSBu
ZXcgQXJyYXk7CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KSB7CisgICAgICAgIGFy
cmF5LnB1c2gocHJvcGVydHkpOworICAgIH0KKyAgICBhcnJheS5zb3J0KCk7CisgICAgZm9yICh2
YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgeworICAgICAgICB2YXIgcHJvcGVydHkg
PSBhcnJheVtpXTsKKyAgICAgICAgbG9nVmFsdWUob2JqZWN0TmFtZSArICIuIiArIHByb3BlcnR5
KTsKKyAgICB9Cit9CisKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UnKTsKK3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcgPSAndGltaW5nIGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1
ZSgnd2luZG93LnBlcmZvcm1hbmNlLnRpbWluZycpOword2luZG93LnBlcmZvcm1hbmNlLm5hdmln
YXRpb24gPSAnbmF2aWdhdGlvbiBpcyBub3QgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRv
dy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UgPSAncGVyZm9y
bWFuY2UgaXMgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOwor
Zmx1c2hMb2coKTsKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNv
dXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5j
ZS5odG1sCmluZGV4IDBhOGY4MWVmMTI1ODg4MjVkNWQxNmQ1YTlkMmRkYmU3NmI4NjkzMGQuLjFi
MTJlMTdjYWYwODE2OGZjM2I5ZjhjZGJjZGJlMWNjMWQ3ZjBjMzYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1s
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJm
b3JtYW5jZS5odG1sCkBAIC0zMCw3ICszMCw3IEBAIGZ1bmN0aW9uIHRyeUV2YWwoc3RyaW5nKQog
CiBmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpCiB7Ci0gICAgaWYgKHR5cGVvZiB2YWx1
ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxsKSAvLzsKKyAgICBpZiAodHlwZW9mIHZhbHVl
ID09ICJvYmplY3QiICYmIHZhbHVlID09IG51bGwpCiAgICAgICAgIHJldHVybiAibnVsbCI7CiAg
ICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKIH0KQEAgLTYxLDcgKzYxLDcgQEAgZnVuY3Rpb24gbG9n
VmFsdWUodmFsdWVOYW1lKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBBdm9pZCBpbmZpbml0
ZSByZWN1cnNpb24KLSAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlz
aXRlZEJ5TG9nVmFsdWVfXykgeyAvLzsKKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYm
IHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXykgewogICAgICAgICBsb2codmFsdWVOYW1lICsg
IiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVl
X18gKyAiXVxuIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1l
bnRyaWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2Uv
cGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjJkY2JjNTA0Zjk1OTI3ZWQxZGU5NjgzZWYxODc1OTg0MWE0OTFhOWYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJl
c291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1BBU1Mg
Zm91bmRJbWcgaXMgdHJ1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Bl
cmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWlu
Zy1lbnRyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWNiODU5YjRjNzRiOTljNjBhZjU2N2M1YjliYTk0
ZTFmNjZiMjE0ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVy
Zm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbApAQCAtMCww
ICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHNjcmlwdD4KKyAgICBpZiAod2lu
ZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9y
dCh0cnVlKTsKKyAgICB2YXIgdXJsID0gIi4uLy4uL3Jlc291cmNlcy9zcXVhcmUxMDAucG5nPyI7
CisgICAgdXJsICs9IE1hdGgucmFuZG9tKCk7CisgICAgZG9jdW1lbnQud3JpdGUoIjxpbWcgc3Jj
PSciICsgdXJsICsgIic+Iik7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIHZhciBmb3VuZElt
ZyA9IGZhbHNlOworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24o
KSB7CisgICAgICAgIHZhciByZXNvdXJjZXMgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBl
KCdyZXNvdXJjZScpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc291cmNlcy5sZW5n
dGg7ICsraSkgeworICAgICAgICAgICAgaWYgKHJlc291cmNlc1tpXS5uYW1lLmluZGV4T2YoInNx
dWFyZTEwMCIpICE9IC0xKSB7CisgICAgICAgICAgICAgICAgZm91bmRJbWcgPSB0cnVlOworICAg
ICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9OworICAgICAgICBz
aG91bGRCZVRydWUoImZvdW5kSW1nIik7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQor
ICAgICAgICAgICAgd2luZG93LmludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFs
c2UpOworICAgIH0pOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9D
aGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggNDM5OGJlNjdkOTE2NmQzZDFmYjJkN2QyMTJmMzQz
ZmY1ZjM1NmU4YS4uZWYzMjBkMjU5NjM1N2VjYjY0OTMxMTViMjAyMDUzNzViNzhmODIwOSAxMDA2
NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE2
LTA1LTAxICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3Vy
Y2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4
IENocmlzdGVuc2VuLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisKIDIwMTYt
MDQtMjkgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMDAyMzIuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277847</attachid>
            <date>2016-05-01 02:20:59 -0700</date>
            <delta_ts>2016-05-01 02:25:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160501112132.patch</filename>
            <type>text/plain</type>
            <size>55543</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
OWU1YTZhODUyYzVlMmFiODZlNGY2ZDMwNmY1MTQ0NzFkOTUzMzVhLi42YWEwY2UwNDY2ZTQzNGMx
NzkwMTI4MGFhNjY1Njc4NTAwNGZiNzYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaDogQWRkZWQgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxp
c3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgYXMgcHJvcGVydHkgbmFtZXMuCisKIDIw
MTYtMDQtMzAgIEtvbnN0YW50aW4gVG9rYXJldiAgPGFubnVsZW5AeWFuZGV4LnJ1PgogCiAgICAg
ICAgIEd1YXJkIE9iakMtc3BlY2lmaWMgY29kZSBpbiBIZWFwLmNwcCB3aXRoIFVTRShGT1VOREFU
SU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCmluZGV4IDFiNWQ1NjBjZWZiMjY5ZTdjNjM5MDA4NjNhYmNmYmFlOGIwNWVh
MzkuLjc3MDZlMzQ0ZWFiYTAwMzViYjZkODY4MjIzYzI2Mzk0NzVmNWFlOTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSw1NyBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4K
KworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBNb3ZlIHRoZSBS
ZXNvdXJjZVRpbWluZyBBUEkgZnJvbSBiZWluZyBiZWhpbmQgYSBidWlsZCB0aW1lIGZsYWcgdG8g
YmUgYmVoaW5kIGFuCisgICAgICAgIG9mZi1ieS1kZWZhdWx0IHJ1bnRpbWUgZmxhZywgdGhhdCBj
YW4gYmUgdHVybmVkIG9uIHVzaW5nIGludGVybmFscy4KKworICAgICAgICBUZXN0czogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5o
dG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJl
c291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1h
a2U6IEFkZGVkIGlkbCBmaWxlcyBmb3IgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRy
eUxpc3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGRlZCB0aGUgdmFyaW91cyBQZXJmb3JtYW5jZSog
ZmlsZXMgdG8gdGhlIHByb2plY3QuCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmNwcDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZs
YWcuCisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpSdW50aW1lRW5h
YmxlZEZlYXR1cmVzKToKKyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRSZXNvdXJjZVRpbWluZ0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6cmVzb3Vy
Y2VUaW1pbmdFbmFibGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50
cnlDdXN0b20uY3BwOiBSZW1vdmVkICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuIEFkZGVkIGJ1aWxk
IGZsYWcgYXJvdW5kIFVzZXJUaW1pbmcgcmVsYXRlZCBoIGZpbGVzLgorICAgICAgICAoV2ViQ29y
ZTo6dG9KUyk6IERlbGV0ZWQuCisgICAgICAgICogZG9tL0V2ZW50TmFtZXMuaDogUmVuYW1lZCB3
ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwgdG8gcmVzb3VyY2V0aW1pbmdidWZmZXJmdWxs
LgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwOiBSZXBsYWNl
ICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KToKKyAgICAgICAgKiBs
b2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VU
aW1pbmcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRO
b3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWlu
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9h
ZGVyOjpyZXZhbGlkYXRlUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OmxvYWRSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkRG9uZSk6CisgICAgICAgICog
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmg6IFJlbW92ZSAjaWYgZm9yIFJlc291
cmNlVGltaW5nLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuY3BwOiBSZW1vdmUgI2lmIGZv
ciBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpQZXJmb3Jt
YW5jZSk6IFJlbW92ZWQgI2lmIGZvciBSZXNvdXJjZVRpbWluZyByZWxhdGVkIGluaXRpYWxpemF0
aW9uLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMpOiBS
ZW5hbWVkIHRvIGdldEVudHJpZXMuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6d2Vi
a2l0R2V0RW50cmllc0J5VHlwZSk6IFJlbmFtZWQgdG8gZ2V0RW50cmllc0J5VHlwZS4KKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKTogUmVuYW1l
ZCB0byBnZXRFbnRyaWVzQnlOYW1lLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuaDogUmVt
b3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5p
ZGw6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNF
X1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5Lmg6
IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBw
YWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElO
RSBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZs
YWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oOiBSZW1vdmUgdGhlIFBF
UkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5TGlzdC5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZs
YWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmNwcDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaDogUmVtb3ZlIHRoZSBSRVNPVVJD
RV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuaWRsOiBSZXBsYWNlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZyB3aXRoIHJ1
bnRpbWUgZmxhZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFkZCBhIG1ldGhv
ZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bHM6OnNldFJlc291cmNlVGltaW5nU3VwcG9ydCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5h
bHMuaDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAg
KiB0ZXN0aW5nL0ludGVybmFscy5pZGw6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3Vy
Y2VUaW1pbmcuCisKIDIwMTYtMDQtMzAgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29t
PgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIxOTk2NDApOiBwb3NpdGlvbjphYnNvbHV0ZSBnZW5l
cmF0ZWQgY29udGVudCBpbmhlcml0cyB0ZXh0LWRlY29yYXRpb24gZnJvbSBpdHMgZWxlbWVudApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmll
cnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgK
aW5kZXggNGNjZjAzNTE0ZTJkMDViNmUxNDA4ZGQ1ODlmYmM1YWFkODYzOWZkOS4uMmIxZWQ2MGEy
MzY3NGVhN2U4NzMzYjkwNTIyMmEyMzZiNGNhNGY0NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC03MSw2ICs3MSw5IEBACiAg
ICAgbWFjcm8oTnVtYmVyKSBcCiAgICAgbWFjcm8oTnVtYmVyRm9ybWF0KSBcCiAgICAgbWFjcm8o
T2JqZWN0KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VFbnRyeSkgXAorICAgIG1hY3JvKFBlcmZv
cm1hbmNlRW50cnlMaXN0KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykg
XAogICAgIG1hY3JvKFByb21pc2UpIFwKICAgICBtYWNybyhQcm94eSkgXAogICAgIG1hY3JvKFJh
bmdlRXJyb3IpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDQyMGE3OTA0N2I2
ODQxMDhmNjMxNGQ3OWE5NWE3YzQyODdmMTk5ZjUuLmMzYTEyZTRjNjQ2YTYzOTY3NGViOTc2N2Ni
MjRlMmNmMWEwNTI5NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNTE4LDcg
KzUxOCwxMCBAQCBOT05fU1ZHX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL3BhZ2Uv
TG9jYXRpb24uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvTmF2aWdhdG9yLmlkbCBcCiAgICAg
JChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlLmlkbCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnkuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlk
bCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvU2NyZWVuLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1dlYktpdFBvaW50Lmlk
bCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKaW5kZXggMTMzZDhkMTVjNTQ3N2U3MThlMTFjMTQ2ZjJjNjkyOTE0MTVmMDRiYi4uMTljY2Vm
MTAyMzJmYThmZGU4ZTlkY2VhMmY4MTFhNWY1NjMyYmQ1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTk5MSw2ICs1OTkxLDE0
IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJB
RTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUu
Y3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9W
YWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FF
OUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJ
Q0IzOEZENEIxQ0NDRjM2NjAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEExQ0NDRjJERDAw
NTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwICovOyB9OworCQlDQjM4RkQ1MTFDQ0Y5Mzg5
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDREMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlRW50cnkuY3BwICovOyB9OworCQlDQjM4RkQ1MjFDQ0Y5Mzk0MDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5
LmggKi87IH07CisJCUNCMzhGRDUzMUNDRjkzOUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnlMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENCMzhGRDRGMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAq
LzsgfTsKKwkJQ0IzOEZENTQxQ0NGOTM5RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhG
RDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi87IH07CisJ
CUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTUx
Q0QyMUQ1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgKi87IH07CisJ
CUNCMzhGRDVBMUNEMjMyNTgwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZE
NTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi87
IH07CisJCUNCMzhGRDVCMUNEMjMyNUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENC
MzhGRDU5MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCAq
LzsgfTsKIAkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMTUxQTkzNEI0
MzAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwICovOyB9OwogCQlDQ0MyQjUxNDE1RjYxMzA2MDA0
OENERDYgLyogRGV2aWNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0NDMkI1
MTUxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2
IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovOyB9OwpAQCAtMTM5NTgsNiArMTM5NjYsMTQgQEAK
IAkJQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVj
dFJhdGlvVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRTE0
NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlRW50
cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBmaWxlRW5jb2Rpbmcg
PSA0OyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0IzOEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8q
IEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNCMzhGRDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlM
aXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVu
dHJ5TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1NTFDRDIxRDVC
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU4MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0I4
Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm90YXNrcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUNDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZUNv
bnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTgwNjQsNiArMTgw
ODAsNyBAQAogCQkJCThBODQ0RDAyMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5oICov
LAogCQkJCThBODQ0RDAzMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5pZGwgKi8sCiAJ
CQkJODZCRTMzRkIxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaCAqLywKKwkJ
CQlDQjM4RkQ0QTFDQ0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8sCiAJ
CQkJODZCRTMzRkMxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaWRsICovLAog
CQkJCTg2QkUzM0ZEMTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAg
Ki8sCiAJCQkJODZCRTMzRkUxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0
LmggKi8sCkBAIC0yMjMxOSw2ICsyMjMzNiw3IEBACiAJCQkJODNGMTIwNkExQjhDMTAzNjAwRDc1
RjYzIC8qIEpTTm9kZUZpbHRlckN1c3RvbS5jcHAgKi8sCiAJCQkJN0M5MUEzOEQxQjQ5OEFCRTAw
M0Y5RUZBIC8qIEpTTm9kZU9yU3RyaW5nLmNwcCAqLywKIAkJCQk3QzkxQTM4RTFCNDk4QUJFMDAz
RjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuaCAqLywKKwkJCQlDQjM4RkQ1NTFDRDIxRDVCMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLywKIAkJCQk5M0I3MEQ0RjA5RUIw
QzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcCAqLywKIAkJCQk5M0I3
MEQ1MDA5RUIwQzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggKi8sCiAJ
CQkJNDEyOURGODMxQkI1QjdGNzAwMzIyQTE2IC8qIEpTUmVhZGFibGVTdHJlYW1Qcml2YXRlQ29u
c3RydWN0b3JzLmNwcCAqLywKQEAgLTIyNjU1LDggKzIyNjczLDE0IEBACiAJCQkJQTlEMjQ3RjYw
RDc1N0UzMzAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmggKi8sCiAJCQkJRTUxQTgxREUxNzI5OEQ3
NzAwQkZDQTYxIC8qIEpTUGVyZm9ybWFuY2UuY3BwICovLAogCQkJCThBOUE1ODczMTFFODRDODEw
MDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlLmggKi8sCisJCQkJQ0IzOEZENEQxQ0NGOTM3RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8sCisJCQkJQ0IzOEZENEUxQ0NGOTM3RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCUNCMzhGRDRGMUNDRjkzN0Uw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLywKKwkJCQlDQjM4RkQ1MDFD
Q0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oICovLAogCQkJCThBOUE1
ODZFMTFFODRDMzUwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5jcHAgKi8sCiAJ
CQkJOEE5QTU4NkYxMUU4NEMzNjAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgg
Ki8sCisJCQkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5jcHAgKi8sCisJCQkJQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oICovLAogCQkJCTBGNDNDODVFMTg5RTE1QTYwMDAxOUFFMiAv
KiBKU1BlcmZvcm1hbmNlVGltaW5nLmNwcCAqLywKIAkJCQk4QTlBNTg3NzExRTg0Qzk4MDA4QUNG
RDEgLyogSlNQZXJmb3JtYW5jZVRpbWluZy5oICovLAogCQkJCUJDRUMwMUMwMEMyNzREREQwMDlG
NEVDOSAvKiBKU1NjcmVlbi5jcHAgKi8sCkBAIC0yNTU2Miw2ICsyNTU4Niw3IEBACiAJCQkJMkQy
OUVDQ0ExOTJGMUYxRDAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvcklPUy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkRFNzAwMjMxOTJGRTgyQTAwQjA5NzVDIC8qIERpc3BsYXlSZWZyZXNo
TW9uaXRvck1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQyOUVDQzgxOTJFQ0M4MzAwOTg0Qjc4
IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNC
MzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUNENTI0ODFCMThFMjAwRUQwMDA4QTA3RCAvKiBEaXNwbGF5U2xlZXBEaXNhYmxl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ4QzREQzAxNDI4MjIyQzAwMjZDRTcyIC8qIERpc3Bs
YXlTbGVlcERpc2FibGVyQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCUZEMzE2MDkxMTJCMDI2
RjcwMEMxQTM1OSAvKiBEaXN0YW5jZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzY5OCw2ICsyNzcy
Myw3IEBACiAJCQkJQkNFQTQ4NjgwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclZpZXcuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJFMjA1MDdFMThBNDU4QzIwMDgwNjQ3RSAvKiBSZW5kZXJWVFRDdWUu
aCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERkU0MEExNTM3NkIwMEIxMkE2OCAvKiBSZW5kZXJX
aWRnZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUNCMzhGRDVCMUNEMjMyNUIwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4OUNDQzUz
MEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTMzMDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25D
b21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OUNDMEI1NDE4QkU5ODQ5MDA2Q0VCQ0MgLyog
UmVwbGF5Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODAyNyw2ICsyODA1Myw3IEBA
CiAJCQkJQThFQTgwMEEwQTE5NTE2RTAwQThFRjVGIC8qIFN0eWxlU2hlZXRMaXN0LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzVFQjVFNTBFODFCRjZEMDBCMjU5NjUgLyogU3R5bGVTdXJyb3VuZERh
dGEuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCODEwMEU4MUYyQ0UwMEIyNTk2NSAvKiBTdHls
ZVRyYW5zZm9ybURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUNCMzhGRDU0MUNDRjkzOUUwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQlFNERF
QUExODE3QTkzREMzMDAwRTA0MzAgLyogU3R5bGVUcmVlUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDNUVCNjlBMEU4MURBNjMwMEIyNTk2NSAvKiBTdHlsZVZpc3VhbERhdGEuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUQwMDBFRDI4MTFDMUI5Q0QwMEM0NzcyNiAvKiBTdWJmcmFtZUxvYWRl
ci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yOTIwOSw2ICsyOTIzNiw3IEBACiAJCQkJQjI3NTM1Nzcw
QjA1MzgxNDAwMkNFNjRGIC8qIENvbG9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDNFREQ2
N0UxQjQ4NURCRjAwNjQwRTc1IC8qIENvbWJpbmVkRmlsdGVyc0FscGhhYmV0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTI2RTk0NEQ4MUFDNEIyREQwMDdCODVCNSAvKiBDb21iaW5lZFVSTEZpbHRl
cnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENEIxQ0NDRjM2NjAwNTkyQTNGIC8qIFBl
cmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTU4NEZFMzQxODY0RDVBRjAw
ODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJSG9zdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0
RkUyQjE4NjM4NzBGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElNb2R1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNjU1MEI2QTEwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC0zMTIyNyw2ICszMTI1NSw3IEBACiAJCQkJQkM5NkRCNDYwRjNBODgyMjAw
NTczQ0IzIC8qIFJlbmRlckJveE1vZGVsT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJD
RUE0ODY1MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCdXR0b24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQkNFNDQxMzMxMkY3NDhFMjAwOUI4NEI4IC8qIFJlbmRlckNvbWJpbmVUZXh0LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUNCMzhGRDVBMUNEMjMyNTgwMDU5MkEzRiAvKiBKU1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5MkYxNDQwQUQxODVG
RTAwNjkxQkQ0IC8qIFJlbmRlckNvdW50ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFQTQ4
NkQwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlEMzAyNzU0OTEyQTVGRTg0MDA0QkQ4MjggLyogUmVuZGVyRGV0YWls
c01hcmtlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTMyMDA0LDYgKzMyMDMzLDcgQEAKIAkJCQk0
NDRENEUyMzBGNzA4QjJFMDAzMTU4RTAgLyogV2ViQ29yZVVSTFJlc3BvbnNlSU9TLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJOTNGMTlCMDcwODI0NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmVWaWV3Lm0g
aW4gU291cmNlcyAqLywKIAkJCQlBNUU2MTY3MzE4OTQ1ODFGMDA5QURGNTAgLyogV2ViRGVidWdn
ZXJBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ1NzFDRDIxRTJBMDA1OTJBM0Yg
LyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFMEQ4
NEVCMTA0ODQzNkUwMDFBMTc5RSAvKiBXZWJFdmVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTIy
NUExNkI2MEQ1QzExRTkwMDA5MDI5NSAvKiBXZWJFdmVudFJlZ2lvbi5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUQzRjNEMzZEMUE2OUI3REMwMDU5RkMyQiAvKiBXZWJHTDJSZW5kZXJpbmdDb250ZXh0
LmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzIwODMsNiArMzIxMTMsNyBAQAogCQkJCUIxMEI2OTgx
MTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tlbml6ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q4MjAzMTExMzk1QUNFNzAwRjk1NkM2IC8qIFdlYldpbmRvd0FuaW1hdGlvbi5tbSBpbiBT
b3VyY2VzICovLAogCQkJCUY1NUIzRERGMTI1MUYxMkQwMDNFRjI2OSAvKiBXZWVrSW5wdXRUeXBl
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDUxMUNDRjkzODkwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODUwMzFCNTAwQTQ0RUZDNzAw
Rjk5MkUwIC8qIFdoZWVsRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUxOTUxNkIxQjY1
OThEMjAwREY2RUVGIC8qIFdoZWVsRXZlbnREZWx0YUZpbHRlci5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkyRUVFRTU1QzFCNjZBMDQ3MDA4RTJDQkMgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyTWFj
Lm1tIGluIFNvdXJjZXMgKi8sCkBAIC0zMjEyMCw2ICszMjE1MSw3IEBACiAJCQkJMDBCOTMxODkx
M0JBOERCQzAwMzVBOTQ4IC8qIFhNTERvY3VtZW50UGFyc2VyTGlieG1sMi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkwMEI5MzE4QjEzQkE4REM5MDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJT
Y29wZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1OUMyODA0NTEzOERDMjQxMDA3OUI3RTIgLyog
WE1MRXJyb3JzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDUzMUNDRjkzOUIwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDNzcy
QzQ2MEM0RUIyQzYwMDgzMjg1RiAvKiBYTUxIdHRwUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlBMTM2QTAwQzExMzREQkQyMDBDQzhENTAgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2
ZW50VGhyb3R0bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNERkQ0OEYwRTMwNTI5MDAwOUQx
MEFEIC8qIFhNTEh0dHBSZXF1ZXN0VXBsb2FkLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0
dXJlcy5jcHAKaW5kZXggMmNjNjEyNDEzNzhmNDVkMTJkN2UyOTY4ZjE5MDNkMDBjYzY1ZTk1Zi4u
MWI1ZGMxNWQ0YmRmNTRiMTJhOGQxNmVmODgyYjRkYjFhZGMyY2FlYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuY3BwCkBAIC01OSw2ICs1OSw3IEBAIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXMoKQogI2Vsc2UKICAgICAsIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQoZmFsc2UpCiAjZW5kaWYKKyAgICAsIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQoZmFsc2Up
CiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgLCBtX2lzSW5kZXhlZERCRW5hYmxl
ZChmYWxzZSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2Vu
ZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9n
ZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAppbmRleCAxMWVjZDk1MzNkNGQ4YmVmOThl
MWZkZDM1ZjE1Y2U0ZWQxY2VkMWUxLi40ZDM2ZDY4OTBhMzRkZjliZjRiMDY5ZmNkZjU4Mzc0Mzk5
NDA0Zjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmlj
L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaApAQCAtMjAxLDYgKzIwMSw5IEBAIHB1YmxpYzoKICAg
ICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX2lz
UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkID0gaXNFbmFibGVkOyB9CiAgICAgYm9vbCBwbHVnaW5S
ZXBsYWNlbWVudEVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUGx1Z2luUmVwbGFjZW1lbnRF
bmFibGVkOyB9CiAKKyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nRW5hYmxlZChib29sIGlzRW5h
YmxlZCkgeyBtX2lzUmVzb3VyY2VUaW1pbmdFbmFibGVkID0gaXNFbmFibGVkOyB9CisgICAgYm9v
bCByZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUmVzb3VyY2VUaW1p
bmdFbmFibGVkOyB9CisKICNpZiBFTkFCTEUoR0FNRVBBRCkKICAgICB2b2lkIHNldEdhbWVwYWRz
RW5hYmxlZChib29sIGFyZUVuYWJsZWQpIHsgbV9hcmVHYW1lcGFkc0VuYWJsZWQgPSBhcmVFbmFi
bGVkOyB9CiAgICAgYm9vbCBnYW1lcGFkc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2FyZUdh
bWVwYWRzRW5hYmxlZDsgfQpAQCAtMjY3LDYgKzI3MCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBt
X2lzQ1NTQ29tcG9zaXRpbmdFbmFibGVkOwogICAgIGJvb2wgbV9pc0xhbmdBdHRyaWJ1dGVBd2Fy
ZUZvcm1Db250cm9sVUlFbmFibGVkOwogICAgIGJvb2wgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5h
YmxlZDsKKyAgICBib29sIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7CiAKICNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKICAgICBib29sIG1faXNJbmRleGVkREJFbmFibGVkOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9t
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3Rv
bS5jcHAKaW5kZXggNzRkZTVkMmJkOTFkYWE1NTgwNWIzYTEzZDU4NTZlNjU3NDY3MTQ3ZS4uMTU0
MmQwZGFkZDliNGMwODc4YTUxYmU3MGU3NjA5NjBmYjMxODY1OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBA
IC0zMCwxMyArMzAsMTMgQEAKIAogI2luY2x1ZGUgImNvbmZpZy5oIgogCi0jaWYgRU5BQkxFKFBF
UkZPUk1BTkNFX1RJTUVMSU5FKQotCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZUVudHJ5LmgiCiAK
ICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAjaW5j
bHVkZSAiSlNQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3Vy
ZS5oIgorI2VuZGlmCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAj
aW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJl
LmgiCkBAIC01MSwxMCArNTEsOCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUGVyZm9ybWFuY2VFbnRyeSogZW50cgogICAgIGlmICgh
ZW50cnkpCiAgICAgICAgIHJldHVybiBqc051bGwoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9U
SU1JTkcpCiAgICAgaWYgKGlzPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KCplbnRyeSkpCiAg
ICAgICAgIHJldHVybiB3cmFwPEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2Jq
ZWN0LCBkb3duY2FzdDxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPigqZW50cnkpKTsKLSNlbmRp
ZgogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChpczxQZXJmb3JtYW5jZU1hcms+
KCplbnRyeSkpCkBAIC02OCw1ICs2NiwzIEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqLCBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5jZUVudHJ5KiBlbnRyCiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShQRVJGT1JNQU5DRV9U
SU1FTElORSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmggYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCmluZGV4IDRjZTg2Nzg1MDBkZGNhNTBiNWU1
YzgxMGIyZDJkYjAzYjlmYTdiZjQuLmQ1NzQ3MzhmYmI4YzBhYzZjMjQ0NjFmMDEyOGExZWUzMjlh
NmY4NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaApAQCAtMTgzLDYgKzE4Myw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhyZW1vdmV0cmFjaykgXAogICAgIG1hY3JvKHJlc2V0
KSBcCiAgICAgbWFjcm8ocmVzaXplKSBcCisgICAgbWFjcm8ocmVzb3VyY2V0aW1pbmdidWZmZXJm
dWxsKSBcCiAgICAgbWFjcm8ocmVzdWx0KSBcCiAgICAgbWFjcm8ocmVzdW1lKSBcCiAgICAgbWFj
cm8oc2Nyb2xsKSBcCkBAIC0yNjEsNyArMjYyLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
IG1hY3JvKHdlYmtpdHByZXNlbnRhdGlvbm1vZGVjaGFuZ2VkKSBcCiAgICAgbWFjcm8od2Via2l0
cmVnaW9ub3ZlcnNldGNoYW5nZSkgXAogICAgIG1hY3JvKHdlYmtpdHJlbW92ZXNvdXJjZWJ1ZmZl
cikgXAotICAgIG1hY3JvKHdlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbCkgXAogICAgIG1h
Y3JvKHdlYmtpdHNvdXJjZWNsb3NlKSBcCiAgICAgbWFjcm8od2Via2l0c291cmNlZW5kZWQpIFwK
ICAgICBtYWNybyh3ZWJraXRzb3VyY2VvcGVuKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGNkYzQ1OWYyYmZhOGExYmU2
MmFmZWUzM2M0YjBiZTc3MWNiNjFhMWQuLjVmNWVmZDg0MThhMzdlYTAyZGZhYjYzNTNiMDI1YThh
NjA2ZmFiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFj
a2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVx
dWVzdC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJT
Y2hlbWVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAi
U3VicmVzb3VyY2VMb2FkZXIuaCIKQEAgLTM4NSw5ICszODYsOCBAQCB2b2lkIERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBTZWN1cgogICAgICAgICB9CiAKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IG5ld1Jl
cXVlc3QocmVxdWVzdCwgb3B0aW9ucyk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAg
ICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25zLmluaXRpYXRvcik7Ci0jZW5k
aWYKKyAgICAgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCku
cmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgICAgICBuZXdSZXF1ZXN0LnNldEluaXRp
YXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKICAgICAgICAgQVNTRVJUKCFtX3Jlc291cmNlKTsK
ICAgICAgICAgbV9yZXNvdXJjZSA9IG1fZG9jdW1lbnQuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5y
ZXF1ZXN0UmF3UmVzb3VyY2UobmV3UmVxdWVzdCk7CiAgICAgICAgIGlmIChtX3Jlc291cmNlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAKaW5kZXgg
ZDM5ZmQyN2RjNTY2YzBmZTI0ZDEwYzYwMTRjNWJlZGVkM2U0ZmNiOS4uZTU0NjdmZDExMTA4ZTIx
MDllMWQyZjlkOWQ1NmI1YzNlODZkMTMxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCkBAIC0zOSw2ICszOSw3IEBACiAjaW5jbHVkZSAiUGFn
ZS5oIgogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9h
ZGVyLmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogCiAjaWYgVVNFKFFV
SUNLX0xPT0spCiAjaW5jbHVkZSAiUXVpY2tMb29rLmgiCkBAIC0xNDYsOSArMTQ3LDggQEAgdm9p
ZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICBpZiAobG9hZGVyICYmICFyZXF1ZXN0LmlzTnVsbCgp
ICYmIHJlcXVlc3QudXJsKCkgPT0gbG9hZGVyLT51cmwoKSkKICAgICAgICAgcmVxdWVzdC5zZXRS
ZXBvcnRMb2FkVGltaW5nKHRydWUpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAg
ICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7Ci0jZW5kaWYKKyAgICBpZiAoUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJs
ZWQoKSkKKyAgICAgICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5nKHRydWUpOwogfQogCiB2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHIsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCmlu
ZGV4IGMwYTk5YTNkZTk3ODk0NWZkNjQ5ZGMyZDZlYTc4ZGI2Nzg3MTMwMWQuLjNkYjkwMDdmMWY4
Mzc4NmI2ZmQ3YjM0MWEwYTY0MDk2YmIzZTE3MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApAQCAtNTcsMTAgKzU3LDEy
IEBACiAjaW5jbHVkZSAiTWFpbkZyYW1lLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIKICNp
bmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlICJQaW5n
TG9hZGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZEluZm8uaCIKKyNpbmNsdWRlICJS
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgog
I2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2Vzc2lvbklELmgiCkBAIC03
NSwxMCArNzcsNiBAQAogI2luY2x1ZGUgIkNhY2hlZFRleHRUcmFjay5oIgogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCi0jZW5k
aWYKLQogI2RlZmluZSBQUkVMT0FEX0RFQlVHIDAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAt
NjcxLDExICs2NjksOCBAQCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gQ2Fj
aGVkUmVzb3VyY2VMb2FkZXI6OnJldmFsaWRhdGVSZXNvdXJjZShjbwogICAgIAogICAgIG1lbW9y
eUNhY2hlLnJlbW92ZSgqcmVzb3VyY2UpOwogICAgIG1lbW9yeUNhY2hlLmFkZCgqbmV3UmVzb3Vy
Y2UpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgc3RvcmVSZXNvdXJjZVRpbWlu
Z0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKLSNlbHNlCi0gICAgVU5V
U0VEX1BBUkFNKHJlcXVlc3QpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHN0
b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7
CiAgICAgcmV0dXJuIG5ld1Jlc291cmNlOwogfQogCkBAIC02OTAsMTUgKzY4NSwxNCBAQCBDYWNo
ZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6Omxv
YWRSZXNvdXJjZShDYWNoZWRSZQogCiAgICAgaWYgKHJlcXVlc3QuYWxsb3dzQ2FjaGluZygpICYm
ICFtZW1vcnlDYWNoZS5hZGQoKnJlc291cmNlKSkKICAgICAgICAgcmVzb3VyY2UtPnNldE93bmlu
Z0NhY2hlZFJlc291cmNlTG9hZGVyKHRoaXMpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcp
Ci0gICAgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCBy
ZXF1ZXN0KTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRG
ZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICBzdG9yZVJlc291cmNl
VGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwogICAgIHJldHVy
biByZXNvdXJjZTsKIH0KIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiB2b2lkIENhY2hl
ZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24o
Y29uc3QgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+JiByZXNvdXJjZSwgY29u
c3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogeworICAgIEFTU0VSVChSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgp
KTsKICAgICBpZiAocmVzb3VyY2UtPnR5cGUoKSA9PSBDYWNoZWRSZXNvdXJjZTo6TWFpblJlc291
cmNlKSB7CiAgICAgICAgIC8vIDxpZnJhbWU+cyBzaG91bGQgcmVwb3J0IHRoZSBpbml0aWFsIG5h
dmlnYXRpb24gcmVxdWVzdGVkIGJ5IHRoZSBwYXJlbnQgZG9jdW1lbnQsIGJ1dCBub3Qgc3Vic2Vx
dWVudCBuYXZpZ2F0aW9ucy4KICAgICAgICAgaWYgKGZyYW1lKCktPm93bmVyRWxlbWVudCgpICYm
IG1fZG9jdW1lbnRMb2FkZXItPmZyYW1lTG9hZGVyKCktPnN0YXRlTWFjaGluZSgpLmNvbW1pdHRp
bmdGaXJzdFJlYWxMb2FkKCkpIHsKQEAgLTcxMCw3ICs3MDQsNiBAQCB2b2lkIENhY2hlZFJlc291
cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3Qg
Q2FjaGVkUgogICAgICAgICBtX2luaXRpYXRvck1hcC5hZGQocmVzb3VyY2UuZ2V0KCksIGluZm8p
OwogICAgIH0KIH0KLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiBzdGF0aWMg
dm9pZCBsb2dSZXZhbGlkYXRpb24oY29uc3QgU3RyaW5nJiByZWFzb24sIERpYWdub3N0aWNMb2dn
aW5nQ2xpZW50JiBsb2dDbGllbnQpCiB7CkBAIC05NzYsOCArOTY5LDkgQEAgdm9pZCBDYWNoZWRS
ZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNo
b3VsZFBlcmZvcm0KICAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3REb2N1bWVudExv
YWRlcihtX2RvY3VtZW50TG9hZGVyKTsKICAgICBSZWZQdHI8RG9jdW1lbnQ+IHByb3RlY3REb2N1
bWVudChtX2RvY3VtZW50KTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgaWYg
KHJlc291cmNlICYmIHJlc291cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpICYmICgoIXJlc291cmNl
LT5lcnJvck9jY3VycmVkKCkgJiYgIXJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB8fCByZXNvdXJj
ZS0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkpIHsKKyAgICBpZiAoUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQo
KQorICAgICAgICAmJiByZXNvdXJjZSAmJiByZXNvdXJjZS0+cmVzcG9uc2UoKS5pc0hUVFAoKQor
ICAgICAgICAmJiAoKCFyZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFyZXNvdXJjZS0+d2Fz
Q2FuY2VsZWQoKSkgfHwgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaHR0cFN0YXR1c0NvZGUoKSA9PSAz
MDQpKSB7CiAgICAgICAgIEhhc2hNYXA8Q2FjaGVkUmVzb3VyY2UqLCBJbml0aWF0b3JJbmZvPjo6
aXRlcmF0b3IgaW5pdGlhdG9ySXQgPSBtX2luaXRpYXRvck1hcC5maW5kKHJlc291cmNlKTsKICAg
ICAgICAgaWYgKGluaXRpYXRvckl0ICE9IG1faW5pdGlhdG9yTWFwLmVuZCgpKSB7CiAgICAgICAg
ICAgICBBU1NFUlQoZG9jdW1lbnQoKSk7CkBAIC05OTAsOSArOTg0LDYgQEAgdm9pZCBDYWNoZWRS
ZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNo
b3VsZFBlcmZvcm0KICAgICAgICAgICAgIG1faW5pdGlhdG9yTWFwLnJlbW92ZShpbml0aWF0b3JJ
dCk7CiAgICAgICAgIH0KICAgICB9Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShyZXNvdXJjZSk7
Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAogICAgIGlmIChmcmFtZSgpKQog
ICAgICAgICBmcmFtZSgpLT5sb2FkZXIoKS5sb2FkRG9uZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAppbmRleCBiMWY3YzRmYWY1
ZGJiMDk2MDFjNTg5MmY1ZDY0NzEzOTQ5YjFmNjBkLi40ZGY4MTk5NTljZWFiMTEwMzc0YjU1YjQ2
MDM5MzBhODdlYjdjNjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2VMb2FkZXIuaApAQCAtMTQ0LDkgKzE0NCw3IEBAIHByaXZhdGU6CiAgICAg
Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJlcXVlc3RSZXNvdXJjZShDYWNo
ZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgQ2FjaGVkUmVz
b3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJldmFsaWRhdGVSZXNvdXJjZShjb25zdCBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QmLCBDYWNoZWRSZXNvdXJjZSopOwogICAgIENhY2hlZFJlc291cmNl
SGFuZGxlPENhY2hlZFJlc291cmNlPiBsb2FkUmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUs
IENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAg
ICAgdm9pZCBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3QgQ2Fj
aGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+JiwgY29uc3QgQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0Jik7Ci0jZW5kaWYKICAgICB2b2lkIHJlcXVlc3RQcmVsb2FkKENhY2hlZFJlc291cmNl
OjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQpOwog
CiAgICAgZW51bSBSZXZhbGlkYXRpb25Qb2xpY3kgeyBVc2UsIFJldmFsaWRhdGUsIFJlbG9hZCwg
TG9hZCB9OwpAQCAtMTc5LDEzICsxNzcsMTEgQEAgcHJpdmF0ZToKIAogICAgIFRpbWVyIG1fZ2Fy
YmFnZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyOwogCi0jaWYgRU5BQkxFKFJFU09VUkNF
X1RJTUlORykKICAgICBzdHJ1Y3QgSW5pdGlhdG9ySW5mbyB7CiAgICAgICAgIEF0b21pY1N0cmlu
ZyBuYW1lOwogICAgICAgICBkb3VibGUgc3RhcnRUaW1lOwogICAgIH07CiAgICAgSGFzaE1hcDxD
YWNoZWRSZXNvdXJjZSosIEluaXRpYXRvckluZm8+IG1faW5pdGlhdG9yTWFwOwotI2VuZGlmCiAK
ICAgICAvLyAyOSBiaXRzIGxlZnQKICAgICBib29sIG1fYXV0b0xvYWRJbWFnZXMgOiAxOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAppbmRleCBlZDM5YTFkMTUwODFiNDc2NGFlOTdhZmFm
NzM4YmE5Njc5N2U3MzJiLi4wOGM3MDMxZjRmZDEyODFkNWQ1YjUxNGU3ZGM0MzMwODBiNTRhY2Q0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcApAQCAtNDcsMTUgKzQ3LDExIEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiBzdGF0
aWMgY29uc3Qgc2l6ZV90IGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgPSAxNTA7Ci0j
ZW5kaWYKIAogUGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNlKEZyYW1lJiBmcmFtZSkKICAgICA6IERP
TVdpbmRvd1Byb3BlcnR5KCZmcmFtZSkKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAg
ICwgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUoZGVmYXVsdFJlc291cmNlVGltaW5nQnVmZmVy
U2l6ZSkKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgICwgbV9yZWZlcmVu
Y2VUaW1lKGZyYW1lLmRvY3VtZW50KCktPmxvYWRlcigpID8gZnJhbWUuZG9jdW1lbnQoKS0+bG9h
ZGVyKCktPnRpbWluZygpLnJlZmVyZW5jZU1vbm90b25pY1RpbWUoKSA6IG1vbm90b25pY2FsbHlJ
bmNyZWFzaW5nVGltZSgpKQogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICAsIG1fdXNlclRp
bWluZyhudWxscHRyKQpAQCAtOTEsMTQgKzg3LDExIEBAIFBlcmZvcm1hbmNlVGltaW5nKiBQZXJm
b3JtYW5jZTo6dGltaW5nKCkgY29uc3QKICAgICByZXR1cm4gbV90aW1pbmcuZ2V0KCk7CiB9CiAK
LSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi1QYXNzUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcygpIGNvbnN0CitSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzKCkgY29uc3QKIHsK
ICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVu
dHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIGVu
dHJpZXMtPmFwcGVuZEFsbChtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKLSNlbmRpZiAvLyBFTkFC
TEUoUkVTT1VSQ0VfVElNSU5HKQogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmICht
X3VzZXJUaW1pbmcpIHsKQEAgLTExMSwxNiArMTA0LDE0IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3QKICAgICBy
ZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVy
Zm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUp
CitSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlU
eXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKQogewogICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVu
dHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lm
IEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVND
SUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsKICAgICAgICAgZm9yIChhdXRvJiByZXNv
dXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpCiAgICAgICAgICAgICBlbnRyaWVzLT5hcHBl
bmQocmVzb3VyY2UpOwogICAgIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQog
ICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTEzNSwxOCArMTI2LDE2IEBAIFBhc3NSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlUeXBl
KGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLVBhc3NSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0
IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCitSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYg
bmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCiB7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiBlbnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwogCi0j
aWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8
IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsK
ICAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpIHsK
ICAgICAgICAgICAgIGlmIChyZXNvdXJjZS0+bmFtZSgpID09IG5hbWUpCiAgICAgICAgICAgICAg
ICAgZW50cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICAgICAgfQogICAgIH0KLSNlbmRpZgog
CiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE2
MSwyMCArMTUwLDE2IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1h
bmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJp
ZXM7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KLSNpZiBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCi12b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRDbGVhclJl
c291cmNlVGltaW5ncygpCit2b2lkIFBlcmZvcm1hbmNlOjpjbGVhclJlc291cmNlVGltaW5ncygp
CiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5jbGVhcigpOwogfQogCi12b2lkIFBlcmZv
cm1hbmNlOjp3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgc2l6ZSkK
K3ZvaWQgUGVyZm9ybWFuY2U6OnNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBz
aXplKQogewogICAgIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplID0gc2l6ZTsKICAgICBpZiAo
aXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwoKSkKLSAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVu
dDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS53ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGxFdmVu
dCwgZmFsc2UsIGZhbHNlKSk7CisgICAgICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShl
dmVudE5hbWVzKCkucmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsRXZlbnQsIGZhbHNlLCBmYWxzZSkp
OwogfQogCiB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhjb25zdCBTdHJpbmcm
IGluaXRpYXRvck5hbWUsIERvY3VtZW50KiBpbml0aWF0b3JEb2N1bWVudCwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgZG91
YmxlIGluaXRpYXRpb25UaW1lLCBkb3VibGUgZmluaXNoVGltZSkKQEAgLTE4Nyw3ICsxNzIsNyBA
QCB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhjb25zdCBTdHJpbmcmIGluaXRp
YXRvck5hbWUsIERvY3VtZW50KiBpbml0aQogICAgIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIuYXBw
ZW5kKGVudHJ5KTsKIAogICAgIGlmIChpc1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpKQotICAg
ICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLndlYmtpdHJlc291
cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsKKyAgICAgICAgZGlzcGF0
Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1
bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3Vy
Y2VUaW1pbmdCdWZmZXJGdWxsKCkKQEAgLTE5NSw4ICsxODAsNiBAQCBib29sIFBlcmZvcm1hbmNl
Ojppc1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpCiAgICAgcmV0dXJuIG1fcmVzb3VyY2VUaW1p
bmdCdWZmZXIuc2l6ZSgpID49IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplOwogfQogCi0jZW5k
aWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2lmIEVOQUJMRShVU0VSX1RJTUlORykK
IHZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdE1hcmsoY29uc3QgU3RyaW5nJiBtYXJrTmFtZSwgRXhj
ZXB0aW9uQ29kZSYgZWMpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKaW5kZXggOTNmNDQw
NjQ0YmI3NjNmYTdkYzhkMTdlNDg2MmUzMjM1ZTljNzZmNy4uMTc2YzE1MGM0YThmNDg3M2Q4Yjc2
NjQ0OTMzMjc5YjM4ODVkNDE3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaApAQCAtNDAs
NyArNDAsNiBAQAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvbi5oIgogI2luY2x1ZGUg
IlBlcmZvcm1hbmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiU2NyaXB0V3JhcHBhYmxlLmgiCi0jaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KQEAg
LTY0LDE4ICs2MywxNCBAQCBwdWJsaWM6CiAgICAgUGVyZm9ybWFuY2VUaW1pbmcqIHRpbWluZygp
IGNvbnN0OwogICAgIGRvdWJsZSBub3coKSBjb25zdDsKIAotI2lmIEVOQUJMRShQRVJGT1JNQU5D
RV9USU1FTElORSkKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiB3ZWJraXRH
ZXRFbnRyaWVzKCkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4g
d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7Ci0gICAgUGFz
c1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllc0J5TmFtZShjb25z
dCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKLSNlbmRpZgorICAgIFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllcygpIGNvbnN0OworICAgIFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVu
dHJ5VHlwZSk7CisgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzQnlO
YW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVzb3VyY2VUaW1p
bmdzKCk7Ci0gICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWdu
ZWQgaW50KTsKKyAgICB2b2lkIGNsZWFyUmVzb3VyY2VUaW1pbmdzKCk7CisgICAgdm9pZCBzZXRS
ZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQpOwogCiAgICAgdm9pZCBhZGRSZXNvdXJj
ZVRpbWluZyhjb25zdCBTdHJpbmcmIGluaXRpYXRvck5hbWUsIERvY3VtZW50KiwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGRvdWJsZSBpbml0aWF0aW9u
VGltZSwgZG91YmxlIGZpbmlzaFRpbWUpOwotI2VuZGlmCiAKICAgICB1c2luZyBSZWZDb3VudGVk
PFBlcmZvcm1hbmNlPjo6cmVmOwogICAgIHVzaW5nIFJlZkNvdW50ZWQ8UGVyZm9ybWFuY2U+Ojpk
ZXJlZjsKQEAgLTk3LDExICs5Miw5IEBAIHByaXZhdGU6CiAKICAgICBtdXRhYmxlIFJlZlB0cjxQ
ZXJmb3JtYW5jZU5hdmlnYXRpb24+IG1fbmF2aWdhdGlvbjsKICAgICBtdXRhYmxlIFJlZlB0cjxQ
ZXJmb3JtYW5jZVRpbWluZz4gbV90aW1pbmc7Ci0gICAgCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJ
TUlORykKKwogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IG1fcmVzb3VyY2VU
aW1pbmdCdWZmZXI7CiAgICAgdW5zaWduZWQgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7Ci0j
ZW5kaWYKIAogICAgIGRvdWJsZSBtX3JlZmVyZW5jZVRpbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5pZGwKaW5kZXggOWIwYThiNzcwMDBjMjhlNDA1Mjk4MjJlY2UzNTI2OTBhZWNkZTZm
Ni4uOTQ4OTY5MGIzNTYxNTJmNmVkMDdhZjQ3Mzg1M2Y2MzIzMmY0NWJlNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5pZGwKQEAgLTM2LDE4ICszNiwxNSBAQAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb24gbmF2aWdhdGlvbjsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgUGVyZm9ybWFuY2VUaW1pbmcgdGltaW5nOwogCi0jaWYgZGVmaW5lZChFTkFCTEVf
UEVSRk9STUFOQ0VfVElNRUxJTkUpICYmIEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElORQotICAg
IFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXMoKTsKLSAgICBQZXJmb3JtYW5j
ZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzQnlUeXBlKERPTVN0cmluZyBlbnRyeVR5cGUpOwot
ICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeU5hbWUoRE9NU3RyaW5n
IG5hbWUsIG9wdGlvbmFsIERPTVN0cmluZyBlbnRyeVR5cGUpOwotI2VuZGlmCisgICAgW0VuYWJs
ZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBlcmZvcm1hbmNlRW50cnlMaXN0IGdldEVudHJp
ZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VF
bnRyeUxpc3QgZ2V0RW50cmllc0J5VHlwZShET01TdHJpbmcgZW50cnlUeXBlKTsKKyAgICBbRW5h
YmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50
cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSk7
CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9SRVNPVVJDRV9USU1JTkcpICYmIEVOQUJMRV9SRVNPVVJD
RV9USU1JTkcKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCk7Ci0gICAgdm9p
ZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgbG9uZyBtYXhTaXpl
KTsKIAotICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb253ZWJraXRyZXNvdXJjZXRpbWluZ2J1
ZmZlcmZ1bGw7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10g
dm9pZCBjbGVhclJlc291cmNlVGltaW5ncygpOworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291
cmNlVGltaW5nXSB2b2lkIHNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBsb25n
IG1heFNpemUpOworCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIGF0dHJp
YnV0ZSBFdmVudEhhbmRsZXIgb25yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGw7CiAKICAgICAvLyBT
ZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMi9DUi11c2VyLXRpbWluZy0yMDEyMDcyNi8KICNp
ZiBkZWZpbmVkKEVOQUJMRV9VU0VSX1RJTUlORykgJiYgRU5BQkxFX1VTRVJfVElNSU5HCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcAppbmRleCAzMmRiN2NmZTU2MzVjZGYz
MmMzMDVlYzRlYWMwOTUwMWU1ZjgzZWU1Li4zNzRlMTQyOTMxODNmOTczZmFhNzg0MTgxZGZkNTll
MjMwOTViNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50
cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKQEAg
LTMxLDcgKzMxLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5j
ZUVudHJ5LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKQEAgLTY5LDQgKzY5LDQgQEAgZG91YmxlIFBlcmZvcm1hbmNlRW50cnk6OmR1cmF0aW9uKCkg
Y29uc3QKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9U
SU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUo
V0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKaW5kZXggMDEx
MWIxZGUzOWZkZGU3M2RjZDNiOThmZDczMTFlNGYxNGQxZDM5Ni4uMTJiYTBjMWIyZDFmMTA4NTMx
N2RhY2NmMDQ5MTM2ODJmOWQwNzliZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYgUGVyZm9ybWFuY2VFbnRyeV9oCiAjZGVm
aW5lIFBlcmZvcm1hbmNlRW50cnlfaAogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJM
RShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1
ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTcyLDUg
KzcyLDUgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAm
JiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1J
TkcpCiAjZW5kaWYgLy8gIWRlZmluZWQoUGVyZm9ybWFuY2VFbnRyeV9oKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKaW5kZXggOWJjYWY0YzM0MDE4OTg1NWEyYjY0ZDZm
MDViMjk4Y2NjMWY3MjNlNi4uZjM3ZTJhM2NiYTQzMjQxM2EwYWY3YmJjNDZhOGQ1ZjE0NGJmYWYy
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCkBAIC0zMSw3ICsz
MSw3IEBACiAvLyBTZWU6IGh0dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9yYXctZmlsZS90
aXAvc3BlY3MvUGVyZm9ybWFuY2VUaW1lbGluZS9PdmVydmlldy5odG1sCiBbCiAgICAgQ29uZGl0
aW9uYWw9V0VCX1RJTUlORywKLSAgICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwK
KyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nLAogICAgIEN1c3RvbVRvSlNPYmpl
Y3QsCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZUVudHJ5IHsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIG5hbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnlMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuY3BwCmluZGV4IGQ5ZmEwNTU3N2RkNTc5ZTljYTgyNzRkZDc4YjRhY2UzNGJjNzkyOGIu
LmMwMzU5MjhiMzFjNmRlOWQ2MWQ4NjMxMTYzMWQzMzU2ZmMzYjgyNjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCIKIAot
I2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisj
aWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAK
QEAgLTc1LDQgKzc1LDQgQEAgdm9pZCBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6c29ydCgpCiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKSAmJiBF
TkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKaW5kZXggOTdhMjEy
ZGQ2ZmQwNTQ0NzY2ZWQ3NTYzYzE3NTZiOTEzNmQ3ZmVkNi4uZDJjNDFmNWFkNDdmMThhYjExMzBk
M2MwNTVhZTM1MTEwMmIwYzc5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5TGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeUxpc3QuaApAQCAtMzIsNyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZUVudHJ5TGlz
dF9oCiAjZGVmaW5lIFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKIAotI2lmIEVOQUJMRShXRUJfVElN
SU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1J
TkcpCiAKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+CkBAIC02NCw1ICs2NCw1IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAotI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQorI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJTUlORykKICNlbmRpZiAvLyBQZXJm
b3JtYW5jZUVudHJ5TGlzdF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnlMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaWRsCmluZGV4IDdlMjVhODVjZTZjODkzODRlZmU1NTJmODM3NjkyNTkzNTgwMjg4Zjku
LjE4MDY2Y2MzN2U1NzNmMjBlMWE5MDVjMzg4YjAyMTgxOGViNzkzNmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaWRsCkBAIC0zMiwxMCArMzIsOSBAQAog
WwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVdFQl9USU1JTkcsCi0g
ICAgQ29uZGl0aW9uYWw9UEVSRk9STUFOQ0VfVElNRUxJTkUsCisgICAgRW5hYmxlZEF0UnVudGlt
ZT1SZXNvdXJjZVRpbWluZywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRl
cmZhY2UgUGVyZm9ybWFuY2VFbnRyeUxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNp
Z25lZCBsb25nIGxlbmd0aDsKICAgICBnZXR0ZXIgUGVyZm9ybWFuY2VFbnRyeSBpdGVtKHVuc2ln
bmVkIGxvbmcgaW5kZXgpOwogfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5jcHAKaW5kZXggMzFiODk3MTM3ZjUxMWU0NWY3NzU3ZTk1NmMy
NmYzNzU4N2FiNmE2MC4uNGIwZTA3ZjhkMTdiNDgwMDE3ZWRiOGNmNjVlY2FiYzkzM2ZlYzllMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIgogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykK
KyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVk
ZSAiRG9jdW1lbnRMb2FkVGltaW5nLmgiCkBAIC0xOTksNSArMTk5LDQgQEAgZG91YmxlIFBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmc6OnJlc291cmNlVGltZVRvRG9jdW1lbnRNaWxsaXNlY29uZHMo
aW50IGRlbHRhTWkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKFJFU09VUkNFX1RJTUlORykKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKaW5kZXggM2Mz
NWQxYWZjOWQwNGY3YzdmMWFkY2ZkMTQ1YjMzZWFlM2E2ZmM1My4uODI0ODViMmY3MmY2YjUwZmFh
MzdhZDdjZjVkMmE0ZTgwMDFhY2U4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYgUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZ19oCiAjZGVmaW5lIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmdf
aAogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykK
IAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRU
aW1pbmcuaCIKQEAgLTg1LDExICs4NSw5IEBAIHByaXZhdGU6CiAKIH0KIAotCiBTUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcpCiAg
ICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlBlcmZvcm1hbmNlRW50cnkmIGVu
dHJ5KSB7IHJldHVybiBlbnRyeS5pc1Jlc291cmNlKCk7IH0KIFNQRUNJQUxJWkVfVFlQRV9UUkFJ
VFNfRU5EKCkKIAotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0KKyNlbmRpZiAv
LyBFTkFCTEUoV0VCX1RJTUlORykKICNlbmRpZiAvLyAhZGVmaW5lZChQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nX2gpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmlkbAppbmRleCAzZjAxMWIyM2IwNTdhMWFlMGU2MzRlZjE5NDNiMTAxZmNlNjg2
NmQzLi4yNWE5MjhiMDlmMmZhNjBjY2IzN2E1MzRjNjcyZjJmZGZlZmYyODY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKQEAgLTMw
LDcgKzMwLDggQEAKIAogLy8gU2VlOiBodHRwczovL2R2Y3MudzMub3JnL2hnL3dlYnBlcmYvcmF3
LWZpbGUvdGlwL3NwZWNzL1Jlc291cmNlVGltaW5nL092ZXJ2aWV3Lmh0bWwKIFsKLSAgICBDb25k
aXRpb25hbD1SRVNPVVJDRV9USU1JTkcsCisgICAgQ29uZGl0aW9uYWw9V0VCX1RJTUlORywKKyAg
ICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nCiBdIGludGVyZmFjZSBQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nIDogUGVyZm9ybWFuY2VFbnRyeSB7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTVN0cmluZyBpbml0aWF0b3JUeXBlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5jcHAKaW5kZXggNmUwZDY1NTBjYTEzZTk1MDMzNzZkNWI0NzJlZTM3MGVjYmNkYTkzMy4uZjNj
YmVkZWMzYWFkMGQ4N2M4Y2I3ODM4NzEwNGQ2MGUwZGY3ZDdlMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcApAQCAtMzMxMyw0ICszMzEzLDkgQEAgdm9pZCBJbnRlcm5hbHM6OnNl
dENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wgZW5hYmxlKQogfQogI2VuZGlmCiAKK3ZvaWQgSW50
ZXJuYWxzOjpzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbCBlbmFibGUpCit7CisgICAgUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRSZXNvdXJjZVRpbWluZ0Vu
YWJsZWQoZW5hYmxlKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXgg
MzI2NzNjZTVmMjE5ZTFmZmExOGFmYWM3MzU2YzE5NTlmZWU2NWRjMS4uMzkwNjdlZjI0NTY1MTc4
NzZiN2EwZThkNzMxOWM5NjMwNzhiNTA4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
CkBAIC00NzMsNiArNDczLDcgQEAgcHVibGljOgogICAgIAogICAgIHZvaWQgc2V0Vmlld3BvcnRG
b3JjZUFsd2F5c1VzZXJTY2FsYWJsZShib29sKTsKICAgICB2b2lkIHNldExpbmtQcmVsb2FkU3Vw
cG9ydChib29sKTsKKyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sKTsKIAog
I2lmIEVOQUJMRShDU1NfR1JJRF9MQVlPVVQpCiAgICAgdm9pZCBzZXRDU1NHcmlkTGF5b3V0RW5h
YmxlZChib29sKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCBkODNjYjRk
MzVlNDlkODE4YzRiNjY5NDFiY2UxZDBmZDEyNTIzYTk2Li4xY2EwZmU2ZjlkMTYyNjQ5OWE4NjQ3
YjEwYTkyYzNhMTg0OGE4Zjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBA
IC00NTMsNCArNDUzLDUgQEAgZW51bSBJbnRlcm5hbHNBdXRvRmlsbEJ1dHRvblR5cGUgewogICAg
IHZvaWQgc2V0Q1NTR3JpZExheW91dEVuYWJsZWQoYm9vbGVhbiBlbmFibGUpOwogI2VuZGlmCiAK
KyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sZWFuIHNjYWxhYmxlKTsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2Uv
Y21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggOTMwNGI1YWVkMjgyNmE5MTYxMTRkZWZk
YzliZjU5ZmIwZDU2YjcwMC4uNzY4ZTNlNTlkN2UxOWFhYWEwNGYwMjIxNzgzNWNlOTY5NjdjMDky
ZSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1Nv
dXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtMTU4LDcgKzE1OCw2IEBAIG1hY3Jv
KFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX05P
VElGSUNBVElPTlMgIlRvZ2dsZSBEZXNrdG9wIE5vdGlmaWNhdGlvbnMgU3VwcG9ydCIgUFJJVkFU
RSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX09SSUVOVEFUSU9OX0VWRU5U
UyAiVG9nZ2xlIE9yaWVudGF0aW9uIEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUERGS0lUX1BMVUdJTiAiVG9nZ2xlIFBERktpdCBw
bHVnaW4gc3VwcG9ydCIgUFJJVkFURSBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FICJUb2dnbGUgUGVyZm9ybWFuY2UgVGltZWxpbmUgc3Vw
cG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BPSU5U
RVJfTE9DSyAiVG9nZ2xlIHBvaW50ZXIgbG9jayBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBX
RUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUFJPWElNSVRZX0VWRU5UUyAiVG9nZ2xlIFByb3hp
bWl0eSBFdmVudHMgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJ
TkUoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCAiVG9nZ2xlIHB1YmxpYyBzdWZmaXggbGlzdCBz
dXBwb3J0IiBQUklWQVRFIE9GRikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxMjNhN2QyODU0MGI3ODFjN2FmNjczYjkwMDUy
ZjAyMDEzNGYyODRmLi5kMTIzM2JmMzExMjdmNDBjZmUwOThlNjI3YmJjZDE3ZDFjYjVjOWMyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTYtMDUtMDEgIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYu
d3M+CisKKyAgICAgICAgTW92ZSBSZXNvdXJjZVRpbWluZyBiZWhpbmQgYSBydW50aW1lIGZsYWcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NzEzMwor
CisgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisKKyAgICAgICAgQWRkZWQg
dGVzdHMgdGhhdCBtYWtlIHN1cmUgUmVzb3VyY2VUaW1pbmcgQVBJcyBhcmUgZXhwb3NlZCBhbmQg
dGhhdCByZXNvdXJjZXMKKyAgICAgICAgc2hvdyB1cCBhcyBlbnRyaWVzIGluIHRoZSBwZXJmb3Jt
YW5jZSB0aW1lbGluZS4KKworICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVy
dGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVz
b3VyY2UtdGltaW5nLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sOiBSZW1vdmVkICIvLzsiLgorICAgICAgICAq
IGh0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJp
ZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3BlcmZvcm1hbmNl
L3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWw6IEFkZGVkLgorCiAyMDE2
LTA0LTMwICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdS
RVNTSU9OIChyMTk5NjQwKTogcG9zaXRpb246YWJzb2x1dGUgZ2VuZXJhdGVkIGNvbnRlbnQgaW5o
ZXJpdHMgdGV4dC1kZWNvcmF0aW9uIGZyb20gaXRzIGVsZW1lbnQKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uY2ZiOTE1NGU5YjNiNDQyNzE4MmY3NmM0ZmJlZTI3ZTU4MzI2ZTIzYgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVy
dGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NDYgQEAKK1RoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgcmVh
Y2hhYmxlIGZyb20gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3QsIGFsb25nIHdpdGggdGhl
aXIgdHlwZXMuCisKK3dpbmRvdy5wZXJmb3JtYW5jZSBbb2JqZWN0IFBlcmZvcm1hbmNlXQord2lu
ZG93LnBlcmZvcm1hbmNlLmFkZEV2ZW50TGlzdGVuZXIgW2Z1bmN0aW9uXQord2luZG93LnBlcmZv
cm1hbmNlLmNsZWFyUmVzb3VyY2VUaW1pbmdzIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS5kaXNwYXRjaEV2ZW50IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVz
IFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lIFtmdW5jdGlv
bl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlIFtmdW5jdGlvbl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtvYmplY3QgUGVyZm9ybWFuY2VOYXZpZ2F0aW9uXQor
d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9CQUNLX0ZPUldBUkQgW251bWJlcl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfTkFWSUdBVEUgW251bWJlcl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVMT0FEIFtudW1iZXJdCit3aW5kb3cu
cGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX1JFU0VSVkVEIFtudW1iZXJdCit3aW5kb3cucGVy
Zm9ybWFuY2UubmF2aWdhdGlvbi5yZWRpcmVjdENvdW50IFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2UubmF2aWdhdGlvbi50eXBlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uubm93IFtm
dW5jdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5vbnJlc291cmNldGltaW5nYnVmZmVyZnVsbCBb
bnVsbF0KK3dpbmRvdy5wZXJmb3JtYW5jZS5yZW1vdmVFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS5zZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgW2Z1bmN0aW9u
XQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZyBbb2JqZWN0IFBlcmZvcm1hbmNlVGltaW5nXQor
d2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5jb25uZWN0RW5kIFtudW1iZXJdCit3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLmNvbm5lY3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZy5kb21Db21wbGV0ZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5k
b21Db250ZW50TG9hZGVkRXZlbnRFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcuZG9tSW50ZXJhY3RpdmUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcuZG9tTG9hZGluZyBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21haW5M
b29rdXBFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tYWluTG9va3Vw
U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZmV0Y2hTdGFydCBbbnVt
YmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5sb2FkRXZlbnRFbmQgW251bWJlcl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubG9hZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9y
bWFuY2UudGltaW5nLnJlZGlyZWN0RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGlt
aW5nLnJlZGlyZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVx
dWVzdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlRW5k
IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuc2VjdXJlQ29ubmVjdGlvblN0YXJ0IFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50RW5kIFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnVubG9hZEV2ZW50U3RhcnQgW251bWJlcl0KK3dpbmRv
dy5wZXJmb3JtYW5jZS50aW1pbmcgW3ByaW50ZWQgYWJvdmUgYXMgd2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZ10KK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uIFtwcmludGVkIGFib3ZlIGFz
IHdpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uXQord2luZG93LnBlcmZvcm1hbmNlIFtzdHJp
bmddCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1p
bmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5kNWU4MmM2YTRiMmJiZThjNWE3Yzg5ZDVhYTNkNGUwNDEyNzgx
MjYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sCkBAIC0wLDAgKzEs
MTA0IEBACis8cD5UaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJl
IHJlYWNoYWJsZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0LCBhbG9uZyB3aXRo
IHRoZWlyIHR5cGVzLjwvcD4KKzxocj4KKzxwcmUgaWQ9InByZSI+PC9wcmU+CisKKzxzY3JpcHQ+
CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisK
K2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1
cHBvcnQodHJ1ZSk7CisgICAgCit2YXIgbG9nQnVmZmVyID0gW107CitmdW5jdGlvbiBsb2cocykK
K3sKKyAgICBsb2dCdWZmZXIucHVzaChzKTsKK30KKwordmFyIHByZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdwcmUnKTsKK2Z1bmN0aW9uIGZsdXNoTG9nKCkKK3sKKyAgICB2YXIgbG9nTWVz
c2FnZSA9IGxvZ0J1ZmZlci5qb2luKCIiKTsKKyAgICBwcmUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUobG9nTWVzc2FnZSkpOworfQorCitmdW5jdGlvbiB0cnlFdmFsKHN0cmlu
ZykKK3sKKyAgICB0cnkgeworICAgICAgICByZXR1cm4gZXZhbChzdHJpbmcpOworICAgIH0gY2F0
Y2ggKGUpIHsKKyAgICAgICAgcmV0dXJuIG5ldyBTdHJpbmcoIkNhdWdodCBleGNlcHRpb246ICIg
KyBlKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIHR5cGVPZk51bGxBd2FyZSh2YWx1ZSkKK3sKKyAg
ICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3QiICYmIHZhbHVlID09IG51bGwpCisgICAgICAg
IHJldHVybiAibnVsbCI7CisgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTsKK30KKworZnVuY3Rpb24g
dHlwZVN0cmluZ051bGxBd2FyZSh2YWx1ZSkKK3sKKyAgICB2YXIgdmFsdWVUeXBlID0gdHlwZU9m
TnVsbEF3YXJlKHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWVUeXBlID09ICJvYmplY3QiCisgICAg
ICAgID8gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKQorICAgICAgICA6ICJb
IiArIHZhbHVlVHlwZSArICJdIjsKK30KKworZnVuY3Rpb24gbG9nVmFsdWUodmFsdWVOYW1lKQor
eworICAgIHZhciB2YWx1ZSA9IHRyeUV2YWwodmFsdWVOYW1lKTsKKyAgICB2YXIgdmFsdWVUeXBl
ID0gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKTsKKworICAgIC8vIERvbid0IHRhaW50IHRoZSB0ZXN0
IHdpdGggb3VyIG93biB2YXJpYWJsZXMKKyAgICBpZiAodmFsdWUgPT0gbG9nQnVmZmVyIHx8IHZh
bHVlID09IHByZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRl
c3Qgd2l0aCBvdXIgb3duIHByb3BlcnRpZXMKKyAgICBpZiAoL19fdmlzaXRlZEJ5TG9nVmFsdWVf
Xy8udGVzdCh2YWx1ZU5hbWUpIHx8IC9fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXy8udGVz
dCh2YWx1ZU5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBXb3JrIGFyb3VuZCBGaXJl
Zm94IGluZmluaXRlIHJlY3Vyc2lvbgorICAgIGlmICgvXC5bMC05XS8udGVzdCh2YWx1ZU5hbWUp
KQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBBdm9pZCBpbmZpbml0ZSByZWN1cnNpb24KKyAg
ICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVf
XykgeworICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRlZCBhYm92ZSBhcyAiICsgdmFs
dWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxuIik7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBsb2codmFsdWVOYW1lICsgIiAiICsgdHlwZVN0cmluZ051bGxBd2Fy
ZSh2YWx1ZSkgKyAiXG4iKTsKKworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIpIHsKKyAg
ICAgICAgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9fID0gdHJ1ZTsKKyAgICAgICAgdmFsdWUu
X19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB2YWx1ZU5hbWU7CisgICAgICAgIGxvZ1By
b3BlcnRpZXModmFsdWUsIHZhbHVlTmFtZSk7CisgICAgfQorfQorCitmdW5jdGlvbiBsb2dQcm9w
ZXJ0aWVzKG9iamVjdCwgb2JqZWN0TmFtZSkKK3sKKyAgICB2YXIgYXJyYXkgPSBuZXcgQXJyYXk7
CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KSB7CisgICAgICAgIGFycmF5LnB1c2go
cHJvcGVydHkpOworICAgIH0KKyAgICBhcnJheS5zb3J0KCk7CisgICAgZm9yICh2YXIgaSA9IDA7
IGkgPCBhcnJheS5sZW5ndGg7IGkrKykgeworICAgICAgICB2YXIgcHJvcGVydHkgPSBhcnJheVtp
XTsKKyAgICAgICAgbG9nVmFsdWUob2JqZWN0TmFtZSArICIuIiArIHByb3BlcnR5KTsKKyAgICB9
Cit9CisKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UnKTsKK3dpbmRvdy5wZXJmb3JtYW5j
ZS50aW1pbmcgPSAndGltaW5nIGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZycpOword2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gPSAn
bmF2aWdhdGlvbiBpcyBub3QgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3Jt
YW5jZS5uYXZpZ2F0aW9uJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UgPSAncGVyZm9ybWFuY2UgaXMg
cmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOworZmx1c2hMb2co
KTsKK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWlu
Z1N1cHBvcnQoZmFsc2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sCmlu
ZGV4IDBhOGY4MWVmMTI1ODg4MjVkNWQxNmQ1YTlkMmRkYmU3NmI4NjkzMGQuLjFiMTJlMTdjYWYw
ODE2OGZjM2I5ZjhjZGJjZGJlMWNjMWQ3ZjBjMzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5o
dG1sCkBAIC0zMCw3ICszMCw3IEBAIGZ1bmN0aW9uIHRyeUV2YWwoc3RyaW5nKQogCiBmdW5jdGlv
biB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpCiB7Ci0gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2Jq
ZWN0IiAmJiB2YWx1ZSA9PSBudWxsKSAvLzsKKyAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmpl
Y3QiICYmIHZhbHVlID09IG51bGwpCiAgICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgcmV0dXJu
IHR5cGVvZiB2YWx1ZTsKIH0KQEAgLTYxLDcgKzYxLDcgQEAgZnVuY3Rpb24gbG9nVmFsdWUodmFs
dWVOYW1lKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBBdm9pZCBpbmZpbml0ZSByZWN1cnNp
b24KLSAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9fdmlzaXRlZEJ5TG9n
VmFsdWVfXykgeyAvLzsKKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiICYmIHZhbHVlLl9f
dmlzaXRlZEJ5TG9nVmFsdWVfXykgewogICAgICAgICBsb2codmFsdWVOYW1lICsgIiBbcHJpbnRl
ZCBhYm92ZSBhcyAiICsgdmFsdWUuX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18gKyAiXVxu
Iik7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFu
Y2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkY2Jj
NTA0Zjk1OTI3ZWQxZGU5NjgzZWYxODc1OTg0MWE0OTFhOWYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRp
bWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1BBU1MgZm91bmRJbWcg
aXMgdHJ1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNl
L3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVz
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNWNiODU5YjRjNzRiOTljNjBhZjU2N2M1YjliYTk0ZTFmNjZiMjE0
ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2Uv
cGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbApAQCAtMCwwICsxLDI4IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmludGVy
bmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydCh0cnVlKTsK
KyAgICB2YXIgdXJsID0gIi4uLy4uL3Jlc291cmNlcy9zcXVhcmUxMDAucG5nPyI7CisgICAgdXJs
ICs9IE1hdGgucmFuZG9tKCk7CisgICAgZG9jdW1lbnQud3JpdGUoIjxpbWcgc3JjPSciICsgdXJs
ICsgIic+Iik7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIHZhciBmb3VuZEltZyA9IGZhbHNl
OworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CisgICAg
ICAgIHZhciByZXNvdXJjZXMgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJj
ZScpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlc291cmNlcy5sZW5ndGg7ICsraSkg
eworICAgICAgICAgICAgaWYgKHJlc291cmNlc1tpXS5uYW1lLmluZGV4T2YoInNxdWFyZTEwMCIp
ICE9IC0xKSB7CisgICAgICAgICAgICAgICAgZm91bmRJbWcgPSB0cnVlOworICAgICAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9OworICAgICAgICBzaG91bGRCZVRy
dWUoImZvdW5kSW1nIik7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAg
ICAgd2luZG93LmludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoZmFsc2UpOworICAg
IH0pOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cg
Yi9DaGFuZ2VMb2cKaW5kZXggNDM5OGJlNjdkOTE2NmQzZDFmYjJkN2QyMTJmMzQzZmY1ZjM1NmU4
YS4uZWYzMjBkMjU5NjM1N2VjYjY0OTMxMTViMjAyMDUzNzViNzhmODIwOSAxMDA2NDQKLS0tIGEv
Q2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE2LTA1LTAxICBZ
b2F2IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcg
YmVoaW5kIGEgcnVudGltZSBmbGFnCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNTcxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVu
c2VuLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlOiBSZW1v
dmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisKIDIwMTYtMDQtMjkgIENv
bW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3
ZWQsIHJvbGxpbmcgb3V0IHIyMDAyMzIuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277848</attachid>
            <date>2016-05-01 02:26:03 -0700</date>
            <delta_ts>2016-05-01 03:08:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160501112636.patch</filename>
            <type>text/plain</type>
            <size>55542</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
OWU1YTZhODUyYzVlMmFiODZlNGY2ZDMwNmY1MTQ0NzFkOTUzMzVhLi42YWEwY2UwNDY2ZTQzNGMx
NzkwMTI4MGFhNjY1Njc4NTAwNGZiNzYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaDogQWRkZWQgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxp
c3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgYXMgcHJvcGVydHkgbmFtZXMuCisKIDIw
MTYtMDQtMzAgIEtvbnN0YW50aW4gVG9rYXJldiAgPGFubnVsZW5AeWFuZGV4LnJ1PgogCiAgICAg
ICAgIEd1YXJkIE9iakMtc3BlY2lmaWMgY29kZSBpbiBIZWFwLmNwcCB3aXRoIFVTRShGT1VOREFU
SU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCmluZGV4IDFiNWQ1NjBjZWZiMjY5ZTdjNjM5MDA4NjNhYmNmYmFlOGIwNWVh
MzkuLjc3MDZlMzQ0ZWFiYTAwMzViYjZkODY4MjIzYzI2Mzk0NzVmNWFlOTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSw1NyBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4K
KworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBNb3ZlIHRoZSBS
ZXNvdXJjZVRpbWluZyBBUEkgZnJvbSBiZWluZyBiZWhpbmQgYSBidWlsZCB0aW1lIGZsYWcgdG8g
YmUgYmVoaW5kIGFuCisgICAgICAgIG9mZi1ieS1kZWZhdWx0IHJ1bnRpbWUgZmxhZywgdGhhdCBj
YW4gYmUgdHVybmVkIG9uIHVzaW5nIGludGVybmFscy4KKworICAgICAgICBUZXN0czogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5o
dG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJl
c291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1h
a2U6IEFkZGVkIGlkbCBmaWxlcyBmb3IgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRy
eUxpc3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGRlZCB0aGUgdmFyaW91cyBQZXJmb3JtYW5jZSog
ZmlsZXMgdG8gdGhlIHByb2plY3QuCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmNwcDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZs
YWcuCisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpSdW50aW1lRW5h
YmxlZEZlYXR1cmVzKToKKyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRSZXNvdXJjZVRpbWluZ0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6cmVzb3Vy
Y2VUaW1pbmdFbmFibGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50
cnlDdXN0b20uY3BwOiBSZW1vdmVkICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuIEFkZGVkIGJ1aWxk
IGZsYWcgYXJvdW5kIFVzZXJUaW1pbmcgcmVsYXRlZCBoIGZpbGVzLgorICAgICAgICAoV2ViQ29y
ZTo6dG9KUyk6IERlbGV0ZWQuCisgICAgICAgICogZG9tL0V2ZW50TmFtZXMuaDogUmVuYW1lZCB3
ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwgdG8gcmVzb3VyY2V0aW1pbmdidWZmZXJmdWxs
LgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwOiBSZXBsYWNl
ICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KToKKyAgICAgICAgKiBs
b2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwOiBSZXBsYWNlICNpZiBmb3IgUmVzb3VyY2VU
aW1pbmcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRO
b3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWlu
ZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9h
ZGVyOjpyZXZhbGlkYXRlUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OmxvYWRSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6c3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpsb2FkRG9uZSk6CisgICAgICAgICog
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmg6IFJlbW92ZSAjaWYgZm9yIFJlc291
cmNlVGltaW5nLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuY3BwOiBSZW1vdmUgI2lmIGZv
ciBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjpQZXJmb3Jt
YW5jZSk6IFJlbW92ZWQgI2lmIGZvciBSZXNvdXJjZVRpbWluZyByZWxhdGVkIGluaXRpYWxpemF0
aW9uLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMpOiBS
ZW5hbWVkIHRvIGdldEVudHJpZXMuCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6d2Vi
a2l0R2V0RW50cmllc0J5VHlwZSk6IFJlbmFtZWQgdG8gZ2V0RW50cmllc0J5VHlwZS4KKyAgICAg
ICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKTogUmVuYW1l
ZCB0byBnZXRFbnRyaWVzQnlOYW1lLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2UuaDogUmVt
b3ZlICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5p
ZGw6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAg
ICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNF
X1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5Lmg6
IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBw
YWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsOiBSZXBsYWNlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElO
RSBidWlsZCBmbGFnIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFu
Y2VFbnRyeUxpc3QuY3BwOiBSZW1vdmUgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZs
YWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5oOiBSZW1vdmUgdGhlIFBF
UkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5j
ZUVudHJ5TGlzdC5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVMSU5FIGJ1aWxkIGZs
YWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZVJlc291cmNl
VGltaW5nLmNwcDogUmVtb3ZlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAg
ICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaDogUmVtb3ZlIHRoZSBSRVNPVVJD
RV9USU1JTkcgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuaWRsOiBSZXBsYWNlIHRoZSBSRVNPVVJDRV9USU1JTkcgYnVpbGQgZmxhZyB3aXRoIHJ1
bnRpbWUgZmxhZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6IEFkZCBhIG1ldGhv
ZCB0aGF0IGVuYWJsZXMgUmVzb3VyY2VUaW1pbmcuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bHM6OnNldFJlc291cmNlVGltaW5nU3VwcG9ydCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5h
bHMuaDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAg
KiB0ZXN0aW5nL0ludGVybmFscy5pZGw6IEFkZCBhIG1ldGhvZCB0aGF0IGVuYWJsZXMgUmVzb3Vy
Y2VUaW1pbmcuCisKIDIwMTYtMDQtMzAgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29t
PgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIxOTk2NDApOiBwb3NpdGlvbjphYnNvbHV0ZSBnZW5l
cmF0ZWQgY29udGVudCBpbmhlcml0cyB0ZXh0LWRlY29yYXRpb24gZnJvbSBpdHMgZWxlbWVudApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmll
cnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgK
aW5kZXggNGNjZjAzNTE0ZTJkMDViNmUxNDA4ZGQ1ODlmYmM1YWFkODYzOWZkOS4uMmIxZWQ2MGEy
MzY3NGVhN2U4NzMzYjkwNTIyMmEyMzZiNGNhNGY0NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC03MSw2ICs3MSw5IEBACiAg
ICAgbWFjcm8oTnVtYmVyKSBcCiAgICAgbWFjcm8oTnVtYmVyRm9ybWF0KSBcCiAgICAgbWFjcm8o
T2JqZWN0KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VFbnRyeSkgXAorICAgIG1hY3JvKFBlcmZv
cm1hbmNlRW50cnlMaXN0KSBcCisgICAgbWFjcm8oUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykg
XAogICAgIG1hY3JvKFByb21pc2UpIFwKICAgICBtYWNybyhQcm94eSkgXAogICAgIG1hY3JvKFJh
bmdlRXJyb3IpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDQyMGE3OTA0N2I2
ODQxMDhmNjMxNGQ3OWE5NWE3YzQyODdmMTk5ZjUuLmMzYTEyZTRjNjQ2YTYzOTY3NGViOTc2N2Ni
MjRlMmNmMWEwNTI5NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNTE4LDcg
KzUxOCwxMCBAQCBOT05fU1ZHX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL3BhZ2Uv
TG9jYXRpb24uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvTmF2aWdhdG9yLmlkbCBcCiAgICAg
JChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlLmlkbCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnkuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlk
bCBcCisgICAgJChXZWJDb3JlKS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaWRsIFwKICAgICAkKFdlYkNv
cmUpL3BhZ2UvU2NyZWVuLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1dlYktpdFBvaW50Lmlk
bCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKaW5kZXggMTMzZDhkMTVjNTQ3N2U3MThlMTFjMTQ2ZjJjNjkyOTE0MTVmMDRiYi4uMTljY2Vm
MTAyMzJmYThmZGU4ZTlkY2VhMmY4MTFhNWY1NjMyYmQ1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTk5MSw2ICs1OTkxLDE0
IEBACiAJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0EzQkY2N0QxMEQ5OUJB
RTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0FFOUY5MEYxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0Fz
cGVjdFJhdGlvVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUu
Y3BwICovOyB9OwogCQlDQUU5RjkxMDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9W
YWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0FF
OUY5MEUxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCAqLzsgfTsKKwkJ
Q0IzOEZENEIxQ0NDRjM2NjAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEExQ0NDRjJERDAw
NTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50cnkuY3BwICovOyB9OworCQlDQjM4RkQ1MTFDQ0Y5Mzg5
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDREMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlRW50cnkuY3BwICovOyB9OworCQlDQjM4RkQ1MjFDQ0Y5Mzk0MDA1OTJBM0YgLyog
SlNQZXJmb3JtYW5jZUVudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5
LmggKi87IH07CisJCUNCMzhGRDUzMUNDRjkzOUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnlMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENCMzhGRDRGMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAq
LzsgfTsKKwkJQ0IzOEZENTQxQ0NGOTM5RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhG
RDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi87IH07CisJ
CUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTUx
Q0QyMUQ1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAgKi87IH07CisJ
CUNCMzhGRDVBMUNEMjMyNTgwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZE
NTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi87
IH07CisJCUNCMzhGRDVCMUNEMjMyNUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VU
aW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENC
MzhGRDU5MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCAq
LzsgfTsKIAkJQ0I4Q0YwMTgxQTkzNThENDAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0I4Q0YwMTUxQTkzNEI0
MzAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwICovOyB9OwogCQlDQ0MyQjUxNDE1RjYxMzA2MDA0
OENERDYgLyogRGV2aWNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDQ0MyQjUxMDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0NDMkI1
MTUxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2
IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovOyB9OwpAQCAtMTM5NTgsNiArMTM5NjYsMTQgQEAK
IAkJQ0EzQkY2N0QxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVj
dFJhdGlvVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDQUU5RjkwRTE0
NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlRW50
cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBmaWxlRW5jb2Rpbmcg
PSA0OyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0IzOEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8q
IEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNCMzhGRDUwMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlM
aXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVu
dHJ5TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ1NTFDRDIxRDVC
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU4MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0I4
Q0YwMTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTWljcm90YXNrcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUNDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlQ2xpZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250
cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZUNv
bnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTgwNjQsNiArMTgw
ODAsNyBAQAogCQkJCThBODQ0RDAyMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5oICov
LAogCQkJCThBODQ0RDAzMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5pZGwgKi8sCiAJ
CQkJODZCRTMzRkIxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaCAqLywKKwkJ
CQlDQjM4RkQ0QTFDQ0NGMkREMDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8sCiAJ
CQkJODZCRTMzRkMxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaWRsICovLAog
CQkJCTg2QkUzM0ZEMTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAg
Ki8sCiAJCQkJODZCRTMzRkUxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0
LmggKi8sCkBAIC0yMjMxOSw2ICsyMjMzNiw3IEBACiAJCQkJODNGMTIwNkExQjhDMTAzNjAwRDc1
RjYzIC8qIEpTTm9kZUZpbHRlckN1c3RvbS5jcHAgKi8sCiAJCQkJN0M5MUEzOEQxQjQ5OEFCRTAw
M0Y5RUZBIC8qIEpTTm9kZU9yU3RyaW5nLmNwcCAqLywKIAkJCQk3QzkxQTM4RTFCNDk4QUJFMDAz
RjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuaCAqLywKKwkJCQlDQjM4RkQ1NTFDRDIxRDVCMDA1OTJB
M0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLywKIAkJCQk5M0I3MEQ0RjA5RUIw
QzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcCAqLywKIAkJCQk5M0I3
MEQ1MDA5RUIwQzdDMDA5RDg0NjggLyogSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmggKi8sCiAJ
CQkJNDEyOURGODMxQkI1QjdGNzAwMzIyQTE2IC8qIEpTUmVhZGFibGVTdHJlYW1Qcml2YXRlQ29u
c3RydWN0b3JzLmNwcCAqLywKQEAgLTIyNjU1LDggKzIyNjczLDE0IEBACiAJCQkJQTlEMjQ3RjYw
RDc1N0UzMzAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmggKi8sCiAJCQkJRTUxQTgxREUxNzI5OEQ3
NzAwQkZDQTYxIC8qIEpTUGVyZm9ybWFuY2UuY3BwICovLAogCQkJCThBOUE1ODczMTFFODRDODEw
MDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlLmggKi8sCisJCQkJQ0IzOEZENEQxQ0NGOTM3RTAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8sCisJCQkJQ0IzOEZENEUxQ0NGOTM3RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCUNCMzhGRDRGMUNDRjkzN0Uw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCAqLywKKwkJCQlDQjM4RkQ1MDFD
Q0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5oICovLAogCQkJCThBOUE1
ODZFMTFFODRDMzUwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5jcHAgKi8sCiAJ
CQkJOEE5QTU4NkYxMUU4NEMzNjAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgg
Ki8sCisJCQkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5jcHAgKi8sCisJCQkJQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oICovLAogCQkJCTBGNDNDODVFMTg5RTE1QTYwMDAxOUFFMiAv
KiBKU1BlcmZvcm1hbmNlVGltaW5nLmNwcCAqLywKIAkJCQk4QTlBNTg3NzExRTg0Qzk4MDA4QUNG
RDEgLyogSlNQZXJmb3JtYW5jZVRpbWluZy5oICovLAogCQkJCUJDRUMwMUMwMEMyNzREREQwMDlG
NEVDOSAvKiBKU1NjcmVlbi5jcHAgKi8sCkBAIC0yNTU2Miw2ICsyNTU4Niw3IEBACiAJCQkJMkQy
OUVDQ0ExOTJGMUYxRDAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvcklPUy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkRFNzAwMjMxOTJGRTgyQTAwQjA5NzVDIC8qIERpc3BsYXlSZWZyZXNo
TW9uaXRvck1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQyOUVDQzgxOTJFQ0M4MzAwOTg0Qjc4
IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNC
MzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUNENTI0ODFCMThFMjAwRUQwMDA4QTA3RCAvKiBEaXNwbGF5U2xlZXBEaXNhYmxl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ4QzREQzAxNDI4MjIyQzAwMjZDRTcyIC8qIERpc3Bs
YXlTbGVlcERpc2FibGVyQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCUZEMzE2MDkxMTJCMDI2
RjcwMEMxQTM1OSAvKiBEaXN0YW5jZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzY5OCw2ICsyNzcy
Myw3IEBACiAJCQkJQkNFQTQ4NjgwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclZpZXcuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJFMjA1MDdFMThBNDU4QzIwMDgwNjQ3RSAvKiBSZW5kZXJWVFRDdWUu
aCBpbiBIZWFkZXJzICovLAogCQkJCUE4NzFERkU0MEExNTM3NkIwMEIxMkE2OCAvKiBSZW5kZXJX
aWRnZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUNCMzhGRDVCMUNEMjMyNUIwMDU5MkEzRiAvKiBK
U1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4OUNDQzUz
MEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTMzMDlFMEEwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25D
b21tYW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OUNDMEI1NDE4QkU5ODQ5MDA2Q0VCQ0MgLyog
UmVwbGF5Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yODAyNyw2ICsyODA1Myw3IEBA
CiAJCQkJQThFQTgwMEEwQTE5NTE2RTAwQThFRjVGIC8qIFN0eWxlU2hlZXRMaXN0LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzVFQjVFNTBFODFCRjZEMDBCMjU5NjUgLyogU3R5bGVTdXJyb3VuZERh
dGEuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCODEwMEU4MUYyQ0UwMEIyNTk2NSAvKiBTdHls
ZVRyYW5zZm9ybURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUNCMzhGRDU0MUNDRjkzOUUwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQlFNERF
QUExODE3QTkzREMzMDAwRTA0MzAgLyogU3R5bGVUcmVlUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDNUVCNjlBMEU4MURBNjMwMEIyNTk2NSAvKiBTdHlsZVZpc3VhbERhdGEuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUQwMDBFRDI4MTFDMUI5Q0QwMEM0NzcyNiAvKiBTdWJmcmFtZUxvYWRl
ci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yOTIwOSw2ICsyOTIzNiw3IEBACiAJCQkJQjI3NTM1Nzcw
QjA1MzgxNDAwMkNFNjRGIC8qIENvbG9yTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDNFREQ2
N0UxQjQ4NURCRjAwNjQwRTc1IC8qIENvbWJpbmVkRmlsdGVyc0FscGhhYmV0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTI2RTk0NEQ4MUFDNEIyREQwMDdCODVCNSAvKiBDb21iaW5lZFVSTEZpbHRl
cnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENEIxQ0NDRjM2NjAwNTkyQTNGIC8qIFBl
cmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTU4NEZFMzQxODY0RDVBRjAw
ODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJSG9zdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0
RkUyQjE4NjM4NzBGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElNb2R1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNjU1MEI2QTEwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCkBAIC0zMTIyNyw2ICszMTI1NSw3IEBACiAJCQkJQkM5NkRCNDYwRjNBODgyMjAw
NTczQ0IzIC8qIFJlbmRlckJveE1vZGVsT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJD
RUE0ODY1MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCdXR0b24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQkNFNDQxMzMxMkY3NDhFMjAwOUI4NEI4IC8qIFJlbmRlckNvbWJpbmVUZXh0LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUNCMzhGRDVBMUNEMjMyNTgwMDU5MkEzRiAvKiBKU1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5MkYxNDQwQUQxODVG
RTAwNjkxQkQ0IC8qIFJlbmRlckNvdW50ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFQTQ4
NkQwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlEMzAyNzU0OTEyQTVGRTg0MDA0QkQ4MjggLyogUmVuZGVyRGV0YWls
c01hcmtlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTMyMDA0LDYgKzMyMDMzLDcgQEAKIAkJCQk0
NDRENEUyMzBGNzA4QjJFMDAzMTU4RTAgLyogV2ViQ29yZVVSTFJlc3BvbnNlSU9TLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJOTNGMTlCMDcwODI0NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmVWaWV3Lm0g
aW4gU291cmNlcyAqLywKIAkJCQlBNUU2MTY3MzE4OTQ1ODFGMDA5QURGNTAgLyogV2ViRGVidWdn
ZXJBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ1NzFDRDIxRTJBMDA1OTJBM0Yg
LyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFMEQ4
NEVCMTA0ODQzNkUwMDFBMTc5RSAvKiBXZWJFdmVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTIy
NUExNkI2MEQ1QzExRTkwMDA5MDI5NSAvKiBXZWJFdmVudFJlZ2lvbi5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUQzRjNEMzZEMUE2OUI3REMwMDU5RkMyQiAvKiBXZWJHTDJSZW5kZXJpbmdDb250ZXh0
LmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzIwODMsNiArMzIxMTMsNyBAQAogCQkJCUIxMEI2OTgx
MTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tlbml6ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0Q4MjAzMTExMzk1QUNFNzAwRjk1NkM2IC8qIFdlYldpbmRvd0FuaW1hdGlvbi5tbSBpbiBT
b3VyY2VzICovLAogCQkJCUY1NUIzRERGMTI1MUYxMkQwMDNFRjI2OSAvKiBXZWVrSW5wdXRUeXBl
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDUxMUNDRjkzODkwMDU5MkEzRiAvKiBKU1Bl
cmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODUwMzFCNTAwQTQ0RUZDNzAw
Rjk5MkUwIC8qIFdoZWVsRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUxOTUxNkIxQjY1
OThEMjAwREY2RUVGIC8qIFdoZWVsRXZlbnREZWx0YUZpbHRlci5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkyRUVFRTU1QzFCNjZBMDQ3MDA4RTJDQkMgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyTWFj
Lm1tIGluIFNvdXJjZXMgKi8sCkBAIC0zMjEyMCw2ICszMjE1MSw3IEBACiAJCQkJMDBCOTMxODkx
M0JBOERCQzAwMzVBOTQ4IC8qIFhNTERvY3VtZW50UGFyc2VyTGlieG1sMi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkwMEI5MzE4QjEzQkE4REM5MDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJT
Y29wZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1OUMyODA0NTEzOERDMjQxMDA3OUI3RTIgLyog
WE1MRXJyb3JzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDUzMUNDRjkzOUIwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDNzcy
QzQ2MEM0RUIyQzYwMDgzMjg1RiAvKiBYTUxIdHRwUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlBMTM2QTAwQzExMzREQkQyMDBDQzhENTAgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2
ZW50VGhyb3R0bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNERkQ0OEYwRTMwNTI5MDAwOUQx
MEFEIC8qIFhNTEh0dHBSZXF1ZXN0VXBsb2FkLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0
dXJlcy5jcHAKaW5kZXggMmNjNjEyNDEzNzhmNDVkMTJkN2UyOTY4ZjE5MDNkMDBjYzY1ZTk1Zi4u
MWI1ZGMxNWQ0YmRmNTRiMTJhOGQxNmVmODgyYjRkYjFhZGMyY2FlYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuY3BwCkBAIC01OSw2ICs1OSw3IEBAIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OlJ1bnRpbWVF
bmFibGVkRmVhdHVyZXMoKQogI2Vsc2UKICAgICAsIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQoZmFsc2UpCiAjZW5kaWYKKyAgICAsIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQoZmFsc2Up
CiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgLCBtX2lzSW5kZXhlZERCRW5hYmxl
ZChmYWxzZSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2Vu
ZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9n
ZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAppbmRleCAxMWVjZDk1MzNkNGQ4YmVmOThl
MWZkZDM1ZjE1Y2U0ZWQxY2VkMWUxLi40ZDM2ZDY4OTBhMzRkZjliZjRiMDY5ZmNkZjU4Mzc0Mzk5
NDA0Zjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmlj
L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaApAQCAtMjAxLDYgKzIwMSw5IEBAIHB1YmxpYzoKICAg
ICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX2lz
UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkID0gaXNFbmFibGVkOyB9CiAgICAgYm9vbCBwbHVnaW5S
ZXBsYWNlbWVudEVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUGx1Z2luUmVwbGFjZW1lbnRF
bmFibGVkOyB9CiAKKyAgICB2b2lkIHNldFJlc291cmNlVGltaW5nRW5hYmxlZChib29sIGlzRW5h
YmxlZCkgeyBtX2lzUmVzb3VyY2VUaW1pbmdFbmFibGVkID0gaXNFbmFibGVkOyB9CisgICAgYm9v
bCByZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzUmVzb3VyY2VUaW1p
bmdFbmFibGVkOyB9CisKICNpZiBFTkFCTEUoR0FNRVBBRCkKICAgICB2b2lkIHNldEdhbWVwYWRz
RW5hYmxlZChib29sIGFyZUVuYWJsZWQpIHsgbV9hcmVHYW1lcGFkc0VuYWJsZWQgPSBhcmVFbmFi
bGVkOyB9CiAgICAgYm9vbCBnYW1lcGFkc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2FyZUdh
bWVwYWRzRW5hYmxlZDsgfQpAQCAtMjY3LDYgKzI3MCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBt
X2lzQ1NTQ29tcG9zaXRpbmdFbmFibGVkOwogICAgIGJvb2wgbV9pc0xhbmdBdHRyaWJ1dGVBd2Fy
ZUZvcm1Db250cm9sVUlFbmFibGVkOwogICAgIGJvb2wgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5h
YmxlZDsKKyAgICBib29sIG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQ7CiAKICNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKICAgICBib29sIG1faXNJbmRleGVkREJFbmFibGVkOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9t
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3Rv
bS5jcHAKaW5kZXggNzRkZTVkMmJkOTFkYWE1NTgwNWIzYTEzZDU4NTZlNjU3NDY3MTQ3ZS4uMTU0
MmQwZGFkZDliNGMwODc4YTUxYmU3MGU3NjA5NjBmYjMxODY1OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCkBA
IC0zMCwxMyArMzAsMTMgQEAKIAogI2luY2x1ZGUgImNvbmZpZy5oIgogCi0jaWYgRU5BQkxFKFBF
UkZPUk1BTkNFX1RJTUVMSU5FKQotCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZUVudHJ5LmgiCiAK
ICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAjaW5j
bHVkZSAiSlNQZXJmb3JtYW5jZU1hcmsuaCIKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWVhc3Vy
ZS5oIgorI2VuZGlmCiAjaW5jbHVkZSAiSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAj
aW5jbHVkZSAiUGVyZm9ybWFuY2VNYXJrLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VNZWFzdXJl
LmgiCkBAIC01MSwxMCArNTEsOCBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUGVyZm9ybWFuY2VFbnRyeSogZW50cgogICAgIGlmICgh
ZW50cnkpCiAgICAgICAgIHJldHVybiBqc051bGwoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9U
SU1JTkcpCiAgICAgaWYgKGlzPFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmc+KCplbnRyeSkpCiAg
ICAgICAgIHJldHVybiB3cmFwPEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZz4oZ2xvYmFsT2Jq
ZWN0LCBkb3duY2FzdDxQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nPigqZW50cnkpKTsKLSNlbmRp
ZgogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChpczxQZXJmb3JtYW5jZU1hcms+
KCplbnRyeSkpCkBAIC02OCw1ICs2NiwzIEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqLCBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3JtYW5jZUVudHJ5KiBlbnRyCiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShQRVJGT1JNQU5DRV9U
SU1FTElORSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmggYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCmluZGV4IDRjZTg2Nzg1MDBkZGNhNTBiNWU1
YzgxMGIyZDJkYjAzYjlmYTdiZjQuLmQ1NzQ3MzhmYmI4YzBhYzZjMjQ0NjFmMDEyOGExZWUzMjlh
NmY4NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaApAQCAtMTgzLDYgKzE4Myw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhyZW1vdmV0cmFjaykgXAogICAgIG1hY3JvKHJlc2V0
KSBcCiAgICAgbWFjcm8ocmVzaXplKSBcCisgICAgbWFjcm8ocmVzb3VyY2V0aW1pbmdidWZmZXJm
dWxsKSBcCiAgICAgbWFjcm8ocmVzdWx0KSBcCiAgICAgbWFjcm8ocmVzdW1lKSBcCiAgICAgbWFj
cm8oc2Nyb2xsKSBcCkBAIC0yNjEsNyArMjYyLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
IG1hY3JvKHdlYmtpdHByZXNlbnRhdGlvbm1vZGVjaGFuZ2VkKSBcCiAgICAgbWFjcm8od2Via2l0
cmVnaW9ub3ZlcnNldGNoYW5nZSkgXAogICAgIG1hY3JvKHdlYmtpdHJlbW92ZXNvdXJjZWJ1ZmZl
cikgXAotICAgIG1hY3JvKHdlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbCkgXAogICAgIG1h
Y3JvKHdlYmtpdHNvdXJjZWNsb3NlKSBcCiAgICAgbWFjcm8od2Via2l0c291cmNlZW5kZWQpIFwK
ICAgICBtYWNybyh3ZWJraXRzb3VyY2VvcGVuKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGNkYzQ1OWYyYmZhOGExYmU2
MmFmZWUzM2M0YjBiZTc3MWNiNjFhMWQuLjVmNWVmZDg0MThhMzdlYTAyZGZhYjYzNTNiMDI1YThh
NjA2ZmFiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFj
a2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVx
dWVzdC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJT
Y2hlbWVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAi
U3VicmVzb3VyY2VMb2FkZXIuaCIKQEAgLTM4NSw5ICszODYsOCBAQCB2b2lkIERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBTZWN1cgogICAgICAgICB9CiAKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IG5ld1Jl
cXVlc3QocmVxdWVzdCwgb3B0aW9ucyk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAg
ICAgICAgbmV3UmVxdWVzdC5zZXRJbml0aWF0b3IobV9vcHRpb25zLmluaXRpYXRvcik7Ci0jZW5k
aWYKKyAgICAgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCku
cmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgICAgICBuZXdSZXF1ZXN0LnNldEluaXRp
YXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKICAgICAgICAgQVNTRVJUKCFtX3Jlc291cmNlKTsK
ICAgICAgICAgbV9yZXNvdXJjZSA9IG1fZG9jdW1lbnQuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5y
ZXF1ZXN0UmF3UmVzb3VyY2UobmV3UmVxdWVzdCk7CiAgICAgICAgIGlmIChtX3Jlc291cmNlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAKaW5kZXgg
ZDM5ZmQyN2RjNTY2YzBmZTI0ZDEwYzYwMTRjNWJlZGVkM2U0ZmNiOS4uZTU0NjdmZDExMTA4ZTIx
MDllMWQyZjlkOWQ1NmI1YzNlODZkMTMxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCkBAIC0zOSw2ICszOSw3IEBACiAjaW5jbHVkZSAiUGFn
ZS5oIgogI2luY2x1ZGUgIlByb2dyZXNzVHJhY2tlci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9h
ZGVyLmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogCiAjaWYgVVNFKFFV
SUNLX0xPT0spCiAjaW5jbHVkZSAiUXVpY2tMb29rLmgiCkBAIC0xNDYsOSArMTQ3LDggQEAgdm9p
ZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICBpZiAobG9hZGVyICYmICFyZXF1ZXN0LmlzTnVsbCgp
ICYmIHJlcXVlc3QudXJsKCkgPT0gbG9hZGVyLT51cmwoKSkKICAgICAgICAgcmVxdWVzdC5zZXRS
ZXBvcnRMb2FkVGltaW5nKHRydWUpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAg
ICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7Ci0jZW5kaWYKKyAgICBpZiAoUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJs
ZWQoKSkKKyAgICAgICAgcmVxdWVzdC5zZXRSZXBvcnRMb2FkVGltaW5nKHRydWUpOwogfQogCiB2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHIsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCmlu
ZGV4IGMwYTk5YTNkZTk3ODk0NWZkNjQ5ZGMyZDZlYTc4ZGI2Nzg3MTMwMWQuLjNkYjkwMDdmMWY4
Mzc4NmI2ZmQ3YjM0MWEwYTY0MDk2YmIzZTE3MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApAQCAtNTcsMTAgKzU3LDEy
IEBACiAjaW5jbHVkZSAiTWFpbkZyYW1lLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIKICNp
bmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlICJQaW5n
TG9hZGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZEluZm8uaCIKKyNpbmNsdWRlICJS
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgog
I2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2Vzc2lvbklELmgiCkBAIC03
NSwxMCArNzcsNiBAQAogI2luY2x1ZGUgIkNhY2hlZFRleHRUcmFjay5oIgogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCi0jZW5k
aWYKLQogI2RlZmluZSBQUkVMT0FEX0RFQlVHIDAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAt
NjcxLDExICs2NjksOCBAQCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gQ2Fj
aGVkUmVzb3VyY2VMb2FkZXI6OnJldmFsaWRhdGVSZXNvdXJjZShjbwogICAgIAogICAgIG1lbW9y
eUNhY2hlLnJlbW92ZSgqcmVzb3VyY2UpOwogICAgIG1lbW9yeUNhY2hlLmFkZCgqbmV3UmVzb3Vy
Y2UpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgc3RvcmVSZXNvdXJjZVRpbWlu
Z0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsKLSNlbHNlCi0gICAgVU5V
U0VEX1BBUkFNKHJlcXVlc3QpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHN0
b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7
CiAgICAgcmV0dXJuIG5ld1Jlc291cmNlOwogfQogCkBAIC02OTAsMTUgKzY4NSwxNCBAQCBDYWNo
ZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6Omxv
YWRSZXNvdXJjZShDYWNoZWRSZQogCiAgICAgaWYgKHJlcXVlc3QuYWxsb3dzQ2FjaGluZygpICYm
ICFtZW1vcnlDYWNoZS5hZGQoKnJlc291cmNlKSkKICAgICAgICAgcmVzb3VyY2UtPnNldE93bmlu
Z0NhY2hlZFJlc291cmNlTG9hZGVyKHRoaXMpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcp
Ci0gICAgc3RvcmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCBy
ZXF1ZXN0KTsKLSNlbmRpZgorICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRG
ZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgpKQorICAgICAgICBzdG9yZVJlc291cmNl
VGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwogICAgIHJldHVy
biByZXNvdXJjZTsKIH0KIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiB2b2lkIENhY2hl
ZFJlc291cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24o
Y29uc3QgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+JiByZXNvdXJjZSwgY29u
c3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogeworICAgIEFTU0VSVChSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgp
KTsKICAgICBpZiAocmVzb3VyY2UtPnR5cGUoKSA9PSBDYWNoZWRSZXNvdXJjZTo6TWFpblJlc291
cmNlKSB7CiAgICAgICAgIC8vIDxpZnJhbWU+cyBzaG91bGQgcmVwb3J0IHRoZSBpbml0aWFsIG5h
dmlnYXRpb24gcmVxdWVzdGVkIGJ5IHRoZSBwYXJlbnQgZG9jdW1lbnQsIGJ1dCBub3Qgc3Vic2Vx
dWVudCBuYXZpZ2F0aW9ucy4KICAgICAgICAgaWYgKGZyYW1lKCktPm93bmVyRWxlbWVudCgpICYm
IG1fZG9jdW1lbnRMb2FkZXItPmZyYW1lTG9hZGVyKCktPnN0YXRlTWFjaGluZSgpLmNvbW1pdHRp
bmdGaXJzdFJlYWxMb2FkKCkpIHsKQEAgLTcxMCw3ICs3MDQsNiBAQCB2b2lkIENhY2hlZFJlc291
cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3Qg
Q2FjaGVkUgogICAgICAgICBtX2luaXRpYXRvck1hcC5hZGQocmVzb3VyY2UuZ2V0KCksIGluZm8p
OwogICAgIH0KIH0KLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiBzdGF0aWMg
dm9pZCBsb2dSZXZhbGlkYXRpb24oY29uc3QgU3RyaW5nJiByZWFzb24sIERpYWdub3N0aWNMb2dn
aW5nQ2xpZW50JiBsb2dDbGllbnQpCiB7CkBAIC05NzYsOCArOTY5LDkgQEAgdm9pZCBDYWNoZWRS
ZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNo
b3VsZFBlcmZvcm0KICAgICBSZWZQdHI8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3REb2N1bWVudExv
YWRlcihtX2RvY3VtZW50TG9hZGVyKTsKICAgICBSZWZQdHI8RG9jdW1lbnQ+IHByb3RlY3REb2N1
bWVudChtX2RvY3VtZW50KTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0gICAgaWYg
KHJlc291cmNlICYmIHJlc291cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpICYmICgoIXJlc291cmNl
LT5lcnJvck9jY3VycmVkKCkgJiYgIXJlc291cmNlLT53YXNDYW5jZWxlZCgpKSB8fCByZXNvdXJj
ZS0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkpIHsKKyAgICBpZiAoUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQo
KQorICAgICAgICAmJiByZXNvdXJjZSAmJiByZXNvdXJjZS0+cmVzcG9uc2UoKS5pc0hUVFAoKQor
ICAgICAgICAmJiAoKCFyZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpICYmICFyZXNvdXJjZS0+d2Fz
Q2FuY2VsZWQoKSkgfHwgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaHR0cFN0YXR1c0NvZGUoKSA9PSAz
MDQpKSB7CiAgICAgICAgIEhhc2hNYXA8Q2FjaGVkUmVzb3VyY2UqLCBJbml0aWF0b3JJbmZvPjo6
aXRlcmF0b3IgaW5pdGlhdG9ySXQgPSBtX2luaXRpYXRvck1hcC5maW5kKHJlc291cmNlKTsKICAg
ICAgICAgaWYgKGluaXRpYXRvckl0ICE9IG1faW5pdGlhdG9yTWFwLmVuZCgpKSB7CiAgICAgICAg
ICAgICBBU1NFUlQoZG9jdW1lbnQoKSk7CkBAIC05OTAsOSArOTg0LDYgQEAgdm9pZCBDYWNoZWRS
ZXNvdXJjZUxvYWRlcjo6bG9hZERvbmUoQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNo
b3VsZFBlcmZvcm0KICAgICAgICAgICAgIG1faW5pdGlhdG9yTWFwLnJlbW92ZShpbml0aWF0b3JJ
dCk7CiAgICAgICAgIH0KICAgICB9Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShyZXNvdXJjZSk7
Ci0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIAogICAgIGlmIChmcmFtZSgpKQog
ICAgICAgICBmcmFtZSgpLT5sb2FkZXIoKS5sb2FkRG9uZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAppbmRleCBiMWY3YzRmYWY1
ZGJiMDk2MDFjNTg5MmY1ZDY0NzEzOTQ5YjFmNjBkLi40ZGY4MTk5NTljZWFiMTEwMzc0YjU1YjQ2
MDM5MzBhODdlYjdjNjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2VMb2FkZXIuaApAQCAtMTQ0LDkgKzE0NCw3IEBAIHByaXZhdGU6CiAgICAg
Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJlcXVlc3RSZXNvdXJjZShDYWNo
ZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgQ2FjaGVkUmVz
b3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHJldmFsaWRhdGVSZXNvdXJjZShjb25zdCBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QmLCBDYWNoZWRSZXNvdXJjZSopOwogICAgIENhY2hlZFJlc291cmNl
SGFuZGxlPENhY2hlZFJlc291cmNlPiBsb2FkUmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUs
IENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAg
ICAgdm9pZCBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24oY29uc3QgQ2Fj
aGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+JiwgY29uc3QgQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0Jik7Ci0jZW5kaWYKICAgICB2b2lkIHJlcXVlc3RQcmVsb2FkKENhY2hlZFJlc291cmNl
OjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQpOwog
CiAgICAgZW51bSBSZXZhbGlkYXRpb25Qb2xpY3kgeyBVc2UsIFJldmFsaWRhdGUsIFJlbG9hZCwg
TG9hZCB9OwpAQCAtMTc5LDEzICsxNzcsMTEgQEAgcHJpdmF0ZToKIAogICAgIFRpbWVyIG1fZ2Fy
YmFnZUNvbGxlY3REb2N1bWVudFJlc291cmNlc1RpbWVyOwogCi0jaWYgRU5BQkxFKFJFU09VUkNF
X1RJTUlORykKICAgICBzdHJ1Y3QgSW5pdGlhdG9ySW5mbyB7CiAgICAgICAgIEF0b21pY1N0cmlu
ZyBuYW1lOwogICAgICAgICBkb3VibGUgc3RhcnRUaW1lOwogICAgIH07CiAgICAgSGFzaE1hcDxD
YWNoZWRSZXNvdXJjZSosIEluaXRpYXRvckluZm8+IG1faW5pdGlhdG9yTWFwOwotI2VuZGlmCiAK
ICAgICAvLyAyOSBiaXRzIGxlZnQKICAgICBib29sIG1fYXV0b0xvYWRJbWFnZXMgOiAxOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAppbmRleCBlZDM5YTFkMTUwODFiNDc2NGFlOTdhZmFm
NzM4YmE5Njc5N2U3MzJiLi4wOGM3MDMxZjRmZDEyODFkNWQ1YjUxNGU3ZGM0MzMwODBiNTRhY2Q0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcApAQCAtNDcsMTUgKzQ3LDExIEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiBzdGF0
aWMgY29uc3Qgc2l6ZV90IGRlZmF1bHRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgPSAxNTA7Ci0j
ZW5kaWYKIAogUGVyZm9ybWFuY2U6OlBlcmZvcm1hbmNlKEZyYW1lJiBmcmFtZSkKICAgICA6IERP
TVdpbmRvd1Byb3BlcnR5KCZmcmFtZSkKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAg
ICwgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUoZGVmYXVsdFJlc291cmNlVGltaW5nQnVmZmVy
U2l6ZSkKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgICwgbV9yZWZlcmVu
Y2VUaW1lKGZyYW1lLmRvY3VtZW50KCktPmxvYWRlcigpID8gZnJhbWUuZG9jdW1lbnQoKS0+bG9h
ZGVyKCktPnRpbWluZygpLnJlZmVyZW5jZU1vbm90b25pY1RpbWUoKSA6IG1vbm90b25pY2FsbHlJ
bmNyZWFzaW5nVGltZSgpKQogI2lmIEVOQUJMRShVU0VSX1RJTUlORykKICAgICAsIG1fdXNlclRp
bWluZyhudWxscHRyKQpAQCAtOTEsMTQgKzg3LDExIEBAIFBlcmZvcm1hbmNlVGltaW5nKiBQZXJm
b3JtYW5jZTo6dGltaW5nKCkgY29uc3QKICAgICByZXR1cm4gbV90aW1pbmcuZ2V0KCk7CiB9CiAK
LSNpZiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi1QYXNzUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiBQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcygpIGNvbnN0CitSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzKCkgY29uc3QKIHsK
ICAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVu
dHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIGVu
dHJpZXMtPmFwcGVuZEFsbChtX3Jlc291cmNlVGltaW5nQnVmZmVyKTsKLSNlbmRpZiAvLyBFTkFC
TEUoUkVTT1VSQ0VfVElNSU5HKQogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmICht
X3VzZXJUaW1pbmcpIHsKQEAgLTExMSwxNiArMTA0LDE0IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3QKICAgICBy
ZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVy
Zm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUp
CitSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlU
eXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKQogewogICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVu
dHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lm
IEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVND
SUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsKICAgICAgICAgZm9yIChhdXRvJiByZXNv
dXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpCiAgICAgICAgICAgICBlbnRyaWVzLT5hcHBl
bmQocmVzb3VyY2UpOwogICAgIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQog
ICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTEzNSwxOCArMTI2LDE2IEBAIFBhc3NSZWZQdHI8
UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlUeXBl
KGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLVBhc3NSZWZQdHI8UGVyZm9y
bWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0
IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCitSZWZQdHI8UGVyZm9ybWFu
Y2VFbnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjpnZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluZyYg
bmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCiB7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNl
RW50cnlMaXN0PiBlbnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwogCi0j
aWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZW50cnlUeXBlLmlzTnVsbCgpIHx8
IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGVudHJ5VHlwZSwgInJlc291cmNlIikpIHsK
ICAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpIHsK
ICAgICAgICAgICAgIGlmIChyZXNvdXJjZS0+bmFtZSgpID09IG5hbWUpCiAgICAgICAgICAgICAg
ICAgZW50cmllcy0+YXBwZW5kKHJlc291cmNlKTsKICAgICAgICAgfQogICAgIH0KLSNlbmRpZgog
CiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgIGlmIChtX3VzZXJUaW1pbmcpIHsKQEAgLTE2
MSwyMCArMTUwLDE2IEBAIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IFBlcmZvcm1h
bmNlOjp3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0IFN0cmluCiAgICAgcmV0dXJuIGVudHJp
ZXM7CiB9CiAKLSNlbmRpZiAvLyBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KLSNpZiBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCi12b2lkIFBlcmZvcm1hbmNlOjp3ZWJraXRDbGVhclJl
c291cmNlVGltaW5ncygpCit2b2lkIFBlcmZvcm1hbmNlOjpjbGVhclJlc291cmNlVGltaW5ncygp
CiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5jbGVhcigpOwogfQogCi12b2lkIFBlcmZv
cm1hbmNlOjp3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgc2l6ZSkK
K3ZvaWQgUGVyZm9ybWFuY2U6OnNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBz
aXplKQogewogICAgIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplID0gc2l6ZTsKICAgICBpZiAo
aXNSZXNvdXJjZVRpbWluZ0J1ZmZlckZ1bGwoKSkKLSAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVu
dDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS53ZWJraXRyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGxFdmVu
dCwgZmFsc2UsIGZhbHNlKSk7CisgICAgICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShl
dmVudE5hbWVzKCkucmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsRXZlbnQsIGZhbHNlLCBmYWxzZSkp
OwogfQogCiB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhjb25zdCBTdHJpbmcm
IGluaXRpYXRvck5hbWUsIERvY3VtZW50KiBpbml0aWF0b3JEb2N1bWVudCwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgZG91
YmxlIGluaXRpYXRpb25UaW1lLCBkb3VibGUgZmluaXNoVGltZSkKQEAgLTE4Nyw3ICsxNzIsNyBA
QCB2b2lkIFBlcmZvcm1hbmNlOjphZGRSZXNvdXJjZVRpbWluZyhjb25zdCBTdHJpbmcmIGluaXRp
YXRvck5hbWUsIERvY3VtZW50KiBpbml0aQogICAgIG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIuYXBw
ZW5kKGVudHJ5KTsKIAogICAgIGlmIChpc1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpKQotICAg
ICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLndlYmtpdHJlc291
cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsKKyAgICAgICAgZGlzcGF0
Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1
bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKIGJvb2wgUGVyZm9ybWFuY2U6OmlzUmVzb3Vy
Y2VUaW1pbmdCdWZmZXJGdWxsKCkKQEAgLTE5NSw4ICsxODAsNiBAQCBib29sIFBlcmZvcm1hbmNl
Ojppc1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpCiAgICAgcmV0dXJuIG1fcmVzb3VyY2VUaW1p
bmdCdWZmZXIuc2l6ZSgpID49IG1fcmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplOwogfQogCi0jZW5k
aWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQogI2lmIEVOQUJMRShVU0VSX1RJTUlORykK
IHZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdE1hcmsoY29uc3QgU3RyaW5nJiBtYXJrTmFtZSwgRXhj
ZXB0aW9uQ29kZSYgZWMpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmgKaW5kZXggOTNmNDQw
NjQ0YmI3NjNmYTdkYzhkMTdlNDg2MmUzMjM1ZTljNzZmNy4uMTc2YzE1MGM0YThmNDg3M2Q4Yjc2
NjQ0OTMzMjc5YjM4ODVkNDE3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaApAQCAtNDAs
NyArNDAsNiBAQAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdhdGlvbi5oIgogI2luY2x1ZGUg
IlBlcmZvcm1hbmNlVGltaW5nLmgiCiAjaW5jbHVkZSAiU2NyaXB0V3JhcHBhYmxlLmgiCi0jaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KQEAg
LTY0LDE4ICs2MywxNCBAQCBwdWJsaWM6CiAgICAgUGVyZm9ybWFuY2VUaW1pbmcqIHRpbWluZygp
IGNvbnN0OwogICAgIGRvdWJsZSBub3coKSBjb25zdDsKIAotI2lmIEVOQUJMRShQRVJGT1JNQU5D
RV9USU1FTElORSkKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiB3ZWJraXRH
ZXRFbnRyaWVzKCkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4g
d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7Ci0gICAgUGFz
c1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gd2Via2l0R2V0RW50cmllc0J5TmFtZShjb25z
dCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKLSNlbmRpZgorICAgIFJl
ZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllcygpIGNvbnN0OworICAgIFJlZlB0
cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZ2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVu
dHJ5VHlwZSk7CisgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzQnlO
YW1lKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwogCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVzb3VyY2VUaW1p
bmdzKCk7Ci0gICAgdm9pZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWdu
ZWQgaW50KTsKKyAgICB2b2lkIGNsZWFyUmVzb3VyY2VUaW1pbmdzKCk7CisgICAgdm9pZCBzZXRS
ZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQpOwogCiAgICAgdm9pZCBhZGRSZXNvdXJj
ZVRpbWluZyhjb25zdCBTdHJpbmcmIGluaXRpYXRvck5hbWUsIERvY3VtZW50KiwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGRvdWJsZSBpbml0aWF0aW9u
VGltZSwgZG91YmxlIGZpbmlzaFRpbWUpOwotI2VuZGlmCiAKICAgICB1c2luZyBSZWZDb3VudGVk
PFBlcmZvcm1hbmNlPjo6cmVmOwogICAgIHVzaW5nIFJlZkNvdW50ZWQ8UGVyZm9ybWFuY2U+Ojpk
ZXJlZjsKQEAgLTk3LDExICs5Miw5IEBAIHByaXZhdGU6CiAKICAgICBtdXRhYmxlIFJlZlB0cjxQ
ZXJmb3JtYW5jZU5hdmlnYXRpb24+IG1fbmF2aWdhdGlvbjsKICAgICBtdXRhYmxlIFJlZlB0cjxQ
ZXJmb3JtYW5jZVRpbWluZz4gbV90aW1pbmc7Ci0gICAgCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJ
TUlORykKKwogICAgIFZlY3RvcjxSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeT4+IG1fcmVzb3VyY2VU
aW1pbmdCdWZmZXI7CiAgICAgdW5zaWduZWQgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7Ci0j
ZW5kaWYKIAogICAgIGRvdWJsZSBtX3JlZmVyZW5jZVRpbWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZS5pZGwKaW5kZXggOWIwYThiNzcwMDBjMjhlNDA1Mjk4MjJlY2UzNTI2OTBhZWNkZTZm
Ni4uOTQ4OTY5MGIzNTYxNTJmNmVkMDdhZjQ3Mzg1M2Y2MzIzMmY0NWJlNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZS5pZGwKQEAgLTM2LDE4ICszNiwxNSBAQAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBQZXJmb3JtYW5jZU5hdmlnYXRpb24gbmF2aWdhdGlvbjsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgUGVyZm9ybWFuY2VUaW1pbmcgdGltaW5nOwogCi0jaWYgZGVmaW5lZChFTkFCTEVf
UEVSRk9STUFOQ0VfVElNRUxJTkUpICYmIEVOQUJMRV9QRVJGT1JNQU5DRV9USU1FTElORQotICAg
IFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXMoKTsKLSAgICBQZXJmb3JtYW5j
ZUVudHJ5TGlzdCB3ZWJraXRHZXRFbnRyaWVzQnlUeXBlKERPTVN0cmluZyBlbnRyeVR5cGUpOwot
ICAgIFBlcmZvcm1hbmNlRW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeU5hbWUoRE9NU3RyaW5n
IG5hbWUsIG9wdGlvbmFsIERPTVN0cmluZyBlbnRyeVR5cGUpOwotI2VuZGlmCisgICAgW0VuYWJs
ZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIFBlcmZvcm1hbmNlRW50cnlMaXN0IGdldEVudHJp
ZXMoKTsKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VF
bnRyeUxpc3QgZ2V0RW50cmllc0J5VHlwZShET01TdHJpbmcgZW50cnlUeXBlKTsKKyAgICBbRW5h
YmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50
cmllc0J5TmFtZShET01TdHJpbmcgbmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSk7
CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9SRVNPVVJDRV9USU1JTkcpICYmIEVOQUJMRV9SRVNPVVJD
RV9USU1JTkcKLSAgICB2b2lkIHdlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzKCk7Ci0gICAgdm9p
ZCB3ZWJraXRTZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUodW5zaWduZWQgbG9uZyBtYXhTaXpl
KTsKIAotICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb253ZWJraXRyZXNvdXJjZXRpbWluZ2J1
ZmZlcmZ1bGw7Ci0jZW5kaWYKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10g
dm9pZCBjbGVhclJlc291cmNlVGltaW5ncygpOworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291
cmNlVGltaW5nXSB2b2lkIHNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBsb25n
IG1heFNpemUpOworCisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmddIGF0dHJp
YnV0ZSBFdmVudEhhbmRsZXIgb25yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGw7CiAKICAgICAvLyBT
ZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMi9DUi11c2VyLXRpbWluZy0yMDEyMDcyNi8KICNp
ZiBkZWZpbmVkKEVOQUJMRV9VU0VSX1RJTUlORykgJiYgRU5BQkxFX1VTRVJfVElNSU5HCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcAppbmRleCAzMmRiN2NmZTU2MzVjZGYz
MmMzMDVlYzRlYWMwOTUwMWU1ZjgzZWU1Li4zNzRlMTQyOTMxODNmOTczZmFhNzg0MTgxZGZkNTll
MjMwOTViNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50
cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAKQEAg
LTMxLDcgKzMxLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5j
ZUVudHJ5LmgiCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKQEAgLTY5LDQgKzY5LDQgQEAgZG91YmxlIFBlcmZvcm1hbmNlRW50cnk6OmR1cmF0aW9uKCkg
Y29uc3QKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9U
SU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUo
V0VCX1RJTUlORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmgKaW5kZXggMDEx
MWIxZGUzOWZkZGU3M2RjZDNiOThmZDczMTFlNGYxNGQxZDM5Ni4uMTJiYTBjMWIyZDFmMTA4NTMx
N2RhY2NmMDQ5MTM2ODJmOWQwNzliZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Q
ZXJmb3JtYW5jZUVudHJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5LmgKQEAgLTMyLDcgKzMyLDcgQEAKICNpZm5kZWYgUGVyZm9ybWFuY2VFbnRyeV9oCiAjZGVm
aW5lIFBlcmZvcm1hbmNlRW50cnlfaAogCi0jaWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJM
RShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1
ZGUgIlBlcmZvcm1hbmNlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KQEAgLTcyLDUg
KzcyLDUgQEAgcHJpdmF0ZToKIAogfQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAm
JiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1J
TkcpCiAjZW5kaWYgLy8gIWRlZmluZWQoUGVyZm9ybWFuY2VFbnRyeV9oKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKaW5kZXggOWJjYWY0YzM0MDE4OTg1NWEyYjY0ZDZm
MDViMjk4Y2NjMWY3MjNlNi4uZjM3ZTJhM2NiYTQzMjQxM2EwYWY3YmJjNDZhOGQ1ZjE0NGJmYWYy
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCkBAIC0zMSw3ICsz
MSw3IEBACiAvLyBTZWU6IGh0dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9yYXctZmlsZS90
aXAvc3BlY3MvUGVyZm9ybWFuY2VUaW1lbGluZS9PdmVydmlldy5odG1sCiBbCiAgICAgQ29uZGl0
aW9uYWw9V0VCX1RJTUlORywKLSAgICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwK
KyAgICBFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nLAogICAgIEN1c3RvbVRvSlNPYmpl
Y3QsCiBdIGludGVyZmFjZSBQZXJmb3JtYW5jZUVudHJ5IHsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIG5hbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnlMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eUxpc3QuY3BwCmluZGV4IGQ5ZmEwNTU3N2RkNTc5ZTljYTgyNzRkZDc4YjRhY2UzNGJjNzkyOGIu
LmMwMzU5MjhiMzFjNmRlOWQ2MWQ4NjMxMTYzMWQzMzU2ZmMzYjgyNjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCIKIAot
I2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisj
aWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAK
QEAgLTc1LDQgKzc1LDQgQEAgdm9pZCBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6c29ydCgpCiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKSAmJiBF
TkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmgKaW5kZXggOTdhMjEy
ZGQ2ZmQwNTQ0NzY2ZWQ3NTYzYzE3NTZiOTEzNmQ3ZmVkNi4uZDYwMDcxN2YzMjM1OTk3YzU5NjY5
NzlkNjIxNWNhNjE2NDRkYjMwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJm
b3JtYW5jZUVudHJ5TGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VF
bnRyeUxpc3QuaApAQCAtMzIsNyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZUVudHJ5TGlz
dF9oCiAjZGVmaW5lIFBlcmZvcm1hbmNlRW50cnlMaXN0X2gKIAotI2lmIEVOQUJMRShXRUJfVElN
SU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0VfVElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1J
TkcpCiAKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+CkBAIC02NCw1ICs2NCw1IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAotI2VuZGlmIC8vICFFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQorI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vIFBlcmZv
cm1hbmNlRW50cnlMaXN0X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VFbnRyeUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
TGlzdC5pZGwKaW5kZXggN2UyNWE4NWNlNmM4OTM4NGVmZTU1MmY4Mzc2OTI1OTM1ODAyODhmOS4u
MTgwNjZjYzM3ZTU3M2YyMGUxYTkwNWMzODhiMDIxODE4ZWI3OTM2YiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKQEAgLTMyLDEwICszMiw5IEBACiBb
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9V0VCX1RJTUlORywKLSAg
ICBDb25kaXRpb25hbD1QRVJGT1JNQU5DRV9USU1FTElORSwKKyAgICBFbmFibGVkQXRSdW50aW1l
PVJlc291cmNlVGltaW5nLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVy
ZmFjZSBQZXJmb3JtYW5jZUVudHJ5TGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgbGVuZ3RoOwogICAgIGdldHRlciBQZXJmb3JtYW5jZUVudHJ5IGl0ZW0odW5zaWdu
ZWQgbG9uZyBpbmRleCk7CiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmNwcAppbmRleCAzMWI4OTcxMzdmNTExZTQ1Zjc3NTdlOTU2YzI2
ZjM3NTg3YWI2YTYwLi40YjBlMDdmOGQxN2I0ODAwMTdlZGI4Y2Y2NWVjYWJjOTMzZmVjOWUyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5j
cHAKQEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmgiCiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQor
I2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRl
ICJEb2N1bWVudExvYWRUaW1pbmcuaCIKQEAgLTE5OSw1ICsxOTksNCBAQCBkb3VibGUgUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZzo6cmVzb3VyY2VUaW1lVG9Eb2N1bWVudE1pbGxpc2Vjb25kcyhp
bnQgZGVsdGFNaQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoUkVTT1VSQ0VfVElNSU5HKQorI2VuZGlmIC8vIEVOQUJMRShXRUJfVElNSU5HKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAppbmRleCAzYzM1
ZDFhZmM5ZDA0ZjdjN2YxYWRjZmQxNDViMzNlYWUzYTZmYzUzLi44MjQ4NWIyZjcyZjZiNTBmYWEz
N2FkN2NmNWQyYTRlODAwMWFjZThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaApAQCAtMzIsNyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nX2gKICNkZWZpbmUgUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZ19o
CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQog
CiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VFbnRyeS5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZFRp
bWluZy5oIgpAQCAtODUsMTEgKzg1LDkgQEAgcHJpdmF0ZToKIAogfQogCi0KIFNQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZykKICAg
ICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6UGVyZm9ybWFuY2VFbnRyeSYgZW50
cnkpIHsgcmV0dXJuIGVudHJ5LmlzUmVzb3VyY2UoKTsgfQogU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19FTkQoKQogCi0jZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLQorI2VuZGlmIC8v
IEVOQUJMRShXRUJfVElNSU5HKQogI2VuZGlmIC8vICFkZWZpbmVkKFBlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmdfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuaWRsCmluZGV4IDNmMDExYjIzYjA1N2ExYWUwZTYzNGVmMTk0M2IxMDFmY2U2ODY2
ZDMuLjI1YTkyOGIwOWYyZmE2MGNjYjM3YTUzNGM2NzJmMmZkZmVmZjI4NjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbApAQCAtMzAs
NyArMzAsOCBAQAogCiAvLyBTZWU6IGh0dHBzOi8vZHZjcy53My5vcmcvaGcvd2VicGVyZi9yYXct
ZmlsZS90aXAvc3BlY3MvUmVzb3VyY2VUaW1pbmcvT3ZlcnZpZXcuaHRtbAogWwotICAgIENvbmRp
dGlvbmFsPVJFU09VUkNFX1RJTUlORywKKyAgICBDb25kaXRpb25hbD1XRUJfVElNSU5HLAorICAg
IEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNl
UmVzb3VyY2VUaW1pbmcgOiBQZXJmb3JtYW5jZUVudHJ5IHsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIGluaXRpYXRvclR5cGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAppbmRleCA2ZTBkNjU1MGNhMTNlOTUwMzM3NmQ1YjQ3MmVlMzcwZWNiY2RhOTMzLi5mM2Ni
ZWRlYzNhYWQwZDg3YzhjYjc4Mzg3MTA0ZDYwZTBkZjdkN2UwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwCkBAIC0zMzEzLDQgKzMzMTMsOSBAQCB2b2lkIEludGVybmFsczo6c2V0
Q1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCBlbmFibGUpCiB9CiAjZW5kaWYKIAordm9pZCBJbnRl
cm5hbHM6OnNldFJlc291cmNlVGltaW5nU3VwcG9ydChib29sIGVuYWJsZSkKK3sKKyAgICBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFJlc291cmNlVGltaW5nRW5h
YmxlZChlbmFibGUpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCAz
MjY3M2NlNWYyMTllMWZmYTE4YWZhYzczNTZjMTk1OWZlZTY1ZGMxLi4zOTA2N2VmMjQ1NjUxNzg3
NmI3YTBlOGQ3MzE5Yzk2MzA3OGI1MDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgK
QEAgLTQ3Myw2ICs0NzMsNyBAQCBwdWJsaWM6CiAgICAgCiAgICAgdm9pZCBzZXRWaWV3cG9ydEZv
cmNlQWx3YXlzVXNlclNjYWxhYmxlKGJvb2wpOwogICAgIHZvaWQgc2V0TGlua1ByZWxvYWRTdXBw
b3J0KGJvb2wpOworICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2wpOwogCiAj
aWYgRU5BQkxFKENTU19HUklEX0xBWU9VVCkKICAgICB2b2lkIHNldENTU0dyaWRMYXlvdXRFbmFi
bGVkKGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGQ4M2NiNGQz
NWU0OWQ4MThjNGI2Njk0MWJjZTFkMGZkMTI1MjNhOTYuLjFjYTBmZTZmOWQxNjI2NDk5YTg2NDdi
MTBhOTJjM2ExODQ4YThmNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAg
LTQ1Myw0ICs0NTMsNSBAQCBlbnVtIEludGVybmFsc0F1dG9GaWxsQnV0dG9uVHlwZSB7CiAgICAg
dm9pZCBzZXRDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sZWFuIGVuYWJsZSk7CiAjZW5kaWYKIAor
ICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2xlYW4gc2NhbGFibGUpOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZSBiL1NvdXJjZS9j
bWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQppbmRleCA5MzA0YjVhZWQyODI2YTkxNjExNGRlZmRj
OWJmNTlmYjBkNTZiNzAwLi43NjhlM2U1OWQ3ZTE5YWFhYTA0ZjAyMjE3ODM1Y2U5Njk2N2MwOTJl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKKysrIGIvU291
cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCkBAIC0xNTgsNyArMTU4LDYgQEAgbWFjcm8o
V0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfTk9U
SUZJQ0FUSU9OUyAiVG9nZ2xlIERlc2t0b3AgTm90aWZpY2F0aW9ucyBTdXBwb3J0IiBQUklWQVRF
IE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfT1JJRU5UQVRJT05fRVZFTlRT
ICJUb2dnbGUgT3JpZW50YXRpb24gRXZlbnRzIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdF
QktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QREZLSVRfUExVR0lOICJUb2dnbGUgUERGS2l0IHBs
dWdpbiBzdXBwb3J0IiBQUklWQVRFIE9GRikKLSAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFC
TEVfUEVSRk9STUFOQ0VfVElNRUxJTkUgIlRvZ2dsZSBQZXJmb3JtYW5jZSBUaW1lbGluZSBzdXBw
b3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfUE9JTlRF
Ul9MT0NLICJUb2dnbGUgcG9pbnRlciBsb2NrIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdF
QktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTICJUb2dnbGUgUHJveGlt
aXR5IEV2ZW50cyBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUICJUb2dnbGUgcHVibGljIHN1ZmZpeCBsaXN0IHN1
cHBvcnQiIFBSSVZBVEUgT0ZGKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDEyM2E3ZDI4NTQwYjc4MWM3YWY2NzNiOTAwNTJm
MDIwMTM0ZjI4NGYuLmQxMjMzYmYzMTEyN2Y0MGNmZTA5OGU2MjdiYmNkMTdkMWNiNWM5YzIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53
cz4KKworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBBZGRlZCB0
ZXN0cyB0aGF0IG1ha2Ugc3VyZSBSZXNvdXJjZVRpbWluZyBBUElzIGFyZSBleHBvc2VkIGFuZCB0
aGF0IHJlc291cmNlcworICAgICAgICBzaG93IHVwIGFzIGVudHJpZXMgaW4gdGhlIHBlcmZvcm1h
bmNlIHRpbWVsaW5lLgorCisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0
aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNv
dXJjZS10aW1pbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vV2luZG93L3dpbmRv
dy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWw6IFJlbW92ZWQgIi8vOyIuCisgICAgICAgICog
aHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmll
cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcGVyZm9ybWFuY2Uv
cGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbDogQWRkZWQuCisKIDIwMTYt
MDQtMzAgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JF
U1NJT04gKHIxOTk2NDApOiBwb3NpdGlvbjphYnNvbHV0ZSBnZW5lcmF0ZWQgY29udGVudCBpbmhl
cml0cyB0ZXh0LWRlY29yYXRpb24gZnJvbSBpdHMgZWxlbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291
cmNlLXRpbWluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2lu
ZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jZmI5MTU0ZTliM2I0NDI3MTgyZjc2YzRmYmVlMjdlNTgzMjZlMjNiCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0
aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0
NiBAQAorVGhpcyB0ZXN0IGR1bXBzIGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSByZWFj
aGFibGUgZnJvbSB0aGUgd2luZG93LnBlcmZvcm1hbmNlIG9iamVjdCwgYWxvbmcgd2l0aCB0aGVp
ciB0eXBlcy4KKword2luZG93LnBlcmZvcm1hbmNlIFtvYmplY3QgUGVyZm9ybWFuY2VdCit3aW5k
b3cucGVyZm9ybWFuY2UuYWRkRXZlbnRMaXN0ZW5lciBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9y
bWFuY2UuY2xlYXJSZXNvdXJjZVRpbWluZ3MgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNl
LmRpc3BhdGNoRXZlbnQgW2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXMg
W2Z1bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUgW2Z1bmN0aW9u
XQord2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUgW2Z1bmN0aW9uXQord2luZG93
LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gW29iamVjdCBQZXJmb3JtYW5jZU5hdmlnYXRpb25dCit3
aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX0JBQ0tfRk9SV0FSRCBbbnVtYmVyXQor
d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9OQVZJR0FURSBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9SRUxPQUQgW251bWJlcl0KK3dpbmRvdy5w
ZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfUkVTRVJWRUQgW251bWJlcl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS5uYXZpZ2F0aW9uLnJlZGlyZWN0Q291bnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5uYXZpZ2F0aW9uLnR5cGUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS5ub3cgW2Z1
bmN0aW9uXQord2luZG93LnBlcmZvcm1hbmNlLm9ucmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsIFtu
dWxsXQord2luZG93LnBlcmZvcm1hbmNlLnJlbW92ZUV2ZW50TGlzdGVuZXIgW2Z1bmN0aW9uXQor
d2luZG93LnBlcmZvcm1hbmNlLnNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSBbZnVuY3Rpb25d
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nIFtvYmplY3QgUGVyZm9ybWFuY2VUaW1pbmddCit3
aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmNvbm5lY3RFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJm
b3JtYW5jZS50aW1pbmcuY29ubmVjdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uu
dGltaW5nLmRvbUNvbXBsZXRlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRv
bUNvbnRlbnRMb2FkZWRFdmVudEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWlu
Zy5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZy5kb21JbnRlcmFjdGl2ZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWlu
Zy5kb21Mb2FkaW5nIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbWFpbkxv
b2t1cEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5kb21haW5Mb29rdXBT
dGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5mZXRjaFN0YXJ0IFtudW1i
ZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmxvYWRFdmVudEVuZCBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLnRpbWluZy5sb2FkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93LnBl
cmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS50aW1pbmcucmVkaXJlY3RFbmQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1p
bmcucmVkaXJlY3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXF1
ZXN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVzcG9uc2VFbmQg
W251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcucmVzcG9uc2VTdGFydCBbbnVtYmVy
XQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5zZWN1cmVDb25uZWN0aW9uU3RhcnQgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcudW5sb2FkRXZlbnRFbmQgW251bWJlcl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS50aW1pbmcudW5sb2FkRXZlbnRTdGFydCBbbnVtYmVyXQord2luZG93
LnBlcmZvcm1hbmNlLnRpbWluZyBbcHJpbnRlZCBhYm92ZSBhcyB3aW5kb3cucGVyZm9ybWFuY2Uu
dGltaW5nXQord2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24gW3ByaW50ZWQgYWJvdmUgYXMg
d2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb25dCit3aW5kb3cucGVyZm9ybWFuY2UgW3N0cmlu
Z10KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9w
ZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWlu
Zy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ1ZTgyYzZhNGIyYmJlOGM1YTdjODlkNWFhM2Q0ZTA0MTI3ODEy
NjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwKQEAgLTAsMCArMSwx
MDQgQEAKKzxwPlRoaXMgdGVzdCBkdW1wcyBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUg
cmVhY2hhYmxlIGZyb20gdGhlIHdpbmRvdy5wZXJmb3JtYW5jZSBvYmplY3QsIGFsb25nIHdpdGgg
dGhlaXIgdHlwZXMuPC9wPgorPGhyPgorPHByZSBpZD0icHJlIj48L3ByZT4KKworPHNjcmlwdD4K
K2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKwor
aWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3Vw
cG9ydCh0cnVlKTsKKyAgICAKK3ZhciBsb2dCdWZmZXIgPSBbXTsKK2Z1bmN0aW9uIGxvZyhzKQor
eworICAgIGxvZ0J1ZmZlci5wdXNoKHMpOworfQorCit2YXIgcHJlID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3ByZScpOworZnVuY3Rpb24gZmx1c2hMb2coKQoreworICAgIHZhciBsb2dNZXNz
YWdlID0gbG9nQnVmZmVyLmpvaW4oIiIpOworICAgIHByZS5hcHBlbmRDaGlsZChkb2N1bWVudC5j
cmVhdGVUZXh0Tm9kZShsb2dNZXNzYWdlKSk7Cit9CisKK2Z1bmN0aW9uIHRyeUV2YWwoc3RyaW5n
KQoreworICAgIHRyeSB7CisgICAgICAgIHJldHVybiBldmFsKHN0cmluZyk7CisgICAgfSBjYXRj
aCAoZSkgeworICAgICAgICByZXR1cm4gbmV3IFN0cmluZygiQ2F1Z2h0IGV4Y2VwdGlvbjogIiAr
IGUpOworICAgIH0KK30KKworZnVuY3Rpb24gdHlwZU9mTnVsbEF3YXJlKHZhbHVlKQoreworICAg
IGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIgJiYgdmFsdWUgPT0gbnVsbCkKKyAgICAgICAg
cmV0dXJuICJudWxsIjsKKyAgICByZXR1cm4gdHlwZW9mIHZhbHVlOworfQorCitmdW5jdGlvbiB0
eXBlU3RyaW5nTnVsbEF3YXJlKHZhbHVlKQoreworICAgIHZhciB2YWx1ZVR5cGUgPSB0eXBlT2ZO
dWxsQXdhcmUodmFsdWUpOworICAgIHJldHVybiB2YWx1ZVR5cGUgPT0gIm9iamVjdCIKKyAgICAg
ICAgPyBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpCisgICAgICAgIDogIlsi
ICsgdmFsdWVUeXBlICsgIl0iOworfQorCitmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1ZU5hbWUpCit7
CisgICAgdmFyIHZhbHVlID0gdHJ5RXZhbCh2YWx1ZU5hbWUpOworICAgIHZhciB2YWx1ZVR5cGUg
PSB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpOworCisgICAgLy8gRG9uJ3QgdGFpbnQgdGhlIHRlc3Qg
d2l0aCBvdXIgb3duIHZhcmlhYmxlcworICAgIGlmICh2YWx1ZSA9PSBsb2dCdWZmZXIgfHwgdmFs
dWUgPT0gcHJlKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBEb24ndCB0YWludCB0aGUgdGVz
dCB3aXRoIG91ciBvd24gcHJvcGVydGllcworICAgIGlmICgvX192aXNpdGVkQnlMb2dWYWx1ZV9f
Ly50ZXN0KHZhbHVlTmFtZSkgfHwgL19fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fLy50ZXN0
KHZhbHVlTmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdvcmsgYXJvdW5kIEZpcmVm
b3ggaW5maW5pdGUgcmVjdXJzaW9uCisgICAgaWYgKC9cLlswLTldLy50ZXN0KHZhbHVlTmFtZSkp
CisgICAgICAgIHJldHVybjsKKworICAgIC8vIEF2b2lkIGluZmluaXRlIHJlY3Vyc2lvbgorICAg
IGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNpdGVkQnlMb2dWYWx1ZV9f
KSB7CisgICAgICAgIGxvZyh2YWx1ZU5hbWUgKyAiIFtwcmludGVkIGFib3ZlIGFzICIgKyB2YWx1
ZS5fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXyArICJdXG4iKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIGxvZyh2YWx1ZU5hbWUgKyAiICIgKyB0eXBlU3RyaW5nTnVsbEF3YXJl
KHZhbHVlKSArICJcbiIpOworCisgICAgaWYgKHZhbHVlVHlwZSA9PSAib2JqZWN0IikgeworICAg
ICAgICB2YWx1ZS5fX3Zpc2l0ZWRCeUxvZ1ZhbHVlX18gPSB0cnVlOworICAgICAgICB2YWx1ZS5f
X25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXyA9IHZhbHVlTmFtZTsKKyAgICAgICAgbG9nUHJv
cGVydGllcyh2YWx1ZSwgdmFsdWVOYW1lKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIGxvZ1Byb3Bl
cnRpZXMob2JqZWN0LCBvYmplY3ROYW1lKQoreworICAgIHZhciBhcnJheSA9IG5ldyBBcnJheTsK
KyAgICBmb3IgKHZhciBwcm9wZXJ0eSBpbiBvYmplY3QpIHsKKyAgICAgICAgYXJyYXkucHVzaChw
cm9wZXJ0eSk7CisgICAgfQorICAgIGFycmF5LnNvcnQoKTsKKyAgICBmb3IgKHZhciBpID0gMDsg
aSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7CisgICAgICAgIHZhciBwcm9wZXJ0eSA9IGFycmF5W2ld
OworICAgICAgICBsb2dWYWx1ZShvYmplY3ROYW1lICsgIi4iICsgcHJvcGVydHkpOworICAgIH0K
K30KKworbG9nVmFsdWUoJ3dpbmRvdy5wZXJmb3JtYW5jZScpOword2luZG93LnBlcmZvcm1hbmNl
LnRpbWluZyA9ICd0aW1pbmcgaXMgbm90IHJlcGxhY2VhYmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nJyk7Cit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiA9ICdu
YXZpZ2F0aW9uIGlzIG5vdCByZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1h
bmNlLm5hdmlnYXRpb24nKTsKK3dpbmRvdy5wZXJmb3JtYW5jZSA9ICdwZXJmb3JtYW5jZSBpcyBy
ZXBsYWNlYWJsZSc7Citsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlJyk7CitmbHVzaExvZygp
OworaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5n
U3VwcG9ydChmYWxzZSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWwKaW5k
ZXggMGE4ZjgxZWYxMjU4ODgyNWQ1ZDE2ZDVhOWQyZGRiZTc2Yjg2OTMwZC4uMWIxMmUxN2NhZjA4
MTY4ZmMzYjlmOGNkYmNkYmUxY2MxZDdmMGMzNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0
bWwKQEAgLTMwLDcgKzMwLDcgQEAgZnVuY3Rpb24gdHJ5RXZhbChzdHJpbmcpCiAKIGZ1bmN0aW9u
IHR5cGVPZk51bGxBd2FyZSh2YWx1ZSkKIHsKLSAgICBpZiAodHlwZW9mIHZhbHVlID09ICJvYmpl
Y3QiICYmIHZhbHVlID09IG51bGwpIC8vOworICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVj
dCIgJiYgdmFsdWUgPT0gbnVsbCkKICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICByZXR1cm4g
dHlwZW9mIHZhbHVlOwogfQpAQCAtNjEsNyArNjEsNyBAQCBmdW5jdGlvbiBsb2dWYWx1ZSh2YWx1
ZU5hbWUpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIEF2b2lkIGluZmluaXRlIHJlY3Vyc2lv
bgotICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192aXNpdGVkQnlMb2dW
YWx1ZV9fKSB7IC8vOworICAgIGlmICh2YWx1ZVR5cGUgPT0gIm9iamVjdCIgJiYgdmFsdWUuX192
aXNpdGVkQnlMb2dWYWx1ZV9fKSB7CiAgICAgICAgIGxvZyh2YWx1ZU5hbWUgKyAiIFtwcmludGVk
IGFib3ZlIGFzICIgKyB2YWx1ZS5fX25hbWVXaGVuVmlzaXRlZEJ5TG9nVmFsdWVfXyArICJdXG4i
KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5j
ZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmRjYmM1
MDRmOTU5MjdlZDFkZTk2ODNlZjE4NzU5ODQxYTQ5MWE5ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGlt
aW5nLWVudHJpZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUEFTUyBmb3VuZEltZyBp
cyB0cnVlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVyZm9ybWFuY2Uv
cGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMuaHRtbCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvcGVyZm9ybWFuY2UvcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWVudHJpZXMu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi41Y2I4NTliNGM3NGI5OWM2MGFmNTY3YzViOWJhOTRlMWY2NmIyMTRl
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9w
ZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sCkBAIC0wLDAgKzEsMjggQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cuaW50ZXJu
YWxzKQorICAgICAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KHRydWUpOwor
ICAgIHZhciB1cmwgPSAiLi4vLi4vcmVzb3VyY2VzL3NxdWFyZTEwMC5wbmc/IjsKKyAgICB1cmwg
Kz0gTWF0aC5yYW5kb20oKTsKKyAgICBkb2N1bWVudC53cml0ZSgiPGltZyBzcmM9JyIgKyB1cmwg
KyAiJz4iKTsKKworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgICAgdmFyIGZvdW5kSW1nID0gZmFsc2U7
CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICAg
ICAgdmFyIHJlc291cmNlcyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ3Jlc291cmNl
Jyk7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVzb3VyY2VzLmxlbmd0aDsgKytpKSB7
CisgICAgICAgICAgICBpZiAocmVzb3VyY2VzW2ldLm5hbWUuaW5kZXhPZigic3F1YXJlMTAwIikg
IT0gLTEpIHsKKyAgICAgICAgICAgICAgICBmb3VuZEltZyA9IHRydWU7CisgICAgICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAgICAgIH07CisgICAgICAgIHNob3VsZEJlVHJ1
ZSgiZm91bmRJbWciKTsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAg
ICB3aW5kb3cuaW50ZXJuYWxzLnNldFJlc291cmNlVGltaW5nU3VwcG9ydChmYWxzZSk7CisgICAg
fSk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBi
L0NoYW5nZUxvZwppbmRleCA0Mzk4YmU2N2Q5MTY2ZDNkMWZiMmQ3ZDIxMmYzNDNmZjVmMzU2ZThh
Li5lZjMyMGQyNTk2MzU3ZWNiNjQ5MzExNWIyMDIwNTM3NWI3OGY4MjA5IDEwMDY0NAotLS0gYS9D
aGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTYtMDUtMDEgIFlv
YXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgTW92ZSBSZXNvdXJjZVRpbWluZyBi
ZWhpbmQgYSBydW50aW1lIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1NzEzMworCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5z
ZW4uCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2U6IFJlbW92
ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKwogMjAxNi0wNC0yOSAgQ29t
bWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdl
ZCwgcm9sbGluZyBvdXQgcjIwMDIzMi4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277852</attachid>
            <date>2016-05-01 03:08:59 -0700</date>
            <delta_ts>2016-05-02 01:21:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157133-20160501120932.patch</filename>
            <type>text/plain</type>
            <size>55655</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwMzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
OWU1YTZhODUyYzVlMmFiODZlNGY2ZDMwNmY1MTQ0NzFkOTUzMzVhLi42YWEwY2UwNDY2ZTQzNGMx
NzkwMTI4MGFhNjY1Njc4NTAwNGZiNzYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAg
ICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9u
SWRlbnRpZmllcnMuaDogQWRkZWQgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRyeUxp
c3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcgYXMgcHJvcGVydHkgbmFtZXMuCisKIDIw
MTYtMDQtMzAgIEtvbnN0YW50aW4gVG9rYXJldiAgPGFubnVsZW5AeWFuZGV4LnJ1PgogCiAgICAg
ICAgIEd1YXJkIE9iakMtc3BlY2lmaWMgY29kZSBpbiBIZWFwLmNwcCB3aXRoIFVTRShGT1VOREFU
SU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCmluZGV4IDFiNWQ1NjBjZWZiMjY5ZTdjNjM5MDA4NjNhYmNmYmFlOGIwNWVh
MzkuLjdmNWZhZTRkYjY5Y2JmM2E2NTU1ZmM3NDZiOTEyNDNhMTk0ODcxNDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSw1OCBAQAorMjAxNi0wNS0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4K
KworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJlaGluZCBhIHJ1bnRpbWUgZmxhZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBNb3ZlIHRoZSBS
ZXNvdXJjZVRpbWluZyBBUEkgZnJvbSBiZWluZyBiZWhpbmQgYSBidWlsZCB0aW1lIGZsYWcgdG8g
YmUgYmVoaW5kIGFuCisgICAgICAgIG9mZi1ieS1kZWZhdWx0IHJ1bnRpbWUgZmxhZywgdGhhdCBj
YW4gYmUgdHVybmVkIG9uIHVzaW5nIGludGVybmFscy4KKworICAgICAgICBUZXN0czogZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy5o
dG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJl
c291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwKKworICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1h
a2U6IEFkZGVkIGlkbCBmaWxlcyBmb3IgUGVyZm9ybWFuY2VFbnRyeSwgUGVyZm9ybWFuY2VFbnRy
eUxpc3QgYW5kIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuCisgICAgICAgICogV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGRlZCB0aGUgdmFyaW91cyBQZXJmb3JtYW5jZSog
ZmlsZXMgdG8gdGhlIHByb2plY3QuCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmNwcDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZs
YWcuCisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpSdW50aW1lRW5h
YmxlZEZlYXR1cmVzKToKKyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaDogQWRkZWQgUmVzb3VyY2VUaW1pbmcgYXMgYSBydW50aW1lIGZsYWcuCisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRSZXNvdXJjZVRpbWluZ0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6cmVzb3Vy
Y2VUaW1pbmdFbmFibGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50
cnlDdXN0b20uY3BwOiBSZW1vdmVkICNpZiBmb3IgUmVzb3VyY2VUaW1pbmcsIGFuZCByZXBsYWNl
ZCBQRVJGT1JNQU5DRV9USU1FTElORSBmb3IgV0VCX1RJTUlORy4KKyAgICAgICAgQWRkZWQgYnVp
bGQgZmxhZyBhcm91bmQgVXNlclRpbWluZyByZWxhdGVkIGggZmlsZXMuCisgICAgICAgIChXZWJD
b3JlOjp0b0pTKTogRGVsZXRlZC4KKyAgICAgICAgKiBkb20vRXZlbnROYW1lcy5oOiBSZW5hbWVk
IHdlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbCB0byByZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1
bGwuCisgICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6IFJlcGxh
Y2UgI2lmIGZvciBSZXNvdXJjZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QpOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHA6IFJlcGxhY2UgI2lmIGZvciBSZXNvdXJj
ZVRpbWluZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9h
ZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAgICogbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGlt
aW5nIHdpdGggcnVudGltZSBmbGFnLgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VM
b2FkZXI6OnJldmFsaWRhdGVSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNv
dXJjZUxvYWRlcjo6bG9hZFJlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291
cmNlTG9hZGVyOjpzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24pOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmxvYWREb25lKToKKyAgICAgICAg
KiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaDogUmVtb3ZlICNpZiBmb3IgUmVz
b3VyY2VUaW1pbmcuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5jcHA6IFJlbW92ZSAjaWYg
Zm9yIFJlc291cmNlVGltaW5nLgorICAgICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OlBlcmZv
cm1hbmNlKTogUmVtb3ZlZCAjaWYgZm9yIFJlc291cmNlVGltaW5nIHJlbGF0ZWQgaW5pdGlhbGl6
YXRpb24uCisgICAgICAgIChXZWJDb3JlOjpQZXJmb3JtYW5jZTo6d2Via2l0R2V0RW50cmllcyk6
IFJlbmFtZWQgdG8gZ2V0RW50cmllcy4KKyAgICAgICAgKFdlYkNvcmU6OlBlcmZvcm1hbmNlOjp3
ZWJraXRHZXRFbnRyaWVzQnlUeXBlKTogUmVuYW1lZCB0byBnZXRFbnRyaWVzQnlUeXBlLgorICAg
ICAgICAoV2ViQ29yZTo6UGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUpOiBSZW5h
bWVkIHRvIGdldEVudHJpZXNCeU5hbWUuCisgICAgICAgICogcGFnZS9QZXJmb3JtYW5jZS5oOiBS
ZW1vdmUgI2lmIGZvciBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNl
LmlkbDogUmVwbGFjZSAjaWYgZm9yIFJlc291cmNlVGltaW5nIHdpdGggcnVudGltZSBmbGFnLgor
ICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFO
Q0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnku
aDogUmVtb3ZlIHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnLgorICAgICAgICAq
IHBhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGw6IFJlcGxhY2UgdGhlIFBFUkZPUk1BTkNFX1RJTUVM
SU5FIGJ1aWxkIGZsYWcgd2l0aCBydW50aW1lIGZsYWcuCisgICAgICAgICogcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5TGlzdC5jcHA6IFJlbW92ZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQg
ZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0Lmg6IFJlbW92ZSB0aGUg
UEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1h
bmNlRW50cnlMaXN0LmlkbDogUmVwbGFjZSB0aGUgUEVSRk9STUFOQ0VfVElNRUxJTkUgYnVpbGQg
ZmxhZyB3aXRoIHJ1bnRpbWUgZmxhZy4KKyAgICAgICAgKiBwYWdlL1BlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuY3BwOiBSZW1vdmUgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAg
ICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOiBSZW1vdmUgdGhlIFJFU09V
UkNFX1RJTUlORyBidWlsZCBmbGFnLgorICAgICAgICAqIHBhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5pZGw6IFJlcGxhY2UgdGhlIFJFU09VUkNFX1RJTUlORyBidWlsZCBmbGFnIHdpdGgg
cnVudGltZSBmbGFnLgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDogQWRkIGEgbWV0
aG9kIHRoYXQgZW5hYmxlcyBSZXNvdXJjZVRpbWluZy4KKyAgICAgICAgKFdlYkNvcmU6OkludGVy
bmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5oOiBBZGQgYSBtZXRob2QgdGhhdCBlbmFibGVzIFJlc291cmNlVGltaW5nLgorICAgICAg
ICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDogQWRkIGEgbWV0aG9kIHRoYXQgZW5hYmxlcyBSZXNv
dXJjZVRpbWluZy4KKwogMjAxNi0wNC0zMCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5j
b20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjE5OTY0MCk6IHBvc2l0aW9uOmFic29sdXRlIGdl
bmVyYXRlZCBjb250ZW50IGluaGVyaXRzIHRleHQtZGVjb3JhdGlvbiBmcm9tIGl0cyBlbGVtZW50
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlm
aWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMu
aAppbmRleCA0Y2NmMDM1MTRlMmQwNWI2ZTE0MDhkZDU4OWZiYzVhYWQ4NjM5ZmQ5Li4yYjFlZDYw
YTIzNjc0ZWE3ZTg3MzNiOTA1MjIyYTIzNmI0Y2E0ZjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTcxLDYgKzcxLDkgQEAK
ICAgICBtYWNybyhOdW1iZXIpIFwKICAgICBtYWNybyhOdW1iZXJGb3JtYXQpIFwKICAgICBtYWNy
byhPYmplY3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZUVudHJ5KSBcCisgICAgbWFjcm8oUGVy
Zm9ybWFuY2VFbnRyeUxpc3QpIFwKKyAgICBtYWNybyhQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
KSBcCiAgICAgbWFjcm8oUHJvbWlzZSkgXAogICAgIG1hY3JvKFByb3h5KSBcCiAgICAgbWFjcm8o
UmFuZ2VFcnJvcikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNDIwYTc5MDQ3
YjY4NDEwOGY2MzE0ZDc5YTk1YTdjNDI4N2YxOTlmNS4uYzNhMTJlNGM2NDZhNjM5Njc0ZWI5NzY3
Y2IyNGUyY2YxYTA1Mjk0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC01MTgs
NyArNTE4LDEwIEBAIE5PTl9TVkdfQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvcGFn
ZS9Mb2NhdGlvbi5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9OYXZpZ2F0b3IuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2UuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5pZGwgXAorICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5TGlzdC5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZU5hdmlnYXRpb24u
aWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwg
XAogICAgICQoV2ViQ29yZSkvcGFnZS9QZXJmb3JtYW5jZVRpbWluZy5pZGwgXAogICAgICQoV2Vi
Q29yZSkvcGFnZS9TY3JlZW4uaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvV2ViS2l0UG9pbnQu
aWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCAxMzNkOGQxNWM1NDc3ZTcxOGUxMWMxNDZmMmM2OTI5MTQxNWYwNGJiLi4xOWNj
ZWYxMDIzMmZhOGZkZThlOWRjZWEyZjgxMWE1ZjU2MzJiZDVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTkxLDYgKzU5OTEs
MTQgQEAKIAkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFuaW1hdG9yLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQTNCRjY3RDEwRDk5
QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQUU5RjkwRjE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NT
QXNwZWN0UmF0aW9WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDQUU5RjkwRDE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1
ZS5jcHAgKi87IH07CiAJCUNBRTlGOTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRp
b1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
QUU5RjkwRTE0NjQ0MUYwMDBDMjQ1QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovOyB9Owor
CQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ0QTFDQ0NGMkRE
MDA1OTJBM0YgLyogUGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUxMUNDRjkz
ODkwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeS5jcHAgKi87IH07CisJCUNCMzhGRDUyMUNDRjkzOTQwMDU5MkEzRiAv
KiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50
cnkuaCAqLzsgfTsKKwkJQ0IzOEZENTMxQ0NGOTM5QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VF
bnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0IzOEZENEYxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3Bw
ICovOyB9OworCQlDQjM4RkQ1NDFDQ0Y5MzlFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5
TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Iz
OEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCAqLzsgfTsK
KwkJQ0IzOEZENTcxQ0QyMUUyQTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4RkQ1
NTFDRDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcCAqLzsgfTsK
KwkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjM4
RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNwcCAq
LzsgfTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5o
ICovOyB9OwogCQlDQjhDRjAxODFBOTM1OEQ0MDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQjhDRjAxNTFBOTM0
QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi87IH07CiAJCUNDQzJCNTE0MTVGNjEzMDYw
MDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDQ0My
QjUxNTE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDQ0MyQjUxMTE1RjYxMzA2MDA0OENE
RDYgLyogRGV2aWNlQ29udHJvbGxlci5jcHAgKi87IH07CkBAIC0xMzk1OCw2ICsxMzk2NiwxNCBA
QAogCQlDQTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0FFOUY5MEQxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJh
dGlvVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQXNw
ZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNBRTlGOTBF
MTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENEExQ0NDRjJERDAwNTkyQTNGIC8qIFBlcmZvcm1hbmNlRW50
cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFuY2VF
bnRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDREMUNDRjkzN0Uw
MDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IGZpbGVFbmNvZGlu
ZyA9IDQ7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDQjM4RkQ0RTFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VFbnRyeS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RjFDQ0Y5MzdFMDA1OTJBM0Yg
LyogSlNQZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0IzOEZENTAxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRy
eUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNl
RW50cnlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU1MUNEMjFE
NUIwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTgxQ0QyMzE0NTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlD
QjhDRjAxNTFBOTM0QjQzMDAwRDUxMEIgLyogTWljcm90YXNrcy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNaWNyb3Rhc2tzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNv
bnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNl
Q29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODA2NCw2ICsx
ODA4MCw3IEBACiAJCQkJOEE4NDREMDIxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmgg
Ki8sCiAJCQkJOEE4NDREMDMxMUQzQzE4RTAwMTQwNjVDIC8qIFBlcmZvcm1hbmNlLmlkbCAqLywK
IAkJCQk4NkJFMzNGQjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5oICovLAor
CQkJCUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywK
IAkJCQk4NkJFMzNGQzE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5pZGwgKi8s
CiAJCQkJODZCRTMzRkQxNTA1OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnlMaXN0LmNw
cCAqLywKIAkJCQk4NkJFMzNGRTE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeUxp
c3QuaCAqLywKQEAgLTIyMzE5LDYgKzIyMzM2LDcgQEAKIAkJCQk4M0YxMjA2QTFCOEMxMDM2MDBE
NzVGNjMgLyogSlNOb2RlRmlsdGVyQ3VzdG9tLmNwcCAqLywKIAkJCQk3QzkxQTM4RDFCNDk4QUJF
MDAzRjlFRkEgLyogSlNOb2RlT3JTdHJpbmcuY3BwICovLAogCQkJCTdDOTFBMzhFMUI0OThBQkUw
MDNGOUVGQSAvKiBKU05vZGVPclN0cmluZy5oICovLAorCQkJCUNCMzhGRDU1MUNEMjFENUIwMDU5
MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwICovLAogCQkJCTkzQjcwRDRGMDlF
QjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwICovLAogCQkJCTkz
QjcwRDUwMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCAqLywK
IAkJCQk0MTI5REY4MzFCQjVCN0Y3MDAzMjJBMTYgLyogSlNSZWFkYWJsZVN0cmVhbVByaXZhdGVD
b25zdHJ1Y3RvcnMuY3BwICovLApAQCAtMjI2NTUsOCArMjI2NzMsMTQgQEAKIAkJCQlBOUQyNDdG
NjBENzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlFNTFBODFERTE3Mjk4
RDc3MDBCRkNBNjEgLyogSlNQZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4
MTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLywKKwkJCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1
OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQlDQjM4RkQ0RTFDQ0Y5MzdF
MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5LmggKi8sCisJCQkJQ0IzOEZENEYxQ0NGOTM3
RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwICovLAorCQkJCUNCMzhGRDUw
MUNDRjkzN0UwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnlMaXN0LmggKi8sCiAJCQkJOEE5
QTU4NkUxMUU4NEMzNTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLywK
IAkJCQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24u
aCAqLywKKwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmggKi8sCiAJCQkJMEY0M0M4NUUxODlFMTVBNjAwMDE5QUUy
IC8qIEpTUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAogCQkJCThBOUE1ODc3MTFFODRDOTgwMDhB
Q0ZEMSAvKiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCiAJCQkJQkNFQzAxQzAwQzI3NERERDAw
OUY0RUM5IC8qIEpTU2NyZWVuLmNwcCAqLywKQEAgLTI1NTYyLDYgKzI1NTg2LDcgQEAKIAkJCQky
RDI5RUNDQTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggaW4g
SGVhZGVycyAqLywKIAkJCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogRGlzcGxheVJlZnJl
c2hNb25pdG9yTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDI5RUNDODE5MkVDQzgzMDA5ODRC
NzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
Q0IzOEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0Q1MjQ4MUIxOEUyMDBFRDAwMDhBMDdEIC8qIERpc3BsYXlTbGVlcERpc2Fi
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1RDhDNERDMDE0MjgyMjJDMDAyNkNFNzIgLyogRGlz
cGxheVNsZWVwRGlzYWJsZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwOTExMkIw
MjZGNzAwQzFBMzU5IC8qIERpc3RhbmNlLmggaW4gSGVhZGVycyAqLywKQEAgLTI3Njk4LDYgKzI3
NzIzLDcgQEAKIAkJCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVmlldy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkUyMDUwN0UxOEE0NThDMjAwODA2NDdFIC8qIFJlbmRlclZUVEN1
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg3MURGRTQwQTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRl
cldpZGdldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNGIC8q
IEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTg5Q0ND
NTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk5MzMwOUUwQTA5OUU2NDkyMDA1NkU1ODEgLyogUmVwbGFjZVNlbGVjdGlv
bkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5Q0MwQjU0MThCRTk4NDkwMDZDRUJDQyAv
KiBSZXBsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI4MDI3LDYgKzI4MDUzLDcg
QEAKIAkJCQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJDNUVCNUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5k
RGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0
eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0IzOEZENTQxQ0NGOTM5RTAw
NTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0
REVBQTE4MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkM1RUI2OUEwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxlVmlzdWFsRGF0YS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9h
ZGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTI5MjA5LDYgKzI5MjM2LDcgQEAKIAkJCQlCMjc1MzU3
NzBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3JNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk0M0VE
RDY3RTFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMjZFOTQ0RDgxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVkVVJMRmls
dGVycy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDQjM4RkQ0QjFDQ0NGMzY2MDA1OTJBM0YgLyog
UGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNTg0RkUzNDE4NjRENUFG
MDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1
ODRGRTJCMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQk2NTUwQjZBMTA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5jcHAgaW4g
U291cmNlcyAqLywKQEAgLTMxMjI3LDYgKzMxMjU1LDcgQEAKIAkJCQlCQzk2REI0NjBGM0E4ODIy
MDA1NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QkNFQTQ4NjUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlCQ0U0NDEzMzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENUExQ0QyMzI1ODAwNTkyQTNGIC8qIEpTUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzkyRjE0NDBBRDE4
NUZFMDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0VB
NDg2RDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRh
aWxzTWFya2VyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMzIwMDQsNiArMzIwMzMsNyBAQAogCQkJ
CTQ0NEQ0RTIzMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MubW0gaW4g
U291cmNlcyAqLywKIAkJCQk5M0YxOUIwNzA4MjQ1RTU5MDAxRTlBQkMgLyogV2ViQ29yZVZpZXcu
bSBpbiBTb3VyY2VzICovLAogCQkJCUE1RTYxNjczMTg5NDU4MUYwMDlBREY1MCAvKiBXZWJEZWJ1
Z2dlckFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNCMzhGRDU3MUNEMjFFMkEwMDU5MkEz
RiAvKiBKU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkUw
RDg0RUIxMDQ4NDM2RTAwMUExNzlFIC8qIFdlYkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MjI1QTE2QjYwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJRDNGM0QzNkQxQTY5QjdEQzAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRl
eHQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0zMjA4Myw2ICszMjExMyw3IEBACiAJCQkJQjEwQjY5
ODExNDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlDRDgyMDMxMTEzOTVBQ0U3MDBGOTU2QzYgLyogV2ViV2luZG93QW5pbWF0aW9uLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJRjU1QjNEREYxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5
cGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTExQ0NGOTM4OTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTAzMUI1MDBBNDRFRkM3
MDBGOTkyRTAgLyogV2hlZWxFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRTE5NTE2QjFC
NjU5OEQyMDBERjZFRUYgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTJFRUVFNTVDMUI2NkEwNDcwMDhFMkNCQyAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXJN
YWMubW0gaW4gU291cmNlcyAqLywKQEAgLTMyMTIwLDYgKzMyMTUxLDcgQEAKIAkJCQkwMEI5MzE4
OTEzQkE4REJDMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTAwQjkzMThCMTNCQThEQzkwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNl
clNjb3BlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTU5QzI4MDQ1MTM4REMyNDEwMDc5QjdFMiAv
KiBYTUxFcnJvcnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0IzOEZENTMxQ0NGOTM5QjAwNTky
QTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeUxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM3
NzJDNDYwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUExMzZBMDBDMTEzNERCRDIwMENDOEQ1MCAvKiBYTUxIdHRwUmVxdWVzdFByb2dyZXNz
RXZlbnRUaHJvdHRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0RGRDQ4RjBFMzA1MjkwMDA5
RDEwQUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmNwcAppbmRleCAyY2M2MTI0MTM3OGY0NWQxMmQ3ZTI5NjhmMTkwM2QwMGNjNjVlOTVm
Li4xYjVkYzE1ZDRiZGY1NGIxMmE4ZDE2ZWY4ODJiNGRiMWFkYzJjYWViIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0
dXJlcy5jcHAKQEAgLTU5LDYgKzU5LDcgQEAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6UnVudGlt
ZUVuYWJsZWRGZWF0dXJlcygpCiAjZWxzZQogICAgICwgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5h
YmxlZChmYWxzZSkKICNlbmRpZgorICAgICwgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZChmYWxz
ZSkKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1faXNJbmRleGVkREJFbmFi
bGVkKGZhbHNlKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9n
ZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IDExZWNkOTUzM2Q0ZDhiZWY5
OGUxZmRkMzVmMTVjZTRlZDFjZWQxZTEuLjRkMzZkNjg5MGEzNGRmOWJmNGIwNjlmY2RmNTgzNzQz
OTk0MDRmNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVy
aWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yMDEsNiArMjAxLDkgQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1f
aXNQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBib29sIHBsdWdp
blJlcGxhY2VtZW50RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNQbHVnaW5SZXBsYWNlbWVu
dEVuYWJsZWQ7IH0KIAorICAgIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKGJvb2wgaXNF
bmFibGVkKSB7IG1faXNSZXNvdXJjZVRpbWluZ0VuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBi
b29sIHJlc291cmNlVGltaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNSZXNvdXJjZVRp
bWluZ0VuYWJsZWQ7IH0KKwogI2lmIEVOQUJMRShHQU1FUEFEKQogICAgIHZvaWQgc2V0R2FtZXBh
ZHNFbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZUdhbWVwYWRzRW5hYmxlZCA9IGFyZUVu
YWJsZWQ7IH0KICAgICBib29sIGdhbWVwYWRzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJl
R2FtZXBhZHNFbmFibGVkOyB9CkBAIC0yNjcsNiArMjcwLDcgQEAgcHJpdmF0ZToKICAgICBib29s
IG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3
YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CiAgICAgYm9vbCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRF
bmFibGVkOworICAgIGJvb2wgbV9pc1Jlc291cmNlVGltaW5nRW5hYmxlZDsKIAogI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGJvb2wgbV9pc0luZGV4ZWREQkVuYWJsZWQ7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0
b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQZXJmb3JtYW5jZUVudHJ5Q3Vz
dG9tLmNwcAppbmRleCA3NGRlNWQyYmQ5MWRhYTU1ODA1YjNhMTNkNTg1NmU2NTc0NjcxNDdlLi42
ZDE2YjQxZTU0YTk4YzA0Yjg1MDZlODZjMzk5NjUyZGQ1NWQ0N2I2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGVyZm9ybWFuY2VFbnRyeUN1c3RvbS5jcHAK
QEAgLTMwLDEzICszMCwxNCBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAKLSNpZiBFTkFCTEUo
UEVSRk9STUFOQ0VfVElNRUxJTkUpCi0KKyNpZiBFTkFCTEUoV0VCX1RJTUlORykKICNpbmNsdWRl
ICJKU1BlcmZvcm1hbmNlRW50cnkuaCIKIAogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2lm
IEVOQUJMRShVU0VSX1RJTUlORykKICNpbmNsdWRlICJKU1BlcmZvcm1hbmNlTWFyay5oIgogI2lu
Y2x1ZGUgIkpTUGVyZm9ybWFuY2VNZWFzdXJlLmgiCisjZW5kaWYKICNpbmNsdWRlICJKU1BlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZU1hcmsuaCIKICNp
bmNsdWRlICJQZXJmb3JtYW5jZU1lYXN1cmUuaCIKQEAgLTUxLDEwICs1Miw4IEBAIEpTVmFsdWUg
dG9KUyhFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQZXJmb3Jt
YW5jZUVudHJ5KiBlbnRyCiAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgcmV0dXJuIGpzTnVsbCgp
OwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoaXM8UGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZz4oKmVudHJ5KSkKICAgICAgICAgcmV0dXJuIHdyYXA8SlNQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nPihnbG9iYWxPYmplY3QsIGRvd25jYXN0PFBlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmc+KCplbnRyeSkpOwotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAg
ICAgaWYgKGlzPFBlcmZvcm1hbmNlTWFyaz4oKmVudHJ5KSkKQEAgLTY4LDUgKzY3LDQgQEAgSlNW
YWx1ZSB0b0pTKEV4ZWNTdGF0ZSosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBl
cmZvcm1hbmNlRW50cnkqIGVudHIKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vIEVOQUJMRShXRUJf
VElNSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgKaW5kZXggNGNlODY3ODUwMGRkY2E1MGI1ZTVj
ODEwYjJkMmRiMDNiOWZhN2JmNC4uZDU3NDczOGZiYjhjMGFjNmMyNDQ2MWYwMTI4YTFlZTMyOWE2
Zjg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TmFtZXMuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCkBAIC0xODMsNiArMTgzLDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIG1hY3JvKHJlbW92ZXRyYWNrKSBcCiAgICAgbWFjcm8ocmVzZXQp
IFwKICAgICBtYWNybyhyZXNpemUpIFwKKyAgICBtYWNybyhyZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1
bGwpIFwKICAgICBtYWNybyhyZXN1bHQpIFwKICAgICBtYWNybyhyZXN1bWUpIFwKICAgICBtYWNy
byhzY3JvbGwpIFwKQEAgLTI2MSw3ICsyNjIsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
bWFjcm8od2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQpIFwKICAgICBtYWNybyh3ZWJraXRy
ZWdpb25vdmVyc2V0Y2hhbmdlKSBcCiAgICAgbWFjcm8od2Via2l0cmVtb3Zlc291cmNlYnVmZmVy
KSBcCi0gICAgbWFjcm8od2Via2l0cmVzb3VyY2V0aW1pbmdidWZmZXJmdWxsKSBcCiAgICAgbWFj
cm8od2Via2l0c291cmNlY2xvc2UpIFwKICAgICBtYWNybyh3ZWJraXRzb3VyY2VlbmRlZCkgXAog
ICAgIG1hY3JvKHdlYmtpdHNvdXJjZW9wZW4pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggY2RjNDU5ZjJiZmE4YTFiZTYy
YWZlZTMzYzRiMGJlNzcxY2I2MWExZC4uNWY1ZWZkODQxOGEzN2VhMDJkZmFiNjM1M2IwMjVhOGE2
MDZmYWJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNr
ZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1
ZXN0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNj
aGVtZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJT
dWJyZXNvdXJjZUxvYWRlci5oIgpAQCAtMzg1LDkgKzM4Niw4IEBAIHZvaWQgRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IFNlY3VyCiAgICAgICAgIH0KIAogICAgICAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgbmV3UmVx
dWVzdChyZXF1ZXN0LCBvcHRpb25zKTsKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAg
ICAgICBuZXdSZXF1ZXN0LnNldEluaXRpYXRvcihtX29wdGlvbnMuaW5pdGlhdG9yKTsKLSNlbmRp
ZgorICAgICAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5y
ZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgICAgIG5ld1JlcXVlc3Quc2V0SW5pdGlh
dG9yKG1fb3B0aW9ucy5pbml0aWF0b3IpOwogICAgICAgICBBU1NFUlQoIW1fcmVzb3VyY2UpOwog
ICAgICAgICBtX3Jlc291cmNlID0gbV9kb2N1bWVudC5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLnJl
cXVlc3RSYXdSZXNvdXJjZShuZXdSZXF1ZXN0KTsKICAgICAgICAgaWYgKG1fcmVzb3VyY2UpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAppbmRleCBk
MzlmZDI3ZGM1NjZjMGZlMjRkMTBjNjAxNGM1YmVkZWQzZTRmY2I5Li5lNTQ2N2ZkMTExMDhlMjEw
OWUxZDJmOWQ5ZDU2YjVjM2U4NmQxMzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWROb3RpZmllci5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJQYWdl
LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXIuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAKICNpZiBVU0UoUVVJ
Q0tfTE9PSykKICNpbmNsdWRlICJRdWlja0xvb2suaCIKQEAgLTE0Niw5ICsxNDcsOCBAQCB2b2lk
IFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZwogICAgIGlmIChsb2FkZXIgJiYgIXJlcXVlc3QuaXNOdWxsKCkg
JiYgcmVxdWVzdC51cmwoKSA9PSBsb2FkZXItPnVybCgpKQogICAgICAgICByZXF1ZXN0LnNldFJl
cG9ydExvYWRUaW1pbmcodHJ1ZSk7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAg
IHJlcXVlc3Quc2V0UmVwb3J0TG9hZFRpbWluZyh0cnVlKTsKLSNlbmRpZgorICAgIGlmIChSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxl
ZCgpKQorICAgICAgICByZXF1ZXN0LnNldFJlcG9ydExvYWRUaW1pbmcodHJ1ZSk7CiB9CiAKIHZv
aWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgciwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5k
ZXggYzBhOTlhM2RlOTc4OTQ1ZmQ2NDlkYzJkNmVhNzhkYjY3ODcxMzAxZC4uM2RiOTAwN2YxZjgz
Nzg2YjZmZDdiMzQxYTBhNjQwOTZiYjNlMTcwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC01NywxMCArNTcsMTIg
QEAKICNpbmNsdWRlICJNYWluRnJhbWUuaCIKICNpbmNsdWRlICJNZW1vcnlDYWNoZS5oIgogI2lu
Y2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgogI2luY2x1ZGUgIlBpbmdM
b2FkZXIuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNsdWRlICJSZW5k
ZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJ1
bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXNzaW9uSUQuaCIKQEAgLTc1
LDEwICs3Nyw2IEBACiAjaW5jbHVkZSAiQ2FjaGVkVGV4dFRyYWNrLmgiCiAjZW5kaWYKIAotI2lm
IEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCi0jaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKLSNlbmRp
ZgotCiAjZGVmaW5lIFBSRUxPQURfREVCVUcgMAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC02
NzEsMTEgKzY2OSw4IEBAIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6cmV2YWxpZGF0ZVJlc291cmNlKGNvCiAgICAgCiAgICAgbWVtb3J5
Q2FjaGUucmVtb3ZlKCpyZXNvdXJjZSk7CiAgICAgbWVtb3J5Q2FjaGUuYWRkKCpuZXdSZXNvdXJj
ZSk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBzdG9yZVJlc291cmNlVGltaW5n
SW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJlcXVlc3QpOwotI2Vsc2UKLSAgICBVTlVT
RURfUEFSQU0ocmVxdWVzdCk7Ci0jZW5kaWYKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJl
czo6c2hhcmVkRmVhdHVyZXMoKS5yZXNvdXJjZVRpbWluZ0VuYWJsZWQoKSkKKyAgICAgICAgc3Rv
cmVSZXNvdXJjZVRpbWluZ0luaXRpYXRvckluZm9ybWF0aW9uKHJlc291cmNlLCByZXF1ZXN0KTsK
ICAgICByZXR1cm4gbmV3UmVzb3VyY2U7CiB9CiAKQEAgLTY5MCwxNSArNjg1LDE0IEBAIENhY2hl
ZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6bG9h
ZFJlc291cmNlKENhY2hlZFJlCiAKICAgICBpZiAocmVxdWVzdC5hbGxvd3NDYWNoaW5nKCkgJiYg
IW1lbW9yeUNhY2hlLmFkZCgqcmVzb3VyY2UpKQogICAgICAgICByZXNvdXJjZS0+c2V0T3duaW5n
Q2FjaGVkUmVzb3VyY2VMb2FkZXIodGhpcyk7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykK
LSAgICBzdG9yZVJlc291cmNlVGltaW5nSW5pdGlhdG9ySW5mb3JtYXRpb24ocmVzb3VyY2UsIHJl
cXVlc3QpOwotI2VuZGlmCisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZl
YXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkpCisgICAgICAgIHN0b3JlUmVzb3VyY2VU
aW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihyZXNvdXJjZSwgcmVxdWVzdCk7CiAgICAgcmV0dXJu
IHJlc291cmNlOwogfQogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIHZvaWQgQ2FjaGVk
UmVzb3VyY2VMb2FkZXI6OnN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihj
b25zdCBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4mIHJlc291cmNlLCBjb25z
dCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CisgICAgQVNTRVJUKFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucmVzb3VyY2VUaW1pbmdFbmFibGVkKCkp
OwogICAgIGlmIChyZXNvdXJjZS0+dHlwZSgpID09IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3Vy
Y2UpIHsKICAgICAgICAgLy8gPGlmcmFtZT5zIHNob3VsZCByZXBvcnQgdGhlIGluaXRpYWwgbmF2
aWdhdGlvbiByZXF1ZXN0ZWQgYnkgdGhlIHBhcmVudCBkb2N1bWVudCwgYnV0IG5vdCBzdWJzZXF1
ZW50IG5hdmlnYXRpb25zLgogICAgICAgICBpZiAoZnJhbWUoKS0+b3duZXJFbGVtZW50KCkgJiYg
bV9kb2N1bWVudExvYWRlci0+ZnJhbWVMb2FkZXIoKS0+c3RhdGVNYWNoaW5lKCkuY29tbWl0dGlu
Z0ZpcnN0UmVhbExvYWQoKSkgewpAQCAtNzEwLDcgKzcwNCw2IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OnN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBD
YWNoZWRSCiAgICAgICAgIG1faW5pdGlhdG9yTWFwLmFkZChyZXNvdXJjZS5nZXQoKSwgaW5mbyk7
CiAgICAgfQogfQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAKIHN0YXRpYyB2
b2lkIGxvZ1JldmFsaWRhdGlvbihjb25zdCBTdHJpbmcmIHJlYXNvbiwgRGlhZ25vc3RpY0xvZ2dp
bmdDbGllbnQmIGxvZ0NsaWVudCkKIHsKQEAgLTk3Niw4ICs5NjksOSBAQCB2b2lkIENhY2hlZFJl
c291cmNlTG9hZGVyOjpsb2FkRG9uZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hv
dWxkUGVyZm9ybQogICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4gcHJvdGVjdERvY3VtZW50TG9h
ZGVyKG1fZG9jdW1lbnRMb2FkZXIpOwogICAgIFJlZlB0cjxEb2N1bWVudD4gcHJvdGVjdERvY3Vt
ZW50KG1fZG9jdW1lbnQpOwogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKLSAgICBpZiAo
cmVzb3VyY2UgJiYgcmVzb3VyY2UtPnJlc3BvbnNlKCkuaXNIVFRQKCkgJiYgKCghcmVzb3VyY2Ut
PmVycm9yT2NjdXJyZWQoKSAmJiAhcmVzb3VyY2UtPndhc0NhbmNlbGVkKCkpIHx8IHJlc291cmNl
LT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkgPT0gMzA0KSkgeworICAgIGlmIChSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnJlc291cmNlVGltaW5nRW5hYmxlZCgp
CisgICAgICAgICYmIHJlc291cmNlICYmIHJlc291cmNlLT5yZXNwb25zZSgpLmlzSFRUUCgpCisg
ICAgICAgICYmICgoIXJlc291cmNlLT5lcnJvck9jY3VycmVkKCkgJiYgIXJlc291cmNlLT53YXND
YW5jZWxlZCgpKSB8fCByZXNvdXJjZS0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID09IDMw
NCkpIHsKICAgICAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZSosIEluaXRpYXRvckluZm8+Ojpp
dGVyYXRvciBpbml0aWF0b3JJdCA9IG1faW5pdGlhdG9yTWFwLmZpbmQocmVzb3VyY2UpOwogICAg
ICAgICBpZiAoaW5pdGlhdG9ySXQgIT0gbV9pbml0aWF0b3JNYXAuZW5kKCkpIHsKICAgICAgICAg
ICAgIEFTU0VSVChkb2N1bWVudCgpKTsKQEAgLTk5MCw5ICs5ODQsNiBAQCB2b2lkIENhY2hlZFJl
c291cmNlTG9hZGVyOjpsb2FkRG9uZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UsIGJvb2wgc2hv
dWxkUGVyZm9ybQogICAgICAgICAgICAgbV9pbml0aWF0b3JNYXAucmVtb3ZlKGluaXRpYXRvckl0
KTsKICAgICAgICAgfQogICAgIH0KLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHJlc291cmNlKTsK
LSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogCiAgICAgaWYgKGZyYW1lKCkpCiAg
ICAgICAgIGZyYW1lKCktPmxvYWRlcigpLmxvYWREb25lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCmluZGV4IGIxZjdjNGZhZjVk
YmIwOTYwMWM1ODkyZjVkNjQ3MTM5NDliMWY2MGQuLjRkZjgxOTk1OWNlYWIxMTAzNzRiNTViNDYw
MzkzMGE4N2ViN2M2NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZUxvYWRlci5oCkBAIC0xNDQsOSArMTQ0LDcgQEAgcHJpdmF0ZToKICAgICBD
YWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcmVxdWVzdFJlc291cmNlKENhY2hl
ZFJlc291cmNlOjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcmV2YWxpZGF0ZVJlc291cmNlKGNvbnN0IENhY2hl
ZFJlc291cmNlUmVxdWVzdCYsIENhY2hlZFJlc291cmNlKik7CiAgICAgQ2FjaGVkUmVzb3VyY2VI
YW5kbGU8Q2FjaGVkUmVzb3VyY2U+IGxvYWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwg
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7Ci0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAg
ICB2b2lkIHN0b3JlUmVzb3VyY2VUaW1pbmdJbml0aWF0b3JJbmZvcm1hdGlvbihjb25zdCBDYWNo
ZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4mLCBjb25zdCBDYWNoZWRSZXNvdXJjZVJl
cXVlc3QmKTsKLSNlbmRpZgogICAgIHZvaWQgcmVxdWVzdFByZWxvYWQoQ2FjaGVkUmVzb3VyY2U6
OlR5cGUsIENhY2hlZFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgY2hhcnNldCk7CiAK
ICAgICBlbnVtIFJldmFsaWRhdGlvblBvbGljeSB7IFVzZSwgUmV2YWxpZGF0ZSwgUmVsb2FkLCBM
b2FkIH07CkBAIC0xNzksMTMgKzE3NywxMSBAQCBwcml2YXRlOgogCiAgICAgVGltZXIgbV9nYXJi
YWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzVGltZXI7CiAKLSNpZiBFTkFCTEUoUkVTT1VSQ0Vf
VElNSU5HKQogICAgIHN0cnVjdCBJbml0aWF0b3JJbmZvIHsKICAgICAgICAgQXRvbWljU3RyaW5n
IG5hbWU7CiAgICAgICAgIGRvdWJsZSBzdGFydFRpbWU7CiAgICAgfTsKICAgICBIYXNoTWFwPENh
Y2hlZFJlc291cmNlKiwgSW5pdGlhdG9ySW5mbz4gbV9pbml0aWF0b3JNYXA7Ci0jZW5kaWYKIAog
ICAgIC8vIDI5IGJpdHMgbGVmdAogICAgIGJvb2wgbV9hdXRvTG9hZEltYWdlcyA6IDE7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCmluZGV4IGVkMzlhMWQxNTA4MWI0NzY0YWU5N2FmYWY3
MzhiYTk2Nzk3ZTczMmIuLjA4YzcwMzFmNGZkMTI4MWQ1ZDViNTE0ZTdkYzQzMzA4MGI1NGFjZDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuY3BwCkBAIC00NywxNSArNDcsMTEgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi0jaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKIHN0YXRp
YyBjb25zdCBzaXplX3QgZGVmYXVsdFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSA9IDE1MDsKLSNl
bmRpZgogCiBQZXJmb3JtYW5jZTo6UGVyZm9ybWFuY2UoRnJhbWUmIGZyYW1lKQogICAgIDogRE9N
V2luZG93UHJvcGVydHkoJmZyYW1lKQotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAg
LCBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZShkZWZhdWx0UmVzb3VyY2VUaW1pbmdCdWZmZXJT
aXplKQotI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgLCBtX3JlZmVyZW5j
ZVRpbWUoZnJhbWUuZG9jdW1lbnQoKS0+bG9hZGVyKCkgPyBmcmFtZS5kb2N1bWVudCgpLT5sb2Fk
ZXIoKS0+dGltaW5nKCkucmVmZXJlbmNlTW9ub3RvbmljVGltZSgpIDogbW9ub3RvbmljYWxseUlu
Y3JlYXNpbmdUaW1lKCkpCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQogICAgICwgbV91c2VyVGlt
aW5nKG51bGxwdHIpCkBAIC05MSwxNCArODcsMTEgQEAgUGVyZm9ybWFuY2VUaW1pbmcqIFBlcmZv
cm1hbmNlOjp0aW1pbmcoKSBjb25zdAogICAgIHJldHVybiBtX3RpbWluZy5nZXQoKTsKIH0KIAot
I2lmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLVBhc3NSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeUxpc3Q+IFBlcmZvcm1hbmNlOjp3ZWJraXRHZXRFbnRyaWVzKCkgY29uc3QKK1JlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXMoKSBjb25zdAogewog
ICAgIFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gZW50cmllcyA9IFBlcmZvcm1hbmNlRW50
cnlMaXN0OjpjcmVhdGUoKTsKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCiAgICAgZW50
cmllcy0+YXBwZW5kQWxsKG1fcmVzb3VyY2VUaW1pbmdCdWZmZXIpOwotI2VuZGlmIC8vIEVOQUJM
RShSRVNPVVJDRV9USU1JTkcpCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1f
dXNlclRpbWluZykgewpAQCAtMTExLDE2ICsxMDQsMTQgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXMoKSBjb25zdAogICAgIHJl
dHVybiBlbnRyaWVzOwogfQogCi1QYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBQZXJm
b3JtYW5jZTo6d2Via2l0R2V0RW50cmllc0J5VHlwZShjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSkK
K1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeVR5
cGUoY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpCiB7CiAgICAgUmVmUHRyPFBlcmZvcm1hbmNlRW50
cnlMaXN0PiBlbnRyaWVzID0gUGVyZm9ybWFuY2VFbnRyeUxpc3Q6OmNyZWF0ZSgpOwogCi0jaWYg
RU5BQkxFKFJFU09VUkNFX1RJTUlORykKICAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJ
SUNhc2UoZW50cnlUeXBlLCAicmVzb3VyY2UiKSkgewogICAgICAgICBmb3IgKGF1dG8mIHJlc291
cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikKICAgICAgICAgICAgIGVudHJpZXMtPmFwcGVu
ZChyZXNvdXJjZSk7CiAgICAgfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAg
ICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTM1LDE4ICsxMjYsMTYgQEAgUGFzc1JlZlB0cjxQ
ZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeVR5cGUo
Y29uc3QgU3RyaW4KICAgICByZXR1cm4gZW50cmllczsKIH0KIAotUGFzc1JlZlB0cjxQZXJmb3Jt
YW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSkKK1JlZlB0cjxQZXJmb3JtYW5j
ZUVudHJ5TGlzdD4gUGVyZm9ybWFuY2U6OmdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW5nJiBu
YW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSkKIHsKICAgICBSZWZQdHI8UGVyZm9ybWFuY2VF
bnRyeUxpc3Q+IGVudHJpZXMgPSBQZXJmb3JtYW5jZUVudHJ5TGlzdDo6Y3JlYXRlKCk7CiAKLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogICAgIGlmIChlbnRyeVR5cGUuaXNOdWxsKCkgfHwg
ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoZW50cnlUeXBlLCAicmVzb3VyY2UiKSkgewog
ICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9yZXNvdXJjZVRpbWluZ0J1ZmZlcikgewog
ICAgICAgICAgICAgaWYgKHJlc291cmNlLT5uYW1lKCkgPT0gbmFtZSkKICAgICAgICAgICAgICAg
ICBlbnRyaWVzLT5hcHBlbmQocmVzb3VyY2UpOwogICAgICAgICB9CiAgICAgfQotI2VuZGlmCiAK
ICNpZiBFTkFCTEUoVVNFUl9USU1JTkcpCiAgICAgaWYgKG1fdXNlclRpbWluZykgewpAQCAtMTYx
LDIwICsxNTAsMTYgQEAgUGFzc1JlZlB0cjxQZXJmb3JtYW5jZUVudHJ5TGlzdD4gUGVyZm9ybWFu
Y2U6OndlYmtpdEdldEVudHJpZXNCeU5hbWUoY29uc3QgU3RyaW4KICAgICByZXR1cm4gZW50cmll
czsKIH0KIAotI2VuZGlmIC8vIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKLQotI2lmIEVO
QUJMRShSRVNPVVJDRV9USU1JTkcpCi0KLXZvaWQgUGVyZm9ybWFuY2U6OndlYmtpdENsZWFyUmVz
b3VyY2VUaW1pbmdzKCkKK3ZvaWQgUGVyZm9ybWFuY2U6OmNsZWFyUmVzb3VyY2VUaW1pbmdzKCkK
IHsKICAgICBtX3Jlc291cmNlVGltaW5nQnVmZmVyLmNsZWFyKCk7CiB9CiAKLXZvaWQgUGVyZm9y
bWFuY2U6OndlYmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBzaXplKQor
dm9pZCBQZXJmb3JtYW5jZTo6c2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIHNp
emUpCiB7CiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUgPSBzaXplOwogICAgIGlmIChp
c1Jlc291cmNlVGltaW5nQnVmZmVyRnVsbCgpKQotICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50
OjpjcmVhdGUoZXZlbnROYW1lcygpLndlYmtpdHJlc291cmNldGltaW5nYnVmZmVyZnVsbEV2ZW50
LCBmYWxzZSwgZmFsc2UpKTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2
ZW50TmFtZXMoKS5yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGxFdmVudCwgZmFsc2UsIGZhbHNlKSk7
CiB9CiAKIHZvaWQgUGVyZm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYg
aW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQqIGluaXRpYXRvckRvY3VtZW50LCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBkb3Vi
bGUgaW5pdGlhdGlvblRpbWUsIGRvdWJsZSBmaW5pc2hUaW1lKQpAQCAtMTg3LDcgKzE3Miw3IEBA
IHZvaWQgUGVyZm9ybWFuY2U6OmFkZFJlc291cmNlVGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlh
dG9yTmFtZSwgRG9jdW1lbnQqIGluaXRpCiAgICAgbV9yZXNvdXJjZVRpbWluZ0J1ZmZlci5hcHBl
bmQoZW50cnkpOwogCiAgICAgaWYgKGlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkpCi0gICAg
ICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkud2Via2l0cmVzb3Vy
Y2V0aW1pbmdidWZmZXJmdWxsRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgICAgICBkaXNwYXRj
aEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLnJlc291cmNldGltaW5nYnVmZmVyZnVs
bEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsKIH0KIAogYm9vbCBQZXJmb3JtYW5jZTo6aXNSZXNvdXJj
ZVRpbWluZ0J1ZmZlckZ1bGwoKQpAQCAtMTk1LDggKzE4MCw2IEBAIGJvb2wgUGVyZm9ybWFuY2U6
OmlzUmVzb3VyY2VUaW1pbmdCdWZmZXJGdWxsKCkKICAgICByZXR1cm4gbV9yZXNvdXJjZVRpbWlu
Z0J1ZmZlci5zaXplKCkgPj0gbV9yZXNvdXJjZVRpbWluZ0J1ZmZlclNpemU7CiB9CiAKLSNlbmRp
ZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCiAjaWYgRU5BQkxFKFVTRVJfVElNSU5HKQog
dm9pZCBQZXJmb3JtYW5jZTo6d2Via2l0TWFyayhjb25zdCBTdHJpbmcmIG1hcmtOYW1lLCBFeGNl
cHRpb25Db2RlJiBlYykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaAppbmRleCA5M2Y0NDA2
NDRiYjc2M2ZhN2RjOGQxN2U0ODYyZTMyMzVlOWM3NmY3Li4xNzZjMTUwYzRhOGY0ODczZDhiNzY2
NDQ5MzMyNzliMzg4NWQ0MTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5oCkBAIC00MCw3
ICs0MCw2IEBACiAjaW5jbHVkZSAiUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmgiCiAjaW5jbHVkZSAi
UGVyZm9ybWFuY2VUaW1pbmcuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKLSNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAt
NjQsMTggKzYzLDE0IEBAIHB1YmxpYzoKICAgICBQZXJmb3JtYW5jZVRpbWluZyogdGltaW5nKCkg
Y29uc3Q7CiAgICAgZG91YmxlIG5vdygpIGNvbnN0OwogCi0jaWYgRU5BQkxFKFBFUkZPUk1BTkNF
X1RJTUVMSU5FKQotICAgIFBhc3NSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IHdlYmtpdEdl
dEVudHJpZXMoKSBjb25zdDsKLSAgICBQYXNzUmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiB3
ZWJraXRHZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50cnlUeXBlKTsKLSAgICBQYXNz
UmVmUHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiB3ZWJraXRHZXRFbnRyaWVzQnlOYW1lKGNvbnN0
IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBlbnRyeVR5cGUpOwotI2VuZGlmCisgICAgUmVm
UHRyPFBlcmZvcm1hbmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzKCkgY29uc3Q7CisgICAgUmVmUHRy
PFBlcmZvcm1hbmNlRW50cnlMaXN0PiBnZXRFbnRyaWVzQnlUeXBlKGNvbnN0IFN0cmluZyYgZW50
cnlUeXBlKTsKKyAgICBSZWZQdHI8UGVyZm9ybWFuY2VFbnRyeUxpc3Q+IGdldEVudHJpZXNCeU5h
bWUoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGVudHJ5VHlwZSk7CiAKLSNpZiBF
TkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotICAgIHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWlu
Z3MoKTsKLSAgICB2b2lkIHdlYmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25l
ZCBpbnQpOworICAgIHZvaWQgY2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKKyAgICB2b2lkIHNldFJl
c291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCk7CiAKICAgICB2b2lkIGFkZFJlc291cmNl
VGltaW5nKGNvbnN0IFN0cmluZyYgaW5pdGlhdG9yTmFtZSwgRG9jdW1lbnQqLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgZG91YmxlIGluaXRpYXRpb25U
aW1lLCBkb3VibGUgZmluaXNoVGltZSk7Ci0jZW5kaWYKIAogICAgIHVzaW5nIFJlZkNvdW50ZWQ8
UGVyZm9ybWFuY2U+OjpyZWY7CiAgICAgdXNpbmcgUmVmQ291bnRlZDxQZXJmb3JtYW5jZT46OmRl
cmVmOwpAQCAtOTcsMTEgKzkyLDkgQEAgcHJpdmF0ZToKIAogICAgIG11dGFibGUgUmVmUHRyPFBl
cmZvcm1hbmNlTmF2aWdhdGlvbj4gbV9uYXZpZ2F0aW9uOwogICAgIG11dGFibGUgUmVmUHRyPFBl
cmZvcm1hbmNlVGltaW5nPiBtX3RpbWluZzsKLSAgICAKLSNpZiBFTkFCTEUoUkVTT1VSQ0VfVElN
SU5HKQorCiAgICAgVmVjdG9yPFJlZlB0cjxQZXJmb3JtYW5jZUVudHJ5Pj4gbV9yZXNvdXJjZVRp
bWluZ0J1ZmZlcjsKICAgICB1bnNpZ25lZCBtX3Jlc291cmNlVGltaW5nQnVmZmVyU2l6ZTsKLSNl
bmRpZgogCiAgICAgZG91YmxlIG1fcmVmZXJlbmNlVGltZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlLmlkbAppbmRleCA5YjBhOGI3NzAwMGMyOGU0MDUyOTgyMmVjZTM1MjY5MGFlY2RlNmY2
Li45NDg5NjkwYjM1NjE1MmY2ZWQwN2FmNDczODUzZjYzMjMyZjQ1YmU1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BlcmZvcm1hbmNlLmlkbApAQCAtMzYsMTggKzM2LDE1IEBACiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIFBlcmZvcm1hbmNlTmF2aWdhdGlvbiBuYXZpZ2F0aW9uOwogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBQZXJmb3JtYW5jZVRpbWluZyB0aW1pbmc7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9Q
RVJGT1JNQU5DRV9USU1FTElORSkgJiYgRU5BQkxFX1BFUkZPUk1BTkNFX1RJTUVMSU5FCi0gICAg
UGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllcygpOwotICAgIFBlcmZvcm1hbmNl
RW50cnlMaXN0IHdlYmtpdEdldEVudHJpZXNCeVR5cGUoRE9NU3RyaW5nIGVudHJ5VHlwZSk7Ci0g
ICAgUGVyZm9ybWFuY2VFbnRyeUxpc3Qgd2Via2l0R2V0RW50cmllc0J5TmFtZShET01TdHJpbmcg
bmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIGVudHJ5VHlwZSk7Ci0jZW5kaWYKKyAgICBbRW5hYmxl
ZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gUGVyZm9ybWFuY2VFbnRyeUxpc3QgZ2V0RW50cmll
cygpOworICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVu
dHJ5TGlzdCBnZXRFbnRyaWVzQnlUeXBlKERPTVN0cmluZyBlbnRyeVR5cGUpOworICAgIFtFbmFi
bGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSBQZXJmb3JtYW5jZUVudHJ5TGlzdCBnZXRFbnRy
aWVzQnlOYW1lKERPTVN0cmluZyBuYW1lLCBvcHRpb25hbCBET01TdHJpbmcgZW50cnlUeXBlKTsK
IAotI2lmIGRlZmluZWQoRU5BQkxFX1JFU09VUkNFX1RJTUlORykgJiYgRU5BQkxFX1JFU09VUkNF
X1RJTUlORwotICAgIHZvaWQgd2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3MoKTsKLSAgICB2b2lk
IHdlYmtpdFNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZSh1bnNpZ25lZCBsb25nIG1heFNpemUp
OwogCi0gICAgYXR0cmlidXRlIEV2ZW50SGFuZGxlciBvbndlYmtpdHJlc291cmNldGltaW5nYnVm
ZmVyZnVsbDsKLSNlbmRpZgorICAgIFtFbmFibGVkQXRSdW50aW1lPVJlc291cmNlVGltaW5nXSB2
b2lkIGNsZWFyUmVzb3VyY2VUaW1pbmdzKCk7CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9UmVzb3Vy
Y2VUaW1pbmddIHZvaWQgc2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplKHVuc2lnbmVkIGxvbmcg
bWF4U2l6ZSk7CisKKyAgICBbRW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZ10gYXR0cmli
dXRlIEV2ZW50SGFuZGxlciBvbnJlc291cmNldGltaW5nYnVmZmVyZnVsbDsKIAogICAgIC8vIFNl
ZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEyL0NSLXVzZXItdGltaW5nLTIwMTIwNzI2LwogI2lm
IGRlZmluZWQoRU5BQkxFX1VTRVJfVElNSU5HKSAmJiBFTkFCTEVfVVNFUl9USU1JTkcKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuY3BwCmluZGV4IDMyZGI3Y2ZlNTYzNWNkZjMy
YzMwNWVjNGVhYzA5NTAxZTVmODNlZTUuLjM3NGUxNDI5MzE4M2Y5NzNmYWE3ODQxODFkZmQ1OWUy
MzA5NWI1YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRy
eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5LmNwcApAQCAt
MzEsNyArMzEsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZvcm1hbmNl
RW50cnkuaCIKIAotI2lmIEVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0Vf
VElNRUxJTkUpCisjaWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IApAQCAtNjksNCArNjksNCBAQCBkb3VibGUgUGVyZm9ybWFuY2VFbnRyeTo6ZHVyYXRpb24oKSBj
b25zdAogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKLSNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJ
TUlORykgJiYgRU5BQkxFKFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2VuZGlmIC8vIEVOQUJMRShX
RUJfVElNSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaAppbmRleCAwMTEx
YjFkZTM5ZmRkZTczZGNkM2I5OGZkNzMxMWU0ZjE0ZDFkMzk2Li4xMmJhMGMxYjJkMWYxMDg1MzE3
ZGFjY2YwNDkxMzY4MmY5ZDA3OWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bl
cmZvcm1hbmNlRW50cnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50
cnkuaApAQCAtMzIsNyArMzIsNyBAQAogI2lmbmRlZiBQZXJmb3JtYW5jZUVudHJ5X2gKICNkZWZp
bmUgUGVyZm9ybWFuY2VFbnRyeV9oCiAKLSNpZiBFTkFCTEUoV0VCX1RJTUlORykgJiYgRU5BQkxF
KFBFUkZPUk1BTkNFX1RJTUVMSU5FKQorI2lmIEVOQUJMRShXRUJfVElNSU5HKQogCiAjaW5jbHVk
ZSAiUGVyZm9ybWFuY2UuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgpAQCAtNzIsNSAr
NzIsNSBAQCBwcml2YXRlOgogCiB9CiAKLSNlbmRpZiAvLyAhRU5BQkxFKFdFQl9USU1JTkcpICYm
IEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlO
RykKICNlbmRpZiAvLyAhZGVmaW5lZChQZXJmb3JtYW5jZUVudHJ5X2gpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QZXJmb3JtYW5jZUVudHJ5LmlkbAppbmRleCA5YmNhZjRjMzQwMTg5ODU1YTJiNjRkNmYw
NWIyOThjY2MxZjcyM2U2Li5mMzdlMmEzY2JhNDMyNDEzYTBhZjdiYmM0NmE4ZDVmMTQ0YmZhZjIy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwKQEAgLTMxLDcgKzMx
LDcgQEAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1maWxlL3Rp
cC9zcGVjcy9QZXJmb3JtYW5jZVRpbWVsaW5lL092ZXJ2aWV3Lmh0bWwKIFsKICAgICBDb25kaXRp
b25hbD1XRUJfVElNSU5HLAotICAgIENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5FLAor
ICAgIEVuYWJsZWRBdFJ1bnRpbWU9UmVzb3VyY2VUaW1pbmcsCiAgICAgQ3VzdG9tVG9KU09iamVj
dCwKIF0gaW50ZXJmYWNlIFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VFbnRyeUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5
TGlzdC5jcHAKaW5kZXggZDlmYTA1NTc3ZGQ1NzllOWNhODI3NGRkNzhiNGFjZTM0YmM3OTI4Yi4u
YzAzNTkyOGIzMWM2ZGU5ZDYxZDg2MzExNjMxZDMzNTZmYzNiODI2MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5TGlzdC5oIgogCi0j
aWYgRU5BQkxFKFdFQl9USU1JTkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNp
ZiBFTkFCTEUoV0VCX1RJTUlORykKIAogI2luY2x1ZGUgIlBlcmZvcm1hbmNlRW50cnkuaCIKIApA
QCAtNzUsNCArNzUsNCBAQCB2b2lkIFBlcmZvcm1hbmNlRW50cnlMaXN0Ojpzb3J0KCkKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpICYmIEVO
QUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX1RJTUlORykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VFbnRyeUxpc3QuaAppbmRleCA5N2EyMTJk
ZDZmZDA1NDQ3NjZlZDc1NjNjMTc1NmI5MTM2ZDdmZWQ2Li5kNjAwNzE3ZjMyMzU5OTdjNTk2Njk3
OWQ2MjE1Y2E2MTY0NGRiMzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZv
cm1hbmNlRW50cnlMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZUVu
dHJ5TGlzdC5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1hbmNlRW50cnlMaXN0
X2gKICNkZWZpbmUgUGVyZm9ybWFuY2VFbnRyeUxpc3RfaAogCi0jaWYgRU5BQkxFKFdFQl9USU1J
TkcpICYmIEVOQUJMRShQRVJGT1JNQU5DRV9USU1FTElORSkKKyNpZiBFTkFCTEUoV0VCX1RJTUlO
RykKIAogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KQEAgLTY0LDUgKzY0LDUgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCi0jZW5kaWYgLy8gIUVOQUJMRShXRUJfVElNSU5HKSAmJiBFTkFCTEUoUEVSRk9STUFOQ0Vf
VElNRUxJTkUpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCiAjZW5kaWYgLy8gUGVyZm9y
bWFuY2VFbnRyeUxpc3RfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5TGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlM
aXN0LmlkbAppbmRleCA3ZTI1YTg1Y2U2Yzg5Mzg0ZWZlNTUyZjgzNzY5MjU5MzU4MDI4OGY5Li4x
ODA2NmNjMzdlNTczZjIwZTFhOTA1YzM4OGIwMjE4MThlYjc5MzZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbApAQCAtMzIsMTAgKzMyLDkgQEAKIFsK
ICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1XRUJfVElNSU5HLAotICAg
IENvbmRpdGlvbmFsPVBFUkZPUk1BTkNFX1RJTUVMSU5FLAorICAgIEVuYWJsZWRBdFJ1bnRpbWU9
UmVzb3VyY2VUaW1pbmcsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJm
YWNlIFBlcmZvcm1hbmNlRW50cnlMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWdu
ZWQgbG9uZyBsZW5ndGg7CiAgICAgZ2V0dGVyIFBlcmZvcm1hbmNlRW50cnkgaXRlbSh1bnNpZ25l
ZCBsb25nIGluZGV4KTsKIH07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmcuY3BwCmluZGV4IDMxYjg5NzEzN2Y1MTFlNDVmNzc1N2U5NTZjMjZm
Mzc1ODdhYjZhNjAuLjRiMGUwN2Y4ZDE3YjQ4MDAxN2VkYjhjZjY1ZWNhYmM5MzNmZWM5ZTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmNw
cApAQCAtMzIsNyArMzIsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBlcmZv
cm1hbmNlUmVzb3VyY2VUaW1pbmcuaCIKIAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCisj
aWYgRU5BQkxFKFdFQl9USU1JTkcpCiAKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUg
IkRvY3VtZW50TG9hZFRpbWluZy5oIgpAQCAtMTk5LDUgKzE5OSw0IEBAIGRvdWJsZSBQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nOjpyZXNvdXJjZVRpbWVUb0RvY3VtZW50TWlsbGlzZWNvbmRzKGlu
dCBkZWx0YU1pCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShSRVNPVVJDRV9USU1JTkcpCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9USU1JTkcpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCmluZGV4IDNjMzVk
MWFmYzlkMDRmN2M3ZjFhZGNmZDE0NWIzM2VhZTNhNmZjNTMuLjgyNDg1YjJmNzJmNmI1MGZhYTM3
YWQ3Y2Y1ZDJhNGU4MDAxYWNlOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9y
bWFuY2VSZXNvdXJjZVRpbWluZy5oCkBAIC0zMiw3ICszMiw3IEBACiAjaWZuZGVmIFBlcmZvcm1h
bmNlUmVzb3VyY2VUaW1pbmdfaAogI2RlZmluZSBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nX2gK
IAotI2lmIEVOQUJMRShSRVNPVVJDRV9USU1JTkcpCisjaWYgRU5BQkxFKFdFQl9USU1JTkcpCiAK
ICNpbmNsdWRlICJQZXJmb3JtYW5jZUVudHJ5LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkVGlt
aW5nLmgiCkBAIC04NSwxMSArODUsOSBAQCBwcml2YXRlOgogCiB9CiAKLQogU1BFQ0lBTElaRV9U
WVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nKQogICAg
IHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpQZXJmb3JtYW5jZUVudHJ5JiBlbnRy
eSkgeyByZXR1cm4gZW50cnkuaXNSZXNvdXJjZSgpOyB9CiBTUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCiAKLSNlbmRpZiAvLyBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQotCisjZW5kaWYgLy8g
RU5BQkxFKFdFQl9USU1JTkcpCiAjZW5kaWYgLy8gIWRlZmluZWQoUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZ19oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJl
c291cmNlVGltaW5nLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2VSZXNvdXJj
ZVRpbWluZy5pZGwKaW5kZXggM2YwMTFiMjNiMDU3YTFhZTBlNjM0ZWYxOTQzYjEwMWZjZTY4NjZk
My4uMjVhOTI4YjA5ZjJmYTYwY2NiMzdhNTM0YzY3MmYyZmRmZWZmMjg2NiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsCkBAIC0zMCw3
ICszMCw4IEBACiAKIC8vIFNlZTogaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJwZXJmL3Jhdy1m
aWxlL3RpcC9zcGVjcy9SZXNvdXJjZVRpbWluZy9PdmVydmlldy5odG1sCiBbCi0gICAgQ29uZGl0
aW9uYWw9UkVTT1VSQ0VfVElNSU5HLAorICAgIENvbmRpdGlvbmFsPVdFQl9USU1JTkcsCisgICAg
RW5hYmxlZEF0UnVudGltZT1SZXNvdXJjZVRpbWluZwogXSBpbnRlcmZhY2UgUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZyA6IFBlcmZvcm1hbmNlRW50cnkgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgaW5pdGlhdG9yVHlwZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
Y3BwCmluZGV4IDZlMGQ2NTUwY2ExM2U5NTAzMzc2ZDViNDcyZWUzNzBlY2JjZGE5MzMuLmYzY2Jl
ZGVjM2FhZDBkODdjOGNiNzgzODcxMDRkNjBlMGRmN2Q3ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAKQEAgLTMzMTMsNCArMzMxMyw5IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRD
U1NHcmlkTGF5b3V0RW5hYmxlZChib29sIGVuYWJsZSkKIH0KICNlbmRpZgogCit2b2lkIEludGVy
bmFsczo6c2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGJvb2wgZW5hYmxlKQoreworICAgIFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0UmVzb3VyY2VUaW1pbmdFbmFi
bGVkKGVuYWJsZSk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4IDMy
NjczY2U1ZjIxOWUxZmZhMThhZmFjNzM1NmMxOTU5ZmVlNjVkYzEuLjM5MDY3ZWYyNDU2NTE3ODc2
YjdhMGU4ZDczMTljOTYzMDc4YjUwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApA
QCAtNDczLDYgKzQ3Myw3IEBAIHB1YmxpYzoKICAgICAKICAgICB2b2lkIHNldFZpZXdwb3J0Rm9y
Y2VBbHdheXNVc2VyU2NhbGFibGUoYm9vbCk7CiAgICAgdm9pZCBzZXRMaW5rUHJlbG9hZFN1cHBv
cnQoYm9vbCk7CisgICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbCk7CiAKICNp
ZiBFTkFCTEUoQ1NTX0dSSURfTEFZT1VUKQogICAgIHZvaWQgc2V0Q1NTR3JpZExheW91dEVuYWJs
ZWQoYm9vbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggZDgzY2I0ZDM1
ZTQ5ZDgxOGM0YjY2OTQxYmNlMWQwZmQxMjUyM2E5Ni4uMWNhMGZlNmY5ZDE2MjY0OTlhODY0N2Ix
MGE5MmMzYTE4NDhhOGY3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAt
NDUzLDQgKzQ1Myw1IEBAIGVudW0gSW50ZXJuYWxzQXV0b0ZpbGxCdXR0b25UeXBlIHsKICAgICB2
b2lkIHNldENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2xlYW4gZW5hYmxlKTsKICNlbmRpZgogCisg
ICAgdm9pZCBzZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQoYm9vbGVhbiBzY2FsYWJsZSk7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNlL2Nt
YWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDkzMDRiNWFlZDI4MjZhOTE2MTE0ZGVmZGM5
YmY1OWZiMGQ1NmI3MDAuLjc2OGUzZTU5ZDdlMTlhYWFhMDRmMDIyMTc4MzVjZTk2OTY3YzA5MmUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3Vy
Y2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTE1OCw3ICsxNTgsNiBAQCBtYWNybyhX
RUJLSVRfT1BUSU9OX0JFR0lOKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9OT1RJ
RklDQVRJT05TICJUb2dnbGUgRGVza3RvcCBOb3RpZmljYXRpb25zIFN1cHBvcnQiIFBSSVZBVEUg
T0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9PUklFTlRBVElPTl9FVkVOVFMg
IlRvZ2dsZSBPcmllbnRhdGlvbiBFdmVudHMgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BERktJVF9QTFVHSU4gIlRvZ2dsZSBQREZLaXQgcGx1
Z2luIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQotICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJM
RV9QRVJGT1JNQU5DRV9USU1FTElORSAiVG9nZ2xlIFBlcmZvcm1hbmNlIFRpbWVsaW5lIHN1cHBv
cnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9QT0lOVEVS
X0xPQ0sgIlRvZ2dsZSBwb2ludGVyIGxvY2sgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMgIlRvZ2dsZSBQcm94aW1p
dHkgRXZlbnRzIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5F
KEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QgIlRvZ2dsZSBwdWJsaWMgc3VmZml4IGxpc3Qgc3Vw
cG9ydCIgUFJJVkFURSBPRkYpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMTIzYTdkMjg1NDBiNzgxYzdhZjY3M2I5MDA1MmYw
MjAxMzRmMjg0Zi4uZDEyMzNiZjMxMTI3ZjQwY2ZlMDk4ZTYyN2JiY2QxN2QxY2I1YzljMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE5IEBACisyMDE2LTA1LTAxICBZb2F2IFdlaXNzICA8eW9hdkB5b2F2Lndz
PgorCisgICAgICAgIE1vdmUgUmVzb3VyY2VUaW1pbmcgYmVoaW5kIGEgcnVudGltZSBmbGFnCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTcxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAgIEFkZGVkIHRl
c3RzIHRoYXQgbWFrZSBzdXJlIFJlc291cmNlVGltaW5nIEFQSXMgYXJlIGV4cG9zZWQgYW5kIHRo
YXQgcmVzb3VyY2VzCisgICAgICAgIHNob3cgdXAgYXMgZW50cmllcyBpbiB0aGUgcGVyZm9ybWFu
Y2UgdGltZWxpbmUuCisKKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLXJlc291
cmNlLXRpbWluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbDogUmVtb3ZlZCAiLy87Ii4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVz
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9w
ZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sOiBBZGRlZC4KKwogMjAxNi0w
NC0zMCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVT
U0lPTiAocjE5OTY0MCk6IHBvc2l0aW9uOmFic29sdXRlIGdlbmVyYXRlZCBjb250ZW50IGluaGVy
aXRzIHRleHQtZGVjb3JhdGlvbiBmcm9tIGl0cyBlbGVtZW50CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3Vy
Y2UtdGltaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5k
b3ctcHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmNmYjkxNTRlOWIzYjQ0MjcxODJmNzZjNGZiZWUyN2U1ODMyNmUyM2IKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRp
ZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ2
IEBACitUaGlzIHRlc3QgZHVtcHMgYWxsIG9mIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlYWNo
YWJsZSBmcm9tIHRoZSB3aW5kb3cucGVyZm9ybWFuY2Ugb2JqZWN0LCBhbG9uZyB3aXRoIHRoZWly
IHR5cGVzLgorCit3aW5kb3cucGVyZm9ybWFuY2UgW29iamVjdCBQZXJmb3JtYW5jZV0KK3dpbmRv
dy5wZXJmb3JtYW5jZS5hZGRFdmVudExpc3RlbmVyIFtmdW5jdGlvbl0KK3dpbmRvdy5wZXJmb3Jt
YW5jZS5jbGVhclJlc291cmNlVGltaW5ncyBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2Uu
ZGlzcGF0Y2hFdmVudCBbZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllcyBb
ZnVuY3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSBbZnVuY3Rpb25d
Cit3aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSBbZnVuY3Rpb25dCit3aW5kb3cu
cGVyZm9ybWFuY2UubmF2aWdhdGlvbiBbb2JqZWN0IFBlcmZvcm1hbmNlTmF2aWdhdGlvbl0KK3dp
bmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uLlRZUEVfQkFDS19GT1JXQVJEIFtudW1iZXJdCit3
aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX05BVklHQVRFIFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi5UWVBFX1JFTE9BRCBbbnVtYmVyXQord2luZG93LnBl
cmZvcm1hbmNlLm5hdmlnYXRpb24uVFlQRV9SRVNFUlZFRCBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLm5hdmlnYXRpb24ucmVkaXJlY3RDb3VudCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1h
bmNlLm5hdmlnYXRpb24udHlwZSBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLm5vdyBbZnVu
Y3Rpb25dCit3aW5kb3cucGVyZm9ybWFuY2Uub25yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwgW251
bGxdCit3aW5kb3cucGVyZm9ybWFuY2UucmVtb3ZlRXZlbnRMaXN0ZW5lciBbZnVuY3Rpb25dCit3
aW5kb3cucGVyZm9ybWFuY2Uuc2V0UmVzb3VyY2VUaW1pbmdCdWZmZXJTaXplIFtmdW5jdGlvbl0K
K3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgW29iamVjdCBQZXJmb3JtYW5jZVRpbWluZ10KK3dp
bmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuY29ubmVjdEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZv
cm1hbmNlLnRpbWluZy5jb25uZWN0U3RhcnQgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50
aW1pbmcuZG9tQ29tcGxldGUgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9t
Q29udGVudExvYWRlZEV2ZW50RW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5n
LmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2Uu
dGltaW5nLmRvbUludGVyYWN0aXZlIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5n
LmRvbUxvYWRpbmcgW251bWJlcl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcuZG9tYWluTG9v
a3VwRW5kIFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmRvbWFpbkxvb2t1cFN0
YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLmZldGNoU3RhcnQgW251bWJl
cl0KK3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubG9hZEV2ZW50RW5kIFtudW1iZXJdCit3aW5k
b3cucGVyZm9ybWFuY2UudGltaW5nLmxvYWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVy
Zm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1h
bmNlLnRpbWluZy5yZWRpcmVjdEVuZCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWlu
Zy5yZWRpcmVjdFN0YXJ0IFtudW1iZXJdCit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnJlcXVl
c3RTdGFydCBbbnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXNwb25zZUVuZCBb
bnVtYmVyXQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5yZXNwb25zZVN0YXJ0IFtudW1iZXJd
Cit3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLnNlY3VyZUNvbm5lY3Rpb25TdGFydCBbbnVtYmVy
XQord2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy51bmxvYWRFdmVudEVuZCBbbnVtYmVyXQord2lu
ZG93LnBlcmZvcm1hbmNlLnRpbWluZy51bmxvYWRFdmVudFN0YXJ0IFtudW1iZXJdCit3aW5kb3cu
cGVyZm9ybWFuY2UudGltaW5nIFtwcmludGVkIGFib3ZlIGFzIHdpbmRvdy5wZXJmb3JtYW5jZS50
aW1pbmddCit3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiBbcHJpbnRlZCBhYm92ZSBhcyB3
aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbl0KK3dpbmRvdy5wZXJmb3JtYW5jZSBbc3RyaW5n
XQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UtcmVzb3VyY2UtdGltaW5n
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZDVlODJjNmE0YjJiYmU4YzVhN2M4OWQ1YWEzZDRlMDQxMjc4MTI2
MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1dpbmRvdy93aW5kb3ct
cHJvcGVydGllcy1wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmcuaHRtbApAQCAtMCwwICsxLDEw
NCBAQAorPHA+VGhpcyB0ZXN0IGR1bXBzIGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSBy
ZWFjaGFibGUgZnJvbSB0aGUgd2luZG93LnBlcmZvcm1hbmNlIG9iamVjdCwgYWxvbmcgd2l0aCB0
aGVpciB0eXBlcy48L3A+Cis8aHI+Cis8cHJlIGlkPSJwcmUiPjwvcHJlPgorCis8c2NyaXB0Pgor
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCitp
ZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBw
b3J0KHRydWUpOworICAgIAordmFyIGxvZ0J1ZmZlciA9IFtdOworZnVuY3Rpb24gbG9nKHMpCit7
CisgICAgbG9nQnVmZmVyLnB1c2gocyk7Cit9CisKK3ZhciBwcmUgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgncHJlJyk7CitmdW5jdGlvbiBmbHVzaExvZygpCit7CisgICAgdmFyIGxvZ01lc3Nh
Z2UgPSBsb2dCdWZmZXIuam9pbigiIik7CisgICAgcHJlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNy
ZWF0ZVRleHROb2RlKGxvZ01lc3NhZ2UpKTsKK30KKworZnVuY3Rpb24gdHJ5RXZhbChzdHJpbmcp
Cit7CisgICAgdHJ5IHsKKyAgICAgICAgcmV0dXJuIGV2YWwoc3RyaW5nKTsKKyAgICB9IGNhdGNo
IChlKSB7CisgICAgICAgIHJldHVybiBuZXcgU3RyaW5nKCJDYXVnaHQgZXhjZXB0aW9uOiAiICsg
ZSk7CisgICAgfQorfQorCitmdW5jdGlvbiB0eXBlT2ZOdWxsQXdhcmUodmFsdWUpCit7CisgICAg
aWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0IiAmJiB2YWx1ZSA9PSBudWxsKQorICAgICAgICBy
ZXR1cm4gIm51bGwiOworICAgIHJldHVybiB0eXBlb2YgdmFsdWU7Cit9CisKK2Z1bmN0aW9uIHR5
cGVTdHJpbmdOdWxsQXdhcmUodmFsdWUpCit7CisgICAgdmFyIHZhbHVlVHlwZSA9IHR5cGVPZk51
bGxBd2FyZSh2YWx1ZSk7CisgICAgcmV0dXJuIHZhbHVlVHlwZSA9PSAib2JqZWN0IgorICAgICAg
ICA/IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkKKyAgICAgICAgOiAiWyIg
KyB2YWx1ZVR5cGUgKyAiXSI7Cit9CisKK2Z1bmN0aW9uIGxvZ1ZhbHVlKHZhbHVlTmFtZSkKK3sK
KyAgICB2YXIgdmFsdWUgPSB0cnlFdmFsKHZhbHVlTmFtZSk7CisgICAgdmFyIHZhbHVlVHlwZSA9
IHR5cGVPZk51bGxBd2FyZSh2YWx1ZSk7CisKKyAgICAvLyBEb24ndCB0YWludCB0aGUgdGVzdCB3
aXRoIG91ciBvd24gdmFyaWFibGVzCisgICAgaWYgKHZhbHVlID09IGxvZ0J1ZmZlciB8fCB2YWx1
ZSA9PSBwcmUpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIERvbid0IHRhaW50IHRoZSB0ZXN0
IHdpdGggb3VyIG93biBwcm9wZXJ0aWVzCisgICAgaWYgKC9fX3Zpc2l0ZWRCeUxvZ1ZhbHVlX18v
LnRlc3QodmFsdWVOYW1lKSB8fCAvX19uYW1lV2hlblZpc2l0ZWRCeUxvZ1ZhbHVlX18vLnRlc3Qo
dmFsdWVOYW1lKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gV29yayBhcm91bmQgRmlyZWZv
eCBpbmZpbml0ZSByZWN1cnNpb24KKyAgICBpZiAoL1wuWzAtOV0vLnRlc3QodmFsdWVOYW1lKSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgLy8gQXZvaWQgaW5maW5pdGUgcmVjdXJzaW9uCisgICAg
aWYgKHZhbHVlVHlwZSA9PSAib2JqZWN0IiAmJiB2YWx1ZS5fX3Zpc2l0ZWRCeUxvZ1ZhbHVlX18p
IHsKKyAgICAgICAgbG9nKHZhbHVlTmFtZSArICIgW3ByaW50ZWQgYWJvdmUgYXMgIiArIHZhbHVl
Ll9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fICsgIl1cbiIpOworICAgICAgICByZXR1cm47
CisgICAgfQorCisgICAgbG9nKHZhbHVlTmFtZSArICIgIiArIHR5cGVTdHJpbmdOdWxsQXdhcmUo
dmFsdWUpICsgIlxuIik7CisKKyAgICBpZiAodmFsdWVUeXBlID09ICJvYmplY3QiKSB7CisgICAg
ICAgIHZhbHVlLl9fdmlzaXRlZEJ5TG9nVmFsdWVfXyA9IHRydWU7CisgICAgICAgIHZhbHVlLl9f
bmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fID0gdmFsdWVOYW1lOworICAgICAgICBsb2dQcm9w
ZXJ0aWVzKHZhbHVlLCB2YWx1ZU5hbWUpOworICAgIH0KK30KKworZnVuY3Rpb24gbG9nUHJvcGVy
dGllcyhvYmplY3QsIG9iamVjdE5hbWUpCit7CisgICAgdmFyIGFycmF5ID0gbmV3IEFycmF5Owor
ICAgIGZvciAodmFyIHByb3BlcnR5IGluIG9iamVjdCkgeworICAgICAgICBhcnJheS5wdXNoKHBy
b3BlcnR5KTsKKyAgICB9CisgICAgYXJyYXkuc29ydCgpOworICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgYXJyYXkubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgdmFyIHByb3BlcnR5ID0gYXJyYXlbaV07
CisgICAgICAgIGxvZ1ZhbHVlKG9iamVjdE5hbWUgKyAiLiIgKyBwcm9wZXJ0eSk7CisgICAgfQor
fQorCitsb2dWYWx1ZSgnd2luZG93LnBlcmZvcm1hbmNlJyk7Cit3aW5kb3cucGVyZm9ybWFuY2Uu
dGltaW5nID0gJ3RpbWluZyBpcyBub3QgcmVwbGFjZWFibGUnOworbG9nVmFsdWUoJ3dpbmRvdy5w
ZXJmb3JtYW5jZS50aW1pbmcnKTsKK3dpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uID0gJ25h
dmlnYXRpb24gaXMgbm90IHJlcGxhY2VhYmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFu
Y2UubmF2aWdhdGlvbicpOword2luZG93LnBlcmZvcm1hbmNlID0gJ3BlcmZvcm1hbmNlIGlzIHJl
cGxhY2VhYmxlJzsKK2xvZ1ZhbHVlKCd3aW5kb3cucGVyZm9ybWFuY2UnKTsKK2ZsdXNoTG9nKCk7
CitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdT
dXBwb3J0KGZhbHNlKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3dpbmRvdy1wcm9wZXJ0aWVzLXBlcmZvcm1hbmNlLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbAppbmRl
eCAwYThmODFlZjEyNTg4ODI1ZDVkMTZkNWE5ZDJkZGJlNzZiODY5MzBkLi4xYjEyZTE3Y2FmMDgx
NjhmYzNiOWY4Y2RiY2RiZTFjYzFkN2YwYzM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMtcGVyZm9ybWFuY2UuaHRt
bApAQCAtMzAsNyArMzAsNyBAQCBmdW5jdGlvbiB0cnlFdmFsKHN0cmluZykKIAogZnVuY3Rpb24g
dHlwZU9mTnVsbEF3YXJlKHZhbHVlKQogewotICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVj
dCIgJiYgdmFsdWUgPT0gbnVsbCkgLy87CisgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAib2JqZWN0
IiAmJiB2YWx1ZSA9PSBudWxsKQogICAgICAgICByZXR1cm4gIm51bGwiOwogICAgIHJldHVybiB0
eXBlb2YgdmFsdWU7CiB9CkBAIC02MSw3ICs2MSw3IEBAIGZ1bmN0aW9uIGxvZ1ZhbHVlKHZhbHVl
TmFtZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gQXZvaWQgaW5maW5pdGUgcmVjdXJzaW9u
Ci0gICAgaWYgKHZhbHVlVHlwZSA9PSAib2JqZWN0IiAmJiB2YWx1ZS5fX3Zpc2l0ZWRCeUxvZ1Zh
bHVlX18pIHsgLy87CisgICAgaWYgKHZhbHVlVHlwZSA9PSAib2JqZWN0IiAmJiB2YWx1ZS5fX3Zp
c2l0ZWRCeUxvZ1ZhbHVlX18pIHsKICAgICAgICAgbG9nKHZhbHVlTmFtZSArICIgW3ByaW50ZWQg
YWJvdmUgYXMgIiArIHZhbHVlLl9fbmFtZVdoZW5WaXNpdGVkQnlMb2dWYWx1ZV9fICsgIl1cbiIp
OwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3BlcmZvcm1hbmNl
LXJlc291cmNlLXRpbWluZy1lbnRyaWVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGNiYzUw
NGY5NTkyN2VkMWRlOTY4M2VmMTg3NTk4NDFhNDkxYTlmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1p
bmctZW50cmllcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQQVNTIGZvdW5kSW1nIGlz
IHRydWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJmb3JtYW5jZS9w
ZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9wZXJmb3JtYW5jZS9wZXJmb3JtYW5jZS1yZXNvdXJjZS10aW1pbmctZW50cmllcy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjVjYjg1OWI0Yzc0Yjk5YzYwYWY1NjdjNWI5YmE5NGUxZjY2YjIxNGUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BlcmZvcm1hbmNlL3Bl
cmZvcm1hbmNlLXJlc291cmNlLXRpbWluZy1lbnRyaWVzLmh0bWwKQEAgLTAsMCArMSwyOCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5pbnRlcm5h
bHMpCisgICAgICAgIGludGVybmFscy5zZXRSZXNvdXJjZVRpbWluZ1N1cHBvcnQodHJ1ZSk7Cisg
ICAgdmFyIHVybCA9ICIuLi8uLi9yZXNvdXJjZXMvc3F1YXJlMTAwLnBuZz8iOworICAgIHVybCAr
PSBNYXRoLnJhbmRvbSgpOworICAgIGRvY3VtZW50LndyaXRlKCI8aW1nIHNyYz0nIiArIHVybCAr
ICInPiIpOworCis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgICB2YXIgZm91bmRJbWcgPSBmYWxzZTsK
KyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgeworICAgICAg
ICB2YXIgcmVzb3VyY2VzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgncmVzb3VyY2Un
KTsKKyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXNvdXJjZXMubGVuZ3RoOyArK2kpIHsK
KyAgICAgICAgICAgIGlmIChyZXNvdXJjZXNbaV0ubmFtZS5pbmRleE9mKCJzcXVhcmUxMDAiKSAh
PSAtMSkgeworICAgICAgICAgICAgICAgIGZvdW5kSW1nID0gdHJ1ZTsKKyAgICAgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfTsKKyAgICAgICAgc2hvdWxkQmVUcnVl
KCJmb3VuZEltZyIpOworICAgICAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgICAg
IHdpbmRvdy5pbnRlcm5hbHMuc2V0UmVzb3VyY2VUaW1pbmdTdXBwb3J0KGZhbHNlKTsKKyAgICB9
KTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIv
Q2hhbmdlTG9nCmluZGV4IDQzOThiZTY3ZDkxNjZkM2QxZmIyZDdkMjEyZjM0M2ZmNWYzNTZlOGEu
LmVmMzIwZDI1OTYzNTdlY2I2NDkzMTE1YjIwMjA1Mzc1Yjc4ZjgyMDkgMTAwNjQ0Ci0tLSBhL0No
YW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxNi0wNS0wMSAgWW9h
diBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAgICBNb3ZlIFJlc291cmNlVGltaW5nIGJl
aGluZCBhIHJ1bnRpbWUgZmxhZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU3MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNl
bi4KKworICAgICAgICAqIFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZTogUmVtb3Zl
IHRoZSBQRVJGT1JNQU5DRV9USU1FTElORSBidWlsZCBmbGFnLgorCiAyMDE2LTA0LTI5ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMjAwMjMyLgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>