<?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>217333</bug_id>
          
          <creation_ts>2020-10-05 13:28:03 -0700</creation_ts>
          <short_desc>FileReader should transition to readyState DONE after last onprogress event</short_desc>
          <delta_ts>2020-10-06 09:46:24 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>clopez</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1694828</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-05 13:28:03 -0700</bug_when>
    <thetext>FileReader should transition to readyState DONE after last onprogress event</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694830</commentid>
    <comment_count>1</comment_count>
      <attachid>410548</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-05 13:28:51 -0700</bug_when>
    <thetext>Created attachment 410548
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694846</commentid>
    <comment_count>2</comment_count>
      <attachid>410555</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-05 14:10:26 -0700</bug_when>
    <thetext>Created attachment 410555
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694855</commentid>
    <comment_count>3</comment_count>
      <attachid>410555</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-05 14:25:18 -0700</bug_when>
    <thetext>Comment on attachment 410555
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        This matches the behavior of Chrome and Firefox.

This does not quite match Chrome I think. In particular, Chrome has a separate m_loadingState flag so that if abort() gets called in the progress event, it is a no-op. With your change, I do not believe it would be a no-op.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694858</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-05 14:30:33 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #3)
&gt; Comment on attachment 410555 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=410555&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        This matches the behavior of Chrome and Firefox.
&gt; 
&gt; This does not quite match Chrome I think. In particular, Chrome has a
&gt; separate m_loadingState flag so that if abort() gets called in the progress
&gt; event, it is a no-op. With your change, I do not believe it would be a no-op.

You can see the Chromium logic is slightly different here:
https://github.com/chromium/chromium/blob/master/third_party/blink/renderer/core/fileapi/file_reader.cc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694889</commentid>
    <comment_count>5</comment_count>
      <attachid>410567</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-05 15:20:33 -0700</bug_when>
    <thetext>Created attachment 410567
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694890</commentid>
    <comment_count>6</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-10-05 15:21:23 -0700</bug_when>
    <thetext>This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694932</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-05 16:20:39 -0700</bug_when>
    <thetext>EWS seems unhappy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694950</commentid>
    <comment_count>8</comment_count>
      <attachid>410589</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-05 16:50:01 -0700</bug_when>
    <thetext>Created attachment 410589
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695053</commentid>
    <comment_count>9</comment_count>
      <attachid>410589</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-06 00:46:36 -0700</bug_when>
    <thetext>Comment on attachment 410589
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        I also bring the abort function in alignment with https://www.w3.org/TR/FileAPI/#abort

Maybe point to the latest spec: https://w3c.github.io/FileAPI/#abort

&gt; Source/WebCore/fileapi/FileReader.cpp:157
&gt;          return;

It seems the spec is firing the abort event even in case m_state is not loading.
Can you clarify?

&gt; Source/WebCore/fileapi/FileReader.cpp:159
&gt;      // Schedule to have the abort done later since abort() might be called from the event handler and we do not want the resource loading code to be in the stack.

This comment should be removed, we no longer schedule a task.
The spec tells us to not enqueue a task to fire an event. Do we have coverage for that? We usually try to always enqueue a task to fire events.
A test like the following might be good to add:

let flag = true;
reader.onabort = () =&gt; assert_true(flag);
reader.abort();
flag = false;

&gt; Source/WebCore/fileapi/FileReader.cpp:167
&gt; +    fireEvent(eventNames().abortEvent);

Previously, enqueueTask was protecting us from being collected.
We should probably now protect ourselves since JS might free the FileReader object.

&gt; Source/WebCore/fileapi/FileReader.cpp:195
&gt;      enqueueTask([this] {

If didFinishLoading is called, then abort is called before this enqueued task is executed, we might have some issues.
It seems we could hit ASSERT(m_state != DONE);

&gt; Source/WebCore/fileapi/FileReader.cpp:207
&gt;      enqueueTask([this, errorCode] {

Ditto here for aborting just after didFail enqueued this task.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695150</commentid>
    <comment_count>10</comment_count>
      <attachid>410589</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-06 08:16:18 -0700</bug_when>
    <thetext>Comment on attachment 410589
Patch

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

&gt;&gt; Source/WebCore/fileapi/FileReader.cpp:159
&gt;&gt;      // Schedule to have the abort done later since abort() might be called from the event handler and we do not want the resource loading code to be in the stack.
&gt; 
&gt; This comment should be removed, we no longer schedule a task.
&gt; The spec tells us to not enqueue a task to fire an event. Do we have coverage for that? We usually try to always enqueue a task to fire events.
&gt; A test like the following might be good to add:
&gt; 
&gt; let flag = true;
&gt; reader.onabort = () =&gt; assert_true(flag);
&gt; reader.abort();
&gt; flag = false;

fileReader.html already covered this.  That&apos;s how I discovered that Chrome and Firefox fire synchronously.

fileReader.abort();
fileReader.onabort = this.unreached_func(&quot;abort event should fire sync&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695158</commentid>
    <comment_count>11</comment_count>
      <attachid>410640</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-06 08:35:27 -0700</bug_when>
    <thetext>Created attachment 410640
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695161</commentid>
    <comment_count>12</comment_count>
      <attachid>410640</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-06 08:43:53 -0700</bug_when>
    <thetext>Comment on attachment 410640
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        I also bring the abort function in alignment with https://www.w3.org/FileAPI/#abort

Let&apos;s replace with https://w3c.github.io/FileAPI/.

&gt; Source/WebCore/fileapi/FileReader.cpp:160
&gt; +    ASSERT(m_state != DONE);

ASSERT not needed anymore

&gt; Source/WebCore/fileapi/FileReader.cpp:168
&gt; +    fireEvent(eventNames().loadendEvent);

The spec says:
If context object&apos;s state is not &quot;loading&quot;, fire a progress event called loadend at the context object.
I do not really see how that could happen in practice. Maybe the spec could be simplified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695171</commentid>
    <comment_count>13</comment_count>
      <attachid>410640</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-06 08:58:35 -0700</bug_when>
    <thetext>Comment on attachment 410640
Patch

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

&gt;&gt; Source/WebCore/fileapi/FileReader.cpp:168
&gt;&gt; +    fireEvent(eventNames().loadendEvent);
&gt; 
&gt; The spec says:
&gt; If context object&apos;s state is not &quot;loading&quot;, fire a progress event called loadend at the context object.
&gt; I do not really see how that could happen in practice. Maybe the spec could be simplified.

Cannot the JS start loading again by reading again from its abort event listener?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695173</commentid>
    <comment_count>14</comment_count>
      <attachid>410644</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-06 09:00:37 -0700</bug_when>
    <thetext>Created attachment 410644
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695185</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-06 09:45:30 -0700</bug_when>
    <thetext>Committed r268054: &lt;https://trac.webkit.org/changeset/268054&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410644.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695186</commentid>
    <comment_count>16</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-06 09:46:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/70004095&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410548</attachid>
            <date>2020-10-05 13:28:51 -0700</date>
            <delta_ts>2020-10-05 14:10:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217333-20201005132851.patch</filename>
            <type>text/plain</type>
            <size>5728</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGU0MTdlZjZhNDFjMDVi
ZjIzZmEwMzIzMmUwYThmZjFjNmRkNjFlMi4uZDJjZDE2ZTczODIwNDNjZTU1NzNjODVlNGJmNDQ3
MTVhZjk5ODVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEwLTA1ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJl
YWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnBy
b2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGlzIG1hdGNoZXMgdGhlIGJlaGF2aW9yIG9mIENocm9tZSBhbmQgRmlyZWZveC4KKyAg
ICAgICAgQ292ZXJlZCBieSBuZXdseSBwYXNzaW5nIHdlYiBwbGF0Zm9ybSB0ZXN0cy4KKworICAg
ICAgICAqIGZpbGVhcGkvRmlsZVJlYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVh
ZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKwogMjAyMC0xMC0wMyAgWmFsYW4gQnVqdGFzICA8emFs
YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ11bU29mdCBoeXBoZW5dIE1hcmsgdGhl
IGxhc3QgcnVuIG9uIHRoZSBsaW5lIHdoZW4gaHlwaGVuYXRpb24gaXMgcmVxdWlyZWQuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmNwcAppbmRleCAzZTE5OGQ0NzQxNzlhNmQwOWZjYmVj
ZWI3NTY1Y2Y1MDQ0YWI0OTk1Li5iNWVlYWQwYmU3NWU3ZDcwMzZlYzA0NjM3OTdhM2ExMjk1YTgy
N2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAKQEAgLTIwMSwxMCArMjAx
LDkgQEAgdm9pZCBGaWxlUmVhZGVyOjpkaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAgcmV0dXJu
OwogCiAgICAgZW5xdWV1ZVRhc2soW3RoaXNdIHsKKyAgICAgICAgZmlyZUV2ZW50KGV2ZW50TmFt
ZXMoKS5wcm9ncmVzc0V2ZW50KTsKICAgICAgICAgQVNTRVJUKG1fc3RhdGUgIT0gRE9ORSk7CiAg
ICAgICAgIG1fc3RhdGUgPSBET05FOwotCi0gICAgICAgIGZpcmVFdmVudChldmVudE5hbWVzKCku
cHJvZ3Jlc3NFdmVudCk7CiAgICAgICAgIGZpcmVFdmVudChldmVudE5hbWVzKCkubG9hZEV2ZW50
KTsKICAgICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5sb2FkZW5kRXZlbnQpOwogICAgIH0p
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggOWFlMTA0ZDE4NzdhZTJjOTQyNjhi
NzczZjhhOWUyMjBlYmY5ZGE1OC4uNWI2MGY2Yjg0NDVjZTc0YWJmMzQ3NzQyMGZjZmZlZWU3NGQ3
OWQ2ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIw
MjAtMTAtMDUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKwor
ICAgICAgICBGaWxlUmVhZGVyIHNob3VsZCB0cmFuc2l0aW9uIHRvIHJlYWR5U3RhdGUgRE9ORSBh
ZnRlciBsYXN0IG9ucHJvZ3Jlc3MgZXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNzMzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24v
ZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJf
cmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVj
dGVkLnR4dDoKKwogMjAyMC0xMC0wMyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBleHRyYSBzbGFzaCBhZnRlciBlbXB0eSBob3N0IGNv
cGllZCBmcm9tIGJhc2UgVVJMIGlmIHBhdGggaXMgYWxzbyBlbXB0eQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmct
ZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRp
bmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXItZXhwZWN0ZWQudHh0
CmluZGV4IDQxODY4MTlhNDM3NWFmZGY5OWZmNGU3OGFjZDljMDg5YTE2N2I1YTIuLmNlYWNhYmVl
MTRmMTJhZGEwMjAxY2IwZDczNmIwMTNlZTBmM2UwZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2Vj
dGlvbi9maWxlcmVhZGVyX3JlYWRBc0FycmF5QnVmZmVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlci1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACiAKLUZBSUwgRmlsZUFQSSBUZXN0OiBmaWxlcmVhZGVyX3JlYWRBc0FycmF5
QnVmZmVyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEgYnV0IGdvdCAyCitQQVNTIEZpbGVBUEkg
VGVzdDogZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlcgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRh
LXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmct
ZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nLWV4cGVjdGVkLnR4dApp
bmRleCBlOGJiMmFiM2E4OTgyNzQyMzMzZTg2ZWM1NTQ4OGQzMDNhOGJhMTJhLi5jNmM4ZTFmNDgw
ZjMwNWUyY2I3MDgwYmI1YTAzYjQ1MjM5YzBkYWM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rp
b24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRh
dGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmluZy1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACiAKLUZBSUwgRmlsZUFQSSBUZXN0OiBmaWxlcmVhZGVyX3JlYWRBc0JpbmFy
eVN0cmluZyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxlQVBJ
IFRlc3Q6IGZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRh
dGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0
YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQKaW5kZXggOTBi
MTMwMDY0ODk1ODI3NTU3YmNjMjJkN2Q2MTJhZmJmMGM2ZjgwNi4uYjMxNzUwMmE3YWIxMmExYWIx
OTE3YjkzMzAyNTNkMTZjNTgwYTYxMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVy
ZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2Zp
bGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZB
SUwgRmlsZVJlYWRlciByZWFkeVN0YXRlIGR1cmluZyByZWFkQXNEYXRhVVJMIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIDEgYnV0IGdvdCAyCitQQVNTIEZpbGVSZWFkZXIgcmVhZHlTdGF0ZSBkdXJp
bmcgcmVhZEFzRGF0YVVSTAogUEFTUyByZWFkQXNEYXRhVVJMIHJlc3VsdCBmb3IgQmxvYiB3aXRo
IHNwZWNpZmllZCBNSU1FIHR5cGUKIEZBSUwgcmVhZEFzRGF0YVVSTCByZXN1bHQgZm9yIEJsb2Ig
d2l0aCB1bnNwZWNpZmllZCBNSU1FIHR5cGUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgImRhdGE6
YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtO2Jhc2U2NCxWRVZUVkE9PSIgYnV0IGdvdCAiZGF0YTo7
YmFzZTY0LFZFVlRWQT09IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRl
cl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3Jl
YWRBc1RleHQtZXhwZWN0ZWQudHh0CmluZGV4IGM4NzBlMTJkMTE1NTUyYTJlYjJmMzVhYzkzODUw
N2YwM2I3YTUyMTEuLmFiMzVkNzE5NTQ4Njg1MzRhMmMyMDg1MjcxNmQ2MDI3MWIzZWJjZjUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmls
ZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc1RleHQtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmls
ZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc1RleHQtZXhwZWN0ZWQu
dHh0CkBAIC0xLDQgKzEsNCBAQAogCi1GQUlMIHJlYWRBc1RleHQgc2hvdWxkIGNvcnJlY3RseSBy
ZWFkIFVURi04LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyByZWFk
QXNUZXh0IHNob3VsZCBjb3JyZWN0bHkgcmVhZCBVVEYtOC4KIFBBU1MgcmVhZEFzVGV4dCBzaG91
bGQgY29ycmVjdGx5IHJlYWQgVVRGLTE2LgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410555</attachid>
            <date>2020-10-05 14:10:26 -0700</date>
            <delta_ts>2020-10-05 15:20:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217333-20201005141025.patch</filename>
            <type>text/plain</type>
            <size>6433</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQzYjM3NGY1NDQ4YzEw
NjVmZDMzYTBhOTNiOWYyZWQxMDM2YWI1Yy4uNGYzNGQ5OGIzMmUwZGJjYjc5OTY0ZTUwNmNkOWZk
MDQ1YzBkNjBjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEwLTA1ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJl
YWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnBy
b2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGlzIG1hdGNoZXMgdGhlIGJlaGF2aW9yIG9mIENocm9tZSBhbmQgRmlyZWZveC4KKyAg
ICAgICAgQ292ZXJlZCBieSBuZXdseSBwYXNzaW5nIHdlYiBwbGF0Zm9ybSB0ZXN0cy4KKworICAg
ICAgICAqIGZpbGVhcGkvRmlsZVJlYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVh
ZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKwogMjAyMC0xMC0wNSAgTml0emFuIFV6aWVseSAgPG5p
dHphbkB0ZXN0aW0uaW8+CiAKICAgICAgICAgV2ViRHJpdmVyIElucHV0IGNsZWFyL3ZhbHVlIGNv
bW1hbmRzIGZhaWxzIHdoZW4gdGFyZ2V0IGlzIGluc2lkZSBzaGFkb3cgZG9tCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlUmVhZGVyLmNwcAppbmRleCAzZTE5OGQ0NzQxNzlhNmQwOWZjYmVjZWI3NTY1
Y2Y1MDQ0YWI0OTk1Li5iNWVlYWQwYmU3NWU3ZDcwMzZlYzA0NjM3OTdhM2ExMjk1YTgyN2I3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAKQEAgLTIwMSwxMCArMjAxLDkgQEAg
dm9pZCBGaWxlUmVhZGVyOjpkaWRGaW5pc2hMb2FkaW5nKCkKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgZW5xdWV1ZVRhc2soW3RoaXNdIHsKKyAgICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5w
cm9ncmVzc0V2ZW50KTsKICAgICAgICAgQVNTRVJUKG1fc3RhdGUgIT0gRE9ORSk7CiAgICAgICAg
IG1fc3RhdGUgPSBET05FOwotCi0gICAgICAgIGZpcmVFdmVudChldmVudE5hbWVzKCkucHJvZ3Jl
c3NFdmVudCk7CiAgICAgICAgIGZpcmVFdmVudChldmVudE5hbWVzKCkubG9hZEV2ZW50KTsKICAg
ICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5sb2FkZW5kRXZlbnQpOwogICAgIH0pOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggYTNlOTYxZDlkZTcxYTAxYjUyOWUxMTQ4M2Rm
MTU1NzFhMGMxNjM4YS4uYzQzZTdmMjg4NmE0NmVmZjY4OTUyYzE3Zjg3ZjliNDZhNjU0Njg5YiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMTAt
MDUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAg
ICBGaWxlUmVhZGVyIHNob3VsZCB0cmFuc2l0aW9uIHRvIHJlYWR5U3RhdGUgRE9ORSBhZnRlciBs
YXN0IG9ucHJvZ3Jlc3MgZXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxNzMzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNl
Y3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJl
YWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFz
RGF0YVVSTC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVB
UEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4
dDoKKwogMjAyMC0xMC0wNSAgRGllZ28gUGlubyBHYXJjaWEgIDxkcGlub0BpZ2FsaWEuY29tPgog
CiAgICAgICAgIFtXUEVdIFVwZGF0ZSBiYXNlbGluZXMgb2YgdHdvIHRvdWNoLWV2ZW50cyB0ZXN0
cyBhZnRlciByMjY2NjQ5LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IDAxMmFiNWMyMzQyYTQwN2Y4NDMxNTUxZGVhMmMyZjJkMTY4NGY3
YzEuLjhjMGMxYTQzNTZiZWZmMDEyZDk3MzY2YWU1YTJjOThhNDhmZTEyYjEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxl
UmVhZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci1leHBlY3RlZC50eHQKQEAgLTIsNSArMiw1
IEBACiBQQVNTIEZpbGVSZWFkZXIgaW50ZXJmYWNlIG9iamVjdAogUEFTUyBuby1hcmd1bWVudCBG
aWxlUmVhZGVyIGNvbnN0cnVjdG9yCiBGQUlMIEZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0IGFz
c2VydF91bnJlYWNoZWQ6IGFib3J0IGV2ZW50IHNob3VsZCBmaXJlIHN5bmMgUmVhY2hlZCB1bnJl
YWNoYWJsZSBjb2RlCi1GQUlMIEZpbGVSZWFkZXIgU3RhdGVzIC0tIGV2ZW50cyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxlUmVhZGVyIFN0YXRlcyAtLSBldmVu
dHMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlC
dWZmZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJy
YXlCdWZmZXItZXhwZWN0ZWQudHh0CmluZGV4IDQxODY4MTlhNDM3NWFmZGY5OWZmNGU3OGFjZDlj
MDg5YTE2N2I1YTIuLmNlYWNhYmVlMTRmMTJhZGEwMjAxY2IwZDczNmIwMTNlZTBmM2UwZjYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmls
ZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0FycmF5QnVmZmVyLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1
ZmZlci1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgRmlsZUFQSSBUZXN0OiBm
aWxlcmVhZGVyX3JlYWRBc0FycmF5QnVmZmVyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEgYnV0
IGdvdCAyCitQQVNTIEZpbGVBUEkgVGVzdDogZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlcgog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJp
bmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5
U3RyaW5nLWV4cGVjdGVkLnR4dAppbmRleCBlOGJiMmFiM2E4OTgyNzQyMzMzZTg2ZWM1NTQ4OGQz
MDNhOGJhMTJhLi5jNmM4ZTFmNDgwZjMwNWUyY2I3MDgwYmI1YTAzYjQ1MjM5YzBkYWM4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVB
UEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0
cmluZy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgRmlsZUFQSSBUZXN0OiBm
aWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmluZyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1
dCBnb3QgMgorUEFTUyBGaWxlQVBJIFRlc3Q6IGZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5n
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1l
eHBlY3RlZC50eHQKaW5kZXggOTBiMTMwMDY0ODk1ODI3NTU3YmNjMjJkN2Q2MTJhZmJmMGM2Zjgw
Ni4uYjMxNzUwMmE3YWIxMmExYWIxOTE3YjkzMzAyNTNkMTZjNTgwYTYxMiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRp
bmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3Jl
YWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQK
QEAgLTEsNSArMSw1IEBACiAKLUZBSUwgRmlsZVJlYWRlciByZWFkeVN0YXRlIGR1cmluZyByZWFk
QXNEYXRhVVJMIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEgYnV0IGdvdCAyCitQQVNTIEZpbGVS
ZWFkZXIgcmVhZHlTdGF0ZSBkdXJpbmcgcmVhZEFzRGF0YVVSTAogUEFTUyByZWFkQXNEYXRhVVJM
IHJlc3VsdCBmb3IgQmxvYiB3aXRoIHNwZWNpZmllZCBNSU1FIHR5cGUKIEZBSUwgcmVhZEFzRGF0
YVVSTCByZXN1bHQgZm9yIEJsb2Igd2l0aCB1bnNwZWNpZmllZCBNSU1FIHR5cGUgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgImRhdGE6YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtO2Jhc2U2NCxWRVZU
VkE9PSIgYnV0IGdvdCAiZGF0YTo7YmFzZTY0LFZFVlRWQT09IgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEt
c2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc1RleHQtZXhwZWN0ZWQudHh0CmluZGV4IGM4NzBlMTJk
MTE1NTUyYTJlYjJmMzVhYzkzODUwN2YwM2I3YTUyMTEuLmFiMzVkNzE5NTQ4Njg1MzRhMmMyMDg1
MjcxNmQ2MDI3MWIzZWJjZjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVy
X3JlYWRBc1RleHQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVy
X3JlYWRBc1RleHQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCi1GQUlMIHJlYWRBc1Rl
eHQgc2hvdWxkIGNvcnJlY3RseSByZWFkIFVURi04LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAx
IGJ1dCBnb3QgMgorUEFTUyByZWFkQXNUZXh0IHNob3VsZCBjb3JyZWN0bHkgcmVhZCBVVEYtOC4K
IFBBU1MgcmVhZEFzVGV4dCBzaG91bGQgY29ycmVjdGx5IHJlYWQgVVRGLTE2LgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410567</attachid>
            <date>2020-10-05 15:20:33 -0700</date>
            <delta_ts>2020-10-05 17:02:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217333-20201005152033.patch</filename>
            <type>text/plain</type>
            <size>10916</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQzYjM3NGY1NDQ4YzEw
NjVmZDMzYTBhOTNiOWYyZWQxMDM2YWI1Yy4uZGE4NjNhMTljZDc1MTQxNDI0NjFjYmQ1NmM3MTM2
MGJlNGU1YmE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTEwLTA1ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJl
YWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnBy
b2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJIGFsc28gYnJpbmcgdGhlIGFib3J0IGZ1bmN0aW9uIGluIGFsaWdubWVudCB3aXRoIGh0
dHBzOi8vd3d3LnczLm9yZy9UUi9GaWxlQVBJLyNhYm9ydAorICAgICAgICBhbmQgdGhlIGJlaGF2
aW9yIG9mIENocm9tZSBhbmQgRmlyZWZveC4KKworICAgICAgICBBcyBzdWdnZXN0ZWQgYnkgQ2hy
aXMsIEkgYWRkZWQgYSBib29sIHRvIHJlbWVtYmVyIGlmIGxvYWRpbmcgaXMgY29tcGxldGUgc28g
d2UgY2FuCisgICAgICAgIHJldGFpbiBleGlzdGluZyBiZWhhdmlvciB3aGVuIGFib3J0IGlzIGNh
bGxlZCBpbnNpZGUgdGhlIGxhc3Qgb25wcm9ncmVzcyBldmVudC4KKyAgICAgICAgVGhpcyBpcyBu
b3QgbWVudGlvbmVkIGJ5IHRoZSBzcGVjIHlldCwgYnV0IGl0IG1hdGNoZXMgdGhlIGV4aXN0aW5n
IGJlaGF2aW9yIGFuZCB0aGUKKyAgICAgICAgYmVoYXZpb3Igb2YgQ2hyb21lLCBzbyBJIGFkZGVk
IGEgd2ViIHBsYXRmb3JtIHRlc3QgZm9yIGl0LgorCisgICAgICAgICogZmlsZWFwaS9GaWxlUmVh
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXI6OmFib3J0KToKKyAgICAgICAg
KFdlYkNvcmU6OkZpbGVSZWFkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6RmlsZVJlYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVyLmg6
CisKIDIwMjAtMTAtMDUgIE5pdHphbiBVemllbHkgIDxuaXR6YW5AdGVzdGltLmlvPgogCiAgICAg
ICAgIFdlYkRyaXZlciBJbnB1dCBjbGVhci92YWx1ZSBjb21tYW5kcyBmYWlscyB3aGVuIHRhcmdl
dCBpcyBpbnNpZGUgc2hhZG93IGRvbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9GaWxlUmVhZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAK
aW5kZXggM2UxOThkNDc0MTc5YTZkMDlmY2JlY2ViNzU2NWNmNTA0NGFiNDk5NS4uZDg4MTVmYTVh
N2Y1OGY2ODI5NzZhY2IyYWI5ODVmNzM0ZDRjNmUwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZmlsZWFwaS9GaWxlUmVhZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Zp
bGVSZWFkZXIuY3BwCkBAIC0xNTMsMjQgKzE1MywxOSBAQCB2b2lkIEZpbGVSZWFkZXI6OmFib3J0
KCkKIHsKICAgICBMT0coRmlsZUFQSSwgIkZpbGVSZWFkZXI6IGFib3J0aW5nXG4iKTsKIAotICAg
IGlmIChtX2Fib3J0aW5nIHx8IG1fc3RhdGUgIT0gTE9BRElORykKKyAgICBpZiAobV9zdGF0ZSAh
PSBMT0FESU5HIHx8IG1fZmluaXNoZWRMb2FkaW5nKQogICAgICAgICByZXR1cm47Ci0gICAgbV9h
Ym9ydGluZyA9IHRydWU7CiAKICAgICAvLyBTY2hlZHVsZSB0byBoYXZlIHRoZSBhYm9ydCBkb25l
IGxhdGVyIHNpbmNlIGFib3J0KCkgbWlnaHQgYmUgY2FsbGVkIGZyb20gdGhlIGV2ZW50IGhhbmRs
ZXIgYW5kIHdlIGRvIG5vdCB3YW50IHRoZSByZXNvdXJjZSBsb2FkaW5nIGNvZGUgdG8gYmUgaW4g
dGhlIHN0YWNrLgogICAgIG1fcGVuZGluZ1Rhc2tzLmNsZWFyKCk7Ci0gICAgZW5xdWV1ZVRhc2so
W3RoaXNdIHsKLSAgICAgICAgQVNTRVJUKG1fc3RhdGUgIT0gRE9ORSk7CisgICAgQVNTRVJUKG1f
c3RhdGUgIT0gRE9ORSk7CiAKLSAgICAgICAgc3RvcCgpOwotICAgICAgICBtX2Fib3J0aW5nID0g
ZmFsc2U7CisgICAgc3RvcCgpOwogCi0gICAgICAgIG1fZXJyb3IgPSBET01FeGNlcHRpb246OmNy
ZWF0ZShFeGNlcHRpb24geyBBYm9ydEVycm9yIH0pOworICAgIG1fZXJyb3IgPSBET01FeGNlcHRp
b246OmNyZWF0ZShFeGNlcHRpb24geyBBYm9ydEVycm9yIH0pOwogCi0gICAgICAgIGZpcmVFdmVu
dChldmVudE5hbWVzKCkuZXJyb3JFdmVudCk7Ci0gICAgICAgIGZpcmVFdmVudChldmVudE5hbWVz
KCkuYWJvcnRFdmVudCk7Ci0gICAgICAgIGZpcmVFdmVudChldmVudE5hbWVzKCkubG9hZGVuZEV2
ZW50KTsKLSAgICB9KTsKKyAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmFib3J0RXZlbnQpOwor
ICAgIGZpcmVFdmVudChldmVudE5hbWVzKCkubG9hZGVuZEV2ZW50KTsKIH0KIAogdm9pZCBGaWxl
UmVhZGVyOjpkaWRTdGFydExvYWRpbmcoKQpAQCAtMTk3LDE0ICsxOTIsMTEgQEAgdm9pZCBGaWxl
UmVhZGVyOjpkaWRSZWNlaXZlRGF0YSgpCiAKIHZvaWQgRmlsZVJlYWRlcjo6ZGlkRmluaXNoTG9h
ZGluZygpCiB7Ci0gICAgaWYgKG1fYWJvcnRpbmcpCi0gICAgICAgIHJldHVybjsKLQogICAgIGVu
cXVldWVUYXNrKFt0aGlzXSB7CisgICAgICAgIG1fZmluaXNoZWRMb2FkaW5nID0gdHJ1ZTsKKyAg
ICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5wcm9ncmVzc0V2ZW50KTsKICAgICAgICAgQVNT
RVJUKG1fc3RhdGUgIT0gRE9ORSk7CiAgICAgICAgIG1fc3RhdGUgPSBET05FOwotCi0gICAgICAg
IGZpcmVFdmVudChldmVudE5hbWVzKCkucHJvZ3Jlc3NFdmVudCk7CiAgICAgICAgIGZpcmVFdmVu
dChldmVudE5hbWVzKCkubG9hZEV2ZW50KTsKICAgICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMo
KS5sb2FkZW5kRXZlbnQpOwogICAgIH0pOwpAQCAtMjEyLDEwICsyMDQsNiBAQCB2b2lkIEZpbGVS
ZWFkZXI6OmRpZEZpbmlzaExvYWRpbmcoKQogCiB2b2lkIEZpbGVSZWFkZXI6OmRpZEZhaWwoRXhj
ZXB0aW9uQ29kZSBlcnJvckNvZGUpCiB7Ci0gICAgLy8gSWYgd2UncmUgYWJvcnRpbmcsIGRvIG5v
dCBwcm9jZWVkIHdpdGggbm9ybWFsIGVycm9yIGhhbmRsaW5nIHNpbmNlIGl0IGlzIGNvdmVyZWQg
aW4gYWJvcnRpbmcgY29kZS4KLSAgICBpZiAobV9hYm9ydGluZykKLSAgICAgICAgcmV0dXJuOwot
CiAgICAgZW5xdWV1ZVRhc2soW3RoaXMsIGVycm9yQ29kZV0gewogICAgICAgICBBU1NFUlQobV9z
dGF0ZSAhPSBET05FKTsKICAgICAgICAgbV9zdGF0ZSA9IERPTkU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkv
RmlsZVJlYWRlci5oCmluZGV4IGY2MDRkYmIxYjFlZWZjZWVjN2JjZjE3YjdmOTU4MGRmY2I0M2Yx
MGUuLjI4ZjMzZjUxMjI5MTljYmVlZDBhMmQ3NmQyYTdmOGJhYWY1Njc5NjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2ZpbGVhcGkvRmlsZVJlYWRlci5oCkBAIC0xMDMsNyArMTAzLDcgQEAgcHJpdmF0ZToKICAgICB2
b2lkIGZpcmVFdmVudChjb25zdCBBdG9tU3RyaW5nJiB0eXBlKTsKIAogICAgIFJlYWR5U3RhdGUg
bV9zdGF0ZSB7IEVNUFRZIH07Ci0gICAgYm9vbCBtX2Fib3J0aW5nIHsgZmFsc2UgfTsKKyAgICBi
b29sIG1fZmluaXNoZWRMb2FkaW5nIHsgZmFsc2UgfTsKICAgICBSZWZQdHI8QmxvYj4gbV9ibG9i
OwogICAgIEZpbGVSZWFkZXJMb2FkZXI6OlJlYWRUeXBlIG1fcmVhZFR5cGUgeyBGaWxlUmVhZGVy
TG9hZGVyOjpSZWFkQXNCaW5hcnlTdHJpbmcgfTsKICAgICBTdHJpbmcgbV9lbmNvZGluZzsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGEzZTk2MWQ5ZGU3MWEwMWI1MjllMTE0ODNk
ZjE1NTcxYTBjMTYzOGEuLmM0M2U3ZjI4ODZhNDZlZmY2ODk1MmMxN2Y4N2Y5YjQ2YTY1NDY4OWIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTEw
LTA1ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgRmlsZVJlYWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIg
bGFzdCBvbnByb2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1z
ZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVy
ZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRB
c0RhdGFVUkwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxl
QVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzVGV4dC1leHBlY3RlZC50
eHQ6CisKIDIwMjAtMTAtMDUgIERpZWdvIFBpbm8gR2FyY2lhICA8ZHBpbm9AaWdhbGlhLmNvbT4K
IAogICAgICAgICBbV1BFXSBVcGRhdGUgYmFzZWxpbmVzIG9mIHR3byB0b3VjaC1ldmVudHMgdGVz
dHMgYWZ0ZXIgcjI2NjY0OS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVy
LWV4cGVjdGVkLnR4dAppbmRleCAwMTJhYjVjMjM0MmE0MDdmODQzMTU1MWRlYTJjMmYyZDE2ODRm
N2MxLi41MTk2M2NjZGJjZjA3ODcwNTgzN2UwOGJkNjU4YjgzODQxYzNjNDdkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmls
ZVJlYWRlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXItZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEs
NyBAQAogCiBQQVNTIEZpbGVSZWFkZXIgaW50ZXJmYWNlIG9iamVjdAogUEFTUyBuby1hcmd1bWVu
dCBGaWxlUmVhZGVyIGNvbnN0cnVjdG9yCi1GQUlMIEZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0
IGFzc2VydF91bnJlYWNoZWQ6IGFib3J0IGV2ZW50IHNob3VsZCBmaXJlIHN5bmMgUmVhY2hlZCB1
bnJlYWNoYWJsZSBjb2RlCi1GQUlMIEZpbGVSZWFkZXIgU3RhdGVzIC0tIGV2ZW50cyBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxlUmVhZGVyIFN0YXRlcyAtLSBh
Ym9ydAorUEFTUyBGaWxlUmVhZGVyIFN0YXRlcyAtLSBldmVudHMKK1BBU1MgRmlsZVJlYWRlciBT
dGF0ZXMgLS0gYWJvcnQgZHVyaW5nIHByb2dyZXNzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmls
ZVJlYWRlci5odG1sCmluZGV4IGI3NjdlMjJkNGE2NmViYTA2NTYwNjE3NDA1OTUyZGZiZWZhMmMw
ODQuLjQzMDRiMTU1NzE5YTIxOGRkNmI5NzY0ZTBlOGZkN2Q2NTE5MjNjZjggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxl
UmVhZGVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXIuaHRtbApAQCAtMzUsNiArMzUsNyBAQAogICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoZmlsZVJlYWRlci5yZWFkeVN0YXRlLCBGaWxlUmVhZGVyLkRP
TkUpOwogICAgICAgICAgICAgICAgIHRfYWJvcnQuZG9uZSgpOwogICAgICAgICAgICAgfSk7Cisg
ICAgICAgICAgICBmaWxlUmVhZGVyLm9uZXJyb3IgPSB0aGlzLnVucmVhY2hlZF9mdW5jKCJvbmVy
cm9yIHNob3VsZCBub3QgYmUgY2FsbGVkIHdoZW4gYWJvcnQgaXMgY2FsbGVkIik7CiAgICAgICAg
ICAgICBmaWxlUmVhZGVyLmFib3J0KCk7CiAgICAgICAgICAgICBmaWxlUmVhZGVyLm9uYWJvcnQg
PSB0aGlzLnVucmVhY2hlZF9mdW5jKCJhYm9ydCBldmVudCBzaG91bGQgZmlyZSBzeW5jIikKICAg
ICAgICAgfSk7CkBAIC02Miw2ICs2MywzMSBAQAogICAgICAgICAgICAgICAgIHRfZXZlbnQuZG9u
ZSgpOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0pOworCisgICAgICAgIHZhciB0X2Fib3J0
X2R1cmluZ19wcm9ncmVzcyA9IGFzeW5jX3Rlc3QoIkZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0
IGR1cmluZyBwcm9ncmVzcyIpOworICAgICAgICB0X2Fib3J0X2R1cmluZ19wcm9ncmVzcy5zdGVw
KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgdmFyIGZpbGVSZWFkZXIgPSBuZXcgRmlsZVJlYWRl
cigpOworCisgICAgICAgICAgICB2YXIgYmxvYiA9IG5ldyBCbG9iKFsxXSk7CisgICAgICAgICAg
ICBmaWxlUmVhZGVyLnJlYWRBc0FycmF5QnVmZmVyKGJsb2IpOworCisgICAgICAgICAgICB2YXIg
b25wcm9ncmVzc0NhbGxlZCA9IGZhbHNlOworICAgICAgICAgICAgZmlsZVJlYWRlci5vbnByb2dy
ZXNzID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgeworICAgICAgICAgICAgICAgIG9ucHJv
Z3Jlc3NDYWxsZWQgPSB0cnVlOworICAgICAgICAgICAgICAgIGZpbGVSZWFkZXIuYWJvcnQoKTsK
KyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBmaWxlUmVhZGVyLm9uYWJvcnQgPSB0aGlz
LnN0ZXBfZnVuYyhmdW5jdGlvbihlKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hl
ZCgib25hYm9ydCBzaG91bGQgbm90IGJlIGNhbGxlZCBpZiBhYm9ydCBpcyBjYWxsZWQgZHVyaW5n
IGZpbmFsIG9ucHJvZ3Jlc3MiKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBmaWxl
UmVhZGVyLm9ubG9hZGVuZCA9IHRoaXMuc3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsKKyAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZShvbnByb2dyZXNzQ2FsbGVkLCAib25wcm9ncmVzcyBzaG91bGQg
YmUgY2FsbGVkIGJlZm9yZSBvbmxvYWRlbmQiKTsKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0
KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICB0X2Fib3J0X2R1cmluZ19wcm9ncmVz
cy5kb25lKCk7CisgICAgICAgICAgICAgICAgfSwgMCk7CisgICAgICAgICAgICB9KTsKKyAgICAg
ICAgfSk7CiAgICAgPC9zY3JpcHQ+CiAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5n
LWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0FycmF5QnVmZmVyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFk
aW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0FycmF5QnVmZmVyLWV4cGVjdGVkLnR4
dAppbmRleCA0MTg2ODE5YTQzNzVhZmRmOTlmZjRlNzhhY2Q5YzA4OWExNjdiNWEyLi5jZWFjYWJl
ZTE0ZjEyYWRhMDIwMWNiMGQ3MzZiMDEzZWUwZjNlMGY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNl
Y3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmct
ZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXItZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIEZpbGVBUEkgVGVzdDogZmlsZXJlYWRlcl9yZWFkQXNBcnJh
eUJ1ZmZlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxlQVBJ
IFRlc3Q6IGZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0
YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5n
LWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmluZy1leHBlY3RlZC50eHQK
aW5kZXggZThiYjJhYjNhODk4Mjc0MjMzM2U4NmVjNTU0ODhkMzAzYThiYTEyYS4uYzZjOGUxZjQ4
MGYzMDVlMmNiNzA4MGJiNWEwM2I0NTIzOWMwZGFjOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0
aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0CkBA
IC0xLDMgKzEsMyBAQAogCi1GQUlMIEZpbGVBUEkgVGVzdDogZmlsZXJlYWRlcl9yZWFkQXNCaW5h
cnlTdHJpbmcgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQgZ290IDIKK1BBU1MgRmlsZUFQ
SSBUZXN0OiBmaWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmluZwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNEYXRhVVJMLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRh
dGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0CmluZGV4IDkw
YjEzMDA2NDg5NTgyNzU1N2JjYzIyZDdkNjEyYWZiZjBjNmY4MDYuLmIzMTc1MDJhN2FiMTJhMWFi
MTkxN2I5MzMwMjUzZDE2YzU4MGE2MTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxl
cmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9m
aWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1G
QUlMIEZpbGVSZWFkZXIgcmVhZHlTdGF0ZSBkdXJpbmcgcmVhZEFzRGF0YVVSTCBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxlUmVhZGVyIHJlYWR5U3RhdGUgZHVy
aW5nIHJlYWRBc0RhdGFVUkwKIFBBU1MgcmVhZEFzRGF0YVVSTCByZXN1bHQgZm9yIEJsb2Igd2l0
aCBzcGVjaWZpZWQgTUlNRSB0eXBlCiBGQUlMIHJlYWRBc0RhdGFVUkwgcmVzdWx0IGZvciBCbG9i
IHdpdGggdW5zcGVjaWZpZWQgTUlNRSB0eXBlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJkYXRh
OmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsVkVWVFZBPT0iIGJ1dCBnb3QgImRhdGE6
O2Jhc2U2NCxWRVZUVkE9PSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFk
ZXJfcmVhZEFzVGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9y
ZWFkQXNUZXh0LWV4cGVjdGVkLnR4dAppbmRleCBjODcwZTEyZDExNTU1MmEyZWIyZjM1YWM5Mzg1
MDdmMDNiN2E1MjExLi5hYjM1ZDcxOTU0ODY4NTM0YTJjMjA4NTI3MTZkNjAyNzFiM2ViY2Y1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0Zp
bGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0Zp
bGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVk
LnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJTCByZWFkQXNUZXh0IHNob3VsZCBjb3JyZWN0bHkg
cmVhZCBVVEYtOC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQgZ290IDIKK1BBU1MgcmVh
ZEFzVGV4dCBzaG91bGQgY29ycmVjdGx5IHJlYWQgVVRGLTguCiBQQVNTIHJlYWRBc1RleHQgc2hv
dWxkIGNvcnJlY3RseSByZWFkIFVURi0xNi4KIAo=
</data>
<flag name="commit-queue"
          id="426572"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410589</attachid>
            <date>2020-10-05 16:50:01 -0700</date>
            <delta_ts>2020-10-06 08:35:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217333-20201005165000.patch</filename>
            <type>text/plain</type>
            <size>15953</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MDA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmMwZmI5MWY1NGVmOTg0
YjAzY2E1MjYzZWZiYzkxYWFhODkzYjEwZi4uZDlmMTZlODE1YjNhMTVmNDQwMDk3OTNhYjkzMDdm
MzU3ZmQ1ZjdiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTEwLTA1ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJl
YWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnBy
b2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJIGFsc28gYnJpbmcgdGhlIGFib3J0IGZ1bmN0aW9uIGluIGFsaWdubWVudCB3aXRoIGh0
dHBzOi8vd3d3LnczLm9yZy9UUi9GaWxlQVBJLyNhYm9ydAorICAgICAgICBhbmQgdGhlIGJlaGF2
aW9yIG9mIENocm9tZSBhbmQgRmlyZWZveC4KKworICAgICAgICBBcyBzdWdnZXN0ZWQgYnkgQ2hy
aXMsIEkgYWRkZWQgYSBib29sIHRvIHJlbWVtYmVyIGlmIGxvYWRpbmcgaXMgY29tcGxldGUgc28g
d2UgY2FuCisgICAgICAgIHJldGFpbiBleGlzdGluZyBiZWhhdmlvciB3aGVuIGFib3J0IGlzIGNh
bGxlZCBpbnNpZGUgdGhlIGxhc3Qgb25wcm9ncmVzcyBldmVudC4KKyAgICAgICAgVGhpcyBpcyBu
b3QgbWVudGlvbmVkIGJ5IHRoZSBzcGVjIHlldCwgYnV0IGl0IG1hdGNoZXMgdGhlIGV4aXN0aW5n
IGJlaGF2aW9yIGFuZCB0aGUKKyAgICAgICAgYmVoYXZpb3Igb2YgQ2hyb21lLCBzbyBJIGFkZGVk
IGEgd2ViIHBsYXRmb3JtIHRlc3QgZm9yIGl0LgorCisgICAgICAgICogZmlsZWFwaS9GaWxlUmVh
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXI6OmFib3J0KToKKyAgICAgICAg
KFdlYkNvcmU6OkZpbGVSZWFkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6RmlsZVJlYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVyLmg6
CisKIDIwMjAtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAg
ICBVbnJldmlld2VkIGFzc2VydGlvbiBmaXggYWZ0ZXIgcjI2ODAwNi4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9maWxl
YXBpL0ZpbGVSZWFkZXIuY3BwCmluZGV4IDNlMTk4ZDQ3NDE3OWE2ZDA5ZmNiZWNlYjc1NjVjZjUw
NDRhYjQ5OTUuLmQ4ODE1ZmE1YTdmNThmNjgyOTc2YWNiMmFiOTg1ZjczNGQ0YzZlMDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmNwcApAQCAtMTUzLDI0ICsxNTMsMTkgQEAgdm9p
ZCBGaWxlUmVhZGVyOjphYm9ydCgpCiB7CiAgICAgTE9HKEZpbGVBUEksICJGaWxlUmVhZGVyOiBh
Ym9ydGluZ1xuIik7CiAKLSAgICBpZiAobV9hYm9ydGluZyB8fCBtX3N0YXRlICE9IExPQURJTkcp
CisgICAgaWYgKG1fc3RhdGUgIT0gTE9BRElORyB8fCBtX2ZpbmlzaGVkTG9hZGluZykKICAgICAg
ICAgcmV0dXJuOwotICAgIG1fYWJvcnRpbmcgPSB0cnVlOwogCiAgICAgLy8gU2NoZWR1bGUgdG8g
aGF2ZSB0aGUgYWJvcnQgZG9uZSBsYXRlciBzaW5jZSBhYm9ydCgpIG1pZ2h0IGJlIGNhbGxlZCBm
cm9tIHRoZSBldmVudCBoYW5kbGVyIGFuZCB3ZSBkbyBub3Qgd2FudCB0aGUgcmVzb3VyY2UgbG9h
ZGluZyBjb2RlIHRvIGJlIGluIHRoZSBzdGFjay4KICAgICBtX3BlbmRpbmdUYXNrcy5jbGVhcigp
OwotICAgIGVucXVldWVUYXNrKFt0aGlzXSB7Ci0gICAgICAgIEFTU0VSVChtX3N0YXRlICE9IERP
TkUpOworICAgIEFTU0VSVChtX3N0YXRlICE9IERPTkUpOwogCi0gICAgICAgIHN0b3AoKTsKLSAg
ICAgICAgbV9hYm9ydGluZyA9IGZhbHNlOworICAgIHN0b3AoKTsKIAotICAgICAgICBtX2Vycm9y
ID0gRE9NRXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgQWJvcnRFcnJvciB9KTsKKyAgICBt
X2Vycm9yID0gRE9NRXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgQWJvcnRFcnJvciB9KTsK
IAotICAgICAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmVycm9yRXZlbnQpOwotICAgICAgICBm
aXJlRXZlbnQoZXZlbnROYW1lcygpLmFib3J0RXZlbnQpOwotICAgICAgICBmaXJlRXZlbnQoZXZl
bnROYW1lcygpLmxvYWRlbmRFdmVudCk7Ci0gICAgfSk7CisgICAgZmlyZUV2ZW50KGV2ZW50TmFt
ZXMoKS5hYm9ydEV2ZW50KTsKKyAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmxvYWRlbmRFdmVu
dCk7CiB9CiAKIHZvaWQgRmlsZVJlYWRlcjo6ZGlkU3RhcnRMb2FkaW5nKCkKQEAgLTE5NywxNCAr
MTkyLDExIEBAIHZvaWQgRmlsZVJlYWRlcjo6ZGlkUmVjZWl2ZURhdGEoKQogCiB2b2lkIEZpbGVS
ZWFkZXI6OmRpZEZpbmlzaExvYWRpbmcoKQogewotICAgIGlmIChtX2Fib3J0aW5nKQotICAgICAg
ICByZXR1cm47Ci0KICAgICBlbnF1ZXVlVGFzayhbdGhpc10geworICAgICAgICBtX2ZpbmlzaGVk
TG9hZGluZyA9IHRydWU7CisgICAgICAgIGZpcmVFdmVudChldmVudE5hbWVzKCkucHJvZ3Jlc3NF
dmVudCk7CiAgICAgICAgIEFTU0VSVChtX3N0YXRlICE9IERPTkUpOwogICAgICAgICBtX3N0YXRl
ID0gRE9ORTsKLQotICAgICAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQp
OwogICAgICAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmxvYWRFdmVudCk7CiAgICAgICAgIGZp
cmVFdmVudChldmVudE5hbWVzKCkubG9hZGVuZEV2ZW50KTsKICAgICB9KTsKQEAgLTIxMiwxMCAr
MjA0LDYgQEAgdm9pZCBGaWxlUmVhZGVyOjpkaWRGaW5pc2hMb2FkaW5nKCkKIAogdm9pZCBGaWxl
UmVhZGVyOjpkaWRGYWlsKEV4Y2VwdGlvbkNvZGUgZXJyb3JDb2RlKQogewotICAgIC8vIElmIHdl
J3JlIGFib3J0aW5nLCBkbyBub3QgcHJvY2VlZCB3aXRoIG5vcm1hbCBlcnJvciBoYW5kbGluZyBz
aW5jZSBpdCBpcyBjb3ZlcmVkIGluIGFib3J0aW5nIGNvZGUuCi0gICAgaWYgKG1fYWJvcnRpbmcp
Ci0gICAgICAgIHJldHVybjsKLQogICAgIGVucXVldWVUYXNrKFt0aGlzLCBlcnJvckNvZGVdIHsK
ICAgICAgICAgQVNTRVJUKG1fc3RhdGUgIT0gRE9ORSk7CiAgICAgICAgIG1fc3RhdGUgPSBET05F
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaAppbmRleCBmNjA0ZGJiMWIxZWVmY2VlYzdi
Y2YxN2I3Zjk1ODBkZmNiNDNmMTBlLi4yOGYzM2Y1MTIyOTE5Y2JlZWQwYTJkNzZkMmE3ZjhiYWFm
NTY3OTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaApAQCAtMTAzLDcgKzEwMyw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaXJlRXZlbnQoY29uc3QgQXRvbVN0cmluZyYgdHlwZSk7
CiAKICAgICBSZWFkeVN0YXRlIG1fc3RhdGUgeyBFTVBUWSB9OwotICAgIGJvb2wgbV9hYm9ydGlu
ZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2ZpbmlzaGVkTG9hZGluZyB7IGZhbHNlIH07CiAgICAg
UmVmUHRyPEJsb2I+IG1fYmxvYjsKICAgICBGaWxlUmVhZGVyTG9hZGVyOjpSZWFkVHlwZSBtX3Jl
YWRUeXBlIHsgRmlsZVJlYWRlckxvYWRlcjo6UmVhZEFzQmluYXJ5U3RyaW5nIH07CiAgICAgU3Ry
aW5nIG1fZW5jb2Rpbmc7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjJhN2RlNWE1OGZhMWJlZjYyMDc2YmZmZTQyMjgzODBm
YzEyMDk5Yi4uNTQ0YjNmMmE2NDQxMmJlN2UyMDQ2NmNjZmE0ZjIyZDc2NGExZDgyNSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE1IEBACisyMDIwLTEwLTA1ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJlYWRlciBzaG91bGQgdHJhbnNpdGlvbiB0
byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnByb2dyZXNzIGV2ZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTczMzMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvZmlsZXMvZmlsZS1y
ZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZmlsZXMvZmlsZS1yZWFk
ZXItYWJvcnQtdXNpbmctb3Blbi1wYW5lbC1leHBlY3RlZC50eHQ6CisgICAgICAgIFVwZGF0ZSBl
eHBlY3RhdGlvbnMgdG8gcmVmbGVjdCBuZXcgYmVoYXZpb3IgdGhhdCBvbmVycm9yIGlzIG5vdCBj
YWxsZWQgYmVmb3JlIG9uYWJvcnQsCisgICAgICAgIG1hdGNoaW5nIENocm9tZSwgRmlyZWZveCwg
YW5kIHRoZSBzcGVjaWZpY2F0aW9uLgorCiAyMDIwLTEwLTA1ICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBWZWN0b3JpemUgbGluZWFyIHRvIGRlY2li
ZWxzIGNvbnZlcnNpb24gaW4gUmVhbHRpbWVBbmFseXNlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKaW5kZXggZjJhMTIxYzI4YzdmZDAwYzM0ZTljYTFlZmU0ZWNlZTQzYjNlODcxMy4uOTU3
OGY1ZTZmYThlNDFlNjhkODYwMGM4MzhlMTllN2E3ZmQ5ZTRhYyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMTAtMDUgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBGaWxlUmVhZGVyIHNob3Vs
ZCB0cmFuc2l0aW9uIHRvIHJlYWR5U3RhdGUgRE9ORSBhZnRlciBsYXN0IG9ucHJvZ3Jlc3MgZXZl
bnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzMz
MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvRmlsZVJlYWRlci93b3JrZXJzLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0
bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNl
Y3Rpb24vRmlsZVJlYWRlci1tdWx0aXBsZS1yZWFkcy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRl
cl9hYm9ydC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVB
UEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9u
L2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFk
QXNUZXh0LWV4cGVjdGVkLnR4dDoKKwogMjAyMC0xMC0wNSAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFdlYktpdCBkb2Vzbid0IHBhcnNlICIjIiBhcyBkZWxpbWl0ZXIg
Zm9yIGZyYWdtZW50IGlkZW50aWZpZXIgaW4gZGF0YSBVUklzCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2ZpbGVzL2ZpbGUtcmVhZGVyLWFib3J0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0CmluZGV4IDg1YzJm
NDI1YmMwMGZiMzM0OWM2NTAyNjk4M2FiYWI0YWJlZTFmZDIuLjcxNWZjNGY5NjgwM2ZhNjgzODMw
YzY3ODY2YWY2Yzc1MDQyMjU5NmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZmlsZXMv
ZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZmls
ZXMvZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNiBAQAogCiBUZXN0
IHRoYXQgRmlsZVJlYWRlci5hYm9ydCB3b3Jrcy4KIFJlY2VpdmVkIGxvYWRzdGFydCBldmVudAot
UmVjZWl2ZWQgZXJyb3IgZXZlbnQ6IDIwCiBSZWNlaXZlZCBhYm9ydCBldmVudAogUmVjZWl2ZWQg
bG9hZGVuZCBldmVudAogRE9ORQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9m
aWxlLXJlYWRlci1hYm9ydC11c2luZy1vcGVuLXBhbmVsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtdXNpbmctb3Blbi1wYW5lbC1leHBlY3Rl
ZC50eHQKaW5kZXggMTc4MmU3ZjczY2E0MzVkMjEyNmExYWQ1MzA3ZWNjYjRhNzk0ZTgyZi4uN2Yx
MDA4MTE0MjljYjdjOWZkMDk0ZGQyMzllOTBmZTkwNGM3NjU0NiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9maWxlcy9maWxlLXJlYWRlci1hYm9ydC11c2luZy1vcGVuLXBhbmVsLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2ZpbGUtcmVhZGVyLWFib3J0LXVz
aW5nLW9wZW4tcGFuZWwtZXhwZWN0ZWQudHh0CkBAIC0yLDcgKzIsNiBAQCBPUEVOIEZJTEUgUEFO
RUwKIAogVGVzdCB0aGF0IEZpbGVSZWFkZXIuYWJvcnQgd29ya3MuCiBSZWNlaXZlZCBsb2Fkc3Rh
cnQgZXZlbnQKLVJlY2VpdmVkIGVycm9yIGV2ZW50OiAyMAogUmVjZWl2ZWQgYWJvcnQgZXZlbnQK
IFJlY2VpdmVkIGxvYWRlbmQgZXZlbnQKIERPTkUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9GaWxlUmVhZGVyL3dvcmtlcnMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL0ZpbGVSZWFkZXIvd29ya2Vycy1leHBlY3RlZC50eHQKaW5kZXggODk1ODljMGVi
YTY3ZjgxYWRhZjQ0YmI1ZjNiM2MzNDc3Nzc5ZTJlNC4uYTdkMGU3MTVhZjUxZDhjNmE4ZDRjMDY5
YjUwMzYyZTdlYjNhNjY5ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL0ZpbGVSZWFkZXIvd29ya2Vycy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJ
L0ZpbGVSZWFkZXIvd29ya2Vycy1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMyBAQAotQ09OU09M
RSBNRVNTQUdFOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLgogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLVRJTUVPVVQgRmlsZVJl
YWRlciBjcmVhdGVkIGFmdGVyIGEgd29ya2VyIHNlbGYuY2xvc2UoKSBUZXN0IHRpbWVkIG91dAot
Ci1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IEludmFsaWRTdGF0ZUVycm9yOiBUaGUg
b2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLVRJTUVPVVQgRmlsZVJlYWRlciBjcmVh
dGVkIGFmdGVyIGEgd29ya2VyIHNlbGYuY2xvc2UoKSBUZXN0IHRpbWVkIG91dAorUEFTUyBGaWxl
UmVhZGVyIGNyZWF0ZWQgYWZ0ZXIgYSB3b3JrZXIgc2VsZi5jbG9zZSgpCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxl
UmVhZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLWV4cGVjdGVkLnR4dAppbmRleCAwMTJhYjVjMjM0
MmE0MDdmODQzMTU1MWRlYTJjMmYyZDE2ODRmN2MxLi41MTk2M2NjZGJjZjA3ODcwNTgzN2UwOGJk
NjU4YjgzODQxYzNjNDdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFk
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNyBAQAogCiBQQVNTIEZpbGVSZWFkZXIgaW50ZXJm
YWNlIG9iamVjdAogUEFTUyBuby1hcmd1bWVudCBGaWxlUmVhZGVyIGNvbnN0cnVjdG9yCi1GQUlM
IEZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0IGFzc2VydF91bnJlYWNoZWQ6IGFib3J0IGV2ZW50
IHNob3VsZCBmaXJlIHN5bmMgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlMIEZpbGVSZWFk
ZXIgU3RhdGVzIC0tIGV2ZW50cyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgor
UEFTUyBGaWxlUmVhZGVyIFN0YXRlcyAtLSBhYm9ydAorUEFTUyBGaWxlUmVhZGVyIFN0YXRlcyAt
LSBldmVudHMKK1BBU1MgRmlsZVJlYWRlciBTdGF0ZXMgLS0gYWJvcnQgZHVyaW5nIHByb2dyZXNz
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci5odG1sCmluZGV4IGI3NjdlMjJkNGE2
NmViYTA2NTYwNjE3NDA1OTUyZGZiZWZhMmMwODQuLjQzMDRiMTU1NzE5YTIxOGRkNmI5NzY0ZTBl
OGZkN2Q2NTE5MjNjZjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXIuaHRtbApA
QCAtMzUsNiArMzUsNyBAQAogICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZmlsZVJlYWRl
ci5yZWFkeVN0YXRlLCBGaWxlUmVhZGVyLkRPTkUpOwogICAgICAgICAgICAgICAgIHRfYWJvcnQu
ZG9uZSgpOwogICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBmaWxlUmVhZGVyLm9uZXJyb3Ig
PSB0aGlzLnVucmVhY2hlZF9mdW5jKCJvbmVycm9yIHNob3VsZCBub3QgYmUgY2FsbGVkIHdoZW4g
YWJvcnQgaXMgY2FsbGVkIik7CiAgICAgICAgICAgICBmaWxlUmVhZGVyLmFib3J0KCk7CiAgICAg
ICAgICAgICBmaWxlUmVhZGVyLm9uYWJvcnQgPSB0aGlzLnVucmVhY2hlZF9mdW5jKCJhYm9ydCBl
dmVudCBzaG91bGQgZmlyZSBzeW5jIikKICAgICAgICAgfSk7CkBAIC02Miw2ICs2MywzMSBAQAog
ICAgICAgICAgICAgICAgIHRfZXZlbnQuZG9uZSgpOwogICAgICAgICAgICAgfSk7CiAgICAgICAg
IH0pOworCisgICAgICAgIHZhciB0X2Fib3J0X2R1cmluZ19wcm9ncmVzcyA9IGFzeW5jX3Rlc3Qo
IkZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0IGR1cmluZyBwcm9ncmVzcyIpOworICAgICAgICB0
X2Fib3J0X2R1cmluZ19wcm9ncmVzcy5zdGVwKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgdmFy
IGZpbGVSZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpOworCisgICAgICAgICAgICB2YXIgYmxvYiA9
IG5ldyBCbG9iKFsxXSk7CisgICAgICAgICAgICBmaWxlUmVhZGVyLnJlYWRBc0FycmF5QnVmZmVy
KGJsb2IpOworCisgICAgICAgICAgICB2YXIgb25wcm9ncmVzc0NhbGxlZCA9IGZhbHNlOworICAg
ICAgICAgICAgZmlsZVJlYWRlci5vbnByb2dyZXNzID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24o
ZSkgeworICAgICAgICAgICAgICAgIG9ucHJvZ3Jlc3NDYWxsZWQgPSB0cnVlOworICAgICAgICAg
ICAgICAgIGZpbGVSZWFkZXIuYWJvcnQoKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAg
ICBmaWxlUmVhZGVyLm9uYWJvcnQgPSB0aGlzLnN0ZXBfZnVuYyhmdW5jdGlvbihlKSB7CisgICAg
ICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgib25hYm9ydCBzaG91bGQgbm90IGJlIGNhbGxl
ZCBpZiBhYm9ydCBpcyBjYWxsZWQgZHVyaW5nIGZpbmFsIG9ucHJvZ3Jlc3MiKTsKKyAgICAgICAg
ICAgIH0pOworCisgICAgICAgICAgICBmaWxlUmVhZGVyLm9ubG9hZGVuZCA9IHRoaXMuc3RlcF9m
dW5jKGZ1bmN0aW9uKGUpIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShvbnByb2dyZXNz
Q2FsbGVkLCAib25wcm9ncmVzcyBzaG91bGQgYmUgY2FsbGVkIGJlZm9yZSBvbmxvYWRlbmQiKTsK
KyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAg
ICAgICB0X2Fib3J0X2R1cmluZ19wcm9ncmVzcy5kb25lKCk7CisgICAgICAgICAgICAgICAgfSwg
MCk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfSk7CiAgICAgPC9zY3JpcHQ+CiAgIDwvYm9k
eT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9GaWxlUmVhZGVyLW11bHRp
cGxlLXJlYWRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9GaWxlUmVhZGVyLW11bHRp
cGxlLXJlYWRzLWV4cGVjdGVkLnR4dAppbmRleCA2YjY1ZTE1OGYxMzUwNDAyMjQzOTdjOGIwNTE1
NTM5ZWEyZjVmNDE1Li4xOTk4MTFlOWRjNzQ2NDVjNjIyODQ3NjUyMzNmOWRkMDAzZWMzZmY2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0Zp
bGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vRmlsZVJlYWRlci1tdWx0aXBsZS1yZWFkcy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL0ZpbGVSZWFkZXItbXVsdGlwbGUtcmVhZHMt
ZXhwZWN0ZWQudHh0CkBAIC00LDUgKzQsNSBAQCBQQVNTIHRlc3QgRmlsZVJlYWRlciBJbnZhbGlk
U3RhdGVFcnJvciBleGNlcHRpb24gZm9yIHJlYWRBc0RhdGFVUkwKIFBBU1MgdGVzdCBGaWxlUmVh
ZGVyIEludmFsaWRTdGF0ZUVycm9yIGV4Y2VwdGlvbiBmb3IgcmVhZEFzQXJyYXlCdWZmZXIKIFBB
U1MgdGVzdCBGaWxlUmVhZGVyIEludmFsaWRTdGF0ZUVycm9yIGV4Y2VwdGlvbiBpbiBvbmxvYWRz
dGFydCBldmVudCBmb3IgcmVhZEFzQXJyYXlCdWZmZXIKIFBBU1MgdGVzdCBGaWxlUmVhZGVyIG5v
IEludmFsaWRTdGF0ZUVycm9yIGV4Y2VwdGlvbiBpbiBsb2FkZW5kIGV2ZW50IGhhbmRsZXIgZm9y
IHJlYWRBc0FycmF5QnVmZmVyCi1GQUlMIHRlc3QgYWJvcnQgYW5kIHJlc3RhcnQgaW4gb25sb2Fk
c3RhcnQgZXZlbnQgZm9yIHJlYWRBc1RleHQgVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0
YXRlLgorUEFTUyB0ZXN0IGFib3J0IGFuZCByZXN0YXJ0IGluIG9ubG9hZHN0YXJ0IGV2ZW50IGZv
ciByZWFkQXNUZXh0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX2Fi
b3J0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX2Fib3J0LWV4cGVj
dGVkLnR4dAppbmRleCAyM2NkOGQ1YzhiYmIwNWZmZTdhZGNiNTMwNGQxZDI5MGVlNDllYWI4Li5i
NDU3MDlhNjUyMmUyMThjZGIxN2VjZTE4YWFlNmEzZWVmZDczZmYxIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1k
YXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9hYm9ydC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1z
ZWN0aW9uL2ZpbGVyZWFkZXJfYWJvcnQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiBQ
QVNTIEFib3J0aW5nIGJlZm9yZSByZWFkCi1GQUlMIEFib3J0aW5nIGFmdGVyIHJlYWQgYXNzZXJ0
X2VxdWFsczogRXhwZWN0ZWQgYWJvcnQgZXZlbnQsIGJ1dCBnb3QgZXJyb3IgZXZlbnQgaW5zdGVh
ZCBleHBlY3RlZCAiYWJvcnQiIGJ1dCBnb3QgImVycm9yIgorUEFTUyBBYm9ydGluZyBhZnRlciBy
ZWFkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0FycmF5
QnVmZmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0Fy
cmF5QnVmZmVyLWV4cGVjdGVkLnR4dAppbmRleCA0MTg2ODE5YTQzNzVhZmRmOTlmZjRlNzhhY2Q5
YzA4OWExNjdiNWEyLi5jZWFjYWJlZTE0ZjEyYWRhMDIwMWNiMGQ3MzZiMDEzZWUwZjNlMGY2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0Zp
bGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlci1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlC
dWZmZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEZpbGVBUEkgVGVzdDog
ZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1
dCBnb3QgMgorUEFTUyBGaWxlQVBJIFRlc3Q6IGZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3Ry
aW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0JpbmFy
eVN0cmluZy1leHBlY3RlZC50eHQKaW5kZXggZThiYjJhYjNhODk4Mjc0MjMzM2U4NmVjNTU0ODhk
MzAzYThiYTEyYS4uYzZjOGUxZjQ4MGYzMDVlMmNiNzA4MGJiNWEwM2I0NTIzOWMwZGFjOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxl
QVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlT
dHJpbmctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEZpbGVBUEkgVGVzdDog
ZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmcgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBi
dXQgZ290IDIKK1BBU1MgRmlsZUFQSSBUZXN0OiBmaWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmlu
ZwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNEYXRhVVJM
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwt
ZXhwZWN0ZWQudHh0CmluZGV4IDkwYjEzMDA2NDg5NTgyNzU1N2JjYzIyZDdkNjEyYWZiZjBjNmY4
MDYuLmIzMTc1MDJhN2FiMTJhMWFiMTkxN2I5MzMwMjUzZDE2YzU4MGE2MTIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFk
aW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9y
ZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0
CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEZpbGVSZWFkZXIgcmVhZHlTdGF0ZSBkdXJpbmcgcmVh
ZEFzRGF0YVVSTCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxl
UmVhZGVyIHJlYWR5U3RhdGUgZHVyaW5nIHJlYWRBc0RhdGFVUkwKIFBBU1MgcmVhZEFzRGF0YVVS
TCByZXN1bHQgZm9yIEJsb2Igd2l0aCBzcGVjaWZpZWQgTUlNRSB0eXBlCiBGQUlMIHJlYWRBc0Rh
dGFVUkwgcmVzdWx0IGZvciBCbG9iIHdpdGggdW5zcGVjaWZpZWQgTUlNRSB0eXBlIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICJkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsVkVW
VFZBPT0iIGJ1dCBnb3QgImRhdGE6O2Jhc2U2NCxWRVZUVkE9PSIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmct
ZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzVGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRh
LXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dAppbmRleCBjODcwZTEy
ZDExNTU1MmEyZWIyZjM1YWM5Mzg1MDdmMDNiN2E1MjExLi5hYjM1ZDcxOTU0ODY4NTM0YTJjMjA4
NTI3MTZkNjAyNzFiM2ViY2Y1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRl
cl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRl
cl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJTCByZWFkQXNU
ZXh0IHNob3VsZCBjb3JyZWN0bHkgcmVhZCBVVEYtOC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
MSBidXQgZ290IDIKK1BBU1MgcmVhZEFzVGV4dCBzaG91bGQgY29ycmVjdGx5IHJlYWQgVVRGLTgu
CiBQQVNTIHJlYWRBc1RleHQgc2hvdWxkIGNvcnJlY3RseSByZWFkIFVURi0xNi4KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410640</attachid>
            <date>2020-10-06 08:35:27 -0700</date>
            <delta_ts>2020-10-06 09:00:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217333-20201006083526.patch</filename>
            <type>text/plain</type>
            <size>16190</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmMwZmI5MWY1NGVmOTg0
YjAzY2E1MjYzZWZiYzkxYWFhODkzYjEwZi4uMDBiOTUxZDQ1YTUzODRjMzIxZDM0NGExM2M0Yzg4
NjlkMzE5NjJhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTEwLTA2ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJl
YWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnBy
b2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJIGFsc28gYnJpbmcgdGhlIGFib3J0IGZ1bmN0aW9uIGluIGFsaWdubWVudCB3aXRoIGh0
dHBzOi8vd3d3LnczLm9yZy9GaWxlQVBJLyNhYm9ydAorICAgICAgICBhbmQgdGhlIGJlaGF2aW9y
IG9mIENocm9tZSBhbmQgRmlyZWZveC4KKworICAgICAgICBBcyBzdWdnZXN0ZWQgYnkgQ2hyaXMs
IEkgYWRkZWQgYSBib29sIHRvIHJlbWVtYmVyIGlmIGxvYWRpbmcgaXMgY29tcGxldGUgc28gd2Ug
Y2FuCisgICAgICAgIHJldGFpbiBleGlzdGluZyBiZWhhdmlvciB3aGVuIGFib3J0IGlzIGNhbGxl
ZCBpbnNpZGUgdGhlIGxhc3Qgb25wcm9ncmVzcyBldmVudC4KKyAgICAgICAgVGhpcyBpcyBub3Qg
bWVudGlvbmVkIGJ5IHRoZSBzcGVjIHlldCwgYnV0IGl0IG1hdGNoZXMgdGhlIGV4aXN0aW5nIGJl
aGF2aW9yIGFuZCB0aGUKKyAgICAgICAgYmVoYXZpb3Igb2YgQ2hyb21lLCBzbyBJIGFkZGVkIGEg
d2ViIHBsYXRmb3JtIHRlc3QgZm9yIGl0LgorCisgICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXI6OmFib3J0KToKKyAgICAgICAgKFdl
YkNvcmU6OkZpbGVSZWFkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
RmlsZVJlYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVyLmg6CisK
IDIwMjAtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBV
bnJldmlld2VkIGFzc2VydGlvbiBmaXggYWZ0ZXIgcjI2ODAwNi4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBp
L0ZpbGVSZWFkZXIuY3BwCmluZGV4IDNlMTk4ZDQ3NDE3OWE2ZDA5ZmNiZWNlYjc1NjVjZjUwNDRh
YjQ5OTUuLjhjYTkyMTMxNDg5YTJkM2UyOWVjYjlhYjZlZWQ1NWQ2NjNjZDUxYTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmNwcApAQCAtMTUzLDI0ICsxNTMsMTkgQEAgdm9pZCBG
aWxlUmVhZGVyOjphYm9ydCgpCiB7CiAgICAgTE9HKEZpbGVBUEksICJGaWxlUmVhZGVyOiBhYm9y
dGluZ1xuIik7CiAKLSAgICBpZiAobV9hYm9ydGluZyB8fCBtX3N0YXRlICE9IExPQURJTkcpCisg
ICAgaWYgKG1fc3RhdGUgIT0gTE9BRElORyB8fCBtX2ZpbmlzaGVkTG9hZGluZykKICAgICAgICAg
cmV0dXJuOwotICAgIG1fYWJvcnRpbmcgPSB0cnVlOwogCi0gICAgLy8gU2NoZWR1bGUgdG8gaGF2
ZSB0aGUgYWJvcnQgZG9uZSBsYXRlciBzaW5jZSBhYm9ydCgpIG1pZ2h0IGJlIGNhbGxlZCBmcm9t
IHRoZSBldmVudCBoYW5kbGVyIGFuZCB3ZSBkbyBub3Qgd2FudCB0aGUgcmVzb3VyY2UgbG9hZGlu
ZyBjb2RlIHRvIGJlIGluIHRoZSBzdGFjay4KICAgICBtX3BlbmRpbmdUYXNrcy5jbGVhcigpOwot
ICAgIGVucXVldWVUYXNrKFt0aGlzXSB7Ci0gICAgICAgIEFTU0VSVChtX3N0YXRlICE9IERPTkUp
OworICAgIEFTU0VSVChtX3N0YXRlICE9IERPTkUpOwogCi0gICAgICAgIHN0b3AoKTsKLSAgICAg
ICAgbV9hYm9ydGluZyA9IGZhbHNlOworICAgIHN0b3AoKTsKIAotICAgICAgICBtX2Vycm9yID0g
RE9NRXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgQWJvcnRFcnJvciB9KTsKKyAgICBtX2Vy
cm9yID0gRE9NRXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgQWJvcnRFcnJvciB9KTsKIAot
ICAgICAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmVycm9yRXZlbnQpOwotICAgICAgICBmaXJl
RXZlbnQoZXZlbnROYW1lcygpLmFib3J0RXZlbnQpOwotICAgICAgICBmaXJlRXZlbnQoZXZlbnRO
YW1lcygpLmxvYWRlbmRFdmVudCk7Ci0gICAgfSk7CisgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0g
bWFrZVJlZigqdGhpcyk7CisgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5hYm9ydEV2ZW50KTsK
KyAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmxvYWRlbmRFdmVudCk7CiB9CiAKIHZvaWQgRmls
ZVJlYWRlcjo6ZGlkU3RhcnRMb2FkaW5nKCkKQEAgLTE5NywxNCArMTkyLDE0IEBAIHZvaWQgRmls
ZVJlYWRlcjo6ZGlkUmVjZWl2ZURhdGEoKQogCiB2b2lkIEZpbGVSZWFkZXI6OmRpZEZpbmlzaExv
YWRpbmcoKQogewotICAgIGlmIChtX2Fib3J0aW5nKQotICAgICAgICByZXR1cm47Ci0KICAgICBl
bnF1ZXVlVGFzayhbdGhpc10gewotICAgICAgICBBU1NFUlQobV9zdGF0ZSAhPSBET05FKTsKLSAg
ICAgICAgbV9zdGF0ZSA9IERPTkU7Ci0KKyAgICAgICAgaWYgKG1fc3RhdGUgPT0gRE9ORSkKKyAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgbV9maW5pc2hlZExvYWRpbmcgPSB0cnVlOwogICAg
ICAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQpOworICAgICAgICBpZiAo
bV9zdGF0ZSA9PSBET05FKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBtX3N0YXRlID0g
RE9ORTsKICAgICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5sb2FkRXZlbnQpOwogICAgICAg
ICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmxvYWRlbmRFdmVudCk7CiAgICAgfSk7CkBAIC0yMTIs
MTIgKzIwNyw5IEBAIHZvaWQgRmlsZVJlYWRlcjo6ZGlkRmluaXNoTG9hZGluZygpCiAKIHZvaWQg
RmlsZVJlYWRlcjo6ZGlkRmFpbChFeGNlcHRpb25Db2RlIGVycm9yQ29kZSkKIHsKLSAgICAvLyBJ
ZiB3ZSdyZSBhYm9ydGluZywgZG8gbm90IHByb2NlZWQgd2l0aCBub3JtYWwgZXJyb3IgaGFuZGxp
bmcgc2luY2UgaXQgaXMgY292ZXJlZCBpbiBhYm9ydGluZyBjb2RlLgotICAgIGlmIChtX2Fib3J0
aW5nKQotICAgICAgICByZXR1cm47Ci0KICAgICBlbnF1ZXVlVGFzayhbdGhpcywgZXJyb3JDb2Rl
XSB7Ci0gICAgICAgIEFTU0VSVChtX3N0YXRlICE9IERPTkUpOworICAgICAgICBpZiAobV9zdGF0
ZSA9PSBET05FKQorICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICBtX3N0YXRlID0gRE9ORTsK
IAogICAgICAgICBtX2Vycm9yID0gRE9NRXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgZXJy
b3JDb2RlIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaAppbmRleCBmNjA0ZGJiMWIx
ZWVmY2VlYzdiY2YxN2I3Zjk1ODBkZmNiNDNmMTBlLi4yOGYzM2Y1MTIyOTE5Y2JlZWQwYTJkNzZk
MmE3ZjhiYWFmNTY3OTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVS
ZWFkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaApAQCAtMTAz
LDcgKzEwMyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaXJlRXZlbnQoY29uc3QgQXRvbVN0cmlu
ZyYgdHlwZSk7CiAKICAgICBSZWFkeVN0YXRlIG1fc3RhdGUgeyBFTVBUWSB9OwotICAgIGJvb2wg
bV9hYm9ydGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2ZpbmlzaGVkTG9hZGluZyB7IGZhbHNl
IH07CiAgICAgUmVmUHRyPEJsb2I+IG1fYmxvYjsKICAgICBGaWxlUmVhZGVyTG9hZGVyOjpSZWFk
VHlwZSBtX3JlYWRUeXBlIHsgRmlsZVJlYWRlckxvYWRlcjo6UmVhZEFzQmluYXJ5U3RyaW5nIH07
CiAgICAgU3RyaW5nIG1fZW5jb2Rpbmc7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjJhN2RlNWE1OGZhMWJlZjYyMDc2YmZm
ZTQyMjgzODBmYzEyMDk5Yi4uZjA3YWIzZTNiYWNiMDEwM2U5MGRmYzFkYWIzNjJiNDg2ODdhM2M5
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTEwLTA2ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJlYWRlciBzaG91bGQgdHJh
bnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnByb2dyZXNzIGV2ZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTczMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvZmls
ZXMvZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZmlsZXMv
ZmlsZS1yZWFkZXItYWJvcnQtdXNpbmctb3Blbi1wYW5lbC1leHBlY3RlZC50eHQ6CisgICAgICAg
IFVwZGF0ZSBleHBlY3RhdGlvbnMgdG8gcmVmbGVjdCBuZXcgYmVoYXZpb3IgdGhhdCBvbmVycm9y
IGlzIG5vdCBjYWxsZWQgYmVmb3JlIG9uYWJvcnQsCisgICAgICAgIG1hdGNoaW5nIENocm9tZSwg
RmlyZWZveCwgYW5kIHRoZSBzcGVjaWZpY2F0aW9uLgorCiAyMDIwLTEwLTA1ICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBWZWN0b3JpemUgbGluZWFy
IHRvIGRlY2liZWxzIGNvbnZlcnNpb24gaW4gUmVhbHRpbWVBbmFseXNlcgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKaW5kZXggZjJhMTIxYzI4YzdmZDAwYzM0ZTljYTFlZmU0ZWNlZTQzYjNl
ODcxMy4uOTVlMzI0M2ViMmEzNmNlZDBjZDhiMTRmODZjYzE4YjNmMGE4NjAyNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMTAtMDYgIEFsZXgg
Q2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBGaWxlUmVh
ZGVyIHNob3VsZCB0cmFuc2l0aW9uIHRvIHJlYWR5U3RhdGUgRE9ORSBhZnRlciBsYXN0IG9ucHJv
Z3Jlc3MgZXZlbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxNzMzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvRmlsZVJlYWRlci93b3JrZXJzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVy
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxl
UmVhZGVyLmh0bWw6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGlu
Zy1kYXRhLXNlY3Rpb24vRmlsZVJlYWRlci1tdWx0aXBsZS1yZWFkcy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24v
ZmlsZXJlYWRlcl9hYm9ydC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1
ZmZlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkv
cmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmctZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0
YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJl
YWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dDoKKwogMjAyMC0xMC0wNSAgUm9iIEJ1aXMgIDxy
YnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFdlYktpdCBkb2Vzbid0IHBhcnNlICIjIiBhcyBk
ZWxpbWl0ZXIgZm9yIGZyYWdtZW50IGlkZW50aWZpZXIgaW4gZGF0YSBVUklzCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2ZpbGUtcmVhZGVyLWFib3J0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDg1YzJmNDI1YmMwMGZiMzM0OWM2NTAyNjk4M2FiYWI0YWJlZTFmZDIuLjcxNWZjNGY5Njgw
M2ZhNjgzODMwYzY3ODY2YWY2Yzc1MDQyMjU5NmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNiBA
QAogCiBUZXN0IHRoYXQgRmlsZVJlYWRlci5hYm9ydCB3b3Jrcy4KIFJlY2VpdmVkIGxvYWRzdGFy
dCBldmVudAotUmVjZWl2ZWQgZXJyb3IgZXZlbnQ6IDIwCiBSZWNlaXZlZCBhYm9ydCBldmVudAog
UmVjZWl2ZWQgbG9hZGVuZCBldmVudAogRE9ORQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9maWxlcy9maWxlLXJlYWRlci1hYm9ydC11c2luZy1vcGVuLXBhbmVsLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtdXNpbmctb3Blbi1wYW5l
bC1leHBlY3RlZC50eHQKaW5kZXggMTc4MmU3ZjczY2E0MzVkMjEyNmExYWQ1MzA3ZWNjYjRhNzk0
ZTgyZi4uN2YxMDA4MTE0MjljYjdjOWZkMDk0ZGQyMzllOTBmZTkwNGM3NjU0NiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9maWxlLXJlYWRlci1hYm9ydC11c2luZy1vcGVuLXBh
bmVsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2ZpbGUtcmVhZGVy
LWFib3J0LXVzaW5nLW9wZW4tcGFuZWwtZXhwZWN0ZWQudHh0CkBAIC0yLDcgKzIsNiBAQCBPUEVO
IEZJTEUgUEFORUwKIAogVGVzdCB0aGF0IEZpbGVSZWFkZXIuYWJvcnQgd29ya3MuCiBSZWNlaXZl
ZCBsb2Fkc3RhcnQgZXZlbnQKLVJlY2VpdmVkIGVycm9yIGV2ZW50OiAyMAogUmVjZWl2ZWQgYWJv
cnQgZXZlbnQKIFJlY2VpdmVkIGxvYWRlbmQgZXZlbnQKIERPTkUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9GaWxlUmVhZGVy
L3dvcmtlcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9GaWxlQVBJL0ZpbGVSZWFkZXIvd29ya2Vycy1leHBlY3RlZC50eHQKaW5kZXgg
ODk1ODljMGViYTY3ZjgxYWRhZjQ0YmI1ZjNiM2MzNDc3Nzc5ZTJlNC4uYTdkMGU3MTVhZjUxZDhj
NmE4ZDRjMDY5YjUwMzYyZTdlYjNhNjY5ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL0ZpbGVSZWFkZXIvd29ya2Vycy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL0ZpbGVSZWFkZXIvd29ya2Vycy1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMyBA
QAotQ09OU09MRSBNRVNTQUdFOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLgogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IEludmFs
aWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLVRJTUVP
VVQgRmlsZVJlYWRlciBjcmVhdGVkIGFmdGVyIGEgd29ya2VyIHNlbGYuY2xvc2UoKSBUZXN0IHRp
bWVkIG91dAotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLVRJTUVPVVQgRmlsZVJl
YWRlciBjcmVhdGVkIGFmdGVyIGEgd29ya2VyIHNlbGYuY2xvc2UoKSBUZXN0IHRpbWVkIG91dAor
UEFTUyBGaWxlUmVhZGVyIGNyZWF0ZWQgYWZ0ZXIgYSB3b3JrZXIgc2VsZi5jbG9zZSgpCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmls
ZUFQSS9maWxlUmVhZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLWV4cGVjdGVkLnR4dAppbmRleCAw
MTJhYjVjMjM0MmE0MDdmODQzMTU1MWRlYTJjMmYyZDE2ODRmN2MxLi41MTk2M2NjZGJjZjA3ODcw
NTgzN2UwOGJkNjU4YjgzODQxYzNjNDdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJ
L2ZpbGVSZWFkZXItZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNyBAQAogCiBQQVNTIEZpbGVSZWFk
ZXIgaW50ZXJmYWNlIG9iamVjdAogUEFTUyBuby1hcmd1bWVudCBGaWxlUmVhZGVyIGNvbnN0cnVj
dG9yCi1GQUlMIEZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0IGFzc2VydF91bnJlYWNoZWQ6IGFi
b3J0IGV2ZW50IHNob3VsZCBmaXJlIHN5bmMgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCi1GQUlM
IEZpbGVSZWFkZXIgU3RhdGVzIC0tIGV2ZW50cyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1
dCBnb3QgMgorUEFTUyBGaWxlUmVhZGVyIFN0YXRlcyAtLSBhYm9ydAorUEFTUyBGaWxlUmVhZGVy
IFN0YXRlcyAtLSBldmVudHMKK1BBU1MgRmlsZVJlYWRlciBTdGF0ZXMgLS0gYWJvcnQgZHVyaW5n
IHByb2dyZXNzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci5odG1sCmluZGV4IGI3
NjdlMjJkNGE2NmViYTA2NTYwNjE3NDA1OTUyZGZiZWZhMmMwODQuLjQzMDRiMTU1NzE5YTIxOGRk
NmI5NzY0ZTBlOGZkN2Q2NTE5MjNjZjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFk
ZXIuaHRtbApAQCAtMzUsNiArMzUsNyBAQAogICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZmlsZVJlYWRlci5yZWFkeVN0YXRlLCBGaWxlUmVhZGVyLkRPTkUpOwogICAgICAgICAgICAgICAg
IHRfYWJvcnQuZG9uZSgpOwogICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBmaWxlUmVhZGVy
Lm9uZXJyb3IgPSB0aGlzLnVucmVhY2hlZF9mdW5jKCJvbmVycm9yIHNob3VsZCBub3QgYmUgY2Fs
bGVkIHdoZW4gYWJvcnQgaXMgY2FsbGVkIik7CiAgICAgICAgICAgICBmaWxlUmVhZGVyLmFib3J0
KCk7CiAgICAgICAgICAgICBmaWxlUmVhZGVyLm9uYWJvcnQgPSB0aGlzLnVucmVhY2hlZF9mdW5j
KCJhYm9ydCBldmVudCBzaG91bGQgZmlyZSBzeW5jIikKICAgICAgICAgfSk7CkBAIC02Miw2ICs2
MywzMSBAQAogICAgICAgICAgICAgICAgIHRfZXZlbnQuZG9uZSgpOwogICAgICAgICAgICAgfSk7
CiAgICAgICAgIH0pOworCisgICAgICAgIHZhciB0X2Fib3J0X2R1cmluZ19wcm9ncmVzcyA9IGFz
eW5jX3Rlc3QoIkZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0IGR1cmluZyBwcm9ncmVzcyIpOwor
ICAgICAgICB0X2Fib3J0X2R1cmluZ19wcm9ncmVzcy5zdGVwKGZ1bmN0aW9uKCkgeworICAgICAg
ICAgICAgdmFyIGZpbGVSZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpOworCisgICAgICAgICAgICB2
YXIgYmxvYiA9IG5ldyBCbG9iKFsxXSk7CisgICAgICAgICAgICBmaWxlUmVhZGVyLnJlYWRBc0Fy
cmF5QnVmZmVyKGJsb2IpOworCisgICAgICAgICAgICB2YXIgb25wcm9ncmVzc0NhbGxlZCA9IGZh
bHNlOworICAgICAgICAgICAgZmlsZVJlYWRlci5vbnByb2dyZXNzID0gdGhpcy5zdGVwX2Z1bmMo
ZnVuY3Rpb24oZSkgeworICAgICAgICAgICAgICAgIG9ucHJvZ3Jlc3NDYWxsZWQgPSB0cnVlOwor
ICAgICAgICAgICAgICAgIGZpbGVSZWFkZXIuYWJvcnQoKTsKKyAgICAgICAgICAgIH0pOworCisg
ICAgICAgICAgICBmaWxlUmVhZGVyLm9uYWJvcnQgPSB0aGlzLnN0ZXBfZnVuYyhmdW5jdGlvbihl
KSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgib25hYm9ydCBzaG91bGQgbm90
IGJlIGNhbGxlZCBpZiBhYm9ydCBpcyBjYWxsZWQgZHVyaW5nIGZpbmFsIG9ucHJvZ3Jlc3MiKTsK
KyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBmaWxlUmVhZGVyLm9ubG9hZGVuZCA9IHRo
aXMuc3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShv
bnByb2dyZXNzQ2FsbGVkLCAib25wcm9ncmVzcyBzaG91bGQgYmUgY2FsbGVkIGJlZm9yZSBvbmxv
YWRlbmQiKTsKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAg
ICAgICAgICAgICAgICB0X2Fib3J0X2R1cmluZ19wcm9ncmVzcy5kb25lKCk7CisgICAgICAgICAg
ICAgICAgfSwgMCk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfSk7CiAgICAgPC9zY3JpcHQ+
CiAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9GaWxlUmVh
ZGVyLW11bHRpcGxlLXJlYWRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9GaWxlUmVh
ZGVyLW11bHRpcGxlLXJlYWRzLWV4cGVjdGVkLnR4dAppbmRleCA2YjY1ZTE1OGYxMzUwNDAyMjQz
OTdjOGIwNTE1NTM5ZWEyZjVmNDE1Li4xOTk4MTFlOWRjNzQ2NDVjNjIyODQ3NjUyMzNmOWRkMDAz
ZWMzZmY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vRmlsZVJlYWRlci1tdWx0aXBsZS1y
ZWFkcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL0ZpbGVSZWFkZXItbXVsdGlw
bGUtcmVhZHMtZXhwZWN0ZWQudHh0CkBAIC00LDUgKzQsNSBAQCBQQVNTIHRlc3QgRmlsZVJlYWRl
ciBJbnZhbGlkU3RhdGVFcnJvciBleGNlcHRpb24gZm9yIHJlYWRBc0RhdGFVUkwKIFBBU1MgdGVz
dCBGaWxlUmVhZGVyIEludmFsaWRTdGF0ZUVycm9yIGV4Y2VwdGlvbiBmb3IgcmVhZEFzQXJyYXlC
dWZmZXIKIFBBU1MgdGVzdCBGaWxlUmVhZGVyIEludmFsaWRTdGF0ZUVycm9yIGV4Y2VwdGlvbiBp
biBvbmxvYWRzdGFydCBldmVudCBmb3IgcmVhZEFzQXJyYXlCdWZmZXIKIFBBU1MgdGVzdCBGaWxl
UmVhZGVyIG5vIEludmFsaWRTdGF0ZUVycm9yIGV4Y2VwdGlvbiBpbiBsb2FkZW5kIGV2ZW50IGhh
bmRsZXIgZm9yIHJlYWRBc0FycmF5QnVmZmVyCi1GQUlMIHRlc3QgYWJvcnQgYW5kIHJlc3RhcnQg
aW4gb25sb2Fkc3RhcnQgZXZlbnQgZm9yIHJlYWRBc1RleHQgVGhlIG9iamVjdCBpcyBpbiBhbiBp
bnZhbGlkIHN0YXRlLgorUEFTUyB0ZXN0IGFib3J0IGFuZCByZXN0YXJ0IGluIG9ubG9hZHN0YXJ0
IGV2ZW50IGZvciByZWFkQXNUZXh0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxl
cmVhZGVyX2Fib3J0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX2Fi
b3J0LWV4cGVjdGVkLnR4dAppbmRleCAyM2NkOGQ1YzhiYmIwNWZmZTdhZGNiNTMwNGQxZDI5MGVl
NDllYWI4Li5iNDU3MDlhNjUyMmUyMThjZGIxN2VjZTE4YWFlNmEzZWVmZDczZmYxIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkv
cmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9hYm9ydC1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRp
bmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfYWJvcnQtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEs
NCBAQAogCiBQQVNTIEFib3J0aW5nIGJlZm9yZSByZWFkCi1GQUlMIEFib3J0aW5nIGFmdGVyIHJl
YWQgYXNzZXJ0X2VxdWFsczogRXhwZWN0ZWQgYWJvcnQgZXZlbnQsIGJ1dCBnb3QgZXJyb3IgZXZl
bnQgaW5zdGVhZCBleHBlY3RlZCAiYWJvcnQiIGJ1dCBnb3QgImVycm9yIgorUEFTUyBBYm9ydGlu
ZyBhZnRlciByZWFkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3Jl
YWRBc0FycmF5QnVmZmVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVy
X3JlYWRBc0FycmF5QnVmZmVyLWV4cGVjdGVkLnR4dAppbmRleCA0MTg2ODE5YTQzNzVhZmRmOTlm
ZjRlNzhhY2Q5YzA4OWExNjdiNWEyLi5jZWFjYWJlZTE0ZjEyYWRhMDIwMWNiMGQ3MzZiMDEzZWUw
ZjNlMGY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJh
eUJ1ZmZlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVh
ZEFzQXJyYXlCdWZmZXItZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEZpbGVB
UEkgVGVzdDogZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1ZmZlciBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAxIGJ1dCBnb3QgMgorUEFTUyBGaWxlQVBJIFRlc3Q6IGZpbGVyZWFkZXJfcmVhZEFzQXJy
YXlCdWZmZXIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFz
QmluYXJ5U3RyaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3Jl
YWRBc0JpbmFyeVN0cmluZy1leHBlY3RlZC50eHQKaW5kZXggZThiYjJhYjNhODk4Mjc0MjMzM2U4
NmVjNTU0ODhkMzAzYThiYTEyYS4uYzZjOGUxZjQ4MGYzMDVlMmNiNzA4MGJiNWEwM2I0NTIzOWMw
ZGFjOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5
U3RyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFk
QXNCaW5hcnlTdHJpbmctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEZpbGVB
UEkgVGVzdDogZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmcgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMSBidXQgZ290IDIKK1BBU1MgRmlsZUFQSSBUZXN0OiBmaWxlcmVhZGVyX3JlYWRBc0Jp
bmFyeVN0cmluZwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFk
QXNEYXRhVVJMLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRB
c0RhdGFVUkwtZXhwZWN0ZWQudHh0CmluZGV4IDkwYjEzMDA2NDg5NTgyNzU1N2JjYzIyZDdkNjEy
YWZiZjBjNmY4MDYuLmIzMTc1MDJhN2FiMTJhMWFiMTkxN2I5MzMwMjUzZDE2YzU4MGE2MTIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmls
ZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
RmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhw
ZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEZpbGVSZWFkZXIgcmVhZHlTdGF0ZSBk
dXJpbmcgcmVhZEFzRGF0YVVSTCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMgor
UEFTUyBGaWxlUmVhZGVyIHJlYWR5U3RhdGUgZHVyaW5nIHJlYWRBc0RhdGFVUkwKIFBBU1MgcmVh
ZEFzRGF0YVVSTCByZXN1bHQgZm9yIEJsb2Igd2l0aCBzcGVjaWZpZWQgTUlNRSB0eXBlCiBGQUlM
IHJlYWRBc0RhdGFVUkwgcmVzdWx0IGZvciBCbG9iIHdpdGggdW5zcGVjaWZpZWQgTUlNRSB0eXBl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTti
YXNlNjQsVkVWVFZBPT0iIGJ1dCBnb3QgImRhdGE6O2Jhc2U2NCxWRVZUVkE9PSIKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJ
L3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzVGV4dC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVh
ZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dAppbmRl
eCBjODcwZTEyZDExNTU1MmEyZWIyZjM1YWM5Mzg1MDdmMDNiN2E1MjExLi5hYjM1ZDcxOTU0ODY4
NTM0YTJjMjA4NTI3MTZkNjAyNzFiM2ViY2Y1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24v
ZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24v
ZmlsZXJlYWRlcl9yZWFkQXNUZXh0LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJ
TCByZWFkQXNUZXh0IHNob3VsZCBjb3JyZWN0bHkgcmVhZCBVVEYtOC4gYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgMSBidXQgZ290IDIKK1BBU1MgcmVhZEFzVGV4dCBzaG91bGQgY29ycmVjdGx5IHJl
YWQgVVRGLTguCiBQQVNTIHJlYWRBc1RleHQgc2hvdWxkIGNvcnJlY3RseSByZWFkIFVURi0xNi4K
IAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410644</attachid>
            <date>2020-10-06 09:00:37 -0700</date>
            <delta_ts>2020-10-06 09:45:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217333-20201006090036.patch</filename>
            <type>text/plain</type>
            <size>16236</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmMwZmI5MWY1NGVmOTg0
YjAzY2E1MjYzZWZiYzkxYWFhODkzYjEwZi4uNDU2ZTJkMjI0YTRkZDc5Y2QyZGE1NmNmNjQ4Y2Ni
NWRkNDUzZTI5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTEwLTA2ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJl
YWRlciBzaG91bGQgdHJhbnNpdGlvbiB0byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnBy
b2dyZXNzIGV2ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTczMzMKKworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAg
ICAgIEkgYWxzbyBicmluZyB0aGUgYWJvcnQgZnVuY3Rpb24gaW4gYWxpZ25tZW50IHdpdGggaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvCisgICAgICAgIGFuZCB0aGUgYmVoYXZpb3Igb2Yg
Q2hyb21lIGFuZCBGaXJlZm94LgorCisgICAgICAgIEFzIHN1Z2dlc3RlZCBieSBDaHJpcywgSSBh
ZGRlZCBhIGJvb2wgdG8gcmVtZW1iZXIgaWYgbG9hZGluZyBpcyBjb21wbGV0ZSBzbyB3ZSBjYW4K
KyAgICAgICAgcmV0YWluIGV4aXN0aW5nIGJlaGF2aW9yIHdoZW4gYWJvcnQgaXMgY2FsbGVkIGlu
c2lkZSB0aGUgbGFzdCBvbnByb2dyZXNzIGV2ZW50LgorICAgICAgICBUaGlzIGlzIG5vdCBtZW50
aW9uZWQgYnkgdGhlIHNwZWMgeWV0LCBidXQgaXQgbWF0Y2hlcyB0aGUgZXhpc3RpbmcgYmVoYXZp
b3IgYW5kIHRoZQorICAgICAgICBiZWhhdmlvciBvZiBDaHJvbWUsIHNvIEkgYWRkZWQgYSB3ZWIg
cGxhdGZvcm0gdGVzdCBmb3IgaXQuCisKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RmlsZVJlYWRlcjo6YWJvcnQpOgorICAgICAgICAoV2ViQ29y
ZTo6RmlsZVJlYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
UmVhZGVyOjpkaWRGYWlsKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXIuaDoKKwogMjAy
MC0xMC0wNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2
aWV3ZWQgYXNzZXJ0aW9uIGZpeCBhZnRlciByMjY4MDA2LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmls
ZVJlYWRlci5jcHAKaW5kZXggM2UxOThkNDc0MTc5YTZkMDlmY2JlY2ViNzU2NWNmNTA0NGFiNDk5
NS4uMjQxMjAwMTYwYmM1MzIzOGYwYzU0OTA0MjUwOWMyNTgzNTBkYThlMiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9maWxlYXBpL0ZpbGVSZWFkZXIuY3BwCkBAIC0xNTIsMjUgKzE1MiwxNiBAQCBFeGNlcHRpb25P
cjx2b2lkPiBGaWxlUmVhZGVyOjpyZWFkSW50ZXJuYWwoQmxvYiYgYmxvYiwgRmlsZVJlYWRlckxv
YWRlcjo6UmVhZFR5cAogdm9pZCBGaWxlUmVhZGVyOjphYm9ydCgpCiB7CiAgICAgTE9HKEZpbGVB
UEksICJGaWxlUmVhZGVyOiBhYm9ydGluZ1xuIik7Ci0KLSAgICBpZiAobV9hYm9ydGluZyB8fCBt
X3N0YXRlICE9IExPQURJTkcpCisgICAgaWYgKG1fc3RhdGUgIT0gTE9BRElORyB8fCBtX2Zpbmlz
aGVkTG9hZGluZykKICAgICAgICAgcmV0dXJuOwotICAgIG1fYWJvcnRpbmcgPSB0cnVlOwogCi0g
ICAgLy8gU2NoZWR1bGUgdG8gaGF2ZSB0aGUgYWJvcnQgZG9uZSBsYXRlciBzaW5jZSBhYm9ydCgp
IG1pZ2h0IGJlIGNhbGxlZCBmcm9tIHRoZSBldmVudCBoYW5kbGVyIGFuZCB3ZSBkbyBub3Qgd2Fu
dCB0aGUgcmVzb3VyY2UgbG9hZGluZyBjb2RlIHRvIGJlIGluIHRoZSBzdGFjay4KICAgICBtX3Bl
bmRpbmdUYXNrcy5jbGVhcigpOwotICAgIGVucXVldWVUYXNrKFt0aGlzXSB7Ci0gICAgICAgIEFT
U0VSVChtX3N0YXRlICE9IERPTkUpOwotCi0gICAgICAgIHN0b3AoKTsKLSAgICAgICAgbV9hYm9y
dGluZyA9IGZhbHNlOworICAgIHN0b3AoKTsKKyAgICBtX2Vycm9yID0gRE9NRXhjZXB0aW9uOjpj
cmVhdGUoRXhjZXB0aW9uIHsgQWJvcnRFcnJvciB9KTsKIAotICAgICAgICBtX2Vycm9yID0gRE9N
RXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgQWJvcnRFcnJvciB9KTsKLQotICAgICAgICBm
aXJlRXZlbnQoZXZlbnROYW1lcygpLmVycm9yRXZlbnQpOwotICAgICAgICBmaXJlRXZlbnQoZXZl
bnROYW1lcygpLmFib3J0RXZlbnQpOwotICAgICAgICBmaXJlRXZlbnQoZXZlbnROYW1lcygpLmxv
YWRlbmRFdmVudCk7Ci0gICAgfSk7CisgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigq
dGhpcyk7CisgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5hYm9ydEV2ZW50KTsKKyAgICBmaXJl
RXZlbnQoZXZlbnROYW1lcygpLmxvYWRlbmRFdmVudCk7CiB9CiAKIHZvaWQgRmlsZVJlYWRlcjo6
ZGlkU3RhcnRMb2FkaW5nKCkKQEAgLTE5NywxNCArMTg4LDE0IEBAIHZvaWQgRmlsZVJlYWRlcjo6
ZGlkUmVjZWl2ZURhdGEoKQogCiB2b2lkIEZpbGVSZWFkZXI6OmRpZEZpbmlzaExvYWRpbmcoKQog
ewotICAgIGlmIChtX2Fib3J0aW5nKQotICAgICAgICByZXR1cm47Ci0KICAgICBlbnF1ZXVlVGFz
ayhbdGhpc10gewotICAgICAgICBBU1NFUlQobV9zdGF0ZSAhPSBET05FKTsKLSAgICAgICAgbV9z
dGF0ZSA9IERPTkU7Ci0KKyAgICAgICAgaWYgKG1fc3RhdGUgPT0gRE9ORSkKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgbV9maW5pc2hlZExvYWRpbmcgPSB0cnVlOwogICAgICAgICBmaXJl
RXZlbnQoZXZlbnROYW1lcygpLnByb2dyZXNzRXZlbnQpOworICAgICAgICBpZiAobV9zdGF0ZSA9
PSBET05FKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBtX3N0YXRlID0gRE9ORTsKICAg
ICAgICAgZmlyZUV2ZW50KGV2ZW50TmFtZXMoKS5sb2FkRXZlbnQpOwogICAgICAgICBmaXJlRXZl
bnQoZXZlbnROYW1lcygpLmxvYWRlbmRFdmVudCk7CiAgICAgfSk7CkBAIC0yMTIsMTIgKzIwMyw5
IEBAIHZvaWQgRmlsZVJlYWRlcjo6ZGlkRmluaXNoTG9hZGluZygpCiAKIHZvaWQgRmlsZVJlYWRl
cjo6ZGlkRmFpbChFeGNlcHRpb25Db2RlIGVycm9yQ29kZSkKIHsKLSAgICAvLyBJZiB3ZSdyZSBh
Ym9ydGluZywgZG8gbm90IHByb2NlZWQgd2l0aCBub3JtYWwgZXJyb3IgaGFuZGxpbmcgc2luY2Ug
aXQgaXMgY292ZXJlZCBpbiBhYm9ydGluZyBjb2RlLgotICAgIGlmIChtX2Fib3J0aW5nKQotICAg
ICAgICByZXR1cm47Ci0KICAgICBlbnF1ZXVlVGFzayhbdGhpcywgZXJyb3JDb2RlXSB7Ci0gICAg
ICAgIEFTU0VSVChtX3N0YXRlICE9IERPTkUpOworICAgICAgICBpZiAobV9zdGF0ZSA9PSBET05F
KQorICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICBtX3N0YXRlID0gRE9ORTsKIAogICAgICAg
ICBtX2Vycm9yID0gRE9NRXhjZXB0aW9uOjpjcmVhdGUoRXhjZXB0aW9uIHsgZXJyb3JDb2RlIH0p
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaAppbmRleCBmNjA0ZGJiMWIxZWVmY2VlYzdi
Y2YxN2I3Zjk1ODBkZmNiNDNmMTBlLi4yOGYzM2Y1MTIyOTE5Y2JlZWQwYTJkNzZkMmE3ZjhiYWFm
NTY3OTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaApAQCAtMTAzLDcgKzEwMyw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaXJlRXZlbnQoY29uc3QgQXRvbVN0cmluZyYgdHlwZSk7
CiAKICAgICBSZWFkeVN0YXRlIG1fc3RhdGUgeyBFTVBUWSB9OwotICAgIGJvb2wgbV9hYm9ydGlu
ZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2ZpbmlzaGVkTG9hZGluZyB7IGZhbHNlIH07CiAgICAg
UmVmUHRyPEJsb2I+IG1fYmxvYjsKICAgICBGaWxlUmVhZGVyTG9hZGVyOjpSZWFkVHlwZSBtX3Jl
YWRUeXBlIHsgRmlsZVJlYWRlckxvYWRlcjo6UmVhZEFzQmluYXJ5U3RyaW5nIH07CiAgICAgU3Ry
aW5nIG1fZW5jb2Rpbmc7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjJhN2RlNWE1OGZhMWJlZjYyMDc2YmZmZTQyMjgzODBm
YzEyMDk5Yi4uY2VjYTQ5NWVlMjA0MDEyOGZmNjRmZDJlMzJmYTgyNTZhNzg5OTNmYSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE1IEBACisyMDIwLTEwLTA2ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVu
c2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRmlsZVJlYWRlciBzaG91bGQgdHJhbnNpdGlvbiB0
byByZWFkeVN0YXRlIERPTkUgYWZ0ZXIgbGFzdCBvbnByb2dyZXNzIGV2ZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTczMzMKKworICAgICAgICBS
ZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgICogZmFzdC9maWxlcy9maWxlLXJl
YWRlci1hYm9ydC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9maWxlcy9maWxlLXJlYWRl
ci1hYm9ydC11c2luZy1vcGVuLXBhbmVsLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgVXBkYXRlIGV4
cGVjdGF0aW9ucyB0byByZWZsZWN0IG5ldyBiZWhhdmlvciB0aGF0IG9uZXJyb3IgaXMgbm90IGNh
bGxlZCBiZWZvcmUgb25hYm9ydCwKKyAgICAgICAgbWF0Y2hpbmcgQ2hyb21lLCBGaXJlZm94LCBh
bmQgdGhlIHNwZWNpZmljYXRpb24uCisKIDIwMjAtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIFZlY3Rvcml6ZSBsaW5lYXIgdG8gZGVjaWJl
bHMgY29udmVyc2lvbiBpbiBSZWFsdGltZUFuYWx5c2VyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCBmMmExMjFjMjhjN2ZkMDBjMzRlOWNhMWVmZTRlY2VlNDNiM2U4NzEzLi4xNTdk
NjI5NTgyZGNkYTU3ZTFkZGZkYTAzYzdjZTkyM2Q4OGU1YjJhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMC0xMC0wNiAgQWxleCBDaHJpc3RlbnNl
biAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEZpbGVSZWFkZXIgc2hvdWxk
IHRyYW5zaXRpb24gdG8gcmVhZHlTdGF0ZSBET05FIGFmdGVyIGxhc3Qgb25wcm9ncmVzcyBldmVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3MzMz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKworICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9GaWxlQVBJL0ZpbGVSZWFkZXIvd29ya2Vycy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci5odG1s
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0
aW9uL0ZpbGVSZWFkZXItbXVsdGlwbGUtcmVhZHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJf
YWJvcnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJ
L3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0
YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9m
aWxlcmVhZGVyX3JlYWRBc0RhdGFVUkwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFz
VGV4dC1leHBlY3RlZC50eHQ6CisKIDIwMjAtMTAtMDUgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlh
LmNvbT4KIAogICAgICAgICBXZWJLaXQgZG9lc24ndCBwYXJzZSAiIyIgYXMgZGVsaW1pdGVyIGZv
ciBmcmFnbWVudCBpZGVudGlmaWVyIGluIGRhdGEgVVJJcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9maWxlcy9maWxlLXJlYWRlci1hYm9ydC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2ZpbGVzL2ZpbGUtcmVhZGVyLWFib3J0LWV4cGVjdGVkLnR4dAppbmRleCA4NWMyZjQy
NWJjMDBmYjMzNDljNjUwMjY5ODNhYmFiNGFiZWUxZmQyLi43MTVmYzRmOTY4MDNmYTY4MzgzMGM2
Nzg2NmFmNmM3NTA0MjI1OTZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2Zp
bGUtcmVhZGVyLWFib3J0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ZpbGVz
L2ZpbGUtcmVhZGVyLWFib3J0LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDYgQEAKIAogVGVzdCB0
aGF0IEZpbGVSZWFkZXIuYWJvcnQgd29ya3MuCiBSZWNlaXZlZCBsb2Fkc3RhcnQgZXZlbnQKLVJl
Y2VpdmVkIGVycm9yIGV2ZW50OiAyMAogUmVjZWl2ZWQgYWJvcnQgZXZlbnQKIFJlY2VpdmVkIGxv
YWRlbmQgZXZlbnQKIERPTkUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZmlsZXMvZmls
ZS1yZWFkZXItYWJvcnQtdXNpbmctb3Blbi1wYW5lbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2ZpbGVzL2ZpbGUtcmVhZGVyLWFib3J0LXVzaW5nLW9wZW4tcGFuZWwtZXhwZWN0ZWQu
dHh0CmluZGV4IDE3ODJlN2Y3M2NhNDM1ZDIxMjZhMWFkNTMwN2VjY2I0YTc5NGU4MmYuLjdmMTAw
ODExNDI5Y2I3YzlmZDA5NGRkMjM5ZTkwZmU5MDRjNzY1NDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQtdXNpbmctb3Blbi1wYW5lbC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9maWxlLXJlYWRlci1hYm9ydC11c2lu
Zy1vcGVuLXBhbmVsLWV4cGVjdGVkLnR4dApAQCAtMiw3ICsyLDYgQEAgT1BFTiBGSUxFIFBBTkVM
CiAKIFRlc3QgdGhhdCBGaWxlUmVhZGVyLmFib3J0IHdvcmtzLgogUmVjZWl2ZWQgbG9hZHN0YXJ0
IGV2ZW50Ci1SZWNlaXZlZCBlcnJvciBldmVudDogMjAKIFJlY2VpdmVkIGFib3J0IGV2ZW50CiBS
ZWNlaXZlZCBsb2FkZW5kIGV2ZW50CiBET05FCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvRmlsZVJlYWRlci93b3JrZXJzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
RmlsZUFQSS9GaWxlUmVhZGVyL3dvcmtlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDg5NTg5YzBlYmE2
N2Y4MWFkYWY0NGJiNWYzYjNjMzQ3Nzc3OWUyZTQuLmE3ZDBlNzE1YWY1MWQ4YzZhOGQ0YzA2OWI1
MDM2MmU3ZWIzYTY2OWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9GaWxlUmVhZGVyL3dvcmtlcnMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9G
aWxlUmVhZGVyL3dvcmtlcnMtZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDMgQEAKLUNPTlNPTEUg
TUVTU0FHRTogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBz
dGF0ZS4KIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBJbnZhbGlkU3RhdGVFcnJv
cjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1USU1FT1VUIEZpbGVSZWFk
ZXIgY3JlYXRlZCBhZnRlciBhIHdvcmtlciBzZWxmLmNsb3NlKCkgVGVzdCB0aW1lZCBvdXQKLQot
SGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9i
amVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1USU1FT1VUIEZpbGVSZWFkZXIgY3JlYXRl
ZCBhZnRlciBhIHdvcmtlciBzZWxmLmNsb3NlKCkgVGVzdCB0aW1lZCBvdXQKK1BBU1MgRmlsZVJl
YWRlciBjcmVhdGVkIGFmdGVyIGEgd29ya2VyIHNlbGYuY2xvc2UoKQogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJl
YWRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci1leHBlY3RlZC50eHQKaW5kZXggMDEyYWI1YzIzNDJh
NDA3Zjg0MzE1NTFkZWEyYzJmMmQxNjg0ZjdjMS4uNTE5NjNjY2RiY2YwNzg3MDU4MzdlMDhiZDY1
OGI4Mzg0MWMzYzQ3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVy
LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDcgQEAKIAogUEFTUyBGaWxlUmVhZGVyIGludGVyZmFj
ZSBvYmplY3QKIFBBU1Mgbm8tYXJndW1lbnQgRmlsZVJlYWRlciBjb25zdHJ1Y3RvcgotRkFJTCBG
aWxlUmVhZGVyIFN0YXRlcyAtLSBhYm9ydCBhc3NlcnRfdW5yZWFjaGVkOiBhYm9ydCBldmVudCBz
aG91bGQgZmlyZSBzeW5jIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQotRkFJTCBGaWxlUmVhZGVy
IFN0YXRlcyAtLSBldmVudHMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQgZ290IDIKK1BB
U1MgRmlsZVJlYWRlciBTdGF0ZXMgLS0gYWJvcnQKK1BBU1MgRmlsZVJlYWRlciBTdGF0ZXMgLS0g
ZXZlbnRzCitQQVNTIEZpbGVSZWFkZXIgU3RhdGVzIC0tIGFib3J0IGR1cmluZyBwcm9ncmVzcwog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L0ZpbGVBUEkvZmlsZVJlYWRlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2ZpbGVSZWFkZXIuaHRtbAppbmRleCBiNzY3ZTIyZDRhNjZl
YmEwNjU2MDYxNzQwNTk1MmRmYmVmYTJjMDg0Li40MzA0YjE1NTcxOWEyMThkZDZiOTc2NGUwZThm
ZDdkNjUxOTIzY2Y4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0ZpbGVBUEkvZmlsZVJlYWRlci5odG1sCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9maWxlUmVhZGVyLmh0bWwKQEAg
LTM1LDYgKzM1LDcgQEAKICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZpbGVSZWFkZXIu
cmVhZHlTdGF0ZSwgRmlsZVJlYWRlci5ET05FKTsKICAgICAgICAgICAgICAgICB0X2Fib3J0LmRv
bmUoKTsKICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgZmlsZVJlYWRlci5vbmVycm9yID0g
dGhpcy51bnJlYWNoZWRfZnVuYygib25lcnJvciBzaG91bGQgbm90IGJlIGNhbGxlZCB3aGVuIGFi
b3J0IGlzIGNhbGxlZCIpOwogICAgICAgICAgICAgZmlsZVJlYWRlci5hYm9ydCgpOwogICAgICAg
ICAgICAgZmlsZVJlYWRlci5vbmFib3J0ID0gdGhpcy51bnJlYWNoZWRfZnVuYygiYWJvcnQgZXZl
bnQgc2hvdWxkIGZpcmUgc3luYyIpCiAgICAgICAgIH0pOwpAQCAtNjIsNiArNjMsMzEgQEAKICAg
ICAgICAgICAgICAgICB0X2V2ZW50LmRvbmUoKTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9
KTsKKworICAgICAgICB2YXIgdF9hYm9ydF9kdXJpbmdfcHJvZ3Jlc3MgPSBhc3luY190ZXN0KCJG
aWxlUmVhZGVyIFN0YXRlcyAtLSBhYm9ydCBkdXJpbmcgcHJvZ3Jlc3MiKTsKKyAgICAgICAgdF9h
Ym9ydF9kdXJpbmdfcHJvZ3Jlc3Muc3RlcChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHZhciBm
aWxlUmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTsKKworICAgICAgICAgICAgdmFyIGJsb2IgPSBu
ZXcgQmxvYihbMV0pOworICAgICAgICAgICAgZmlsZVJlYWRlci5yZWFkQXNBcnJheUJ1ZmZlcihi
bG9iKTsKKworICAgICAgICAgICAgdmFyIG9ucHJvZ3Jlc3NDYWxsZWQgPSBmYWxzZTsKKyAgICAg
ICAgICAgIGZpbGVSZWFkZXIub25wcm9ncmVzcyA9IHRoaXMuc3RlcF9mdW5jKGZ1bmN0aW9uKGUp
IHsKKyAgICAgICAgICAgICAgICBvbnByb2dyZXNzQ2FsbGVkID0gdHJ1ZTsKKyAgICAgICAgICAg
ICAgICBmaWxlUmVhZGVyLmFib3J0KCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAg
ZmlsZVJlYWRlci5vbmFib3J0ID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgeworICAgICAg
ICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIm9uYWJvcnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQg
aWYgYWJvcnQgaXMgY2FsbGVkIGR1cmluZyBmaW5hbCBvbnByb2dyZXNzIik7CisgICAgICAgICAg
ICB9KTsKKworICAgICAgICAgICAgZmlsZVJlYWRlci5vbmxvYWRlbmQgPSB0aGlzLnN0ZXBfZnVu
YyhmdW5jdGlvbihlKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUob25wcm9ncmVzc0Nh
bGxlZCwgIm9ucHJvZ3Jlc3Mgc2hvdWxkIGJlIGNhbGxlZCBiZWZvcmUgb25sb2FkZW5kIik7Cisg
ICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAg
ICAgdF9hYm9ydF9kdXJpbmdfcHJvZ3Jlc3MuZG9uZSgpOworICAgICAgICAgICAgICAgIH0sIDAp
OworICAgICAgICAgICAgfSk7CisgICAgICAgIH0pOwogICAgIDwvc2NyaXB0PgogICA8L2JvZHk+
CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vRmlsZVJlYWRlci1tdWx0aXBs
ZS1yZWFkcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vRmlsZVJlYWRlci1tdWx0aXBs
ZS1yZWFkcy1leHBlY3RlZC50eHQKaW5kZXggNmI2NWUxNThmMTM1MDQwMjI0Mzk3YzhiMDUxNTUz
OWVhMmY1ZjQxNS4uMTk5ODExZTlkYzc0NjQ1YzYyMjg0NzY1MjMzZjlkZDAwM2VjM2ZmNiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxl
QVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL0ZpbGVSZWFkZXItbXVsdGlwbGUtcmVhZHMtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
RmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9GaWxlUmVhZGVyLW11bHRpcGxlLXJlYWRzLWV4
cGVjdGVkLnR4dApAQCAtNCw1ICs0LDUgQEAgUEFTUyB0ZXN0IEZpbGVSZWFkZXIgSW52YWxpZFN0
YXRlRXJyb3IgZXhjZXB0aW9uIGZvciByZWFkQXNEYXRhVVJMCiBQQVNTIHRlc3QgRmlsZVJlYWRl
ciBJbnZhbGlkU3RhdGVFcnJvciBleGNlcHRpb24gZm9yIHJlYWRBc0FycmF5QnVmZmVyCiBQQVNT
IHRlc3QgRmlsZVJlYWRlciBJbnZhbGlkU3RhdGVFcnJvciBleGNlcHRpb24gaW4gb25sb2Fkc3Rh
cnQgZXZlbnQgZm9yIHJlYWRBc0FycmF5QnVmZmVyCiBQQVNTIHRlc3QgRmlsZVJlYWRlciBubyBJ
bnZhbGlkU3RhdGVFcnJvciBleGNlcHRpb24gaW4gbG9hZGVuZCBldmVudCBoYW5kbGVyIGZvciBy
ZWFkQXNBcnJheUJ1ZmZlcgotRkFJTCB0ZXN0IGFib3J0IGFuZCByZXN0YXJ0IGluIG9ubG9hZHN0
YXJ0IGV2ZW50IGZvciByZWFkQXNUZXh0IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0
ZS4KK1BBU1MgdGVzdCBhYm9ydCBhbmQgcmVzdGFydCBpbiBvbmxvYWRzdGFydCBldmVudCBmb3Ig
cmVhZEFzVGV4dAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9hYm9y
dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9hYm9ydC1leHBlY3Rl
ZC50eHQKaW5kZXggMjNjZDhkNWM4YmJiMDVmZmU3YWRjYjUzMDRkMWQyOTBlZTQ5ZWFiOC4uYjQ1
NzA5YTY1MjJlMjE4Y2RiMTdlY2UxOGFhZTZhM2VlZmQ3M2ZmMSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0
YS1zZWN0aW9uL2ZpbGVyZWFkZXJfYWJvcnQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2Vj
dGlvbi9maWxlcmVhZGVyX2Fib3J0LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogUEFT
UyBBYm9ydGluZyBiZWZvcmUgcmVhZAotRkFJTCBBYm9ydGluZyBhZnRlciByZWFkIGFzc2VydF9l
cXVhbHM6IEV4cGVjdGVkIGFib3J0IGV2ZW50LCBidXQgZ290IGVycm9yIGV2ZW50IGluc3RlYWQg
ZXhwZWN0ZWQgImFib3J0IiBidXQgZ290ICJlcnJvciIKK1BBU1MgQWJvcnRpbmcgYWZ0ZXIgcmVh
ZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJheUJ1
ZmZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNBcnJh
eUJ1ZmZlci1leHBlY3RlZC50eHQKaW5kZXggNDE4NjgxOWE0Mzc1YWZkZjk5ZmY0ZTc4YWNkOWMw
ODlhMTY3YjVhMi4uY2VhY2FiZWUxNGYxMmFkYTAyMDFjYjBkNzM2YjAxM2VlMGYzZTBmNiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxl
QVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXItZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvRmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0FycmF5QnVm
ZmVyLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBGaWxlQVBJIFRlc3Q6IGZp
bGVyZWFkZXJfcmVhZEFzQXJyYXlCdWZmZXIgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQg
Z290IDIKK1BBU1MgRmlsZUFQSSBUZXN0OiBmaWxlcmVhZGVyX3JlYWRBc0FycmF5QnVmZmVyCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
RmlsZUFQSS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmlu
Zy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlT
dHJpbmctZXhwZWN0ZWQudHh0CmluZGV4IGU4YmIyYWIzYTg5ODI3NDIzMzNlODZlYzU1NDg4ZDMw
M2E4YmExMmEuLmM2YzhlMWY0ODBmMzA1ZTJjYjcwODBiYjVhMDNiNDUyMzljMGRhYzggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQ
SS9yZWFkaW5nLWRhdGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc0JpbmFyeVN0cmluZy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzQmluYXJ5U3Ry
aW5nLWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBGaWxlQVBJIFRlc3Q6IGZp
bGVyZWFkZXJfcmVhZEFzQmluYXJ5U3RyaW5nIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEgYnV0
IGdvdCAyCitQQVNTIEZpbGVBUEkgVGVzdDogZmlsZXJlYWRlcl9yZWFkQXNCaW5hcnlTdHJpbmcK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzRGF0YVVSTC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L0ZpbGVBUEkvcmVhZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNEYXRhVVJMLWV4
cGVjdGVkLnR4dAppbmRleCA5MGIxMzAwNjQ4OTU4Mjc1NTdiY2MyMmQ3ZDYxMmFmYmYwYzZmODA2
Li5iMzE3NTAyYTdhYjEyYTFhYjE5MTdiOTMzMDI1M2QxNmM1ODBhNjEyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVhZGlu
Zy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNEYXRhVVJMLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvcmVh
ZGluZy1kYXRhLXNlY3Rpb24vZmlsZXJlYWRlcl9yZWFkQXNEYXRhVVJMLWV4cGVjdGVkLnR4dApA
QCAtMSw1ICsxLDUgQEAKIAotRkFJTCBGaWxlUmVhZGVyIHJlYWR5U3RhdGUgZHVyaW5nIHJlYWRB
c0RhdGFVUkwgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQgZ290IDIKK1BBU1MgRmlsZVJl
YWRlciByZWFkeVN0YXRlIGR1cmluZyByZWFkQXNEYXRhVVJMCiBQQVNTIHJlYWRBc0RhdGFVUkwg
cmVzdWx0IGZvciBCbG9iIHdpdGggc3BlY2lmaWVkIE1JTUUgdHlwZQogRkFJTCByZWFkQXNEYXRh
VVJMIHJlc3VsdCBmb3IgQmxvYiB3aXRoIHVuc3BlY2lmaWVkIE1JTUUgdHlwZSBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiZGF0YTphcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07YmFzZTY0LFZFVlRW
QT09IiBidXQgZ290ICJkYXRhOjtiYXNlNjQsVkVWVFZBPT0iCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvRmlsZUFQSS9yZWFkaW5nLWRh
dGEtc2VjdGlvbi9maWxlcmVhZGVyX3JlYWRBc1RleHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1z
ZWN0aW9uL2ZpbGVyZWFkZXJfcmVhZEFzVGV4dC1leHBlY3RlZC50eHQKaW5kZXggYzg3MGUxMmQx
MTU1NTJhMmViMmYzNWFjOTM4NTA3ZjAzYjdhNTIxMS4uYWIzNWQ3MTk1NDg2ODUzNGEyYzIwODUy
NzE2ZDYwMjcxYjNlYmNmNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJf
cmVhZEFzVGV4dC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL3JlYWRpbmctZGF0YS1zZWN0aW9uL2ZpbGVyZWFkZXJf
cmVhZEFzVGV4dC1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKLUZBSUwgcmVhZEFzVGV4
dCBzaG91bGQgY29ycmVjdGx5IHJlYWQgVVRGLTguIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDEg
YnV0IGdvdCAyCitQQVNTIHJlYWRBc1RleHQgc2hvdWxkIGNvcnJlY3RseSByZWFkIFVURi04Lgog
UEFTUyByZWFkQXNUZXh0IHNob3VsZCBjb3JyZWN0bHkgcmVhZCBVVEYtMTYuCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>