<?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>209094</bug_id>
          
          <creation_ts>2020-03-13 16:42:28 -0700</creation_ts>
          <short_desc>TextTrackBase should validate language before setting m_validBCP47Language</short_desc>
          <delta_ts>2020-03-17 15:45:24 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</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>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1629941</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-13 16:42:28 -0700</bug_when>
    <thetext>TextTrackBase should validate language before setting m_validBCP47Language</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629942</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-13 16:42:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/60439603&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630500</commentid>
    <comment_count>2</comment_count>
      <attachid>393694</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-16 15:38:40 -0700</bug_when>
    <thetext>Created attachment 393694
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630544</commentid>
    <comment_count>3</comment_count>
      <attachid>393706</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-16 16:37:59 -0700</bug_when>
    <thetext>Created attachment 393706
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630759</commentid>
    <comment_count>4</comment_count>
      <attachid>393762</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-17 09:54:24 -0700</bug_when>
    <thetext>Created attachment 393762
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630830</commentid>
    <comment_count>5</comment_count>
      <attachid>393762</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-03-17 11:59:58 -0700</bug_when>
    <thetext>Comment on attachment 393762
Patch

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

&gt; Source/WebCore/testing/Internals.cpp:3776
&gt; +    return String { track.validBCP47Language() };

nit: this could be:

return track.validBCP47Language().string();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630870</commentid>
    <comment_count>6</comment_count>
      <attachid>393762</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-17 13:52:05 -0700</bug_when>
    <thetext>Comment on attachment 393762
Patch

Clearing flags on attachment: 393762

Committed r258587: &lt;https://trac.webkit.org/changeset/258587&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630871</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-17 13:52:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630872</commentid>
    <comment_count>8</comment_count>
      <attachid>393762</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-03-17 13:53:22 -0700</bug_when>
    <thetext>Comment on attachment 393762
Patch

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

&gt; Source/WebCore/html/track/TrackBase.cpp:156
&gt; +        StringBuilder stringBuilder;
&gt; +        stringBuilder.appendLiteral(&quot;The language &apos;&quot;);
&gt; +        stringBuilder.append(language);
&gt; +        stringBuilder.appendLiteral(&quot;&apos; is not a valid BCP 47 language tag.&quot;);
&gt; +        message = stringBuilder.toString();

This should be makeString. No reason to use StringBuilder here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630882</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-17 14:14:13 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #8)
&gt; Comment on attachment 393762 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=393762&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/track/TrackBase.cpp:156
&gt; &gt; +        StringBuilder stringBuilder;
&gt; &gt; +        stringBuilder.appendLiteral(&quot;The language &apos;&quot;);
&gt; &gt; +        stringBuilder.append(language);
&gt; &gt; +        stringBuilder.appendLiteral(&quot;&apos; is not a valid BCP 47 language tag.&quot;);
&gt; &gt; +        message = stringBuilder.toString();
&gt; 
&gt; This should be makeString. No reason to use StringBuilder here.

You&apos;re right, I should have thought of that when I refactored the code. I&apos;ll do that in a follow up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630897</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-17 14:36:06 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630898</commentid>
    <comment_count>11</comment_count>
      <attachid>393790</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-17 14:36:07 -0700</bug_when>
    <thetext>Created attachment 393790
Address post-review comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630909</commentid>
    <comment_count>12</comment_count>
      <attachid>393762</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-03-17 14:57:47 -0700</bug_when>
    <thetext>Comment on attachment 393762
Patch

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

&gt;&gt;&gt; Source/WebCore/html/track/TrackBase.cpp:156
&gt;&gt;&gt; +        message = stringBuilder.toString();
&gt;&gt; 
&gt;&gt; This should be makeString. No reason to use StringBuilder here.
&gt; 
&gt; You&apos;re right, I should have thought of that when I refactored the code. I&apos;ll do that in a follow up.

I know you were just moving code around, and I didn’t mean to come on too strong. Thanks for tweaking it!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630910</commentid>
    <comment_count>13</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-03-17 14:59:57 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #12)
&gt; Comment on attachment 393762 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=393762&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/html/track/TrackBase.cpp:156
&gt; &gt;&gt;&gt; +        message = stringBuilder.toString();
&gt; &gt;&gt; 
&gt; &gt;&gt; This should be makeString. No reason to use StringBuilder here.
&gt; &gt; 
&gt; &gt; You&apos;re right, I should have thought of that when I refactored the code. I&apos;ll do that in a follow up.
&gt; 
&gt; I know you were just moving code around, and I didn’t mean to come on too
&gt; strong. Thanks for tweaking it!

No offense taken, it is a great suggestion!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630934</commentid>
    <comment_count>14</comment_count>
      <attachid>393790</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-17 15:45:22 -0700</bug_when>
    <thetext>Comment on attachment 393790
Address post-review comments

Clearing flags on attachment: 393790

Committed r258606: &lt;https://trac.webkit.org/changeset/258606&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1630935</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-17 15:45:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393694</attachid>
            <date>2020-03-16 15:38:40 -0700</date>
            <delta_ts>2020-03-16 16:37:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209094-20200316153838.patch</filename>
            <type>text/plain</type>
            <size>11793</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjhkZGZmZjY1ZjJhODE1
YjU4OWNhMzYwZmIyYzBjNTcyNmYxZjBlOS4uNGQ4YjU0MWMxN2FmNjYyZTY5MTFjNmRiMTRkMTA2
ZTJlNzAzODljZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTAzLTE2ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFRleHRUcmFja0Jh
c2Ugc2hvdWxkIHZhbGlkYXRlIGxhbmd1YWdlIGJlZm9yZSBzZXR0aW5nIG1fdmFsaWRCQ1A0N0xh
bmd1YWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDkwOTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwNDM5NjAzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgVGVzdDogbWVkaWEvdHJh
Y2svdHJhY2stYmNwLWxhbmd1YWdlLmh0bWwKKworICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRy
YWNrLmlkbDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpUcmFja0Jhc2U6OlRyYWNrQmFzZSk6IERvbid0IHNldCBtX3ZhbGlkQkNQNDdMYW5n
dWFnZSB1bmxlc3MgdGhlIGxhbmd1YWdlIGlzIHZhbGlkLgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpzZXRMYW5ndWFnZSk6IENsZWFyIG1fdmFsaWRCQ1A0N0xhbmd1YWdlIGlmIHRoZSBs
YW5ndWFnZSBpcyBpbnZhbGlkLiAKKyAgICAgICAgUmVzdHJ1Y3R1cmUgdGhlIGNvZGUgdG8gdXNl
IGVhcmx5IHJldHVybnMuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnZhbGlkQkNQNDdM
YW5ndWFnZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC90cmFjay9UcmFja0Jhc2Uu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6dmFsaWRCQ1A0N0xhbmd1YWdlIGNvbnN0
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbHM6OnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UpOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIwLTAzLTEy
ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IHdpbGRj
YXJkIGJlaGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAppbmRleCA4OTZjOTRjZjNhZmM4YWE2Mzg4ODg4NWQ1
Yjk0N2IwYjAxMTE1ZjBkLi40YjE2ZTlkNzI5ZTI2MDgzNTQ3MzFjM2Q3MGI0OGNmOTZiYmU2ODNj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaWRsCkBAIC0yOCw2ICsyOCw3
IEBAIGVudW0gVGV4dFRyYWNrS2luZCB7ICJzdWJ0aXRsZXMiLCAiY2FwdGlvbnMiLCAiZGVzY3Jp
cHRpb25zIiwgImNoYXB0ZXJzIiwgIm1ldGFkCiAKIFsKICAgICBDb25kaXRpb25hbD1WSURFT19U
UkFDSywKKyAgICBFeHBvcnRUb1dyYXBwZWRGdW5jdGlvbiwKICAgICBHZW5lcmF0ZUlzUmVhY2hh
YmxlPUltcGxFbGVtZW50Um9vdCwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbiwKICAgICBTa2lw
VlRhYmxlVmFsaWRhdGlvbiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VHJhY2tCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcApp
bmRleCA2ZjIxMDdiOWUxZDU1NzkwY2E3MDRhNDUwM2NkYmU3NTA3MzQxODJlLi5lZWMwYWZhZTEw
ZTlkMzI3Zjk4N2VlNGY3ZDI1MmQyZjcxZDIzZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCkBAIC0zOCw2ICszOCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
c3RhdGljIGludCBzX3VuaXF1ZUlkID0gMDsKIAorc3RhdGljIGJvb2wgaXNWYWxpZEJDUDQ3TGFu
Z3VhZ2VUYWcoY29uc3QgU3RyaW5nJik7CisKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKIHN0
YXRpYyBSZWZQdHI8TG9nZ2VyPiYgbnVsbExvZ2dlcigpCiB7CkBAIC01MSw5ICs1MywxMSBAQCBU
cmFja0Jhc2U6OlRyYWNrQmFzZShUeXBlIHR5cGUsIGNvbnN0IEF0b21TdHJpbmcmIGlkLCBjb25z
dCBBdG9tU3RyaW5nJiBsYWJlbCwgYwogICAgICwgbV9pZChpZCkKICAgICAsIG1fbGFiZWwobGFi
ZWwpCiAgICAgLCBtX2xhbmd1YWdlKGxhbmd1YWdlKQotICAgICwgbV92YWxpZEJDUDQ3TGFuZ3Vh
Z2UobGFuZ3VhZ2UpCiB7CiAgICAgQVNTRVJUKHR5cGUgIT0gQmFzZVRyYWNrKTsKKyAgICBpZiAo
aXNWYWxpZEJDUDQ3TGFuZ3VhZ2VUYWcobGFuZ3VhZ2UpKQorICAgICAgICBtX3ZhbGlkQkNQNDdM
YW5ndWFnZSA9IGxhbmd1YWdlOworCiAgICAgbV90eXBlID0gdHlwZTsKIAogI2lmICFSRUxFQVNF
X0xPR19ESVNBQkxFRApAQCAtMTI5LDI4ICsxMzMsMzAgQEAgc3RhdGljIGJvb2wgaXNWYWxpZEJD
UDQ3TGFuZ3VhZ2VUYWcoY29uc3QgU3RyaW5nJiBsYW5ndWFnZVRhZykKICAgICAKIHZvaWQgVHJh
Y2tCYXNlOjpzZXRMYW5ndWFnZShjb25zdCBBdG9tU3RyaW5nJiBsYW5ndWFnZSkKIHsKLSAgICBp
ZiAoIWxhbmd1YWdlLmlzRW1wdHkoKSAmJiAhaXNWYWxpZEJDUDQ3TGFuZ3VhZ2VUYWcobGFuZ3Vh
Z2UpKSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlOwotICAgICAgICBpZiAobGFuZ3VhZ2UuY29u
dGFpbnMoKFVDaGFyKSdcMCcpKQotICAgICAgICAgICAgbWVzc2FnZSA9ICJUaGUgbGFuZ3VhZ2Ug
Y29udGFpbnMgYSBudWxsIGNoYXJhY3RlciBhbmQgaXMgbm90IGEgdmFsaWQgQkNQIDQ3IGxhbmd1
YWdlIHRhZy4iX3M7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgU3RyaW5nQnVpbGRlciBz
dHJpbmdCdWlsZGVyOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJU
aGUgbGFuZ3VhZ2UgJyIpOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQobGFuZ3Vh
Z2UpOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCInIGlzIG5vdCBh
IHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIik7Ci0gICAgICAgICAgICBtZXNzYWdlID0gc3Ry
aW5nQnVpbGRlci50b1N0cmluZygpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChhdXRvIGVsZW1l
bnQgPSB0aGlzLT5lbGVtZW50KCkpCi0gICAgICAgICAgICBlbGVtZW50LT5kb2N1bWVudCgpLmFk
ZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlJlbmRlcmluZywgTWVzc2FnZUxldmVsOjpX
YXJuaW5nLCBtZXNzYWdlKTsKLSAgICB9IGVsc2UKLSAgICAgICAgbV92YWxpZEJDUDQ3TGFuZ3Vh
Z2UgPSBsYW5ndWFnZTsKLSAgICAKICAgICBtX2xhbmd1YWdlID0gbGFuZ3VhZ2U7Ci19CisgICAg
aWYgKGxhbmd1YWdlLmlzRW1wdHkoKSB8fCBpc1ZhbGlkQkNQNDdMYW5ndWFnZVRhZyhsYW5ndWFn
ZSkpIHsKKyAgICAgICAgbV92YWxpZEJDUDQ3TGFuZ3VhZ2UgPSBsYW5ndWFnZTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KIAotQXRvbVN0cmluZyBUcmFja0Jhc2U6OnZhbGlkQkNQNDdMYW5ndWFn
ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdmFsaWRCQ1A0N0xhbmd1YWdlOworICAgIG1fdmFs
aWRCQ1A0N0xhbmd1YWdlID0gZW1wdHlBdG9tKCk7CisKKyAgICBhdXRvIGVsZW1lbnQgPSB0aGlz
LT5lbGVtZW50KCk7CisgICAgaWYgKCFlbGVtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBT
dHJpbmcgbWVzc2FnZTsKKyAgICBpZiAobGFuZ3VhZ2UuY29udGFpbnMoKFVDaGFyKSdcMCcpKQor
ICAgICAgICBtZXNzYWdlID0gIlRoZSBsYW5ndWFnZSBjb250YWlucyBhIG51bGwgY2hhcmFjdGVy
IGFuZCBpcyBub3QgYSB2YWxpZCBCQ1AgNDcgbGFuZ3VhZ2UgdGFnLiJfczsKKyAgICBlbHNlIHsK
KyAgICAgICAgU3RyaW5nQnVpbGRlciBzdHJpbmdCdWlsZGVyOworICAgICAgICBzdHJpbmdCdWls
ZGVyLmFwcGVuZExpdGVyYWwoIlRoZSBsYW5ndWFnZSAnIik7CisgICAgICAgIHN0cmluZ0J1aWxk
ZXIuYXBwZW5kKGxhbmd1YWdlKTsKKyAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFs
KCInIGlzIG5vdCBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIik7CisgICAgICAgIG1lc3Nh
Z2UgPSBzdHJpbmdCdWlsZGVyLnRvU3RyaW5nKCk7CisgICAgfQorCisgICAgZWxlbWVudC0+ZG9j
dW1lbnQoKS5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpSZW5kZXJpbmcsIE1lc3Nh
Z2VMZXZlbDo6V2FybmluZywgbWVzc2FnZSk7CiB9CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCmluZGV4IDcyODk3OWI3OTdhZDA3
ZjVmZDU5NDU1NTc3NjA0ZGRjYjE4MzllYzUuLjBjMmVjZjU1M2U2NjBjNzVjNjhjODQ1MWVmZWVj
YzE0OTFkMmVhY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tC
YXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaApAQCAtNTks
NyArNTksNyBAQCBwdWJsaWM6CiAgICAgQXRvbVN0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJu
IG1fbGFiZWw7IH0KICAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21TdHJpbmcmIGxhYmVsKSB7
IG1fbGFiZWwgPSBsYWJlbDsgfQogCi0gICAgQXRvbVN0cmluZyB2YWxpZEJDUDQ3TGFuZ3VhZ2Uo
KSBjb25zdDsKKyAgICBBdG9tU3RyaW5nIHZhbGlkQkNQNDdMYW5ndWFnZSgpIGNvbnN0IHsgcmV0
dXJuIG1fdmFsaWRCQ1A0N0xhbmd1YWdlOyB9CiAgICAgQXRvbVN0cmluZyBsYW5ndWFnZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbGFuZ3VhZ2U7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0TGFuZ3VhZ2Uo
Y29uc3QgQXRvbVN0cmluZyYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5k
ZXggZThkODRjNDE4NWRlMDQyZTJkZDlmZDY3YzE0OGQ3ZmY5N2E3YTg5My4uOWI0MGViY2I1NjJl
YzVmOWY2YTdlNjBjMDkxYWQ0OTVmMTljNzA1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmNwcApAQCAtMzc3MSw2ICszNzcxLDE1IEBAIFJlZlB0cjxUZXh0VHJhY2tDdWVHZW5lcmlj
PiBJbnRlcm5hbHM6OmNyZWF0ZUdlbmVyaWNDdWUoZG91YmxlIHN0YXJ0VGltZSwgZG91YmxlCiB9
CiAjZW5kaWYKIAorRXhjZXB0aW9uT3I8U3RyaW5nPiBJbnRlcm5hbHM6OnRleHRUcmFja0JDUDQ3
TGFuZ3VhZ2UoVGV4dFRyYWNrJiB0cmFjaykKK3sKKyNpZiBFTkFCTEUoVklERU9fVFJBQ0spCisg
ICAgcmV0dXJuIFN0cmluZyB7IHRyYWNrLnZhbGlkQkNQNDdMYW5ndWFnZSgpIH07CisjZWxzZQor
ICAgIHJldHVybiBTdHJpbmcgeyBlbXB0eVN0cmluZygpIH07CisjZW5kaWYKK30KKwogI2lmIEVO
QUJMRShWSURFTykKIAogUmVmPFRpbWVSYW5nZXM+IEludGVybmFsczo6Y3JlYXRlVGltZVJhbmdl
cyhGbG9hdDMyQXJyYXkmIHN0YXJ0VGltZXMsIEZsb2F0MzJBcnJheSYgZW5kVGltZXMpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCA0NDJhN2ZmNTUyZDVjNWYxNmY4ZjEzN2M5N2Nj
NzY0YThiZjY4NzU0Li41ZTNiNTZiNTE1ZDU5MGI4YjQ1NDRiMjRhYTdiZGE4NGQ4MGUxYjU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTU5NSw2ICs1OTUsNyBAQCBwdWJsaWM6
CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIFJlZlB0cjxUZXh0VHJhY2tDdWVHZW5lcmlj
PiBjcmVhdGVHZW5lcmljQ3VlKGRvdWJsZSBzdGFydFRpbWUsIGRvdWJsZSBlbmRUaW1lLCBTdHJp
bmcgdGV4dCk7CiAjZW5kaWYKKyAgICBFeGNlcHRpb25PcjxTdHJpbmc+IHRleHRUcmFja0JDUDQ3
TGFuZ3VhZ2UoVGV4dFRyYWNrJik7CiAKICNpZiBFTkFCTEUoVklERU8pCiAgICAgUmVmPFRpbWVS
YW5nZXM+IGNyZWF0ZVRpbWVSYW5nZXMoRmxvYXQzMkFycmF5JiBzdGFydFRpbWVzLCBGbG9hdDMy
QXJyYXkmIGVuZFRpbWVzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCBj
ZTc4ZmY0OTc1Y2E2ODg3ODE2ODkxNTY3OTQ4NGZlMDEyNjA4ODYzLi5hMTc0Mzg4NmQ0ZGZmZmIw
NWY1YjY3MTY2OGFhYjZkMTBhNWVhZWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aWRsCkBAIC01ODcsNiArNTg3LDcgQEAgZW51bSBDb21wb3NpdGluZ1BvbGljeSB7CiAgICAgW0Nv
bmRpdGlvbmFsPVZJREVPX1RSQUNLLCBNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBzZXRQcmltYXJ5
QXVkaW9UcmFja0xhbmd1YWdlT3ZlcnJpZGUoRE9NU3RyaW5nIGxhbmd1YWdlKTsKICAgICBbQ29u
ZGl0aW9uYWw9VklERU9fVFJBQ0ssIE1heVRocm93RXhjZXB0aW9uXSB2b2lkIHNldENhcHRpb25E
aXNwbGF5TW9kZShET01TdHJpbmcgbW9kZSk7CiAgICAgW0NvbmRpdGlvbmFsPVZJREVPX1RSQUNL
XSBUZXh0VHJhY2tDdWVHZW5lcmljIGNyZWF0ZUdlbmVyaWNDdWUoZG91YmxlIHN0YXJ0VGltZSwg
ZG91YmxlIGVuZFRpbWUsIERPTVN0cmluZyB0ZXh0KTsKKyAgICBbQ29uZGl0aW9uYWw9VklERU9f
VFJBQ0ssIE1heVRocm93RXhjZXB0aW9uXSBET01TdHJpbmcgdGV4dFRyYWNrQkNQNDdMYW5ndWFn
ZShUZXh0VHJhY2sgdHJhY2spOwogCiAgICAgW0NvbmRpdGlvbmFsPVZJREVPXSBUaW1lUmFuZ2Vz
IGNyZWF0ZVRpbWVSYW5nZXMoRmxvYXQzMkFycmF5IHN0YXJ0VGltZXMsIEZsb2F0MzJBcnJheQog
ICAgICBlbmRUaW1lcyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODE3ZTc5MTc4ZWZkOTZiYzRjN2EzNGRkM2NiM2I3ZWQx
YzZjMmY4Ni4uNGVhZTIyMTQ4YzJjZmJhODIxYWY2Nzk4MTgyMjc2MWE4MTMzZmZmMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDIwLTAzLTE2ICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25A
YXBwbGUuY29tPgorCisgICAgICAgIFRleHRUcmFja0Jhc2Ugc2hvdWxkIHZhbGlkYXRlIGxhbmd1
YWdlIGJlZm9yZSBzZXR0aW5nIG1fdmFsaWRCQ1A0N0xhbmd1YWdlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDkwOTQKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzYwNDM5NjAzPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogbWVkaWEvdHJhY2svdHJhY2stYmNwLWxhbmd1YWdlLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogbWVkaWEvdHJhY2svdHJhY2stYmNwLWxhbmd1YWdlLmh0bWw6IEFk
ZGVkLgorCiAyMDIwLTAzLTEyICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAog
ICAgICAgICBBY2N1cmF0ZSBzdHlsZSBpbnZhbGlkYXRpb24gZm9yIHVzZXIgYWN0aW9uIHBzZXVk
byBjbGFzc2VzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1iY3At
bGFuZ3VhZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stYmNw
LWxhbmd1YWdlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMWVjMDNkNmRkNTczYjVmZWI5Nzlj
NDMyY2I4MDI2NWViYjlmM2EzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dHJhY2svdHJhY2stYmNwLWxhbmd1YWdlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE5IEBACitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgNDk6IFRoZSBsYW5ndWFnZSAnLXNsJyBpcyBub3QgYSB2YWxp
ZCBCQ1AgNDcgbGFuZ3VhZ2UgdGFnLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBUaGUgbGFu
Z3VhZ2UgJ3poSGFudCcgaXMgbm90IGEgdmFsaWQgQkNQIDQ3IGxhbmd1YWdlIHRhZy4KK1Rlc3Qg
dGhhdCB0aGUgaW50ZXJuYWwgQkNQIC4KKworCitFWFBFQ1RFRCAoaW50ZXJuYWxzLnRleHRUcmFj
a0JDUDQ3TGFuZ3VhZ2UodHJhY2sxLnRyYWNrKSA9PSAnemgnKSBPSworRVhQRUNURUQgKHRyYWNr
MS50cmFjay5sYW5ndWFnZSA9PSAnemgnKSBPSworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJh
Y2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykgPT0gJ3poLUhhbnQnKSBPSworRVhQRUNURUQg
KHRyYWNrMS50cmFjay5sYW5ndWFnZSA9PSAnemgtSGFudCcpIE9LCitFWFBFQ1RFRCAoaW50ZXJu
YWxzLnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UodHJhY2sxLnRyYWNrKSA9PSAnJykgT0sKK0VYUEVD
VEVEICh0cmFjazEudHJhY2subGFuZ3VhZ2UgPT0gJ3poSGFudCcpIE9LCitFWFBFQ1RFRCAoaW50
ZXJuYWxzLnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UodHJhY2sxLnRyYWNrKSA9PSAnemgtY21uLUhh
bnMtQ04nKSBPSworRVhQRUNURUQgKHRyYWNrMS50cmFjay5sYW5ndWFnZSA9PSAnemgtY21uLUhh
bnMtQ04nKSBPSworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRy
YWNrMi50cmFjaykgPT0gJycpIE9LCitFWFBFQ1RFRCAodHJhY2syLnRyYWNrLmxhbmd1YWdlID09
ICctc2wnKSBPSworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRy
YWNrMi50cmFjaykgPT0gJ3NsLXJvemFqLWJpc2tlJykgT0sKK0VYUEVDVEVEICh0cmFjazIudHJh
Y2subGFuZ3VhZ2UgPT0gJ3NsLXJvemFqLWJpc2tlJykgT0sKK0VORCBPRiBURVNUCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS5odG1sIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stYmNwLWxhbmd1YWdlLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTRlZDkyODMyYzMwMTQzNTY2OWZmZGJiNGY4MzA0YWZiMDRjMGFhNAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS5odG1sCkBA
IC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisKKyAgICA8dGl0bGU+QkNQ
IExhbmd1YWdlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0uLi9tZWRpYS1maWxlLmpzPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPS4uL3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CisKKyAgICA8
c2NyaXB0PgorICAgICAgICB2YXIgdGVzdCA9IDA7CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgIHdp
bmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBm
aW5kTWVkaWFFbGVtZW50KCk7CisKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiaW50ZXJuYWxz
LnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UodHJhY2sxLnRyYWNrKSIsICJ6aCIpOworICAgICAgICAg
ICAgdGVzdEV4cGVjdGVkKCJ0cmFjazEudHJhY2subGFuZ3VhZ2UiLCAiemgiKTsKKworICAgICAg
ICAgICAgdHJhY2sxLnNldEF0dHJpYnV0ZSgic3JjbGFuZyIsICJ6aC1IYW50Iik7CisgICAgICAg
ICAgICB0ZXN0RXhwZWN0ZWQoImludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNr
MS50cmFjaykiLCAiemgtSGFudCIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJ0cmFjazEu
dHJhY2subGFuZ3VhZ2UiLCAiemgtSGFudCIpOworCisgICAgICAgICAgICAvLyBTZXQgdG8gaW52
YWxpZCBjb2RlIChjb3VudHJ5IGNvZGUgbXVzdCBiZSA8PSAzKQorICAgICAgICAgICAgdHJhY2sx
LnNldEF0dHJpYnV0ZSgic3JjbGFuZyIsICJ6aEhhbnQiKTsKKyAgICAgICAgICAgIHRlc3RFeHBl
Y3RlZCgiaW50ZXJuYWxzLnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UodHJhY2sxLnRyYWNrKSIsICIi
KTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidHJhY2sxLnRyYWNrLmxhbmd1YWdlIiwgInpo
SGFudCIpOworCisgICAgICAgICAgICB0cmFjazEuc2V0QXR0cmlidXRlKCJzcmNsYW5nIiwgInpo
LWNtbi1IYW5zLUNOIik7CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImludGVybmFscy50ZXh0
VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykiLCAiemgtY21uLUhhbnMtQ04iKTsKKyAg
ICAgICAgICAgIHRlc3RFeHBlY3RlZCgidHJhY2sxLnRyYWNrLmxhbmd1YWdlIiwgInpoLWNtbi1I
YW5zLUNOIik7CisKKyAgICAgICAgICAgIC8vIDx0cmFjaz4gc3JjbGFuZyBhdHRyaWJ1dGUgaXMg
aW52YWxpZCAoaW52YWxpZCBmaXJzdCBjaGFyYWN0ZXIpCisgICAgICAgICAgICB0ZXN0RXhwZWN0
ZWQoImludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMi50cmFjaykiLCAiIik7
CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInRyYWNrMi50cmFjay5sYW5ndWFnZSIsICItc2wi
KTsKKworICAgICAgICAgICAgdHJhY2syLnNldEF0dHJpYnV0ZSgic3JjbGFuZyIsICJzbC1yb3ph
ai1iaXNrZSIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpbnRlcm5hbHMudGV4dFRyYWNr
QkNQNDdMYW5ndWFnZSh0cmFjazIudHJhY2spIiwgInNsLXJvemFqLWJpc2tlIik7CisgICAgICAg
ICAgICB0ZXN0RXhwZWN0ZWQoInRyYWNrMi50cmFjay5sYW5ndWFnZSIsICJzbC1yb3phai1iaXNr
ZSIpOworCisgICAgICAgICAgICBlbmRUZXN0KCk7CisgICAgICAgIH0pOworCisgICAgPC9zY3Jp
cHQ+CisKKyAgICA8Ym9keT4KKyAgICAgICAgPHA+VGVzdCB0aGF0IFRleHRUcmFja0Jhc2UudmFs
aWRCQ1A0N0xhbmd1YWdlIGlzIHNldCBhbmQgcmVzZXQgY29ycmVjdGx5LjwvcD4KKyAgICAgICAg
PHZpZGVvIHdpZHRoPSI1MDAiIGhlaWdodD0iMzAwIiBjb250cm9scz4KKyAgICAgICAgICAgIDx0
cmFjayBpZD0idHJhY2sxIiBraW5kPSJjYXB0aW9ucyIgc3JjbGFuZz0iemgiIGxhYmVsPSIiIC8+
CisgICAgICAgICAgICA8dHJhY2sgaWQ9InRyYWNrMiIga2luZD0iY2FwdGlvbnMiIHNyY2xhbmc9
Ii1zbCIgLz4KKyAgICAgICAgPC92aWRlbz4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CisK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393706</attachid>
            <date>2020-03-16 16:37:59 -0700</date>
            <delta_ts>2020-03-17 09:54:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209094-20200316163758.patch</filename>
            <type>text/plain</type>
            <size>12133</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjhkZGZmZjY1ZjJhODE1
YjU4OWNhMzYwZmIyYzBjNTcyNmYxZjBlOS4uNGQ4YjU0MWMxN2FmNjYyZTY5MTFjNmRiMTRkMTA2
ZTJlNzAzODljZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTAzLTE2ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFRleHRUcmFja0Jh
c2Ugc2hvdWxkIHZhbGlkYXRlIGxhbmd1YWdlIGJlZm9yZSBzZXR0aW5nIG1fdmFsaWRCQ1A0N0xh
bmd1YWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDkwOTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwNDM5NjAzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgVGVzdDogbWVkaWEvdHJh
Y2svdHJhY2stYmNwLWxhbmd1YWdlLmh0bWwKKworICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRy
YWNrLmlkbDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpUcmFja0Jhc2U6OlRyYWNrQmFzZSk6IERvbid0IHNldCBtX3ZhbGlkQkNQNDdMYW5n
dWFnZSB1bmxlc3MgdGhlIGxhbmd1YWdlIGlzIHZhbGlkLgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpzZXRMYW5ndWFnZSk6IENsZWFyIG1fdmFsaWRCQ1A0N0xhbmd1YWdlIGlmIHRoZSBs
YW5ndWFnZSBpcyBpbnZhbGlkLiAKKyAgICAgICAgUmVzdHJ1Y3R1cmUgdGhlIGNvZGUgdG8gdXNl
IGVhcmx5IHJldHVybnMuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnZhbGlkQkNQNDdM
YW5ndWFnZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC90cmFjay9UcmFja0Jhc2Uu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6dmFsaWRCQ1A0N0xhbmd1YWdlIGNvbnN0
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbHM6OnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UpOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIwLTAzLTEy
ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IHdpbGRj
YXJkIGJlaGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAppbmRleCA4OTZjOTRjZjNhZmM4YWE2Mzg4ODg4NWQ1
Yjk0N2IwYjAxMTE1ZjBkLi40YjE2ZTlkNzI5ZTI2MDgzNTQ3MzFjM2Q3MGI0OGNmOTZiYmU2ODNj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaWRsCkBAIC0yOCw2ICsyOCw3
IEBAIGVudW0gVGV4dFRyYWNrS2luZCB7ICJzdWJ0aXRsZXMiLCAiY2FwdGlvbnMiLCAiZGVzY3Jp
cHRpb25zIiwgImNoYXB0ZXJzIiwgIm1ldGFkCiAKIFsKICAgICBDb25kaXRpb25hbD1WSURFT19U
UkFDSywKKyAgICBFeHBvcnRUb1dyYXBwZWRGdW5jdGlvbiwKICAgICBHZW5lcmF0ZUlzUmVhY2hh
YmxlPUltcGxFbGVtZW50Um9vdCwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbiwKICAgICBTa2lw
VlRhYmxlVmFsaWRhdGlvbiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VHJhY2tCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcApp
bmRleCA2ZjIxMDdiOWUxZDU1NzkwY2E3MDRhNDUwM2NkYmU3NTA3MzQxODJlLi5lZWMwYWZhZTEw
ZTlkMzI3Zjk4N2VlNGY3ZDI1MmQyZjcxZDIzZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCkBAIC0zOCw2ICszOCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
c3RhdGljIGludCBzX3VuaXF1ZUlkID0gMDsKIAorc3RhdGljIGJvb2wgaXNWYWxpZEJDUDQ3TGFu
Z3VhZ2VUYWcoY29uc3QgU3RyaW5nJik7CisKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKIHN0
YXRpYyBSZWZQdHI8TG9nZ2VyPiYgbnVsbExvZ2dlcigpCiB7CkBAIC01MSw5ICs1MywxMSBAQCBU
cmFja0Jhc2U6OlRyYWNrQmFzZShUeXBlIHR5cGUsIGNvbnN0IEF0b21TdHJpbmcmIGlkLCBjb25z
dCBBdG9tU3RyaW5nJiBsYWJlbCwgYwogICAgICwgbV9pZChpZCkKICAgICAsIG1fbGFiZWwobGFi
ZWwpCiAgICAgLCBtX2xhbmd1YWdlKGxhbmd1YWdlKQotICAgICwgbV92YWxpZEJDUDQ3TGFuZ3Vh
Z2UobGFuZ3VhZ2UpCiB7CiAgICAgQVNTRVJUKHR5cGUgIT0gQmFzZVRyYWNrKTsKKyAgICBpZiAo
aXNWYWxpZEJDUDQ3TGFuZ3VhZ2VUYWcobGFuZ3VhZ2UpKQorICAgICAgICBtX3ZhbGlkQkNQNDdM
YW5ndWFnZSA9IGxhbmd1YWdlOworCiAgICAgbV90eXBlID0gdHlwZTsKIAogI2lmICFSRUxFQVNF
X0xPR19ESVNBQkxFRApAQCAtMTI5LDI4ICsxMzMsMzAgQEAgc3RhdGljIGJvb2wgaXNWYWxpZEJD
UDQ3TGFuZ3VhZ2VUYWcoY29uc3QgU3RyaW5nJiBsYW5ndWFnZVRhZykKICAgICAKIHZvaWQgVHJh
Y2tCYXNlOjpzZXRMYW5ndWFnZShjb25zdCBBdG9tU3RyaW5nJiBsYW5ndWFnZSkKIHsKLSAgICBp
ZiAoIWxhbmd1YWdlLmlzRW1wdHkoKSAmJiAhaXNWYWxpZEJDUDQ3TGFuZ3VhZ2VUYWcobGFuZ3Vh
Z2UpKSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlOwotICAgICAgICBpZiAobGFuZ3VhZ2UuY29u
dGFpbnMoKFVDaGFyKSdcMCcpKQotICAgICAgICAgICAgbWVzc2FnZSA9ICJUaGUgbGFuZ3VhZ2Ug
Y29udGFpbnMgYSBudWxsIGNoYXJhY3RlciBhbmQgaXMgbm90IGEgdmFsaWQgQkNQIDQ3IGxhbmd1
YWdlIHRhZy4iX3M7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgU3RyaW5nQnVpbGRlciBz
dHJpbmdCdWlsZGVyOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJU
aGUgbGFuZ3VhZ2UgJyIpOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQobGFuZ3Vh
Z2UpOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCInIGlzIG5vdCBh
IHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIik7Ci0gICAgICAgICAgICBtZXNzYWdlID0gc3Ry
aW5nQnVpbGRlci50b1N0cmluZygpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChhdXRvIGVsZW1l
bnQgPSB0aGlzLT5lbGVtZW50KCkpCi0gICAgICAgICAgICBlbGVtZW50LT5kb2N1bWVudCgpLmFk
ZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlJlbmRlcmluZywgTWVzc2FnZUxldmVsOjpX
YXJuaW5nLCBtZXNzYWdlKTsKLSAgICB9IGVsc2UKLSAgICAgICAgbV92YWxpZEJDUDQ3TGFuZ3Vh
Z2UgPSBsYW5ndWFnZTsKLSAgICAKICAgICBtX2xhbmd1YWdlID0gbGFuZ3VhZ2U7Ci19CisgICAg
aWYgKGxhbmd1YWdlLmlzRW1wdHkoKSB8fCBpc1ZhbGlkQkNQNDdMYW5ndWFnZVRhZyhsYW5ndWFn
ZSkpIHsKKyAgICAgICAgbV92YWxpZEJDUDQ3TGFuZ3VhZ2UgPSBsYW5ndWFnZTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KIAotQXRvbVN0cmluZyBUcmFja0Jhc2U6OnZhbGlkQkNQNDdMYW5ndWFn
ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdmFsaWRCQ1A0N0xhbmd1YWdlOworICAgIG1fdmFs
aWRCQ1A0N0xhbmd1YWdlID0gZW1wdHlBdG9tKCk7CisKKyAgICBhdXRvIGVsZW1lbnQgPSB0aGlz
LT5lbGVtZW50KCk7CisgICAgaWYgKCFlbGVtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBT
dHJpbmcgbWVzc2FnZTsKKyAgICBpZiAobGFuZ3VhZ2UuY29udGFpbnMoKFVDaGFyKSdcMCcpKQor
ICAgICAgICBtZXNzYWdlID0gIlRoZSBsYW5ndWFnZSBjb250YWlucyBhIG51bGwgY2hhcmFjdGVy
IGFuZCBpcyBub3QgYSB2YWxpZCBCQ1AgNDcgbGFuZ3VhZ2UgdGFnLiJfczsKKyAgICBlbHNlIHsK
KyAgICAgICAgU3RyaW5nQnVpbGRlciBzdHJpbmdCdWlsZGVyOworICAgICAgICBzdHJpbmdCdWls
ZGVyLmFwcGVuZExpdGVyYWwoIlRoZSBsYW5ndWFnZSAnIik7CisgICAgICAgIHN0cmluZ0J1aWxk
ZXIuYXBwZW5kKGxhbmd1YWdlKTsKKyAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFs
KCInIGlzIG5vdCBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIik7CisgICAgICAgIG1lc3Nh
Z2UgPSBzdHJpbmdCdWlsZGVyLnRvU3RyaW5nKCk7CisgICAgfQorCisgICAgZWxlbWVudC0+ZG9j
dW1lbnQoKS5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpSZW5kZXJpbmcsIE1lc3Nh
Z2VMZXZlbDo6V2FybmluZywgbWVzc2FnZSk7CiB9CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCmluZGV4IDcyODk3OWI3OTdhZDA3
ZjVmZDU5NDU1NTc3NjA0ZGRjYjE4MzllYzUuLjBjMmVjZjU1M2U2NjBjNzVjNjhjODQ1MWVmZWVj
YzE0OTFkMmVhY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tC
YXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaApAQCAtNTks
NyArNTksNyBAQCBwdWJsaWM6CiAgICAgQXRvbVN0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJu
IG1fbGFiZWw7IH0KICAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21TdHJpbmcmIGxhYmVsKSB7
IG1fbGFiZWwgPSBsYWJlbDsgfQogCi0gICAgQXRvbVN0cmluZyB2YWxpZEJDUDQ3TGFuZ3VhZ2Uo
KSBjb25zdDsKKyAgICBBdG9tU3RyaW5nIHZhbGlkQkNQNDdMYW5ndWFnZSgpIGNvbnN0IHsgcmV0
dXJuIG1fdmFsaWRCQ1A0N0xhbmd1YWdlOyB9CiAgICAgQXRvbVN0cmluZyBsYW5ndWFnZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbGFuZ3VhZ2U7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0TGFuZ3VhZ2Uo
Y29uc3QgQXRvbVN0cmluZyYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5k
ZXggZThkODRjNDE4NWRlMDQyZTJkZDlmZDY3YzE0OGQ3ZmY5N2E3YTg5My4uMmY5NzNiMDNlMTBm
ZDRlODBlNDAwOWVjNzNhZmNkNWYxNzk1Y2YxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmNwcApAQCAtMjM3LDYgKzIzNyw3IEBACiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogI2lu
Y2x1ZGUgIkNhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaCIKICNpbmNsdWRlICJQYWdlR3JvdXAuaCIK
KyNpbmNsdWRlICJUZXh0VHJhY2suaCIKICNpbmNsdWRlICJUZXh0VHJhY2tDdWVHZW5lcmljLmgi
CiAjZW5kaWYKIApAQCAtMzc2OSw2ICszNzcwLDExIEBAIFJlZlB0cjxUZXh0VHJhY2tDdWVHZW5l
cmljPiBJbnRlcm5hbHM6OmNyZWF0ZUdlbmVyaWNDdWUoZG91YmxlIHN0YXJ0VGltZSwgZG91Ymxl
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIHJldHVybiBUZXh0VHJhY2tDdWVHZW5lcmlj
OjpjcmVhdGUoKmRvY3VtZW50LCBNZWRpYVRpbWU6OmNyZWF0ZVdpdGhEb3VibGUoc3RhcnRUaW1l
KSwgTWVkaWFUaW1lOjpjcmVhdGVXaXRoRG91YmxlKGVuZFRpbWUpLCB0ZXh0KTsKIH0KKworRXhj
ZXB0aW9uT3I8U3RyaW5nPiBJbnRlcm5hbHM6OnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UoVGV4dFRy
YWNrJiB0cmFjaykKK3sKKyAgICByZXR1cm4gU3RyaW5nIHsgdHJhY2sudmFsaWRCQ1A0N0xhbmd1
YWdlKCkgfTsKK30KICNlbmRpZgogCiAjaWYgRU5BQkxFKFZJREVPKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmgKaW5kZXggNDQyYTdmZjU1MmQ1YzVmMTZmOGYxMzdjOTdjYzc2NGE4YmY2ODc1
NC4uMGRhMDlmZDY0NDNjZTc3ODM0OTBlNDBhYzIyNDcyYTVjMGNkZGU3YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oCkBAIC05OCw2ICs5OCw3IEBAIGNsYXNzIFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZTsKIGNsYXNzIFNvdXJjZUJ1ZmZlcjsKIGNsYXNzIFN0cmluZ0NhbGxiYWNrOwogY2xh
c3MgU3R5bGVTaGVldDsKK2NsYXNzIFRleHRUcmFjazsKIGNsYXNzIFRpbWVSYW5nZXM7CiBjbGFz
cyBUeXBlQ29udmVyc2lvbnM7CiBjbGFzcyBVbnN1c3BlbmRhYmxlQWN0aXZlRE9NT2JqZWN0OwpA
QCAtNTk0LDYgKzU5NSw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRDYXB0
aW9uRGlzcGxheU1vZGUoY29uc3QgU3RyaW5nJik7CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQog
ICAgIFJlZlB0cjxUZXh0VHJhY2tDdWVHZW5lcmljPiBjcmVhdGVHZW5lcmljQ3VlKGRvdWJsZSBz
dGFydFRpbWUsIGRvdWJsZSBlbmRUaW1lLCBTdHJpbmcgdGV4dCk7CisgICAgRXhjZXB0aW9uT3I8
U3RyaW5nPiB0ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKFRleHRUcmFjayYpOwogI2VuZGlmCiAKICNp
ZiBFTkFCTEUoVklERU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggY2U3
OGZmNDk3NWNhNjg4NzgxNjg5MTU2Nzk0ODRmZTAxMjYwODg2My4uYTE3NDM4ODZkNGRmZmZiMDVm
NWI2NzE2NjhhYWI2ZDEwYTVlYWVjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlk
bApAQCAtNTg3LDYgKzU4Nyw3IEBAIGVudW0gQ29tcG9zaXRpbmdQb2xpY3kgewogICAgIFtDb25k
aXRpb25hbD1WSURFT19UUkFDSywgTWF5VGhyb3dFeGNlcHRpb25dIHZvaWQgc2V0UHJpbWFyeUF1
ZGlvVHJhY2tMYW5ndWFnZU92ZXJyaWRlKERPTVN0cmluZyBsYW5ndWFnZSk7CiAgICAgW0NvbmRp
dGlvbmFsPVZJREVPX1RSQUNLLCBNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBzZXRDYXB0aW9uRGlz
cGxheU1vZGUoRE9NU3RyaW5nIG1vZGUpOwogICAgIFtDb25kaXRpb25hbD1WSURFT19UUkFDS10g
VGV4dFRyYWNrQ3VlR2VuZXJpYyBjcmVhdGVHZW5lcmljQ3VlKGRvdWJsZSBzdGFydFRpbWUsIGRv
dWJsZSBlbmRUaW1lLCBET01TdHJpbmcgdGV4dCk7CisgICAgW0NvbmRpdGlvbmFsPVZJREVPX1RS
QUNLLCBNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHRleHRUcmFja0JDUDQ3TGFuZ3VhZ2Uo
VGV4dFRyYWNrIHRyYWNrKTsKIAogICAgIFtDb25kaXRpb25hbD1WSURFT10gVGltZVJhbmdlcyBj
cmVhdGVUaW1lUmFuZ2VzKEZsb2F0MzJBcnJheSBzdGFydFRpbWVzLCBGbG9hdDMyQXJyYXkKICAg
ICAgZW5kVGltZXMpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDgxN2U3OTE3OGVmZDk2YmM0YzdhMzRkZDNjYjNiN2VkMWM2
YzJmODYuLjRlYWUyMjE0OGMyY2ZiYTgyMWFmNjc5ODE4MjI3NjFhODEzM2ZmZjIgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAyMC0wMy0xNiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFw
cGxlLmNvbT4KKworICAgICAgICBUZXh0VHJhY2tCYXNlIHNob3VsZCB2YWxpZGF0ZSBsYW5ndWFn
ZSBiZWZvcmUgc2V0dGluZyBtX3ZhbGlkQkNQNDdMYW5ndWFnZQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5MDk0CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS82MDQzOTYwMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS5odG1sOiBBZGRl
ZC4KKwogMjAyMC0wMy0xMiAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWNjdXJhdGUgc3R5bGUgaW52YWxpZGF0aW9uIGZvciB1c2VyIGFjdGlvbiBwc2V1ZG8g
Y2xhc3NlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stYmNwLWxh
bmd1YWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWJjcC1s
YW5ndWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDFlYzAzZDZkZDU3M2I1ZmViOTc5YzQz
MmNiODAyNjVlYmI5ZjNhMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Ry
YWNrL3RyYWNrLWJjcC1sYW5ndWFnZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOSBAQAorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDQ5OiBUaGUgbGFuZ3VhZ2UgJy1zbCcgaXMgbm90IGEgdmFsaWQg
QkNQIDQ3IGxhbmd1YWdlIHRhZy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNDogVGhlIGxhbmd1
YWdlICd6aEhhbnQnIGlzIG5vdCBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuCitUZXN0IHRo
YXQgdGhlIGludGVybmFsIEJDUCAuCisKKworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJhY2tC
Q1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykgPT0gJ3poJykgT0sKK0VYUEVDVEVEICh0cmFjazEu
dHJhY2subGFuZ3VhZ2UgPT0gJ3poJykgT0sKK0VYUEVDVEVEIChpbnRlcm5hbHMudGV4dFRyYWNr
QkNQNDdMYW5ndWFnZSh0cmFjazEudHJhY2spID09ICd6aC1IYW50JykgT0sKK0VYUEVDVEVEICh0
cmFjazEudHJhY2subGFuZ3VhZ2UgPT0gJ3poLUhhbnQnKSBPSworRVhQRUNURUQgKGludGVybmFs
cy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykgPT0gJycpIE9LCitFWFBFQ1RF
RCAodHJhY2sxLnRyYWNrLmxhbmd1YWdlID09ICd6aEhhbnQnKSBPSworRVhQRUNURUQgKGludGVy
bmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykgPT0gJ3poLWNtbi1IYW5z
LUNOJykgT0sKK0VYUEVDVEVEICh0cmFjazEudHJhY2subGFuZ3VhZ2UgPT0gJ3poLWNtbi1IYW5z
LUNOJykgT0sKK0VYUEVDVEVEIChpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFj
azIudHJhY2spID09ICcnKSBPSworRVhQRUNURUQgKHRyYWNrMi50cmFjay5sYW5ndWFnZSA9PSAn
LXNsJykgT0sKK0VYUEVDVEVEIChpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFj
azIudHJhY2spID09ICdzbC1yb3phai1iaXNrZScpIE9LCitFWFBFQ1RFRCAodHJhY2syLnRyYWNr
Lmxhbmd1YWdlID09ICdzbC1yb3phai1iaXNrZScpIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1iY3AtbGFuZ3VhZ2UuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjU0ZWQ5MjgzMmMzMDE0MzU2NjlmZmRiYjRmODMwNGFmYjA0YzBhYTQKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay90cmFjay1iY3AtbGFuZ3VhZ2UuaHRtbApAQCAt
MCwwICsxLDUzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorCisgICAgPHRpdGxlPkJDUCBM
YW5ndWFnZTwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Li4vbWVkaWEtZmlsZS5qcz48L3Njcmlw
dD4KKyAgICA8c2NyaXB0IHNyYz0uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorCisgICAgPHNj
cmlwdD4KKyAgICAgICAgdmFyIHRlc3QgPSAwOworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgZmlu
ZE1lZGlhRWxlbWVudCgpOworCisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImludGVybmFscy50
ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykiLCAiemgiKTsKKyAgICAgICAgICAg
IHRlc3RFeHBlY3RlZCgidHJhY2sxLnRyYWNrLmxhbmd1YWdlIiwgInpoIik7CisKKyAgICAgICAg
ICAgIHRyYWNrMS5zZXRBdHRyaWJ1dGUoInNyY2xhbmciLCAiemgtSGFudCIpOworICAgICAgICAg
ICAgdGVzdEV4cGVjdGVkKCJpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFjazEu
dHJhY2spIiwgInpoLUhhbnQiKTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidHJhY2sxLnRy
YWNrLmxhbmd1YWdlIiwgInpoLUhhbnQiKTsKKworICAgICAgICAgICAgLy8gU2V0IHRvIGludmFs
aWQgY29kZSAoY291bnRyeSBjb2RlIG11c3QgYmUgPD0gMykKKyAgICAgICAgICAgIHRyYWNrMS5z
ZXRBdHRyaWJ1dGUoInNyY2xhbmciLCAiemhIYW50Iik7CisgICAgICAgICAgICB0ZXN0RXhwZWN0
ZWQoImludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykiLCAiIik7
CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInRyYWNrMS50cmFjay5sYW5ndWFnZSIsICJ6aEhh
bnQiKTsKKworICAgICAgICAgICAgdHJhY2sxLnNldEF0dHJpYnV0ZSgic3JjbGFuZyIsICJ6aC1j
bW4tSGFucy1DTiIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpbnRlcm5hbHMudGV4dFRy
YWNrQkNQNDdMYW5ndWFnZSh0cmFjazEudHJhY2spIiwgInpoLWNtbi1IYW5zLUNOIik7CisgICAg
ICAgICAgICB0ZXN0RXhwZWN0ZWQoInRyYWNrMS50cmFjay5sYW5ndWFnZSIsICJ6aC1jbW4tSGFu
cy1DTiIpOworCisgICAgICAgICAgICAvLyA8dHJhY2s+IHNyY2xhbmcgYXR0cmlidXRlIGlzIGlu
dmFsaWQgKGludmFsaWQgZmlyc3QgY2hhcmFjdGVyKQorICAgICAgICAgICAgdGVzdEV4cGVjdGVk
KCJpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFjazIudHJhY2spIiwgIiIpOwor
ICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJ0cmFjazIudHJhY2subGFuZ3VhZ2UiLCAiLXNsIik7
CisKKyAgICAgICAgICAgIHRyYWNrMi5zZXRBdHRyaWJ1dGUoInNyY2xhbmciLCAic2wtcm96YWot
Ymlza2UiKTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiaW50ZXJuYWxzLnRleHRUcmFja0JD
UDQ3TGFuZ3VhZ2UodHJhY2syLnRyYWNrKSIsICJzbC1yb3phai1iaXNrZSIpOworICAgICAgICAg
ICAgdGVzdEV4cGVjdGVkKCJ0cmFjazIudHJhY2subGFuZ3VhZ2UiLCAic2wtcm96YWotYmlza2Ui
KTsKKworICAgICAgICAgICAgZW5kVGVzdCgpOworICAgICAgICB9KTsKKworICAgIDwvc2NyaXB0
PgorCisgICAgPGJvZHk+CisgICAgICAgIDxwPlRlc3QgdGhhdCBUZXh0VHJhY2tCYXNlLnZhbGlk
QkNQNDdMYW5ndWFnZSBpcyBzZXQgYW5kIHJlc2V0IGNvcnJlY3RseS48L3A+CisgICAgICAgIDx2
aWRlbyB3aWR0aD0iNTAwIiBoZWlnaHQ9IjMwMCIgY29udHJvbHM+CisgICAgICAgICAgICA8dHJh
Y2sgaWQ9InRyYWNrMSIga2luZD0iY2FwdGlvbnMiIHNyY2xhbmc9InpoIiBsYWJlbD0iIiAvPgor
ICAgICAgICAgICAgPHRyYWNrIGlkPSJ0cmFjazIiIGtpbmQ9ImNhcHRpb25zIiBzcmNsYW5nPSIt
c2wiIC8+CisgICAgICAgIDwvdmlkZW8+CisgICAgPC9ib2R5PgorPC9odG1sPgorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393762</attachid>
            <date>2020-03-17 09:54:24 -0700</date>
            <delta_ts>2020-03-17 13:52:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209094-20200317095423.patch</filename>
            <type>text/plain</type>
            <size>12175</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjhkZGZmZjY1ZjJhODE1
YjU4OWNhMzYwZmIyYzBjNTcyNmYxZjBlOS4uNGQ4YjU0MWMxN2FmNjYyZTY5MTFjNmRiMTRkMTA2
ZTJlNzAzODljZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTAzLTE2ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFRleHRUcmFja0Jh
c2Ugc2hvdWxkIHZhbGlkYXRlIGxhbmd1YWdlIGJlZm9yZSBzZXR0aW5nIG1fdmFsaWRCQ1A0N0xh
bmd1YWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDkwOTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwNDM5NjAzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgVGVzdDogbWVkaWEvdHJh
Y2svdHJhY2stYmNwLWxhbmd1YWdlLmh0bWwKKworICAgICAgICAqIGh0bWwvdHJhY2svVGV4dFRy
YWNrLmlkbDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1RyYWNrQmFzZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpUcmFja0Jhc2U6OlRyYWNrQmFzZSk6IERvbid0IHNldCBtX3ZhbGlkQkNQNDdMYW5n
dWFnZSB1bmxlc3MgdGhlIGxhbmd1YWdlIGlzIHZhbGlkLgorICAgICAgICAoV2ViQ29yZTo6VHJh
Y2tCYXNlOjpzZXRMYW5ndWFnZSk6IENsZWFyIG1fdmFsaWRCQ1A0N0xhbmd1YWdlIGlmIHRoZSBs
YW5ndWFnZSBpcyBpbnZhbGlkLiAKKyAgICAgICAgUmVzdHJ1Y3R1cmUgdGhlIGNvZGUgdG8gdXNl
IGVhcmx5IHJldHVybnMuCisgICAgICAgIChXZWJDb3JlOjpUcmFja0Jhc2U6OnZhbGlkQkNQNDdM
YW5ndWFnZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC90cmFjay9UcmFja0Jhc2Uu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlRyYWNrQmFzZTo6dmFsaWRCQ1A0N0xhbmd1YWdlIGNvbnN0
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbHM6OnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UpOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIwLTAzLTEy
ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IHdpbGRj
YXJkIGJlaGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvdHJhY2svVGV4dFRyYWNrLmlkbAppbmRleCA4OTZjOTRjZjNhZmM4YWE2Mzg4ODg4NWQ1
Yjk0N2IwYjAxMTE1ZjBkLi40YjE2ZTlkNzI5ZTI2MDgzNTQ3MzFjM2Q3MGI0OGNmOTZiYmU2ODNj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2suaWRsCkBAIC0yOCw2ICsyOCw3
IEBAIGVudW0gVGV4dFRyYWNrS2luZCB7ICJzdWJ0aXRsZXMiLCAiY2FwdGlvbnMiLCAiZGVzY3Jp
cHRpb25zIiwgImNoYXB0ZXJzIiwgIm1ldGFkCiAKIFsKICAgICBDb25kaXRpb25hbD1WSURFT19U
UkFDSywKKyAgICBFeHBvcnRUb1dyYXBwZWRGdW5jdGlvbiwKICAgICBHZW5lcmF0ZUlzUmVhY2hh
YmxlPUltcGxFbGVtZW50Um9vdCwKICAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbiwKICAgICBTa2lw
VlRhYmxlVmFsaWRhdGlvbiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VHJhY2tCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcApp
bmRleCA2ZjIxMDdiOWUxZDU1NzkwY2E3MDRhNDUwM2NkYmU3NTA3MzQxODJlLi5lZWMwYWZhZTEw
ZTlkMzI3Zjk4N2VlNGY3ZDI1MmQyZjcxZDIzZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFj
ay9UcmFja0Jhc2UuY3BwCkBAIC0zOCw2ICszOCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
c3RhdGljIGludCBzX3VuaXF1ZUlkID0gMDsKIAorc3RhdGljIGJvb2wgaXNWYWxpZEJDUDQ3TGFu
Z3VhZ2VUYWcoY29uc3QgU3RyaW5nJik7CisKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKIHN0
YXRpYyBSZWZQdHI8TG9nZ2VyPiYgbnVsbExvZ2dlcigpCiB7CkBAIC01MSw5ICs1MywxMSBAQCBU
cmFja0Jhc2U6OlRyYWNrQmFzZShUeXBlIHR5cGUsIGNvbnN0IEF0b21TdHJpbmcmIGlkLCBjb25z
dCBBdG9tU3RyaW5nJiBsYWJlbCwgYwogICAgICwgbV9pZChpZCkKICAgICAsIG1fbGFiZWwobGFi
ZWwpCiAgICAgLCBtX2xhbmd1YWdlKGxhbmd1YWdlKQotICAgICwgbV92YWxpZEJDUDQ3TGFuZ3Vh
Z2UobGFuZ3VhZ2UpCiB7CiAgICAgQVNTRVJUKHR5cGUgIT0gQmFzZVRyYWNrKTsKKyAgICBpZiAo
aXNWYWxpZEJDUDQ3TGFuZ3VhZ2VUYWcobGFuZ3VhZ2UpKQorICAgICAgICBtX3ZhbGlkQkNQNDdM
YW5ndWFnZSA9IGxhbmd1YWdlOworCiAgICAgbV90eXBlID0gdHlwZTsKIAogI2lmICFSRUxFQVNF
X0xPR19ESVNBQkxFRApAQCAtMTI5LDI4ICsxMzMsMzAgQEAgc3RhdGljIGJvb2wgaXNWYWxpZEJD
UDQ3TGFuZ3VhZ2VUYWcoY29uc3QgU3RyaW5nJiBsYW5ndWFnZVRhZykKICAgICAKIHZvaWQgVHJh
Y2tCYXNlOjpzZXRMYW5ndWFnZShjb25zdCBBdG9tU3RyaW5nJiBsYW5ndWFnZSkKIHsKLSAgICBp
ZiAoIWxhbmd1YWdlLmlzRW1wdHkoKSAmJiAhaXNWYWxpZEJDUDQ3TGFuZ3VhZ2VUYWcobGFuZ3Vh
Z2UpKSB7Ci0gICAgICAgIFN0cmluZyBtZXNzYWdlOwotICAgICAgICBpZiAobGFuZ3VhZ2UuY29u
dGFpbnMoKFVDaGFyKSdcMCcpKQotICAgICAgICAgICAgbWVzc2FnZSA9ICJUaGUgbGFuZ3VhZ2Ug
Y29udGFpbnMgYSBudWxsIGNoYXJhY3RlciBhbmQgaXMgbm90IGEgdmFsaWQgQkNQIDQ3IGxhbmd1
YWdlIHRhZy4iX3M7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgU3RyaW5nQnVpbGRlciBz
dHJpbmdCdWlsZGVyOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCJU
aGUgbGFuZ3VhZ2UgJyIpOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQobGFuZ3Vh
Z2UpOwotICAgICAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFsKCInIGlzIG5vdCBh
IHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIik7Ci0gICAgICAgICAgICBtZXNzYWdlID0gc3Ry
aW5nQnVpbGRlci50b1N0cmluZygpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChhdXRvIGVsZW1l
bnQgPSB0aGlzLT5lbGVtZW50KCkpCi0gICAgICAgICAgICBlbGVtZW50LT5kb2N1bWVudCgpLmFk
ZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlJlbmRlcmluZywgTWVzc2FnZUxldmVsOjpX
YXJuaW5nLCBtZXNzYWdlKTsKLSAgICB9IGVsc2UKLSAgICAgICAgbV92YWxpZEJDUDQ3TGFuZ3Vh
Z2UgPSBsYW5ndWFnZTsKLSAgICAKICAgICBtX2xhbmd1YWdlID0gbGFuZ3VhZ2U7Ci19CisgICAg
aWYgKGxhbmd1YWdlLmlzRW1wdHkoKSB8fCBpc1ZhbGlkQkNQNDdMYW5ndWFnZVRhZyhsYW5ndWFn
ZSkpIHsKKyAgICAgICAgbV92YWxpZEJDUDQ3TGFuZ3VhZ2UgPSBsYW5ndWFnZTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KIAotQXRvbVN0cmluZyBUcmFja0Jhc2U6OnZhbGlkQkNQNDdMYW5ndWFn
ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdmFsaWRCQ1A0N0xhbmd1YWdlOworICAgIG1fdmFs
aWRCQ1A0N0xhbmd1YWdlID0gZW1wdHlBdG9tKCk7CisKKyAgICBhdXRvIGVsZW1lbnQgPSB0aGlz
LT5lbGVtZW50KCk7CisgICAgaWYgKCFlbGVtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBT
dHJpbmcgbWVzc2FnZTsKKyAgICBpZiAobGFuZ3VhZ2UuY29udGFpbnMoKFVDaGFyKSdcMCcpKQor
ICAgICAgICBtZXNzYWdlID0gIlRoZSBsYW5ndWFnZSBjb250YWlucyBhIG51bGwgY2hhcmFjdGVy
IGFuZCBpcyBub3QgYSB2YWxpZCBCQ1AgNDcgbGFuZ3VhZ2UgdGFnLiJfczsKKyAgICBlbHNlIHsK
KyAgICAgICAgU3RyaW5nQnVpbGRlciBzdHJpbmdCdWlsZGVyOworICAgICAgICBzdHJpbmdCdWls
ZGVyLmFwcGVuZExpdGVyYWwoIlRoZSBsYW5ndWFnZSAnIik7CisgICAgICAgIHN0cmluZ0J1aWxk
ZXIuYXBwZW5kKGxhbmd1YWdlKTsKKyAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmRMaXRlcmFs
KCInIGlzIG5vdCBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIik7CisgICAgICAgIG1lc3Nh
Z2UgPSBzdHJpbmdCdWlsZGVyLnRvU3RyaW5nKCk7CisgICAgfQorCisgICAgZWxlbWVudC0+ZG9j
dW1lbnQoKS5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpSZW5kZXJpbmcsIE1lc3Nh
Z2VMZXZlbDo6V2FybmluZywgbWVzc2FnZSk7CiB9CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrQmFzZS5oCmluZGV4IDcyODk3OWI3OTdhZDA3
ZjVmZDU5NDU1NTc3NjA0ZGRjYjE4MzllYzUuLjBjMmVjZjU1M2U2NjBjNzVjNjhjODQ1MWVmZWVj
YzE0OTFkMmVhY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tC
YXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2UuaApAQCAtNTks
NyArNTksNyBAQCBwdWJsaWM6CiAgICAgQXRvbVN0cmluZyBsYWJlbCgpIGNvbnN0IHsgcmV0dXJu
IG1fbGFiZWw7IH0KICAgICB2b2lkIHNldExhYmVsKGNvbnN0IEF0b21TdHJpbmcmIGxhYmVsKSB7
IG1fbGFiZWwgPSBsYWJlbDsgfQogCi0gICAgQXRvbVN0cmluZyB2YWxpZEJDUDQ3TGFuZ3VhZ2Uo
KSBjb25zdDsKKyAgICBBdG9tU3RyaW5nIHZhbGlkQkNQNDdMYW5ndWFnZSgpIGNvbnN0IHsgcmV0
dXJuIG1fdmFsaWRCQ1A0N0xhbmd1YWdlOyB9CiAgICAgQXRvbVN0cmluZyBsYW5ndWFnZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbGFuZ3VhZ2U7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0TGFuZ3VhZ2Uo
Y29uc3QgQXRvbVN0cmluZyYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5k
ZXggZThkODRjNDE4NWRlMDQyZTJkZDlmZDY3YzE0OGQ3ZmY5N2E3YTg5My4uMmY5NzNiMDNlMTBm
ZDRlODBlNDAwOWVjNzNhZmNkNWYxNzk1Y2YxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmNwcApAQCAtMjM3LDYgKzIzNyw3IEBACiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogI2lu
Y2x1ZGUgIkNhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaCIKICNpbmNsdWRlICJQYWdlR3JvdXAuaCIK
KyNpbmNsdWRlICJUZXh0VHJhY2suaCIKICNpbmNsdWRlICJUZXh0VHJhY2tDdWVHZW5lcmljLmgi
CiAjZW5kaWYKIApAQCAtMzc2OSw2ICszNzcwLDExIEBAIFJlZlB0cjxUZXh0VHJhY2tDdWVHZW5l
cmljPiBJbnRlcm5hbHM6OmNyZWF0ZUdlbmVyaWNDdWUoZG91YmxlIHN0YXJ0VGltZSwgZG91Ymxl
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIHJldHVybiBUZXh0VHJhY2tDdWVHZW5lcmlj
OjpjcmVhdGUoKmRvY3VtZW50LCBNZWRpYVRpbWU6OmNyZWF0ZVdpdGhEb3VibGUoc3RhcnRUaW1l
KSwgTWVkaWFUaW1lOjpjcmVhdGVXaXRoRG91YmxlKGVuZFRpbWUpLCB0ZXh0KTsKIH0KKworRXhj
ZXB0aW9uT3I8U3RyaW5nPiBJbnRlcm5hbHM6OnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UoVGV4dFRy
YWNrJiB0cmFjaykKK3sKKyAgICByZXR1cm4gU3RyaW5nIHsgdHJhY2sudmFsaWRCQ1A0N0xhbmd1
YWdlKCkgfTsKK30KICNlbmRpZgogCiAjaWYgRU5BQkxFKFZJREVPKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmgKaW5kZXggNDQyYTdmZjU1MmQ1YzVmMTZmOGYxMzdjOTdjYzc2NGE4YmY2ODc1
NC4uMGRhMDlmZDY0NDNjZTc3ODM0OTBlNDBhYzIyNDcyYTVjMGNkZGU3YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oCkBAIC05OCw2ICs5OCw3IEBAIGNsYXNzIFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZTsKIGNsYXNzIFNvdXJjZUJ1ZmZlcjsKIGNsYXNzIFN0cmluZ0NhbGxiYWNrOwogY2xh
c3MgU3R5bGVTaGVldDsKK2NsYXNzIFRleHRUcmFjazsKIGNsYXNzIFRpbWVSYW5nZXM7CiBjbGFz
cyBUeXBlQ29udmVyc2lvbnM7CiBjbGFzcyBVbnN1c3BlbmRhYmxlQWN0aXZlRE9NT2JqZWN0OwpA
QCAtNTk0LDYgKzU5NSw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRDYXB0
aW9uRGlzcGxheU1vZGUoY29uc3QgU3RyaW5nJik7CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQog
ICAgIFJlZlB0cjxUZXh0VHJhY2tDdWVHZW5lcmljPiBjcmVhdGVHZW5lcmljQ3VlKGRvdWJsZSBz
dGFydFRpbWUsIGRvdWJsZSBlbmRUaW1lLCBTdHJpbmcgdGV4dCk7CisgICAgRXhjZXB0aW9uT3I8
U3RyaW5nPiB0ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKFRleHRUcmFjayYpOwogI2VuZGlmCiAKICNp
ZiBFTkFCTEUoVklERU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggY2U3
OGZmNDk3NWNhNjg4NzgxNjg5MTU2Nzk0ODRmZTAxMjYwODg2My4uYTE3NDM4ODZkNGRmZmZiMDVm
NWI2NzE2NjhhYWI2ZDEwYTVlYWVjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlk
bApAQCAtNTg3LDYgKzU4Nyw3IEBAIGVudW0gQ29tcG9zaXRpbmdQb2xpY3kgewogICAgIFtDb25k
aXRpb25hbD1WSURFT19UUkFDSywgTWF5VGhyb3dFeGNlcHRpb25dIHZvaWQgc2V0UHJpbWFyeUF1
ZGlvVHJhY2tMYW5ndWFnZU92ZXJyaWRlKERPTVN0cmluZyBsYW5ndWFnZSk7CiAgICAgW0NvbmRp
dGlvbmFsPVZJREVPX1RSQUNLLCBNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBzZXRDYXB0aW9uRGlz
cGxheU1vZGUoRE9NU3RyaW5nIG1vZGUpOwogICAgIFtDb25kaXRpb25hbD1WSURFT19UUkFDS10g
VGV4dFRyYWNrQ3VlR2VuZXJpYyBjcmVhdGVHZW5lcmljQ3VlKGRvdWJsZSBzdGFydFRpbWUsIGRv
dWJsZSBlbmRUaW1lLCBET01TdHJpbmcgdGV4dCk7CisgICAgW0NvbmRpdGlvbmFsPVZJREVPX1RS
QUNLLCBNYXlUaHJvd0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHRleHRUcmFja0JDUDQ3TGFuZ3VhZ2Uo
VGV4dFRyYWNrIHRyYWNrKTsKIAogICAgIFtDb25kaXRpb25hbD1WSURFT10gVGltZVJhbmdlcyBj
cmVhdGVUaW1lUmFuZ2VzKEZsb2F0MzJBcnJheSBzdGFydFRpbWVzLCBGbG9hdDMyQXJyYXkKICAg
ICAgZW5kVGltZXMpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDgxN2U3OTE3OGVmZDk2YmM0YzdhMzRkZDNjYjNiN2VkMWM2
YzJmODYuLjRlYWUyMjE0OGMyY2ZiYTgyMWFmNjc5ODE4MjI3NjFhODEzM2ZmZjIgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAyMC0wMy0xNiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFw
cGxlLmNvbT4KKworICAgICAgICBUZXh0VHJhY2tCYXNlIHNob3VsZCB2YWxpZGF0ZSBsYW5ndWFn
ZSBiZWZvcmUgc2V0dGluZyBtX3ZhbGlkQkNQNDdMYW5ndWFnZQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5MDk0CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS82MDQzOTYwMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIG1lZGlhL3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS5odG1sOiBBZGRl
ZC4KKwogMjAyMC0wMy0xMiAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWNjdXJhdGUgc3R5bGUgaW52YWxpZGF0aW9uIGZvciB1c2VyIGFjdGlvbiBwc2V1ZG8g
Y2xhc3NlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stYmNwLWxh
bmd1YWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNrLWJjcC1s
YW5ndWFnZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2I0ODQ1MGJkMmYzZmRjZDAxMmQyZDg2
NTVhYjdlNDU2NGIwNmJkZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Ry
YWNrL3RyYWNrLWJjcC1sYW5ndWFnZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOSBAQAorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDQ5OiBUaGUgbGFuZ3VhZ2UgJy1zbCcgaXMgbm90IGEgdmFsaWQg
QkNQIDQ3IGxhbmd1YWdlIHRhZy4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNDogVGhlIGxhbmd1
YWdlICd6aEhhbnQnIGlzIG5vdCBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuCitUZXN0IHRo
YXQgVGV4dFRyYWNrQmFzZS52YWxpZEJDUDQ3TGFuZ3VhZ2UgaXMgc2V0IGFuZCByZXNldCBjb3Jy
ZWN0bHkuCisKKworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRy
YWNrMS50cmFjaykgPT0gJ3poJykgT0sKK0VYUEVDVEVEICh0cmFjazEudHJhY2subGFuZ3VhZ2Ug
PT0gJ3poJykgT0sKK0VYUEVDVEVEIChpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0
cmFjazEudHJhY2spID09ICd6aC1IYW50JykgT0sKK0VYUEVDVEVEICh0cmFjazEudHJhY2subGFu
Z3VhZ2UgPT0gJ3poLUhhbnQnKSBPSworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJhY2tCQ1A0
N0xhbmd1YWdlKHRyYWNrMS50cmFjaykgPT0gJycpIE9LCitFWFBFQ1RFRCAodHJhY2sxLnRyYWNr
Lmxhbmd1YWdlID09ICd6aEhhbnQnKSBPSworRVhQRUNURUQgKGludGVybmFscy50ZXh0VHJhY2tC
Q1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykgPT0gJ3poLWNtbi1IYW5zLUNOJykgT0sKK0VYUEVD
VEVEICh0cmFjazEudHJhY2subGFuZ3VhZ2UgPT0gJ3poLWNtbi1IYW5zLUNOJykgT0sKK0VYUEVD
VEVEIChpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFjazIudHJhY2spID09ICcn
KSBPSworRVhQRUNURUQgKHRyYWNrMi50cmFjay5sYW5ndWFnZSA9PSAnLXNsJykgT0sKK0VYUEVD
VEVEIChpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFjazIudHJhY2spID09ICdz
bC1yb3phai1iaXNrZScpIE9LCitFWFBFQ1RFRCAodHJhY2syLnRyYWNrLmxhbmd1YWdlID09ICdz
bC1yb3phai1iaXNrZScpIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS90cmFjay90cmFjay1iY3AtbGFuZ3VhZ2UuaHRtbCBiL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL3RyYWNrLWJjcC1sYW5ndWFnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU0ZWQ5MjgzMmMzMDE0
MzU2NjlmZmRiYjRmODMwNGFmYjA0YzBhYTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS90cmFjay90cmFjay1iY3AtbGFuZ3VhZ2UuaHRtbApAQCAtMCwwICsxLDUzIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorCisgICAgPHRpdGxlPkJDUCBMYW5ndWFnZTwvdGl0bGU+
CisgICAgPHNjcmlwdCBzcmM9Li4vbWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KKyAgICA8c2NyaXB0
IHNyYz0uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorCisgICAgPHNjcmlwdD4KKyAgICAgICAg
dmFyIHRlc3QgPSAwOworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0
ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgZmluZE1lZGlhRWxlbWVudCgp
OworCisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImludGVybmFscy50ZXh0VHJhY2tCQ1A0N0xh
bmd1YWdlKHRyYWNrMS50cmFjaykiLCAiemgiKTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgi
dHJhY2sxLnRyYWNrLmxhbmd1YWdlIiwgInpoIik7CisKKyAgICAgICAgICAgIHRyYWNrMS5zZXRB
dHRyaWJ1dGUoInNyY2xhbmciLCAiemgtSGFudCIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVk
KCJpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFjazEudHJhY2spIiwgInpoLUhh
bnQiKTsKKyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidHJhY2sxLnRyYWNrLmxhbmd1YWdlIiwg
InpoLUhhbnQiKTsKKworICAgICAgICAgICAgLy8gU2V0IHRvIGludmFsaWQgY29kZSAoY291bnRy
eSBjb2RlIG11c3QgYmUgPD0gMykKKyAgICAgICAgICAgIHRyYWNrMS5zZXRBdHRyaWJ1dGUoInNy
Y2xhbmciLCAiemhIYW50Iik7CisgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImludGVybmFscy50
ZXh0VHJhY2tCQ1A0N0xhbmd1YWdlKHRyYWNrMS50cmFjaykiLCAiIik7CisgICAgICAgICAgICB0
ZXN0RXhwZWN0ZWQoInRyYWNrMS50cmFjay5sYW5ndWFnZSIsICJ6aEhhbnQiKTsKKworICAgICAg
ICAgICAgdHJhY2sxLnNldEF0dHJpYnV0ZSgic3JjbGFuZyIsICJ6aC1jbW4tSGFucy1DTiIpOwor
ICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpbnRlcm5hbHMudGV4dFRyYWNrQkNQNDdMYW5ndWFn
ZSh0cmFjazEudHJhY2spIiwgInpoLWNtbi1IYW5zLUNOIik7CisgICAgICAgICAgICB0ZXN0RXhw
ZWN0ZWQoInRyYWNrMS50cmFjay5sYW5ndWFnZSIsICJ6aC1jbW4tSGFucy1DTiIpOworCisgICAg
ICAgICAgICAvLyA8dHJhY2s+IHNyY2xhbmcgYXR0cmlidXRlIGlzIGludmFsaWQgKGludmFsaWQg
Zmlyc3QgY2hhcmFjdGVyKQorICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpbnRlcm5hbHMudGV4
dFRyYWNrQkNQNDdMYW5ndWFnZSh0cmFjazIudHJhY2spIiwgIiIpOworICAgICAgICAgICAgdGVz
dEV4cGVjdGVkKCJ0cmFjazIudHJhY2subGFuZ3VhZ2UiLCAiLXNsIik7CisKKyAgICAgICAgICAg
IHRyYWNrMi5zZXRBdHRyaWJ1dGUoInNyY2xhbmciLCAic2wtcm96YWotYmlza2UiKTsKKyAgICAg
ICAgICAgIHRlc3RFeHBlY3RlZCgiaW50ZXJuYWxzLnRleHRUcmFja0JDUDQ3TGFuZ3VhZ2UodHJh
Y2syLnRyYWNrKSIsICJzbC1yb3phai1iaXNrZSIpOworICAgICAgICAgICAgdGVzdEV4cGVjdGVk
KCJ0cmFjazIudHJhY2subGFuZ3VhZ2UiLCAic2wtcm96YWotYmlza2UiKTsKKworICAgICAgICAg
ICAgZW5kVGVzdCgpOworICAgICAgICB9KTsKKworICAgIDwvc2NyaXB0PgorCisgICAgPGJvZHk+
CisgICAgICAgIDxwPlRlc3QgdGhhdCBUZXh0VHJhY2tCYXNlLnZhbGlkQkNQNDdMYW5ndWFnZSBp
cyBzZXQgYW5kIHJlc2V0IGNvcnJlY3RseS48L3A+CisgICAgICAgIDx2aWRlbyB3aWR0aD0iNTAw
IiBoZWlnaHQ9IjMwMCIgY29udHJvbHM+CisgICAgICAgICAgICA8dHJhY2sgaWQ9InRyYWNrMSIg
a2luZD0iY2FwdGlvbnMiIHNyY2xhbmc9InpoIiBsYWJlbD0iIiAvPgorICAgICAgICAgICAgPHRy
YWNrIGlkPSJ0cmFjazIiIGtpbmQ9ImNhcHRpb25zIiBzcmNsYW5nPSItc2wiIC8+CisgICAgICAg
IDwvdmlkZW8+CisgICAgPC9ib2R5PgorPC9odG1sPgorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393790</attachid>
            <date>2020-03-17 14:36:07 -0700</date>
            <delta_ts>2020-03-17 15:45:22 -0700</delta_ts>
            <desc>Address post-review comments</desc>
            <filename>bug-209094-20200317143606.patch</filename>
            <type>text/plain</type>
            <size>1841</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzJiYjc3NDUyNTViNmY5
MGFiNWZlYjYzZDBiY2EwYzg3YjhjNGUzMy4uNGFhZGI2ZmNjZTQyNTQxYTUyOTgyMTM3OWI5YTFj
ZWYzYTkwMDg2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTAzLTE3ICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFRleHRUcmFja0Jh
c2Ugc2hvdWxkIHZhbGlkYXRlIGxhbmd1YWdlIGJlZm9yZSBzZXR0aW5nIG1fdmFsaWRCQ1A0N0xh
bmd1YWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDkwOTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwNDM5NjAzPgorCisgICAgICAgIFVucmV2
aWV3ZWQsIGFkZHJlc3MgcG9zdC1jb21taXQgcmV2aWV3IGNvbW1lbnRzLgorCisgICAgICAgICog
aHRtbC90cmFjay9UcmFja0Jhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tCYXNlOjpz
ZXRMYW5ndWFnZSk6IFVzZSBtYWtlU3RyaW5nIGluc3RlYWQgb2YgU3RyaW5nQnVpbGRlci4KKwog
MjAyMC0wMy0xNyAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBUZXh0VHJhY2tCYXNlIHNob3VsZCB2YWxpZGF0ZSBsYW5ndWFnZSBiZWZvcmUgc2V0dGlu
ZyBtX3ZhbGlkQkNQNDdMYW5ndWFnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC90
cmFjay9UcmFja0Jhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0Jhc2Uu
Y3BwCmluZGV4IGVlYzBhZmFlMTBlOWQzMjdmOTg3ZWU0ZjdkMjUyZDJmNzFkMjNkY2UuLmRmMTc4
NmY0ZDJkMTRlZDE2ZDE0YTY3MzFiODhhMDRmZDE1MzY5ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvdHJhY2svVHJhY2tCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1RyYWNrQmFzZS5jcHAKQEAgLTE0OCwxMyArMTQ4LDggQEAgdm9pZCBUcmFja0Jhc2U6
OnNldExhbmd1YWdlKGNvbnN0IEF0b21TdHJpbmcmIGxhbmd1YWdlKQogICAgIFN0cmluZyBtZXNz
YWdlOwogICAgIGlmIChsYW5ndWFnZS5jb250YWlucygoVUNoYXIpJ1wwJykpCiAgICAgICAgIG1l
c3NhZ2UgPSAiVGhlIGxhbmd1YWdlIGNvbnRhaW5zIGEgbnVsbCBjaGFyYWN0ZXIgYW5kIGlzIG5v
dCBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuIl9zOwotICAgIGVsc2UgewotICAgICAgICBT
dHJpbmdCdWlsZGVyIHN0cmluZ0J1aWxkZXI7Ci0gICAgICAgIHN0cmluZ0J1aWxkZXIuYXBwZW5k
TGl0ZXJhbCgiVGhlIGxhbmd1YWdlICciKTsKLSAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQo
bGFuZ3VhZ2UpOwotICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZExpdGVyYWwoIicgaXMgbm90
IGEgdmFsaWQgQkNQIDQ3IGxhbmd1YWdlIHRhZy4iKTsKLSAgICAgICAgbWVzc2FnZSA9IHN0cmlu
Z0J1aWxkZXIudG9TdHJpbmcoKTsKLSAgICB9CisgICAgZWxzZQorICAgICAgICBtZXNzYWdlID0g
bWFrZVN0cmluZygiVGhlIGxhbmd1YWdlICciLCBsYW5ndWFnZSwgIicgaXMgbm90IGEgdmFsaWQg
QkNQIDQ3IGxhbmd1YWdlIHRhZy4iKTsKIAogICAgIGVsZW1lbnQtPmRvY3VtZW50KCkuYWRkQ29u
c29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6UmVuZGVyaW5nLCBNZXNzYWdlTGV2ZWw6Oldhcm5p
bmcsIG1lc3NhZ2UpOwogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>