<?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>207740</bug_id>
          
          <creation_ts>2020-02-13 19:20:48 -0800</creation_ts>
          <short_desc>Inline boxes for images that represent nothing should collapse to empty.</short_desc>
          <delta_ts>2020-02-17 14:51:02 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tommyw</cc>
    
    <cc>youennf</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1618848</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-13 19:20:48 -0800</bug_when>
    <thetext>https://www.w3.org/TR/2016/WD-html51-20160412/rendering.html#replaced-elements-images</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618849</commentid>
    <comment_count>1</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-13 19:21:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/57339992&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618854</commentid>
    <comment_count>2</comment_count>
      <attachid>390724</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-13 19:38:29 -0800</bug_when>
    <thetext>Created attachment 390724
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619001</commentid>
    <comment_count>3</comment_count>
      <attachid>390771</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-14 08:15:21 -0800</bug_when>
    <thetext>Created attachment 390771
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619063</commentid>
    <comment_count>4</comment_count>
      <attachid>390780</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-14 10:10:41 -0800</bug_when>
    <thetext>Created attachment 390780
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619089</commentid>
    <comment_count>5</comment_count>
      <attachid>390786</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-14 11:04:12 -0800</bug_when>
    <thetext>Created attachment 390786
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619116</commentid>
    <comment_count>6</comment_count>
      <attachid>390786</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-02-14 11:48:42 -0800</bug_when>
    <thetext>Comment on attachment 390786
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        Let&apos;s collapse inline boxes when we would display only a broken image and

Say why, not just &quot;let&apos;s&quot;. Preferably link to the spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619121</commentid>
    <comment_count>7</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-14 11:56:54 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #6)
&gt; Comment on attachment 390786 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=390786&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        Let&apos;s collapse inline boxes when we would display only a broken image and
&gt; 
&gt; Say why, not just &quot;let&apos;s&quot;. Preferably link to the spec.
Sure, in the final patch. It&apos;s a WIP for EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619140</commentid>
    <comment_count>8</comment_count>
      <attachid>390798</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-14 12:44:37 -0800</bug_when>
    <thetext>Created attachment 390798
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619499</commentid>
    <comment_count>9</comment_count>
      <attachid>390888</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-16 09:57:13 -0800</bug_when>
    <thetext>Created attachment 390888
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619505</commentid>
    <comment_count>10</comment_count>
      <attachid>390888</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-02-16 12:24:19 -0800</bug_when>
    <thetext>Comment on attachment 390888
Patch

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

Probably not quite expert enough to review, but spotted two small things

&gt; Source/WebCore/rendering/RenderImage.cpp:265
&gt; +        return imageResource().errorOccurred() &amp;&amp; (m_altText.isEmpty() || m_altText.isNull());

Null is also empty, so no need for &quot;|| .isNull&quot; clause here.

&gt; Source/WebCore/rendering/RenderImage.cpp:276
&gt; +    if (element() &amp;&amp; shouldCollapseToEmpty())

Can the null check for element go inside the shouldCollapseToEmpty function? Before I noticed every call doing this check I was going to ask about the assumption in that function that element can’t be null.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619506</commentid>
    <comment_count>11</comment_count>
      <attachid>390891</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-16 12:27:56 -0800</bug_when>
    <thetext>Created attachment 390891
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619508</commentid>
    <comment_count>12</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-16 12:38:50 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #10)
&gt; Comment on attachment 390888 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=390888&amp;action=review
&gt; 
&gt; Probably not quite expert enough to review, but spotted two small things
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderImage.cpp:265
&gt; &gt; +        return imageResource().errorOccurred() &amp;&amp; (m_altText.isEmpty() || m_altText.isNull());
&gt; 
&gt; Null is also empty, so no need for &quot;|| .isNull&quot; clause here.
Thanks! Clearly I don&apos;t use String class very often.

&gt; 
&gt; &gt; Source/WebCore/rendering/RenderImage.cpp:276
&gt; &gt; +    if (element() &amp;&amp; shouldCollapseToEmpty())
&gt; 
&gt; Can the null check for element go inside the shouldCollapseToEmpty function?
&gt; Before I noticed every call doing this check I was going to ask about the
&gt; assumption in that function that element can’t be null.
Yeah, I moved it there (I had a previous version of this patch where the check was in shouldCollapseToEmpty(), but then I thought maybe shouldCollapseToEmpty() should only have the relevant logic. I think it&apos;s safer this way though.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619510</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-02-16 14:38:29 -0800</bug_when>
    <thetext>(In reply to zalan from comment #12)
&gt; (In reply to Darin Adler from comment #10)
&gt; &gt; Can the null check for element go inside the shouldCollapseToEmpty function?
&gt; &gt; Before I noticed every call doing this check I was going to ask about the
&gt; &gt; assumption in that function that element can’t be null.
&gt; Yeah, I moved it there (I had a previous version of this patch where the
&gt; check was in shouldCollapseToEmpty(), but then I thought maybe
&gt; shouldCollapseToEmpty() should only have the relevant logic. I think it&apos;s
&gt; safer this way though.)

I agree that while this is safer, it’s not as conceptually clear and pure given the function name. Maybe best mitigated by writing a brief comment inside the function explaining why returning false for the case where there is no element is always a good idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619523</commentid>
    <comment_count>14</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-16 16:59:36 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #13)
&gt; (In reply to zalan from comment #12)
&gt; &gt; (In reply to Darin Adler from comment #10)
&gt; &gt; &gt; Can the null check for element go inside the shouldCollapseToEmpty function?
&gt; &gt; &gt; Before I noticed every call doing this check I was going to ask about the
&gt; &gt; &gt; assumption in that function that element can’t be null.
&gt; &gt; Yeah, I moved it there (I had a previous version of this patch where the
&gt; &gt; check was in shouldCollapseToEmpty(), but then I thought maybe
&gt; &gt; shouldCollapseToEmpty() should only have the relevant logic. I think it&apos;s
&gt; &gt; safer this way though.)
&gt; 
&gt; I agree that while this is safer, it’s not as conceptually clear and pure
&gt; given the function name. Maybe best mitigated by writing a brief comment
&gt; inside the function explaining why returning false for the case where there
&gt; is no element is always a good idea.
Agreed!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619525</commentid>
    <comment_count>15</comment_count>
      <attachid>390893</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-16 17:13:58 -0800</bug_when>
    <thetext>Created attachment 390893
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619526</commentid>
    <comment_count>16</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-16 17:14:47 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #13)
&gt; (In reply to zalan from comment #12)
&gt; &gt; (In reply to Darin Adler from comment #10)
&gt; &gt; &gt; Can the null check for element go inside the shouldCollapseToEmpty function?
&gt; &gt; &gt; Before I noticed every call doing this check I was going to ask about the
&gt; &gt; &gt; assumption in that function that element can’t be null.
&gt; &gt; Yeah, I moved it there (I had a previous version of this patch where the
&gt; &gt; check was in shouldCollapseToEmpty(), but then I thought maybe
&gt; &gt; shouldCollapseToEmpty() should only have the relevant logic. I think it&apos;s
&gt; &gt; safer this way though.)
&gt; 
&gt; I agree that while this is safer, it’s not as conceptually clear and pure
&gt; given the function name. Maybe best mitigated by writing a brief comment
&gt; inside the function explaining why returning false for the case where there
&gt; is no element is always a good idea.
Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619740</commentid>
    <comment_count>17</comment_count>
      <attachid>390893</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-02-17 10:59:02 -0800</bug_when>
    <thetext>Comment on attachment 390893
Patch

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

&gt; Source/WebCore/ChangeLog:16
&gt; +        https://www.w3.org/TR/2016/WD-html51-20160412/rendering.html#replaced-elements-images

It&apos;s weird to reference an out-of-date W3C HTML spec. Is this in the WHATWG spec? Or in CSS?

&gt; Source/WebCore/rendering/RenderImage.cpp:269
&gt; +        // category of possible unwanted content.

possibly unwanted?

Does this mean that it&apos;s pseudoelement content? Is there a more explicit check for this?

&gt; Source/WebCore/rendering/RenderImage.cpp:304
&gt; +    if (shouldCollapseToEmpty()) {
&gt; +        // Image might need resizing when we are at the final state.
&gt; +        setNeedsLayout();
&gt; +    }

What about the other direction? Good image swapping to a bad image? Do we get here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619818</commentid>
    <comment_count>18</comment_count>
      <attachid>390961</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-02-17 12:53:04 -0800</bug_when>
    <thetext>Created attachment 390961
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619819</commentid>
    <comment_count>19</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-02-17 12:55:29 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #17)
&gt; Comment on attachment 390893 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=390893&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:16
&gt; &gt; +        https://www.w3.org/TR/2016/WD-html51-20160412/rendering.html#replaced-elements-images
&gt; 
&gt; It&apos;s weird to reference an out-of-date W3C HTML spec. Is this in the WHATWG
&gt; spec? Or in CSS?
I didn&apos;t even notice it was an out-of-date spec. Updated to WHATWG.

&gt; 
&gt; &gt; Source/WebCore/rendering/RenderImage.cpp:269
&gt; &gt; +        // category of possible unwanted content.
&gt; 
&gt; possibly unwanted?
&gt; 
&gt; Does this mean that it&apos;s pseudoelement content? Is there a more explicit
&gt; check for this?
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderImage.cpp:304
&gt; &gt; +    if (shouldCollapseToEmpty()) {
&gt; &gt; +        // Image might need resizing when we are at the final state.
&gt; &gt; +        setNeedsLayout();
&gt; &gt; +    }
&gt; 
&gt; What about the other direction? Good image swapping to a bad image? Do we
&gt; get here?
Good-&gt;bad case is actually what is covered here. The bad-&gt;good case is covered implicitly through geometry changes since the &quot;bad&quot; state has (0, 0) dimension.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619882</commentid>
    <comment_count>20</comment_count>
      <attachid>390961</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-17 14:23:08 -0800</bug_when>
    <thetext>Comment on attachment 390961
Patch

Clearing flags on attachment: 390961

Committed r256773: &lt;https://trac.webkit.org/changeset/256773&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619883</commentid>
    <comment_count>21</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-17 14:23:09 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619899</commentid>
    <comment_count>22</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-02-17 14:48:20 -0800</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619900</commentid>
    <comment_count>23</comment_count>
      <attachid>390986</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-02-17 14:48:21 -0800</bug_when>
    <thetext>Created attachment 390986
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619902</commentid>
    <comment_count>24</comment_count>
      <attachid>390986</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-02-17 14:50:53 -0800</bug_when>
    <thetext>Comment on attachment 390986
Patch

Wrong bug</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390724</attachid>
            <date>2020-02-13 19:38:29 -0800</date>
            <delta_ts>2020-02-14 08:15:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200213193828.patch</filename>
            <type>text/plain</type>
            <size>3750</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmI1MDNhMDczODY0ZGI2
ODE0NjNjNGMxOTk5MGY5YWFlZDczMDE2NC4uZGQyNDFiMjNjZjZhYTdmNzhlOGQzZjA1MDAzYWU5
NzJiMGE3N2EyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTAyLTEzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdJUCBwYXRjaC4KKworICAgICAgICBMZXQncyBjb2xs
YXBzZSBpbmxpbmUgYm94ZXMgd2hlbiB3ZSB3b3VsZCBkaXNwbGF5IG9ubHkgYSBicm9rZW4gaW1h
Z2UgYW5kCisgICAgICAgIDEuIGJvdGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0bworICAgICAg
ICAyLiBpbiBzdGFuZGFyZHMgbW9kZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c2hvdWxkQ29sbGFwc2VUb0Vt
cHR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFj
ZWRMb2dpY2FsV2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmNv
bXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVySW1hZ2U6OmltYWdlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6
bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuaDoKKwogMjAyMC0wMi0x
MyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10g
TGluZUJyZWFrZXIgc2hvdWxkIG5vdCBob2xkIG9uIHRvIHRoZSBsYXN0V3JhcE9wcG9ydHVuaXR5
IGlubGluZSBpdGVtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAppbmRl
eCA4YWU0NGY2MmYzOTEyMGFhZGJjMWI4MWZhZDcxMGRmMTFhMzRlMTBmLi5jN2MwNTUzMTlkOGFj
MzNkMTg3NTE1ZDc5MDBmNDhlODVmMjU2ZDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJJbWFnZS5jcHAKQEAgLTI1Nyw2ICsyNTcsMzAgQEAgdm9pZCBSZW5kZXJJbWFnZTo6c3R5
bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRT
dHkKICNlbmRpZgogfQogCitib29sIFJlbmRlckltYWdlOjpzaG91bGRDb2xsYXBzZVRvRW1wdHko
KSBjb25zdAoreworICAgIGF1dG8gaW1hZ2VSZXByZXNlbnRzTm90aGluZyA9IFsmXSB7CisgICAg
ICAgIHJldHVybiBpbWFnZVJlc291cmNlKCkuZXJyb3JPY2N1cnJlZCgpICYmIChtX2FsdFRleHQu
aXNFbXB0eSgpIHx8IG1fYWx0VGV4dC5pc051bGwoKSk7CisgICAgfTsKKyAgICBpZiAoIWltYWdl
UmVwcmVzZW50c05vdGhpbmcoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBk
b2N1bWVudCgpLmluTm9RdWlya3NNb2RlKCkgfHwgKHN0eWxlKCkubG9naWNhbFdpZHRoKCkuaXNB
dXRvKCkgJiYgc3R5bGUoKS5sb2dpY2FsSGVpZ2h0KCkuaXNBdXRvKCkpOworfQorCitMYXlvdXRV
bml0IFJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoU2hvdWxkQ29tcHV0
ZVByZWZlcnJlZCBzaG91bGRDb21wdXRlUHJlZmVycmVkKSBjb25zdAoreworICAgIGlmIChzaG91
bGRDb2xsYXBzZVRvRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICByZXR1cm4gUmVu
ZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChzaG91bGRDb21wdXRlUHJl
ZmVycmVkKTsKK30KKworTGF5b3V0VW5pdCBSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9n
aWNhbEhlaWdodChPcHRpb25hbDxMYXlvdXRVbml0PiBlc3RpbWF0ZWRVc2VkV2lkdGgpIGNvbnN0
Cit7CisgICAgaWYgKHNob3VsZENvbGxhcHNlVG9FbXB0eSgpKQorICAgICAgICByZXR1cm4geyB9
OworICAgIHJldHVybiBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdo
dChlc3RpbWF0ZWRVc2VkV2lkdGgpOworfQorCiB2b2lkIFJlbmRlckltYWdlOjppbWFnZUNoYW5n
ZWQoV3JhcHBlZEltYWdlUHRyIG5ld0ltYWdlLCBjb25zdCBJbnRSZWN0KiByZWN0KQogewogICAg
IGlmIChyZW5kZXJUcmVlQmVpbmdEZXN0cm95ZWQoKSkKQEAgLTI2NSw2ICsyODksOSBAQCB2b2lk
IFJlbmRlckltYWdlOjppbWFnZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyIG5ld0ltYWdlLCBjb25z
dCBJbnRSZWN0KiByZWN0KQogICAgIGlmIChoYXNWaXNpYmxlQm94RGVjb3JhdGlvbnMoKSB8fCBo
YXNNYXNrKCkgfHwgaGFzU2hhcGVPdXRzaWRlKCkpCiAgICAgICAgIFJlbmRlclJlcGxhY2VkOjpp
bWFnZUNoYW5nZWQobmV3SW1hZ2UsIHJlY3QpOwogCisgICAgaWYgKHNob3VsZENvbGxhcHNlVG9F
bXB0eSgpKQorICAgICAgICBzZXROZWVkc0xheW91dCgpOworCiAgICAgaWYgKG5ld0ltYWdlICE9
IGltYWdlUmVzb3VyY2UoKS5pbWFnZVB0cigpIHx8ICFuZXdJbWFnZSkKICAgICAgICAgcmV0dXJu
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCmluZGV4IGIyNDAyYzM0N2Nj
MGM4ZWNhMmUxMWJlNmFkMjQzMmZiNmM5YzJmMjEuLjFkZDY2NWM5M2Q4YjQ0YzdjMjU1ZDcxZGE1
N2Q4MmEzMzhhNjAyOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCkBA
IC0xMzgsNiArMTM4LDExIEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCBsYXlvdXRTaGFkb3dD
b250cm9scyhjb25zdCBMYXlvdXRTaXplJiBvbGRTaXplKTsKIAorICAgIExheW91dFVuaXQgY29t
cHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQgPSBDb21wdXRl
QWN0dWFsKSBjb25zdCBvdmVycmlkZTsKKyAgICBMYXlvdXRVbml0IGNvbXB1dGVSZXBsYWNlZExv
Z2ljYWxIZWlnaHQoT3B0aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdpZHRoID0gV1RG
OjpudWxsb3B0KSBjb25zdCBvdmVycmlkZTsKKworICAgIGJvb2wgc2hvdWxkQ29sbGFwc2VUb0Vt
cHR5KCkgY29uc3Q7CisKICAgICAvLyBUZXh0IHRvIGRpc3BsYXkgYXMgbG9uZyBhcyB0aGUgaW1h
Z2UgaXNuJ3QgYXZhaWxhYmxlLgogICAgIFN0cmluZyBtX2FsdFRleHQ7CiAgICAgc3RkOjp1bmlx
dWVfcHRyPFJlbmRlckltYWdlUmVzb3VyY2U+IG1faW1hZ2VSZXNvdXJjZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390771</attachid>
            <date>2020-02-14 08:15:21 -0800</date>
            <delta_ts>2020-02-14 10:10:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200214081521.patch</filename>
            <type>text/plain</type>
            <size>3795</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmI1MDNhMDczODY0ZGI2
ODE0NjNjNGMxOTk5MGY5YWFlZDczMDE2NC4uZGQyNDFiMjNjZjZhYTdmNzhlOGQzZjA1MDAzYWU5
NzJiMGE3N2EyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTAyLTEzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdJUCBwYXRjaC4KKworICAgICAgICBMZXQncyBjb2xs
YXBzZSBpbmxpbmUgYm94ZXMgd2hlbiB3ZSB3b3VsZCBkaXNwbGF5IG9ubHkgYSBicm9rZW4gaW1h
Z2UgYW5kCisgICAgICAgIDEuIGJvdGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0bworICAgICAg
ICAyLiBpbiBzdGFuZGFyZHMgbW9kZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c2hvdWxkQ29sbGFwc2VUb0Vt
cHR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFj
ZWRMb2dpY2FsV2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmNv
bXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVySW1hZ2U6OmltYWdlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6
bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuaDoKKwogMjAyMC0wMi0x
MyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10g
TGluZUJyZWFrZXIgc2hvdWxkIG5vdCBob2xkIG9uIHRvIHRoZSBsYXN0V3JhcE9wcG9ydHVuaXR5
IGlubGluZSBpdGVtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAppbmRl
eCA4YWU0NGY2MmYzOTEyMGFhZGJjMWI4MWZhZDcxMGRmMTFhMzRlMTBmLi43ZjVjZDE2OGVlMmUx
OGRjY2M3YTQwYjM2YTI5NDNmNzI3NzFhZDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJJbWFnZS5jcHAKQEAgLTI1Nyw2ICsyNTcsMzIgQEAgdm9pZCBSZW5kZXJJbWFnZTo6c3R5
bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRT
dHkKICNlbmRpZgogfQogCitib29sIFJlbmRlckltYWdlOjpzaG91bGRDb2xsYXBzZVRvRW1wdHko
KSBjb25zdAoreworICAgIGF1dG8gaW1hZ2VSZXByZXNlbnRzTm90aGluZyA9IFsmXSB7CisgICAg
ICAgIHJldHVybiBpbWFnZVJlc291cmNlKCkuZXJyb3JPY2N1cnJlZCgpICYmIChtX2FsdFRleHQu
aXNFbXB0eSgpIHx8IG1fYWx0VGV4dC5pc051bGwoKSk7CisgICAgfTsKKyAgICBpZiAoIWlzSW5s
aW5lKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWltYWdlUmVwcmVzZW50c05v
dGhpbmcoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBkb2N1bWVudCgpLmlu
Tm9RdWlya3NNb2RlKCkgfHwgKHN0eWxlKCkubG9naWNhbFdpZHRoKCkuaXNBdXRvKCkgJiYgc3R5
bGUoKS5sb2dpY2FsSGVpZ2h0KCkuaXNBdXRvKCkpOworfQorCitMYXlvdXRVbml0IFJlbmRlcklt
YWdlOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoU2hvdWxkQ29tcHV0ZVByZWZlcnJlZCBz
aG91bGRDb21wdXRlUHJlZmVycmVkKSBjb25zdAoreworICAgIGlmIChzaG91bGRDb2xsYXBzZVRv
RW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICByZXR1cm4gUmVuZGVyUmVwbGFjZWQ6
OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChzaG91bGRDb21wdXRlUHJlZmVycmVkKTsKK30K
KworTGF5b3V0VW5pdCBSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodChP
cHRpb25hbDxMYXlvdXRVbml0PiBlc3RpbWF0ZWRVc2VkV2lkdGgpIGNvbnN0Cit7CisgICAgaWYg
KHNob3VsZENvbGxhcHNlVG9FbXB0eSgpKQorICAgICAgICByZXR1cm4geyB9OworICAgIHJldHVy
biBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodChlc3RpbWF0ZWRV
c2VkV2lkdGgpOworfQorCiB2b2lkIFJlbmRlckltYWdlOjppbWFnZUNoYW5nZWQoV3JhcHBlZElt
YWdlUHRyIG5ld0ltYWdlLCBjb25zdCBJbnRSZWN0KiByZWN0KQogewogICAgIGlmIChyZW5kZXJU
cmVlQmVpbmdEZXN0cm95ZWQoKSkKQEAgLTI2NSw2ICsyOTEsOSBAQCB2b2lkIFJlbmRlckltYWdl
OjppbWFnZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyIG5ld0ltYWdlLCBjb25zdCBJbnRSZWN0KiBy
ZWN0KQogICAgIGlmIChoYXNWaXNpYmxlQm94RGVjb3JhdGlvbnMoKSB8fCBoYXNNYXNrKCkgfHwg
aGFzU2hhcGVPdXRzaWRlKCkpCiAgICAgICAgIFJlbmRlclJlcGxhY2VkOjppbWFnZUNoYW5nZWQo
bmV3SW1hZ2UsIHJlY3QpOwogCisgICAgaWYgKHNob3VsZENvbGxhcHNlVG9FbXB0eSgpKQorICAg
ICAgICBzZXROZWVkc0xheW91dCgpOworCiAgICAgaWYgKG5ld0ltYWdlICE9IGltYWdlUmVzb3Vy
Y2UoKS5pbWFnZVB0cigpIHx8ICFuZXdJbWFnZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCmluZGV4IGIyNDAyYzM0N2NjMGM4ZWNhMmUxMWJl
NmFkMjQzMmZiNmM5YzJmMjEuLjFkZDY2NWM5M2Q4YjQ0YzdjMjU1ZDcxZGE1N2Q4MmEzMzhhNjAy
OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCkBAIC0xMzgsNiArMTM4
LDExIEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCBsYXlvdXRTaGFkb3dDb250cm9scyhjb25z
dCBMYXlvdXRTaXplJiBvbGRTaXplKTsKIAorICAgIExheW91dFVuaXQgY29tcHV0ZVJlcGxhY2Vk
TG9naWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQgPSBDb21wdXRlQWN0dWFsKSBjb25z
dCBvdmVycmlkZTsKKyAgICBMYXlvdXRVbml0IGNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQo
T3B0aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdpZHRoID0gV1RGOjpudWxsb3B0KSBj
b25zdCBvdmVycmlkZTsKKworICAgIGJvb2wgc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkgY29uc3Q7
CisKICAgICAvLyBUZXh0IHRvIGRpc3BsYXkgYXMgbG9uZyBhcyB0aGUgaW1hZ2UgaXNuJ3QgYXZh
aWxhYmxlLgogICAgIFN0cmluZyBtX2FsdFRleHQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRl
ckltYWdlUmVzb3VyY2U+IG1faW1hZ2VSZXNvdXJjZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390780</attachid>
            <date>2020-02-14 10:10:41 -0800</date>
            <delta_ts>2020-02-14 11:04:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200214101040.patch</filename>
            <type>text/plain</type>
            <size>3905</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmI1MDNhMDczODY0ZGI2
ODE0NjNjNGMxOTk5MGY5YWFlZDczMDE2NC4uZGQyNDFiMjNjZjZhYTdmNzhlOGQzZjA1MDAzYWU5
NzJiMGE3N2EyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTAyLTEzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdJUCBwYXRjaC4KKworICAgICAgICBMZXQncyBjb2xs
YXBzZSBpbmxpbmUgYm94ZXMgd2hlbiB3ZSB3b3VsZCBkaXNwbGF5IG9ubHkgYSBicm9rZW4gaW1h
Z2UgYW5kCisgICAgICAgIDEuIGJvdGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0bworICAgICAg
ICAyLiBpbiBzdGFuZGFyZHMgbW9kZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c2hvdWxkQ29sbGFwc2VUb0Vt
cHR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFj
ZWRMb2dpY2FsV2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmNv
bXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVySW1hZ2U6OmltYWdlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6
bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuaDoKKwogMjAyMC0wMi0x
MyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10g
TGluZUJyZWFrZXIgc2hvdWxkIG5vdCBob2xkIG9uIHRvIHRoZSBsYXN0V3JhcE9wcG9ydHVuaXR5
IGlubGluZSBpdGVtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAppbmRl
eCA4YWU0NGY2MmYzOTEyMGFhZGJjMWI4MWZhZDcxMGRmMTFhMzRlMTBmLi41ZjE4NzM0M2M1Nzdi
ZTllZjU4ZjI5ZmVkNzc1MTYzYjUxMTcxYzI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJJbWFnZS5jcHAKQEAgLTI1Nyw2ICsyNTcsMzUgQEAgdm9pZCBSZW5kZXJJbWFnZTo6c3R5
bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRT
dHkKICNlbmRpZgogfQogCitib29sIFJlbmRlckltYWdlOjpzaG91bGRDb2xsYXBzZVRvRW1wdHko
KSBjb25zdAoreworICAgIEFTU0VSVChlbGVtZW50KCkpOworICAgIGF1dG8gaW1hZ2VSZXByZXNl
bnRzTm90aGluZyA9IFsmXSB7CisgICAgICAgIGlmICghZWxlbWVudCgpLT5oYXNBdHRyaWJ1dGUo
SFRNTE5hbWVzOjphbHRBdHRyKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAg
cmV0dXJuIGltYWdlUmVzb3VyY2UoKS5lcnJvck9jY3VycmVkKCkgJiYgKG1fYWx0VGV4dC5pc0Vt
cHR5KCkgfHwgbV9hbHRUZXh0LmlzTnVsbCgpKTsKKyAgICB9OworICAgIGlmICghaXNJbmxpbmUo
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghaW1hZ2VSZXByZXNlbnRzTm90aGlu
ZygpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIGRvY3VtZW50KCkuaW5Ob1F1
aXJrc01vZGUoKSB8fCAoc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS5pc0F1dG8oKSAmJiBzdHlsZSgp
LmxvZ2ljYWxIZWlnaHQoKS5pc0F1dG8oKSk7Cit9CisKK0xheW91dFVuaXQgUmVuZGVySW1hZ2U6
OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChTaG91bGRDb21wdXRlUHJlZmVycmVkIHNob3Vs
ZENvbXB1dGVQcmVmZXJyZWQpIGNvbnN0Cit7CisgICAgaWYgKHNob3VsZENvbGxhcHNlVG9FbXB0
eSgpKQorICAgICAgICByZXR1cm4geyB9OworICAgIHJldHVybiBSZW5kZXJSZXBsYWNlZDo6Y29t
cHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKHNob3VsZENvbXB1dGVQcmVmZXJyZWQpOworfQorCitM
YXlvdXRVbml0IFJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KE9wdGlv
bmFsPExheW91dFVuaXQ+IGVzdGltYXRlZFVzZWRXaWR0aCkgY29uc3QKK3sKKyAgICBpZiAoc2hv
dWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAgICAgIHJldHVybiB7IH07CisgICAgcmV0dXJuIFJl
bmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KGVzdGltYXRlZFVzZWRX
aWR0aCk7Cit9CisKIHZvaWQgUmVuZGVySW1hZ2U6OmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQ
dHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJlY3QpCiB7CiAgICAgaWYgKHJlbmRlclRyZWVC
ZWluZ0Rlc3Ryb3llZCgpKQpAQCAtMjY1LDYgKzI5NCw5IEBAIHZvaWQgUmVuZGVySW1hZ2U6Omlt
YWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJlY3Qp
CiAgICAgaWYgKGhhc1Zpc2libGVCb3hEZWNvcmF0aW9ucygpIHx8IGhhc01hc2soKSB8fCBoYXNT
aGFwZU91dHNpZGUoKSkKICAgICAgICAgUmVuZGVyUmVwbGFjZWQ6OmltYWdlQ2hhbmdlZChuZXdJ
bWFnZSwgcmVjdCk7CiAKKyAgICBpZiAoc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAgICAg
IHNldE5lZWRzTGF5b3V0KCk7CisKICAgICBpZiAobmV3SW1hZ2UgIT0gaW1hZ2VSZXNvdXJjZSgp
LmltYWdlUHRyKCkgfHwgIW5ld0ltYWdlKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckltYWdlLmgKaW5kZXggYjI0MDJjMzQ3Y2MwYzhlY2EyZTExYmU2YWQy
NDMyZmI2YzljMmYyMS4uMWRkNjY1YzkzZDhiNDRjN2MyNTVkNzFkYTU3ZDgyYTMzOGE2MDI5NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmgKQEAgLTEzOCw2ICsxMzgsMTEg
QEAgcHJpdmF0ZToKICAgICAKICAgICB2b2lkIGxheW91dFNoYWRvd0NvbnRyb2xzKGNvbnN0IExh
eW91dFNpemUmIG9sZFNpemUpOwogCisgICAgTGF5b3V0VW5pdCBjb21wdXRlUmVwbGFjZWRMb2dp
Y2FsV2lkdGgoU2hvdWxkQ29tcHV0ZVByZWZlcnJlZCA9IENvbXB1dGVBY3R1YWwpIGNvbnN0IG92
ZXJyaWRlOworICAgIExheW91dFVuaXQgY29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodChPcHRp
b25hbDxMYXlvdXRVbml0PiBlc3RpbWF0ZWRVc2VkV2lkdGggPSBXVEY6Om51bGxvcHQpIGNvbnN0
IG92ZXJyaWRlOworCisgICAgYm9vbCBzaG91bGRDb2xsYXBzZVRvRW1wdHkoKSBjb25zdDsKKwog
ICAgIC8vIFRleHQgdG8gZGlzcGxheSBhcyBsb25nIGFzIHRoZSBpbWFnZSBpc24ndCBhdmFpbGFi
bGUuCiAgICAgU3RyaW5nIG1fYWx0VGV4dDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVySW1h
Z2VSZXNvdXJjZT4gbV9pbWFnZVJlc291cmNlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390786</attachid>
            <date>2020-02-14 11:04:12 -0800</date>
            <delta_ts>2020-02-14 12:44:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200214110411.patch</filename>
            <type>text/plain</type>
            <size>3925</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmI1MDNhMDczODY0ZGI2
ODE0NjNjNGMxOTk5MGY5YWFlZDczMDE2NC4uZGQyNDFiMjNjZjZhYTdmNzhlOGQzZjA1MDAzYWU5
NzJiMGE3N2EyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTAyLTEzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdJUCBwYXRjaC4KKworICAgICAgICBMZXQncyBjb2xs
YXBzZSBpbmxpbmUgYm94ZXMgd2hlbiB3ZSB3b3VsZCBkaXNwbGF5IG9ubHkgYSBicm9rZW4gaW1h
Z2UgYW5kCisgICAgICAgIDEuIGJvdGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0bworICAgICAg
ICAyLiBpbiBzdGFuZGFyZHMgbW9kZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c2hvdWxkQ29sbGFwc2VUb0Vt
cHR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFj
ZWRMb2dpY2FsV2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmNv
bXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVySW1hZ2U6OmltYWdlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6
bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuaDoKKwogMjAyMC0wMi0x
MyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10g
TGluZUJyZWFrZXIgc2hvdWxkIG5vdCBob2xkIG9uIHRvIHRoZSBsYXN0V3JhcE9wcG9ydHVuaXR5
IGlubGluZSBpdGVtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAppbmRl
eCA4YWU0NGY2MmYzOTEyMGFhZGJjMWI4MWZhZDcxMGRmMTFhMzRlMTBmLi4wMjVlZDNiMmMxODAw
ZmY5NDBmYTA3OTA3ZWY1MDQ3MmQxYTFhMWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJJbWFnZS5jcHAKQEAgLTI1Nyw2ICsyNTcsMzYgQEAgdm9pZCBSZW5kZXJJbWFnZTo6c3R5
bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRT
dHkKICNlbmRpZgogfQogCitib29sIFJlbmRlckltYWdlOjpzaG91bGRDb2xsYXBzZVRvRW1wdHko
KSBjb25zdAoreworICAgIGF1dG8gaW1hZ2VSZXByZXNlbnRzTm90aGluZyA9IFsmXSB7CisgICAg
ICAgIGlmICghZWxlbWVudCgpLT5oYXNBdHRyaWJ1dGUoSFRNTE5hbWVzOjphbHRBdHRyKSkKKyAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIGltYWdlUmVzb3VyY2UoKS5l
cnJvck9jY3VycmVkKCkgJiYgKG1fYWx0VGV4dC5pc0VtcHR5KCkgfHwgbV9hbHRUZXh0LmlzTnVs
bCgpKTsKKyAgICB9OworICAgIGlmICghZWxlbWVudCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgaWYgKCFpc0lubGluZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFp
bWFnZVJlcHJlc2VudHNOb3RoaW5nKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1
cm4gZG9jdW1lbnQoKS5pbk5vUXVpcmtzTW9kZSgpIHx8IChzdHlsZSgpLmxvZ2ljYWxXaWR0aCgp
LmlzQXV0bygpICYmIHN0eWxlKCkubG9naWNhbEhlaWdodCgpLmlzQXV0bygpKTsKK30KKworTGF5
b3V0VW5pdCBSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENv
bXB1dGVQcmVmZXJyZWQgc2hvdWxkQ29tcHV0ZVByZWZlcnJlZCkgY29uc3QKK3sKKyAgICBpZiAo
c2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAgICAgIHJldHVybiB7IH07CisgICAgcmV0dXJu
IFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoc2hvdWxkQ29tcHV0
ZVByZWZlcnJlZCk7Cit9CisKK0xheW91dFVuaXQgUmVuZGVySW1hZ2U6OmNvbXB1dGVSZXBsYWNl
ZExvZ2ljYWxIZWlnaHQoT3B0aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdpZHRoKSBj
b25zdAoreworICAgIGlmIChzaG91bGRDb2xsYXBzZVRvRW1wdHkoKSkKKyAgICAgICAgcmV0dXJu
IHsgfTsKKyAgICByZXR1cm4gUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxI
ZWlnaHQoZXN0aW1hdGVkVXNlZFdpZHRoKTsKK30KKwogdm9pZCBSZW5kZXJJbWFnZTo6aW1hZ2VD
aGFuZ2VkKFdyYXBwZWRJbWFnZVB0ciBuZXdJbWFnZSwgY29uc3QgSW50UmVjdCogcmVjdCkKIHsK
ICAgICBpZiAocmVuZGVyVHJlZUJlaW5nRGVzdHJveWVkKCkpCkBAIC0yNjUsNiArMjk1LDkgQEAg
dm9pZCBSZW5kZXJJbWFnZTo6aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0ciBuZXdJbWFnZSwg
Y29uc3QgSW50UmVjdCogcmVjdCkKICAgICBpZiAoaGFzVmlzaWJsZUJveERlY29yYXRpb25zKCkg
fHwgaGFzTWFzaygpIHx8IGhhc1NoYXBlT3V0c2lkZSgpKQogICAgICAgICBSZW5kZXJSZXBsYWNl
ZDo6aW1hZ2VDaGFuZ2VkKG5ld0ltYWdlLCByZWN0KTsKIAorICAgIGlmIChzaG91bGRDb2xsYXBz
ZVRvRW1wdHkoKSkKKyAgICAgICAgc2V0TmVlZHNMYXlvdXQoKTsKKwogICAgIGlmIChuZXdJbWFn
ZSAhPSBpbWFnZVJlc291cmNlKCkuaW1hZ2VQdHIoKSB8fCAhbmV3SW1hZ2UpCiAgICAgICAgIHJl
dHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdl
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaAppbmRleCBiMjQwMmMz
NDdjYzBjOGVjYTJlMTFiZTZhZDI0MzJmYjZjOWMyZjIxLi4xZGQ2NjVjOTNkOGI0NGM3YzI1NWQ3
MWRhNTdkODJhMzM4YTYwMjk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVySW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2Uu
aApAQCAtMTM4LDYgKzEzOCwxMSBAQCBwcml2YXRlOgogICAgIAogICAgIHZvaWQgbGF5b3V0U2hh
ZG93Q29udHJvbHMoY29uc3QgTGF5b3V0U2l6ZSYgb2xkU2l6ZSk7CiAKKyAgICBMYXlvdXRVbml0
IGNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChTaG91bGRDb21wdXRlUHJlZmVycmVkID0gQ29t
cHV0ZUFjdHVhbCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgTGF5b3V0VW5pdCBjb21wdXRlUmVwbGFj
ZWRMb2dpY2FsSGVpZ2h0KE9wdGlvbmFsPExheW91dFVuaXQ+IGVzdGltYXRlZFVzZWRXaWR0aCA9
IFdURjo6bnVsbG9wdCkgY29uc3Qgb3ZlcnJpZGU7CisKKyAgICBib29sIHNob3VsZENvbGxhcHNl
VG9FbXB0eSgpIGNvbnN0OworCiAgICAgLy8gVGV4dCB0byBkaXNwbGF5IGFzIGxvbmcgYXMgdGhl
IGltYWdlIGlzbid0IGF2YWlsYWJsZS4KICAgICBTdHJpbmcgbV9hbHRUZXh0OwogICAgIHN0ZDo6
dW5pcXVlX3B0cjxSZW5kZXJJbWFnZVJlc291cmNlPiBtX2ltYWdlUmVzb3VyY2U7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390798</attachid>
            <date>2020-02-14 12:44:37 -0800</date>
            <delta_ts>2020-02-16 09:57:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200214124436.patch</filename>
            <type>text/plain</type>
            <size>5354</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmI1MDNhMDczODY0ZGI2
ODE0NjNjNGMxOTk5MGY5YWFlZDczMDE2NC4uODg0NjQ4ZDk2MjRmNGYwYjkyM2E5MTgwNWE4Yzhi
MzBlMDllOGI1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTAyLTEzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdJUCBwYXRjaC4KKworICAgICAgICBodHRwczovL3d3
dy53My5vcmcvVFIvMjAxNi9XRC1odG1sNTEtMjAxNjA0MTIvcmVuZGVyaW5nLmh0bWwjcmVwbGFj
ZWQtZWxlbWVudHMtaW1hZ2VzCisKKyAgICAgICAgTGV0J3MgY29sbGFwc2UgaW5saW5lIGJveGVz
IHdoZW4gd2Ugd291bGQgZGlzcGxheSBvbmx5IGEgYnJva2VuIGltYWdlIGFuZAorICAgICAgICAx
LiBib3RoIGhlaWdodCBhbmQgd2lkdGggYXJlIGF1dG8KKyAgICAgICAgMi4gaW4gc3RhbmRhcmRz
IG1vZGUuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVySW1hZ2U6OnNob3VsZENvbGxhcHNlVG9FbXB0eSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFjZWRMb2dp
Y2FsSGVpZ2h0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjppbWFnZUNo
YW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmxheW91dCk6CisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckltYWdlLmg6CisKIDIwMjAtMDItMTMgIFphbGFuIEJ1anRhcyAg
PHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtJRkNdIExpbmVCcmVha2VyIHNob3Vs
ZCBub3QgaG9sZCBvbiB0byB0aGUgbGFzdFdyYXBPcHBvcnR1bml0eSBpbmxpbmUgaXRlbQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5jcHAKaW5kZXggOGFlNDRmNjJmMzkxMjBh
YWRiYzFiODFmYWQ3MTBkZjExYTM0ZTEwZi4uMDI1ZWQzYjJjMTgwMGZmOTQwZmEwNzkwN2VmNTA0
NzJkMWExYTFiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcklt
YWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCkBA
IC0yNTcsNiArMjU3LDM2IEBAIHZvaWQgUmVuZGVySW1hZ2U6OnN0eWxlRGlkQ2hhbmdlKFN0eWxl
RGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSogb2xkU3R5CiAjZW5kaWYKIH0KIAor
Ym9vbCBSZW5kZXJJbWFnZTo6c2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkgY29uc3QKK3sKKyAgICBh
dXRvIGltYWdlUmVwcmVzZW50c05vdGhpbmcgPSBbJl0geworICAgICAgICBpZiAoIWVsZW1lbnQo
KS0+aGFzQXR0cmlidXRlKEhUTUxOYW1lczo6YWx0QXR0cikpCisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIHJldHVybiBpbWFnZVJlc291cmNlKCkuZXJyb3JPY2N1cnJlZCgpICYm
IChtX2FsdFRleHQuaXNFbXB0eSgpIHx8IG1fYWx0VGV4dC5pc051bGwoKSk7CisgICAgfTsKKyAg
ICBpZiAoIWVsZW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghaXNJbmxp
bmUoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghaW1hZ2VSZXByZXNlbnRzTm90
aGluZygpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIGRvY3VtZW50KCkuaW5O
b1F1aXJrc01vZGUoKSB8fCAoc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS5pc0F1dG8oKSAmJiBzdHls
ZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc0F1dG8oKSk7Cit9CisKK0xheW91dFVuaXQgUmVuZGVySW1h
Z2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChTaG91bGRDb21wdXRlUHJlZmVycmVkIHNo
b3VsZENvbXB1dGVQcmVmZXJyZWQpIGNvbnN0Cit7CisgICAgaWYgKHNob3VsZENvbGxhcHNlVG9F
bXB0eSgpKQorICAgICAgICByZXR1cm4geyB9OworICAgIHJldHVybiBSZW5kZXJSZXBsYWNlZDo6
Y29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKHNob3VsZENvbXB1dGVQcmVmZXJyZWQpOworfQor
CitMYXlvdXRVbml0IFJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KE9w
dGlvbmFsPExheW91dFVuaXQ+IGVzdGltYXRlZFVzZWRXaWR0aCkgY29uc3QKK3sKKyAgICBpZiAo
c2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAgICAgIHJldHVybiB7IH07CisgICAgcmV0dXJu
IFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KGVzdGltYXRlZFVz
ZWRXaWR0aCk7Cit9CisKIHZvaWQgUmVuZGVySW1hZ2U6OmltYWdlQ2hhbmdlZChXcmFwcGVkSW1h
Z2VQdHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJlY3QpCiB7CiAgICAgaWYgKHJlbmRlclRy
ZWVCZWluZ0Rlc3Ryb3llZCgpKQpAQCAtMjY1LDYgKzI5NSw5IEBAIHZvaWQgUmVuZGVySW1hZ2U6
OmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJl
Y3QpCiAgICAgaWYgKGhhc1Zpc2libGVCb3hEZWNvcmF0aW9ucygpIHx8IGhhc01hc2soKSB8fCBo
YXNTaGFwZU91dHNpZGUoKSkKICAgICAgICAgUmVuZGVyUmVwbGFjZWQ6OmltYWdlQ2hhbmdlZChu
ZXdJbWFnZSwgcmVjdCk7CiAKKyAgICBpZiAoc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAg
ICAgIHNldE5lZWRzTGF5b3V0KCk7CisKICAgICBpZiAobmV3SW1hZ2UgIT0gaW1hZ2VSZXNvdXJj
ZSgpLmltYWdlUHRyKCkgfHwgIW5ld0ltYWdlKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmgKaW5kZXggYjI0MDJjMzQ3Y2MwYzhlY2EyZTExYmU2
YWQyNDMyZmI2YzljMmYyMS4uMWRkNjY1YzkzZDhiNDRjN2MyNTVkNzFkYTU3ZDgyYTMzOGE2MDI5
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmgKQEAgLTEzOCw2ICsxMzgs
MTEgQEAgcHJpdmF0ZToKICAgICAKICAgICB2b2lkIGxheW91dFNoYWRvd0NvbnRyb2xzKGNvbnN0
IExheW91dFNpemUmIG9sZFNpemUpOwogCisgICAgTGF5b3V0VW5pdCBjb21wdXRlUmVwbGFjZWRM
b2dpY2FsV2lkdGgoU2hvdWxkQ29tcHV0ZVByZWZlcnJlZCA9IENvbXB1dGVBY3R1YWwpIGNvbnN0
IG92ZXJyaWRlOworICAgIExheW91dFVuaXQgY29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodChP
cHRpb25hbDxMYXlvdXRVbml0PiBlc3RpbWF0ZWRVc2VkV2lkdGggPSBXVEY6Om51bGxvcHQpIGNv
bnN0IG92ZXJyaWRlOworCisgICAgYm9vbCBzaG91bGRDb2xsYXBzZVRvRW1wdHkoKSBjb25zdDsK
KwogICAgIC8vIFRleHQgdG8gZGlzcGxheSBhcyBsb25nIGFzIHRoZSBpbWFnZSBpc24ndCBhdmFp
bGFibGUuCiAgICAgU3RyaW5nIG1fYWx0VGV4dDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVy
SW1hZ2VSZXNvdXJjZT4gbV9pbWFnZVJlc291cmNlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDIyOTNlMTI5YmQ1ZTVkMDll
ZmYzOGJjYzk3YWVhNmYwOWFmNmMwODEuLmQ3YWJiZWU5MTc1NmFiZmQwNDYyMTFjODQxMTY3OTEw
Yzk0YmFiYzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0wMi0xMyAgWmFsYW4gQnVqdGFz
ICA8emFsYW5AYXBwbGUuY29tPgorCisgICAgICAgIElubGluZSBib3hlcyBmb3IgaW1hZ2VzIHRo
YXQgcmVwcmVzZW50IG5vdGhpbmcgc2hvdWxkIGNvbGxhcHNlIHRvIGVtcHR5LgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3NzQwCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81NzMzOTk5Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHRhYmxlcy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbDoKKwog
MjAyMC0wMi0xMyAgTmlrb3MgTW91Y2h0YXJpcyAgPG5tb3VjaHRhcmlzQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZW1vdmUgQXBwbGVQYXlCaWxsaW5nQWRkcmVzcy5odG1sIGZyb20gVGVzdEV4cGVj
dGF0aW9ucyBhZnRlciBmaXggZm9yIGZsYWt5IGZhaWx1cmUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3RhYmxlcy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbCBiL0xheW91dFRlc3RzL3RhYmxl
cy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbAppbmRleCAwYTdhYzg3NjE4MzcxNjBhNDNiYzEy
NTQyOTU5OTY4NzJhNDQxOTQ0Li4wMjIzZjJhYWNhOWE5YjU5ZWY5MDI5MzFkYjVhODRjMDYxYWQ3
OTRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy90YWJsZXMvbW96aWxsYS9idWdzL2J1ZzU2MjAx
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvdGFibGVzL21vemlsbGEvYnVncy9idWc1NjIwMS5odG1s
CkBAIC0xMCwxMCArMTAsMTAgQEAKICAgICAgPHRhYmxlIGJvcmRlcj0iMSI+CiAgICAgICA8dHI+
CiAgICAgICAgPHRkPgotICAgICAgICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xvZ29fc21hbGwuZ2lm
IiBhbHQ9IiI+CisgICAgICAgIDxpbWcgc3JjPSIuLi9pbWFnZXMvbG9nb19zbWFsbC5naWYiPgog
ICAgICAgIDwvdGQ+CiAgICAgICAgPHRkPgotICAgICAgICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xv
Z29fc21hbGwuZ2lmIiBhbHQ9IiI+CisgICAgICAgIDxpbWcgc3JjPSIuLi9pbWFnZXMvbG9nb19z
bWFsbC5naWYiPgogICAgICAgIDwvdGQ+CiAgICAgICA8L3RyPgogICAgICA8L3RhYmxlPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390888</attachid>
            <date>2020-02-16 09:57:13 -0800</date>
            <delta_ts>2020-02-16 12:27:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200216095712.patch</filename>
            <type>text/plain</type>
            <size>13494</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2EzYjkzYzkxMDU2NmQ4
MTY4NTEyMzRlYzU0NzQzY2YzMTk5NzY0MC4uNjI1ODkyOTA4OGYyMzA4OTk0ZmUwYjM0NWU2Nzk1
YTI4NjUwZjM2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAyLTE2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2Ut
Ym94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbAorICAgICAgICAg
ICAgICAgZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29s
bGFwc2UtcXVpcmtzLmh0bWwKKworICAgICAgICBMZXQncyBjb2xsYXBzZSBpbmxpbmUgYm94ZXMg
d2hlbiB3ZSB3b3VsZCBkaXNwbGF5IGEgYnJva2VuIGltYWdlIG9ubHkgYW5kCisgICAgICAgIDEu
IGFsdCBhdHRyaWJ1dGUgaXMgZXhwbGljaXRseSBzZXQgdG8gZW1wdHkgYW5kCisgICAgICAgIDIu
IGJvdGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0byBvciB3ZSBhcmUgaW4gc3RhbmRhcmRzIG1v
ZGUuCisKKyAgICAgICAgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTYvV0QtaHRtbDUxLTIwMTYw
NDEyL3JlbmRlcmluZy5odG1sI3JlcGxhY2VkLWVsZW1lbnRzLWltYWdlcworCisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdl
OjpzaG91bGRDb2xsYXBzZVRvRW1wdHkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
SW1hZ2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckltYWdlOjpsYXlvdXQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJ
bWFnZS5oOgorCiAyMDIwLTAyLTE2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0xGQ11bRmxvYXRdIFNpbXBsaWZ5IEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OnVz
ZWRBdmFpbGFibGVXaWR0aEZvckZsb2F0QXZvaWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJJbWFnZS5jcHAKaW5kZXggOGFlNDRmNjJmMzkxMjBhYWRiYzFiODFmYWQ3MTBkZjExYTM0
ZTEwZi4uMTM3YTE2NGJjNzJkYzVhZmE5NWJmNGNjZTk3YmMyMjYzM2YzMTc5NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCkBAIC0yNTcsNiArMjU3LDM0IEBAIHZv
aWQgUmVuZGVySW1hZ2U6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25z
dCBSZW5kZXJTdHlsZSogb2xkU3R5CiAjZW5kaWYKIH0KIAorYm9vbCBSZW5kZXJJbWFnZTo6c2hv
dWxkQ29sbGFwc2VUb0VtcHR5KCkgY29uc3QKK3sKKyAgICBhdXRvIGltYWdlUmVwcmVzZW50c05v
dGhpbmcgPSBbJl0geworICAgICAgICBpZiAoIWVsZW1lbnQoKS0+aGFzQXR0cmlidXRlKEhUTUxO
YW1lczo6YWx0QXR0cikpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVy
biBpbWFnZVJlc291cmNlKCkuZXJyb3JPY2N1cnJlZCgpICYmIChtX2FsdFRleHQuaXNFbXB0eSgp
IHx8IG1fYWx0VGV4dC5pc051bGwoKSk7CisgICAgfTsKKyAgICBpZiAoIWlzSW5saW5lKCkpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWltYWdlUmVwcmVzZW50c05vdGhpbmcoKSkK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBkb2N1bWVudCgpLmluTm9RdWlya3NN
b2RlKCkgfHwgKHN0eWxlKCkubG9naWNhbFdpZHRoKCkuaXNBdXRvKCkgJiYgc3R5bGUoKS5sb2dp
Y2FsSGVpZ2h0KCkuaXNBdXRvKCkpOworfQorCitMYXlvdXRVbml0IFJlbmRlckltYWdlOjpjb21w
dXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoU2hvdWxkQ29tcHV0ZVByZWZlcnJlZCBzaG91bGRDb21w
dXRlUHJlZmVycmVkKSBjb25zdAoreworICAgIGlmIChlbGVtZW50KCkgJiYgc2hvdWxkQ29sbGFw
c2VUb0VtcHR5KCkpCisgICAgICAgIHJldHVybiB7IH07CisgICAgcmV0dXJuIFJlbmRlclJlcGxh
Y2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoc2hvdWxkQ29tcHV0ZVByZWZlcnJlZCk7
Cit9CisKK0xheW91dFVuaXQgUmVuZGVySW1hZ2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWln
aHQoT3B0aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdpZHRoKSBjb25zdAoreworICAg
IGlmIChlbGVtZW50KCkgJiYgc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAgICAgIHJldHVy
biB7IH07CisgICAgcmV0dXJuIFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2Fs
SGVpZ2h0KGVzdGltYXRlZFVzZWRXaWR0aCk7Cit9CisKIHZvaWQgUmVuZGVySW1hZ2U6OmltYWdl
Q2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJlY3QpCiB7
CiAgICAgaWYgKHJlbmRlclRyZWVCZWluZ0Rlc3Ryb3llZCgpKQpAQCAtMjY1LDYgKzI5MywxMSBA
QCB2b2lkIFJlbmRlckltYWdlOjppbWFnZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyIG5ld0ltYWdl
LCBjb25zdCBJbnRSZWN0KiByZWN0KQogICAgIGlmIChoYXNWaXNpYmxlQm94RGVjb3JhdGlvbnMo
KSB8fCBoYXNNYXNrKCkgfHwgaGFzU2hhcGVPdXRzaWRlKCkpCiAgICAgICAgIFJlbmRlclJlcGxh
Y2VkOjppbWFnZUNoYW5nZWQobmV3SW1hZ2UsIHJlY3QpOwogCisgICAgaWYgKGVsZW1lbnQoKSAm
JiBzaG91bGRDb2xsYXBzZVRvRW1wdHkoKSkgeworICAgICAgICAvLyBJbWFnZSBtaWdodCBuZWVk
IHJlc2l6aW5nIHdoZW4gd2UgYXJlIGF0IHRoZSBmaW5hbCBzdGF0ZS4gCisgICAgICAgIHNldE5l
ZWRzTGF5b3V0KCk7CisgICAgfQorCiAgICAgaWYgKG5ld0ltYWdlICE9IGltYWdlUmVzb3VyY2Uo
KS5pbWFnZVB0cigpIHx8ICFuZXdJbWFnZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCmluZGV4IGIyNDAyYzM0N2NjMGM4ZWNhMmUxMWJlNmFk
MjQzMmZiNmM5YzJmMjEuLjFkZDY2NWM5M2Q4YjQ0YzdjMjU1ZDcxZGE1N2Q4MmEzMzhhNjAyOTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCkBAIC0xMzgsNiArMTM4LDEx
IEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCBsYXlvdXRTaGFkb3dDb250cm9scyhjb25zdCBM
YXlvdXRTaXplJiBvbGRTaXplKTsKIAorICAgIExheW91dFVuaXQgY29tcHV0ZVJlcGxhY2VkTG9n
aWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQgPSBDb21wdXRlQWN0dWFsKSBjb25zdCBv
dmVycmlkZTsKKyAgICBMYXlvdXRVbml0IGNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQoT3B0
aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdpZHRoID0gV1RGOjpudWxsb3B0KSBjb25z
dCBvdmVycmlkZTsKKworICAgIGJvb2wgc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkgY29uc3Q7CisK
ICAgICAvLyBUZXh0IHRvIGRpc3BsYXkgYXMgbG9uZyBhcyB0aGUgaW1hZ2UgaXNuJ3QgYXZhaWxh
YmxlLgogICAgIFN0cmluZyBtX2FsdFRleHQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlcklt
YWdlUmVzb3VyY2U+IG1faW1hZ2VSZXNvdXJjZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkNTQ1MDNmMmIzMDg4MGU5OTNl
OTQ1ZGE3ZGM2ODk2M2U0YTE4MDcwLi5jNGMxZTBjMjk2ZjI5YjBkMDM0ZDE3MDk2ODZmZjVlODdk
OTFkMGYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDItMTYgIFphbGFuIEJ1anRhcyAg
PHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBJbmxpbmUgYm94ZXMgZm9yIGltYWdlcyB0aGF0
IHJlcHJlc2VudCBub3RoaW5nIHNob3VsZCBjb2xsYXBzZSB0byBlbXB0eS4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzc0MAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNTczMzk5OTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0
LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBz
ZS1uby1xdWlya3MuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9pbWFnZXMvaW5saW5lLWlt
YWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFs
dC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHRhYmxlcy9t
b3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbDoKKwogMjAyMC0wMi0xNiAgWmFsYW4gQnVqdGFzICA8
emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdIEVuYWJsZSBMRkMgcmVncmVzc2lvbiB0
ZXN0aW5nIG9uIGZhc3QvYmxvY2svYmxvY2stb25seQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Ut
bm8tcXVpcmtzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1p
bWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZTgwYTA5ZGIzODJjMmE1NmMyYjI3ZDE2ZmY1OTBmZGVmYjhiYzQ1Ygot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1i
b3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwyMiBAQAorU1RBTkRBUkRTIG1vZGUuCisKKzEuICdhbHQnIGF0dHJpYnV0ZSBpcyBu
b3Qgc2V0IChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6CisgMjBweCAyMHB4IAorCisy
LiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGEgbm9uLWVtcHR5IHZhbHVlIChpbWFnZSBib3gg
c2hvdWxkIG5vdCBjb2xsYXBzZSk6CisgMjBweCAyMHB4ICAyMHB4IDIwcHggCisKKzMuICdhbHQn
IGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgY29sbGFw
c2UpOgorIDBweCAwcHggCisKKzQuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFs
dWUgb24gYSBibG9ja2lmaWVkIGltYWdlIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6
CisyMHB4IDIwcHgKKworNS4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSBh
bmQgd2lkdGgvaGVpZ2h0IHZhbHVlcyBhcmUgc2V0IChpbWFnZSBib3ggc2hvdWxkIGNvbGxhcHNl
KToKK3dpZHRoIGF0dHJpYnV0ZSBpcyBzZXQ6IDBweCAwcHgKK2hlaWdodCBhdHRyaWJ1dGUgaXMg
c2V0OiAwcHggMHB4Cit3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZXMgYXJlIHNldDogMHB4IDBw
eAoraW5saW5lIHN0eWxlIHdpdGggd2lkdGggc2V0OiAwcHggMHB4CitpbmxpbmUgc3R5bGUgd2l0
aCBoZWlnaHQgc2V0OiAwcHggMHB4CitpbmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0
OiAwcHggMHB4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1p
bWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQt
Y29sbGFwc2Utbm8tcXVpcmtzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMThhM2RhZjQzNWEzMjExMDE1YmZm
NDg3OTBmZGRmNDBlZGQ0ZjZkNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
aW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1
aXJrcy5odG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8dGl0
bGU+PC90aXRsZT4KKzxoZWFkPgorPHN0eWxlPgoraW1nIHsgZm9udC1zaXplOiAwcHg7IH0KKzwv
c3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CitTVEFOREFSRFMgbW9k
ZS48YnI+PGJyPgorCisxLiAnYWx0JyBhdHRyaWJ1dGUgaXMgbm90IHNldCAoaW1hZ2UgYm94IHNo
b3VsZCBub3QgY29sbGFwc2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2UxIHNyYz0iYnJva2VuaW1hZ2Uu
anBnIj4gPHNwYW4gaWQ9cmVzdWx0MT48L3NwYW4+Cis8YnI+PGJyPgorMi4gJ2FsdCcgYXR0cmli
dXRlIGlzIHNldCB0byBhIG5vbi1lbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29s
bGFwc2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2UyIGFsdD0iICIgc3JjPSJicm9rZW5pbWFnZS5qcGci
PiA8c3BhbiBpZD1yZXN1bHQyPjwvc3Bhbj4gPGltZyBpZD1pbWFnZTMgYWx0PSJ0ZXh0IiBzcmM9
ImJyb2tlbmltYWdlLmpwZyI+IDxzcGFuIGlkPXJlc3VsdDM+PC9zcGFuPgorPGJyPjxicj4KKzMu
ICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQg
Y29sbGFwc2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2U0IGlkPWNvbGxhcHNlZDEgYWx0PSIiIHNyYz0i
YnJva2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0ND48L3NwYW4+Cis8YnI+PGJyPgorNC4g
J2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSBvbiBhIGJsb2NraWZpZWQgaW1h
Z2UgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNlKTo8YnI+Cis8aW1nIGlkPWltYWdlNSBh
bHQ9IiIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyB3aWR0aDsgMjBweDsgaGVpZ2h0OiAyMHB4IiBz
cmM9ImJyb2tlbmltYWdlLmpwZyI+IDxzcGFuIGlkPXJlc3VsdDU+PC9zcGFuPjxicj4KKzxicj4K
KzUuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgYW5kIHdpZHRoL2hlaWdo
dCB2YWx1ZXMgYXJlIHNldCAoaW1hZ2UgYm94IHNob3VsZCBjb2xsYXBzZSk6PGJyPgorPGltZyBp
ZD1pbWFnZTYgIGFsdD0iIiB3aWR0aD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+d2lkdGggYXR0
cmlidXRlIGlzIHNldDogPHNwYW4gaWQ9cmVzdWx0Nj48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFn
ZTcgIGFsdD0iIiBoZWlnaHQ9MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPmhlaWdodCBhdHRyaWJ1
dGUgaXMgc2V0OiA8c3BhbiBpZD1yZXN1bHQ3Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlOCAg
YWx0PSIiIHdpZHRoPTIwIGhlaWdodD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+d2lkdGggYW5k
IGhlaWdodCBhdHRyaWJ1dGVzIGFyZSBzZXQ6IDxzcGFuIGlkPXJlc3VsdDg+PC9zcGFuPjxicj4K
KzxpbWcgaWQ9aW1hZ2U5ICBhbHQ9IiIgc3R5bGU9IndpZHRoOiAyMHB4OyIgc3JjPSJicm9rZW5p
bWFnZS5qcGciPmlubGluZSBzdHlsZSB3aXRoIHdpZHRoIHNldDogPHNwYW4gaWQ9cmVzdWx0OT48
L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTEwICBhbHQ9IiIgc3R5bGU9ImhlaWdodDogMjBweDsi
IHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbmxpbmUgc3R5bGUgd2l0aCBoZWlnaHQgc2V0OiA8c3Bh
biBpZD1yZXN1bHQxMD48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTExICBhbHQ9IiIgc3R5bGU9
IndpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aW5saW5l
IHN0eWxlIHdpdGggd2lkdGggYW5kIGhlaWdodDogPHNwYW4gaWQ9cmVzdWx0MTE+PC9zcGFuPjxi
cj4KKworPHNjcmlwdD4KK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICBsZXQgbnVtYmVy
T2ZJbWFnZXMgPSAxMTsKKyAgICBmb3IgKGxldCBpID0gMTsgaSA8PSBudW1iZXJPZkltYWdlczsg
KytpKSB7CisgICAgICAgIGxldCBpbWFnZUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiaW1hZ2UiICsgaSk7CisgICAgICAgIGxldCByZXN1bHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlc3VsdCIgKyBpKTsKKyAgICAgICAgcmVzdWx0RWxlbWVudC5pbm5lckhU
TUwgPSBpbWFnZUVsZW1lbnQub2Zmc2V0V2lkdGggKyAicHggIiArIGltYWdlRWxlbWVudC5vZmZz
ZXRIZWlnaHQgKyAicHgiOworICAgIH0KK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
aW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJr
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94
LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1xdWlya3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmMwZmNlMzExZDJjYzM4YjNmYjYwMjNjYmE0MTBjN2RjM2UwNTlkOWQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8t
YWx0LXNob3VsZC1jb2xsYXBzZS1xdWlya3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAK
K1FVSVJLUyBtb2RlLgorCisxLiAnYWx0JyBhdHRyaWJ1dGUgaXMgbm90IHNldCAoaW1hZ2UgYm94
IHNob3VsZCBub3QgY29sbGFwc2UpOgorIDIwcHggMjBweCAKKworMi4gJ2FsdCcgYXR0cmlidXRl
IGlzIHNldCB0byBhIG5vbi1lbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFw
c2UpOgorIDIwcHggMjBweCAgMjBweCAyMHB4IAorCiszLiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0
IHRvIGVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIGNvbGxhcHNlKToKKzBweCAwcHggCisK
KzQuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgYnV0IG90aGVyIGF0dHJp
YnV0ZXMvcHJvcGVydGllcyBwcmV2ZW50IGNvbGxhcHNpbmcgKGltYWdlIGJveCBzaG91bGQgbm90
IGNvbGxhcHNlKToKK2ltYWdlIGJveCBpcyBibG9ja2lmaWVkOiAyMHB4IDIwcHgKK3dpZHRoIGF0
dHJpYnV0ZSBpcyBzZXQ6IDIwcHggMjBweAoraGVpZ2h0IGF0dHJpYnV0ZSBpcyBzZXQ6IDIwcHgg
MjBweAord2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGVzIGFyZSBzZXQ6IDIwcHggMjBweAoraW5s
aW5lIHN0eWxlIHdpdGggd2lkdGggc2V0OiAyMHB4IDIwcHgKK2lubGluZSBzdHlsZSB3aXRoIGhl
aWdodCBzZXQ6IDIwcHggMjBweAoraW5saW5lIHN0eWxlIHdpdGggd2lkdGggYW5kIGhlaWdodDog
MjBweCAyMHB4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1p
bWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29s
bGFwc2UtcXVpcmtzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTBkZDEwMzRlMmVlNmEwMjYwZjkzNTZiOGU2
Nzk5YWY3N2MyMThjNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy5odG1s
CkBAIC0wLDAgKzEsMzggQEAKKzxodG1sPgorPHRpdGxlPjwvdGl0bGU+Cis8c3R5bGU+CitpbWcg
eyBmb250LXNpemU6IDBweDsgfQorPC9zdHlsZT4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4K
K1FVSVJLUyBtb2RlLjxicj48YnI+CisKKzEuICdhbHQnIGF0dHJpYnV0ZSBpcyBub3Qgc2V0IChp
bWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTEgc3JjPSJi
cm9rZW5pbWFnZS5qcGciPiA8c3BhbiBpZD1yZXN1bHQxPjwvc3Bhbj4KKzxicj48YnI+CisyLiAn
YWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGEgbm9uLWVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hv
dWxkIG5vdCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTIgYWx0PSIgIiBzcmM9ImJyb2tl
bmltYWdlLmpwZyI+IDxzcGFuIGlkPXJlc3VsdDI+PC9zcGFuPiA8aW1nIGlkPWltYWdlMyBhbHQ9
InRleHQiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0Mz48L3NwYW4+Cis8
YnI+PGJyPgorMy4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSAoaW1hZ2Ug
Ym94IHNob3VsZCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTQgYWx0PSIiIHNyYz0iYnJv
a2VuaW1hZ2UuanBnIj48c3BhbiBpZD1yZXN1bHQ0Pjwvc3Bhbj4KKzxicj48YnI+Cis0LiAnYWx0
JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIGJ1dCBvdGhlciBhdHRyaWJ1dGVzL3By
b3BlcnRpZXMgcHJldmVudCBjb2xsYXBzaW5nIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBz
ZSk6PGJyPgorPGltZyBpZD1pbWFnZTUgYWx0PSIiIHN0eWxlPSJkaXNwbGF5OiBibG9jazsgd2lk
dGg7IDIwcHg7IGhlaWdodDogMjBweCIgc3JjPSJicm9rZW5pbWFnZS5qcGciPmltYWdlIGJveCBp
cyBibG9ja2lmaWVkOiA8c3BhbiBpZD1yZXN1bHQ1Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdl
NiBhbHQ9IiIgd2lkdGg9MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPndpZHRoIGF0dHJpYnV0ZSBp
cyBzZXQ6IDxzcGFuIGlkPXJlc3VsdDY+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U3IGFsdD0i
IiBoZWlnaHQ9MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPmhlaWdodCBhdHRyaWJ1dGUgaXMgc2V0
OiA8c3BhbiBpZD1yZXN1bHQ3Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlOCBhbHQ9IiIgd2lk
dGg9MjAgaGVpZ2h0PTIwIHNyYz0iYnJva2VuaW1hZ2UuanBnIj53aWR0aCBhbmQgaGVpZ2h0IGF0
dHJpYnV0ZXMgYXJlIHNldDogPHNwYW4gaWQ9cmVzdWx0OD48L3NwYW4+PGJyPgorPGltZyBpZD1p
bWFnZTkgYWx0PSIiIHN0eWxlPSJ3aWR0aDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5p
bmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBzZXQ6IDxzcGFuIGlkPXJlc3VsdDk+PC9zcGFuPjxicj4K
KzxpbWcgaWQ9aW1hZ2UxMCBhbHQ9IiIgc3R5bGU9ImhlaWdodDogMjBweDsiIHNyYz0iYnJva2Vu
aW1hZ2UuanBnIj5pbmxpbmUgc3R5bGUgd2l0aCBoZWlnaHQgc2V0OiA8c3BhbiBpZD1yZXN1bHQx
MD48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTExIGFsdD0iIiBzdHlsZT0id2lkdGg6IDIwcHg7
IGhlaWdodDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbmxpbmUgc3R5bGUgd2l0aCB3
aWR0aCBhbmQgaGVpZ2h0OiA8c3BhbiBpZD1yZXN1bHQxMT48L3NwYW4+PGJyPgorCis8c2NyaXB0
PgorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIGxldCBudW1iZXJPZkltYWdlcyA9IDEx
OworICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IG51bWJlck9mSW1hZ2VzOyArK2kpIHsKKyAgICAg
ICAgbGV0IGltYWdlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIgKyBp
KTsKKyAgICAgICAgbGV0IHJlc3VsdEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVzdWx0IiArIGkpOworICAgICAgICByZXN1bHRFbGVtZW50LmlubmVySFRNTCA9IGltYWdlRWxl
bWVudC5vZmZzZXRXaWR0aCArICJweCAiICsgaW1hZ2VFbGVtZW50Lm9mZnNldEhlaWdodCArICJw
eCI7CisgICAgfQorfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy90YWJsZXMv
bW96aWxsYS9idWdzL2J1ZzU2MjAxLmh0bWwgYi9MYXlvdXRUZXN0cy90YWJsZXMvbW96aWxsYS9i
dWdzL2J1ZzU2MjAxLmh0bWwKaW5kZXggMGE3YWM4NzYxODM3MTYwYTQzYmMxMjU0Mjk1OTk2ODcy
YTQ0MTk0NC4uMDIyM2YyYWFjYTlhOWI1OWVmOTAyOTMxZGI1YTg0YzA2MWFkNzk0YyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvdGFibGVzL21vemlsbGEvYnVncy9idWc1NjIwMS5odG1sCisrKyBi
L0xheW91dFRlc3RzL3RhYmxlcy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbApAQCAtMTAsMTAg
KzEwLDEwIEBACiAgICAgIDx0YWJsZSBib3JkZXI9IjEiPgogICAgICAgPHRyPgogICAgICAgIDx0
ZD4KLSAgICAgICAgPGltZyBzcmM9Ii4uL2ltYWdlcy9sb2dvX3NtYWxsLmdpZiIgYWx0PSIiPgor
ICAgICAgICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xvZ29fc21hbGwuZ2lmIj4KICAgICAgICA8L3Rk
PgogICAgICAgIDx0ZD4KLSAgICAgICAgPGltZyBzcmM9Ii4uL2ltYWdlcy9sb2dvX3NtYWxsLmdp
ZiIgYWx0PSIiPgorICAgICAgICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xvZ29fc21hbGwuZ2lmIj4K
ICAgICAgICA8L3RkPgogICAgICAgPC90cj4KICAgICAgPC90YWJsZT4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390891</attachid>
            <date>2020-02-16 12:27:56 -0800</date>
            <delta_ts>2020-02-16 17:13:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200216122755.patch</filename>
            <type>text/plain</type>
            <size>13476</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2EzYjkzYzkxMDU2NmQ4
MTY4NTEyMzRlYzU0NzQzY2YzMTk5NzY0MC4uNjI1ODkyOTA4OGYyMzA4OTk0ZmUwYjM0NWU2Nzk1
YTI4NjUwZjM2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAyLTE2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2Ut
Ym94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbAorICAgICAgICAg
ICAgICAgZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29s
bGFwc2UtcXVpcmtzLmh0bWwKKworICAgICAgICBMZXQncyBjb2xsYXBzZSBpbmxpbmUgYm94ZXMg
d2hlbiB3ZSB3b3VsZCBkaXNwbGF5IGEgYnJva2VuIGltYWdlIG9ubHkgYW5kCisgICAgICAgIDEu
IGFsdCBhdHRyaWJ1dGUgaXMgZXhwbGljaXRseSBzZXQgdG8gZW1wdHkgYW5kCisgICAgICAgIDIu
IGJvdGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0byBvciB3ZSBhcmUgaW4gc3RhbmRhcmRzIG1v
ZGUuCisKKyAgICAgICAgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTYvV0QtaHRtbDUxLTIwMTYw
NDEyL3JlbmRlcmluZy5odG1sI3JlcGxhY2VkLWVsZW1lbnRzLWltYWdlcworCisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdl
OjpzaG91bGRDb2xsYXBzZVRvRW1wdHkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
SW1hZ2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckltYWdlOjpsYXlvdXQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJ
bWFnZS5oOgorCiAyMDIwLTAyLTE2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0xGQ11bRmxvYXRdIFNpbXBsaWZ5IEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OnVz
ZWRBdmFpbGFibGVXaWR0aEZvckZsb2F0QXZvaWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJJbWFnZS5jcHAKaW5kZXggOGFlNDRmNjJmMzkxMjBhYWRiYzFiODFmYWQ3MTBkZjExYTM0
ZTEwZi4uNDQ4OTVmMTRlNjAwZTc2OTc1MzliNzQzMDVkNTM5MmFlMWE5OThhMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCkBAIC0yNTcsNiArMjU3LDM2IEBAIHZv
aWQgUmVuZGVySW1hZ2U6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25z
dCBSZW5kZXJTdHlsZSogb2xkU3R5CiAjZW5kaWYKIH0KIAorYm9vbCBSZW5kZXJJbWFnZTo6c2hv
dWxkQ29sbGFwc2VUb0VtcHR5KCkgY29uc3QKK3sKKyAgICBhdXRvIGltYWdlUmVwcmVzZW50c05v
dGhpbmcgPSBbJl0geworICAgICAgICBpZiAoIWVsZW1lbnQoKS0+aGFzQXR0cmlidXRlKEhUTUxO
YW1lczo6YWx0QXR0cikpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVy
biBpbWFnZVJlc291cmNlKCkuZXJyb3JPY2N1cnJlZCgpICYmIG1fYWx0VGV4dC5pc0VtcHR5KCk7
CisgICAgfTsKKyAgICBpZiAoIWVsZW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOyAKKyAg
ICBpZiAoIWlzSW5saW5lKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWltYWdl
UmVwcmVzZW50c05vdGhpbmcoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBk
b2N1bWVudCgpLmluTm9RdWlya3NNb2RlKCkgfHwgKHN0eWxlKCkubG9naWNhbFdpZHRoKCkuaXNB
dXRvKCkgJiYgc3R5bGUoKS5sb2dpY2FsSGVpZ2h0KCkuaXNBdXRvKCkpOworfQorCitMYXlvdXRV
bml0IFJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoU2hvdWxkQ29tcHV0
ZVByZWZlcnJlZCBzaG91bGRDb21wdXRlUHJlZmVycmVkKSBjb25zdAoreworICAgIGlmIChzaG91
bGRDb2xsYXBzZVRvRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICByZXR1cm4gUmVu
ZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChzaG91bGRDb21wdXRlUHJl
ZmVycmVkKTsKK30KKworTGF5b3V0VW5pdCBSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9n
aWNhbEhlaWdodChPcHRpb25hbDxMYXlvdXRVbml0PiBlc3RpbWF0ZWRVc2VkV2lkdGgpIGNvbnN0
Cit7CisgICAgaWYgKHNob3VsZENvbGxhcHNlVG9FbXB0eSgpKQorICAgICAgICByZXR1cm4geyB9
OworICAgIHJldHVybiBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdo
dChlc3RpbWF0ZWRVc2VkV2lkdGgpOworfQorCiB2b2lkIFJlbmRlckltYWdlOjppbWFnZUNoYW5n
ZWQoV3JhcHBlZEltYWdlUHRyIG5ld0ltYWdlLCBjb25zdCBJbnRSZWN0KiByZWN0KQogewogICAg
IGlmIChyZW5kZXJUcmVlQmVpbmdEZXN0cm95ZWQoKSkKQEAgLTI2NSw2ICsyOTUsMTEgQEAgdm9p
ZCBSZW5kZXJJbWFnZTo6aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0ciBuZXdJbWFnZSwgY29u
c3QgSW50UmVjdCogcmVjdCkKICAgICBpZiAoaGFzVmlzaWJsZUJveERlY29yYXRpb25zKCkgfHwg
aGFzTWFzaygpIHx8IGhhc1NoYXBlT3V0c2lkZSgpKQogICAgICAgICBSZW5kZXJSZXBsYWNlZDo6
aW1hZ2VDaGFuZ2VkKG5ld0ltYWdlLCByZWN0KTsKIAorICAgIGlmIChzaG91bGRDb2xsYXBzZVRv
RW1wdHkoKSkgeworICAgICAgICAvLyBJbWFnZSBtaWdodCBuZWVkIHJlc2l6aW5nIHdoZW4gd2Ug
YXJlIGF0IHRoZSBmaW5hbCBzdGF0ZS4gCisgICAgICAgIHNldE5lZWRzTGF5b3V0KCk7CisgICAg
fQorCiAgICAgaWYgKG5ld0ltYWdlICE9IGltYWdlUmVzb3VyY2UoKS5pbWFnZVB0cigpIHx8ICFu
ZXdJbWFnZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVySW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJ
bWFnZS5oCmluZGV4IGIyNDAyYzM0N2NjMGM4ZWNhMmUxMWJlNmFkMjQzMmZiNmM5YzJmMjEuLjFk
ZDY2NWM5M2Q4YjQ0YzdjMjU1ZDcxZGE1N2Q4MmEzMzhhNjAyOTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJJbWFnZS5oCkBAIC0xMzgsNiArMTM4LDExIEBAIHByaXZhdGU6CiAgICAg
CiAgICAgdm9pZCBsYXlvdXRTaGFkb3dDb250cm9scyhjb25zdCBMYXlvdXRTaXplJiBvbGRTaXpl
KTsKIAorICAgIExheW91dFVuaXQgY29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENv
bXB1dGVQcmVmZXJyZWQgPSBDb21wdXRlQWN0dWFsKSBjb25zdCBvdmVycmlkZTsKKyAgICBMYXlv
dXRVbml0IGNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQoT3B0aW9uYWw8TGF5b3V0VW5pdD4g
ZXN0aW1hdGVkVXNlZFdpZHRoID0gV1RGOjpudWxsb3B0KSBjb25zdCBvdmVycmlkZTsKKworICAg
IGJvb2wgc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkgY29uc3Q7CisKICAgICAvLyBUZXh0IHRvIGRp
c3BsYXkgYXMgbG9uZyBhcyB0aGUgaW1hZ2UgaXNuJ3QgYXZhaWxhYmxlLgogICAgIFN0cmluZyBt
X2FsdFRleHQ7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlckltYWdlUmVzb3VyY2U+IG1faW1h
Z2VSZXNvdXJjZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBkNTQ1MDNmMmIzMDg4MGU5OTNlOTQ1ZGE3ZGM2ODk2M2U0YTE4
MDcwLi5jNGMxZTBjMjk2ZjI5YjBkMDM0ZDE3MDk2ODZmZjVlODdkOTFkMGYxIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMjAtMDItMTYgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4K
KworICAgICAgICBJbmxpbmUgYm94ZXMgZm9yIGltYWdlcyB0aGF0IHJlcHJlc2VudCBub3RoaW5n
IHNob3VsZCBjb2xsYXBzZSB0byBlbXB0eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNzc0MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTczMzk5
OTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBm
YXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1u
by1xdWlya3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbmxp
bmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbDog
QWRkZWQuCisgICAgICAgICogZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFs
dC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Ut
cXVpcmtzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHRhYmxlcy9tb3ppbGxhL2J1Z3MvYnVnNTYy
MDEuaHRtbDoKKwogMjAyMC0wMi0xNiAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFtMRkNdIEVuYWJsZSBMRkMgcmVncmVzc2lvbiB0ZXN0aW5nIG9uIGZhc3QvYmxv
Y2svYmxvY2stb25seQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5l
LWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8tcXVpcmtzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1h
bHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTgw
YTA5ZGIzODJjMmE1NmMyYjI3ZDE2ZmY1OTBmZGVmYjhiYzQ1YgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hv
dWxkLWNvbGxhcHNlLW5vLXF1aXJrcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMiBAQAorU1RB
TkRBUkRTIG1vZGUuCisKKzEuICdhbHQnIGF0dHJpYnV0ZSBpcyBub3Qgc2V0IChpbWFnZSBib3gg
c2hvdWxkIG5vdCBjb2xsYXBzZSk6CisgMjBweCAyMHB4IAorCisyLiAnYWx0JyBhdHRyaWJ1dGUg
aXMgc2V0IHRvIGEgbm9uLWVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBz
ZSk6CisgMjBweCAyMHB4ICAyMHB4IDIwcHggCisKKzMuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQg
dG8gZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgY29sbGFwc2UpOgorIDBweCAwcHggCisK
KzQuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgb24gYSBibG9ja2lmaWVk
IGltYWdlIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6CisyMHB4IDIwcHgKKworNS4g
J2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSBhbmQgd2lkdGgvaGVpZ2h0IHZh
bHVlcyBhcmUgc2V0IChpbWFnZSBib3ggc2hvdWxkIGNvbGxhcHNlKToKK3dpZHRoIGF0dHJpYnV0
ZSBpcyBzZXQ6IDBweCAwcHgKK2hlaWdodCBhdHRyaWJ1dGUgaXMgc2V0OiAwcHggMHB4Cit3aWR0
aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZXMgYXJlIHNldDogMHB4IDBweAoraW5saW5lIHN0eWxlIHdp
dGggd2lkdGggc2V0OiAwcHggMHB4CitpbmxpbmUgc3R5bGUgd2l0aCBoZWlnaHQgc2V0OiAwcHgg
MHB4CitpbmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0OiAwcHggMHB4CisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1h
bHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8tcXVpcmtz
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMThhM2RhZjQzNWEzMjExMDE1YmZmNDg3OTBmZGRmNDBlZGQ0ZjZk
NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFn
ZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy5odG1sCkBAIC0wLDAg
KzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8dGl0bGU+PC90aXRsZT4KKzxoZWFk
PgorPHN0eWxlPgoraW1nIHsgZm9udC1zaXplOiAwcHg7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8
Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CitTVEFOREFSRFMgbW9kZS48YnI+PGJyPgorCisxLiAn
YWx0JyBhdHRyaWJ1dGUgaXMgbm90IHNldCAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2Up
Ojxicj4KKzxpbWcgaWQ9aW1hZ2UxIHNyYz0iYnJva2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVz
dWx0MT48L3NwYW4+Cis8YnI+PGJyPgorMi4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBhIG5v
bi1lbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2UpOjxicj4KKzxpbWcg
aWQ9aW1hZ2UyIGFsdD0iICIgc3JjPSJicm9rZW5pbWFnZS5qcGciPiA8c3BhbiBpZD1yZXN1bHQy
Pjwvc3Bhbj4gPGltZyBpZD1pbWFnZTMgYWx0PSJ0ZXh0IiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+
IDxzcGFuIGlkPXJlc3VsdDM+PC9zcGFuPgorPGJyPjxicj4KKzMuICdhbHQnIGF0dHJpYnV0ZSBp
cyBzZXQgdG8gZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgY29sbGFwc2UpOjxicj4KKzxp
bWcgaWQ9aW1hZ2U0IGlkPWNvbGxhcHNlZDEgYWx0PSIiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj4g
PHNwYW4gaWQ9cmVzdWx0ND48L3NwYW4+Cis8YnI+PGJyPgorNC4gJ2FsdCcgYXR0cmlidXRlIGlz
IHNldCB0byBlbXB0eSB2YWx1ZSBvbiBhIGJsb2NraWZpZWQgaW1hZ2UgKGltYWdlIGJveCBzaG91
bGQgbm90IGNvbGxhcHNlKTo8YnI+Cis8aW1nIGlkPWltYWdlNSBhbHQ9IiIgc3R5bGU9ImRpc3Bs
YXk6IGJsb2NrOyB3aWR0aDsgMjBweDsgaGVpZ2h0OiAyMHB4IiBzcmM9ImJyb2tlbmltYWdlLmpw
ZyI+IDxzcGFuIGlkPXJlc3VsdDU+PC9zcGFuPjxicj4KKzxicj4KKzUuICdhbHQnIGF0dHJpYnV0
ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgYW5kIHdpZHRoL2hlaWdodCB2YWx1ZXMgYXJlIHNldCAo
aW1hZ2UgYm94IHNob3VsZCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTYgIGFsdD0iIiB3
aWR0aD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+d2lkdGggYXR0cmlidXRlIGlzIHNldDogPHNw
YW4gaWQ9cmVzdWx0Nj48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTcgIGFsdD0iIiBoZWlnaHQ9
MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPmhlaWdodCBhdHRyaWJ1dGUgaXMgc2V0OiA8c3BhbiBp
ZD1yZXN1bHQ3Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlOCAgYWx0PSIiIHdpZHRoPTIwIGhl
aWdodD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+d2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGVz
IGFyZSBzZXQ6IDxzcGFuIGlkPXJlc3VsdDg+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U5ICBh
bHQ9IiIgc3R5bGU9IndpZHRoOiAyMHB4OyIgc3JjPSJicm9rZW5pbWFnZS5qcGciPmlubGluZSBz
dHlsZSB3aXRoIHdpZHRoIHNldDogPHNwYW4gaWQ9cmVzdWx0OT48L3NwYW4+PGJyPgorPGltZyBp
ZD1pbWFnZTEwICBhbHQ9IiIgc3R5bGU9ImhlaWdodDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2Uu
anBnIj5pbmxpbmUgc3R5bGUgd2l0aCBoZWlnaHQgc2V0OiA8c3BhbiBpZD1yZXN1bHQxMD48L3Nw
YW4+PGJyPgorPGltZyBpZD1pbWFnZTExICBhbHQ9IiIgc3R5bGU9IndpZHRoOiAyMHB4OyBoZWln
aHQ6IDIwcHg7IiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aW5saW5lIHN0eWxlIHdpdGggd2lkdGgg
YW5kIGhlaWdodDogPHNwYW4gaWQ9cmVzdWx0MTE+PC9zcGFuPjxicj4KKworPHNjcmlwdD4KK2Z1
bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICBsZXQgbnVtYmVyT2ZJbWFnZXMgPSAxMTsKKyAg
ICBmb3IgKGxldCBpID0gMTsgaSA8PSBudW1iZXJPZkltYWdlczsgKytpKSB7CisgICAgICAgIGxl
dCBpbWFnZUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiICsgaSk7Cisg
ICAgICAgIGxldCByZXN1bHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3Vs
dCIgKyBpKTsKKyAgICAgICAgcmVzdWx0RWxlbWVudC5pbm5lckhUTUwgPSBpbWFnZUVsZW1lbnQu
b2Zmc2V0V2lkdGggKyAicHggIiArIGltYWdlRWxlbWVudC5vZmZzZXRIZWlnaHQgKyAicHgiOwor
ICAgIH0KK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFn
ZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3Vs
ZC1jb2xsYXBzZS1xdWlya3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwZmNlMzExZDJjYzM4
YjNmYjYwMjNjYmE0MTBjN2RjM2UwNTlkOWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBz
ZS1xdWlya3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAKK1FVSVJLUyBtb2RlLgorCisx
LiAnYWx0JyBhdHRyaWJ1dGUgaXMgbm90IHNldCAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFw
c2UpOgorIDIwcHggMjBweCAKKworMi4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBhIG5vbi1l
bXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2UpOgorIDIwcHggMjBweCAg
MjBweCAyMHB4IAorCiszLiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIChp
bWFnZSBib3ggc2hvdWxkIGNvbGxhcHNlKToKKzBweCAwcHggCisKKzQuICdhbHQnIGF0dHJpYnV0
ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgYnV0IG90aGVyIGF0dHJpYnV0ZXMvcHJvcGVydGllcyBw
cmV2ZW50IGNvbGxhcHNpbmcgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNlKToKK2ltYWdl
IGJveCBpcyBibG9ja2lmaWVkOiAyMHB4IDIwcHgKK3dpZHRoIGF0dHJpYnV0ZSBpcyBzZXQ6IDIw
cHggMjBweAoraGVpZ2h0IGF0dHJpYnV0ZSBpcyBzZXQ6IDIwcHggMjBweAord2lkdGggYW5kIGhl
aWdodCBhdHRyaWJ1dGVzIGFyZSBzZXQ6IDIwcHggMjBweAoraW5saW5lIHN0eWxlIHdpdGggd2lk
dGggc2V0OiAyMHB4IDIwcHgKK2lubGluZSBzdHlsZSB3aXRoIGhlaWdodCBzZXQ6IDIwcHggMjBw
eAoraW5saW5lIHN0eWxlIHdpdGggd2lkdGggYW5kIGhlaWdodDogMjBweCAyMHB4CisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1h
bHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
aW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZTBkZDEwMzRlMmVlNmEwMjYwZjkzNTZiOGU2Nzk5YWY3N2MyMThjNQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gt
d2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy5odG1sCkBAIC0wLDAgKzEsMzggQEAK
KzxodG1sPgorPHRpdGxlPjwvdGl0bGU+Cis8c3R5bGU+CitpbWcgeyBmb250LXNpemU6IDBweDsg
fQorPC9zdHlsZT4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KK1FVSVJLUyBtb2RlLjxicj48
YnI+CisKKzEuICdhbHQnIGF0dHJpYnV0ZSBpcyBub3Qgc2V0IChpbWFnZSBib3ggc2hvdWxkIG5v
dCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTEgc3JjPSJicm9rZW5pbWFnZS5qcGciPiA8
c3BhbiBpZD1yZXN1bHQxPjwvc3Bhbj4KKzxicj48YnI+CisyLiAnYWx0JyBhdHRyaWJ1dGUgaXMg
c2V0IHRvIGEgbm9uLWVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6
PGJyPgorPGltZyBpZD1pbWFnZTIgYWx0PSIgIiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+IDxzcGFu
IGlkPXJlc3VsdDI+PC9zcGFuPiA8aW1nIGlkPWltYWdlMyBhbHQ9InRleHQiIHNyYz0iYnJva2Vu
aW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0Mz48L3NwYW4+Cis8YnI+PGJyPgorMy4gJ2FsdCcg
YXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBjb2xsYXBz
ZSk6PGJyPgorPGltZyBpZD1pbWFnZTQgYWx0PSIiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj48c3Bh
biBpZD1yZXN1bHQ0Pjwvc3Bhbj4KKzxicj48YnI+Cis0LiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0
IHRvIGVtcHR5IHZhbHVlIGJ1dCBvdGhlciBhdHRyaWJ1dGVzL3Byb3BlcnRpZXMgcHJldmVudCBj
b2xsYXBzaW5nIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1p
bWFnZTUgYWx0PSIiIHN0eWxlPSJkaXNwbGF5OiBibG9jazsgd2lkdGg7IDIwcHg7IGhlaWdodDog
MjBweCIgc3JjPSJicm9rZW5pbWFnZS5qcGciPmltYWdlIGJveCBpcyBibG9ja2lmaWVkOiA8c3Bh
biBpZD1yZXN1bHQ1Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlNiBhbHQ9IiIgd2lkdGg9MjAg
c3JjPSJicm9rZW5pbWFnZS5qcGciPndpZHRoIGF0dHJpYnV0ZSBpcyBzZXQ6IDxzcGFuIGlkPXJl
c3VsdDY+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U3IGFsdD0iIiBoZWlnaHQ9MjAgc3JjPSJi
cm9rZW5pbWFnZS5qcGciPmhlaWdodCBhdHRyaWJ1dGUgaXMgc2V0OiA8c3BhbiBpZD1yZXN1bHQ3
Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlOCBhbHQ9IiIgd2lkdGg9MjAgaGVpZ2h0PTIwIHNy
Yz0iYnJva2VuaW1hZ2UuanBnIj53aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZXMgYXJlIHNldDog
PHNwYW4gaWQ9cmVzdWx0OD48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTkgYWx0PSIiIHN0eWxl
PSJ3aWR0aDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbmxpbmUgc3R5bGUgd2l0aCB3
aWR0aCBzZXQ6IDxzcGFuIGlkPXJlc3VsdDk+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2UxMCBh
bHQ9IiIgc3R5bGU9ImhlaWdodDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbmxpbmUg
c3R5bGUgd2l0aCBoZWlnaHQgc2V0OiA8c3BhbiBpZD1yZXN1bHQxMD48L3NwYW4+PGJyPgorPGlt
ZyBpZD1pbWFnZTExIGFsdD0iIiBzdHlsZT0id2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsiIHNy
Yz0iYnJva2VuaW1hZ2UuanBnIj5pbmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0OiA8
c3BhbiBpZD1yZXN1bHQxMT48L3NwYW4+PGJyPgorCis8c2NyaXB0PgorZnVuY3Rpb24gcnVuVGVz
dCgpIHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworICAgIGxldCBudW1iZXJPZkltYWdlcyA9IDExOworICAgIGZvciAobGV0IGkg
PSAxOyBpIDw9IG51bWJlck9mSW1hZ2VzOyArK2kpIHsKKyAgICAgICAgbGV0IGltYWdlRWxlbWVu
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIgKyBpKTsKKyAgICAgICAgbGV0IHJl
c3VsdEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IiArIGkpOworICAg
ICAgICByZXN1bHRFbGVtZW50LmlubmVySFRNTCA9IGltYWdlRWxlbWVudC5vZmZzZXRXaWR0aCAr
ICJweCAiICsgaW1hZ2VFbGVtZW50Lm9mZnNldEhlaWdodCArICJweCI7CisgICAgfQorfQorPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy90YWJsZXMvbW96aWxsYS9idWdzL2J1ZzU2
MjAxLmh0bWwgYi9MYXlvdXRUZXN0cy90YWJsZXMvbW96aWxsYS9idWdzL2J1ZzU2MjAxLmh0bWwK
aW5kZXggMGE3YWM4NzYxODM3MTYwYTQzYmMxMjU0Mjk1OTk2ODcyYTQ0MTk0NC4uMDIyM2YyYWFj
YTlhOWI1OWVmOTAyOTMxZGI1YTg0YzA2MWFkNzk0YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
dGFibGVzL21vemlsbGEvYnVncy9idWc1NjIwMS5odG1sCisrKyBiL0xheW91dFRlc3RzL3RhYmxl
cy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbApAQCAtMTAsMTAgKzEwLDEwIEBACiAgICAgIDx0
YWJsZSBib3JkZXI9IjEiPgogICAgICAgPHRyPgogICAgICAgIDx0ZD4KLSAgICAgICAgPGltZyBz
cmM9Ii4uL2ltYWdlcy9sb2dvX3NtYWxsLmdpZiIgYWx0PSIiPgorICAgICAgICA8aW1nIHNyYz0i
Li4vaW1hZ2VzL2xvZ29fc21hbGwuZ2lmIj4KICAgICAgICA8L3RkPgogICAgICAgIDx0ZD4KLSAg
ICAgICAgPGltZyBzcmM9Ii4uL2ltYWdlcy9sb2dvX3NtYWxsLmdpZiIgYWx0PSIiPgorICAgICAg
ICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xvZ29fc21hbGwuZ2lmIj4KICAgICAgICA8L3RkPgogICAg
ICAgPC90cj4KICAgICAgPC90YWJsZT4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390893</attachid>
            <date>2020-02-16 17:13:58 -0800</date>
            <delta_ts>2020-02-17 12:53:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200216171357.patch</filename>
            <type>text/plain</type>
            <size>13591</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NzE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2EzYjkzYzkxMDU2NmQ4
MTY4NTEyMzRlYzU0NzQzY2YzMTk5NzY0MC4uMDMzYzJkNWVmMzM1MzAxNDQ3Mjg3NjA1ODYxZjBj
NWQzZDQ1MTVkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAyLTE2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IERh
cmluIEFkbGVyLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94
LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbAorICAgICAgICAgICAg
ICAgZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFw
c2UtcXVpcmtzLmh0bWwKKworICAgICAgICBMZXQncyBjb2xsYXBzZSBpbmxpbmUgYm94ZXMgd2hl
biB3ZSB3b3VsZCBkaXNwbGF5IGEgYnJva2VuIGltYWdlIG9ubHkgYW5kCisgICAgICAgIDEuIGFs
dCBhdHRyaWJ1dGUgaXMgZXhwbGljaXRseSBzZXQgdG8gZW1wdHkgYW5kCisgICAgICAgIDIuIGJv
dGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0byBvciB3ZSBhcmUgaW4gc3RhbmRhcmRzIG1vZGUu
CisKKyAgICAgICAgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTYvV0QtaHRtbDUxLTIwMTYwNDEy
L3JlbmRlcmluZy5odG1sI3JlcGxhY2VkLWVsZW1lbnRzLWltYWdlcworCisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckltYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpz
aG91bGRDb2xsYXBzZVRvRW1wdHkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1h
Z2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJJbWFnZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckltYWdlOjpsYXlvdXQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFn
ZS5oOgorCiAyMDIwLTAyLTE2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAg
ICAgICAgW0xGQ11bRmxvYXRdIFNpbXBsaWZ5IEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OnVzZWRB
dmFpbGFibGVXaWR0aEZvckZsb2F0QXZvaWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJJbWFnZS5jcHAKaW5kZXggOGFlNDRmNjJmMzkxMjBhYWRiYzFiODFmYWQ3MTBkZjExYTM0ZTEw
Zi4uMmYzY2Q5ZjE1ODE5ZGQ5ZTRjMmE5ZjVkNjY4MDFkNTJiMzkxZDllZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCkBAIC0yNTcsNiArMjU3LDM5IEBAIHZvaWQg
UmVuZGVySW1hZ2U6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBS
ZW5kZXJTdHlsZSogb2xkU3R5CiAjZW5kaWYKIH0KIAorYm9vbCBSZW5kZXJJbWFnZTo6c2hvdWxk
Q29sbGFwc2VUb0VtcHR5KCkgY29uc3QKK3sKKyAgICBhdXRvIGltYWdlUmVwcmVzZW50c05vdGhp
bmcgPSBbJl0geworICAgICAgICBpZiAoIWVsZW1lbnQoKS0+aGFzQXR0cmlidXRlKEhUTUxOYW1l
czo6YWx0QXR0cikpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVybiBp
bWFnZVJlc291cmNlKCkuZXJyb3JPY2N1cnJlZCgpICYmIG1fYWx0VGV4dC5pc0VtcHR5KCk7Cisg
ICAgfTsKKyAgICBpZiAoIWVsZW1lbnQoKSkgeworICAgICAgICAvLyBJbWFnZXMgd2l0aCBubyBh
c3NvY2lhdGVkIGVsZW1lbnRzIGRvIG5vdCBmYWxsIHVuZGVyIHRoZQorICAgICAgICAvLyBjYXRl
Z29yeSBvZiBwb3NzaWJsZSB1bndhbnRlZCBjb250ZW50LgorICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQorICAgIGlmICghaXNJbmxpbmUoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAg
IGlmICghaW1hZ2VSZXByZXNlbnRzTm90aGluZygpKQorICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgcmV0dXJuIGRvY3VtZW50KCkuaW5Ob1F1aXJrc01vZGUoKSB8fCAoc3R5bGUoKS5sb2dpY2Fs
V2lkdGgoKS5pc0F1dG8oKSAmJiBzdHlsZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc0F1dG8oKSk7Cit9
CisKK0xheW91dFVuaXQgUmVuZGVySW1hZ2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChT
aG91bGRDb21wdXRlUHJlZmVycmVkIHNob3VsZENvbXB1dGVQcmVmZXJyZWQpIGNvbnN0Cit7Cisg
ICAgaWYgKHNob3VsZENvbGxhcHNlVG9FbXB0eSgpKQorICAgICAgICByZXR1cm4geyB9OworICAg
IHJldHVybiBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKHNob3Vs
ZENvbXB1dGVQcmVmZXJyZWQpOworfQorCitMYXlvdXRVbml0IFJlbmRlckltYWdlOjpjb21wdXRl
UmVwbGFjZWRMb2dpY2FsSGVpZ2h0KE9wdGlvbmFsPExheW91dFVuaXQ+IGVzdGltYXRlZFVzZWRX
aWR0aCkgY29uc3QKK3sKKyAgICBpZiAoc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpCisgICAgICAg
IHJldHVybiB7IH07CisgICAgcmV0dXJuIFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRM
b2dpY2FsSGVpZ2h0KGVzdGltYXRlZFVzZWRXaWR0aCk7Cit9CisKIHZvaWQgUmVuZGVySW1hZ2U6
OmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJl
Y3QpCiB7CiAgICAgaWYgKHJlbmRlclRyZWVCZWluZ0Rlc3Ryb3llZCgpKQpAQCAtMjY1LDYgKzI5
OCwxMSBAQCB2b2lkIFJlbmRlckltYWdlOjppbWFnZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyIG5l
d0ltYWdlLCBjb25zdCBJbnRSZWN0KiByZWN0KQogICAgIGlmIChoYXNWaXNpYmxlQm94RGVjb3Jh
dGlvbnMoKSB8fCBoYXNNYXNrKCkgfHwgaGFzU2hhcGVPdXRzaWRlKCkpCiAgICAgICAgIFJlbmRl
clJlcGxhY2VkOjppbWFnZUNoYW5nZWQobmV3SW1hZ2UsIHJlY3QpOwogCisgICAgaWYgKHNob3Vs
ZENvbGxhcHNlVG9FbXB0eSgpKSB7CisgICAgICAgIC8vIEltYWdlIG1pZ2h0IG5lZWQgcmVzaXpp
bmcgd2hlbiB3ZSBhcmUgYXQgdGhlIGZpbmFsIHN0YXRlLgorICAgICAgICBzZXROZWVkc0xheW91
dCgpOworICAgIH0KKwogICAgIGlmIChuZXdJbWFnZSAhPSBpbWFnZVJlc291cmNlKCkuaW1hZ2VQ
dHIoKSB8fCAhbmV3SW1hZ2UpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVySW1hZ2UuaAppbmRleCBiMjQwMmMzNDdjYzBjOGVjYTJlMTFiZTZhZDI0MzJmYjZj
OWMyZjIxLi4xZGQ2NjVjOTNkOGI0NGM3YzI1NWQ3MWRhNTdkODJhMzM4YTYwMjk3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaApAQCAtMTM4LDYgKzEzOCwxMSBAQCBwcml2
YXRlOgogICAgIAogICAgIHZvaWQgbGF5b3V0U2hhZG93Q29udHJvbHMoY29uc3QgTGF5b3V0U2l6
ZSYgb2xkU2l6ZSk7CiAKKyAgICBMYXlvdXRVbml0IGNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0
aChTaG91bGRDb21wdXRlUHJlZmVycmVkID0gQ29tcHV0ZUFjdHVhbCkgY29uc3Qgb3ZlcnJpZGU7
CisgICAgTGF5b3V0VW5pdCBjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KE9wdGlvbmFsPExh
eW91dFVuaXQ+IGVzdGltYXRlZFVzZWRXaWR0aCA9IFdURjo6bnVsbG9wdCkgY29uc3Qgb3ZlcnJp
ZGU7CisKKyAgICBib29sIHNob3VsZENvbGxhcHNlVG9FbXB0eSgpIGNvbnN0OworCiAgICAgLy8g
VGV4dCB0byBkaXNwbGF5IGFzIGxvbmcgYXMgdGhlIGltYWdlIGlzbid0IGF2YWlsYWJsZS4KICAg
ICBTdHJpbmcgbV9hbHRUZXh0OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJJbWFnZVJlc291
cmNlPiBtX2ltYWdlUmVzb3VyY2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTEzMzAzM2Q0N2EyY2FkZmU3OTFiYTBmZjBh
YjU0YTBkNDExZTE0Ny4uZWNmNzhmMzViMGFiYzA3ZDhmN2E1YmQ5NmZhZTE0MTM4NTlmNmE5YiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTAyLTE2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBh
cHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBpbWFnZXMgdGhhdCByZXByZXNl
bnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAg
ICAgICogZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29s
bGFwc2Utbm8tcXVpcmtzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9pbWFn
ZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8tcXVpcmtz
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0
aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNv
bGxhcHNlLXF1aXJrcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB0YWJsZXMvbW96aWxsYS9idWdz
L2J1ZzU2MjAxLmh0bWw6CisKIDIwMjAtMDItMTYgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2ll
aEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgbGF5b3V0IHRlc3QgZm9yIDxyZGFyOi8vcHJv
YmxlbS81OTA5MDUxMD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGlu
ZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJrcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8t
YWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4
MGEwOWRiMzgyYzJhNTZjMmIyN2QxNmZmNTkwZmRlZmI4YmM0NWIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNo
b3VsZC1jb2xsYXBzZS1uby1xdWlya3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjIgQEAKK1NU
QU5EQVJEUyBtb2RlLgorCisxLiAnYWx0JyBhdHRyaWJ1dGUgaXMgbm90IHNldCAoaW1hZ2UgYm94
IHNob3VsZCBub3QgY29sbGFwc2UpOgorIDIwcHggMjBweCAKKworMi4gJ2FsdCcgYXR0cmlidXRl
IGlzIHNldCB0byBhIG5vbi1lbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFw
c2UpOgorIDIwcHggMjBweCAgMjBweCAyMHB4IAorCiszLiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0
IHRvIGVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIGNvbGxhcHNlKToKKyAwcHggMHB4IAor
Cis0LiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIG9uIGEgYmxvY2tpZmll
ZCBpbWFnZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2UpOgorMjBweCAyMHB4CisKKzUu
ICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgYW5kIHdpZHRoL2hlaWdodCB2
YWx1ZXMgYXJlIHNldCAoaW1hZ2UgYm94IHNob3VsZCBjb2xsYXBzZSk6Cit3aWR0aCBhdHRyaWJ1
dGUgaXMgc2V0OiAwcHggMHB4CitoZWlnaHQgYXR0cmlidXRlIGlzIHNldDogMHB4IDBweAord2lk
dGggYW5kIGhlaWdodCBhdHRyaWJ1dGVzIGFyZSBzZXQ6IDBweCAwcHgKK2lubGluZSBzdHlsZSB3
aXRoIHdpZHRoIHNldDogMHB4IDBweAoraW5saW5lIHN0eWxlIHdpdGggaGVpZ2h0IHNldDogMHB4
IDBweAoraW5saW5lIHN0eWxlIHdpdGggd2lkdGggYW5kIGhlaWdodDogMHB4IDBweAorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8t
YWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLW5vLXF1aXJr
cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjE4YTNkYWY0MzVhMzIxMTAxNWJmZjQ4NzkwZmRkZjQwZWRkNGY2
ZDQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1h
Z2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbApAQCAtMCww
ICsxLDQ1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHRpdGxlPjwvdGl0bGU+Cis8aGVh
ZD4KKzxzdHlsZT4KK2ltZyB7IGZvbnQtc2l6ZTogMHB4OyB9Cis8L3N0eWxlPgorPC9oZWFkPgor
PGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorU1RBTkRBUkRTIG1vZGUuPGJyPjxicj4KKworMS4g
J2FsdCcgYXR0cmlidXRlIGlzIG5vdCBzZXQgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNl
KTo8YnI+Cis8aW1nIGlkPWltYWdlMSBzcmM9ImJyb2tlbmltYWdlLmpwZyI+IDxzcGFuIGlkPXJl
c3VsdDE+PC9zcGFuPgorPGJyPjxicj4KKzIuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gYSBu
b24tZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNlKTo8YnI+Cis8aW1n
IGlkPWltYWdlMiBhbHQ9IiAiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0
Mj48L3NwYW4+IDxpbWcgaWQ9aW1hZ2UzIGFsdD0idGV4dCIgc3JjPSJicm9rZW5pbWFnZS5qcGci
PiA8c3BhbiBpZD1yZXN1bHQzPjwvc3Bhbj4KKzxicj48YnI+CiszLiAnYWx0JyBhdHRyaWJ1dGUg
aXMgc2V0IHRvIGVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIGNvbGxhcHNlKTo8YnI+Cis8
aW1nIGlkPWltYWdlNCBpZD1jb2xsYXBzZWQxIGFsdD0iIiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+
IDxzcGFuIGlkPXJlc3VsdDQ+PC9zcGFuPgorPGJyPjxicj4KKzQuICdhbHQnIGF0dHJpYnV0ZSBp
cyBzZXQgdG8gZW1wdHkgdmFsdWUgb24gYSBibG9ja2lmaWVkIGltYWdlIChpbWFnZSBib3ggc2hv
dWxkIG5vdCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTUgYWx0PSIiIHN0eWxlPSJkaXNw
bGF5OiBibG9jazsgd2lkdGg7IDIwcHg7IGhlaWdodDogMjBweCIgc3JjPSJicm9rZW5pbWFnZS5q
cGciPiA8c3BhbiBpZD1yZXN1bHQ1Pjwvc3Bhbj48YnI+Cis8YnI+Cis1LiAnYWx0JyBhdHRyaWJ1
dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIGFuZCB3aWR0aC9oZWlnaHQgdmFsdWVzIGFyZSBzZXQg
KGltYWdlIGJveCBzaG91bGQgY29sbGFwc2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2U2ICBhbHQ9IiIg
d2lkdGg9MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPndpZHRoIGF0dHJpYnV0ZSBpcyBzZXQ6IDxz
cGFuIGlkPXJlc3VsdDY+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U3ICBhbHQ9IiIgaGVpZ2h0
PTIwIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5oZWlnaHQgYXR0cmlidXRlIGlzIHNldDogPHNwYW4g
aWQ9cmVzdWx0Nz48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTggIGFsdD0iIiB3aWR0aD0yMCBo
ZWlnaHQ9MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPndpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRl
cyBhcmUgc2V0OiA8c3BhbiBpZD1yZXN1bHQ4Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlOSAg
YWx0PSIiIHN0eWxlPSJ3aWR0aDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbmxpbmUg
c3R5bGUgd2l0aCB3aWR0aCBzZXQ6IDxzcGFuIGlkPXJlc3VsdDk+PC9zcGFuPjxicj4KKzxpbWcg
aWQ9aW1hZ2UxMCAgYWx0PSIiIHN0eWxlPSJoZWlnaHQ6IDIwcHg7IiBzcmM9ImJyb2tlbmltYWdl
LmpwZyI+aW5saW5lIHN0eWxlIHdpdGggaGVpZ2h0IHNldDogPHNwYW4gaWQ9cmVzdWx0MTA+PC9z
cGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2UxMSAgYWx0PSIiIHN0eWxlPSJ3aWR0aDogMjBweDsgaGVp
Z2h0OiAyMHB4OyIgc3JjPSJicm9rZW5pbWFnZS5qcGciPmlubGluZSBzdHlsZSB3aXRoIHdpZHRo
IGFuZCBoZWlnaHQ6IDxzcGFuIGlkPXJlc3VsdDExPjwvc3Bhbj48YnI+CisKKzxzY3JpcHQ+Citm
dW5jdGlvbiBydW5UZXN0KCkgeworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgbGV0IG51bWJlck9mSW1hZ2VzID0gMTE7Cisg
ICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gbnVtYmVyT2ZJbWFnZXM7ICsraSkgeworICAgICAgICBs
ZXQgaW1hZ2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIiArIGkpOwor
ICAgICAgICBsZXQgcmVzdWx0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1
bHQiICsgaSk7CisgICAgICAgIHJlc3VsdEVsZW1lbnQuaW5uZXJIVE1MID0gaW1hZ2VFbGVtZW50
Lm9mZnNldFdpZHRoICsgInB4ICIgKyBpbWFnZUVsZW1lbnQub2Zmc2V0SGVpZ2h0ICsgInB4IjsK
KyAgICB9Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1h
Z2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1xdWlya3MtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91
bGQtY29sbGFwc2UtcXVpcmtzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMGZjZTMxMWQyY2Mz
OGIzZmI2MDIzY2JhNDEwYzdkYzNlMDU5ZDlkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFw
c2UtcXVpcmtzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBACitRVUlSS1MgbW9kZS4KKwor
MS4gJ2FsdCcgYXR0cmlidXRlIGlzIG5vdCBzZXQgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxh
cHNlKToKKyAyMHB4IDIwcHggCisKKzIuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gYSBub24t
ZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNlKToKKyAyMHB4IDIwcHgg
IDIwcHggMjBweCAKKworMy4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSAo
aW1hZ2UgYm94IHNob3VsZCBjb2xsYXBzZSk6CiswcHggMHB4IAorCis0LiAnYWx0JyBhdHRyaWJ1
dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIGJ1dCBvdGhlciBhdHRyaWJ1dGVzL3Byb3BlcnRpZXMg
cHJldmVudCBjb2xsYXBzaW5nIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6CitpbWFn
ZSBib3ggaXMgYmxvY2tpZmllZDogMjBweCAyMHB4Cit3aWR0aCBhdHRyaWJ1dGUgaXMgc2V0OiAy
MHB4IDIwcHgKK2hlaWdodCBhdHRyaWJ1dGUgaXMgc2V0OiAyMHB4IDIwcHgKK3dpZHRoIGFuZCBo
ZWlnaHQgYXR0cmlidXRlcyBhcmUgc2V0OiAyMHB4IDIwcHgKK2lubGluZSBzdHlsZSB3aXRoIHdp
ZHRoIHNldDogMjBweCAyMHB4CitpbmxpbmUgc3R5bGUgd2l0aCBoZWlnaHQgc2V0OiAyMHB4IDIw
cHgKK2lubGluZSBzdHlsZSB3aXRoIHdpZHRoIGFuZCBoZWlnaHQ6IDIwcHggMjBweAorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8t
YWx0LXNob3VsZC1jb2xsYXBzZS1xdWlya3MuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2Vz
L2lubGluZS1pbWFnZS1ib3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmUwZGQxMDM0ZTJlZTZhMDI2MGY5MzU2YjhlNjc5OWFmNzdjMjE4YzUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94
LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1xdWlya3MuaHRtbApAQCAtMCwwICsxLDM4IEBA
Cis8aHRtbD4KKzx0aXRsZT48L3RpdGxlPgorPHN0eWxlPgoraW1nIHsgZm9udC1zaXplOiAwcHg7
IH0KKzwvc3R5bGU+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CitRVUlSS1MgbW9kZS48YnI+
PGJyPgorCisxLiAnYWx0JyBhdHRyaWJ1dGUgaXMgbm90IHNldCAoaW1hZ2UgYm94IHNob3VsZCBu
b3QgY29sbGFwc2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2UxIHNyYz0iYnJva2VuaW1hZ2UuanBnIj4g
PHNwYW4gaWQ9cmVzdWx0MT48L3NwYW4+Cis8YnI+PGJyPgorMi4gJ2FsdCcgYXR0cmlidXRlIGlz
IHNldCB0byBhIG5vbi1lbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2Up
Ojxicj4KKzxpbWcgaWQ9aW1hZ2UyIGFsdD0iICIgc3JjPSJicm9rZW5pbWFnZS5qcGciPiA8c3Bh
biBpZD1yZXN1bHQyPjwvc3Bhbj4gPGltZyBpZD1pbWFnZTMgYWx0PSJ0ZXh0IiBzcmM9ImJyb2tl
bmltYWdlLmpwZyI+IDxzcGFuIGlkPXJlc3VsdDM+PC9zcGFuPgorPGJyPjxicj4KKzMuICdhbHQn
IGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgY29sbGFw
c2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2U0IGFsdD0iIiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+PHNw
YW4gaWQ9cmVzdWx0ND48L3NwYW4+Cis8YnI+PGJyPgorNC4gJ2FsdCcgYXR0cmlidXRlIGlzIHNl
dCB0byBlbXB0eSB2YWx1ZSBidXQgb3RoZXIgYXR0cmlidXRlcy9wcm9wZXJ0aWVzIHByZXZlbnQg
Y29sbGFwc2luZyAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2UpOjxicj4KKzxpbWcgaWQ9
aW1hZ2U1IGFsdD0iIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOyAyMHB4OyBoZWlnaHQ6
IDIwcHgiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbWFnZSBib3ggaXMgYmxvY2tpZmllZDogPHNw
YW4gaWQ9cmVzdWx0NT48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTYgYWx0PSIiIHdpZHRoPTIw
IHNyYz0iYnJva2VuaW1hZ2UuanBnIj53aWR0aCBhdHRyaWJ1dGUgaXMgc2V0OiA8c3BhbiBpZD1y
ZXN1bHQ2Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlNyBhbHQ9IiIgaGVpZ2h0PTIwIHNyYz0i
YnJva2VuaW1hZ2UuanBnIj5oZWlnaHQgYXR0cmlidXRlIGlzIHNldDogPHNwYW4gaWQ9cmVzdWx0
Nz48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTggYWx0PSIiIHdpZHRoPTIwIGhlaWdodD0yMCBz
cmM9ImJyb2tlbmltYWdlLmpwZyI+d2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGVzIGFyZSBzZXQ6
IDxzcGFuIGlkPXJlc3VsdDg+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U5IGFsdD0iIiBzdHls
ZT0id2lkdGg6IDIwcHg7IiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aW5saW5lIHN0eWxlIHdpdGgg
d2lkdGggc2V0OiA8c3BhbiBpZD1yZXN1bHQ5Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlMTAg
YWx0PSIiIHN0eWxlPSJoZWlnaHQ6IDIwcHg7IiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aW5saW5l
IHN0eWxlIHdpdGggaGVpZ2h0IHNldDogPHNwYW4gaWQ9cmVzdWx0MTA+PC9zcGFuPjxicj4KKzxp
bWcgaWQ9aW1hZ2UxMSBhbHQ9IiIgc3R5bGU9IndpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IiBz
cmM9ImJyb2tlbmltYWdlLmpwZyI+aW5saW5lIHN0eWxlIHdpdGggd2lkdGggYW5kIGhlaWdodDog
PHNwYW4gaWQ9cmVzdWx0MTE+PC9zcGFuPjxicj4KKworPHNjcmlwdD4KK2Z1bmN0aW9uIHJ1blRl
c3QoKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKKyAgICBsZXQgbnVtYmVyT2ZJbWFnZXMgPSAxMTsKKyAgICBmb3IgKGxldCBp
ID0gMTsgaSA8PSBudW1iZXJPZkltYWdlczsgKytpKSB7CisgICAgICAgIGxldCBpbWFnZUVsZW1l
bnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiICsgaSk7CisgICAgICAgIGxldCBy
ZXN1bHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIgKyBpKTsKKyAg
ICAgICAgcmVzdWx0RWxlbWVudC5pbm5lckhUTUwgPSBpbWFnZUVsZW1lbnQub2Zmc2V0V2lkdGgg
KyAicHggIiArIGltYWdlRWxlbWVudC5vZmZzZXRIZWlnaHQgKyAicHgiOworICAgIH0KK30KKzwv
c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGFibGVzL21vemlsbGEvYnVncy9idWc1
NjIwMS5odG1sIGIvTGF5b3V0VGVzdHMvdGFibGVzL21vemlsbGEvYnVncy9idWc1NjIwMS5odG1s
CmluZGV4IDBhN2FjODc2MTgzNzE2MGE0M2JjMTI1NDI5NTk5Njg3MmE0NDE5NDQuLjAyMjNmMmFh
Y2E5YTliNTllZjkwMjkzMWRiNWE4NGMwNjFhZDc5NGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3RhYmxlcy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbAorKysgYi9MYXlvdXRUZXN0cy90YWJs
ZXMvbW96aWxsYS9idWdzL2J1ZzU2MjAxLmh0bWwKQEAgLTEwLDEwICsxMCwxMCBAQAogICAgICA8
dGFibGUgYm9yZGVyPSIxIj4KICAgICAgIDx0cj4KICAgICAgICA8dGQ+Ci0gICAgICAgIDxpbWcg
c3JjPSIuLi9pbWFnZXMvbG9nb19zbWFsbC5naWYiIGFsdD0iIj4KKyAgICAgICAgPGltZyBzcmM9
Ii4uL2ltYWdlcy9sb2dvX3NtYWxsLmdpZiI+CiAgICAgICAgPC90ZD4KICAgICAgICA8dGQ+Ci0g
ICAgICAgIDxpbWcgc3JjPSIuLi9pbWFnZXMvbG9nb19zbWFsbC5naWYiIGFsdD0iIj4KKyAgICAg
ICAgPGltZyBzcmM9Ii4uL2ltYWdlcy9sb2dvX3NtYWxsLmdpZiI+CiAgICAgICAgPC90ZD4KICAg
ICAgIDwvdHI+CiAgICAgIDwvdGFibGU+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390961</attachid>
            <date>2020-02-17 12:53:04 -0800</date>
            <delta_ts>2020-02-17 14:48:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200217125303.patch</filename>
            <type>text/plain</type>
            <size>13610</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NzYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTEzZmQxZjE3MjYyZmM3
MDQzZTk2ZDU4NDU0NGFkNjRkOGQzNGIwNC4uZmI5OTZhMWY0OWY1NDNiOWU3MjU2MzIyYjExNWJh
MDFkNDJjY2I1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAyLTE3ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW5saW5lIGJveGVzIGZvciBp
bWFnZXMgdGhhdCByZXByZXNlbnQgbm90aGluZyBzaG91bGQgY29sbGFwc2UgdG8gZW1wdHkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3NDAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzM5OTkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IERh
cmluIEFkbGVyLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94
LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbAorICAgICAgICAgICAg
ICAgZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFw
c2UtcXVpcmtzLmh0bWwKKworICAgICAgICBMZXQncyBjb2xsYXBzZSBpbmxpbmUgYm94ZXMgd2hl
biB3ZSB3b3VsZCBkaXNwbGF5IGEgYnJva2VuIGltYWdlIG9ubHkgYW5kCisgICAgICAgIDEuIGFs
dCBhdHRyaWJ1dGUgaXMgZXhwbGljaXRseSBzZXQgdG8gZW1wdHkgYW5kCisgICAgICAgIDIuIGJv
dGggaGVpZ2h0IGFuZCB3aWR0aCBhcmUgYXV0byBvciB3ZSBhcmUgaW4gc3RhbmRhcmRzIG1vZGUu
CisKKyAgICAgICAgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvcmVuZGVy
aW5nLmh0bWwjaW1hZ2VzLTMKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFnZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c2hvdWxkQ29sbGFwc2VUb0VtcHR5IGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckltYWdlOjpjb21wdXRlUmVwbGFjZWRMb2dp
Y2FsV2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmNvbXB1dGVS
ZXBsYWNlZExvZ2ljYWxIZWlnaHQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1h
Z2U6OmltYWdlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6bGF5b3V0
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuaDoKKwogMjAyMC0wMi0xNyAgWmFs
YW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW091dC1vZi1mbG93
XSBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZU91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeSBu
ZWVkcyB2ZXJ0aWNhbENvbnN0cmFpbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVySW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcklt
YWdlLmNwcAppbmRleCA4YWU0NGY2MmYzOTEyMGFhZGJjMWI4MWZhZDcxMGRmMTFhMzRlMTBmLi43
OGE5Mzk3MWZjNWIwYWE0YjA1ZTVmN2ZhYWU4NTI3ZDZjYmI4ZDM5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJJbWFnZS5jcHAKQEAgLTI1Nyw2ICsyNTcsMzggQEAgdm9pZCBSZW5k
ZXJJbWFnZTo6c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRl
clN0eWxlKiBvbGRTdHkKICNlbmRpZgogfQogCitib29sIFJlbmRlckltYWdlOjpzaG91bGRDb2xs
YXBzZVRvRW1wdHkoKSBjb25zdAoreworICAgIGF1dG8gaW1hZ2VSZXByZXNlbnRzTm90aGluZyA9
IFsmXSB7CisgICAgICAgIGlmICghZWxlbWVudCgpLT5oYXNBdHRyaWJ1dGUoSFRNTE5hbWVzOjph
bHRBdHRyKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIGltYWdl
UmVzb3VyY2UoKS5lcnJvck9jY3VycmVkKCkgJiYgbV9hbHRUZXh0LmlzRW1wdHkoKTsKKyAgICB9
OworICAgIGlmICghZWxlbWVudCgpKSB7CisgICAgICAgIC8vIEltYWdlcyB3aXRoIG5vIGFzc29j
aWF0ZWQgZWxlbWVudHMgZG8gbm90IGZhbGwgdW5kZXIgdGhlIGNhdGVnb3J5IG9mIHVud2FudGVk
IGNvbnRlbnQuCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgaWYgKCFpc0lubGlu
ZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFpbWFnZVJlcHJlc2VudHNOb3Ro
aW5nKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gZG9jdW1lbnQoKS5pbk5v
UXVpcmtzTW9kZSgpIHx8IChzdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLmlzQXV0bygpICYmIHN0eWxl
KCkubG9naWNhbEhlaWdodCgpLmlzQXV0bygpKTsKK30KKworTGF5b3V0VW5pdCBSZW5kZXJJbWFn
ZTo6Y29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQgc2hv
dWxkQ29tcHV0ZVByZWZlcnJlZCkgY29uc3QKK3sKKyAgICBpZiAoc2hvdWxkQ29sbGFwc2VUb0Vt
cHR5KCkpCisgICAgICAgIHJldHVybiB7IH07CisgICAgcmV0dXJuIFJlbmRlclJlcGxhY2VkOjpj
b21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoc2hvdWxkQ29tcHV0ZVByZWZlcnJlZCk7Cit9CisK
K0xheW91dFVuaXQgUmVuZGVySW1hZ2U6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQoT3B0
aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdpZHRoKSBjb25zdAoreworICAgIGlmIChz
aG91bGRDb2xsYXBzZVRvRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKyAgICByZXR1cm4g
UmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQoZXN0aW1hdGVkVXNl
ZFdpZHRoKTsKK30KKwogdm9pZCBSZW5kZXJJbWFnZTo6aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFn
ZVB0ciBuZXdJbWFnZSwgY29uc3QgSW50UmVjdCogcmVjdCkKIHsKICAgICBpZiAocmVuZGVyVHJl
ZUJlaW5nRGVzdHJveWVkKCkpCkBAIC0yNjUsNiArMjk3LDExIEBAIHZvaWQgUmVuZGVySW1hZ2U6
OmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIgbmV3SW1hZ2UsIGNvbnN0IEludFJlY3QqIHJl
Y3QpCiAgICAgaWYgKGhhc1Zpc2libGVCb3hEZWNvcmF0aW9ucygpIHx8IGhhc01hc2soKSB8fCBo
YXNTaGFwZU91dHNpZGUoKSkKICAgICAgICAgUmVuZGVyUmVwbGFjZWQ6OmltYWdlQ2hhbmdlZChu
ZXdJbWFnZSwgcmVjdCk7CiAKKyAgICBpZiAoc2hvdWxkQ29sbGFwc2VUb0VtcHR5KCkpIHsKKyAg
ICAgICAgLy8gSW1hZ2UgbWlnaHQgbmVlZCByZXNpemluZyB3aGVuIHdlIGFyZSBhdCB0aGUgZmlu
YWwgc3RhdGUuCisgICAgICAgIHNldE5lZWRzTGF5b3V0KCk7CisgICAgfQorCiAgICAgaWYgKG5l
d0ltYWdlICE9IGltYWdlUmVzb3VyY2UoKS5pbWFnZVB0cigpIHx8ICFuZXdJbWFnZSkKICAgICAg
ICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
SW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCmluZGV4IGIy
NDAyYzM0N2NjMGM4ZWNhMmUxMWJlNmFkMjQzMmZiNmM5YzJmMjEuLjFkZDY2NWM5M2Q4YjQ0Yzdj
MjU1ZDcxZGE1N2Q4MmEzMzhhNjAyOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJ
bWFnZS5oCkBAIC0xMzgsNiArMTM4LDExIEBAIHByaXZhdGU6CiAgICAgCiAgICAgdm9pZCBsYXlv
dXRTaGFkb3dDb250cm9scyhjb25zdCBMYXlvdXRTaXplJiBvbGRTaXplKTsKIAorICAgIExheW91
dFVuaXQgY29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQg
PSBDb21wdXRlQWN0dWFsKSBjb25zdCBvdmVycmlkZTsKKyAgICBMYXlvdXRVbml0IGNvbXB1dGVS
ZXBsYWNlZExvZ2ljYWxIZWlnaHQoT3B0aW9uYWw8TGF5b3V0VW5pdD4gZXN0aW1hdGVkVXNlZFdp
ZHRoID0gV1RGOjpudWxsb3B0KSBjb25zdCBvdmVycmlkZTsKKworICAgIGJvb2wgc2hvdWxkQ29s
bGFwc2VUb0VtcHR5KCkgY29uc3Q7CisKICAgICAvLyBUZXh0IHRvIGRpc3BsYXkgYXMgbG9uZyBh
cyB0aGUgaW1hZ2UgaXNuJ3QgYXZhaWxhYmxlLgogICAgIFN0cmluZyBtX2FsdFRleHQ7CiAgICAg
c3RkOjp1bmlxdWVfcHRyPFJlbmRlckltYWdlUmVzb3VyY2U+IG1faW1hZ2VSZXNvdXJjZTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCA3ZTdhYjFmNzRmZDM0MGJlMDBjZjg3MGU1ZTNhODkyMzdhMDllM2QyLi4zMThiOGMwMTU2
MDE0MDZhZTg5NmU5MDdiM2I1ZmVmMzQ2NDhjODg5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MjAtMDItMTcgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBJbmxp
bmUgYm94ZXMgZm9yIGltYWdlcyB0aGF0IHJlcHJlc2VudCBub3RoaW5nIHNob3VsZCBjb2xsYXBz
ZSB0byBlbXB0eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwNzc0MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTczMzk5OTI+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbmxpbmUt
aW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgt
bm8tYWx0LXNob3VsZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Ut
cXVpcmtzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9pbWFnZXMvaW5saW5l
LWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHRhYmxlcy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbDoKKwogMjAyMC0w
Mi0xNyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW091
dC1vZi1mbG93XSBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZU91dE9mRmxvd0hvcml6b250YWxH
ZW9tZXRyeSBuZWVkcyB2ZXJ0aWNhbENvbnN0cmFpbnRzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1jb2xsYXBz
ZS1uby1xdWlya3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5l
LWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8tcXVpcmtzLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lODBhMDlkYjM4MmMyYTU2YzJiMjdkMTZmZjU5MGZkZWZiOGJjNDVi
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5lLWltYWdl
LWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8tcXVpcmtzLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDIyIEBACitTVEFOREFSRFMgbW9kZS4KKworMS4gJ2FsdCcgYXR0cmlidXRlIGlz
IG5vdCBzZXQgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNlKToKKyAyMHB4IDIwcHggCisK
KzIuICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gYSBub24tZW1wdHkgdmFsdWUgKGltYWdlIGJv
eCBzaG91bGQgbm90IGNvbGxhcHNlKToKKyAyMHB4IDIwcHggIDIwcHggMjBweCAKKworMy4gJ2Fs
dCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3VsZCBjb2xs
YXBzZSk6CisgMHB4IDBweCAKKworNC4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2
YWx1ZSBvbiBhIGJsb2NraWZpZWQgaW1hZ2UgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNl
KToKKzIwcHggMjBweAorCis1LiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVl
IGFuZCB3aWR0aC9oZWlnaHQgdmFsdWVzIGFyZSBzZXQgKGltYWdlIGJveCBzaG91bGQgY29sbGFw
c2UpOgord2lkdGggYXR0cmlidXRlIGlzIHNldDogMHB4IDBweAoraGVpZ2h0IGF0dHJpYnV0ZSBp
cyBzZXQ6IDBweCAwcHgKK3dpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlcyBhcmUgc2V0OiAwcHgg
MHB4CitpbmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBzZXQ6IDBweCAwcHgKK2lubGluZSBzdHlsZSB3
aXRoIGhlaWdodCBzZXQ6IDBweCAwcHgKK2lubGluZSBzdHlsZSB3aXRoIHdpZHRoIGFuZCBoZWln
aHQ6IDBweCAwcHgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5l
LWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8tcXVpcmtzLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3Vs
ZC1jb2xsYXBzZS1uby1xdWlya3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xOGEzZGFmNDM1YTMyMTEwMTVi
ZmY0ODc5MGZkZGY0MGVkZDRmNmQ0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2Utbm8t
cXVpcmtzLmh0bWwKQEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzx0
aXRsZT48L3RpdGxlPgorPGhlYWQ+Cis8c3R5bGU+CitpbWcgeyBmb250LXNpemU6IDBweDsgfQor
PC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KK1NUQU5EQVJEUyBt
b2RlLjxicj48YnI+CisKKzEuICdhbHQnIGF0dHJpYnV0ZSBpcyBub3Qgc2V0IChpbWFnZSBib3gg
c2hvdWxkIG5vdCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTEgc3JjPSJicm9rZW5pbWFn
ZS5qcGciPiA8c3BhbiBpZD1yZXN1bHQxPjwvc3Bhbj4KKzxicj48YnI+CisyLiAnYWx0JyBhdHRy
aWJ1dGUgaXMgc2V0IHRvIGEgbm9uLWVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIG5vdCBj
b2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTIgYWx0PSIgIiBzcmM9ImJyb2tlbmltYWdlLmpw
ZyI+IDxzcGFuIGlkPXJlc3VsdDI+PC9zcGFuPiA8aW1nIGlkPWltYWdlMyBhbHQ9InRleHQiIHNy
Yz0iYnJva2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0Mz48L3NwYW4+Cis8YnI+PGJyPgor
My4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSAoaW1hZ2UgYm94IHNob3Vs
ZCBjb2xsYXBzZSk6PGJyPgorPGltZyBpZD1pbWFnZTQgaWQ9Y29sbGFwc2VkMSBhbHQ9IiIgc3Jj
PSJicm9rZW5pbWFnZS5qcGciPiA8c3BhbiBpZD1yZXN1bHQ0Pjwvc3Bhbj4KKzxicj48YnI+Cis0
LiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIG9uIGEgYmxvY2tpZmllZCBp
bWFnZSAoaW1hZ2UgYm94IHNob3VsZCBub3QgY29sbGFwc2UpOjxicj4KKzxpbWcgaWQ9aW1hZ2U1
IGFsdD0iIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOyAyMHB4OyBoZWlnaHQ6IDIwcHgi
IHNyYz0iYnJva2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0NT48L3NwYW4+PGJyPgorPGJy
PgorNS4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSBhbmQgd2lkdGgvaGVp
Z2h0IHZhbHVlcyBhcmUgc2V0IChpbWFnZSBib3ggc2hvdWxkIGNvbGxhcHNlKTo8YnI+Cis8aW1n
IGlkPWltYWdlNiAgYWx0PSIiIHdpZHRoPTIwIHNyYz0iYnJva2VuaW1hZ2UuanBnIj53aWR0aCBh
dHRyaWJ1dGUgaXMgc2V0OiA8c3BhbiBpZD1yZXN1bHQ2Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWlt
YWdlNyAgYWx0PSIiIGhlaWdodD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aGVpZ2h0IGF0dHJp
YnV0ZSBpcyBzZXQ6IDxzcGFuIGlkPXJlc3VsdDc+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U4
ICBhbHQ9IiIgd2lkdGg9MjAgaGVpZ2h0PTIwIHNyYz0iYnJva2VuaW1hZ2UuanBnIj53aWR0aCBh
bmQgaGVpZ2h0IGF0dHJpYnV0ZXMgYXJlIHNldDogPHNwYW4gaWQ9cmVzdWx0OD48L3NwYW4+PGJy
PgorPGltZyBpZD1pbWFnZTkgIGFsdD0iIiBzdHlsZT0id2lkdGg6IDIwcHg7IiBzcmM9ImJyb2tl
bmltYWdlLmpwZyI+aW5saW5lIHN0eWxlIHdpdGggd2lkdGggc2V0OiA8c3BhbiBpZD1yZXN1bHQ5
Pjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlMTAgIGFsdD0iIiBzdHlsZT0iaGVpZ2h0OiAyMHB4
OyIgc3JjPSJicm9rZW5pbWFnZS5qcGciPmlubGluZSBzdHlsZSB3aXRoIGhlaWdodCBzZXQ6IDxz
cGFuIGlkPXJlc3VsdDEwPjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlMTEgIGFsdD0iIiBzdHls
ZT0id2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsiIHNyYz0iYnJva2VuaW1hZ2UuanBnIj5pbmxp
bmUgc3R5bGUgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0OiA8c3BhbiBpZD1yZXN1bHQxMT48L3NwYW4+
PGJyPgorCis8c2NyaXB0PgorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIGxldCBudW1i
ZXJPZkltYWdlcyA9IDExOworICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IG51bWJlck9mSW1hZ2Vz
OyArK2kpIHsKKyAgICAgICAgbGV0IGltYWdlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJpbWFnZSIgKyBpKTsKKyAgICAgICAgbGV0IHJlc3VsdEVsZW1lbnQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0IiArIGkpOworICAgICAgICByZXN1bHRFbGVtZW50LmlubmVy
SFRNTCA9IGltYWdlRWxlbWVudC5vZmZzZXRXaWR0aCArICJweCAiICsgaW1hZ2VFbGVtZW50Lm9m
ZnNldEhlaWdodCArICJweCI7CisgICAgfQorfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9pbWFnZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2UtcXVp
cmtzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1i
b3gtd2l0aC1uby1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYzBmY2UzMTFkMmNjMzhiM2ZiNjAyM2NiYTQxMGM3ZGMzZTA1OWQ5ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2lubGluZS1pbWFnZS1ib3gtd2l0aC1u
by1hbHQtc2hvdWxkLWNvbGxhcHNlLXF1aXJrcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMCBA
QAorUVVJUktTIG1vZGUuCisKKzEuICdhbHQnIGF0dHJpYnV0ZSBpcyBub3Qgc2V0IChpbWFnZSBi
b3ggc2hvdWxkIG5vdCBjb2xsYXBzZSk6CisgMjBweCAyMHB4IAorCisyLiAnYWx0JyBhdHRyaWJ1
dGUgaXMgc2V0IHRvIGEgbm9uLWVtcHR5IHZhbHVlIChpbWFnZSBib3ggc2hvdWxkIG5vdCBjb2xs
YXBzZSk6CisgMjBweCAyMHB4ICAyMHB4IDIwcHggCisKKzMuICdhbHQnIGF0dHJpYnV0ZSBpcyBz
ZXQgdG8gZW1wdHkgdmFsdWUgKGltYWdlIGJveCBzaG91bGQgY29sbGFwc2UpOgorMHB4IDBweCAK
KworNC4gJ2FsdCcgYXR0cmlidXRlIGlzIHNldCB0byBlbXB0eSB2YWx1ZSBidXQgb3RoZXIgYXR0
cmlidXRlcy9wcm9wZXJ0aWVzIHByZXZlbnQgY29sbGFwc2luZyAoaW1hZ2UgYm94IHNob3VsZCBu
b3QgY29sbGFwc2UpOgoraW1hZ2UgYm94IGlzIGJsb2NraWZpZWQ6IDIwcHggMjBweAord2lkdGgg
YXR0cmlidXRlIGlzIHNldDogMjBweCAyMHB4CitoZWlnaHQgYXR0cmlidXRlIGlzIHNldDogMjBw
eCAyMHB4Cit3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZXMgYXJlIHNldDogMjBweCAyMHB4Citp
bmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBzZXQ6IDIwcHggMjBweAoraW5saW5lIHN0eWxlIHdpdGgg
aGVpZ2h0IHNldDogMjBweCAyMHB4CitpbmxpbmUgc3R5bGUgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0
OiAyMHB4IDIwcHgKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW5saW5l
LWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2ltYWdlcy9pbmxpbmUtaW1hZ2UtYm94LXdpdGgtbm8tYWx0LXNob3VsZC1j
b2xsYXBzZS1xdWlya3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMGRkMTAzNGUyZWU2YTAyNjBmOTM1NmI4
ZTY3OTlhZjc3YzIxOGM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFn
ZXMvaW5saW5lLWltYWdlLWJveC13aXRoLW5vLWFsdC1zaG91bGQtY29sbGFwc2UtcXVpcmtzLmh0
bWwKQEAgLTAsMCArMSwzOCBAQAorPGh0bWw+Cis8dGl0bGU+PC90aXRsZT4KKzxzdHlsZT4KK2lt
ZyB7IGZvbnQtc2l6ZTogMHB4OyB9Cis8L3N0eWxlPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgorUVVJUktTIG1vZGUuPGJyPjxicj4KKworMS4gJ2FsdCcgYXR0cmlidXRlIGlzIG5vdCBzZXQg
KGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxhcHNlKTo8YnI+Cis8aW1nIGlkPWltYWdlMSBzcmM9
ImJyb2tlbmltYWdlLmpwZyI+IDxzcGFuIGlkPXJlc3VsdDE+PC9zcGFuPgorPGJyPjxicj4KKzIu
ICdhbHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gYSBub24tZW1wdHkgdmFsdWUgKGltYWdlIGJveCBz
aG91bGQgbm90IGNvbGxhcHNlKTo8YnI+Cis8aW1nIGlkPWltYWdlMiBhbHQ9IiAiIHNyYz0iYnJv
a2VuaW1hZ2UuanBnIj4gPHNwYW4gaWQ9cmVzdWx0Mj48L3NwYW4+IDxpbWcgaWQ9aW1hZ2UzIGFs
dD0idGV4dCIgc3JjPSJicm9rZW5pbWFnZS5qcGciPiA8c3BhbiBpZD1yZXN1bHQzPjwvc3Bhbj4K
Kzxicj48YnI+CiszLiAnYWx0JyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGVtcHR5IHZhbHVlIChpbWFn
ZSBib3ggc2hvdWxkIGNvbGxhcHNlKTo8YnI+Cis8aW1nIGlkPWltYWdlNCBhbHQ9IiIgc3JjPSJi
cm9rZW5pbWFnZS5qcGciPjxzcGFuIGlkPXJlc3VsdDQ+PC9zcGFuPgorPGJyPjxicj4KKzQuICdh
bHQnIGF0dHJpYnV0ZSBpcyBzZXQgdG8gZW1wdHkgdmFsdWUgYnV0IG90aGVyIGF0dHJpYnV0ZXMv
cHJvcGVydGllcyBwcmV2ZW50IGNvbGxhcHNpbmcgKGltYWdlIGJveCBzaG91bGQgbm90IGNvbGxh
cHNlKTo8YnI+Cis8aW1nIGlkPWltYWdlNSBhbHQ9IiIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyB3
aWR0aDsgMjBweDsgaGVpZ2h0OiAyMHB4IiBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aW1hZ2UgYm94
IGlzIGJsb2NraWZpZWQ6IDxzcGFuIGlkPXJlc3VsdDU+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1h
Z2U2IGFsdD0iIiB3aWR0aD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+d2lkdGggYXR0cmlidXRl
IGlzIHNldDogPHNwYW4gaWQ9cmVzdWx0Nj48L3NwYW4+PGJyPgorPGltZyBpZD1pbWFnZTcgYWx0
PSIiIGhlaWdodD0yMCBzcmM9ImJyb2tlbmltYWdlLmpwZyI+aGVpZ2h0IGF0dHJpYnV0ZSBpcyBz
ZXQ6IDxzcGFuIGlkPXJlc3VsdDc+PC9zcGFuPjxicj4KKzxpbWcgaWQ9aW1hZ2U4IGFsdD0iIiB3
aWR0aD0yMCBoZWlnaHQ9MjAgc3JjPSJicm9rZW5pbWFnZS5qcGciPndpZHRoIGFuZCBoZWlnaHQg
YXR0cmlidXRlcyBhcmUgc2V0OiA8c3BhbiBpZD1yZXN1bHQ4Pjwvc3Bhbj48YnI+Cis8aW1nIGlk
PWltYWdlOSBhbHQ9IiIgc3R5bGU9IndpZHRoOiAyMHB4OyIgc3JjPSJicm9rZW5pbWFnZS5qcGci
PmlubGluZSBzdHlsZSB3aXRoIHdpZHRoIHNldDogPHNwYW4gaWQ9cmVzdWx0OT48L3NwYW4+PGJy
PgorPGltZyBpZD1pbWFnZTEwIGFsdD0iIiBzdHlsZT0iaGVpZ2h0OiAyMHB4OyIgc3JjPSJicm9r
ZW5pbWFnZS5qcGciPmlubGluZSBzdHlsZSB3aXRoIGhlaWdodCBzZXQ6IDxzcGFuIGlkPXJlc3Vs
dDEwPjwvc3Bhbj48YnI+Cis8aW1nIGlkPWltYWdlMTEgYWx0PSIiIHN0eWxlPSJ3aWR0aDogMjBw
eDsgaGVpZ2h0OiAyMHB4OyIgc3JjPSJicm9rZW5pbWFnZS5qcGciPmlubGluZSBzdHlsZSB3aXRo
IHdpZHRoIGFuZCBoZWlnaHQ6IDxzcGFuIGlkPXJlc3VsdDExPjwvc3Bhbj48YnI+CisKKzxzY3Jp
cHQ+CitmdW5jdGlvbiBydW5UZXN0KCkgeworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgbGV0IG51bWJlck9mSW1hZ2VzID0g
MTE7CisgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gbnVtYmVyT2ZJbWFnZXM7ICsraSkgeworICAg
ICAgICBsZXQgaW1hZ2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIiAr
IGkpOworICAgICAgICBsZXQgcmVzdWx0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZXN1bHQiICsgaSk7CisgICAgICAgIHJlc3VsdEVsZW1lbnQuaW5uZXJIVE1MID0gaW1hZ2VF
bGVtZW50Lm9mZnNldFdpZHRoICsgInB4ICIgKyBpbWFnZUVsZW1lbnQub2Zmc2V0SGVpZ2h0ICsg
InB4IjsKKyAgICB9Cit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RhYmxl
cy9tb3ppbGxhL2J1Z3MvYnVnNTYyMDEuaHRtbCBiL0xheW91dFRlc3RzL3RhYmxlcy9tb3ppbGxh
L2J1Z3MvYnVnNTYyMDEuaHRtbAppbmRleCAwYTdhYzg3NjE4MzcxNjBhNDNiYzEyNTQyOTU5OTY4
NzJhNDQxOTQ0Li4wMjIzZjJhYWNhOWE5YjU5ZWY5MDI5MzFkYjVhODRjMDYxYWQ3OTRjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy90YWJsZXMvbW96aWxsYS9idWdzL2J1ZzU2MjAxLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvdGFibGVzL21vemlsbGEvYnVncy9idWc1NjIwMS5odG1sCkBAIC0xMCwx
MCArMTAsMTAgQEAKICAgICAgPHRhYmxlIGJvcmRlcj0iMSI+CiAgICAgICA8dHI+CiAgICAgICAg
PHRkPgotICAgICAgICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xvZ29fc21hbGwuZ2lmIiBhbHQ9IiI+
CisgICAgICAgIDxpbWcgc3JjPSIuLi9pbWFnZXMvbG9nb19zbWFsbC5naWYiPgogICAgICAgIDwv
dGQ+CiAgICAgICAgPHRkPgotICAgICAgICA8aW1nIHNyYz0iLi4vaW1hZ2VzL2xvZ29fc21hbGwu
Z2lmIiBhbHQ9IiI+CisgICAgICAgIDxpbWcgc3JjPSIuLi9pbWFnZXMvbG9nb19zbWFsbC5naWYi
PgogICAgICAgIDwvdGQ+CiAgICAgICA8L3RyPgogICAgICA8L3RhYmxlPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390986</attachid>
            <date>2020-02-17 14:48:21 -0800</date>
            <delta_ts>2020-02-17 14:50:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207740-20200217144820.patch</filename>
            <type>text/plain</type>
            <size>23554</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2Nzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjkwZTQ1NDU4OTBlMWQy
YzUzYTk4ZjEyYTEyMGI5MWY1OWQ1ZTIxOC4uOWQ3MTk1OTNmMjU2N2M3ZjU2Y2ZlNTNmN2ZmZjlm
ODliNmExOWM3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtNjIsNiArNjIsMjMgQEAKICAgICAgICAgKiBodG1s
L0hUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKICAgICAgICAgKFdlYkNvcmU6OkhUTUxU
ZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjpzZXRTZWxlY3Rpb25SYW5nZSk6CiAKKzIwMjAtMDItMTcg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFVzZSBtb3JlIE9i
amVjdElkZW50aWZpZXIgaW4gV2ViUlRDIE1ETlMgcmVnaXN0ZXIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzU0OAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhc3MgZG9jdW1lbnQgaWRlbnRpZmllcnMg
aW5zdGVhZCBvZiB1aW50NjRfdCB0byBtZG5zIHJlZ2lzdGVyLgorICAgICAgICBObyBjaGFuZ2Ug
b2YgYmVoYXZpb3IuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1BlZXJDb25uZWN0
aW9uQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6
OnJlZ2lzdGVyTUROU05hbWUpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudDo6cHJlcGFyZUZvckRlc3RydWN0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50OjpzdXNwZW5kKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVh
bS9saWJ3ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuaDoKKwogMjAyMC0wMi0xNyAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIFdlYkluc3BlY3RvciBzdXBw
b3J0IHRvIFdlYktpdDo6V2ViU29ja2V0Q2hhbm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBhOWNkMTUzZTA5MjE1
YTgxZWU1ZDJjYTk2ODBhNGI5ZGIzZWQ3YmQ0Li5hNjY5OGJjYjkzYjljNjRhN2MyNzhkMjFlMGVm
ZmRiMmY2ZTU4NDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTAyLTE3ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgbW9yZSBPYmplY3RJ
ZGVudGlmaWVyIGluIFdlYlJUQyBNRE5TIHJlZ2lzdGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc1NDgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgTUROU1Jl
Z2lzdGVyIGZvciBtb3JlIHR5cGUgYW5kIElQQyBzYWZldHkuCisgICAgICAgIFVwZGF0ZSBNRE5T
UmVnaXN0ZXIgdG8gYWxzbyB1c2UgRG9jdW1lbnRJZGVudGlmaWVyIHdoZXJlIG1vcmUgYXBwcm9w
cmlhdGUuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdp
c3Rlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBlbmRpbmdSZWdpc3RyYXRpb25SZXF1ZXN0OjpQ
ZW5kaW5nUmVnaXN0cmF0aW9uUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtNRE5T
UmVnaXN0ZXI6OnJlZ2lzdGVyTUROU05hbWUpOgorICAgICAgICAoKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5oOgorICAgICAg
ICAqIE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrTUROU1JlZ2lzdGVyLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAqIFdlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29y
ay93ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpMaWJXZWJS
VENQcm92aWRlcjo6dW5yZWdpc3Rlck1ETlNOYW1lcyk6CisgICAgICAgIChXZWJLaXQ6OkxpYldl
YlJUQ1Byb3ZpZGVyOjpyZWdpc3Rlck1ETlNOYW1lKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05l
dHdvcmsvd2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9O
ZXR3b3JrL3dlYnJ0Yy9XZWJNRE5TUmVnaXN0ZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJN
RE5TUmVnaXN0ZXI6OmZpbmlzaGVkUmVnaXN0ZXJpbmdNRE5TTmFtZSk6CisgICAgICAgIChXZWJL
aXQ6OldlYk1ETlNSZWdpc3Rlcjo6dW5yZWdpc3Rlck1ETlNOYW1lcyk6CisgICAgICAgIChXZWJL
aXQ6OldlYk1ETlNSZWdpc3Rlcjo6cmVnaXN0ZXJNRE5TTmFtZSk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9OZXR3b3JrL3dlYnJ0Yy9XZWJNRE5TUmVnaXN0ZXIuaDoKKyAgICAgICAgKCk6IERlbGV0
ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9XZWJNRE5TUmVnaXN0ZXIu
bWVzc2FnZXMuaW46CisKIDIwMjAtMDItMTcgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUu
Y29tPgogCiAgICAgICAgIEFkZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCB0byBXZWJLaXQ6OldlYlNv
Y2tldENoYW5uZWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUGVlckNvbm5lY3Rpb25CYWNrZW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUGVlckNvbm5lY3Rpb25CYWNrZW5kLmNwcAppbmRleCBkMGE4YTYzNzgzY2ZhMGM3
MTE0ZDRmOGY3M2JkMmZlMmJiMmI1Y2RlLi4yYzgxZTcwNzdhNzVlMWJjZWJmNjk5N2IzYTU0Mzk4
ZjhjYzY0ZTEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1BlZXJDb25uZWN0aW9uQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9QZWVyQ29ubmVjdGlvbkJhY2tlbmQuY3BwCkBAIC01MDQsNyArNTA0LDcgQEAg
dm9pZCBQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OnJlZ2lzdGVyTUROU05hbWUoY29uc3QgU3RyaW5n
JiBpcEFkZHJlc3MpCiAgICAgKyttX3dhaXRpbmdGb3JNRE5TUmVnaXN0cmF0aW9uOwogICAgIGF1
dG8mIGRvY3VtZW50ID0gZG93bmNhc3Q8RG9jdW1lbnQ+KCptX3BlZXJDb25uZWN0aW9uLnNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAgICAgYXV0byYgcHJvdmlkZXIgPSBkb2N1bWVudC5wYWdl
KCktPmxpYldlYlJUQ1Byb3ZpZGVyKCk7Ci0gICAgcHJvdmlkZXIucmVnaXN0ZXJNRE5TTmFtZShk
b2N1bWVudC5pZGVudGlmaWVyKCkudG9VSW50NjQoKSwgaXBBZGRyZXNzLCBbcGVlckNvbm5lY3Rp
b24gPSBtYWtlUmVmKG1fcGVlckNvbm5lY3Rpb24pLCB0aGlzLCBpcEFkZHJlc3NdIChMaWJXZWJS
VENQcm92aWRlcjo6TUROU05hbWVPckVycm9yJiYgcmVzdWx0KSB7CisgICAgcHJvdmlkZXIucmVn
aXN0ZXJNRE5TTmFtZShkb2N1bWVudC5pZGVudGlmaWVyKCksIGlwQWRkcmVzcywgW3BlZXJDb25u
ZWN0aW9uID0gbWFrZVJlZihtX3BlZXJDb25uZWN0aW9uKSwgdGhpcywgaXBBZGRyZXNzXSAoTGli
V2ViUlRDUHJvdmlkZXI6Ok1ETlNOYW1lT3JFcnJvciYmIHJlc3VsdCkgewogICAgICAgICBpZiAo
cGVlckNvbm5lY3Rpb24tPmlzU3RvcHBlZCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmNwcAppbmRleCAwMmE2NTM0N2FjNDllZjAxMmIxOWIzODY3ZTkzOTUwNzk2
ZWQ4YmZhLi41NTgwYjM1YmZkODk1NjA3NjFiNjNhNDk4ZTdhOTNkOGZiMWY5NmI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAKQEAgLTI0OTUsNyArMjQ5NSw3IEBAIHZvaWQgRG9jdW1lbnQ6OnBy
ZXBhcmVGb3JEZXN0cnVjdGlvbigpCiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1vdmVk
IHRvIE1vZHVsZXMvbWVkaWFzdHJlYW0uCiAgICAgaWYgKExpYldlYlJUQ1Byb3ZpZGVyOjp3ZWJS
VENBdmFpbGFibGUoKSkgewogICAgICAgICBpZiAoYXV0byogcGFnZSA9IHRoaXMtPnBhZ2UoKSkK
LSAgICAgICAgICAgIHBhZ2UtPmxpYldlYlJUQ1Byb3ZpZGVyKCkudW5yZWdpc3Rlck1ETlNOYW1l
cyhpZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CisgICAgICAgICAgICBwYWdlLT5saWJXZWJSVENQ
cm92aWRlcigpLnVucmVnaXN0ZXJNRE5TTmFtZXMoaWRlbnRpZmllcigpKTsKICAgICB9CiAjZW5k
aWYKIApAQCAtNTM0OSw3ICs1MzQ5LDcgQEAgdm9pZCBEb2N1bWVudDo6c3VzcGVuZChSZWFzb25G
b3JTdXNwZW5zaW9uIHJlYXNvbikKICAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUgbW92ZWQg
dG8gTW9kdWxlcy9tZWRpYXN0cmVhbS4KICAgICBpZiAoTGliV2ViUlRDUHJvdmlkZXI6OndlYlJU
Q0F2YWlsYWJsZSgpKSB7CiAgICAgICAgIGlmIChhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpKQot
ICAgICAgICAgICAgcGFnZS0+bGliV2ViUlRDUHJvdmlkZXIoKS51bnJlZ2lzdGVyTUROU05hbWVz
KGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKKyAgICAgICAgICAgIHBhZ2UtPmxpYldlYlJUQ1By
b3ZpZGVyKCkudW5yZWdpc3Rlck1ETlNOYW1lcyhpZGVudGlmaWVyKCkpOwogICAgIH0KICNlbmRp
ZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5oCmluZGV4IDY3ODU5YjUzM2UyMjYx
YTJmZDEzYjBkZWZjY2Q5MWJmYjVlZjE5N2QuLjNkYjU5NjQwNjhiODc5MjQzM2YzZDRkM2E4MDFk
MDZkMzdmMmQ4OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5oCkBAIC0yNSw2
ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRG9jdW1lbnRJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiTGliV2ViUlRDTWFjcm9zLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRp
b25IYW5kbGVyLmg+CiAjaW5jbHVkZSA8d3RmL0V4cGVjdGVkLmg+CkBAIC03OCwxNCArNzksMTAg
QEAgcHVibGljOgogICAgIHVzaW5nIElQQWRkcmVzc09yRXJyb3IgPSBFeHBlY3RlZDxTdHJpbmcs
IE1ETlNSZWdpc3RlckVycm9yPjsKICAgICB1c2luZyBNRE5TTmFtZU9yRXJyb3IgPSBFeHBlY3Rl
ZDxTdHJpbmcsIE1ETlNSZWdpc3RlckVycm9yPjsKIAotICAgIHZpcnR1YWwgdm9pZCB1bnJlZ2lz
dGVyTUROU05hbWVzKHVpbnQ2NF90IGRvY3VtZW50SWRlbnRpZmllcikKLSAgICB7Ci0gICAgICAg
IFVOVVNFRF9QQVJBTShkb2N1bWVudElkZW50aWZpZXIpOwotICAgIH0KKyAgICB2aXJ0dWFsIHZv
aWQgdW5yZWdpc3Rlck1ETlNOYW1lcyhEb2N1bWVudElkZW50aWZpZXIpIHsgfQogCi0gICAgdmly
dHVhbCB2b2lkIHJlZ2lzdGVyTUROU05hbWUodWludDY0X3QgZG9jdW1lbnRJZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIGlwQWRkcmVzcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChNRE5TTmFtZU9y
RXJyb3ImJik+JiYgY2FsbGJhY2spCisgICAgdmlydHVhbCB2b2lkIHJlZ2lzdGVyTUROU05hbWUo
RG9jdW1lbnRJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIGlwQWRkcmVzcywgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChNRE5TTmFtZU9yRXJyb3ImJik+JiYgY2FsbGJhY2spCiAgICAgewotICAgICAg
ICBVTlVTRURfUEFSQU0oZG9jdW1lbnRJZGVudGlmaWVyKTsKICAgICAgICAgVU5VU0VEX1BBUkFN
KGlwQWRkcmVzcyk7CiAgICAgICAgIGNhbGxiYWNrKG1ha2VVbmV4cGVjdGVkKE1ETlNSZWdpc3Rl
ckVycm9yOjpOb3RJbXBsZW1lbnRlZCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtNRE5TUmVnaXN0ZXIuY3BwIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5jcHAKaW5k
ZXggNTNhNjM4MWY0YzRlNzgxNzgwNGFkZjIxZjc2MTUwNjdiNjRkMGU2OC4uNDNhMGNkMTNjZTgz
MjNmY2RlNjBmMGFmYzZjM2ZjOTgxYTE2NzVhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5jcHAKQEAg
LTY1LDcgKzY1LDcgQEAgdm9pZCBOZXR3b3JrTUROU1JlZ2lzdGVyOjp1bnJlZ2lzdGVyTUROU05h
bWVzKFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciBkb2N1bWUKIAogc3RydWN0IFBlbmRpbmdS
ZWdpc3RyYXRpb25SZXF1ZXN0IHsKICAgICBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FURUQ7
Ci0gICAgUGVuZGluZ1JlZ2lzdHJhdGlvblJlcXVlc3QoUmVmPElQQzo6Q29ubmVjdGlvbj4gY29u
bmVjdGlvbiwgdWludDY0X3QgcmVxdWVzdElkZW50aWZpZXIsIFN0cmluZyYmIG5hbWUsIFBBTDo6
U2Vzc2lvbklEIHNlc3Npb25JRCkKKyAgICBQZW5kaW5nUmVnaXN0cmF0aW9uUmVxdWVzdChSZWY8
SVBDOjpDb25uZWN0aW9uPiYmIGNvbm5lY3Rpb24sIE1ETlNSZWdpc3RlcklkZW50aWZpZXIgcmVx
dWVzdElkZW50aWZpZXIsIFN0cmluZyYmIG5hbWUsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkK
ICAgICAgICAgOiBjb25uZWN0aW9uKFdURk1vdmUoY29ubmVjdGlvbikpCiAgICAgICAgICwgcmVx
dWVzdElkZW50aWZpZXIocmVxdWVzdElkZW50aWZpZXIpCiAgICAgICAgICwgbmFtZShXVEZNb3Zl
KG5hbWUpKQpAQCAtNzQsNyArNzQsNyBAQCBzdHJ1Y3QgUGVuZGluZ1JlZ2lzdHJhdGlvblJlcXVl
c3QgewogICAgIH0KIAogICAgIFJlZjxJUEM6OkNvbm5lY3Rpb24+IGNvbm5lY3Rpb247Ci0gICAg
dWludDY0X3QgcmVxdWVzdElkZW50aWZpZXIgeyAwIH07CisgICAgTUROU1JlZ2lzdGVySWRlbnRp
ZmllciByZXF1ZXN0SWRlbnRpZmllcjsKICAgICBTdHJpbmcgbmFtZTsKICAgICBQQUw6OlNlc3Np
b25JRCBzZXNzaW9uSUQ7CiAgICAgRE5TUmVjb3JkUmVmIHJlY29yZDsKQEAgLTEwNCw3ICsxMDQs
NyBAQCBzdGF0aWMgdm9pZCByZWdpc3Rlck1ETlNOYW1lQ2FsbGJhY2soRE5TU2VydmljZVJlZiwg
RE5TUmVjb3JkUmVmIHJlY29yZCwgRE5TU2VydgogICAgIHJlcXVlc3QtPmNvbm5lY3Rpb24tPnNl
bmQoTWVzc2FnZXM6OldlYk1ETlNSZWdpc3Rlcjo6RmluaXNoZWRSZWdpc3RlcmluZ01ETlNOYW1l
IHsgcmVxdWVzdC0+cmVxdWVzdElkZW50aWZpZXIsIHJlcXVlc3QtPm5hbWUgfSwgMCk7CiB9CiAK
LXZvaWQgTmV0d29ya01ETlNSZWdpc3Rlcjo6cmVnaXN0ZXJNRE5TTmFtZSh1aW50NjRfdCByZXF1
ZXN0SWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRJZGVudGlmaWVyIGRvY3VtZW50SWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiBpcEFkZHJlc3MpCit2b2lkIE5ldHdvcmtNRE5TUmVnaXN0ZXI6
OnJlZ2lzdGVyTUROU05hbWUoTUROU1JlZ2lzdGVySWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmll
ciwgV2ViQ29yZTo6RG9jdW1lbnRJZGVudGlmaWVyIGRvY3VtZW50SWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBpcEFkZHJlc3MpCiB7CiAgICAgRE5TU2VydmljZVJlZiBzZXJ2aWNlOwogICAgIGF1
dG8gaXRlcmF0b3IgPSBtX3NlcnZpY2VzLmZpbmQoZG9jdW1lbnRJZGVudGlmaWVyKTsKQEAgLTE2
OCw3ICsxNjgsNyBAQCB2b2lkIE5ldHdvcmtNRE5TUmVnaXN0ZXI6OnVucmVnaXN0ZXJNRE5TTmFt
ZXMoV2ViQ29yZTo6RG9jdW1lbnRJZGVudGlmaWVyKQogewogfQogCi12b2lkIE5ldHdvcmtNRE5T
UmVnaXN0ZXI6OnJlZ2lzdGVyTUROU05hbWUodWludDY0X3QgcmVxdWVzdElkZW50aWZpZXIsIFdl
YkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciBkb2N1bWVudElkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgaXBBZGRyZXNzKQordm9pZCBOZXR3b3JrTUROU1JlZ2lzdGVyOjpyZWdpc3Rlck1ETlNOYW1l
KE1ETlNSZWdpc3RlcklkZW50aWZpZXIgcmVxdWVzdElkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3Vt
ZW50SWRlbnRpZmllciBkb2N1bWVudElkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgaXBBZGRyZXNz
KQogewogICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoInJlZ2lzdGVyTUROU05hbWUgbm90IGlt
cGxlbWVudGVkIik7CiAgICAgbV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2Vz
OjpXZWJNRE5TUmVnaXN0ZXI6OkZpbmlzaGVkUmVnaXN0ZXJpbmdNRE5TTmFtZSB7IHJlcXVlc3RJ
ZGVudGlmaWVyLCBtYWtlVW5leHBlY3RlZChXZWJDb3JlOjpNRE5TUmVnaXN0ZXJFcnJvcjo6Tm90
SW1wbGVtZW50ZWQpIH0sIDApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5oCmluZGV4IDQ4YzdmNzE4N2U3NzEx
OGFjZWNiZmNjZDIwNzNmMGNlZDVmNjA4NGIuLjNjNzU0NzBmYjUxNTkxMDMxZDU2NGI3YjFkOTYx
MjU3NzRlM2Q0ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2Vi
cnRjL05ldHdvcmtNRE5TUmVnaXN0ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3dlYnJ0Yy9OZXR3b3JrTUROU1JlZ2lzdGVyLmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lm
IEVOQUJMRShXRUJfUlRDKQogCisjaW5jbHVkZSAiTUROU1JlZ2lzdGVySWRlbnRpZmllci5oIgog
I2luY2x1ZGUgIlJUQ05ldHdvcmsuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0RvY3VtZW50SWRlbnRp
Zmllci5oPgogI2luY2x1ZGUgPHd0Zi9FeHBlY3RlZC5oPgpAQCAtNjUsOCArNjYsNyBAQCBwdWJs
aWM6CiAKIHByaXZhdGU6CiAgICAgdm9pZCB1bnJlZ2lzdGVyTUROU05hbWVzKFdlYkNvcmU6OkRv
Y3VtZW50SWRlbnRpZmllcik7Ci0gICAgdm9pZCByZWdpc3Rlck1ETlNOYW1lKHVpbnQ2NF90IHJl
cXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgaXBBZGRyZXNzKTsKLSAgICB2b2lkIHJlc29sdmVNRE5TTmFtZSh1aW50NjRfdCByZXF1ZXN0
SWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lKTsKKyAgICB2b2lkIHJlZ2lzdGVyTUROU05h
bWUoTUROU1JlZ2lzdGVySWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRJZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIGlwQWRkcmVzcyk7CiAgICAgCiAgICAgUEFMOjpTZXNzaW9uSUQgc2Vzc2lv
bklEKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
d2VicnRjL05ldHdvcmtNRE5TUmVnaXN0ZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrTUROU1JlZ2lzdGVyLm1lc3NhZ2VzLmluCmluZGV4
IGU5ZmI3ODQ3OTE3ZmNiNGQ1OGRjNDRkYWYyMWQ0NTczZDgxZTY2MmIuLjE1ODM5NjMzZDU1M2Uw
MDVjY2NiOWI3NGZjMGMxOGZkMTA3ZGY1MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtNRE5TUmVnaXN0ZXIubWVzc2FnZXMuaW4KKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya01ETlNSZWdpc3Rlci5t
ZXNzYWdlcy5pbgpAQCAtMjQsNyArMjQsNyBAQAogCiBtZXNzYWdlcyAtPiBOZXR3b3JrTUROU1Jl
Z2lzdGVyIE5vdFJlZkNvdW50ZWQgewogICAgIFVucmVnaXN0ZXJNRE5TTmFtZXMoV2ViQ29yZTo6
RG9jdW1lbnRJZGVudGlmaWVyIGRvY3VtZW50SWRlbnRpZmllcikKLSAgICBSZWdpc3Rlck1ETlNO
YW1lKHVpbnQ2NF90IHJlcXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudElkZW50aWZp
ZXIgZG9jdW1lbnRJZGVudGlmaWVyLCBTdHJpbmcgaXBBZGRyZXNzKQorICAgIFJlZ2lzdGVyTURO
U05hbWUoV2ViS2l0OjpNRE5TUmVnaXN0ZXJJZGVudGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyLCBX
ZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIgZG9jdW1lbnRJZGVudGlmaWVyLCBTdHJpbmcgaXBB
ZGRyZXNzKQogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQl9SVEMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRleCA3ZjFjZjljNzU5ZTI2MjZkMTU5NjE3NDVhYmQ0
NTc1MWIyNGM2M2YzLi4wNGQ4ZTgxODQyZTlmNTllMjM3NTYzMDZlZDc1YmM1YTllZDgwZGU4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBi
L1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTIyNCw2ICsyMjQs
NyBAQCBkZWYgdHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAg
ICAnV2ViS2l0OjpDb250ZW50V29ybGRJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6TGF5
ZXJIb3N0aW5nQ29udGV4dElEJywKICAgICAgICAgJ1dlYktpdDo6TGliV2ViUlRDUmVzb2x2ZXJJ
ZGVudGlmaWVyJywKKyAgICAgICAgJ1dlYktpdDo6TUROU1JlZ2lzdGVySWRlbnRpZmllcicsCiAg
ICAgICAgICdXZWJLaXQ6Ok1lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUlkZW50aWZpZXInLAogICAg
ICAgICAnV2ViS2l0OjpNZWRpYVJlY29yZGVySWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6
OlJlbW90ZU1lZGlhUmVzb3VyY2VJZGVudGlmaWVyJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDZhNDUzZmUzZjc5MDRjNGUxMmM5ZGIx
OWJiOTI1YWZiY2U2M2Y4N2MuLjU0NmQ4NGRmMTNjZmVhYzc1ZWY4ZmJiYjFmZGJkYWU3Zjc4M2M4
NmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMzM2Nyw2ICszMzY3LDcgQEAKIAkJNDE1Nzg1MzAyMTI3NkI2RjAwREQzODAwIC8qIGNv
cHktd2ViY29udGVudC1yZXNvdXJjZXMtdG8tcHJpdmF0ZS1oZWFkZXJzLnNoICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQuc2g7IHBh
dGggPSAiY29weS13ZWJjb250ZW50LXJlc291cmNlcy10by1wcml2YXRlLWhlYWRlcnMuc2giOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTU3RTRBRjIwRTJFQzk4MDBBNkMwRDcgLyog
Y29tLmdvb2dsZS5vMWRicm93c2VycGx1Z2luLnNiICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IGNv
bS5nb29nbGUubzFkYnJvd3NlcnBsdWdpbi5zYjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDE1ODY0OUEyM0JFMDkyNDAwQTBBNjFFIC8qIFJUQ0VuY29kZXJJZGVudGlmaWVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0VuY29kZXJJZGVudGlmaWVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNkNENzQ1MjNGQjE3OEIwMDY2MUQ5OSAvKiBN
RE5TUmVnaXN0ZXJJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IE1ETlNSZWdpc3RlcklkZW50aWZpZXIuaDsgcGF0aCA9IE5ldHdvcmsvd2VicnRjL01ETlNSZWdp
c3RlcklkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDE3MjE5ODky
M0I2MTI4MjAwQUU1Njg2IC8qIExpYldlYlJUQ0NvZGVjcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBMaWJXZWJSVENDb2RlY3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNDE3MjE5OEEyM0I2MTI4MjAwQUU1Njg2IC8qIExpYldlYlJUQ0NvZGVjcy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMaWJXZWJSVENDb2RlY3MuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTcyMTk4QzIzQjYxMkU4MDBBRTU2ODYgLyog
UlRDRGVjb2RlcklkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UlRDRGVjb2RlcklkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTcy
NDAsNiArNzI0MSw3IEBACiAJCQkJNDEzMDc1QTAxREU4NUVFNzAwMzlFQzY5IC8qIExpYldlYlJU
Q1NvY2tldC5oICovLAogCQkJCTQxMzA3NUE1MURFODVFRTcwMDM5RUM2OSAvKiBMaWJXZWJSVENT
b2NrZXRGYWN0b3J5LmNwcCAqLywKIAkJCQk0MTMwNzVBNjFERTg1RUU3MDAzOUVDNjkgLyogTGli
V2ViUlRDU29ja2V0RmFjdG9yeS5oICovLAorCQkJCTQxNkNENzQ1MjNGQjE3OEIwMDY2MUQ5OSAv
KiBNRE5TUmVnaXN0ZXJJZGVudGlmaWVyLmggKi8sCiAJCQkJNDFCN0VENkUyMDY4MURDRjAwODdE
ODUzIC8qIFdlYk1ETlNSZWdpc3Rlci5jcHAgKi8sCiAJCQkJNDFCN0VENkMyMDY4MURDRTAwODdE
ODUzIC8qIFdlYk1ETlNSZWdpc3Rlci5oICovLAogCQkJCTQxQjdFRDZEMjA2ODFEQ0YwMDg3RDg1
MyAvKiBXZWJNRE5TUmVnaXN0ZXIubWVzc2FnZXMuaW4gKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVy
LmNwcAppbmRleCBkMzllMzk5N2UyNDk4NWVmMDYzNDI1Y2ZlMzlhODhiMWY1MmQ5Mjc5Li5lOTc0
ZmNiOTc4MWIwMjBmZTY2ZWYzNWEwYmNjYTM0Zjg5OTZiZGNhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92
aWRlci5jcHAKQEAgLTU5LDEyICs1OSwxMiBAQCB2b2lkIExpYldlYlJUQ1Byb3ZpZGVyOjpkaXNh
YmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMoKQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmxpYldlYlJUQ05ldHdvcmsoKS5kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMoKTsKIH0K
IAotdm9pZCBMaWJXZWJSVENQcm92aWRlcjo6dW5yZWdpc3Rlck1ETlNOYW1lcyh1aW50NjRfdCBk
b2N1bWVudElkZW50aWZpZXIpCit2b2lkIExpYldlYlJUQ1Byb3ZpZGVyOjp1bnJlZ2lzdGVyTURO
U05hbWVzKERvY3VtZW50SWRlbnRpZmllciBkb2N1bWVudElkZW50aWZpZXIpCiB7CiAgICAgV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkubGliV2ViUlRDTmV0d29yaygpLm1kbnNSZWdpc3RlcigpLnVu
cmVnaXN0ZXJNRE5TTmFtZXMoZG9jdW1lbnRJZGVudGlmaWVyKTsKIH0KIAotdm9pZCBMaWJXZWJS
VENQcm92aWRlcjo6cmVnaXN0ZXJNRE5TTmFtZSh1aW50NjRfdCBkb2N1bWVudElkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgaXBBZGRyZXNzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE1ETlNOYW1l
T3JFcnJvciYmKT4mJiBjYWxsYmFjaykKK3ZvaWQgTGliV2ViUlRDUHJvdmlkZXI6OnJlZ2lzdGVy
TUROU05hbWUoRG9jdW1lbnRJZGVudGlmaWVyIGRvY3VtZW50SWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBpcEFkZHJlc3MsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTUROU05hbWVPckVycm9yJiYp
PiYmIGNhbGxiYWNrKQogewogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmxpYldlYlJUQ05l
dHdvcmsoKS5tZG5zUmVnaXN0ZXIoKS5yZWdpc3Rlck1ETlNOYW1lKGRvY3VtZW50SWRlbnRpZmll
ciwgaXBBZGRyZXNzLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuaCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5o
CmluZGV4IDgwZjc1MjUyMjk5ZTNiNGY5YTQ2MjQ5ODFkZjA2Y2ZmYTc1MmMyYzEuLjc1NWQ2YzZm
ZjZjYzc5MzZmODE3ZGJiZTkxZTAwZmM3YjQ2YTUxZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5o
CkBAIC01NCw4ICs1NCw4IEBAIHByaXZhdGU6CiAKICAgICBydGM6OnNjb3BlZF9yZWZwdHI8d2Vi
cnRjOjpQZWVyQ29ubmVjdGlvbkludGVyZmFjZT4gY3JlYXRlUGVlckNvbm5lY3Rpb24od2VicnRj
OjpQZWVyQ29ubmVjdGlvbk9ic2VydmVyJiwgcnRjOjpQYWNrZXRTb2NrZXRGYWN0b3J5Kiwgd2Vi
cnRjOjpQZWVyQ29ubmVjdGlvbkludGVyZmFjZTo6UlRDQ29uZmlndXJhdGlvbiYmKSBmaW5hbDsK
IAotICAgIHZvaWQgdW5yZWdpc3Rlck1ETlNOYW1lcyh1aW50NjRfdCBkb2N1bWVudElkZW50aWZp
ZXIpIGZpbmFsOwotICAgIHZvaWQgcmVnaXN0ZXJNRE5TTmFtZSh1aW50NjRfdCBkb2N1bWVudElk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgaXBBZGRyZXNzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KE1ETlNOYW1lT3JFcnJvciYmKT4mJikgZmluYWw7CisgICAgdm9pZCB1bnJlZ2lzdGVyTUROU05h
bWVzKFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCByZWdpc3Rl
ck1ETlNOYW1lKFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBpcEFk
ZHJlc3MsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTUROU05hbWVPckVycm9yJiYpPiYmKSBmaW5h
bDsKICAgICB2b2lkIGRpc2FibGVOb25Mb2NhbGhvc3RDb25uZWN0aW9ucygpIGZpbmFsOwogCiAj
aWYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
TmV0d29yay93ZWJydGMvTUROU1JlZ2lzdGVySWRlbnRpZmllci5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL01ETlNSZWdpc3RlcklkZW50aWZpZXIuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zOGZiN2QwZDFmN2I2OWIxYjQ2ZTgzOGE2NDcwNzc5NDc1Y2ZmYTU3Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL01ETlNSZWdp
c3RlcklkZW50aWZpZXIuaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UgLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEg
b25jZQorCisjaW5jbHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK2VudW0gTUROU1JlZ2lzdGVySWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgTURO
U1JlZ2lzdGVySWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8TUROU1JlZ2lzdGVySWRlbnRp
ZmllclR5cGU+OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9XZWJNRE5TUmVnaXN0ZXIuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL1dlYk1ETlNSZWdpc3Rlci5jcHAK
aW5kZXggMWFlZGE0NzYxYzZjOTc2NGM2ODJiMzc2ODEzNjVjMTY0MjJkYTRmNC4uNTE1OTBmOWFj
Y2U2MjQ0MDY4YjE0N2NlNmE5YzdjMTgyNTc1Nzc2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL1dlYk1ETlNSZWdpc3Rlci5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL1dlYk1ETlNSZWdpc3Rlci5jcHAK
QEAgLTM2LDcgKzM2LDcgQEAKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKLXZvaWQgV2ViTUROU1JlZ2lzdGVyOjpmaW5pc2hlZFJlZ2lzdGVyaW5nTUROU05h
bWUodWludDY0X3QgaWRlbnRpZmllciwgTGliV2ViUlRDUHJvdmlkZXI6Ok1ETlNOYW1lT3JFcnJv
ciYmIHJlc3VsdCkKK3ZvaWQgV2ViTUROU1JlZ2lzdGVyOjpmaW5pc2hlZFJlZ2lzdGVyaW5nTURO
U05hbWUoTUROU1JlZ2lzdGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBMaWJXZWJSVENQcm92aWRl
cjo6TUROU05hbWVPckVycm9yJiYgcmVzdWx0KQogewogICAgIGF1dG8gcGVuZGluZ1JlZ2lzdHJh
dGlvbiA9IG1fcGVuZGluZ1JlZ2lzdHJhdGlvbnMudGFrZShpZGVudGlmaWVyKTsKICAgICBpZiAo
IXBlbmRpbmdSZWdpc3RyYXRpb24uY2FsbGJhY2spCkBAIC01NCw5ICs1NCw4IEBAIHZvaWQgV2Vi
TUROU1JlZ2lzdGVyOjpmaW5pc2hlZFJlZ2lzdGVyaW5nTUROU05hbWUodWludDY0X3QgaWRlbnRp
ZmllciwgTGliV2ViUlRDCiAgICAgcGVuZGluZ1JlZ2lzdHJhdGlvbi5jYWxsYmFjayhXVEZNb3Zl
KHJlc3VsdCkpOwogfQogCi12b2lkIFdlYk1ETlNSZWdpc3Rlcjo6dW5yZWdpc3Rlck1ETlNOYW1l
cyh1aW50NjRfdCBkb2N1bWVudElkZW50aWZpZXIpCit2b2lkIFdlYk1ETlNSZWdpc3Rlcjo6dW5y
ZWdpc3Rlck1ETlNOYW1lcyhEb2N1bWVudElkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKLSAgICBh
dXRvIGlkZW50aWZpZXIgPSBtYWtlT2JqZWN0SWRlbnRpZmllcjxEb2N1bWVudElkZW50aWZpZXJU
eXBlPihkb2N1bWVudElkZW50aWZpZXIpOwogICAgIGlmIChtX3JlZ2lzdGVyaW5nRG9jdW1lbnRz
LnRha2UoaWRlbnRpZmllcikuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKQEAgLTY0LDkg
KzYzLDggQEAgdm9pZCBXZWJNRE5TUmVnaXN0ZXI6OnVucmVnaXN0ZXJNRE5TTmFtZXModWludDY0
X3QgZG9jdW1lbnRJZGVudGlmaWVyKQogICAgIGNvbm5lY3Rpb24uc2VuZChNZXNzYWdlczo6TmV0
d29ya01ETlNSZWdpc3Rlcjo6VW5yZWdpc3Rlck1ETlNOYW1lcyB7IGlkZW50aWZpZXIgfSwgMCk7
CiB9CiAKLXZvaWQgV2ViTUROU1JlZ2lzdGVyOjpyZWdpc3Rlck1ETlNOYW1lKHVpbnQ2NF90IGRv
Y3VtZW50SWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBpcEFkZHJlc3MsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoTGliV2ViUlRDUHJvdmlkZXI6Ok1ETlNOYW1lT3JFcnJvciYmKT4mJiBjYWxsYmFj
aykKK3ZvaWQgV2ViTUROU1JlZ2lzdGVyOjpyZWdpc3Rlck1ETlNOYW1lKERvY3VtZW50SWRlbnRp
ZmllciBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIGlwQWRkcmVzcywgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChMaWJXZWJSVENQcm92aWRlcjo6TUROU05hbWVPckVycm9yJiYpPiYmIGNhbGxiYWNr
KQogewotICAgIGF1dG8gaWRlbnRpZmllciA9IG1ha2VPYmplY3RJZGVudGlmaWVyPERvY3VtZW50
SWRlbnRpZmllclR5cGU+KGRvY3VtZW50SWRlbnRpZmllcik7CiAgICAgYXV0byYgbWFwID0gbV9y
ZWdpc3RlcmluZ0RvY3VtZW50cy5lbnN1cmUoaWRlbnRpZmllciwgW10gewogICAgICAgICByZXR1
cm4gSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4geyB9OwogICAgIH0pLml0ZXJhdG9yLT52YWx1ZTsK
QEAgLTc3LDExICs3NSwxMiBAQCB2b2lkIFdlYk1ETlNSZWdpc3Rlcjo6cmVnaXN0ZXJNRE5TTmFt
ZSh1aW50NjRfdCBkb2N1bWVudElkZW50aWZpZXIsIGNvbnN0IFN0cmluZwogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgbV9wZW5kaW5nUmVnaXN0cmF0aW9ucy5hZGQoKyttX3BlbmRpbmdS
ZXF1ZXN0c0lkZW50aWZpZXIsIFBlbmRpbmdSZWdpc3RyYXRpb24geyBXVEZNb3ZlKGNhbGxiYWNr
KSwgaWRlbnRpZmllciwgaXBBZGRyZXNzIH0pOworICAgIGF1dG8gcmVxdWVzdElkZW50aWZpZXIg
PSBNRE5TUmVnaXN0ZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOworICAgIG1fcGVuZGluZ1JlZ2lz
dHJhdGlvbnMuYWRkKHJlcXVlc3RJZGVudGlmaWVyLCBQZW5kaW5nUmVnaXN0cmF0aW9uIHsgV1RG
TW92ZShjYWxsYmFjayksIGlkZW50aWZpZXIsIGlwQWRkcmVzcyB9KTsKIAogICAgIGF1dG8mIGNv
bm5lY3Rpb24gPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb24oKS5jb25uZWN0aW9uKCk7Ci0gICAgaWYgKCFjb25uZWN0aW9uLnNlbmQoTWVzc2Fn
ZXM6Ok5ldHdvcmtNRE5TUmVnaXN0ZXI6OlJlZ2lzdGVyTUROU05hbWUgeyBtX3BlbmRpbmdSZXF1
ZXN0c0lkZW50aWZpZXIsIGlkZW50aWZpZXIsIGlwQWRkcmVzcyB9LCAwKSkKLSAgICAgICAgZmlu
aXNoZWRSZWdpc3RlcmluZ01ETlNOYW1lKG1fcGVuZGluZ1JlcXVlc3RzSWRlbnRpZmllciwgbWFr
ZVVuZXhwZWN0ZWQoTUROU1JlZ2lzdGVyRXJyb3I6OkludGVybmFsKSk7CisgICAgaWYgKCFjb25u
ZWN0aW9uLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtNRE5TUmVnaXN0ZXI6OlJlZ2lzdGVyTUROU05h
bWUgeyByZXF1ZXN0SWRlbnRpZmllciwgaWRlbnRpZmllciwgaXBBZGRyZXNzIH0sIDApKQorICAg
ICAgICBmaW5pc2hlZFJlZ2lzdGVyaW5nTUROU05hbWUocmVxdWVzdElkZW50aWZpZXIsIG1ha2VV
bmV4cGVjdGVkKE1ETlNSZWdpc3RlckVycm9yOjpJbnRlcm5hbCkpOwogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L3dlYnJ0Yy9XZWJNRE5TUmVnaXN0ZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3
b3JrL3dlYnJ0Yy9XZWJNRE5TUmVnaXN0ZXIuaAppbmRleCAzZjczODgxMjQ5YmU2MTdiM2U0NDJl
ZWJlNmUzYmI0YzAwNzRkYjBjLi4wYzBmNjEzM2FmNDY4YzllYmI4YzY3YTJhZTRlOGM5YTczM2Vl
NmFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMv
V2ViTUROU1JlZ2lzdGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
d2VicnRjL1dlYk1ETlNSZWdpc3Rlci5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpZiBFTkFCTEUo
V0VCX1JUQykKIAorI2luY2x1ZGUgIk1ETlNSZWdpc3RlcklkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDxXZWJDb3JlL0RvY3VtZW50SWRlbnRpZmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTGliV2Vi
UlRDUHJvdmlkZXIuaD4KICNpbmNsdWRlIDx3dGYvRXhwZWN0ZWQuaD4KQEAgLTQ0LDIzICs0NSwy
MCBAQCBjbGFzcyBXZWJNRE5TUmVnaXN0ZXIgewogcHVibGljOgogICAgIFdlYk1ETlNSZWdpc3Rl
cigpID0gZGVmYXVsdDsKIAotICAgIHZvaWQgdW5yZWdpc3Rlck1ETlNOYW1lcyh1aW50NjRfdCBk
b2N1bWVudElkZW50aWZpZXIpOwotICAgIHZvaWQgcmVnaXN0ZXJNRE5TTmFtZSh1aW50NjRfdCBk
b2N1bWVudElkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgaXBBZGRyZXNzLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKFdlYkNvcmU6OkxpYldlYlJUQ1Byb3ZpZGVyOjpNRE5TTmFtZU9yRXJyb3ImJik+
JiYpOworICAgIHZvaWQgdW5yZWdpc3Rlck1ETlNOYW1lcyhXZWJDb3JlOjpEb2N1bWVudElkZW50
aWZpZXIpOworICAgIHZvaWQgcmVnaXN0ZXJNRE5TTmFtZShXZWJDb3JlOjpEb2N1bWVudElkZW50
aWZpZXIsIGNvbnN0IFN0cmluZyYgaXBBZGRyZXNzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdl
YkNvcmU6OkxpYldlYlJUQ1Byb3ZpZGVyOjpNRE5TTmFtZU9yRXJyb3ImJik+JiYpOwogCiAgICAg
dm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsK
IAogcHJpdmF0ZToKLSAgICB2b2lkIGZpbmlzaGVkUmVnaXN0ZXJpbmdNRE5TTmFtZSh1aW50NjRf
dCwgV2ViQ29yZTo6TGliV2ViUlRDUHJvdmlkZXI6Ok1ETlNOYW1lT3JFcnJvciYmKTsKKyAgICB2
b2lkIGZpbmlzaGVkUmVnaXN0ZXJpbmdNRE5TTmFtZShNRE5TUmVnaXN0ZXJJZGVudGlmaWVyLCBX
ZWJDb3JlOjpMaWJXZWJSVENQcm92aWRlcjo6TUROU05hbWVPckVycm9yJiYpOwogCiAgICAgc3Ry
dWN0IFBlbmRpbmdSZWdpc3RyYXRpb24gewogICAgICAgICBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFdlYkNvcmU6OkxpYldlYlJUQ1Byb3ZpZGVyOjpNRE5TTmFtZU9yRXJyb3ImJik+IGNhbGxiYWNr
OwogICAgICAgICBXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIgZG9jdW1lbnRJZGVudGlmaWVy
OwogICAgICAgICBTdHJpbmcgaXBBZGRyZXNzOwogICAgIH07Ci0gICAgSGFzaE1hcDx1aW50NjRf
dCwgUGVuZGluZ1JlZ2lzdHJhdGlvbj4gbV9wZW5kaW5nUmVnaXN0cmF0aW9uczsKLQotICAgIEhh
c2hNYXA8dWludDY0X3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6TGliV2ViUlRD
UHJvdmlkZXI6OklQQWRkcmVzc09yRXJyb3ImJik+PiBtX3BlbmRpbmdSZXNvbHV0aW9uczsKLSAg
ICB1aW50NjRfdCBtX3BlbmRpbmdSZXF1ZXN0c0lkZW50aWZpZXIgeyAwIH07CisgICAgSGFzaE1h
cDxNRE5TUmVnaXN0ZXJJZGVudGlmaWVyLCBQZW5kaW5nUmVnaXN0cmF0aW9uPiBtX3BlbmRpbmdS
ZWdpc3RyYXRpb25zOwogCiAgICAgSGFzaE1hcDxXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIs
IEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+PiBtX3JlZ2lzdGVyaW5nRG9jdW1lbnRzOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9XZWJNRE5T
UmVnaXN0ZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93
ZWJydGMvV2ViTUROU1JlZ2lzdGVyLm1lc3NhZ2VzLmluCmluZGV4IDFiNjMyMDBhZjQ2MTdhZDIy
MjFlMTY5ZmE0YjlhY2VjZDI3MmIzOWUuLmFiMTJhMWUwMTkyNmQ2YWZjYjRjMjQ3OGVkNTNmNWMz
NjJhODhiOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dl
YnJ0Yy9XZWJNRE5TUmVnaXN0ZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvd2VicnRjL1dlYk1ETlNSZWdpc3Rlci5tZXNzYWdlcy5pbgpAQCAtMjMs
NyArMjMsNyBAQAogI2lmIEVOQUJMRShXRUJfUlRDKQogCiBtZXNzYWdlcyAtPiBXZWJNRE5TUmVn
aXN0ZXIgTm90UmVmQ291bnRlZCB7Ci0gICAgdm9pZCBGaW5pc2hlZFJlZ2lzdGVyaW5nTUROU05h
bWUodWludDY0X3QgaWRlbnRpZmllciwgV2ViQ29yZTo6TGliV2ViUlRDUHJvdmlkZXI6Ok1ETlNO
YW1lT3JFcnJvciByZXN1bHQpCisgICAgdm9pZCBGaW5pc2hlZFJlZ2lzdGVyaW5nTUROU05hbWUo
V2ViS2l0OjpNRE5TUmVnaXN0ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6OkxpYldl
YlJUQ1Byb3ZpZGVyOjpNRE5TTmFtZU9yRXJyb3IgcmVzdWx0KQogfQogCiAjZW5kaWYgLy8gRU5B
QkxFKFdFQl9SVEMpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>