<?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>211464</bug_id>
          
          <creation_ts>2020-05-05 12:44:22 -0700</creation_ts>
          <short_desc>Poster set after playback begins should be ignored</short_desc>
          <delta_ts>2020-05-13 12:10:03 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=211611</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=211612</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=211856</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1649334</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-05 12:44:22 -0700</bug_when>
    <thetext>Poster set after playback begins should be ignored</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649349</commentid>
    <comment_count>1</comment_count>
      <attachid>398547</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-05 13:27:29 -0700</bug_when>
    <thetext>Created attachment 398547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649357</commentid>
    <comment_count>2</comment_count>
      <attachid>398547</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-05-05 13:33:30 -0700</bug_when>
    <thetext>Comment on attachment 398547
Patch

Nice, we got rid of setDisplayMode() entirely.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650181</commentid>
    <comment_count>3</comment_count>
      <attachid>398756</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-07 10:24:56 -0700</bug_when>
    <thetext>Created attachment 398756
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650256</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-07 11:53:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/62605114&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650302</commentid>
    <comment_count>5</comment_count>
      <attachid>398782</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-07 12:46:48 -0700</bug_when>
    <thetext>Created attachment 398782
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650399</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-07 16:05:44 -0700</bug_when>
    <thetext>Committed r261341: &lt;https://trac.webkit.org/changeset/261341&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 398782.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650561</commentid>
    <comment_count>7</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-05-08 05:14:44 -0700</bug_when>
    <thetext>(In reply to EWS from comment #6)
&gt; Committed r261341: &lt;https://trac.webkit.org/changeset/261341&gt;
This seems to have made this test very flaky: imported/w3c/web-platform-tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes.htm
Tracked in Bug 211612.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1650738</commentid>
    <comment_count>8</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-05-08 13:27:50 -0700</bug_when>
    <thetext>Reverted r261341 and r261392 for reason:

Caused multiple regression test failures

Committed r261409: &lt;https://trac.webkit.org/changeset/261409&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651413</commentid>
    <comment_count>9</comment_count>
      <attachid>399051</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-11 13:39:37 -0700</bug_when>
    <thetext>Created attachment 399051
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651480</commentid>
    <comment_count>10</comment_count>
      <attachid>399059</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-11 15:21:21 -0700</bug_when>
    <thetext>Created attachment 399059
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651495</commentid>
    <comment_count>11</comment_count>
      <attachid>399061</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-11 15:46:15 -0700</bug_when>
    <thetext>Created attachment 399061
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651754</commentid>
    <comment_count>12</comment_count>
      <attachid>399133</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-12 09:11:09 -0700</bug_when>
    <thetext>Created attachment 399133
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651810</commentid>
    <comment_count>13</comment_count>
      <attachid>399133</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-12 10:51:30 -0700</bug_when>
    <thetext>Comment on attachment 399133
Patch

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

Is there code that stops the poster loading once we load the first frame?

&gt; Source/WebCore/ChangeLog:22
&gt; +020-05-11  Antoine Quint  &lt;graouts@apple.com&gt;

Oops, deleted a &quot;2&quot; here.

&gt; Source/WebCore/html/HTMLVideoElement.cpp:136
&gt; +        if (hasAvailableVideoFrame())
&gt; +            return;

Not really about this patch:

I wish we had a more consistent rule about when to call through to the base class in parseAttribute functions. If it was up to me, all parseAttribute functions would call through to the base class always, even when they handle the attribute, except when they are trying to disable some specific work the base class does. But it’s more efficient to *not* call through to the base class if you know it has no work to do, so some might prefer our current status quo where we often don’t call through.

&gt; Source/WebCore/html/HTMLVideoElement.cpp:286
&gt; +    else if (displayMode() &lt; Poster &amp;&amp; !hasAvailableVideoFrame())
&gt;          setDisplayMode(Poster);

Is the idea here that if hasAvailableVideoFrame() is true, the display mode will be changing to Video very soon? Why not change it to Video right now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651820</commentid>
    <comment_count>14</comment_count>
      <attachid>399133</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-12 11:22:26 -0700</bug_when>
    <thetext>Comment on attachment 399133
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:22
&gt;&gt; +020-05-11  Antoine Quint  &lt;graouts@apple.com&gt;
&gt; 
&gt; Oops, deleted a &quot;2&quot; here.

Oops indeed, I wonder how I did that!

&gt;&gt; Source/WebCore/html/HTMLVideoElement.cpp:286
&gt;&gt;          setDisplayMode(Poster);
&gt; 
&gt; Is the idea here that if hasAvailableVideoFrame() is true, the display mode will be changing to Video very soon? Why not change it to Video right now?

That is the idea, but I like your suggestion - there is no reason to wait. 

I&apos;ll make that change, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651825</commentid>
    <comment_count>15</comment_count>
      <attachid>399148</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-05-12 11:32:23 -0700</bug_when>
    <thetext>Created attachment 399148
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651904</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-12 13:44:02 -0700</bug_when>
    <thetext>Committed r261576: &lt;https://trac.webkit.org/changeset/261576&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 399148.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398547</attachid>
            <date>2020-05-05 13:27:29 -0700</date>
            <delta_ts>2020-05-07 10:24:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211464-20200505132728.patch</filename>
            <type>text/plain</type>
            <size>26754</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWRiNDVhMTkzYjFlZDVk
MGQ5NzBhNzZjMTdkOGFmNGIxYTg4MjdkNS4uODUzYTc2MmZhY2ZkNTk0NjIyNGY2MjE2YTI4NGE2
ODdkNjZjODkxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3IEBACisyMDIwLTA1LTA1ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQg
YWZ0ZXIgcGxheWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFJlZG8gdGhlIHBvc3RlciBm
cmFtZSBsb2dpYyB0byB1c2UgdGhlIGBzaG93IHBvc3RlciBmbGFnYCBsb2dpYyBmcm9tIHRoZSBz
cGVjLgorCisgICAgICAgIFRlc3Q6IG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJh
Y2suaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRpYUVsZW1lbnQpOiBJbml0aWFsaXpl
IG1fc2hvd1Bvc3Rlci4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnByZXBh
cmVGb3JMb2FkKTogbV9kaXNwbGF5TW9kZSB3YXMgcmVtb3ZlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnQ6OnNlbGVjdE1lZGlhUmVzb3VyY2UpOiBDYWxsIHNldFNob3dQb3N0
ZXJGbGFnLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bG9hZFJlc291cmNl
KTogUmVtb3ZlIGNhbGxzIHRvIHNldERpc3BsYXlNb2RlIGFuZCB1cGRhdGVEaXNwbGF5U3RhdGUs
CisgICAgICAgIHRoZXkgaGF2ZSBiZWVuIGRlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50Ojp3YWl0Rm9yU291cmNlQ2hhbmdlKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxh
Zy4gVXBkYXRlIHNwZWMgdGV4dC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6
Om5vbmVTdXBwb3J0ZWQpOiBDYWxsIHNldFNob3dQb3N0ZXJGbGFnLgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFMb2FkaW5nRmFpbGVkKTogUmVtb3ZlIGNhbGwgdG8g
dXBkYXRlRGlzcGxheVN0YXRlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6
c2V0UmVhZHlTdGF0ZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVu
dDo6c2Vla1dpdGhUb2xlcmFuY2UpOiBDYWxsIHNldFNob3dQb3N0ZXJGbGFnLgorICAgICAgICAo
V2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6c2Vla1Rhc2spOiAgQ2hlY2sgbV9zaG93UG9zdGVy
LCBub3QgZGlzcGxheU1vZGUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpw
bGF5SW50ZXJuYWwpOiBDYWxsIHNldFNob3dQb3N0ZXJGbGFnLgorICAgICAgICAoV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJDaGFyYWN0ZXJpc3RpY0NoYW5nZWQpOiBEb24n
dCBjaGVjayBkaXNwbGF5TW9kZS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6
OnVwZGF0ZVBsYXlTdGF0ZSk6IE5vIG1vcmUgc2V0RGlzcGxheU1vZGUuCisgICAgICAgIChXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50Ojp1c2VyQ2FuY2VsbGVkTG9hZCk6ICBDYWxsIHNldFNob3dQ
b3N0ZXJGbGFnLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5
ZXJGaXJzdFZpZGVvRnJhbWVBdmFpbGFibGUpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvSFRN
TE1lZGlhRWxlbWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6c2hv
d1Bvc3RlckZsYWcgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6
c2V0U2hvd1Bvc3RlckZsYWcpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6
ZGlzcGxheU1vZGUgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlh
RWxlbWVudDo6c2V0RGlzcGxheU1vZGUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRlKTogRGVsZXRlZC4KKworICAgICAgICAq
IGh0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9F
bGVtZW50OjpkaWRBdHRhY2hSZW5kZXJlcnMpOiBObyBtb3JlIHVwZGF0ZURpc3BsYXlTdGF0ZS4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKTogRGl0
dG8uIENhbGwgdXBkYXRlRnJvbUVsZW1lbnQgd2hlbiBwb3N0ZXIgaXMgcmVtb3ZlZC4KKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSBj
b25zdCk6IE5ldy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6Om1lZGlhUGxh
eWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKTogTmV3LCB1cGRhdGUgcGxheWVyIGFuZCAKKyAg
ICAgICAgcmVuZGVyZXIgaWYgdGhlIHBvc3RlciBpc24ndCBzdXBwb3NlZCB0byBiZSB2aXNpYmxl
LgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudDo6c2V0RGlzcGxheU1vZGUpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxh
eVN0YXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaDoKKwor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJWaWRlby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJWaWRlbzo6ZmFpbGVkVG9Mb2FkUG9zdGVySW1hZ2UgY29uc3QpOiBOZXcuCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlclZpZGVvLmg6CisKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OmVsZW1lbnRTaG91bGREaXNwbGF5
UG9zdGVySW1hZ2UgY29uc3QpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIwLTA1LTA0ICBBbnRvaW5lIFF1aW50
ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CiAKICAgICAgICAgTWVkaWEgY29udHJvbHMgdHJhY2tzIG1l
bnUgc2hvd3MgIkF1dG8iIHNlbGVjdGVkIGluc3RlYWQgb2YgdHJhY2sgc2VsZWN0ZWQgdmlhIHRo
ZSBKUyBBUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IGE5
NTU1Y2Q4ZDFhYjRkMTcyZmM0MDMyYzg3NzYwNjI2ZmY5OTA0YzIuLjM5NDY2YTdkNDdmMzczOGQy
NGYwMzkzNzAyM2JjN2ExZGJhNjNiOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcApAQCAtNDQ3LDYgKzQ0Nyw3IEBAIEhUTUxNZWRpYUVsZW1lbnQ6OkhUTUxNZWRp
YUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3VtCiAg
ICAgLCBtX21lZGlhQ29udHJvbHNEZXBlbmRPblBhZ2VTY2FsZUZhY3RvcihmYWxzZSkKICAgICAs
IG1faGF2ZVNldFVwQ2FwdGlvbkNvbnRhaW5lcihmYWxzZSkKICAgICAsIG1faXNTY3J1YmJpbmdS
ZW1vdGVseShmYWxzZSkKKyAgICAsIG1fc2hvd1Bvc3Rlcih0cnVlKQogI2lmIEVOQUJMRShWSURF
T19UUkFDSykKICAgICAsIG1fdHJhY2tzQXJlUmVhZHkodHJ1ZSkKICAgICAsIG1faGF2ZVZpc2li
bGVUZXh0VHJhY2soZmFsc2UpCkBAIC0xMTQwLDcgKzExNDEsNiBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OnByZXBhcmVGb3JMb2FkKCkKICAgICBtX2hhdmVGaXJlZExvYWRlZERhdGEgPSBmYWxz
ZTsKICAgICBtX2NvbXBsZXRlbHlMb2FkZWQgPSBmYWxzZTsKICAgICBtX2hhdmVQcmVwYXJlZFRv
UGxheSA9IGZhbHNlOwotICAgIG1fZGlzcGxheU1vZGUgPSBVbmtub3duOwogICAgIG1fY3VycmVu
dFNyYyA9IFVSTCgpOwogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKQEAg
LTEyNDYsNyArMTI0Niw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2VsZWN0TWVkaWFSZXNv
dXJjZSgpCiAgICAgbV9uZXR3b3JrU3RhdGUgPSBORVRXT1JLX05PX1NPVVJDRTsKIAogICAgIC8v
IDIuIFNldCB0aGUgZWxlbWVudOKAmXMgc2hvdyBwb3N0ZXIgZmxhZyB0byB0cnVlLgotICAgIHNl
dERpc3BsYXlNb2RlKFBvc3Rlcik7CisgICAgc2V0U2hvd1Bvc3RlckZsYWcodHJ1ZSk7CiAKICAg
ICAvLyAzLiBTZXQgdGhlIG1lZGlhIGVsZW1lbnTigJlzIGRlbGF5aW5nLXRoZS1sb2FkLWV2ZW50
IGZsYWcgdG8gdHJ1ZSAodGhpcyBkZWxheXMgdGhlIGxvYWQgZXZlbnQpLgogICAgIHNldFNob3Vs
ZERlbGF5TG9hZEV2ZW50KHRydWUpOwpAQCAtMTQ5NCw5ICsxNDk0LDYgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50Ojpsb2FkUmVzb3VyY2UoY29uc3QgVVJMJiBpbml0aWFsVVJMLCBDb250ZW50VHlw
ZSYgY29udGVudFQKICAgICBib29sIHByaXZhdGVNb2RlID0gZG9jdW1lbnQoKS5wYWdlKCkgJiYg
ZG9jdW1lbnQoKS5wYWdlKCktPnVzZXNFcGhlbWVyYWxTZXNzaW9uKCk7CiAgICAgbV9wbGF5ZXIt
PnNldFByaXZhdGVCcm93c2luZ01vZGUocHJpdmF0ZU1vZGUpOwogCi0gICAgLy8gUmVzZXQgZGlz
cGxheSBtb2RlIHRvIGZvcmNlIGEgcmVjYWxjdWxhdGlvbiBvZiB3aGF0IHRvIHNob3cgYmVjYXVz
ZSB3ZSBhcmUgcmVzZXR0aW5nIHRoZSBwbGF5ZXIuCi0gICAgc2V0RGlzcGxheU1vZGUoVW5rbm93
bik7Ci0KICAgICBpZiAoIWF1dG9wbGF5KCkgJiYgIW1faGF2ZVByZXBhcmVkVG9QbGF5KQogICAg
ICAgICBtX3BsYXllci0+c2V0UHJlbG9hZChtX21lZGlhU2Vzc2lvbi0+ZWZmZWN0aXZlUHJlbG9h
ZEZvckVsZW1lbnQoKSk7CiAgICAgbV9wbGF5ZXItPnNldFByZXNlcnZlc1BpdGNoKG1fd2Via2l0
UHJlc2VydmVzUGl0Y2gpOwpAQCAtMTU1MCwxMCArMTU0Nyw2IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNv
bnRlbnRUCiAgICAgaWYgKCFsb2FkQXR0ZW1wdGVkICYmICFtX3BsYXllci0+bG9hZCh1cmwsIGNv
bnRlbnRUeXBlLCBrZXlTeXN0ZW0pKQogICAgICAgICBtZWRpYUxvYWRpbmdGYWlsZWQoTWVkaWFQ
bGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6Rm9ybWF0RXJyb3IpOwogCi0gICAgLy8gSWYgdGhlcmUgaXMg
bm8gcG9zdGVyIHRvIGRpc3BsYXksIGFsbG93IHRoZSBtZWRpYSBlbmdpbmUgdG8gcmVuZGVyIHZp
ZGVvIGZyYW1lcyBhcyBzb29uIGFzCi0gICAgLy8gdGhleSBhcmUgYXZhaWxhYmxlLgotICAgIHVw
ZGF0ZURpc3BsYXlTdGF0ZSgpOwotCiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApAQCAtMjA0
NywxMCArMjA0MCwxNCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OndhaXRGb3JTb3VyY2VDaGFu
Z2UoKQogICAgIC8vIDYuMTcgLSBXYWl0aW5nOiBTZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3Rh
dGUgYXR0cmlidXRlIHRvIHRoZSBORVRXT1JLX05PX1NPVVJDRSB2YWx1ZQogICAgIG1fbmV0d29y
a1N0YXRlID0gTkVUV09SS19OT19TT1VSQ0U7CiAKLSAgICAvLyA2LjE4IC0gU2V0IHRoZSBlbGVt
ZW50J3MgZGVsYXlpbmctdGhlLWxvYWQtZXZlbnQgZmxhZyB0byBmYWxzZS4gVGhpcyBzdG9wcyBk
ZWxheWluZyB0aGUgbG9hZCBldmVudC4KKyAgICAvLyA2LjE4IC0gU2V0IHRoZSBlbGVtZW50J3Mg
c2hvdyBwb3N0ZXIgZmxhZyB0byB0cnVlLgorICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUpOwor
CisgICAgLy8gNi4xOSAtICBRdWV1ZSBhIG1lZGlhIGVsZW1lbnQgdGFzayBnaXZlbiB0aGUgbWVk
aWEgZWxlbWVudCBnaXZlbiB0aGUgZWxlbWVudCB0byBzZXQgdGhlCisgICAgLy8gZWxlbWVudCdz
IGRlbGF5aW5nLXRoZS1sb2FkLWV2ZW50IGZsYWcgdG8gZmFsc2UuIFRoaXMgc3RvcHMgZGVsYXlp
bmcgdGhlIGxvYWQgZXZlbnQuCisgICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIGJlIGRvbmUgaW4g
YSB0YXNrIHF1ZXVlCiAgICAgc2V0U2hvdWxkRGVsYXlMb2FkRXZlbnQoZmFsc2UpOwogCi0gICAg
dXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApAQCAtMjA3
OSw2ICsyMDc2LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpub25lU3VwcG9ydGVkKCkKICAg
ICAvLyA2LjMgLSBTZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3RhdGUgYXR0cmlidXRlIHRvIHRo
ZSBORVRXT1JLX05PX1NPVVJDRSB2YWx1ZS4KICAgICBtX25ldHdvcmtTdGF0ZSA9IE5FVFdPUktf
Tk9fU09VUkNFOwogCisgICAgLy8gNi40IC0gU2V0IHRoZSBlbGVtZW50J3Mgc2hvdyBwb3N0ZXIg
ZmxhZyB0byB0cnVlLgorICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUpOworCiAgICAgLy8gNyAt
IFF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50IG5hbWVkIGVycm9yIGF0IHRoZSBt
ZWRpYSBlbGVtZW50LgogICAgIHNjaGVkdWxlRXZlbnQoZXZlbnROYW1lcygpLmVycm9yRXZlbnQp
OwogCkBAIC0yMDk0LDcgKzIwOTQsNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om5vbmVTdXBw
b3J0ZWQoKQogICAgIC8vIDkgLSBBYm9ydCB0aGVzZSBzdGVwcy4gVW50aWwgdGhlIGxvYWQoKSBt
ZXRob2QgaXMgaW52b2tlZCBvciB0aGUgc3JjIGF0dHJpYnV0ZSBpcyBjaGFuZ2VkLAogICAgIC8v
IHRoZSBlbGVtZW50IHdvbid0IGF0dGVtcHQgdG8gbG9hZCBhbm90aGVyIHJlc291cmNlLgogCi0g
ICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApAQCAt
MjIwOCw4ICsyMjA3LDYgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYUxvYWRpbmdGYWls
ZWQoTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZSBlcnJvcikKICAgICBlbHNlIGlmICgoZXJyb3Ig
PT0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6Rm9ybWF0RXJyb3IgfHwgZXJyb3IgPT0gTWVk
aWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6TmV0d29ya0Vycm9yKSAmJiBtX2xvYWRTdGF0ZSA9PSBM
b2FkaW5nRnJvbVNyY0F0dHIpCiAgICAgICAgIG5vbmVTdXBwb3J0ZWQoKTsKIAotICAgIHVwZGF0
ZURpc3BsYXlTdGF0ZSgpOwotCiAgICAgRVJST1JfTE9HKExPR0lERU5USUZJRVIsICJlcnJvciA9
ICIsIHN0YXRpY19jYXN0PGludD4oZXJyb3IpKTsKIAogICAgIGxvZ01lZGlhTG9hZFJlcXVlc3Qo
ZG9jdW1lbnQoKS5wYWdlKCksIFN0cmluZygpLCBjb252ZXJ0RW51bWVyYXRpb25Ub1N0cmluZyhl
cnJvciksIGZhbHNlKTsKQEAgLTI0MTYsOCArMjQxMyw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVu
dDo6c2V0UmVhZHlTdGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAg
bV9tZWRpYVNlc3Npb24tPmNsaWVudENoYXJhY3RlcmlzdGljc0NoYW5nZWQoKTsKICAgICB9CiAK
LSAgICBib29sIHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSA9IGZhbHNlOwotCiAgICAgaWYgKG1f
cmVhZHlTdGF0ZSA+PSBIQVZFX0NVUlJFTlRfREFUQSAmJiBvbGRTdGF0ZSA8IEhBVkVfQ1VSUkVO
VF9EQVRBKSB7CiAgICAgICAgIGlmICghbV9oYXZlRmlyZWRMb2FkZWREYXRhKSB7CiAgICAgICAg
ICAgICBtX2hhdmVGaXJlZExvYWRlZERhdGEgPSB0cnVlOwpAQCAtMjQyNSwxNiArMjQyMCwxMyBA
QCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVkaWFQbGF5ZXI6OlJlYWR5
U3RhdGUgc3RhdGUpCiAgICAgICAgICAgICAvLyBGSVhNRTogSXQncyBub3QgY2xlYXIgdGhhdCBp
dCdzIGNvcnJlY3QgdG8gc2tpcCB0aGVzZSB0d28gb3BlcmF0aW9ucyBqdXN0CiAgICAgICAgICAg
ICAvLyBiZWNhdXNlIG1faGF2ZUZpcmVkTG9hZGVkRGF0YSBpcyBhbHJlYWR5IHRydWUuIEF0IG9u
ZSB0aW1lIHdlIHdlcmUgc2tpcHBpbmcKICAgICAgICAgICAgIC8vIHRoZSBjYWxsIHRvIHNldFNo
b3VsZERlbGF5TG9hZEV2ZW50LCB3aGljaCB3YXMgZGVmaW5pdGVseSBpbmNvcnJlY3QuCi0gICAg
ICAgICAgICBzaG91bGRVcGRhdGVEaXNwbGF5U3RhdGUgPSB0cnVlOwogICAgICAgICAgICAgYXBw
bHlNZWRpYUZyYWdtZW50VVJJKCk7CiAgICAgICAgIH0KICAgICAgICAgc2V0U2hvdWxkRGVsYXlM
b2FkRXZlbnQoZmFsc2UpOwogICAgIH0KIAotICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gSEFWRV9G
VVRVUkVfREFUQSAmJiBvbGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSAmJiB0cmFja3NBcmVS
ZWFkeSkgeworICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gSEFWRV9GVVRVUkVfREFUQSAmJiBvbGRT
dGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSAmJiB0cmFja3NBcmVSZWFkeSkKICAgICAgICAgc2No
ZWR1bGVFdmVudChldmVudE5hbWVzKCkuY2FucGxheUV2ZW50KTsKLSAgICAgICAgc2hvdWxkVXBk
YXRlRGlzcGxheVN0YXRlID0gdHJ1ZTsKLSAgICB9CiAKICAgICBpZiAobV9yZWFkeVN0YXRlID09
IEhBVkVfRU5PVUdIX0RBVEEgJiYgb2xkU3RhdGUgPCBIQVZFX0VOT1VHSF9EQVRBICYmIHRyYWNr
c0FyZVJlYWR5KSB7CiAgICAgICAgIGlmIChvbGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSkK
QEAgLTI0NDUsNiArMjQzNyw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlTdGF0
ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAgYXV0byBzdWNjZXNzID0g
Y2FuVHJhbnNpdGlvbkZyb21BdXRvcGxheVRvUGxheSgpOwogICAgICAgICBpZiAoc3VjY2Vzcykg
ewogICAgICAgICAgICAgbV9wYXVzZWQgPSBmYWxzZTsKKyAgICAgICAgICAgIHNldFNob3dQb3N0
ZXJGbGFnKGZhbHNlKTsKICAgICAgICAgICAgIGludmFsaWRhdGVDYWNoZWRUaW1lKCk7CiAgICAg
ICAgICAgICBzZXRBdXRvcGxheUV2ZW50UGxheWJhY2tTdGF0ZShBdXRvcGxheUV2ZW50UGxheWJh
Y2tTdGF0ZTo6U3RhcnRlZFdpdGhvdXRVc2VyR2VzdHVyZSk7CiAgICAgICAgICAgICBtX3BsYXli
YWNrU3RhcnRlZFRpbWUgPSBjdXJyZW50TWVkaWFUaW1lKCkudG9Eb3VibGUoKTsKQEAgLTI0NTMs
OCArMjQ0Niw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlTdGF0ZShNZWRpYVBs
YXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJ
RklFUiwgIkF1dG9wbGF5IGJsb2NrZWQsIHVzZXIgZ2VzdHVyZSByZXF1aXJlZCIpOwogICAgICAg
ICAgICAgc2V0QXV0b3BsYXlFdmVudFBsYXliYWNrU3RhdGUoQXV0b3BsYXlFdmVudFBsYXliYWNr
U3RhdGU6OlByZXZlbnRlZEF1dG9wbGF5KTsKICAgICAgICAgfQotCi0gICAgICAgIHNob3VsZFVw
ZGF0ZURpc3BsYXlTdGF0ZSA9IHRydWU7CiAgICAgfQogCiAgICAgLy8gSWYgd2UgdHJhbnNpdGlv
biB0byB0aGUgRnV0dXJlIERhdGEgc3RhdGUgYW5kIHdlJ3JlIGFib3V0IHRvIGJlZ2luIHBsYXlp
bmcsIGVuc3VyZSBwbGF5YmFjayBpcyBhY3R1YWxseSBwZXJtaXR0ZWQgZmlyc3QsCkBAIC0yNDY4
LDkgKzI0NTksNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVkaWFQ
bGF5ZXI6OlJlYWR5U3RhdGUgc3RhdGUpCiAgICAgICAgIHNldEF1dG9wbGF5RXZlbnRQbGF5YmFj
a1N0YXRlKEF1dG9wbGF5RXZlbnRQbGF5YmFja1N0YXRlOjpQcmV2ZW50ZWRBdXRvcGxheSk7CiAg
ICAgfQogCi0gICAgaWYgKHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSkKLSAgICAgICAgdXBkYXRl
RGlzcGxheVN0YXRlKCk7Ci0KICAgICB1cGRhdGVQbGF5U3RhdGUoKTsKICAgICB1cGRhdGVNZWRp
YUNvbnRyb2xsZXIoKTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCkBAIC0yODk0LDcgKzI4ODIs
NyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtXaXRoVG9sZXJhbmNlKGNvbnN0IE1lZGlh
VGltZSYgaW5UaW1lLCBjb25zdCBNZWRpYVRpbQogICAgIE1lZGlhVGltZSB0aW1lID0gaW5UaW1l
OwogCiAgICAgLy8gMSAtIFNldCB0aGUgbWVkaWEgZWxlbWVudCdzIHNob3cgcG9zdGVyIGZsYWcg
dG8gZmFsc2UuCi0gICAgc2V0RGlzcGxheU1vZGUoVmlkZW8pOworICAgIHNldFNob3dQb3N0ZXJG
bGFnKGZhbHNlKTsKIAogICAgIC8vIDIgLSBJZiB0aGUgbWVkaWEgZWxlbWVudCdzIHJlYWR5U3Rh
dGUgaXMgSEFWRV9OT1RISU5HLCBhYm9ydCB0aGVzZSBzdGVwcy4KICAgICBpZiAobV9yZWFkeVN0
YXRlID09IEhBVkVfTk9USElORyB8fCAhbV9wbGF5ZXIpCkBAIC0yOTkzLDcgKzI5ODEsNyBAQCB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUYXNrKCkKICAgICAvLyBEb24ndCBza2lwIGNhbGxp
bmcgdGhlIG1lZGlhIGVuZ2luZSBpZiAxKSB3ZSBhcmUgaW4gcG9zdGVyIG1vZGUgKGJlY2F1c2Ug
YSBzZWVrIHNob3VsZCBhbHdheXMgY2FuY2VsCiAgICAgLy8gcG9zdGVyIGRpc3BsYXkpLCBvciAy
KSBpZiB0aGVyZSBpcyBhIHBlbmRpbmcgZmFzdCBzZWVrLCBvciAzKSBpZiB0aGlzIHNlZWsgaXMg
bm90IGFuIGV4YWN0IHNlZWsKICAgICBTZWVrVHlwZSB0aGlzU2Vla1R5cGUgPSAobmVnYXRpdmVU
b2xlcmFuY2UgPT0gTWVkaWFUaW1lOjp6ZXJvVGltZSgpICYmIHBvc2l0aXZlVG9sZXJhbmNlID09
IE1lZGlhVGltZTo6emVyb1RpbWUoKSkgPyBQcmVjaXNlIDogRmFzdDsKLSAgICBpZiAoIW5vU2Vl
a1JlcXVpcmVkICYmIHRpbWUgPT0gbm93ICYmIHRoaXNTZWVrVHlwZSA9PSBQcmVjaXNlICYmIG1f
cGVuZGluZ1NlZWtUeXBlICE9IEZhc3QgJiYgZGlzcGxheU1vZGUoKSAhPSBQb3N0ZXIpCisgICAg
aWYgKCFub1NlZWtSZXF1aXJlZCAmJiB0aW1lID09IG5vdyAmJiB0aGlzU2Vla1R5cGUgPT0gUHJl
Y2lzZSAmJiBtX3BlbmRpbmdTZWVrVHlwZSAhPSBGYXN0ICYmICFzaG93UG9zdGVyRmxhZygpKQog
ICAgICAgICBub1NlZWtSZXF1aXJlZCA9IHRydWU7CiAKICNpZiBFTkFCTEUoTUVESUFfU09VUkNF
KQpAQCAtMzQ3NCw2ICszNDYyLDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5SW50ZXJu
YWwoKQogCiAgICAgaWYgKG1fcGF1c2VkKSB7CiAgICAgICAgIG1fcGF1c2VkID0gZmFsc2U7Cisg
ICAgICAgIHNldFNob3dQb3N0ZXJGbGFnKGZhbHNlKTsKICAgICAgICAgaW52YWxpZGF0ZUNhY2hl
ZFRpbWUoKTsKIAogICAgICAgICAvLyBUaGlzIGF2b2lkcyB0aGUgZmlyc3QgdGltZVVwZGF0ZWQg
ZXZlbnQgYWZ0ZXIgcGxheWJhY2sgc3RhcnRzLCB3aGVuIGN1cnJlbnRUaW1lIGlzIHN0aWxsCkBA
IC00OTM5LDcgKzQ5MjgsNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyUmVz
b3VyY2VOb3RTdXBwb3J0ZWQoKQogdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllclJl
cGFpbnQoKQogewogICAgIGJlZ2luUHJvY2Vzc2luZ01lZGlhUGxheWVyQ2FsbGJhY2soKTsKLSAg
ICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKICAgICBpZiAoYXV0byogcmVuZGVyZXIgPSB0aGlzLT5y
ZW5kZXJlcigpKQogICAgICAgICByZW5kZXJlci0+cmVwYWludCgpOwogICAgIGVuZFByb2Nlc3Np
bmdNZWRpYVBsYXllckNhbGxiYWNrKCk7CkBAIC01MDY0LDE4ICs1MDUyLDYgQEAgdm9pZCBIVE1M
TWVkaWFFbGVtZW50OjptZWRpYVBsYXllckVuZ2luZVVwZGF0ZWQoKQogICAgIHNjaGVkdWxlTWVk
aWFFbmdpbmVXYXNVcGRhdGVkKCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQ
bGF5ZXJGaXJzdFZpZGVvRnJhbWVBdmFpbGFibGUoKQotewotICAgIElORk9fTE9HKExPR0lERU5U
SUZJRVIsICJjdXJyZW50IGRpc3BsYXkgbW9kZSA9ICIsIChpbnQpZGlzcGxheU1vZGUoKSk7Ci0K
LSAgICBiZWdpblByb2Nlc3NpbmdNZWRpYVBsYXllckNhbGxiYWNrKCk7Ci0gICAgaWYgKGRpc3Bs
YXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZpZGVvKSB7Ci0gICAgICAgIHNldERpc3BsYXlN
b2RlKFZpZGVvKTsKLSAgICAgICAgbWVkaWFQbGF5ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCgpOwot
ICAgIH0KLSAgICBlbmRQcm9jZXNzaW5nTWVkaWFQbGF5ZXJDYWxsYmFjaygpOwotfQotCiB2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKCkKIHsK
ICAgICBJTkZPX0xPRyhMT0dJREVOVElGSUVSKTsKQEAgLTUwODcsMTAgKzUwNjMsOCBAQCB2b2lk
IEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKCkKICAg
ICAgICAgbWFya0NhcHRpb25BbmRTdWJ0aXRsZVRyYWNrc0FzVW5jb25maWd1cmVkKEFmdGVyRGVs
YXkpOwogI2VuZGlmCiAKLSAgICBpZiAocG90ZW50aWFsbHlQbGF5aW5nKCkgJiYgZGlzcGxheU1v
ZGUoKSA9PSBQb3N0ZXJXYWl0aW5nRm9yVmlkZW8pIHsKLSAgICAgICAgc2V0RGlzcGxheU1vZGUo
VmlkZW8pOworICAgIGlmIChwb3RlbnRpYWxseVBsYXlpbmcoKSkKICAgICAgICAgbWVkaWFQbGF5
ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCgpOwotICAgIH0KIAogICAgIHVwZGF0ZVJlbmRlcmVyKCk7
CiAKQEAgLTUzMzEsNyArNTMwNSw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6dXBkYXRlUGxh
eVN0YXRlKCkKICAgICBpZiAoc2hvdWxkQmVQbGF5aW5nKSB7CiAgICAgICAgIHNjaGVkdWxlUGxh
eWJhY2tDb250cm9sc01hbmFnZXJVcGRhdGUoKTsKIAotICAgICAgICBzZXREaXNwbGF5TW9kZShW
aWRlbyk7CiAgICAgICAgIGludmFsaWRhdGVDYWNoZWRUaW1lKCk7CiAKICAgICAgICAgaWYgKHBs
YXllclBhdXNlZCkgewpAQCAtNTQ2OCwxMSArNTQ0MSwxMSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1l
bnQ6OnVzZXJDYW5jZWxsZWRMb2FkKCkKICNlbmRpZgogCiAgICAgLy8gNCAtIElmIHRoZSBtZWRp
YSBlbGVtZW50J3MgcmVhZHlTdGF0ZSBhdHRyaWJ1dGUgaGFzIGEgdmFsdWUgZXF1YWwgdG8gSEFW
RV9OT1RISU5HLCBzZXQgdGhlCi0gICAgLy8gZWxlbWVudCdzIG5ldHdvcmtTdGF0ZSBhdHRyaWJ1
dGUgdG8gdGhlIE5FVFdPUktfRU1QVFkgdmFsdWUgYW5kIHF1ZXVlIGEgdGFzayB0byBmaXJlIGEK
LSAgICAvLyBzaW1wbGUgZXZlbnQgbmFtZWQgZW1wdGllZCBhdCB0aGUgZWxlbWVudC4gT3RoZXJ3
aXNlLCBzZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3RhdGUKLSAgICAvLyBhdHRyaWJ1dGUgdG8g
dGhlIE5FVFdPUktfSURMRSB2YWx1ZS4KKyAgICAvLyBlbGVtZW50J3MgbmV0d29ya1N0YXRlIGF0
dHJpYnV0ZSB0byB0aGUgTkVUV09SS19FTVBUWSB2YWx1ZSwgc2V0IHRoZSBlbGVtZW50J3Mgc2hv
dyBwb3N0ZXIKKyAgICAvLyBmbGFnIHRvIHRydWUsIGFuZCBmaXJlIGFuIGV2ZW50IG5hbWVkIGVt
cHRpZWQgYXQgdGhlIGVsZW1lbnQuCiAgICAgaWYgKG1fcmVhZHlTdGF0ZSA9PSBIQVZFX05PVEhJ
TkcpIHsKICAgICAgICAgbV9uZXR3b3JrU3RhdGUgPSBORVRXT1JLX0VNUFRZOworICAgICAgICBz
ZXRTaG93UG9zdGVyRmxhZyh0cnVlKTsKICAgICAgICAgc2NoZWR1bGVFdmVudChldmVudE5hbWVz
KCkuZW1wdGllZEV2ZW50KTsKICAgICB9CiAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuaAppbmRleCAyNzY0YWEzY2ViMjU4MDlhMGZhMzhlOTM3OTk3MzNhNGZjZWMx
OTI5Li5kMzdlOTdlOGVhYjAzMzBiOTI5YjUzOWFhYjJkOWVlNTM0MmNhNzY1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaApAQCAtNTk5LDEwICs1OTksNiBAQCBwcm90ZWN0
ZWQ6CiAKICAgICB2b2lkIGRpZE1vdmVUb05ld0RvY3VtZW50KERvY3VtZW50JiBvbGREb2N1bWVu
dCwgRG9jdW1lbnQmIG5ld0RvY3VtZW50KSBvdmVycmlkZTsKIAotICAgIGVudW0gRGlzcGxheU1v
ZGUgeyBVbmtub3duLCBOb25lLCBQb3N0ZXIsIFBvc3RlcldhaXRpbmdGb3JWaWRlbywgVmlkZW8g
fTsKLSAgICBEaXNwbGF5TW9kZSBkaXNwbGF5TW9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGlzcGxh
eU1vZGU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0RGlzcGxheU1vZGUoRGlzcGxheU1vZGUgbW9k
ZSkgeyBtX2Rpc3BsYXlNb2RlID0gbW9kZTsgfQotICAgIAogICAgIGJvb2wgaXNNZWRpYUVsZW1l
bnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBSZW5kZXJQdHI8UmVuZGVy
RWxlbWVudD4gY3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYsIGNvbnN0IFJlbmRl
clRyZWVQb3NpdGlvbiYpIG92ZXJyaWRlOwpAQCAtNjE1LDYgKzYxMSw5IEBAIHByb3RlY3RlZDoK
IAogICAgIHZvaWQgc2NoZWR1bGVFdmVudChjb25zdCBBdG9tU3RyaW5nJik7CiAKKyAgICBib29s
IHNob3dQb3N0ZXJGbGFnKCkgY29uc3QgeyByZXR1cm4gbV9zaG93UG9zdGVyOyB9CisgICAgdm9p
ZCBzZXRTaG93UG9zdGVyRmxhZyhib29sIGZsYWcpIHsgbV9zaG93UG9zdGVyID0gZmxhZzsgfQor
CiBwcml2YXRlOgogICAgIHZvaWQgY3JlYXRlTWVkaWFQbGF5ZXIoKTsKIApAQCAtNjQzLDggKzY0
Miw2IEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCB2aXNpYmlsaXR5U3RhdGVDaGFuZ2VkKCkg
ZmluYWw7CiAKLSAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRGlzcGxheVN0YXRlKCkgeyB9Ci0gICAg
CiAgICAgdm9pZCBzZXRSZWFkeVN0YXRlKE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlKTsKICAgICB2
b2lkIHNldE5ldHdvcmtTdGF0ZShNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlKTsKIApAQCAtNjcw
LDcgKzY2Nyw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzY2hlZHVsZU1lZGlhRW5naW5lV2FzVXBk
YXRlZCgpOwogICAgIHZvaWQgbWVkaWFFbmdpbmVXYXNVcGRhdGVkKCk7CiAKLSAgICB2b2lkIG1l
ZGlhUGxheWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKCkgZmluYWw7CiAgICAgdm9pZCBtZWRp
YVBsYXllckNoYXJhY3RlcmlzdGljQ2hhbmdlZCgpIGZpbmFsOwogCiAjaWYgRU5BQkxFKExFR0FD
WV9FTkNSWVBURURfTUVESUEpCkBAIC0xMDM0LDggKzEwMzAsNiBAQCBwcml2YXRlOgogCiAgICAg
TWVkaWFQbGF5ZXI6OlByZWxvYWQgbV9wcmVsb2FkIHsgUHJlbG9hZDo6QXV0byB9OwogCi0gICAg
RGlzcGxheU1vZGUgbV9kaXNwbGF5TW9kZSB7IFVua25vd24gfTsKLQogICAgIC8vIENvdW50ZXIg
aW5jcmVtZW50ZWQgd2hpbGUgcHJvY2Vzc2luZyBhIGNhbGxiYWNrIGZyb20gdGhlIG1lZGlhIHBs
YXllciwgc28gd2UgY2FuIGF2b2lkCiAgICAgLy8gY2FsbGluZyB0aGUgbWVkaWEgZW5naW5lIHJl
Y3Vyc2l2ZWx5LgogICAgIGludCBtX3Byb2Nlc3NpbmdNZWRpYVBsYXllckNhbGxiYWNrIHsgMCB9
OwpAQCAtMTExMyw2ICsxMTA3LDggQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNTY3J1YmJpbmdS
ZW1vdGVseSA6IDE7CiAgICAgYm9vbCBtX3dhaXRpbmdUb0VudGVyRnVsbHNjcmVlbiA6IDE7CiAK
KyAgICBib29sIG1fc2hvd1Bvc3RlciA6IDE7CisKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAg
ICAgYm9vbCBtX3RyYWNrc0FyZVJlYWR5IDogMTsKICAgICBib29sIG1faGF2ZVZpc2libGVUZXh0
VHJhY2sgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKaW5kZXgg
MWI2NGZiMjhiY2VjMjAxNjdiNGRlNTU1ZmNiYWNiNWZkNDNjMjVhMi4uODk0NDVmMGUyNjU2YjBl
OWQxY2ZhMjM4NjI2NjJmMGJhN2YwZjU4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRl
b0VsZW1lbnQuY3BwCkBAIC0xMDIsNyArMTAyLDYgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50Ojpk
aWRBdHRhY2hSZW5kZXJlcnMoKQogewogICAgIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEF0dGFjaFJl
bmRlcmVycygpOwogCi0gICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgaWYgKHNob3VsZERp
c3BsYXlQb3N0ZXJJbWFnZSgpKSB7CiAgICAgICAgIGlmICghbV9pbWFnZUxvYWRlcikKICAgICAg
ICAgICAgIG1faW1hZ2VMb2FkZXIgPSBtYWtlVW5pcXVlPEhUTUxJbWFnZUxvYWRlcj4oKnRoaXMp
OwpAQCAtMTMyLDE3ICsxMzEsMTUgQEAgYm9vbCBIVE1MVmlkZW9FbGVtZW50Ojppc1ByZXNlbnRh
dGlvbkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKSBjb25zdAogdm9pZCBIVE1M
VmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBj
b25zdCBBdG9tU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBpZiAobmFtZSA9PSBwb3N0ZXJBdHRyKSB7
Ci0gICAgICAgIC8vIEZvcmNlIGEgcG9zdGVyIHJlY2FsYyBieSBzZXR0aW5nIG1fZGlzcGxheU1v
ZGUgdG8gVW5rbm93biBkaXJlY3RseSBiZWZvcmUgY2FsbGluZyB1cGRhdGVEaXNwbGF5U3RhdGUu
Ci0gICAgICAgIEhUTUxNZWRpYUVsZW1lbnQ6OnNldERpc3BsYXlNb2RlKFVua25vd24pOwotICAg
ICAgICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKLQogICAgICAgICBpZiAoc2hvdWxkRGlzcGxheVBv
c3RlckltYWdlKCkpIHsKICAgICAgICAgICAgIGlmICghbV9pbWFnZUxvYWRlcikKICAgICAgICAg
ICAgICAgICBtX2ltYWdlTG9hZGVyID0gbWFrZVVuaXF1ZTxIVE1MSW1hZ2VMb2FkZXI+KCp0aGlz
KTsKICAgICAgICAgICAgIG1faW1hZ2VMb2FkZXItPnVwZGF0ZUZyb21FbGVtZW50SWdub3JpbmdQ
cmV2aW91c0Vycm9yKCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoYXV0byog
cmVuZGVyZXIgPSB0aGlzLT5yZW5kZXJlcigpKQorICAgICAgICAgICAgaWYgKGF1dG8qIHJlbmRl
cmVyID0gdGhpcy0+cmVuZGVyZXIoKSkgewogICAgICAgICAgICAgICAgIHJlbmRlcmVyLT5pbWFn
ZVJlc291cmNlKCkuc2V0Q2FjaGVkSW1hZ2UobnVsbHB0cik7CisgICAgICAgICAgICAgICAgcmVu
ZGVyZXItPnVwZGF0ZUZyb21FbGVtZW50KCk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAg
ICB9CiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKQEAgLTE2MSw3ICsxNTgs
NiBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmll
ZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJpbgogICAgICAgICB9CiAjZW5kaWYKICAgICB9Ci0K
IH0KIAogYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzdXBwb3J0c0Z1bGxzY3JlZW4oSFRNTE1lZGlh
RWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUpIGNv
bnN0CkBAIC0yNTEsMzcgKzI0NywzNSBAQCBjb25zdCBBdG9tU3RyaW5nJiBIVE1MVmlkZW9FbGVt
ZW50OjppbWFnZVNvdXJjZVVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fZGVmYXVsdFBvc3RlclVS
TDsKIH0KIAotdm9pZCBIVE1MVmlkZW9FbGVtZW50OjpzZXREaXNwbGF5TW9kZShEaXNwbGF5TW9k
ZSBtb2RlKQorYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzaG91bGREaXNwbGF5UG9zdGVySW1hZ2Uo
KSBjb25zdAogewotICAgIERpc3BsYXlNb2RlIG9sZE1vZGUgPSBkaXNwbGF5TW9kZSgpOwotICAg
IFVSTCBwb3N0ZXIgPSBwb3N0ZXJJbWFnZVVSTCgpOworICAgIGlmICghc2hvd1Bvc3RlckZsYWco
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFwb3N0ZXIuaXNFbXB0eSgpKSB7
Ci0gICAgICAgIC8vIFdlIGhhdmUgYSBwb3N0ZXIgcGF0aCwgYnV0IG9ubHkgc2hvdyBpdCB1bnRp
bCB0aGUgdXNlciB0cmlnZ2VycyBkaXNwbGF5IGJ5IHBsYXlpbmcgb3Igc2Vla2luZyBhbmQgdGhl
Ci0gICAgICAgIC8vIG1lZGlhIGVuZ2luZSBoYXMgc29tZXRoaW5nIHRvIGRpc3BsYXkuCi0gICAg
ICAgIGlmIChtb2RlID09IFZpZGVvKSB7Ci0gICAgICAgICAgICBpZiAob2xkTW9kZSAhPSBWaWRl
byAmJiBwbGF5ZXIoKSkKLSAgICAgICAgICAgICAgICBwbGF5ZXIoKS0+cHJlcGFyZUZvclJlbmRl
cmluZygpOwotICAgICAgICAgICAgaWYgKCFoYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCkpCi0gICAg
ICAgICAgICAgICAgbW9kZSA9IFBvc3RlcldhaXRpbmdGb3JWaWRlbzsKLSAgICAgICAgfQotICAg
IH0gZWxzZSBpZiAob2xkTW9kZSAhPSBWaWRlbyAmJiBwbGF5ZXIoKSkKLSAgICAgICAgcGxheWVy
KCktPnByZXBhcmVGb3JSZW5kZXJpbmcoKTsKKyAgICBpZiAocG9zdGVySW1hZ2VVUkwoKS5pc0Vt
cHR5KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIEhUTUxNZWRpYUVsZW1lbnQ6OnNl
dERpc3BsYXlNb2RlKG1vZGUpOworICAgIGF1dG8qIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIo
KTsKKyAgICBpZiAocmVuZGVyZXIgJiYgcmVuZGVyZXItPmZhaWxlZFRvTG9hZFBvc3RlckltYWdl
KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChhdXRvKiByZW5kZXJlciA9IHRo
aXMtPnJlbmRlcmVyKCkpIHsKLSAgICAgICAgaWYgKGRpc3BsYXlNb2RlKCkgIT0gb2xkTW9kZSkK
LSAgICAgICAgICAgIHJlbmRlcmVyLT51cGRhdGVGcm9tRWxlbWVudCgpOwotICAgIH0KKyAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBIVE1MVmlkZW9FbGVtZW50Ojp1cGRhdGVEaXNwbGF5U3Rh
dGUoKQordm9pZCBIVE1MVmlkZW9FbGVtZW50OjptZWRpYVBsYXllckZpcnN0VmlkZW9GcmFtZUF2
YWlsYWJsZSgpCiB7Ci0gICAgaWYgKHBvc3RlckltYWdlVVJMKCkuaXNFbXB0eSgpKQotICAgICAg
ICBzZXREaXNwbGF5TW9kZShWaWRlbyk7Ci0gICAgZWxzZSBpZiAoZGlzcGxheU1vZGUoKSA8IFBv
c3RlcikKLSAgICAgICAgc2V0RGlzcGxheU1vZGUoUG9zdGVyKTsKKyAgICBJTkZPX0xPRyhMT0dJ
REVOVElGSUVSLCAibV9zaG93UG9zdGVyID0gIiwgc2hvd1Bvc3RlckZsYWcoKSk7CisKKyAgICBp
ZiAoc2hvd1Bvc3RlckZsYWcoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW52YWxpZGF0ZVN0
eWxlQW5kTGF5ZXJDb21wb3NpdGlvbigpOworCisgICAgaWYgKGF1dG8gcGxheWVyID0gdGhpcy0+
cGxheWVyKCkpCisgICAgICAgIHBsYXllci0+cHJlcGFyZUZvclJlbmRlcmluZygpOworCisgICAg
aWYgKGF1dG8qIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKSkKKyAgICAgICAgcmVuZGVyZXIt
PnVwZGF0ZUZyb21FbGVtZW50KCk7CiB9CiAKIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6cGFpbnRD
dXJyZW50RnJhbWVJbkNvbnRleHQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9h
dFJlY3QmIGRlc3RSZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlk
ZW9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaAppbmRl
eCBlZDkyMTgzZDQ3YmJjM2ViMTIxMDAzM2Y5YmZlYzdiMjZjMDU2ZWJiLi5kZjlhNjQ2Y2I2MjYx
ODhiZWUxYWI2M2NhZTc5YTYxYmRhOTc2NjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxWaWRlb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRl
b0VsZW1lbnQuaApAQCAtNzYsNyArNzYsNyBAQCBwdWJsaWM6CiAgICAgLy8gU2VlIG1vcmUgZGV0
YWlscyBhdCBNZWRpYVBsYXllcjo6Y29weVZpZGVvVGV4dHVyZVRvUGxhdGZvcm1UZXh0dXJlKCkg
ZGVmaW5lZCBpbiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5o
LgogICAgIGJvb2wgY29weVZpZGVvVGV4dHVyZVRvUGxhdGZvcm1UZXh0dXJlKEdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMKiwgUGxhdGZvcm1HTE9iamVjdCB0ZXh0dXJlLCBHQ0dMZW51bSB0YXJnZXQs
IEdDR0xpbnQgbGV2ZWwsIEdDR0xlbnVtIGludGVybmFsRm9ybWF0LCBHQ0dMZW51bSBmb3JtYXQs
IEdDR0xlbnVtIHR5cGUsIGJvb2wgcHJlbXVsdGlwbHlBbHBoYSwgYm9vbCBmbGlwWSk7CiAKLSAg
ICBib29sIHNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpIGNvbnN0IHsgcmV0dXJuIGRpc3BsYXlN
b2RlKCkgPT0gUG9zdGVyIHx8IGRpc3BsYXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZpZGVv
OyB9CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGREaXNwbGF5UG9zdGVySW1hZ2UoKSBj
b25zdDsKIAogICAgIFVSTCBwb3N0ZXJJbWFnZVVSTCgpIGNvbnN0OwogICAgIFJlbmRlclB0cjxS
ZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29uc3Qg
UmVuZGVyVHJlZVBvc2l0aW9uJikgZmluYWw7CkBAIC0xMjIsMTAgKzEyMiwxMCBAQCBwcml2YXRl
OgogICAgIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3QgZmluYWw7
CiAgICAgY29uc3QgQXRvbVN0cmluZyYgaW1hZ2VTb3VyY2VVUkwoKSBjb25zdCBmaW5hbDsKIAot
ICAgIGJvb2wgaGFzQXZhaWxhYmxlVmlkZW9GcmFtZSgpIGNvbnN0OwotICAgIHZvaWQgdXBkYXRl
RGlzcGxheVN0YXRlKCkgZmluYWw7CiAgICAgdm9pZCBkaWRNb3ZlVG9OZXdEb2N1bWVudChEb2N1
bWVudCYgb2xkRG9jdW1lbnQsIERvY3VtZW50JiBuZXdEb2N1bWVudCkgZmluYWw7Ci0gICAgdm9p
ZCBzZXREaXNwbGF5TW9kZShEaXNwbGF5TW9kZSkgZmluYWw7CisKKyAgICBib29sIGhhc0F2YWls
YWJsZVZpZGVvRnJhbWUoKSBjb25zdDsKKyAgICB2b2lkIG1lZGlhUGxheWVyRmlyc3RWaWRlb0Zy
YW1lQXZhaWxhYmxlKCkgZmluYWw7CiAKICAgICBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6TWVkaWFU
eXBlIHByZXNlbnRhdGlvblR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBQbGF0Zm9ybU1lZGlh
U2Vzc2lvbjo6TWVkaWFUeXBlOjpWaWRlbzsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclZpZGVvLmNwcAppbmRleCBlNGM1ZTc0YzM4ZjUwNDY5YzFjNTc2NzBiNjBmOWM1MDY1YjMy
ODAyLi4yNTViZDRiMDdhOWI2NzQ3OTRmYjBiYzgwNjcwMjZlYzliZWIxMGZjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5jcHAKQEAgLTE3OSw2ICsxNzksMTEgQEAgYm9v
bCBSZW5kZXJWaWRlbzo6c2hvdWxkRGlzcGxheVZpZGVvKCkgY29uc3QKICAgICByZXR1cm4gIXZp
ZGVvRWxlbWVudCgpLnNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpOwogfQogCitib29sIFJlbmRl
clZpZGVvOjpmYWlsZWRUb0xvYWRQb3N0ZXJJbWFnZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGlt
YWdlUmVzb3VyY2UoKS5lcnJvck9jY3VycmVkKCk7Cit9CisKIHZvaWQgUmVuZGVyVmlkZW86OnBh
aW50UmVwbGFjZWQoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBwYWlu
dE9mZnNldCkKIHsKICAgICBhdXRvIG1lZGlhUGxheWVyID0gdmlkZW9FbGVtZW50KCkucGxheWVy
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5oCmluZGV4IDhlMjVjNjhhNTNm
ODliNGExNzBmYjk2NTFiMTg3ZmZiOGFjMGZhYzMuLjJjMTJhNWQ1OTRmZWFhMjIzMjgwNjE5ZjE4
ZGMyOTc2NWQwYjM1YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJWaWRlby5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5oCkBA
IC01MCw2ICs1MCw3IEBAIHB1YmxpYzoKICAgICBib29sIHJlcXVpcmVzSW1tZWRpYXRlQ29tcG9z
aXRpbmcoKSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkRGlzcGxheVZpZGVvKCkgY29uc3Q7Cisg
ICAgYm9vbCBmYWlsZWRUb0xvYWRQb3N0ZXJJbWFnZSgpIGNvbnN0OwogCiAgICAgdm9pZCB1cGRh
dGVGcm9tRWxlbWVudCgpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAK
aW5kZXggOTljNjUwMDZhNDEyMWI5OGViY2M3MjAyYzYyZTY3NzBlZjQzZGNiMi4uYTFjMjI0Mzky
MzM2YzQwYjNmOTlhMzA1ZjhiM2QzM2QwZmU2YzI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmNwcApAQCAtNDMxOCw2ICs0MzE4LDE1IEBAIEV4Y2VwdGlvbk9yPEludGVybmFsczo6
TWVkaWFVc2FnZVN0YXRlPiBJbnRlcm5hbHM6Om1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVt
CiAjZW5kaWYKIH0KIAorRXhjZXB0aW9uT3I8Ym9vbD4gSW50ZXJuYWxzOjplbGVtZW50U2hvdWxk
RGlzcGxheVBvc3RlckltYWdlKEhUTUxWaWRlb0VsZW1lbnQmIGVsZW1lbnQpIGNvbnN0Cit7Cisj
aWYgRU5BQkxFKFZJREVPKQorICAgIHJldHVybiBlbGVtZW50LnNob3VsZERpc3BsYXlQb3N0ZXJJ
bWFnZSgpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CisgICAgcmV0dXJuIEV4
Y2VwdGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciB9OworI2VuZGlmCit9CiAKICNpZiBFTkFCTEUo
V0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCBjNDJiNmM3NmM0Nzc3ZWY4NmMzYjEzMTMyNDBlNGQzNWE1Nzk3OTNlLi41OWMwNWY2MTgy
MDk0ODlkZjU4M2Q3Zjk2YjFhMWE4YzU1MGQwNTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTg2MCw2ICs4NjAsOCBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBFeGNlcHRpb25P
cjxNZWRpYVVzYWdlU3RhdGU+IG1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVtZW50JikgY29u
c3Q7CiAKKyAgICBFeGNlcHRpb25Pcjxib29sPiBlbGVtZW50U2hvdWxkRGlzcGxheVBvc3Rlcklt
YWdlKEhUTUxWaWRlb0VsZW1lbnQmKSBjb25zdDsKKwogI2lmIEVOQUJMRShWSURFTykKICAgICB1
c2luZyBQbGF5YmFja0NvbnRyb2xzUHVycG9zZSA9IE1lZGlhRWxlbWVudFNlc3Npb246OlBsYXli
YWNrQ29udHJvbHNQdXJwb3NlOwogICAgIFJlZlB0cjxIVE1MTWVkaWFFbGVtZW50PiBiZXN0TWVk
aWFFbGVtZW50Rm9yU2hvd2luZ1BsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFBsYXliYWNrQ29udHJv
bHNQdXJwb3NlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCA5MzE2OGY3
MzE5ZTE0ZTU1YjNjZjM1YWNhOWE2NzMzNzNkNzI2ZDc4Li5kYjlkZGViMmE5MTNmNGI2ZDIyMWZm
MDY4MDRhYjk4M2FiZjJkYTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBA
IC04MzgsNiArODM4LDcgQEAgZW51bSBDb21wb3NpdGluZ1BvbGljeSB7CiAgICAgW0NvbmRpdGlv
bmFsPVZJREVPXSBNZWRpYVNlc3Npb25TdGF0ZSBtZWRpYVNlc3Npb25TdGF0ZShIVE1MTWVkaWFF
bGVtZW50IGVsZW1lbnQpOwogCiAgICAgW0NvbmRpdGlvbmFsPVZJREVPLCBNYXlUaHJvd0V4Y2Vw
dGlvbl0gTWVkaWFVc2FnZVN0YXRlIG1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVtZW50IGVs
ZW1lbnQpOworICAgIFtDb25kaXRpb25hbD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIGJvb2xl
YW4gZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50IGVsZW1l
bnQpOwogCiAgICAgRE9NU3RyaW5nIG9uZ29pbmdMb2Fkc0Rlc2NyaXB0aW9ucygpOwogICAgIHZv
aWQgc2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZChib29sZWFuIHZhbHVl
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCA5ZjE4NDljNWZjNGI2ZDFlMWZhMWIyNDczMzJjZWExNWU2NzlkYTg1Li4wNzA3
YjNmYTI4NDczOTIxODg1N2FjZWE0YmEzNzRhNWVlMTdiNmExIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMjAtMDUtMDUgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgUG9zdGVyIHNldCBhZnRlciBwbGF5YmFjayBiZWdpbnMgc2hvdWxkIGJlIGlnbm9y
ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTQ2
NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVk
aWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbDogQWRk
ZWQuCisKIDIwMjAtMDUtMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFVucmV2aWV3ZWQgdGVzdCBnYXJkZW5pbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2stZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjkxMTEzZTY1MGJiOTIxZGI0MjU4ODIyYzBlOThhNGU4YWU4ZmI0
OTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0
LWFmdGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKKworRVZFTlQocGxh
eWluZykKK0VWRU5UKHBhdXNlKQorRVhQRUNURUQgKGludGVybmFscy5lbGVtZW50U2hvdWxkRGlz
cGxheVBvc3RlckltYWdlKHZpZGVvKSA9PSAnZmFsc2UnKSBPSworRU5EIE9GIFRFU1QKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFj
ay5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFj
ay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjNmZWM0MmI2ZjgxOThmNDRlMDI5NTgxMTQ2NGExZjNmYTQyZTBk
NDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0
LWFmdGVyLXBsYXliYWNrLmh0bWwKQEAgLTAsMCArMSwzOCBAQAorCis8aHRtbD4KKzxoZWFkPgor
ICAgIDx0aXRsZT5TZXR0aW5nIHBvc3RlciBhZnRlciBwbGF5aW5nPC90aXRsZT4KKyAgICA8c2Ny
aXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZp
bGUuanM+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcignbG9hZCcsIGFzeW5jICgpID0+IHsKKyAgICAgICAgICAgIGZhaWxUZXN0SW4oMTUw
MDApOworCisgICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisgICAgICAgICAgICB2aWRl
by5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKworICAgICAg
ICAgICAgdmlkZW8ucGxheSgpOworICAgICAgICAgICAgYXdhaXQgd2FpdEZvcih2aWRlbywgJ3Bs
YXlpbmcnKTsKKworICAgICAgICAgICAgdmlkZW8ucGF1c2UoKTsKKyAgICAgICAgICAgIGF3YWl0
IHdhaXRGb3IodmlkZW8sICdwYXVzZScpOworICAgICAgICAgICAgCisgICAgICAgICAgICB2aWRl
by5wb3N0ZXIgPSAnY29udGVudC9ncmVlbi5wbmcnOworICAgICAgICAgICAgCisgICAgICAgICAg
ICBhd2FpdCBzbGVlcEZvcigxMDAwKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgaWYgKHdp
bmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCdpbnRlcm5hbHMu
ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSh2aWRlbyknLCBmYWxzZSk7CisgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCJ2aWRlbyBzaG91bGQgbm90
IGJlIGJsYW5rIikKKworICAgICAgICAgICAgZW5kVGVzdCgpOworICAgIH0pOworCisgICAgPC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8dmlkZW8gY29udHJvbHMgbXV0ZWQ+PC92aWRl
bz4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398756</attachid>
            <date>2020-05-07 10:24:56 -0700</date>
            <delta_ts>2020-05-07 12:46:46 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-211464-20200507102455.patch</filename>
            <type>text/plain</type>
            <size>26813</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWRiNDVhMTkzYjFlZDVk
MGQ5NzBhNzZjMTdkOGFmNGIxYTg4MjdkNS4uZDM0YmNmZGQ4N2Q1YWVhZWRhNWY1MWQ4Yjc0MTVm
YWMzMWViMWZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3IEBACisyMDIwLTA1LTA1ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQg
YWZ0ZXIgcGxheWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKworICAgICAgICBSZXZpZXdl
ZCBieSBKZXIgTm9ibGUuCisgICAgICAgIAorICAgICAgICBSZWRvIHRoZSBwb3N0ZXIgZnJhbWUg
bG9naWMgdG8gdXNlIHRoZSBgc2hvdyBwb3N0ZXIgZmxhZ2AgbG9naWMgZnJvbSB0aGUgc3BlYy4K
KworICAgICAgICBUZXN0OiBtZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLmh0
bWwKKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogSW5pdGlhbGl6ZSBtX3No
b3dQb3N0ZXIuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpwcmVwYXJlRm9y
TG9hZCk6IG1fZGlzcGxheU1vZGUgd2FzIHJlbW92ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpzZWxlY3RNZWRpYVJlc291cmNlKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxh
Zy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFJl
bW92ZSBjYWxscyB0byBzZXREaXNwbGF5TW9kZSBhbmQgdXBkYXRlRGlzcGxheVN0YXRlLAorICAg
ICAgICB0aGV5IGhhdmUgYmVlbiBkZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlh
RWxlbWVudDo6d2FpdEZvclNvdXJjZUNoYW5nZSk6IENhbGwgc2V0U2hvd1Bvc3RlckZsYWcuIFVw
ZGF0ZSBzcGVjIHRleHQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpub25l
U3VwcG9ydGVkKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQ6Om1lZGlhTG9hZGluZ0ZhaWxlZCk6IFJlbW92ZSBjYWxsIHRvIHVwZGF0
ZURpc3BsYXlTdGF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNldFJl
YWR5U3RhdGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNl
ZWtXaXRoVG9sZXJhbmNlKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxhZy4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUYXNrKTogIENoZWNrIG1fc2hvd1Bvc3Rlciwgbm90
IGRpc3BsYXlNb2RlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cGxheUlu
dGVybmFsKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKTogRG9uJ3QgY2hl
Y2sgZGlzcGxheU1vZGUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojp1cGRh
dGVQbGF5U3RhdGUpOiBObyBtb3JlIHNldERpc3BsYXlNb2RlLgorICAgICAgICAoV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudDo6dXNlckNhbmNlbGxlZExvYWQpOiAgQ2FsbCBzZXRTaG93UG9zdGVy
RmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRmly
c3RWaWRlb0ZyYW1lQXZhaWxhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxNZWRp
YUVsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNob3dQb3N0
ZXJGbGFnIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNldFNo
b3dQb3N0ZXJGbGFnKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpc3Bs
YXlNb2RlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1l
bnQ6OnNldERpc3BsYXlNb2RlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRp
YUVsZW1lbnQ6OnVwZGF0ZURpc3BsYXlTdGF0ZSk6IERlbGV0ZWQuCisKKyAgICAgICAgKiBodG1s
L0hUTUxWaWRlb0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVu
dDo6ZGlkQXR0YWNoUmVuZGVyZXJzKTogTm8gbW9yZSB1cGRhdGVEaXNwbGF5U3RhdGUuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IERpdHRvLiBD
YWxsIHVwZGF0ZUZyb21FbGVtZW50IHdoZW4gcG9zdGVyIGlzIHJlbW92ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50OjpzaG91bGREaXNwbGF5UG9zdGVySW1hZ2UgY29uc3Qp
OiBOZXcuCisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50OjptZWRpYVBsYXllckZp
cnN0VmlkZW9GcmFtZUF2YWlsYWJsZSk6IE5ldywgdXBkYXRlIHBsYXllciBhbmQgCisgICAgICAg
IHJlbmRlcmVyIGlmIHRoZSBwb3N0ZXIgaXNuJ3Qgc3VwcG9zZWQgdG8gYmUgdmlzaWJsZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnNldERpc3BsYXlNb2RlKTogRGVsZXRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnVwZGF0ZURpc3BsYXlTdGF0
ZSk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6CisKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VmlkZW86OmZhaWxlZFRvTG9hZFBvc3RlckltYWdlIGNvbnN0KTogTmV3LgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJWaWRlby5oOgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjplbGVtZW50U2hvdWxkRGlzcGxheVBvc3Rl
ckltYWdlIGNvbnN0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoKKwogMjAyMC0wNS0wNCAgQW50b2luZSBRdWludCAgPGdy
YW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhIGNvbnRyb2xzIHRyYWNrcyBtZW51IHNo
b3dzICJBdXRvIiBzZWxlY3RlZCBpbnN0ZWFkIG9mIHRyYWNrIHNlbGVjdGVkIHZpYSB0aGUgSlMg
QVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCBhOTU1NWNk
OGQxYWI0ZDE3MmZjNDAzMmM4Nzc2MDYyNmZmOTkwNGMyLi5hNTYzNTU2ZDVmOGRlNDg0MGY5ZDMx
ZjliNmMwNWZhY2I2OTdhNDJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAKQEAgLTQ0Nyw2ICs0NDcsNyBAQCBIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVt
ZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bQogICAgICwg
bV9tZWRpYUNvbnRyb2xzRGVwZW5kT25QYWdlU2NhbGVGYWN0b3IoZmFsc2UpCiAgICAgLCBtX2hh
dmVTZXRVcENhcHRpb25Db250YWluZXIoZmFsc2UpCiAgICAgLCBtX2lzU2NydWJiaW5nUmVtb3Rl
bHkoZmFsc2UpCisgICAgLCBtX3Nob3dQb3N0ZXIodHJ1ZSkKICNpZiBFTkFCTEUoVklERU9fVFJB
Q0spCiAgICAgLCBtX3RyYWNrc0FyZVJlYWR5KHRydWUpCiAgICAgLCBtX2hhdmVWaXNpYmxlVGV4
dFRyYWNrKGZhbHNlKQpAQCAtMTE0MCw3ICsxMTQxLDYgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjpwcmVwYXJlRm9yTG9hZCgpCiAgICAgbV9oYXZlRmlyZWRMb2FkZWREYXRhID0gZmFsc2U7CiAg
ICAgbV9jb21wbGV0ZWx5TG9hZGVkID0gZmFsc2U7CiAgICAgbV9oYXZlUHJlcGFyZWRUb1BsYXkg
PSBmYWxzZTsKLSAgICBtX2Rpc3BsYXlNb2RlID0gVW5rbm93bjsKICAgICBtX2N1cnJlbnRTcmMg
PSBVUkwoKTsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCkBAIC0xMjQ2
LDcgKzEyNDYsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlbGVjdE1lZGlhUmVzb3VyY2Uo
KQogICAgIG1fbmV0d29ya1N0YXRlID0gTkVUV09SS19OT19TT1VSQ0U7CiAKICAgICAvLyAyLiBT
ZXQgdGhlIGVsZW1lbnTigJlzIHNob3cgcG9zdGVyIGZsYWcgdG8gdHJ1ZS4KLSAgICBzZXREaXNw
bGF5TW9kZShQb3N0ZXIpOworICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUpOwogCiAgICAgLy8g
My4gU2V0IHRoZSBtZWRpYSBlbGVtZW504oCZcyBkZWxheWluZy10aGUtbG9hZC1ldmVudCBmbGFn
IHRvIHRydWUgKHRoaXMgZGVsYXlzIHRoZSBsb2FkIGV2ZW50KS4KICAgICBzZXRTaG91bGREZWxh
eUxvYWRFdmVudCh0cnVlKTsKQEAgLTE0OTQsOSArMTQ5NCw2IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNv
bnRlbnRUCiAgICAgYm9vbCBwcml2YXRlTW9kZSA9IGRvY3VtZW50KCkucGFnZSgpICYmIGRvY3Vt
ZW50KCkucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpOwogICAgIG1fcGxheWVyLT5zZXRQ
cml2YXRlQnJvd3NpbmdNb2RlKHByaXZhdGVNb2RlKTsKIAotICAgIC8vIFJlc2V0IGRpc3BsYXkg
bW9kZSB0byBmb3JjZSBhIHJlY2FsY3VsYXRpb24gb2Ygd2hhdCB0byBzaG93IGJlY2F1c2Ugd2Ug
YXJlIHJlc2V0dGluZyB0aGUgcGxheWVyLgotICAgIHNldERpc3BsYXlNb2RlKFVua25vd24pOwot
CiAgICAgaWYgKCFhdXRvcGxheSgpICYmICFtX2hhdmVQcmVwYXJlZFRvUGxheSkKICAgICAgICAg
bV9wbGF5ZXItPnNldFByZWxvYWQobV9tZWRpYVNlc3Npb24tPmVmZmVjdGl2ZVByZWxvYWRGb3JF
bGVtZW50KCkpOwogICAgIG1fcGxheWVyLT5zZXRQcmVzZXJ2ZXNQaXRjaChtX3dlYmtpdFByZXNl
cnZlc1BpdGNoKTsKQEAgLTE1NTAsMTEgKzE1NDcsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6
OmxvYWRSZXNvdXJjZShjb25zdCBVUkwmIGluaXRpYWxVUkwsIENvbnRlbnRUeXBlJiBjb250ZW50
VAogICAgIGlmICghbG9hZEF0dGVtcHRlZCAmJiAhbV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50
VHlwZSwga2V5U3lzdGVtKSkKICAgICAgICAgbWVkaWFMb2FkaW5nRmFpbGVkKE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yKTsKIAotICAgIC8vIElmIHRoZXJlIGlzIG5vIHBv
c3RlciB0byBkaXNwbGF5LCBhbGxvdyB0aGUgbWVkaWEgZW5naW5lIHRvIHJlbmRlciB2aWRlbyBm
cmFtZXMgYXMgc29vbiBhcwotICAgIC8vIHRoZXkgYXJlIGF2YWlsYWJsZS4KLSAgICB1cGRhdGVE
aXNwbGF5U3RhdGUoKTsKLQotICAgIHVwZGF0ZVJlbmRlcmVyKCk7CisgICAgbWVkaWFQbGF5ZXJS
ZW5kZXJpbmdNb2RlQ2hhbmdlZCgpOwogfQogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQpAQCAt
MjA0NywxMCArMjA0MCwxNCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OndhaXRGb3JTb3VyY2VD
aGFuZ2UoKQogICAgIC8vIDYuMTcgLSBXYWl0aW5nOiBTZXQgdGhlIGVsZW1lbnQncyBuZXR3b3Jr
U3RhdGUgYXR0cmlidXRlIHRvIHRoZSBORVRXT1JLX05PX1NPVVJDRSB2YWx1ZQogICAgIG1fbmV0
d29ya1N0YXRlID0gTkVUV09SS19OT19TT1VSQ0U7CiAKLSAgICAvLyA2LjE4IC0gU2V0IHRoZSBl
bGVtZW50J3MgZGVsYXlpbmctdGhlLWxvYWQtZXZlbnQgZmxhZyB0byBmYWxzZS4gVGhpcyBzdG9w
cyBkZWxheWluZyB0aGUgbG9hZCBldmVudC4KKyAgICAvLyA2LjE4IC0gU2V0IHRoZSBlbGVtZW50
J3Mgc2hvdyBwb3N0ZXIgZmxhZyB0byB0cnVlLgorICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUp
OworCisgICAgLy8gNi4xOSAtICBRdWV1ZSBhIG1lZGlhIGVsZW1lbnQgdGFzayBnaXZlbiB0aGUg
bWVkaWEgZWxlbWVudCBnaXZlbiB0aGUgZWxlbWVudCB0byBzZXQgdGhlCisgICAgLy8gZWxlbWVu
dCdzIGRlbGF5aW5nLXRoZS1sb2FkLWV2ZW50IGZsYWcgdG8gZmFsc2UuIFRoaXMgc3RvcHMgZGVs
YXlpbmcgdGhlIGxvYWQgZXZlbnQuCisgICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIGJlIGRvbmUg
aW4gYSB0YXNrIHF1ZXVlCiAgICAgc2V0U2hvdWxkRGVsYXlMb2FkRXZlbnQoZmFsc2UpOwogCi0g
ICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApAQCAt
MjA3OSw2ICsyMDc2LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpub25lU3VwcG9ydGVkKCkK
ICAgICAvLyA2LjMgLSBTZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3RhdGUgYXR0cmlidXRlIHRv
IHRoZSBORVRXT1JLX05PX1NPVVJDRSB2YWx1ZS4KICAgICBtX25ldHdvcmtTdGF0ZSA9IE5FVFdP
UktfTk9fU09VUkNFOwogCisgICAgLy8gNi40IC0gU2V0IHRoZSBlbGVtZW50J3Mgc2hvdyBwb3N0
ZXIgZmxhZyB0byB0cnVlLgorICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUpOworCiAgICAgLy8g
NyAtIFF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50IG5hbWVkIGVycm9yIGF0IHRo
ZSBtZWRpYSBlbGVtZW50LgogICAgIHNjaGVkdWxlRXZlbnQoZXZlbnROYW1lcygpLmVycm9yRXZl
bnQpOwogCkBAIC0yMDk0LDcgKzIwOTQsNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om5vbmVT
dXBwb3J0ZWQoKQogICAgIC8vIDkgLSBBYm9ydCB0aGVzZSBzdGVwcy4gVW50aWwgdGhlIGxvYWQo
KSBtZXRob2QgaXMgaW52b2tlZCBvciB0aGUgc3JjIGF0dHJpYnV0ZSBpcyBjaGFuZ2VkLAogICAg
IC8vIHRoZSBlbGVtZW50IHdvbid0IGF0dGVtcHQgdG8gbG9hZCBhbm90aGVyIHJlc291cmNlLgog
Ci0gICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApA
QCAtMjIwOCw4ICsyMjA3LDYgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYUxvYWRpbmdG
YWlsZWQoTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZSBlcnJvcikKICAgICBlbHNlIGlmICgoZXJy
b3IgPT0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6Rm9ybWF0RXJyb3IgfHwgZXJyb3IgPT0g
TWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6TmV0d29ya0Vycm9yKSAmJiBtX2xvYWRTdGF0ZSA9
PSBMb2FkaW5nRnJvbVNyY0F0dHIpCiAgICAgICAgIG5vbmVTdXBwb3J0ZWQoKTsKIAotICAgIHVw
ZGF0ZURpc3BsYXlTdGF0ZSgpOwotCiAgICAgRVJST1JfTE9HKExPR0lERU5USUZJRVIsICJlcnJv
ciA9ICIsIHN0YXRpY19jYXN0PGludD4oZXJyb3IpKTsKIAogICAgIGxvZ01lZGlhTG9hZFJlcXVl
c3QoZG9jdW1lbnQoKS5wYWdlKCksIFN0cmluZygpLCBjb252ZXJ0RW51bWVyYXRpb25Ub1N0cmlu
ZyhlcnJvciksIGZhbHNlKTsKQEAgLTI0MTYsOCArMjQxMyw2IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6c2V0UmVhZHlTdGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAg
ICAgbV9tZWRpYVNlc3Npb24tPmNsaWVudENoYXJhY3RlcmlzdGljc0NoYW5nZWQoKTsKICAgICB9
CiAKLSAgICBib29sIHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSA9IGZhbHNlOwotCiAgICAgaWYg
KG1fcmVhZHlTdGF0ZSA+PSBIQVZFX0NVUlJFTlRfREFUQSAmJiBvbGRTdGF0ZSA8IEhBVkVfQ1VS
UkVOVF9EQVRBKSB7CiAgICAgICAgIGlmICghbV9oYXZlRmlyZWRMb2FkZWREYXRhKSB7CiAgICAg
ICAgICAgICBtX2hhdmVGaXJlZExvYWRlZERhdGEgPSB0cnVlOwpAQCAtMjQyNSwxNiArMjQyMCwx
MyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVkaWFQbGF5ZXI6OlJl
YWR5U3RhdGUgc3RhdGUpCiAgICAgICAgICAgICAvLyBGSVhNRTogSXQncyBub3QgY2xlYXIgdGhh
dCBpdCdzIGNvcnJlY3QgdG8gc2tpcCB0aGVzZSB0d28gb3BlcmF0aW9ucyBqdXN0CiAgICAgICAg
ICAgICAvLyBiZWNhdXNlIG1faGF2ZUZpcmVkTG9hZGVkRGF0YSBpcyBhbHJlYWR5IHRydWUuIEF0
IG9uZSB0aW1lIHdlIHdlcmUgc2tpcHBpbmcKICAgICAgICAgICAgIC8vIHRoZSBjYWxsIHRvIHNl
dFNob3VsZERlbGF5TG9hZEV2ZW50LCB3aGljaCB3YXMgZGVmaW5pdGVseSBpbmNvcnJlY3QuCi0g
ICAgICAgICAgICBzaG91bGRVcGRhdGVEaXNwbGF5U3RhdGUgPSB0cnVlOwogICAgICAgICAgICAg
YXBwbHlNZWRpYUZyYWdtZW50VVJJKCk7CiAgICAgICAgIH0KICAgICAgICAgc2V0U2hvdWxkRGVs
YXlMb2FkRXZlbnQoZmFsc2UpOwogICAgIH0KIAotICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gSEFW
RV9GVVRVUkVfREFUQSAmJiBvbGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSAmJiB0cmFja3NB
cmVSZWFkeSkgeworICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gSEFWRV9GVVRVUkVfREFUQSAmJiBv
bGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSAmJiB0cmFja3NBcmVSZWFkeSkKICAgICAgICAg
c2NoZWR1bGVFdmVudChldmVudE5hbWVzKCkuY2FucGxheUV2ZW50KTsKLSAgICAgICAgc2hvdWxk
VXBkYXRlRGlzcGxheVN0YXRlID0gdHJ1ZTsKLSAgICB9CiAKICAgICBpZiAobV9yZWFkeVN0YXRl
ID09IEhBVkVfRU5PVUdIX0RBVEEgJiYgb2xkU3RhdGUgPCBIQVZFX0VOT1VHSF9EQVRBICYmIHRy
YWNrc0FyZVJlYWR5KSB7CiAgICAgICAgIGlmIChvbGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFU
QSkKQEAgLTI0NDUsNiArMjQzNyw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlT
dGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAgYXV0byBzdWNjZXNz
ID0gY2FuVHJhbnNpdGlvbkZyb21BdXRvcGxheVRvUGxheSgpOwogICAgICAgICBpZiAoc3VjY2Vz
cykgewogICAgICAgICAgICAgbV9wYXVzZWQgPSBmYWxzZTsKKyAgICAgICAgICAgIHNldFNob3dQ
b3N0ZXJGbGFnKGZhbHNlKTsKICAgICAgICAgICAgIGludmFsaWRhdGVDYWNoZWRUaW1lKCk7CiAg
ICAgICAgICAgICBzZXRBdXRvcGxheUV2ZW50UGxheWJhY2tTdGF0ZShBdXRvcGxheUV2ZW50UGxh
eWJhY2tTdGF0ZTo6U3RhcnRlZFdpdGhvdXRVc2VyR2VzdHVyZSk7CiAgICAgICAgICAgICBtX3Bs
YXliYWNrU3RhcnRlZFRpbWUgPSBjdXJyZW50TWVkaWFUaW1lKCkudG9Eb3VibGUoKTsKQEAgLTI0
NTMsOCArMjQ0Niw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlTdGF0ZShNZWRp
YVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURF
TlRJRklFUiwgIkF1dG9wbGF5IGJsb2NrZWQsIHVzZXIgZ2VzdHVyZSByZXF1aXJlZCIpOwogICAg
ICAgICAgICAgc2V0QXV0b3BsYXlFdmVudFBsYXliYWNrU3RhdGUoQXV0b3BsYXlFdmVudFBsYXli
YWNrU3RhdGU6OlByZXZlbnRlZEF1dG9wbGF5KTsKICAgICAgICAgfQotCi0gICAgICAgIHNob3Vs
ZFVwZGF0ZURpc3BsYXlTdGF0ZSA9IHRydWU7CiAgICAgfQogCiAgICAgLy8gSWYgd2UgdHJhbnNp
dGlvbiB0byB0aGUgRnV0dXJlIERhdGEgc3RhdGUgYW5kIHdlJ3JlIGFib3V0IHRvIGJlZ2luIHBs
YXlpbmcsIGVuc3VyZSBwbGF5YmFjayBpcyBhY3R1YWxseSBwZXJtaXR0ZWQgZmlyc3QsCkBAIC0y
NDY4LDkgKzI0NTksNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVk
aWFQbGF5ZXI6OlJlYWR5U3RhdGUgc3RhdGUpCiAgICAgICAgIHNldEF1dG9wbGF5RXZlbnRQbGF5
YmFja1N0YXRlKEF1dG9wbGF5RXZlbnRQbGF5YmFja1N0YXRlOjpQcmV2ZW50ZWRBdXRvcGxheSk7
CiAgICAgfQogCi0gICAgaWYgKHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSkKLSAgICAgICAgdXBk
YXRlRGlzcGxheVN0YXRlKCk7Ci0KICAgICB1cGRhdGVQbGF5U3RhdGUoKTsKICAgICB1cGRhdGVN
ZWRpYUNvbnRyb2xsZXIoKTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCkBAIC0yODk0LDcgKzI4
ODIsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtXaXRoVG9sZXJhbmNlKGNvbnN0IE1l
ZGlhVGltZSYgaW5UaW1lLCBjb25zdCBNZWRpYVRpbQogICAgIE1lZGlhVGltZSB0aW1lID0gaW5U
aW1lOwogCiAgICAgLy8gMSAtIFNldCB0aGUgbWVkaWEgZWxlbWVudCdzIHNob3cgcG9zdGVyIGZs
YWcgdG8gZmFsc2UuCi0gICAgc2V0RGlzcGxheU1vZGUoVmlkZW8pOworICAgIHNldFNob3dQb3N0
ZXJGbGFnKGZhbHNlKTsKIAogICAgIC8vIDIgLSBJZiB0aGUgbWVkaWEgZWxlbWVudCdzIHJlYWR5
U3RhdGUgaXMgSEFWRV9OT1RISU5HLCBhYm9ydCB0aGVzZSBzdGVwcy4KICAgICBpZiAobV9yZWFk
eVN0YXRlID09IEhBVkVfTk9USElORyB8fCAhbV9wbGF5ZXIpCkBAIC0yOTkzLDcgKzI5ODEsNyBA
QCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUYXNrKCkKICAgICAvLyBEb24ndCBza2lwIGNh
bGxpbmcgdGhlIG1lZGlhIGVuZ2luZSBpZiAxKSB3ZSBhcmUgaW4gcG9zdGVyIG1vZGUgKGJlY2F1
c2UgYSBzZWVrIHNob3VsZCBhbHdheXMgY2FuY2VsCiAgICAgLy8gcG9zdGVyIGRpc3BsYXkpLCBv
ciAyKSBpZiB0aGVyZSBpcyBhIHBlbmRpbmcgZmFzdCBzZWVrLCBvciAzKSBpZiB0aGlzIHNlZWsg
aXMgbm90IGFuIGV4YWN0IHNlZWsKICAgICBTZWVrVHlwZSB0aGlzU2Vla1R5cGUgPSAobmVnYXRp
dmVUb2xlcmFuY2UgPT0gTWVkaWFUaW1lOjp6ZXJvVGltZSgpICYmIHBvc2l0aXZlVG9sZXJhbmNl
ID09IE1lZGlhVGltZTo6emVyb1RpbWUoKSkgPyBQcmVjaXNlIDogRmFzdDsKLSAgICBpZiAoIW5v
U2Vla1JlcXVpcmVkICYmIHRpbWUgPT0gbm93ICYmIHRoaXNTZWVrVHlwZSA9PSBQcmVjaXNlICYm
IG1fcGVuZGluZ1NlZWtUeXBlICE9IEZhc3QgJiYgZGlzcGxheU1vZGUoKSAhPSBQb3N0ZXIpCisg
ICAgaWYgKCFub1NlZWtSZXF1aXJlZCAmJiB0aW1lID09IG5vdyAmJiB0aGlzU2Vla1R5cGUgPT0g
UHJlY2lzZSAmJiBtX3BlbmRpbmdTZWVrVHlwZSAhPSBGYXN0ICYmICFzaG93UG9zdGVyRmxhZygp
KQogICAgICAgICBub1NlZWtSZXF1aXJlZCA9IHRydWU7CiAKICNpZiBFTkFCTEUoTUVESUFfU09V
UkNFKQpAQCAtMzQ3NCw2ICszNDYyLDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5SW50
ZXJuYWwoKQogCiAgICAgaWYgKG1fcGF1c2VkKSB7CiAgICAgICAgIG1fcGF1c2VkID0gZmFsc2U7
CisgICAgICAgIHNldFNob3dQb3N0ZXJGbGFnKGZhbHNlKTsKICAgICAgICAgaW52YWxpZGF0ZUNh
Y2hlZFRpbWUoKTsKIAogICAgICAgICAvLyBUaGlzIGF2b2lkcyB0aGUgZmlyc3QgdGltZVVwZGF0
ZWQgZXZlbnQgYWZ0ZXIgcGxheWJhY2sgc3RhcnRzLCB3aGVuIGN1cnJlbnRUaW1lIGlzIHN0aWxs
CkBAIC00OTM5LDcgKzQ5MjgsNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVy
UmVzb3VyY2VOb3RTdXBwb3J0ZWQoKQogdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXll
clJlcGFpbnQoKQogewogICAgIGJlZ2luUHJvY2Vzc2luZ01lZGlhUGxheWVyQ2FsbGJhY2soKTsK
LSAgICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKICAgICBpZiAoYXV0byogcmVuZGVyZXIgPSB0aGlz
LT5yZW5kZXJlcigpKQogICAgICAgICByZW5kZXJlci0+cmVwYWludCgpOwogICAgIGVuZFByb2Nl
c3NpbmdNZWRpYVBsYXllckNhbGxiYWNrKCk7CkBAIC01MDY0LDE4ICs1MDUyLDYgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckVuZ2luZVVwZGF0ZWQoKQogICAgIHNjaGVkdWxl
TWVkaWFFbmdpbmVXYXNVcGRhdGVkKCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVk
aWFQbGF5ZXJGaXJzdFZpZGVvRnJhbWVBdmFpbGFibGUoKQotewotICAgIElORk9fTE9HKExPR0lE
RU5USUZJRVIsICJjdXJyZW50IGRpc3BsYXkgbW9kZSA9ICIsIChpbnQpZGlzcGxheU1vZGUoKSk7
Ci0KLSAgICBiZWdpblByb2Nlc3NpbmdNZWRpYVBsYXllckNhbGxiYWNrKCk7Ci0gICAgaWYgKGRp
c3BsYXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZpZGVvKSB7Ci0gICAgICAgIHNldERpc3Bs
YXlNb2RlKFZpZGVvKTsKLSAgICAgICAgbWVkaWFQbGF5ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCgp
OwotICAgIH0KLSAgICBlbmRQcm9jZXNzaW5nTWVkaWFQbGF5ZXJDYWxsYmFjaygpOwotfQotCiB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKCkK
IHsKICAgICBJTkZPX0xPRyhMT0dJREVOVElGSUVSKTsKQEAgLTUwODcsMTAgKzUwNjMsOCBAQCB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKCkK
ICAgICAgICAgbWFya0NhcHRpb25BbmRTdWJ0aXRsZVRyYWNrc0FzVW5jb25maWd1cmVkKEFmdGVy
RGVsYXkpOwogI2VuZGlmCiAKLSAgICBpZiAocG90ZW50aWFsbHlQbGF5aW5nKCkgJiYgZGlzcGxh
eU1vZGUoKSA9PSBQb3N0ZXJXYWl0aW5nRm9yVmlkZW8pIHsKLSAgICAgICAgc2V0RGlzcGxheU1v
ZGUoVmlkZW8pOworICAgIGlmIChwb3RlbnRpYWxseVBsYXlpbmcoKSkKICAgICAgICAgbWVkaWFQ
bGF5ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCgpOwotICAgIH0KIAogICAgIHVwZGF0ZVJlbmRlcmVy
KCk7CiAKQEAgLTUzMzEsNyArNTMwNSw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6dXBkYXRl
UGxheVN0YXRlKCkKICAgICBpZiAoc2hvdWxkQmVQbGF5aW5nKSB7CiAgICAgICAgIHNjaGVkdWxl
UGxheWJhY2tDb250cm9sc01hbmFnZXJVcGRhdGUoKTsKIAotICAgICAgICBzZXREaXNwbGF5TW9k
ZShWaWRlbyk7CiAgICAgICAgIGludmFsaWRhdGVDYWNoZWRUaW1lKCk7CiAKICAgICAgICAgaWYg
KHBsYXllclBhdXNlZCkgewpAQCAtNTQ2OCwxMSArNTQ0MSwxMSBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OnVzZXJDYW5jZWxsZWRMb2FkKCkKICNlbmRpZgogCiAgICAgLy8gNCAtIElmIHRoZSBt
ZWRpYSBlbGVtZW50J3MgcmVhZHlTdGF0ZSBhdHRyaWJ1dGUgaGFzIGEgdmFsdWUgZXF1YWwgdG8g
SEFWRV9OT1RISU5HLCBzZXQgdGhlCi0gICAgLy8gZWxlbWVudCdzIG5ldHdvcmtTdGF0ZSBhdHRy
aWJ1dGUgdG8gdGhlIE5FVFdPUktfRU1QVFkgdmFsdWUgYW5kIHF1ZXVlIGEgdGFzayB0byBmaXJl
IGEKLSAgICAvLyBzaW1wbGUgZXZlbnQgbmFtZWQgZW1wdGllZCBhdCB0aGUgZWxlbWVudC4gT3Ro
ZXJ3aXNlLCBzZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3RhdGUKLSAgICAvLyBhdHRyaWJ1dGUg
dG8gdGhlIE5FVFdPUktfSURMRSB2YWx1ZS4KKyAgICAvLyBlbGVtZW50J3MgbmV0d29ya1N0YXRl
IGF0dHJpYnV0ZSB0byB0aGUgTkVUV09SS19FTVBUWSB2YWx1ZSwgc2V0IHRoZSBlbGVtZW50J3Mg
c2hvdyBwb3N0ZXIKKyAgICAvLyBmbGFnIHRvIHRydWUsIGFuZCBmaXJlIGFuIGV2ZW50IG5hbWVk
IGVtcHRpZWQgYXQgdGhlIGVsZW1lbnQuCiAgICAgaWYgKG1fcmVhZHlTdGF0ZSA9PSBIQVZFX05P
VEhJTkcpIHsKICAgICAgICAgbV9uZXR3b3JrU3RhdGUgPSBORVRXT1JLX0VNUFRZOworICAgICAg
ICBzZXRTaG93UG9zdGVyRmxhZyh0cnVlKTsKICAgICAgICAgc2NoZWR1bGVFdmVudChldmVudE5h
bWVzKCkuZW1wdGllZEV2ZW50KTsKICAgICB9CiAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuaAppbmRleCAyNzY0YWEzY2ViMjU4MDlhMGZhMzhlOTM3OTk3MzNhNGZj
ZWMxOTI5Li5kMzdlOTdlOGVhYjAzMzBiOTI5YjUzOWFhYjJkOWVlNTM0MmNhNzY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaApAQCAtNTk5LDEwICs1OTksNiBAQCBwcm90
ZWN0ZWQ6CiAKICAgICB2b2lkIGRpZE1vdmVUb05ld0RvY3VtZW50KERvY3VtZW50JiBvbGREb2N1
bWVudCwgRG9jdW1lbnQmIG5ld0RvY3VtZW50KSBvdmVycmlkZTsKIAotICAgIGVudW0gRGlzcGxh
eU1vZGUgeyBVbmtub3duLCBOb25lLCBQb3N0ZXIsIFBvc3RlcldhaXRpbmdGb3JWaWRlbywgVmlk
ZW8gfTsKLSAgICBEaXNwbGF5TW9kZSBkaXNwbGF5TW9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGlz
cGxheU1vZGU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0RGlzcGxheU1vZGUoRGlzcGxheU1vZGUg
bW9kZSkgeyBtX2Rpc3BsYXlNb2RlID0gbW9kZTsgfQotICAgIAogICAgIGJvb2wgaXNNZWRpYUVs
ZW1lbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBSZW5kZXJQdHI8UmVu
ZGVyRWxlbWVudD4gY3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYsIGNvbnN0IFJl
bmRlclRyZWVQb3NpdGlvbiYpIG92ZXJyaWRlOwpAQCAtNjE1LDYgKzYxMSw5IEBAIHByb3RlY3Rl
ZDoKIAogICAgIHZvaWQgc2NoZWR1bGVFdmVudChjb25zdCBBdG9tU3RyaW5nJik7CiAKKyAgICBi
b29sIHNob3dQb3N0ZXJGbGFnKCkgY29uc3QgeyByZXR1cm4gbV9zaG93UG9zdGVyOyB9CisgICAg
dm9pZCBzZXRTaG93UG9zdGVyRmxhZyhib29sIGZsYWcpIHsgbV9zaG93UG9zdGVyID0gZmxhZzsg
fQorCiBwcml2YXRlOgogICAgIHZvaWQgY3JlYXRlTWVkaWFQbGF5ZXIoKTsKIApAQCAtNjQzLDgg
KzY0Miw2IEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCB2aXNpYmlsaXR5U3RhdGVDaGFuZ2Vk
KCkgZmluYWw7CiAKLSAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRGlzcGxheVN0YXRlKCkgeyB9Ci0g
ICAgCiAgICAgdm9pZCBzZXRSZWFkeVN0YXRlKE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlKTsKICAg
ICB2b2lkIHNldE5ldHdvcmtTdGF0ZShNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlKTsKIApAQCAt
NjcwLDcgKzY2Nyw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzY2hlZHVsZU1lZGlhRW5naW5lV2Fz
VXBkYXRlZCgpOwogICAgIHZvaWQgbWVkaWFFbmdpbmVXYXNVcGRhdGVkKCk7CiAKLSAgICB2b2lk
IG1lZGlhUGxheWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKCkgZmluYWw7CiAgICAgdm9pZCBt
ZWRpYVBsYXllckNoYXJhY3RlcmlzdGljQ2hhbmdlZCgpIGZpbmFsOwogCiAjaWYgRU5BQkxFKExF
R0FDWV9FTkNSWVBURURfTUVESUEpCkBAIC0xMDM0LDggKzEwMzAsNiBAQCBwcml2YXRlOgogCiAg
ICAgTWVkaWFQbGF5ZXI6OlByZWxvYWQgbV9wcmVsb2FkIHsgUHJlbG9hZDo6QXV0byB9OwogCi0g
ICAgRGlzcGxheU1vZGUgbV9kaXNwbGF5TW9kZSB7IFVua25vd24gfTsKLQogICAgIC8vIENvdW50
ZXIgaW5jcmVtZW50ZWQgd2hpbGUgcHJvY2Vzc2luZyBhIGNhbGxiYWNrIGZyb20gdGhlIG1lZGlh
IHBsYXllciwgc28gd2UgY2FuIGF2b2lkCiAgICAgLy8gY2FsbGluZyB0aGUgbWVkaWEgZW5naW5l
IHJlY3Vyc2l2ZWx5LgogICAgIGludCBtX3Byb2Nlc3NpbmdNZWRpYVBsYXllckNhbGxiYWNrIHsg
MCB9OwpAQCAtMTExMyw2ICsxMTA3LDggQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNTY3J1YmJp
bmdSZW1vdGVseSA6IDE7CiAgICAgYm9vbCBtX3dhaXRpbmdUb0VudGVyRnVsbHNjcmVlbiA6IDE7
CiAKKyAgICBib29sIG1fc2hvd1Bvc3RlciA6IDE7CisKICNpZiBFTkFCTEUoVklERU9fVFJBQ0sp
CiAgICAgYm9vbCBtX3RyYWNrc0FyZVJlYWR5IDogMTsKICAgICBib29sIG1faGF2ZVZpc2libGVU
ZXh0VHJhY2sgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9F
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKaW5k
ZXggMWI2NGZiMjhiY2VjMjAxNjdiNGRlNTU1ZmNiYWNiNWZkNDNjMjVhMi4uODk0NDVmMGUyNjU2
YjBlOWQxY2ZhMjM4NjI2NjJmMGJhN2YwZjU4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCkBAIC0xMDIsNyArMTAyLDYgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50
OjpkaWRBdHRhY2hSZW5kZXJlcnMoKQogewogICAgIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEF0dGFj
aFJlbmRlcmVycygpOwogCi0gICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgaWYgKHNob3Vs
ZERpc3BsYXlQb3N0ZXJJbWFnZSgpKSB7CiAgICAgICAgIGlmICghbV9pbWFnZUxvYWRlcikKICAg
ICAgICAgICAgIG1faW1hZ2VMb2FkZXIgPSBtYWtlVW5pcXVlPEhUTUxJbWFnZUxvYWRlcj4oKnRo
aXMpOwpAQCAtMTMyLDE3ICsxMzEsMTUgQEAgYm9vbCBIVE1MVmlkZW9FbGVtZW50Ojppc1ByZXNl
bnRhdGlvbkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKSBjb25zdAogdm9pZCBI
VE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1l
LCBjb25zdCBBdG9tU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBpZiAobmFtZSA9PSBwb3N0ZXJBdHRy
KSB7Ci0gICAgICAgIC8vIEZvcmNlIGEgcG9zdGVyIHJlY2FsYyBieSBzZXR0aW5nIG1fZGlzcGxh
eU1vZGUgdG8gVW5rbm93biBkaXJlY3RseSBiZWZvcmUgY2FsbGluZyB1cGRhdGVEaXNwbGF5U3Rh
dGUuCi0gICAgICAgIEhUTUxNZWRpYUVsZW1lbnQ6OnNldERpc3BsYXlNb2RlKFVua25vd24pOwot
ICAgICAgICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKLQogICAgICAgICBpZiAoc2hvdWxkRGlzcGxh
eVBvc3RlckltYWdlKCkpIHsKICAgICAgICAgICAgIGlmICghbV9pbWFnZUxvYWRlcikKICAgICAg
ICAgICAgICAgICBtX2ltYWdlTG9hZGVyID0gbWFrZVVuaXF1ZTxIVE1MSW1hZ2VMb2FkZXI+KCp0
aGlzKTsKICAgICAgICAgICAgIG1faW1hZ2VMb2FkZXItPnVwZGF0ZUZyb21FbGVtZW50SWdub3Jp
bmdQcmV2aW91c0Vycm9yKCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoYXV0
byogcmVuZGVyZXIgPSB0aGlzLT5yZW5kZXJlcigpKQorICAgICAgICAgICAgaWYgKGF1dG8qIHJl
bmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKSkgewogICAgICAgICAgICAgICAgIHJlbmRlcmVyLT5p
bWFnZVJlc291cmNlKCkuc2V0Q2FjaGVkSW1hZ2UobnVsbHB0cik7CisgICAgICAgICAgICAgICAg
cmVuZGVyZXItPnVwZGF0ZUZyb21FbGVtZW50KCk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0K
ICAgICB9CiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKQEAgLTE2MSw3ICsx
NTgsNiBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxp
ZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJpbgogICAgICAgICB9CiAjZW5kaWYKICAgICB9
Ci0KIH0KIAogYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzdXBwb3J0c0Z1bGxzY3JlZW4oSFRNTE1l
ZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUp
IGNvbnN0CkBAIC0yNTEsMzcgKzI0NywzNSBAQCBjb25zdCBBdG9tU3RyaW5nJiBIVE1MVmlkZW9F
bGVtZW50OjppbWFnZVNvdXJjZVVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fZGVmYXVsdFBvc3Rl
clVSTDsKIH0KIAotdm9pZCBIVE1MVmlkZW9FbGVtZW50OjpzZXREaXNwbGF5TW9kZShEaXNwbGF5
TW9kZSBtb2RlKQorYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzaG91bGREaXNwbGF5UG9zdGVySW1h
Z2UoKSBjb25zdAogewotICAgIERpc3BsYXlNb2RlIG9sZE1vZGUgPSBkaXNwbGF5TW9kZSgpOwot
ICAgIFVSTCBwb3N0ZXIgPSBwb3N0ZXJJbWFnZVVSTCgpOworICAgIGlmICghc2hvd1Bvc3RlckZs
YWcoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFwb3N0ZXIuaXNFbXB0eSgp
KSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgYSBwb3N0ZXIgcGF0aCwgYnV0IG9ubHkgc2hvdyBpdCB1
bnRpbCB0aGUgdXNlciB0cmlnZ2VycyBkaXNwbGF5IGJ5IHBsYXlpbmcgb3Igc2Vla2luZyBhbmQg
dGhlCi0gICAgICAgIC8vIG1lZGlhIGVuZ2luZSBoYXMgc29tZXRoaW5nIHRvIGRpc3BsYXkuCi0g
ICAgICAgIGlmIChtb2RlID09IFZpZGVvKSB7Ci0gICAgICAgICAgICBpZiAob2xkTW9kZSAhPSBW
aWRlbyAmJiBwbGF5ZXIoKSkKLSAgICAgICAgICAgICAgICBwbGF5ZXIoKS0+cHJlcGFyZUZvclJl
bmRlcmluZygpOwotICAgICAgICAgICAgaWYgKCFoYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCkpCi0g
ICAgICAgICAgICAgICAgbW9kZSA9IFBvc3RlcldhaXRpbmdGb3JWaWRlbzsKLSAgICAgICAgfQot
ICAgIH0gZWxzZSBpZiAob2xkTW9kZSAhPSBWaWRlbyAmJiBwbGF5ZXIoKSkKLSAgICAgICAgcGxh
eWVyKCktPnByZXBhcmVGb3JSZW5kZXJpbmcoKTsKKyAgICBpZiAocG9zdGVySW1hZ2VVUkwoKS5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIEhUTUxNZWRpYUVsZW1lbnQ6
OnNldERpc3BsYXlNb2RlKG1vZGUpOworICAgIGF1dG8qIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVy
ZXIoKTsKKyAgICBpZiAocmVuZGVyZXIgJiYgcmVuZGVyZXItPmZhaWxlZFRvTG9hZFBvc3Rlcklt
YWdlKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChhdXRvKiByZW5kZXJlciA9
IHRoaXMtPnJlbmRlcmVyKCkpIHsKLSAgICAgICAgaWYgKGRpc3BsYXlNb2RlKCkgIT0gb2xkTW9k
ZSkKLSAgICAgICAgICAgIHJlbmRlcmVyLT51cGRhdGVGcm9tRWxlbWVudCgpOwotICAgIH0KKyAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBIVE1MVmlkZW9FbGVtZW50Ojp1cGRhdGVEaXNwbGF5
U3RhdGUoKQordm9pZCBIVE1MVmlkZW9FbGVtZW50OjptZWRpYVBsYXllckZpcnN0VmlkZW9GcmFt
ZUF2YWlsYWJsZSgpCiB7Ci0gICAgaWYgKHBvc3RlckltYWdlVVJMKCkuaXNFbXB0eSgpKQotICAg
ICAgICBzZXREaXNwbGF5TW9kZShWaWRlbyk7Ci0gICAgZWxzZSBpZiAoZGlzcGxheU1vZGUoKSA8
IFBvc3RlcikKLSAgICAgICAgc2V0RGlzcGxheU1vZGUoUG9zdGVyKTsKKyAgICBJTkZPX0xPRyhM
T0dJREVOVElGSUVSLCAibV9zaG93UG9zdGVyID0gIiwgc2hvd1Bvc3RlckZsYWcoKSk7CisKKyAg
ICBpZiAoc2hvd1Bvc3RlckZsYWcoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW52YWxpZGF0
ZVN0eWxlQW5kTGF5ZXJDb21wb3NpdGlvbigpOworCisgICAgaWYgKGF1dG8gcGxheWVyID0gdGhp
cy0+cGxheWVyKCkpCisgICAgICAgIHBsYXllci0+cHJlcGFyZUZvclJlbmRlcmluZygpOworCisg
ICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKSkKKyAgICAgICAgcmVuZGVy
ZXItPnVwZGF0ZUZyb21FbGVtZW50KCk7CiB9CiAKIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6cGFp
bnRDdXJyZW50RnJhbWVJbkNvbnRleHQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBG
bG9hdFJlY3QmIGRlc3RSZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
VmlkZW9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaApp
bmRleCBlZDkyMTgzZDQ3YmJjM2ViMTIxMDAzM2Y5YmZlYzdiMjZjMDU2ZWJiLi5kZjlhNjQ2Y2I2
MjYxODhiZWUxYWI2M2NhZTc5YTYxYmRhOTc2NjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuaApAQCAtNzYsNyArNzYsNyBAQCBwdWJsaWM6CiAgICAgLy8gU2VlIG1vcmUg
ZGV0YWlscyBhdCBNZWRpYVBsYXllcjo6Y29weVZpZGVvVGV4dHVyZVRvUGxhdGZvcm1UZXh0dXJl
KCkgZGVmaW5lZCBpbiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5oLgogICAgIGJvb2wgY29weVZpZGVvVGV4dHVyZVRvUGxhdGZvcm1UZXh0dXJlKEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMKiwgUGxhdGZvcm1HTE9iamVjdCB0ZXh0dXJlLCBHQ0dMZW51bSB0YXJn
ZXQsIEdDR0xpbnQgbGV2ZWwsIEdDR0xlbnVtIGludGVybmFsRm9ybWF0LCBHQ0dMZW51bSBmb3Jt
YXQsIEdDR0xlbnVtIHR5cGUsIGJvb2wgcHJlbXVsdGlwbHlBbHBoYSwgYm9vbCBmbGlwWSk7CiAK
LSAgICBib29sIHNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpIGNvbnN0IHsgcmV0dXJuIGRpc3Bs
YXlNb2RlKCkgPT0gUG9zdGVyIHx8IGRpc3BsYXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZp
ZGVvOyB9CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGREaXNwbGF5UG9zdGVySW1hZ2Uo
KSBjb25zdDsKIAogICAgIFVSTCBwb3N0ZXJJbWFnZVVSTCgpIGNvbnN0OwogICAgIFJlbmRlclB0
cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29u
c3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgZmluYWw7CkBAIC0xMjIsMTAgKzEyMiwxMCBAQCBwcml2
YXRlOgogICAgIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3QgZmlu
YWw7CiAgICAgY29uc3QgQXRvbVN0cmluZyYgaW1hZ2VTb3VyY2VVUkwoKSBjb25zdCBmaW5hbDsK
IAotICAgIGJvb2wgaGFzQXZhaWxhYmxlVmlkZW9GcmFtZSgpIGNvbnN0OwotICAgIHZvaWQgdXBk
YXRlRGlzcGxheVN0YXRlKCkgZmluYWw7CiAgICAgdm9pZCBkaWRNb3ZlVG9OZXdEb2N1bWVudChE
b2N1bWVudCYgb2xkRG9jdW1lbnQsIERvY3VtZW50JiBuZXdEb2N1bWVudCkgZmluYWw7Ci0gICAg
dm9pZCBzZXREaXNwbGF5TW9kZShEaXNwbGF5TW9kZSkgZmluYWw7CisKKyAgICBib29sIGhhc0F2
YWlsYWJsZVZpZGVvRnJhbWUoKSBjb25zdDsKKyAgICB2b2lkIG1lZGlhUGxheWVyRmlyc3RWaWRl
b0ZyYW1lQXZhaWxhYmxlKCkgZmluYWw7CiAKICAgICBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6TWVk
aWFUeXBlIHByZXNlbnRhdGlvblR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBQbGF0Zm9ybU1l
ZGlhU2Vzc2lvbjo6TWVkaWFUeXBlOjpWaWRlbzsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclZpZGVvLmNwcAppbmRleCBlNGM1ZTc0YzM4ZjUwNDY5YzFjNTc2NzBiNjBmOWM1MDY1
YjMyODAyLi4yNTViZDRiMDdhOWI2NzQ3OTRmYjBiYzgwNjcwMjZlYzliZWIxMGZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5jcHAKQEAgLTE3OSw2ICsxNzksMTEgQEAg
Ym9vbCBSZW5kZXJWaWRlbzo6c2hvdWxkRGlzcGxheVZpZGVvKCkgY29uc3QKICAgICByZXR1cm4g
IXZpZGVvRWxlbWVudCgpLnNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpOwogfQogCitib29sIFJl
bmRlclZpZGVvOjpmYWlsZWRUb0xvYWRQb3N0ZXJJbWFnZSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IGltYWdlUmVzb3VyY2UoKS5lcnJvck9jY3VycmVkKCk7Cit9CisKIHZvaWQgUmVuZGVyVmlkZW86
OnBhaW50UmVwbGFjZWQoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBw
YWludE9mZnNldCkKIHsKICAgICBhdXRvIG1lZGlhUGxheWVyID0gdmlkZW9FbGVtZW50KCkucGxh
eWVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8u
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5oCmluZGV4IDhlMjVjNjhh
NTNmODliNGExNzBmYjk2NTFiMTg3ZmZiOGFjMGZhYzMuLjJjMTJhNWQ1OTRmZWFhMjIzMjgwNjE5
ZjE4ZGMyOTc2NWQwYjM1YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWRlby5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5o
CkBAIC01MCw2ICs1MCw3IEBAIHB1YmxpYzoKICAgICBib29sIHJlcXVpcmVzSW1tZWRpYXRlQ29t
cG9zaXRpbmcoKSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkRGlzcGxheVZpZGVvKCkgY29uc3Q7
CisgICAgYm9vbCBmYWlsZWRUb0xvYWRQb3N0ZXJJbWFnZSgpIGNvbnN0OwogCiAgICAgdm9pZCB1
cGRhdGVGcm9tRWxlbWVudCgpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5j
cHAKaW5kZXggOTljNjUwMDZhNDEyMWI5OGViY2M3MjAyYzYyZTY3NzBlZjQzZGNiMi4uYTFjMjI0
MzkyMzM2YzQwYjNmOTlhMzA1ZjhiM2QzM2QwZmU2YzI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmNwcApAQCAtNDMxOCw2ICs0MzE4LDE1IEBAIEV4Y2VwdGlvbk9yPEludGVybmFs
czo6TWVkaWFVc2FnZVN0YXRlPiBJbnRlcm5hbHM6Om1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFF
bGVtCiAjZW5kaWYKIH0KIAorRXhjZXB0aW9uT3I8Ym9vbD4gSW50ZXJuYWxzOjplbGVtZW50U2hv
dWxkRGlzcGxheVBvc3RlckltYWdlKEhUTUxWaWRlb0VsZW1lbnQmIGVsZW1lbnQpIGNvbnN0Cit7
CisjaWYgRU5BQkxFKFZJREVPKQorICAgIHJldHVybiBlbGVtZW50LnNob3VsZERpc3BsYXlQb3N0
ZXJJbWFnZSgpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CisgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciB9OworI2VuZGlmCit9CiAKICNpZiBFTkFC
TEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aAppbmRleCBjNDJiNmM3NmM0Nzc3ZWY4NmMzYjEzMTMyNDBlNGQzNWE1Nzk3OTNlLi41OWMwNWY2
MTgyMDk0ODlkZjU4M2Q3Zjk2YjFhMWE4YzU1MGQwNTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmgKQEAgLTg2MCw2ICs4NjAsOCBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBFeGNlcHRp
b25PcjxNZWRpYVVzYWdlU3RhdGU+IG1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVtZW50Jikg
Y29uc3Q7CiAKKyAgICBFeGNlcHRpb25Pcjxib29sPiBlbGVtZW50U2hvdWxkRGlzcGxheVBvc3Rl
ckltYWdlKEhUTUxWaWRlb0VsZW1lbnQmKSBjb25zdDsKKwogI2lmIEVOQUJMRShWSURFTykKICAg
ICB1c2luZyBQbGF5YmFja0NvbnRyb2xzUHVycG9zZSA9IE1lZGlhRWxlbWVudFNlc3Npb246OlBs
YXliYWNrQ29udHJvbHNQdXJwb3NlOwogICAgIFJlZlB0cjxIVE1MTWVkaWFFbGVtZW50PiBiZXN0
TWVkaWFFbGVtZW50Rm9yU2hvd2luZ1BsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFBsYXliYWNrQ29u
dHJvbHNQdXJwb3NlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCA5MzE2
OGY3MzE5ZTE0ZTU1YjNjZjM1YWNhOWE2NzMzNzNkNzI2ZDc4Li5kYjlkZGViMmE5MTNmNGI2ZDIy
MWZmMDY4MDRhYjk4M2FiZjJkYTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CkBAIC04MzgsNiArODM4LDcgQEAgZW51bSBDb21wb3NpdGluZ1BvbGljeSB7CiAgICAgW0NvbmRp
dGlvbmFsPVZJREVPXSBNZWRpYVNlc3Npb25TdGF0ZSBtZWRpYVNlc3Npb25TdGF0ZShIVE1MTWVk
aWFFbGVtZW50IGVsZW1lbnQpOwogCiAgICAgW0NvbmRpdGlvbmFsPVZJREVPLCBNYXlUaHJvd0V4
Y2VwdGlvbl0gTWVkaWFVc2FnZVN0YXRlIG1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVtZW50
IGVsZW1lbnQpOworICAgIFtDb25kaXRpb25hbD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIGJv
b2xlYW4gZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50IGVs
ZW1lbnQpOwogCiAgICAgRE9NU3RyaW5nIG9uZ29pbmdMb2Fkc0Rlc2NyaXB0aW9ucygpOwogICAg
IHZvaWQgc2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZChib29sZWFuIHZh
bHVlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCA5ZjE4NDljNWZjNGI2ZDFlMWZhMWIyNDczMzJjZWExNWU2NzlkYTg1Li5i
YjNjYTVjMTQ3YmQyZTg1ZTBkMzRlYTljYWM3YWM5YjQ2YmUxODNkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTMgQEAKKzIwMjAtMDUtMDUgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+
CisKKyAgICAgICAgUG9zdGVyIHNldCBhZnRlciBwbGF5YmFjayBiZWdpbnMgc2hvdWxkIGJlIGln
bm9yZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
MTQ2NAorCisgICAgICAgIFJldmlld2VkIGJ5IEplciBOb2JsZS4KKworICAgICAgICAqIG1lZGlh
L3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLmh0bWw6IEFkZGVk
LgorCiAyMDIwLTA1LTA0ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAog
ICAgICAgICBVbnJldmlld2VkIHRlc3QgZ2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi45MTExM2U2NTBiYjkyMWRiNDI1ODgyMmMwZTk4YTRlOGFlOGZiNDk4
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1h
ZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACisKK0VWRU5UKHBsYXlp
bmcpCitFVkVOVChwYXVzZSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuZWxlbWVudFNob3VsZERpc3Bs
YXlQb3N0ZXJJbWFnZSh2aWRlbykgPT0gJ2ZhbHNlJykgT0sKK0VORCBPRiBURVNUCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2su
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2su
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5kZGZlNTMxMzBlZjUxOTVlNWU0ZmZkY2NlMTUzMWI3ZmI3YWE3YmMy
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1h
ZnRlci1wbGF5YmFjay5odG1sCkBAIC0wLDAgKzEsMzggQEAKKworPGh0bWw+Cis8aGVhZD4KKyAg
ICA8dGl0bGU+U2V0dGluZyBwb3N0ZXIgYWZ0ZXIgcGxheWluZzwvdGl0bGU+CisgICAgPHNjcmlw
dCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxl
LmpzPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoJ2xvYWQnLCBhc3luYyAoKSA9PiB7CisgICAgICAgICAgICBmYWlsVGVzdEluKDE1MDAw
KTsKKworICAgICAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworICAgICAgICAgICAgdmlkZW8u
c3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisKKyAgICAgICAg
ICAgIHZpZGVvLnBsYXkoKTsKKyAgICAgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdwbGF5
aW5nJyk7CisKKyAgICAgICAgICAgIHZpZGVvLnBhdXNlKCk7CisgICAgICAgICAgICBhd2FpdCB3
YWl0Rm9yKHZpZGVvLCAncGF1c2UnKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdmlkZW8u
cG9zdGVyID0gJ2NvbnRlbnQvZ3JlZW4ucG5nJzsKKyAgICAgICAgICAgIAorICAgICAgICAgICAg
YXdhaXQgc2xlZXBGb3IoMTAwMCk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGlmICh3aW5k
b3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgnaW50ZXJuYWxzLmVs
ZW1lbnRTaG91bGREaXNwbGF5UG9zdGVySW1hZ2UodmlkZW8pJywgZmFsc2UpOworICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgidmlkZW8gc2hvdWxkIG5vdCBi
ZSBibGFuayIpCisKKyAgICAgICAgICAgIGVuZFRlc3QoKTsKKyAgICAgICAgfSk7CisKKyAgICA8
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDx2aWRlbyBjb250cm9scyBtdXRlZD48L3Zp
ZGVvPgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398782</attachid>
            <date>2020-05-07 12:46:48 -0700</date>
            <delta_ts>2020-05-11 13:39:36 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-211464-20200507124647.patch</filename>
            <type>text/plain</type>
            <size>27868</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWRiNDVhMTkzYjFlZDVk
MGQ5NzBhNzZjMTdkOGFmNGIxYTg4MjdkNS4uZDM0YmNmZGQ4N2Q1YWVhZWRhNWY1MWQ4Yjc0MTVm
YWMzMWViMWZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3IEBACisyMDIwLTA1LTA1ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQg
YWZ0ZXIgcGxheWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKworICAgICAgICBSZXZpZXdl
ZCBieSBKZXIgTm9ibGUuCisgICAgICAgIAorICAgICAgICBSZWRvIHRoZSBwb3N0ZXIgZnJhbWUg
bG9naWMgdG8gdXNlIHRoZSBgc2hvdyBwb3N0ZXIgZmxhZ2AgbG9naWMgZnJvbSB0aGUgc3BlYy4K
KworICAgICAgICBUZXN0OiBtZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLmh0
bWwKKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVtZW50KTogSW5pdGlhbGl6ZSBtX3No
b3dQb3N0ZXIuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpwcmVwYXJlRm9y
TG9hZCk6IG1fZGlzcGxheU1vZGUgd2FzIHJlbW92ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpzZWxlY3RNZWRpYVJlc291cmNlKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxh
Zy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmxvYWRSZXNvdXJjZSk6IFJl
bW92ZSBjYWxscyB0byBzZXREaXNwbGF5TW9kZSBhbmQgdXBkYXRlRGlzcGxheVN0YXRlLAorICAg
ICAgICB0aGV5IGhhdmUgYmVlbiBkZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlh
RWxlbWVudDo6d2FpdEZvclNvdXJjZUNoYW5nZSk6IENhbGwgc2V0U2hvd1Bvc3RlckZsYWcuIFVw
ZGF0ZSBzcGVjIHRleHQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpub25l
U3VwcG9ydGVkKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQ6Om1lZGlhTG9hZGluZ0ZhaWxlZCk6IFJlbW92ZSBjYWxsIHRvIHVwZGF0
ZURpc3BsYXlTdGF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNldFJl
YWR5U3RhdGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNl
ZWtXaXRoVG9sZXJhbmNlKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxhZy4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUYXNrKTogIENoZWNrIG1fc2hvd1Bvc3Rlciwgbm90
IGRpc3BsYXlNb2RlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cGxheUlu
dGVybmFsKTogQ2FsbCBzZXRTaG93UG9zdGVyRmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxN
ZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKTogRG9uJ3QgY2hl
Y2sgZGlzcGxheU1vZGUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojp1cGRh
dGVQbGF5U3RhdGUpOiBObyBtb3JlIHNldERpc3BsYXlNb2RlLgorICAgICAgICAoV2ViQ29yZTo6
SFRNTE1lZGlhRWxlbWVudDo6dXNlckNhbmNlbGxlZExvYWQpOiAgQ2FsbCBzZXRTaG93UG9zdGVy
RmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyRmly
c3RWaWRlb0ZyYW1lQXZhaWxhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxNZWRp
YUVsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNob3dQb3N0
ZXJGbGFnIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNldFNo
b3dQb3N0ZXJGbGFnKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmRpc3Bs
YXlNb2RlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1l
bnQ6OnNldERpc3BsYXlNb2RlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRp
YUVsZW1lbnQ6OnVwZGF0ZURpc3BsYXlTdGF0ZSk6IERlbGV0ZWQuCisKKyAgICAgICAgKiBodG1s
L0hUTUxWaWRlb0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVu
dDo6ZGlkQXR0YWNoUmVuZGVyZXJzKTogTm8gbW9yZSB1cGRhdGVEaXNwbGF5U3RhdGUuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IERpdHRvLiBD
YWxsIHVwZGF0ZUZyb21FbGVtZW50IHdoZW4gcG9zdGVyIGlzIHJlbW92ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50OjpzaG91bGREaXNwbGF5UG9zdGVySW1hZ2UgY29uc3Qp
OiBOZXcuCisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50OjptZWRpYVBsYXllckZp
cnN0VmlkZW9GcmFtZUF2YWlsYWJsZSk6IE5ldywgdXBkYXRlIHBsYXllciBhbmQgCisgICAgICAg
IHJlbmRlcmVyIGlmIHRoZSBwb3N0ZXIgaXNuJ3Qgc3VwcG9zZWQgdG8gYmUgdmlzaWJsZS4KKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnNldERpc3BsYXlNb2RlKTogRGVsZXRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnVwZGF0ZURpc3BsYXlTdGF0
ZSk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6CisKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VmlkZW86OmZhaWxlZFRvTG9hZFBvc3RlckltYWdlIGNvbnN0KTogTmV3LgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJWaWRlby5oOgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjplbGVtZW50U2hvdWxkRGlzcGxheVBvc3Rl
ckltYWdlIGNvbnN0KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoKKwogMjAyMC0wNS0wNCAgQW50b2luZSBRdWludCAgPGdy
YW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhIGNvbnRyb2xzIHRyYWNrcyBtZW51IHNo
b3dzICJBdXRvIiBzZWxlY3RlZCBpbnN0ZWFkIG9mIHRyYWNrIHNlbGVjdGVkIHZpYSB0aGUgSlMg
QVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCBhOTU1NWNk
OGQxYWI0ZDE3MmZjNDAzMmM4Nzc2MDYyNmZmOTkwNGMyLi5hNTYzNTU2ZDVmOGRlNDg0MGY5ZDMx
ZjliNmMwNWZhY2I2OTdhNDJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAKQEAgLTQ0Nyw2ICs0NDcsNyBAQCBIVE1MTWVkaWFFbGVtZW50OjpIVE1MTWVkaWFFbGVt
ZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bQogICAgICwg
bV9tZWRpYUNvbnRyb2xzRGVwZW5kT25QYWdlU2NhbGVGYWN0b3IoZmFsc2UpCiAgICAgLCBtX2hh
dmVTZXRVcENhcHRpb25Db250YWluZXIoZmFsc2UpCiAgICAgLCBtX2lzU2NydWJiaW5nUmVtb3Rl
bHkoZmFsc2UpCisgICAgLCBtX3Nob3dQb3N0ZXIodHJ1ZSkKICNpZiBFTkFCTEUoVklERU9fVFJB
Q0spCiAgICAgLCBtX3RyYWNrc0FyZVJlYWR5KHRydWUpCiAgICAgLCBtX2hhdmVWaXNpYmxlVGV4
dFRyYWNrKGZhbHNlKQpAQCAtMTE0MCw3ICsxMTQxLDYgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjpwcmVwYXJlRm9yTG9hZCgpCiAgICAgbV9oYXZlRmlyZWRMb2FkZWREYXRhID0gZmFsc2U7CiAg
ICAgbV9jb21wbGV0ZWx5TG9hZGVkID0gZmFsc2U7CiAgICAgbV9oYXZlUHJlcGFyZWRUb1BsYXkg
PSBmYWxzZTsKLSAgICBtX2Rpc3BsYXlNb2RlID0gVW5rbm93bjsKICAgICBtX2N1cnJlbnRTcmMg
PSBVUkwoKTsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCkBAIC0xMjQ2
LDcgKzEyNDYsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlbGVjdE1lZGlhUmVzb3VyY2Uo
KQogICAgIG1fbmV0d29ya1N0YXRlID0gTkVUV09SS19OT19TT1VSQ0U7CiAKICAgICAvLyAyLiBT
ZXQgdGhlIGVsZW1lbnTigJlzIHNob3cgcG9zdGVyIGZsYWcgdG8gdHJ1ZS4KLSAgICBzZXREaXNw
bGF5TW9kZShQb3N0ZXIpOworICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUpOwogCiAgICAgLy8g
My4gU2V0IHRoZSBtZWRpYSBlbGVtZW504oCZcyBkZWxheWluZy10aGUtbG9hZC1ldmVudCBmbGFn
IHRvIHRydWUgKHRoaXMgZGVsYXlzIHRoZSBsb2FkIGV2ZW50KS4KICAgICBzZXRTaG91bGREZWxh
eUxvYWRFdmVudCh0cnVlKTsKQEAgLTE0OTQsOSArMTQ5NCw2IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6bG9hZFJlc291cmNlKGNvbnN0IFVSTCYgaW5pdGlhbFVSTCwgQ29udGVudFR5cGUmIGNv
bnRlbnRUCiAgICAgYm9vbCBwcml2YXRlTW9kZSA9IGRvY3VtZW50KCkucGFnZSgpICYmIGRvY3Vt
ZW50KCkucGFnZSgpLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpOwogICAgIG1fcGxheWVyLT5zZXRQ
cml2YXRlQnJvd3NpbmdNb2RlKHByaXZhdGVNb2RlKTsKIAotICAgIC8vIFJlc2V0IGRpc3BsYXkg
bW9kZSB0byBmb3JjZSBhIHJlY2FsY3VsYXRpb24gb2Ygd2hhdCB0byBzaG93IGJlY2F1c2Ugd2Ug
YXJlIHJlc2V0dGluZyB0aGUgcGxheWVyLgotICAgIHNldERpc3BsYXlNb2RlKFVua25vd24pOwot
CiAgICAgaWYgKCFhdXRvcGxheSgpICYmICFtX2hhdmVQcmVwYXJlZFRvUGxheSkKICAgICAgICAg
bV9wbGF5ZXItPnNldFByZWxvYWQobV9tZWRpYVNlc3Npb24tPmVmZmVjdGl2ZVByZWxvYWRGb3JF
bGVtZW50KCkpOwogICAgIG1fcGxheWVyLT5zZXRQcmVzZXJ2ZXNQaXRjaChtX3dlYmtpdFByZXNl
cnZlc1BpdGNoKTsKQEAgLTE1NTAsMTEgKzE1NDcsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6
OmxvYWRSZXNvdXJjZShjb25zdCBVUkwmIGluaXRpYWxVUkwsIENvbnRlbnRUeXBlJiBjb250ZW50
VAogICAgIGlmICghbG9hZEF0dGVtcHRlZCAmJiAhbV9wbGF5ZXItPmxvYWQodXJsLCBjb250ZW50
VHlwZSwga2V5U3lzdGVtKSkKICAgICAgICAgbWVkaWFMb2FkaW5nRmFpbGVkKE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yKTsKIAotICAgIC8vIElmIHRoZXJlIGlzIG5vIHBv
c3RlciB0byBkaXNwbGF5LCBhbGxvdyB0aGUgbWVkaWEgZW5naW5lIHRvIHJlbmRlciB2aWRlbyBm
cmFtZXMgYXMgc29vbiBhcwotICAgIC8vIHRoZXkgYXJlIGF2YWlsYWJsZS4KLSAgICB1cGRhdGVE
aXNwbGF5U3RhdGUoKTsKLQotICAgIHVwZGF0ZVJlbmRlcmVyKCk7CisgICAgbWVkaWFQbGF5ZXJS
ZW5kZXJpbmdNb2RlQ2hhbmdlZCgpOwogfQogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQpAQCAt
MjA0NywxMCArMjA0MCwxNCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OndhaXRGb3JTb3VyY2VD
aGFuZ2UoKQogICAgIC8vIDYuMTcgLSBXYWl0aW5nOiBTZXQgdGhlIGVsZW1lbnQncyBuZXR3b3Jr
U3RhdGUgYXR0cmlidXRlIHRvIHRoZSBORVRXT1JLX05PX1NPVVJDRSB2YWx1ZQogICAgIG1fbmV0
d29ya1N0YXRlID0gTkVUV09SS19OT19TT1VSQ0U7CiAKLSAgICAvLyA2LjE4IC0gU2V0IHRoZSBl
bGVtZW50J3MgZGVsYXlpbmctdGhlLWxvYWQtZXZlbnQgZmxhZyB0byBmYWxzZS4gVGhpcyBzdG9w
cyBkZWxheWluZyB0aGUgbG9hZCBldmVudC4KKyAgICAvLyA2LjE4IC0gU2V0IHRoZSBlbGVtZW50
J3Mgc2hvdyBwb3N0ZXIgZmxhZyB0byB0cnVlLgorICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUp
OworCisgICAgLy8gNi4xOSAtICBRdWV1ZSBhIG1lZGlhIGVsZW1lbnQgdGFzayBnaXZlbiB0aGUg
bWVkaWEgZWxlbWVudCBnaXZlbiB0aGUgZWxlbWVudCB0byBzZXQgdGhlCisgICAgLy8gZWxlbWVu
dCdzIGRlbGF5aW5nLXRoZS1sb2FkLWV2ZW50IGZsYWcgdG8gZmFsc2UuIFRoaXMgc3RvcHMgZGVs
YXlpbmcgdGhlIGxvYWQgZXZlbnQuCisgICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIGJlIGRvbmUg
aW4gYSB0YXNrIHF1ZXVlCiAgICAgc2V0U2hvdWxkRGVsYXlMb2FkRXZlbnQoZmFsc2UpOwogCi0g
ICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApAQCAt
MjA3OSw2ICsyMDc2LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpub25lU3VwcG9ydGVkKCkK
ICAgICAvLyA2LjMgLSBTZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3RhdGUgYXR0cmlidXRlIHRv
IHRoZSBORVRXT1JLX05PX1NPVVJDRSB2YWx1ZS4KICAgICBtX25ldHdvcmtTdGF0ZSA9IE5FVFdP
UktfTk9fU09VUkNFOwogCisgICAgLy8gNi40IC0gU2V0IHRoZSBlbGVtZW50J3Mgc2hvdyBwb3N0
ZXIgZmxhZyB0byB0cnVlLgorICAgIHNldFNob3dQb3N0ZXJGbGFnKHRydWUpOworCiAgICAgLy8g
NyAtIFF1ZXVlIGEgdGFzayB0byBmaXJlIGEgc2ltcGxlIGV2ZW50IG5hbWVkIGVycm9yIGF0IHRo
ZSBtZWRpYSBlbGVtZW50LgogICAgIHNjaGVkdWxlRXZlbnQoZXZlbnROYW1lcygpLmVycm9yRXZl
bnQpOwogCkBAIC0yMDk0LDcgKzIwOTQsNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om5vbmVT
dXBwb3J0ZWQoKQogICAgIC8vIDkgLSBBYm9ydCB0aGVzZSBzdGVwcy4gVW50aWwgdGhlIGxvYWQo
KSBtZXRob2QgaXMgaW52b2tlZCBvciB0aGUgc3JjIGF0dHJpYnV0ZSBpcyBjaGFuZ2VkLAogICAg
IC8vIHRoZSBlbGVtZW50IHdvbid0IGF0dGVtcHQgdG8gbG9hZCBhbm90aGVyIHJlc291cmNlLgog
Ci0gICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgdXBkYXRlUmVuZGVyZXIoKTsKIH0KIApA
QCAtMjIwOCw4ICsyMjA3LDYgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYUxvYWRpbmdG
YWlsZWQoTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZSBlcnJvcikKICAgICBlbHNlIGlmICgoZXJy
b3IgPT0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6Rm9ybWF0RXJyb3IgfHwgZXJyb3IgPT0g
TWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6TmV0d29ya0Vycm9yKSAmJiBtX2xvYWRTdGF0ZSA9
PSBMb2FkaW5nRnJvbVNyY0F0dHIpCiAgICAgICAgIG5vbmVTdXBwb3J0ZWQoKTsKIAotICAgIHVw
ZGF0ZURpc3BsYXlTdGF0ZSgpOwotCiAgICAgRVJST1JfTE9HKExPR0lERU5USUZJRVIsICJlcnJv
ciA9ICIsIHN0YXRpY19jYXN0PGludD4oZXJyb3IpKTsKIAogICAgIGxvZ01lZGlhTG9hZFJlcXVl
c3QoZG9jdW1lbnQoKS5wYWdlKCksIFN0cmluZygpLCBjb252ZXJ0RW51bWVyYXRpb25Ub1N0cmlu
ZyhlcnJvciksIGZhbHNlKTsKQEAgLTI0MTYsOCArMjQxMyw2IEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6c2V0UmVhZHlTdGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAg
ICAgbV9tZWRpYVNlc3Npb24tPmNsaWVudENoYXJhY3RlcmlzdGljc0NoYW5nZWQoKTsKICAgICB9
CiAKLSAgICBib29sIHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSA9IGZhbHNlOwotCiAgICAgaWYg
KG1fcmVhZHlTdGF0ZSA+PSBIQVZFX0NVUlJFTlRfREFUQSAmJiBvbGRTdGF0ZSA8IEhBVkVfQ1VS
UkVOVF9EQVRBKSB7CiAgICAgICAgIGlmICghbV9oYXZlRmlyZWRMb2FkZWREYXRhKSB7CiAgICAg
ICAgICAgICBtX2hhdmVGaXJlZExvYWRlZERhdGEgPSB0cnVlOwpAQCAtMjQyNSwxNiArMjQyMCwx
MyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVkaWFQbGF5ZXI6OlJl
YWR5U3RhdGUgc3RhdGUpCiAgICAgICAgICAgICAvLyBGSVhNRTogSXQncyBub3QgY2xlYXIgdGhh
dCBpdCdzIGNvcnJlY3QgdG8gc2tpcCB0aGVzZSB0d28gb3BlcmF0aW9ucyBqdXN0CiAgICAgICAg
ICAgICAvLyBiZWNhdXNlIG1faGF2ZUZpcmVkTG9hZGVkRGF0YSBpcyBhbHJlYWR5IHRydWUuIEF0
IG9uZSB0aW1lIHdlIHdlcmUgc2tpcHBpbmcKICAgICAgICAgICAgIC8vIHRoZSBjYWxsIHRvIHNl
dFNob3VsZERlbGF5TG9hZEV2ZW50LCB3aGljaCB3YXMgZGVmaW5pdGVseSBpbmNvcnJlY3QuCi0g
ICAgICAgICAgICBzaG91bGRVcGRhdGVEaXNwbGF5U3RhdGUgPSB0cnVlOwogICAgICAgICAgICAg
YXBwbHlNZWRpYUZyYWdtZW50VVJJKCk7CiAgICAgICAgIH0KICAgICAgICAgc2V0U2hvdWxkRGVs
YXlMb2FkRXZlbnQoZmFsc2UpOwogICAgIH0KIAotICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gSEFW
RV9GVVRVUkVfREFUQSAmJiBvbGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSAmJiB0cmFja3NB
cmVSZWFkeSkgeworICAgIGlmIChtX3JlYWR5U3RhdGUgPT0gSEFWRV9GVVRVUkVfREFUQSAmJiBv
bGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFUQSAmJiB0cmFja3NBcmVSZWFkeSkKICAgICAgICAg
c2NoZWR1bGVFdmVudChldmVudE5hbWVzKCkuY2FucGxheUV2ZW50KTsKLSAgICAgICAgc2hvdWxk
VXBkYXRlRGlzcGxheVN0YXRlID0gdHJ1ZTsKLSAgICB9CiAKICAgICBpZiAobV9yZWFkeVN0YXRl
ID09IEhBVkVfRU5PVUdIX0RBVEEgJiYgb2xkU3RhdGUgPCBIQVZFX0VOT1VHSF9EQVRBICYmIHRy
YWNrc0FyZVJlYWR5KSB7CiAgICAgICAgIGlmIChvbGRTdGF0ZSA8PSBIQVZFX0NVUlJFTlRfREFU
QSkKQEAgLTI0NDUsNiArMjQzNyw3IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlT
dGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAgYXV0byBzdWNjZXNz
ID0gY2FuVHJhbnNpdGlvbkZyb21BdXRvcGxheVRvUGxheSgpOwogICAgICAgICBpZiAoc3VjY2Vz
cykgewogICAgICAgICAgICAgbV9wYXVzZWQgPSBmYWxzZTsKKyAgICAgICAgICAgIHNldFNob3dQ
b3N0ZXJGbGFnKGZhbHNlKTsKICAgICAgICAgICAgIGludmFsaWRhdGVDYWNoZWRUaW1lKCk7CiAg
ICAgICAgICAgICBzZXRBdXRvcGxheUV2ZW50UGxheWJhY2tTdGF0ZShBdXRvcGxheUV2ZW50UGxh
eWJhY2tTdGF0ZTo6U3RhcnRlZFdpdGhvdXRVc2VyR2VzdHVyZSk7CiAgICAgICAgICAgICBtX3Bs
YXliYWNrU3RhcnRlZFRpbWUgPSBjdXJyZW50TWVkaWFUaW1lKCkudG9Eb3VibGUoKTsKQEAgLTI0
NTMsOCArMjQ0Niw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlTdGF0ZShNZWRp
YVBsYXllcjo6UmVhZHlTdGF0ZSBzdGF0ZSkKICAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURF
TlRJRklFUiwgIkF1dG9wbGF5IGJsb2NrZWQsIHVzZXIgZ2VzdHVyZSByZXF1aXJlZCIpOwogICAg
ICAgICAgICAgc2V0QXV0b3BsYXlFdmVudFBsYXliYWNrU3RhdGUoQXV0b3BsYXlFdmVudFBsYXli
YWNrU3RhdGU6OlByZXZlbnRlZEF1dG9wbGF5KTsKICAgICAgICAgfQotCi0gICAgICAgIHNob3Vs
ZFVwZGF0ZURpc3BsYXlTdGF0ZSA9IHRydWU7CiAgICAgfQogCiAgICAgLy8gSWYgd2UgdHJhbnNp
dGlvbiB0byB0aGUgRnV0dXJlIERhdGEgc3RhdGUgYW5kIHdlJ3JlIGFib3V0IHRvIGJlZ2luIHBs
YXlpbmcsIGVuc3VyZSBwbGF5YmFjayBpcyBhY3R1YWxseSBwZXJtaXR0ZWQgZmlyc3QsCkBAIC0y
NDY4LDkgKzI0NTksNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVk
aWFQbGF5ZXI6OlJlYWR5U3RhdGUgc3RhdGUpCiAgICAgICAgIHNldEF1dG9wbGF5RXZlbnRQbGF5
YmFja1N0YXRlKEF1dG9wbGF5RXZlbnRQbGF5YmFja1N0YXRlOjpQcmV2ZW50ZWRBdXRvcGxheSk7
CiAgICAgfQogCi0gICAgaWYgKHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSkKLSAgICAgICAgdXBk
YXRlRGlzcGxheVN0YXRlKCk7Ci0KICAgICB1cGRhdGVQbGF5U3RhdGUoKTsKICAgICB1cGRhdGVN
ZWRpYUNvbnRyb2xsZXIoKTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCkBAIC0yODk0LDcgKzI4
ODIsNyBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtXaXRoVG9sZXJhbmNlKGNvbnN0IE1l
ZGlhVGltZSYgaW5UaW1lLCBjb25zdCBNZWRpYVRpbQogICAgIE1lZGlhVGltZSB0aW1lID0gaW5U
aW1lOwogCiAgICAgLy8gMSAtIFNldCB0aGUgbWVkaWEgZWxlbWVudCdzIHNob3cgcG9zdGVyIGZs
YWcgdG8gZmFsc2UuCi0gICAgc2V0RGlzcGxheU1vZGUoVmlkZW8pOworICAgIHNldFNob3dQb3N0
ZXJGbGFnKGZhbHNlKTsKIAogICAgIC8vIDIgLSBJZiB0aGUgbWVkaWEgZWxlbWVudCdzIHJlYWR5
U3RhdGUgaXMgSEFWRV9OT1RISU5HLCBhYm9ydCB0aGVzZSBzdGVwcy4KICAgICBpZiAobV9yZWFk
eVN0YXRlID09IEhBVkVfTk9USElORyB8fCAhbV9wbGF5ZXIpCkBAIC0yOTkzLDcgKzI5ODEsNyBA
QCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNlZWtUYXNrKCkKICAgICAvLyBEb24ndCBza2lwIGNh
bGxpbmcgdGhlIG1lZGlhIGVuZ2luZSBpZiAxKSB3ZSBhcmUgaW4gcG9zdGVyIG1vZGUgKGJlY2F1
c2UgYSBzZWVrIHNob3VsZCBhbHdheXMgY2FuY2VsCiAgICAgLy8gcG9zdGVyIGRpc3BsYXkpLCBv
ciAyKSBpZiB0aGVyZSBpcyBhIHBlbmRpbmcgZmFzdCBzZWVrLCBvciAzKSBpZiB0aGlzIHNlZWsg
aXMgbm90IGFuIGV4YWN0IHNlZWsKICAgICBTZWVrVHlwZSB0aGlzU2Vla1R5cGUgPSAobmVnYXRp
dmVUb2xlcmFuY2UgPT0gTWVkaWFUaW1lOjp6ZXJvVGltZSgpICYmIHBvc2l0aXZlVG9sZXJhbmNl
ID09IE1lZGlhVGltZTo6emVyb1RpbWUoKSkgPyBQcmVjaXNlIDogRmFzdDsKLSAgICBpZiAoIW5v
U2Vla1JlcXVpcmVkICYmIHRpbWUgPT0gbm93ICYmIHRoaXNTZWVrVHlwZSA9PSBQcmVjaXNlICYm
IG1fcGVuZGluZ1NlZWtUeXBlICE9IEZhc3QgJiYgZGlzcGxheU1vZGUoKSAhPSBQb3N0ZXIpCisg
ICAgaWYgKCFub1NlZWtSZXF1aXJlZCAmJiB0aW1lID09IG5vdyAmJiB0aGlzU2Vla1R5cGUgPT0g
UHJlY2lzZSAmJiBtX3BlbmRpbmdTZWVrVHlwZSAhPSBGYXN0ICYmICFzaG93UG9zdGVyRmxhZygp
KQogICAgICAgICBub1NlZWtSZXF1aXJlZCA9IHRydWU7CiAKICNpZiBFTkFCTEUoTUVESUFfU09V
UkNFKQpAQCAtMzQ3NCw2ICszNDYyLDcgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5SW50
ZXJuYWwoKQogCiAgICAgaWYgKG1fcGF1c2VkKSB7CiAgICAgICAgIG1fcGF1c2VkID0gZmFsc2U7
CisgICAgICAgIHNldFNob3dQb3N0ZXJGbGFnKGZhbHNlKTsKICAgICAgICAgaW52YWxpZGF0ZUNh
Y2hlZFRpbWUoKTsKIAogICAgICAgICAvLyBUaGlzIGF2b2lkcyB0aGUgZmlyc3QgdGltZVVwZGF0
ZWQgZXZlbnQgYWZ0ZXIgcGxheWJhY2sgc3RhcnRzLCB3aGVuIGN1cnJlbnRUaW1lIGlzIHN0aWxs
CkBAIC00OTM5LDcgKzQ5MjgsNiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVy
UmVzb3VyY2VOb3RTdXBwb3J0ZWQoKQogdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXll
clJlcGFpbnQoKQogewogICAgIGJlZ2luUHJvY2Vzc2luZ01lZGlhUGxheWVyQ2FsbGJhY2soKTsK
LSAgICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKICAgICBpZiAoYXV0byogcmVuZGVyZXIgPSB0aGlz
LT5yZW5kZXJlcigpKQogICAgICAgICByZW5kZXJlci0+cmVwYWludCgpOwogICAgIGVuZFByb2Nl
c3NpbmdNZWRpYVBsYXllckNhbGxiYWNrKCk7CkBAIC01MDY0LDE4ICs1MDUyLDYgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllckVuZ2luZVVwZGF0ZWQoKQogICAgIHNjaGVkdWxl
TWVkaWFFbmdpbmVXYXNVcGRhdGVkKCk7CiB9CiAKLXZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bWVk
aWFQbGF5ZXJGaXJzdFZpZGVvRnJhbWVBdmFpbGFibGUoKQotewotICAgIElORk9fTE9HKExPR0lE
RU5USUZJRVIsICJjdXJyZW50IGRpc3BsYXkgbW9kZSA9ICIsIChpbnQpZGlzcGxheU1vZGUoKSk7
Ci0KLSAgICBiZWdpblByb2Nlc3NpbmdNZWRpYVBsYXllckNhbGxiYWNrKCk7Ci0gICAgaWYgKGRp
c3BsYXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZpZGVvKSB7Ci0gICAgICAgIHNldERpc3Bs
YXlNb2RlKFZpZGVvKTsKLSAgICAgICAgbWVkaWFQbGF5ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCgp
OwotICAgIH0KLSAgICBlbmRQcm9jZXNzaW5nTWVkaWFQbGF5ZXJDYWxsYmFjaygpOwotfQotCiB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKCkK
IHsKICAgICBJTkZPX0xPRyhMT0dJREVOVElGSUVSKTsKQEAgLTUwODcsMTAgKzUwNjMsOCBAQCB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyQ2hhcmFjdGVyaXN0aWNDaGFuZ2VkKCkK
ICAgICAgICAgbWFya0NhcHRpb25BbmRTdWJ0aXRsZVRyYWNrc0FzVW5jb25maWd1cmVkKEFmdGVy
RGVsYXkpOwogI2VuZGlmCiAKLSAgICBpZiAocG90ZW50aWFsbHlQbGF5aW5nKCkgJiYgZGlzcGxh
eU1vZGUoKSA9PSBQb3N0ZXJXYWl0aW5nRm9yVmlkZW8pIHsKLSAgICAgICAgc2V0RGlzcGxheU1v
ZGUoVmlkZW8pOworICAgIGlmIChwb3RlbnRpYWxseVBsYXlpbmcoKSkKICAgICAgICAgbWVkaWFQ
bGF5ZXJSZW5kZXJpbmdNb2RlQ2hhbmdlZCgpOwotICAgIH0KIAogICAgIHVwZGF0ZVJlbmRlcmVy
KCk7CiAKQEAgLTUzMzEsNyArNTMwNSw2IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6dXBkYXRl
UGxheVN0YXRlKCkKICAgICBpZiAoc2hvdWxkQmVQbGF5aW5nKSB7CiAgICAgICAgIHNjaGVkdWxl
UGxheWJhY2tDb250cm9sc01hbmFnZXJVcGRhdGUoKTsKIAotICAgICAgICBzZXREaXNwbGF5TW9k
ZShWaWRlbyk7CiAgICAgICAgIGludmFsaWRhdGVDYWNoZWRUaW1lKCk7CiAKICAgICAgICAgaWYg
KHBsYXllclBhdXNlZCkgewpAQCAtNTQ2OCwxMSArNTQ0MSwxMSBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OnVzZXJDYW5jZWxsZWRMb2FkKCkKICNlbmRpZgogCiAgICAgLy8gNCAtIElmIHRoZSBt
ZWRpYSBlbGVtZW50J3MgcmVhZHlTdGF0ZSBhdHRyaWJ1dGUgaGFzIGEgdmFsdWUgZXF1YWwgdG8g
SEFWRV9OT1RISU5HLCBzZXQgdGhlCi0gICAgLy8gZWxlbWVudCdzIG5ldHdvcmtTdGF0ZSBhdHRy
aWJ1dGUgdG8gdGhlIE5FVFdPUktfRU1QVFkgdmFsdWUgYW5kIHF1ZXVlIGEgdGFzayB0byBmaXJl
IGEKLSAgICAvLyBzaW1wbGUgZXZlbnQgbmFtZWQgZW1wdGllZCBhdCB0aGUgZWxlbWVudC4gT3Ro
ZXJ3aXNlLCBzZXQgdGhlIGVsZW1lbnQncyBuZXR3b3JrU3RhdGUKLSAgICAvLyBhdHRyaWJ1dGUg
dG8gdGhlIE5FVFdPUktfSURMRSB2YWx1ZS4KKyAgICAvLyBlbGVtZW50J3MgbmV0d29ya1N0YXRl
IGF0dHJpYnV0ZSB0byB0aGUgTkVUV09SS19FTVBUWSB2YWx1ZSwgc2V0IHRoZSBlbGVtZW50J3Mg
c2hvdyBwb3N0ZXIKKyAgICAvLyBmbGFnIHRvIHRydWUsIGFuZCBmaXJlIGFuIGV2ZW50IG5hbWVk
IGVtcHRpZWQgYXQgdGhlIGVsZW1lbnQuCiAgICAgaWYgKG1fcmVhZHlTdGF0ZSA9PSBIQVZFX05P
VEhJTkcpIHsKICAgICAgICAgbV9uZXR3b3JrU3RhdGUgPSBORVRXT1JLX0VNUFRZOworICAgICAg
ICBzZXRTaG93UG9zdGVyRmxhZyh0cnVlKTsKICAgICAgICAgc2NoZWR1bGVFdmVudChldmVudE5h
bWVzKCkuZW1wdGllZEV2ZW50KTsKICAgICB9CiAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuaAppbmRleCAyNzY0YWEzY2ViMjU4MDlhMGZhMzhlOTM3OTk3MzNhNGZj
ZWMxOTI5Li5kMzdlOTdlOGVhYjAzMzBiOTI5YjUzOWFhYjJkOWVlNTM0MmNhNzY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaApAQCAtNTk5LDEwICs1OTksNiBAQCBwcm90
ZWN0ZWQ6CiAKICAgICB2b2lkIGRpZE1vdmVUb05ld0RvY3VtZW50KERvY3VtZW50JiBvbGREb2N1
bWVudCwgRG9jdW1lbnQmIG5ld0RvY3VtZW50KSBvdmVycmlkZTsKIAotICAgIGVudW0gRGlzcGxh
eU1vZGUgeyBVbmtub3duLCBOb25lLCBQb3N0ZXIsIFBvc3RlcldhaXRpbmdGb3JWaWRlbywgVmlk
ZW8gfTsKLSAgICBEaXNwbGF5TW9kZSBkaXNwbGF5TW9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGlz
cGxheU1vZGU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0RGlzcGxheU1vZGUoRGlzcGxheU1vZGUg
bW9kZSkgeyBtX2Rpc3BsYXlNb2RlID0gbW9kZTsgfQotICAgIAogICAgIGJvb2wgaXNNZWRpYUVs
ZW1lbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBSZW5kZXJQdHI8UmVu
ZGVyRWxlbWVudD4gY3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYsIGNvbnN0IFJl
bmRlclRyZWVQb3NpdGlvbiYpIG92ZXJyaWRlOwpAQCAtNjE1LDYgKzYxMSw5IEBAIHByb3RlY3Rl
ZDoKIAogICAgIHZvaWQgc2NoZWR1bGVFdmVudChjb25zdCBBdG9tU3RyaW5nJik7CiAKKyAgICBi
b29sIHNob3dQb3N0ZXJGbGFnKCkgY29uc3QgeyByZXR1cm4gbV9zaG93UG9zdGVyOyB9CisgICAg
dm9pZCBzZXRTaG93UG9zdGVyRmxhZyhib29sIGZsYWcpIHsgbV9zaG93UG9zdGVyID0gZmxhZzsg
fQorCiBwcml2YXRlOgogICAgIHZvaWQgY3JlYXRlTWVkaWFQbGF5ZXIoKTsKIApAQCAtNjQzLDgg
KzY0Miw2IEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCB2aXNpYmlsaXR5U3RhdGVDaGFuZ2Vk
KCkgZmluYWw7CiAKLSAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRGlzcGxheVN0YXRlKCkgeyB9Ci0g
ICAgCiAgICAgdm9pZCBzZXRSZWFkeVN0YXRlKE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlKTsKICAg
ICB2b2lkIHNldE5ldHdvcmtTdGF0ZShNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlKTsKIApAQCAt
NjcwLDcgKzY2Nyw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzY2hlZHVsZU1lZGlhRW5naW5lV2Fz
VXBkYXRlZCgpOwogICAgIHZvaWQgbWVkaWFFbmdpbmVXYXNVcGRhdGVkKCk7CiAKLSAgICB2b2lk
IG1lZGlhUGxheWVyRmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKCkgZmluYWw7CiAgICAgdm9pZCBt
ZWRpYVBsYXllckNoYXJhY3RlcmlzdGljQ2hhbmdlZCgpIGZpbmFsOwogCiAjaWYgRU5BQkxFKExF
R0FDWV9FTkNSWVBURURfTUVESUEpCkBAIC0xMDM0LDggKzEwMzAsNiBAQCBwcml2YXRlOgogCiAg
ICAgTWVkaWFQbGF5ZXI6OlByZWxvYWQgbV9wcmVsb2FkIHsgUHJlbG9hZDo6QXV0byB9OwogCi0g
ICAgRGlzcGxheU1vZGUgbV9kaXNwbGF5TW9kZSB7IFVua25vd24gfTsKLQogICAgIC8vIENvdW50
ZXIgaW5jcmVtZW50ZWQgd2hpbGUgcHJvY2Vzc2luZyBhIGNhbGxiYWNrIGZyb20gdGhlIG1lZGlh
IHBsYXllciwgc28gd2UgY2FuIGF2b2lkCiAgICAgLy8gY2FsbGluZyB0aGUgbWVkaWEgZW5naW5l
IHJlY3Vyc2l2ZWx5LgogICAgIGludCBtX3Byb2Nlc3NpbmdNZWRpYVBsYXllckNhbGxiYWNrIHsg
MCB9OwpAQCAtMTExMyw2ICsxMTA3LDggQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNTY3J1YmJp
bmdSZW1vdGVseSA6IDE7CiAgICAgYm9vbCBtX3dhaXRpbmdUb0VudGVyRnVsbHNjcmVlbiA6IDE7
CiAKKyAgICBib29sIG1fc2hvd1Bvc3RlciA6IDE7CisKICNpZiBFTkFCTEUoVklERU9fVFJBQ0sp
CiAgICAgYm9vbCBtX3RyYWNrc0FyZVJlYWR5IDogMTsKICAgICBib29sIG1faGF2ZVZpc2libGVU
ZXh0VHJhY2sgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9F
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKaW5k
ZXggMWI2NGZiMjhiY2VjMjAxNjdiNGRlNTU1ZmNiYWNiNWZkNDNjMjVhMi4uODk0NDVmMGUyNjU2
YjBlOWQxY2ZhMjM4NjI2NjJmMGJhN2YwZjU4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCkBAIC0xMDIsNyArMTAyLDYgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50
OjpkaWRBdHRhY2hSZW5kZXJlcnMoKQogewogICAgIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZEF0dGFj
aFJlbmRlcmVycygpOwogCi0gICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CiAgICAgaWYgKHNob3Vs
ZERpc3BsYXlQb3N0ZXJJbWFnZSgpKSB7CiAgICAgICAgIGlmICghbV9pbWFnZUxvYWRlcikKICAg
ICAgICAgICAgIG1faW1hZ2VMb2FkZXIgPSBtYWtlVW5pcXVlPEhUTUxJbWFnZUxvYWRlcj4oKnRo
aXMpOwpAQCAtMTMyLDE3ICsxMzEsMTUgQEAgYm9vbCBIVE1MVmlkZW9FbGVtZW50Ojppc1ByZXNl
bnRhdGlvbkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKSBjb25zdAogdm9pZCBI
VE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1l
LCBjb25zdCBBdG9tU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBpZiAobmFtZSA9PSBwb3N0ZXJBdHRy
KSB7Ci0gICAgICAgIC8vIEZvcmNlIGEgcG9zdGVyIHJlY2FsYyBieSBzZXR0aW5nIG1fZGlzcGxh
eU1vZGUgdG8gVW5rbm93biBkaXJlY3RseSBiZWZvcmUgY2FsbGluZyB1cGRhdGVEaXNwbGF5U3Rh
dGUuCi0gICAgICAgIEhUTUxNZWRpYUVsZW1lbnQ6OnNldERpc3BsYXlNb2RlKFVua25vd24pOwot
ICAgICAgICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKLQogICAgICAgICBpZiAoc2hvdWxkRGlzcGxh
eVBvc3RlckltYWdlKCkpIHsKICAgICAgICAgICAgIGlmICghbV9pbWFnZUxvYWRlcikKICAgICAg
ICAgICAgICAgICBtX2ltYWdlTG9hZGVyID0gbWFrZVVuaXF1ZTxIVE1MSW1hZ2VMb2FkZXI+KCp0
aGlzKTsKICAgICAgICAgICAgIG1faW1hZ2VMb2FkZXItPnVwZGF0ZUZyb21FbGVtZW50SWdub3Jp
bmdQcmV2aW91c0Vycm9yKCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoYXV0
byogcmVuZGVyZXIgPSB0aGlzLT5yZW5kZXJlcigpKQorICAgICAgICAgICAgaWYgKGF1dG8qIHJl
bmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKSkgewogICAgICAgICAgICAgICAgIHJlbmRlcmVyLT5p
bWFnZVJlc291cmNlKCkuc2V0Q2FjaGVkSW1hZ2UobnVsbHB0cik7CisgICAgICAgICAgICAgICAg
cmVuZGVyZXItPnVwZGF0ZUZyb21FbGVtZW50KCk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0K
ICAgICB9CiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKQEAgLTE2MSw3ICsx
NTgsNiBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxp
ZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJpbgogICAgICAgICB9CiAjZW5kaWYKICAgICB9
Ci0KIH0KIAogYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzdXBwb3J0c0Z1bGxzY3JlZW4oSFRNTE1l
ZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUp
IGNvbnN0CkBAIC0yNTEsMzcgKzI0NywzNSBAQCBjb25zdCBBdG9tU3RyaW5nJiBIVE1MVmlkZW9F
bGVtZW50OjppbWFnZVNvdXJjZVVSTCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fZGVmYXVsdFBvc3Rl
clVSTDsKIH0KIAotdm9pZCBIVE1MVmlkZW9FbGVtZW50OjpzZXREaXNwbGF5TW9kZShEaXNwbGF5
TW9kZSBtb2RlKQorYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzaG91bGREaXNwbGF5UG9zdGVySW1h
Z2UoKSBjb25zdAogewotICAgIERpc3BsYXlNb2RlIG9sZE1vZGUgPSBkaXNwbGF5TW9kZSgpOwot
ICAgIFVSTCBwb3N0ZXIgPSBwb3N0ZXJJbWFnZVVSTCgpOworICAgIGlmICghc2hvd1Bvc3RlckZs
YWcoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFwb3N0ZXIuaXNFbXB0eSgp
KSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgYSBwb3N0ZXIgcGF0aCwgYnV0IG9ubHkgc2hvdyBpdCB1
bnRpbCB0aGUgdXNlciB0cmlnZ2VycyBkaXNwbGF5IGJ5IHBsYXlpbmcgb3Igc2Vla2luZyBhbmQg
dGhlCi0gICAgICAgIC8vIG1lZGlhIGVuZ2luZSBoYXMgc29tZXRoaW5nIHRvIGRpc3BsYXkuCi0g
ICAgICAgIGlmIChtb2RlID09IFZpZGVvKSB7Ci0gICAgICAgICAgICBpZiAob2xkTW9kZSAhPSBW
aWRlbyAmJiBwbGF5ZXIoKSkKLSAgICAgICAgICAgICAgICBwbGF5ZXIoKS0+cHJlcGFyZUZvclJl
bmRlcmluZygpOwotICAgICAgICAgICAgaWYgKCFoYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCkpCi0g
ICAgICAgICAgICAgICAgbW9kZSA9IFBvc3RlcldhaXRpbmdGb3JWaWRlbzsKLSAgICAgICAgfQot
ICAgIH0gZWxzZSBpZiAob2xkTW9kZSAhPSBWaWRlbyAmJiBwbGF5ZXIoKSkKLSAgICAgICAgcGxh
eWVyKCktPnByZXBhcmVGb3JSZW5kZXJpbmcoKTsKKyAgICBpZiAocG9zdGVySW1hZ2VVUkwoKS5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIEhUTUxNZWRpYUVsZW1lbnQ6
OnNldERpc3BsYXlNb2RlKG1vZGUpOworICAgIGF1dG8qIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVy
ZXIoKTsKKyAgICBpZiAocmVuZGVyZXIgJiYgcmVuZGVyZXItPmZhaWxlZFRvTG9hZFBvc3Rlcklt
YWdlKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChhdXRvKiByZW5kZXJlciA9
IHRoaXMtPnJlbmRlcmVyKCkpIHsKLSAgICAgICAgaWYgKGRpc3BsYXlNb2RlKCkgIT0gb2xkTW9k
ZSkKLSAgICAgICAgICAgIHJlbmRlcmVyLT51cGRhdGVGcm9tRWxlbWVudCgpOwotICAgIH0KKyAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBIVE1MVmlkZW9FbGVtZW50Ojp1cGRhdGVEaXNwbGF5
U3RhdGUoKQordm9pZCBIVE1MVmlkZW9FbGVtZW50OjptZWRpYVBsYXllckZpcnN0VmlkZW9GcmFt
ZUF2YWlsYWJsZSgpCiB7Ci0gICAgaWYgKHBvc3RlckltYWdlVVJMKCkuaXNFbXB0eSgpKQotICAg
ICAgICBzZXREaXNwbGF5TW9kZShWaWRlbyk7Ci0gICAgZWxzZSBpZiAoZGlzcGxheU1vZGUoKSA8
IFBvc3RlcikKLSAgICAgICAgc2V0RGlzcGxheU1vZGUoUG9zdGVyKTsKKyAgICBJTkZPX0xPRyhM
T0dJREVOVElGSUVSLCAibV9zaG93UG9zdGVyID0gIiwgc2hvd1Bvc3RlckZsYWcoKSk7CisKKyAg
ICBpZiAoc2hvd1Bvc3RlckZsYWcoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW52YWxpZGF0
ZVN0eWxlQW5kTGF5ZXJDb21wb3NpdGlvbigpOworCisgICAgaWYgKGF1dG8gcGxheWVyID0gdGhp
cy0+cGxheWVyKCkpCisgICAgICAgIHBsYXllci0+cHJlcGFyZUZvclJlbmRlcmluZygpOworCisg
ICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKSkKKyAgICAgICAgcmVuZGVy
ZXItPnVwZGF0ZUZyb21FbGVtZW50KCk7CiB9CiAKIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6cGFp
bnRDdXJyZW50RnJhbWVJbkNvbnRleHQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBG
bG9hdFJlY3QmIGRlc3RSZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
VmlkZW9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaApp
bmRleCBlZDkyMTgzZDQ3YmJjM2ViMTIxMDAzM2Y5YmZlYzdiMjZjMDU2ZWJiLi5kZjlhNjQ2Y2I2
MjYxODhiZWUxYWI2M2NhZTc5YTYxYmRhOTc2NjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuaApAQCAtNzYsNyArNzYsNyBAQCBwdWJsaWM6CiAgICAgLy8gU2VlIG1vcmUg
ZGV0YWlscyBhdCBNZWRpYVBsYXllcjo6Y29weVZpZGVvVGV4dHVyZVRvUGxhdGZvcm1UZXh0dXJl
KCkgZGVmaW5lZCBpbiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5oLgogICAgIGJvb2wgY29weVZpZGVvVGV4dHVyZVRvUGxhdGZvcm1UZXh0dXJlKEdyYXBoaWNz
Q29udGV4dEdMT3BlbkdMKiwgUGxhdGZvcm1HTE9iamVjdCB0ZXh0dXJlLCBHQ0dMZW51bSB0YXJn
ZXQsIEdDR0xpbnQgbGV2ZWwsIEdDR0xlbnVtIGludGVybmFsRm9ybWF0LCBHQ0dMZW51bSBmb3Jt
YXQsIEdDR0xlbnVtIHR5cGUsIGJvb2wgcHJlbXVsdGlwbHlBbHBoYSwgYm9vbCBmbGlwWSk7CiAK
LSAgICBib29sIHNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpIGNvbnN0IHsgcmV0dXJuIGRpc3Bs
YXlNb2RlKCkgPT0gUG9zdGVyIHx8IGRpc3BsYXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZp
ZGVvOyB9CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGREaXNwbGF5UG9zdGVySW1hZ2Uo
KSBjb25zdDsKIAogICAgIFVSTCBwb3N0ZXJJbWFnZVVSTCgpIGNvbnN0OwogICAgIFJlbmRlclB0
cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29u
c3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgZmluYWw7CkBAIC0xMjIsMTAgKzEyMiwxMCBAQCBwcml2
YXRlOgogICAgIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3QgZmlu
YWw7CiAgICAgY29uc3QgQXRvbVN0cmluZyYgaW1hZ2VTb3VyY2VVUkwoKSBjb25zdCBmaW5hbDsK
IAotICAgIGJvb2wgaGFzQXZhaWxhYmxlVmlkZW9GcmFtZSgpIGNvbnN0OwotICAgIHZvaWQgdXBk
YXRlRGlzcGxheVN0YXRlKCkgZmluYWw7CiAgICAgdm9pZCBkaWRNb3ZlVG9OZXdEb2N1bWVudChE
b2N1bWVudCYgb2xkRG9jdW1lbnQsIERvY3VtZW50JiBuZXdEb2N1bWVudCkgZmluYWw7Ci0gICAg
dm9pZCBzZXREaXNwbGF5TW9kZShEaXNwbGF5TW9kZSkgZmluYWw7CisKKyAgICBib29sIGhhc0F2
YWlsYWJsZVZpZGVvRnJhbWUoKSBjb25zdDsKKyAgICB2b2lkIG1lZGlhUGxheWVyRmlyc3RWaWRl
b0ZyYW1lQXZhaWxhYmxlKCkgZmluYWw7CiAKICAgICBQbGF0Zm9ybU1lZGlhU2Vzc2lvbjo6TWVk
aWFUeXBlIHByZXNlbnRhdGlvblR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBQbGF0Zm9ybU1l
ZGlhU2Vzc2lvbjo6TWVkaWFUeXBlOjpWaWRlbzsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclZpZGVvLmNwcAppbmRleCBlNGM1ZTc0YzM4ZjUwNDY5YzFjNTc2NzBiNjBmOWM1MDY1
YjMyODAyLi4yNTViZDRiMDdhOWI2NzQ3OTRmYjBiYzgwNjcwMjZlYzliZWIxMGZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5jcHAKQEAgLTE3OSw2ICsxNzksMTEgQEAg
Ym9vbCBSZW5kZXJWaWRlbzo6c2hvdWxkRGlzcGxheVZpZGVvKCkgY29uc3QKICAgICByZXR1cm4g
IXZpZGVvRWxlbWVudCgpLnNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpOwogfQogCitib29sIFJl
bmRlclZpZGVvOjpmYWlsZWRUb0xvYWRQb3N0ZXJJbWFnZSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IGltYWdlUmVzb3VyY2UoKS5lcnJvck9jY3VycmVkKCk7Cit9CisKIHZvaWQgUmVuZGVyVmlkZW86
OnBhaW50UmVwbGFjZWQoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBw
YWludE9mZnNldCkKIHsKICAgICBhdXRvIG1lZGlhUGxheWVyID0gdmlkZW9FbGVtZW50KCkucGxh
eWVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlkZW8u
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5oCmluZGV4IDhlMjVjNjhh
NTNmODliNGExNzBmYjk2NTFiMTg3ZmZiOGFjMGZhYzMuLjJjMTJhNWQ1OTRmZWFhMjIzMjgwNjE5
ZjE4ZGMyOTc2NWQwYjM1YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWRlby5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWRlby5o
CkBAIC01MCw2ICs1MCw3IEBAIHB1YmxpYzoKICAgICBib29sIHJlcXVpcmVzSW1tZWRpYXRlQ29t
cG9zaXRpbmcoKSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkRGlzcGxheVZpZGVvKCkgY29uc3Q7
CisgICAgYm9vbCBmYWlsZWRUb0xvYWRQb3N0ZXJJbWFnZSgpIGNvbnN0OwogCiAgICAgdm9pZCB1
cGRhdGVGcm9tRWxlbWVudCgpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5j
cHAKaW5kZXggOTljNjUwMDZhNDEyMWI5OGViY2M3MjAyYzYyZTY3NzBlZjQzZGNiMi4uYTFjMjI0
MzkyMzM2YzQwYjNmOTlhMzA1ZjhiM2QzM2QwZmU2YzI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmNwcApAQCAtNDMxOCw2ICs0MzE4LDE1IEBAIEV4Y2VwdGlvbk9yPEludGVybmFs
czo6TWVkaWFVc2FnZVN0YXRlPiBJbnRlcm5hbHM6Om1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFF
bGVtCiAjZW5kaWYKIH0KIAorRXhjZXB0aW9uT3I8Ym9vbD4gSW50ZXJuYWxzOjplbGVtZW50U2hv
dWxkRGlzcGxheVBvc3RlckltYWdlKEhUTUxWaWRlb0VsZW1lbnQmIGVsZW1lbnQpIGNvbnN0Cit7
CisjaWYgRU5BQkxFKFZJREVPKQorICAgIHJldHVybiBlbGVtZW50LnNob3VsZERpc3BsYXlQb3N0
ZXJJbWFnZSgpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CisgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciB9OworI2VuZGlmCit9CiAKICNpZiBFTkFC
TEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aAppbmRleCBjNDJiNmM3NmM0Nzc3ZWY4NmMzYjEzMTMyNDBlNGQzNWE1Nzk3OTNlLi41OWMwNWY2
MTgyMDk0ODlkZjU4M2Q3Zjk2YjFhMWE4YzU1MGQwNTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmgKQEAgLTg2MCw2ICs4NjAsOCBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBFeGNlcHRp
b25PcjxNZWRpYVVzYWdlU3RhdGU+IG1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVtZW50Jikg
Y29uc3Q7CiAKKyAgICBFeGNlcHRpb25Pcjxib29sPiBlbGVtZW50U2hvdWxkRGlzcGxheVBvc3Rl
ckltYWdlKEhUTUxWaWRlb0VsZW1lbnQmKSBjb25zdDsKKwogI2lmIEVOQUJMRShWSURFTykKICAg
ICB1c2luZyBQbGF5YmFja0NvbnRyb2xzUHVycG9zZSA9IE1lZGlhRWxlbWVudFNlc3Npb246OlBs
YXliYWNrQ29udHJvbHNQdXJwb3NlOwogICAgIFJlZlB0cjxIVE1MTWVkaWFFbGVtZW50PiBiZXN0
TWVkaWFFbGVtZW50Rm9yU2hvd2luZ1BsYXliYWNrQ29udHJvbHNNYW5hZ2VyKFBsYXliYWNrQ29u
dHJvbHNQdXJwb3NlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCA5MzE2
OGY3MzE5ZTE0ZTU1YjNjZjM1YWNhOWE2NzMzNzNkNzI2ZDc4Li5kYjlkZGViMmE5MTNmNGI2ZDIy
MWZmMDY4MDRhYjk4M2FiZjJkYTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CkBAIC04MzgsNiArODM4LDcgQEAgZW51bSBDb21wb3NpdGluZ1BvbGljeSB7CiAgICAgW0NvbmRp
dGlvbmFsPVZJREVPXSBNZWRpYVNlc3Npb25TdGF0ZSBtZWRpYVNlc3Npb25TdGF0ZShIVE1MTWVk
aWFFbGVtZW50IGVsZW1lbnQpOwogCiAgICAgW0NvbmRpdGlvbmFsPVZJREVPLCBNYXlUaHJvd0V4
Y2VwdGlvbl0gTWVkaWFVc2FnZVN0YXRlIG1lZGlhVXNhZ2VTdGF0ZShIVE1MTWVkaWFFbGVtZW50
IGVsZW1lbnQpOworICAgIFtDb25kaXRpb25hbD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIGJv
b2xlYW4gZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50IGVs
ZW1lbnQpOwogCiAgICAgRE9NU3RyaW5nIG9uZ29pbmdMb2Fkc0Rlc2NyaXB0aW9ucygpOwogICAg
IHZvaWQgc2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZChib29sZWFuIHZh
bHVlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCA5ZjE4NDljNWZjNGI2ZDFlMWZhMWIyNDczMzJjZWExNWU2NzlkYTg1Li5i
YjNjYTVjMTQ3YmQyZTg1ZTBkMzRlYTljYWM3YWM5YjQ2YmUxODNkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTMgQEAKKzIwMjAtMDUtMDUgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+
CisKKyAgICAgICAgUG9zdGVyIHNldCBhZnRlciBwbGF5YmFjayBiZWdpbnMgc2hvdWxkIGJlIGln
bm9yZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
MTQ2NAorCisgICAgICAgIFJldmlld2VkIGJ5IEplciBOb2JsZS4KKworICAgICAgICAqIG1lZGlh
L3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBtZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLmh0bWw6IEFkZGVk
LgorCiAyMDIwLTA1LTA0ICBQZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAog
ICAgICAgICBVbnJldmlld2VkIHRlc3QgZ2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRl
ZC1jb250ZW50L3RoZS12aWRlby1lbGVtZW50L2ludHJpbnNpY19zaXplcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50
aWNzL2VtYmVkZGVkLWNvbnRlbnQvdGhlLXZpZGVvLWVsZW1lbnQvaW50cmluc2ljX3NpemVzLWV4
cGVjdGVkLnR4dAppbmRleCBlZjg3NWY5ZDcyMzZlZjhiMTM2MDYxZTFiNjE0N2FjZjNjZWUyMjMy
Li5jOGI2ZTJiMWQ4MjA1MzQ2Y2U4Y2MxNGNhNDU4NzZiM2NiNTllYWJkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNz
L2VtYmVkZGVkLWNvbnRlbnQvdGhlLXZpZGVvLWVsZW1lbnQvaW50cmluc2ljX3NpemVzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvdGhlLXZpZGVvLWVsZW1lbnQvaW50cmlu
c2ljX3NpemVzLWV4cGVjdGVkLnR4dApAQCAtNSw2ICs1LDYgQEAgc3BlYyByZWZlcmVuY2UKIFBB
U1MgZGVmYXVsdCBvYmplY3Qgc2l6ZSBpcyAzMDB4MTUwIAogUEFTUyBkZWZhdWx0IGhlaWdodCBp
cyBoYWxmIHRoZSB3aWR0aCAKIFBBU1MgZGVmYXVsdCB3aWR0aCBpcyB0d2ljZSB0aGUgaGVpZ2h0
IAotRkFJTCBkZWZhdWx0IG9iamVjdCBzaXplIGFmdGVyIHNyYyBpcyByZW1vdmVkIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICIzMjBweCIgYnV0IGdvdCAiMzAwcHgiCitGQUlMIGRlZmF1bHQgb2Jq
ZWN0IHNpemUgYWZ0ZXIgc3JjIGlzIHJlbW92ZWQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjMw
MHB4IiBidXQgZ290ICIzMjBweCIKIEZBSUwgZGVmYXVsdCBvYmplY3Qgc2l6ZSBhZnRlciBwb3N0
ZXIgaXMgcmVtb3ZlZCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMTAycHgiIGJ1dCBnb3QgIjMw
MHB4IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFm
dGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rl
ci1zZXQtYWZ0ZXItcGxheWJhY2stZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkxMTEzZTY1MGJi
OTIxZGI0MjU4ODIyYzBlOThhNGU4YWU4ZmI0OTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDYgQEAKKworRVZFTlQocGxheWluZykKK0VWRU5UKHBhdXNlKQorRVhQRUNURUQg
KGludGVybmFscy5lbGVtZW50U2hvdWxkRGlzcGxheVBvc3RlckltYWdlKHZpZGVvKSA9PSAnZmFs
c2UnKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRkZmU1MzEzMGVm
NTE5NWU1ZTRmZmRjY2UxNTMxYjdmYjdhYTdiYzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLmh0bWwKQEAgLTAsMCAr
MSwzOCBAQAorCis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5TZXR0aW5nIHBvc3RlciBhZnRl
ciBwbGF5aW5nPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0
PgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4K
KworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGFzeW5jICgpID0+IHsK
KyAgICAgICAgICAgIGZhaWxUZXN0SW4oMTUwMDApOworCisgICAgICAgICAgICBmaW5kTWVkaWFF
bGVtZW50KCk7CisgICAgICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIs
ICJjb250ZW50L3Rlc3QiKTsKKworICAgICAgICAgICAgdmlkZW8ucGxheSgpOworICAgICAgICAg
ICAgYXdhaXQgd2FpdEZvcih2aWRlbywgJ3BsYXlpbmcnKTsKKworICAgICAgICAgICAgdmlkZW8u
cGF1c2UoKTsKKyAgICAgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdwYXVzZScpOworICAg
ICAgICAgICAgCisgICAgICAgICAgICB2aWRlby5wb3N0ZXIgPSAnY29udGVudC9ncmVlbi5wbmcn
OworICAgICAgICAgICAgCisgICAgICAgICAgICBhd2FpdCBzbGVlcEZvcigxMDAwKTsKKyAgICAg
ICAgICAgIAorICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICAg
ICAgdGVzdEV4cGVjdGVkKCdpbnRlcm5hbHMuZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFn
ZSh2aWRlbyknLCBmYWxzZSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgY29u
c29sZVdyaXRlKCJ2aWRlbyBzaG91bGQgbm90IGJlIGJsYW5rIikKKworICAgICAgICAgICAgZW5k
VGVzdCgpOworICAgICAgICB9KTsKKworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cisg
ICAgPHZpZGVvIGNvbnRyb2xzIG11dGVkPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399051</attachid>
            <date>2020-05-11 13:39:37 -0700</date>
            <delta_ts>2020-05-11 15:21:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211464-20200511133937.patch</filename>
            <type>text/plain</type>
            <size>4847</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNDg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjc2MzlkN2JlZmIzMzM5
NjlhYThlZjYyYmYxMzlhN2YwMWY5M2YwMS4uOTc3YTFkODllZjYwYmZjNTQ0YzNmY2I3ZDk1MGIy
NTJjMjAyMzA2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA1LTExICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQg
YWZ0ZXIgcGxheWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzYyNjA1MTE0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRlc3Q6IG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRt
bAorCisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKTogSWdub3JlIGBwb3N0ZXJgIGNo
YW5nZXMgYWZ0ZXIgZmlyc3QgdmlkZW8gZnJhbWUKKyAgICAgICAgaXMgYXZhaWxhYmxlLgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRlKTogRG9u
J3Qgc2V0IG1vZGUgdG8gUG9zdGVyIGFmdGVyIGZpcnN0IHZpZGVvCisgICAgICAgIGZyYW1lIGlz
IGF2YWlsYWJsZS4KKwogMjAyMC0wNS0xMSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtXZWIgQW5pbWF0aW9uc10gRG9jdW1lbnQuZ2V0QW5pbWF0aW9ucygp
IHNob3VsZCBvbmx5IGNvbnNpZGVyIGRvY3VtZW50IGNvbm5lY3Rpb24gYW5kIG5vdCB0aW1lbGlu
ZSBhc3NvY2lhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9F
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKaW5k
ZXggMWI2NGZiMjhiY2VjMjAxNjdiNGRlNTU1ZmNiYWNiNWZkNDNjMjVhMi4uMDk0Yzk1ODgzNjM5
MTU2Y2U1NTlmNWU1NDhiNzZkNWEyMzQ1NWYzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCkBAIC0xMzIsNiArMTMyLDkgQEAgYm9vbCBIVE1MVmlkZW9FbGVtZW50
Ojppc1ByZXNlbnRhdGlvbkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKSBjb25z
dAogdm9pZCBIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWRO
YW1lJiBuYW1lLCBjb25zdCBBdG9tU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBpZiAobmFtZSA9PSBw
b3N0ZXJBdHRyKSB7CisgICAgICAgIGlmIChoYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCkpCisgICAg
ICAgICAgICByZXR1cm47CisKICAgICAgICAgLy8gRm9yY2UgYSBwb3N0ZXIgcmVjYWxjIGJ5IHNl
dHRpbmcgbV9kaXNwbGF5TW9kZSB0byBVbmtub3duIGRpcmVjdGx5IGJlZm9yZSBjYWxsaW5nIHVw
ZGF0ZURpc3BsYXlTdGF0ZS4KICAgICAgICAgSFRNTE1lZGlhRWxlbWVudDo6c2V0RGlzcGxheU1v
ZGUoVW5rbm93bik7CiAgICAgICAgIHVwZGF0ZURpc3BsYXlTdGF0ZSgpOwpAQCAtMTYxLDcgKzE2
NCw2IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbVN0cmluCiAgICAgICAgIH0KICNlbmRpZgogICAgIH0K
LQogfQogCiBib29sIEhUTUxWaWRlb0VsZW1lbnQ6OnN1cHBvcnRzRnVsbHNjcmVlbihIVE1MTWVk
aWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgdmlkZW9GdWxsc2NyZWVuTW9kZSkg
Y29uc3QKQEAgLTI4MCw3ICsyODIsNyBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnVwZGF0ZURp
c3BsYXlTdGF0ZSgpCiB7CiAgICAgaWYgKHBvc3RlckltYWdlVVJMKCkuaXNFbXB0eSgpKQogICAg
ICAgICBzZXREaXNwbGF5TW9kZShWaWRlbyk7Ci0gICAgZWxzZSBpZiAoZGlzcGxheU1vZGUoKSA8
IFBvc3RlcikKKyAgICBlbHNlIGlmIChkaXNwbGF5TW9kZSgpIDwgUG9zdGVyICYmICFoYXNBdmFp
bGFibGVWaWRlb0ZyYW1lKCkpCiAgICAgICAgIHNldERpc3BsYXlNb2RlKFBvc3Rlcik7CiB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5M2Q1MjRkMjIwMzgwYWY2MWZlZjA3MWVkZTBlYzA5NWQ3YTI2MjY5Li5kZTczMTUz
MGI5ZjMzNTM4OWVhNGMyYzQyMjU1NjA2Y2QzNDc4OTQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMjAtMDUtMTEgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAg
ICAgICAgUG9zdGVyIHNldCBhZnRlciBwbGF5YmFjayBiZWdpbnMgc2hvdWxkIGJlIGlnbm9yZWQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTQ2NAor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjI2MDUxMTQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBtZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVy
LXBsYXliYWNrLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEvdmlkZW8tcG9z
dGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sOiBBZGRlZC4KKwogMjAyMC0wNS0xMSAgWW91ZW5u
IEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgWyBpT1Mgd2syIF0gaHR0cC93
cHQvYmVhY29uL2NvcnMvY3Jvc3NvcmlnaW4tYXJyYXlidWZmZXJ2aWV3LW5vLXByZWZsaWdodC5o
dG1sIGlzIGZhaWxpbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0
ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2stZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2
ZGZhOGQ0ZjhlMzBmM2Q4Mzg0MDUyNTVkZTE2N2VmMGMwNTE4NWMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDUgQEAKKworRVZFTlQocGxheWluZykKK0VWRU5UKHBhdXNlKQor
RVhQRUNURUQgKGludGVybmFscy5lbGVtZW50U2hvdWxkRGlzcGxheVBvc3RlckltYWdlKHZpZGVv
KSA9PSAnZmFsc2UnKSBPSworRU5EIE9GIFRFU1QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZGZl
NTMxMzBlZjUxOTVlNWU0ZmZkY2NlMTUzMWI3ZmI3YWE3YmMyCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sCkBA
IC0wLDAgKzEsMzggQEAKKworPGh0bWw+Cis8aGVhZD4KKyAgICA8dGl0bGU+U2V0dGluZyBwb3N0
ZXIgYWZ0ZXIgcGxheWluZzwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgorICAgIDxz
Y3JpcHQ+CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYyAo
KSA9PiB7CisgICAgICAgICAgICBmYWlsVGVzdEluKDE1MDAwKTsKKworICAgICAgICAgICAgZmlu
ZE1lZGlhRWxlbWVudCgpOworICAgICAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgi
dmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisKKyAgICAgICAgICAgIHZpZGVvLnBsYXkoKTsKKyAg
ICAgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdwbGF5aW5nJyk7CisKKyAgICAgICAgICAg
IHZpZGVvLnBhdXNlKCk7CisgICAgICAgICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAncGF1c2Un
KTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdmlkZW8ucG9zdGVyID0gJ2NvbnRlbnQvZ3Jl
ZW4ucG5nJzsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgYXdhaXQgc2xlZXBGb3IoMTAwMCk7
CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAg
ICAgICAgICAgIHRlc3RFeHBlY3RlZCgnaW50ZXJuYWxzLmVsZW1lbnRTaG91bGREaXNwbGF5UG9z
dGVySW1hZ2UodmlkZW8pJywgZmFsc2UpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIGNvbnNvbGVXcml0ZSgidmlkZW8gc2hvdWxkIG5vdCBiZSBibGFuayIpCisKKyAgICAgICAg
ICAgIGVuZFRlc3QoKTsKKyAgICAgICAgfSk7CisKKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorICAgIDx2aWRlbyBjb250cm9scyBtdXRlZD48L3ZpZGVvPgorPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399059</attachid>
            <date>2020-05-11 15:21:21 -0700</date>
            <delta_ts>2020-05-11 15:46:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211464-20200511152120.patch</filename>
            <type>text/plain</type>
            <size>7209</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNDg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjc2MzlkN2JlZmIzMzM5
NjlhYThlZjYyYmYxMzlhN2YwMWY5M2YwMS4uNWVlNTkzMGEwMmI4MTRiODMxZmEzYjU2NjQwOGM2
ODVhMWY5NDI0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw0ICsxLDI1IEBACi0yMDIwLTA1LTExICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisyMDIwLTA1LTExICBFcmljIENhcmxzb24g
IDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIgcGxh
eWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYy
NjA1MTE0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRlc3Q6IG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbAorCisgICAg
ICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxW
aWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKTogSWdub3JlIGBwb3N0ZXJgIGNoYW5nZXMgYWZ0
ZXIgZmlyc3QgdmlkZW8gZnJhbWUKKyAgICAgICAgaXMgYXZhaWxhYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRlKTogRG9uJ3Qgc2V0IG1v
ZGUgdG8gUG9zdGVyIGFmdGVyIGZpcnN0IHZpZGVvCisgICAgICAgIGZyYW1lIGlzIGF2YWlsYWJs
ZS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSBjb25zdCk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5p
ZGw6CisKKzAyMC0wNS0xMSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtXZWIgQW5pbWF0aW9uc10gRG9jdW1lbnQuZ2V0QW5pbWF0aW9ucygpIHNob3VsZCBv
bmx5IGNvbnNpZGVyIGRvY3VtZW50IGNvbm5lY3Rpb24gYW5kIG5vdCB0aW1lbGluZSBhc3NvY2lh
dGlvbgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEx
Njk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAppbmRleCAxYjY0ZmIy
OGJjZWMyMDE2N2I0ZGU1NTVmY2JhY2I1ZmQ0M2MyNWEyLi4wOTRjOTU4ODM2MzkxNTZjZTU1OWY1
ZTU0OGI3NmQ1YTIzNDU1ZjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVu
dC5jcHAKQEAgLTEzMiw2ICsxMzIsOSBAQCBib29sIEhUTUxWaWRlb0VsZW1lbnQ6OmlzUHJlc2Vu
dGF0aW9uQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUpIGNvbnN0CiB2b2lkIEhU
TUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUs
IGNvbnN0IEF0b21TdHJpbmcmIHZhbHVlKQogewogICAgIGlmIChuYW1lID09IHBvc3RlckF0dHIp
IHsKKyAgICAgICAgaWYgKGhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoKSkKKyAgICAgICAgICAgIHJl
dHVybjsKKwogICAgICAgICAvLyBGb3JjZSBhIHBvc3RlciByZWNhbGMgYnkgc2V0dGluZyBtX2Rp
c3BsYXlNb2RlIHRvIFVua25vd24gZGlyZWN0bHkgYmVmb3JlIGNhbGxpbmcgdXBkYXRlRGlzcGxh
eVN0YXRlLgogICAgICAgICBIVE1MTWVkaWFFbGVtZW50OjpzZXREaXNwbGF5TW9kZShVbmtub3du
KTsKICAgICAgICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CkBAIC0xNjEsNyArMTY0LDYgQEAgdm9p
ZCBIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBu
YW1lLCBjb25zdCBBdG9tU3RyaW4KICAgICAgICAgfQogI2VuZGlmCiAgICAgfQotCiB9CiAKIGJv
b2wgSFRNTFZpZGVvRWxlbWVudDo6c3VwcG9ydHNGdWxsc2NyZWVuKEhUTUxNZWRpYUVsZW1lbnRF
bnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3JlZW5Nb2RlKSBjb25zdApAQCAt
MjgwLDcgKzI4Miw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRl
KCkKIHsKICAgICBpZiAocG9zdGVySW1hZ2VVUkwoKS5pc0VtcHR5KCkpCiAgICAgICAgIHNldERp
c3BsYXlNb2RlKFZpZGVvKTsKLSAgICBlbHNlIGlmIChkaXNwbGF5TW9kZSgpIDwgUG9zdGVyKQor
ICAgIGVsc2UgaWYgKGRpc3BsYXlNb2RlKCkgPCBQb3N0ZXIgJiYgIWhhc0F2YWlsYWJsZVZpZGVv
RnJhbWUoKSkKICAgICAgICAgc2V0RGlzcGxheU1vZGUoUG9zdGVyKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDNjYWE4MTBiZjZjZDY4YzJlZGE0OTM2ZmM4NjQ2
OTQzOTY3MWM3MjkuLjVjMzBiOTJjY2RlOWQyNWQwZWZkZjNhYjIzZDM2YzQ4MTQ3MTcxOGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTQzMzcsNiArNDMzNywxNSBAQCBF
eGNlcHRpb25PcjxJbnRlcm5hbHM6Ok1lZGlhVXNhZ2VTdGF0ZT4gSW50ZXJuYWxzOjptZWRpYVVz
YWdlU3RhdGUoSFRNTE1lZGlhRWxlbQogI2VuZGlmCiB9CiAKK0V4Y2VwdGlvbk9yPGJvb2w+IElu
dGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50
JiBlbGVtZW50KSBjb25zdAoreworI2lmIEVOQUJMRShWSURFTykKKyAgICByZXR1cm4gZWxlbWVu
dC5zaG91bGREaXNwbGF5UG9zdGVySW1hZ2UoKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGVs
ZW1lbnQpOworICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKyNl
bmRpZgorfQogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggYTM2ZjA3YTcwYjU4YjMxYjIzMWZjOGI4MDVmN2Fj
MzE3YTI0OTMyOS4uOTg5YTg0OWM0OTBjNTJkMTI1NDJjNzc5OGU0MjJlNWMyYWRlMWZjYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC04NjQsNiArODY0LDggQEAgcHVibGljOgog
ICAgIH07CiAgICAgRXhjZXB0aW9uT3I8TWVkaWFVc2FnZVN0YXRlPiBtZWRpYVVzYWdlU3RhdGUo
SFRNTE1lZGlhRWxlbWVudCYpIGNvbnN0OwogCisgICAgRXhjZXB0aW9uT3I8Ym9vbD4gZWxlbWVu
dFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50JikgY29uc3Q7CisKICNp
ZiBFTkFCTEUoVklERU8pCiAgICAgdXNpbmcgUGxheWJhY2tDb250cm9sc1B1cnBvc2UgPSBNZWRp
YUVsZW1lbnRTZXNzaW9uOjpQbGF5YmFja0NvbnRyb2xzUHVycG9zZTsKICAgICBSZWZQdHI8SFRN
TE1lZGlhRWxlbWVudD4gYmVzdE1lZGlhRWxlbWVudEZvclNob3dpbmdQbGF5YmFja0NvbnRyb2xz
TWFuYWdlcihQbGF5YmFja0NvbnRyb2xzUHVycG9zZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwKaW5kZXggMzRhMmYzM2NlNmNjNTdkMWQxODEzZmQ3ZDRlMzRmNDBlZTE3ZDZiMC4u
N2UwZDk3YWM2YzFjMGE2NDNhYzhlMTVmZDY2NmQ3ZDI1YmJiNjllNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtODQwLDYgKzg0MCw3IEBAIGVudW0gQ29tcG9zaXRpbmdQ
b2xpY3kgewogICAgIFtDb25kaXRpb25hbD1WSURFT10gTWVkaWFTZXNzaW9uU3RhdGUgbWVkaWFT
ZXNzaW9uU3RhdGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKIAogICAgIFtDb25kaXRpb25h
bD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIE1lZGlhVXNhZ2VTdGF0ZSBtZWRpYVVzYWdlU3Rh
dGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKKyAgICBbQ29uZGl0aW9uYWw9VklERU8sIE1h
eVRocm93RXhjZXB0aW9uXSBib29sZWFuIGVsZW1lbnRTaG91bGREaXNwbGF5UG9zdGVySW1hZ2Uo
SFRNTFZpZGVvRWxlbWVudCBlbGVtZW50KTsKIAogICAgIERPTVN0cmluZyBvbmdvaW5nTG9hZHNE
ZXNjcmlwdGlvbnMoKTsKICAgICB2b2lkIHNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmlj
c0VuYWJsZWQoYm9vbGVhbiB2YWx1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTNkNTI0ZDIyMDM4MGFmNjFmZWYwNzFl
ZGUwZWMwOTVkN2EyNjI2OS4uZGU3MzE1MzBiOWYzMzUzODllYTRjMmM0MjI1NTYwNmNkMzQ3ODk0
MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA1LTExICBFcmljIENhcmxzb24gIDxlcmlj
LmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIgcGxheWJhY2sg
YmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNjA1MTE0
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVk
aWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbDogQWRk
ZWQuCisKIDIwMjAtMDUtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFsgaU9TIHdrMiBdIGh0dHAvd3B0L2JlYWNvbi9jb3JzL2Nyb3Nzb3JpZ2luLWFycmF5
YnVmZmVydmlldy1uby1wcmVmbGlnaHQuaHRtbCBpcyBmYWlsaW5nLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNmRmYThkNGY4ZTMwZjNkODM4NDA1MjU1ZGUxNjdlZjBj
MDUxODVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVy
LXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK0VWRU5U
KHBsYXlpbmcpCitFVkVOVChwYXVzZSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuZWxlbWVudFNob3Vs
ZERpc3BsYXlQb3N0ZXJJbWFnZSh2aWRlbykgPT0gJ2ZhbHNlJykgT0sKK0VORCBPRiBURVNUCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXli
YWNrLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXli
YWNrLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZGRmZTUzMTMwZWY1MTk1ZTVlNGZmZGNjZTE1MzFiN2ZiN2Fh
N2JjMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rlci1z
ZXQtYWZ0ZXItcGxheWJhY2suaHRtbApAQCAtMCwwICsxLDM4IEBACisKKzxodG1sPgorPGhlYWQ+
CisgICAgPHRpdGxlPlNldHRpbmcgcG9zdGVyIGFmdGVyIHBsYXlpbmc8L3RpdGxlPgorICAgIDxz
Y3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9bWVkaWEt
ZmlsZS5qcz48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorCisgICAgICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCdsb2FkJywgYXN5bmMgKCkgPT4geworICAgICAgICAgICAgZmFpbFRlc3RJbigx
NTAwMCk7CisKKyAgICAgICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKKyAgICAgICAgICAgIHZp
ZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworCisgICAg
ICAgICAgICB2aWRlby5wbGF5KCk7CisgICAgICAgICAgICBhd2FpdCB3YWl0Rm9yKHZpZGVvLCAn
cGxheWluZycpOworCisgICAgICAgICAgICB2aWRlby5wYXVzZSgpOworICAgICAgICAgICAgYXdh
aXQgd2FpdEZvcih2aWRlbywgJ3BhdXNlJyk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIHZp
ZGVvLnBvc3RlciA9ICdjb250ZW50L2dyZWVuLnBuZyc7CisgICAgICAgICAgICAKKyAgICAgICAg
ICAgIGF3YWl0IHNsZWVwRm9yKDEwMDApOworICAgICAgICAgICAgCisgICAgICAgICAgICBpZiAo
d2luZG93LmludGVybmFscykKKyAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoJ2ludGVybmFs
cy5lbGVtZW50U2hvdWxkRGlzcGxheVBvc3RlckltYWdlKHZpZGVvKScsIGZhbHNlKTsKKyAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoInZpZGVvIHNob3VsZCBu
b3QgYmUgYmxhbmsiKQorCisgICAgICAgICAgICBlbmRUZXN0KCk7CisgICAgICAgIH0pOworCisg
ICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8dmlkZW8gY29udHJvbHMgbXV0ZWQ+
PC92aWRlbz4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399061</attachid>
            <date>2020-05-11 15:46:15 -0700</date>
            <delta_ts>2020-05-12 09:11:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211464-20200511154614.patch</filename>
            <type>text/plain</type>
            <size>7237</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNDg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjc2MzlkN2JlZmIzMzM5
NjlhYThlZjYyYmYxMzlhN2YwMWY5M2YwMS4uNWVlNTkzMGEwMmI4MTRiODMxZmEzYjU2NjQwOGM2
ODVhMWY5NDI0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw0ICsxLDI1IEBACi0yMDIwLTA1LTExICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisyMDIwLTA1LTExICBFcmljIENhcmxzb24g
IDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIgcGxh
eWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYy
NjA1MTE0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRlc3Q6IG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbAorCisgICAg
ICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxW
aWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKTogSWdub3JlIGBwb3N0ZXJgIGNoYW5nZXMgYWZ0
ZXIgZmlyc3QgdmlkZW8gZnJhbWUKKyAgICAgICAgaXMgYXZhaWxhYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRlKTogRG9uJ3Qgc2V0IG1v
ZGUgdG8gUG9zdGVyIGFmdGVyIGZpcnN0IHZpZGVvCisgICAgICAgIGZyYW1lIGlzIGF2YWlsYWJs
ZS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSBjb25zdCk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5p
ZGw6CisKKzAyMC0wNS0xMSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtXZWIgQW5pbWF0aW9uc10gRG9jdW1lbnQuZ2V0QW5pbWF0aW9ucygpIHNob3VsZCBv
bmx5IGNvbnNpZGVyIGRvY3VtZW50IGNvbm5lY3Rpb24gYW5kIG5vdCB0aW1lbGluZSBhc3NvY2lh
dGlvbgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEx
Njk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAppbmRleCAxYjY0ZmIy
OGJjZWMyMDE2N2I0ZGU1NTVmY2JhY2I1ZmQ0M2MyNWEyLi4wOTRjOTU4ODM2MzkxNTZjZTU1OWY1
ZTU0OGI3NmQ1YTIzNDU1ZjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVu
dC5jcHAKQEAgLTEzMiw2ICsxMzIsOSBAQCBib29sIEhUTUxWaWRlb0VsZW1lbnQ6OmlzUHJlc2Vu
dGF0aW9uQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUpIGNvbnN0CiB2b2lkIEhU
TUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUs
IGNvbnN0IEF0b21TdHJpbmcmIHZhbHVlKQogewogICAgIGlmIChuYW1lID09IHBvc3RlckF0dHIp
IHsKKyAgICAgICAgaWYgKGhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoKSkKKyAgICAgICAgICAgIHJl
dHVybjsKKwogICAgICAgICAvLyBGb3JjZSBhIHBvc3RlciByZWNhbGMgYnkgc2V0dGluZyBtX2Rp
c3BsYXlNb2RlIHRvIFVua25vd24gZGlyZWN0bHkgYmVmb3JlIGNhbGxpbmcgdXBkYXRlRGlzcGxh
eVN0YXRlLgogICAgICAgICBIVE1MTWVkaWFFbGVtZW50OjpzZXREaXNwbGF5TW9kZShVbmtub3du
KTsKICAgICAgICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CkBAIC0xNjEsNyArMTY0LDYgQEAgdm9p
ZCBIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBu
YW1lLCBjb25zdCBBdG9tU3RyaW4KICAgICAgICAgfQogI2VuZGlmCiAgICAgfQotCiB9CiAKIGJv
b2wgSFRNTFZpZGVvRWxlbWVudDo6c3VwcG9ydHNGdWxsc2NyZWVuKEhUTUxNZWRpYUVsZW1lbnRF
bnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3JlZW5Nb2RlKSBjb25zdApAQCAt
MjgwLDcgKzI4Miw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRl
KCkKIHsKICAgICBpZiAocG9zdGVySW1hZ2VVUkwoKS5pc0VtcHR5KCkpCiAgICAgICAgIHNldERp
c3BsYXlNb2RlKFZpZGVvKTsKLSAgICBlbHNlIGlmIChkaXNwbGF5TW9kZSgpIDwgUG9zdGVyKQor
ICAgIGVsc2UgaWYgKGRpc3BsYXlNb2RlKCkgPCBQb3N0ZXIgJiYgIWhhc0F2YWlsYWJsZVZpZGVv
RnJhbWUoKSkKICAgICAgICAgc2V0RGlzcGxheU1vZGUoUG9zdGVyKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDNjYWE4MTBiZjZjZDY4YzJlZGE0OTM2ZmM4NjQ2
OTQzOTY3MWM3MjkuLjVjMzBiOTJjY2RlOWQyNWQwZWZkZjNhYjIzZDM2YzQ4MTQ3MTcxOGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTQzMzcsNiArNDMzNywxNSBAQCBF
eGNlcHRpb25PcjxJbnRlcm5hbHM6Ok1lZGlhVXNhZ2VTdGF0ZT4gSW50ZXJuYWxzOjptZWRpYVVz
YWdlU3RhdGUoSFRNTE1lZGlhRWxlbQogI2VuZGlmCiB9CiAKK0V4Y2VwdGlvbk9yPGJvb2w+IElu
dGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50
JiBlbGVtZW50KSBjb25zdAoreworI2lmIEVOQUJMRShWSURFTykKKyAgICByZXR1cm4gZWxlbWVu
dC5zaG91bGREaXNwbGF5UG9zdGVySW1hZ2UoKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGVs
ZW1lbnQpOworICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKyNl
bmRpZgorfQogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggYTM2ZjA3YTcwYjU4YjMxYjIzMWZjOGI4MDVmN2Fj
MzE3YTI0OTMyOS4uOTg5YTg0OWM0OTBjNTJkMTI1NDJjNzc5OGU0MjJlNWMyYWRlMWZjYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC04NjQsNiArODY0LDggQEAgcHVibGljOgog
ICAgIH07CiAgICAgRXhjZXB0aW9uT3I8TWVkaWFVc2FnZVN0YXRlPiBtZWRpYVVzYWdlU3RhdGUo
SFRNTE1lZGlhRWxlbWVudCYpIGNvbnN0OwogCisgICAgRXhjZXB0aW9uT3I8Ym9vbD4gZWxlbWVu
dFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50JikgY29uc3Q7CisKICNp
ZiBFTkFCTEUoVklERU8pCiAgICAgdXNpbmcgUGxheWJhY2tDb250cm9sc1B1cnBvc2UgPSBNZWRp
YUVsZW1lbnRTZXNzaW9uOjpQbGF5YmFja0NvbnRyb2xzUHVycG9zZTsKICAgICBSZWZQdHI8SFRN
TE1lZGlhRWxlbWVudD4gYmVzdE1lZGlhRWxlbWVudEZvclNob3dpbmdQbGF5YmFja0NvbnRyb2xz
TWFuYWdlcihQbGF5YmFja0NvbnRyb2xzUHVycG9zZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwKaW5kZXggMzRhMmYzM2NlNmNjNTdkMWQxODEzZmQ3ZDRlMzRmNDBlZTE3ZDZiMC4u
N2UwZDk3YWM2YzFjMGE2NDNhYzhlMTVmZDY2NmQ3ZDI1YmJiNjllNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtODQwLDYgKzg0MCw3IEBAIGVudW0gQ29tcG9zaXRpbmdQ
b2xpY3kgewogICAgIFtDb25kaXRpb25hbD1WSURFT10gTWVkaWFTZXNzaW9uU3RhdGUgbWVkaWFT
ZXNzaW9uU3RhdGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKIAogICAgIFtDb25kaXRpb25h
bD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIE1lZGlhVXNhZ2VTdGF0ZSBtZWRpYVVzYWdlU3Rh
dGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKKyAgICBbQ29uZGl0aW9uYWw9VklERU8sIE1h
eVRocm93RXhjZXB0aW9uXSBib29sZWFuIGVsZW1lbnRTaG91bGREaXNwbGF5UG9zdGVySW1hZ2Uo
SFRNTFZpZGVvRWxlbWVudCBlbGVtZW50KTsKIAogICAgIERPTVN0cmluZyBvbmdvaW5nTG9hZHNE
ZXNjcmlwdGlvbnMoKTsKICAgICB2b2lkIHNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmlj
c0VuYWJsZWQoYm9vbGVhbiB2YWx1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTNkNTI0ZDIyMDM4MGFmNjFmZWYwNzFl
ZGUwZWMwOTVkN2EyNjI2OS4uZGU3MzE1MzBiOWYzMzUzODllYTRjMmM0MjI1NTYwNmNkMzQ3ODk0
MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA1LTExICBFcmljIENhcmxzb24gIDxlcmlj
LmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIgcGxheWJhY2sg
YmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNjA1MTE0
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVk
aWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbDogQWRk
ZWQuCisKIDIwMjAtMDUtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFsgaU9TIHdrMiBdIGh0dHAvd3B0L2JlYWNvbi9jb3JzL2Nyb3Nzb3JpZ2luLWFycmF5
YnVmZmVydmlldy1uby1wcmVmbGlnaHQuaHRtbCBpcyBmYWlsaW5nLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGI1ZWY1YjYxYjQyM2E2N2IyOWY5ODI1Y2VjMTIyZDQ2
NzE1ZmQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVy
LXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK0VWRU5U
KHBsYXlpbmcpCitFVkVOVChwYXVzZSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuZWxlbWVudFNob3Vs
ZERpc3BsYXlQb3N0ZXJJbWFnZSh2aWRlbykgPT0gJ2ZhbHNlJykgT0sKK0VORCBPRiBURVNUClwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRkZmU1MzEz
MGVmNTE5NWU1ZTRmZmRjY2UxNTMxYjdmYjdhYTdiYzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLmh0bWwKQEAgLTAs
MCArMSwzOCBAQAorCis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5TZXR0aW5nIHBvc3RlciBh
ZnRlciBwbGF5aW5nPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CisgICAgPHNjcmlw
dD4KKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGFzeW5jICgpID0+
IHsKKyAgICAgICAgICAgIGZhaWxUZXN0SW4oMTUwMDApOworCisgICAgICAgICAgICBmaW5kTWVk
aWFFbGVtZW50KCk7CisgICAgICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKTsKKworICAgICAgICAgICAgdmlkZW8ucGxheSgpOworICAgICAg
ICAgICAgYXdhaXQgd2FpdEZvcih2aWRlbywgJ3BsYXlpbmcnKTsKKworICAgICAgICAgICAgdmlk
ZW8ucGF1c2UoKTsKKyAgICAgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8sICdwYXVzZScpOwor
ICAgICAgICAgICAgCisgICAgICAgICAgICB2aWRlby5wb3N0ZXIgPSAnY29udGVudC9ncmVlbi5w
bmcnOworICAgICAgICAgICAgCisgICAgICAgICAgICBhd2FpdCBzbGVlcEZvcigxMDAwKTsKKyAg
ICAgICAgICAgIAorICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAg
ICAgICAgdGVzdEV4cGVjdGVkKCdpbnRlcm5hbHMuZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJ
bWFnZSh2aWRlbyknLCBmYWxzZSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
Y29uc29sZVdyaXRlKCJ2aWRlbyBzaG91bGQgbm90IGJlIGJsYW5rIikKKworICAgICAgICAgICAg
ZW5kVGVzdCgpOworICAgICAgICB9KTsKKworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
CisgICAgPHZpZGVvIGNvbnRyb2xzIG11dGVkPjwvdmlkZW8+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399133</attachid>
            <date>2020-05-12 09:11:09 -0700</date>
            <delta_ts>2020-05-12 11:32:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211464-20200512091108.patch</filename>
            <type>text/plain</type>
            <size>7211</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNDg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjc2MzlkN2JlZmIzMzM5
NjlhYThlZjYyYmYxMzlhN2YwMWY5M2YwMS4uNWVlNTkzMGEwMmI4MTRiODMxZmEzYjU2NjQwOGM2
ODVhMWY5NDI0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw0ICsxLDI1IEBACi0yMDIwLTA1LTExICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisyMDIwLTA1LTExICBFcmljIENhcmxzb24g
IDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIgcGxh
eWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYy
NjA1MTE0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRlc3Q6IG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbAorCisgICAg
ICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxW
aWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKTogSWdub3JlIGBwb3N0ZXJgIGNoYW5nZXMgYWZ0
ZXIgZmlyc3QgdmlkZW8gZnJhbWUKKyAgICAgICAgaXMgYXZhaWxhYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRlKTogRG9uJ3Qgc2V0IG1v
ZGUgdG8gUG9zdGVyIGFmdGVyIGZpcnN0IHZpZGVvCisgICAgICAgIGZyYW1lIGlzIGF2YWlsYWJs
ZS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSBjb25zdCk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5p
ZGw6CisKKzAyMC0wNS0xMSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtXZWIgQW5pbWF0aW9uc10gRG9jdW1lbnQuZ2V0QW5pbWF0aW9ucygpIHNob3VsZCBv
bmx5IGNvbnNpZGVyIGRvY3VtZW50IGNvbm5lY3Rpb24gYW5kIG5vdCB0aW1lbGluZSBhc3NvY2lh
dGlvbgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEx
Njk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAppbmRleCAxYjY0ZmIy
OGJjZWMyMDE2N2I0ZGU1NTVmY2JhY2I1ZmQ0M2MyNWEyLi4wOTRjOTU4ODM2MzkxNTZjZTU1OWY1
ZTU0OGI3NmQ1YTIzNDU1ZjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVu
dC5jcHAKQEAgLTEzMiw2ICsxMzIsOSBAQCBib29sIEhUTUxWaWRlb0VsZW1lbnQ6OmlzUHJlc2Vu
dGF0aW9uQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUpIGNvbnN0CiB2b2lkIEhU
TUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUs
IGNvbnN0IEF0b21TdHJpbmcmIHZhbHVlKQogewogICAgIGlmIChuYW1lID09IHBvc3RlckF0dHIp
IHsKKyAgICAgICAgaWYgKGhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoKSkKKyAgICAgICAgICAgIHJl
dHVybjsKKwogICAgICAgICAvLyBGb3JjZSBhIHBvc3RlciByZWNhbGMgYnkgc2V0dGluZyBtX2Rp
c3BsYXlNb2RlIHRvIFVua25vd24gZGlyZWN0bHkgYmVmb3JlIGNhbGxpbmcgdXBkYXRlRGlzcGxh
eVN0YXRlLgogICAgICAgICBIVE1MTWVkaWFFbGVtZW50OjpzZXREaXNwbGF5TW9kZShVbmtub3du
KTsKICAgICAgICAgdXBkYXRlRGlzcGxheVN0YXRlKCk7CkBAIC0xNjEsNyArMTY0LDYgQEAgdm9p
ZCBIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBu
YW1lLCBjb25zdCBBdG9tU3RyaW4KICAgICAgICAgfQogI2VuZGlmCiAgICAgfQotCiB9CiAKIGJv
b2wgSFRNTFZpZGVvRWxlbWVudDo6c3VwcG9ydHNGdWxsc2NyZWVuKEhUTUxNZWRpYUVsZW1lbnRF
bnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3JlZW5Nb2RlKSBjb25zdApAQCAt
MjgwLDcgKzI4Miw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRl
KCkKIHsKICAgICBpZiAocG9zdGVySW1hZ2VVUkwoKS5pc0VtcHR5KCkpCiAgICAgICAgIHNldERp
c3BsYXlNb2RlKFZpZGVvKTsKLSAgICBlbHNlIGlmIChkaXNwbGF5TW9kZSgpIDwgUG9zdGVyKQor
ICAgIGVsc2UgaWYgKGRpc3BsYXlNb2RlKCkgPCBQb3N0ZXIgJiYgIWhhc0F2YWlsYWJsZVZpZGVv
RnJhbWUoKSkKICAgICAgICAgc2V0RGlzcGxheU1vZGUoUG9zdGVyKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDNjYWE4MTBiZjZjZDY4YzJlZGE0OTM2ZmM4NjQ2
OTQzOTY3MWM3MjkuLjVjMzBiOTJjY2RlOWQyNWQwZWZkZjNhYjIzZDM2YzQ4MTQ3MTcxOGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTQzMzcsNiArNDMzNywxNSBAQCBF
eGNlcHRpb25PcjxJbnRlcm5hbHM6Ok1lZGlhVXNhZ2VTdGF0ZT4gSW50ZXJuYWxzOjptZWRpYVVz
YWdlU3RhdGUoSFRNTE1lZGlhRWxlbQogI2VuZGlmCiB9CiAKK0V4Y2VwdGlvbk9yPGJvb2w+IElu
dGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50
JiBlbGVtZW50KSBjb25zdAoreworI2lmIEVOQUJMRShWSURFTykKKyAgICByZXR1cm4gZWxlbWVu
dC5zaG91bGREaXNwbGF5UG9zdGVySW1hZ2UoKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGVs
ZW1lbnQpOworICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKyNl
bmRpZgorfQogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggYTM2ZjA3YTcwYjU4YjMxYjIzMWZjOGI4MDVmN2Fj
MzE3YTI0OTMyOS4uOTg5YTg0OWM0OTBjNTJkMTI1NDJjNzc5OGU0MjJlNWMyYWRlMWZjYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC04NjQsNiArODY0LDggQEAgcHVibGljOgog
ICAgIH07CiAgICAgRXhjZXB0aW9uT3I8TWVkaWFVc2FnZVN0YXRlPiBtZWRpYVVzYWdlU3RhdGUo
SFRNTE1lZGlhRWxlbWVudCYpIGNvbnN0OwogCisgICAgRXhjZXB0aW9uT3I8Ym9vbD4gZWxlbWVu
dFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50JikgY29uc3Q7CisKICNp
ZiBFTkFCTEUoVklERU8pCiAgICAgdXNpbmcgUGxheWJhY2tDb250cm9sc1B1cnBvc2UgPSBNZWRp
YUVsZW1lbnRTZXNzaW9uOjpQbGF5YmFja0NvbnRyb2xzUHVycG9zZTsKICAgICBSZWZQdHI8SFRN
TE1lZGlhRWxlbWVudD4gYmVzdE1lZGlhRWxlbWVudEZvclNob3dpbmdQbGF5YmFja0NvbnRyb2xz
TWFuYWdlcihQbGF5YmFja0NvbnRyb2xzUHVycG9zZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwKaW5kZXggMzRhMmYzM2NlNmNjNTdkMWQxODEzZmQ3ZDRlMzRmNDBlZTE3ZDZiMC4u
N2UwZDk3YWM2YzFjMGE2NDNhYzhlMTVmZDY2NmQ3ZDI1YmJiNjllNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtODQwLDYgKzg0MCw3IEBAIGVudW0gQ29tcG9zaXRpbmdQ
b2xpY3kgewogICAgIFtDb25kaXRpb25hbD1WSURFT10gTWVkaWFTZXNzaW9uU3RhdGUgbWVkaWFT
ZXNzaW9uU3RhdGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKIAogICAgIFtDb25kaXRpb25h
bD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIE1lZGlhVXNhZ2VTdGF0ZSBtZWRpYVVzYWdlU3Rh
dGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKKyAgICBbQ29uZGl0aW9uYWw9VklERU8sIE1h
eVRocm93RXhjZXB0aW9uXSBib29sZWFuIGVsZW1lbnRTaG91bGREaXNwbGF5UG9zdGVySW1hZ2Uo
SFRNTFZpZGVvRWxlbWVudCBlbGVtZW50KTsKIAogICAgIERPTVN0cmluZyBvbmdvaW5nTG9hZHNE
ZXNjcmlwdGlvbnMoKTsKICAgICB2b2lkIHNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmlj
c0VuYWJsZWQoYm9vbGVhbiB2YWx1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTNkNTI0ZDIyMDM4MGFmNjFmZWYwNzFl
ZGUwZWMwOTVkN2EyNjI2OS4uZGU3MzE1MzBiOWYzMzUzODllYTRjMmM0MjI1NTYwNmNkMzQ3ODk0
MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA1LTExICBFcmljIENhcmxzb24gIDxlcmlj
LmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIgcGxheWJhY2sg
YmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYyNjA1MTE0
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVk
aWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbDogQWRk
ZWQuCisKIDIwMjAtMDUtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFsgaU9TIHdrMiBdIGh0dHAvd3B0L2JlYWNvbi9jb3JzL2Nyb3Nzb3JpZ2luLWFycmF5
YnVmZmVydmlldy1uby1wcmVmbGlnaHQuaHRtbCBpcyBmYWlsaW5nLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MTExM2U2NTBiYjkyMWRiNDI1ODgyMmMwZTk4YTRlOGFl
OGZiNDk4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVy
LXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACisKK0VWRU5U
KHBsYXlpbmcpCitFVkVOVChwYXVzZSkKK0VYUEVDVEVEIChpbnRlcm5hbHMuZWxlbWVudFNob3Vs
ZERpc3BsYXlQb3N0ZXJJbWFnZSh2aWRlbykgPT0gJ2ZhbHNlJykgT0sKK0VORCBPRiBURVNUCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxh
eWJhY2suaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxh
eWJhY2suaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZGZlNTMxMzBlZjUxOTVlNWU0ZmZkY2NlMTUzMWI3ZmI3
YWE3YmMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVy
LXNldC1hZnRlci1wbGF5YmFjay5odG1sCkBAIC0wLDAgKzEsMzggQEAKKworPGh0bWw+Cis8aGVh
ZD4KKyAgICA8dGl0bGU+U2V0dGluZyBwb3N0ZXIgYWZ0ZXIgcGxheWluZzwvdGl0bGU+CisgICAg
PHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz1tZWRp
YS1maWxlLmpzPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisKKyAgICAgICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoJ2xvYWQnLCBhc3luYyAoKSA9PiB7CisgICAgICAgICAgICBmYWlsVGVzdElu
KDE1MDAwKTsKKworICAgICAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworICAgICAgICAgICAg
dmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisKKyAg
ICAgICAgICAgIHZpZGVvLnBsYXkoKTsKKyAgICAgICAgICAgIGF3YWl0IHdhaXRGb3IodmlkZW8s
ICdwbGF5aW5nJyk7CisKKyAgICAgICAgICAgIHZpZGVvLnBhdXNlKCk7CisgICAgICAgICAgICBh
d2FpdCB3YWl0Rm9yKHZpZGVvLCAncGF1c2UnKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAg
dmlkZW8ucG9zdGVyID0gJ2NvbnRlbnQvZ3JlZW4ucG5nJzsKKyAgICAgICAgICAgIAorICAgICAg
ICAgICAgYXdhaXQgc2xlZXBGb3IoMTAwMCk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgnaW50ZXJu
YWxzLmVsZW1lbnRTaG91bGREaXNwbGF5UG9zdGVySW1hZ2UodmlkZW8pJywgZmFsc2UpOworICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgidmlkZW8gc2hvdWxk
IG5vdCBiZSBibGFuayIpCisKKyAgICAgICAgICAgIGVuZFRlc3QoKTsKKyAgICAgICAgfSk7CisK
KyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDx2aWRlbyBjb250cm9scyBtdXRl
ZD48L3ZpZGVvPgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399148</attachid>
            <date>2020-05-12 11:32:23 -0700</date>
            <delta_ts>2020-05-12 13:44:03 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-211464-20200512113223.patch</filename>
            <type>text/plain</type>
            <size>7081</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzdhNjQxNWYwZGE5NTI1
YmUzZmM1ZTAyNTI4Yzk4MDM5MDdhZmJkNC4uOGZjZjkwNTAyYzA3ZjRhNThjMWEyOWNjZDFlYjY5
OTY5YTBiYWFlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA1LTExICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQg
YWZ0ZXIgcGxheWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzYyNjA1MTE0PgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisg
ICAgICAgIFRlc3Q6IG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRtbAor
CisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKTogSWdub3JlIGBwb3N0ZXJgIGNoYW5n
ZXMgYWZ0ZXIgZmlyc3QgdmlkZW8gZnJhbWUKKyAgICAgICAgaXMgYXZhaWxhYmxlLgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudDo6dXBkYXRlRGlzcGxheVN0YXRlKTogU2V0IG1v
ZGUgdG8gVmlkZW8gaWYgdGhlIGZpcnN0IHZpZGVvCisgICAgICAgIGZyYW1lIGlzIGF2YWlsYWJs
ZS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSBjb25zdCk6CisgICAg
ICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5p
ZGw6CisKIDIwMjAtMDUtMTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+
CiAKICAgICAgICAgU3BlY3VsYXRpdmUgZml4IGZvciBjcmFzaCBpbiBTY3JvbGxpbmdUcmVlOjpo
YW5kbGVXaGVlbEV2ZW50KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZp
ZGVvRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuY3Bw
CmluZGV4IDNmMjczZmM1ZjhhNzMxMDQxZThkZDRmNTBhYjQ2YjZkYjc4MWI1YWIuLjE2Y2E0YTMz
MGVhZGVkMWZmMjgyMzczNWJkYTg1YTU5YWY5ZTU2NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmNwcApAQCAtMTMyLDYgKzEzMiw5IEBAIGJvb2wgSFRNTFZpZGVvRWxl
bWVudDo6aXNQcmVzZW50YXRpb25BdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkg
Y29uc3QKIHZvaWQgSFRNTFZpZGVvRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbVN0cmluZyYgdmFsdWUpCiB7CiAgICAgaWYgKG5hbWUg
PT0gcG9zdGVyQXR0cikgeworICAgICAgICBpZiAoaGFzQXZhaWxhYmxlVmlkZW9GcmFtZSgpKQor
ICAgICAgICAgICAgcmV0dXJuOworCiAgICAgICAgIC8vIEZvcmNlIGEgcG9zdGVyIHJlY2FsYyBi
eSBzZXR0aW5nIG1fZGlzcGxheU1vZGUgdG8gVW5rbm93biBkaXJlY3RseSBiZWZvcmUgY2FsbGlu
ZyB1cGRhdGVEaXNwbGF5U3RhdGUuCiAgICAgICAgIEhUTUxNZWRpYUVsZW1lbnQ6OnNldERpc3Bs
YXlNb2RlKFVua25vd24pOwogICAgICAgICB1cGRhdGVEaXNwbGF5U3RhdGUoKTsKQEAgLTE2MSw3
ICsxNjQsNiBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1
YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJpbgogICAgICAgICB9CiAjZW5kaWYKICAg
ICB9Ci0KIH0KIAogYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpzdXBwb3J0c0Z1bGxzY3JlZW4oSFRN
TE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1v
ZGUpIGNvbnN0CkBAIC0yNzgsNyArMjgwLDcgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50OjpzZXRE
aXNwbGF5TW9kZShEaXNwbGF5TW9kZSBtb2RlKQogCiB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnVw
ZGF0ZURpc3BsYXlTdGF0ZSgpCiB7Ci0gICAgaWYgKHBvc3RlckltYWdlVVJMKCkuaXNFbXB0eSgp
KQorICAgIGlmIChwb3N0ZXJJbWFnZVVSTCgpLmlzRW1wdHkoKSB8fCBoYXNBdmFpbGFibGVWaWRl
b0ZyYW1lKCkpCiAgICAgICAgIHNldERpc3BsYXlNb2RlKFZpZGVvKTsKICAgICBlbHNlIGlmIChk
aXNwbGF5TW9kZSgpIDwgUG9zdGVyKQogICAgICAgICBzZXREaXNwbGF5TW9kZShQb3N0ZXIpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDI4MDRiM2Q0MDhiYTQyMTA2YjA4
N2FjNGMyNThlNGZhZTdjZDA4MTguLmIyNzlmNGQ0MmFmMWRkMzgxZTk0NzU3OWYxOGJhOTVlNmQ3
NDU3Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTQzMzQsNiArNDMz
NCwxNSBAQCBFeGNlcHRpb25PcjxJbnRlcm5hbHM6Ok1lZGlhVXNhZ2VTdGF0ZT4gSW50ZXJuYWxz
OjptZWRpYVVzYWdlU3RhdGUoSFRNTE1lZGlhRWxlbQogI2VuZGlmCiB9CiAKK0V4Y2VwdGlvbk9y
PGJvb2w+IEludGVybmFsczo6ZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlk
ZW9FbGVtZW50JiBlbGVtZW50KSBjb25zdAoreworI2lmIEVOQUJMRShWSURFTykKKyAgICByZXR1
cm4gZWxlbWVudC5zaG91bGREaXNwbGF5UG9zdGVySW1hZ2UoKTsKKyNlbHNlCisgICAgVU5VU0VE
X1BBUkFNKGVsZW1lbnQpOworICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJy
b3IgfTsKKyNlbmRpZgorfQogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggZTlmYjFiYjMxZWViZTIwOWQzZTI2
ZjY0NjNlNzJkZDBkYTJmMmZmMS4uZDA5YTc2OTViYTRmODA5MzBlY2IzNzFlNWJkMzc1NWQ4NTUy
Yzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC04NjcsNiArODY3LDggQEAg
cHVibGljOgogICAgIH07CiAgICAgRXhjZXB0aW9uT3I8TWVkaWFVc2FnZVN0YXRlPiBtZWRpYVVz
YWdlU3RhdGUoSFRNTE1lZGlhRWxlbWVudCYpIGNvbnN0OwogCisgICAgRXhjZXB0aW9uT3I8Ym9v
bD4gZWxlbWVudFNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZShIVE1MVmlkZW9FbGVtZW50JikgY29u
c3Q7CisKICNpZiBFTkFCTEUoVklERU8pCiAgICAgdXNpbmcgUGxheWJhY2tDb250cm9sc1B1cnBv
c2UgPSBNZWRpYUVsZW1lbnRTZXNzaW9uOjpQbGF5YmFja0NvbnRyb2xzUHVycG9zZTsKICAgICBS
ZWZQdHI8SFRNTE1lZGlhRWxlbWVudD4gYmVzdE1lZGlhRWxlbWVudEZvclNob3dpbmdQbGF5YmFj
a0NvbnRyb2xzTWFuYWdlcihQbGF5YmFja0NvbnRyb2xzUHVycG9zZSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5pZGwKaW5kZXggMzRhMmYzM2NlNmNjNTdkMWQxODEzZmQ3ZDRlMzRmNDBl
ZTE3ZDZiMC4uN2UwZDk3YWM2YzFjMGE2NDNhYzhlMTVmZDY2NmQ3ZDI1YmJiNjllNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtODQwLDYgKzg0MCw3IEBAIGVudW0gQ29t
cG9zaXRpbmdQb2xpY3kgewogICAgIFtDb25kaXRpb25hbD1WSURFT10gTWVkaWFTZXNzaW9uU3Rh
dGUgbWVkaWFTZXNzaW9uU3RhdGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKIAogICAgIFtD
b25kaXRpb25hbD1WSURFTywgTWF5VGhyb3dFeGNlcHRpb25dIE1lZGlhVXNhZ2VTdGF0ZSBtZWRp
YVVzYWdlU3RhdGUoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKKyAgICBbQ29uZGl0aW9uYWw9
VklERU8sIE1heVRocm93RXhjZXB0aW9uXSBib29sZWFuIGVsZW1lbnRTaG91bGREaXNwbGF5UG9z
dGVySW1hZ2UoSFRNTFZpZGVvRWxlbWVudCBlbGVtZW50KTsKIAogICAgIERPTVN0cmluZyBvbmdv
aW5nTG9hZHNEZXNjcmlwdGlvbnMoKTsKICAgICB2b2lkIHNldENhcHR1cmVFeHRyYU5ldHdvcmtM
b2FkTWV0cmljc0VuYWJsZWQoYm9vbGVhbiB2YWx1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmE5ZGU3NmUyNzBjZjJh
YzczMTIwM2FlMTcxNDY2YjFmNTcwOGVlNi4uYmI0ZGE3YzYxYjgxODFhOTYwYmQ5MzU0N2EzNDU1
OTcwNGMxNmQ5MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA1LTExICBFcmljIENhcmxz
b24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFBvc3RlciBzZXQgYWZ0ZXIg
cGxheWJhY2sgYmVnaW5zIHNob3VsZCBiZSBpZ25vcmVkCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE0NjQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzYyNjA1MTE0PgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
ICogbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2suaHRt
bDogQWRkZWQuCisKIDIwMjAtMDUtMTIgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFtHU3RyZWFtZXJdIEF1ZGlvIG1lc3NhZ2VzIGluIHdlYi53aGF0
c2FwcC5jb20gb25seSBwbGF5IG9uY2UuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXliYWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLXBvc3Rlci1zZXQtYWZ0ZXItcGxheWJhY2stZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjkxMTEzZTY1MGJiOTIxZGI0MjU4ODIyYzBlOThhNGU4YWU4ZmI0OTgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXli
YWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKKworRVZFTlQocGxheWluZykKK0VWRU5U
KHBhdXNlKQorRVhQRUNURUQgKGludGVybmFscy5lbGVtZW50U2hvdWxkRGlzcGxheVBvc3Rlcklt
YWdlKHZpZGVvKSA9PSAnZmFsc2UnKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sIGIvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcG9zdGVyLXNldC1hZnRlci1wbGF5YmFjay5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmRkZmU1MzEzMGVmNTE5NWU1ZTRmZmRjY2UxNTMxYjdmYjdhYTdiYzIKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wb3N0ZXItc2V0LWFmdGVyLXBsYXli
YWNrLmh0bWwKQEAgLTAsMCArMSwzOCBAQAorCis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5T
ZXR0aW5nIHBvc3RlciBhZnRlciBwbGF5aW5nPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz12aWRl
by10ZXN0LmpzPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3Jp
cHQ+CisgICAgPHNjcmlwdD4KKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9h
ZCcsIGFzeW5jICgpID0+IHsKKyAgICAgICAgICAgIGZhaWxUZXN0SW4oMTUwMDApOworCisgICAg
ICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisgICAgICAgICAgICB2aWRlby5zcmMgPSBmaW5k
TWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKworICAgICAgICAgICAgdmlkZW8u
cGxheSgpOworICAgICAgICAgICAgYXdhaXQgd2FpdEZvcih2aWRlbywgJ3BsYXlpbmcnKTsKKwor
ICAgICAgICAgICAgdmlkZW8ucGF1c2UoKTsKKyAgICAgICAgICAgIGF3YWl0IHdhaXRGb3Iodmlk
ZW8sICdwYXVzZScpOworICAgICAgICAgICAgCisgICAgICAgICAgICB2aWRlby5wb3N0ZXIgPSAn
Y29udGVudC9ncmVlbi5wbmcnOworICAgICAgICAgICAgCisgICAgICAgICAgICBhd2FpdCBzbGVl
cEZvcigxMDAwKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5h
bHMpCisgICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCdpbnRlcm5hbHMuZWxlbWVudFNob3Vs
ZERpc3BsYXlQb3N0ZXJJbWFnZSh2aWRlbyknLCBmYWxzZSk7CisgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCJ2aWRlbyBzaG91bGQgbm90IGJlIGJsYW5rIikK
KworICAgICAgICAgICAgZW5kVGVzdCgpOworICAgICAgICB9KTsKKworICAgIDwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+CisgICAgPHZpZGVvIGNvbnRyb2xzIG11dGVkPjwvdmlkZW8+Cis8L2Jv
ZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>