<?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>188282</bug_id>
          
          <creation_ts>2018-08-02 15:48:07 -0700</creation_ts>
          <short_desc>Control center controls disappear when pausing, locking device.</short_desc>
          <delta_ts>2019-07-12 09:51:47 -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>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=194340</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jonlee</cc>
    
    <cc>realdawei</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1447419</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 15:48:07 -0700</bug_when>
    <thetext>Control center controls disappear when pausing, locking device.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447420</commentid>
    <comment_count>1</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 15:48:36 -0700</bug_when>
    <thetext>&lt;rdar://problem/42497809&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447421</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-02 15:49:01 -0700</bug_when>
    <thetext>&lt;rdar://problem/42876980&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447423</commentid>
    <comment_count>3</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 15:55:45 -0700</bug_when>
    <thetext>&lt;rdar://problem/42497809&gt;e</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447424</commentid>
    <comment_count>4</comment_count>
      <attachid>346425</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 15:55:52 -0700</bug_when>
    <thetext>Created attachment 346425
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447425</commentid>
    <comment_count>5</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 15:57:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/42497809&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447427</commentid>
    <comment_count>6</comment_count>
      <attachid>346426</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 16:18:27 -0700</bug_when>
    <thetext>Created attachment 346426
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447437</commentid>
    <comment_count>7</comment_count>
      <attachid>346430</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-02 16:40:13 -0700</bug_when>
    <thetext>Created attachment 346430
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447483</commentid>
    <comment_count>8</comment_count>
      <attachid>346430</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-02 18:54:22 -0700</bug_when>
    <thetext>Comment on attachment 346430
Patch for landing

Clearing flags on attachment: 346430

Committed r234534: &lt;https://trac.webkit.org/changeset/234534&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447484</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-02 18:54:23 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447617</commentid>
    <comment_count>10</comment_count>
      <attachid>346430</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-08-03 08:00:26 -0700</bug_when>
    <thetext>Comment on attachment 346430
Patch for landing

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

&gt; Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm:147
&gt; -    : PlatformMediaSessionManager()
&gt; +    : MediaSessionManagerCocoa()

Normally it’s not necessary to explicitly initialize a base class if there are no arguments. Is there some reason it’s necessary here? Would be nice to leave this out if it’s optional.

&gt; Source/WebCore/platform/audio/mac/MediaSessionManagerMac.mm:58
&gt; -    : PlatformMediaSessionManager()
&gt; +    : MediaSessionManagerCocoa()

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447669</commentid>
    <comment_count>11</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2018-08-03 10:20:58 -0700</bug_when>
    <thetext>It looks like the new layout test from https://trac.webkit.org/changeset/234534/webkit has flakey timeouts on Sierra Release

Test history:
https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=platform%2Fmac%2Fmedia%2Faudio-session-category-video-paused.html

Diff:
--- /Volumes/Data/slave/highsierra-release-tests-wk2/build/layout-test-results/platform/mac/media/audio-session-category-video-paused-expected.txt
+++ /Volumes/Data/slave/highsierra-release-tests-wk2/build/layout-test-results/platform/mac/media/audio-session-category-video-paused-actual.txt
@@ -1,19 +1,5 @@
+#PID UNRESPONSIVE - com.apple.WebKit.WebContent.Development (pid 8882)
+FAIL: Timed out waiting for notifyDone to be called
 
-RUN(internals.settings.setShouldManageAudioSessionCategory(true))
-RUN(video.src = findMediaFile(&quot;video&quot;, &quot;../../../media/content/test&quot;))
-RUN(video.play())
-EVENT(playing)
-EXPECTED (internals.audioSessionCategory() == &apos;MediaPlayback&apos;) OK
-RUN(video.pause())
-EVENT(pause)
-EXPECTED (internals.audioSessionCategory() == &apos;MediaPlayback&apos;) OK
-RUN(internals.beginMediaSessionInterruption(&quot;system&quot;))
-EXPECTED (internals.audioSessionCategory() == &apos;None&apos;) OK
-RUN(video.play())
-EVENT(playing)
-EXPECTED (internals.audioSessionCategory() == &apos;MediaPlayback&apos;) OK
-RUN(video.src = &quot;&quot;)
-RUN(video.load())
-EXPECTED (internals.audioSessionCategory() == &apos;None&apos;) OK
-END OF TEST
-
+#EOF
+#EOF</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447671</commentid>
    <comment_count>12</comment_count>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-08-03 10:27:24 -0700</bug_when>
    <thetext>(In reply to WebKit Commit Bot from comment #8)
&gt; Comment on attachment 346430 [details]
&gt; Patch for landing
&gt; 
&gt; Clearing flags on attachment: 346430
&gt; 
&gt; Committed r234534: &lt;https://trac.webkit.org/changeset/234534&gt;


Also seeing API test failure on iOS after this revision:

https://build.webkit.org/builders/Apple%20iOS%2011%20Simulator%20Release%20WK2%20%28Tests%29/builds/6587/steps/run-api-tests/logs/stdio

    TestWebKitAPI.WebKitLegacy.AudioSessionCategoryIOS
        2018-08-02 21:23:51.737 TestWebKitAPI[75994:322566199] *** Warning: &lt;AVPlayerViewController: 0x7fd3ad80b000&gt; is trying to enter full screen, but is not in its view&apos;s window&apos;s view controller hierarchy. This results in undefined behavior.
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3ad80b000) exitFullScreenAnimated:completionHandler:]!
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3ad80b000) exitFullScreenAnimated:completionHandler:]!
        2018-08-02 21:23:51.855 TestWebKitAPI[75994:322566199] *** Warning: &lt;AVPlayerViewController: 0x7fd3ae013800&gt; is trying to enter full screen, but is not in its view&apos;s window&apos;s view controller hierarchy. This results in undefined behavior.
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3ae013800) exitFullScreenAnimated:completionHandler:]!
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3ae013800) exitFullScreenAnimated:completionHandler:]!
        2018-08-02 21:23:51.970 TestWebKitAPI[75994:322566199] *** Warning: &lt;AVPlayerViewController: 0x7fd3b0006a00&gt; is trying to enter full screen, but is not in its view&apos;s window&apos;s view controller hierarchy. This results in undefined behavior.
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3b0006a00) exitFullScreenAnimated:completionHandler:]!
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3b0006a00) exitFullScreenAnimated:completionHandler:]!
        &gt;&gt;&gt;&gt; frameSizeChanged = 4096
        &gt;&gt;&gt;&gt; frameSizeChanged = 4096
        2018-08-02 21:23:52.167 TestWebKitAPI[75994:322566199] *** Warning: &lt;AVPlayerViewController: 0x7fd3ad84f000&gt; is trying to enter full screen, but is not in its view&apos;s window&apos;s view controller hierarchy. This results in undefined behavior.
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3ad84f000) exitFullScreenAnimated:completionHandler:]!
        -[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View needs to be loaded before you can call -[AVPlayerViewController (0x7fd3ad84f000) exitFullScreenAnimated:completionHandler:]!
        2018-08-02 21:23:52.303 TestWebKitAPI[75994:322566199] *** Warning: &lt;AVPlayerViewController: 0x7fd3b0007000&gt; is trying to enter full screen, but is not in its view&apos;s window&apos;s view controller hierarchy. This results in undefined behavior.
        
        /Volumes/Data/slave/ios-simulator-11-release/build/Tools/TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:126
        Value of: [[getAVAudioSessionClass() sharedInstance] category]
          Actual: &quot;AVAudioSessionCategoryPlayback&quot;
        Expected: getAVAudioSessionCategoryAmbient()
        Which is: &quot;AVAudioSessionCategoryAmbient&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1447701</commentid>
    <comment_count>13</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-03 11:14:11 -0700</bug_when>
    <thetext>API test fixed in r234547: &lt;http://trac.webkit.org/r234547&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448268</commentid>
    <comment_count>14</comment_count>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-08-06 15:43:27 -0700</bug_when>
    <thetext>API test appears to be fixed, but still seeing frequent timeouts:

https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=platform%2Fmac%2Fmedia%2Faudio-session-category-video-paused.html

Sample Diff:
--- /Volumes/Data/slave/highsierra-release-tests-wk2/build/layout-test-results/platform/mac/media/audio-session-category-video-paused-expected.txt
+++ /Volumes/Data/slave/highsierra-release-tests-wk2/build/layout-test-results/platform/mac/media/audio-session-category-video-paused-actual.txt
@@ -1,19 +1,5 @@
+#PID UNRESPONSIVE - com.apple.WebKit.WebContent.Development (pid 69042)
+FAIL: Timed out waiting for notifyDone to be called
 
-RUN(internals.settings.setShouldManageAudioSessionCategory(true))
-RUN(video.src = findMediaFile(&quot;video&quot;, &quot;../../../media/content/test&quot;))
-RUN(video.play())
-EVENT(playing)
-EXPECTED (internals.audioSessionCategory() == &apos;MediaPlayback&apos;) OK
-RUN(video.pause())
-EVENT(pause)
-EXPECTED (internals.audioSessionCategory() == &apos;MediaPlayback&apos;) OK
-RUN(internals.beginMediaSessionInterruption(&quot;system&quot;))
-EXPECTED (internals.audioSessionCategory() == &apos;None&apos;) OK
-RUN(video.play())
-EVENT(playing)
-EXPECTED (internals.audioSessionCategory() == &apos;MediaPlayback&apos;) OK
-RUN(video.src = &quot;&quot;)
-RUN(video.load())
-EXPECTED (internals.audioSessionCategory() == &apos;None&apos;) OK
-END OF TEST
-
+#EOF
+#EOF</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448606</commentid>
    <comment_count>15</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-07 15:28:04 -0700</bug_when>
    <thetext>We may have to covert this test from a LayoutTest (where previous and subsequent tests can mess with state of global objects) to an API test (where we can fully control the lifetime of the test).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448791</commentid>
    <comment_count>16</comment_count>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-08-08 11:27:39 -0700</bug_when>
    <thetext>(In reply to Jer Noble from comment #15)
&gt; We may have to covert this test from a LayoutTest (where previous and
&gt; subsequent tests can mess with state of global objects) to an API test
&gt; (where we can fully control the lifetime of the test).

Okay should we skip in the interim to reduce the noise on the bots?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454971</commentid>
    <comment_count>17</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-08-29 15:58:39 -0700</bug_when>
    <thetext>(In reply to David Fenton (:realdawei) from comment #16)
&gt; (In reply to Jer Noble from comment #15)
&gt; &gt; We may have to covert this test from a LayoutTest (where previous and
&gt; &gt; subsequent tests can mess with state of global objects) to an API test
&gt; &gt; (where we can fully control the lifetime of the test).
&gt; 
&gt; Okay should we skip in the interim to reduce the noise on the bots?
This is still frequently timing out on the bots. What is the plan here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455266</commentid>
    <comment_count>18</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2018-08-30 10:27:41 -0700</bug_when>
    <thetext>(In reply to David Fenton (:realdawei) from comment #12)
&gt; (In reply to WebKit Commit Bot from comment #8)
&gt; &gt; Comment on attachment 346430 [details]
&gt; &gt; Patch for landing
&gt; &gt; 
&gt; &gt; Clearing flags on attachment: 346430
&gt; &gt; 
&gt; &gt; Committed r234534: &lt;https://trac.webkit.org/changeset/234534&gt;
&gt; 
&gt; 
&gt; Also seeing API test failure on iOS after this revision:
&gt; 
&gt; https://build.webkit.org/builders/
&gt; Apple%20iOS%2011%20Simulator%20Release%20WK2%20%28Tests%29/builds/6587/steps/
&gt; run-api-tests/logs/stdio
&gt; 
&gt;     TestWebKitAPI.WebKitLegacy.AudioSessionCategoryIOS
&gt;         2018-08-02 21:23:51.737 TestWebKitAPI[75994:322566199] *** Warning:
&gt; &lt;AVPlayerViewController: 0x7fd3ad80b000&gt; is trying to enter full screen, but
&gt; is not in its view&apos;s window&apos;s view controller hierarchy. This results in
&gt; undefined behavior.
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3ad80b000)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3ad80b000)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         2018-08-02 21:23:51.855 TestWebKitAPI[75994:322566199] *** Warning:
&gt; &lt;AVPlayerViewController: 0x7fd3ae013800&gt; is trying to enter full screen, but
&gt; is not in its view&apos;s window&apos;s view controller hierarchy. This results in
&gt; undefined behavior.
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3ae013800)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3ae013800)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         2018-08-02 21:23:51.970 TestWebKitAPI[75994:322566199] *** Warning:
&gt; &lt;AVPlayerViewController: 0x7fd3b0006a00&gt; is trying to enter full screen, but
&gt; is not in its view&apos;s window&apos;s view controller hierarchy. This results in
&gt; undefined behavior.
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3b0006a00)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3b0006a00)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         &gt;&gt;&gt;&gt; frameSizeChanged = 4096
&gt;         &gt;&gt;&gt;&gt; frameSizeChanged = 4096
&gt;         2018-08-02 21:23:52.167 TestWebKitAPI[75994:322566199] *** Warning:
&gt; &lt;AVPlayerViewController: 0x7fd3ad84f000&gt; is trying to enter full screen, but
&gt; is not in its view&apos;s window&apos;s view controller hierarchy. This results in
&gt; undefined behavior.
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3ad84f000)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         -[AVPlayerViewController exitFullScreenAnimated:completionHandler:]
&gt; failed with error View needs to be loaded before you can call
&gt; -[AVPlayerViewController (0x7fd3ad84f000)
&gt; exitFullScreenAnimated:completionHandler:]!
&gt;         2018-08-02 21:23:52.303 TestWebKitAPI[75994:322566199] *** Warning:
&gt; &lt;AVPlayerViewController: 0x7fd3b0007000&gt; is trying to enter full screen, but
&gt; is not in its view&apos;s window&apos;s view controller hierarchy. This results in
&gt; undefined behavior.
&gt;         
&gt;        
&gt; /Volumes/Data/slave/ios-simulator-11-release/build/Tools/TestWebKitAPI/Tests/
&gt; WebKitLegacy/ios/AudioSessionCategoryIOS.mm:126
&gt;         Value of: [[getAVAudioSessionClass() sharedInstance] category]
&gt;           Actual: &quot;AVAudioSessionCategoryPlayback&quot;
&gt;         Expected: getAVAudioSessionCategoryAmbient()
&gt;         Which is: &quot;AVAudioSessionCategoryAmbient&quot;

I saw this API failure again:
https://build.webkit.org/builders/Apple%20iOS%2011%20Simulator%20Release%20WK2%20%28Tests%29/builds/7126/steps/run-api-tests/logs/stdio

From:
https://build.webkit.org/builders/Apple%20iOS%2011%20Simulator%20Debug%20WK2%20(Tests)/builds/6187</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455268</commentid>
    <comment_count>19</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-08-30 10:32:01 -0700</bug_when>
    <thetext>(In reply to Truitt Savell from comment #18)
&gt; I saw this API failure again:
&gt; https://build.webkit.org/builders/
&gt; Apple%20iOS%2011%20Simulator%20Release%20WK2%20%28Tests%29/builds/7126/steps/
&gt; run-api-tests/logs/stdio
&gt; 
&gt; From:
&gt; https://build.webkit.org/builders/
&gt; Apple%20iOS%2011%20Simulator%20Debug%20WK2%20(Tests)/builds/6187

This looks like a crash, not a failure. Could you please attach the crash log to a new bug, and relate it to this one?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455285</commentid>
    <comment_count>20</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2018-08-30 10:53:52 -0700</bug_when>
    <thetext>Bug to track Crash: https://bugs.webkit.org/show_bug.cgi?id=189158</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>346425</attachid>
            <date>2018-08-02 15:55:52 -0700</date>
            <delta_ts>2018-08-02 16:18:25 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-188282-20180802155551.patch</filename>
            <type>text/plain</type>
            <size>20628</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM0NDgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2YwOGMyYWI3YTBmZWJl
YWJmOGY4ZTEzNThjNDkyOGMwZThjZDM1ZS4uOWMwYzg2Y2QwYzY1YjM5M2Q5ODUwZmY2OWYzZGQ0
ZDc5MmE5ODlkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE4LTA4LTAyICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIENvbnRyb2wgY2VudGVyIGNv
bnRyb2xzIGRpc2FwcGVhciB3aGVuIHBhdXNpbmcsIGxvY2tpbmcgZGV2aWNlLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MjgyCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS80MjQ5NzgwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxz
b24uCisKKyAgICAgICAgVGVzdDogcGxhdGZvcm0vbWFjL21lZGlhL2F1ZGlvLXNlc3Npb24tY2F0
ZWdvcnktdmlkZW8tcGF1c2VkLmh0bWwKKworICAgICAgICBNZWRpYVJlbW90ZSB3aWxsIHNldCBh
bnkgYXBwIHdob3NlIGF1ZGlvIHNlc3Npb24gY2F0ZWdvcnkgY2hhbmdlcyBmcm9tIE1lZGlhUGxh
eWJhY2sgdG8KKyAgICAgICAgQW1iaWVudCBhcyBub3QgZWxpZ2FibGUgZm9yIGJlaW5nIHRoZSAi
bm93IHBsYXlpbmciIGFwcC4gUHJldmlvdXNseSwgZHVlIHRvIHRoZSBvcmRlcmluZyBvZgorICAg
ICAgICBldmVudHMsIHdlIG5ldmVyIG1vdmVkIGZyb20gTWVkaWFQbGF5YmFjayB0byBBbWJpZW50
IHdoZW4gcGF1c2luZyA8dmlkZW8+LCBldmVuIHRob3VnaCB0aGF0CisgICAgICAgIHdhcyB0aGUg
aW50ZW50aW9uLiBOb3cgdGhhdCB0aGF0IGJ1ZyBpcyBmaXhlZCwgaXQgZXhwb3NlZCB0aGlzIG5l
dyBpc3N1ZSB3aXRoIE1lZGlhUmVtb3RlLgorCisgICAgICAgIFRvIHNvbHZlIHRoZSBuZXcgaXNz
dWUsIG1ha2Ugb3VyIGF1ZGlvIHNlc3Npb24gY2F0ZWdvcnkgcG9saWN5IG1vcmUgZXhwbGljaXQ6
IG9uY2Ugd2UgYXJlIGluCisgICAgICAgIE1lZGlhUGxheWJhY2sgY2F0ZWdvcnksIHdlIHdpbGwg
cmVtYWluIHNvIGFzIGxvbmcgYXMgdGhlIG1lZGlhIGVsZW1lbnQgaW4gcXVlc3RvbiBzdGF5cwor
ICAgICAgICBsb2FkZWQsIGhhcyBwbGF5ZWQsIGFuZCBpcyBuZXZlciBpbnRlcnJ1cHRlZCBieSB0
aGUgc3lzdGVtLgorCisgICAgICAgIE1ha2UgTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hIGEgcHJv
cGVyIHN1YmNsYXNzIG9mIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlciwgYW5kIG1ha2UKKyAg
ICAgICAgTWVkaWFTZXNzaW9uTWFuYWdlcmlPUyBhbmQgLU1hYyBzdWJjbGFzc2VzIG9mIHRoZSAt
Q29jb2EgY2xhc3MuIEFkZCBhIG5ldworICAgICAgICBtX2hhc1BsYXllZFNpbmNlTGFzdEludGVy
cnVwdGlvbiBpdmFyIHRvIFBsYXRmb3JtTWVkaWFTZXNzaW9uLCBzZXQgd2hlbiB0aGUgc3RhdGUo
KSBjaGFuZ2VzCisgICAgICAgIHRvIFBsYXlpbmcsIGFuZCBjbGVhcmVkIGR1cmluZyBhbiBpbnRl
cnJ1cHRpb24uIENoZWNrIHRoaXMgZmxhZyB3aGVuIGRlY2lkaW5nIHdoYXQgYXVkaW8gCisgICAg
ICAgIHNlc3Npbm8gY2F0ZWdvcnkgdG8gc2V0IGluIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS4K
KworICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6c2V0U3RhdGUpOgorICAgICAgICAqIHBsYXRmb3Jt
L2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9y
bU1lZGlhU2Vzc2lvbjo6aGFzUGxheWVkU2luY2VMYXN0SW50ZXJydXB0aW9uIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uOjpjbGVhckhhc1BsYXllZFNpbmNl
TGFzdEludGVycnVwdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRp
YVNlc3Npb25NYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNz
aW9uTWFuYWdlcjo6dXBkYXRlU2Vzc2lvblN0YXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6YXVkaW9IYXJkd2FyZUxpc3RlbmVyKToK
KyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBkYXRlU2Vz
c2lvblN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25N
YW5hZ2VyQ29jb2EuY3BwOgorICAgICAgICAoTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjp1cGRh
dGVTZXNzaW9uU3RhdGUpOgorICAgICAgICAoTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjpiZWdp
bkludGVycnVwdGlvbik6CisgICAgICAgIChQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVw
ZGF0ZVNlc3Npb25TdGF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vY29j
b2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmg6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmg6CisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVNlc3Npb25NYW5hZ2VyaU9TOjpNZWRpYVNlc3Npb25NYW5hZ2VyaU9TKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oOgorICAgICAgICAq
IHBsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFTZXNzaW9uTWFuYWdlck1hYzo6TWVkaWFTZXNzaW9uTWFuYWdlck1hYyk6
CisKIDIwMTgtMDctMjAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW2lPU10gUGlQIGdldHMgaW50byBhIGJhZCBzdGF0ZSBpZiBlbnRlcmluZyBQaVAgZmFpbHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCA0ODc2YWM4MGMxNGI3OTA2NDc4YTY4ZjkxYWYyN2M0NjRjODk4NGRiLi4xZWYzZjY4ODg5
ZGJjODI5Y2NjZDAzYjJkNDk5NTk4MjUxZWU3OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMzE4Niw2ICsxMzE4Niw3IEBA
CiAJCUNEMUU3MzQ2MTY3QkM3OEUwMDlBODg1RCAvKiBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0VHJhY2tSZXByZXNl
bnRhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjI1QzA5MUM0NkZC
RjQwMDE0MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQ29yZU5TVVJMU2Vzc2lvbi5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0QyMjVDMEExQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VS
TFNlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZU5TVVJM
U2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDIyN0UzNjIxMTNBRUZB
MDBEMjg1QUYgLyogTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1l
ZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5oOyBwYXRoID0gY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdl
ckNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUwMTQ1NzVDMUIw
MDc4MjA3RCAvKiBNZWRpYUNvbnRyb2xsZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhQ29udHJvbGxlci5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUyMTQ1NzY3NTgwMDc4MjA3RCAv
KiBKU01lZGlhQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU01lZGlhQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUNEMjdGNkUzMTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlhQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhQ29udHJvbGxlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjQ2NzAsNiArMjQ2NzEsNyBAQAogCQkJaXNhID0gUEJYR3Jv
dXA7CiAJCQljaGlsZHJlbiA9ICgKIAkJCQlDRDY2OUQ2NjFEMjMyREZGMDA0RDE4NjYgLyogTWVk
aWFTZXNzaW9uTWFuYWdlckNvY29hLmNwcCAqLywKKwkJCQlDRDIyN0UzNjIxMTNBRUZBMDBEMjg1
QUYgLyogTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8sCiAJCQkJQ0RFNjY3QTIxRTRCQkYx
NTAwRTgxNTRBIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5jcHAgKi8sCiAJCQkJQ0RFNjY3QTMxRTRC
QkYxNTAwRTgxNTRBIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5oICovLAogCQkJKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmNw
cAppbmRleCBlZTE5YjY3NTMwZWNjMWNiYzc0MmQ1Y2U5NDM1YjcxNDk5YTBlYjg4Li5mYTk5ZmVl
M2NiOTBjYzA2YjRjOTc5MzhhYTNlMDNkNzJjNWMxOWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb24uY3BwCkBAIC0xMTcs
NiArMTE3LDggQEAgdm9pZCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6c2V0U3RhdGUoU3RhdGUgc3Rh
dGUpCiAKICAgICBJTkZPX0xPRyhMT0dJREVOVElGSUVSLCBzdGF0ZSk7CiAgICAgbV9zdGF0ZSA9
IHN0YXRlOworICAgIGlmIChtX3N0YXRlID09IFN0YXRlOjpQbGF5aW5nKQorICAgICAgICBtX2hh
c1BsYXllZFNpbmNlTGFzdEludGVycnVwdGlvbiA9IHRydWU7CiAgICAgUGxhdGZvcm1NZWRpYVNl
c3Npb25NYW5hZ2VyOjpzaGFyZWRNYW5hZ2VyKCkuc2Vzc2lvblN0YXRlQ2hhbmdlZCgqdGhpcyk7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3Jt
TWVkaWFTZXNzaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1l
ZGlhU2Vzc2lvbi5oCmluZGV4IGZkNmYwOGNkZmJkOWVhNzg5OTFkNTk2NjYzNGMwODczMmU4ODA4
Y2EuLmQ5NzY3OWRiOTQ1OTFhZjEyMTBlMDA3MjU4YjY3YzlkYTBmYWRjOWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb24uaApA
QCAtMTc2LDYgKzE3Niw5IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NOb3dQ
bGF5aW5nQ29udHJvbHNWaXNpYmlsaXR5KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAorICAg
IGJvb2wgaGFzUGxheWVkU2luY2VMYXN0SW50ZXJydXB0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9o
YXNQbGF5ZWRTaW5jZUxhc3RJbnRlcnJ1cHRpb247IH0KKyAgICB2b2lkIGNsZWFySGFzUGxheWVk
U2luY2VMYXN0SW50ZXJydXB0aW9uKCkgeyBtX2hhc1BsYXllZFNpbmNlTGFzdEludGVycnVwdGlv
biA9IGZhbHNlOyB9CisKIHByb3RlY3RlZDoKICAgICBQbGF0Zm9ybU1lZGlhU2Vzc2lvbkNsaWVu
dCYgY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnQ7IH0KIApAQCAtMTk0LDYgKzE5Nyw3
IEBAIHByaXZhdGU6CiAgICAgaW50IG1faW50ZXJydXB0aW9uQ291bnQgeyAwIH07CiAgICAgYm9v
bCBtX25vdGlmeWluZ0NsaWVudDsKICAgICBib29sIG1faXNQbGF5aW5nVG9XaXJlbGVzc1BsYXli
YWNrVGFyZ2V0IHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzUGxheWVkU2luY2VMYXN0SW50ZXJy
dXB0aW9uIHsgZmFsc2UgfTsKIAogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgIFJlZjxj
b25zdCBMb2dnZXI+IG1fbG9nZ2VyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKaW5kZXggOTUz
MTczMTExOTA0NzJmY2ExYjc3ZjNiMjI5Mjk3M2E0NmRmMTBhYS4uODlmZTU1MGE3NjFkZGZlYmNh
ZDdjNDIwMzBkNTMxMmYxNDQ2NGUxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwCkBAIC0z
NTcsMTIgKzM1Nyw2IEBAIHZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjpzZXNzaW9u
Q2FuUHJvZHVjZUF1ZGlvQ2hhbmdlZChQbGF0Zm9ybU1lZGlhU2VzCiAgICAgdXBkYXRlU2Vzc2lv
blN0YXRlKCk7CiB9CiAKLSNpZiAhUExBVEZPUk0oQ09DT0EpCi12b2lkIFBsYXRmb3JtTWVkaWFT
ZXNzaW9uTWFuYWdlcjo6dXBkYXRlU2Vzc2lvblN0YXRlKCkKLXsKLX0KLSNlbmRpZgotCiB2b2lk
IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6ZGlkUmVjZWl2ZVJlbW90ZUNvbnRyb2xDb21t
YW5kKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb250cm9sQ29tbWFuZFR5cGUgY29tbWFu
ZCwgY29uc3QgUGxhdGZvcm1NZWRpYVNlc3Npb246OlJlbW90ZUNvbW1hbmRBcmd1bWVudCogYXJn
dW1lbnQpCiB7CiAgICAgUGxhdGZvcm1NZWRpYVNlc3Npb24qIGFjdGl2ZVNlc3Npb24gPSBjdXJy
ZW50U2Vzc2lvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9h
dWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaAppbmRleCBhZDM2MzgzOTY4MzM3MTI2
ODQ3NmIwYjg1M2I2MGJiZjZmNTBkY2I0Li40YzlmZTZlZjI1ZThkNDViYzljMWI4YmVlMDI5MTEz
MjEzMzlhYTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0
Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9h
dWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaApAQCAtNjYsNyArNjYsNyBAQCBwdWJs
aWM6CiAgICAgYm9vbCB3aWxsSWdub3JlU3lzdGVtSW50ZXJydXB0aW9ucygpIGNvbnN0IHsgcmV0
dXJuIG1fd2lsbElnbm9yZVN5c3RlbUludGVycnVwdGlvbnM7IH0KICAgICB2b2lkIHNldFdpbGxJ
Z25vcmVTeXN0ZW1JbnRlcnJ1cHRpb25zKGJvb2wgaWdub3JlKSB7IG1fd2lsbElnbm9yZVN5c3Rl
bUludGVycnVwdGlvbnMgPSBpZ25vcmU7IH0KIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYmVn
aW5JbnRlcnJ1cHRpb24oUGxhdGZvcm1NZWRpYVNlc3Npb246OkludGVycnVwdGlvblR5cGUpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgdm9pZCBiZWdpbkludGVycnVwdGlvbihQbGF0Zm9y
bU1lZGlhU2Vzc2lvbjo6SW50ZXJydXB0aW9uVHlwZSk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBlbmRJbnRlcnJ1cHRpb24oUGxhdGZvcm1NZWRpYVNlc3Npb246OkVuZEludGVycnVwdGlvbkZs
YWdzKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYXBwbGljYXRpb25XaWxsQmVjb21lSW5h
Y3RpdmUoKSBjb25zdDsKQEAgLTEyMywxMCArMTIzLDEyIEBAIHByb3RlY3RlZDoKICAgICBQbGF0
Zm9ybU1lZGlhU2Vzc2lvbiogZmluZFNlc3Npb24oY29uc3QgRnVuY3Rpb248Ym9vbChQbGF0Zm9y
bU1lZGlhU2Vzc2lvbiYsIHNpemVfdCk+JikgY29uc3Q7CiAgICAgYm9vbCBhbnlPZlNlc3Npb25z
KGNvbnN0IEZ1bmN0aW9uPGJvb2woUGxhdGZvcm1NZWRpYVNlc3Npb24mLCBzaXplX3QpPiYgcHJl
ZGljYXRlKSBjb25zdCB7IHJldHVybiBmaW5kU2Vzc2lvbihwcmVkaWNhdGUpOyB9CiAKKyAgICBB
dWRpb0hhcmR3YXJlTGlzdGVuZXIqIGF1ZGlvSGFyZHdhcmVMaXN0ZW5lcigpIHsgcmV0dXJuIG1f
YXVkaW9IYXJkd2FyZUxpc3RlbmVyLmdldCgpOyB9CisKIHByaXZhdGU6CiAgICAgZnJpZW5kIGNs
YXNzIEludGVybmFsczsKIAotICAgIHZvaWQgdXBkYXRlU2Vzc2lvblN0YXRlKCk7CisgICAgdmly
dHVhbCB2b2lkIHVwZGF0ZVNlc3Npb25TdGF0ZSgpIHsgfQogCiAgICAgLy8gUmVtb3RlQ29tbWFu
ZExpc3RlbmVyQ2xpZW50CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWRSZWNlaXZlUmVtb3Rl
Q29udHJvbENvbW1hbmQoUGxhdGZvcm1NZWRpYVNlc3Npb246OlJlbW90ZUNvbnRyb2xDb21tYW5k
VHlwZSwgY29uc3QgUGxhdGZvcm1NZWRpYVNlc3Npb246OlJlbW90ZUNvbW1hbmRBcmd1bWVudCop
IG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vY29j
b2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5jcHAKaW5kZXggYjNlMTYyNzlk
ZjhiOTVjNTE1MjZkNTc3MmY1NDgwYjhhMzdkY2QxYS4uNWRhNTEyN2NiNjM5MWUzZmEwZmI2Y2Fl
MDM1ZGI3MTYyMjgxYmRkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuY3BwCkBAIC0y
NCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIgorI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXJD
b2NvYS5oIgogCiAjaWYgVVNFKEFVRElPX1NFU1NJT04pCiAKQEAgLTM4LDcgKzM4LDcgQEAgdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBzdGF0aWMgY29uc3Qgc2l6ZV90IGtXZWJBdWRpb0J1ZmZl
clNpemUgPSAxMjg7CiBzdGF0aWMgY29uc3Qgc2l6ZV90IGtMb3dQb3dlclZpZGVvQnVmZmVyU2l6
ZSA9IDQwOTY7CiAKLXZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjp1cGRhdGVTZXNz
aW9uU3RhdGUoKQordm9pZCBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2E6OnVwZGF0ZVNlc3Npb25T
dGF0ZSgpCiB7CiAgICAgTE9HKE1lZGlhLCAiUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjpz
Y2hlZHVsZVVwZGF0ZVNlc3Npb25TdGF0ZSgpIC0gdHlwZXM6IFZpZGVvKCVkKSwgQXVkaW8oJWQp
LCBXZWJBdWRpbyglZCkiLCBjb3VudChQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6VmlkZW8pLCBjb3Vu
dChQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6QXVkaW8pLCBjb3VudChQbGF0Zm9ybU1lZGlhU2Vzc2lv
bjo6V2ViQXVkaW8pKTsKIApAQCAtNTMsNyArNTMsNyBAQCB2b2lkIFBsYXRmb3JtTWVkaWFTZXNz
aW9uTWFuYWdlcjo6dXBkYXRlU2Vzc2lvblN0YXRlKCkKICAgICAgICAgLy8gY2F1c2VzIG1lZGlh
IExheW91dFRlc3RzIHRvIGZhaWwgb24gMTAuOC4KIAogICAgICAgICBzaXplX3QgYnVmZmVyU2l6
ZTsKLSAgICAgICAgaWYgKG1fYXVkaW9IYXJkd2FyZUxpc3RlbmVyICYmIG1fYXVkaW9IYXJkd2Fy
ZUxpc3RlbmVyLT5vdXRwdXREZXZpY2VTdXBwb3J0c0xvd1Bvd2VyTW9kZSgpKQorICAgICAgICBp
ZiAoYXVkaW9IYXJkd2FyZUxpc3RlbmVyKCkgJiYgYXVkaW9IYXJkd2FyZUxpc3RlbmVyKCktPm91
dHB1dERldmljZVN1cHBvcnRzTG93UG93ZXJNb2RlKCkpCiAgICAgICAgICAgICBidWZmZXJTaXpl
ID0ga0xvd1Bvd2VyVmlkZW9CdWZmZXJTaXplOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBi
dWZmZXJTaXplID0ga1dlYkF1ZGlvQnVmZmVyU2l6ZTsKQEAgLTcwLDcgKzcwLDcgQEAgdm9pZCBQ
bGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCiAgICAgICAg
IGF1dG8gdHlwZSA9IHNlc3Npb24ubWVkaWFUeXBlKCk7CiAgICAgICAgIGlmICh0eXBlID09IFBs
YXRmb3JtTWVkaWFTZXNzaW9uOjpXZWJBdWRpbykKICAgICAgICAgICAgIGhhc1dlYkF1ZGlvVHlw
ZSA9IHRydWU7Ci0gICAgICAgIGlmICgodHlwZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6Vmlk
ZW9BdWRpbyB8fCB0eXBlID09IFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpBdWRpbykgJiYgc2Vzc2lv
bi5jYW5Qcm9kdWNlQXVkaW8oKSAmJiBzZXNzaW9uLnN0YXRlKCkgPT0gUGxhdGZvcm1NZWRpYVNl
c3Npb246OlBsYXlpbmcpCisgICAgICAgIGlmICgodHlwZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bjo6VmlkZW9BdWRpbyB8fCB0eXBlID09IFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpBdWRpbykgJiYg
c2Vzc2lvbi5jYW5Qcm9kdWNlQXVkaW8oKSAmJiBzZXNzaW9uLmhhc1BsYXllZFNpbmNlTGFzdElu
dGVycnVwdGlvbigpKQogICAgICAgICAgICAgaGFzQXVkaWJsZUF1ZGlvT3JWaWRlb01lZGlhVHlw
ZSA9IHRydWU7CiAgICAgICAgIGlmIChzZXNzaW9uLmlzUGxheWluZ1RvV2lyZWxlc3NQbGF5YmFj
a1RhcmdldCgpKQogICAgICAgICAgICAgaGFzQXVkaWJsZUF1ZGlvT3JWaWRlb01lZGlhVHlwZSA9
IHRydWU7CkBAIC04Nyw0ICs4NywxNSBAQCB2b2lkIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdl
cjo6dXBkYXRlU2Vzc2lvblN0YXRlKCkKICAgICAgICAgQXVkaW9TZXNzaW9uOjpzaGFyZWRTZXNz
aW9uKCkuc2V0Q2F0ZWdvcnkoQXVkaW9TZXNzaW9uOjpOb25lKTsKIH0KIAordm9pZCBNZWRpYVNl
c3Npb25NYW5hZ2VyQ29jb2E6OmJlZ2luSW50ZXJydXB0aW9uKFBsYXRmb3JtTWVkaWFTZXNzaW9u
OjpJbnRlcnJ1cHRpb25UeXBlIHR5cGUpCit7CisgICAgaWYgKHR5cGUgPT0gUGxhdGZvcm1NZWRp
YVNlc3Npb246OkludGVycnVwdGlvblR5cGU6OlN5c3RlbUludGVycnVwdGlvbikgeworICAgICAg
ICBmb3JFYWNoU2Vzc2lvbihbXSAoUGxhdGZvcm1NZWRpYVNlc3Npb24mIHNlc3Npb24sIHNpemVf
dCkgeworICAgICAgICAgICAgc2Vzc2lvbi5jbGVhckhhc1BsYXllZFNpbmNlTGFzdEludGVycnVw
dGlvbigpOworICAgICAgICB9KTsKKyAgICB9CisKKyAgICBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1h
bmFnZXI6OmJlZ2luSW50ZXJydXB0aW9uKHR5cGUpOworfQorCiAjZW5kaWYgLy8gVVNFKEFVRElP
X1NFU1NJT04pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9jb2Nv
YS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxZmVhMTQ1
NGQ3ZGJkMWQ1MzVlY2Q3NTcwY2YyYjk5MGYwMzBmOTEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2Eu
aApAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBQTEFU
Rk9STShDT0NPQSkKKworI2luY2x1ZGUgIlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYSA6
IHB1YmxpYyBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIgeworcHVibGljOgorICAgIHZvaWQg
dXBkYXRlU2Vzc2lvblN0YXRlKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBiZWdpbkludGVycnVwdGlv
bihQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6SW50ZXJydXB0aW9uVHlwZSkgb3ZlcnJpZGU7Cit9Owor
Cit9CisKKyNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oCmluZGV4
IGVlMTkzZjRmNTI3NTA2NTQxOGE5ODQ0YWE2ZGNiMjUxMDE4NmE0NWQuLmI5YTg2MDg0ZWVjMmJl
OTMxOTZlNzdkMDUwZjViMjdkM2Q4NjAzODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MuaApAQCAtMjcs
NyArMjcsNyBAQAogCiAjaWYgUExBVEZPUk0oSU9TKQogCi0jaW5jbHVkZSAiUGxhdGZvcm1NZWRp
YVNlc3Npb25NYW5hZ2VyLmgiCisjaW5jbHVkZSAiTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmgi
CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogCiBPQkpDX0NMQVNTIFdlYk1lZGlhU2Vzc2lv
bkhlbHBlcjsKQEAgLTQxLDcgKzQxLDcgQEAgZXh0ZXJuIE5TU3RyaW5nKiBXZWJVSUFwcGxpY2F0
aW9uRGlkRW50ZXJCYWNrZ3JvdW5kTm90aWZpY2F0aW9uOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLWNsYXNzIE1lZGlhU2Vzc2lvbk1hbmFnZXJpT1MgOiBwdWJsaWMgUGxhdGZvcm1NZWRpYVNl
c3Npb25NYW5hZ2VyIHsKK2NsYXNzIE1lZGlhU2Vzc2lvbk1hbmFnZXJpT1MgOiBwdWJsaWMgTWVk
aWFTZXNzaW9uTWFuYWdlckNvY29hIHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5NZWRpYVNlc3Np
b25NYW5hZ2VyaU9TKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0KaW5kZXggY2E2MzRiN2RmZTIw
OTE0MzU3MTNhMzgwOThmNzI0Yjc5NjBkODRmNS4uMWNiZmM2NTkyZDA0OWY3MmE0N2FlNzRiYjA0
NGRkOWE5YzRmMGExZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
aW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0KQEAgLTE0NCw3ICsxNDQsNyBA
QCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIqIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdl
cjo6c2hhcmVkTWFuYWdlcklmRXhpc3RzKAogfQogCiBNZWRpYVNlc3Npb25NYW5hZ2VyaU9TOjpN
ZWRpYVNlc3Npb25NYW5hZ2VyaU9TKCkKLSAgICA6IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdl
cigpCisgICAgOiBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EoKQogewogICAgIEJFR0lOX0JMT0NL
X09CSkNfRVhDRVBUSU9OUwogICAgIG1fb2JqY09ic2VydmVyID0gYWRvcHROUyhbW1dlYk1lZGlh
U2Vzc2lvbkhlbHBlciBhbGxvY10gaW5pdFdpdGhDYWxsYmFjazp0aGlzXSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1h
Yy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFn
ZXJNYWMuaAppbmRleCA0OTlmMDViN2IyNTVlODEwY2M3MTVmYmNjZGU0NmYxNGVhOGMzYTE0Li4y
OTA3Njk1MGUxYWNlYzI2OWNmYTc0ZmVkYzBlZjE3NWFjNTI4Nzc2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2Vy
TWFjLmgKQEAgLTI4LDExICsyOCwxMSBAQAogI2lmIFBMQVRGT1JNKE1BQykKIAogI2luY2x1ZGUg
IkdlbmVyaWNUYXNrUXVldWUuaCIKLSNpbmNsdWRlICJQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFn
ZXIuaCIKKyNpbmNsdWRlICJNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuaCIKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi1jbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2VyTWFjIDogcHVibGljIFBsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlciB7CitjbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2VyTWFjIDog
cHVibGljIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYSB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+
TWVkaWFTZXNzaW9uTWFuYWdlck1hYygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tCmluZGV4IDY3
YWYwOGI2M2NhZGFjODY5NGU4OGViMjhjYTZjODc1M2M1ZGFiNGMuLmNiODMzMDRjZjg5YWRjYWUw
MDdkMjkwOTgxZDM0Mjk4MWQ2OWViMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tCkBAIC01NSw3
ICs1NSw3IEBAIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlciogUGxhdGZvcm1NZWRpYVNlc3Np
b25NYW5hZ2VyOjpzaGFyZWRNYW5hZ2VySWZFeGlzdHMoCiB9CiAKIE1lZGlhU2Vzc2lvbk1hbmFn
ZXJNYWM6Ok1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMoKQotICAgIDogUGxhdGZvcm1NZWRpYVNlc3Np
b25NYW5hZ2VyKCkKKyAgICA6IE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYSgpCiB7CiAgICAgcmVz
ZXRSZXN0cmljdGlvbnMoKTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxY2M2NmE4MmQ4NDM2ZTRlZWY3ZjM3MWJhODlj
MDQ2ZjQ2MGVmNjA2Li5kYWQxOTk0NDJlZWM5ZGMyMDI2YzhjOGZhOTgyN2RjZjBkNzZiM2I4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTgtMDgtMDIgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgQ29udHJvbCBjZW50ZXIgY29udHJvbHMgZGlzYXBwZWFyIHdo
ZW4gcGF1c2luZywgbG9ja2luZyBkZXZpY2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODgyODIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQyNDk3
ODA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICAqIHBs
YXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5LXZpZGVvLXBhdXNlZC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNz
aW9uLWNhdGVnb3J5LXZpZGVvLXBhdXNlZC5odG1sOiBBZGRlZC4KKwogMjAxOC0wOC0wMSAgTmFu
IFdhbmcgIDxuX3dhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFYOiBBT006IEFkZCBBUklBIElE
TCBBdHRyaWJ1dGUgUmVmbGVjdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL21lZGlhL2F1ZGlvLXNlc3Npb24tY2F0ZWdvcnktdmlkZW8tcGF1c2VkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5
LXZpZGVvLXBhdXNlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWVhMDc1NTFlMmE4NDk0YWUy
OTY0YzUwZGUzMjZhNDViODc5ZjZkMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5LXZpZGVvLXBhdXNlZC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxOSBAQAorCitSVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldFNo
b3VsZE1hbmFnZUF1ZGlvU2Vzc2lvbkNhdGVnb3J5KHRydWUpKQorUlVOKHZpZGVvLnNyYyA9IGZp
bmRNZWRpYUZpbGUoInZpZGVvIiwgIi4uLy4uLy4uL21lZGlhL2NvbnRlbnQvdGVzdCIpKQorUlVO
KHZpZGVvLnBsYXkoKSkKK0VWRU5UKHBsYXlpbmcpCitFWFBFQ1RFRCAoaW50ZXJuYWxzLmF1ZGlv
U2Vzc2lvbkNhdGVnb3J5KCkgPT0gJ01lZGlhUGxheWJhY2snKSBPSworUlVOKHZpZGVvLnBhdXNl
KCkpCitFVkVOVChwYXVzZSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdv
cnkoKSA9PSAnTWVkaWFQbGF5YmFjaycpIE9LCitSVU4oaW50ZXJuYWxzLmJlZ2luTWVkaWFTZXNz
aW9uSW50ZXJydXB0aW9uKCJzeXN0ZW0iKSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuYXVkaW9TZXNz
aW9uQ2F0ZWdvcnkoKSA9PSAnTm9uZScpIE9LCitSVU4odmlkZW8ucGxheSgpKQorRVZFTlQocGxh
eWluZykKK0VYUEVDVEVEIChpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKSA9PSAnTWVk
aWFQbGF5YmFjaycpIE9LCitSVU4odmlkZW8uc3JjID0gIiIpCitSVU4odmlkZW8ubG9hZCgpKQor
RVhQRUNURUQgKGludGVybmFscy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpID09ICdOb25lJykgT0sK
K0VORCBPRiBURVNUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRp
YS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5LXZpZGVvLXBhdXNlZC5odG1sIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL21lZGlhL2F1ZGlvLXNlc3Npb24tY2F0ZWdvcnktdmlkZW8tcGF1c2VkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNWY1ZGFhNTcxNTI1MjkxMTc0Y2ZjOTQ5MWMwYTYzOGRmNTc5NWY2MQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRpYS9hdWRpby1z
ZXNzaW9uLWNhdGVnb3J5LXZpZGVvLXBhdXNlZC5odG1sCkBAIC0wLDAgKzEsMzggQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8dGl0bGU+YXVkaW8tc2Vzc2lvbi1jYXRl
Z29yeS10cmFjay1jaGFuZ2U8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9tZWRp
YS92aWRlby10ZXN0LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vbWVk
aWEvbWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICB3aW5kb3cuYWRk
RXZlbnRMaXN0ZW5lcignbG9hZCcsIGFzeW5jIGV2ZW50ID0+IHsKKyAgICAgICAgZmluZE1lZGlh
RWxlbWVudCgpOworICAgICAgICBydW4oJ2ludGVybmFscy5zZXR0aW5ncy5zZXRTaG91bGRNYW5h
Z2VBdWRpb1Nlc3Npb25DYXRlZ29yeSh0cnVlKScpOworICAgICAgICBydW4oJ3ZpZGVvLnNyYyA9
IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgIi4uLy4uLy4uL21lZGlhL2NvbnRlbnQvdGVzdCIpJyk7
CisgICAgICAgIHJ1bigndmlkZW8ucGxheSgpJyk7CisgICAgICAgIGF3YWl0IHdhaXRGb3Iodmlk
ZW8sICdwbGF5aW5nJyk7CisgICAgICAgIGF3YWl0IHRlc3RFeHBlY3RlZEV2ZW50dWFsbHkoJ2lu
dGVybmFscy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpJywgJ01lZGlhUGxheWJhY2snKTsKKworICAg
ICAgICBydW4oJ3ZpZGVvLnBhdXNlKCknKTsKKyAgICAgICAgYXdhaXQgd2FpdEZvcih2aWRlbywg
J3BhdXNlJyk7CisgICAgICAgIGF3YWl0IHRlc3RFeHBlY3RlZEV2ZW50dWFsbHkoJ2ludGVybmFs
cy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpJywgJ01lZGlhUGxheWJhY2snKTsKKworICAgICAgICBy
dW4oJ2ludGVybmFscy5iZWdpbk1lZGlhU2Vzc2lvbkludGVycnVwdGlvbigic3lzdGVtIiknKTsK
KyAgICAgICAgYXdhaXQgdGVzdEV4cGVjdGVkRXZlbnR1YWxseSgnaW50ZXJuYWxzLmF1ZGlvU2Vz
c2lvbkNhdGVnb3J5KCknLCAnTm9uZScpOworCisgICAgICAgIHJ1bigndmlkZW8ucGxheSgpJyk7
CisgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdwbGF5aW5nJyk7CisgICAgICAgIGF3YWl0
IHRlc3RFeHBlY3RlZEV2ZW50dWFsbHkoJ2ludGVybmFscy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgp
JywgJ01lZGlhUGxheWJhY2snKTsKKworICAgICAgICBydW4oJ3ZpZGVvLnNyYyA9ICIiJyk7Cisg
ICAgICAgIHJ1bigndmlkZW8ubG9hZCgpJyk7CisgICAgICAgIGF3YWl0IHRlc3RFeHBlY3RlZEV2
ZW50dWFsbHkoJ2ludGVybmFscy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpJywgJ05vbmUnKTsKKwor
ICAgICAgICBlbmRUZXN0KCk7CisgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKyAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>346426</attachid>
            <date>2018-08-02 16:18:27 -0700</date>
            <delta_ts>2018-08-02 16:40:12 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-188282-20180802161826.patch</filename>
            <type>text/plain</type>
            <size>22402</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM0NDgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2YwOGMyYWI3YTBmZWJl
YWJmOGY4ZTEzNThjNDkyOGMwZThjZDM1ZS4uOWMwYzg2Y2QwYzY1YjM5M2Q5ODUwZmY2OWYzZGQ0
ZDc5MmE5ODlkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE4LTA4LTAyICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIENvbnRyb2wgY2VudGVyIGNv
bnRyb2xzIGRpc2FwcGVhciB3aGVuIHBhdXNpbmcsIGxvY2tpbmcgZGV2aWNlLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MjgyCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS80MjQ5NzgwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxz
b24uCisKKyAgICAgICAgVGVzdDogcGxhdGZvcm0vbWFjL21lZGlhL2F1ZGlvLXNlc3Npb24tY2F0
ZWdvcnktdmlkZW8tcGF1c2VkLmh0bWwKKworICAgICAgICBNZWRpYVJlbW90ZSB3aWxsIHNldCBh
bnkgYXBwIHdob3NlIGF1ZGlvIHNlc3Npb24gY2F0ZWdvcnkgY2hhbmdlcyBmcm9tIE1lZGlhUGxh
eWJhY2sgdG8KKyAgICAgICAgQW1iaWVudCBhcyBub3QgZWxpZ2FibGUgZm9yIGJlaW5nIHRoZSAi
bm93IHBsYXlpbmciIGFwcC4gUHJldmlvdXNseSwgZHVlIHRvIHRoZSBvcmRlcmluZyBvZgorICAg
ICAgICBldmVudHMsIHdlIG5ldmVyIG1vdmVkIGZyb20gTWVkaWFQbGF5YmFjayB0byBBbWJpZW50
IHdoZW4gcGF1c2luZyA8dmlkZW8+LCBldmVuIHRob3VnaCB0aGF0CisgICAgICAgIHdhcyB0aGUg
aW50ZW50aW9uLiBOb3cgdGhhdCB0aGF0IGJ1ZyBpcyBmaXhlZCwgaXQgZXhwb3NlZCB0aGlzIG5l
dyBpc3N1ZSB3aXRoIE1lZGlhUmVtb3RlLgorCisgICAgICAgIFRvIHNvbHZlIHRoZSBuZXcgaXNz
dWUsIG1ha2Ugb3VyIGF1ZGlvIHNlc3Npb24gY2F0ZWdvcnkgcG9saWN5IG1vcmUgZXhwbGljaXQ6
IG9uY2Ugd2UgYXJlIGluCisgICAgICAgIE1lZGlhUGxheWJhY2sgY2F0ZWdvcnksIHdlIHdpbGwg
cmVtYWluIHNvIGFzIGxvbmcgYXMgdGhlIG1lZGlhIGVsZW1lbnQgaW4gcXVlc3RvbiBzdGF5cwor
ICAgICAgICBsb2FkZWQsIGhhcyBwbGF5ZWQsIGFuZCBpcyBuZXZlciBpbnRlcnJ1cHRlZCBieSB0
aGUgc3lzdGVtLgorCisgICAgICAgIE1ha2UgTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hIGEgcHJv
cGVyIHN1YmNsYXNzIG9mIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlciwgYW5kIG1ha2UKKyAg
ICAgICAgTWVkaWFTZXNzaW9uTWFuYWdlcmlPUyBhbmQgLU1hYyBzdWJjbGFzc2VzIG9mIHRoZSAt
Q29jb2EgY2xhc3MuIEFkZCBhIG5ldworICAgICAgICBtX2hhc1BsYXllZFNpbmNlTGFzdEludGVy
cnVwdGlvbiBpdmFyIHRvIFBsYXRmb3JtTWVkaWFTZXNzaW9uLCBzZXQgd2hlbiB0aGUgc3RhdGUo
KSBjaGFuZ2VzCisgICAgICAgIHRvIFBsYXlpbmcsIGFuZCBjbGVhcmVkIGR1cmluZyBhbiBpbnRl
cnJ1cHRpb24uIENoZWNrIHRoaXMgZmxhZyB3aGVuIGRlY2lkaW5nIHdoYXQgYXVkaW8gCisgICAg
ICAgIHNlc3Npbm8gY2F0ZWdvcnkgdG8gc2V0IGluIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS4K
KworICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6c2V0U3RhdGUpOgorICAgICAgICAqIHBsYXRmb3Jt
L2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9y
bU1lZGlhU2Vzc2lvbjo6aGFzUGxheWVkU2luY2VMYXN0SW50ZXJydXB0aW9uIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uOjpjbGVhckhhc1BsYXllZFNpbmNl
TGFzdEludGVycnVwdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRp
YVNlc3Npb25NYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNz
aW9uTWFuYWdlcjo6dXBkYXRlU2Vzc2lvblN0YXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6YXVkaW9IYXJkd2FyZUxpc3RlbmVyKToK
KyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBkYXRlU2Vz
c2lvblN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25N
YW5hZ2VyQ29jb2EuY3BwOgorICAgICAgICAoTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjp1cGRh
dGVTZXNzaW9uU3RhdGUpOgorICAgICAgICAoTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjpiZWdp
bkludGVycnVwdGlvbik6CisgICAgICAgIChQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVw
ZGF0ZVNlc3Npb25TdGF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vY29j
b2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmg6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmg6CisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVNlc3Npb25NYW5hZ2VyaU9TOjpNZWRpYVNlc3Npb25NYW5hZ2VyaU9TKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oOgorICAgICAgICAq
IHBsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFTZXNzaW9uTWFuYWdlck1hYzo6TWVkaWFTZXNzaW9uTWFuYWdlck1hYyk6
CisKIDIwMTgtMDctMjAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW2lPU10gUGlQIGdldHMgaW50byBhIGJhZCBzdGF0ZSBpZiBlbnRlcmluZyBQaVAgZmFpbHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCA0ODc2YWM4MGMxNGI3OTA2NDc4YTY4ZjkxYWYyN2M0NjRjODk4NGRiLi44NTI4OGNkNDc0
OGJiZmU0NzdhMTZmNmI4ODg0MDhlMWZiMzg0ZjQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zOTUxLDYgKzM5NTEsNyBAQAog
CQlDRDFFNzM0NzE2N0JDNzhFMDA5QTg4NUQgLyogVGV4dFRyYWNrUmVwcmVzZW50YXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QxRTczNDYx
NjdCQzc4RTAwOUE4ODVEIC8qIFRleHRUcmFja1JlcHJlc2VudGF0aW9uLmNwcCAqLzsgfTsKIAkJ
Q0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VSTFNlc3Npb24ubW0gaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDIyNUMwOTFDNDZGQkY0
MDAxNDA3NjEgLyogV2ViQ29yZU5TVVJMU2Vzc2lvbi5tbSAqLzsgfTsKIAkJQ0QyMjVDMEMxQzQ2
RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VSTFNlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEMjI1QzBBMUM0NkZCRjQwMDE0MDc2MSAvKiBX
ZWJDb3JlTlNVUkxTZXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQ0QyMjdFM0EyMTEzQzg2MjAwRDI4NUFGIC8qIE1lZGlhU2Vzc2lvbk1h
bmFnZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0QyMjdFMzYyMTEzQUVGQTAwRDI4NUFGIC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUNEMkY0
QTI0MThEODlGNzAwMDYzNzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEMkY0QTIyMThEODlGNzAwMDYz
NzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDRDJGNEEyODE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVk
aW9IYXJkd2FyZUxpc3RlbmVyTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDRDJGNEEyNjE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJkd2FyZUxp
c3RlbmVyTWFjLmggKi87IH07CiAJCUNEMzE4NjIyMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2
YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0QzMTg2MjAxOTlGMUUyQTAwMzBBMEY3IC8qIENETVByaXZhdGVNZWRp
YVNvdXJjZUFWRk9iakMubW0gKi87IH07CkBAIC0xMzE4Niw2ICsxMzE4Nyw3IEBACiAJCUNEMUU3
MzQ2MTY3QkM3OEUwMDlBODg1RCAvKiBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjI1QzA5MUM0NkZCRjQwMDE0MDc2
MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gV2ViQ29yZU5TVVJMU2Vzc2lvbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQ0QyMjVDMEExQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VSTFNlc3Npb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZU5TVVJMU2Vzc2lvbi5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDIyN0UzNjIxMTNBRUZBMDBEMjg1QUYg
LyogTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1lZGlhU2Vzc2lv
bk1hbmFnZXJDb2NvYS5oOyBwYXRoID0gY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUwMTQ1NzVDMUIwMDc4MjA3RCAv
KiBNZWRpYUNvbnRyb2xsZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhQ29udHJvbGxlci5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUyMTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlh
Q29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01l
ZGlhQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUz
MTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlhQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU01lZGlhQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtMjQ2NzAsNiArMjQ2NzIsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKIAkJCQlDRDY2OUQ2NjFEMjMyREZGMDA0RDE4NjYgLyogTWVkaWFTZXNzaW9u
TWFuYWdlckNvY29hLmNwcCAqLywKKwkJCQlDRDIyN0UzNjIxMTNBRUZBMDBEMjg1QUYgLyogTWVk
aWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8sCiAJCQkJQ0RFNjY3QTIxRTRCQkYxNTAwRTgxNTRB
IC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5jcHAgKi8sCiAJCQkJQ0RFNjY3QTMxRTRCQkYxNTAwRTgx
NTRBIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5oICovLAogCQkJKTsKQEAgLTI3ODY3LDYgKzI3ODcw
LDcgQEAKIAkJCQk4MzcxQUMzQjFGNTA5QkU0MDBGQkYyODQgLyogRXJyb3JDYWxsYmFjay5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMkVDRjdBRTIxMDE2MkI1ODAwNDI3REU3IC8qIEVycm9yRXZlbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTg1MDMxQjQyMEE0NEVGQzcwMEY5OTJFMCAvKiBFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0QyMjdFM0EyMTEzQzg2MjAwRDI4NUFGIC8qIE1lZGlhU2Vz
c2lvbk1hbmFnZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDEzOEQzMzUxMjQ0MDU0ODAw
MzIzRDMzIC8qIEV2ZW50Q29udGV4dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE4QTA2RDAxMzND
MDRENTAwQ0QzNzlDIC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTND
MDlBNTMwQjA2NERCMzAwNUFCRDREIC8qIEV2ZW50SGFuZGxlci5oIGluIEhlYWRlcnMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vz
c2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vz
c2lvbi5jcHAKaW5kZXggZWUxOWI2NzUzMGVjYzFjYmM3NDJkNWNlOTQzNWI3MTQ5OWEwZWI4OC4u
ZmE5OWZlZTNjYjkwY2MwNmI0Yzk3OTM4YWEzZTAzZDcyYzVjMTliNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmNwcApA
QCAtMTE3LDYgKzExNyw4IEBAIHZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb246OnNldFN0YXRlKFN0
YXRlIHN0YXRlKQogCiAgICAgSU5GT19MT0coTE9HSURFTlRJRklFUiwgc3RhdGUpOwogICAgIG1f
c3RhdGUgPSBzdGF0ZTsKKyAgICBpZiAobV9zdGF0ZSA9PSBTdGF0ZTo6UGxheWluZykKKyAgICAg
ICAgbV9oYXNQbGF5ZWRTaW5jZUxhc3RJbnRlcnJ1cHRpb24gPSB0cnVlOwogICAgIFBsYXRmb3Jt
TWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLnNlc3Npb25TdGF0ZUNoYW5nZWQo
KnRoaXMpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9Q
bGF0Zm9ybU1lZGlhU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxh
dGZvcm1NZWRpYVNlc3Npb24uaAppbmRleCBmZDZmMDhjZGZiZDllYTc4OTkxZDU5NjY2MzRjMDg3
MzJlODgwOGNhLi5kOTc2NzlkYjk0NTkxYWYxMjEwZTAwNzI1OGI2N2M5ZGEwZmFkYzlmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lv
bi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNz
aW9uLmgKQEAgLTE3Niw2ICsxNzYsOSBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dzTm93UGxheWluZ0NvbnRyb2xzVmlzaWJpbGl0eSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9
CiAKKyAgICBib29sIGhhc1BsYXllZFNpbmNlTGFzdEludGVycnVwdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1faGFzUGxheWVkU2luY2VMYXN0SW50ZXJydXB0aW9uOyB9CisgICAgdm9pZCBjbGVhckhh
c1BsYXllZFNpbmNlTGFzdEludGVycnVwdGlvbigpIHsgbV9oYXNQbGF5ZWRTaW5jZUxhc3RJbnRl
cnJ1cHRpb24gPSBmYWxzZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgUGxhdGZvcm1NZWRpYVNlc3Np
b25DbGllbnQmIGNsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50OyB9CiAKQEAgLTE5NCw2
ICsxOTcsNyBAQCBwcml2YXRlOgogICAgIGludCBtX2ludGVycnVwdGlvbkNvdW50IHsgMCB9Owog
ICAgIGJvb2wgbV9ub3RpZnlpbmdDbGllbnQ7CiAgICAgYm9vbCBtX2lzUGxheWluZ1RvV2lyZWxl
c3NQbGF5YmFja1RhcmdldCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2hhc1BsYXllZFNpbmNlTGFz
dEludGVycnVwdGlvbiB7IGZhbHNlIH07CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAg
ICBSZWY8Y29uc3QgTG9nZ2VyPiBtX2xvZ2dlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwCmlu
ZGV4IDk1MzE3MzExMTkwNDcyZmNhMWI3N2YzYjIyOTI5NzNhNDZkZjEwYWEuLjg5ZmU1NTBhNzYx
ZGRmZWJjYWQ3YzQyMDMwZDUzMTJmMTQ0NjRlMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmNw
cApAQCAtMzU3LDEyICszNTcsNiBAQCB2b2lkIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6
c2Vzc2lvbkNhblByb2R1Y2VBdWRpb0NoYW5nZWQoUGxhdGZvcm1NZWRpYVNlcwogICAgIHVwZGF0
ZVNlc3Npb25TdGF0ZSgpOwogfQogCi0jaWYgIVBMQVRGT1JNKENPQ09BKQotdm9pZCBQbGF0Zm9y
bU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCi17Ci19Ci0jZW5kaWYK
LQogdm9pZCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OmRpZFJlY2VpdmVSZW1vdGVDb250
cm9sQ29tbWFuZChQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6UmVtb3RlQ29udHJvbENvbW1hbmRUeXBl
IGNvbW1hbmQsIGNvbnN0IFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb21tYW5kQXJndW1l
bnQqIGFyZ3VtZW50KQogewogICAgIFBsYXRmb3JtTWVkaWFTZXNzaW9uKiBhY3RpdmVTZXNzaW9u
ID0gY3VycmVudFNlc3Npb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgKaW5kZXggYWQzNjM4Mzk2
ODMzNzEyNjg0NzZiMGI4NTNiNjBiYmY2ZjUwZGNiNC4uNGM5ZmU2ZWYyNWU4ZDQ1YmM5YzFiOGJl
ZTAyOTExMzIxMzM5YWEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgKQEAgLTY2LDcgKzY2LDcg
QEAgcHVibGljOgogICAgIGJvb2wgd2lsbElnbm9yZVN5c3RlbUludGVycnVwdGlvbnMoKSBjb25z
dCB7IHJldHVybiBtX3dpbGxJZ25vcmVTeXN0ZW1JbnRlcnJ1cHRpb25zOyB9CiAgICAgdm9pZCBz
ZXRXaWxsSWdub3JlU3lzdGVtSW50ZXJydXB0aW9ucyhib29sIGlnbm9yZSkgeyBtX3dpbGxJZ25v
cmVTeXN0ZW1JbnRlcnJ1cHRpb25zID0gaWdub3JlOyB9CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2
b2lkIGJlZ2luSW50ZXJydXB0aW9uKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpJbnRlcnJ1cHRpb25U
eXBlKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgYmVnaW5JbnRlcnJ1cHRpb24o
UGxhdGZvcm1NZWRpYVNlc3Npb246OkludGVycnVwdGlvblR5cGUpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgZW5kSW50ZXJydXB0aW9uKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpFbmRJbnRlcnJ1
cHRpb25GbGFncyk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFwcGxpY2F0aW9uV2lsbEJl
Y29tZUluYWN0aXZlKCkgY29uc3Q7CkBAIC0xMjMsMTAgKzEyMywxMiBAQCBwcm90ZWN0ZWQ6CiAg
ICAgUGxhdGZvcm1NZWRpYVNlc3Npb24qIGZpbmRTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPGJvb2wo
UGxhdGZvcm1NZWRpYVNlc3Npb24mLCBzaXplX3QpPiYpIGNvbnN0OwogICAgIGJvb2wgYW55T2ZT
ZXNzaW9ucyhjb25zdCBGdW5jdGlvbjxib29sKFBsYXRmb3JtTWVkaWFTZXNzaW9uJiwgc2l6ZV90
KT4mIHByZWRpY2F0ZSkgY29uc3QgeyByZXR1cm4gZmluZFNlc3Npb24ocHJlZGljYXRlKTsgfQog
CisgICAgQXVkaW9IYXJkd2FyZUxpc3RlbmVyKiBhdWRpb0hhcmR3YXJlTGlzdGVuZXIoKSB7IHJl
dHVybiBtX2F1ZGlvSGFyZHdhcmVMaXN0ZW5lci5nZXQoKTsgfQorCiBwcml2YXRlOgogICAgIGZy
aWVuZCBjbGFzcyBJbnRlcm5hbHM7CiAKLSAgICB2b2lkIHVwZGF0ZVNlc3Npb25TdGF0ZSgpOwor
ICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTZXNzaW9uU3RhdGUoKSB7IH0KIAogICAgIC8vIFJlbW90
ZUNvbW1hbmRMaXN0ZW5lckNsaWVudAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZGlkUmVjZWl2
ZVJlbW90ZUNvbnRyb2xDb21tYW5kKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb250cm9s
Q29tbWFuZFR5cGUsIGNvbnN0IFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb21tYW5kQXJn
dW1lbnQqKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuY3BwCmluZGV4IGIz
ZTE2Mjc5ZGY4Yjk1YzUxNTI2ZDU3NzJmNTQ4MGI4YTM3ZGNkMWEuLjVkYTUxMjdjYjYzOTFlM2Zh
MGZiNmNhZTAzNWRiNzE2MjI4MWJkZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmNw
cApAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKKyNpbmNsdWRlICJNZWRpYVNlc3Npb25N
YW5hZ2VyQ29jb2EuaCIKIAogI2lmIFVTRShBVURJT19TRVNTSU9OKQogCkBAIC0zOCw3ICszOCw3
IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogc3RhdGljIGNvbnN0IHNpemVfdCBrV2ViQXVk
aW9CdWZmZXJTaXplID0gMTI4Owogc3RhdGljIGNvbnN0IHNpemVfdCBrTG93UG93ZXJWaWRlb0J1
ZmZlclNpemUgPSA0MDk2OwogCi12b2lkIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBk
YXRlU2Vzc2lvblN0YXRlKCkKK3ZvaWQgTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjp1cGRhdGVT
ZXNzaW9uU3RhdGUoKQogewogICAgIExPRyhNZWRpYSwgIlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFu
YWdlcjo6c2NoZWR1bGVVcGRhdGVTZXNzaW9uU3RhdGUoKSAtIHR5cGVzOiBWaWRlbyglZCksIEF1
ZGlvKCVkKSwgV2ViQXVkaW8oJWQpIiwgY291bnQoUGxhdGZvcm1NZWRpYVNlc3Npb246OlZpZGVv
KSwgY291bnQoUGxhdGZvcm1NZWRpYVNlc3Npb246OkF1ZGlvKSwgY291bnQoUGxhdGZvcm1NZWRp
YVNlc3Npb246OldlYkF1ZGlvKSk7CiAKQEAgLTUzLDcgKzUzLDcgQEAgdm9pZCBQbGF0Zm9ybU1l
ZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCiAgICAgICAgIC8vIGNhdXNl
cyBtZWRpYSBMYXlvdXRUZXN0cyB0byBmYWlsIG9uIDEwLjguCiAKICAgICAgICAgc2l6ZV90IGJ1
ZmZlclNpemU7Ci0gICAgICAgIGlmIChtX2F1ZGlvSGFyZHdhcmVMaXN0ZW5lciAmJiBtX2F1ZGlv
SGFyZHdhcmVMaXN0ZW5lci0+b3V0cHV0RGV2aWNlU3VwcG9ydHNMb3dQb3dlck1vZGUoKSkKKyAg
ICAgICAgaWYgKGF1ZGlvSGFyZHdhcmVMaXN0ZW5lcigpICYmIGF1ZGlvSGFyZHdhcmVMaXN0ZW5l
cigpLT5vdXRwdXREZXZpY2VTdXBwb3J0c0xvd1Bvd2VyTW9kZSgpKQogICAgICAgICAgICAgYnVm
ZmVyU2l6ZSA9IGtMb3dQb3dlclZpZGVvQnVmZmVyU2l6ZTsKICAgICAgICAgZWxzZQogICAgICAg
ICAgICAgYnVmZmVyU2l6ZSA9IGtXZWJBdWRpb0J1ZmZlclNpemU7CkBAIC03MCw3ICs3MCw3IEBA
IHZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjp1cGRhdGVTZXNzaW9uU3RhdGUoKQog
ICAgICAgICBhdXRvIHR5cGUgPSBzZXNzaW9uLm1lZGlhVHlwZSgpOwogICAgICAgICBpZiAodHlw
ZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6V2ViQXVkaW8pCiAgICAgICAgICAgICBoYXNXZWJB
dWRpb1R5cGUgPSB0cnVlOwotICAgICAgICBpZiAoKHR5cGUgPT0gUGxhdGZvcm1NZWRpYVNlc3Np
b246OlZpZGVvQXVkaW8gfHwgdHlwZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6QXVkaW8pICYm
IHNlc3Npb24uY2FuUHJvZHVjZUF1ZGlvKCkgJiYgc2Vzc2lvbi5zdGF0ZSgpID09IFBsYXRmb3Jt
TWVkaWFTZXNzaW9uOjpQbGF5aW5nKQorICAgICAgICBpZiAoKHR5cGUgPT0gUGxhdGZvcm1NZWRp
YVNlc3Npb246OlZpZGVvQXVkaW8gfHwgdHlwZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6QXVk
aW8pICYmIHNlc3Npb24uY2FuUHJvZHVjZUF1ZGlvKCkgJiYgc2Vzc2lvbi5oYXNQbGF5ZWRTaW5j
ZUxhc3RJbnRlcnJ1cHRpb24oKSkKICAgICAgICAgICAgIGhhc0F1ZGlibGVBdWRpb09yVmlkZW9N
ZWRpYVR5cGUgPSB0cnVlOwogICAgICAgICBpZiAoc2Vzc2lvbi5pc1BsYXlpbmdUb1dpcmVsZXNz
UGxheWJhY2tUYXJnZXQoKSkKICAgICAgICAgICAgIGhhc0F1ZGlibGVBdWRpb09yVmlkZW9NZWRp
YVR5cGUgPSB0cnVlOwpAQCAtODcsNCArODcsMTUgQEAgdm9pZCBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCiAgICAgICAgIEF1ZGlvU2Vzc2lvbjo6c2hh
cmVkU2Vzc2lvbigpLnNldENhdGVnb3J5KEF1ZGlvU2Vzc2lvbjo6Tm9uZSk7CiB9CiAKK3ZvaWQg
TWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjpiZWdpbkludGVycnVwdGlvbihQbGF0Zm9ybU1lZGlh
U2Vzc2lvbjo6SW50ZXJydXB0aW9uVHlwZSB0eXBlKQoreworICAgIGlmICh0eXBlID09IFBsYXRm
b3JtTWVkaWFTZXNzaW9uOjpJbnRlcnJ1cHRpb25UeXBlOjpTeXN0ZW1JbnRlcnJ1cHRpb24pIHsK
KyAgICAgICAgZm9yRWFjaFNlc3Npb24oW10gKFBsYXRmb3JtTWVkaWFTZXNzaW9uJiBzZXNzaW9u
LCBzaXplX3QpIHsKKyAgICAgICAgICAgIHNlc3Npb24uY2xlYXJIYXNQbGF5ZWRTaW5jZUxhc3RJ
bnRlcnJ1cHRpb24oKTsKKyAgICAgICAgfSk7CisgICAgfQorCisgICAgUGxhdGZvcm1NZWRpYVNl
c3Npb25NYW5hZ2VyOjpiZWdpbkludGVycnVwdGlvbih0eXBlKTsKK30KKwogI2VuZGlmIC8vIFVT
RShBVURJT19TRVNTSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
MWZlYTE0NTRkN2RiZDFkNTM1ZWNkNzU3MGNmMmI5OTBmMDMwZjkxCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdl
ckNvY29hLmgKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aWYgUExBVEZPUk0oQ09DT0EpCisKKyNpbmNsdWRlICJQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFn
ZXIuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2Vy
Q29jb2EgOiBwdWJsaWMgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyIHsKK3B1YmxpYzoKKyAg
ICB2b2lkIHVwZGF0ZVNlc3Npb25TdGF0ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgYmVnaW5JbnRl
cnJ1cHRpb24oUGxhdGZvcm1NZWRpYVNlc3Npb246OkludGVycnVwdGlvblR5cGUpIG92ZXJyaWRl
OworfTsKKworfQorCisjZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1Mu
aAppbmRleCBlZTE5M2Y0ZjUyNzUwNjU0MThhOTg0NGFhNmRjYjI1MTAxODZhNDVkLi5iOWE4NjA4
NGVlYzJiZTkzMTk2ZTc3ZDA1MGY1YjI3ZDNkODYwMzgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmgK
QEAgLTI3LDcgKzI3LDcgQEAKIAogI2lmIFBMQVRGT1JNKElPUykKIAotI2luY2x1ZGUgIlBsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIgorI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXJD
b2NvYS5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIAogT0JKQ19DTEFTUyBXZWJNZWRp
YVNlc3Npb25IZWxwZXI7CkBAIC00MSw3ICs0MSw3IEBAIGV4dGVybiBOU1N0cmluZyogV2ViVUlB
cHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZE5vdGlmaWNhdGlvbjsKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1jbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2VyaU9TIDogcHVibGljIFBsYXRmb3Jt
TWVkaWFTZXNzaW9uTWFuYWdlciB7CitjbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2VyaU9TIDogcHVi
bGljIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYSB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+TWVk
aWFTZXNzaW9uTWFuYWdlcmlPUygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tCmluZGV4IGNhNjM0
YjdkZmUyMDkxNDM1NzEzYTM4MDk4ZjcyNGI3OTYwZDg0ZjUuLjFjYmZjNjU5MmQwNDlmNzJhNDdh
ZTc0YmIwNDRkZDlhOWM0ZjBhMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tCkBAIC0xNDQsNyAr
MTQ0LDcgQEAgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyKiBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXI6OnNoYXJlZE1hbmFnZXJJZkV4aXN0cygKIH0KIAogTWVkaWFTZXNzaW9uTWFuYWdl
cmlPUzo6TWVkaWFTZXNzaW9uTWFuYWdlcmlPUygpCi0gICAgOiBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXIoKQorICAgIDogTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hKCkKIHsKICAgICBCRUdJ
Tl9CTE9DS19PQkpDX0VYQ0VQVElPTlMKICAgICBtX29iamNPYnNlcnZlciA9IGFkb3B0TlMoW1tX
ZWJNZWRpYVNlc3Npb25IZWxwZXIgYWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6dGhpc10pOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1h
bmFnZXJNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Np
b25NYW5hZ2VyTWFjLmgKaW5kZXggNDk5ZjA1YjdiMjU1ZTgxMGNjNzE1ZmJjY2RlNDZmMTRlYThj
M2ExNC4uMjkwNzY5NTBlMWFjZWMyNjljZmE3NGZlZGMwZWYxNzVhYzUyODc3NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJN
YWMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9u
TWFuYWdlck1hYy5oCkBAIC0yOCwxMSArMjgsMTEgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNp
bmNsdWRlICJHZW5lcmljVGFza1F1ZXVlLmgiCi0jaW5jbHVkZSAiUGxhdGZvcm1NZWRpYVNlc3Np
b25NYW5hZ2VyLmgiCisjaW5jbHVkZSAiTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgTWVkaWFTZXNzaW9uTWFuYWdlck1hYyA6IHB1Ymxp
YyBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIgeworY2xhc3MgTWVkaWFTZXNzaW9uTWFuYWdl
ck1hYyA6IHB1YmxpYyBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EgewogcHVibGljOgogICAgIHZp
cnR1YWwgfk1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbQpp
bmRleCA2N2FmMDhiNjNjYWRhYzg2OTRlODhlYjI4Y2E2Yzg3NTNjNWRhYjRjLi5jYjgzMzA0Y2Y4
OWFkY2FlMDA3ZDI5MDk4MWQzNDI5ODFkNjllYjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbQpA
QCAtNTUsNyArNTUsNyBAQCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIqIFBsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcklmRXhpc3RzKAogfQogCiBNZWRpYVNlc3Np
b25NYW5hZ2VyTWFjOjpNZWRpYVNlc3Npb25NYW5hZ2VyTWFjKCkKLSAgICA6IFBsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlcigpCisgICAgOiBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EoKQogewog
ICAgIHJlc2V0UmVzdHJpY3Rpb25zKCk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMWNjNjZhODJkODQzNmU0ZWVmN2Yz
NzFiYTg5YzA0NmY0NjBlZjYwNi4uZGFkMTk5NDQyZWVjOWRjMjAyNmM4YzhmYTk4MjdkY2YwZDc2
YjNiOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE4LTA4LTAyICBKZXIgTm9ibGUgIDxqZXIu
bm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIENvbnRyb2wgY2VudGVyIGNvbnRyb2xzIGRpc2Fw
cGVhciB3aGVuIHBhdXNpbmcsIGxvY2tpbmcgZGV2aWNlLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MjgyCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS80MjQ5NzgwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVz
ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvbWVkaWEvYXVk
aW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVzZWQuaHRtbDogQWRkZWQuCisKIDIwMTgtMDgt
MDEgIE5hbiBXYW5nICA8bl93YW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDogQU9NOiBBZGQg
QVJJQSBJREwgQXR0cmlidXRlIFJlZmxlY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5LXZpZGVvLXBhdXNlZC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1j
YXRlZ29yeS12aWRlby1wYXVzZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllYTA3NTUxZTJh
ODQ5NGFlMjk2NGM1MGRlMzI2YTQ1Yjg3OWY2ZDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVz
ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTkgQEAKKworUlVOKGludGVybmFscy5zZXR0aW5n
cy5zZXRTaG91bGRNYW5hZ2VBdWRpb1Nlc3Npb25DYXRlZ29yeSh0cnVlKSkKK1JVTih2aWRlby5z
cmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICIuLi8uLi8uLi9tZWRpYS9jb250ZW50L3Rlc3Qi
KSkKK1JVTih2aWRlby5wbGF5KCkpCitFVkVOVChwbGF5aW5nKQorRVhQRUNURUQgKGludGVybmFs
cy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpID09ICdNZWRpYVBsYXliYWNrJykgT0sKK1JVTih2aWRl
by5wYXVzZSgpKQorRVZFTlQocGF1c2UpCitFWFBFQ1RFRCAoaW50ZXJuYWxzLmF1ZGlvU2Vzc2lv
bkNhdGVnb3J5KCkgPT0gJ01lZGlhUGxheWJhY2snKSBPSworUlVOKGludGVybmFscy5iZWdpbk1l
ZGlhU2Vzc2lvbkludGVycnVwdGlvbigic3lzdGVtIikpCitFWFBFQ1RFRCAoaW50ZXJuYWxzLmF1
ZGlvU2Vzc2lvbkNhdGVnb3J5KCkgPT0gJ05vbmUnKSBPSworUlVOKHZpZGVvLnBsYXkoKSkKK0VW
RU5UKHBsYXlpbmcpCitFWFBFQ1RFRCAoaW50ZXJuYWxzLmF1ZGlvU2Vzc2lvbkNhdGVnb3J5KCkg
PT0gJ01lZGlhUGxheWJhY2snKSBPSworUlVOKHZpZGVvLnNyYyA9ICIiKQorUlVOKHZpZGVvLmxv
YWQoKSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKSA9PSAnTm9u
ZScpIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVzZWQuaHRtbCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5LXZpZGVvLXBh
dXNlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVmNWRhYTU3MTUyNTI5MTE3NGNmYzk0OTFjMGE2MzhkZjU3
OTVmNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEv
YXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVzZWQuaHRtbApAQCAtMCwwICsxLDM4IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPmF1ZGlvLXNlc3Np
b24tY2F0ZWdvcnktdHJhY2stY2hhbmdlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vbWVkaWEvdmlkZW8tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL21lZGlhL21lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgd2lu
ZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYyBldmVudCA9PiB7CisgICAgICAgIGZp
bmRNZWRpYUVsZW1lbnQoKTsKKyAgICAgICAgcnVuKCdpbnRlcm5hbHMuc2V0dGluZ3Muc2V0U2hv
dWxkTWFuYWdlQXVkaW9TZXNzaW9uQ2F0ZWdvcnkodHJ1ZSknKTsKKyAgICAgICAgcnVuKCd2aWRl
by5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICIuLi8uLi8uLi9tZWRpYS9jb250ZW50L3Rl
c3QiKScpOworICAgICAgICBydW4oJ3ZpZGVvLnBsYXkoKScpOworICAgICAgICBhd2FpdCB3YWl0
Rm9yKHZpZGVvLCAncGxheWluZycpOworICAgICAgICBhd2FpdCB0ZXN0RXhwZWN0ZWRFdmVudHVh
bGx5KCdpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKScsICdNZWRpYVBsYXliYWNrJyk7
CisKKyAgICAgICAgcnVuKCd2aWRlby5wYXVzZSgpJyk7CisgICAgICAgIGF3YWl0IHdhaXRGb3Io
dmlkZW8sICdwYXVzZScpOworICAgICAgICBhd2FpdCB0ZXN0RXhwZWN0ZWRFdmVudHVhbGx5KCdp
bnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKScsICdNZWRpYVBsYXliYWNrJyk7CisKKyAg
ICAgICAgcnVuKCdpbnRlcm5hbHMuYmVnaW5NZWRpYVNlc3Npb25JbnRlcnJ1cHRpb24oInN5c3Rl
bSIpJyk7CisgICAgICAgIGF3YWl0IHRlc3RFeHBlY3RlZEV2ZW50dWFsbHkoJ2ludGVybmFscy5h
dWRpb1Nlc3Npb25DYXRlZ29yeSgpJywgJ05vbmUnKTsKKworICAgICAgICBydW4oJ3ZpZGVvLnBs
YXkoKScpOworICAgICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAncGxheWluZycpOworICAgICAg
ICBhd2FpdCB0ZXN0RXhwZWN0ZWRFdmVudHVhbGx5KCdpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0
ZWdvcnkoKScsICdNZWRpYVBsYXliYWNrJyk7CisKKyAgICAgICAgcnVuKCd2aWRlby5zcmMgPSAi
IicpOworICAgICAgICBydW4oJ3ZpZGVvLmxvYWQoKScpOworICAgICAgICBhd2FpdCB0ZXN0RXhw
ZWN0ZWRFdmVudHVhbGx5KCdpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKScsICdOb25l
Jyk7CisKKyAgICAgICAgZW5kVGVzdCgpOworICAgIH0pOworICAgIDwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+CisgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>346430</attachid>
            <date>2018-08-02 16:40:13 -0700</date>
            <delta_ts>2018-08-02 18:54:22 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-188282-20180802164012.patch</filename>
            <type>text/plain</type>
            <size>23101</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM0NDgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2YwOGMyYWI3YTBmZWJl
YWJmOGY4ZTEzNThjNDkyOGMwZThjZDM1ZS4uOWMwYzg2Y2QwYzY1YjM5M2Q5ODUwZmY2OWYzZGQ0
ZDc5MmE5ODlkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDE4LTA4LTAyICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIENvbnRyb2wgY2VudGVyIGNv
bnRyb2xzIGRpc2FwcGVhciB3aGVuIHBhdXNpbmcsIGxvY2tpbmcgZGV2aWNlLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MjgyCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS80MjQ5NzgwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxz
b24uCisKKyAgICAgICAgVGVzdDogcGxhdGZvcm0vbWFjL21lZGlhL2F1ZGlvLXNlc3Npb24tY2F0
ZWdvcnktdmlkZW8tcGF1c2VkLmh0bWwKKworICAgICAgICBNZWRpYVJlbW90ZSB3aWxsIHNldCBh
bnkgYXBwIHdob3NlIGF1ZGlvIHNlc3Npb24gY2F0ZWdvcnkgY2hhbmdlcyBmcm9tIE1lZGlhUGxh
eWJhY2sgdG8KKyAgICAgICAgQW1iaWVudCBhcyBub3QgZWxpZ2FibGUgZm9yIGJlaW5nIHRoZSAi
bm93IHBsYXlpbmciIGFwcC4gUHJldmlvdXNseSwgZHVlIHRvIHRoZSBvcmRlcmluZyBvZgorICAg
ICAgICBldmVudHMsIHdlIG5ldmVyIG1vdmVkIGZyb20gTWVkaWFQbGF5YmFjayB0byBBbWJpZW50
IHdoZW4gcGF1c2luZyA8dmlkZW8+LCBldmVuIHRob3VnaCB0aGF0CisgICAgICAgIHdhcyB0aGUg
aW50ZW50aW9uLiBOb3cgdGhhdCB0aGF0IGJ1ZyBpcyBmaXhlZCwgaXQgZXhwb3NlZCB0aGlzIG5l
dyBpc3N1ZSB3aXRoIE1lZGlhUmVtb3RlLgorCisgICAgICAgIFRvIHNvbHZlIHRoZSBuZXcgaXNz
dWUsIG1ha2Ugb3VyIGF1ZGlvIHNlc3Npb24gY2F0ZWdvcnkgcG9saWN5IG1vcmUgZXhwbGljaXQ6
IG9uY2Ugd2UgYXJlIGluCisgICAgICAgIE1lZGlhUGxheWJhY2sgY2F0ZWdvcnksIHdlIHdpbGwg
cmVtYWluIHNvIGFzIGxvbmcgYXMgdGhlIG1lZGlhIGVsZW1lbnQgaW4gcXVlc3RvbiBzdGF5cwor
ICAgICAgICBsb2FkZWQsIGhhcyBwbGF5ZWQsIGFuZCBpcyBuZXZlciBpbnRlcnJ1cHRlZCBieSB0
aGUgc3lzdGVtLgorCisgICAgICAgIE1ha2UgTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hIGEgcHJv
cGVyIHN1YmNsYXNzIG9mIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlciwgYW5kIG1ha2UKKyAg
ICAgICAgTWVkaWFTZXNzaW9uTWFuYWdlcmlPUyBhbmQgLU1hYyBzdWJjbGFzc2VzIG9mIHRoZSAt
Q29jb2EgY2xhc3MuIEFkZCBhIG5ldworICAgICAgICBtX2hhc1BsYXllZFNpbmNlTGFzdEludGVy
cnVwdGlvbiBpdmFyIHRvIFBsYXRmb3JtTWVkaWFTZXNzaW9uLCBzZXQgd2hlbiB0aGUgc3RhdGUo
KSBjaGFuZ2VzCisgICAgICAgIHRvIFBsYXlpbmcsIGFuZCBjbGVhcmVkIGR1cmluZyBhbiBpbnRl
cnJ1cHRpb24uIENoZWNrIHRoaXMgZmxhZyB3aGVuIGRlY2lkaW5nIHdoYXQgYXVkaW8gCisgICAg
ICAgIHNlc3Npbm8gY2F0ZWdvcnkgdG8gc2V0IGluIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS4K
KworICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6c2V0U3RhdGUpOgorICAgICAgICAqIHBsYXRmb3Jt
L2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9y
bU1lZGlhU2Vzc2lvbjo6aGFzUGxheWVkU2luY2VMYXN0SW50ZXJydXB0aW9uIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uOjpjbGVhckhhc1BsYXllZFNpbmNl
TGFzdEludGVycnVwdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRp
YVNlc3Npb25NYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNz
aW9uTWFuYWdlcjo6dXBkYXRlU2Vzc2lvblN0YXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6YXVkaW9IYXJkd2FyZUxpc3RlbmVyKToK
KyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBkYXRlU2Vz
c2lvblN0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25N
YW5hZ2VyQ29jb2EuY3BwOgorICAgICAgICAoTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjp1cGRh
dGVTZXNzaW9uU3RhdGUpOgorICAgICAgICAoTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjpiZWdp
bkludGVycnVwdGlvbik6CisgICAgICAgIChQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVw
ZGF0ZVNlc3Npb25TdGF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vY29j
b2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmg6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmg6CisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVNlc3Npb25NYW5hZ2VyaU9TOjpNZWRpYVNlc3Npb25NYW5hZ2VyaU9TKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oOgorICAgICAgICAq
IHBsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFTZXNzaW9uTWFuYWdlck1hYzo6TWVkaWFTZXNzaW9uTWFuYWdlck1hYyk6
CisKIDIwMTgtMDctMjAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW2lPU10gUGlQIGdldHMgaW50byBhIGJhZCBzdGF0ZSBpZiBlbnRlcmluZyBQaVAgZmFpbHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCA0ODc2YWM4MGMxNGI3OTA2NDc4YTY4ZjkxYWYyN2M0NjRjODk4NGRiLi44NTI4OGNkNDc0
OGJiZmU0NzdhMTZmNmI4ODg0MDhlMWZiMzg0ZjQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zOTUxLDYgKzM5NTEsNyBAQAog
CQlDRDFFNzM0NzE2N0JDNzhFMDA5QTg4NUQgLyogVGV4dFRyYWNrUmVwcmVzZW50YXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QxRTczNDYx
NjdCQzc4RTAwOUE4ODVEIC8qIFRleHRUcmFja1JlcHJlc2VudGF0aW9uLmNwcCAqLzsgfTsKIAkJ
Q0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VSTFNlc3Npb24ubW0gaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDIyNUMwOTFDNDZGQkY0
MDAxNDA3NjEgLyogV2ViQ29yZU5TVVJMU2Vzc2lvbi5tbSAqLzsgfTsKIAkJQ0QyMjVDMEMxQzQ2
RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VSTFNlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEMjI1QzBBMUM0NkZCRjQwMDE0MDc2MSAvKiBX
ZWJDb3JlTlNVUkxTZXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQ0QyMjdFM0EyMTEzQzg2MjAwRDI4NUFGIC8qIE1lZGlhU2Vzc2lvbk1h
bmFnZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0QyMjdFMzYyMTEzQUVGQTAwRDI4NUFGIC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUNEMkY0
QTI0MThEODlGNzAwMDYzNzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEMkY0QTIyMThEODlGNzAwMDYz
NzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDRDJGNEEyODE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVk
aW9IYXJkd2FyZUxpc3RlbmVyTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDRDJGNEEyNjE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJkd2FyZUxp
c3RlbmVyTWFjLmggKi87IH07CiAJCUNEMzE4NjIyMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2
YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0QzMTg2MjAxOTlGMUUyQTAwMzBBMEY3IC8qIENETVByaXZhdGVNZWRp
YVNvdXJjZUFWRk9iakMubW0gKi87IH07CkBAIC0xMzE4Niw2ICsxMzE4Nyw3IEBACiAJCUNEMUU3
MzQ2MTY3QkM3OEUwMDlBODg1RCAvKiBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjI1QzA5MUM0NkZCRjQwMDE0MDc2
MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gV2ViQ29yZU5TVVJMU2Vzc2lvbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQ0QyMjVDMEExQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VSTFNlc3Npb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZU5TVVJMU2Vzc2lvbi5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDIyN0UzNjIxMTNBRUZBMDBEMjg1QUYg
LyogTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1lZGlhU2Vzc2lv
bk1hbmFnZXJDb2NvYS5oOyBwYXRoID0gY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUwMTQ1NzVDMUIwMDc4MjA3RCAv
KiBNZWRpYUNvbnRyb2xsZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhQ29udHJvbGxlci5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUyMTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlh
Q29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01l
ZGlhQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEMjdGNkUz
MTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlhQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU01lZGlhQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtMjQ2NzAsNiArMjQ2NzIsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKIAkJCQlDRDY2OUQ2NjFEMjMyREZGMDA0RDE4NjYgLyogTWVkaWFTZXNzaW9u
TWFuYWdlckNvY29hLmNwcCAqLywKKwkJCQlDRDIyN0UzNjIxMTNBRUZBMDBEMjg1QUYgLyogTWVk
aWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8sCiAJCQkJQ0RFNjY3QTIxRTRCQkYxNTAwRTgxNTRB
IC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5jcHAgKi8sCiAJCQkJQ0RFNjY3QTMxRTRCQkYxNTAwRTgx
NTRBIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5oICovLAogCQkJKTsKQEAgLTI3ODY3LDYgKzI3ODcw
LDcgQEAKIAkJCQk4MzcxQUMzQjFGNTA5QkU0MDBGQkYyODQgLyogRXJyb3JDYWxsYmFjay5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMkVDRjdBRTIxMDE2MkI1ODAwNDI3REU3IC8qIEVycm9yRXZlbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTg1MDMxQjQyMEE0NEVGQzcwMEY5OTJFMCAvKiBFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0QyMjdFM0EyMTEzQzg2MjAwRDI4NUFGIC8qIE1lZGlhU2Vz
c2lvbk1hbmFnZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDEzOEQzMzUxMjQ0MDU0ODAw
MzIzRDMzIC8qIEV2ZW50Q29udGV4dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE4QTA2RDAxMzND
MDRENTAwQ0QzNzlDIC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTND
MDlBNTMwQjA2NERCMzAwNUFCRDREIC8qIEV2ZW50SGFuZGxlci5oIGluIEhlYWRlcnMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vz
c2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vz
c2lvbi5jcHAKaW5kZXggZWUxOWI2NzUzMGVjYzFjYmM3NDJkNWNlOTQzNWI3MTQ5OWEwZWI4OC4u
ZmE5OWZlZTNjYjkwY2MwNmI0Yzk3OTM4YWEzZTAzZDcyYzVjMTliNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmNwcApA
QCAtMTE3LDYgKzExNyw4IEBAIHZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb246OnNldFN0YXRlKFN0
YXRlIHN0YXRlKQogCiAgICAgSU5GT19MT0coTE9HSURFTlRJRklFUiwgc3RhdGUpOwogICAgIG1f
c3RhdGUgPSBzdGF0ZTsKKyAgICBpZiAobV9zdGF0ZSA9PSBTdGF0ZTo6UGxheWluZykKKyAgICAg
ICAgbV9oYXNQbGF5ZWRTaW5jZUxhc3RJbnRlcnJ1cHRpb24gPSB0cnVlOwogICAgIFBsYXRmb3Jt
TWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcigpLnNlc3Npb25TdGF0ZUNoYW5nZWQo
KnRoaXMpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9Q
bGF0Zm9ybU1lZGlhU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxh
dGZvcm1NZWRpYVNlc3Npb24uaAppbmRleCBmZDZmMDhjZGZiZDllYTc4OTkxZDU5NjY2MzRjMDg3
MzJlODgwOGNhLi5kOTc2NzlkYjk0NTkxYWYxMjEwZTAwNzI1OGI2N2M5ZGEwZmFkYzlmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lv
bi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNz
aW9uLmgKQEAgLTE3Niw2ICsxNzYsOSBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dzTm93UGxheWluZ0NvbnRyb2xzVmlzaWJpbGl0eSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9
CiAKKyAgICBib29sIGhhc1BsYXllZFNpbmNlTGFzdEludGVycnVwdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1faGFzUGxheWVkU2luY2VMYXN0SW50ZXJydXB0aW9uOyB9CisgICAgdm9pZCBjbGVhckhh
c1BsYXllZFNpbmNlTGFzdEludGVycnVwdGlvbigpIHsgbV9oYXNQbGF5ZWRTaW5jZUxhc3RJbnRl
cnJ1cHRpb24gPSBmYWxzZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgUGxhdGZvcm1NZWRpYVNlc3Np
b25DbGllbnQmIGNsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50OyB9CiAKQEAgLTE5NCw2
ICsxOTcsNyBAQCBwcml2YXRlOgogICAgIGludCBtX2ludGVycnVwdGlvbkNvdW50IHsgMCB9Owog
ICAgIGJvb2wgbV9ub3RpZnlpbmdDbGllbnQ7CiAgICAgYm9vbCBtX2lzUGxheWluZ1RvV2lyZWxl
c3NQbGF5YmFja1RhcmdldCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2hhc1BsYXllZFNpbmNlTGFz
dEludGVycnVwdGlvbiB7IGZhbHNlIH07CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAg
ICBSZWY8Y29uc3QgTG9nZ2VyPiBtX2xvZ2dlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwCmlu
ZGV4IDk1MzE3MzExMTkwNDcyZmNhMWI3N2YzYjIyOTI5NzNhNDZkZjEwYWEuLjg5ZmU1NTBhNzYx
ZGRmZWJjYWQ3YzQyMDMwZDUzMTJmMTQ0NjRlMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmNw
cApAQCAtMzU3LDEyICszNTcsNiBAQCB2b2lkIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6
c2Vzc2lvbkNhblByb2R1Y2VBdWRpb0NoYW5nZWQoUGxhdGZvcm1NZWRpYVNlcwogICAgIHVwZGF0
ZVNlc3Npb25TdGF0ZSgpOwogfQogCi0jaWYgIVBMQVRGT1JNKENPQ09BKQotdm9pZCBQbGF0Zm9y
bU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCi17Ci19Ci0jZW5kaWYK
LQogdm9pZCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OmRpZFJlY2VpdmVSZW1vdGVDb250
cm9sQ29tbWFuZChQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6UmVtb3RlQ29udHJvbENvbW1hbmRUeXBl
IGNvbW1hbmQsIGNvbnN0IFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb21tYW5kQXJndW1l
bnQqIGFyZ3VtZW50KQogewogICAgIFBsYXRmb3JtTWVkaWFTZXNzaW9uKiBhY3RpdmVTZXNzaW9u
ID0gY3VycmVudFNlc3Npb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgKaW5kZXggYWQzNjM4Mzk2
ODMzNzEyNjg0NzZiMGI4NTNiNjBiYmY2ZjUwZGNiNC4uNGM5ZmU2ZWYyNWU4ZDQ1YmM5YzFiOGJl
ZTAyOTExMzIxMzM5YWEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgKQEAgLTY2LDcgKzY2LDcg
QEAgcHVibGljOgogICAgIGJvb2wgd2lsbElnbm9yZVN5c3RlbUludGVycnVwdGlvbnMoKSBjb25z
dCB7IHJldHVybiBtX3dpbGxJZ25vcmVTeXN0ZW1JbnRlcnJ1cHRpb25zOyB9CiAgICAgdm9pZCBz
ZXRXaWxsSWdub3JlU3lzdGVtSW50ZXJydXB0aW9ucyhib29sIGlnbm9yZSkgeyBtX3dpbGxJZ25v
cmVTeXN0ZW1JbnRlcnJ1cHRpb25zID0gaWdub3JlOyB9CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2
b2lkIGJlZ2luSW50ZXJydXB0aW9uKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpJbnRlcnJ1cHRpb25U
eXBlKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgYmVnaW5JbnRlcnJ1cHRpb24o
UGxhdGZvcm1NZWRpYVNlc3Npb246OkludGVycnVwdGlvblR5cGUpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgZW5kSW50ZXJydXB0aW9uKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpFbmRJbnRlcnJ1
cHRpb25GbGFncyk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFwcGxpY2F0aW9uV2lsbEJl
Y29tZUluYWN0aXZlKCkgY29uc3Q7CkBAIC0xMjMsMTAgKzEyMywxMiBAQCBwcm90ZWN0ZWQ6CiAg
ICAgUGxhdGZvcm1NZWRpYVNlc3Npb24qIGZpbmRTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPGJvb2wo
UGxhdGZvcm1NZWRpYVNlc3Npb24mLCBzaXplX3QpPiYpIGNvbnN0OwogICAgIGJvb2wgYW55T2ZT
ZXNzaW9ucyhjb25zdCBGdW5jdGlvbjxib29sKFBsYXRmb3JtTWVkaWFTZXNzaW9uJiwgc2l6ZV90
KT4mIHByZWRpY2F0ZSkgY29uc3QgeyByZXR1cm4gZmluZFNlc3Npb24ocHJlZGljYXRlKTsgfQog
CisgICAgQXVkaW9IYXJkd2FyZUxpc3RlbmVyKiBhdWRpb0hhcmR3YXJlTGlzdGVuZXIoKSB7IHJl
dHVybiBtX2F1ZGlvSGFyZHdhcmVMaXN0ZW5lci5nZXQoKTsgfQorCiBwcml2YXRlOgogICAgIGZy
aWVuZCBjbGFzcyBJbnRlcm5hbHM7CiAKLSAgICB2b2lkIHVwZGF0ZVNlc3Npb25TdGF0ZSgpOwor
ICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTZXNzaW9uU3RhdGUoKSB7IH0KIAogICAgIC8vIFJlbW90
ZUNvbW1hbmRMaXN0ZW5lckNsaWVudAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZGlkUmVjZWl2
ZVJlbW90ZUNvbnRyb2xDb21tYW5kKFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb250cm9s
Q29tbWFuZFR5cGUsIGNvbnN0IFBsYXRmb3JtTWVkaWFTZXNzaW9uOjpSZW1vdGVDb21tYW5kQXJn
dW1lbnQqKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuY3BwCmluZGV4IGIz
ZTE2Mjc5ZGY4Yjk1YzUxNTI2ZDU3NzJmNTQ4MGI4YTM3ZGNkMWEuLjVkYTUxMjdjYjYzOTFlM2Zh
MGZiNmNhZTAzNWRiNzE2MjI4MWJkZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL2NvY29hL01lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmNw
cApAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaCIKKyNpbmNsdWRlICJNZWRpYVNlc3Npb25N
YW5hZ2VyQ29jb2EuaCIKIAogI2lmIFVTRShBVURJT19TRVNTSU9OKQogCkBAIC0zOCw3ICszOCw3
IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogc3RhdGljIGNvbnN0IHNpemVfdCBrV2ViQXVk
aW9CdWZmZXJTaXplID0gMTI4Owogc3RhdGljIGNvbnN0IHNpemVfdCBrTG93UG93ZXJWaWRlb0J1
ZmZlclNpemUgPSA0MDk2OwogCi12b2lkIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBk
YXRlU2Vzc2lvblN0YXRlKCkKK3ZvaWQgTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjp1cGRhdGVT
ZXNzaW9uU3RhdGUoKQogewogICAgIExPRyhNZWRpYSwgIlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFu
YWdlcjo6c2NoZWR1bGVVcGRhdGVTZXNzaW9uU3RhdGUoKSAtIHR5cGVzOiBWaWRlbyglZCksIEF1
ZGlvKCVkKSwgV2ViQXVkaW8oJWQpIiwgY291bnQoUGxhdGZvcm1NZWRpYVNlc3Npb246OlZpZGVv
KSwgY291bnQoUGxhdGZvcm1NZWRpYVNlc3Npb246OkF1ZGlvKSwgY291bnQoUGxhdGZvcm1NZWRp
YVNlc3Npb246OldlYkF1ZGlvKSk7CiAKQEAgLTUzLDcgKzUzLDcgQEAgdm9pZCBQbGF0Zm9ybU1l
ZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCiAgICAgICAgIC8vIGNhdXNl
cyBtZWRpYSBMYXlvdXRUZXN0cyB0byBmYWlsIG9uIDEwLjguCiAKICAgICAgICAgc2l6ZV90IGJ1
ZmZlclNpemU7Ci0gICAgICAgIGlmIChtX2F1ZGlvSGFyZHdhcmVMaXN0ZW5lciAmJiBtX2F1ZGlv
SGFyZHdhcmVMaXN0ZW5lci0+b3V0cHV0RGV2aWNlU3VwcG9ydHNMb3dQb3dlck1vZGUoKSkKKyAg
ICAgICAgaWYgKGF1ZGlvSGFyZHdhcmVMaXN0ZW5lcigpICYmIGF1ZGlvSGFyZHdhcmVMaXN0ZW5l
cigpLT5vdXRwdXREZXZpY2VTdXBwb3J0c0xvd1Bvd2VyTW9kZSgpKQogICAgICAgICAgICAgYnVm
ZmVyU2l6ZSA9IGtMb3dQb3dlclZpZGVvQnVmZmVyU2l6ZTsKICAgICAgICAgZWxzZQogICAgICAg
ICAgICAgYnVmZmVyU2l6ZSA9IGtXZWJBdWRpb0J1ZmZlclNpemU7CkBAIC03MCw3ICs3MCw3IEBA
IHZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjp1cGRhdGVTZXNzaW9uU3RhdGUoKQog
ICAgICAgICBhdXRvIHR5cGUgPSBzZXNzaW9uLm1lZGlhVHlwZSgpOwogICAgICAgICBpZiAodHlw
ZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6V2ViQXVkaW8pCiAgICAgICAgICAgICBoYXNXZWJB
dWRpb1R5cGUgPSB0cnVlOwotICAgICAgICBpZiAoKHR5cGUgPT0gUGxhdGZvcm1NZWRpYVNlc3Np
b246OlZpZGVvQXVkaW8gfHwgdHlwZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6QXVkaW8pICYm
IHNlc3Npb24uY2FuUHJvZHVjZUF1ZGlvKCkgJiYgc2Vzc2lvbi5zdGF0ZSgpID09IFBsYXRmb3Jt
TWVkaWFTZXNzaW9uOjpQbGF5aW5nKQorICAgICAgICBpZiAoKHR5cGUgPT0gUGxhdGZvcm1NZWRp
YVNlc3Npb246OlZpZGVvQXVkaW8gfHwgdHlwZSA9PSBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6QXVk
aW8pICYmIHNlc3Npb24uY2FuUHJvZHVjZUF1ZGlvKCkgJiYgc2Vzc2lvbi5oYXNQbGF5ZWRTaW5j
ZUxhc3RJbnRlcnJ1cHRpb24oKSkKICAgICAgICAgICAgIGhhc0F1ZGlibGVBdWRpb09yVmlkZW9N
ZWRpYVR5cGUgPSB0cnVlOwogICAgICAgICBpZiAoc2Vzc2lvbi5pc1BsYXlpbmdUb1dpcmVsZXNz
UGxheWJhY2tUYXJnZXQoKSkKICAgICAgICAgICAgIGhhc0F1ZGlibGVBdWRpb09yVmlkZW9NZWRp
YVR5cGUgPSB0cnVlOwpAQCAtODcsNCArODcsMTUgQEAgdm9pZCBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXI6OnVwZGF0ZVNlc3Npb25TdGF0ZSgpCiAgICAgICAgIEF1ZGlvU2Vzc2lvbjo6c2hh
cmVkU2Vzc2lvbigpLnNldENhdGVnb3J5KEF1ZGlvU2Vzc2lvbjo6Tm9uZSk7CiB9CiAKK3ZvaWQg
TWVkaWFTZXNzaW9uTWFuYWdlckNvY29hOjpiZWdpbkludGVycnVwdGlvbihQbGF0Zm9ybU1lZGlh
U2Vzc2lvbjo6SW50ZXJydXB0aW9uVHlwZSB0eXBlKQoreworICAgIGlmICh0eXBlID09IFBsYXRm
b3JtTWVkaWFTZXNzaW9uOjpJbnRlcnJ1cHRpb25UeXBlOjpTeXN0ZW1JbnRlcnJ1cHRpb24pIHsK
KyAgICAgICAgZm9yRWFjaFNlc3Npb24oW10gKFBsYXRmb3JtTWVkaWFTZXNzaW9uJiBzZXNzaW9u
LCBzaXplX3QpIHsKKyAgICAgICAgICAgIHNlc3Npb24uY2xlYXJIYXNQbGF5ZWRTaW5jZUxhc3RJ
bnRlcnJ1cHRpb24oKTsKKyAgICAgICAgfSk7CisgICAgfQorCisgICAgUGxhdGZvcm1NZWRpYVNl
c3Npb25NYW5hZ2VyOjpiZWdpbkludGVycnVwdGlvbih0eXBlKTsKK30KKwogI2VuZGlmIC8vIFVT
RShBVURJT19TRVNTSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9jb2NvYS9NZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
MWZlYTE0NTRkN2RiZDFkNTM1ZWNkNzU3MGNmMmI5OTBmMDMwZjkxCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vY29jb2EvTWVkaWFTZXNzaW9uTWFuYWdl
ckNvY29hLmgKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aWYgUExBVEZPUk0oQ09DT0EpCisKKyNpbmNsdWRlICJQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFn
ZXIuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2Vy
Q29jb2EgOiBwdWJsaWMgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyIHsKK3B1YmxpYzoKKyAg
ICB2b2lkIHVwZGF0ZVNlc3Npb25TdGF0ZSgpIG92ZXJyaWRlOworICAgIHZvaWQgYmVnaW5JbnRl
cnJ1cHRpb24oUGxhdGZvcm1NZWRpYVNlc3Npb246OkludGVycnVwdGlvblR5cGUpIG92ZXJyaWRl
OworfTsKKworfQorCisjZW5kaWYgLy8gUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1Mu
aAppbmRleCBlZTE5M2Y0ZjUyNzUwNjU0MThhOTg0NGFhNmRjYjI1MTAxODZhNDVkLi5iOWE4NjA4
NGVlYzJiZTkzMTk2ZTc3ZDA1MGY1YjI3ZDNkODYwMzgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmgK
QEAgLTI3LDcgKzI3LDcgQEAKIAogI2lmIFBMQVRGT1JNKElPUykKIAotI2luY2x1ZGUgIlBsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIgorI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbk1hbmFnZXJD
b2NvYS5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIAogT0JKQ19DTEFTUyBXZWJNZWRp
YVNlc3Npb25IZWxwZXI7CkBAIC00MSw3ICs0MSw3IEBAIGV4dGVybiBOU1N0cmluZyogV2ViVUlB
cHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZE5vdGlmaWNhdGlvbjsKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1jbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2VyaU9TIDogcHVibGljIFBsYXRmb3Jt
TWVkaWFTZXNzaW9uTWFuYWdlciB7CitjbGFzcyBNZWRpYVNlc3Npb25NYW5hZ2VyaU9TIDogcHVi
bGljIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYSB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+TWVk
aWFTZXNzaW9uTWFuYWdlcmlPUygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tCmluZGV4IGNhNjM0
YjdkZmUyMDkxNDM1NzEzYTM4MDk4ZjcyNGI3OTYwZDg0ZjUuLjFjYmZjNjU5MmQwNDlmNzJhNDdh
ZTc0YmIwNDRkZDlhOWM0ZjBhMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tCkBAIC0xNDQsNyAr
MTQ0LDcgQEAgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyKiBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXI6OnNoYXJlZE1hbmFnZXJJZkV4aXN0cygKIH0KIAogTWVkaWFTZXNzaW9uTWFuYWdl
cmlPUzo6TWVkaWFTZXNzaW9uTWFuYWdlcmlPUygpCi0gICAgOiBQbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXIoKQorICAgIDogTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hKCkKIHsKICAgICBCRUdJ
Tl9CTE9DS19PQkpDX0VYQ0VQVElPTlMKICAgICBtX29iamNPYnNlcnZlciA9IGFkb3B0TlMoW1tX
ZWJNZWRpYVNlc3Npb25IZWxwZXIgYWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6dGhpc10pOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1h
bmFnZXJNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Np
b25NYW5hZ2VyTWFjLmgKaW5kZXggNDk5ZjA1YjdiMjU1ZTgxMGNjNzE1ZmJjY2RlNDZmMTRlYThj
M2ExNC4uMjkwNzY5NTBlMWFjZWMyNjljZmE3NGZlZGMwZWYxNzVhYzUyODc3NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJN
YWMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9u
TWFuYWdlck1hYy5oCkBAIC0yOCwxMSArMjgsMTEgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNp
bmNsdWRlICJHZW5lcmljVGFza1F1ZXVlLmgiCi0jaW5jbHVkZSAiUGxhdGZvcm1NZWRpYVNlc3Np
b25NYW5hZ2VyLmgiCisjaW5jbHVkZSAiTWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgTWVkaWFTZXNzaW9uTWFuYWdlck1hYyA6IHB1Ymxp
YyBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIgeworY2xhc3MgTWVkaWFTZXNzaW9uTWFuYWdl
ck1hYyA6IHB1YmxpYyBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EgewogcHVibGljOgogICAgIHZp
cnR1YWwgfk1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbQpp
bmRleCA2N2FmMDhiNjNjYWRhYzg2OTRlODhlYjI4Y2E2Yzg3NTNjNWRhYjRjLi5jYjgzMzA0Y2Y4
OWFkY2FlMDA3ZDI5MDk4MWQzNDI5ODFkNjllYjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbQpA
QCAtNTUsNyArNTUsNyBAQCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIqIFBsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcklmRXhpc3RzKAogfQogCiBNZWRpYVNlc3Np
b25NYW5hZ2VyTWFjOjpNZWRpYVNlc3Npb25NYW5hZ2VyTWFjKCkKLSAgICA6IFBsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlcigpCisgICAgOiBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EoKQogewog
ICAgIHJlc2V0UmVzdHJpY3Rpb25zKCk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMWNjNjZhODJkODQzNmU0ZWVmN2Yz
NzFiYTg5YzA0NmY0NjBlZjYwNi4uZWZlMDgzZDUyYWQ2M2UyNmQ1ODYxY2U4ZWI5ZmY0MWJlNDNk
ZWRmMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE4LTA4LTAyICBKZXIgTm9ibGUgIDxqZXIu
bm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIENvbnRyb2wgY2VudGVyIGNvbnRyb2xzIGRpc2Fw
cGVhciB3aGVuIHBhdXNpbmcsIGxvY2tpbmcgZGV2aWNlLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MjgyCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS80MjQ5NzgwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVz
ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvbWVkaWEvYXVk
aW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVzZWQuaHRtbDogQWRkZWQuCisgICAgICAgICog
cGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTgtMDgtMDEgIE5hbiBXYW5nICA8
bl93YW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDogQU9NOiBBZGQgQVJJQSBJREwgQXR0cmli
dXRlIFJlZmxlY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0
RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMK
aW5kZXggNDgxMmUyZmQ1Yzk0MjdmNmFjNDM5ZTMyZWEwYjY4YTBjMWEyZmU3Ny4uYjg4MWVkMDA0
ZWMwMTcyN2QxZjUxOGI5MzA3NmU5ZjljZjQ4YTAzMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMzMzgsMyArMzMzOCw2IEBAIHdlYmtpdC5vcmcvYi8x
ODY3MTQgZmFzdC9mb3Jtcy9kYXRhbGlzdC9kYXRhbGlzdC10ZXh0aW5wdXQta2V5ZG93bi5odG1s
IFsgU2tpcCBdCiAKICMgV2UgYXJlIG9ubHkgYWNjZXB0aW5nIEdMU0wzIGZvciBtYWNPUy4gCiB3
ZWJraXQub3JnL2IvMTg3OTgyIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi9nbHNsMyBbIFNraXAg
XQorCisjIEF1ZGlvIHNlc3Npb24gZG9lcyBub3QgaGF2ZSBhICJub25lIiBjYXRlZ29yeSBvbiBp
T1MgWyBTa2lwIF0KK3dlYmtpdC5vcmcvYi8xODgyODUgcGxhdGZvcm0vbWFjL21lZGlhL2F1ZGlv
LXNlc3Npb24tY2F0ZWdvcnktdmlkZW8tcGF1c2VkLmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNhdGVnb3J5LXZp
ZGVvLXBhdXNlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEv
YXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVzZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjllYTA3NTUxZTJhODQ5NGFlMjk2NGM1MGRlMzI2YTQ1Yjg3OWY2ZDIKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRl
Z29yeS12aWRlby1wYXVzZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTkgQEAKKworUlVOKGlu
dGVybmFscy5zZXR0aW5ncy5zZXRTaG91bGRNYW5hZ2VBdWRpb1Nlc3Npb25DYXRlZ29yeSh0cnVl
KSkKK1JVTih2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICIuLi8uLi8uLi9tZWRp
YS9jb250ZW50L3Rlc3QiKSkKK1JVTih2aWRlby5wbGF5KCkpCitFVkVOVChwbGF5aW5nKQorRVhQ
RUNURUQgKGludGVybmFscy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpID09ICdNZWRpYVBsYXliYWNr
JykgT0sKK1JVTih2aWRlby5wYXVzZSgpKQorRVZFTlQocGF1c2UpCitFWFBFQ1RFRCAoaW50ZXJu
YWxzLmF1ZGlvU2Vzc2lvbkNhdGVnb3J5KCkgPT0gJ01lZGlhUGxheWJhY2snKSBPSworUlVOKGlu
dGVybmFscy5iZWdpbk1lZGlhU2Vzc2lvbkludGVycnVwdGlvbigic3lzdGVtIikpCitFWFBFQ1RF
RCAoaW50ZXJuYWxzLmF1ZGlvU2Vzc2lvbkNhdGVnb3J5KCkgPT0gJ05vbmUnKSBPSworUlVOKHZp
ZGVvLnBsYXkoKSkKK0VWRU5UKHBsYXlpbmcpCitFWFBFQ1RFRCAoaW50ZXJuYWxzLmF1ZGlvU2Vz
c2lvbkNhdGVnb3J5KCkgPT0gJ01lZGlhUGxheWJhY2snKSBPSworUlVOKHZpZGVvLnNyYyA9ICIi
KQorUlVOKHZpZGVvLmxvYWQoKSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0
ZWdvcnkoKSA9PSAnTm9uZScpIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVz
ZWQuaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRpYS9hdWRpby1zZXNzaW9uLWNh
dGVnb3J5LXZpZGVvLXBhdXNlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVmNWRhYTU3MTUyNTI5MTE3NGNm
Yzk0OTFjMGE2MzhkZjU3OTVmNjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvbWVkaWEvYXVkaW8tc2Vzc2lvbi1jYXRlZ29yeS12aWRlby1wYXVzZWQuaHRtbApA
QCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRp
dGxlPmF1ZGlvLXNlc3Npb24tY2F0ZWdvcnktdHJhY2stY2hhbmdlPC90aXRsZT4KKyAgICA8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vbWVkaWEvdmlkZW8tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL21lZGlhL21lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgorICAgIDxz
Y3JpcHQ+CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYyBldmVudCA9
PiB7CisgICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKKyAgICAgICAgcnVuKCdpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0U2hvdWxkTWFuYWdlQXVkaW9TZXNzaW9uQ2F0ZWdvcnkodHJ1ZSknKTsKKyAg
ICAgICAgcnVuKCd2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICIuLi8uLi8uLi9t
ZWRpYS9jb250ZW50L3Rlc3QiKScpOworICAgICAgICBydW4oJ3ZpZGVvLnBsYXkoKScpOworICAg
ICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAncGxheWluZycpOworICAgICAgICBhd2FpdCB0ZXN0
RXhwZWN0ZWRFdmVudHVhbGx5KCdpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKScsICdN
ZWRpYVBsYXliYWNrJyk7CisKKyAgICAgICAgcnVuKCd2aWRlby5wYXVzZSgpJyk7CisgICAgICAg
IGF3YWl0IHdhaXRGb3IodmlkZW8sICdwYXVzZScpOworICAgICAgICBhd2FpdCB0ZXN0RXhwZWN0
ZWRFdmVudHVhbGx5KCdpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKScsICdNZWRpYVBs
YXliYWNrJyk7CisKKyAgICAgICAgcnVuKCdpbnRlcm5hbHMuYmVnaW5NZWRpYVNlc3Npb25JbnRl
cnJ1cHRpb24oInN5c3RlbSIpJyk7CisgICAgICAgIGF3YWl0IHRlc3RFeHBlY3RlZEV2ZW50dWFs
bHkoJ2ludGVybmFscy5hdWRpb1Nlc3Npb25DYXRlZ29yeSgpJywgJ05vbmUnKTsKKworICAgICAg
ICBydW4oJ3ZpZGVvLnBsYXkoKScpOworICAgICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAncGxh
eWluZycpOworICAgICAgICBhd2FpdCB0ZXN0RXhwZWN0ZWRFdmVudHVhbGx5KCdpbnRlcm5hbHMu
YXVkaW9TZXNzaW9uQ2F0ZWdvcnkoKScsICdNZWRpYVBsYXliYWNrJyk7CisKKyAgICAgICAgcnVu
KCd2aWRlby5zcmMgPSAiIicpOworICAgICAgICBydW4oJ3ZpZGVvLmxvYWQoKScpOworICAgICAg
ICBhd2FpdCB0ZXN0RXhwZWN0ZWRFdmVudHVhbGx5KCdpbnRlcm5hbHMuYXVkaW9TZXNzaW9uQ2F0
ZWdvcnkoKScsICdOb25lJyk7CisKKyAgICAgICAgZW5kVGVzdCgpOworICAgIH0pOworICAgIDwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8
L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>