<?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>212213</bug_id>
          
          <creation_ts>2020-05-21 08:17:45 -0700</creation_ts>
          <short_desc>REGRESSION: Delayed updating of the parallax images on pacificvoyages.net/posts</short_desc>
          <delta_ts>2020-06-24 10:58:52 -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>Animations</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://www.pacificvoyages.net/posts/</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>graouts</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1654922</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-05-21 08:17:45 -0700</bug_when>
    <thetext>When scrolling https://www.pacificvoyages.net/posts/ the images are updated after a delay in Safari. In Chrome and Firefox, they move more smoothly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1654968</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-05-21 10:00:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/63497946&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1654972</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-05-21 10:06:20 -0700</bug_when>
    <thetext>Page seems to be using http://www.jarallax.com/ and https://greensock.com/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655750</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-05-24 10:31:45 -0700</bug_when>
    <thetext>I think there&apos;s an implicit CA animation running here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655751</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-05-24 10:40:18 -0700</bug_when>
    <thetext>Ah, the page has:
transition: all .25s cubic-bezier(0.165, 0.84, 0.44, 1);

So I think this is about how animations behave if you repeatedly trigger them by changing the target value (i.e. interrupted transitions).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655836</commentid>
    <comment_count>5</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-25 05:37:26 -0700</bug_when>
    <thetext>This doesn&apos;t reproduce with Web Animations disabled, this is a regression of the previous behavior, and given Chrome and Firefox&apos;s behavior, the previous implementation was correct and the Web Animations one incorrect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656376</commentid>
    <comment_count>6</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-27 08:47:51 -0700</bug_when>
    <thetext>The generated transform transitions seem to be as expected, albeit nonsensical since they&apos;re running transitions over small increments. So it&apos;s something to do with the generated CA animations. Maybe we fail to cancel some of them?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656797</commentid>
    <comment_count>7</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-28 02:45:15 -0700</bug_when>
    <thetext>The issue is that we&apos;re always using the same `from` value for the transitions on each change of scroll position, instead of using the value that set in the previous style change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656799</commentid>
    <comment_count>8</comment_count>
      <attachid>400440</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-28 03:07:31 -0700</bug_when>
    <thetext>Created attachment 400440
Reduction

Reduction shows how we&apos;re always using the initial style value for a transitioned element when we start a new transition instead of the current computed value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656802</commentid>
    <comment_count>9</comment_count>
      <attachid>400441</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-28 03:21:55 -0700</bug_when>
    <thetext>Created attachment 400441
Reduction

Update reduction shows that this is likely an animation timing issue. The test now shows the startTime and progress for each transition before it gets replaced by a new one. If you look at Firefox Nightly, Chrome Canary and WebKit ToT you notice three different things:

    - Firefox: startTime is somewhere between timeline.currentTime for the previous and current frames and as a result progress &gt; 0
    - Chrome: startTime is timeline.currentTime value for the previous frame (with a rounding error) and as a result progress &gt; 0
    - WebKit: startTime is timeline.currentTime value for the _current_ frame and as a result progress = 0

Our transitions update code is probably correct and picks up the current animated value, but that value is the same as the initial value because the animation hasn&apos;t progressed yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656965</commentid>
    <comment_count>10</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-28 12:45:19 -0700</bug_when>
    <thetext>Have a source change that fixes this issue, but it also regresses a fair few WPT tests. I thought the issue was that we would run the pending play task while updating animations and instead opted to do it in Page::doAfterUpdateRendering(). Need to look harder at this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1657201</commentid>
    <comment_count>11</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-05-29 03:24:21 -0700</bug_when>
    <thetext>Here&apos;s what I&apos;m going to try: place all newly-pending animations in a &quot;pending animations&quot; list on DocumentTimelinesController, then when we resolve style for the first time for one of those animations, move them to a separate &quot;pending animations with resolved styles&quot; list, and when the &quot;pending animations&quot; list is empty, process all items in the &quot;pending animations with resolved styles&quot; list and run their pending play or pause tasks. In the case of animations that can run accelerated, we might want to delay adding them to the &quot;pending animations with resolved styles&quot; list until the CA animation has been committed, although that might not be necessary since the first frame may be drawn by style anyway.

For CSS Animations and CSS Transitions, this means that those animations will be marked as ready in the next microtask since they&apos;ll update styles immediately after being created under Style::TreeResolver::createAnimatedElementUpdate().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1659127</commentid>
    <comment_count>12</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-06-04 09:36:57 -0700</bug_when>
    <thetext>After many attempts, I believe I have the right approach to fixing this. There are however a handful of regressions that need to be addressed. I&apos;ll send an EWS patch for broader testing first, but there is hope that this can be fixed shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1659128</commentid>
    <comment_count>13</comment_count>
      <attachid>401029</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-06-04 09:37:39 -0700</bug_when>
    <thetext>Created attachment 401029
Patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663672</commentid>
    <comment_count>14</comment_count>
      <attachid>402153</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-06-17 14:03:28 -0700</bug_when>
    <thetext>Created attachment 402153
Patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1665775</commentid>
    <comment_count>15</comment_count>
      <attachid>402659</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-06-24 09:57:43 -0700</bug_when>
    <thetext>Created attachment 402659
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1665795</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-06-24 10:58:51 -0700</bug_when>
    <thetext>Committed r263464: &lt;https://trac.webkit.org/changeset/263464&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 402659.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>400440</attachid>
            <date>2020-05-28 03:07:31 -0700</date>
            <delta_ts>2020-05-28 03:07:31 -0700</delta_ts>
            <desc>Reduction</desc>
            <filename>212213-reduction.html</filename>
            <type>text/html</type>
            <size>1216</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KPHRpdGxlPjwvdGl0bGU+CjxzdHlsZT4KCmRpdiB7CiAgICBwb3NpdGlvbjogYWJzb2x1
dGU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgd2lkdGg6IDEwMHB4OwogICAgaGVpZ2h0
OiAxMDBweDsKICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOwogICAgdHJhbnNpdGlvbjogYWxs
IC4yNXM7Cn0KCjwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CjxkaXY+PC9kaXY+CjxzY3JpcHQ+Cgpj
b25zdCB0YXJnZXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJkaXYiKTsKCmFzeW5jIGZ1bmN0
aW9uIHVwZGF0ZSh2YWx1ZSkKewogICAgYXdhaXQgbmV3IFByb21pc2UocmVxdWVzdEFuaW1hdGlv
bkZyYW1lKTsKCiAgICBjb25zdCBweFZhbHVlID0gYCR7dmFsdWV9cHhgOwogICAgY29uc29sZS5n
cm91cChgVXBkYXRpbmcgdG8gJHtweFZhbHVlfWApOwoKICAgIGNvbnNvbGUubG9nKGBDdXJyZW50
IGxlZnQ6ICR7Z2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLmxlZnR9YCk7CiAgICBjb25zb2xlLmxv
ZyhgQ3VycmVudCB0cmFuc2Zvcm06ICR7Z2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLnRyYW5zZm9y
bX1gKTsKCiAgICB0YXJnZXQuc3R5bGUubGVmdCA9IHB4VmFsdWU7CiAgICB0YXJnZXQuc3R5bGUu
dHJhbnNmb3JtID0gYHRyYW5zbGF0ZVgoJHtweFZhbHVlfSlgOwoKICAgIGZvciAobGV0IGFuaW1h
dGlvbiBvZiB0YXJnZXQuZ2V0QW5pbWF0aW9ucygpKSB7CiAgICAgICAgY29uc29sZS5hc3NlcnQo
YW5pbWF0aW9uIGluc3RhbmNlb2YgQ1NTVHJhbnNpdGlvbik7CiAgICAgICAgY29uc3QgcHJvcGVy
dHkgPSBhbmltYXRpb24udHJhbnNpdGlvblByb3BlcnR5OwogICAgICAgIGNvbnN0IGtleWZyYW1l
cyA9IGFuaW1hdGlvbi5lZmZlY3QuZ2V0S2V5ZnJhbWVzKCk7CiAgICAgICAgY29uc29sZS5sb2co
YFRyYW5zaXRpb24gZm9yICR7cHJvcGVydHl9IGZyb20gJHtrZXlmcmFtZXNbMF1bcHJvcGVydHld
fSB0byAke2tleWZyYW1lc1sxXVtwcm9wZXJ0eV19YCk7CiAgICB9CgogICAgY29uc29sZS5ncm91
cEVuZCgpOwp9CgooYXN5bmMgZnVuY3Rpb24oKSB7CiAgICBhd2FpdCB1cGRhdGUoMTAwKTsKICAg
IGF3YWl0IHVwZGF0ZSgyMDApOwogICAgYXdhaXQgdXBkYXRlKDMwMCk7Cn0pKCk7Cgo8L3Njcmlw
dD4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>400441</attachid>
            <date>2020-05-28 03:21:55 -0700</date>
            <delta_ts>2020-05-28 03:21:55 -0700</delta_ts>
            <desc>Reduction</desc>
            <filename>212213-reduction.html</filename>
            <type>text/html</type>
            <size>1615</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KPHRpdGxlPjwvdGl0bGU+CjxzdHlsZT4KCmRpdiB7CiAgICBwb3NpdGlvbjogYWJzb2x1
dGU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgd2lkdGg6IDEwMHB4OwogICAgaGVpZ2h0
OiAxMDBweDsKICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOwogICAgdHJhbnNpdGlvbjogYWxs
IC4yNXM7Cn0KCjwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CjxkaXY+PC9kaXY+CjxzY3JpcHQ+Cgpj
b25zdCB0YXJnZXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJkaXYiKTsKCmFzeW5jIGZ1bmN0
aW9uIHVwZGF0ZSh2YWx1ZSkKewogICAgYXdhaXQgbmV3IFByb21pc2UocmVxdWVzdEFuaW1hdGlv
bkZyYW1lKTsKCiAgICBjb25zdCBweFZhbHVlID0gYCR7dmFsdWV9cHhgOwogICAgY29uc29sZS5n
cm91cChgVXBkYXRpbmcgdG8gJHtweFZhbHVlfWApOwoKICAgIGNvbnNvbGUubG9nKGBQcm9jZXNz
aW5nIHdpdGggZG9jdW1lbnQudGltZWxpbmUuY3VycmVudFRpbWUgPSAke2RvY3VtZW50LnRpbWVs
aW5lLmN1cnJlbnRUaW1lfWApOwogICAgY29uc29sZS5sb2coYEN1cnJlbnQgbGVmdDogJHtnZXRD
b21wdXRlZFN0eWxlKHRhcmdldCkubGVmdH1gKTsKICAgIGNvbnNvbGUubG9nKGBDdXJyZW50IHRy
YW5zZm9ybTogJHtnZXRDb21wdXRlZFN0eWxlKHRhcmdldCkudHJhbnNmb3JtfWApOwoKICAgIGZv
ciAobGV0IGFuaW1hdGlvbiBvZiB0YXJnZXQuZ2V0QW5pbWF0aW9ucygpKSB7CiAgICAgICAgY29u
c29sZS5hc3NlcnQoYW5pbWF0aW9uIGluc3RhbmNlb2YgQ1NTVHJhbnNpdGlvbik7CiAgICAgICAg
Y29uc29sZS5sb2coYEV4aXN0aW5nIHRyYW5zaXRpb24gZm9yICR7YW5pbWF0aW9uLnRyYW5zaXRp
b25Qcm9wZXJ0eX0gaGFzIHN0YXJ0VGltZSAke2FuaW1hdGlvbi5zdGFydFRpbWV9IGFuZCBwcm9n
cmVzcyAke2FuaW1hdGlvbi5lZmZlY3QuZ2V0Q29tcHV0ZWRUaW1pbmcoKS5wcm9ncmVzc31gKTsK
ICAgIH0KCiAgICB0YXJnZXQuc3R5bGUubGVmdCA9IHB4VmFsdWU7CiAgICB0YXJnZXQuc3R5bGUu
dHJhbnNmb3JtID0gYHRyYW5zbGF0ZVgoJHtweFZhbHVlfSlgOwoKICAgIGZvciAobGV0IGFuaW1h
dGlvbiBvZiB0YXJnZXQuZ2V0QW5pbWF0aW9ucygpKSB7CiAgICAgICAgY29uc29sZS5hc3NlcnQo
YW5pbWF0aW9uIGluc3RhbmNlb2YgQ1NTVHJhbnNpdGlvbik7CiAgICAgICAgY29uc3QgcHJvcGVy
dHkgPSBhbmltYXRpb24udHJhbnNpdGlvblByb3BlcnR5OwogICAgICAgIGNvbnN0IGtleWZyYW1l
cyA9IGFuaW1hdGlvbi5lZmZlY3QuZ2V0S2V5ZnJhbWVzKCk7CiAgICAgICAgY29uc29sZS5sb2co
YFRyYW5zaXRpb24gZm9yICR7cHJvcGVydHl9IGZyb20gJHtrZXlmcmFtZXNbMF1bcHJvcGVydHld
fSB0byAke2tleWZyYW1lc1sxXVtwcm9wZXJ0eV19YCk7CiAgICB9CgogICAgY29uc29sZS5ncm91
cEVuZCgpOwp9CgooYXN5bmMgZnVuY3Rpb24oKSB7CiAgICBhd2FpdCB1cGRhdGUoMTAwKTsKICAg
IGF3YWl0IHVwZGF0ZSgyMDApOwogICAgYXdhaXQgdXBkYXRlKDMwMCk7Cn0pKCk7Cgo8L3Njcmlw
dD4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>401029</attachid>
            <date>2020-06-04 09:37:39 -0700</date>
            <delta_ts>2020-06-17 14:03:24 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>bug-212213-20200604183737.patch</filename>
            <type>text/plain</type>
            <size>9093</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYyNDgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTRjZDhjNzk0NzNmMjRi
ODdkNzJmYzEzYTJiNjk3N2NiMGI0MWM5Ny4uYjY3NGRjNTg5MjhjMWNmYTkzNjk3MGQwNWM4MTZk
NzJmNDBhZDM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA2LTA0ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTjogRGVs
YXllZCB1cGRhdGluZyBvZiB0aGUgcGFyYWxsYXggaW1hZ2VzIG9uIHBhY2lmaWN2b3lhZ2VzLm5l
dC9wb3N0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjEyMjEzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Tm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBhbmltYXRpb24vRG9jdW1lbnRUaW1l
bGluZXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGltZWxpbmVz
Q29udHJvbGxlcjo6ZGV0YWNoRnJvbURvY3VtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50VGltZWxpbmVzQ29udHJvbGxlcjo6dXBkYXRlQW5pbWF0aW9uc0FuZFNlbmRFdmVudHMpOgor
ICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjpjdXJyZW50VGlt
ZSk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6OmRvQmVm
b3JlVXBkYXRlQW5pbWF0aW9uc0FuZFNlbmRFdmVudHMpOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjptYXliZU1ha2VQZW5kaW5nQW5pbWF0aW9uc1JlYWR5
KToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6Y2FjaGVD
dXJyZW50VGltZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFRpbWVsaW5l
c0NvbnRyb2xsZXI6Om1heWJlQ2xlYXJDYWNoZWRDdXJyZW50VGltZSk6IERlbGV0ZWQuCisgICAg
ICAgICogYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5oOgorICAgICAgICAq
IGFuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViQW5pbWF0
aW9uOjp0aWNrKToKKyAgICAgICAgKFdlYkNvcmU6OldlYkFuaW1hdGlvbjo6cnVuUGVuZGluZ1Rh
c2tzKToKKyAgICAgICAgKiBhbmltYXRpb24vV2ViQW5pbWF0aW9uLmg6CisKIDIwMjAtMDYtMDMg
IEphdmllciBGZXJuYW5kZXogIDxqZmVybmFuZGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nz
cy1ncmlkXSBEeW5hbWljYWxseSBzZXR0aW5nICJwb3NpdGlvbjogYWJzb2x1dGUiIGluIGEgZ3Jp
ZCBpdGVtIGRvZXNuJ3QgdHJpZ2dlciBhIHJlbGF5b3V0IG9mIHRoYXQgZWxlbWVudApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZXNDb250cm9s
bGVyLmNwcAppbmRleCBiMjc4NDIzMzM1MWJiN2ZlNGFmOWVhZDc3NjM2NTFjYTc1ZjA5YzIwLi5i
ZDI1YjkzMTU0NDc2NDBkMGNjZTE1Y2ZjYjQyZmEyYTIyZWQ2NmU2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmNw
cApAQCAtNzAsNyArNzAsNyBAQCB2b2lkIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6cmVt
b3ZlVGltZWxpbmUoRG9jdW1lbnRUaW1lbGluZSYgdGltZWxpbmUpCiAKIHZvaWQgRG9jdW1lbnRU
aW1lbGluZXNDb250cm9sbGVyOjpkZXRhY2hGcm9tRG9jdW1lbnQoKQogewotICAgIG1fY3VycmVu
dFRpbWVDbGVhcmluZ1Rhc2tRdWV1ZS5jbG9zZSgpOworICAgIG1fcGVuZGluZ0FuaW1hdGlvbnNU
YXNrUXVldWUuY2xvc2UoKTsKIAogICAgIHdoaWxlICghbV90aW1lbGluZXMuY29tcHV0ZXNFbXB0
eSgpKQogICAgICAgICBtX3RpbWVsaW5lcy5iZWdpbigpLT5kZXRhY2hGcm9tRG9jdW1lbnQoKTsK
QEAgLTgwLDE3ICs4MCwxMyBAQCB2b2lkIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6dXBk
YXRlQW5pbWF0aW9uc0FuZFNlbmRFdmVudHMoUmVkdWNlZFJlc29sdXRpbwogewogICAgIEFTU0VS
VCghbV90aW1lbGluZXMuaGFzTnVsbFJlZmVyZW5jZXMoKSk7CiAKKyAgICBkb0JlZm9yZVVwZGF0
ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzKHRpbWVzdGFtcCk7CisKICAgICAvLyBXZSBuZWVkIHRv
IGNvcHkgbV90aW1lbGluZXMgYmVmb3JlIGl0ZXJhdGluZyBvdmVyIGl0cyBtZW1iZXJzIHNpbmNl
IHRoZSBzdGVwcyBpbiB0aGlzIHByb2NlZHVyZSBtYXkgbXV0YXRlIG1fdGltZWxpbmVzLgogICAg
IFZlY3RvcjxSZWY8RG9jdW1lbnRUaW1lbGluZT4+IHByb3RlY3RlZFRpbWVsaW5lczsKICAgICBm
b3IgKGF1dG8mIHRpbWVsaW5lIDogbV90aW1lbGluZXMpCiAgICAgICAgIHByb3RlY3RlZFRpbWVs
aW5lcy5hcHBlbmQodGltZWxpbmUpOwogCi0gICAgLy8gV2UgbmVlZCB0byBmcmVlemUgdGhlIGN1
cnJlbnQgdGltZSBldmVuIGlmIG5vIGFuaW1hdGlvbiBpcyBydW5uaW5nLgotICAgIC8vIGRvY3Vt
ZW50LnRpbWVsaW5lLmN1cnJlbnRUaW1lIG1heSBiZSBjYWxsZWQgZnJvbSBhIHJBRiBjYWxsYmFj
ayBhbmQKLSAgICAvLyBpdCBoYXMgdG8gbWF0Y2ggdGhlIHJBRiB0aW1lc3RhbXAuCi0gICAgaWYg
KCFtX2lzU3VzcGVuZGVkKQotICAgICAgICBjYWNoZUN1cnJlbnRUaW1lKHRpbWVzdGFtcCk7Ci0K
ICAgICAvLyAxLiBVcGRhdGUgdGhlIGN1cnJlbnQgdGltZSBvZiBhbGwgdGltZWxpbmVzIGFzc29j
aWF0ZWQgd2l0aCBkb2N1bWVudCBwYXNzaW5nIG5vdyBhcyB0aGUgdGltZXN0YW1wLgogICAgIFZl
Y3RvcjxSZWY8RG9jdW1lbnRUaW1lbGluZT4+IHRpbWVsaW5lc1RvVXBkYXRlOwogICAgIFZlY3Rv
cjxSZWY8V2ViQW5pbWF0aW9uPj4gYW5pbWF0aW9uc1RvUmVtb3ZlOwpAQCAtMjE2LDM2ICsyMTIs
NTcgQEAgT3B0aW9uYWw8U2Vjb25kcz4gRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjpjdXJy
ZW50VGltZSgpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAKICAgICBpZiAoIW1fY2Fj
aGVkQ3VycmVudFRpbWUpCi0gICAgICAgIGNhY2hlQ3VycmVudFRpbWUobGl2ZUN1cnJlbnRUaW1l
KCkpOworICAgICAgICBtX2NhY2hlZEN1cnJlbnRUaW1lID0gbGl2ZUN1cnJlbnRUaW1lKCk7CiAK
ICAgICByZXR1cm4gKm1fY2FjaGVkQ3VycmVudFRpbWU7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaW1l
bGluZXNDb250cm9sbGVyOjpjYWNoZUN1cnJlbnRUaW1lKFJlZHVjZWRSZXNvbHV0aW9uU2Vjb25k
cyBuZXdDdXJyZW50VGltZSkKK3ZvaWQgRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjpkb0Jl
Zm9yZVVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzKFJlZHVjZWRSZXNvbHV0aW9uU2Vjb25k
cyB0aW1lc3RhbXApCiB7Ci0gICAgbV9jYWNoZWRDdXJyZW50VGltZSA9IG5ld0N1cnJlbnRUaW1l
OworICAgIC8vIFdlIGRpZG4ndCBtYWtlIHBlbmRpbmcgYW5pbWF0aW9ucyByZWFkeSB5ZXQuCisg
ICAgaWYgKG1fd2FpdGluZ09uVk1JZGxlIHx8IG1fcGVuZGluZ0FuaW1hdGlvbnNUYXNrUXVldWUu
aGFzUGVuZGluZ1Rhc2tzKCkpIHsKKyAgICAgICAgbV93YWl0aW5nT25WTUlkbGUgPSBmYWxzZTsK
KyAgICAgICAgbV9wZW5kaW5nQW5pbWF0aW9uc1Rhc2tRdWV1ZS5jYW5jZWxBbGxUYXNrcygpOwor
ICAgICAgICBtYXliZU1ha2VQZW5kaW5nQW5pbWF0aW9uc1JlYWR5KCk7CisgICAgICAgIG1ha2VS
ZWYobV9kb2N1bWVudCktPmV2ZW50TG9vcCgpLnBlcmZvcm1NaWNyb3Rhc2tDaGVja3BvaW50KCk7
CisgICAgfQorCisgICAgLy8gV2UgbmVlZCB0byBmcmVlemUgdGhlIGN1cnJlbnQgdGltZSBldmVu
IGlmIG5vIGFuaW1hdGlvbiBpcyBydW5uaW5nLgorICAgIC8vIGRvY3VtZW50LnRpbWVsaW5lLmN1
cnJlbnRUaW1lIG1heSBiZSBjYWxsZWQgZnJvbSBhIHJBRiBjYWxsYmFjayBhbmQKKyAgICAvLyBp
dCBoYXMgdG8gbWF0Y2ggdGhlIHJBRiB0aW1lc3RhbXAuCisgICAgaWYgKCFtX2lzU3VzcGVuZGVk
KQorICAgICAgICBtX2NhY2hlZEN1cnJlbnRUaW1lID0gdGltZXN0YW1wOworCiAgICAgLy8gV2Ug
d2FudCB0byBiZSBzdXJlIHRvIGtlZXAgdGhpcyB0aW1lIGNhY2hlZCB1bnRpbCB3ZSd2ZSBib3Ro
IGZpbmlzaGVkIHJ1bm5pbmcgSlMgYW5kIGZpbmlzaGVkIHVwZGF0aW5nCiAgICAgLy8gYW5pbWF0
aW9ucywgc28gd2Ugc2NoZWR1bGUgdGhlIGludmFsaWRhdGlvbiB0YXNrIGFuZCByZWdpc3RlciBh
IHdoZW5JZGxlIGNhbGxiYWNrIG9uIHRoZSBWTSwgd2hpY2ggd2lsbAogICAgIC8vIGZpcmUgc3lu
Y3Jvbm91c2x5IGlmIG5vIEpTIGlzIHJ1bm5pbmcuCiAgICAgbV93YWl0aW5nT25WTUlkbGUgPSB0
cnVlOwotICAgIGlmICghbV9jdXJyZW50VGltZUNsZWFyaW5nVGFza1F1ZXVlLmhhc1BlbmRpbmdU
YXNrcygpKQotICAgICAgICBtX2N1cnJlbnRUaW1lQ2xlYXJpbmdUYXNrUXVldWUuZW5xdWV1ZVRh
c2soc3RkOjpiaW5kKCZEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6Om1heWJlQ2xlYXJDYWNo
ZWRDdXJyZW50VGltZSwgdGhpcykpOworICAgIGlmICghbV9wZW5kaW5nQW5pbWF0aW9uc1Rhc2tR
dWV1ZS5oYXNQZW5kaW5nVGFza3MoKSkKKyAgICAgICAgbV9wZW5kaW5nQW5pbWF0aW9uc1Rhc2tR
dWV1ZS5lbnF1ZXVlVGFzayhzdGQ6OmJpbmQoJkRvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6
bWF5YmVNYWtlUGVuZGluZ0FuaW1hdGlvbnNSZWFkeSwgdGhpcykpOworCiAgICAgLy8gV2UgZXh0
ZW50IHRoZSBhc3NvY2lhdGVkIERvY3VtZW50J3MgbGlmZWN5Y2xlIHVudGlsIHRoZSBWTSBiZWNh
bWUgaWRsZSBzaW5jZSB0aGUgRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyCiAgICAgLy8gaXMg
b3duZWQgYnkgdGhlIERvY3VtZW50LgogICAgIG1fZG9jdW1lbnQudm0oKS53aGVuSWRsZShbdGhp
cywgcHJvdGVjdGVkRG9jdW1lbnQgPSBtYWtlUmVmUHRyKG1fZG9jdW1lbnQpXSgpIHsKICAgICAg
ICAgbV93YWl0aW5nT25WTUlkbGUgPSBmYWxzZTsKLSAgICAgICAgbWF5YmVDbGVhckNhY2hlZEN1
cnJlbnRUaW1lKCk7CisgICAgICAgIG1heWJlTWFrZVBlbmRpbmdBbmltYXRpb25zUmVhZHkoKTsK
ICAgICB9KTsKIH0KIAotdm9pZCBEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6Om1heWJlQ2xl
YXJDYWNoZWRDdXJyZW50VGltZSgpCit2b2lkIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6
bWF5YmVNYWtlUGVuZGluZ0FuaW1hdGlvbnNSZWFkeSgpCiB7CiAgICAgLy8gV2Ugd2FudCB0byBt
YWtlIHN1cmUgd2Ugb25seSBjbGVhciB0aGUgY2FjaGVkIGN1cnJlbnQgdGltZSBpZiB3ZSdyZSBu
b3QgY3VycmVudGx5IHJ1bm5pbmcKICAgICAvLyBKUyBvciB3YWl0aW5nIG9uIGFsbCBjdXJyZW50
IGFuaW1hdGlvbiB1cGRhdGluZyBjb2RlIHRvIGhhdmUgY29tcGxldGVkLiBUaGlzIGlzIHNvIHRo
YXQKICAgICAvLyB3ZSdyZSBndWFyYW50ZWVkIHRvIGhhdmUgYSBjb25zaXN0ZW50IGN1cnJlbnQg
dGltZSByZXBvcnRlZCBmb3IgYWxsIHdvcmsgaGFwcGVuaW5nIGluIGEgZ2l2ZW4KICAgICAvLyBK
UyBmcmFtZSBvciB0aHJvdWdob3V0IHVwZGF0aW5nIGFuaW1hdGlvbnMgaW4gV2ViQ29yZS4KLSAg
ICBpZiAoIW1faXNTdXNwZW5kZWQgJiYgIW1fd2FpdGluZ09uVk1JZGxlICYmICFtX2N1cnJlbnRU
aW1lQ2xlYXJpbmdUYXNrUXVldWUuaGFzUGVuZGluZ1Rhc2tzKCkpCi0gICAgICAgIG1fY2FjaGVk
Q3VycmVudFRpbWUgPSBXVEY6Om51bGxvcHQ7CisgICAgaWYgKG1faXNTdXNwZW5kZWQgfHwgbV93
YWl0aW5nT25WTUlkbGUgfHwgbV9wZW5kaW5nQW5pbWF0aW9uc1Rhc2tRdWV1ZS5oYXNQZW5kaW5n
VGFza3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yIChhdXRvJiB0aW1lbGluZSA6IG1f
dGltZWxpbmVzKSB7CisgICAgICAgIGZvciAoYXV0byYgYW5pbWF0aW9uIDogdGltZWxpbmUucmVs
ZXZhbnRBbmltYXRpb25zKCkpIHsKKyAgICAgICAgICAgIGlmIChhbmltYXRpb24tPnRpbWVsaW5l
KCkgPT0gJnRpbWVsaW5lKQorICAgICAgICAgICAgICAgIGFuaW1hdGlvbi0+cnVuUGVuZGluZ1Rh
c2tzKCk7CisgICAgICAgIH0KKyAgICB9CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lc0NvbnRy
b2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lc0NvbnRy
b2xsZXIuaAppbmRleCBkNzQ5YTA2NWRjNTNkNTcxMjFkZGE0Y2I5NjYxZWQyNTYyMDhjMDAyLi5i
YmQ1MTM0OGVlMDM1MGU2NTM1NGFiN2UxNzkyM2FjY2ZhNTE4YjhlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5oCkBA
IC02NCwxMCArNjQsMTEgQEAgcHJpdmF0ZToKIAogICAgIFJlZHVjZWRSZXNvbHV0aW9uU2Vjb25k
cyBsaXZlQ3VycmVudFRpbWUoKSBjb25zdDsKICAgICB2b2lkIGNhY2hlQ3VycmVudFRpbWUoUmVk
dWNlZFJlc29sdXRpb25TZWNvbmRzKTsKLSAgICB2b2lkIG1heWJlQ2xlYXJDYWNoZWRDdXJyZW50
VGltZSgpOworICAgIHZvaWQgZG9CZWZvcmVVcGRhdGVBbmltYXRpb25zQW5kU2VuZEV2ZW50cyhS
ZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMpOworICAgIHZvaWQgbWF5YmVNYWtlUGVuZGluZ0FuaW1h
dGlvbnNSZWFkeSgpOwogCiAgICAgV2Vha0hhc2hTZXQ8RG9jdW1lbnRUaW1lbGluZT4gbV90aW1l
bGluZXM7Ci0gICAgR2VuZXJpY1Rhc2tRdWV1ZTxUaW1lcj4gbV9jdXJyZW50VGltZUNsZWFyaW5n
VGFza1F1ZXVlOworICAgIEdlbmVyaWNUYXNrUXVldWU8VGltZXI+IG1fcGVuZGluZ0FuaW1hdGlv
bnNUYXNrUXVldWU7CiAgICAgRG9jdW1lbnQmIG1fZG9jdW1lbnQ7CiAgICAgTWFya2FibGU8U2Vj
b25kcywgU2Vjb25kczo6TWFya2FibGVUcmFpdHM+IG1fY2FjaGVkQ3VycmVudFRpbWU7CiAgICAg
Ym9vbCBtX2lzU3VzcGVuZGVkIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dl
YkFuaW1hdGlvbi5jcHAKaW5kZXggZDNmN2I1Nzg5YmU2NDZmMmNiYzAzMmJkMDJlZGZkYTJiYmY3
ZWZmYi4uNGY5NzYxOGFlNGU1OGMyYjI2MGE2YWViMDI1ZDU0ZGQ2MGQ4NDZmZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAKQEAgLTEyMzEsMTIgKzEyMzEsNiBA
QCB2b2lkIFdlYkFuaW1hdGlvbjo6dGljaygpCiAgICAgdXBkYXRlRmluaXNoZWRTdGF0ZShEaWRT
ZWVrOjpObywgU3luY2hyb25vdXNseU5vdGlmeTo6WWVzKTsKICAgICBtX3Nob3VsZFNraXBVcGRh
dGluZ0ZpbmlzaGVkU3RhdGVXaGVuUmVzb2x2aW5nID0gdHJ1ZTsKIAotICAgIC8vIFJ1biBwZW5k
aW5nIHRhc2tzLCBpZiBhbnkuCi0gICAgaWYgKGhhc1BlbmRpbmdQYXVzZVRhc2soKSkKLSAgICAg
ICAgcnVuUGVuZGluZ1BhdXNlVGFzaygpOwotICAgIGlmIChoYXNQZW5kaW5nUGxheVRhc2soKSkK
LSAgICAgICAgcnVuUGVuZGluZ1BsYXlUYXNrKCk7Ci0KICAgICBpZiAoIWlzRWZmZWN0SW52YWxp
ZGF0aW9uU3VzcGVuZGVkKCkgJiYgbV9lZmZlY3QpCiAgICAgICAgIG1fZWZmZWN0LT5hbmltYXRp
b25EaWRUaWNrKCk7CiB9CkBAIC0xMjUxLDYgKzEyNDUsMTUgQEAgdm9pZCBXZWJBbmltYXRpb246
OnJlc29sdmUoUmVuZGVyU3R5bGUmIHRhcmdldFN0eWxlKQogICAgICAgICBtX2VmZmVjdC0+YXBw
bHkodGFyZ2V0U3R5bGUpOwogfQogCit2b2lkIFdlYkFuaW1hdGlvbjo6cnVuUGVuZGluZ1Rhc2tz
KCkKK3sKKyAgICAvLyBSdW4gcGVuZGluZyB0YXNrcywgaWYgYW55LgorICAgIGlmIChoYXNQZW5k
aW5nUGF1c2VUYXNrKCkpCisgICAgICAgIHJ1blBlbmRpbmdQYXVzZVRhc2soKTsKKyAgICBpZiAo
aGFzUGVuZGluZ1BsYXlUYXNrKCkpCisgICAgICAgIHJ1blBlbmRpbmdQbGF5VGFzaygpOworfQor
CiB2b2lkIFdlYkFuaW1hdGlvbjo6c2V0U3VzcGVuZGVkKGJvb2wgaXNTdXNwZW5kZWQpCiB7CiAg
ICAgaWYgKG1faXNTdXNwZW5kZWQgPT0gaXNTdXNwZW5kZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vV2ViQW5pbWF0aW9uLmgKaW5kZXggYmMzNTg5OGVjZTMwNzQ0NGE4Y2FkNmVmM2QxYWYxZWEw
YmQ0ZTUwZi4uNDQ5NWQzZTFmN2RkYjQyN2RjZGRhNThkNzIyNmFhYjQ2NmYxYThjNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaApAQCAtMTIyLDYgKzEyMiw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgdGljaygpOwogICAgIFdFQkNPUkVfRVhQT1JUIFNlY29u
ZHMgdGltZVRvTmV4dFRpY2soKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgcmVzb2x2ZShSZW5k
ZXJTdHlsZSYpOworICAgIHZvaWQgcnVuUGVuZGluZ1Rhc2tzKCk7CiAgICAgdm9pZCBlZmZlY3RU
YXJnZXREaWRDaGFuZ2UoRWxlbWVudCogcHJldmlvdXNUYXJnZXQsIEVsZW1lbnQqIG5ld1Rhcmdl
dCk7CiAgICAgdm9pZCBhY2NlbGVyYXRlZFN0YXRlRGlkQ2hhbmdlKCk7CiAgICAgdm9pZCBhcHBs
eVBlbmRpbmdBY2NlbGVyYXRlZEFjdGlvbnMoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402153</attachid>
            <date>2020-06-17 14:03:28 -0700</date>
            <delta_ts>2020-06-24 09:57:40 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>bug-212213-20200617230326.patch</filename>
            <type>text/plain</type>
            <size>9025</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzMTc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWI0YTE0M2FjNTM2MWI0
MGQ4ZjE0MmM0MmIyYzlhNzdhODYyZGU1MS4uYWE3M2NjM2Y2MzczMDc5YTViYjFhZmMwZmZlYzdk
NTkwMzBiZjliNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA2LTE3ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJT046IERl
bGF5ZWQgdXBkYXRpbmcgb2YgdGhlIHBhcmFsbGF4IGltYWdlcyBvbiBwYWNpZmljdm95YWdlcy5u
ZXQvcG9zdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxMjIxMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cyAoT09QUyEpLgorCisgICAgICAgICogYW5pbWF0aW9uL0RvY3VtZW50VGlt
ZWxpbmVzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFRpbWVsaW5l
c0NvbnRyb2xsZXI6OmRldGFjaEZyb21Eb2N1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6OnVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzKToK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6Y3VycmVudFRp
bWUpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjpkb0Jl
Zm9yZVVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6bWF5YmVNYWtlUGVuZGluZ0FuaW1hdGlvbnNSZWFk
eSk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6OmNhY2hl
Q3VycmVudFRpbWUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaW1lbGlu
ZXNDb250cm9sbGVyOjptYXliZUNsZWFyQ2FjaGVkQ3VycmVudFRpbWUpOiBEZWxldGVkLgorICAg
ICAgICAqIGFuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXIuaDoKKyAgICAgICAg
KiBhbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkFuaW1h
dGlvbjo6dGljayk6CisgICAgICAgIChXZWJDb3JlOjpXZWJBbmltYXRpb246OnJ1blBlbmRpbmdU
YXNrcyk6CisgICAgICAgICogYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5oOgorCiAyMDIwLTA2LTE2
ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAgICAgICAgIHF1aWtyLmNv
bTogdW5hYmxlIHRvIHNlbGVjdCBpdGVtIGZyb20gZHJvcGRvd24KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5jcHAKaW5k
ZXggYjI3ODQyMzMzNTFiYjdmZTRhZjllYWQ3NzYzNjUxY2E3NWYwOWMyMC4uYmQyNWI5MzE1NDQ3
NjQwZDBjY2UxNWNmY2I0MmZhMmEyMmVkNjZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5jcHAKQEAgLTcwLDcg
KzcwLDcgQEAgdm9pZCBEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6OnJlbW92ZVRpbWVsaW5l
KERvY3VtZW50VGltZWxpbmUmIHRpbWVsaW5lKQogCiB2b2lkIERvY3VtZW50VGltZWxpbmVzQ29u
dHJvbGxlcjo6ZGV0YWNoRnJvbURvY3VtZW50KCkKIHsKLSAgICBtX2N1cnJlbnRUaW1lQ2xlYXJp
bmdUYXNrUXVldWUuY2xvc2UoKTsKKyAgICBtX3BlbmRpbmdBbmltYXRpb25zVGFza1F1ZXVlLmNs
b3NlKCk7CiAKICAgICB3aGlsZSAoIW1fdGltZWxpbmVzLmNvbXB1dGVzRW1wdHkoKSkKICAgICAg
ICAgbV90aW1lbGluZXMuYmVnaW4oKS0+ZGV0YWNoRnJvbURvY3VtZW50KCk7CkBAIC04MCwxNyAr
ODAsMTMgQEAgdm9pZCBEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6OnVwZGF0ZUFuaW1hdGlv
bnNBbmRTZW5kRXZlbnRzKFJlZHVjZWRSZXNvbHV0aW8KIHsKICAgICBBU1NFUlQoIW1fdGltZWxp
bmVzLmhhc051bGxSZWZlcmVuY2VzKCkpOwogCisgICAgZG9CZWZvcmVVcGRhdGVBbmltYXRpb25z
QW5kU2VuZEV2ZW50cyh0aW1lc3RhbXApOworCiAgICAgLy8gV2UgbmVlZCB0byBjb3B5IG1fdGlt
ZWxpbmVzIGJlZm9yZSBpdGVyYXRpbmcgb3ZlciBpdHMgbWVtYmVycyBzaW5jZSB0aGUgc3RlcHMg
aW4gdGhpcyBwcm9jZWR1cmUgbWF5IG11dGF0ZSBtX3RpbWVsaW5lcy4KICAgICBWZWN0b3I8UmVm
PERvY3VtZW50VGltZWxpbmU+PiBwcm90ZWN0ZWRUaW1lbGluZXM7CiAgICAgZm9yIChhdXRvJiB0
aW1lbGluZSA6IG1fdGltZWxpbmVzKQogICAgICAgICBwcm90ZWN0ZWRUaW1lbGluZXMuYXBwZW5k
KHRpbWVsaW5lKTsKIAotICAgIC8vIFdlIG5lZWQgdG8gZnJlZXplIHRoZSBjdXJyZW50IHRpbWUg
ZXZlbiBpZiBubyBhbmltYXRpb24gaXMgcnVubmluZy4KLSAgICAvLyBkb2N1bWVudC50aW1lbGlu
ZS5jdXJyZW50VGltZSBtYXkgYmUgY2FsbGVkIGZyb20gYSByQUYgY2FsbGJhY2sgYW5kCi0gICAg
Ly8gaXQgaGFzIHRvIG1hdGNoIHRoZSByQUYgdGltZXN0YW1wLgotICAgIGlmICghbV9pc1N1c3Bl
bmRlZCkKLSAgICAgICAgY2FjaGVDdXJyZW50VGltZSh0aW1lc3RhbXApOwotCiAgICAgLy8gMS4g
VXBkYXRlIHRoZSBjdXJyZW50IHRpbWUgb2YgYWxsIHRpbWVsaW5lcyBhc3NvY2lhdGVkIHdpdGgg
ZG9jdW1lbnQgcGFzc2luZyBub3cgYXMgdGhlIHRpbWVzdGFtcC4KICAgICBWZWN0b3I8UmVmPERv
Y3VtZW50VGltZWxpbmU+PiB0aW1lbGluZXNUb1VwZGF0ZTsKICAgICBWZWN0b3I8UmVmPFdlYkFu
aW1hdGlvbj4+IGFuaW1hdGlvbnNUb1JlbW92ZTsKQEAgLTIxNiwzNiArMjEyLDU3IEBAIE9wdGlv
bmFsPFNlY29uZHM+IERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6Y3VycmVudFRpbWUoKQog
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogCiAgICAgaWYgKCFtX2NhY2hlZEN1cnJlbnRU
aW1lKQotICAgICAgICBjYWNoZUN1cnJlbnRUaW1lKGxpdmVDdXJyZW50VGltZSgpKTsKKyAgICAg
ICAgbV9jYWNoZWRDdXJyZW50VGltZSA9IGxpdmVDdXJyZW50VGltZSgpOwogCiAgICAgcmV0dXJu
ICptX2NhY2hlZEN1cnJlbnRUaW1lOwogfQogCi12b2lkIERvY3VtZW50VGltZWxpbmVzQ29udHJv
bGxlcjo6Y2FjaGVDdXJyZW50VGltZShSZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMgbmV3Q3VycmVu
dFRpbWUpCit2b2lkIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcjo6ZG9CZWZvcmVVcGRhdGVB
bmltYXRpb25zQW5kU2VuZEV2ZW50cyhSZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMgdGltZXN0YW1w
KQogewotICAgIG1fY2FjaGVkQ3VycmVudFRpbWUgPSBuZXdDdXJyZW50VGltZTsKKyAgICAvLyBX
ZSBkaWRuJ3QgbWFrZSBwZW5kaW5nIGFuaW1hdGlvbnMgcmVhZHkgeWV0LgorICAgIGlmIChtX3dh
aXRpbmdPblZNSWRsZSB8fCBtX3BlbmRpbmdBbmltYXRpb25zVGFza1F1ZXVlLmhhc1BlbmRpbmdU
YXNrcygpKSB7CisgICAgICAgIG1fd2FpdGluZ09uVk1JZGxlID0gZmFsc2U7CisgICAgICAgIG1f
cGVuZGluZ0FuaW1hdGlvbnNUYXNrUXVldWUuY2FuY2VsQWxsVGFza3MoKTsKKyAgICAgICAgbWF5
YmVNYWtlUGVuZGluZ0FuaW1hdGlvbnNSZWFkeSgpOworICAgICAgICBtYWtlUmVmKG1fZG9jdW1l
bnQpLT5ldmVudExvb3AoKS5wZXJmb3JtTWljcm90YXNrQ2hlY2twb2ludCgpOworICAgIH0KKwor
ICAgIC8vIFdlIG5lZWQgdG8gZnJlZXplIHRoZSBjdXJyZW50IHRpbWUgZXZlbiBpZiBubyBhbmlt
YXRpb24gaXMgcnVubmluZy4KKyAgICAvLyBkb2N1bWVudC50aW1lbGluZS5jdXJyZW50VGltZSBt
YXkgYmUgY2FsbGVkIGZyb20gYSByQUYgY2FsbGJhY2sgYW5kCisgICAgLy8gaXQgaGFzIHRvIG1h
dGNoIHRoZSByQUYgdGltZXN0YW1wLgorICAgIGlmICghbV9pc1N1c3BlbmRlZCkKKyAgICAgICAg
bV9jYWNoZWRDdXJyZW50VGltZSA9IHRpbWVzdGFtcDsKKwogICAgIC8vIFdlIHdhbnQgdG8gYmUg
c3VyZSB0byBrZWVwIHRoaXMgdGltZSBjYWNoZWQgdW50aWwgd2UndmUgYm90aCBmaW5pc2hlZCBy
dW5uaW5nIEpTIGFuZCBmaW5pc2hlZCB1cGRhdGluZwogICAgIC8vIGFuaW1hdGlvbnMsIHNvIHdl
IHNjaGVkdWxlIHRoZSBpbnZhbGlkYXRpb24gdGFzayBhbmQgcmVnaXN0ZXIgYSB3aGVuSWRsZSBj
YWxsYmFjayBvbiB0aGUgVk0sIHdoaWNoIHdpbGwKICAgICAvLyBmaXJlIHN5bmNyb25vdXNseSBp
ZiBubyBKUyBpcyBydW5uaW5nLgogICAgIG1fd2FpdGluZ09uVk1JZGxlID0gdHJ1ZTsKLSAgICBp
ZiAoIW1fY3VycmVudFRpbWVDbGVhcmluZ1Rhc2tRdWV1ZS5oYXNQZW5kaW5nVGFza3MoKSkKLSAg
ICAgICAgbV9jdXJyZW50VGltZUNsZWFyaW5nVGFza1F1ZXVlLmVucXVldWVUYXNrKHN0ZDo6Ymlu
ZCgmRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjptYXliZUNsZWFyQ2FjaGVkQ3VycmVudFRp
bWUsIHRoaXMpKTsKKyAgICBpZiAoIW1fcGVuZGluZ0FuaW1hdGlvbnNUYXNrUXVldWUuaGFzUGVu
ZGluZ1Rhc2tzKCkpCisgICAgICAgIG1fcGVuZGluZ0FuaW1hdGlvbnNUYXNrUXVldWUuZW5xdWV1
ZVRhc2soc3RkOjpiaW5kKCZEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6Om1heWJlTWFrZVBl
bmRpbmdBbmltYXRpb25zUmVhZHksIHRoaXMpKTsKKwogICAgIC8vIFdlIGV4dGVudCB0aGUgYXNz
b2NpYXRlZCBEb2N1bWVudCdzIGxpZmVjeWNsZSB1bnRpbCB0aGUgVk0gYmVjYW1lIGlkbGUgc2lu
Y2UgdGhlIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlcgogICAgIC8vIGlzIG93bmVkIGJ5IHRo
ZSBEb2N1bWVudC4KICAgICBtX2RvY3VtZW50LnZtKCkud2hlbklkbGUoW3RoaXMsIHByb3RlY3Rl
ZERvY3VtZW50ID0gbWFrZVJlZlB0cihtX2RvY3VtZW50KV0oKSB7CiAgICAgICAgIG1fd2FpdGlu
Z09uVk1JZGxlID0gZmFsc2U7Ci0gICAgICAgIG1heWJlQ2xlYXJDYWNoZWRDdXJyZW50VGltZSgp
OworICAgICAgICBtYXliZU1ha2VQZW5kaW5nQW5pbWF0aW9uc1JlYWR5KCk7CiAgICAgfSk7CiB9
CiAKLXZvaWQgRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyOjptYXliZUNsZWFyQ2FjaGVkQ3Vy
cmVudFRpbWUoKQordm9pZCBEb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXI6Om1heWJlTWFrZVBl
bmRpbmdBbmltYXRpb25zUmVhZHkoKQogewogICAgIC8vIFdlIHdhbnQgdG8gbWFrZSBzdXJlIHdl
IG9ubHkgY2xlYXIgdGhlIGNhY2hlZCBjdXJyZW50IHRpbWUgaWYgd2UncmUgbm90IGN1cnJlbnRs
eSBydW5uaW5nCiAgICAgLy8gSlMgb3Igd2FpdGluZyBvbiBhbGwgY3VycmVudCBhbmltYXRpb24g
dXBkYXRpbmcgY29kZSB0byBoYXZlIGNvbXBsZXRlZC4gVGhpcyBpcyBzbyB0aGF0CiAgICAgLy8g
d2UncmUgZ3VhcmFudGVlZCB0byBoYXZlIGEgY29uc2lzdGVudCBjdXJyZW50IHRpbWUgcmVwb3J0
ZWQgZm9yIGFsbCB3b3JrIGhhcHBlbmluZyBpbiBhIGdpdmVuCiAgICAgLy8gSlMgZnJhbWUgb3Ig
dGhyb3VnaG91dCB1cGRhdGluZyBhbmltYXRpb25zIGluIFdlYkNvcmUuCi0gICAgaWYgKCFtX2lz
U3VzcGVuZGVkICYmICFtX3dhaXRpbmdPblZNSWRsZSAmJiAhbV9jdXJyZW50VGltZUNsZWFyaW5n
VGFza1F1ZXVlLmhhc1BlbmRpbmdUYXNrcygpKQotICAgICAgICBtX2NhY2hlZEN1cnJlbnRUaW1l
ID0gV1RGOjpudWxsb3B0OworICAgIGlmIChtX2lzU3VzcGVuZGVkIHx8IG1fd2FpdGluZ09uVk1J
ZGxlIHx8IG1fcGVuZGluZ0FuaW1hdGlvbnNUYXNrUXVldWUuaGFzUGVuZGluZ1Rhc2tzKCkpCisg
ICAgICAgIHJldHVybjsKKworICAgIGZvciAoYXV0byYgdGltZWxpbmUgOiBtX3RpbWVsaW5lcykg
eworICAgICAgICBmb3IgKGF1dG8mIGFuaW1hdGlvbiA6IHRpbWVsaW5lLnJlbGV2YW50QW5pbWF0
aW9ucygpKSB7CisgICAgICAgICAgICBpZiAoYW5pbWF0aW9uLT50aW1lbGluZSgpID09ICZ0aW1l
bGluZSkKKyAgICAgICAgICAgICAgICBhbmltYXRpb24tPnJ1blBlbmRpbmdUYXNrcygpOworICAg
ICAgICB9CisgICAgfQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmgKaW5k
ZXggZDc0OWEwNjVkYzUzZDU3MTIxZGRhNGNiOTY2MWVkMjU2MjA4YzAwMi4uYmJkNTEzNDhlZTAz
NTBlNjUzNTRhYjdlMTc5MjNhY2NmYTUxOGI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lc0NvbnRyb2xsZXIuaApAQCAtNjQsMTAgKzY0
LDExIEBAIHByaXZhdGU6CiAKICAgICBSZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMgbGl2ZUN1cnJl
bnRUaW1lKCkgY29uc3Q7CiAgICAgdm9pZCBjYWNoZUN1cnJlbnRUaW1lKFJlZHVjZWRSZXNvbHV0
aW9uU2Vjb25kcyk7Ci0gICAgdm9pZCBtYXliZUNsZWFyQ2FjaGVkQ3VycmVudFRpbWUoKTsKKyAg
ICB2b2lkIGRvQmVmb3JlVXBkYXRlQW5pbWF0aW9uc0FuZFNlbmRFdmVudHMoUmVkdWNlZFJlc29s
dXRpb25TZWNvbmRzKTsKKyAgICB2b2lkIG1heWJlTWFrZVBlbmRpbmdBbmltYXRpb25zUmVhZHko
KTsKIAogICAgIFdlYWtIYXNoU2V0PERvY3VtZW50VGltZWxpbmU+IG1fdGltZWxpbmVzOwotICAg
IEdlbmVyaWNUYXNrUXVldWU8VGltZXI+IG1fY3VycmVudFRpbWVDbGVhcmluZ1Rhc2tRdWV1ZTsK
KyAgICBHZW5lcmljVGFza1F1ZXVlPFRpbWVyPiBtX3BlbmRpbmdBbmltYXRpb25zVGFza1F1ZXVl
OwogICAgIERvY3VtZW50JiBtX2RvY3VtZW50OwogICAgIE1hcmthYmxlPFNlY29uZHMsIFNlY29u
ZHM6Ok1hcmthYmxlVHJhaXRzPiBtX2NhY2hlZEN1cnJlbnRUaW1lOwogICAgIGJvb2wgbV9pc1N1
c3BlbmRlZCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
V2ViQW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24u
Y3BwCmluZGV4IGQzZjdiNTc4OWJlNjQ2ZjJjYmMwMzJiZDAyZWRmZGEyYmJmN2VmZmIuLjRmOTc2
MThhZTRlNThjMmIyNjBhNmFlYjAyNWQ1NGRkNjBkODQ2ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCkBAIC0xMjMxLDEyICsxMjMxLDYgQEAgdm9pZCBXZWJB
bmltYXRpb246OnRpY2soKQogICAgIHVwZGF0ZUZpbmlzaGVkU3RhdGUoRGlkU2Vlazo6Tm8sIFN5
bmNocm9ub3VzbHlOb3RpZnk6Olllcyk7CiAgICAgbV9zaG91bGRTa2lwVXBkYXRpbmdGaW5pc2hl
ZFN0YXRlV2hlblJlc29sdmluZyA9IHRydWU7CiAKLSAgICAvLyBSdW4gcGVuZGluZyB0YXNrcywg
aWYgYW55LgotICAgIGlmIChoYXNQZW5kaW5nUGF1c2VUYXNrKCkpCi0gICAgICAgIHJ1blBlbmRp
bmdQYXVzZVRhc2soKTsKLSAgICBpZiAoaGFzUGVuZGluZ1BsYXlUYXNrKCkpCi0gICAgICAgIHJ1
blBlbmRpbmdQbGF5VGFzaygpOwotCiAgICAgaWYgKCFpc0VmZmVjdEludmFsaWRhdGlvblN1c3Bl
bmRlZCgpICYmIG1fZWZmZWN0KQogICAgICAgICBtX2VmZmVjdC0+YW5pbWF0aW9uRGlkVGljaygp
OwogfQpAQCAtMTI1MSw2ICsxMjQ1LDE1IEBAIHZvaWQgV2ViQW5pbWF0aW9uOjpyZXNvbHZlKFJl
bmRlclN0eWxlJiB0YXJnZXRTdHlsZSkKICAgICAgICAgbV9lZmZlY3QtPmFwcGx5KHRhcmdldFN0
eWxlKTsKIH0KIAordm9pZCBXZWJBbmltYXRpb246OnJ1blBlbmRpbmdUYXNrcygpCit7CisgICAg
Ly8gUnVuIHBlbmRpbmcgdGFza3MsIGlmIGFueS4KKyAgICBpZiAoaGFzUGVuZGluZ1BhdXNlVGFz
aygpKQorICAgICAgICBydW5QZW5kaW5nUGF1c2VUYXNrKCk7CisgICAgaWYgKGhhc1BlbmRpbmdQ
bGF5VGFzaygpKQorICAgICAgICBydW5QZW5kaW5nUGxheVRhc2soKTsKK30KKwogdm9pZCBXZWJB
bmltYXRpb246OnNldFN1c3BlbmRlZChib29sIGlzU3VzcGVuZGVkKQogewogICAgIGlmIChtX2lz
U3VzcGVuZGVkID09IGlzU3VzcGVuZGVkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL1dlYkFuaW1hdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1h
dGlvbi5oCmluZGV4IGJjMzU4OThlY2UzMDc0NDRhOGNhZDZlZjNkMWFmMWVhMGJkNGU1MGYuLjQ0
OTVkM2UxZjdkZGI0MjdkY2RkYTU4ZDcyMjZhYWI0NjZmMWE4YzYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vV2ViQW5pbWF0aW9uLmgKQEAgLTEyMiw2ICsxMjIsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIHRpY2soKTsKICAgICBXRUJDT1JFX0VYUE9SVCBTZWNvbmRzIHRpbWVUb05l
eHRUaWNrKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIHJlc29sdmUoUmVuZGVyU3R5bGUmKTsK
KyAgICB2b2lkIHJ1blBlbmRpbmdUYXNrcygpOwogICAgIHZvaWQgZWZmZWN0VGFyZ2V0RGlkQ2hh
bmdlKEVsZW1lbnQqIHByZXZpb3VzVGFyZ2V0LCBFbGVtZW50KiBuZXdUYXJnZXQpOwogICAgIHZv
aWQgYWNjZWxlcmF0ZWRTdGF0ZURpZENoYW5nZSgpOwogICAgIHZvaWQgYXBwbHlQZW5kaW5nQWNj
ZWxlcmF0ZWRBY3Rpb25zKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402659</attachid>
            <date>2020-06-24 09:57:43 -0700</date>
            <delta_ts>2020-06-24 10:58:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-212213-20200624185741.patch</filename>
            <type>text/plain</type>
            <size>19684</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGRkY2Q0OTNiNGM3NGZj
ZTc5MmEyYjNmYThmYzc0NDhiZWI5M2IxZi4uODk4NzIyY2RkNDhiYzE4Y2NmNTNmYjljYzc1ZjFm
NTMxY2FkNmMzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDIwLTA2LTI0ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJT046IERl
bGF5ZWQgdXBkYXRpbmcgb2YgdGhlIHBhcmFsbGF4IGltYWdlcyBvbiBwYWNpZmljdm95YWdlcy5u
ZXQvcG9zdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxMjIxMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjM0OTc5NDY+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdDogd2ViYW5pbWF0aW9ucy9j
c3MtdHJhbnNpdGlvbi1yZXRhcmdldGluZy1kdXJpbmctcmVhZHktcHJvbWlzZS5odG1sCisKKyAg
ICAgICAgV2hlbiBhIHRyYW5zaXRpb24ncyByZWFkeSBwcm9taXNlIGlzIHJlc29sdmVkLCBpdHMg
c3RhcnQgdGltZSBpcyB0aGUgc2FtZSBhcyB0aGUgdGltZWxpbmUncyBjdXJyZW50IHRpbWUuIFRo
aXMgbWVhbnMKKyAgICAgICAgdGhhdCByZXRhcmdldGluZyBhIHRyYW5zaXRpb24gYXQgdGhhdCBt
b21lbnQgd2lsbCB5aWVsZCBhIHByb2dyZXNzIG9mIHplcm8gZXZlbiB0aG91Z2ggdGhlIHRyYW5z
aXRpb24gd2FzIHN0YXJ0ZWQgYmVmb3JlCisgICAgICAgIHRoZSBjdXJyZW50IGFuaW1hdGlvbiBm
cmFtZS4gVGhpcyBtZWFucyB0aGF0IHJldGFyZ2V0aW5nIGEgcHJvcGVydHkgb24gZWFjaCBwYWdl
IHJlbmRlcmluZyBtYXkgc3RhcnQgYSBuZXcgdHJhbnNpdGlvbgorICAgICAgICB3aXRoIHRoZSBz
YW1lIGZyb20gdmFsdWUsIHdoaWNoIGNhbiBoYXZlIGFuIHVuZGVzaXJhYmxlIGVmZmVjdCBzdWNo
IGFzIG9uIHRoZSB3ZWJzaXRlIHJlcG9ydGVkIGluIHRoaXMgYnVnLgorCisgICAgICAgIFdlIG5v
dyBrZWVwIHRyYWNrIG9mIHRoZSB0aW1lbGluZSB0aW1lIHdoZW4gYSB0cmFuc2l0aW9uIGlzIGNy
ZWF0ZWQgYW5kIHVzZSB0aGlzIHRpbWUgYXMgYSBzdGFydCB0aW1lIG92ZXJyaWRlIHdoZW4KKyAg
ICAgICAgYXBwbHlpbmcgdGhlIGFuaW1hdGlvbiB0byBjb21wdXRlIHRoZSBiZWZvcmUtY2hhbmdl
IHN0eWxlIGluIEFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1l
bnRBbmRQcm9wZXJ0eSgpLgorCisgICAgICAgIFRvIGRvIHNvLCB3ZSBwYXNzIGFuIG9wdGlvbmFs
IHN0YXJ0IHRpbWUgYWxsIHRoZSB3YXkgZnJvbSBXZWJBbmltYXRpb246OnJlc29sdmUoKSB0aHJv
dWdoIHRvIFdlYkFuaW1hdGlvbjo6Y3VycmVudFRpbWUoKSBhbmQKKyAgICAgICAgdmlhIHRoZSBh
bmltYXRpb24gZWZmZWN0IHRpbWluZyBjb21wdXRhdGlvbi4KKworICAgICAgICAqIGFuaW1hdGlv
bi9BbmltYXRpb25FZmZlY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uRWZmZWN0
OjpnZXRCYXNpY1RpbWluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25FZmZl
Y3Q6OmdldENvbXB1dGVkVGltaW5nIGNvbnN0KToKKyAgICAgICAgKiBhbmltYXRpb24vQW5pbWF0
aW9uRWZmZWN0Lmg6CisgICAgICAgICogYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9u
c0ZvckVsZW1lbnRBbmRQcm9wZXJ0eSk6CisgICAgICAgICogYW5pbWF0aW9uL0NTU1RyYW5zaXRp
b24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVHJhbnNpdGlvbjo6Q1NTVHJhbnNpdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpDU1NUcmFuc2l0aW9uOjpyZXNvbHZlKToKKyAgICAgICAgKiBh
bmltYXRpb24vQ1NTVHJhbnNpdGlvbi5oOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6YXBwbHkpOgorICAg
ICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oOgorICAgICAgICAqIGFuaW1hdGlvbi9X
ZWJBbmltYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViQW5pbWF0aW9uOjpjdXJyZW50
VGltZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpXZWJBbmltYXRpb246OnJlc29sdmUpOgor
ICAgICAgICAqIGFuaW1hdGlvbi9XZWJBbmltYXRpb24uaDoKKwogMjAyMC0wNi0yMyAgWmFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtNdWx0aWNvbF0gUmVzZXQgdGhl
IGNoaWxkcmVuSW5saW5lIHN0YXRlIG9uIHRoZSBSZW5kZXJCbG9ja0Zsb3cgd2hlbiBkZXN0cm95
aW5nIHRoZSBtdWx0aWNvbHVtbiBjb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vQW5pbWF0aW9uRWZmZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9B
bmltYXRpb25FZmZlY3QuY3BwCmluZGV4IDcyOGE5YjMzMTI2ZmVhYTI1YjNjNTQ1NmJkMWZlMTRk
NDgyNDcyNDQuLjcyYTllZjFiNTFjZmE3YmUwNGU3YzliNWM2MzhiMTg0MjQwNjU0MjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25FZmZlY3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25FZmZlY3QuY3BwCkBAIC02NywxMyAr
NjcsMTMgQEAgRWZmZWN0VGltaW5nIEFuaW1hdGlvbkVmZmVjdDo6Z2V0VGltaW5nKCkgY29uc3QK
ICAgICByZXR1cm4gdGltaW5nOwogfQogCi1CYXNpY0VmZmVjdFRpbWluZyBBbmltYXRpb25FZmZl
Y3Q6OmdldEJhc2ljVGltaW5nKCkgY29uc3QKK0Jhc2ljRWZmZWN0VGltaW5nIEFuaW1hdGlvbkVm
ZmVjdDo6Z2V0QmFzaWNUaW1pbmcoT3B0aW9uYWw8U2Vjb25kcz4gc3RhcnRUaW1lKSBjb25zdAog
ewogICAgIC8vIFRoZSBXZWIgQW5pbWF0aW9ucyBzcGVjIGludHJvZHVjZXMgYSBudW1iZXIgb2Yg
YW5pbWF0aW9uIGVmZmVjdCB0aW1lLXJlbGF0ZWQgZGVmaW5pdGlvbnMgdGhhdCByZWZlcgogICAg
IC8vIHRvIGVhY2ggb3RoZXIgYSBmYWlyIGJpdCwgc28gcmF0aGVyIHRoYW4gaW1wbGVtZW50aW5n
IHRoZW0gYXMgaW5kaXZpZHVhbCBtZXRob2RzLCBpdCdzIG1vcmUgZWZmaWNpZW50CiAgICAgLy8g
dG8gcmV0dXJuIHRoZW0gYWxsIGFzIGEgc2luZ2xlIEJhc2ljRWZmZWN0VGltaW5nLgogCi0gICAg
YXV0byBsb2NhbFRpbWUgPSBbdGhpc10oKSAtPiBPcHRpb25hbDxTZWNvbmRzPiB7CisgICAgYXV0
byBsb2NhbFRpbWUgPSBbdGhpcywgc3RhcnRUaW1lXSgpIC0+IE9wdGlvbmFsPFNlY29uZHM+IHsK
ICAgICAgICAgLy8gNC41LjQuIExvY2FsIHRpbWUKICAgICAgICAgLy8gaHR0cHM6Ly9kcmFmdHMu
Y3Nzd2cub3JnL3dlYi1hbmltYXRpb25zLTEvI2xvY2FsLXRpbWUtc2VjdGlvbgogCkBAIC04MSw3
ICs4MSw3IEBAIEJhc2ljRWZmZWN0VGltaW5nIEFuaW1hdGlvbkVmZmVjdDo6Z2V0QmFzaWNUaW1p
bmcoKSBjb25zdAogICAgICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGVmZmVjdCBpcyBhc3NvY2lh
dGVkIHdpdGggYW4gYW5pbWF0aW9uLCB0aGUgbG9jYWwgdGltZSBpcyB0aGUgY3VycmVudCB0aW1l
IG9mIHRoZSBhbmltYXRpb24uCiAgICAgICAgIC8vIE90aGVyd2lzZSwgdGhlIGxvY2FsIHRpbWUg
aXMgdW5yZXNvbHZlZC4KICAgICAgICAgaWYgKG1fYW5pbWF0aW9uKQotICAgICAgICAgICAgcmV0
dXJuIG1fYW5pbWF0aW9uLT5jdXJyZW50VGltZSgpOworICAgICAgICAgICAgcmV0dXJuIG1fYW5p
bWF0aW9uLT5jdXJyZW50VGltZShzdGFydFRpbWUpOwogICAgICAgICByZXR1cm4gV1RGOjpudWxs
b3B0OwogICAgIH0oKTsKIApAQCAtMTY3LDEzICsxNjcsMTMgQEAgQ29tcHV0ZWRFZmZlY3RUaW1p
bmcgQW5pbWF0aW9uRWZmZWN0OjpnZXRCaW5kaW5nc0NvbXB1dGVkVGltaW5nKCkgY29uc3QKICAg
ICByZXR1cm4gZ2V0Q29tcHV0ZWRUaW1pbmcoKTsKIH0KIAotQ29tcHV0ZWRFZmZlY3RUaW1pbmcg
QW5pbWF0aW9uRWZmZWN0OjpnZXRDb21wdXRlZFRpbWluZygpIGNvbnN0CitDb21wdXRlZEVmZmVj
dFRpbWluZyBBbmltYXRpb25FZmZlY3Q6OmdldENvbXB1dGVkVGltaW5nKE9wdGlvbmFsPFNlY29u
ZHM+IHN0YXJ0VGltZSkgY29uc3QKIHsKICAgICAvLyBUaGUgV2ViIEFuaW1hdGlvbnMgc3BlYyBp
bnRyb2R1Y2VzIGEgbnVtYmVyIG9mIGFuaW1hdGlvbiBlZmZlY3QgdGltZS1yZWxhdGVkIGRlZmlu
aXRpb25zIHRoYXQgcmVmZXIKICAgICAvLyB0byBlYWNoIG90aGVyIGEgZmFpciBiaXQsIHNvIHJh
dGhlciB0aGFuIGltcGxlbWVudGluZyB0aGVtIGFzIGluZGl2aWR1YWwgbWV0aG9kcywgaXQncyBt
b3JlIGVmZmljaWVudAogICAgIC8vIHRvIHJldHVybiB0aGVtIGFsbCBhcyBhIHNpbmdsZSBDb21w
dXRlZEVmZmVjdFRpbWluZy4KIAotICAgIGF1dG8gYmFzaWNFZmZlY3RUaW1pbmcgPSBnZXRCYXNp
Y1RpbWluZygpOworICAgIGF1dG8gYmFzaWNFZmZlY3RUaW1pbmcgPSBnZXRCYXNpY1RpbWluZyhz
dGFydFRpbWUpOwogICAgIGF1dG8gYWN0aXZlVGltZSA9IGJhc2ljRWZmZWN0VGltaW5nLmFjdGl2
ZVRpbWU7CiAgICAgYXV0byBwaGFzZSA9IGJhc2ljRWZmZWN0VGltaW5nLnBoYXNlOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9uRWZmZWN0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9uRWZmZWN0LmgKaW5kZXggM2M0NWNlMDhhYWI2
ODI5MmE1ZGI3NWU3MTAyMDcyMDMxNTQ5NmYxZi4uZjcwMjBmZmRjYTdjOTIyNGUwMWM4MGU5NDI0
NzgzOThiYTE3MDdmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0FuaW1h
dGlvbkVmZmVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25FZmZl
Y3QuaApAQCAtNTUsMTMgKzU1LDEzIEBAIHB1YmxpYzoKIAogICAgIEVmZmVjdFRpbWluZyBnZXRC
aW5kaW5nc1RpbWluZygpIGNvbnN0OwogICAgIEVmZmVjdFRpbWluZyBnZXRUaW1pbmcoKSBjb25z
dDsKLSAgICBCYXNpY0VmZmVjdFRpbWluZyBnZXRCYXNpY1RpbWluZygpIGNvbnN0OworICAgIEJh
c2ljRWZmZWN0VGltaW5nIGdldEJhc2ljVGltaW5nKE9wdGlvbmFsPFNlY29uZHM+ID0gV1RGOjpu
dWxsb3B0KSBjb25zdDsKICAgICBDb21wdXRlZEVmZmVjdFRpbWluZyBnZXRCaW5kaW5nc0NvbXB1
dGVkVGltaW5nKCkgY29uc3Q7Ci0gICAgQ29tcHV0ZWRFZmZlY3RUaW1pbmcgZ2V0Q29tcHV0ZWRU
aW1pbmcoKSBjb25zdDsKKyAgICBDb21wdXRlZEVmZmVjdFRpbWluZyBnZXRDb21wdXRlZFRpbWlu
ZyhPcHRpb25hbDxTZWNvbmRzPiA9IFdURjo6bnVsbG9wdCkgY29uc3Q7CiAgICAgRXhjZXB0aW9u
T3I8dm9pZD4gYmluZGluZ3NVcGRhdGVUaW1pbmcoT3B0aW9uYWw8T3B0aW9uYWxFZmZlY3RUaW1p
bmc+KTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiB1cGRhdGVUaW1pbmcoT3B0aW9uYWw8T3B0aW9u
YWxFZmZlY3RUaW1pbmc+KTsKIAotICAgIHZpcnR1YWwgdm9pZCBhcHBseShSZW5kZXJTdHlsZSYp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgYXBwbHkoUmVuZGVyU3R5bGUmLCBPcHRpb25hbDxTZWNv
bmRzPiA9IFdURjo6bnVsbG9wdCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBpbnZhbGlkYXRlKCkg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBhbmltYXRpb25EaWRUaWNrKCkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBhbmltYXRpb25EaWRQbGF5KCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9BbmltYXRpb25UaW1lbGluZS5jcHAKaW5kZXggZWUzODcxYTNlYmJhNDE1YWJiZDY4Yzg1
NTM1YmY4OTE0ZjJjOTk0NC4uYzk1NWRjOWViOWUyZjhjMDY5MzA4YjdmMjg1NGM1MjU1NTBkNGFl
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5l
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuY3Bw
CkBAIC0zOTEsNyArMzkxLDcgQEAgdm9pZCBBbmltYXRpb25UaW1lbGluZTo6dXBkYXRlQ1NTVHJh
bnNpdGlvbnNGb3JFbGVtZW50QW5kUHJvcGVydHkoRWxlbWVudCYgZWxlbWUKICAgICBhdXRvIGJl
Zm9yZUNoYW5nZVN0eWxlID0gWyZdKCkgLT4gY29uc3QgUmVuZGVyU3R5bGUgewogICAgICAgICBp
ZiAoYW5pbWF0aW9uICYmIGFuaW1hdGlvbi0+aXNSZWxldmFudCgpKSB7CiAgICAgICAgICAgICBh
dXRvIGFuaW1hdGVkU3R5bGUgPSBSZW5kZXJTdHlsZTo6Y2xvbmUoY3VycmVudFN0eWxlKTsKLSAg
ICAgICAgICAgIGFuaW1hdGlvbi0+cmVzb2x2ZShhbmltYXRlZFN0eWxlKTsKKyAgICAgICAgICAg
IGFuaW1hdGlvbi0+cmVzb2x2ZShhbmltYXRlZFN0eWxlLCBpczxDU1NUcmFuc2l0aW9uPihhbmlt
YXRpb24pID8gZG93bmNhc3Q8Q1NTVHJhbnNpdGlvbj4oKmFuaW1hdGlvbikudGltZWxpbmVUaW1l
QXRDcmVhdGlvbigpIDogV1RGOjpudWxsb3B0KTsKICAgICAgICAgICAgIHJldHVybiBhbmltYXRl
ZFN0eWxlOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlv
bi9DU1NUcmFuc2l0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NUcmFuc2l0
aW9uLmNwcAppbmRleCA1ODU5YjJlMzRmODNiNTc1MzU0OTAyNmVjZTVjY2ZkMjBmOTNkM2Q0Li40
YzJhMTY3ZDE0MzczNzQ3NWUwOWZhNTQ2YTMxNDVhNWI2ODVhZTk0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTVHJhbnNpdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0NTU1RyYW5zaXRpb24uY3BwCkBAIC01Myw2ICs1Myw3IEBAIENTU1RyYW5z
aXRpb246OkNTU1RyYW5zaXRpb24oRWxlbWVudCYgZWxlbWVudCwgQ1NTUHJvcGVydHlJRCBwcm9w
ZXJ0eSwgTW9ub3RvbmljCiAgICAgOiBEZWNsYXJhdGl2ZUFuaW1hdGlvbihlbGVtZW50LCBiYWNr
aW5nQW5pbWF0aW9uKQogICAgICwgbV9wcm9wZXJ0eShwcm9wZXJ0eSkKICAgICAsIG1fZ2VuZXJh
dGlvblRpbWUoZ2VuZXJhdGlvblRpbWUpCisgICAgLCBtX3RpbWVsaW5lVGltZUF0Q3JlYXRpb24o
ZWxlbWVudC5kb2N1bWVudCgpLnRpbWVsaW5lKCkuY3VycmVudFRpbWUoKSkKICAgICAsIG1fdGFy
Z2V0U3R5bGUoUmVuZGVyU3R5bGU6OmNsb25lUHRyKHRhcmdldFN0eWxlKSkKICAgICAsIG1fY3Vy
cmVudFN0eWxlKFJlbmRlclN0eWxlOjpjbG9uZVB0cihvbGRTdHlsZSkpCiAgICAgLCBtX3JldmVy
c2luZ0FkanVzdGVkU3RhcnRTdHlsZShSZW5kZXJTdHlsZTo6Y2xvbmVQdHIocmV2ZXJzaW5nQWRq
dXN0ZWRTdGFydFN0eWxlKSkKQEAgLTYwLDkgKzYxLDkgQEAgQ1NTVHJhbnNpdGlvbjo6Q1NTVHJh
bnNpdGlvbihFbGVtZW50JiBlbGVtZW50LCBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBNb25vdG9u
aWMKIHsKIH0KIAotdm9pZCBDU1NUcmFuc2l0aW9uOjpyZXNvbHZlKFJlbmRlclN0eWxlJiB0YXJn
ZXRTdHlsZSkKK3ZvaWQgQ1NTVHJhbnNpdGlvbjo6cmVzb2x2ZShSZW5kZXJTdHlsZSYgdGFyZ2V0
U3R5bGUsIE9wdGlvbmFsPFNlY29uZHM+IHN0YXJ0VGltZSkKIHsKLSAgICBEZWNsYXJhdGl2ZUFu
aW1hdGlvbjo6cmVzb2x2ZSh0YXJnZXRTdHlsZSk7CisgICAgRGVjbGFyYXRpdmVBbmltYXRpb246
OnJlc29sdmUodGFyZ2V0U3R5bGUsIHN0YXJ0VGltZSk7CiAgICAgbV9jdXJyZW50U3R5bGUgPSBS
ZW5kZXJTdHlsZTo6Y2xvbmVQdHIodGFyZ2V0U3R5bGUpOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTVHJhbnNpdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL0NTU1RyYW5zaXRpb24uaAppbmRleCBkMTgyODVjYmIzYTg5ZjZiM2Q0OGQzNzcwY2Q3
MzFlYzZkNWE5ODdkLi5kMjc1YmJiMDQxNWQ3Nzc4YzNkOWJhMDE2YjQwNDliNDdhYzAxMWU1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTVHJhbnNpdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NUcmFuc2l0aW9uLmgKQEAgLTI3LDggKzI3LDEx
IEBACiAKICNpbmNsdWRlICJDU1NQcm9wZXJ0eU5hbWVzLmgiCiAjaW5jbHVkZSAiRGVjbGFyYXRp
dmVBbmltYXRpb24uaCIKKyNpbmNsdWRlIDx3dGYvTWFya2FibGUuaD4KICNpbmNsdWRlIDx3dGYv
TW9ub3RvbmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgogI2luY2x1ZGUgPHd0
Zi9SZWYuaD4KKyNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKQEAgLTQ2LDIwICs0OSwyMSBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIHRyYW5zaXRpb25Qcm9w
ZXJ0eSgpIGNvbnN0IHsgcmV0dXJuIGdldFByb3BlcnR5TmFtZVN0cmluZyhtX3Byb3BlcnR5KTsg
fQogICAgIENTU1Byb3BlcnR5SUQgcHJvcGVydHkoKSBjb25zdCB7IHJldHVybiBtX3Byb3BlcnR5
OyB9CiAgICAgTW9ub3RvbmljVGltZSBnZW5lcmF0aW9uVGltZSgpIGNvbnN0IHsgcmV0dXJuIG1f
Z2VuZXJhdGlvblRpbWU7IH0KKyAgICBPcHRpb25hbDxTZWNvbmRzPiB0aW1lbGluZVRpbWVBdENy
ZWF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90aW1lbGluZVRpbWVBdENyZWF0aW9uOyB9CiAgICAg
Y29uc3QgUmVuZGVyU3R5bGUmIHRhcmdldFN0eWxlKCkgY29uc3QgeyByZXR1cm4gKm1fdGFyZ2V0
U3R5bGU7IH0KICAgICBjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVudFN0eWxlKCkgY29uc3QgeyBy
ZXR1cm4gKm1fY3VycmVudFN0eWxlOyB9CiAgICAgY29uc3QgUmVuZGVyU3R5bGUmIHJldmVyc2lu
Z0FkanVzdGVkU3RhcnRTdHlsZSgpIGNvbnN0IHsgcmV0dXJuICptX3JldmVyc2luZ0FkanVzdGVk
U3RhcnRTdHlsZTsgfQogICAgIGRvdWJsZSByZXZlcnNpbmdTaG9ydGVuaW5nRmFjdG9yKCkgY29u
c3QgeyByZXR1cm4gbV9yZXZlcnNpbmdTaG9ydGVuaW5nRmFjdG9yOyB9CiAKLSAgICB2b2lkIHJl
c29sdmUoUmVuZGVyU3R5bGUmKSBmaW5hbDsKLQogcHJpdmF0ZToKICAgICBDU1NUcmFuc2l0aW9u
KEVsZW1lbnQmLCBDU1NQcm9wZXJ0eUlELCBNb25vdG9uaWNUaW1lIGdlbmVyYXRpb25UaW1lLCBj
b25zdCBBbmltYXRpb24mLCBjb25zdCBSZW5kZXJTdHlsZSYgb2xkU3R5bGUsIGNvbnN0IFJlbmRl
clN0eWxlJiB0YXJnZXRTdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUmIHJldmVyc2luZ0FkanVzdGVk
U3RhcnRTdHlsZSwgZG91YmxlKTsKICAgICB2b2lkIHNldFRpbWluZ1Byb3BlcnRpZXMoU2Vjb25k
cyBkZWxheSwgU2Vjb25kcyBkdXJhdGlvbik7CiAgICAgUmVmPEFuaW1hdGlvbkV2ZW50QmFzZT4g
Y3JlYXRlRXZlbnQoY29uc3QgQXRvbVN0cmluZyYgZXZlbnRUeXBlLCBkb3VibGUgZWxhcHNlZFRp
bWUsIGNvbnN0IFN0cmluZyYgcHNldWRvSWQsIE9wdGlvbmFsPFNlY29uZHM+IHRpbWVsaW5lVGlt
ZSkgZmluYWw7CisgICAgdm9pZCByZXNvbHZlKFJlbmRlclN0eWxlJiwgT3B0aW9uYWw8U2Vjb25k
cz4pIGZpbmFsOwogCiAgICAgQ1NTUHJvcGVydHlJRCBtX3Byb3BlcnR5OwogICAgIE1vbm90b25p
Y1RpbWUgbV9nZW5lcmF0aW9uVGltZTsKKyAgICBNYXJrYWJsZTxTZWNvbmRzLCBTZWNvbmRzOjpN
YXJrYWJsZVRyYWl0cz4gbV90aW1lbGluZVRpbWVBdENyZWF0aW9uOwogICAgIHN0ZDo6dW5pcXVl
X3B0cjxSZW5kZXJTdHlsZT4gbV90YXJnZXRTdHlsZTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UmVu
ZGVyU3R5bGU+IG1fY3VycmVudFN0eWxlOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHls
ZT4gbV9yZXZlcnNpbmdBZGp1c3RlZFN0YXJ0U3R5bGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0
aW9uL0tleWZyYW1lRWZmZWN0LmNwcAppbmRleCBhMDI1Y2YxZmU4ZTYxN2EyYTc2NDQ0NGIzZjQw
ZWQ0ODc5YmU2NThmLi5lYTA2ZjY1MWM3ZDE3NjZjMjczZTA3NDIxYThmZWVlZjcxMmEwZGNiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKQEAgLTEyMDAs
MTcgKzEyMDAsMTggQEAgdm9pZCBLZXlmcmFtZUVmZmVjdDo6ZGlkQ2hhbmdlVGFyZ2V0RWxlbWVu
dE9yUHNldWRvRWxlbWVudChFbGVtZW50KiBwcmV2aW91c1RhcmcKICAgICAgICAgbV9pblRhcmdl
dEVmZmVjdFN0YWNrID0gbmV3VGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudC0+ZW5zdXJlS2V5
ZnJhbWVFZmZlY3RTdGFjaygpLmFkZEVmZmVjdCgqdGhpcyk7CiB9CiAKLXZvaWQgS2V5ZnJhbWVF
ZmZlY3Q6OmFwcGx5KFJlbmRlclN0eWxlJiB0YXJnZXRTdHlsZSkKK3ZvaWQgS2V5ZnJhbWVFZmZl
Y3Q6OmFwcGx5KFJlbmRlclN0eWxlJiB0YXJnZXRTdHlsZSwgT3B0aW9uYWw8U2Vjb25kcz4gc3Rh
cnRUaW1lKQogewogICAgIGlmICghbV90YXJnZXQpCiAgICAgICAgIHJldHVybjsKIAogICAgIHVw
ZGF0ZUJsZW5kaW5nS2V5ZnJhbWVzKHRhcmdldFN0eWxlKTsKIAotICAgIGF1dG8gY29tcHV0ZWRU
aW1pbmcgPSBnZXRDb21wdXRlZFRpbWluZygpOwotICAgIG1fcGhhc2VBdExhc3RBcHBsaWNhdGlv
biA9IGNvbXB1dGVkVGltaW5nLnBoYXNlOwotCi0gICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
Ojp3aWxsQXBwbHlLZXlmcmFtZUVmZmVjdCgqdGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgp
LCAqdGhpcywgY29tcHV0ZWRUaW1pbmcpOworICAgIGF1dG8gY29tcHV0ZWRUaW1pbmcgPSBnZXRD
b21wdXRlZFRpbWluZyhzdGFydFRpbWUpOworICAgIGlmICghc3RhcnRUaW1lKSB7CisgICAgICAg
IG1fcGhhc2VBdExhc3RBcHBsaWNhdGlvbiA9IGNvbXB1dGVkVGltaW5nLnBoYXNlOworICAgICAg
ICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxBcHBseUtleWZyYW1lRWZmZWN0KCp0YXJn
ZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KCksICp0aGlzLCBjb21wdXRlZFRpbWluZyk7CisgICAg
fQogCiAgICAgaWYgKCFjb21wdXRlZFRpbWluZy5wcm9ncmVzcykKICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmggYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaAppbmRleCBiNjBjYTU0MDk5
M2YwMGY2MTQ2NGQwOTgyYTNiMTFjYzY3NDUxM2E3Li5hZmY3YjgwMzI1NWI2ZDY4NTBjZWIxYmZh
Y2Q1NDQ2MjE1M2ZmN2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZl
Y3QuaApAQCAtMTIwLDcgKzEyMCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENvbXBvc2l0ZShD
b21wb3NpdGVPcGVyYXRpb24gY29tcG9zaXRlT3BlcmF0aW9uKSB7IG1fY29tcG9zaXRlT3BlcmF0
aW9uID0gY29tcG9zaXRlT3BlcmF0aW9uOyB9CiAKICAgICB2b2lkIGdldEFuaW1hdGVkU3R5bGUo
c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiYgYW5pbWF0ZWRTdHlsZSk7Ci0gICAgdm9pZCBh
cHBseShSZW5kZXJTdHlsZSYpIG92ZXJyaWRlOworICAgIHZvaWQgYXBwbHkoUmVuZGVyU3R5bGUm
LCBPcHRpb25hbDxTZWNvbmRzPiA9IFdURjo6bnVsbG9wdCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBp
bnZhbGlkYXRlKCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBhbmltYXRpb25EaWRUaWNrKCkgZmluYWw7
CiAgICAgdm9pZCBhbmltYXRpb25EaWRQbGF5KCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9XZWJBbmltYXRpb24uY3BwCmluZGV4IGQzZjdiNTc4OWJlNjQ2ZjJjYmMwMzJiZDAyZWRm
ZGEyYmJmN2VmZmIuLmYzN2VhMTJlNzUxYTg1MzQzM2Y5MWY1OGU3Nzk3MGYxMWNiMTJkYmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCkBAIC0zODIsMTIgKzM4
MiwxMiBAQCBFeGNlcHRpb25Pcjx2b2lkPiBXZWJBbmltYXRpb246OnNldEJpbmRpbmdzQ3VycmVu
dFRpbWUoT3B0aW9uYWw8ZG91YmxlPiBjdXJyZW50VAogICAgIHJldHVybiBzZXRDdXJyZW50VGlt
ZShTZWNvbmRzOjpmcm9tTWlsbGlzZWNvbmRzKGN1cnJlbnRUaW1lLnZhbHVlKCkpKTsKIH0KIAot
T3B0aW9uYWw8U2Vjb25kcz4gV2ViQW5pbWF0aW9uOjpjdXJyZW50VGltZSgpIGNvbnN0CitPcHRp
b25hbDxTZWNvbmRzPiBXZWJBbmltYXRpb246OmN1cnJlbnRUaW1lKE9wdGlvbmFsPFNlY29uZHM+
IHN0YXJ0VGltZSkgY29uc3QKIHsKLSAgICByZXR1cm4gY3VycmVudFRpbWUoUmVzcGVjdEhvbGRU
aW1lOjpZZXMpOworICAgIHJldHVybiBjdXJyZW50VGltZShSZXNwZWN0SG9sZFRpbWU6Olllcywg
c3RhcnRUaW1lKTsKIH0KIAotT3B0aW9uYWw8U2Vjb25kcz4gV2ViQW5pbWF0aW9uOjpjdXJyZW50
VGltZShSZXNwZWN0SG9sZFRpbWUgcmVzcGVjdEhvbGRUaW1lKSBjb25zdAorT3B0aW9uYWw8U2Vj
b25kcz4gV2ViQW5pbWF0aW9uOjpjdXJyZW50VGltZShSZXNwZWN0SG9sZFRpbWUgcmVzcGVjdEhv
bGRUaW1lLCBPcHRpb25hbDxTZWNvbmRzPiBzdGFydFRpbWUpIGNvbnN0CiB7CiAgICAgLy8gMy40
LjQuIFRoZSBjdXJyZW50IHRpbWUgb2YgYW4gYW5pbWF0aW9uCiAgICAgLy8gaHR0cHM6Ly9kcmFm
dHMuY3Nzd2cub3JnL3dlYi1hbmltYXRpb25zLTEvI3RoZS1jdXJyZW50LXRpbWUtb2YtYW4tYW5p
bWF0aW9uCkBAIC00MDcsNyArNDA3LDcgQEAgT3B0aW9uYWw8U2Vjb25kcz4gV2ViQW5pbWF0aW9u
OjpjdXJyZW50VGltZShSZXNwZWN0SG9sZFRpbWUgcmVzcGVjdEhvbGRUaW1lKSBjb24KICAgICAg
ICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAogICAgIC8vIE90aGVyd2lzZSwgY3VycmVudCB0aW1l
ID0gKHRpbWVsaW5lIHRpbWUgLSBzdGFydCB0aW1lKSAqIHBsYXliYWNrIHJhdGUKLSAgICByZXR1
cm4gKG1fdGltZWxpbmUtPmN1cnJlbnRUaW1lKCkudmFsdWUoKSAtIG1fc3RhcnRUaW1lLnZhbHVl
KCkpICogbV9wbGF5YmFja1JhdGU7CisgICAgcmV0dXJuICgqbV90aW1lbGluZS0+Y3VycmVudFRp
bWUoKSAtIHN0YXJ0VGltZS52YWx1ZU9yKCptX3N0YXJ0VGltZSkpICogbV9wbGF5YmFja1JhdGU7
CiB9CiAKIEV4Y2VwdGlvbk9yPHZvaWQ+IFdlYkFuaW1hdGlvbjo6c2lsZW50bHlTZXRDdXJyZW50
VGltZShPcHRpb25hbDxTZWNvbmRzPiBzZWVrVGltZSkKQEAgLTEyNDEsMTQgKzEyNDEsMTQgQEAg
dm9pZCBXZWJBbmltYXRpb246OnRpY2soKQogICAgICAgICBtX2VmZmVjdC0+YW5pbWF0aW9uRGlk
VGljaygpOwogfQogCi12b2lkIFdlYkFuaW1hdGlvbjo6cmVzb2x2ZShSZW5kZXJTdHlsZSYgdGFy
Z2V0U3R5bGUpCit2b2lkIFdlYkFuaW1hdGlvbjo6cmVzb2x2ZShSZW5kZXJTdHlsZSYgdGFyZ2V0
U3R5bGUsIE9wdGlvbmFsPFNlY29uZHM+IHN0YXJ0VGltZSkKIHsKICAgICBpZiAoIW1fc2hvdWxk
U2tpcFVwZGF0aW5nRmluaXNoZWRTdGF0ZVdoZW5SZXNvbHZpbmcpCiAgICAgICAgIHVwZGF0ZUZp
bmlzaGVkU3RhdGUoRGlkU2Vlazo6Tm8sIFN5bmNocm9ub3VzbHlOb3RpZnk6Olllcyk7CiAgICAg
bV9zaG91bGRTa2lwVXBkYXRpbmdGaW5pc2hlZFN0YXRlV2hlblJlc29sdmluZyA9IGZhbHNlOwog
CiAgICAgaWYgKG1fZWZmZWN0KQotICAgICAgICBtX2VmZmVjdC0+YXBwbHkodGFyZ2V0U3R5bGUp
OworICAgICAgICBtX2VmZmVjdC0+YXBwbHkodGFyZ2V0U3R5bGUsIHN0YXJ0VGltZSk7CiB9CiAK
IHZvaWQgV2ViQW5pbWF0aW9uOjpzZXRTdXNwZW5kZWQoYm9vbCBpc1N1c3BlbmRlZCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaCBiL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaAppbmRleCBiYzM1ODk4ZWNlMzA3NDQ0YThj
YWQ2ZWYzZDFhZjFlYTBiZDRlNTBmLi42YWQ3ZWU5MDBlNDUyZDQzZDYyYWE1NTkwYWEwOWVlNmUz
NDVjMzZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9u
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5oCkBAIC03Miw3
ICs3Miw3IEBAIHB1YmxpYzoKICAgICBBbmltYXRpb25UaW1lbGluZSogdGltZWxpbmUoKSBjb25z
dCB7IHJldHVybiBtX3RpbWVsaW5lLmdldCgpOyB9CiAgICAgdmlydHVhbCB2b2lkIHNldFRpbWVs
aW5lKFJlZlB0cjxBbmltYXRpb25UaW1lbGluZT4mJik7CiAKLSAgICBPcHRpb25hbDxTZWNvbmRz
PiBjdXJyZW50VGltZSgpIGNvbnN0OworICAgIE9wdGlvbmFsPFNlY29uZHM+IGN1cnJlbnRUaW1l
KE9wdGlvbmFsPFNlY29uZHM+ID0gV1RGOjpudWxsb3B0KSBjb25zdDsKICAgICBFeGNlcHRpb25P
cjx2b2lkPiBzZXRDdXJyZW50VGltZShPcHRpb25hbDxTZWNvbmRzPik7CiAKICAgICBlbnVtIGNs
YXNzIFNpbGVudGx5IDogdWludDhfdCB7IFllcywgTm8gfTsKQEAgLTEyMSw3ICsxMjEsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBuZWVkc1RpY2soKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgdGlj
aygpOwogICAgIFdFQkNPUkVfRVhQT1JUIFNlY29uZHMgdGltZVRvTmV4dFRpY2soKSBjb25zdDsK
LSAgICB2aXJ0dWFsIHZvaWQgcmVzb2x2ZShSZW5kZXJTdHlsZSYpOworICAgIHZpcnR1YWwgdm9p
ZCByZXNvbHZlKFJlbmRlclN0eWxlJiwgT3B0aW9uYWw8U2Vjb25kcz4gPSBXVEY6Om51bGxvcHQp
OwogICAgIHZvaWQgZWZmZWN0VGFyZ2V0RGlkQ2hhbmdlKEVsZW1lbnQqIHByZXZpb3VzVGFyZ2V0
LCBFbGVtZW50KiBuZXdUYXJnZXQpOwogICAgIHZvaWQgYWNjZWxlcmF0ZWRTdGF0ZURpZENoYW5n
ZSgpOwogICAgIHZvaWQgYXBwbHlQZW5kaW5nQWNjZWxlcmF0ZWRBY3Rpb25zKCk7CkBAIC0xNjks
NyArMTY5LDcgQEAgcHJpdmF0ZToKICAgICBTZWNvbmRzIGVmZmVjdEVuZFRpbWUoKSBjb25zdDsK
ICAgICBXZWJBbmltYXRpb24mIHJlYWR5UHJvbWlzZVJlc29sdmUoKTsKICAgICBXZWJBbmltYXRp
b24mIGZpbmlzaGVkUHJvbWlzZVJlc29sdmUoKTsKLSAgICBPcHRpb25hbDxTZWNvbmRzPiBjdXJy
ZW50VGltZShSZXNwZWN0SG9sZFRpbWUpIGNvbnN0OworICAgIE9wdGlvbmFsPFNlY29uZHM+IGN1
cnJlbnRUaW1lKFJlc3BlY3RIb2xkVGltZSwgT3B0aW9uYWw8U2Vjb25kcz4gPSBXVEY6Om51bGxv
cHQpIGNvbnN0OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNpbGVudGx5U2V0Q3VycmVudFRpbWUo
T3B0aW9uYWw8U2Vjb25kcz4pOwogICAgIHZvaWQgZmluaXNoTm90aWZpY2F0aW9uU3RlcHMoKTsK
ICAgICBib29sIGhhc1BlbmRpbmdQYXVzZVRhc2soKSBjb25zdCB7IHJldHVybiBtX3RpbWVUb1J1
blBlbmRpbmdQYXVzZVRhc2sgIT0gVGltZVRvUnVuUGVuZGluZ1Rhc2s6Ok5vdFNjaGVkdWxlZDsg
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDEwNmU3MGQ3N2E5MWNhODIwOGZjZDNlNWE4OTNlZjE2NmQ4NmI5NjMuLjM1NDRm
YWM3Nzk4YWQ3MGI2YjlhOTJmNmNkOTUzZmVlYjJiZDc5MjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBA
QAorMjAyMC0wNi0yNCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KKworICAg
ICAgICBSRUdSRVNTSU9OOiBEZWxheWVkIHVwZGF0aW5nIG9mIHRoZSBwYXJhbGxheCBpbWFnZXMg
b24gcGFjaWZpY3ZveWFnZXMubmV0L3Bvc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIyMTMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYzNDk3
OTQ2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZCBhIG5ldyB0ZXN0IHRoYXQgY2hlY2tzIHRoYXQgcmV0YXJnZXRpbmcgYSB0cmFuc2l0aW9uIHdo
aWxlIGl0cyAicmVhZHkiIHByb21pc2UgaXMgcmVzb2x2ZWQKKyAgICAgICAgdXNlcyBhIGJlZm9y
ZS1jaGFuZ2Ugc3R5bGUgdGhhdCB3aWxsIGRpZmZlciBmcm9tIHRoZSBmcm9tIHN0eWxlLgorCisg
ICAgICAgICogd2ViYW5pbWF0aW9ucy9jc3MtdHJhbnNpdGlvbi1yZXRhcmdldGluZy1kdXJpbmct
cmVhZHktcHJvbWlzZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmFuaW1hdGlv
bnMvY3NzLXRyYW5zaXRpb24tcmV0YXJnZXRpbmctZHVyaW5nLXJlYWR5LXByb21pc2UuaHRtbDog
QWRkZWQuCisKIDIwMjAtMDYtMjMgIERpZWdvIFBpbm8gR2FyY2lhICA8ZHBpbm9AaWdhbGlhLmNv
bT4KIAogICAgICAgICBbR1RLXSBVbnJldmlld2VkIHRlc3QgZ2FyZGVuaW5nLiBVcGRhdGUgdGVz
dCBleHBlY3RhdGlvbnMgYWZ0ZXIgcjI2MzQzNy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmFuaW1hdGlvbnMvY3NzLXRyYW5zaXRpb24tcmV0YXJnZXRpbmctZHVyaW5nLXJlYWR5LXByb21p
c2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViYW5pbWF0aW9ucy9jc3MtdHJhbnNpdGlv
bi1yZXRhcmdldGluZy1kdXJpbmctcmVhZHktcHJvbWlzZS1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZWE1NDM0NjM4NjE3Mzk5MjYxNzJhY2RhNGZlYmE2N2NkMjQ5MWFjOQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3dlYmFuaW1hdGlvbnMvY3NzLXRyYW5zaXRpb24tcmV0YXJnZXRp
bmctZHVyaW5nLXJlYWR5LXByb21pc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitQ
QVNTIEEgQ1NTIHRyYW5zaXRpb24gdGhhdCBpcyByZXRhcmdldGVkIGR1cmluZyBpdHMgcmVhZHkg
cHJvbWlzZSBzaG91bGQgbm90IHVzZSBpdHMgZnJvbSBzdHlsZSBhcyBpdHMgYmVmb3JlLWNoYW5n
ZSBzdHlsZS4gCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmFuaW1hdGlvbnMvY3NzLXRy
YW5zaXRpb24tcmV0YXJnZXRpbmctZHVyaW5nLXJlYWR5LXByb21pc2UuaHRtbCBiL0xheW91dFRl
c3RzL3dlYmFuaW1hdGlvbnMvY3NzLXRyYW5zaXRpb24tcmV0YXJnZXRpbmctZHVyaW5nLXJlYWR5
LXByb21pc2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mM2U0NWNhZDY3NTk1YzVjYjI0MzFhODcxZjg5ODU0
MjFkNzZlZmM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYW5pbWF0aW9ucy9j
c3MtdHJhbnNpdGlvbi1yZXRhcmdldGluZy1kdXJpbmctcmVhZHktcHJvbWlzZS5odG1sCkBAIC0w
LDAgKzEsNTkgQEAKKzwhRE9DVFlQRSBodG1sPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHN0
eWxlPgorCisudGFyZ2V0IHsKKyAgICBtYXJnaW4tbGVmdDogMDsKKyAgICB0cmFuc2l0aW9uOiBt
YXJnaW4tbGVmdCAxcyBsaW5lYXI7Cit9CisKKy50YXJnZXQuaW4tZmxpZ2h0IHsKKyAgICBtYXJn
aW4tbGVmdDogMTAwcHg7Cit9CisKKy50YXJnZXQuaW4tZmxpZ2h0LnJldGFyZ2V0ZWQgeworICAg
IG1hcmdpbi1sZWZ0OiAyMDBweDsKK30KKworPC9zdHlsZT4KKzxib2R5PgorPHNjcmlwdCBzcmM9
Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisKKyd1
c2Ugc3RyaWN0JzsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHRlc3QgPT4geworICAgIGNvbnN0IHRh
cmdldCA9IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
ZGl2IikpOworICAgIHRhcmdldC5jbGFzc0xpc3QuYWRkKCJ0YXJnZXQiKTsKKworICAgIGNvbnN0
IGdldEFuaW1hdGlvbiA9ICgpID0+IHsKKyAgICAgICAgY29uc3QgYW5pbWF0aW9ucyA9IHRhcmdl
dC5nZXRBbmltYXRpb25zKCk7CisgICAgICAgIGFzc2VydF9lcXVhbHMoYW5pbWF0aW9ucy5sZW5n
dGgsIDEsICJUaGVyZSBpcyBvbmUgYW5pbWF0aW9uIGFwcGxpZWQgdG8gdGhlIHRhcmdldC4iKTsK
KworICAgICAgICBjb25zdCB0cmFuc2l0aW9uID0gYW5pbWF0aW9uc1swXTsKKyAgICAgICAgYXNz
ZXJ0X3RydWUodHJhbnNpdGlvbiBpbnN0YW5jZW9mIENTU1RyYW5zaXRpb24sICJUaGVyZSBpcyBv
bmUgdHJhbnNpdGlvbiBhcHBsaWVkIHRvIHRoZSB0YXJnZXQuIik7CisKKyAgICAgICAgcmV0dXJu
IHRyYW5zaXRpb247CisgICAgfQorCisgICAgbGV0IGluaXRpYWxUcmFuc2l0aW9uOworICAgIGxl
dCByZXRhcmdldGVkVHJhbnNpdGlvbjsKKworICAgIC8vIFN0YXJ0IHRoZSBpbml0aWFsIHRyYW5z
aXRpb24uCisgICAgYXdhaXQgbmV3IFByb21pc2UocmVxdWVzdEFuaW1hdGlvbkZyYW1lKTsKKyAg
ICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgiaW4tZmxpZ2h0Iik7CisgICAgaW5pdGlhbFRyYW5zaXRp
b24gPSBnZXRBbmltYXRpb24oKTsKKworICAgIC8vIFdhaXQgdW50aWwgdGhlIGFuaW1hdGlvbiBp
cyByZWFkeSBhbmQgcmV0YXJnZXQgdGhlIHRyYW5zaXRpb24uCisgICAgYXdhaXQgaW5pdGlhbFRy
YW5zaXRpb24ucmVhZHk7CisgICAgdGFyZ2V0LmNsYXNzTGlzdC5hZGQoInJldGFyZ2V0ZWQiKTsK
KyAgICByZXRhcmdldGVkVHJhbnNpdGlvbiA9IGdldEFuaW1hdGlvbigpOworCisgICAgYXNzZXJ0
X25vdF9lcXVhbHMoaW5pdGlhbFRyYW5zaXRpb24sIHJldGFyZ2V0ZWRUcmFuc2l0aW9uLCAiUmV0
YXJnZXRpbmcgeWllbGRlZCBhIG5ldyB0cmFuc2l0aW9uLiIpOworICAgIGFzc2VydF9ub3RfZXF1
YWxzKGluaXRpYWxUcmFuc2l0aW9uLmVmZmVjdC5nZXRLZXlmcmFtZXMoKVswXS5tYXJnaW5MZWZ0
LCByZXRhcmdldGVkVHJhbnNpdGlvbi5lZmZlY3QuZ2V0S2V5ZnJhbWVzKClbMF0ubWFyZ2luTGVm
dCwgIlRoZSBuZXcgdHJhbnNpdGlvbiB1c2VkIGEgZGlmZmVyZW50IGZyb20gdmFsdWUuIik7Cisg
ICAgYXNzZXJ0X25vdF9lcXVhbHMoaW5pdGlhbFRyYW5zaXRpb24uZWZmZWN0LmdldEtleWZyYW1l
cygpWzFdLm1hcmdpbkxlZnQsIHJldGFyZ2V0ZWRUcmFuc2l0aW9uLmVmZmVjdC5nZXRLZXlmcmFt
ZXMoKVsxXS5tYXJnaW5MZWZ0LCAiVGhlIG5ldyB0cmFuc2l0aW9uIHVzZWQgYSBkaWZmZXJlbnQg
dG8gdmFsdWUuIik7Cit9LCBgQSBDU1MgdHJhbnNpdGlvbiB0aGF0IGlzIHJldGFyZ2V0ZWQgZHVy
aW5nIGl0cyByZWFkeSBwcm9taXNlIHNob3VsZCBub3QgdXNlIGl0cyBmcm9tIHN0eWxlIGFzIGl0
cyBiZWZvcmUtY2hhbmdlIHN0eWxlLmApOworCis8L3NjcmlwdD4KKzwvYm9keT4KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>