<?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>218228</bug_id>
          
          <creation_ts>2020-10-27 05:20:22 -0700</creation_ts>
          <short_desc>[MSE] Infinite loop in sample eviction when duration is NaN</short_desc>
          <delta_ts>2020-11-20 04:20:02 -0800</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 Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218381</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philippe Normand">pnormand</reporter>
          <assigned_to name="Philippe Normand">pnormand</assigned_to>
          <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>eocanha</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1701831</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-27 05:20:22 -0700</bug_when>
    <thetext>When playing live streams the MediaSource DOM duration attribute has no meaning and would thus be set as +inf. When seeks are triggered to positions prior to the current playback position the SourceBuffer might attempt to free some space in order to keep the amount of memory used under control. It proceeds in 2 steps:
    
1. Attempt to free space represented by buffered range from media start up until current playback position - 30 seconds.
2. If step 1 didn&apos;t free enough memory, attempt to release memory represented by buffered ranges starting from current playback position + 30 seconds until media duration.
    
Step 2 here is not taking into account the case where MediaSource.duration is actually invalid, and thus enters an infinite loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701833</commentid>
    <comment_count>1</comment_count>
      <attachid>412413</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-27 05:25:20 -0700</bug_when>
    <thetext>Created attachment 412413
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701914</commentid>
    <comment_count>2</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-27 09:33:29 -0700</bug_when>
    <thetext>I&apos;m not sure why the new test would trigger a new failure in another test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701916</commentid>
    <comment_count>3</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-27 09:34:27 -0700</bug_when>
    <thetext>Ha might be related with the QuotaExceeded support, I&apos;ll check it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701932</commentid>
    <comment_count>4</comment_count>
      <attachid>412436</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-27 10:02:11 -0700</bug_when>
    <thetext>Created attachment 412436
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702276</commentid>
    <comment_count>5</comment_count>
      <attachid>412436</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2020-10-28 05:17:38 -0700</bug_when>
    <thetext>Comment on attachment 412436
Patch

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

&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt; +    if (!rangeEnd.hasDoubleValue()) {

I don&apos;t think this test is ok. In the case you are dealing with, I guess rangeEnd should be positiveInfinite so you should check for isPositiveInfinite. Bonus points to assert on validity, which I guess should be true.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702320</commentid>
    <comment_count>6</comment_count>
      <attachid>412436</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-28 08:47:51 -0700</bug_when>
    <thetext>Comment on attachment 412436
Patch

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

&gt;&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt;&gt; +    if (!rangeEnd.hasDoubleValue()) {
&gt; 
&gt; I don&apos;t think this test is ok. In the case you are dealing with, I guess rangeEnd should be positiveInfinite so you should check for isPositiveInfinite. Bonus points to assert on validity, which I guess should be true.

checking isPositiveInfinite &amp;&amp; !rangeEnd.isIndefinite() makes sense. I&apos;m not sure about adding an assert though, by default the duration is invalidTime(), how can we be sure that ever changes in this part of the code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702328</commentid>
    <comment_count>7</comment_count>
      <attachid>412531</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-28 09:10:39 -0700</bug_when>
    <thetext>Created attachment 412531
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702338</commentid>
    <comment_count>8</comment_count>
      <attachid>412535</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-28 09:27:42 -0700</bug_when>
    <thetext>Created attachment 412535
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702454</commentid>
    <comment_count>9</comment_count>
      <attachid>412535</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-28 12:45:48 -0700</bug_when>
    <thetext>Comment on attachment 412535
Patch

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

&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt; +    if (rangeEnd.isInvalid() || rangeEnd.isPositiveInfinite() || rangeEnd.isIndefinite()) {

Seems like the MediaTime class interface is really letting us down here with a confusing interface where each of these three conditions has to be checked separately. Are these the correct three things to check? Why do we need to check positive infinity, but not negative infinity? Why do we call this &quot;NaN&quot; in the log?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702455</commentid>
    <comment_count>10</comment_count>
      <attachid>412535</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-28 12:46:16 -0700</bug_when>
    <thetext>Comment on attachment 412535
Patch

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

&gt;&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt;&gt; +    if (rangeEnd.isInvalid() || rangeEnd.isPositiveInfinite() || rangeEnd.isIndefinite()) {
&gt; 
&gt; Seems like the MediaTime class interface is really letting us down here with a confusing interface where each of these three conditions has to be checked separately. Are these the correct three things to check? Why do we need to check positive infinity, but not negative infinity? Why do we call this &quot;NaN&quot; in the log?

Does the test cover all three of these, and negative infinity too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702719</commentid>
    <comment_count>11</comment_count>
      <attachid>412535</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-29 07:35:02 -0700</bug_when>
    <thetext>Comment on attachment 412535
Patch

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

&gt;&gt;&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt;&gt;&gt; +    if (rangeEnd.isInvalid() || rangeEnd.isPositiveInfinite() || rangeEnd.isIndefinite()) {
&gt;&gt; 
&gt;&gt; Seems like the MediaTime class interface is really letting us down here with a confusing interface where each of these three conditions has to be checked separately. Are these the correct three things to check? Why do we need to check positive infinity, but not negative infinity? Why do we call this &quot;NaN&quot; in the log?
&gt; 
&gt; Does the test cover all three of these, and negative infinity too?

NaN is what&apos;s mentioned in the spec: https://www.w3.org/TR/media-source/#dom-mediasource-duration 
So perhaps there&apos;s no need to check infinite cases here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702721</commentid>
    <comment_count>12</comment_count>
      <attachid>412646</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-29 07:47:03 -0700</bug_when>
    <thetext>Created attachment 412646
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702753</commentid>
    <comment_count>13</comment_count>
      <attachid>412646</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-10-29 09:28:27 -0700</bug_when>
    <thetext>Comment on attachment 412646
Patch

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

&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:1000
&gt; +    if (rangeEnd.isInvalid() || rangeEnd.isIndefinite()) {
&gt; +        rangeEnd = buffered.maximumBufferedTime();

I&apos;m not sure this covers all the possible cases; it sounds like MediaTime needs an &quot;isFinite()&quot; that returns false for invalid, indefinite, and infinite values.  (The Cocoa ports, for example, treat &quot;Indefinite&quot; differently than &quot;Positive Infinite&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702755</commentid>
    <comment_count>14</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-10-29 09:31:55 -0700</bug_when>
    <thetext>(In reply to Philippe Normand from comment #11)
&gt; Comment on attachment 412535 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=412535&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt; &gt;&gt;&gt; +    if (rangeEnd.isInvalid() || rangeEnd.isPositiveInfinite() || rangeEnd.isIndefinite()) {
&gt; &gt;&gt; 
&gt; &gt;&gt; Seems like the MediaTime class interface is really letting us down here with a confusing interface where each of these three conditions has to be checked separately. Are these the correct three things to check? Why do we need to check positive infinity, but not negative infinity? Why do we call this &quot;NaN&quot; in the log?
&gt; &gt; 
&gt; &gt; Does the test cover all three of these, and negative infinity too?
&gt; 
&gt; NaN is what&apos;s mentioned in the spec:
&gt; https://www.w3.org/TR/media-source/#dom-mediasource-duration 
&gt; So perhaps there&apos;s no need to check infinite cases here.

It&apos;s initially set to NaN, but it&apos;s also a read-write unrestricted double, so the page can set the duration to positive infinite.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702767</commentid>
    <comment_count>15</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-29 10:00:24 -0700</bug_when>
    <thetext>(In reply to Jer Noble from comment #13)
&gt; Comment on attachment 412646 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=412646&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:1000
&gt; &gt; +    if (rangeEnd.isInvalid() || rangeEnd.isIndefinite()) {
&gt; &gt; +        rangeEnd = buffered.maximumBufferedTime();
&gt; 
&gt; I&apos;m not sure this covers all the possible cases; it sounds like MediaTime
&gt; needs an &quot;isFinite()&quot; that returns false for invalid, indefinite, and
&gt; infinite values.  (The Cocoa ports, for example, treat &quot;Indefinite&quot;
&gt; differently than &quot;Positive Infinite&quot;)

Sounds good. I guess you meant to r- instead of clearing the r flag :)

(In reply to Jer Noble from comment #14)
&gt; (In reply to Philippe Normand from comment #11)
&gt; &gt; Comment on attachment 412535 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=412535&amp;action=review
&gt; &gt; 
&gt; &gt; &gt;&gt;&gt; Source/WebCore/Modules/mediasource/SourceBuffer.cpp:999
&gt; &gt; &gt;&gt;&gt; +    if (rangeEnd.isInvalid() || rangeEnd.isPositiveInfinite() || rangeEnd.isIndefinite()) {
&gt; &gt; &gt;&gt; 
&gt; &gt; &gt;&gt; Seems like the MediaTime class interface is really letting us down here with a confusing interface where each of these three conditions has to be checked separately. Are these the correct three things to check? Why do we need to check positive infinity, but not negative infinity? Why do we call this &quot;NaN&quot; in the log?
&gt; &gt; &gt; 
&gt; &gt; &gt; Does the test cover all three of these, and negative infinity too?
&gt; &gt; 
&gt; &gt; NaN is what&apos;s mentioned in the spec:
&gt; &gt; https://www.w3.org/TR/media-source/#dom-mediasource-duration 
&gt; &gt; So perhaps there&apos;s no need to check infinite cases here.
&gt; 
&gt; It&apos;s initially set to NaN, but it&apos;s also a read-write unrestricted double,
&gt; so the page can set the duration to positive infinite.

So a test for Infinite time is needed too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702785</commentid>
    <comment_count>16</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-10-29 11:04:13 -0700</bug_when>
    <thetext>(In reply to Philippe Normand from comment #15)
&gt; 
&gt; Sounds good. I guess you meant to r- instead of clearing the r flag :)

Whoops! I did. I initially had it set to r+ until I noticed the unrestricted double thing, and mistakenly set it to empty rather than back to r-. Apologies!

&gt; So a test for Infinite time is needed too?

Yes, I think so. Either explicitly in a big if-or statement, or by adding an &quot;isFinite()&quot; method to MediaTime that just checks all the right flags.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1703021</commentid>
    <comment_count>17</comment_count>
      <attachid>412730</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-30 04:37:42 -0700</bug_when>
    <thetext>Created attachment 412730
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1703939</commentid>
    <comment_count>18</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-03 04:21:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/70989434&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709444</commentid>
    <comment_count>19</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-11-20 04:20:02 -0800</bug_when>
    <thetext>Committed r270106: &lt;https://trac.webkit.org/changeset/270106&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412413</attachid>
            <date>2020-10-27 05:25:20 -0700</date>
            <delta_ts>2020-10-27 10:02:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218228-20201027052519.patch</filename>
            <type>text/plain</type>
            <size>11085</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MDI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGM3NTFhZGRhM2MzNGFj
MDc0ZjQ4NzVjZWRmZWI4OTJhY2I1ZjYxZS4uZGM0ZjlmZjU0MzhiNzViMGM4N2VhNDU2MWY3MzIz
NjhlZjRlMTZjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTEwLTI3ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXSBJbmZp
bml0ZSBsb29wIGluIHNhbXBsZSBldmljdGlvbiB3aGVuIGR1cmF0aW9uIGlzIE5hTgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MjI4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgaW5maW5pdGUg
bG9vcCBpbiBldmljdENvZGVkRnJhbWVzIGZvciBsaXZlIHN0cmVhbXMKKworICAgICAgICBXaGVu
IHBsYXlpbmcgbGl2ZSBzdHJlYW1zIHRoZSBNZWRpYVNvdXJjZSBET00gZHVyYXRpb24gYXR0cmli
dXRlIGhhcyBubyBtZWFuaW5nCisgICAgICAgIGFuZCB3b3VsZCB0aHVzIGJlIHNldCBhcyAraW5m
LiBXaGVuIHNlZWtzIGFyZSB0cmlnZ2VyZWQgdG8gcG9zaXRpb25zIHByaW9yIHRvCisgICAgICAg
IHRoZSBjdXJyZW50IHBsYXliYWNrIHBvc2l0aW9uIHRoZSBTb3VyY2VCdWZmZXIgbWlnaHQgYXR0
ZW1wdCB0byBmcmVlIHNvbWUgc3BhY2UKKyAgICAgICAgaW4gb3JkZXIgdG8ga2VlcCB0aGUgYW1v
dW50IG9mIG1lbW9yeSB1c2VkIHVuZGVyIGNvbnRyb2wuIEl0IHByb2NlZWRzIGluIDIKKyAgICAg
ICAgc3RlcHM6CisKKyAgICAgICAgMS4gQXR0ZW1wdCB0byBmcmVlIHNwYWNlIHJlcHJlc2VudGVk
IGJ5IGJ1ZmZlcmVkIHJhbmdlIGZyb20gbWVkaWEgc3RhcnQgdXAgdW50aWwKKyAgICAgICAgICAg
Y3VycmVudCBwbGF5YmFjayBwb3NpdGlvbiAtIDMwIHNlY29uZHMuCisgICAgICAgIDIuIElmIHN0
ZXAgMSBkaWRuJ3QgZnJlZSBlbm91Z2ggbWVtb3J5LCBhdHRlbXB0IHRvIHJlbGVhc2UgbWVtb3J5
IHJlcHJlc2VudGVkIGJ5CisgICAgICAgICAgIGJ1ZmZlcmVkIHJhbmdlcyBzdGFydGluZyBmcm9t
IGN1cnJlbnQgcGxheWJhY2sgcG9zaXRpb24gKyAzMCBzZWNvbmRzIHVudGlsIG1lZGlhCisgICAg
ICAgICAgIGR1cmF0aW9uLgorCisgICAgICAgIFN0ZXAgMiBoZXJlIHdhc24ndCB0YWtpbmcgaW50
byBhY2NvdW50IHRoZSBjYXNlIHdoZXJlIE1lZGlhU291cmNlLmR1cmF0aW9uIGlzCisgICAgICAg
IGFjdHVhbGx5IGludmFsaWQsIGFuZCB0aHVzIHdhcyBlbnRlcmluZyBhbiBpbmZpbml0ZSBsb29w
LgorCisgICAgICAgIFRlc3Q6IG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFu
ZC1ldmljdC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMp
OgorCiAyMDIwLTEwLTI3ICBUZXRzdWhhcnUgT2h6ZWtpICA8dGV0c3VoYXJ1Lm9oemVraUBnbWFp
bC5jb20+CiAKICAgICAgICAgTWFrZSBXZWJDb3JlOjpGb2N1c0RpcmVjdGlvbiB0byBlbnVtIGNs
YXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJj
ZUJ1ZmZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1
ZmZlci5jcHAKaW5kZXggOWVlODViMTE0MzY1ZThmMzM3NjQwMjNhYzRlMWQ3MGI3Yzc3NzA4Yi4u
YWI5M2FlMWJmZWM5NWYyYWZiYmMzYTdhNDgwMGFkMGIwZWEyZTM1MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcApAQCAtOTk2
LDkgKzk5NiwxNSBAQCB2b2lkIFNvdXJjZUJ1ZmZlcjo6ZXZpY3RDb2RlZEZyYW1lcyhzaXplX3Qg
bmV3RGF0YVNpemUpCiAgICAgTWVkaWFUaW1lIG1pbmltdW1SYW5nZVN0YXJ0ID0gY3VycmVudFRp
bWUgKyB0aGlydHlTZWNvbmRzOwogCiAgICAgcmFuZ2VFbmQgPSBtX3NvdXJjZS0+ZHVyYXRpb24o
KTsKKyAgICBpZiAoIXJhbmdlRW5kLmhhc0RvdWJsZVZhbHVlKCkpIHsKKyAgICAgICAgcmFuZ2VF
bmQgPSBidWZmZXJlZC5tYXhpbXVtQnVmZmVyZWRUaW1lKCk7CisjaWYgIVJFTEVBU0VfTE9HX0RJ
U0FCTEVECisgICAgICAgIERFQlVHX0xPRyhMT0dJREVOVElGSUVSLCAiTWVkaWFTb3VyY2UgZHVy
YXRpb24gaXMgTmFOLCB1c2luZyBtYXhpbXVtIGJ1ZmZlcmVkIHRpbWU6ICIsIHJhbmdlRW5kKTsK
KyNlbmRpZgorICAgIH0KKwogICAgIHJhbmdlU3RhcnQgPSByYW5nZUVuZCAtIHRoaXJ0eVNlY29u
ZHM7CiAgICAgd2hpbGUgKHJhbmdlU3RhcnQgPiBtaW5pbXVtUmFuZ2VTdGFydCkgewotCiAgICAg
ICAgIC8vIERvIG5vdCBldmljdCBkYXRhIGZyb20gdGhlIHRpbWUgcmFuZ2UgdGhhdCBjb250YWlu
cyBjdXJyZW50VGltZS4KICAgICAgICAgc2l6ZV90IHN0YXJ0VGltZVJhbmdlID0gYnVmZmVyZWQu
ZmluZChyYW5nZVN0YXJ0KTsKICAgICAgICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgIT0gbm90Rm91
bmQgJiYgc3RhcnRUaW1lUmFuZ2UgPT0gY3VycmVudFRpbWVSYW5nZSkgewpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGQxMjM0
OWVmM2M1NzQzMjYzMzg3MGZhZTgzZTU5NzI1ZTA1N2JkZTQuLjhhZmI1YjM1YmI3NGViM2E4ZWFi
ZGNiNDA3MzNkMTA0NTNkZmM2NzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0xMC0yNyAg
UGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01TRV0g
SW5maW5pdGUgbG9vcCBpbiBzYW1wbGUgZXZpY3Rpb24gd2hlbiBkdXJhdGlvbiBpcyBOYU4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODIyOAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVkaWEvbWVk
aWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1lZGlhLXNv
dXJjZS5qczoKKyAgICAgICAgKG1ha2VBSW5pdCk6CisKIDIwMjAtMTAtMjcgIFBoaWxpcHBlIE5v
cm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIEdUSyBH
U3RyZWFtZXIgZ2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1z
b3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4xYzFkY2FmMmI2NzY0YTQ2OWU0MmU0OGYyMTNjYWJiYWU5YjcxMDg0
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUt
cmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0NiBAQAorVGhp
cyB0ZXN0cyByZXdpbmQgc2Vla3MgaW4gYSBsaXZlIHN0cmVhbS4gVGhlIHNhbXBsZSBldmljdGlv
biBhbGdvcml0aG0gc2hvdWxkIGF0dGVtcHQgdG8gcmVtb3ZlIHNvbWUgc2FtcGxlcyB3aXRob3V0
IGdvaW5nIGludG8gYW4gaW5maW5pdGUgbG9vcC4KK0VWRU5UKHNvdXJjZW9wZW4pCitFVkVOVCh1
cGRhdGVlbmQpCitFWFBFQ1RFRCAoaXNOYU4oc291cmNlLmR1cmF0aW9uKSA9PSAndHJ1ZScpIE9L
CitBcHBlbmRpbmcgUFRTPTEyMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjEK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIyCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTEyMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjQKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTEyNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjcKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTEyOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzAKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTEzMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzMKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTEzNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzYKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTM3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEz
OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzkKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTQwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MQor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDIKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTQzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NAorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTQ2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NworRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTQ5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MAorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTUyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MworRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTU1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NgorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU4
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1OQorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNjAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYxCitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MgorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNjMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY0CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNjYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY3CitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNjkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcwCitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNzIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTczCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE3NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NzUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc2CitFVkVOVCh1cGRhdGVlbmQp
CitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzE3NScpIE9LCitFWFBFQ1RFRCAoYnVm
ZmVyZWRSYW5nZXMoKSA9PSAnWyAxMjAuLi4xMzIsIDE2Mi4uLjE3NyBdJykgT0sKK0VYUEVDVEVE
ICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTE1JykgT0sKK0FwcGVuZGluZyBQVFM9MTA5CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xMTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTEyCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xMTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE1CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTExNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE4CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTExOQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGJ1ZmZl
cmVkUmFuZ2VzKCkgPT0gJ1sgMTA5Li4uMTMyLCAxNjIuLi4xNzcgXScpIE9LCitFTkQgT0YgVEVT
VAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdp
bmQtc2Vlay1hbmQtZXZpY3QuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9s
aXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBhZDI5NzcwY2UxYjIw
ODA5ZGZiOWQ4ODAxZmYxNzdiOGMzYjBkYzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3QuaHRtbApAQCAt
MCwwICsxLDg0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxl
Pm1vY2stbWVkaWEtc291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9jay1tZWRpYS1z
b3VyY2UuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10ZXN0LmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFyIHNvdXJjZUJ1
ZmZlcjsKKyAgICB2YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIGV4Y2VwdGlvbjsKKworICAgIGZ1
bmN0aW9uIGJ1ZmZlcmVkUmFuZ2VzKCkgeworICAgICAgICB2YXIgYnVmZmVyZWRSYW5nZXMgPSAn
WyAnOworICAgICAgICB2YXIgdGltZVJhbmdlcyA9IHNvdXJjZUJ1ZmZlci5idWZmZXJlZDsKKyAg
ICAgICAgZm9yICh2YXIgaSA9IDAgOyBpIDwgdGltZVJhbmdlcy5sZW5ndGggOyBpKyspIHsKKyAg
ICAgICAgICAgIGlmIChpKQorICAgICAgICAgICAgICAgIGJ1ZmZlcmVkUmFuZ2VzICs9ICcsICc7
CisgICAgICAgICAgICBidWZmZXJlZFJhbmdlcyArPSB0aW1lUmFuZ2VzLnN0YXJ0KGkpICsgJy4u
LicgKyB0aW1lUmFuZ2VzLmVuZChpKTsKKyAgICAgICAgfQorICAgICAgICBidWZmZXJlZFJhbmdl
cyArPSAnIF0nOworICAgICAgICByZXR1cm4gYnVmZmVyZWRSYW5nZXM7CisgICAgfQorCisgICAg
YXN5bmMgZnVuY3Rpb24gYXBwZW5kUHRzUmFuZ2UoZmlyc3RQdHMsIGxhc3RQdHMpIHsKKyAgICAg
ICAgdmFyIHJlc3VsdEV4Y2VwdGlvbiA9IG51bGw7CisgICAgICAgIGZvciAodmFyIHB0cyA9IGZp
cnN0UHRzOyBwdHMgPD0gbGFzdFB0czsgcHRzKyspIHsKKyAgICAgICAgICAgIHRyeSB7CisgICAg
ICAgICAgICAgICAgY29uc29sZVdyaXRlKCdBcHBlbmRpbmcgUFRTPScrcHRzKTsKKyAgICAgICAg
ICAgICAgICBzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKG1ha2VBU2FtcGxlKHB0cywgcHRzLCAx
LCAxLCAxLCBTQU1QTEVfRkxBRy5TWU5DLCAxKSk7CisgICAgICAgICAgICAgICAgYXdhaXQgd2Fp
dEZvcihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnKTsKKyAgICAgICAgICAgIH0gY2F0Y2ggKGUp
IHsKKyAgICAgICAgICAgICAgICByZXN1bHRFeGNlcHRpb24gPSBlOworICAgICAgICAgICAgICAg
IHNvdXJjZUJ1ZmZlci5hYm9ydCgpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHRFeGNlcHRpb247CisgICAgfQor
CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5pbml0aWFsaXpl
TW9ja01lZGlhU291cmNlKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcs
IGFzeW5jKCkgPT4geworICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisgICAgICAgIHNvdXJj
ZSA9IG5ldyBNZWRpYVNvdXJjZSgpOworCisgICAgICAgIGNvbnN0IHZpZGVvU291cmNlID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291cmNlLnR5cGUg
PSAndmlkZW8vbW9jazsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJjZS5zcmMgPSBV
UkwuY3JlYXRlT2JqZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVuZENoaWxkKHZp
ZGVvU291cmNlKTsKKworICAgICAgICBhd2FpdCB3YWl0Rm9yKHNvdXJjZSwgJ3NvdXJjZW9wZW4n
KTsKKyAgICAgICAgc291cmNlQnVmZmVyID0gc291cmNlLmFkZFNvdXJjZUJ1ZmZlcigidmlkZW8v
bW9jazsgY29kZWNzPW1vY2siKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBtYWtlQUluaXQoLTEs
IFttYWtlQVRyYWNrKDEsICdtb2NrJywgVFJBQ0tfS0lORC5WSURFTyldKTsKKyAgICAgICAgc291
cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihpbml0U2VnbWVudCk7CisgICAgICAgIGF3YWl0IHdhaXRG
b3Ioc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJyk7CisKKyAgICAgICAgdGVzdEV4cGVjdGVkKCdp
c05hTihzb3VyY2UuZHVyYXRpb24pJywgdHJ1ZSwgJz09Jyk7CisKKyAgICAgICAgLy8gVGhpcyBz
aG91bGQgYWxsb3cgYnVmZXJpbmcgdXAgdG8gMTc3IChlbXBpcmljYWxseSB0ZXN0ZWQpLgorICAg
ICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0TWF4aW11bVNvdXJjZUJ1ZmZlclNpemUoMzAwMCk7
CisKKyAgICAgICAgZXhjZXB0aW9uID0gYXdhaXQgYXBwZW5kUHRzUmFuZ2UoMTIwLCAxNzYpOwor
CisgICAgICAgIHZpZGVvLmN1cnJlbnRUaW1lID0gMTc1OworICAgICAgICB0ZXN0RXhwZWN0ZWQo
J3ZpZGVvLmN1cnJlbnRUaW1lJywgMTc1LCAnPT0nKTsKKworICAgICAgICB0ZXN0RXhwZWN0ZWQo
J2J1ZmZlcmVkUmFuZ2VzKCknLCAnWyAxMjAuLi4xMzIsIDE2Mi4uLjE3NyBdJywgJz09Jyk7CisK
KyAgICAgICAgdmlkZW8uY3VycmVudFRpbWUgPSAxMTU7CisgICAgICAgIHRlc3RFeHBlY3RlZCgn
dmlkZW8uY3VycmVudFRpbWUnLCAxMTUsICc9PScpOworICAgICAgICBhd2FpdCBhcHBlbmRQdHNS
YW5nZSgxMDksIDExOSk7CisgICAgICAgIHRlc3RFeHBlY3RlZCgnYnVmZmVyZWRSYW5nZXMoKScs
ICdbIDEwOS4uLjEzMiwgMTYyLi4uMTc3IF0nLCAnPT0nKTsKKyAgICAgICAgZW5kVGVzdCgpOwor
ICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIFRoaXMgdGVzdHMg
cmV3aW5kIHNlZWtzIGluIGEgbGl2ZSBzdHJlYW0uIFRoZSBzYW1wbGUgZXZpY3Rpb24gYWxnb3Jp
dGhtIHNob3VsZCBhdHRlbXB0IHRvIHJlbW92ZQorICAgIHNvbWUgc2FtcGxlcyB3aXRob3V0IGdv
aW5nIGludG8gYW4gaW5maW5pdGUgbG9vcC4KKyAgICA8dmlkZW8+PC92aWRlbz4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2Nr
LW1lZGlhLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1l
ZGlhLXNvdXJjZS5qcwppbmRleCAwZWQ5MWEzMjA4MTQ4OTdmZDliODMwYWI3ZTdhNzdjMzI4NDJh
YzAzLi43ZWEzNzJkZjRkNTVmZjZkZDRmMmE0ZGM5YTE5NDRhYTQ1OTI1ZjM4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21vY2stbWVkaWEtc291cmNlLmpzCkBA
IC03NSwxMSArNzUsMTMgQEAgZnVuY3Rpb24gbWFrZUFJbml0KGR1cmF0aW9uLCB0cmFja3MpIHsK
ICAgICB2YXIgYXJyYXkgPSBuZXcgVWludDhBcnJheShidWZmZXIpOwogICAgIGFycmF5LnNldChz
dHJpbmdUb0FycmF5KCdpbml0JykpOwogCi0gICAgdmFyIHZpZXcgPSBuZXcgRGF0YVZpZXcoYnVm
ZmVyKTsKLSAgICB2YXIgdGltZVNjYWxlID0gMTAwMDsKLSAgICB2aWV3LnNldFVpbnQzMig0LCBi
eXRlTGVuZ3RoLCB0cnVlKTsKLSAgICB2aWV3LnNldEludDMyKDgsIGR1cmF0aW9uICogdGltZVNj
YWxlLCB0cnVlKTsKLSAgICB2aWV3LnNldEludDMyKDEyLCB0aW1lU2NhbGUsIHRydWUpOworICAg
IGlmICghaXNOYU4oZHVyYXRpb24pKSB7CisgICAgICAgIHZhciB2aWV3ID0gbmV3IERhdGFWaWV3
KGJ1ZmZlcik7CisgICAgICAgIHZhciB0aW1lU2NhbGUgPSAxMDAwOworICAgICAgICB2aWV3LnNl
dFVpbnQzMig0LCBieXRlTGVuZ3RoLCB0cnVlKTsKKyAgICAgICAgdmlldy5zZXRJbnQzMig4LCBk
dXJhdGlvbiAqIHRpbWVTY2FsZSwgdHJ1ZSk7CisgICAgICAgIHZpZXcuc2V0SW50MzIoMTIsIHRp
bWVTY2FsZSwgdHJ1ZSk7CisgICAgfQogCiAgICAgdmFyIG9mZnNldCA9IDE2OwogICAgIHRyYWNr
cy5mb3JFYWNoKGZ1bmN0aW9uKHRyYWNrKXsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412436</attachid>
            <date>2020-10-27 10:02:11 -0700</date>
            <delta_ts>2020-10-28 09:10:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218228-20201027100209.patch</filename>
            <type>text/plain</type>
            <size>13764</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzBhNGJkMGU3MjliYThj
OWU4ZThlOWJiYjljZDdmYWM2YjUwNTE2MC4uYmQ5MWUwZjIxNDMxZWE3YjA0OGYzMDE1NmVmOGUw
NzVjNTk0YmMxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTEwLTI3ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXSBJbmZp
bml0ZSBsb29wIGluIHNhbXBsZSBldmljdGlvbiB3aGVuIGR1cmF0aW9uIGlzIE5hTgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MjI4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgaW5maW5pdGUg
bG9vcCBpbiBldmljdENvZGVkRnJhbWVzIGZvciBsaXZlIHN0cmVhbXMKKworICAgICAgICBXaGVu
IHBsYXlpbmcgbGl2ZSBzdHJlYW1zIHRoZSBNZWRpYVNvdXJjZSBET00gZHVyYXRpb24gYXR0cmli
dXRlIGhhcyBubyBtZWFuaW5nCisgICAgICAgIGFuZCB3b3VsZCB0aHVzIGJlIHNldCBhcyAraW5m
LiBXaGVuIHNlZWtzIGFyZSB0cmlnZ2VyZWQgdG8gcG9zaXRpb25zIHByaW9yIHRvCisgICAgICAg
IHRoZSBjdXJyZW50IHBsYXliYWNrIHBvc2l0aW9uIHRoZSBTb3VyY2VCdWZmZXIgbWlnaHQgYXR0
ZW1wdCB0byBmcmVlIHNvbWUgc3BhY2UKKyAgICAgICAgaW4gb3JkZXIgdG8ga2VlcCB0aGUgYW1v
dW50IG9mIG1lbW9yeSB1c2VkIHVuZGVyIGNvbnRyb2wuIEl0IHByb2NlZWRzIGluIDIKKyAgICAg
ICAgc3RlcHM6CisKKyAgICAgICAgMS4gQXR0ZW1wdCB0byBmcmVlIHNwYWNlIHJlcHJlc2VudGVk
IGJ5IGJ1ZmZlcmVkIHJhbmdlIGZyb20gbWVkaWEgc3RhcnQgdXAgdW50aWwKKyAgICAgICAgICAg
Y3VycmVudCBwbGF5YmFjayBwb3NpdGlvbiAtIDMwIHNlY29uZHMuCisgICAgICAgIDIuIElmIHN0
ZXAgMSBkaWRuJ3QgZnJlZSBlbm91Z2ggbWVtb3J5LCBhdHRlbXB0IHRvIHJlbGVhc2UgbWVtb3J5
IHJlcHJlc2VudGVkIGJ5CisgICAgICAgICAgIGJ1ZmZlcmVkIHJhbmdlcyBzdGFydGluZyBmcm9t
IGN1cnJlbnQgcGxheWJhY2sgcG9zaXRpb24gKyAzMCBzZWNvbmRzIHVudGlsIG1lZGlhCisgICAg
ICAgICAgIGR1cmF0aW9uLgorCisgICAgICAgIFN0ZXAgMiBoZXJlIHdhc24ndCB0YWtpbmcgaW50
byBhY2NvdW50IHRoZSBjYXNlIHdoZXJlIE1lZGlhU291cmNlLmR1cmF0aW9uIGlzCisgICAgICAg
IGFjdHVhbGx5IGludmFsaWQsIGFuZCB0aHVzIHdhcyBlbnRlcmluZyBhbiBpbmZpbml0ZSBsb29w
LgorCisgICAgICAgIFRlc3Q6IG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFu
ZC1ldmljdC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMp
OgorCiAyMDIwLTEwLTI3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gVXNlIGl0ZXJhdG9yIGZvciBuZXh0L3ByZXZpb3VzTGlu
ZVBvc2l0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNl
L1NvdXJjZUJ1ZmZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1Nv
dXJjZUJ1ZmZlci5jcHAKaW5kZXggOWVlODViMTE0MzY1ZThmMzM3NjQwMjNhYzRlMWQ3MGI3Yzc3
NzA4Yi4uYWI5M2FlMWJmZWM5NWYyYWZiYmMzYTdhNDgwMGFkMGIwZWEyZTM1MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcApA
QCAtOTk2LDkgKzk5NiwxNSBAQCB2b2lkIFNvdXJjZUJ1ZmZlcjo6ZXZpY3RDb2RlZEZyYW1lcyhz
aXplX3QgbmV3RGF0YVNpemUpCiAgICAgTWVkaWFUaW1lIG1pbmltdW1SYW5nZVN0YXJ0ID0gY3Vy
cmVudFRpbWUgKyB0aGlydHlTZWNvbmRzOwogCiAgICAgcmFuZ2VFbmQgPSBtX3NvdXJjZS0+ZHVy
YXRpb24oKTsKKyAgICBpZiAoIXJhbmdlRW5kLmhhc0RvdWJsZVZhbHVlKCkpIHsKKyAgICAgICAg
cmFuZ2VFbmQgPSBidWZmZXJlZC5tYXhpbXVtQnVmZmVyZWRUaW1lKCk7CisjaWYgIVJFTEVBU0Vf
TE9HX0RJU0FCTEVECisgICAgICAgIERFQlVHX0xPRyhMT0dJREVOVElGSUVSLCAiTWVkaWFTb3Vy
Y2UgZHVyYXRpb24gaXMgTmFOLCB1c2luZyBtYXhpbXVtIGJ1ZmZlcmVkIHRpbWU6ICIsIHJhbmdl
RW5kKTsKKyNlbmRpZgorICAgIH0KKwogICAgIHJhbmdlU3RhcnQgPSByYW5nZUVuZCAtIHRoaXJ0
eVNlY29uZHM7CiAgICAgd2hpbGUgKHJhbmdlU3RhcnQgPiBtaW5pbXVtUmFuZ2VTdGFydCkgewot
CiAgICAgICAgIC8vIERvIG5vdCBldmljdCBkYXRhIGZyb20gdGhlIHRpbWUgcmFuZ2UgdGhhdCBj
b250YWlucyBjdXJyZW50VGltZS4KICAgICAgICAgc2l6ZV90IHN0YXJ0VGltZVJhbmdlID0gYnVm
ZmVyZWQuZmluZChyYW5nZVN0YXJ0KTsKICAgICAgICAgaWYgKGN1cnJlbnRUaW1lUmFuZ2UgIT0g
bm90Rm91bmQgJiYgc3RhcnRUaW1lUmFuZ2UgPT0gY3VycmVudFRpbWVSYW5nZSkgewpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IGE0Yzg0YWFjMzMxYTc2YjQ4Zjk1YmZhNGZhNTEzMWNhZGY1NGFhMDYuLmNiYTczMTk4OWNkNjNl
YWViMjQ4N2RhZjVhZmMyZWEwZDUyNmM3Y2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0x
MC0yNyAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CisKKyAgICAgICAg
W01TRV0gSW5maW5pdGUgbG9vcCBpbiBzYW1wbGUgZXZpY3Rpb24gd2hlbiBkdXJhdGlvbiBpcyBO
YU4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODIy
OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVk
aWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5k
LWV2aWN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1l
ZGlhLXNvdXJjZS5qczoKKyAgICAgICAgKG1ha2VBSW5pdCk6CisKIDIwMjAtMTAtMjcgIFhhYmll
ciBSb2RyaWd1ZXogQ2FsdmFyICA8Y2FsdmFyaXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJl
dmlld2VkLCBHU3RyZWFtZXIgZ2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRp
YS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3QtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYzFkY2FmMmI2NzY0YTQ2OWU0MmU0OGYyMTNjYWJi
YWU5YjcxMDg0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291
cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0
NiBAQAorVGhpcyB0ZXN0cyByZXdpbmQgc2Vla3MgaW4gYSBsaXZlIHN0cmVhbS4gVGhlIHNhbXBs
ZSBldmljdGlvbiBhbGdvcml0aG0gc2hvdWxkIGF0dGVtcHQgdG8gcmVtb3ZlIHNvbWUgc2FtcGxl
cyB3aXRob3V0IGdvaW5nIGludG8gYW4gaW5maW5pdGUgbG9vcC4KK0VWRU5UKHNvdXJjZW9wZW4p
CitFVkVOVCh1cGRhdGVlbmQpCitFWFBFQ1RFRCAoaXNOYU4oc291cmNlLmR1cmF0aW9uKSA9PSAn
dHJ1ZScpIE9LCitBcHBlbmRpbmcgUFRTPTEyMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xMjEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIyCitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMjQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI1CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTEyNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
MjcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI4CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTEyOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzAK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMxCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTEzMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzMKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTEzNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzYKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTEzOAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzkKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTE0MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDIKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTE0NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDUKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTQ2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0
NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDgKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTQ5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MAor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTUyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MworRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTU1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NgorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTU4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1OQorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTYxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MgorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNjMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTY0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNjYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY3
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2OAorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNjkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcwCitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3MQorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNzIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTczCitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNzUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc2CitFVkVOVCh1
cGRhdGVlbmQpCitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzE3NScpIE9LCitFWFBF
Q1RFRCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAnWyAxMjAuLi4xMzIsIDE2Mi4uLjE3NyBdJykgT0sK
K0VYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTE1JykgT0sKK0FwcGVuZGluZyBQVFM9
MTA5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExMAorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xMTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTEy
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExMworRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xMTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE1CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExNgorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xMTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE4CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExOQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNU
RUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTA5Li4uMTMyLCAxNjIuLi4xNzcgXScpIE9LCitF
TkQgT0YgVEVTVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2Uv
bGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3QuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlh
LXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBhZDI5
NzcwY2UxYjIwODA5ZGZiOWQ4ODAxZmYxNzdiOGMzYjBkYzcKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3Qu
aHRtbApAQCAtMCwwICsxLDg0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cisg
ICAgPHRpdGxlPm1vY2stbWVkaWEtc291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9j
ay1tZWRpYS1zb3VyY2UuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10
ZXN0LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFy
IHNvdXJjZUJ1ZmZlcjsKKyAgICB2YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIGV4Y2VwdGlvbjsK
KworICAgIGZ1bmN0aW9uIGJ1ZmZlcmVkUmFuZ2VzKCkgeworICAgICAgICB2YXIgYnVmZmVyZWRS
YW5nZXMgPSAnWyAnOworICAgICAgICB2YXIgdGltZVJhbmdlcyA9IHNvdXJjZUJ1ZmZlci5idWZm
ZXJlZDsKKyAgICAgICAgZm9yICh2YXIgaSA9IDAgOyBpIDwgdGltZVJhbmdlcy5sZW5ndGggOyBp
KyspIHsKKyAgICAgICAgICAgIGlmIChpKQorICAgICAgICAgICAgICAgIGJ1ZmZlcmVkUmFuZ2Vz
ICs9ICcsICc7CisgICAgICAgICAgICBidWZmZXJlZFJhbmdlcyArPSB0aW1lUmFuZ2VzLnN0YXJ0
KGkpICsgJy4uLicgKyB0aW1lUmFuZ2VzLmVuZChpKTsKKyAgICAgICAgfQorICAgICAgICBidWZm
ZXJlZFJhbmdlcyArPSAnIF0nOworICAgICAgICByZXR1cm4gYnVmZmVyZWRSYW5nZXM7CisgICAg
fQorCisgICAgYXN5bmMgZnVuY3Rpb24gYXBwZW5kUHRzUmFuZ2UoZmlyc3RQdHMsIGxhc3RQdHMp
IHsKKyAgICAgICAgdmFyIHJlc3VsdEV4Y2VwdGlvbiA9IG51bGw7CisgICAgICAgIGZvciAodmFy
IHB0cyA9IGZpcnN0UHRzOyBwdHMgPD0gbGFzdFB0czsgcHRzKyspIHsKKyAgICAgICAgICAgIHRy
eSB7CisgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCdBcHBlbmRpbmcgUFRTPScrcHRzKTsK
KyAgICAgICAgICAgICAgICBzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKG1ha2VBU2FtcGxlKHB0
cywgcHRzLCAxLCAxLCAxLCBTQU1QTEVfRkxBRy5TWU5DLCAxKSk7CisgICAgICAgICAgICAgICAg
YXdhaXQgd2FpdEZvcihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnKTsKKyAgICAgICAgICAgIH0g
Y2F0Y2ggKGUpIHsKKyAgICAgICAgICAgICAgICByZXN1bHRFeGNlcHRpb24gPSBlOworICAgICAg
ICAgICAgICAgIHNvdXJjZUJ1ZmZlci5hYm9ydCgpOworICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHRFeGNlcHRpb247
CisgICAgfQorCisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5p
bml0aWFsaXplTW9ja01lZGlhU291cmNlKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5l
cignbG9hZCcsIGFzeW5jKCkgPT4geworICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisgICAg
ICAgIHNvdXJjZSA9IG5ldyBNZWRpYVNvdXJjZSgpOworCisgICAgICAgIGNvbnN0IHZpZGVvU291
cmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291
cmNlLnR5cGUgPSAndmlkZW8vbW9jazsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJj
ZS5zcmMgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVu
ZENoaWxkKHZpZGVvU291cmNlKTsKKworICAgICAgICBhd2FpdCB3YWl0Rm9yKHNvdXJjZSwgJ3Nv
dXJjZW9wZW4nKTsKKyAgICAgICAgc291cmNlQnVmZmVyID0gc291cmNlLmFkZFNvdXJjZUJ1ZmZl
cigidmlkZW8vbW9jazsgY29kZWNzPW1vY2siKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBtYWtl
QUluaXQoLTEsIFttYWtlQVRyYWNrKDEsICdtb2NrJywgVFJBQ0tfS0lORC5WSURFTyldKTsKKyAg
ICAgICAgc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihpbml0U2VnbWVudCk7CisgICAgICAgIGF3
YWl0IHdhaXRGb3Ioc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJyk7CisKKyAgICAgICAgdGVzdEV4
cGVjdGVkKCdpc05hTihzb3VyY2UuZHVyYXRpb24pJywgdHJ1ZSwgJz09Jyk7CisKKyAgICAgICAg
Ly8gVGhpcyBzaG91bGQgYWxsb3cgYnVmZXJpbmcgdXAgdG8gMTc3IChlbXBpcmljYWxseSB0ZXN0
ZWQpLgorICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0TWF4aW11bVNvdXJjZUJ1ZmZlclNp
emUoMzAwMCk7CisKKyAgICAgICAgZXhjZXB0aW9uID0gYXdhaXQgYXBwZW5kUHRzUmFuZ2UoMTIw
LCAxNzYpOworCisgICAgICAgIHZpZGVvLmN1cnJlbnRUaW1lID0gMTc1OworICAgICAgICB0ZXN0
RXhwZWN0ZWQoJ3ZpZGVvLmN1cnJlbnRUaW1lJywgMTc1LCAnPT0nKTsKKworICAgICAgICB0ZXN0
RXhwZWN0ZWQoJ2J1ZmZlcmVkUmFuZ2VzKCknLCAnWyAxMjAuLi4xMzIsIDE2Mi4uLjE3NyBdJywg
Jz09Jyk7CisKKyAgICAgICAgdmlkZW8uY3VycmVudFRpbWUgPSAxMTU7CisgICAgICAgIHRlc3RF
eHBlY3RlZCgndmlkZW8uY3VycmVudFRpbWUnLCAxMTUsICc9PScpOworICAgICAgICBhd2FpdCBh
cHBlbmRQdHNSYW5nZSgxMDksIDExOSk7CisgICAgICAgIHRlc3RFeHBlY3RlZCgnYnVmZmVyZWRS
YW5nZXMoKScsICdbIDEwOS4uLjEzMiwgMTYyLi4uMTc3IF0nLCAnPT0nKTsKKyAgICAgICAgZW5k
VGVzdCgpOworICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIFRo
aXMgdGVzdHMgcmV3aW5kIHNlZWtzIGluIGEgbGl2ZSBzdHJlYW0uIFRoZSBzYW1wbGUgZXZpY3Rp
b24gYWxnb3JpdGhtIHNob3VsZCBhdHRlbXB0IHRvIHJlbW92ZQorICAgIHNvbWUgc2FtcGxlcyB3
aXRob3V0IGdvaW5nIGludG8gYW4gaW5maW5pdGUgbG9vcC4KKyAgICA8dmlkZW8+PC92aWRlbz4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNv
dXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2Vl
ZGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1z
b3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVk
LnR4dAppbmRleCBhOGE2MTdlNGU5Yjk5YjBmYTQyNTAwMTk3MDY1ZmUwZDhkM2U5MDI2Li5kZTcy
YWQ1MTM3NDI3ZDg0ZGFlMjdmMzFjZjlmYjJhZjRhMDI2Y2FkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1y
YW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8t
cXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQudHh0CkBAIC0xMjgsNiArMTI4LDYgQEAgRVZFTlQodXBk
YXRlZW5kKQogQXBwZW5kaW5nIFBUUz0xMTgKIEVWRU5UKHVwZGF0ZWVuZCkKIEVYUEVDVEVEIChl
eGNlcHRpb24gIT0gJ1F1b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2Vl
ZGVkLicpIE9LCi1FWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAnWyAxMTUuLi4xMTksIDEy
MC4uLjE3MCBdJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDExNS4uLjEx
OSwgMTIwLi4uMTQ3IF0nKSBPSwogRU5EIE9GIFRFU1QKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFu
Z2Utbm8tcXVvdGEtZXhjZWVkZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJj
ZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVk
Lmh0bWwKaW5kZXggNWEwZDUzMjk0YjRiNmY0M2I3YTI4NmNjMzM0ODJlYmY3ZmRmYWQwNC4uZjUy
YjhkYjc0MzhjZjBiMjAzYmQ3NmRmODE4OWQ5ZDNjZWFjZTcyZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3Qt
cmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRp
YS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1l
eGNlZWRlZC5odG1sCkBAIC03Niw3ICs3Niw3IEBACiAgICAgICAgIGV4Y2VwdGlvbiA9IGF3YWl0
IGFwcGVuZFB0c1JhbmdlKDExNSwgMTE4KTsKIAogICAgICAgICB0ZXN0RXhwZWN0ZWQoJ2V4Y2Vw
dGlvbicsICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMgYmVlbiBleGNlZWRlZC4n
LCAnIT0nKTsKLSAgICAgICAgdGVzdEV4cGVjdGVkKCdidWZmZXJlZFJhbmdlcygpJywgJ1sgMTE1
Li4uMTE5LCAxMjAuLi4xNzAgXScsICc9PScpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ2J1ZmZl
cmVkUmFuZ2VzKCknLCAnWyAxMTUuLi4xMTksIDEyMC4uLjE0NyBdJywgJz09Jyk7CiAKICAgICAg
ICAgZW5kVGVzdCgpOwogICAgIH0pOwpAQCAtODUsNCArODUsNCBAQAogPGJvZHk+CiAgICAgPHZp
ZGVvPjwvdmlkZW8+CiA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21v
Y2stbWVkaWEtc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21vY2st
bWVkaWEtc291cmNlLmpzCmluZGV4IDBlZDkxYTMyMDgxNDg5N2ZkOWI4MzBhYjdlN2E3N2MzMjg0
MmFjMDMuLjdlYTM3MmRmNGQ1NWZmNmRkNGYyYTRkYzlhMTk0NGFhNDU5MjVmMzggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1lZGlhLXNvdXJjZS5qcwor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMK
QEAgLTc1LDExICs3NSwxMyBAQCBmdW5jdGlvbiBtYWtlQUluaXQoZHVyYXRpb24sIHRyYWNrcykg
ewogICAgIHZhciBhcnJheSA9IG5ldyBVaW50OEFycmF5KGJ1ZmZlcik7CiAgICAgYXJyYXkuc2V0
KHN0cmluZ1RvQXJyYXkoJ2luaXQnKSk7CiAKLSAgICB2YXIgdmlldyA9IG5ldyBEYXRhVmlldyhi
dWZmZXIpOwotICAgIHZhciB0aW1lU2NhbGUgPSAxMDAwOwotICAgIHZpZXcuc2V0VWludDMyKDQs
IGJ5dGVMZW5ndGgsIHRydWUpOwotICAgIHZpZXcuc2V0SW50MzIoOCwgZHVyYXRpb24gKiB0aW1l
U2NhbGUsIHRydWUpOwotICAgIHZpZXcuc2V0SW50MzIoMTIsIHRpbWVTY2FsZSwgdHJ1ZSk7Cisg
ICAgaWYgKCFpc05hTihkdXJhdGlvbikpIHsKKyAgICAgICAgdmFyIHZpZXcgPSBuZXcgRGF0YVZp
ZXcoYnVmZmVyKTsKKyAgICAgICAgdmFyIHRpbWVTY2FsZSA9IDEwMDA7CisgICAgICAgIHZpZXcu
c2V0VWludDMyKDQsIGJ5dGVMZW5ndGgsIHRydWUpOworICAgICAgICB2aWV3LnNldEludDMyKDgs
IGR1cmF0aW9uICogdGltZVNjYWxlLCB0cnVlKTsKKyAgICAgICAgdmlldy5zZXRJbnQzMigxMiwg
dGltZVNjYWxlLCB0cnVlKTsKKyAgICB9CiAKICAgICB2YXIgb2Zmc2V0ID0gMTY7CiAgICAgdHJh
Y2tzLmZvckVhY2goZnVuY3Rpb24odHJhY2spewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ2xpYi9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUt
bGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9nbGliL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9y
ZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dAppbmRleCAzYzY4OTQ4
YmRiNmNjY2M3YjQzNzNjYTljNDQxZmFlMWI3YTJkMDU0Li5lYzVkM2E1OGJkMmVhNDgwYmY2NWYx
NTNhNGM3MmU5NTY0MTFiZjU2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGli
L21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdl
LW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9nbGliL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0
LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApAQCAtMTI3LDYgKzEyNyw2IEBA
IEVWRU5UKHVwZGF0ZWVuZCkKIEFwcGVuZGluZyBQVFM9MTE4CiBFVkVOVCh1cGRhdGVlbmQpCiBF
WFBFQ1RFRCAoZXhjZXB0aW9uICE9ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMg
YmVlbiBleGNlZWRlZC4nKSBPSwotRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTE1
Li4uMTE5LCAxMjAuLi4xNzAgXScpIE9LCitFWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAn
WyAxMTUuLi4xMTksIDEyMC4uLjE0NyBdJyksIE9CU0VSVkVEICdbIDExNS4uLjExOSwgMTIwLi4u
MTQ2IF0nIEZBSUwKIEVORCBPRiBURVNUCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412531</attachid>
            <date>2020-10-28 09:10:39 -0700</date>
            <delta_ts>2020-10-28 09:27:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218228-20201028091037.patch</filename>
            <type>text/plain</type>
            <size>15949</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M1N2IzZTZlMDJmMDcy
MzEwMDQzNTdmMjg2ZGVkNGI0YjgyNmQ4Zi4uYjFjMmZlZGQ5NDFjNjdhNGI3NTM0OTA1MzU3NDA3
ZjBlNmJlMTgxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTEwLTI3ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXSBJbmZp
bml0ZSBsb29wIGluIHNhbXBsZSBldmljdGlvbiB3aGVuIGR1cmF0aW9uIGlzIE5hTgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MjI4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgaW5maW5pdGUg
bG9vcCBpbiBldmljdENvZGVkRnJhbWVzIGZvciBsaXZlIHN0cmVhbXMKKworICAgICAgICBXaGVu
IHBsYXlpbmcgbGl2ZSBzdHJlYW1zIHRoZSBNZWRpYVNvdXJjZSBET00gZHVyYXRpb24gYXR0cmli
dXRlIGhhcyBubyBtZWFuaW5nCisgICAgICAgIGFuZCB3b3VsZCB0aHVzIGJlIHNldCBhcyAraW5m
LiBXaGVuIHNlZWtzIGFyZSB0cmlnZ2VyZWQgdG8gcG9zaXRpb25zIHByaW9yIHRvCisgICAgICAg
IHRoZSBjdXJyZW50IHBsYXliYWNrIHBvc2l0aW9uIHRoZSBTb3VyY2VCdWZmZXIgbWlnaHQgYXR0
ZW1wdCB0byBmcmVlIHNvbWUgc3BhY2UKKyAgICAgICAgaW4gb3JkZXIgdG8ga2VlcCB0aGUgYW1v
dW50IG9mIG1lbW9yeSB1c2VkIHVuZGVyIGNvbnRyb2wuIEl0IHByb2NlZWRzIGluIDIKKyAgICAg
ICAgc3RlcHM6CisKKyAgICAgICAgMS4gQXR0ZW1wdCB0byBmcmVlIHNwYWNlIHJlcHJlc2VudGVk
IGJ5IGJ1ZmZlcmVkIHJhbmdlIGZyb20gbWVkaWEgc3RhcnQgdXAgdW50aWwKKyAgICAgICAgICAg
Y3VycmVudCBwbGF5YmFjayBwb3NpdGlvbiAtIDMwIHNlY29uZHMuCisgICAgICAgIDIuIElmIHN0
ZXAgMSBkaWRuJ3QgZnJlZSBlbm91Z2ggbWVtb3J5LCBhdHRlbXB0IHRvIHJlbGVhc2UgbWVtb3J5
IHJlcHJlc2VudGVkIGJ5CisgICAgICAgICAgIGJ1ZmZlcmVkIHJhbmdlcyBzdGFydGluZyBmcm9t
IGN1cnJlbnQgcGxheWJhY2sgcG9zaXRpb24gKyAzMCBzZWNvbmRzIHVudGlsIG1lZGlhCisgICAg
ICAgICAgIGR1cmF0aW9uLgorCisgICAgICAgIFN0ZXAgMiBoZXJlIHdhc24ndCB0YWtpbmcgaW50
byBhY2NvdW50IHRoZSBjYXNlIHdoZXJlIE1lZGlhU291cmNlLmR1cmF0aW9uIGlzCisgICAgICAg
IGFjdHVhbGx5IGludmFsaWQsIGFuZCB0aHVzIHdhcyBlbnRlcmluZyBhbiBpbmZpbml0ZSBsb29w
LgorCisgICAgICAgIFRlc3Q6IG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFu
ZC1ldmljdC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMp
OgorCiAyMDIwLTEwLTI4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4K
IAogICAgICAgICBbR1N0cmVhbWVyXSBNdWx0aS1jaGFubmVsICg+Mikgc3VwcG9ydCBmb3IgdGhl
IEF1ZGlvRmlsZVJlYWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNv
dXJjZS9Tb3VyY2VCdWZmZXIuY3BwCmluZGV4IDllZTg1YjExNDM2NWU4ZjMzNzY0MDIzYWM0ZTFk
NzBiN2M3NzcwOGIuLjY2NWZlMTJkYWNiYzE0OWVjZTc0NjRjNDA4ZDZlMmE3YWRiMGFmNDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHAKQEAgLTk5Niw5ICs5OTYsMTUgQEAgdm9pZCBTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRG
cmFtZXMoc2l6ZV90IG5ld0RhdGFTaXplKQogICAgIE1lZGlhVGltZSBtaW5pbXVtUmFuZ2VTdGFy
dCA9IGN1cnJlbnRUaW1lICsgdGhpcnR5U2Vjb25kczsKIAogICAgIHJhbmdlRW5kID0gbV9zb3Vy
Y2UtPmR1cmF0aW9uKCk7CisgICAgaWYgKHJhbmdlRW5kLmlzSW52YWxpZCgpIHx8IHJhbmdlRW5k
LmlzUG9zaXRpdmVJbmZpbml0ZSgpIHx8IHJhbmdlRW5kLmlzSW5kZWZpbml0ZSgpKSB7CisgICAg
ICAgIHJhbmdlRW5kID0gYnVmZmVyZWQubWF4aW11bUJ1ZmZlcmVkVGltZSgpOworI2lmICFSRUxF
QVNFX0xPR19ESVNBQkxFRAorICAgICAgICBERUJVR19MT0coTE9HSURFTlRJRklFUiwgIk1lZGlh
U291cmNlIGR1cmF0aW9uIGlzIE5hTiwgdXNpbmcgbWF4aW11bSBidWZmZXJlZCB0aW1lOiAiLCBy
YW5nZUVuZCk7CisjZW5kaWYKKyAgICB9CisKICAgICByYW5nZVN0YXJ0ID0gcmFuZ2VFbmQgLSB0
aGlydHlTZWNvbmRzOwogICAgIHdoaWxlIChyYW5nZVN0YXJ0ID4gbWluaW11bVJhbmdlU3RhcnQp
IHsKLQogICAgICAgICAvLyBEbyBub3QgZXZpY3QgZGF0YSBmcm9tIHRoZSB0aW1lIHJhbmdlIHRo
YXQgY29udGFpbnMgY3VycmVudFRpbWUuCiAgICAgICAgIHNpemVfdCBzdGFydFRpbWVSYW5nZSA9
IGJ1ZmZlcmVkLmZpbmQocmFuZ2VTdGFydCk7CiAgICAgICAgIGlmIChjdXJyZW50VGltZVJhbmdl
ICE9IG5vdEZvdW5kICYmIHN0YXJ0VGltZVJhbmdlID09IGN1cnJlbnRUaW1lUmFuZ2UpIHsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCAxY2M5ODgyMzM2ZmFjZmUyN2EzYTNhOTQ2ZjNiYjcyZDNhNjQxNTBiLi44NzA1MTY4ZWFl
NjIwYWQyNWE2MzNjMGRhZjE0MWQ4N2I2ZWRmZWUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIw
MjAtMTAtMjcgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAg
ICAgIFtNU0VdIEluZmluaXRlIGxvb3AgaW4gc2FtcGxlIGV2aWN0aW9uIHdoZW4gZHVyYXRpb24g
aXMgTmFOCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTgyMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVr
LWFuZC1ldmljdC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbW9j
ay1tZWRpYS1zb3VyY2UuanM6CisgICAgICAgIChtYWtlQUluaXQpOgorCiAyMDIwLTEwLTI4ICBQ
aGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1N0cmVh
bWVyXSBNdWx0aS1jaGFubmVsICg+Mikgc3VwcG9ydCBmb3IgdGhlIEF1ZGlvRmlsZVJlYWRlcgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNl
ZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJj
ZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWMx
ZGNhZjJiNjc2NGE0NjllNDJlNDhmMjEzY2FiYmFlOWI3MTA4NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmlj
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNDYgQEAKK1RoaXMgdGVzdHMgcmV3aW5kIHNlZWtz
IGluIGEgbGl2ZSBzdHJlYW0uIFRoZSBzYW1wbGUgZXZpY3Rpb24gYWxnb3JpdGhtIHNob3VsZCBh
dHRlbXB0IHRvIHJlbW92ZSBzb21lIHNhbXBsZXMgd2l0aG91dCBnb2luZyBpbnRvIGFuIGluZmlu
aXRlIGxvb3AuCitFVkVOVChzb3VyY2VvcGVuKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQg
KGlzTmFOKHNvdXJjZS5kdXJhdGlvbikgPT0gJ3RydWUnKSBPSworQXBwZW5kaW5nIFBUUz0xMjAK
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
CitBcHBlbmRpbmcgUFRTPTE3NgorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKHZpZGVvLmN1
cnJlbnRUaW1lID09ICcxNzUnKSBPSworRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sg
MTIwLi4uMTMyLCAxNjIuLi4xNzcgXScpIE9LCitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUg
PT0gJzExNScpIE9LCitBcHBlbmRpbmcgUFRTPTEwOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xMTAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTExCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTExMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xMTMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE0CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTExNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE3CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTExOAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
MTkKK0VWRU5UKHVwZGF0ZWVuZCkKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDEw
OS4uLjEzMiwgMTYyLi4uMTc3IF0nKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0Lmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQt
ZXZpY3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYWQyOTc3MGNlMWIyMDgwOWRmYjlkODgwMWZmMTc3Yjhj
M2IwZGM3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNl
L2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0Lmh0bWwKQEAgLTAsMCArMSw4NCBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5tb2NrLW1lZGlhLXNvdXJjZTwv
dGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Im1vY2stbWVkaWEtc291cmNlLmpzIj48L3NjcmlwdD4K
KyAgICA8c2NyaXB0IHNyYz0iLi4vdmlkZW8tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlw
dD4KKyAgICB2YXIgc291cmNlOworICAgIHZhciBzb3VyY2VCdWZmZXI7CisgICAgdmFyIGluaXRT
ZWdtZW50OworICAgIHZhciBleGNlcHRpb247CisKKyAgICBmdW5jdGlvbiBidWZmZXJlZFJhbmdl
cygpIHsKKyAgICAgICAgdmFyIGJ1ZmZlcmVkUmFuZ2VzID0gJ1sgJzsKKyAgICAgICAgdmFyIHRp
bWVSYW5nZXMgPSBzb3VyY2VCdWZmZXIuYnVmZmVyZWQ7CisgICAgICAgIGZvciAodmFyIGkgPSAw
IDsgaSA8IHRpbWVSYW5nZXMubGVuZ3RoIDsgaSsrKSB7CisgICAgICAgICAgICBpZiAoaSkKKyAg
ICAgICAgICAgICAgICBidWZmZXJlZFJhbmdlcyArPSAnLCAnOworICAgICAgICAgICAgYnVmZmVy
ZWRSYW5nZXMgKz0gdGltZVJhbmdlcy5zdGFydChpKSArICcuLi4nICsgdGltZVJhbmdlcy5lbmQo
aSk7CisgICAgICAgIH0KKyAgICAgICAgYnVmZmVyZWRSYW5nZXMgKz0gJyBdJzsKKyAgICAgICAg
cmV0dXJuIGJ1ZmZlcmVkUmFuZ2VzOworICAgIH0KKworICAgIGFzeW5jIGZ1bmN0aW9uIGFwcGVu
ZFB0c1JhbmdlKGZpcnN0UHRzLCBsYXN0UHRzKSB7CisgICAgICAgIHZhciByZXN1bHRFeGNlcHRp
b24gPSBudWxsOworICAgICAgICBmb3IgKHZhciBwdHMgPSBmaXJzdFB0czsgcHRzIDw9IGxhc3RQ
dHM7IHB0cysrKSB7CisgICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICAgIGNvbnNvbGVX
cml0ZSgnQXBwZW5kaW5nIFBUUz0nK3B0cyk7CisgICAgICAgICAgICAgICAgc291cmNlQnVmZmVy
LmFwcGVuZEJ1ZmZlcihtYWtlQVNhbXBsZShwdHMsIHB0cywgMSwgMSwgMSwgU0FNUExFX0ZMQUcu
U1lOQywgMSkpOworICAgICAgICAgICAgICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlQnVmZmVyLCAn
dXBkYXRlZW5kJyk7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAgICAg
cmVzdWx0RXhjZXB0aW9uID0gZTsKKyAgICAgICAgICAgICAgICBzb3VyY2VCdWZmZXIuYWJvcnQo
KTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAg
ICAgICByZXR1cm4gcmVzdWx0RXhjZXB0aW9uOworICAgIH0KKworICAgIGlmICh3aW5kb3cuaW50
ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOwor
CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYygpID0+IHsKKyAgICAg
ICAgZmluZE1lZGlhRWxlbWVudCgpOworICAgICAgICBzb3VyY2UgPSBuZXcgTWVkaWFTb3VyY2Uo
KTsKKworICAgICAgICBjb25zdCB2aWRlb1NvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J3NvdXJjZScpOworICAgICAgICB2aWRlb1NvdXJjZS50eXBlID0gJ3ZpZGVvL21vY2s7IGNvZGVj
cz1tb2NrJzsKKyAgICAgICAgdmlkZW9Tb3VyY2Uuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChz
b3VyY2UpOworICAgICAgICB2aWRlby5hcHBlbmRDaGlsZCh2aWRlb1NvdXJjZSk7CisKKyAgICAg
ICAgYXdhaXQgd2FpdEZvcihzb3VyY2UsICdzb3VyY2VvcGVuJyk7CisgICAgICAgIHNvdXJjZUJ1
ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIik7
CisgICAgICAgIGluaXRTZWdtZW50ID0gbWFrZUFJbml0KC0xLCBbbWFrZUFUcmFjaygxLCAnbW9j
aycsIFRSQUNLX0tJTkQuVklERU8pXSk7CisgICAgICAgIHNvdXJjZUJ1ZmZlci5hcHBlbmRCdWZm
ZXIoaW5pdFNlZ21lbnQpOworICAgICAgICBhd2FpdCB3YWl0Rm9yKHNvdXJjZUJ1ZmZlciwgJ3Vw
ZGF0ZWVuZCcpOworCisgICAgICAgIHRlc3RFeHBlY3RlZCgnaXNOYU4oc291cmNlLmR1cmF0aW9u
KScsIHRydWUsICc9PScpOworCisgICAgICAgIC8vIFRoaXMgc2hvdWxkIGFsbG93IGJ1ZmVyaW5n
IHVwIHRvIDE3NyAoZW1waXJpY2FsbHkgdGVzdGVkKS4KKyAgICAgICAgaW50ZXJuYWxzLnNldHRp
bmdzLnNldE1heGltdW1Tb3VyY2VCdWZmZXJTaXplKDMwMDApOworCisgICAgICAgIGV4Y2VwdGlv
biA9IGF3YWl0IGFwcGVuZFB0c1JhbmdlKDEyMCwgMTc2KTsKKworICAgICAgICB2aWRlby5jdXJy
ZW50VGltZSA9IDE3NTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCd2aWRlby5jdXJyZW50VGltZScs
IDE3NSwgJz09Jyk7CisKKyAgICAgICAgdGVzdEV4cGVjdGVkKCdidWZmZXJlZFJhbmdlcygpJywg
J1sgMTIwLi4uMTMyLCAxNjIuLi4xNzcgXScsICc9PScpOworCisgICAgICAgIHZpZGVvLmN1cnJl
bnRUaW1lID0gMTE1OworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3ZpZGVvLmN1cnJlbnRUaW1lJywg
MTE1LCAnPT0nKTsKKyAgICAgICAgYXdhaXQgYXBwZW5kUHRzUmFuZ2UoMTA5LCAxMTkpOworICAg
ICAgICB0ZXN0RXhwZWN0ZWQoJ2J1ZmZlcmVkUmFuZ2VzKCknLCAnWyAxMDkuLi4xMzIsIDE2Mi4u
LjE3NyBdJywgJz09Jyk7CisgICAgICAgIGVuZFRlc3QoKTsKKyAgICAgfSk7CisgICAgPC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICBUaGlzIHRlc3RzIHJld2luZCBzZWVrcyBpbiBhIGxp
dmUgc3RyZWFtLiBUaGUgc2FtcGxlIGV2aWN0aW9uIGFsZ29yaXRobSBzaG91bGQgYXR0ZW1wdCB0
byByZW1vdmUKKyAgICBzb21lIHNhbXBsZXMgd2l0aG91dCBnb2luZyBpbnRvIGFuIGluZmluaXRl
IGxvb3AuCisgICAgPHZpZGVvPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZv
cmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5n
ZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKaW5kZXggYThhNjE3ZTRlOWI5OWIwZmE0
MjUwMDE5NzA2NWZlMGQ4ZDNlOTAyNi4uM2M2ODk0OGJkYjZjY2NjN2I0MzczY2E5YzQ0MWZhZTFi
N2EyZDA1NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlh
LXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2Ut
YXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApA
QCAtMTE1LDkgKzExNSw4IEBAIEVWRU5UKHVwZGF0ZWVuZCkKIEFwcGVuZGluZyBQVFM9MTc1CiBF
VkVOVCh1cGRhdGVlbmQpCiBBcHBlbmRpbmcgUFRTPTE3NgotRVZFTlQodXBkYXRlZW5kKQotRVhQ
RUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJl
ZW4gZXhjZWVkZWQuJyksIE9CU0VSVkVEICdudWxsJyBGQUlMCi1FWFBFQ1RFRCAoYnVmZmVyZWRS
YW5nZXMoKSA9PSAnWyAxMjAuLi4xNzYgXScpLCBPQlNFUlZFRCAnWyAxMjAuLi4xNzcgXScgRkFJ
TAorRVhQRUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEg
aGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdb
IDEyMC4uLjE3NiBdJykgT0sKIEVYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTE1Jykg
T0sKIEFwcGVuZGluZyBQVFM9MTE1CiBFVkVOVCh1cGRhdGVlbmQpCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFz
dC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEt
c291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhj
ZWVkZWQuaHRtbAppbmRleCA1YTBkNTMyOTRiNGI2ZjQzYjdhMjg2Y2MzMzQ4MmViZjdmZGZhZDA0
Li4xMjM0MmYyNTkxOTg3MjE1YjBmYWMxNzEwMTk1OWMxODhlOGY4YzRhIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUt
bGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1
b3RhLWV4Y2VlZGVkLmh0bWwKQEAgLTg1LDQgKzg1LDQgQEAKIDxib2R5PgogICAgIDx2aWRlbz48
L3ZpZGVvPgogPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1l
ZGlhLXNvdXJjZS5qcyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1lZGlh
LXNvdXJjZS5qcwppbmRleCAwZWQ5MWEzMjA4MTQ4OTdmZDliODMwYWI3ZTdhNzdjMzI4NDJhYzAz
Li43ZWEzNzJkZjRkNTVmZjZkZDRmMmE0ZGM5YTE5NDRhYTQ1OTI1ZjM4IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21vY2stbWVkaWEtc291cmNlLmpzCkBAIC03
NSwxMSArNzUsMTMgQEAgZnVuY3Rpb24gbWFrZUFJbml0KGR1cmF0aW9uLCB0cmFja3MpIHsKICAg
ICB2YXIgYXJyYXkgPSBuZXcgVWludDhBcnJheShidWZmZXIpOwogICAgIGFycmF5LnNldChzdHJp
bmdUb0FycmF5KCdpbml0JykpOwogCi0gICAgdmFyIHZpZXcgPSBuZXcgRGF0YVZpZXcoYnVmZmVy
KTsKLSAgICB2YXIgdGltZVNjYWxlID0gMTAwMDsKLSAgICB2aWV3LnNldFVpbnQzMig0LCBieXRl
TGVuZ3RoLCB0cnVlKTsKLSAgICB2aWV3LnNldEludDMyKDgsIGR1cmF0aW9uICogdGltZVNjYWxl
LCB0cnVlKTsKLSAgICB2aWV3LnNldEludDMyKDEyLCB0aW1lU2NhbGUsIHRydWUpOworICAgIGlm
ICghaXNOYU4oZHVyYXRpb24pKSB7CisgICAgICAgIHZhciB2aWV3ID0gbmV3IERhdGFWaWV3KGJ1
ZmZlcik7CisgICAgICAgIHZhciB0aW1lU2NhbGUgPSAxMDAwOworICAgICAgICB2aWV3LnNldFVp
bnQzMig0LCBieXRlTGVuZ3RoLCB0cnVlKTsKKyAgICAgICAgdmlldy5zZXRJbnQzMig4LCBkdXJh
dGlvbiAqIHRpbWVTY2FsZSwgdHJ1ZSk7CisgICAgICAgIHZpZXcuc2V0SW50MzIoMTIsIHRpbWVT
Y2FsZSwgdHJ1ZSk7CisgICAgfQogCiAgICAgdmFyIG9mZnNldCA9IDE2OwogICAgIHRyYWNrcy5m
b3JFYWNoKGZ1bmN0aW9uKHRyYWNrKXsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2dsaWIvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3Qt
cmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ2xpYi9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFz
dC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDNjNjg5NDhiZGI2Y2NjYzdiNDM3M2NhOWM0NDFmYWUxYjdhMmQwNTQuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ2xpYi9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZv
cmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSwxMzIgKzAsMCBAQAotCi1FVkVOVChzb3VyY2VvcGVuKQotRVZFTlQodXBkYXRlZW5k
KQotRVhQRUNURUQgKHZpZGVvLmN1cnJlbnRUaW1lID09ICcxMjAnKSBPSwotQXBwZW5kaW5nIFBU
Uz0xMjAKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTIxCi1FVkVOVCh1cGRhdGVl
bmQpCi1BcHBlbmRpbmcgUFRTPTEyMgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0x
MjMKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTI0Ci1FVkVOVCh1cGRhdGVlbmQp
Ci1BcHBlbmRpbmcgUFRTPTEyNQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjYK
LUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTI3Ci1FVkVOVCh1cGRhdGVlbmQpCi1B
cHBlbmRpbmcgUFRTPTEyOAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjkKLUVW
RU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTMwCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBl
bmRpbmcgUFRTPTEzMQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzIKLUVWRU5U
KHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTMzCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRp
bmcgUFRTPTEzNAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzUKLUVWRU5UKHVw
ZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTM2Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcg
UFRTPTEzNwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzgKLUVWRU5UKHVwZGF0
ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTM5Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRT
PTE0MAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDEKLUVWRU5UKHVwZGF0ZWVu
ZCkKLUFwcGVuZGluZyBQVFM9MTQyCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0
MwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDQKLUVWRU5UKHVwZGF0ZWVuZCkK
LUFwcGVuZGluZyBQVFM9MTQ1Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0Ngot
RVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDcKLUVWRU5UKHVwZGF0ZWVuZCkKLUFw
cGVuZGluZyBQVFM9MTQ4Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0OQotRVZF
TlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNTAKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVu
ZGluZyBQVFM9MTUxCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1MgotRVZFTlQo
dXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNTMKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGlu
ZyBQVFM9MTU0Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1NQotRVZFTlQodXBk
YXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNTYKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQ
VFM9MTU3Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1OAotRVZFTlQodXBkYXRl
ZW5kKQotQXBwZW5kaW5nIFBUUz0xNTkKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9
MTYwCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2MQotRVZFTlQodXBkYXRlZW5k
KQotQXBwZW5kaW5nIFBUUz0xNjIKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTYz
Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2NAotRVZFTlQodXBkYXRlZW5kKQot
QXBwZW5kaW5nIFBUUz0xNjUKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY2Ci1F
VkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2NwotRVZFTlQodXBkYXRlZW5kKQotQXBw
ZW5kaW5nIFBUUz0xNjgKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY5Ci1FVkVO
VCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE3MAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5k
aW5nIFBUUz0xNzEKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTcyCi1FVkVOVCh1
cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE3MwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5n
IFBUUz0xNzQKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTc1Ci1FVkVOVCh1cGRh
dGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE3NgotRVhQRUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFF
eGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKLUVYUEVDVEVE
IChidWZmZXJlZFJhbmdlcygpID09ICdbIDEyMC4uLjE3NiBdJykgT0sKLUVYUEVDVEVEICh2aWRl
by5jdXJyZW50VGltZSA9PSAnMTE1JykgT0sKLUFwcGVuZGluZyBQVFM9MTE1Ci1FVkVOVCh1cGRh
dGVlbmQpCi1BcHBlbmRpbmcgUFRTPTExNgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBU
Uz0xMTcKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTE4Ci1FVkVOVCh1cGRhdGVl
bmQpCi1FWFBFQ1RFRCAoZXhjZXB0aW9uICE9ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90
YSBoYXMgYmVlbiBleGNlZWRlZC4nKSBPSwotRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0g
J1sgMTE1Li4uMTE5LCAxMjAuLi4xNzAgXScpIE9LCi1FTkQgT0YgVEVTVAotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412535</attachid>
            <date>2020-10-28 09:27:42 -0700</date>
            <delta_ts>2020-10-29 07:46:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218228-20201028092740.patch</filename>
            <type>text/plain</type>
            <size>15136</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M1N2IzZTZlMDJmMDcy
MzEwMDQzNTdmMjg2ZGVkNGI0YjgyNmQ4Zi4uYjFjMmZlZGQ5NDFjNjdhNGI3NTM0OTA1MzU3NDA3
ZjBlNmJlMTgxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTEwLTI3ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXSBJbmZp
bml0ZSBsb29wIGluIHNhbXBsZSBldmljdGlvbiB3aGVuIGR1cmF0aW9uIGlzIE5hTgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MjI4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgaW5maW5pdGUg
bG9vcCBpbiBldmljdENvZGVkRnJhbWVzIGZvciBsaXZlIHN0cmVhbXMKKworICAgICAgICBXaGVu
IHBsYXlpbmcgbGl2ZSBzdHJlYW1zIHRoZSBNZWRpYVNvdXJjZSBET00gZHVyYXRpb24gYXR0cmli
dXRlIGhhcyBubyBtZWFuaW5nCisgICAgICAgIGFuZCB3b3VsZCB0aHVzIGJlIHNldCBhcyAraW5m
LiBXaGVuIHNlZWtzIGFyZSB0cmlnZ2VyZWQgdG8gcG9zaXRpb25zIHByaW9yIHRvCisgICAgICAg
IHRoZSBjdXJyZW50IHBsYXliYWNrIHBvc2l0aW9uIHRoZSBTb3VyY2VCdWZmZXIgbWlnaHQgYXR0
ZW1wdCB0byBmcmVlIHNvbWUgc3BhY2UKKyAgICAgICAgaW4gb3JkZXIgdG8ga2VlcCB0aGUgYW1v
dW50IG9mIG1lbW9yeSB1c2VkIHVuZGVyIGNvbnRyb2wuIEl0IHByb2NlZWRzIGluIDIKKyAgICAg
ICAgc3RlcHM6CisKKyAgICAgICAgMS4gQXR0ZW1wdCB0byBmcmVlIHNwYWNlIHJlcHJlc2VudGVk
IGJ5IGJ1ZmZlcmVkIHJhbmdlIGZyb20gbWVkaWEgc3RhcnQgdXAgdW50aWwKKyAgICAgICAgICAg
Y3VycmVudCBwbGF5YmFjayBwb3NpdGlvbiAtIDMwIHNlY29uZHMuCisgICAgICAgIDIuIElmIHN0
ZXAgMSBkaWRuJ3QgZnJlZSBlbm91Z2ggbWVtb3J5LCBhdHRlbXB0IHRvIHJlbGVhc2UgbWVtb3J5
IHJlcHJlc2VudGVkIGJ5CisgICAgICAgICAgIGJ1ZmZlcmVkIHJhbmdlcyBzdGFydGluZyBmcm9t
IGN1cnJlbnQgcGxheWJhY2sgcG9zaXRpb24gKyAzMCBzZWNvbmRzIHVudGlsIG1lZGlhCisgICAg
ICAgICAgIGR1cmF0aW9uLgorCisgICAgICAgIFN0ZXAgMiBoZXJlIHdhc24ndCB0YWtpbmcgaW50
byBhY2NvdW50IHRoZSBjYXNlIHdoZXJlIE1lZGlhU291cmNlLmR1cmF0aW9uIGlzCisgICAgICAg
IGFjdHVhbGx5IGludmFsaWQsIGFuZCB0aHVzIHdhcyBlbnRlcmluZyBhbiBpbmZpbml0ZSBsb29w
LgorCisgICAgICAgIFRlc3Q6IG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFu
ZC1ldmljdC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMp
OgorCiAyMDIwLTEwLTI4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4K
IAogICAgICAgICBbR1N0cmVhbWVyXSBNdWx0aS1jaGFubmVsICg+Mikgc3VwcG9ydCBmb3IgdGhl
IEF1ZGlvRmlsZVJlYWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNv
dXJjZS9Tb3VyY2VCdWZmZXIuY3BwCmluZGV4IDllZTg1YjExNDM2NWU4ZjMzNzY0MDIzYWM0ZTFk
NzBiN2M3NzcwOGIuLjlmMzBiNTM5MjI4MjIwNDg3YTU5NGFiZmRlNmM2NTVhYTVhOTk4ZGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHAKQEAgLTk5Niw2ICs5OTYsMTMgQEAgdm9pZCBTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRG
cmFtZXMoc2l6ZV90IG5ld0RhdGFTaXplKQogICAgIE1lZGlhVGltZSBtaW5pbXVtUmFuZ2VTdGFy
dCA9IGN1cnJlbnRUaW1lICsgdGhpcnR5U2Vjb25kczsKIAogICAgIHJhbmdlRW5kID0gbV9zb3Vy
Y2UtPmR1cmF0aW9uKCk7CisgICAgaWYgKHJhbmdlRW5kLmlzSW52YWxpZCgpIHx8IHJhbmdlRW5k
LmlzUG9zaXRpdmVJbmZpbml0ZSgpIHx8IHJhbmdlRW5kLmlzSW5kZWZpbml0ZSgpKSB7CisgICAg
ICAgIHJhbmdlRW5kID0gYnVmZmVyZWQubWF4aW11bUJ1ZmZlcmVkVGltZSgpOworI2lmICFSRUxF
QVNFX0xPR19ESVNBQkxFRAorICAgICAgICBERUJVR19MT0coTE9HSURFTlRJRklFUiwgIk1lZGlh
U291cmNlIGR1cmF0aW9uIGlzIE5hTiwgdXNpbmcgbWF4aW11bSBidWZmZXJlZCB0aW1lOiAiLCBy
YW5nZUVuZCk7CisjZW5kaWYKKyAgICB9CisKICAgICByYW5nZVN0YXJ0ID0gcmFuZ2VFbmQgLSB0
aGlydHlTZWNvbmRzOwogICAgIHdoaWxlIChyYW5nZVN0YXJ0ID4gbWluaW11bVJhbmdlU3RhcnQp
IHsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IDFjYzk4ODIzMzZmYWNmZTI3YTNhM2E5NDZmM2JiNzJkM2E2NDE1MGIuLjg3
MDUxNjhlYWU2MjBhZDI1YTYzM2MwZGFmMTQxZDg3YjZlZGZlZTEgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NSBAQAorMjAyMC0xMC0yNyAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW01TRV0gSW5maW5pdGUgbG9vcCBpbiBzYW1wbGUgZXZpY3Rpb24gd2hlbiBk
dXJhdGlvbiBpcyBOYU4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODIyOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3
aW5kLXNlZWstYW5kLWV2aWN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNv
dXJjZS9tb2NrLW1lZGlhLXNvdXJjZS5qczoKKyAgICAgICAgKG1ha2VBSW5pdCk6CisKIDIwMjAt
MTAtMjggIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtHU3RyZWFtZXJdIE11bHRpLWNoYW5uZWwgKD4yKSBzdXBwb3J0IGZvciB0aGUgQXVkaW9GaWxl
UmVhZGVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1y
ZXdpbmQtc2Vlay1hbmQtZXZpY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVk
aWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xYzFkY2FmMmI2NzY0YTQ2OWU0MmU0OGYyMTNjYWJiYWU5YjcxMDg0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWst
YW5kLWV2aWN0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0NiBAQAorVGhpcyB0ZXN0cyByZXdp
bmQgc2Vla3MgaW4gYSBsaXZlIHN0cmVhbS4gVGhlIHNhbXBsZSBldmljdGlvbiBhbGdvcml0aG0g
c2hvdWxkIGF0dGVtcHQgdG8gcmVtb3ZlIHNvbWUgc2FtcGxlcyB3aXRob3V0IGdvaW5nIGludG8g
YW4gaW5maW5pdGUgbG9vcC4KK0VWRU5UKHNvdXJjZW9wZW4pCitFVkVOVCh1cGRhdGVlbmQpCitF
WFBFQ1RFRCAoaXNOYU4oc291cmNlLmR1cmF0aW9uKSA9PSAndHJ1ZScpIE9LCitBcHBlbmRpbmcg
UFRTPTEyMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjEKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTEyMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjQKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTI1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEy
NgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjcKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTI4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyOQor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzAKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTMxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMgorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTM0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNQorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTM3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzOAorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTQwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MQorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNDIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTQzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NAorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNDUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ2
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NworRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNDgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ5CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MAorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNTEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUyCitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNTQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU1CitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNTcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU4CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1OQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNjAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYxCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE2MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NjMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY0CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE2NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjYK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY3CitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE2OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjkKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE3MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzIKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTczCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTE3NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzUKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc2CitFVkVOVCh1cGRhdGVlbmQpCitFWFBFQ1RFRCAo
dmlkZW8uY3VycmVudFRpbWUgPT0gJzE3NScpIE9LCitFWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMo
KSA9PSAnWyAxMjAuLi4xMzIsIDE2Mi4uLjE3NyBdJykgT0sKK0VYUEVDVEVEICh2aWRlby5jdXJy
ZW50VGltZSA9PSAnMTE1JykgT0sKK0FwcGVuZGluZyBQVFM9MTA5CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTExMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTEK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTEyCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTExMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTQKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTExNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTcKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTExOQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkg
PT0gJ1sgMTA5Li4uMTMyLCAxNjIuLi4xNzcgXScpIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQt
ZXZpY3QuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1z
ZWVrLWFuZC1ldmljdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBhZDI5NzcwY2UxYjIwODA5ZGZiOWQ4ODAx
ZmYxNzdiOGMzYjBkYzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRp
YS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3QuaHRtbApAQCAtMCwwICsxLDg0IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPm1vY2stbWVkaWEt
c291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9jay1tZWRpYS1zb3VyY2UuanMiPjwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10ZXN0LmpzIj48L3NjcmlwdD4KKyAg
ICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFyIHNvdXJjZUJ1ZmZlcjsKKyAgICB2
YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIGV4Y2VwdGlvbjsKKworICAgIGZ1bmN0aW9uIGJ1ZmZl
cmVkUmFuZ2VzKCkgeworICAgICAgICB2YXIgYnVmZmVyZWRSYW5nZXMgPSAnWyAnOworICAgICAg
ICB2YXIgdGltZVJhbmdlcyA9IHNvdXJjZUJ1ZmZlci5idWZmZXJlZDsKKyAgICAgICAgZm9yICh2
YXIgaSA9IDAgOyBpIDwgdGltZVJhbmdlcy5sZW5ndGggOyBpKyspIHsKKyAgICAgICAgICAgIGlm
IChpKQorICAgICAgICAgICAgICAgIGJ1ZmZlcmVkUmFuZ2VzICs9ICcsICc7CisgICAgICAgICAg
ICBidWZmZXJlZFJhbmdlcyArPSB0aW1lUmFuZ2VzLnN0YXJ0KGkpICsgJy4uLicgKyB0aW1lUmFu
Z2VzLmVuZChpKTsKKyAgICAgICAgfQorICAgICAgICBidWZmZXJlZFJhbmdlcyArPSAnIF0nOwor
ICAgICAgICByZXR1cm4gYnVmZmVyZWRSYW5nZXM7CisgICAgfQorCisgICAgYXN5bmMgZnVuY3Rp
b24gYXBwZW5kUHRzUmFuZ2UoZmlyc3RQdHMsIGxhc3RQdHMpIHsKKyAgICAgICAgdmFyIHJlc3Vs
dEV4Y2VwdGlvbiA9IG51bGw7CisgICAgICAgIGZvciAodmFyIHB0cyA9IGZpcnN0UHRzOyBwdHMg
PD0gbGFzdFB0czsgcHRzKyspIHsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAg
Y29uc29sZVdyaXRlKCdBcHBlbmRpbmcgUFRTPScrcHRzKTsKKyAgICAgICAgICAgICAgICBzb3Vy
Y2VCdWZmZXIuYXBwZW5kQnVmZmVyKG1ha2VBU2FtcGxlKHB0cywgcHRzLCAxLCAxLCAxLCBTQU1Q
TEVfRkxBRy5TWU5DLCAxKSk7CisgICAgICAgICAgICAgICAgYXdhaXQgd2FpdEZvcihzb3VyY2VC
dWZmZXIsICd1cGRhdGVlbmQnKTsKKyAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAg
ICAgICAgICByZXN1bHRFeGNlcHRpb24gPSBlOworICAgICAgICAgICAgICAgIHNvdXJjZUJ1ZmZl
ci5hYm9ydCgpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgICAgIHJldHVybiByZXN1bHRFeGNlcHRpb247CisgICAgfQorCisgICAgaWYgKHdp
bmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5pbml0aWFsaXplTW9ja01lZGlhU291
cmNlKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGFzeW5jKCkgPT4g
eworICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisgICAgICAgIHNvdXJjZSA9IG5ldyBNZWRp
YVNvdXJjZSgpOworCisgICAgICAgIGNvbnN0IHZpZGVvU291cmNlID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291cmNlLnR5cGUgPSAndmlkZW8vbW9j
azsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJjZS5zcmMgPSBVUkwuY3JlYXRlT2Jq
ZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVuZENoaWxkKHZpZGVvU291cmNlKTsK
KworICAgICAgICBhd2FpdCB3YWl0Rm9yKHNvdXJjZSwgJ3NvdXJjZW9wZW4nKTsKKyAgICAgICAg
c291cmNlQnVmZmVyID0gc291cmNlLmFkZFNvdXJjZUJ1ZmZlcigidmlkZW8vbW9jazsgY29kZWNz
PW1vY2siKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBtYWtlQUluaXQoLTEsIFttYWtlQVRyYWNr
KDEsICdtb2NrJywgVFJBQ0tfS0lORC5WSURFTyldKTsKKyAgICAgICAgc291cmNlQnVmZmVyLmFw
cGVuZEJ1ZmZlcihpbml0U2VnbWVudCk7CisgICAgICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlQnVm
ZmVyLCAndXBkYXRlZW5kJyk7CisKKyAgICAgICAgdGVzdEV4cGVjdGVkKCdpc05hTihzb3VyY2Uu
ZHVyYXRpb24pJywgdHJ1ZSwgJz09Jyk7CisKKyAgICAgICAgLy8gVGhpcyBzaG91bGQgYWxsb3cg
YnVmZXJpbmcgdXAgdG8gMTc3IChlbXBpcmljYWxseSB0ZXN0ZWQpLgorICAgICAgICBpbnRlcm5h
bHMuc2V0dGluZ3Muc2V0TWF4aW11bVNvdXJjZUJ1ZmZlclNpemUoMzAwMCk7CisKKyAgICAgICAg
ZXhjZXB0aW9uID0gYXdhaXQgYXBwZW5kUHRzUmFuZ2UoMTIwLCAxNzYpOworCisgICAgICAgIHZp
ZGVvLmN1cnJlbnRUaW1lID0gMTc1OworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3ZpZGVvLmN1cnJl
bnRUaW1lJywgMTc1LCAnPT0nKTsKKworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ2J1ZmZlcmVkUmFu
Z2VzKCknLCAnWyAxMjAuLi4xMzIsIDE2Mi4uLjE3NyBdJywgJz09Jyk7CisKKyAgICAgICAgdmlk
ZW8uY3VycmVudFRpbWUgPSAxMTU7CisgICAgICAgIHRlc3RFeHBlY3RlZCgndmlkZW8uY3VycmVu
dFRpbWUnLCAxMTUsICc9PScpOworICAgICAgICBhd2FpdCBhcHBlbmRQdHNSYW5nZSgxMDksIDEx
OSk7CisgICAgICAgIHRlc3RFeHBlY3RlZCgnYnVmZmVyZWRSYW5nZXMoKScsICdbIDEwOS4uLjEz
MiwgMTYyLi4uMTc3IF0nLCAnPT0nKTsKKyAgICAgICAgZW5kVGVzdCgpOworICAgICB9KTsKKyAg
ICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIFRoaXMgdGVzdHMgcmV3aW5kIHNlZWtz
IGluIGEgbGl2ZSBzdHJlYW0uIFRoZSBzYW1wbGUgZXZpY3Rpb24gYWxnb3JpdGhtIHNob3VsZCBh
dHRlbXB0IHRvIHJlbW92ZQorICAgIHNvbWUgc2FtcGxlcyB3aXRob3V0IGdvaW5nIGludG8gYW4g
aW5maW5pdGUgbG9vcC4KKyAgICA8dmlkZW8+PC92aWRlbz4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBw
ZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1s
YXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dAppbmRleCBhOGE2MTdlNGU5
Yjk5YjBmYTQyNTAwMTk3MDY1ZmUwZDhkM2U5MDI2Li4zYzY4OTQ4YmRiNmNjY2M3YjQzNzNjYTlj
NDQxZmFlMWI3YTJkMDU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3Vy
Y2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRl
ZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlh
LXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0
ZWQudHh0CkBAIC0xMTUsOSArMTE1LDggQEAgRVZFTlQodXBkYXRlZW5kKQogQXBwZW5kaW5nIFBU
Uz0xNzUKIEVWRU5UKHVwZGF0ZWVuZCkKIEFwcGVuZGluZyBQVFM9MTc2Ci1FVkVOVCh1cGRhdGVl
bmQpCi1FWFBFQ1RFRCAoZXhjZXB0aW9uID09ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90
YSBoYXMgYmVlbiBleGNlZWRlZC4nKSwgT0JTRVJWRUQgJ251bGwnIEZBSUwKLUVYUEVDVEVEIChi
dWZmZXJlZFJhbmdlcygpID09ICdbIDEyMC4uLjE3NiBdJyksIE9CU0VSVkVEICdbIDEyMC4uLjE3
NyBdJyBGQUlMCitFWFBFQ1RFRCAoZXhjZXB0aW9uID09ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRo
ZSBxdW90YSBoYXMgYmVlbiBleGNlZWRlZC4nKSBPSworRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2Vz
KCkgPT0gJ1sgMTIwLi4uMTc2IF0nKSBPSwogRVhQRUNURUQgKHZpZGVvLmN1cnJlbnRUaW1lID09
ICcxMTUnKSBPSwogQXBwZW5kaW5nIFBUUz0xMTUKIEVWRU5UKHVwZGF0ZWVuZCkKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1lZGlhLXNvdXJjZS5qcyBi
L0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1lZGlhLXNvdXJjZS5qcwppbmRl
eCAwZWQ5MWEzMjA4MTQ4OTdmZDliODMwYWI3ZTdhNzdjMzI4NDJhYzAzLi43ZWEzNzJkZjRkNTVm
ZjZkZDRmMmE0ZGM5YTE5NDRhYTQ1OTI1ZjM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRp
YS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMKKysrIGIvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtc291cmNlL21vY2stbWVkaWEtc291cmNlLmpzCkBAIC03NSwxMSArNzUsMTMgQEAg
ZnVuY3Rpb24gbWFrZUFJbml0KGR1cmF0aW9uLCB0cmFja3MpIHsKICAgICB2YXIgYXJyYXkgPSBu
ZXcgVWludDhBcnJheShidWZmZXIpOwogICAgIGFycmF5LnNldChzdHJpbmdUb0FycmF5KCdpbml0
JykpOwogCi0gICAgdmFyIHZpZXcgPSBuZXcgRGF0YVZpZXcoYnVmZmVyKTsKLSAgICB2YXIgdGlt
ZVNjYWxlID0gMTAwMDsKLSAgICB2aWV3LnNldFVpbnQzMig0LCBieXRlTGVuZ3RoLCB0cnVlKTsK
LSAgICB2aWV3LnNldEludDMyKDgsIGR1cmF0aW9uICogdGltZVNjYWxlLCB0cnVlKTsKLSAgICB2
aWV3LnNldEludDMyKDEyLCB0aW1lU2NhbGUsIHRydWUpOworICAgIGlmICghaXNOYU4oZHVyYXRp
b24pKSB7CisgICAgICAgIHZhciB2aWV3ID0gbmV3IERhdGFWaWV3KGJ1ZmZlcik7CisgICAgICAg
IHZhciB0aW1lU2NhbGUgPSAxMDAwOworICAgICAgICB2aWV3LnNldFVpbnQzMig0LCBieXRlTGVu
Z3RoLCB0cnVlKTsKKyAgICAgICAgdmlldy5zZXRJbnQzMig4LCBkdXJhdGlvbiAqIHRpbWVTY2Fs
ZSwgdHJ1ZSk7CisgICAgICAgIHZpZXcuc2V0SW50MzIoMTIsIHRpbWVTY2FsZSwgdHJ1ZSk7Cisg
ICAgfQogCiAgICAgdmFyIG9mZnNldCA9IDE2OwogICAgIHRyYWNrcy5mb3JFYWNoKGZ1bmN0aW9u
KHRyYWNrKXsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvbWVkaWEvbWVk
aWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEt
ZXhjZWVkZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9tZWRpYS9t
ZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90
YS1leGNlZWRlZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNj
Njg5NDhiZGI2Y2NjYzdiNDM3M2NhOWM0NDFmYWUxYjdhMmQwNTQuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1u
by1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMzIgKzAs
MCBAQAotCi1FVkVOVChzb3VyY2VvcGVuKQotRVZFTlQodXBkYXRlZW5kKQotRVhQRUNURUQgKHZp
ZGVvLmN1cnJlbnRUaW1lID09ICcxMjAnKSBPSwotQXBwZW5kaW5nIFBUUz0xMjAKLUVWRU5UKHVw
ZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTIxCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcg
UFRTPTEyMgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjMKLUVWRU5UKHVwZGF0
ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTI0Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRT
PTEyNQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjYKLUVWRU5UKHVwZGF0ZWVu
ZCkKLUFwcGVuZGluZyBQVFM9MTI3Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEy
OAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjkKLUVWRU5UKHVwZGF0ZWVuZCkK
LUFwcGVuZGluZyBQVFM9MTMwCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzMQot
RVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzIKLUVWRU5UKHVwZGF0ZWVuZCkKLUFw
cGVuZGluZyBQVFM9MTMzCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzNAotRVZF
TlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzUKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVu
ZGluZyBQVFM9MTM2Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzNwotRVZFTlQo
dXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzgKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGlu
ZyBQVFM9MTM5Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0MAotRVZFTlQodXBk
YXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDEKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQ
VFM9MTQyCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0MwotRVZFTlQodXBkYXRl
ZW5kKQotQXBwZW5kaW5nIFBUUz0xNDQKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9
MTQ1Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0NgotRVZFTlQodXBkYXRlZW5k
KQotQXBwZW5kaW5nIFBUUz0xNDcKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTQ4
Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0OQotRVZFTlQodXBkYXRlZW5kKQot
QXBwZW5kaW5nIFBUUz0xNTAKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTUxCi1F
VkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1MgotRVZFTlQodXBkYXRlZW5kKQotQXBw
ZW5kaW5nIFBUUz0xNTMKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTU0Ci1FVkVO
VCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1NQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5k
aW5nIFBUUz0xNTYKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTU3Ci1FVkVOVCh1
cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1OAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5n
IFBUUz0xNTkKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTYwCi1FVkVOVCh1cGRh
dGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2MQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBU
Uz0xNjIKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTYzCi1FVkVOVCh1cGRhdGVl
bmQpCi1BcHBlbmRpbmcgUFRTPTE2NAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0x
NjUKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY2Ci1FVkVOVCh1cGRhdGVlbmQp
Ci1BcHBlbmRpbmcgUFRTPTE2NwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNjgK
LUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY5Ci1FVkVOVCh1cGRhdGVlbmQpCi1B
cHBlbmRpbmcgUFRTPTE3MAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNzEKLUVW
RU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTcyCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBl
bmRpbmcgUFRTPTE3MwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNzQKLUVWRU5U
KHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTc1Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRp
bmcgUFRTPTE3NgotRVhQRUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRlZEVycm9yOiBU
aGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKLUVYUEVDVEVEIChidWZmZXJlZFJhbmdl
cygpID09ICdbIDEyMC4uLjE3NiBdJykgT0sKLUVYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9
PSAnMTE1JykgT0sKLUFwcGVuZGluZyBQVFM9MTE1Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRp
bmcgUFRTPTExNgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMTcKLUVWRU5UKHVw
ZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTE4Ci1FVkVOVCh1cGRhdGVlbmQpCi1FWFBFQ1RFRCAo
ZXhjZXB0aW9uICE9ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMgYmVlbiBleGNl
ZWRlZC4nKSBPSwotRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTE1Li4uMTE5LCAx
MjAuLi4xNzAgXScpIE9LCi1FTkQgT0YgVEVTVAotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412646</attachid>
            <date>2020-10-29 07:47:03 -0700</date>
            <delta_ts>2020-10-30 04:37:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218228-20201029074700.patch</filename>
            <type>text/plain</type>
            <size>18371</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MTQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGM2NzVmNGNkMzM3ZDVk
MDg1OTQ4ODQxOGNiMzNkZWM5ZjMxMzM3Ni4uNjIxMjdhMTA1MjQ3ZDY1ODNjZjE3ZmEyZjA0NWJj
NDcxNDVlNGRiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTEwLTI3ICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXSBJbmZp
bml0ZSBsb29wIGluIHNhbXBsZSBldmljdGlvbiB3aGVuIGR1cmF0aW9uIGlzIE5hTgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MjI4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgaW5maW5pdGUg
bG9vcCBpbiBldmljdENvZGVkRnJhbWVzIGZvciBsaXZlIHN0cmVhbXMKKworICAgICAgICBXaGVu
IHBsYXlpbmcgbGl2ZSBzdHJlYW1zIHRoZSBNZWRpYVNvdXJjZSBET00gZHVyYXRpb24gYXR0cmli
dXRlIGhhcyBubyBtZWFuaW5nCisgICAgICAgIGFuZCB3b3VsZCB0aHVzIGJlIHNldCBhcyAraW5m
LiBXaGVuIHNlZWtzIGFyZSB0cmlnZ2VyZWQgdG8gcG9zaXRpb25zIHByaW9yIHRvCisgICAgICAg
IHRoZSBjdXJyZW50IHBsYXliYWNrIHBvc2l0aW9uIHRoZSBTb3VyY2VCdWZmZXIgbWlnaHQgYXR0
ZW1wdCB0byBmcmVlIHNvbWUgc3BhY2UKKyAgICAgICAgaW4gb3JkZXIgdG8ga2VlcCB0aGUgYW1v
dW50IG9mIG1lbW9yeSB1c2VkIHVuZGVyIGNvbnRyb2wuIEl0IHByb2NlZWRzIGluIDIKKyAgICAg
ICAgc3RlcHM6CisKKyAgICAgICAgMS4gQXR0ZW1wdCB0byBmcmVlIHNwYWNlIHJlcHJlc2VudGVk
IGJ5IGJ1ZmZlcmVkIHJhbmdlIGZyb20gbWVkaWEgc3RhcnQgdXAgdW50aWwKKyAgICAgICAgICAg
Y3VycmVudCBwbGF5YmFjayBwb3NpdGlvbiAtIDMwIHNlY29uZHMuCisgICAgICAgIDIuIElmIHN0
ZXAgMSBkaWRuJ3QgZnJlZSBlbm91Z2ggbWVtb3J5LCBhdHRlbXB0IHRvIHJlbGVhc2UgbWVtb3J5
IHJlcHJlc2VudGVkIGJ5CisgICAgICAgICAgIGJ1ZmZlcmVkIHJhbmdlcyBzdGFydGluZyBmcm9t
IGN1cnJlbnQgcGxheWJhY2sgcG9zaXRpb24gKyAzMCBzZWNvbmRzIHVudGlsIG1lZGlhCisgICAg
ICAgICAgIGR1cmF0aW9uLgorCisgICAgICAgIFN0ZXAgMiBoZXJlIHdhc24ndCB0YWtpbmcgaW50
byBhY2NvdW50IHRoZSBjYXNlIHdoZXJlIE1lZGlhU291cmNlLmR1cmF0aW9uIGlzCisgICAgICAg
IGFjdHVhbGx5IGludmFsaWQsIGFuZCB0aHVzIHdhcyBlbnRlcmluZyBhbiBpbmZpbml0ZSBsb29w
LgorCisgICAgICAgIFRlc3Q6IG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFu
ZC1ldmljdC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXI6OmV2aWN0Q29kZWRGcmFtZXMp
OgorCiAyMDIwLTEwLTI5ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gUmVuZGVyQmxvY2tGbG93Ojpwb3NpdGlvbkZvclBvaW50
V2l0aElubGluZUNoaWxkcmVuIHNob3VsZCB1c2UgaXRlcmF0b3IKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVyLmNwcAppbmRleCA0MjkyNjhk
NzYxNzVlOTMyMDBlYzFmN2YxZDM0ZWQwMTU3MTUxOWMxLi41ZjdjNDE2ODFhNTllZThiNTljMjJh
ZGQzODQ0ZDQ2OWY1YWRlMjI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuY3BwCkBAIC05OTYsNiArOTk2LDEzIEBAIHZvaWQgU291
cmNlQnVmZmVyOjpldmljdENvZGVkRnJhbWVzKHNpemVfdCBuZXdEYXRhU2l6ZSkKICAgICBNZWRp
YVRpbWUgbWluaW11bVJhbmdlU3RhcnQgPSBjdXJyZW50VGltZSArIHRoaXJ0eVNlY29uZHM7CiAK
ICAgICByYW5nZUVuZCA9IG1fc291cmNlLT5kdXJhdGlvbigpOworICAgIGlmIChyYW5nZUVuZC5p
c0ludmFsaWQoKSB8fCByYW5nZUVuZC5pc0luZGVmaW5pdGUoKSkgeworICAgICAgICByYW5nZUVu
ZCA9IGJ1ZmZlcmVkLm1heGltdW1CdWZmZXJlZFRpbWUoKTsKKyNpZiAhUkVMRUFTRV9MT0dfRElT
QUJMRUQKKyAgICAgICAgREVCVUdfTE9HKExPR0lERU5USUZJRVIsICJNZWRpYVNvdXJjZSBkdXJh
dGlvbiBpcyBOYU4sIHVzaW5nIG1heGltdW0gYnVmZmVyZWQgdGltZTogIiwgcmFuZ2VFbmQpOwor
I2VuZGlmCisgICAgfQorCiAgICAgcmFuZ2VTdGFydCA9IHJhbmdlRW5kIC0gdGhpcnR5U2Vjb25k
czsKICAgICB3aGlsZSAocmFuZ2VTdGFydCA+IG1pbmltdW1SYW5nZVN0YXJ0KSB7CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCBkZWVjZmQ2YTBkN2VlMTFhZmRlMDllYzJkMjMxMWM5YjVlYjZkYTY0Li5hZjI4N2M5ZGIwZWE0
Y2FjODM1MWI2NWY4MjhhMjAzNmE3MmIxNGE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAt
MTAtMjcgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAg
IFtNU0VdIEluZmluaXRlIGxvb3AgaW4gc2FtcGxlIGV2aWN0aW9uIHdoZW4gZHVyYXRpb24gaXMg
TmFOCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgy
MjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1l
ZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFu
ZC1ldmljdC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1t
ZWRpYS1zb3VyY2UuanM6CisgICAgICAgIChtYWtlQUluaXQpOgorCiAyMDIwLTEwLTI5ICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBNYWtlIHNjcm9s
bC1tYXJnaW4gaW5kZXBlbmRlbnQgb2Ygc2Nyb2xsIHNuYXBwaW5nIGFuZCBoYXZlIGl0IGFwcGx5
IHdoZW4gc2Nyb2xsaW5nIHRvIGFuY2hvcnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3Qt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFjMWRjYWYyYjY3NjRhNDY5ZTQyZTQ4ZjIxM2NhYmJh
ZTliNzEwODQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3Vy
Y2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTQ2
IEBACitUaGlzIHRlc3RzIHJld2luZCBzZWVrcyBpbiBhIGxpdmUgc3RyZWFtLiBUaGUgc2FtcGxl
IGV2aWN0aW9uIGFsZ29yaXRobSBzaG91bGQgYXR0ZW1wdCB0byByZW1vdmUgc29tZSBzYW1wbGVz
IHdpdGhvdXQgZ29pbmcgaW50byBhbiBpbmZpbml0ZSBsb29wLgorRVZFTlQoc291cmNlb3BlbikK
K0VWRU5UKHVwZGF0ZWVuZCkKK0VYUEVDVEVEIChpc05hTihzb3VyY2UuZHVyYXRpb24pID09ICd0
cnVlJykgT0sKK0FwcGVuZGluZyBQVFM9MTIwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTEyMQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjIKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTEyNAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjUKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTI2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEy
NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjgKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTI5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMAor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzEKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTMyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzMworRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTM1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNgorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTM4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzOQorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTQxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MgorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNDMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTQ0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNDYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ3
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0OAorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNDkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUwCitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MQorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNTIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUzCitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNTUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU2CitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNTgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU5CitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNjEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYyCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE2MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NjQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY1CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE2NgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjcK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY4CitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE2OQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzAKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE3MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzMKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTE3NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzYKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0VYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTc1JykgT0sKK0VYUEVD
VEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDEyMC4uLjEzMiwgMTYyLi4uMTc3IF0nKSBPSwor
RVhQRUNURUQgKHZpZGVvLmN1cnJlbnRUaW1lID09ICcxMTUnKSBPSworQXBwZW5kaW5nIFBUUz0x
MDkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTEwCitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTExMQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTIK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTEzCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTExNAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTUKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTExNworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTgKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE5CitFVkVOVCh1cGRhdGVlbmQpCitFWFBFQ1RF
RCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAnWyAxMDkuLi4xMzIsIDE2Mi4uLjE3NyBdJykgT0sKK0VO
RCBPRiBURVNUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9s
aXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEt
c291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGFkMjk3
NzBjZTFiMjA4MDlkZmI5ZDg4MDFmZjE3N2I4YzNiMGRjNwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC5o
dG1sCkBAIC0wLDAgKzEsODQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAg
ICA8dGl0bGU+bW9jay1tZWRpYS1zb3VyY2U8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSJtb2Nr
LW1lZGlhLXNvdXJjZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL3ZpZGVvLXRl
c3QuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgdmFyIHNvdXJjZTsKKyAgICB2YXIg
c291cmNlQnVmZmVyOworICAgIHZhciBpbml0U2VnbWVudDsKKyAgICB2YXIgZXhjZXB0aW9uOwor
CisgICAgZnVuY3Rpb24gYnVmZmVyZWRSYW5nZXMoKSB7CisgICAgICAgIHZhciBidWZmZXJlZFJh
bmdlcyA9ICdbICc7CisgICAgICAgIHZhciB0aW1lUmFuZ2VzID0gc291cmNlQnVmZmVyLmJ1ZmZl
cmVkOworICAgICAgICBmb3IgKHZhciBpID0gMCA7IGkgPCB0aW1lUmFuZ2VzLmxlbmd0aCA7IGkr
KykgeworICAgICAgICAgICAgaWYgKGkpCisgICAgICAgICAgICAgICAgYnVmZmVyZWRSYW5nZXMg
Kz0gJywgJzsKKyAgICAgICAgICAgIGJ1ZmZlcmVkUmFuZ2VzICs9IHRpbWVSYW5nZXMuc3RhcnQo
aSkgKyAnLi4uJyArIHRpbWVSYW5nZXMuZW5kKGkpOworICAgICAgICB9CisgICAgICAgIGJ1ZmZl
cmVkUmFuZ2VzICs9ICcgXSc7CisgICAgICAgIHJldHVybiBidWZmZXJlZFJhbmdlczsKKyAgICB9
CisKKyAgICBhc3luYyBmdW5jdGlvbiBhcHBlbmRQdHNSYW5nZShmaXJzdFB0cywgbGFzdFB0cykg
eworICAgICAgICB2YXIgcmVzdWx0RXhjZXB0aW9uID0gbnVsbDsKKyAgICAgICAgZm9yICh2YXIg
cHRzID0gZmlyc3RQdHM7IHB0cyA8PSBsYXN0UHRzOyBwdHMrKykgeworICAgICAgICAgICAgdHJ5
IHsKKyAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoJ0FwcGVuZGluZyBQVFM9JytwdHMpOwor
ICAgICAgICAgICAgICAgIHNvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIobWFrZUFTYW1wbGUocHRz
LCBwdHMsIDEsIDEsIDEsIFNBTVBMRV9GTEFHLlNZTkMsIDEpKTsKKyAgICAgICAgICAgICAgICBh
d2FpdCB3YWl0Rm9yKHNvdXJjZUJ1ZmZlciwgJ3VwZGF0ZWVuZCcpOworICAgICAgICAgICAgfSBj
YXRjaCAoZSkgeworICAgICAgICAgICAgICAgIHJlc3VsdEV4Y2VwdGlvbiA9IGU7CisgICAgICAg
ICAgICAgICAgc291cmNlQnVmZmVyLmFib3J0KCk7CisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlc3VsdEV4Y2VwdGlvbjsK
KyAgICB9CisKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLmlu
aXRpYWxpemVNb2NrTWVkaWFTb3VyY2UoKTsKKworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVy
KCdsb2FkJywgYXN5bmMoKSA9PiB7CisgICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKKyAgICAg
ICAgc291cmNlID0gbmV3IE1lZGlhU291cmNlKCk7CisKKyAgICAgICAgY29uc3QgdmlkZW9Tb3Vy
Y2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzb3VyY2UnKTsKKyAgICAgICAgdmlkZW9Tb3Vy
Y2UudHlwZSA9ICd2aWRlby9tb2NrOyBjb2RlY3M9bW9jayc7CisgICAgICAgIHZpZGVvU291cmNl
LnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoc291cmNlKTsKKyAgICAgICAgdmlkZW8uYXBwZW5k
Q2hpbGQodmlkZW9Tb3VyY2UpOworCisgICAgICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlLCAnc291
cmNlb3BlbicpOworICAgICAgICBzb3VyY2VCdWZmZXIgPSBzb3VyY2UuYWRkU291cmNlQnVmZmVy
KCJ2aWRlby9tb2NrOyBjb2RlY3M9bW9jayIpOworICAgICAgICBpbml0U2VnbWVudCA9IG1ha2VB
SW5pdCgtMSwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFDS19LSU5ELlZJREVPKV0pOworICAg
ICAgICBzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKGluaXRTZWdtZW50KTsKKyAgICAgICAgYXdh
aXQgd2FpdEZvcihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnKTsKKworICAgICAgICB0ZXN0RXhw
ZWN0ZWQoJ2lzTmFOKHNvdXJjZS5kdXJhdGlvbiknLCB0cnVlLCAnPT0nKTsKKworICAgICAgICAv
LyBUaGlzIHNob3VsZCBhbGxvdyBidWZlcmluZyB1cCB0byAxNzcgKGVtcGlyaWNhbGx5IHRlc3Rl
ZCkuCisgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRNYXhpbXVtU291cmNlQnVmZmVyU2l6
ZSgzMDAwKTsKKworICAgICAgICBleGNlcHRpb24gPSBhd2FpdCBhcHBlbmRQdHNSYW5nZSgxMjAs
IDE3Nik7CisKKyAgICAgICAgdmlkZW8uY3VycmVudFRpbWUgPSAxNzU7CisgICAgICAgIHRlc3RF
eHBlY3RlZCgndmlkZW8uY3VycmVudFRpbWUnLCAxNzUsICc9PScpOworCisgICAgICAgIHRlc3RF
eHBlY3RlZCgnYnVmZmVyZWRSYW5nZXMoKScsICdbIDEyMC4uLjEzMiwgMTYyLi4uMTc3IF0nLCAn
PT0nKTsKKworICAgICAgICB2aWRlby5jdXJyZW50VGltZSA9IDExNTsKKyAgICAgICAgdGVzdEV4
cGVjdGVkKCd2aWRlby5jdXJyZW50VGltZScsIDExNSwgJz09Jyk7CisgICAgICAgIGF3YWl0IGFw
cGVuZFB0c1JhbmdlKDEwOSwgMTE5KTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCdidWZmZXJlZFJh
bmdlcygpJywgJ1sgMTA5Li4uMTMyLCAxNjIuLi4xNzcgXScsICc9PScpOworICAgICAgICBlbmRU
ZXN0KCk7CisgICAgIH0pOworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAgVGhp
cyB0ZXN0cyByZXdpbmQgc2Vla3MgaW4gYSBsaXZlIHN0cmVhbS4gVGhlIHNhbXBsZSBldmljdGlv
biBhbGdvcml0aG0gc2hvdWxkIGF0dGVtcHQgdG8gcmVtb3ZlCisgICAgc29tZSBzYW1wbGVzIHdp
dGhvdXQgZ29pbmcgaW50byBhbiBpbmZpbml0ZSBsb29wLgorICAgIDx2aWRlbz48L3ZpZGVvPgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291
cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVk
ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNv
dXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQu
dHh0CmluZGV4IGE4YTYxN2U0ZTliOTliMGZhNDI1MDAxOTcwNjVmZTBkOGQzZTkwMjYuLjNjNjg5
NDhiZGI2Y2NjYzdiNDM3M2NhOWM0NDFmYWUxYjdhMmQwNTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJh
bmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1x
dW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKQEAgLTExNSw5ICsxMTUsOCBAQCBFVkVOVCh1cGRh
dGVlbmQpCiBBcHBlbmRpbmcgUFRTPTE3NQogRVZFTlQodXBkYXRlZW5kKQogQXBwZW5kaW5nIFBU
Uz0xNzYKLUVWRU5UKHVwZGF0ZWVuZCkKLUVYUEVDVEVEIChleGNlcHRpb24gPT0gJ1F1b3RhRXhj
ZWVkZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicpLCBPQlNFUlZFRCAnbnVs
bCcgRkFJTAotRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTIwLi4uMTc2IF0nKSwg
T0JTRVJWRUQgJ1sgMTIwLi4uMTc3IF0nIEZBSUwKK0VYUEVDVEVEIChleGNlcHRpb24gPT0gJ1F1
b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicpIE9LCitFWFBF
Q1RFRCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAnWyAxMjAuLi4xNzYgXScpIE9LCiBFWFBFQ1RFRCAo
dmlkZW8uY3VycmVudFRpbWUgPT0gJzExNScpIE9LCiBBcHBlbmRpbmcgUFRTPTExNQogRVZFTlQo
dXBkYXRlZW5kKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21v
Y2stbWVkaWEtc291cmNlLmpzIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21vY2st
bWVkaWEtc291cmNlLmpzCmluZGV4IDBlZDkxYTMyMDgxNDg5N2ZkOWI4MzBhYjdlN2E3N2MzMjg0
MmFjMDMuLjdlYTM3MmRmNGQ1NWZmNmRkNGYyYTRkYzlhMTk0NGFhNDU5MjVmMzggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tb2NrLW1lZGlhLXNvdXJjZS5qcwor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMK
QEAgLTc1LDExICs3NSwxMyBAQCBmdW5jdGlvbiBtYWtlQUluaXQoZHVyYXRpb24sIHRyYWNrcykg
ewogICAgIHZhciBhcnJheSA9IG5ldyBVaW50OEFycmF5KGJ1ZmZlcik7CiAgICAgYXJyYXkuc2V0
KHN0cmluZ1RvQXJyYXkoJ2luaXQnKSk7CiAKLSAgICB2YXIgdmlldyA9IG5ldyBEYXRhVmlldyhi
dWZmZXIpOwotICAgIHZhciB0aW1lU2NhbGUgPSAxMDAwOwotICAgIHZpZXcuc2V0VWludDMyKDQs
IGJ5dGVMZW5ndGgsIHRydWUpOwotICAgIHZpZXcuc2V0SW50MzIoOCwgZHVyYXRpb24gKiB0aW1l
U2NhbGUsIHRydWUpOwotICAgIHZpZXcuc2V0SW50MzIoMTIsIHRpbWVTY2FsZSwgdHJ1ZSk7Cisg
ICAgaWYgKCFpc05hTihkdXJhdGlvbikpIHsKKyAgICAgICAgdmFyIHZpZXcgPSBuZXcgRGF0YVZp
ZXcoYnVmZmVyKTsKKyAgICAgICAgdmFyIHRpbWVTY2FsZSA9IDEwMDA7CisgICAgICAgIHZpZXcu
c2V0VWludDMyKDQsIGJ5dGVMZW5ndGgsIHRydWUpOworICAgICAgICB2aWV3LnNldEludDMyKDgs
IGR1cmF0aW9uICogdGltZVNjYWxlLCB0cnVlKTsKKyAgICAgICAgdmlldy5zZXRJbnQzMigxMiwg
dGltZVNjYWxlLCB0cnVlKTsKKyAgICB9CiAKICAgICB2YXIgb2Zmc2V0ID0gMTY7CiAgICAgdHJh
Y2tzLmZvckVhY2goZnVuY3Rpb24odHJhY2spewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ2xpYi9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUt
bGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9nbGliL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9y
ZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggM2M2ODk0OGJkYjZjY2NjN2I0MzczY2E5YzQ0MWZhZTFiN2EyZDA1
NC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9nbGliL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5k
LWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dAorKysgL2Rl
di9udWxsCkBAIC0xLDEzMiArMCwwIEBACi0KLUVWRU5UKHNvdXJjZW9wZW4pCi1FVkVOVCh1cGRh
dGVlbmQpCi1FWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzEyMCcpIE9LCi1BcHBlbmRp
bmcgUFRTPTEyMAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjEKLUVWRU5UKHVw
ZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTIyCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcg
UFRTPTEyMwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjQKLUVWRU5UKHVwZGF0
ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTI1Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRT
PTEyNgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjcKLUVWRU5UKHVwZGF0ZWVu
ZCkKLUFwcGVuZGluZyBQVFM9MTI4Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEy
OQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzAKLUVWRU5UKHVwZGF0ZWVuZCkK
LUFwcGVuZGluZyBQVFM9MTMxCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzMgot
RVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzMKLUVWRU5UKHVwZGF0ZWVuZCkKLUFw
cGVuZGluZyBQVFM9MTM0Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzNQotRVZF
TlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzYKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVu
ZGluZyBQVFM9MTM3Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzOAotRVZFTlQo
dXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzkKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGlu
ZyBQVFM9MTQwCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0MQotRVZFTlQodXBk
YXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDIKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQ
VFM9MTQzCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0NAotRVZFTlQodXBkYXRl
ZW5kKQotQXBwZW5kaW5nIFBUUz0xNDUKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9
MTQ2Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0NwotRVZFTlQodXBkYXRlZW5k
KQotQXBwZW5kaW5nIFBUUz0xNDgKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTQ5
Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1MAotRVZFTlQodXBkYXRlZW5kKQot
QXBwZW5kaW5nIFBUUz0xNTEKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTUyCi1F
VkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1MwotRVZFTlQodXBkYXRlZW5kKQotQXBw
ZW5kaW5nIFBUUz0xNTQKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTU1Ci1FVkVO
VCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1NgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5k
aW5nIFBUUz0xNTcKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTU4Ci1FVkVOVCh1
cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1OQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5n
IFBUUz0xNjAKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTYxCi1FVkVOVCh1cGRh
dGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2MgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBU
Uz0xNjMKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY0Ci1FVkVOVCh1cGRhdGVl
bmQpCi1BcHBlbmRpbmcgUFRTPTE2NQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0x
NjYKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY3Ci1FVkVOVCh1cGRhdGVlbmQp
Ci1BcHBlbmRpbmcgUFRTPTE2OAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNjkK
LUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTcwCi1FVkVOVCh1cGRhdGVlbmQpCi1B
cHBlbmRpbmcgUFRTPTE3MQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNzIKLUVW
RU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTczCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBl
bmRpbmcgUFRTPTE3NAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNzUKLUVWRU5U
KHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTc2Ci1FWFBFQ1RFRCAoZXhjZXB0aW9uID09ICdR
dW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMgYmVlbiBleGNlZWRlZC4nKSBPSwotRVhQ
RUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTIwLi4uMTc2IF0nKSBPSwotRVhQRUNURUQg
KHZpZGVvLmN1cnJlbnRUaW1lID09ICcxMTUnKSBPSwotQXBwZW5kaW5nIFBUUz0xMTUKLUVWRU5U
KHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTE2Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRp
bmcgUFRTPTExNwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMTgKLUVWRU5UKHVw
ZGF0ZWVuZCkKLUVYUEVDVEVEIChleGNlcHRpb24gIT0gJ1F1b3RhRXhjZWVkZWRFcnJvcjogVGhl
IHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicpIE9LCi1FWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMo
KSA9PSAnWyAxMTUuLi4xMTksIDEyMC4uLjE3MCBdJykgT0sKLUVORCBPRiBURVNUCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEt
c291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlh
LXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmE4YTYxN2U0ZTliOTliMGZhNDI1MDAxOTcwNjVmZTBkOGQzZTkw
MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvbWVkaWEvbWVk
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
SworRU5EIE9GIFRFU1QKKwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412730</attachid>
            <date>2020-10-30 04:37:42 -0700</date>
            <delta_ts>2020-11-03 13:00:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218228-20201030043740.patch</filename>
            <type>text/plain</type>
            <size>20161</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDFmODcxYjk1YmJhMWVmOWQ1ZjdiYzg5
MDg4OTQ0NjQzNTRmNzljYWYuLmU5MzJkNzQyZDAxY2M2ZGNjNTAxNWQxMzQ5NWY4MmVkMGViODg4
YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjAtMTAtMzAgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFtNU0VdIEluZmluaXRlIGxvb3AgaW4gc2Ft
cGxlIGV2aWN0aW9uIHdoZW4gZHVyYXRpb24gaXMgTmFOCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgyMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHd0Zi9NZWRpYVRpbWUuaDogTmV3IGlzRmluaXRl
KCkgbWV0aG9kLCB0byBjaGVjayBpZiB0aGUgTWVkaWFUaW1lIGlzIHZhbGlkIGFuZCByZXByZXNl
bnRzCisgICAgICAgIGEgZmluaXRlIHZhbHVlLCBlZyBub3QgTmFOIG9yIEluZmluaXRlLgorCiAy
MDIwLTEwLTI5ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CiAKICAgICAgICAg
W1dlYkF1dGhuXSBNYWtlIFdlYkNvbnRlbnQgcHJvY2VzcyB0YWxrIHRvIHRoZSBXZWJBdXRobiBw
cm9jZXNzIGZvciBXZWJBdXRobiByZXF1ZXN0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGVlNGU4OTBjYzczOGFj
YzE4ZjRmNDUyNmFiMTkyNTJlODBiMDU2ZjEuLmZiN2IwZTdjMTY3YjM3N2U4OWUzNTg4YTExODA2
YmI5OGQ1NWQ1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMiBAQAorMjAyMC0xMC0yNyAgUGhp
bGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01TRV0gSW5m
aW5pdGUgbG9vcCBpbiBzYW1wbGUgZXZpY3Rpb24gd2hlbiBkdXJhdGlvbiBpcyBOYU4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODIyOAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEF2b2lkIGluZmluaXRl
IGxvb3AgaW4gZXZpY3RDb2RlZEZyYW1lcyBmb3IgbGl2ZSBzdHJlYW1zCisKKyAgICAgICAgV2hl
biBwbGF5aW5nIGxpdmUgc3RyZWFtcyB0aGUgTWVkaWFTb3VyY2UgRE9NIGR1cmF0aW9uIGF0dHJp
YnV0ZSBoYXMgbm8gbWVhbmluZworICAgICAgICBhbmQgd291bGQgdGh1cyBiZSBzZXQgYXMgK2lu
Zi4gV2hlbiBzZWVrcyBhcmUgdHJpZ2dlcmVkIHRvIHBvc2l0aW9ucyBwcmlvciB0bworICAgICAg
ICB0aGUgY3VycmVudCBwbGF5YmFjayBwb3NpdGlvbiB0aGUgU291cmNlQnVmZmVyIG1pZ2h0IGF0
dGVtcHQgdG8gZnJlZSBzb21lIHNwYWNlCisgICAgICAgIGluIG9yZGVyIHRvIGtlZXAgdGhlIGFt
b3VudCBvZiBtZW1vcnkgdXNlZCB1bmRlciBjb250cm9sLiBJdCBwcm9jZWVkcyBpbiAyCisgICAg
ICAgIHN0ZXBzOgorCisgICAgICAgIDEuIEF0dGVtcHQgdG8gZnJlZSBzcGFjZSByZXByZXNlbnRl
ZCBieSBidWZmZXJlZCByYW5nZSBmcm9tIG1lZGlhIHN0YXJ0IHVwIHVudGlsCisgICAgICAgICAg
IGN1cnJlbnQgcGxheWJhY2sgcG9zaXRpb24gLSAzMCBzZWNvbmRzLgorICAgICAgICAyLiBJZiBz
dGVwIDEgZGlkbid0IGZyZWUgZW5vdWdoIG1lbW9yeSwgYXR0ZW1wdCB0byByZWxlYXNlIG1lbW9y
eSByZXByZXNlbnRlZCBieQorICAgICAgICAgICBidWZmZXJlZCByYW5nZXMgc3RhcnRpbmcgZnJv
bSBjdXJyZW50IHBsYXliYWNrIHBvc2l0aW9uICsgMzAgc2Vjb25kcyB1bnRpbCBtZWRpYQorICAg
ICAgICAgICBkdXJhdGlvbi4KKworICAgICAgICBTdGVwIDIgaGVyZSB3YXNuJ3QgdGFraW5nIGlu
dG8gYWNjb3VudCB0aGUgY2FzZSB3aGVyZSBNZWRpYVNvdXJjZS5kdXJhdGlvbiBpcworICAgICAg
ICBhY3R1YWxseSBpbnZhbGlkLCBhbmQgdGh1cyB3YXMgZW50ZXJpbmcgYW4gaW5maW5pdGUgbG9v
cC4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1h
bmQtZXZpY3QuaHRtbAorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZm
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyOjpldmljdENvZGVkRnJhbWVz
KToKKwogMjAyMC0xMC0zMCAgTWlndWVsIEdvbWV6ICA8bWFnb21lekBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtHVEtdIERpcmVjdCBjb21wb3NpdGVkIGltYWdlcyBtYXkgbm90IGJlIHJlbmRlcmVk
IGFmdGVyIGEgd2luZG93IHJlc2l6ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvTWVkaWFU
aW1lLmggYi9Tb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaAppbmRleCA5NzExMTY5NzJhODA0OWFi
MmZmMGMyODllZTAxMDBiM2MzNjJiODFmLi43MWFjZjMyOWViMzk4OTMzNTEyZmQ3ZjNmNThkNjBi
ZWNmZjIzYzUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaAorKysgYi9T
b3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaApAQCAtOTYsNiArOTYsNyBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBpc1Bvc2l0aXZlSW5maW5pdGUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIFBv
c2l0aXZlSW5maW5pdGU7IH0KICAgICBib29sIGlzTmVnYXRpdmVJbmZpbml0ZSgpIGNvbnN0IHsg
cmV0dXJuIG1fdGltZUZsYWdzICYgTmVnYXRpdmVJbmZpbml0ZTsgfQogICAgIGJvb2wgaXNJbmRl
ZmluaXRlKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBJbmRlZmluaXRlOyB9CisgICAg
Ym9vbCBpc0Zpbml0ZSgpIGNvbnN0IHsgcmV0dXJuICFpc0ludmFsaWQoKSAmJiAhaXNJbmRlZmlu
aXRlKCkgJiYgIWlzUG9zaXRpdmVJbmZpbml0ZSgpICYmICFpc05lZ2F0aXZlSW5maW5pdGUoKTsg
fQogICAgIGJvb2wgaGFzRG91YmxlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAm
IERvdWJsZVZhbHVlOyB9CiAgICAgdWludDhfdCB0aW1lRmxhZ3MoKSBjb25zdCB7IHJldHVybiBt
X3RpbWVGbGFnczsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c291cmNlL1NvdXJjZUJ1ZmZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291
cmNlL1NvdXJjZUJ1ZmZlci5jcHAKaW5kZXggNDI5MjY4ZDc2MTc1ZTkzMjAwZWMxZjdmMWQzNGVk
MDE1NzE1MTljMS4uMjQ5ZjY1YTEyMmIyZjU5ZDdiNTMyMmJiYTQzZDk5ZGQ1NzYzMTRiMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvU291cmNlQnVmZmVy
LmNwcApAQCAtOTk2LDYgKzk5NiwxMSBAQCB2b2lkIFNvdXJjZUJ1ZmZlcjo6ZXZpY3RDb2RlZEZy
YW1lcyhzaXplX3QgbmV3RGF0YVNpemUpCiAgICAgTWVkaWFUaW1lIG1pbmltdW1SYW5nZVN0YXJ0
ID0gY3VycmVudFRpbWUgKyB0aGlydHlTZWNvbmRzOwogCiAgICAgcmFuZ2VFbmQgPSBtX3NvdXJj
ZS0+ZHVyYXRpb24oKTsKKyAgICBpZiAoIXJhbmdlRW5kLmlzRmluaXRlKCkpIHsKKyAgICAgICAg
cmFuZ2VFbmQgPSBidWZmZXJlZC5tYXhpbXVtQnVmZmVyZWRUaW1lKCk7CisgICAgICAgIERFQlVH
X0xPRyhMT0dJREVOVElGSUVSLCAiTWVkaWFTb3VyY2UgZHVyYXRpb24gaXMgbm90IGEgZmluaXRl
IHZhbHVlLCB1c2luZyBtYXhpbXVtIGJ1ZmZlcmVkIHRpbWU6ICIsIHJhbmdlRW5kKTsKKyAgICB9
CisKICAgICByYW5nZVN0YXJ0ID0gcmFuZ2VFbmQgLSB0aGlydHlTZWNvbmRzOwogICAgIHdoaWxl
IChyYW5nZVN0YXJ0ID4gbWluaW11bVJhbmdlU3RhcnQpIHsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGQ3OWUxYWEzMWMx
NDIyNTMxYzdiN2MwZGJmMGVkOWQ3N2QyOGI3NTIuLmQzZjliNTY3OWIxYTBkMmYxYjg5Zjg1NjAx
MTI5NjY4MDk5ZTdiMjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMC0xMC0zMCAgUGhpbGlw
cGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01TRV0gSW5maW5p
dGUgbG9vcCBpbiBzYW1wbGUgZXZpY3Rpb24gd2hlbiBkdXJhdGlvbiBpcyBOYU4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODIyOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVkaWEvbWVkaWEtc291
cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9t
IExheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJj
ZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQudHh0
LgorICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmlj
dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNl
LWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQ6
CisgICAgICAgICogbWVkaWEvbWVkaWEtc291cmNlL21vY2stbWVkaWEtc291cmNlLmpzOgorICAg
ICAgICAobWFrZUFJbml0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvbWVkaWEvbWVkaWEtc291
cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVk
ZWQtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3Vy
Y2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRl
ZC1leHBlY3RlZC50eHQuCisKIDIwMjAtMTAtMzAgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFu
ZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgR1RLIGdhcmRlbmluZwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5k
LWV2aWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9saXZl
LXJld2luZC1zZWVrLWFuZC1ldmljdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWMxZGNhZjJi
Njc2NGE0NjllNDJlNDhmMjEzY2FiYmFlOWI3MTA4NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9saXZlLXJld2luZC1zZWVrLWFuZC1ldmljdC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxNDYgQEAKK1RoaXMgdGVzdHMgcmV3aW5kIHNlZWtzIGluIGEg
bGl2ZSBzdHJlYW0uIFRoZSBzYW1wbGUgZXZpY3Rpb24gYWxnb3JpdGhtIHNob3VsZCBhdHRlbXB0
IHRvIHJlbW92ZSBzb21lIHNhbXBsZXMgd2l0aG91dCBnb2luZyBpbnRvIGFuIGluZmluaXRlIGxv
b3AuCitFVkVOVChzb3VyY2VvcGVuKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGlzTmFO
KHNvdXJjZS5kdXJhdGlvbikgPT0gJ3RydWUnKSBPSworQXBwZW5kaW5nIFBUUz0xMjAKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTEyMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjMKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTEyNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjYKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTEyOAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMjkKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTMwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEz
MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzIKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTMzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNAor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzUKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTM2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEzNworRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTM5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MAorRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTQyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0MworRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTQ1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0NgorRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNDcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTQ4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0OQorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNTAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTUx
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MgorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNTMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU0CitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NQorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNTYKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTU3CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNTkKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYwCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xNjIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTYzCitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xNjUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY2CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTE2NworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
NjgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY5CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTE3MAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzEK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcyCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTE3MworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNzQKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTE3NgorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKHZpZGVvLmN1cnJlbnRU
aW1lID09ICcxNzUnKSBPSworRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTIwLi4u
MTMyLCAxNjIuLi4xNzcgXScpIE9LCitFWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzEx
NScpIE9LCitBcHBlbmRpbmcgUFRTPTEwOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMTAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTExCitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTExMgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
MTMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE0CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTExNQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTYK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE3CitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTExOAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTkKK0VW
RU5UKHVwZGF0ZWVuZCkKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDEwOS4uLjEz
MiwgMTYyLi4uMTc3IF0nKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUtcmV3aW5kLXNlZWstYW5kLWV2aWN0Lmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbGl2ZS1yZXdpbmQtc2Vlay1hbmQtZXZpY3Qu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4wYWQyOTc3MGNlMWIyMDgwOWRmYjlkODgwMWZmMTc3YjhjM2IwZGM3
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL2xpdmUt
cmV3aW5kLXNlZWstYW5kLWV2aWN0Lmh0bWwKQEAgLTAsMCArMSw4NCBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5tb2NrLW1lZGlhLXNvdXJjZTwvdGl0bGU+
CisgICAgPHNjcmlwdCBzcmM9Im1vY2stbWVkaWEtc291cmNlLmpzIj48L3NjcmlwdD4KKyAgICA8
c2NyaXB0IHNyYz0iLi4vdmlkZW8tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAg
ICB2YXIgc291cmNlOworICAgIHZhciBzb3VyY2VCdWZmZXI7CisgICAgdmFyIGluaXRTZWdtZW50
OworICAgIHZhciBleGNlcHRpb247CisKKyAgICBmdW5jdGlvbiBidWZmZXJlZFJhbmdlcygpIHsK
KyAgICAgICAgdmFyIGJ1ZmZlcmVkUmFuZ2VzID0gJ1sgJzsKKyAgICAgICAgdmFyIHRpbWVSYW5n
ZXMgPSBzb3VyY2VCdWZmZXIuYnVmZmVyZWQ7CisgICAgICAgIGZvciAodmFyIGkgPSAwIDsgaSA8
IHRpbWVSYW5nZXMubGVuZ3RoIDsgaSsrKSB7CisgICAgICAgICAgICBpZiAoaSkKKyAgICAgICAg
ICAgICAgICBidWZmZXJlZFJhbmdlcyArPSAnLCAnOworICAgICAgICAgICAgYnVmZmVyZWRSYW5n
ZXMgKz0gdGltZVJhbmdlcy5zdGFydChpKSArICcuLi4nICsgdGltZVJhbmdlcy5lbmQoaSk7Cisg
ICAgICAgIH0KKyAgICAgICAgYnVmZmVyZWRSYW5nZXMgKz0gJyBdJzsKKyAgICAgICAgcmV0dXJu
IGJ1ZmZlcmVkUmFuZ2VzOworICAgIH0KKworICAgIGFzeW5jIGZ1bmN0aW9uIGFwcGVuZFB0c1Jh
bmdlKGZpcnN0UHRzLCBsYXN0UHRzKSB7CisgICAgICAgIHZhciByZXN1bHRFeGNlcHRpb24gPSBu
dWxsOworICAgICAgICBmb3IgKHZhciBwdHMgPSBmaXJzdFB0czsgcHRzIDw9IGxhc3RQdHM7IHB0
cysrKSB7CisgICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgn
QXBwZW5kaW5nIFBUUz0nK3B0cyk7CisgICAgICAgICAgICAgICAgc291cmNlQnVmZmVyLmFwcGVu
ZEJ1ZmZlcihtYWtlQVNhbXBsZShwdHMsIHB0cywgMSwgMSwgMSwgU0FNUExFX0ZMQUcuU1lOQywg
MSkpOworICAgICAgICAgICAgICAgIGF3YWl0IHdhaXRGb3Ioc291cmNlQnVmZmVyLCAndXBkYXRl
ZW5kJyk7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAgICAgcmVzdWx0
RXhjZXB0aW9uID0gZTsKKyAgICAgICAgICAgICAgICBzb3VyY2VCdWZmZXIuYWJvcnQoKTsKKyAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBy
ZXR1cm4gcmVzdWx0RXhjZXB0aW9uOworICAgIH0KKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxz
KQorICAgICAgICBpbnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOworCisgICAg
d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYygpID0+IHsKKyAgICAgICAgZmlu
ZE1lZGlhRWxlbWVudCgpOworICAgICAgICBzb3VyY2UgPSBuZXcgTWVkaWFTb3VyY2UoKTsKKwor
ICAgICAgICBjb25zdCB2aWRlb1NvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJj
ZScpOworICAgICAgICB2aWRlb1NvdXJjZS50eXBlID0gJ3ZpZGVvL21vY2s7IGNvZGVjcz1tb2Nr
JzsKKyAgICAgICAgdmlkZW9Tb3VyY2Uuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChzb3VyY2Up
OworICAgICAgICB2aWRlby5hcHBlbmRDaGlsZCh2aWRlb1NvdXJjZSk7CisKKyAgICAgICAgYXdh
aXQgd2FpdEZvcihzb3VyY2UsICdzb3VyY2VvcGVuJyk7CisgICAgICAgIHNvdXJjZUJ1ZmZlciA9
IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIik7CisgICAg
ICAgIGluaXRTZWdtZW50ID0gbWFrZUFJbml0KC0xLCBbbWFrZUFUcmFjaygxLCAnbW9jaycsIFRS
QUNLX0tJTkQuVklERU8pXSk7CisgICAgICAgIHNvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5p
dFNlZ21lbnQpOworICAgICAgICBhd2FpdCB3YWl0Rm9yKHNvdXJjZUJ1ZmZlciwgJ3VwZGF0ZWVu
ZCcpOworCisgICAgICAgIHRlc3RFeHBlY3RlZCgnaXNOYU4oc291cmNlLmR1cmF0aW9uKScsIHRy
dWUsICc9PScpOworCisgICAgICAgIC8vIFRoaXMgc2hvdWxkIGFsbG93IGJ1ZmVyaW5nIHVwIHRv
IDE3NyAoZW1waXJpY2FsbHkgdGVzdGVkKS4KKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNl
dE1heGltdW1Tb3VyY2VCdWZmZXJTaXplKDMwMDApOworCisgICAgICAgIGV4Y2VwdGlvbiA9IGF3
YWl0IGFwcGVuZFB0c1JhbmdlKDEyMCwgMTc2KTsKKworICAgICAgICB2aWRlby5jdXJyZW50VGlt
ZSA9IDE3NTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCd2aWRlby5jdXJyZW50VGltZScsIDE3NSwg
Jz09Jyk7CisKKyAgICAgICAgdGVzdEV4cGVjdGVkKCdidWZmZXJlZFJhbmdlcygpJywgJ1sgMTIw
Li4uMTMyLCAxNjIuLi4xNzcgXScsICc9PScpOworCisgICAgICAgIHZpZGVvLmN1cnJlbnRUaW1l
ID0gMTE1OworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3ZpZGVvLmN1cnJlbnRUaW1lJywgMTE1LCAn
PT0nKTsKKyAgICAgICAgYXdhaXQgYXBwZW5kUHRzUmFuZ2UoMTA5LCAxMTkpOworICAgICAgICB0
ZXN0RXhwZWN0ZWQoJ2J1ZmZlcmVkUmFuZ2VzKCknLCAnWyAxMDkuLi4xMzIsIDE2Mi4uLjE3NyBd
JywgJz09Jyk7CisgICAgICAgIGVuZFRlc3QoKTsKKyAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKyAgICBUaGlzIHRlc3RzIHJld2luZCBzZWVrcyBpbiBhIGxpdmUgc3Ry
ZWFtLiBUaGUgc2FtcGxlIGV2aWN0aW9uIGFsZ29yaXRobSBzaG91bGQgYXR0ZW1wdCB0byByZW1v
dmUKKyAgICBzb21lIHNhbXBsZXMgd2l0aG91dCBnb2luZyBpbnRvIGFuIGluZmluaXRlIGxvb3Au
CisgICAgPHZpZGVvPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFz
dC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRp
YS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1uby1x
dW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKaW5kZXggYThhNjE3ZTRlOWI5OWIwZmE0MjUwMDE5
NzA2NWZlMGQ4ZDNlOTAyNi4uM2M2ODk0OGJkYjZjY2NjN2I0MzczY2E5YzQ0MWZhZTFiN2EyZDA1
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJj
ZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5k
LWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dApAQCAtMTE1
LDkgKzExNSw4IEBAIEVWRU5UKHVwZGF0ZWVuZCkKIEFwcGVuZGluZyBQVFM9MTc1CiBFVkVOVCh1
cGRhdGVlbmQpCiBBcHBlbmRpbmcgUFRTPTE3NgotRVZFTlQodXBkYXRlZW5kKQotRVhQRUNURUQg
KGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhj
ZWVkZWQuJyksIE9CU0VSVkVEICdudWxsJyBGQUlMCi1FWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMo
KSA9PSAnWyAxMjAuLi4xNzYgXScpLCBPQlNFUlZFRCAnWyAxMjAuLi4xNzcgXScgRkFJTAorRVhQ
RUNURUQgKGV4Y2VwdGlvbiA9PSAnUXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJl
ZW4gZXhjZWVkZWQuJykgT0sKK0VYUEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDEyMC4u
LjE3NiBdJykgT0sKIEVYUEVDVEVEICh2aWRlby5jdXJyZW50VGltZSA9PSAnMTE1JykgT0sKIEFw
cGVuZGluZyBQVFM9MTE1CiBFVkVOVCh1cGRhdGVlbmQpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMgYi9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbW9jay1tZWRpYS1zb3VyY2UuanMKaW5kZXggMGVkOTFhMzIwODE0
ODk3ZmQ5YjgzMGFiN2U3YTc3YzMyODQyYWMwMy4uN2VhMzcyZGY0ZDU1ZmY2ZGQ0ZjJhNGRjOWEx
OTQ0YWE0NTkyNWYzOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNl
L21vY2stbWVkaWEtc291cmNlLmpzCisrKyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJj
ZS9tb2NrLW1lZGlhLXNvdXJjZS5qcwpAQCAtNzUsMTEgKzc1LDEzIEBAIGZ1bmN0aW9uIG1ha2VB
SW5pdChkdXJhdGlvbiwgdHJhY2tzKSB7CiAgICAgdmFyIGFycmF5ID0gbmV3IFVpbnQ4QXJyYXko
YnVmZmVyKTsKICAgICBhcnJheS5zZXQoc3RyaW5nVG9BcnJheSgnaW5pdCcpKTsKIAotICAgIHZh
ciB2aWV3ID0gbmV3IERhdGFWaWV3KGJ1ZmZlcik7Ci0gICAgdmFyIHRpbWVTY2FsZSA9IDEwMDA7
Ci0gICAgdmlldy5zZXRVaW50MzIoNCwgYnl0ZUxlbmd0aCwgdHJ1ZSk7Ci0gICAgdmlldy5zZXRJ
bnQzMig4LCBkdXJhdGlvbiAqIHRpbWVTY2FsZSwgdHJ1ZSk7Ci0gICAgdmlldy5zZXRJbnQzMigx
MiwgdGltZVNjYWxlLCB0cnVlKTsKKyAgICBpZiAoIWlzTmFOKGR1cmF0aW9uKSkgeworICAgICAg
ICB2YXIgdmlldyA9IG5ldyBEYXRhVmlldyhidWZmZXIpOworICAgICAgICB2YXIgdGltZVNjYWxl
ID0gMTAwMDsKKyAgICAgICAgdmlldy5zZXRVaW50MzIoNCwgYnl0ZUxlbmd0aCwgdHJ1ZSk7Cisg
ICAgICAgIHZpZXcuc2V0SW50MzIoOCwgZHVyYXRpb24gKiB0aW1lU2NhbGUsIHRydWUpOworICAg
ICAgICB2aWV3LnNldEludDMyKDEyLCB0aW1lU2NhbGUsIHRydWUpOworICAgIH0KIAogICAgIHZh
ciBvZmZzZXQgPSAxNjsKICAgICB0cmFja3MuZm9yRWFjaChmdW5jdGlvbih0cmFjayl7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL21lZGlhL21lZGlhLXNvdXJjZS9tZWRp
YS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5vLXF1b3RhLWV4Y2VlZGVkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvbWVkaWEvbWVkaWEtc291cmNlL21l
ZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVkZWQtZXhw
ZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzY4OTQ4YmRiNmNjY2M3
YjQzNzNjYTljNDQxZmFlMWI3YTJkMDU0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvbWVkaWEvbWVkaWEtc291
cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtYmVmb3JlLWxhc3QtcmFuZ2Utbm8tcXVvdGEtZXhjZWVk
ZWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTMyICswLDAgQEAKLQotRVZFTlQo
c291cmNlb3BlbikKLUVWRU5UKHVwZGF0ZWVuZCkKLUVYUEVDVEVEICh2aWRlby5jdXJyZW50VGlt
ZSA9PSAnMTIwJykgT0sKLUFwcGVuZGluZyBQVFM9MTIwCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBl
bmRpbmcgUFRTPTEyMQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjIKLUVWRU5U
KHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTIzCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRp
bmcgUFRTPTEyNAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjUKLUVWRU5UKHVw
ZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTI2Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcg
UFRTPTEyNwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMjgKLUVWRU5UKHVwZGF0
ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTI5Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRT
PTEzMAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzEKLUVWRU5UKHVwZGF0ZWVu
ZCkKLUFwcGVuZGluZyBQVFM9MTMyCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEz
MwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzQKLUVWRU5UKHVwZGF0ZWVuZCkK
LUFwcGVuZGluZyBQVFM9MTM1Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzNgot
RVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMzcKLUVWRU5UKHVwZGF0ZWVuZCkKLUFw
cGVuZGluZyBQVFM9MTM4Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTEzOQotRVZF
TlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDAKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVu
ZGluZyBQVFM9MTQxCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0MgotRVZFTlQo
dXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDMKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGlu
ZyBQVFM9MTQ0Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0NQotRVZFTlQodXBk
YXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNDYKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQ
VFM9MTQ3Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE0OAotRVZFTlQodXBkYXRl
ZW5kKQotQXBwZW5kaW5nIFBUUz0xNDkKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9
MTUwCi1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1MQotRVZFTlQodXBkYXRlZW5k
KQotQXBwZW5kaW5nIFBUUz0xNTIKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTUz
Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1NAotRVZFTlQodXBkYXRlZW5kKQot
QXBwZW5kaW5nIFBUUz0xNTUKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTU2Ci1F
VkVOVCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE1NwotRVZFTlQodXBkYXRlZW5kKQotQXBw
ZW5kaW5nIFBUUz0xNTgKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTU5Ci1FVkVO
VCh1cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2MAotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5k
aW5nIFBUUz0xNjEKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTYyCi1FVkVOVCh1
cGRhdGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2MwotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5n
IFBUUz0xNjQKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY1Ci1FVkVOVCh1cGRh
dGVlbmQpCi1BcHBlbmRpbmcgUFRTPTE2NgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBU
Uz0xNjcKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTY4Ci1FVkVOVCh1cGRhdGVl
bmQpCi1BcHBlbmRpbmcgUFRTPTE2OQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0x
NzAKLUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTcxCi1FVkVOVCh1cGRhdGVlbmQp
Ci1BcHBlbmRpbmcgUFRTPTE3MgotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNzMK
LUVWRU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTc0Ci1FVkVOVCh1cGRhdGVlbmQpCi1B
cHBlbmRpbmcgUFRTPTE3NQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xNzYKLUVY
UEVDVEVEIChleGNlcHRpb24gPT0gJ1F1b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBi
ZWVuIGV4Y2VlZGVkLicpIE9LCi1FWFBFQ1RFRCAoYnVmZmVyZWRSYW5nZXMoKSA9PSAnWyAxMjAu
Li4xNzYgXScpIE9LCi1FWFBFQ1RFRCAodmlkZW8uY3VycmVudFRpbWUgPT0gJzExNScpIE9LCi1B
cHBlbmRpbmcgUFRTPTExNQotRVZFTlQodXBkYXRlZW5kKQotQXBwZW5kaW5nIFBUUz0xMTYKLUVW
RU5UKHVwZGF0ZWVuZCkKLUFwcGVuZGluZyBQVFM9MTE3Ci1FVkVOVCh1cGRhdGVlbmQpCi1BcHBl
bmRpbmcgUFRTPTExOAotRVZFTlQodXBkYXRlZW5kKQotRVhQRUNURUQgKGV4Y2VwdGlvbiAhPSAn
UXVvdGFFeGNlZWRlZEVycm9yOiBUaGUgcXVvdGEgaGFzIGJlZW4gZXhjZWVkZWQuJykgT0sKLUVY
UEVDVEVEIChidWZmZXJlZFJhbmdlcygpID09ICdbIDExNS4uLjExOSwgMTIwLi4uMTcwIF0nKSBP
SwotRU5EIE9GIFRFU1QKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL21l
ZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLWJlZm9yZS1sYXN0LXJhbmdlLW5v
LXF1b3RhLWV4Y2VlZGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZvcmUtbGFzdC1yYW5nZS1u
by1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYThhNjE3ZTRlOWI5OWIw
ZmE0MjUwMDE5NzA2NWZlMGQ4ZDNlOTAyNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1iZWZv
cmUtbGFzdC1yYW5nZS1uby1xdW90YS1leGNlZWRlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MzMgQEAKKworRVZFTlQoc291cmNlb3BlbikKK0VWRU5UKHVwZGF0ZWVuZCkKK0VYUEVDVEVEICh2
aWRlby5jdXJyZW50VGltZSA9PSAnMTIwJykgT0sKK0FwcGVuZGluZyBQVFM9MTIwCitFVkVOVCh1
cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyMQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5n
IFBUUz0xMjIKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTIzCitFVkVOVCh1cGRh
dGVlbmQpCitBcHBlbmRpbmcgUFRTPTEyNAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBU
Uz0xMjUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI2CitFVkVOVCh1cGRhdGVl
bmQpCitBcHBlbmRpbmcgUFRTPTEyNworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0x
MjgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTI5CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTEzMAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzEK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTMyCitFVkVOVCh1cGRhdGVlbmQpCitB
cHBlbmRpbmcgUFRTPTEzMworRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzQKK0VW
RU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBl
bmRpbmcgUFRTPTEzNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMzcKK0VWRU5U
KHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTM4CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRp
bmcgUFRTPTEzOQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDAKK0VWRU5UKHVw
ZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQxCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcg
UFRTPTE0MgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDMKK0VWRU5UKHVwZGF0
ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTQ0CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRT
PTE0NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDYKK0VWRU5UKHVwZGF0ZWVu
ZCkKK0FwcGVuZGluZyBQVFM9MTQ3CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE0
OAorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNDkKK0VWRU5UKHVwZGF0ZWVuZCkK
K0FwcGVuZGluZyBQVFM9MTUwCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1MQor
RVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTIKK0VWRU5UKHVwZGF0ZWVuZCkKK0Fw
cGVuZGluZyBQVFM9MTUzCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NAorRVZF
TlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTUKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVu
ZGluZyBQVFM9MTU2CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE1NworRVZFTlQo
dXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNTgKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGlu
ZyBQVFM9MTU5CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MAorRVZFTlQodXBk
YXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xNjEKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQ
VFM9MTYyCitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2MworRVZFTlQodXBkYXRl
ZW5kKQorQXBwZW5kaW5nIFBUUz0xNjQKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9
MTY1CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2NgorRVZFTlQodXBkYXRlZW5k
KQorQXBwZW5kaW5nIFBUUz0xNjcKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTY4
CitFVkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE2OQorRVZFTlQodXBkYXRlZW5kKQor
QXBwZW5kaW5nIFBUUz0xNzAKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTcxCitF
VkVOVCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3MgorRVZFTlQodXBkYXRlZW5kKQorQXBw
ZW5kaW5nIFBUUz0xNzMKK0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTc0CitFVkVO
VCh1cGRhdGVlbmQpCitBcHBlbmRpbmcgUFRTPTE3NQorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5k
aW5nIFBUUz0xNzYKK0VWRU5UKHVwZGF0ZWVuZCkKK0VYUEVDVEVEIChleGNlcHRpb24gPT0gJ1F1
b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3RhIGhhcyBiZWVuIGV4Y2VlZGVkLicpLCBPQlNFUlZF
RCAnbnVsbCcgRkFJTAorRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTIwLi4uMTc2
IF0nKSwgT0JTRVJWRUQgJ1sgMTIwLi4uMTc3IF0nIEZBSUwKK0VYUEVDVEVEICh2aWRlby5jdXJy
ZW50VGltZSA9PSAnMTE1JykgT0sKK0FwcGVuZGluZyBQVFM9MTE1CitFVkVOVCh1cGRhdGVlbmQp
CitBcHBlbmRpbmcgUFRTPTExNgorRVZFTlQodXBkYXRlZW5kKQorQXBwZW5kaW5nIFBUUz0xMTcK
K0VWRU5UKHVwZGF0ZWVuZCkKK0FwcGVuZGluZyBQVFM9MTE4CitFVkVOVCh1cGRhdGVlbmQpCitF
WFBFQ1RFRCAoZXhjZXB0aW9uICE9ICdRdW90YUV4Y2VlZGVkRXJyb3I6IFRoZSBxdW90YSBoYXMg
YmVlbiBleGNlZWRlZC4nKSBPSworRVhQRUNURUQgKGJ1ZmZlcmVkUmFuZ2VzKCkgPT0gJ1sgMTE1
Li4uMTE5LCAxMjAuLi4xNzAgXScpIE9LCitFTkQgT0YgVEVTVAorCg==
</data>
<flag name="review"
          id="429234"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>