<?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>189743</bug_id>
          
          <creation_ts>2018-09-19 03:16:31 -0700</creation_ts>
          <short_desc>[GTK][AC] Resizing the window doesn&apos;t always update the visible rect</short_desc>
          <delta_ts>2018-10-25 04:09:46 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergio Villar Senin">svillar</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>ht990332</cc>
    
    <cc>magomez</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>tpopela</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1460903</commentid>
    <comment_count>0</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2018-09-19 03:16:31 -0700</bug_when>
    <thetext>I&apos;m using Debian&apos;s 2.22.0

Not sure if it&apos;s the same case as the old https://bugs.webkit.org/show_bug.cgi?id=115096 but sometimes I enlarge a window and the new space for the visible rect is just filled with a grey color but the contents of the web page are not painted there.

I still haven&apos;t found a reliable way to reproduce it, but you just need to resize the window several times (perhaps not continuously but not sure) and the problem will eventually show up. I&apos;m adding the [AC] tag because I suspect that&apos;s the culprit of the visual artifact I&apos;m observing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460905</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2018-09-19 03:21:50 -0700</bug_when>
    <thetext>Yes, this is happening to me too, I had in my TODO to investigate the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460931</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-19 06:27:35 -0700</bug_when>
    <thetext>This has been broken since I started back in 2014.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1460933</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2018-09-19 06:31:19 -0700</bug_when>
    <thetext>This broke recently for me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1461300</commentid>
    <comment_count>4</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2018-09-20 04:30:16 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #2)
&gt; This has been broken since I started back in 2014.

I&apos;ve contributed to WK since 2010 and using it for even longer time and this is the first time it happens to me.

I don&apos;t deny that it might have been a problem back then in some specific situations but now it&apos;s happening every day to me and several times each day.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1462007</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-21 12:44:55 -0700</bug_when>
    <thetext>There has always been a conspicuously-broken visual issue, when resizing in AC mode, where the newly-visible portion of the window is gray/white, then painted later (too late), a problem which does not exist in non-AC mode.

Seems that, as of recently, the newly-visible rect is sometimes never painted over at all, rather than just being painted late like before. I&apos;ve noticed this a few times since you reported this bug and I agree that it&apos;s a new problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1462047</commentid>
    <comment_count>6</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2018-09-21 13:28:28 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #5)
&gt; There has always been a conspicuously-broken visual issue, when resizing in
&gt; AC mode, where the newly-visible portion of the window is gray/white, then
&gt; painted later (too late), a problem which does not exist in non-AC mode.

Well I think that&apos;s the price you pay for having WebProcess composition. The UI is resized, so it asks the WebProcess for new contents, but they cannot be served immediately so you end up with those unpainted areas. That does not happen with UIProcess compositing because the UI process can already resolve the resizing/zooming/etc... interactions because it has a local copy of the compositing tree.

A way to mitigate that is (I don&apos;t know if we&apos;re doing that) to render also content which is not currently in the visible rect to help with scrolling/resizing.

&gt; Seems that, as of recently, the newly-visible rect is sometimes never
&gt; painted over at all, rather than just being painted late like before. I&apos;ve
&gt; noticed this a few times since you reported this bug and I agree that it&apos;s a
&gt; new problem.

Great. Let&apos;s see if we manage to bisect it and find the culprit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1462520</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-23 07:26:50 -0700</bug_when>
    <thetext>(In reply to Sergio Villar Senin from comment #6)
&gt; A way to mitigate that is (I don&apos;t know if we&apos;re doing that) to render also
&gt; content which is not currently in the visible rect to help with
&gt; scrolling/resizing.

Maybe we should do that then. This is one of the reasons we don&apos;t want to switch AC mode to always on: because resizing in AC mode looks so terrible....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1462699</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-24 08:37:36 -0700</bug_when>
    <thetext>*** Bug 189849 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1466054</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-10-03 07:26:48 -0700</bug_when>
    <thetext>Hey Adrian, let&apos;s consider this one a blocker for the 2.22.3 release.

(In reply to Sergio Villar Senin from comment #6)
&gt; Great. Let&apos;s see if we manage to bisect it and find the culprit.

I agree we need to bisect this to make progress. I didn&apos;t have time this week.

Would be really nice if someone with a build machine could handle it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1466063</commentid>
    <comment_count>10</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2018-10-03 08:16:48 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #9)
&gt; Hey Adrian, let&apos;s consider this one a blocker for the 2.22.3 release.

Sure thing. There&apos;s a good bunch of MSE patches which are already
merged in the release branch waiting for 2.22.3 to happen, but at
least we don&apos;t have anyone completely blocked out of being able to
watch videos so that&apos;s not in a rush anymore — we can wait for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470058</commentid>
    <comment_count>11</comment_count>
      <attachid>352559</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-17 02:53:44 -0700</bug_when>
    <thetext>Created attachment 352559
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470072</commentid>
    <comment_count>12</comment_count>
      <attachid>352559</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-17 02:59:29 -0700</bug_when>
    <thetext>Comment on attachment 352559
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:206
&gt; -    if (m_surface &amp;&amp; m_surface-&gt;resize(size))
&gt; +    // if (m_surface &amp;&amp; m_surface-&gt;resize(size))

When the page and its connected layer tree host is being resized, the associated AcceleratedSurface is resized right here, on the main thread, whereas the composition (which would be affected by the resize) is all done in a separate thread. So this is just an inappropriate cross-thread access into the wl_egl_window object that&apos;s managed in the derived AcceleratedSurfaceWayland class. This patch moves the resizing operation over to the composition thread, with the underlying resizing issue disappearing.

Reason why this is done on the main thread is the X11-specific implementation of AcceleratedSurface. That one respawns a pixmap object on each resize and retrieves its address as the surface ID that&apos;s here assigned to the m_layerTreeContext.contextID variable, which I guess is necessary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470073</commentid>
    <comment_count>13</comment_count>
      <attachid>352559</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-17 02:59:30 -0700</bug_when>
    <thetext>Comment on attachment 352559
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:206
&gt; -    if (m_surface &amp;&amp; m_surface-&gt;resize(size))
&gt; +    // if (m_surface &amp;&amp; m_surface-&gt;resize(size))

When the page and its connected layer tree host is being resized, the associated AcceleratedSurface is resized right here, on the main thread, whereas the composition (which would be affected by the resize) is all done in a separate thread. So this is just an inappropriate cross-thread access into the wl_egl_window object that&apos;s managed in the derived AcceleratedSurfaceWayland class. This patch moves the resizing operation over to the composition thread, with the underlying resizing issue disappearing.

Reason why this is done on the main thread is the X11-specific implementation of AcceleratedSurface. That one respawns a pixmap object on each resize and retrieves its address as the surface ID that&apos;s here assigned to the m_layerTreeContext.contextID variable, which I guess is necessary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470104</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-10-17 08:31:06 -0700</bug_when>
    <thetext>I can confirm this patch fixes YouTube. Thanks a bunch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470105</commentid>
    <comment_count>15</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-10-17 08:32:40 -0700</bug_when>
    <thetext>(In reply to Adrian Perez from comment #10)
&gt; Sure thing. There&apos;s a good bunch of MSE patches which are already
&gt; merged in the release branch waiting for 2.22.3 to happen, but at
&gt; least we don&apos;t have anyone completely blocked out of being able to
&gt; watch videos so that&apos;s not in a rush anymore — we can wait for this.

IMO this bug is so important, we should stall further releases until a final patch is ready.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470355</commentid>
    <comment_count>16</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2018-10-17 15:06:07 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #15)
&gt; (In reply to Adrian Perez from comment #10)
&gt; &gt; Sure thing. There&apos;s a good bunch of MSE patches which are already
&gt; &gt; merged in the release branch waiting for 2.22.3 to happen, but at
&gt; &gt; least we don&apos;t have anyone completely blocked out of being able to
&gt; &gt; watch videos so that&apos;s not in a rush anymore — we can wait for this.
&gt; 
&gt; IMO this bug is so important, we should stall further releases until a final
&gt; patch is ready.

Yes, for the moment I am holding the release. Nice to see progress here!

Note that if we have a patch that we think it&apos;s not fit to be landed
upstream *just yet*, but we that works and we are comfortable having
point release, it is also possible to merge the patch in its WIP form
to the release branch and update later on to its final version. I would
rather avoid doing that, but it&apos;s definitely an option (such a thing
has been done a couple of times before).

:-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1471520</commentid>
    <comment_count>17</comment_count>
      <attachid>352963</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-23 02:21:43 -0700</bug_when>
    <thetext>Created attachment 352963
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1471560</commentid>
    <comment_count>18</comment_count>
      <attachid>352963</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-10-23 07:25:03 -0700</bug_when>
    <thetext>Comment on attachment 352963
Patch

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

Thanks a bunch!

If Miguel is available to review this before landing, that would be ideal.

&gt; Source/WebKit/ChangeLog:3
&gt; +        REGRESSION(r??????): [GTK][AC] Resizing the window doesn&apos;t always update the visible rect

Probably best to remove the REGRESSION bit from the commit message, since we never figured out at which point this regressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1471837</commentid>
    <comment_count>19</comment_count>
    <who name="Miguel Gomez">magomez</who>
    <bug_when>2018-10-24 08:16:11 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #18)
&gt; Comment on attachment 352963 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=352963&amp;action=review
&gt; 
&gt; Thanks a bunch!
&gt; 
&gt; If Miguel is available to review this before landing, that would be ideal.

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1471967</commentid>
    <comment_count>20</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-10-24 16:47:19 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #14)
&gt; I can confirm this patch fixes YouTube. Thanks a bunch.

The new version works too!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472041</commentid>
    <comment_count>21</comment_count>
      <attachid>353081</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-25 04:06:44 -0700</bug_when>
    <thetext>Created attachment 353081
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472042</commentid>
    <comment_count>22</comment_count>
      <attachid>353081</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-25 04:09:42 -0700</bug_when>
    <thetext>Comment on attachment 353081
Patch for landing

Clearing flags on attachment: 353081

Committed r237410: &lt;https://trac.webkit.org/changeset/237410&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472043</commentid>
    <comment_count>23</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-10-25 04:09:46 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352559</attachid>
            <date>2018-10-17 02:53:44 -0700</date>
            <delta_ts>2018-10-23 02:21:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.patch</filename>
            <type>text/plain</type>
            <size>4121</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhy
ZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBv
c2l0b3IuY3BwCmluZGV4IDBiMmI2OGFlMTFlLi43NTIyZjg0ZWE4ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy90aHJlYWRlZGNvbXBvc2l0b3Iv
VGhyZWFkZWRDb21wb3NpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db29yZGlu
YXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBvc2l0b3IuY3BwCkBA
IC0yMzgsOCArMjM4LDEwIEBAIHZvaWQgVGhyZWFkZWRDb21wb3NpdG9yOjpyZW5kZXJMYXllclRy
ZWUoKQogICAgICAgICBtX2F0dHJpYnV0ZXMubmVlZHNSZXNpemUgPSBmYWxzZTsKICAgICB9CiAK
LSAgICBpZiAobmVlZHNSZXNpemUpCisgICAgaWYgKG5lZWRzUmVzaXplKSB7CisgICAgICAgIG1f
Y2xpZW50LnJlc2l6ZSh2aWV3cG9ydFNpemUpOwogICAgICAgICBnbFZpZXdwb3J0KDAsIDAsIHZp
ZXdwb3J0U2l6ZS53aWR0aCgpLCB2aWV3cG9ydFNpemUuaGVpZ2h0KCkpOworICAgIH0KIAogICAg
IFRyYW5zZm9ybWF0aW9uTWF0cml4IHZpZXdwb3J0VHJhbnNmb3JtOwogICAgIHZpZXdwb3J0VHJh
bnNmb3JtLnNjYWxlKHNjYWxlRmFjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9z
aXRvci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy90aHJlYWRl
ZGNvbXBvc2l0b3IvVGhyZWFkZWRDb21wb3NpdG9yLmgKaW5kZXggNDJiMjQ2ZDJiMDYuLmI1MDQy
ZmUzZDQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db29yZGluYXRlZEdyYXBo
aWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBvc2l0b3IuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJl
YWRlZENvbXBvc2l0b3IuaApAQCAtNTYsNiArNTYsNyBAQCBwdWJsaWM6CiAgICAgICAgIHZpcnR1
YWwgdWludDY0X3QgbmF0aXZlU3VyZmFjZUhhbmRsZUZvckNvbXBvc2l0aW5nKCkgPSAwOwogICAg
ICAgICB2aXJ0dWFsIHZvaWQgZGlkRGVzdHJveUdMQ29udGV4dCgpID0gMDsKIAorICAgICAgICB2
aXJ0dWFsIHZvaWQgcmVzaXplKGNvbnN0IEludFNpemUmKSA9IDA7CiAgICAgICAgIHZpcnR1YWwg
dm9pZCB3aWxsUmVuZGVyRnJhbWUoKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5k
ZXJGcmFtZSgpID0gMDsKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvQWNjZWxlcmF0ZWRTdXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5jcHAKaW5kZXggZTkzZWY5OTc5NmQuLjQw
YjNmMGQ3NTJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9B
Y2NlbGVyYXRlZFN1cmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5jcHAKQEAgLTcxLDEyICs3MSwxMiBAQCBBY2NlbGVyYXRl
ZFN1cmZhY2U6OkFjY2VsZXJhdGVkU3VyZmFjZShXZWJQYWdlJiB3ZWJQYWdlLCBDbGllbnQmIGNs
aWVudCkKIAogYm9vbCBBY2NlbGVyYXRlZFN1cmZhY2U6OnJlc2l6ZShjb25zdCBJbnRTaXplJiBz
aXplKQogewotICAgIEludFNpemUgc2NhbGVkU2l6ZShzaXplKTsKLSAgICBzY2FsZWRTaXplLnNj
YWxlKG1fd2ViUGFnZS5kZXZpY2VTY2FsZUZhY3RvcigpKTsKLSAgICBpZiAoc2NhbGVkU2l6ZSA9
PSBtX3NpemUpCisgICAgLy9JbnRTaXplIHNjYWxlZFNpemUoc2l6ZSk7CisgICAgLy9zY2FsZWRT
aXplLnNjYWxlKG1fd2ViUGFnZS5kZXZpY2VTY2FsZUZhY3RvcigpKTsKKyAgICBpZiAoc2l6ZSA9
PSBtX3NpemUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIG1fc2l6ZSA9IHNjYWxlZFNp
emU7CisgICAgbV9zaXplID0gc2l6ZTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9U
aHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXll
clRyZWVIb3N0LmNwcAppbmRleCA1MDBlZjE0ZGQ2My4uYTI3MWY0NzQ1MTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvVGhy
ZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvVGhyZWFkZWRDb29yZGluYXRlZExh
eWVyVHJlZUhvc3QuY3BwCkBAIC0xNzcsNyArMTc3LDcgQEAgdm9pZCBUaHJlYWRlZENvb3JkaW5h
dGVkTGF5ZXJUcmVlSG9zdDo6ZGV2aWNlT3JQYWdlU2NhbGVGYWN0b3JDaGFuZ2VkKCkKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX3N1cmZhY2UgJiYgbV9zdXJmYWNlLT5yZXNp
emUobV93ZWJQYWdlLnNpemUoKSkpCisgICAgLy8gaWYgKG1fc3VyZmFjZSAmJiBtX3N1cmZhY2Ut
PnJlc2l6ZShtX3dlYlBhZ2Uuc2l6ZSgpKSkKICAgICAgICAgbV9sYXllclRyZWVDb250ZXh0LmNv
bnRleHRJRCA9IG1fc3VyZmFjZS0+c3VyZmFjZUlEKCk7CiAKICAgICBDb29yZGluYXRlZExheWVy
VHJlZUhvc3Q6OmRldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCgpOwpAQCAtMjAzLDcgKzIw
Myw3IEBAIHZvaWQgVGhyZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OnNpemVEaWRDaGFu
Z2UoY29uc3QgSW50U2l6ZSYgc2l6ZSkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlm
IChtX3N1cmZhY2UgJiYgbV9zdXJmYWNlLT5yZXNpemUoc2l6ZSkpCisgICAgLy8gaWYgKG1fc3Vy
ZmFjZSAmJiBtX3N1cmZhY2UtPnJlc2l6ZShzaXplKSkKICAgICAgICAgbV9sYXllclRyZWVDb250
ZXh0LmNvbnRleHRJRCA9IG1fc3VyZmFjZS0+c3VyZmFjZUlEKCk7CiAKICAgICBDb29yZGluYXRl
ZExheWVyVHJlZUhvc3Q6OnNpemVEaWRDaGFuZ2Uoc2l6ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29v
cmRpbmF0ZWRMYXllclRyZWVIb3N0LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmgK
aW5kZXggODdhN2RhNzE3Y2QuLjM5YWM2Zjg0MmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0
ZWRMYXllclRyZWVIb3N0LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
Q29vcmRpbmF0ZWRHcmFwaGljcy9UaHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5oCkBA
IC05MSw2ICs5MSwxMiBAQCBwcml2YXRlOgogICAgICAgICAgICAgbV9sYXllclRyZWVIb3N0LmRp
ZERlc3Ryb3lHTENvbnRleHQoKTsKICAgICAgICAgfQogCisgICAgICAgIHZvaWQgcmVzaXplKGNv
bnN0IEludFNpemUmIHNpemUpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChtX2xheWVyVHJl
ZUhvc3QubV9zdXJmYWNlKQorICAgICAgICAgICAgICAgIG1fbGF5ZXJUcmVlSG9zdC5tX3N1cmZh
Y2UtPnJlc2l6ZShzaXplKTsKKyAgICAgICAgfQorCiAgICAgICAgIHZvaWQgd2lsbFJlbmRlckZy
YW1lKCkgb3ZlcnJpZGUKICAgICAgICAgewogICAgICAgICAgICAgbV9sYXllclRyZWVIb3N0Lndp
bGxSZW5kZXJGcmFtZSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352963</attachid>
            <date>2018-10-23 02:21:43 -0700</date>
            <delta_ts>2018-10-25 04:06:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189743-20181023112142.patch</filename>
            <type>text/plain</type>
            <size>12885</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3MzQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGNlZGNiMmJjOWNhZmY2YjE2
NDhkOGIxYWM5YjMzNjBhZTE4ZjMwMjEuLmU3MmMxYzM1NTVhMTNmMWY2NjNiZWQ3NTYxNjliYjMy
ZDhjMmFlOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTIgQEAKKzIwMTgtMTAtMjMgIFphbiBEb2Jl
cnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04ocj8/Pz8/
Pyk6IFtHVEtdW0FDXSBSZXNpemluZyB0aGUgd2luZG93IGRvZXNuJ3QgYWx3YXlzIHVwZGF0ZSB0
aGUgdmlzaWJsZSByZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xODk3NDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBEaXNhc3NvY2lhdGUgcmVzaXppbmcgdGhhdCBjYW4gYmUgZG9uZSBvbiBhbiBBY2Nl
bGVyYXRlZFN1cmZhY2Ugb2JqZWN0CisgICAgICAgIGJldHdlZW4gImhvc3QgcmVzaXplcyIgYW5k
ICJjbGllbnQgcmVzaXplcyIuCisKKyAgICAgICAgVGhlIGZvcm1lciBpcyBkb25lIGZyb20gVGhy
ZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3QgZGlyZWN0bHksIGFuZAorICAgICAgICBpcyBj
dXJyZW50bHkgdXNlZCBvbmx5IGZvciBHVEsgb24gWDExLCB3aGVyZSBhIG5ldyBwaXhtYXAgb2Jq
ZWN0IGlzCisgICAgICAgIGNyZWF0ZWQgb24gZWFjaCByZXNpemUsIHdoaWNoIGFmZmVjdHMgdGhl
IGNvbnRleHQgSUQgdGhhdCBpcyBiYXNlZCBvbgorICAgICAgICB0aGF0IHBpeG1hcCBvYmplY3Qn
cyBhZGRyZXNzLgorCisgICAgICAgIFRoZSBsYXR0ZXIgaXMgZG9uZSBmcm9tIHRoZSBjb21wb3Np
dGlvbiB0aHJlYWQuIEl0J3MgdXNlZCBmb3IgR1RLIG9uCisgICAgICAgIFdheWxhbmQgYW5kIFdQ
RS4gSW4gYm90aCBjYXNlcywgdGhlIHVuZGVybHlpbmcgd2luZG93IG9iamVjdCBkb2VzIG5vdAor
ICAgICAgICBjaGFuZ2Ugb24gZWFjaCByZXNpemUsIGJ1dCBpdCdzIG5lY2Vzc2FyeSB0byBwZXJm
b3JtIHRoZSBhY3R1YWwgcmVzaXplCisgICAgICAgIG9uIHRoZSBjb21wb3NpdGlvbiB0aHJlYWQu
CisKKyAgICAgICAgU28gZmFyIGl0IGhhc24ndCBiZWVuIHBlcmZvcm1lZCB0aGVyZSwgd2hpY2gg
ZW5kZWQgdXAgcHVzaGluZyBzaXplcyBvZgorICAgICAgICB0aGUgV2ViS2l0IHZpZXcgYW5kIHRo
ZSB1bmRlcmx5aW5nIHdpbmRvdyBvYmplY3Qgb3V0IG9mIHN5bmMgZHVyaW5nCisgICAgICAgIHJl
c2l6aW5nLCBsZWF2aW5nIHBhcnRzIG9mIHdpbmRvdyB1bnJlbmRlcmVkLgorCisgICAgICAgICog
U2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29t
cG9zaXRvci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlRocmVhZGVkQ29tcG9zaXRvcjo6cmVuZGVy
TGF5ZXJUcmVlKToKKyAgICAgICAgKiBTaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy90aHJlYWRl
ZGNvbXBvc2l0b3IvVGhyZWFkZWRDb21wb3NpdG9yLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJh
dGVkU3VyZmFjZTo6aG9zdFJlc2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkU3Vy
ZmFjZTo6cmVzaXplKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQWNj
ZWxlcmF0ZWRTdXJmYWNlLmg6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkU3VyZmFjZTo6
Y2xpZW50UmVzaXplKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRH
cmFwaGljcy9UaHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OlRocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpkZXZpY2VPclBhZ2VTY2Fs
ZUZhY3RvckNoYW5nZWQpOgorICAgICAgICAoV2ViS2l0OjpUaHJlYWRlZENvb3JkaW5hdGVkTGF5
ZXJUcmVlSG9zdDo6c2l6ZURpZENoYW5nZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdl
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvVGhyZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3QuaDoK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVdheWxh
bmQuY3BwOgorICAgICAgICAoV2ViS2l0OjpBY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kOjpjbGll
bnRSZXNpemUpOgorICAgICAgICAoV2ViS2l0OjpBY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kOjpy
ZXNpemUpOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxl
cmF0ZWRTdXJmYWNlV2F5bGFuZC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9ndGsv
QWNjZWxlcmF0ZWRTdXJmYWNlWDExLmNwcDoKKyAgICAgICAgKFdlYktpdDo6QWNjZWxlcmF0ZWRT
dXJmYWNlWDExOjpob3N0UmVzaXplKToKKyAgICAgICAgKFdlYktpdDo6QWNjZWxlcmF0ZWRTdXJm
YWNlWDExOjpyZXNpemUpOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9n
dGsvQWNjZWxlcmF0ZWRTdXJmYWNlWDExLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdl
L3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUuY3BwOgorICAgICAgICAoV2ViS2l0OjpBY2NlbGVy
YXRlZFN1cmZhY2VXUEU6OmNsaWVudFJlc2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJh
dGVkU3VyZmFjZVdQRTo6cmVzaXplKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2Uvd3BlL0FjY2VsZXJhdGVkU3VyZmFjZVdQRS5oOgorCiAyMDE4LTEwLTIyICBLZWl0aCBS
b2xsaW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgTG9jYXRpb24gPSAiUmVs
YXRpdmUgdG8gQnVpbGQgUHJvZHVjdHMiIHJhdGhlciB0aGFuICJSZWxhdGl2ZSB0byBHcm91cCIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhy
ZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBv
c2l0b3IuY3BwCmluZGV4IDBiMmI2OGFlMTFlOWViZDZiZWU1MDA4NzQxYjVhOTg5NWZkYTBkZTYu
Ljc1MjJmODRlYThmOGE2ODIzYmI5MjFmZmMzZjA1Y2ZiZDg3ZWI1ODEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9y
L1RocmVhZGVkQ29tcG9zaXRvci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29vcmRp
bmF0ZWRHcmFwaGljcy90aHJlYWRlZGNvbXBvc2l0b3IvVGhyZWFkZWRDb21wb3NpdG9yLmNwcApA
QCAtMjM4LDggKzIzOCwxMCBAQCB2b2lkIFRocmVhZGVkQ29tcG9zaXRvcjo6cmVuZGVyTGF5ZXJU
cmVlKCkKICAgICAgICAgbV9hdHRyaWJ1dGVzLm5lZWRzUmVzaXplID0gZmFsc2U7CiAgICAgfQog
Ci0gICAgaWYgKG5lZWRzUmVzaXplKQorICAgIGlmIChuZWVkc1Jlc2l6ZSkgeworICAgICAgICBt
X2NsaWVudC5yZXNpemUodmlld3BvcnRTaXplKTsKICAgICAgICAgZ2xWaWV3cG9ydCgwLCAwLCB2
aWV3cG9ydFNpemUud2lkdGgoKSwgdmlld3BvcnRTaXplLmhlaWdodCgpKTsKKyAgICB9CiAKICAg
ICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCB2aWV3cG9ydFRyYW5zZm9ybTsKICAgICB2aWV3cG9ydFRy
YW5zZm9ybS5zY2FsZShzY2FsZUZhY3Rvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBv
c2l0b3IuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFk
ZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5oCmluZGV4IDQyYjI0NmQyYjA2OWQ2NDFi
NzM5YmQ1YzgzMWNlZWUzZTU5ZGVlZTQuLmI1MDQyZmUzZDQ0NmYyOTNkNjI2ZWUxZTU2NjQzMTVj
ZjNjM2MyYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1Ro
cmVhZGVkQ29tcG9zaXRvci5oCkBAIC01Niw2ICs1Niw3IEBAIHB1YmxpYzoKICAgICAgICAgdmly
dHVhbCB1aW50NjRfdCBuYXRpdmVTdXJmYWNlSGFuZGxlRm9yQ29tcG9zaXRpbmcoKSA9IDA7CiAg
ICAgICAgIHZpcnR1YWwgdm9pZCBkaWREZXN0cm95R0xDb250ZXh0KCkgPSAwOwogCisgICAgICAg
IHZpcnR1YWwgdm9pZCByZXNpemUoY29uc3QgSW50U2l6ZSYpID0gMDsKICAgICAgICAgdmlydHVh
bCB2b2lkIHdpbGxSZW5kZXJGcmFtZSgpID0gMDsKICAgICAgICAgdmlydHVhbCB2b2lkIGRpZFJl
bmRlckZyYW1lKCkgPSAwOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9BY2NlbGVyYXRlZFN1cmZhY2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvQWNjZWxlcmF0ZWRTdXJmYWNlLmNwcAppbmRleCBlOTNlZjk5Nzk2ZDMx
MmZlMGFlYjY4ZmE4MjY3ODc1MGY1NjI2YTcxLi5lNTc5YTVkZjNhMDNhOThlNzcwMGRlYTJhNjBm
N2U1YzBhODlkM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9BY2NlbGVyYXRlZFN1cmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5jcHAKQEAgLTY5LDcgKzY5LDcgQEAgQWNjZWxlcmF0
ZWRTdXJmYWNlOjpBY2NlbGVyYXRlZFN1cmZhY2UoV2ViUGFnZSYgd2ViUGFnZSwgQ2xpZW50JiBj
bGllbnQpCiAgICAgbV9zaXplLnNjYWxlKG1fd2ViUGFnZS5kZXZpY2VTY2FsZUZhY3RvcigpKTsK
IH0KIAotYm9vbCBBY2NlbGVyYXRlZFN1cmZhY2U6OnJlc2l6ZShjb25zdCBJbnRTaXplJiBzaXpl
KQorYm9vbCBBY2NlbGVyYXRlZFN1cmZhY2U6Omhvc3RSZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6
ZSkKIHsKICAgICBJbnRTaXplIHNjYWxlZFNpemUoc2l6ZSk7CiAgICAgc2NhbGVkU2l6ZS5zY2Fs
ZShtX3dlYlBhZ2UuZGV2aWNlU2NhbGVGYWN0b3IoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9BY2NlbGVyYXRlZFN1cmZhY2UuaCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5oCmluZGV4IDI5ZWU5NTg3
YzM3NjM3MTQzNDE0ZmFmZTU1ZjJjMjBkZWE0ZmEwNWIuLjIzM2I2NjA0Yjk0ODIyMWVhYTYzM2U5
OWM0OGZiYTU1MmNlZTQ1NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5oCkBAIC00NSw3ICs0NSw4IEBAIHB1YmxpYzoK
IAogICAgIHZpcnR1YWwgdWludDY0X3Qgd2luZG93KCkgY29uc3QgeyBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsgcmV0dXJuIDA7IH0KICAgICB2aXJ0dWFsIHVpbnQ2NF90IHN1cmZhY2VJRCgpIGNvbnN0
IHsgQVNTRVJUX05PVF9SRUFDSEVEKCk7IHJldHVybiAwOyB9Ci0gICAgdmlydHVhbCBib29sIHJl
c2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJik7CisgICAgdmlydHVhbCBib29sIGhvc3RSZXNp
emUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworICAgIHZpcnR1YWwgdm9pZCBjbGllbnRSZXNp
emUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIHsgfTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxk
UGFpbnRNaXJyb3JlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2aXJ0dWFsIHZv
aWQgaW5pdGlhbGl6ZSgpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9UaHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVl
SG9zdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdy
YXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcAppbmRleCA1MDBlZjE0
ZGQ2MzhhYzAzYjcwOTU4Y2VhMGYwYTkxOTU4ZWE1NjNiLi44MjNiN2ZhMmFjNzU5N2EzYWVhYjI3
NDQzMWJjMGNjOWI5MjkwOGM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVI
b3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRl
ZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcApAQCAtMTc3LDcg
KzE3Nyw3IEBAIHZvaWQgVGhyZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OmRldmljZU9y
UGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCgpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBp
ZiAobV9zdXJmYWNlICYmIG1fc3VyZmFjZS0+cmVzaXplKG1fd2ViUGFnZS5zaXplKCkpKQorICAg
IGlmIChtX3N1cmZhY2UgJiYgbV9zdXJmYWNlLT5ob3N0UmVzaXplKG1fd2ViUGFnZS5zaXplKCkp
KQogICAgICAgICBtX2xheWVyVHJlZUNvbnRleHQuY29udGV4dElEID0gbV9zdXJmYWNlLT5zdXJm
YWNlSUQoKTsKIAogICAgIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6ZGV2aWNlT3JQYWdlU2Nh
bGVGYWN0b3JDaGFuZ2VkKCk7CkBAIC0yMDMsNyArMjAzLDcgQEAgdm9pZCBUaHJlYWRlZENvb3Jk
aW5hdGVkTGF5ZXJUcmVlSG9zdDo6c2l6ZURpZENoYW5nZShjb25zdCBJbnRTaXplJiBzaXplKQog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKG1fc3VyZmFjZSAmJiBtX3N1cmZhY2Ut
PnJlc2l6ZShzaXplKSkKKyAgICBpZiAobV9zdXJmYWNlICYmIG1fc3VyZmFjZS0+aG9zdFJlc2l6
ZShzaXplKSkKICAgICAgICAgbV9sYXllclRyZWVDb250ZXh0LmNvbnRleHRJRCA9IG1fc3VyZmFj
ZS0+c3VyZmFjZUlEKCk7CiAKICAgICBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OnNpemVEaWRD
aGFuZ2Uoc2l6ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0Lmgg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1Ro
cmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmgKaW5kZXggODdhN2RhNzE3Y2RkOWE0ZTEx
NTg1YTcyMjQ1ZGM2Y2VjZTJmYjViMS4uZjZjMjMxZjNhNGM2YjAzNmNlNTI4NDczZWZhOTc3YzU5
NmIxNzcxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29v
cmRpbmF0ZWRHcmFwaGljcy9UaHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvVGhy
ZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3QuaApAQCAtOTEsNiArOTEsMTIgQEAgcHJpdmF0
ZToKICAgICAgICAgICAgIG1fbGF5ZXJUcmVlSG9zdC5kaWREZXN0cm95R0xDb250ZXh0KCk7CiAg
ICAgICAgIH0KIAorICAgICAgICB2b2lkIHJlc2l6ZShjb25zdCBJbnRTaXplJiBzaXplKQorICAg
ICAgICB7CisgICAgICAgICAgICBpZiAobV9sYXllclRyZWVIb3N0Lm1fc3VyZmFjZSkKKyAgICAg
ICAgICAgICAgICBtX2xheWVyVHJlZUhvc3QubV9zdXJmYWNlLT5jbGllbnRSZXNpemUoc2l6ZSk7
CisgICAgICAgIH0KKwogICAgICAgICB2b2lkIHdpbGxSZW5kZXJGcmFtZSgpIG92ZXJyaWRlCiAg
ICAgICAgIHsKICAgICAgICAgICAgIG1fbGF5ZXJUcmVlSG9zdC53aWxsUmVuZGVyRnJhbWUoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVy
YXRlZFN1cmZhY2VXYXlsYW5kLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kLmNwcAppbmRleCA1ZDFmYjA3MGRlOGY0MDMz
MDQwNTBmZjQzOWY4Yzg5YmJlY2MzZTY0Li43MWVmZmE0NmJjMzVhZDczN2I3Mzk0ZmUyMDJiMDJj
Yzg4MDBmYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9n
dGsvQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFuZC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVdheWxhbmQuY3BwCkBAIC01Nywx
MyArNTcsOSBAQCB2b2lkIEFjY2VsZXJhdGVkU3VyZmFjZVdheWxhbmQ6OmZpbmFsaXplKCkKICAg
ICB3bF9lZ2xfd2luZG93X2Rlc3Ryb3kobV93aW5kb3cpOwogfQogCi1ib29sIEFjY2VsZXJhdGVk
U3VyZmFjZVdheWxhbmQ6OnJlc2l6ZShjb25zdCBJbnRTaXplJiBzaXplKQordm9pZCBBY2NlbGVy
YXRlZFN1cmZhY2VXYXlsYW5kOjpjbGllbnRSZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6ZSkKIHsK
LSAgICBpZiAoIUFjY2VsZXJhdGVkU3VyZmFjZTo6cmVzaXplKHNpemUpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KICAgICB3bF9lZ2xfd2luZG93X3Jlc2l6ZShtX3dpbmRvdywgbV9zaXplLndp
ZHRoKCksIG1fc2l6ZS5oZWlnaHQoKSwgMCwgMCk7Ci0gICAgcmV0dXJuIHRydWU7CiB9CiAKIHZv
aWQgQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFuZDo6ZGlkUmVuZGVyRnJhbWUoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFj
ZVdheWxhbmQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVy
YXRlZFN1cmZhY2VXYXlsYW5kLmgKaW5kZXggNDMyMDIxNWJkZjc3NzgwMDE2OGU3ZDM2NmU1MmJl
NmFhNzlkODAxYi4uM2I3M2U0OGE3N2U2ZDU3NzAwMTU0MmJkNmQyOGNjMWY1MDg4MzNlYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVk
U3VyZmFjZVdheWxhbmQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9n
dGsvQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFuZC5oCkBAIC00Miw3ICs0Miw3IEBAIHB1YmxpYzoK
IAogICAgIHVpbnQ2NF90IHdpbmRvdygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHJlaW50ZXJw
cmV0X2Nhc3Q8dWludDY0X3Q+KG1fd2luZG93KTsgfQogICAgIHVpbnQ2NF90IHN1cmZhY2VJRCgp
IGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fd2ViUGFnZS5wYWdlSUQoKTsgfQotICAgIGJvb2wg
cmVzaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICB2b2lkIGNsaWVu
dFJlc2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBzaG91
bGRQYWludE1pcnJvcmVkKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAg
dm9pZCBpbml0aWFsaXplKCkgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNlWDExLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VYMTEuY3BwCmlu
ZGV4IGQxYmQ3YjcyYmZiNzg1ZDhkMWRmZDg2ODZmYTUxMDkxYjgzMjExZmEuLjcyZTFhZDk5ZGQ3
NGY2NzRkMGRmNzJkYzg2YjVkNmU1MGQ1ZWIwODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VYMTEuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VYMTEu
Y3BwCkBAIC0xMzMsOSArMTMzLDkgQEAgdm9pZCBBY2NlbGVyYXRlZFN1cmZhY2VYMTE6OmNyZWF0
ZVBpeG1hcCgpCiAgICAgWFN5bmMobV9kaXNwbGF5LCBGYWxzZSk7CiB9CiAKLWJvb2wgQWNjZWxl
cmF0ZWRTdXJmYWNlWDExOjpyZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6ZSkKK2Jvb2wgQWNjZWxl
cmF0ZWRTdXJmYWNlWDExOjpob3N0UmVzaXplKGNvbnN0IEludFNpemUmIHNpemUpCiB7Ci0gICAg
aWYgKCFBY2NlbGVyYXRlZFN1cmZhY2U6OnJlc2l6ZShzaXplKSkKKyAgICBpZiAoIUFjY2VsZXJh
dGVkU3VyZmFjZTo6aG9zdFJlc2l6ZShzaXplKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAg
ICAgLy8gUmVzaXplIHRoZSB3aW5kb3cgdG8gYXQgbGFzdCAxeDEgc2luY2UgWCBkb2Vzbid0IGFs
bG93IHRvIGNyZWF0ZSBlbXB0eSB3aW5kb3dzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVgxMS5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVgxMS5oCmluZGV4
IGM5NDhmYzExZGRmYjJkMTBjZTNjY2Q4NmEwYjJmNTdhMjM3MzdmYmQuLmQ2Y2Q0MmUzYzY0ODM0
NDVmMDVmMzdlNDU5ZWJkMjY5OGRkZTU0MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VYMTEuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNlWDExLmgKQEAg
LTQ2LDcgKzQ2LDcgQEAgcHVibGljOgogCiAgICAgdWludDY0X3Qgd2luZG93KCkgY29uc3Qgb3Zl
cnJpZGUgeyByZXR1cm4gbV93aW5kb3cuZ2V0KCk7IH0KICAgICB1aW50NjRfdCBzdXJmYWNlSUQo
KSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3BpeG1hcC5nZXQoKTsgfQotICAgIGJvb2wgcmVz
aXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBib29sIGhvc3RSZXNp
emUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUGFp
bnRNaXJyb3JlZCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2b2lk
IGRpZFJlbmRlckZyYW1lKCkgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS93cGUvQWNjZWxlcmF0ZWRTdXJmYWNlV1BFLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUuY3BwCmlu
ZGV4IDRkYTlmOWFkMjM3MDcyMWZiZjA4NGQ3YTE1YzBiOTM2ZjY1NjFlODQuLjZmZGE2OTgwYjZi
OTYwNWZkNjFiZWQ1MjkyZjMwNmM1OWFmMDFjMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUu
Y3BwCkBAIC05MiwxNSArOTIsMTAgQEAgdWludDY0X3QgQWNjZWxlcmF0ZWRTdXJmYWNlV1BFOjpz
dXJmYWNlSUQoKSBjb25zdAogICAgIHJldHVybiBtX3dlYlBhZ2UucGFnZUlEKCk7CiB9CiAKLWJv
b2wgQWNjZWxlcmF0ZWRTdXJmYWNlV1BFOjpyZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6ZSkKK3Zv
aWQgQWNjZWxlcmF0ZWRTdXJmYWNlV1BFOjpjbGllbnRSZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6
ZSkKIHsKICAgICBBU1NFUlQobV9iYWNrZW5kKTsKLSAgICBpZiAoIUFjY2VsZXJhdGVkU3VyZmFj
ZTo6cmVzaXplKHNpemUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KICAgICB3cGVfcmVuZGVy
ZXJfYmFja2VuZF9lZ2xfdGFyZ2V0X3Jlc2l6ZShtX2JhY2tlbmQsIHN0ZDo6bWF4KDAsIG1fc2l6
ZS53aWR0aCgpKSwgc3RkOjptYXgoMCwgbV9zaXplLmhlaWdodCgpKSk7Ci0KLSAgICByZXR1cm4g
dHJ1ZTsKIH0KIAogdm9pZCBBY2NlbGVyYXRlZFN1cmZhY2VXUEU6OndpbGxSZW5kZXJGcmFtZSgp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS93cGUvQWNjZWxl
cmF0ZWRTdXJmYWNlV1BFLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS93cGUv
QWNjZWxlcmF0ZWRTdXJmYWNlV1BFLmgKaW5kZXggNDI2MGZmNzNhNDExOWViNGU0MjQ5ODA1NGI5
MDdiNTMyYWZkZmFjNS4uNjllNWMyNjI3NjRjMjU1MGY3ZTM0YjA3ODRmNzAyMTcyZjM5Y2YxYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uvd3BlL0FjY2VsZXJh
dGVkU3VyZmFjZVdQRS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3dw
ZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUuaApAQCAtNDQsNyArNDQsNyBAQCBwdWJsaWM6CiAKICAg
ICB1aW50NjRfdCB3aW5kb3coKSBjb25zdCBvdmVycmlkZTsKICAgICB1aW50NjRfdCBzdXJmYWNl
SUQoKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIHJlc2l6ZShjb25zdCBXZWJDb3JlOjpJbnRT
aXplJikgb3ZlcnJpZGU7CisgICAgdm9pZCBjbGllbnRSZXNpemUoY29uc3QgV2ViQ29yZTo6SW50
U2l6ZSYpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUGFpbnRNaXJyb3JlZCgpIGNvbnN0IG92
ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2b2lkIGluaXRpYWxpemUoKSBvdmVycmlk
ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353081</attachid>
            <date>2018-10-25 04:06:44 -0700</date>
            <delta_ts>2018-10-25 04:06:44 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-189743-20181025130643.patch</filename>
            <type>text/plain</type>
            <size>12837</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3NDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDhhNGQ2MWIxOTZkOTBmOTU0
MGU5NzUwYTYxZWM3ZDEwMDI3NjNlNTYuLmVjNWI4Y2ZiZDIxNzQ4ZmE0MTM0Zjk4ODcxOGNjM2Mx
ZTIyYmY5ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTIgQEAKKzIwMTgtMTAtMjUgIFphbiBEb2Jl
cnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW0FDXSBSZXNpemlu
ZyB0aGUgd2luZG93IGRvZXNuJ3QgYWx3YXlzIHVwZGF0ZSB0aGUgdmlzaWJsZSByZWN0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk3NDMKKworICAg
ICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIENhdGFuemFyby4KKworICAgICAgICBEaXNhc3NvY2lh
dGUgcmVzaXppbmcgdGhhdCBjYW4gYmUgZG9uZSBvbiBhbiBBY2NlbGVyYXRlZFN1cmZhY2Ugb2Jq
ZWN0CisgICAgICAgIGJldHdlZW4gImhvc3QgcmVzaXplcyIgYW5kICJjbGllbnQgcmVzaXplcyIu
CisKKyAgICAgICAgVGhlIGZvcm1lciBpcyBkb25lIGZyb20gVGhyZWFkZWRDb29yZGluYXRlZExh
eWVyVHJlZUhvc3QgZGlyZWN0bHksIGFuZAorICAgICAgICBpcyBjdXJyZW50bHkgdXNlZCBvbmx5
IGZvciBHVEsgb24gWDExLCB3aGVyZSBhIG5ldyBwaXhtYXAgb2JqZWN0IGlzCisgICAgICAgIGNy
ZWF0ZWQgb24gZWFjaCByZXNpemUsIHdoaWNoIGFmZmVjdHMgdGhlIGNvbnRleHQgSUQgdGhhdCBp
cyBiYXNlZCBvbgorICAgICAgICB0aGF0IHBpeG1hcCBvYmplY3QncyBhZGRyZXNzLgorCisgICAg
ICAgIFRoZSBsYXR0ZXIgaXMgZG9uZSBmcm9tIHRoZSBjb21wb3NpdGlvbiB0aHJlYWQuIEl0J3Mg
dXNlZCBmb3IgR1RLIG9uCisgICAgICAgIFdheWxhbmQgYW5kIFdQRS4gSW4gYm90aCBjYXNlcywg
dGhlIHVuZGVybHlpbmcgd2luZG93IG9iamVjdCBkb2VzIG5vdAorICAgICAgICBjaGFuZ2Ugb24g
ZWFjaCByZXNpemUsIGJ1dCBpdCdzIG5lY2Vzc2FyeSB0byBwZXJmb3JtIHRoZSBhY3R1YWwgcmVz
aXplCisgICAgICAgIG9uIHRoZSBjb21wb3NpdGlvbiB0aHJlYWQuCisKKyAgICAgICAgU28gZmFy
IGl0IGhhc24ndCBiZWVuIHBlcmZvcm1lZCB0aGVyZSwgd2hpY2ggZW5kZWQgdXAgcHVzaGluZyBz
aXplcyBvZgorICAgICAgICB0aGUgV2ViS2l0IHZpZXcgYW5kIHRoZSB1bmRlcmx5aW5nIHdpbmRv
dyBvYmplY3Qgb3V0IG9mIHN5bmMgZHVyaW5nCisgICAgICAgIHJlc2l6aW5nLCBsZWF2aW5nIHBh
cnRzIG9mIHdpbmRvdyB1bnJlbmRlcmVkLgorCisgICAgICAgICogU2hhcmVkL0Nvb3JkaW5hdGVk
R3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlRocmVhZGVkQ29tcG9zaXRvcjo6cmVuZGVyTGF5ZXJUcmVlKToKKyAgICAg
ICAgKiBTaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy90aHJlYWRlZGNvbXBvc2l0b3IvVGhyZWFk
ZWRDb21wb3NpdG9yLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVk
U3VyZmFjZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkU3VyZmFjZTo6aG9zdFJl
c2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkU3VyZmFjZTo6cmVzaXplKTogRGVs
ZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQWNjZWxlcmF0ZWRTdXJmYWNlLmg6
CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkU3VyZmFjZTo6Y2xpZW50UmVzaXplKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9UaHJlYWRlZENv
b3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlRocmVhZGVkQ29v
cmRpbmF0ZWRMYXllclRyZWVIb3N0OjpkZXZpY2VPclBhZ2VTY2FsZUZhY3RvckNoYW5nZWQpOgor
ICAgICAgICAoV2ViS2l0OjpUaHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6c2l6ZURp
ZENoYW5nZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvVGhyZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3QuaDoKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVdheWxhbmQuY3BwOgorICAgICAgICAo
V2ViS2l0OjpBY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kOjpjbGllbnRSZXNpemUpOgorICAgICAg
ICAoV2ViS2l0OjpBY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kOjpyZXNpemUpOiBEZWxldGVkLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFu
ZC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNl
WDExLmNwcDoKKyAgICAgICAgKFdlYktpdDo6QWNjZWxlcmF0ZWRTdXJmYWNlWDExOjpob3N0UmVz
aXplKToKKyAgICAgICAgKFdlYktpdDo6QWNjZWxlcmF0ZWRTdXJmYWNlWDExOjpyZXNpemUpOiBE
ZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJm
YWNlWDExLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1
cmZhY2VXUEUuY3BwOgorICAgICAgICAoV2ViS2l0OjpBY2NlbGVyYXRlZFN1cmZhY2VXUEU6OmNs
aWVudFJlc2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkU3VyZmFjZVdQRTo6cmVz
aXplKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uvd3BlL0FjY2VsZXJh
dGVkU3VyZmFjZVdQRS5oOgorCiAyMDE4LTEwLTI0ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBA
YXBwbGUuY29tPgogCiAgICAgICAgIENsZWFuIHVwIHNvbWUgb2Jzb2xldGUgbWFjT1MgdmVyc2lv
biBndWFyZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJl
YWRlZENvbXBvc2l0b3IuY3BwCmluZGV4IDBiMmI2OGFlMTFlOWViZDZiZWU1MDA4NzQxYjVhOTg5
NWZkYTBkZTYuLjc1MjJmODRlYThmOGE2ODIzYmI5MjFmZmMzZjA1Y2ZiZDg3ZWI1ODEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRj
b21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy90aHJlYWRlZGNvbXBvc2l0b3IvVGhyZWFkZWRDb21wb3Np
dG9yLmNwcApAQCAtMjM4LDggKzIzOCwxMCBAQCB2b2lkIFRocmVhZGVkQ29tcG9zaXRvcjo6cmVu
ZGVyTGF5ZXJUcmVlKCkKICAgICAgICAgbV9hdHRyaWJ1dGVzLm5lZWRzUmVzaXplID0gZmFsc2U7
CiAgICAgfQogCi0gICAgaWYgKG5lZWRzUmVzaXplKQorICAgIGlmIChuZWVkc1Jlc2l6ZSkgewor
ICAgICAgICBtX2NsaWVudC5yZXNpemUodmlld3BvcnRTaXplKTsKICAgICAgICAgZ2xWaWV3cG9y
dCgwLCAwLCB2aWV3cG9ydFNpemUud2lkdGgoKSwgdmlld3BvcnRTaXplLmhlaWdodCgpKTsKKyAg
ICB9CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCB2aWV3cG9ydFRyYW5zZm9ybTsKICAgICB2
aWV3cG9ydFRyYW5zZm9ybS5zY2FsZShzY2FsZUZhY3Rvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJl
YWRlZENvbXBvc2l0b3IuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5oCmluZGV4IDQyYjI0NmQy
YjA2OWQ2NDFiNzM5YmQ1YzgzMWNlZWUzZTU5ZGVlZTQuLmI1MDQyZmUzZDQ0NmYyOTNkNjI2ZWUx
ZTU2NjQzMTVjZjNjM2MyYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21w
b3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5oCkBAIC01Niw2ICs1Niw3IEBAIHB1YmxpYzoKICAg
ICAgICAgdmlydHVhbCB1aW50NjRfdCBuYXRpdmVTdXJmYWNlSGFuZGxlRm9yQ29tcG9zaXRpbmco
KSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWREZXN0cm95R0xDb250ZXh0KCkgPSAwOwog
CisgICAgICAgIHZpcnR1YWwgdm9pZCByZXNpemUoY29uc3QgSW50U2l6ZSYpID0gMDsKICAgICAg
ICAgdmlydHVhbCB2b2lkIHdpbGxSZW5kZXJGcmFtZSgpID0gMDsKICAgICAgICAgdmlydHVhbCB2
b2lkIGRpZFJlbmRlckZyYW1lKCkgPSAwOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9BY2NlbGVyYXRlZFN1cmZhY2UuY3BwIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvQWNjZWxlcmF0ZWRTdXJmYWNlLmNwcAppbmRleCBlOTNl
Zjk5Nzk2ZDMxMmZlMGFlYjY4ZmE4MjY3ODc1MGY1NjI2YTcxLi5lNTc5YTVkZjNhMDNhOThlNzcw
MGRlYTJhNjBmN2U1YzBhODlkM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9BY2NlbGVyYXRlZFN1cmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5jcHAKQEAgLTY5LDcgKzY5LDcgQEAg
QWNjZWxlcmF0ZWRTdXJmYWNlOjpBY2NlbGVyYXRlZFN1cmZhY2UoV2ViUGFnZSYgd2ViUGFnZSwg
Q2xpZW50JiBjbGllbnQpCiAgICAgbV9zaXplLnNjYWxlKG1fd2ViUGFnZS5kZXZpY2VTY2FsZUZh
Y3RvcigpKTsKIH0KIAotYm9vbCBBY2NlbGVyYXRlZFN1cmZhY2U6OnJlc2l6ZShjb25zdCBJbnRT
aXplJiBzaXplKQorYm9vbCBBY2NlbGVyYXRlZFN1cmZhY2U6Omhvc3RSZXNpemUoY29uc3QgSW50
U2l6ZSYgc2l6ZSkKIHsKICAgICBJbnRTaXplIHNjYWxlZFNpemUoc2l6ZSk7CiAgICAgc2NhbGVk
U2l6ZS5zY2FsZShtX3dlYlBhZ2UuZGV2aWNlU2NhbGVGYWN0b3IoKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9BY2NlbGVyYXRlZFN1cmZhY2UuaCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5oCmluZGV4
IDI5ZWU5NTg3YzM3NjM3MTQzNDE0ZmFmZTU1ZjJjMjBkZWE0ZmEwNWIuLjIzM2I2NjA0Yjk0ODIy
MWVhYTYzM2U5OWM0OGZiYTU1MmNlZTQ1NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL0FjY2VsZXJhdGVkU3VyZmFjZS5oCkBAIC00NSw3ICs0NSw4IEBA
IHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdWludDY0X3Qgd2luZG93KCkgY29uc3QgeyBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsgcmV0dXJuIDA7IH0KICAgICB2aXJ0dWFsIHVpbnQ2NF90IHN1cmZhY2VJ
RCgpIGNvbnN0IHsgQVNTRVJUX05PVF9SRUFDSEVEKCk7IHJldHVybiAwOyB9Ci0gICAgdmlydHVh
bCBib29sIHJlc2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJik7CisgICAgdmlydHVhbCBib29s
IGhvc3RSZXNpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworICAgIHZpcnR1YWwgdm9pZCBj
bGllbnRSZXNpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIHsgfTsKICAgICB2aXJ0dWFsIGJv
b2wgc2hvdWxkUGFpbnRNaXJyb3JlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2
aXJ0dWFsIHZvaWQgaW5pdGlhbGl6ZSgpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9UaHJlYWRlZENvb3JkaW5hdGVk
TGF5ZXJUcmVlSG9zdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29y
ZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcAppbmRl
eCA1MDBlZjE0ZGQ2MzhhYzAzYjcwOTU4Y2VhMGYwYTkxOTU4ZWE1NjNiLi44MjNiN2ZhMmFjNzU5
N2EzYWVhYjI3NDQzMWJjMGNjOWI5MjkwOGM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRM
YXllclRyZWVIb3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9D
b29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcApA
QCAtMTc3LDcgKzE3Nyw3IEBAIHZvaWQgVGhyZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6
OmRldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCgpCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBpZiAobV9zdXJmYWNlICYmIG1fc3VyZmFjZS0+cmVzaXplKG1fd2ViUGFnZS5zaXpl
KCkpKQorICAgIGlmIChtX3N1cmZhY2UgJiYgbV9zdXJmYWNlLT5ob3N0UmVzaXplKG1fd2ViUGFn
ZS5zaXplKCkpKQogICAgICAgICBtX2xheWVyVHJlZUNvbnRleHQuY29udGV4dElEID0gbV9zdXJm
YWNlLT5zdXJmYWNlSUQoKTsKIAogICAgIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6ZGV2aWNl
T3JQYWdlU2NhbGVGYWN0b3JDaGFuZ2VkKCk7CkBAIC0yMDMsNyArMjAzLDcgQEAgdm9pZCBUaHJl
YWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6c2l6ZURpZENoYW5nZShjb25zdCBJbnRTaXpl
JiBzaXplKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKG1fc3VyZmFjZSAmJiBt
X3N1cmZhY2UtPnJlc2l6ZShzaXplKSkKKyAgICBpZiAobV9zdXJmYWNlICYmIG1fc3VyZmFjZS0+
aG9zdFJlc2l6ZShzaXplKSkKICAgICAgICAgbV9sYXllclRyZWVDb250ZXh0LmNvbnRleHRJRCA9
IG1fc3VyZmFjZS0+c3VyZmFjZUlEKCk7CiAKICAgICBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6
OnNpemVEaWRDaGFuZ2Uoc2l6ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRy
ZWVIb3N0LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdy
YXBoaWNzL1RocmVhZGVkQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmgKaW5kZXggODdhN2RhNzE3
Y2RkOWE0ZTExNTg1YTcyMjQ1ZGM2Y2VjZTJmYjViMS4uZjZjMjMxZjNhNGM2YjAzNmNlNTI4NDcz
ZWZhOTc3YzU5NmIxNzcxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9UaHJlYWRlZENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9z
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvVGhyZWFkZWRDb29yZGluYXRlZExheWVyVHJlZUhvc3QuaApAQCAtOTEsNiArOTEsMTIg
QEAgcHJpdmF0ZToKICAgICAgICAgICAgIG1fbGF5ZXJUcmVlSG9zdC5kaWREZXN0cm95R0xDb250
ZXh0KCk7CiAgICAgICAgIH0KIAorICAgICAgICB2b2lkIHJlc2l6ZShjb25zdCBJbnRTaXplJiBz
aXplKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAobV9sYXllclRyZWVIb3N0Lm1fc3VyZmFj
ZSkKKyAgICAgICAgICAgICAgICBtX2xheWVyVHJlZUhvc3QubV9zdXJmYWNlLT5jbGllbnRSZXNp
emUoc2l6ZSk7CisgICAgICAgIH0KKwogICAgICAgICB2b2lkIHdpbGxSZW5kZXJGcmFtZSgpIG92
ZXJyaWRlCiAgICAgICAgIHsKICAgICAgICAgICAgIG1fbGF5ZXJUcmVlSG9zdC53aWxsUmVuZGVy
RnJhbWUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0
ay9BY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kLmNwcAppbmRleCA1ZDFmYjA3
MGRlOGY0MDMzMDQwNTBmZjQzOWY4Yzg5YmJlY2MzZTY0Li43MWVmZmE0NmJjMzVhZDczN2I3Mzk0
ZmUyMDJiMDJjYzg4MDBmYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFuZC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVdheWxhbmQuY3Bw
CkBAIC01NywxMyArNTcsOSBAQCB2b2lkIEFjY2VsZXJhdGVkU3VyZmFjZVdheWxhbmQ6OmZpbmFs
aXplKCkKICAgICB3bF9lZ2xfd2luZG93X2Rlc3Ryb3kobV93aW5kb3cpOwogfQogCi1ib29sIEFj
Y2VsZXJhdGVkU3VyZmFjZVdheWxhbmQ6OnJlc2l6ZShjb25zdCBJbnRTaXplJiBzaXplKQordm9p
ZCBBY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kOjpjbGllbnRSZXNpemUoY29uc3QgSW50U2l6ZSYg
c2l6ZSkKIHsKLSAgICBpZiAoIUFjY2VsZXJhdGVkU3VyZmFjZTo6cmVzaXplKHNpemUpKQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0KICAgICB3bF9lZ2xfd2luZG93X3Jlc2l6ZShtX3dpbmRvdywg
bV9zaXplLndpZHRoKCksIG1fc2l6ZS5oZWlnaHQoKSwgMCwgMCk7Ci0gICAgcmV0dXJuIHRydWU7
CiB9CiAKIHZvaWQgQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFuZDo6ZGlkUmVuZGVyRnJhbWUoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJh
dGVkU3VyZmFjZVdheWxhbmQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0
ay9BY2NlbGVyYXRlZFN1cmZhY2VXYXlsYW5kLmgKaW5kZXggNDMyMDIxNWJkZjc3NzgwMDE2OGU3
ZDM2NmU1MmJlNmFhNzlkODAxYi4uM2I3M2U0OGE3N2U2ZDU3NzAwMTU0MmJkNmQyOGNjMWY1MDg4
MzNlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0Fj
Y2VsZXJhdGVkU3VyZmFjZVdheWxhbmQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNlV2F5bGFuZC5oCkBAIC00Miw3ICs0Miw3IEBA
IHB1YmxpYzoKIAogICAgIHVpbnQ2NF90IHdpbmRvdygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJu
IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDY0X3Q+KG1fd2luZG93KTsgfQogICAgIHVpbnQ2NF90IHN1
cmZhY2VJRCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fd2ViUGFnZS5wYWdlSUQoKTsgfQot
ICAgIGJvb2wgcmVzaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICB2
b2lkIGNsaWVudFJlc2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7CiAgICAg
Ym9vbCBzaG91bGRQYWludE1pcnJvcmVkKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsg
fQogCiAgICAgdm9pZCBpbml0aWFsaXplKCkgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNlWDExLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VY
MTEuY3BwCmluZGV4IGQxYmQ3YjcyYmZiNzg1ZDhkMWRmZDg2ODZmYTUxMDkxYjgzMjExZmEuLjcy
ZTFhZDk5ZGQ3NGY2NzRkMGRmNzJkYzg2YjVkNmU1MGQ1ZWIwODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VYMTEuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1
cmZhY2VYMTEuY3BwCkBAIC0xMzMsOSArMTMzLDkgQEAgdm9pZCBBY2NlbGVyYXRlZFN1cmZhY2VY
MTE6OmNyZWF0ZVBpeG1hcCgpCiAgICAgWFN5bmMobV9kaXNwbGF5LCBGYWxzZSk7CiB9CiAKLWJv
b2wgQWNjZWxlcmF0ZWRTdXJmYWNlWDExOjpyZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6ZSkKK2Jv
b2wgQWNjZWxlcmF0ZWRTdXJmYWNlWDExOjpob3N0UmVzaXplKGNvbnN0IEludFNpemUmIHNpemUp
CiB7Ci0gICAgaWYgKCFBY2NlbGVyYXRlZFN1cmZhY2U6OnJlc2l6ZShzaXplKSkKKyAgICBpZiAo
IUFjY2VsZXJhdGVkU3VyZmFjZTo6aG9zdFJlc2l6ZShzaXplKSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCiAgICAgLy8gUmVzaXplIHRoZSB3aW5kb3cgdG8gYXQgbGFzdCAxeDEgc2luY2UgWCBk
b2Vzbid0IGFsbG93IHRvIGNyZWF0ZSBlbXB0eSB3aW5kb3dzLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVgxMS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0FjY2VsZXJhdGVkU3VyZmFjZVgx
MS5oCmluZGV4IGM5NDhmYzExZGRmYjJkMTBjZTNjY2Q4NmEwYjJmNTdhMjM3MzdmYmQuLmQ2Y2Q0
MmUzYzY0ODM0NDVmMDVmMzdlNDU5ZWJkMjY5OGRkZTU0MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9BY2NlbGVyYXRlZFN1cmZhY2VYMTEuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvQWNjZWxlcmF0ZWRTdXJmYWNl
WDExLmgKQEAgLTQ2LDcgKzQ2LDcgQEAgcHVibGljOgogCiAgICAgdWludDY0X3Qgd2luZG93KCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV93aW5kb3cuZ2V0KCk7IH0KICAgICB1aW50NjRfdCBz
dXJmYWNlSUQoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3BpeG1hcC5nZXQoKTsgfQotICAg
IGJvb2wgcmVzaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKSBvdmVycmlkZTsKKyAgICBib29s
IGhvc3RSZXNpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpIG92ZXJyaWRlOwogICAgIGJvb2wg
c2hvdWxkUGFpbnRNaXJyb3JlZCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAK
ICAgICB2b2lkIGRpZFJlbmRlckZyYW1lKCkgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS93cGUvQWNjZWxlcmF0ZWRTdXJmYWNlV1BFLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VX
UEUuY3BwCmluZGV4IDRkYTlmOWFkMjM3MDcyMWZiZjA4NGQ3YTE1YzBiOTM2ZjY1NjFlODQuLjZm
ZGE2OTgwYjZiOTYwNWZkNjFiZWQ1MjkyZjMwNmM1OWFmMDFjMmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1
cmZhY2VXUEUuY3BwCkBAIC05MiwxNSArOTIsMTAgQEAgdWludDY0X3QgQWNjZWxlcmF0ZWRTdXJm
YWNlV1BFOjpzdXJmYWNlSUQoKSBjb25zdAogICAgIHJldHVybiBtX3dlYlBhZ2UucGFnZUlEKCk7
CiB9CiAKLWJvb2wgQWNjZWxlcmF0ZWRTdXJmYWNlV1BFOjpyZXNpemUoY29uc3QgSW50U2l6ZSYg
c2l6ZSkKK3ZvaWQgQWNjZWxlcmF0ZWRTdXJmYWNlV1BFOjpjbGllbnRSZXNpemUoY29uc3QgSW50
U2l6ZSYgc2l6ZSkKIHsKICAgICBBU1NFUlQobV9iYWNrZW5kKTsKLSAgICBpZiAoIUFjY2VsZXJh
dGVkU3VyZmFjZTo6cmVzaXplKHNpemUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KICAgICB3
cGVfcmVuZGVyZXJfYmFja2VuZF9lZ2xfdGFyZ2V0X3Jlc2l6ZShtX2JhY2tlbmQsIHN0ZDo6bWF4
KDAsIG1fc2l6ZS53aWR0aCgpKSwgc3RkOjptYXgoMCwgbV9zaXplLmhlaWdodCgpKSk7Ci0KLSAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAogdm9pZCBBY2NlbGVyYXRlZFN1cmZhY2VXUEU6OndpbGxSZW5k
ZXJGcmFtZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS93
cGUvQWNjZWxlcmF0ZWRTdXJmYWNlV1BFLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS93cGUvQWNjZWxlcmF0ZWRTdXJmYWNlV1BFLmgKaW5kZXggNDI2MGZmNzNhNDExOWViNGU0
MjQ5ODA1NGI5MDdiNTMyYWZkZmFjNS4uNjllNWMyNjI3NjRjMjU1MGY3ZTM0YjA3ODRmNzAyMTcy
ZjM5Y2YxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uvd3Bl
L0FjY2VsZXJhdGVkU3VyZmFjZVdQRS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL3dwZS9BY2NlbGVyYXRlZFN1cmZhY2VXUEUuaApAQCAtNDQsNyArNDQsNyBAQCBwdWJs
aWM6CiAKICAgICB1aW50NjRfdCB3aW5kb3coKSBjb25zdCBvdmVycmlkZTsKICAgICB1aW50NjRf
dCBzdXJmYWNlSUQoKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIHJlc2l6ZShjb25zdCBXZWJD
b3JlOjpJbnRTaXplJikgb3ZlcnJpZGU7CisgICAgdm9pZCBjbGllbnRSZXNpemUoY29uc3QgV2Vi
Q29yZTo6SW50U2l6ZSYpIG92ZXJyaWRlOwogICAgIGJvb2wgc2hvdWxkUGFpbnRNaXJyb3JlZCgp
IGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2b2lkIGluaXRpYWxpemUo
KSBvdmVycmlkZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>