<?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>166620</bug_id>
          
          <creation_ts>2016-12-30 05:06:06 -0800</creation_ts>
          <short_desc>[MSE][GStreamer] Avoid QUOTA_EXCEEDED_ERR when seeking to a buffered range just before the buffered one</short_desc>
          <delta_ts>2021-09-23 02:26:53 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit Local 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Enrique Ocaña">eocanha</reporter>
          <assigned_to name="Enrique Ocaña">eocanha</assigned_to>
          <cc>anineteenletterword</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>calvaris</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eocanha</cc>
    
    <cc>jer.noble</cc>
    
    <cc>t.bernard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1263146</commentid>
    <comment_count>0</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2016-12-30 05:06:06 -0800</bug_when>
    <thetext>SourceBuffer::evictCodedFrames() sometimes finishes without evicting any buffered range in cases where eviction would actually be possible. This triggers a QUOTA_EXCEEDED_ERR on GStreamer platforms.

One of such cases is when seeking to an unbuffered range just before the buffered one. For example, if range [120, 300] was buffered, seek to 115 would fail. EvictCodedFrames() will try to evict ranges from the begining of the media timeline until &quot;currentTime - 30 seconds&quot;. Then, only if there are buffered ranges *containing* the currentTime (except if it&apos;s the last range), will the algorithm try to evict future content from the end of the media timeline back to the current time until &quot;currentTime + 30&quot;. However, as the seek target position isn&apos;t buffered in the example above, this second part of the algorithm will never run and the [120, 300] range will never be evicted.

A proposal to fix this would be to remove the &quot;only if there are buffered ranges *containing* the currentTime&quot; condition to enter into the second part of the algorithm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263147</commentid>
    <comment_count>1</comment_count>
      <attachid>297856</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2016-12-30 05:11:59 -0800</bug_when>
    <thetext>Created attachment 297856
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1272913</commentid>
    <comment_count>2</comment_count>
      <attachid>297856</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2017-02-03 08:10:02 -0800</bug_when>
    <thetext>Comment on attachment 297856
Patch

No test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1272917</commentid>
    <comment_count>3</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2017-02-03 08:28:25 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 297856 [details]
&gt; Patch
&gt; 
&gt; No test?

Good point. I&apos;ll try to manage to craft one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515418</commentid>
    <comment_count>4</comment_count>
    <who name="Andrew Gall">anineteenletterword</who>
    <bug_when>2019-03-12 05:29:08 -0700</bug_when>
    <thetext>It&apos;s a shame this fix was never merged. I see this bug still exists in the latest WebKit. In the coming weeks I will hopefully have time to submit a fix and test for this issue. Although if anyone knows a practical reason why a fix and test were never made I would greatly appreciated to know in advance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515423</commentid>
    <comment_count>5</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2019-03-12 06:10:40 -0700</bug_when>
    <thetext>(In reply to Andrew Gall from comment #4)
&gt; It&apos;s a shame this fix was never merged. I see this bug still exists in the
&gt; latest WebKit. In the coming weeks I will hopefully have time to submit a
&gt; fix and test for this issue. Although if anyone knows a practical reason why
&gt; a fix and test were never made I would greatly appreciated to know in
&gt; advance.

It&apos;s been just lack of time and getting the task lost in my stack of tasks until I eventually forgot about it. I&apos;m really sorry about it.

I usually work by analyzing logs of real use cases (eg: youtube.com/tv videos). Translating one of those real use cases to actual layout tests isn&apos;t trivial and I ended up procrastinating the task.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515428</commentid>
    <comment_count>6</comment_count>
    <who name="Andrew Gall">anineteenletterword</who>
    <bug_when>2019-03-12 06:38:56 -0700</bug_when>
    <thetext>No worries, I understand. Thanks for the update. I&apos;m unfamiliar with the WebKit test suite so I guess I&apos;ll see how I go creating a test when I have some time to do it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515430</commentid>
    <comment_count>7</comment_count>
      <attachid>297856</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2019-03-12 06:53:03 -0700</bug_when>
    <thetext>Comment on attachment 297856
Patch

Jer is right, this needs a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515441</commentid>
    <comment_count>8</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2019-03-12 07:49:35 -0700</bug_when>
    <thetext>Okay, so it looks like there&apos;s already a document().settings().maximumSourceBufferSize(), which can be set from Internals. And each MockMediaSample has a sizeInBytes() of the sizeof(MockSampleBox).  So it should be possible to write a layout test that sets the maximumSourceBufferSize() to some known value that&apos;s N * MockMediaSample sizeInBytes().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542462</commentid>
    <comment_count>9</comment_count>
      <attachid>371506</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2019-06-06 10:18:37 -0700</bug_when>
    <thetext>Created attachment 371506
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542476</commentid>
    <comment_count>10</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2019-06-06 10:31:29 -0700</bug_when>
    <thetext>Finally I gathered time to write the missing layout test. Thank you for insisting about writing one, because in the process I found that the original patch needed some more conditions to deal with the case when there&apos;s no currentTimeRange.

I noticed that in practice memory was exhausted earlier than what theory predicts when accumulating sizeInBytes() of the samples. In the end, I preferred not to go through the rabbit hole of finding where that discrepancy comes from, so I just chose some empirical size values for the number of samples I wanted to enqueue and stuck to what I wanted the test to prove.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542755</commentid>
    <comment_count>11</comment_count>
      <attachid>371506</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2019-06-07 00:10:56 -0700</bug_when>
    <thetext>Comment on attachment 371506
Patch

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

&gt; Source/WebCore/ChangeLog:16
&gt; +        This patch is authored by iivlev &lt;iivlev@productengine.com&gt;

Given that in comment 10 you said that you had to change the conditions of the patch, I think the fair thing here would be to say that &quot;This patch is based on one by...&quot;

&gt; LayoutTests/media/media-source/media-source-append-before-last-range-no-quota-exceeded.html:20
&gt; +      for (var i = 0 ; i &lt; timeRanges.length ; i++) {
&gt; +       if (i)
&gt; +        bufferedRanges += &apos;, &apos;;
&gt; +       bufferedRanges += timeRanges.start(i) + &apos;...&apos; + timeRanges.end(i);
&gt; +      }

This indentation here looks a bit &quot;short&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542793</commentid>
    <comment_count>12</comment_count>
      <attachid>371579</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2019-06-07 02:54:50 -0700</bug_when>
    <thetext>Created attachment 371579
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542796</commentid>
    <comment_count>13</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2019-06-07 02:57:21 -0700</bug_when>
    <thetext>(In reply to Xabier Rodríguez Calvar from comment #11)
&gt; Comment on attachment 371506 [details]

&gt; Given that in comment 10 you said that you had to change the conditions of
&gt; the patch, I think the fair thing here would be to say that &quot;This patch is
&gt; based on one by...&quot;

Done.

&gt; This indentation here looks a bit &quot;short&quot;

Thanks for noticing this. The whole indentation was inconsistent. I normalized it to 4 spaces.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542798</commentid>
    <comment_count>14</comment_count>
      <attachid>371579</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-07 03:54:52 -0700</bug_when>
    <thetext>Comment on attachment 371579
Patch

Clearing flags on attachment: 371579

Committed r246195: &lt;https://trac.webkit.org/changeset/246195&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542799</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-07 03:54:54 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542800</commentid>
    <comment_count>16</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-06-07 03:55:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/51517397&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>297856</attachid>
            <date>2016-12-30 05:11:59 -0800</date>
            <delta_ts>2019-06-06 10:18:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166620-20161230131041.patch</filename>
            <type>text/plain</type>
            <size>2366</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA5ODY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmVkMzJkNjNhNTNiZWY5
NmFkOWJmZTIxMjNjNWU3MmYyNzI2ZGI2Yy4uNzA1N2I1MzA3NTNhZjBiZjg3YTYzYzcxOWMxMDEz
YjkyMTdkYWY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE2LTEyLTMwICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01T
RV1bR1N0cmVhbWVyXSBBdm9pZCBRVU9UQV9FWENFRURFRF9FUlIgd2hlbiBzZWVraW5nIHRvIGEg
YnVmZmVyZWQgcmFuZ2UganVzdCBiZWZvcmUgdGhlIGJ1ZmZlcmVkIG9uZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2NjIwCisKKyAgICAgICAgVGhp
cyBwYXRjaCBpcyBmaXhpbmcgYSBzZWVrIHRvIHVuYnVmZmVyZWQgcmFuZ2UganVzdCBiZWZvcmUg
dGhlIGJ1ZmZlcmVkIG9uZS4KKyAgICAgICAgRm9yIGV4YW1wbGUsIGlmIHJhbmdlIFsxMjAuMCwg
MzAwLjApIHdhcyBidWZmZXJlZCwgc2VlayB0byAxMTUuMCB3b3VsZCBmYWlsCisgICAgICAgIHdp
dGhvdXQgdGhlIGZpeCwgc2luY2UgZXZpY3RDb2RlZEZyYW1lcyB3aWxsIHJldHVybiB3aXRob3V0
IGFjdHVhbGx5IGV2aWN0aW5nCisgICAgICAgIGFueXRoaW5nLCBhbmQgYXBwZW5kQnVmZmVySW50
ZXJuYWwgd2lsbCBwcmludAorICAgICAgICAiYnVmZmVyIGZ1bGwsIGZhaWxpbmcgd2l0aCBRVU9U
QV9FWENFRURFRF9FUlIgZXJyb3IiIG9uIEdTdHJlYW1lciBwbGF0Zm9ybXMuCisKKyAgICAgICAg
VGhpcyBwYXRjaCBpcyBhdXRob3JlZCBieSBpaXZsZXYgPGlpdmxldkBwcm9kdWN0ZW5naW5lLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNv
dXJjZUJ1ZmZlcjo6ZXZpY3RDb2RlZEZyYW1lcyk6CisgICAgICAgIFJlbW92ZWQgdGhlICJvbmx5
IGlmIHRoZXJlIGFyZSBidWZmZXJlZCByYW5nZXMgKmNvbnRhaW5pbmcqIHRoZSBjdXJyZW50VGlt
ZSIgY29uZGl0aW9uCisgICAgICAgIHRvIGVudGVyIGludG8gdGhlIHNlY29uZCBwYXJ0IG9mIHRo
ZSBldmljdGlvbiBhbGdvcml0aG0sIHdoaWNoIHJlbW92ZXMgZnJhbWVzCisgICAgICAgIHN0YXJ0
aW5nIGZyb20gdGhlIGR1cmF0aW9uIG9mIHRoZSBtZWRpYSBhbmQgZ29pbmcgYmFja3dhcmRzIGRv
d24gdG8gY3VycmVudFBvc2l0aW9uICsgMzAuCisKIDIwMTYtMTItMTUgIERhcmluIEFkbGVyICA8
ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBjdXN0b20gYmluZGluZyBmb3IgTWVk
aWFEZXZpY2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNl
L1NvdXJjZUJ1ZmZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1Nv
dXJjZUJ1ZmZlci5jcHAKaW5kZXggZmU4YTRjOTQ3M2Q5MDQzNDRmOTE1MzRkZGU2YWEwMjQ3MWEw
YTI3Mi4uZjM4ZTNiODViNTMyYWNhZjIyZTVjNTU1MjE3YzhjMWUyZTNlOTBjOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcApA
QCAtOTA0LDcgKzkwNCw3IEBAIHZvaWQgU291cmNlQnVmZmVyOjpldmljdENvZGVkRnJhbWVzKHNp
emVfdCBuZXdEYXRhU2l6ZSkKICAgICAvLyBjdXJyZW5UaW1lIHdoaWNoZXZlciB3ZSBoaXQgZmly
c3QuCiAgICAgYXV0byBidWZmZXJlZCA9IG1fYnVmZmVyZWQtPnJhbmdlcygpOwogICAgIHNpemVf
dCBjdXJyZW50VGltZVJhbmdlID0gYnVmZmVyZWQuZmluZChjdXJyZW50VGltZSk7Ci0gICAgaWYg
KGN1cnJlbnRUaW1lUmFuZ2UgPT0gbm90Rm91bmQgfHwgY3VycmVudFRpbWVSYW5nZSA9PSBidWZm
ZXJlZC5sZW5ndGgoKSAtIDEpIHsKKyAgICBpZiAoY3VycmVudFRpbWVSYW5nZSA9PSBidWZmZXJl
ZC5sZW5ndGgoKSAtIDEpIHsKICAgICAgICAgTE9HKE1lZGlhU291cmNlLCAiU291cmNlQnVmZmVy
OjpldmljdENvZGVkRnJhbWVzKCVwKSAtIGV2aWN0ZWQgJXp1IGJ5dGVzIGJ1dCBGQUlMRUQgdG8g
ZnJlZSBlbm91Z2giLCB0aGlzLCBpbml0aWFsQnVmZmVyZWRTaXplIC0gZXh0cmFNZW1vcnlDb3N0
KCkpOwogICAgICAgICByZXR1cm47CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>371506</attachid>
            <date>2019-06-06 10:18:37 -0700</date>
            <delta_ts>2019-06-07 02:54:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166620-20190606171836.patch</filename>
            <type>text/plain</type>
            <size>17783</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2MTAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWU3ZDIyNmRlMmRkZmZl
MmI4MGU1MDY3Zjg0ZmJmNzgwZmI2NGY2NS4uMWNjNTBjMWNmNWZjYWRlOWNiMzIyNzJjNTkxZTA5
MzNiZjQzYWNhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE5LTA2LTA2ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01T
RV1bR1N0cmVhbWVyXSBBdm9pZCBRVU9UQV9FWENFRURFRF9FUlIgd2hlbiBzZWVraW5nIHRvIGEg
YnVmZmVyZWQgcmFuZ2UganVzdCBiZWZvcmUgdGhlIGJ1ZmZlcmVkIG9uZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2NjIwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBpcyBmaXhpbmcg
YSBzZWVrIHRvIHVuYnVmZmVyZWQgcmFuZ2UganVzdCBiZWZvcmUgdGhlIGJ1ZmZlcmVkIG9uZS4K
KyAgICAgICAgRm9yIGV4YW1wbGUsIHN1cHBvc2luZyBhIFsxMjAsIDE3NikgYXBwZW5kIGhhcyBm
aWxsZWQgYWxsIHRoZSBtZW1vcnkgYW5kIHRoZW4KKyAgICAgICAgYSBzZWVrIHRvIDExNS4wIGlz
IGRvbmUsIGEgc3Vic2VxdWVudCBbMTE1LCAxMjApIGFwcGVuZCB3b3VsZCBmYWlsIHdpdGhvdXQK
KyAgICAgICAgdGhpcyBmaXguIEV2aWN0Q29kZWRGcmFtZXMoKSB3b3VsZCByZXR1cm4gd2l0aG91
dCBhY3R1YWxseSBldmljdGluZyBhbnl0aGluZywKKyAgICAgICAgYW5kIGFwcGVuZEJ1ZmZlcklu
dGVybmFsIHdpbGwgcHJpbnQgImJ1ZmZlciBmdWxsLCBmYWlsaW5nIHdpdGgKKyAgICAgICAgUVVP
VEFfRVhDRUVERURfRVJSIGVycm9yIiBvbiBHU3RyZWFtZXIgcGxhdGZvcm1zIGluc3RlYWQgb2Yg
bGV0dGluZyB0aGUgbmV3CisgICAgICAgIFsxMTUsIDEyMCkgYXBwZW5kIHN1Y2NlZWQuCisKKyAg
ICAgICAgVGhpcyBwYXRjaCBpcyBhdXRob3JlZCBieSBpaXZsZXYgPGlpdmxldkBwcm9kdWN0ZW5n
aW5lLmNvbT4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNl
LWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC5odG1sCisKKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMpOgorICAgICAgICBSZW1vdmVkIHRo
ZSAib25seSBpZiB0aGVyZSBhcmUgYnVmZmVyZWQgcmFuZ2VzICpjb250YWluaW5nKiB0aGUgY3Vy
cmVudFRpbWUiIGNvbmRpdGlvbgorICAgICAgICB0byBlbnRlciBpbnRvIHRoZSBzZWNvbmQgcGFy
dCBvZiB0aGUgZXZpY3Rpb24gYWxnb3JpdGhtLCB3aGljaCByZW1vdmVzIGZyYW1lcworICAgICAg
ICBzdGFydGluZyBmcm9tIHRoZSBkdXJhdGlvbiBvZiB0aGUgbWVkaWEgYW5kIGdvaW5nIGJhY2t3
YXJkcyBkb3duIHRvIGN1cnJlbnRQb3NpdGlvbiArIDMwLgorICAgICAgICBUaGUgbG9vcCBicmVh
ayBjb25kaXRpb24gaGFzIGFsc28gYmVlbiBjaGFuZ2VkIHRvIGRlYWwgd2l0aCBub3RGb3VuZCBj
dXJyZW50VGltZVJhbmdlLgorCiAyMDE5LTA2LTAxICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0Bh
cHBsZS5jb20+CiAKICAgICAgICAgW1BvaW50ZXIgRXZlbnRzXSBBZGQgc3VwcG9ydCBmb3IgY2hv
cmRlZCBidXR0b24gaW50ZXJhY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHAKaW5kZXggNzg0OWVmMjY2ZmMzNWUzNGZmYTI1
MzQ2OGM4MWM4Mjg1ODNmNDUwNy4uYWE4MDA2ZTNjMzg3MmNjMDRjNTYxNWYyOWVlZmMxNDMyZWQ3
MzcxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3Vy
Y2VCdWZmZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291
cmNlQnVmZmVyLmNwcApAQCAtOTkxLDcgKzk5MSw3IEBAIHZvaWQgU291cmNlQnVmZmVyOjpldmlj
dENvZGVkRnJhbWVzKHNpemVfdCBuZXdEYXRhU2l6ZSkKICAgICAvLyBjdXJyZW5UaW1lIHdoaWNo
ZXZlciB3ZSBoaXQgZmlyc3QuCiAgICAgYXV0byBidWZmZXJlZCA9IG1fYnVmZmVyZWQtPnJhbmdl
cygpOwogICAgIHNpemVfdCBjdXJyZW50VGltZVJhbmdlID0gYnVmZmVyZWQuZmluZChjdXJyZW50
VGltZSk7Ci0gICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgPT0gbm90Rm91bmQgfHwgY3VycmVudFRp
bWVSYW5nZSA9PSBidWZmZXJlZC5sZW5ndGgoKSAtIDEpIHsKKyAgICBpZiAoY3VycmVudFRpbWVS
YW5nZSA9PSBidWZmZXJlZC5sZW5ndGgoKSAtIDEpIHsKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKICAgICAgICAgRVJST1JfTE9HKExPR0lERU5USUZJRVIsICJGQUlMRUQgdG8gZnJlZSBlbm91
Z2ggYWZ0ZXIgZXZpY3RpbmcgIiwgaW5pdGlhbEJ1ZmZlcmVkU2l6ZSAtIGV4dHJhTWVtb3J5Q29z
dCgpKTsKICNlbmRpZgpAQCAtMTAwNiw5ICsxMDA2LDkgQEAgdm9pZCBTb3VyY2VCdWZmZXI6OmV2
aWN0Q29kZWRGcmFtZXMoc2l6ZV90IG5ld0RhdGFTaXplKQogCiAgICAgICAgIC8vIERvIG5vdCBl
dmljdCBkYXRhIGZyb20gdGhlIHRpbWUgcmFuZ2UgdGhhdCBjb250YWlucyBjdXJyZW50VGltZS4K
ICAgICAgICAgc2l6ZV90IHN0YXJ0VGltZVJhbmdlID0gYnVmZmVyZWQuZmluZChyYW5nZVN0YXJ0
KTsKLSAgICAgICAgaWYgKHN0YXJ0VGltZVJhbmdlID09IGN1cnJlbnRUaW1lUmFuZ2UpIHsKKyAg
ICAgICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgIT0gbm90Rm91bmQgJiYgc3RhcnRUaW1lUmFuZ2Ug
PT0gY3VycmVudFRpbWVSYW5nZSkgewogICAgICAgICAgICAgc2l6ZV90IGVuZFRpbWVSYW5nZSA9
IGJ1ZmZlcmVkLmZpbmQocmFuZ2VFbmQpOwotICAgICAgICAgICAgaWYgKGVuZFRpbWVSYW5nZSA9
PSBjdXJyZW50VGltZVJhbmdlKQorICAgICAgICAgICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgIT0g
bm90Rm91bmQgJiYgZW5kVGltZVJhbmdlID09IGN1cnJlbnRUaW1lUmFuZ2UpCiAgICAgICAgICAg
ICAgICAgYnJlYWs7CiAKICAgICAgICAgICAgIHJhbmdlRW5kID0gYnVmZmVyZWQuc3RhcnQoZW5k
VGltZVJhbmdlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBhZTE3NTRiOTNlZTI4OGRhMmM4NWVmZTgzMTIyNmY1ZTFmMDgz
YjVjLi44YTEwNmNiY2UwZTJjOTU2MTE5NmVmZTdiYTNiNjYzMGQ2NzhjODllIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMTktMDYtMDYgIEVucmlxdWUgT2Nhw7FhIEdvbnrDoWxleiAgPGVvY2Fu
aGFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3RyZWFtZXJdIEF2b2lkIFFVT1RBX0VY
Q0VFREVEX0VSUiB3aGVuIHNlZWtpbmcgdG8gYSBidWZmZXJlZCByYW5nZSBqdXN0IGJlZm9yZSB0
aGUgYnVmZmVyZWQgb25lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNjY2MjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBZGRlZCBhIHRlc3QgdG8gY2hlY2sgdGhhdCwgYWZ0ZXIgdGhlIG1lbW9yeSBpcyBm
aWxsZWQgYnkgYXBwZW5kaW5nIGEgY29udGludW91cworICAgICAgICByYW5nZSwgYSBzZWVrIHJp
Z2h0IGJlZm9yZSBpdCBhbmQgYSBuZXcgYXBwZW5kIGNhbiBiZSBkb25lIHdpdGhvdXQgZ2V0dGlu
ZyBhCisgICAgICAgIFF1b3RhRXhjZWVkZWRFcnJvciBvbiBHU3RyZWFtZXIgcG9ydHMuIE9uIHRo
ZSByZXN0IG9mIHRoZSBwb3J0cywgUXVvdGFFeGNlZWRlZEVycm9yCisgICAgICAgIGlzIG5ldmVy
IHRocm93biBhbmQgdGhlIGV4cGVjdGF0aW9ucyBqdXN0IGNoZWNrIHRoYXQgdGhlIHJpZ2h0IGJ1
ZmZlcmVkIHJhbmdlcworICAgICAgICByZW1haW4uCisKKyAgICAgICAgKiBtZWRpYS9tZWRpYS1z
b3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNl
ZWRlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9t
ZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9tZWRpYS9tZWRpYS1zb3VyY2UvbWVk
aWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL3dwZS9tZWRpYS9tZWRpYS1zb3Vy
Y2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRl
ZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorCisKIDIwMTktMDYtMDEgIEFudG9pbmUgUXVpbnQgIDxn
cmFvdXRzQGFwcGxlLmNvbT4KIAogICAgICAgICBbUG9pbnRlciBFdmVudHNdIEFkZCBzdXBwb3J0
IGZvciBjaG9yZGVkIGJ1dHRvbiBpbnRlcmFjdGlvbnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdl
LW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlh
LXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4
Y2VlZGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGE2MTdlNGU5Yjk5YjBmYTQyNTAwMTk3
MDY1ZmUwZDhkM2U5MDI2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVk
aWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEt
ZXhjZWVkZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTMzIEBACisKK0VWRU5UKHNvdXJjZW9w
ZW4pCitFVkVOVCh1cGRhdGVlbmQpCitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzEy
MCcpIE9LCitBcHBlbmRpbmcgUFRTPTEyMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMjEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIyCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTEyMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
MjQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI1CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTEyNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjcK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI4CitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTEyOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzAKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTEzMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzMKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTEzNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzYKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTEzOAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzkKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTE0MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDIKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTQzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0
NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDUKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTQ2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0Nwor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDgKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTQ5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MAorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTUyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MworRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTU1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NgorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTU4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1OQorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNjAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTYxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MgorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNjMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY0
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NQorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNjYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY3CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2OAorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNjkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcwCitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNzIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTczCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNzUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc2CitFVkVOVCh1cGRh
dGVlbmQpCitFWFBFQ1RFRCAoZXhjZXB0aW9uID09ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBx
dW90YSBoYXMgYmVlbiBleGNlZWRlZC4nKSwgT0JTRVJWRUQgJ251bGwnIEZBSUwKK0VYUEVDVEVE
IChidWZmZXJlZFJhbmdlcygpID09ICdbIDEyMC4uLjE3NiBdJyksIE9CU0VSVkVEICdbIDEyMC4u
LjE3NyBdJyBGQUlMCitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzExNScpIE9LCitB
cHBlbmRpbmcgUFRTPTExNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTYKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTExOAorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGV4Y2VwdGlvbiAhPSAn
UXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKK0VY
UEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDExNS4uLjExOSwgMTIwLi4uMTcwIF0nKSBP
SworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291
cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVk
ZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBw
ZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTVkYjlmYTJiNjI3MjE2OGI1ZTJhOGY4YzIwZmM1YjNhZTJjNWJkOQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJl
Zm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLmh0bWwKQEAgLTAsMCArMSw4OCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5tb2NrLW1lZGlhLXNv
dXJjZTwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Im1vY2stbWVkaWEtc291cmNlLmpzIj48L3Nj
cmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vdmlkZW8tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAg
PHNjcmlwdD4KKyAgICB2YXIgc291cmNlOworICAgIHZhciBzb3VyY2VCdWZmZXI7CisgICAgdmFy
IGluaXRTZWdtZW50OworICAgIHZhciBleGNlcHRpb247CisKKyAgICBmdW5jdGlvbiBidWZmZXJl
ZFJhbmdlcygpIHsKKyAgICAgIHZhciBidWZmZXJlZFJhbmdlcyA9ICdbICc7CisgICAgICB2YXIg
dGltZVJhbmdlcyA9IHNvdXJjZUJ1ZmZlci5idWZmZXJlZDsKKyAgICAgIGZvciAodmFyIGkgPSAw
IDsgaSA8IHRpbWVSYW5nZXMubGVuZ3RoIDsgaSsrKSB7CisgICAgICAgaWYgKGkpCisgICAgICAg
IGJ1ZmZlcmVkUmFuZ2VzICs9ICcsICc7CisgICAgICAgYnVmZmVyZWRSYW5nZXMgKz0gdGltZVJh
bmdlcy5zdGFydChpKSArICcuLi4nICsgdGltZVJhbmdlcy5lbmQoaSk7CisgICAgICB9CisgICAg
ICBidWZmZXJlZFJhbmdlcyArPSAnIF0nOworICAgICAgcmV0dXJuIGJ1ZmZlcmVkUmFuZ2VzOwor
ICAgIH0KKworICAgIGFzeW5jIGZ1bmN0aW9uIGFwcGVuZFB0c1JhbmdlKGZpcnN0UHRzLCBsYXN0
UHRzKSB7CisgICAgICB2YXIgcmVzdWx0RXhjZXB0aW9uID0gbnVsbDsKKyAgICAgIGZvciAodmFy
IHB0cyA9IGZpcnN0UHRzOyBwdHMgPD0gbGFzdFB0czsgcHRzKyspIHsKKyAgICAgICAgICB0cnkg
eworICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoJ0FwcGVuZGluZyBQVFM9JytwdHMpOworICAg
ICAgICAgICAgICBzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKG1ha2VBU2FtcGxlKHB0cywgcHRz
LCAxLCAxLCAxLCBTQU1QTEVfRkxBRy5TWU5DLCAxKSk7CisgICAgICAgICAgICAgIGF3YWl0IHdh
aXRGb3Ioc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJyk7CisgICAgICAgICAgfSBjYXRjaCAoZSkg
eworICAgICAgICAgICAgcmVzdWx0RXhjZXB0aW9uID0gZTsKKyAgICAgICAgICAgIHNvdXJjZUJ1
ZmZlci5hYm9ydCgpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgfQorICAgICAgfQor
ICAgICAgcmV0dXJuIHJlc3VsdEV4Y2VwdGlvbjsKKyAgICB9CisKKyAgICBpZiAod2luZG93Lmlu
dGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLmluaXRpYWxpemVNb2NrTWVkaWFTb3VyY2UoKTsK
KworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgYXN5bmMoKSA9PiB7CisgICAg
ICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKKyAgICAgICAgc291cmNlID0gbmV3IE1lZGlhU291cmNl
KCk7CisKKyAgICAgICAgY29uc3QgdmlkZW9Tb3VyY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdzb3VyY2UnKTsKKyAgICAgICAgdmlkZW9Tb3VyY2UudHlwZSA9ICd2aWRlby9tb2NrOyBjb2Rl
Y3M9bW9jayc7CisgICAgICAgIHZpZGVvU291cmNlLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwo
c291cmNlKTsKKyAgICAgICAgdmlkZW8uYXBwZW5kQ2hpbGQodmlkZW9Tb3VyY2UpOworCisgICAg
ICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlLCAnc291cmNlb3BlbicpOworICAgICAgICBzb3VyY2VC
dWZmZXIgPSBzb3VyY2UuYWRkU291cmNlQnVmZmVyKCJ2aWRlby9tb2NrOyBjb2RlY3M9bW9jayIp
OworICAgICAgICBpbml0U2VnbWVudCA9IG1ha2VBSW5pdCgzNTAsIFttYWtlQVRyYWNrKDEsICdt
b2NrJywgVFJBQ0tfS0lORC5WSURFTyldKTsKKyAgICAgICAgc291cmNlQnVmZmVyLmFwcGVuZEJ1
ZmZlcihpbml0U2VnbWVudCk7CisgICAgICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlQnVmZmVyLCAn
dXBkYXRlZW5kJyk7CisgICAgICAgIHdhaXRGb3Ioc291cmNlQnVmZmVyLCAnZXJyb3InKTsKKwor
ICAgICAgICB2aWRlby5jdXJyZW50VGltZSA9IDEyMDsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCd2
aWRlby5jdXJyZW50VGltZScsIDEyMCwgJz09Jyk7CisKKyAgICAgICAgLy8gVGhpcyBzaG91bGQg
YWxsb3cgYnVmZXJpbmcgdXAgdG8gMTc1IChlbXBpcmljYWxseSB0ZXN0ZWQpLgorICAgICAgICBp
bnRlcm5hbHMuc2V0dGluZ3Muc2V0TWF4aW11bVNvdXJjZUJ1ZmZlclNpemUoNDAwMCk7CisKKyAg
ICAgICAgLy8gQXBwZW5kIGRhdGEgZnJvbSAxMjAuLjE3Ni4gVGhlIFNvdXJjZUJ1ZmZlciB3aWxs
IGJlIGZpbGxlZCBhZnRlciAxNzUsIHNvIHRoZSBsYXN0IGl0ZXJhdGlvbiBzaG91bGQgdGhyb3cg
UXVvdGFFeGNlZWRlZEVycm9yLgorICAgICAgICBleGNlcHRpb24gPSBhd2FpdCBhcHBlbmRQdHNS
YW5nZSgxMjAsIDE3Nik7CisKKyAgICAgICAgdGVzdEV4cGVjdGVkKCdleGNlcHRpb24nLCAnUXVv
dGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJywgJz09Jyk7Cisg
ICAgICAgIHRlc3RFeHBlY3RlZCgnYnVmZmVyZWRSYW5nZXMoKScsICdbIDEyMC4uLjE3NiBdJywg
Jz09Jyk7CisKKyAgICAgICAgdmlkZW8uY3VycmVudFRpbWUgPSAxMTU7CisgICAgICAgIHRlc3RF
eHBlY3RlZCgndmlkZW8uY3VycmVudFRpbWUnLCAxMTUsICc9PScpOworCisgICAgICAgIC8vIE5v
dyB0cnkgdG8gYXBwZW5kIGZyb20gMTE1Li4xMTguIFNob3VsZCBmcmVlIHNhbXBsZXMgZnJvbSB0
aGUgZW5kIGFuZCB0aGVyZWZvcmUgc3VjY2VlZC4gU2hvdWxkIG5ldmVyIHRocm93IFF1b3RhRXhj
ZWVkZWRFcnJvci4KKyAgICAgICAgZXhjZXB0aW9uID0gYXdhaXQgYXBwZW5kUHRzUmFuZ2UoMTE1
LCAxMTgpOworCisgICAgICAgIHRlc3RFeHBlY3RlZCgnZXhjZXB0aW9uJywgJ1F1b3RhRXhjZWVk
ZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicsICchPScpOworICAgICAgICB0
ZXN0RXhwZWN0ZWQoJ2J1ZmZlcmVkUmFuZ2VzKCknLCAnWyAxMTUuLi4xMTksIDEyMC4uLjE3MCBd
JywgJz09Jyk7CisKKyAgICAgICAgZW5kVGVzdCgpOworICAgIH0pOworICAgIDwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+CisgICAgPHZpZGVvPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0
LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2d0ay9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFz
dC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2M2ODk0
OGJkYjZjY2NjN2I0MzczY2E5YzQ0MWZhZTFiN2EyZDA1NAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMzIgQEAKKworRVZFTlQoc291cmNlb3BlbikKK0VWRU5UKHVwZGF0ZWVuZCkKK0VY
UEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTIwJykgT0sKK0FwcGVuZGluZyBQVFM9MTIw
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyMQorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xMjIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIzCitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNAorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xMjUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI2CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xMjgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI5CitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xMzEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMyCitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMzQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM1CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTEzNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
MzcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM4CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTEzOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDAK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQxCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE0MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDMKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE0NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDYKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTE0OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDkKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTE1MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTIKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTE1NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTUKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTU2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1
NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTgKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTU5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MAor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjEKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTYyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MworRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTY1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NgorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTY4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2OQorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTcxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3MgorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNzMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTc0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3NQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNzYKK0VYUEVDVEVEIChleGNlcHRpb24gPT0gJ1F1b3RhRXhjZWVk
ZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicpIE9LCitFWFBFQ1RFRCAoYnVm
ZmVyZWRSYW5nZXMoKSA9PSAnWyAxMjAuLi4xNzYgXScpIE9LCitFWFBFQ1RFRCAodmlkZW8uY3Vy
cmVudFRpbWUgPT0gJzExNScpIE9LCitBcHBlbmRpbmcgUFRTPTExNQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xMTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE3
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExOAorRVZFTlQodXBkYXRlZW5kKQor
RVhQRUNURUQgKGV4Y2VwdGlvbiAhPSAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFz
IGJlZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDEx
NS4uLjExOSwgMTIwLi4uMTcwIF0nKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd3BlL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBw
ZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3dwZS9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uM2M2ODk0OGJkYjZjY2NjN2I0MzczY2E5YzQ0MWZhZTFiN2EyZDA1NAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9tZWRpYS9tZWRpYS1zb3VyY2Uv
bWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMzIgQEAKKworRVZFTlQoc291cmNlb3BlbikKK0VWRU5U
KHVwZGF0ZWVuZCkKK0VYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTIwJykgT0sKK0Fw
cGVuZGluZyBQVFM9MTIwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyMQorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTIzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNAorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTI2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNworRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTI5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMAorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xMzEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTMyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMworRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xMzQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM1
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNgorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xMzcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM4CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzOQorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNDAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQxCitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNDMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ0CitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNDYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ3CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNDkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUwCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE1MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NTIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUzCitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE1NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTUK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU2CitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE1NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTgKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE2MAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjEKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTE2MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjQKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTE2NgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjcKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTE2OQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzAKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTcxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3
MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzMKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTc0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3NQor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzYKK0VYUEVDVEVEIChleGNlcHRpb24g
PT0gJ1F1b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicpIE9L
CitFWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAnWyAxMjAuLi4xNzYgXScpIE9LCitFWFBF
Q1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzExNScpIE9LCitBcHBlbmRpbmcgUFRTPTExNQor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTE3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExOAorRVZF
TlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGV4Y2VwdGlvbiAhPSAnUXVvdGFFeGNlZWRlZEVycm9y
OiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJh
bmdlcygpID09ICdbIDExNS4uLjExOSwgMTIwLi4uMTcwIF0nKSBPSworRU5EIE9GIFRFU1QKKwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>371579</attachid>
            <date>2019-06-07 02:54:50 -0700</date>
            <delta_ts>2019-06-07 03:54:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166620-20190607095449.patch</filename>
            <type>text/plain</type>
            <size>17881</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2MTAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWU3ZDIyNmRlMmRkZmZl
MmI4MGU1MDY3Zjg0ZmJmNzgwZmI2NGY2NS4uZDdhMjBkOWRmNTBlZDc5MDlmMGQ4N2I1ZWE0MTRj
YzljMmFlMzBkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE5LTA2LTA2ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01T
RV1bR1N0cmVhbWVyXSBBdm9pZCBRVU9UQV9FWENFRURFRF9FUlIgd2hlbiBzZWVraW5nIHRvIGEg
YnVmZmVyZWQgcmFuZ2UganVzdCBiZWZvcmUgdGhlIGJ1ZmZlcmVkIG9uZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2NjIwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgWGFiaWVyIFJvZHJpZ3Vlei1DYWx2YXIuCisKKyAgICAgICAgVGhpcyBwYXRjaCBp
cyBmaXhpbmcgYSBzZWVrIHRvIHVuYnVmZmVyZWQgcmFuZ2UganVzdCBiZWZvcmUgdGhlIGJ1ZmZl
cmVkIG9uZS4KKyAgICAgICAgRm9yIGV4YW1wbGUsIHN1cHBvc2luZyBhIFsxMjAsIDE3NikgYXBw
ZW5kIGhhcyBmaWxsZWQgYWxsIHRoZSBtZW1vcnkgYW5kIHRoZW4KKyAgICAgICAgYSBzZWVrIHRv
IDExNS4wIGlzIGRvbmUsIGEgc3Vic2VxdWVudCBbMTE1LCAxMjApIGFwcGVuZCB3b3VsZCBmYWls
IHdpdGhvdXQKKyAgICAgICAgdGhpcyBmaXguIEV2aWN0Q29kZWRGcmFtZXMoKSB3b3VsZCByZXR1
cm4gd2l0aG91dCBhY3R1YWxseSBldmljdGluZyBhbnl0aGluZywKKyAgICAgICAgYW5kIGFwcGVu
ZEJ1ZmZlckludGVybmFsIHdpbGwgcHJpbnQgImJ1ZmZlciBmdWxsLCBmYWlsaW5nIHdpdGgKKyAg
ICAgICAgUVVPVEFfRVhDRUVERURfRVJSIGVycm9yIiBvbiBHU3RyZWFtZXIgcGxhdGZvcm1zIGlu
c3RlYWQgb2YgbGV0dGluZyB0aGUgbmV3CisgICAgICAgIFsxMTUsIDEyMCkgYXBwZW5kIHN1Y2Nl
ZWQuCisKKyAgICAgICAgVGhpcyBwYXRjaCBpcyBiYXNlZCBvbiBhbiBvcmlnaW5hbCBwYXRjaCBi
eSBpaXZsZXYgPGlpdmxldkBwcm9kdWN0ZW5naW5lLmNvbT4KKworICAgICAgICBUZXN0OiBtZWRp
YS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1x
dW90YS1leGNlZWRlZC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJj
ZUJ1ZmZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRG
cmFtZXMpOgorICAgICAgICBSZW1vdmVkIHRoZSAib25seSBpZiB0aGVyZSBhcmUgYnVmZmVyZWQg
cmFuZ2VzICpjb250YWluaW5nKiB0aGUgY3VycmVudFRpbWUiIGNvbmRpdGlvbgorICAgICAgICB0
byBlbnRlciBpbnRvIHRoZSBzZWNvbmQgcGFydCBvZiB0aGUgZXZpY3Rpb24gYWxnb3JpdGhtLCB3
aGljaCByZW1vdmVzIGZyYW1lcworICAgICAgICBzdGFydGluZyBmcm9tIHRoZSBkdXJhdGlvbiBv
ZiB0aGUgbWVkaWEgYW5kIGdvaW5nIGJhY2t3YXJkcyBkb3duIHRvIGN1cnJlbnRQb3NpdGlvbiAr
IDMwLgorICAgICAgICBUaGUgbG9vcCBicmVhayBjb25kaXRpb24gaGFzIGFsc28gYmVlbiBjaGFu
Z2VkIHRvIGRlYWwgd2l0aCBub3RGb3VuZCBjdXJyZW50VGltZVJhbmdlLgorCiAyMDE5LTA2LTAx
ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CiAKICAgICAgICAgW1BvaW50ZXIg
RXZlbnRzXSBBZGQgc3VwcG9ydCBmb3IgY2hvcmRlZCBidXR0b24gaW50ZXJhY3Rpb25zCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHAK
aW5kZXggNzg0OWVmMjY2ZmMzNWUzNGZmYTI1MzQ2OGM4MWM4Mjg1ODNmNDUwNy4uYWE4MDA2ZTNj
Mzg3MmNjMDRjNTYxNWYyOWVlZmMxNDMyZWQ3MzcxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcApAQCAtOTkxLDcgKzk5MSw3
IEBAIHZvaWQgU291cmNlQnVmZmVyOjpldmljdENvZGVkRnJhbWVzKHNpemVfdCBuZXdEYXRhU2l6
ZSkKICAgICAvLyBjdXJyZW5UaW1lIHdoaWNoZXZlciB3ZSBoaXQgZmlyc3QuCiAgICAgYXV0byBi
dWZmZXJlZCA9IG1fYnVmZmVyZWQtPnJhbmdlcygpOwogICAgIHNpemVfdCBjdXJyZW50VGltZVJh
bmdlID0gYnVmZmVyZWQuZmluZChjdXJyZW50VGltZSk7Ci0gICAgaWYgKGN1cnJlbnRUaW1lUmFu
Z2UgPT0gbm90Rm91bmQgfHwgY3VycmVudFRpbWVSYW5nZSA9PSBidWZmZXJlZC5sZW5ndGgoKSAt
IDEpIHsKKyAgICBpZiAoY3VycmVudFRpbWVSYW5nZSA9PSBidWZmZXJlZC5sZW5ndGgoKSAtIDEp
IHsKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAgICAgICAgRVJST1JfTE9HKExPR0lERU5U
SUZJRVIsICJGQUlMRUQgdG8gZnJlZSBlbm91Z2ggYWZ0ZXIgZXZpY3RpbmcgIiwgaW5pdGlhbEJ1
ZmZlcmVkU2l6ZSAtIGV4dHJhTWVtb3J5Q29zdCgpKTsKICNlbmRpZgpAQCAtMTAwNiw5ICsxMDA2
LDkgQEAgdm9pZCBTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMoc2l6ZV90IG5ld0RhdGFT
aXplKQogCiAgICAgICAgIC8vIERvIG5vdCBldmljdCBkYXRhIGZyb20gdGhlIHRpbWUgcmFuZ2Ug
dGhhdCBjb250YWlucyBjdXJyZW50VGltZS4KICAgICAgICAgc2l6ZV90IHN0YXJ0VGltZVJhbmdl
ID0gYnVmZmVyZWQuZmluZChyYW5nZVN0YXJ0KTsKLSAgICAgICAgaWYgKHN0YXJ0VGltZVJhbmdl
ID09IGN1cnJlbnRUaW1lUmFuZ2UpIHsKKyAgICAgICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgIT0g
bm90Rm91bmQgJiYgc3RhcnRUaW1lUmFuZ2UgPT0gY3VycmVudFRpbWVSYW5nZSkgewogICAgICAg
ICAgICAgc2l6ZV90IGVuZFRpbWVSYW5nZSA9IGJ1ZmZlcmVkLmZpbmQocmFuZ2VFbmQpOwotICAg
ICAgICAgICAgaWYgKGVuZFRpbWVSYW5nZSA9PSBjdXJyZW50VGltZVJhbmdlKQorICAgICAgICAg
ICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgIT0gbm90Rm91bmQgJiYgZW5kVGltZVJhbmdlID09IGN1
cnJlbnRUaW1lUmFuZ2UpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgICAgIHJh
bmdlRW5kID0gYnVmZmVyZWQuc3RhcnQoZW5kVGltZVJhbmdlKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhZTE3NTRiOTNl
ZTI4OGRhMmM4NWVmZTgzMTIyNmY1ZTFmMDgzYjVjLi45NzBmNjk1MTcxMThjOWJmYjA0ZDdmYzM4
ZGNjZmQ0NzJlNTVhODE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTktMDYtMDYgIEVucmlx
dWUgT2Nhw7FhIEdvbnrDoWxleiAgPGVvY2FuaGFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNF
XVtHU3RyZWFtZXJdIEF2b2lkIFFVT1RBX0VYQ0VFREVEX0VSUiB3aGVuIHNlZWtpbmcgdG8gYSBi
dWZmZXJlZCByYW5nZSBqdXN0IGJlZm9yZSB0aGUgYnVmZmVyZWQgb25lCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjY2MjAKKworICAgICAgICBSZXZp
ZXdlZCBieSBYYWJpZXIgUm9kcmlndWV6LUNhbHZhci4KKworICAgICAgICBBZGRlZCBhIHRlc3Qg
dG8gY2hlY2sgdGhhdCwgYWZ0ZXIgdGhlIG1lbW9yeSBpcyBmaWxsZWQgYnkgYXBwZW5kaW5nIGEg
Y29udGludW91cworICAgICAgICByYW5nZSwgYSBzZWVrIHJpZ2h0IGJlZm9yZSBpdCBhbmQgYSBu
ZXcgYXBwZW5kIGNhbiBiZSBkb25lIHdpdGhvdXQgZ2V0dGluZyBhCisgICAgICAgIFF1b3RhRXhj
ZWVkZWRFcnJvciBvbiBHU3RyZWFtZXIgcG9ydHMuIE9uIHRoZSByZXN0IG9mIHRoZSBwb3J0cywg
UXVvdGFFeGNlZWRlZEVycm9yCisgICAgICAgIGlzIG5ldmVyIHRocm93biBhbmQgdGhlIGV4cGVj
dGF0aW9ucyBqdXN0IGNoZWNrIHRoYXQgdGhlIHJpZ2h0IGJ1ZmZlcmVkIHJhbmdlcworICAgICAg
ICByZW1haW4uCisKKyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJl
Zm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL2d0ay9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZv
cmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL3dwZS9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVu
ZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQ6IEFkZGVk
LgorCisKIDIwMTktMDYtMDEgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbUG9pbnRlciBFdmVudHNdIEFkZCBzdXBwb3J0IGZvciBjaG9yZGVkIGJ1dHRvbiBp
bnRlcmFjdGlvbnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9t
ZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2Ut
YXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hOGE2MTdlNGU5Yjk5YjBmYTQyNTAwMTk3MDY1ZmUwZDhkM2U5MDI2Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJj
ZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTMzIEBACisKK0VWRU5UKHNvdXJjZW9wZW4pCitFVkVOVCh1cGRhdGVlbmQp
CitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzEyMCcpIE9LCitBcHBlbmRpbmcgUFRT
PTEyMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjEKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTIyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEy
MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjQKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTI1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNgor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjcKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTI4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyOQorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTMxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMgorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTM0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNQorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTM3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzOAorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xMzkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTQwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNDIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQz
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NAorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNDUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ2CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NworRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNDgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ5CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUyCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU1CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU4CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE1OQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NjAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYxCitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE2MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjMK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY0CitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE2NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjYKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE2OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjkKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTE3MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzIKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTczCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTE3NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzUKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc2CitFVkVOVCh1cGRhdGVlbmQpCitFWFBFQ1RFRCAoZXhj
ZXB0aW9uID09ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMgYmVlbiBleGNlZWRl
ZC4nKSwgT0JTRVJWRUQgJ251bGwnIEZBSUwKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09
ICdbIDEyMC4uLjE3NiBdJyksIE9CU0VSVkVEICdbIDEyMC4uLjE3NyBdJyBGQUlMCitFWFBFQ1RF
RCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzExNScpIE9LCitBcHBlbmRpbmcgUFRTPTExNQorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTE3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExOAorRVZFTlQo
dXBkYXRlZW5kKQorRVhQRUNURUQgKGV4Y2VwdGlvbiAhPSAnUXVvdGFFeGNlZWRlZEVycm9yOiBU
aGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdl
cygpID09ICdbIDExNS4uLjExOSwgMTIwLi4uMTcwIF0nKSBPSworRU5EIE9GIFRFU1QKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBl
bmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQuaHRtbCBiL0xheW91dFRlc3Rz
L21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdl
LW5vLXF1b3RhLWV4Y2VlZGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWEwZDUzMjk0YjRiNmY0M2I3YTI4
NmNjMzM0ODJlYmY3ZmRmYWQwNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1
b3RhLWV4Y2VlZGVkLmh0bWwKQEAgLTAsMCArMSw4OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorICAgIDx0aXRsZT5tb2NrLW1lZGlhLXNvdXJjZTwvdGl0bGU+CisgICAgPHNj
cmlwdCBzcmM9Im1vY2stbWVkaWEtc291cmNlLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNy
Yz0iLi4vdmlkZW8tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICB2YXIgc291
cmNlOworICAgIHZhciBzb3VyY2VCdWZmZXI7CisgICAgdmFyIGluaXRTZWdtZW50OworICAgIHZh
ciBleGNlcHRpb247CisKKyAgICBmdW5jdGlvbiBidWZmZXJlZFJhbmdlcygpIHsKKyAgICAgICAg
dmFyIGJ1ZmZlcmVkUmFuZ2VzID0gJ1sgJzsKKyAgICAgICAgdmFyIHRpbWVSYW5nZXMgPSBzb3Vy
Y2VCdWZmZXIuYnVmZmVyZWQ7CisgICAgICAgIGZvciAodmFyIGkgPSAwIDsgaSA8IHRpbWVSYW5n
ZXMubGVuZ3RoIDsgaSsrKSB7CisgICAgICAgICAgICBpZiAoaSkKKyAgICAgICAgICAgICAgICBi
dWZmZXJlZFJhbmdlcyArPSAnLCAnOworICAgICAgICAgICAgYnVmZmVyZWRSYW5nZXMgKz0gdGlt
ZVJhbmdlcy5zdGFydChpKSArICcuLi4nICsgdGltZVJhbmdlcy5lbmQoaSk7CisgICAgICAgIH0K
KyAgICAgICAgYnVmZmVyZWRSYW5nZXMgKz0gJyBdJzsKKyAgICAgICAgcmV0dXJuIGJ1ZmZlcmVk
UmFuZ2VzOworICAgIH0KKworICAgIGFzeW5jIGZ1bmN0aW9uIGFwcGVuZFB0c1JhbmdlKGZpcnN0
UHRzLCBsYXN0UHRzKSB7CisgICAgICAgIHZhciByZXN1bHRFeGNlcHRpb24gPSBudWxsOworICAg
ICAgICBmb3IgKHZhciBwdHMgPSBmaXJzdFB0czsgcHRzIDw9IGxhc3RQdHM7IHB0cysrKSB7Cisg
ICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgnQXBwZW5kaW5n
IFBUUz0nK3B0cyk7CisgICAgICAgICAgICAgICAgc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlciht
YWtlQVNhbXBsZShwdHMsIHB0cywgMSwgMSwgMSwgU0FNUExFX0ZMQUcuU1lOQywgMSkpOworICAg
ICAgICAgICAgICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJyk7Cisg
ICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAgICAgcmVzdWx0RXhjZXB0aW9u
ID0gZTsKKyAgICAgICAgICAgICAgICBzb3VyY2VCdWZmZXIuYWJvcnQoKTsKKyAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICByZXR1cm4gcmVz
dWx0RXhjZXB0aW9uOworICAgIH0KKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAg
ICBpbnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOworCisgICAgd2luZG93LmFk
ZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYygpID0+IHsKKyAgICAgICAgZmluZE1lZGlhRWxl
bWVudCgpOworICAgICAgICBzb3VyY2UgPSBuZXcgTWVkaWFTb3VyY2UoKTsKKworICAgICAgICBj
b25zdCB2aWRlb1NvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJjZScpOworICAg
ICAgICB2aWRlb1NvdXJjZS50eXBlID0gJ3ZpZGVvL21vY2s7IGNvZGVjcz1tb2NrJzsKKyAgICAg
ICAgdmlkZW9Tb3VyY2Uuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChzb3VyY2UpOworICAgICAg
ICB2aWRlby5hcHBlbmRDaGlsZCh2aWRlb1NvdXJjZSk7CisKKyAgICAgICAgYXdhaXQgd2FpdEZv
cihzb3VyY2UsICdzb3VyY2VvcGVuJyk7CisgICAgICAgIHNvdXJjZUJ1ZmZlciA9IHNvdXJjZS5h
ZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIik7CisgICAgICAgIGluaXRT
ZWdtZW50ID0gbWFrZUFJbml0KDM1MCwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFDS19LSU5E
LlZJREVPKV0pOworICAgICAgICBzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKGluaXRTZWdtZW50
KTsKKyAgICAgICAgYXdhaXQgd2FpdEZvcihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnKTsKKyAg
ICAgICAgd2FpdEZvcihzb3VyY2VCdWZmZXIsICdlcnJvcicpOworCisgICAgICAgIHZpZGVvLmN1
cnJlbnRUaW1lID0gMTIwOworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3ZpZGVvLmN1cnJlbnRUaW1l
JywgMTIwLCAnPT0nKTsKKworICAgICAgICAvLyBUaGlzIHNob3VsZCBhbGxvdyBidWZlcmluZyB1
cCB0byAxNzUgKGVtcGlyaWNhbGx5IHRlc3RlZCkuCisgICAgICAgIGludGVybmFscy5zZXR0aW5n
cy5zZXRNYXhpbXVtU291cmNlQnVmZmVyU2l6ZSg0MDAwKTsKKworICAgICAgICAvLyBBcHBlbmQg
ZGF0YSBmcm9tIDEyMC4uMTc2LiBUaGUgU291cmNlQnVmZmVyIHdpbGwgYmUgZmlsbGVkIGFmdGVy
IDE3NSwgc28gdGhlIGxhc3QgaXRlcmF0aW9uIHNob3VsZCB0aHJvdyBRdW90YUV4Y2VlZGVkRXJy
b3IuCisgICAgICAgIGV4Y2VwdGlvbiA9IGF3YWl0IGFwcGVuZFB0c1JhbmdlKDEyMCwgMTc2KTsK
KworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ2V4Y2VwdGlvbicsICdRdW90YUV4Y2VlZGVkRXJyb3I6
IFRoZSBxdW90YSBoYXMgYmVlbiBleGNlZWRlZC4nLCAnPT0nKTsKKyAgICAgICAgdGVzdEV4cGVj
dGVkKCdidWZmZXJlZFJhbmdlcygpJywgJ1sgMTIwLi4uMTc2IF0nLCAnPT0nKTsKKworICAgICAg
ICB2aWRlby5jdXJyZW50VGltZSA9IDExNTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCd2aWRlby5j
dXJyZW50VGltZScsIDExNSwgJz09Jyk7CisKKyAgICAgICAgLy8gTm93IHRyeSB0byBhcHBlbmQg
ZnJvbSAxMTUuLjExOC4gU2hvdWxkIGZyZWUgc2FtcGxlcyBmcm9tIHRoZSBlbmQgYW5kIHRoZXJl
Zm9yZSBzdWNjZWVkLiBTaG91bGQgbmV2ZXIgdGhyb3cgUXVvdGFFeGNlZWRlZEVycm9yLgorICAg
ICAgICBleGNlcHRpb24gPSBhd2FpdCBhcHBlbmRQdHNSYW5nZSgxMTUsIDExOCk7CisKKyAgICAg
ICAgdGVzdEV4cGVjdGVkKCdleGNlcHRpb24nLCAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVv
dGEgaGFzIGJlZW4gZXhjZWVkZWQuJywgJyE9Jyk7CisgICAgICAgIHRlc3RFeHBlY3RlZCgnYnVm
ZmVyZWRSYW5nZXMoKScsICdbIDExNS4uLjExOSwgMTIwLi4uMTcwIF0nLCAnPT0nKTsKKworICAg
ICAgICBlbmRUZXN0KCk7CisgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KyAgICA8dmlkZW8+PC92aWRlbz4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvbWVkaWEvbWVk
aWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEt
ZXhjZWVkZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL21lZGlhL21l
ZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3Rh
LWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYzY4OTQ4YmRiNmNjY2M3YjQzNzNj
YTljNDQxZmFlMWI3YTJkMDU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0
LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEzMiBAQAor
CitFVkVOVChzb3VyY2VvcGVuKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKHZpZGVvLmN1
cnJlbnRUaW1lID09ICcxMjAnKSBPSworQXBwZW5kaW5nIFBUUz0xMjAKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTIxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEy
MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjMKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTI0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNQor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjYKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTI3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyOAorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTMwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMQorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTMzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNAorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTM2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNworRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xMzgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTM5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MAorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNDEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQy
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MworRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNDQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ1CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NgorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNDcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ4CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0OQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNTAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUxCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNTMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU0CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU3CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE1OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NTkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYwCitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE2MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjIK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYzCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE2NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjUKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE2NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjgKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTE3MAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzEKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTE3MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzQKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTE3NgorRVhQRUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVv
dGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09
ICdbIDEyMC4uLjE3NiBdJykgT0sKK0VYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTE1
JykgT0sKK0FwcGVuZGluZyBQVFM9MTE1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTExNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTcKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTE4CitFVkVOVCh1cGRhdGVlbmQpCitFWFBFQ1RFRCAoZXhjZXB0
aW9uICE9ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMgYmVlbiBleGNlZWRlZC4n
KSBPSworRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTE1Li4uMTE5LCAxMjAuLi4x
NzAgXScpIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93cGUvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3Qt
cmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd3BlL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0
LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYzY4OTQ4
YmRiNmNjY2M3YjQzNzNjYTljNDQxZmFlMWI3YTJkMDU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd3BlL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBw
ZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEzMiBAQAorCitFVkVOVChzb3VyY2VvcGVuKQorRVZFTlQodXBkYXRlZW5kKQorRVhQ
RUNURUQgKHZpZGVvLmN1cnJlbnRUaW1lID09ICcxMjAnKSBPSworQXBwZW5kaW5nIFBUUz0xMjAK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIxCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTEyMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjMKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTEyNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjYKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTEyOAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjkKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTEzMQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzIKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTEzNAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzUKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTM2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEz
NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzgKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTM5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MAor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDEKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTQyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MworRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTQ1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NgorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTQ4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0OQorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTUxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MgorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNTMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTU0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU3
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1OAorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNTkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYwCitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MQorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNjIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYzCitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNjUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY2CitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNjgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY5CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3MAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNzEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcyCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE3MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NzQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc1CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE3NgorRVhQRUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRl
ZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZm
ZXJlZFJhbmdlcygpID09ICdbIDEyMC4uLjE3NiBdJykgT0sKK0VYUEVDVEVEICh2aWRlby5jdXJy
ZW50VGltZSA9PSAnMTE1JykgT0sKK0FwcGVuZGluZyBQVFM9MTE1CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTExNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTcK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE4CitFVkVOVCh1cGRhdGVlbmQpCitF
WFBFQ1RFRCAoZXhjZXB0aW9uICE9ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMg
YmVlbiBleGNlZWRlZC4nKSBPSworRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTE1
Li4uMTE5LCAxMjAuLi4xNzAgXScpIE9LCitFTkQgT0YgVEVTVAorCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>