<?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>210089</bug_id>
          
          <creation_ts>2020-04-06 18:50:05 -0700</creation_ts>
          <short_desc>[css-flexbox] min-height: auto not applied to nested flexboxes.</short_desc>
          <delta_ts>2021-02-20 11:13:56 -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>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.chromium.org/p/chromium/issues/detail?id=596743</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=210088</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=220608</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222202</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>209461</blocked>
    
    <blocked>212264</blocked>
    
    <blocked>214655</blocked>
    
    <blocked>220946</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Alberto Lopez Perez">clopez</reporter>
          <assigned_to name="Sergio Villar Senin">svillar</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jfernandez</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>rego</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>svillar</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1638414</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2020-04-06 18:50:05 -0700</bug_when>
    <thetext>Steps to reproduce the problem:
1. open testcase https://jsfiddle.net/utasir/ow9e4ffb/
2. sroll down and see the first 2 items are only have height of grandparent and not flexed 

What is the expected behavior?
all of 3 items in the subflex are equal height

What went wrong?
flex growing

Did this work before? N/A 

This is tested also by WPT test https://wpt.live/css/css-flexbox/flex-minimum-height-flex-items-011.xht

This issue has been originally reported (and fixed) for Chrome at https://crbug.com/596743</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638415</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2020-04-06 18:56:35 -0700</bug_when>
    <thetext>Likely also causing issues on WPT test https://wpt.live/css/css-flexbox/flex-minimum-height-flex-items-013.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684592</commentid>
    <comment_count>2</comment_count>
      <attachid>407707</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2020-09-01 13:09:23 -0700</bug_when>
    <thetext>Created attachment 407707
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684625</commentid>
    <comment_count>3</comment_count>
      <attachid>407707</attachid>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2020-09-01 14:18:04 -0700</bug_when>
    <thetext>Comment on attachment 407707
Patch

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

It seems the bots detected 2 failures; at least one seems related to this change.

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:932
&gt; +    // definiteness might be incorrect.

Nit: maybe avoid line wrapping in this comment.

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:1248
&gt; +        // If this condition is true, then computeMainAxisExtentForChild will call

Nit: Could we reduce the line-wrapping in this comment ?

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:1590
&gt; +    if (!mainAxisLengthIsDefinite(child, childFlexBasis) || childMinSize.isIntrinsic() || childMaxSize.isIntrinsic())

The childFlexBasis variable is only used as argument of mainAxisLengthIsDefinite; Have you considered calling the function directly ?
If we move this conditional clause to the end, we may even avoid the call at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684636</commentid>
    <comment_count>4</comment_count>
      <attachid>407707</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-01 15:08:46 -0700</bug_when>
    <thetext>Comment on attachment 407707
Patch

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

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:444
&gt; +    auto min = isHorizontalFlow() ? child.style().minWidth(): child.style().minHeight();

Missing space before &quot;:&quot;.

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:449
&gt; +
&gt; +    if (!min.isAuto())
&gt; +        return false;
&gt; +
&gt; +    return mainAxisOverflowForChild(child) == Overflow::Visible;

Not sure others agree, but I would write this as a one liner:

    return min.isAuto() &amp;&amp; mainAxisOverflowForChild(child) == Overflow::Visible;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684768</commentid>
    <comment_count>5</comment_count>
      <attachid>407755</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2020-09-02 04:26:26 -0700</bug_when>
    <thetext>Created attachment 407755
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684769</commentid>
    <comment_count>6</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2020-09-02 04:30:49 -0700</bug_when>
    <thetext>Daniel, could you please take a look at the updated expectations? Are they correct? I am not sure since this is a mac/iOS specific styling stuff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686122</commentid>
    <comment_count>7</comment_count>
      <attachid>407755</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-09-05 14:36:00 -0700</bug_when>
    <thetext>Comment on attachment 407755
Patch

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

&gt; LayoutTests/platform/ios/fast/forms/auto-fill-button/input-strong-password-auto-fill-button-expected.txt:51
&gt; -    RenderBlock {DIV} at (0,12) size 20x14 [color=#000000CC]
&gt; +    RenderBlock {DIV} at (0,12) size 95x14 [color=#000000CC]

This may be OK because I think there is clipping + I disable scrolling, but a picture would allow this to be confirmed immediately. Same response for the changes below.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686130</commentid>
    <comment_count>8</comment_count>
      <attachid>407755</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-09-05 14:54:12 -0700</bug_when>
    <thetext>Comment on attachment 407755
Patch

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

Patch looks good. Optional, check the spelling of the ChangeLog and in comments check for sentence capitalization.

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:1581
&gt; +    Length childMinSize = isHorizontalFlow() ? child.style().minWidth() : child.style().minHeight();
&gt; +    Length childMaxSize = isHorizontalFlow() ? child.style().maxWidth() : child.style().maxHeight();

OK as-is. No need to change anything. 

Just for me: future cleanup idea; just noticed the same result can be achieved using one branch. Also these locals could be moved after the !mainAxisLengthIsDefinite branch since they aren&apos;t used if that evaluates to true.

&gt; Source/WebCore/rendering/RenderFlexibleBox.h:119
&gt;      Length flexBasisForChild(const RenderBox&amp; child) const;
&gt; +    bool shouldApplyMinSizeAutoForChild(const RenderBox&amp; child) const;
&gt;      LayoutUnit crossAxisExtentForChild(const RenderBox&amp; child) const;
&gt;      LayoutUnit crossAxisIntrinsicExtentForChild(const RenderBox&amp; child) const;
&gt;      LayoutUnit childIntrinsicLogicalHeight(const RenderBox&amp; child) const;

OK as-is. No change needed.

Just for me: future cleanup idea; the parameter name can be removed because its purpose is encoded in the names of these functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686313</commentid>
    <comment_count>9</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2020-09-07 02:20:55 -0700</bug_when>
    <thetext>Committed r266695: &lt;https://trac.webkit.org/changeset/266695&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686314</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-07 02:21:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/68453730&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686354</commentid>
    <comment_count>11</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-09-07 07:13:36 -0700</bug_when>
    <thetext>(In reply to Daniel Bates from comment #7)
&gt; Comment on attachment 407755 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=407755&amp;action=review
&gt; 
&gt; &gt; LayoutTests/platform/ios/fast/forms/auto-fill-button/input-strong-password-auto-fill-button-expected.txt:51
&gt; &gt; -    RenderBlock {DIV} at (0,12) size 20x14 [color=#000000CC]
&gt; &gt; +    RenderBlock {DIV} at (0,12) size 95x14 [color=#000000CC]
&gt; 
&gt; This may be OK because I think there is clipping + I disable scrolling, but
&gt; a picture would allow this to be confirmed immediately. Same response for
&gt; the changes below.

I never checked this. Can a picture be obtained?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686372</commentid>
    <comment_count>12</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2020-09-07 09:48:44 -0700</bug_when>
    <thetext>(In reply to Daniel Bates from comment #11)
&gt; (In reply to Daniel Bates from comment #7)
&gt; &gt; Comment on attachment 407755 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=407755&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; LayoutTests/platform/ios/fast/forms/auto-fill-button/input-strong-password-auto-fill-button-expected.txt:51
&gt; &gt; &gt; -    RenderBlock {DIV} at (0,12) size 20x14 [color=#000000CC]
&gt; &gt; &gt; +    RenderBlock {DIV} at (0,12) size 95x14 [color=#000000CC]
&gt; &gt; 
&gt; &gt; This may be OK because I think there is clipping + I disable scrolling, but
&gt; &gt; a picture would allow this to be confirmed immediately. Same response for
&gt; &gt; the changes below.
&gt; 
&gt; I never checked this. Can a picture be obtained?

Oh I missunderstood your comment, I thought you&apos;ve already checked it. I don&apos;t have a mac available ATM, maybe you could try to get it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686376</commentid>
    <comment_count>13</comment_count>
      <attachid>407755</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-07 09:51:22 -0700</bug_when>
    <thetext>Comment on attachment 407755
Patch

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

&gt;&gt;&gt;&gt; LayoutTests/platform/ios/fast/forms/auto-fill-button/input-strong-password-auto-fill-button-expected.txt:51
&gt;&gt;&gt;&gt; +    RenderBlock {DIV} at (0,12) size 95x14 [color=#000000CC]
&gt;&gt;&gt; 
&gt;&gt;&gt; This may be OK because I think there is clipping + I disable scrolling, but a picture would allow this to be confirmed immediately. Same response for the changes below.
&gt;&gt; 
&gt;&gt; I never checked this. Can a picture be obtained?
&gt; 
&gt; Oh I missunderstood your comment, I thought you&apos;ve already checked it. I don&apos;t have a mac available ATM, maybe you could try to get it?

Yes, I checked what it looks like. Not a problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714675</commentid>
    <comment_count>14</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-12-14 21:25:44 -0800</bug_when>
    <thetext>Before this fix, pages on YouTube.com with comments would get nested scrollers because &lt;ytd-page-manager id=“page-manager”&gt; became independently scrollable. This fixed that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719478</commentid>
    <comment_count>15</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2021-01-13 16:17:27 -0800</bug_when>
    <thetext>This regressed input type range, see bug 220608.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731814</commentid>
    <comment_count>16</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-20 11:13:56 -0800</bug_when>
    <thetext>This caused exponential runtime cost with nested flexboxes which affects twitch.tv: r222202</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407707</attachid>
            <date>2020-09-01 13:09:23 -0700</date>
            <delta_ts>2020-09-02 04:26:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210089-20200901220922.patch</filename>
            <type>text/plain</type>
            <size>12726</size>
            <attacher name="Sergio Villar Senin">svillar</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2Mzg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDEzODQ4MDkzMzBlMzZh
YTUwNzFhMmYyMDA5NzdkNjE4NWY0NjEyMC4uOWNmMDYyNGY4NjQyOGFhYWU0OGE4ZTc4N2NlMzRh
N2NhOGZmZjQ4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIwLTA5LTAxICBTZXJn
aW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZmxl
eGJveF0gbWluLWhlaWdodDogYXV0byBub3QgYXBwbGllZCB0byBuZXN0ZWQgZmxleGJveGVzLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDg5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVzdGVkIGZs
ZXhib3hlcyB3aXRoIGNvbHVtbiBkaXJlY3Rpb24gd2VyZSBub3QgY29tcHV0aW5nIGNvcnJlY3Rs
eSBtaW4tc2l6ZTphdXRvIGJlY2F1c2UKKyAgICAgICAgd2Ugd2VyZSBleHBsaWNpdGx5IHByZXZl
bnRpbmcgdGhlbSBmcm9tIGRvaW5nIHNvIGluIHRoZSBjb2RlLiBJbXBsZW1lbnRlZCB0aGUgcmVx
dWlyZWQgYml0cyB0bworICAgICAgICBtYWtlIGl0IHdvcmsgY29ycmVjdGx5IGFuZCB0aHVzIHJl
bW92ZWQgdGhlIHJldHJpY3Rpb24uIFRoZSBpZGVhIGlzIHRvIHNldCBhbiBpbmRlZmluaXRlIG92
ZXJyaWRlCisgICAgICAgIGNvbnRhaW5pbmcgYmxvY2sgc2l6ZSBzbyB0aGF0IHBlcmNlbnRhZ2Vz
IHdvdWxkIGJlIHJlc29sdmVkIHRvIGF1dG8gYXMgc3BlYydlZC4gVGhlIGNvZGUgd2hpY2gKKyAg
ICAgICAgZGVjaWRlcyB3aGV0aGVyIHRvIGFwcGx5IG1pbi1zaXplOmF1dG8gd2FzIHJlZmFjdG9y
ZWQgaW4gdGhlIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgpIG1ldGhvZC4KKworICAg
ICAgICBJbiBvcmRlciBub3QgdG8gY2F1c2UgcmVncmVzc2lvbnMgc29tZSBvdGhlciB0d28gYWRk
aXRpb25hbCBjaGFuZ2VzIHdlcmUgYWxzbyBpbXBsZW1lbnRlZC4gRmlyc3Qgd2UKKyAgICAgICAg
aGFkIHRvIGFkanVzdCBjaGlsZEhhc0ludHJpbnNpY01haW5BeGlzU2l6ZSgpIHNvIHRoYXQgaXQg
YWxzbyB0YWtlcyBpbnRvIGFjY291bnQgdGhlIGNhc2VzIHdoZXJlCisgICAgICAgIHNob3VsZEFw
cGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgpIGlzIHRydWUgYW5kIHJldHVybiB0cnVlLiBTZWNvbmRs
eSB3ZSBoYWQgdG8gYWRkIGFuIGFkZGl0aW9uYWwgY2FzZQorICAgICAgICB0byBtYWluQXhpc0xl
bmd0aElzRGVmaW5pdGUoKSBzbyB0aGF0IGl0IHJldHVybnMgZmFsc2UgZm9yIGNvbHVtbiBmbG93
cyB3aGVyZSB0aGUgZmxleEJhc2lzIGlzIGludHJpbnNpYy4KKworICAgICAgICBJbnNwaXJlZCBi
eSBCbGluaydzIGNycmV2LmNvbS9jLzE2NDE1MTAsIGNycmV2LmNvbS9jLzEyNjk5OTUgJiBjcnJl
di5jb20vYy8xNzg2Mjk3IGJ5IDxjYmllc2luZ2VyQGNocm9taXVtLm9yZz4KKworICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJGbGV4aWJsZUJveDo6c2hvdWxkQXBwbHlNaW5TaXplQXV0b0ZvckNoaWxkIGNvbnN0KTogUmVm
YWN0b3JlZCBmcm9tCisgICAgICAgIFJlbmRlckZsZXhpYmxlQm94OjphZGp1c3RDaGlsZFNpemVG
b3JNaW5BbmRNYXguCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bWFpbkF4
aXNMZW5ndGhJc0RlZmluaXRlIGNvbnN0KTogQWRkaXRpb25hbCBjYXNlIGZvciBjb2x1bW4gZmxv
d3MuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0RmxleEl0ZW1z
KTogUmVzZXQgbV9oYXNEZWZpbml0ZUhlaWdodCB0byBVbmtub3duIGFmdGVyIGNhbGxpbmcKKyAg
ICAgICAgY29uc3RydWN0RmxleEl0ZW0oKSBiZWNhdXNlIHRoZSBsYXR0ZXIgbWlnaHQgc2V0IG5v
dyBhbiBvdmVycmlkZSBjb250YWluaW5nIGJsb2NrIGhlaWdodCB3aGljaCBiYXNpY2FsbHkKKyAg
ICAgICAgcG90ZW50aWFsbHkgbWFrZXMgYW55IGNhY2hlZCBzaXplIHZhbHVlIGluY29ycmVjdC4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjphZGp1c3RDaGlsZFNpemVGb3JN
aW5BbmRNYXgpOiBEaXJlY3RseSBjYWxsIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgp
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmNvbnN0cnVjdEZsZXhJdGVt
KTogU2V0IGFuIGluZGVmaW5pdGUgb3ZlcnJpZGUgY29udGFpbmluZyBibG9jayBzaXplIGZvcgor
ICAgICAgICBjaGlsZHJlbiB3aXRoIHBlcmNlbnRhZ2Ugc2l6ZXMgc28gdGhhdCB0aGV5J3JlIHJl
c29sdmVkIGFzIGF1dG8uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6Y2hp
bGRIYXNJbnRyaW5zaWNNYWluQXhpc1NpemUgY29uc3QpOiBSZXR1cm4gdHJ1ZSBmb3IgdGhvc2Ug
Y2FzZXMgd2hlcmUgdGhlCisgICAgICAgIG1haW4gYXhpcyBsZW5ndGggaXMgaW5kZWZpbml0ZSBh
bmQgYWxzbyB3aGVuIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgpLgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oOgorCiAyMDIwLTA4LTMxICBNeWxlcyBDLiBN
YXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWhvbSB0ZXh0IGlzIHN0
aWxsIGJ1c3RlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZs
ZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5jcHAKaW5kZXggNzlmY2QzYWFkN2VjMDY1MTYzNGNhMzRjNDMzMTMwZjIxM2YzYjM4OC4uZWM1
NjAxOWI0ODFjMzBmNmJiZTFkOWY3ZjBjZWUzMjRlZjhmMTdhMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCkBAIC00MzgsNiArNDM4LDE3IEBA
IGJvb2wgUmVuZGVyRmxleGlibGVCb3g6OmlzTXVsdGlsaW5lKCkgY29uc3QKICAgICByZXR1cm4g
c3R5bGUoKS5mbGV4V3JhcCgpICE9IEZsZXhXcmFwOjpOb1dyYXA7CiB9CiAKK2Jvb2wgUmVuZGVy
RmxleGlibGVCb3g6OnNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZChjb25zdCBSZW5kZXJC
b3gmIGNoaWxkKSBjb25zdAoreworICAgIC8vIGNzcy1mbGV4Ym94IHNlY3Rpb24gNC41CisgICAg
YXV0byBtaW4gPSBpc0hvcml6b250YWxGbG93KCkgPyBjaGlsZC5zdHlsZSgpLm1pbldpZHRoKCk6
IGNoaWxkLnN0eWxlKCkubWluSGVpZ2h0KCk7CisKKyAgICBpZiAoIW1pbi5pc0F1dG8oKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJuIG1haW5BeGlzT3ZlcmZsb3dGb3JDaGls
ZChjaGlsZCkgPT0gT3ZlcmZsb3c6OlZpc2libGU7Cit9CisKIExlbmd0aCBSZW5kZXJGbGV4aWJs
ZUJveDo6ZmxleEJhc2lzRm9yQ2hpbGQoY29uc3QgUmVuZGVyQm94JiBjaGlsZCkgY29uc3QKIHsK
ICAgICBMZW5ndGggZmxleExlbmd0aCA9IGNoaWxkLnN0eWxlKCkuZmxleEJhc2lzKCk7CkBAIC03
OTYsNiArODA3LDggQEAgYm9vbCBSZW5kZXJGbGV4aWJsZUJveDo6bWFpbkF4aXNMZW5ndGhJc0Rl
ZmluaXRlKGNvbnN0IFJlbmRlckJveCYgY2hpbGQsIGNvbnN0IEwKIHsKICAgICBpZiAoZmxleEJh
c2lzLmlzQXV0bygpKQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKGlzQ29sdW1uRmxv
dygpICYmIGZsZXhCYXNpcy5pc0ludHJpbnNpYygpKQorICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgaWYgKGZsZXhCYXNpcy5pc1BlcmNlbnRPckNhbGN1bGF0ZWQoKSkgewogICAgICAgICBpZiAo
IWlzQ29sdW1uRmxvdygpIHx8IG1faGFzRGVmaW5pdGVIZWlnaHQgPT0gU2l6ZURlZmluaXRlbmVz
czo6RGVmaW5pdGUpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTkxNCw2ICs5MjcsMTAg
QEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0RmxleEl0ZW1zKGJvb2wgcmVsYXlvdXRD
aGlsZHJlbikKICAgICAgICAgYWxsSXRlbXMuYXBwZW5kKGNvbnN0cnVjdEZsZXhJdGVtKCpjaGls
ZCwgcmVsYXlvdXRDaGlsZHJlbikpOwogICAgIH0KICAgICBtX3JldmVyc2VkT3JkZXJJdGVyYXRv
ckZvckhpdFRlc3RpbmcucmV2ZXJzZSgpOworCisgICAgLy8gY29uc3RydWN0RmxleEl0ZW0oKSBt
aWdodCBzZXQgdGhlIG92ZXJyaWRlIGNvbnRhaW5pbmcgYmxvY2sgbG9naWNhbCBoZWlnaHQgc28g
YW55IHZhbHVlIGNhY2hlZCBmb3IKKyAgICAvLyBkZWZpbml0ZW5lc3MgbWlnaHQgYmUgaW5jb3Jy
ZWN0LgorICAgIG1faGFzRGVmaW5pdGVIZWlnaHQgPSBTaXplRGVmaW5pdGVuZXNzOjpVbmtub3du
OwogICAgIAogICAgIGNvbnN0IExheW91dFVuaXQgbGluZUJyZWFrTGVuZ3RoID0gbWFpbkF4aXND
b250ZW50RXh0ZW50KExheW91dFVuaXQ6Om1heCgpKTsKICAgICBGbGV4TGF5b3V0QWxnb3JpdGht
IGZsZXhBbGdvcml0aG0oc3R5bGUoKSwgbGluZUJyZWFrTGVuZ3RoLCBhbGxJdGVtcyk7CkBAIC0x
MTI4LDEyICsxMTQ1LDcgQEAgTGF5b3V0VW5pdCBSZW5kZXJGbGV4aWJsZUJveDo6YWRqdXN0Q2hp
bGRTaXplRm9yTWluQW5kTWF4KGNvbnN0IFJlbmRlckJveCYgY2hpbGQKICAgICBpZiAobWluLmlz
U3BlY2lmaWVkT3JJbnRyaW5zaWMoKSkKICAgICAgICAgcmV0dXJuIHN0ZDo6bWF4KGNoaWxkU2l6
ZSwgc3RkOjptYXgoMF9sdSwgY29tcHV0ZU1haW5BeGlzRXh0ZW50Rm9yQ2hpbGQoY2hpbGQsIE1p
blNpemUsIG1pbikudmFsdWVPcihjaGlsZFNpemUpKSk7CiAgICAgCi0gICAgaWYgKCFpc0ZsZXhp
YmxlQm94SW1wbCgpICYmIG1pbi5pc0F1dG8oKSAmJiBtYWluQXhpc092ZXJmbG93Rm9yQ2hpbGQo
Y2hpbGQpID09IE92ZXJmbG93OjpWaXNpYmxlICYmICEoaXNDb2x1bW5GbG93KCkgJiYgaXM8UmVu
ZGVyRmxleGlibGVCb3g+KGNoaWxkKSkpIHsKLSAgICAgICAgLy8gRklYTUU6IEZvciBub3csIHdl
IGRvIG5vdCBoYW5kbGUgbWluLWhlaWdodDogYXV0byBmb3IgbmVzdGVkCi0gICAgICAgIC8vIGNv
bHVtbiBmbGV4Ym94ZXMuIFdlIG5lZWQgdG8gaW1wbGVtZW50Ci0gICAgICAgIC8vIGh0dHBzOi8v
ZHJhZnRzLmNzc3dnLm9yZy9jc3MtZmxleGJveC8jaW50cmluc2ljLXNpemVzIGJlZm9yZSB0aGF0
Ci0gICAgICAgIC8vIHByb2R1Y2VzIHJlYXNvbmFibGUgcmVzdWx0cy4gVHJhY2tpbmcgYnVnOiBo
dHRwczovL2NyYnVnLmNvbS81ODE1NTMKLSAgICAgICAgLy8gY3NzLWZsZXhib3ggc2VjdGlvbiA0
LjUKKyAgICBpZiAoc2hvdWxkQXBwbHlNaW5TaXplQXV0b0ZvckNoaWxkKGNoaWxkKSkgewogICAg
ICAgICAvLyBGSVhNRTogSWYgdGhlIG1pbiB2YWx1ZSBpcyBleHBlY3RlZCB0byBiZSB2YWxpZCBo
ZXJlLCB3ZSBuZWVkIHRvIGNvbWUgdXAgd2l0aCBhIG5vbiBvcHRpb25hbCB2ZXJzaW9uIG9mIGNv
bXB1dGVNYWluQXhpc0V4dGVudEZvckNoaWxkIGFuZAogICAgICAgICAvLyBlbnN1cmUgaXQncyB2
YWxpZCB0aHJvdWdoIHRoZSB2aXJ0dWFsIGNhbGxzIG9mIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2Fs
Q29udGVudEhlaWdodFVzaW5nLgogICAgICAgICBMYXlvdXRVbml0IGNvbnRlbnRTaXplID0gY29t
cHV0ZU1haW5BeGlzRXh0ZW50Rm9yQ2hpbGQoY2hpbGQsIE1pblNpemUsIExlbmd0aChNaW5Db250
ZW50KSkudmFsdWVPcigwKTsKQEAgLTEyMzIsMTcgKzEyNDQsMzAgQEAgTGF5b3V0VW5pdCBSZW5k
ZXJGbGV4aWJsZUJveDo6YWRqdXN0Q2hpbGRTaXplRm9yQXNwZWN0UmF0aW9Dcm9zc0F4aXNNaW5B
bmRNYXgoY28KIAogRmxleEl0ZW0gUmVuZGVyRmxleGlibGVCb3g6OmNvbnN0cnVjdEZsZXhJdGVt
KFJlbmRlckJveCYgY2hpbGQsIGJvb2wgcmVsYXlvdXRDaGlsZHJlbikKIHsKLSAgICAvLyBJZiB0
aGlzIGNvbmRpdGlvbiBpcyB0cnVlLCB0aGVuIGNvbXB1dGVNYWluQXhpc0V4dGVudEZvckNoaWxk
IHdpbGwgY2FsbAotICAgIC8vIGNoaWxkLmludHJpbnNpY0NvbnRlbnRMb2dpY2FsSGVpZ2h0KCkg
YW5kCi0gICAgLy8gY2hpbGQuc2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpLCBzbyBpZiB0aGUgY2hp
bGQgaGFzIGludHJpbnNpYwotICAgIC8vIG1pbi9tYXgvcHJlZmVycmVkIHNpemUsIHJ1biBsYXlv
dXQgb24gaXQgbm93IHRvIG1ha2Ugc3VyZSBpdHMgbG9naWNhbAotICAgIC8vIGhlaWdodCBhbmQg
c2Nyb2xsIGJhcnMgYXJlIHVwIHRvIGRhdGUuCi0gICAgaWYgKGNoaWxkSGFzSW50cmluc2ljTWFp
bkF4aXNTaXplKGNoaWxkKSAmJiBjaGlsZC5uZWVkc0xheW91dCgpKSB7Ci0gICAgICAgIGNoaWxk
LmNsZWFyT3ZlcnJpZGVDb250ZW50U2l6ZSgpOwotICAgICAgICBjaGlsZC5zZXRDaGlsZE5lZWRz
TGF5b3V0KE1hcmtPbmx5VGhpcyk7Ci0gICAgICAgIGNoaWxkLmxheW91dElmTmVlZGVkKCk7Ci0g
ICAgICAgIGNhY2hlQ2hpbGRNYWluU2l6ZShjaGlsZCk7Ci0gICAgICAgIHJlbGF5b3V0Q2hpbGRy
ZW4gPSBmYWxzZTsKKyAgICBpZiAoY2hpbGRIYXNJbnRyaW5zaWNNYWluQXhpc1NpemUoY2hpbGQp
KSB7CisgICAgICAgIC8vIElmIHRoaXMgY29uZGl0aW9uIGlzIHRydWUsIHRoZW4gY29tcHV0ZU1h
aW5BeGlzRXh0ZW50Rm9yQ2hpbGQgd2lsbCBjYWxsCisgICAgICAgIC8vIGNoaWxkLmludHJpbnNp
Y0NvbnRlbnRMb2dpY2FsSGVpZ2h0KCkgYW5kCisgICAgICAgIC8vIGNoaWxkLnNjcm9sbGJhckxv
Z2ljYWxIZWlnaHQoKSwgc28gaWYgdGhlIGNoaWxkIGhhcyBpbnRyaW5zaWMKKyAgICAgICAgLy8g
bWluL21heC9wcmVmZXJyZWQgc2l6ZSwgcnVuIGxheW91dCBvbiBpdCBub3cgdG8gbWFrZSBzdXJl
IGl0cyBsb2dpY2FsCisgICAgICAgIC8vIGhlaWdodCBhbmQgc2Nyb2xsIGJhcnMgYXJlIHVwIHRv
IGRhdGUuCisgICAgICAgIHVwZGF0ZUJsb2NrQ2hpbGREaXJ0eUJpdHNCZWZvcmVMYXlvdXQocmVs
YXlvdXRDaGlsZHJlbiwgY2hpbGQpOworICAgICAgICAvLyBEb24ndCByZXNvbHZlIHBlcmNlbnRh
Z2VzIGluIGNoaWxkcmVuLiBUaGlzIGlzIGVzcGVjaWFsbHkgaW1wb3J0YW50CisgICAgICAgIC8v
IGZvciB0aGUgbWluLWhlaWdodCBjYWxjdWxhdGlvbiwgd2hlcmUgd2Ugd2FudCBwZXJjZW50YWdl
cyB0byBiZQorICAgICAgICAvLyB0cmVhdGVkIGFzIGF1dG8uIEZvciBmbGV4LWJhc2lzIGl0c2Vs
ZiwgdGhpcyBpcyBub3QgYSBwcm9ibGVtIGJlY2F1c2UKKyAgICAgICAgLy8gYnkgZGVmaW5pdGlv
biB3ZSBoYXZlIGFuIGluZGVmaW5pdGUgZmxleCBiYXNpcyBoZXJlIGFuZCB0aHVzCisgICAgICAg
IC8vIHBlcmNlbnRhZ2VzIHNob3VsZCBub3QgcmVzb2x2ZS4KKyAgICAgICAgaWYgKGNoaWxkLm5l
ZWRzTGF5b3V0KCkgfHwgIW1faW50cmluc2ljU2l6ZUFsb25nTWFpbkF4aXMuY29udGFpbnMoJmNo
aWxkKSkgeworICAgICAgICAgICAgaWYgKGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPT0gY2hp
bGQuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSkKKyAgICAgICAgICAgICAgICBjaGlsZC5zZXRP
dmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0KFdURjo6bnVsbG9wdCk7
CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgY2hpbGQuc2V0T3ZlcnJpZGVDb250
YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoKFdURjo6bnVsbG9wdCk7CisgICAgICAgICAg
ICBjaGlsZC5jbGVhck92ZXJyaWRlQ29udGVudFNpemUoKTsKKyAgICAgICAgICAgIGNoaWxkLnNl
dENoaWxkTmVlZHNMYXlvdXQoTWFya09ubHlUaGlzKTsKKyAgICAgICAgICAgIGNoaWxkLmxheW91
dElmTmVlZGVkKCk7CisgICAgICAgICAgICBjYWNoZUNoaWxkTWFpblNpemUoY2hpbGQpOworICAg
ICAgICAgICAgcmVsYXlvdXRDaGlsZHJlbiA9IGZhbHNlOworICAgICAgICAgICAgY2hpbGQuY2xl
YXJPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRTaXplKCk7CisgICAgICAgIH0KICAgICB9
CiAgICAgCiAgICAgTGF5b3V0VW5pdCBib3JkZXJBbmRQYWRkaW5nID0gaXNIb3Jpem9udGFsRmxv
dygpID8gY2hpbGQuaG9yaXpvbnRhbEJvcmRlckFuZFBhZGRpbmdFeHRlbnQoKSA6IGNoaWxkLnZl
cnRpY2FsQm9yZGVyQW5kUGFkZGluZ0V4dGVudCgpOwpAQCAtMTU1NiwxNSArMTU4MSwyMyBAQCBi
b29sIFJlbmRlckZsZXhpYmxlQm94OjpuZWVkVG9TdHJldGNoQ2hpbGRMb2dpY2FsSGVpZ2h0KGNv
bnN0IFJlbmRlckJveCYgY2hpbGQpCiAKIGJvb2wgUmVuZGVyRmxleGlibGVCb3g6OmNoaWxkSGFz
SW50cmluc2ljTWFpbkF4aXNTaXplKGNvbnN0IFJlbmRlckJveCYgY2hpbGQpIGNvbnN0CiB7Ci0g
ICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKLSAgICBpZiAoaXNIb3Jpem9udGFsRmxvdygpICE9IGNo
aWxkLnN0eWxlKCkuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSkgewotICAgICAgICBMZW5ndGgg
Y2hpbGRGbGV4QmFzaXMgPSBmbGV4QmFzaXNGb3JDaGlsZChjaGlsZCk7Ci0gICAgICAgIExlbmd0
aCBjaGlsZE1pblNpemUgPSBpc0hvcml6b250YWxGbG93KCkgPyBjaGlsZC5zdHlsZSgpLm1pbldp
ZHRoKCkgOiBjaGlsZC5zdHlsZSgpLm1pbkhlaWdodCgpOwotICAgICAgICBMZW5ndGggY2hpbGRN
YXhTaXplID0gaXNIb3Jpem9udGFsRmxvdygpID8gY2hpbGQuc3R5bGUoKS5tYXhXaWR0aCgpIDog
Y2hpbGQuc3R5bGUoKS5tYXhIZWlnaHQoKTsKLSAgICAgICAgaWYgKGNoaWxkRmxleEJhc2lzLmlz
SW50cmluc2ljKCkgfHwgY2hpbGRNaW5TaXplLmlzSW50cmluc2ljT3JBdXRvKCkgfHwgY2hpbGRN
YXhTaXplLmlzSW50cmluc2ljKCkpCi0gICAgICAgICAgICByZXN1bHQgPSB0cnVlOwotICAgIH0K
LSAgICByZXR1cm4gcmVzdWx0OworICAgIGlmIChpc0hvcml6b250YWxGbG93KCkgPT0gY2hpbGQu
c3R5bGUoKS5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CisKKyAgICBMZW5ndGggY2hpbGRGbGV4QmFzaXMgPSBmbGV4QmFzaXNGb3JDaGlsZChjaGlsZCk7
CisgICAgTGVuZ3RoIGNoaWxkTWluU2l6ZSA9IGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLnN0
eWxlKCkubWluV2lkdGgoKSA6IGNoaWxkLnN0eWxlKCkubWluSGVpZ2h0KCk7CisgICAgTGVuZ3Ro
IGNoaWxkTWF4U2l6ZSA9IGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLnN0eWxlKCkubWF4V2lk
dGgoKSA6IGNoaWxkLnN0eWxlKCkubWF4SGVpZ2h0KCk7CisgICAgaWYgKCFtYWluQXhpc0xlbmd0
aElzRGVmaW5pdGUoY2hpbGQsIGNoaWxkRmxleEJhc2lzKSB8fCBjaGlsZE1pblNpemUuaXNJbnRy
aW5zaWMoKSB8fCBjaGlsZE1heFNpemUuaXNJbnRyaW5zaWMoKSkKKyAgICAgICAgcmV0dXJuIHRy
dWU7CisKKyAgICAvLyBGSVhNRTogd2UgbXVzdCBydW4gdGhpcyBhZnRlciBtYWluQXhpc0xlbmd0
aElzRGVmaW5pdGUoKSBiZWNhdXNlIHRoZSBsYXR0ZXIgbWlnaHQgZW5kIHVwIGNhbGxpbmcKKyAg
ICAvLyBjb21wdXRlUGVyY2VudGFnZUxvZ2ljYWxIZWlnaHQoKSB3aGljaCBoYXMgc29tZSBzaWRl
IGVmZmVjdHMgbGlrZSBjYWxsaW5nIGFkZFBlcmNlbnRIZWlnaHREZXNjZW5kYW50KCkKKyAgICAv
LyBmb3IgZXhhbXBsZS4gVGhpcyBpcyBlcnJvci1wcm9uZSBhbmQgd2Ugc2hvdWxkIHJlZmFjdG9y
IGNvbXB1dGVQZXJjZW50YWdlTG9naWNhbEhlaWdodCgpIGF0IHNvbWUgcG9pbnQKKyAgICAvLyBz
byB0aGF0IGl0IG9ubHkgY29tcHV0ZXMgc3R1ZmYgd2l0aG91dCB0aG9zZSBzaWRlIGVmZmVjdHMu
CisgICAgaWYgKHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZChjaGlsZCkpCisgICAgICAg
IHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGZhbHNlOwogfQogCiBPdmVyZmxvdyBSZW5kZXJG
bGV4aWJsZUJveDo6bWFpbkF4aXNPdmVyZmxvd0ZvckNoaWxkKGNvbnN0IFJlbmRlckJveCYgY2hp
bGQpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxl
eGlibGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5o
CmluZGV4IGM0YjAzNzMyZDNiOTY0MjQ1OGNlZWViY2E1NjViMjNlYWQ0MTdjMGQuLjk5YWU5ZjQ5
MTg3NDc5ZGUwYjVjMDdmYmUwYTgwNjYzOTc2ZWM1NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCkBAIC0xMTMsNiArMTEzLDcgQEAgcHJpdmF0ZToK
ICAgICBib29sIGlzTGVmdFRvUmlnaHRGbG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc011bHRpbGlu
ZSgpIGNvbnN0OwogICAgIExlbmd0aCBmbGV4QmFzaXNGb3JDaGlsZChjb25zdCBSZW5kZXJCb3gm
IGNoaWxkKSBjb25zdDsKKyAgICBib29sIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZChj
b25zdCBSZW5kZXJCb3gmIGNoaWxkKSBjb25zdDsKICAgICBMYXlvdXRVbml0IGNyb3NzQXhpc0V4
dGVudEZvckNoaWxkKGNvbnN0IFJlbmRlckJveCYgY2hpbGQpIGNvbnN0OwogICAgIExheW91dFVu
aXQgY3Jvc3NBeGlzSW50cmluc2ljRXh0ZW50Rm9yQ2hpbGQoY29uc3QgUmVuZGVyQm94JiBjaGls
ZCkgY29uc3Q7CiAgICAgTGF5b3V0VW5pdCBjaGlsZEludHJpbnNpY0xvZ2ljYWxIZWlnaHQoY29u
c3QgUmVuZGVyQm94JiBjaGlsZCkgY29uc3Q7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZTZlM2ViMWYxODBlOTNlZjY3YjZh
MGZjNmY0MGJkMGJmY2ZhODQ0ZC4uOWZkYTVkYTUyMDg3NGM2NjUzNzM1MGM4ZTkyMzNhYjZlMmYw
MmNkYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIwLTA5LTAxICBTZXJnaW8gVmlsbGFyIFNl
bmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZmxleGJveF0gbWluLWhl
aWdodDogYXV0byBub3QgYXBwbGllZCB0byBuZXN0ZWQgZmxleGJveGVzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDg5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOiBS
ZW1vdmVkIHR3byB0ZXN0IGNhc2VzIHRoYXQgYXJlIHBhc3Npbmcgbm93LgorCiAyMDIwLTA4LTMx
ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWhv
bSB0ZXh0IGlzIHN0aWxsIGJ1c3RlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMmYwOWY1YjZiYTc0
NDEwODk0Y2U4MDZlNGY4YzUwZmIwMzQyMDc2MC4uNzQ5MTg2ZWU0ZmFmMjFkNDg1Zjg0NTY1YzVi
MWI4ZWQ4Mjk3OTUxMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0zOTM0LDggKzM5MzQsNiBAQCB3
ZWJraXQub3JnL2IvMjA2NzY3IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1mbGV4Ym94L2dhcC0wMTUuaHRtbAogd2Via2l0Lm9yZy9iLzIwNjc2NyBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9nYXAtMDE2Lmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8yMDk2NDkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGFkZGluZy1vdmVyZmxvdy1jcmFzaC5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjEwMDc3IGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L2ZsZXgtYmFzaXMtMDEwLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMTAwODkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvZmxleC1taW5pbXVtLWhlaWdodC1mbGV4LWl0ZW1zLTAx
MS54aHQgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMTAwODkgaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvZmxleC1taW5pbXVtLWhlaWdo
dC1mbGV4LWl0ZW1zLTAxMy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2Iv
MjEwMDkzIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3Nl
bGVjdC1lbGVtZW50LXplcm8taGVpZ2h0LTAwMS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3
ZWJraXQub3JnL2IvMjEwMDkzIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1mbGV4Ym94L3NlbGVjdC1lbGVtZW50LXplcm8taGVpZ2h0LTAwMi5odG1sIFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjEwMTQ0IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1mbGV4Ym94L2Fub255bW91cy1mbGV4LWl0ZW0tMDA1Lmh0bWwgWyBJbWFn
ZU9ubHlGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407755</attachid>
            <date>2020-09-02 04:26:26 -0700</date>
            <delta_ts>2020-09-05 14:54:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210089-20200902132624.patch</filename>
            <type>text/plain</type>
            <size>17688</size>
            <attacher name="Sergio Villar Senin">svillar</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2Mzg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDEzODQ4MDkzMzBlMzZh
YTUwNzFhMmYyMDA5NzdkNjE4NWY0NjEyMC4uZTgwNmEyY2ZmYTVhNTlkNTU5ZDdmOGQ2YjQ3MGE2
MjVjNWI5ZWU1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIwLTA5LTAyICBTZXJn
aW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZmxl
eGJveF0gbWluLWhlaWdodDogYXV0byBub3QgYXBwbGllZCB0byBuZXN0ZWQgZmxleGJveGVzLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDg5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVzdGVkIGZs
ZXhib3hlcyB3aXRoIGNvbHVtbiBkaXJlY3Rpb24gd2VyZSBub3QgY29tcHV0aW5nIGNvcnJlY3Rs
eSBtaW4tc2l6ZTphdXRvIGJlY2F1c2UKKyAgICAgICAgd2Ugd2VyZSBleHBsaWNpdGx5IHByZXZl
bnRpbmcgdGhlbSBmcm9tIGRvaW5nIHNvIGluIHRoZSBjb2RlLiBJbXBsZW1lbnRlZCB0aGUgcmVx
dWlyZWQgYml0cyB0bworICAgICAgICBtYWtlIGl0IHdvcmsgY29ycmVjdGx5IGFuZCB0aHVzIHJl
bW92ZWQgdGhlIHJldHJpY3Rpb24uIFRoZSBpZGVhIGlzIHRvIHNldCBhbiBpbmRlZmluaXRlIG92
ZXJyaWRlCisgICAgICAgIGNvbnRhaW5pbmcgYmxvY2sgc2l6ZSBzbyB0aGF0IHBlcmNlbnRhZ2Vz
IHdvdWxkIGJlIHJlc29sdmVkIHRvIGF1dG8gYXMgc3BlYydlZC4gVGhlIGNvZGUgd2hpY2gKKyAg
ICAgICAgZGVjaWRlcyB3aGV0aGVyIHRvIGFwcGx5IG1pbi1zaXplOmF1dG8gd2FzIHJlZmFjdG9y
ZWQgaW4gdGhlIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgpIG1ldGhvZC4KKworICAg
ICAgICBJbiBvcmRlciBub3QgdG8gY2F1c2UgcmVncmVzc2lvbnMgc29tZSBvdGhlciB0d28gYWRk
aXRpb25hbCBjaGFuZ2VzIHdlcmUgYWxzbyBpbXBsZW1lbnRlZC4gRmlyc3Qgd2UKKyAgICAgICAg
aGFkIHRvIGFkanVzdCBjaGlsZEhhc0ludHJpbnNpY01haW5BeGlzU2l6ZSgpIHNvIHRoYXQgaXQg
YWxzbyB0YWtlcyBpbnRvIGFjY291bnQgdGhlIGNhc2VzIHdoZXJlCisgICAgICAgIHNob3VsZEFw
cGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgpIGlzIHRydWUgYW5kIHJldHVybiB0cnVlLiBTZWNvbmRs
eSB3ZSBoYWQgdG8gYWRkIGFuIGFkZGl0aW9uYWwgY2FzZQorICAgICAgICB0byBtYWluQXhpc0xl
bmd0aElzRGVmaW5pdGUoKSBzbyB0aGF0IGl0IHJldHVybnMgZmFsc2UgZm9yIGNvbHVtbiBmbG93
cyB3aGVyZSB0aGUgZmxleEJhc2lzIGlzIGludHJpbnNpYy4KKworICAgICAgICBJbnNwaXJlZCBi
eSBCbGluaydzIGNycmV2LmNvbS9jLzE2NDE1MTAsIGNycmV2LmNvbS9jLzEyNjk5OTUgJiBjcnJl
di5jb20vYy8xNzg2Mjk3IGJ5IDxjYmllc2luZ2VyQGNocm9taXVtLm9yZz4KKworICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJGbGV4aWJsZUJveDo6c2hvdWxkQXBwbHlNaW5TaXplQXV0b0ZvckNoaWxkIGNvbnN0KTogUmVm
YWN0b3JlZCBmcm9tCisgICAgICAgIFJlbmRlckZsZXhpYmxlQm94OjphZGp1c3RDaGlsZFNpemVG
b3JNaW5BbmRNYXguCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bWFpbkF4
aXNMZW5ndGhJc0RlZmluaXRlIGNvbnN0KTogQWRkaXRpb25hbCBjYXNlIGZvciBjb2x1bW4gZmxv
d3MuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0RmxleEl0ZW1z
KTogUmVzZXQgbV9oYXNEZWZpbml0ZUhlaWdodCB0byBVbmtub3duIGFmdGVyIGNhbGxpbmcKKyAg
ICAgICAgY29uc3RydWN0RmxleEl0ZW0oKSBiZWNhdXNlIHRoZSBsYXR0ZXIgbWlnaHQgc2V0IG5v
dyBhbiBvdmVycmlkZSBjb250YWluaW5nIGJsb2NrIGhlaWdodCB3aGljaCBiYXNpY2FsbHkKKyAg
ICAgICAgcG90ZW50aWFsbHkgbWFrZXMgYW55IGNhY2hlZCBzaXplIHZhbHVlIGluY29ycmVjdC4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjphZGp1c3RDaGlsZFNpemVGb3JN
aW5BbmRNYXgpOiBEaXJlY3RseSBjYWxsIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgp
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmNvbnN0cnVjdEZsZXhJdGVt
KTogU2V0IGFuIGluZGVmaW5pdGUgb3ZlcnJpZGUgY29udGFpbmluZyBibG9jayBzaXplIGZvcgor
ICAgICAgICBjaGlsZHJlbiB3aXRoIHBlcmNlbnRhZ2Ugc2l6ZXMgc28gdGhhdCB0aGV5J3JlIHJl
c29sdmVkIGFzIGF1dG8uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6Y2hp
bGRIYXNJbnRyaW5zaWNNYWluQXhpc1NpemUgY29uc3QpOiBSZXR1cm4gdHJ1ZSBmb3IgdGhvc2Ug
Y2FzZXMgd2hlcmUgdGhlCisgICAgICAgIG1haW4gYXhpcyBsZW5ndGggaXMgaW5kZWZpbml0ZSBh
bmQgYWxzbyB3aGVuIHNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZCgpLgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oOgorCiAyMDIwLTA4LTMxICBNeWxlcyBDLiBN
YXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWhvbSB0ZXh0IGlzIHN0
aWxsIGJ1c3RlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZs
ZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5jcHAKaW5kZXggNzlmY2QzYWFkN2VjMDY1MTYzNGNhMzRjNDMzMTMwZjIxM2YzYjM4OC4uZjM0
Y2JjMjdiOGRiYmJhZDQ5MDk5Y2VjMWRjOGY1MTA0NDU5MDFhYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCkBAIC00MzgsNiArNDM4LDEzIEBA
IGJvb2wgUmVuZGVyRmxleGlibGVCb3g6OmlzTXVsdGlsaW5lKCkgY29uc3QKICAgICByZXR1cm4g
c3R5bGUoKS5mbGV4V3JhcCgpICE9IEZsZXhXcmFwOjpOb1dyYXA7CiB9CiAKK2Jvb2wgUmVuZGVy
RmxleGlibGVCb3g6OnNob3VsZEFwcGx5TWluU2l6ZUF1dG9Gb3JDaGlsZChjb25zdCBSZW5kZXJC
b3gmIGNoaWxkKSBjb25zdAoreworICAgIC8vIGNzcy1mbGV4Ym94IHNlY3Rpb24gNC41CisgICAg
YXV0byBtaW5TaXplID0gaXNIb3Jpem9udGFsRmxvdygpID8gY2hpbGQuc3R5bGUoKS5taW5XaWR0
aCgpIDogY2hpbGQuc3R5bGUoKS5taW5IZWlnaHQoKTsKKyAgICByZXR1cm4gbWluU2l6ZS5pc0F1
dG8oKSAmJiBtYWluQXhpc092ZXJmbG93Rm9yQ2hpbGQoY2hpbGQpID09IE92ZXJmbG93OjpWaXNp
YmxlOworfQorCiBMZW5ndGggUmVuZGVyRmxleGlibGVCb3g6OmZsZXhCYXNpc0ZvckNoaWxkKGNv
bnN0IFJlbmRlckJveCYgY2hpbGQpIGNvbnN0CiB7CiAgICAgTGVuZ3RoIGZsZXhMZW5ndGggPSBj
aGlsZC5zdHlsZSgpLmZsZXhCYXNpcygpOwpAQCAtNzk2LDYgKzgwMyw4IEBAIGJvb2wgUmVuZGVy
RmxleGlibGVCb3g6Om1haW5BeGlzTGVuZ3RoSXNEZWZpbml0ZShjb25zdCBSZW5kZXJCb3gmIGNo
aWxkLCBjb25zdCBMCiB7CiAgICAgaWYgKGZsZXhCYXNpcy5pc0F1dG8oKSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIGlmIChpc0NvbHVtbkZsb3coKSAmJiBmbGV4QmFzaXMuaXNJbnRyaW5z
aWMoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChmbGV4QmFzaXMuaXNQZXJjZW50
T3JDYWxjdWxhdGVkKCkpIHsKICAgICAgICAgaWYgKCFpc0NvbHVtbkZsb3coKSB8fCBtX2hhc0Rl
ZmluaXRlSGVpZ2h0ID09IFNpemVEZWZpbml0ZW5lc3M6OkRlZmluaXRlKQogICAgICAgICAgICAg
cmV0dXJuIHRydWU7CkBAIC05MTQsNiArOTIzLDkgQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6
bGF5b3V0RmxleEl0ZW1zKGJvb2wgcmVsYXlvdXRDaGlsZHJlbikKICAgICAgICAgYWxsSXRlbXMu
YXBwZW5kKGNvbnN0cnVjdEZsZXhJdGVtKCpjaGlsZCwgcmVsYXlvdXRDaGlsZHJlbikpOwogICAg
IH0KICAgICBtX3JldmVyc2VkT3JkZXJJdGVyYXRvckZvckhpdFRlc3RpbmcucmV2ZXJzZSgpOwor
CisgICAgLy8gY29uc3RydWN0RmxleEl0ZW0oKSBtaWdodCBzZXQgdGhlIG92ZXJyaWRlIGNvbnRh
aW5pbmcgYmxvY2sgaGVpZ2h0IHNvIGFueSB2YWx1ZSBjYWNoZWQgZm9yIGRlZmluaXRlbmVzcyBt
aWdodCBiZSBpbmNvcnJlY3QuCisgICAgbV9oYXNEZWZpbml0ZUhlaWdodCA9IFNpemVEZWZpbml0
ZW5lc3M6OlVua25vd247CiAgICAgCiAgICAgY29uc3QgTGF5b3V0VW5pdCBsaW5lQnJlYWtMZW5n
dGggPSBtYWluQXhpc0NvbnRlbnRFeHRlbnQoTGF5b3V0VW5pdDo6bWF4KCkpOwogICAgIEZsZXhM
YXlvdXRBbGdvcml0aG0gZmxleEFsZ29yaXRobShzdHlsZSgpLCBsaW5lQnJlYWtMZW5ndGgsIGFs
bEl0ZW1zKTsKQEAgLTExMjgsMTIgKzExNDAsNyBAQCBMYXlvdXRVbml0IFJlbmRlckZsZXhpYmxl
Qm94OjphZGp1c3RDaGlsZFNpemVGb3JNaW5BbmRNYXgoY29uc3QgUmVuZGVyQm94JiBjaGlsZAog
ICAgIGlmIChtaW4uaXNTcGVjaWZpZWRPckludHJpbnNpYygpKQogICAgICAgICByZXR1cm4gc3Rk
OjptYXgoY2hpbGRTaXplLCBzdGQ6Om1heCgwX2x1LCBjb21wdXRlTWFpbkF4aXNFeHRlbnRGb3JD
aGlsZChjaGlsZCwgTWluU2l6ZSwgbWluKS52YWx1ZU9yKGNoaWxkU2l6ZSkpKTsKICAgICAKLSAg
ICBpZiAoIWlzRmxleGlibGVCb3hJbXBsKCkgJiYgbWluLmlzQXV0bygpICYmIG1haW5BeGlzT3Zl
cmZsb3dGb3JDaGlsZChjaGlsZCkgPT0gT3ZlcmZsb3c6OlZpc2libGUgJiYgIShpc0NvbHVtbkZs
b3coKSAmJiBpczxSZW5kZXJGbGV4aWJsZUJveD4oY2hpbGQpKSkgewotICAgICAgICAvLyBGSVhN
RTogRm9yIG5vdywgd2UgZG8gbm90IGhhbmRsZSBtaW4taGVpZ2h0OiBhdXRvIGZvciBuZXN0ZWQK
LSAgICAgICAgLy8gY29sdW1uIGZsZXhib3hlcy4gV2UgbmVlZCB0byBpbXBsZW1lbnQKLSAgICAg
ICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy1mbGV4Ym94LyNpbnRyaW5zaWMtc2l6
ZXMgYmVmb3JlIHRoYXQKLSAgICAgICAgLy8gcHJvZHVjZXMgcmVhc29uYWJsZSByZXN1bHRzLiBU
cmFja2luZyBidWc6IGh0dHBzOi8vY3JidWcuY29tLzU4MTU1MwotICAgICAgICAvLyBjc3MtZmxl
eGJveCBzZWN0aW9uIDQuNQorICAgIGlmIChzaG91bGRBcHBseU1pblNpemVBdXRvRm9yQ2hpbGQo
Y2hpbGQpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBJZiB0aGUgbWluIHZhbHVlIGlzIGV4cGVjdGVk
IHRvIGJlIHZhbGlkIGhlcmUsIHdlIG5lZWQgdG8gY29tZSB1cCB3aXRoIGEgbm9uIG9wdGlvbmFs
IHZlcnNpb24gb2YgY29tcHV0ZU1haW5BeGlzRXh0ZW50Rm9yQ2hpbGQgYW5kCiAgICAgICAgIC8v
IGVuc3VyZSBpdCdzIHZhbGlkIHRocm91Z2ggdGhlIHZpcnR1YWwgY2FsbHMgb2YgY29tcHV0ZUlu
dHJpbnNpY0xvZ2ljYWxDb250ZW50SGVpZ2h0VXNpbmcuCiAgICAgICAgIExheW91dFVuaXQgY29u
dGVudFNpemUgPSBjb21wdXRlTWFpbkF4aXNFeHRlbnRGb3JDaGlsZChjaGlsZCwgTWluU2l6ZSwg
TGVuZ3RoKE1pbkNvbnRlbnQpKS52YWx1ZU9yKDApOwpAQCAtMTIzMiwxNyArMTIzOSwyNyBAQCBM
YXlvdXRVbml0IFJlbmRlckZsZXhpYmxlQm94OjphZGp1c3RDaGlsZFNpemVGb3JBc3BlY3RSYXRp
b0Nyb3NzQXhpc01pbkFuZE1heChjbwogCiBGbGV4SXRlbSBSZW5kZXJGbGV4aWJsZUJveDo6Y29u
c3RydWN0RmxleEl0ZW0oUmVuZGVyQm94JiBjaGlsZCwgYm9vbCByZWxheW91dENoaWxkcmVuKQog
ewotICAgIC8vIElmIHRoaXMgY29uZGl0aW9uIGlzIHRydWUsIHRoZW4gY29tcHV0ZU1haW5BeGlz
RXh0ZW50Rm9yQ2hpbGQgd2lsbCBjYWxsCi0gICAgLy8gY2hpbGQuaW50cmluc2ljQ29udGVudExv
Z2ljYWxIZWlnaHQoKSBhbmQKLSAgICAvLyBjaGlsZC5zY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCks
IHNvIGlmIHRoZSBjaGlsZCBoYXMgaW50cmluc2ljCi0gICAgLy8gbWluL21heC9wcmVmZXJyZWQg
c2l6ZSwgcnVuIGxheW91dCBvbiBpdCBub3cgdG8gbWFrZSBzdXJlIGl0cyBsb2dpY2FsCi0gICAg
Ly8gaGVpZ2h0IGFuZCBzY3JvbGwgYmFycyBhcmUgdXAgdG8gZGF0ZS4KLSAgICBpZiAoY2hpbGRI
YXNJbnRyaW5zaWNNYWluQXhpc1NpemUoY2hpbGQpICYmIGNoaWxkLm5lZWRzTGF5b3V0KCkpIHsK
LSAgICAgICAgY2hpbGQuY2xlYXJPdmVycmlkZUNvbnRlbnRTaXplKCk7Ci0gICAgICAgIGNoaWxk
LnNldENoaWxkTmVlZHNMYXlvdXQoTWFya09ubHlUaGlzKTsKLSAgICAgICAgY2hpbGQubGF5b3V0
SWZOZWVkZWQoKTsKLSAgICAgICAgY2FjaGVDaGlsZE1haW5TaXplKGNoaWxkKTsKLSAgICAgICAg
cmVsYXlvdXRDaGlsZHJlbiA9IGZhbHNlOworICAgIGlmIChjaGlsZEhhc0ludHJpbnNpY01haW5B
eGlzU2l6ZShjaGlsZCkpIHsKKyAgICAgICAgLy8gSWYgdGhpcyBjb25kaXRpb24gaXMgdHJ1ZSwg
dGhlbiBjb21wdXRlTWFpbkF4aXNFeHRlbnRGb3JDaGlsZCB3aWxsIGNhbGwKKyAgICAgICAgLy8g
Y2hpbGQuaW50cmluc2ljQ29udGVudExvZ2ljYWxIZWlnaHQoKSBhbmQgY2hpbGQuc2Nyb2xsYmFy
TG9naWNhbEhlaWdodCgpLAorICAgICAgICAvLyBzbyBpZiB0aGUgY2hpbGQgaGFzIGludHJpbnNp
YyBtaW4vbWF4L3ByZWZlcnJlZCBzaXplLCBydW4gbGF5b3V0IG9uIGl0IG5vdyB0byBtYWtlIHN1
cmUKKyAgICAgICAgLy8gaXRzIGxvZ2ljYWwgaGVpZ2h0IGFuZCBzY3JvbGwgYmFycyBhcmUgdXAg
dG8gZGF0ZS4KKyAgICAgICAgdXBkYXRlQmxvY2tDaGlsZERpcnR5Qml0c0JlZm9yZUxheW91dChy
ZWxheW91dENoaWxkcmVuLCBjaGlsZCk7CisgICAgICAgIC8vIERvbid0IHJlc29sdmUgcGVyY2Vu
dGFnZXMgaW4gY2hpbGRyZW4uIFRoaXMgaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQgZm9yIHRoZSBt
aW4taGVpZ2h0IGNhbGN1bGF0aW9uLAorICAgICAgICAvLyB3aGVyZSB3ZSB3YW50IHBlcmNlbnRh
Z2VzIHRvIGJlIHRyZWF0ZWQgYXMgYXV0by4gRm9yIGZsZXgtYmFzaXMgaXRzZWxmLCB0aGlzIGlz
IG5vdCBhIHByb2JsZW0gYmVjYXVzZQorICAgICAgICAvLyBieSBkZWZpbml0aW9uIHdlIGhhdmUg
YW4gaW5kZWZpbml0ZSBmbGV4IGJhc2lzIGhlcmUgYW5kIHRodXMgcGVyY2VudGFnZXMgc2hvdWxk
IG5vdCByZXNvbHZlLgorICAgICAgICBpZiAoY2hpbGQubmVlZHNMYXlvdXQoKSB8fCAhbV9pbnRy
aW5zaWNTaXplQWxvbmdNYWluQXhpcy5jb250YWlucygmY2hpbGQpKSB7CisgICAgICAgICAgICBp
ZiAoaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA9PSBjaGlsZC5pc0hvcml6b250YWxXcml0aW5n
TW9kZSgpKQorICAgICAgICAgICAgICAgIGNoaWxkLnNldE92ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudExvZ2ljYWxIZWlnaHQoV1RGOjpudWxsb3B0KTsKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICBjaGlsZC5zZXRPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dp
Y2FsV2lkdGgoV1RGOjpudWxsb3B0KTsKKyAgICAgICAgICAgIGNoaWxkLmNsZWFyT3ZlcnJpZGVD
b250ZW50U2l6ZSgpOworICAgICAgICAgICAgY2hpbGQuc2V0Q2hpbGROZWVkc0xheW91dChNYXJr
T25seVRoaXMpOworICAgICAgICAgICAgY2hpbGQubGF5b3V0SWZOZWVkZWQoKTsKKyAgICAgICAg
ICAgIGNhY2hlQ2hpbGRNYWluU2l6ZShjaGlsZCk7CisgICAgICAgICAgICByZWxheW91dENoaWxk
cmVuID0gZmFsc2U7CisgICAgICAgICAgICBjaGlsZC5jbGVhck92ZXJyaWRlQ29udGFpbmluZ0Js
b2NrQ29udGVudFNpemUoKTsKKyAgICAgICAgfQogICAgIH0KICAgICAKICAgICBMYXlvdXRVbml0
IGJvcmRlckFuZFBhZGRpbmcgPSBpc0hvcml6b250YWxGbG93KCkgPyBjaGlsZC5ob3Jpem9udGFs
Qm9yZGVyQW5kUGFkZGluZ0V4dGVudCgpIDogY2hpbGQudmVydGljYWxCb3JkZXJBbmRQYWRkaW5n
RXh0ZW50KCk7CkBAIC0xNTU2LDE1ICsxNTczLDIzIEBAIGJvb2wgUmVuZGVyRmxleGlibGVCb3g6
Om5lZWRUb1N0cmV0Y2hDaGlsZExvZ2ljYWxIZWlnaHQoY29uc3QgUmVuZGVyQm94JiBjaGlsZCkK
IAogYm9vbCBSZW5kZXJGbGV4aWJsZUJveDo6Y2hpbGRIYXNJbnRyaW5zaWNNYWluQXhpc1NpemUo
Y29uc3QgUmVuZGVyQm94JiBjaGlsZCkgY29uc3QKIHsKLSAgICBib29sIHJlc3VsdCA9IGZhbHNl
OwotICAgIGlmIChpc0hvcml6b250YWxGbG93KCkgIT0gY2hpbGQuc3R5bGUoKS5pc0hvcml6b250
YWxXcml0aW5nTW9kZSgpKSB7Ci0gICAgICAgIExlbmd0aCBjaGlsZEZsZXhCYXNpcyA9IGZsZXhC
YXNpc0ZvckNoaWxkKGNoaWxkKTsKLSAgICAgICAgTGVuZ3RoIGNoaWxkTWluU2l6ZSA9IGlzSG9y
aXpvbnRhbEZsb3coKSA/IGNoaWxkLnN0eWxlKCkubWluV2lkdGgoKSA6IGNoaWxkLnN0eWxlKCku
bWluSGVpZ2h0KCk7Ci0gICAgICAgIExlbmd0aCBjaGlsZE1heFNpemUgPSBpc0hvcml6b250YWxG
bG93KCkgPyBjaGlsZC5zdHlsZSgpLm1heFdpZHRoKCkgOiBjaGlsZC5zdHlsZSgpLm1heEhlaWdo
dCgpOwotICAgICAgICBpZiAoY2hpbGRGbGV4QmFzaXMuaXNJbnRyaW5zaWMoKSB8fCBjaGlsZE1p
blNpemUuaXNJbnRyaW5zaWNPckF1dG8oKSB8fCBjaGlsZE1heFNpemUuaXNJbnRyaW5zaWMoKSkK
LSAgICAgICAgICAgIHJlc3VsdCA9IHRydWU7Ci0gICAgfQotICAgIHJldHVybiByZXN1bHQ7Cisg
ICAgaWYgKGlzSG9yaXpvbnRhbEZsb3coKSA9PSBjaGlsZC5zdHlsZSgpLmlzSG9yaXpvbnRhbFdy
aXRpbmdNb2RlKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIExlbmd0aCBjaGlsZEZs
ZXhCYXNpcyA9IGZsZXhCYXNpc0ZvckNoaWxkKGNoaWxkKTsKKyAgICBMZW5ndGggY2hpbGRNaW5T
aXplID0gaXNIb3Jpem9udGFsRmxvdygpID8gY2hpbGQuc3R5bGUoKS5taW5XaWR0aCgpIDogY2hp
bGQuc3R5bGUoKS5taW5IZWlnaHQoKTsKKyAgICBMZW5ndGggY2hpbGRNYXhTaXplID0gaXNIb3Jp
em9udGFsRmxvdygpID8gY2hpbGQuc3R5bGUoKS5tYXhXaWR0aCgpIDogY2hpbGQuc3R5bGUoKS5t
YXhIZWlnaHQoKTsKKyAgICAvLyBGSVhNRTogd2UgbXVzdCBydW4gbWFpbkF4aXNMZW5ndGhJc0Rl
ZmluaXRlKCkgYmVjYXVzZSBpdCBtaWdodCBlbmQgdXAgY2FsbGluZyBjb21wdXRlUGVyY2VudGFn
ZUxvZ2ljYWxIZWlnaHQoKQorICAgIC8vIHdoaWNoIGhhcyBzb21lIHNpZGUgZWZmZWN0cyBsaWtl
IGNhbGxpbmcgYWRkUGVyY2VudEhlaWdodERlc2NlbmRhbnQoKSBmb3IgZXhhbXBsZSBzbyBpdCBp
cyBub3QgcG9zc2libGUgdG8gc2tpcAorICAgIC8vIHRoZSBjYWxsIGZvciBleGFtcGxlIGJ5IG1v
dmluZyBpdCB0byB0aGUgZW5kIG9mIHRoZSBjb25kaXRpb25hbCBleHByZXNzaW9uLiBUaGlzIGlz
IGVycm9yLXByb25lIGFuZCB3ZSBzaG91bGQKKyAgICAvLyByZWZhY3RvciBjb21wdXRlUGVyY2Vu
dGFnZUxvZ2ljYWxIZWlnaHQoKSBhdCBzb21lIHBvaW50IHNvIHRoYXQgaXQgb25seSBjb21wdXRl
cyBzdHVmZiB3aXRob3V0IHRob3NlIHNpZGUgZWZmZWN0cy4KKyAgICBpZiAoIW1haW5BeGlzTGVu
Z3RoSXNEZWZpbml0ZShjaGlsZCwgY2hpbGRGbGV4QmFzaXMpIHx8IGNoaWxkTWluU2l6ZS5pc0lu
dHJpbnNpYygpIHx8IGNoaWxkTWF4U2l6ZS5pc0ludHJpbnNpYygpKQorICAgICAgICByZXR1cm4g
dHJ1ZTsKKworICAgIGlmIChzaG91bGRBcHBseU1pblNpemVBdXRvRm9yQ2hpbGQoY2hpbGQpKQor
ICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBmYWxzZTsKIH0KIAogT3ZlcmZsb3cg
UmVuZGVyRmxleGlibGVCb3g6Om1haW5BeGlzT3ZlcmZsb3dGb3JDaGlsZChjb25zdCBSZW5kZXJC
b3gmIGNoaWxkKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckZsZXhpYmxlQm94LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGli
bGVCb3guaAppbmRleCBjNGIwMzczMmQzYjk2NDI0NThjZWVlYmNhNTY1YjIzZWFkNDE3YzBkLi45
OWFlOWY0OTE4NzQ3OWRlMGI1YzA3ZmJlMGE4MDY2Mzk3NmVjNTViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaApAQCAtMTEzLDYgKzExMyw3IEBAIHBy
aXZhdGU6CiAgICAgYm9vbCBpc0xlZnRUb1JpZ2h0RmxvdygpIGNvbnN0OwogICAgIGJvb2wgaXNN
dWx0aWxpbmUoKSBjb25zdDsKICAgICBMZW5ndGggZmxleEJhc2lzRm9yQ2hpbGQoY29uc3QgUmVu
ZGVyQm94JiBjaGlsZCkgY29uc3Q7CisgICAgYm9vbCBzaG91bGRBcHBseU1pblNpemVBdXRvRm9y
Q2hpbGQoY29uc3QgUmVuZGVyQm94JiBjaGlsZCkgY29uc3Q7CiAgICAgTGF5b3V0VW5pdCBjcm9z
c0F4aXNFeHRlbnRGb3JDaGlsZChjb25zdCBSZW5kZXJCb3gmIGNoaWxkKSBjb25zdDsKICAgICBM
YXlvdXRVbml0IGNyb3NzQXhpc0ludHJpbnNpY0V4dGVudEZvckNoaWxkKGNvbnN0IFJlbmRlckJv
eCYgY2hpbGQpIGNvbnN0OwogICAgIExheW91dFVuaXQgY2hpbGRJbnRyaW5zaWNMb2dpY2FsSGVp
Z2h0KGNvbnN0IFJlbmRlckJveCYgY2hpbGQpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGU2ZTNlYjFmMTgwZTkz
ZWY2N2I2YTBmYzZmNDBiZDBiZmNmYTg0NGQuLjE1MmE5MWQ0OWE4YWNhNjgwZjc1OTVmNzVhYmFm
NDYyN2Q2ZjQxM2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMC0wOS0wMiAgU2VyZ2lvIFZp
bGxhciBTZW5pbiAgPHN2aWxsYXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbY3NzLWZsZXhib3hd
IG1pbi1oZWlnaHQ6IGF1dG8gbm90IGFwcGxpZWQgdG8gbmVzdGVkIGZsZXhib3hlcy4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA4OQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFwYXJ0IGZyb20gZW5h
Ymxpbmcgc29tZSB0ZXN0cyB3ZSdyZSByZW1vdmluZyBhIHRlc3Qgd2hpY2ggaXMgbm93IGludmFs
aWQgYXMgaXQgd2FzIGFkZGVkCisgICAgICAgIHVuZGVyIHRoZSBjb25kaXRpb24gdGhhdCB3ZSB3
ZXJlIG5vdCBtYXRjaGluZyB0aGUgc3BlY3Mgd3J0IHBlcmNlbnRhZ2UgaGVpZ2h0IGNvbXB1dGF0
aW9uIGluCisgICAgICAgIGNvbHVtbiBmbGV4Ym94ZXMuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0
YXRpb25zOiBSZW1vdmVkIHR3byB0ZXN0IGNhc2VzIHRoYXQgYXJlIHBhc3Npbmcgbm93LgorICAg
ICAgICAqIGZhc3QvZmxleGJveC9uZXN0ZWQtY29sdW1uLWludHJpbnNpYy1taW4tZGlzYWJsZWQt
ZXhwZWN0ZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2ZsZXhib3gvbmVzdGVkLWNv
bHVtbi1pbnRyaW5zaWMtbWluLWRpc2FibGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogcGxh
dGZvcm0vaW9zL2Zhc3QvZm9ybXMvYXV0by1maWxsLWJ1dHRvbi9pbnB1dC1zdHJvbmctcGFzc3dv
cmQtYXV0by1maWxsLWJ1dHRvbi1leHBlY3RlZC50eHQ6IFVwZGF0ZWQuCisgICAgICAgICogcGxh
dGZvcm0vbWFjL2Zhc3QvZm9ybXMvYXV0by1maWxsLWJ1dHRvbi9pbnB1dC1zdHJvbmctcGFzc3dv
cmQtYXV0by1maWxsLWJ1dHRvbi1leHBlY3RlZC50eHQ6IERpdHRvLgorCiAyMDIwLTA4LTMxICBN
eWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWhvbSB0
ZXh0IGlzIHN0aWxsIGJ1c3RlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0
aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMmYwOWY1YjZiYTc0NDEw
ODk0Y2U4MDZlNGY4YzUwZmIwMzQyMDc2MC4uNzQ5MTg2ZWU0ZmFmMjFkNDg1Zjg0NTY1YzViMWI4
ZWQ4Mjk3OTUxMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0zOTM0LDggKzM5MzQsNiBAQCB3ZWJr
aXQub3JnL2IvMjA2NzY3IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1m
bGV4Ym94L2dhcC0wMTUuaHRtbAogd2Via2l0Lm9yZy9iLzIwNjc2NyBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZmxleGJveC9nYXAtMDE2Lmh0bWwgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8yMDk2NDkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZsZXhib3gvcGFkZGluZy1vdmVyZmxvdy1jcmFzaC5odG1sIFsgSW1hZ2VP
bmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjEwMDc3IGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L2ZsZXgtYmFzaXMtMDEwLmh0bWwgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMTAwODkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWZsZXhib3gvZmxleC1taW5pbXVtLWhlaWdodC1mbGV4LWl0ZW1zLTAxMS54
aHQgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMTAwODkgaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWZsZXhib3gvZmxleC1taW5pbXVtLWhlaWdodC1m
bGV4LWl0ZW1zLTAxMy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMjEw
MDkzIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1mbGV4Ym94L3NlbGVj
dC1lbGVtZW50LXplcm8taGVpZ2h0LTAwMS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMjEwMDkzIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1m
bGV4Ym94L3NlbGVjdC1lbGVtZW50LXplcm8taGVpZ2h0LTAwMi5odG1sIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCiB3ZWJraXQub3JnL2IvMjEwMTQ0IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1mbGV4Ym94L2Fub255bW91cy1mbGV4LWl0ZW0tMDA1Lmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZmxleGJveC9uZXN0ZWQt
Y29sdW1uLWludHJpbnNpYy1taW4tZGlzYWJsZWQtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvZmxleGJveC9uZXN0ZWQtY29sdW1uLWludHJpbnNpYy1taW4tZGlzYWJsZWQtZXhwZWN0
ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGJjZmFiMzI5ODFiYjFjZWFk
MjU5MTdiMjllNmU1NmM0NWQ2OWI3YS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ZsZXhib3gvbmVzdGVkLWNvbHVtbi1pbnRy
aW5zaWMtbWluLWRpc2FibGVkLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0ICsw
LDAgQEAKLTxodG1sPgotPGJvZHk+Ci08ZGl2PlRoaXMgaGVpZ2h0IHNob3VsZCBiZSAwLiBXZSBh
cmUgdmlvbGF0aW5nIHRoZSBzcGVjIChzZWN0aW9uIDQuNSkgZm9yIG5vdyB1bnRpbCB3ZSBjYW4g
aW1wbGVtZW50IG5lc3RlZCBjb2x1bW4gaW50cmluc2ljIHNpemluZyBwcm9wZXJseS48L2Rpdj4K
LTwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZmxleGJveC9uZXN0ZWQtY29s
dW1uLWludHJpbnNpYy1taW4tZGlzYWJsZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZmxleGJv
eC9uZXN0ZWQtY29sdW1uLWludHJpbnNpYy1taW4tZGlzYWJsZWQuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMmJjZjFlNDkwYTNmYTQxMGQ5YWViYzdjYzU4M2ZlMjRlMjAyODNi
MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2ZsZXhib3gvbmVzdGVkLWNvbHVtbi1pbnRyaW5zaWMtbWluLWRpc2FibGVkLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi08aHRtbD4KLTxoZWFkPgotPHN0eWxl
PgotCi0uZmxleGJveCB7Ci0gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwotfQotCi0uY29sdW1u
IHsKLSAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ci19ExMKLTwvc3R5bGU+Ci08
L2hlYWQ+Ci08Ym9keT4KLTxkaXYgY2xhc3M9ImZsZXhib3ggY29sdW1uIiBzdHlsZT0iaGVpZ2h0
OjBweCI+Ci08ZGl2IHN0eWxlPSJkaXNwbGF5OmZsZXg7YmFja2dyb3VuZC1jb2xvcjpyZWQiPlRo
aXMgaGVpZ2h0IHNob3VsZCBiZSAwLiBXZSBhcmUgdmlvbGF0aW5nIHRoZSBzcGVjIChzZWN0aW9u
IDQuNSkgZm9yIG5vdyB1bnRpbCB3ZSBjYW4gaW1wbGVtZW50IG5lc3RlZCBjb2x1bW4gaW50cmlu
c2ljIHNpemluZyBwcm9wZXJseS48L2Rpdj4KLTwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2Zhc3QvZm9ybXMvYXV0by1maWxsLWJ1dHRvbi9pbnB1dC1zdHJvbmct
cGFzc3dvcmQtYXV0by1maWxsLWJ1dHRvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvZmFzdC9mb3Jtcy9hdXRvLWZpbGwtYnV0dG9uL2lucHV0LXN0cm9uZy1wYXNzd29y
ZC1hdXRvLWZpbGwtYnV0dG9uLWV4cGVjdGVkLnR4dAppbmRleCBhZjljYWI1ZDhlYmIzYjQ5MDZk
YzY5YTI1ZjIwZWI2MzJkNmFmYjYzLi45NmZjOTMzOTQ4ZmI3ZGM5ZWExZGZjM2ZlZjIzN2RiYjMz
NzFmNWFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvZmFzdC9mb3Jtcy9h
dXRvLWZpbGwtYnV0dG9uL2lucHV0LXN0cm9uZy1wYXNzd29yZC1hdXRvLWZpbGwtYnV0dG9uLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvZmFzdC9mb3Jtcy9hdXRv
LWZpbGwtYnV0dG9uL2lucHV0LXN0cm9uZy1wYXNzd29yZC1hdXRvLWZpbGwtYnV0dG9uLWV4cGVj
dGVkLnR4dApAQCAtNDgsNyArNDgsNyBAQCBsYXllciBhdCAoMzM3LDcwKSBzaXplIDIwNngxMiBi
YWNrZ3JvdW5kQ2xpcCBhdCAoMzM3LDcwKSBzaXplIDIwNXgxMSBjbGlwIGF0ICgzMwogICBSZW5k
ZXJCbG9jayB7RElWfSBhdCAoMCwxKSBzaXplIDIwNngxMgogbGF5ZXIgYXQgKDY1NCw1Nykgc2l6
ZSAyMHgxMiBzY3JvbGxXaWR0aCA5NCBzY3JvbGxIZWlnaHQgMjYKICAgUmVuZGVyRmxleGlibGVC
b3gge0RJVn0gYXQgKDYsMykgc2l6ZSAyMXgxMwotICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgw
LDEyKSBzaXplIDIweDE0IFtjb2xvcj0jMDAwMDAwQ0NdCisgICAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDAsMTIpIHNpemUgOTV4MTQgW2NvbG9yPSMwMDAwMDBDQ10KICAgICAgIFJlbmRlclRleHQg
eyN0ZXh0fSBhdCAoNiwwKSBzaXplIDg5eDE0CiAgICAgICAgIHRleHQgcnVuIGF0ICg2LDApIHdp
ZHRoIDg5OiAiU3Ryb25nIFBhc3N3b3JkIgogbGF5ZXIgYXQgKDY1NCw1Nykgc2l6ZSAyMHgxMgpA
QCAtNjIsNyArNjIsNyBAQCBsYXllciBhdCAoMTcsMTQ3KSBzaXplIDQ2eDEyIGJhY2tncm91bmRD
bGlwIGF0ICgxNywxNDcpIHNpemUgNDV4MTEgY2xpcCBhdCAoMTcsMQogICBSZW5kZXJCbG9jayB7
RElWfSBhdCAoMCwxKSBzaXplIDQ2eDEyCiBsYXllciBhdCAoMTc2LDEzNCkgc2l6ZSAyMHgxMiBz
Y3JvbGxXaWR0aCA5NCBzY3JvbGxIZWlnaHQgMjYKICAgUmVuZGVyRmxleGlibGVCb3gge0RJVn0g
YXQgKDYsNDcpIHNpemUgMjF4MTMKLSAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwxMikgc2l6
ZSAyMHgxNCBbY29sb3I9IzAwMDAwMENDXQorICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDEy
KSBzaXplIDk1eDE0IFtjb2xvcj0jMDAwMDAwQ0NdCiAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0g
YXQgKDYsMCkgc2l6ZSA4OXgxNAogICAgICAgICB0ZXh0IHJ1biBhdCAoNiwwKSB3aWR0aCA4OTog
IlN0cm9uZyBQYXNzd29yZCIKIGxheWVyIGF0ICgxNzYsMTM0KSBzaXplIDIweDEyCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9mb3Jtcy9hdXRvLWZpbGwtYnV0dG9u
L2lucHV0LXN0cm9uZy1wYXNzd29yZC1hdXRvLWZpbGwtYnV0dG9uLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2F1dG8tZmlsbC1idXR0b24vaW5wdXQt
c3Ryb25nLXBhc3N3b3JkLWF1dG8tZmlsbC1idXR0b24tZXhwZWN0ZWQudHh0CmluZGV4IDQxM2Ji
ZDUwMjFiMzZlNmZiMjg3ZTU4MjhjMTc0ZTliMDkyMjdlN2QuLmQ1ODliZjQ1NDBiMzM3Nzk3YmVk
ZWUzOWRjOGI1OTUwY2NmY2IzNzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9mYXN0L2Zvcm1zL2F1dG8tZmlsbC1idXR0b24vaW5wdXQtc3Ryb25nLXBhc3N3b3JkLWF1dG8t
ZmlsbC1idXR0b24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9m
YXN0L2Zvcm1zL2F1dG8tZmlsbC1idXR0b24vaW5wdXQtc3Ryb25nLXBhc3N3b3JkLWF1dG8tZmls
bC1idXR0b24tZXhwZWN0ZWQudHh0CkBAIC00OCw3ICs0OCw3IEBAIGxheWVyIGF0ICgzNDMsNjgp
IHNpemUgMjA2eDEzCiAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgMjA2eDEzCiBs
YXllciBhdCAoNjUzLDU1KSBzaXplIDIweDEzIHNjcm9sbFdpZHRoIDk0IHNjcm9sbEhlaWdodCAy
NgogICBSZW5kZXJGbGV4aWJsZUJveCB7RElWfSBhdCAoMywzKSBzaXplIDIweDEzCi0gICAgUmVu
ZGVyQmxvY2sge0RJVn0gYXQgKDAsMTMpIHNpemUgMjB4MTMgW2NvbG9yPSMwMDAwMDBDQ10KKyAg
ICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwxMykgc2l6ZSA5NXgxMyBbY29sb3I9IzAwMDAwMEND
XQogICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICg2LDApIHNpemUgODl4MTMKICAgICAgICAg
dGV4dCBydW4gYXQgKDYsMCkgd2lkdGggODk6ICJTdHJvbmcgUGFzc3dvcmQiCiBsYXllciBhdCAo
NjUzLDU1KSBzaXplIDIweDEzCkBAIC02Miw3ICs2Miw3IEBAIGxheWVyIGF0ICgxMywxNDYpIHNp
emUgNTh4MTMKICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDMpIHNpemUgNTh4MTQKIGxheWVy
IGF0ICgxNzcsMTMzKSBzaXplIDIweDEzIHNjcm9sbFdpZHRoIDk0IHNjcm9sbEhlaWdodCAyNgog
ICBSZW5kZXJGbGV4aWJsZUJveCB7RElWfSBhdCAoMyw0Nikgc2l6ZSAyMHgxNAotICAgIFJlbmRl
ckJsb2NrIHtESVZ9IGF0ICgwLDEzKSBzaXplIDIweDEzIFtjb2xvcj0jMDAwMDAwQ0NdCisgICAg
UmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMTMpIHNpemUgOTV4MTMgW2NvbG9yPSMwMDAwMDBDQ10K
ICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoNiwwKSBzaXplIDg5eDEzCiAgICAgICAgIHRl
eHQgcnVuIGF0ICg2LDApIHdpZHRoIDg5OiAiU3Ryb25nIFBhc3N3b3JkIgogbGF5ZXIgYXQgKDE3
NywxMzMpIHNpemUgMjB4MTMK
</data>
<flag name="review"
          id="423117"
          type_id="1"
          status="+"
          setter="dbates"
    />
          </attachment>
      

    </bug>

</bugzilla>