<?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>221253</bug_id>
          
          <creation_ts>2021-02-02 05:18:51 -0800</creation_ts>
          <short_desc>The layout of SVGImage should force the layout for its clients</short_desc>
          <delta_ts>2021-03-03 12:38:04 -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>Safari 14</version>
          <rep_platform>Mac (Intel)</rep_platform>
          <op_sys>Other</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=222679</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="andrei">andrei.moskalev</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>jonlee</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>pdr</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1724620</commentid>
    <comment_count>0</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-02 05:18:51 -0800</bug_when>
    <thetext>Initialy Safari 14.0.3 doesn&apos;t render image added by background-image property which use decoded base64 svg. 
If try set and unset background image from devtools than image showing.
If run script below image showing.
&lt;script&gt; 
document.querySelector(&apos;selector&apos;).style.setProperty(&apos;display&apos;, &apos;none&apos;);
setTimeout(()=&gt;document.querySelector(&apos;selector&apos;).style.setProperty(&apos;display&apos;, &apos;block&apos;), 0);
&lt;/script&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724980</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-02 18:15:44 -0800</bug_when>
    <thetext>Thank you for the report!

Could you please attach a reduced test case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725026</commentid>
    <comment_count>2</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-02 22:15:56 -0800</bug_when>
    <thetext>html:
&lt;div class=&quot;cf-single-answer&quot;&gt;
&lt;div class=&quot;cf-single-answer__text&quot;&gt;asd&lt;/div&gt;
&lt;/div&gt;
css:
.cf-single-answer {
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg width=&apos;24&apos; height=&apos;24&apos; xmlns=&apos;http://www.w3.org/2000/svg&apos;%3E%3Ccircle cx=&apos;12&apos; cy=&apos;12&apos; r=&apos;10&apos; stroke=&apos;rgba(0, 0, 0, 0.54)&apos; stroke-width=&apos;2&apos; fill=&apos;none&apos;/%3E%3C/svg%3E);
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: left top;
    padding-left: 40px;
    line-height: 24px;
    min-height: 24px;
    cursor: pointer;
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725028</commentid>
    <comment_count>3</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-02 22:18:17 -0800</bug_when>
    <thetext>I think it is doable but the you have to be careful with encoding the angle brackets and the equations or the apostrophes in the Data URI string. See the attached working test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725029</commentid>
    <comment_count>4</comment_count>
      <attachid>419108</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-02 22:18:35 -0800</bug_when>
    <thetext>Created attachment 419108
working test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725032</commentid>
    <comment_count>5</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-02 22:23:22 -0800</bug_when>
    <thetext>(In reply to Said Abou-Hallawa from comment #3)
&gt; I think it is doable but the you have to be careful with encoding the angle
&gt; brackets and the equations or the apostrophes in the Data URI string. See
&gt; the attached working test case.

I understand. But in Chrome, Firefox, Edge amd IE11 workaround with decoding svg is working clean.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725033</commentid>
    <comment_count>6</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-02 22:24:32 -0800</bug_when>
    <thetext>

(In reply to Said Abou-Hallawa from comment #4)
&gt; Created attachment 419108 [details]
&gt; working test case

Repro on Safari 15.0 on Catalina, and Safari 14.0 on Mojave, so seems to affect most versions of Safari.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725034</commentid>
    <comment_count>7</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-02 22:25:48 -0800</bug_when>
    <thetext>Please attach the whole non working test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725035</commentid>
    <comment_count>8</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-02 22:27:20 -0800</bug_when>
    <thetext>(In reply to Said Abou-Hallawa from comment #7)
&gt; Please attach the whole non working test case.

i have attached above</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725037</commentid>
    <comment_count>9</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-02 22:35:55 -0800</bug_when>
    <thetext>Please attach the whole test case as a file which includes the css, the html document and the javascript. Click the &quot;Add an attachment&quot; above and attach it as an HTML file.

Also the background-image above:

background-image: url(data:image/svg+xml;charset=utf8,%3Csvg width=&apos;24&apos; height=&apos;24&apos; xmlns=&apos;http://www.w3.org/2000/svg&apos;%3E%3Ccircle cx=&apos;12&apos; cy=&apos;12&apos; r=&apos;10&apos; stroke=&apos;rgba(0, 0, 0, 0.54)&apos; stroke-width=&apos;2&apos; fill=&apos;none&apos;/%3E%3C/svg%3E);

is not base54 encoded data url as indicated in the title.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725039</commentid>
    <comment_count>10</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-02 22:41:19 -0800</bug_when>
    <thetext>(In reply to Said Abou-Hallawa from comment #9)
&gt; Please attach the whole test case as a file which includes the css, the html
&gt; document and the javascript. Click the &quot;Add an attachment&quot; above and attach
&gt; it as an HTML file.
&gt; 
&gt; Also the background-image above:
&gt; 
&gt; background-image: url(data:image/svg+xml;charset=utf8,%3Csvg width=&apos;24&apos;
&gt; height=&apos;24&apos; xmlns=&apos;http://www.w3.org/2000/svg&apos;%3E%3Ccircle cx=&apos;12&apos; cy=&apos;12&apos;
&gt; r=&apos;10&apos; stroke=&apos;rgba(0, 0, 0, 0.54)&apos; stroke-width=&apos;2&apos;
&gt; fill=&apos;none&apos;/%3E%3C/svg%3E);
&gt; 
&gt; is not base54 encoded data url as indicated in the title.

Sorry. Renamed it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725559</commentid>
    <comment_count>11</comment_count>
      <attachid>419261</attachid>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-04 02:01:42 -0800</bug_when>
    <thetext>Created attachment 419261
Clean Test Case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725560</commentid>
    <comment_count>12</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-04 02:06:27 -0800</bug_when>
    <thetext>The issue can be connected with background-repeat property.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725668</commentid>
    <comment_count>13</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-04 09:41:51 -0800</bug_when>
    <thetext>I can reproduce.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725669</commentid>
    <comment_count>14</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-04 09:42:16 -0800</bug_when>
    <thetext>There&apos;s some caching thing going on. With the clean test case, the circle is missing on first load, but appears on reloading.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727011</commentid>
    <comment_count>15</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-09 05:19:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/74138641&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730753</commentid>
    <comment_count>16</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-17 23:18:16 -0800</bug_when>
    <thetext>This a regression of r257840.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733063</commentid>
    <comment_count>17</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2021-02-24 13:43:35 -0800</bug_when>
    <thetext>Andrei, which website is affected by this bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733267</commentid>
    <comment_count>18</comment_count>
    <who name="andrei">andrei.moskalev</who>
    <bug_when>2021-02-25 01:51:13 -0800</bug_when>
    <thetext>Jon Lee
It survey made by Confirmit. https://survey.testlab.firmglobal.net/wix/p699368492794.aspx
There doesn&apos;t displays radio buttons made by encoded svg in css</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733683</commentid>
    <comment_count>19</comment_count>
      <attachid>421617</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-25 23:32:14 -0800</bug_when>
    <thetext>Created attachment 421617
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733690</commentid>
    <comment_count>20</comment_count>
      <attachid>421622</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-26 00:46:36 -0800</bug_when>
    <thetext>Created attachment 421622
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733707</commentid>
    <comment_count>21</comment_count>
      <attachid>421627</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-26 02:17:43 -0800</bug_when>
    <thetext>Created attachment 421627
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733708</commentid>
    <comment_count>22</comment_count>
      <attachid>421628</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-26 02:20:25 -0800</bug_when>
    <thetext>Created attachment 421628
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733763</commentid>
    <comment_count>23</comment_count>
      <attachid>421646</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-02-26 08:05:24 -0800</bug_when>
    <thetext>Created attachment 421646
alternative approach

FWIW, here is a patch I made for this bug earlier. The idea is to let the first paint triggered by a resource load to always happen, even if the size has been computed to zero. It is bit hacky (but so is rest of this code). Adding here in case it is helpful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733885</commentid>
    <comment_count>24</comment_count>
      <attachid>421628</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-26 11:24:29 -0800</bug_when>
    <thetext>Comment on attachment 421628
Patch

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

&gt; Source/WebCore/rendering/RenderBox.cpp:1818
&gt; +    if (image &amp;&amp; WTF::holds_alternative&lt;CachedImage*&gt;(*image) &amp;&amp; WTF::get&lt;CachedImage*&gt;(*image)-&gt;hasSVGImage())
&gt; +        setNeedsLayout();

It seems wrong to trigger layout for what might just be a CSS image change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733920</commentid>
    <comment_count>25</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-26 12:19:15 -0800</bug_when>
    <thetext>(In reply to Antti Koivisto from comment #23)
&gt; Created attachment 421646 [details]
&gt; alternative approach
&gt; 
&gt; FWIW, here is a patch I made for this bug earlier. The idea is to let the
&gt; first paint triggered by a resource load to always happen, even if the size
&gt; has been computed to zero. It is bit hacky (but so is rest of this code).
&gt; Adding here in case it is helpful.

Your approach seems to be better. But this function 

bool canRender(...) { return ... &amp;&amp; (m_inFinishLoading || !imageSizeForRenderer(...).isEmpty()); }

Became confusing because I would expect the opposite: canRender() should be true only after loading is finished and there is something to display. Something like:

bool canRender(...) { return ... &amp;&amp; !m_inFinishLoading &amp;&amp; !imageSizeForRenderer(...).isEmpty(); }

I will refine this approach a little to force calculateBackgroundImageGeometry() when RenderBox::imageChanged() is called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733921</commentid>
    <comment_count>26</comment_count>
      <attachid>421692</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-26 12:20:15 -0800</bug_when>
    <thetext>Created attachment 421692
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733928</commentid>
    <comment_count>27</comment_count>
      <attachid>421692</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-02-26 12:24:25 -0800</bug_when>
    <thetext>Comment on attachment 421692
Patch

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

&gt; Source/WebCore/loader/cache/CachedImage.cpp:587
&gt; +    setLoading(false);

CachedResource::finishLoading() calls setLoading(false) but we need it here to let the image clients know that the image is completely loaded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734453</commentid>
    <comment_count>28</comment_count>
      <attachid>421692</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-03-01 09:34:52 -0800</bug_when>
    <thetext>Comment on attachment 421692
Patch

Can we write a layout test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734578</commentid>
    <comment_count>29</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-03-01 13:26:08 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #28)
&gt; Comment on attachment 421692 [details]
&gt; Patch
&gt; 
&gt; Can we write a layout test?

I am not able to get the bug to repro with run-webkit-tests. In fact I can&apos;t repro this bug with mini browser at all. I can only repro the bug on Safari with external http server. I can&apos;t repro it on Safari with local page or with localhost.

I am referring to the attached test case &quot;Clean Test Case&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734599</commentid>
    <comment_count>30</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2021-03-01 14:04:06 -0800</bug_when>
    <thetext>(In reply to Said Abou-Hallawa from comment #29)
&gt; (In reply to Simon Fraser (smfr) from comment #28)
&gt; &gt; Comment on attachment 421692 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; Can we write a layout test?
&gt; 
&gt; I am not able to get the bug to repro with run-webkit-tests. In fact I can&apos;t
&gt; repro this bug with mini browser at all. I can only repro the bug on Safari
&gt; with external http server. I can&apos;t repro it on Safari with local page or
&gt; with localhost.
&gt; 
&gt; I am referring to the attached test case &quot;Clean Test Case&quot;.
Not even with the test cases I attached to the radar? I used MiniBrowser to debug them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734673</commentid>
    <comment_count>31</comment_count>
      <attachid>421884</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-03-01 16:18:02 -0800</bug_when>
    <thetext>Created attachment 421884
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734674</commentid>
    <comment_count>32</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-03-01 16:22:01 -0800</bug_when>
    <thetext>(In reply to zalan from comment #30)
&gt; (In reply to Said Abou-Hallawa from comment #29)
&gt; &gt; (In reply to Simon Fraser (smfr) from comment #28)
&gt; &gt; &gt; Comment on attachment 421692 [details]
&gt; &gt; &gt; Patch
&gt; &gt; &gt; 
&gt; &gt; &gt; Can we write a layout test?
&gt; &gt; 
&gt; &gt; I am not able to get the bug to repro with run-webkit-tests. In fact I can&apos;t
&gt; &gt; repro this bug with mini browser at all. I can only repro the bug on Safari
&gt; &gt; with external http server. I can&apos;t repro it on Safari with local page or
&gt; &gt; with localhost.
&gt; &gt; 
&gt; &gt; I am referring to the attached test case &quot;Clean Test Case&quot;.
&gt; Not even with the test cases I attached to the radar? I used MiniBrowser to
&gt; debug them.

You are right. Your test case shows the bug in mini-browser. And using run-webkit-tests, causes the following assertion to fire:

ASSERTION FAILED: !image-&gt;size().isEmpty()
svg/graphics/SVGImageCache.cpp(81) : WebCore::Image *WebCore::SVGImageCache::imageForRenderer(const WebCore::RenderObject *) const
1   0x2a9426bc9 WTFCrash
2   0x2886b00bb WTFCrashWithInfo(int, char const*, char const*, int)
3   0x28d47559d WebCore::SVGImageCache::imageForRenderer(WebCore::RenderObject const*) const
4   0x28c2b3ea3 WebCore::CachedImage::imageForRenderer(WebCore::RenderObject const*)
5   0x28c2b6650 WebCore::CachedImage::currentFrameKnownToBeOpaque(WebCore::RenderElement const*)
6   0x28cf85277 WebCore::StyleCachedImage::knownToBeOpaque(WebCore::RenderElement const&amp;) const
7   0x28cf463ed WebCore::FillLayer::hasOpaqueImage(WebCore::RenderElement const&amp;) const
8   0x28cc80de4 WebCore::RenderBox::paintFillLayers(WebCore::PaintInfo const&amp;, WebCore::Color const&amp;, WebCore::FillLayer const&amp;, WebCore::LayoutRect const&amp;, WebCore::BackgroundBleedAvoidance, WebCore::CompositeOperator, WebCore::RenderElement*)
9   0x28cc8447a WebCore::RenderBox::paintBackground(WebCore::PaintInfo const&amp;, WebCore::LayoutRect const&amp;, WebCore::BackgroundBleedAvoidance)
10  0x28cc81b3f WebCore::RenderBox::paintBoxDecorations(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
11  0x28cc1b56d WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
12  0x28cc1a8a3 WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
13  0x28cc1b06c WebCore::RenderBlock::paintChild(WebCore::RenderBox&amp;, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool, WebCore::RenderBlock::PaintBlockType)
14  0x28cc1ac81 WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool)
15  0x28cc1abcf WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
16  0x28cc1be25 WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
17  0x28cc1a8a3 WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
18  0x28cc1b06c WebCore::RenderBlock::paintChild(WebCore::RenderBox&amp;, WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool, WebCore::RenderBlock::PaintBlockType)
19  0x28cc1ac81 WebCore::RenderBlock::paintChildren(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;, WebCore::PaintInfo&amp;, bool)
20  0x28cc1abcf WebCore::RenderBlock::paintContents(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
21  0x28cc1be25 WebCore::RenderBlock::paintObject(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
22  0x28cc1a8a3 WebCore::RenderBlock::paint(WebCore::PaintInfo&amp;, WebCore::LayoutPoint const&amp;)
23  0x28cd6d8cc WebCore::RenderLayer::paintForegroundForFragmentsWithPhase(WebCore::PaintPhase, WTF::Vector&lt;WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt; const&amp;, WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::PaintBehavior&gt;, WebCore::RenderObject*)
24  0x28cd6b1cc WebCore::RenderLayer::paintForegroundForFragments(WTF::Vector&lt;WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt; const&amp;, WebCore::GraphicsContext&amp;, WebCore::GraphicsContext&amp;, WebCore::LayoutRect const&amp;, bool, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::PaintBehavior&gt;, WebCore::RenderObject*)
25  0x28cd66db8 WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;)
26  0x28cd6620d WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;)
27  0x28cd650ba WebCore::RenderLayer::paintLayerWithEffects(WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;)
28  0x28cd64360 WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;)
29  0x28cd6ac68 WebCore::RenderLayer::paintList(WebCore::RenderLayer::LayerList, WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;)
30  0x28cd66ee0 WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext&amp;, WebCore::RenderLayer::LayerPaintingInfo const&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;)
31  0x28cd8be6d WebCore::RenderLayerBacking::paintIntoLayer(WebCore::GraphicsLayer const*, WebCore::GraphicsContext&amp;, WebCore::IntRect const&amp;, WTF::OptionSet&lt;WebCore::PaintBehavior&gt;, WebCore::EventRegionContext*)::$_24::operator()(WebCore::RenderLayer&amp;, WTF::OptionSet&lt;WebCore::RenderLayer::PaintLayerFlag&gt;) const</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735063</commentid>
    <comment_count>33</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-02 15:22:25 -0800</bug_when>
    <thetext>Committed r273764: &lt;https://commits.webkit.org/r273764&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 421884.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735102</commentid>
    <comment_count>34</comment_count>
      <attachid>421884</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-03-02 16:10:33 -0800</bug_when>
    <thetext>Comment on attachment 421884
Patch

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

&gt; LayoutTests/fast/css/background-svg-image-loading.html:19
&gt; +        &lt;div class=&quot;line&quot;&gt;should have a visible background image&lt;/div&gt;
&gt; +        &lt;div class=&quot;line&quot;&gt;should have a visible background image&lt;/div&gt;
&gt; +        &lt;div class=&quot;line&quot;&gt;should have a visible background image&lt;/div&gt;
&gt; +        &lt;div class=&quot;line&quot;&gt;should have a visible background image&lt;/div&gt;

Should these have had different sizes?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735140</commentid>
    <comment_count>35</comment_count>
      <attachid>421884</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-03-02 17:25:59 -0800</bug_when>
    <thetext>Comment on attachment 421884
Patch

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

&gt;&gt; LayoutTests/fast/css/background-svg-image-loading.html:19
&gt;&gt; +        &lt;div class=&quot;line&quot;&gt;should have a visible background image&lt;/div&gt;
&gt; 
&gt; Should these have had different sizes?

Do you want to have different SVGImageForContainers in SVGImageCache one for each client (&lt;div&gt; element)? yes I think this make sense. I will make this change.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>419108</attachid>
            <date>2021-02-02 22:18:35 -0800</date>
            <delta_ts>2021-02-02 22:18:35 -0800</delta_ts>
            <desc>working test case</desc>
            <filename>test017.html</filename>
            <type>text/html</type>
            <size>2353</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PHN0eWxlPgogICAgLmJveCB7CiAgICAgICAgd2lkdGg6IDEwMHB4OwogICAgICAgIGhlaWdodDog
MTAwcHg7CiAgICB9CgogICAgLmRhdGEtdXJpIHsKICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2Rh
dGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LFwKICAgICAgICAgICAgPHN2ZyB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTAwcHgiIHdpZHRoPSIxMDBweCI+XAogICAgICAg
ICAgICAgICAgPHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0iZ3JlZW4iLz5c
CiAgICAgICAgICAgIDwvc3ZnPicpOwogICAgfQoKICAgIC5iYXNlNjQgewogICAgICAgIGJhY2tn
cm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxcCiAgICAgICAgICAg
IFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJR2hs
YVdkb2REMGlNVEF3Y0hnaVwKICAgICAgICAgICAgSUhkcFpIUm9QU0l4TURCd2VDSStDaUFnSUNB
OGNtVmpkQ0IzYVdSMGFEMGlNVEF3SlNJZ2FHVnBaMmgwUFNJeE1EQWxJaUJtXAogICAgICAgICAg
ICBhV3hzUFNKbmNtVmxiaUl2UGdvOEwzTjJaejQ9Jyk7CiAgICB9CgogICAgLmV4YW1wbGUgewog
ICAgICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgICAgYmFja2dyb3VuZDogI2VlZTsKICAgICAgICBi
b3JkZXI6IDFweCBzb2xpZCAjY2NjOwogICAgICAgIG1hcmdpbjogMjBweDsKICAgIH0KCiAgICBo
MiB7CiAgICAgICAgbWFyZ2luOiAwOwogICAgfQo8L3N0eWxlPgo8Ym9keT4KICAgIDxkaXYgY2xh
c3M9ImV4YW1wbGUiPgogICAgICAgIDxoMj5EYXRhIFVSSSBpbiBiYWNrZ3JvdW5kLWltYWdlPC9o
Mj4KICAgICAgICA8ZGl2IGNsYXNzPSJib3ggZGF0YS11cmkiPjwvZGl2PgogICAgPC9kaXY+Cgog
ICAgPGRpdiBjbGFzcz0iZXhhbXBsZSI+CiAgICAgICAgPGgyPkJhc2U2NCBEYXRhIFVSSSBpbiBi
YWNrZ3JvdW5kLWltYWdlPC9oMj4KICAgICAgICA8ZGl2IGNsYXNzPSJib3ggYmFzZTY0Ij48L2Rp
dj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImV4YW1wbGUiPgogICAgICAgIDxoMj5EeW5h
bWljIERhdGEgVVJJIGluIGJhY2tncm91bmQtaW1hZ2U8L2gyPgogICAgICAgIDxidXR0b24gb25j
bGljaz0ic2V0RGF0YVVSSUltYWdlKCkiPlNldCBiYWNrZ3JvdW5kIGltYWdlPC9idXR0b24+CiAg
ICAgICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iZHluYW1pYy1kYXRhLXVyaSI+PC9kaXY+CiAgICA8
L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJleGFtcGxlIj4KICAgICAgICA8aDI+RHluYW1pYyBCYXNl
NjQgRGF0YSBVUkkgaW4gYmFja2dyb3VuZC1pbWFnZTwvaDI+CiAgICAgICAgPGJ1dHRvbiBvbmNs
aWNrPSJzZXRCYXNlNjREYXRhVVJJSW1hZ2UoKSI+U2V0IGJhY2tncm91bmQgaW1hZ2U8L2J1dHRv
bj4KICAgICAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJkeW5hbWljLWJhc2U2NCI+PC9kaXY+CiAg
ICA8L2Rpdj4KCiAgICA8c2NyaXB0PgogICAgICAgIGZ1bmN0aW9uIHNldERhdGFVUklJbWFnZSgp
IHsKICAgICAgICAgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZHlu
YW1pYy1kYXRhLXVyaSIpOwogICAgICAgICAgICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRJbWFn
ZSA9IGB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCxgCiAgICAgICAgICAgICAgICArIGAlM0Nzdmcg
eG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAwJyBoZWlnaHQ9JzEw
MCcgJTNFYAogICAgICAgICAgICAgICAgKyAgIGAlM0NyZWN0IHdpZHRoPScxMDAlJyBoZWlnaHQ9
JzEwMCUnIGZpbGw9J2JsdWUnLyUzRWAKICAgICAgICAgICAgICAgICsgYCUzQy9zdmclM0UiKWA7
CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBzZXRCYXNlNjREYXRhVVJJSW1hZ2UoKSB7CiAg
ICAgICAgICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2R5bmFtaWMt
YmFzZTY0Iik7CiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuYmFja2dyb3VuZEltYWdlID0gYHVy
bCgiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxgCiAgICAgICAgICAgICAgICArIGBQSE4yWnlC
NGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUdobGFXZG9kRDBp
TVRBd2NIZ2lgCiAgICAgICAgICAgICAgICArIGBJSGRwWkhSb1BTSXhNREJ3ZUNJK0NpQWdJQ0E4
Y21WamRDQjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TURBbElpQm1gCiAgICAgICAgICAg
ICAgICArIGBhV3hzUFNKaWJIVmxJaTgrQ2p3dmMzWm5QZz09IilgOwogICAgICAgIH0KICAgIDwv
c2NyaXB0Pgo8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>419261</attachid>
            <date>2021-02-04 02:01:42 -0800</date>
            <delta_ts>2021-02-04 02:01:42 -0800</delta_ts>
            <desc>Clean Test Case</desc>
            <filename>index.html</filename>
            <type>text/html</type>
            <size>737</size>
            <attacher name="andrei">andrei.moskalev</attacher>
            
              <data encoding="base64">PCFkb2N0eXBlIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQo8aGVhZD4NCiAgICA8bWV0YSBjaGFy
c2V0PSJVVEYtOCI+DQogICAgPHRpdGxlPkRvY3VtZW50PC90aXRsZT4NCjwvaGVhZD4NCjxib2R5
Pg0KPHN0eWxlPg0KICAgIC5jZi1zaW5nbGUtYW5zd2VyIHsNCiAgICAgICAgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB3aWR0aD0n
MjQnIGhlaWdodD0nMjQnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0Nj
aXJjbGUgY3g9JzEyJyBjeT0nMTInIHI9JzEwJyBzdHJva2U9J3JnYmEoMCwgMCwgMCwgMC41NCkn
IHN0cm9rZS13aWR0aD0nMicgZmlsbD0nbm9uZScvJTNFJTNDL3N2ZyUzRSIpOw0KICAgICAgICBi
YWNrZ3JvdW5kLXNpemU6IDI0cHg7DQogICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBl
YXQ7DQogICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgdG9wOw0KICAgICAgICBwYWRk
aW5nLWxlZnQ6IDQwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4Ow0KICAgICAgICBtaW4t
aGVpZ2h0OiAyNHB4Ow0KICAgICAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgfQ0KPC9zdHlsZT4N
CjxkaXYgY2xhc3M9ImNmLXNpbmdsZS1hbnN3ZXIiPg0KICAgIDxkaXYgY2xhc3M9ImNmLXNpbmds
ZS1hbnN3ZXJfX3RleHQiPmFzZDwvZGl2Pg0KPC9kaXY+DQoNCjwvYm9keT4NCjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421617</attachid>
            <date>2021-02-25 23:32:14 -0800</date>
            <delta_ts>2021-02-26 00:46:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221253-20210225233213.patch</filename>
            <type>text/plain</type>
            <size>10376</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjRjNzRhMTZhMWEwNTM1
ZGRhOWVkMzFkOTI4OTUyMzY5N2ZhMjI2MC4uNmYzYWM5NDhmOWZiZjcyNTYzZjUxODI5OGFkOGQ5
YmQ0OGJjYWRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAyLTI1ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2Yg
U1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRoZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgYml0bWFwIGltYWdlLCB0aGUgaW50cmluc2lj
IHNpemUgb2YgU1ZHSW1hZ2UgY2FuIG9ubHkgYmUga25vd24KKyAgICAgICAgYWZ0ZXIgcnVubmlu
ZyBpdHMgbGF5b3V0LiBCZWNhdXNlIFNWR0ltYWdlIGNhbiBiZSB1c2VkIGJ5IG11bHRpcGxlIGNs
aWVudHMsCisgICAgICAgIENhY2hlZEltYWdlIG1haW50YWlucyBhbiBTVkdJbWFnZUNhY2hlIHdo
aWNoIG1hcHMgYSBjbGllbnQgdG8gYW4KKyAgICAgICAgU1ZHSW1hZ2VGb3JDb250YWluZXIuIFNW
R0ltYWdlRm9yQ29udGFpbmVyIGlzIGp1c3QgYSB3cmFwcGVyIG9mIFNWR0ltYWdlCisgICAgICAg
IHdpdGggdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIEJlY2F1c2Ugd2UgbWF5IHNl
dCBhbiBlbnRyeSBmb3IKKyAgICAgICAgdGhlIHJlbmRlcmVyIGluIFNWR0ltYWdlQ2FjaGUgZWFy
bHkgYmVmb3JlIHJ1bm5pbmcgYSBsYXlvdXQgZm9yIFNWR0ltYWdlCisgICAgICAgIGFuZCBiZWNh
dXNlIHRoZSByZW5kZXJlciBpbnRyaW5zaWMgc2l6ZSBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMg
c2l6ZSBvZiAKKyAgICAgICAgU1ZHSW1hZ2UsIFNWR0ltYWdlRm9yQ29udGFpbmVyIG1heSBoYXZl
IGFuIGVtcHR5IGludHJpbnNpYyBzaXplLgorCisgICAgICAgIFNvIGJhc2ljYWxseSBpdCBpcyBh
IHJhY2UgY29uZGl0aW9uOiBrbm93aW5nIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiB0aGUKKyAgICAg
ICAgY2xpZW50IGRlcGVuZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIFNWR0ltYWdlLiBBbmQg
dGhlIGludHJpbnNpYyBzaXplCisgICAgICAgIG9mIFNWR0ltYWdlRm9yQ29udGFpbmVyIGRlcGVu
ZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIFRoaXMKKyAgICAgICAgbWF5
IGxlYWQgdG8gbm90IHJlbmRlcmluZyB0aGUgY2xpZW50cyBiZWNhdXNlIHRoZWlyIHNpemVzIGFy
ZSBlbXB0eS4gVG8KKyAgICAgICAgZml4IHRoaXMgaXNzdWUgd2UgbmVlZCB0byBmb3JjZSB0aGUg
bGF5b3V0IGZvciB0aGUgY2xpZW50cyBvbmNlIHdlIGZpbmlzaAorICAgICAgICB0aGUgbGF5b3V0
IG9mIHRoZSBTVkdJbWFnZSB3aGljaCBoYXBwZW5zIGFmdGVyIHJlY2VpdmluZyBhbGwgaXRzIGRh
dGEuCisKKyAgICAgICAgKiBjc3MvQ1NTQ2FudmFzVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTQ2FudmFzVmFsdWU6OmNhbnZhc0NoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Q2FudmFzVmFsdWU6OmNhbnZhc1Jlc2l6ZWQpOgorICAgICAgICAqIGNzcy9DU1NDcm9zc2ZhZGVW
YWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NDcm9zc2ZhZGVWYWx1ZTo6Y3Jvc3NmYWRl
Q2hhbmdlZCk6CisgICAgICAgICogY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTRmlsdGVySW1hZ2VWYWx1ZTo6ZmlsdGVySW1hZ2VDaGFuZ2VkKToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveDo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNv
dXJjZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2VSZXNvdXJjZTo6aW1hZ2VQdHIg
Y29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyT2JqZWN0OjppbWFnZUNoYW5nZWQpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0
eWxlR2VuZXJhdGVkSW1hZ2UuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFn
ZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVNdWx0aUltYWdlOjpkYXRhIGNvbnN0KToKKwogMjAyMS0wMi0y
NSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlkQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVIFBy
b2Nlc3NdIFN0cm9rZSBhbmQgZmlsbCBTdGF0ZUNoYW5nZUZsYWdzIHNob3VsZCBiZSBzZXQgZXhj
bHVzaXZlbHkgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2FudmFzVmFsdWUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NhbnZhc1ZhbHVlLmNwcAppbmRleCBmN2ZiMzcy
ZWY2YjAxNzJiZTI5NmI5Njg1NTU3NTk5NjI2ZmFiNWYyLi5jNTBkNmFiNThjMDg2MGY4ZDRlNTc5
YmZkNTE3OGU4YTczNGZiNjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2Fu
dmFzVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5jcHAK
QEAgLTQ1LDEzICs0NSwxMyBAQCB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNDaGFuZ2VkKEhU
TUxDYW52YXNFbGVtZW50JiwgY29uc3QgRmxvYXRSZWN0JiBjaGFuZ2VkUgogewogICAgIEludFJl
Y3QgaW1hZ2VDaGFuZ2VSZWN0ID0gZW5jbG9zaW5nSW50UmVjdChjaGFuZ2VkUmVjdCk7CiAgICAg
Zm9yIChhdXRvIGl0ID0gY2xpZW50cygpLmJlZ2luKCksIGVuZCA9IGNsaWVudHMoKS5lbmQoKTsg
aXQgIT0gZW5kOyArK2l0KQotICAgICAgICBpdC0+a2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSwgJmltYWdlQ2hhbmdlUmVjdCk7CisgICAgICAgIGl0
LT5rZXktPmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcyksICZpbWFnZUNoYW5nZVJl
Y3QpOwogfQogCiB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNSZXNpemVkKEhUTUxDYW52YXNF
bGVtZW50JikKIHsKICAgICBmb3IgKGF1dG8gaXQgPSBjbGllbnRzKCkuYmVnaW4oKSwgZW5kID0g
Y2xpZW50cygpLmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpCi0gICAgICAgIGl0LT5rZXktPmltYWdl
Q2hhbmdlZChzdGF0aWNfY2FzdDxXcmFwcGVkSW1hZ2VQdHI+KHRoaXMpKTsKKyAgICAgICAgaXQt
PmtleS0+aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0cih0aGlzKSk7CiB9CiAKIHZvaWQgQ1NT
Q2FudmFzVmFsdWU6OmNhbnZhc0Rlc3Ryb3llZChIVE1MQ2FudmFzRWxlbWVudCYgZWxlbWVudCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRlVmFsdWUuY3BwCmluZGV4IDllNmFiNjgwODUx
NWMwMTU0YTgwOGFiOTE1MzdjNzFlNThhZGM5ZDIuLmE3NTA0MjcyNGM2ZmJhZGQ5NDdiNTk0YmRi
NTMyNmJiNjk0MTMzNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2Zh
ZGVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmNw
cApAQCAtMTkwLDcgKzE5MCw3IEBAIGlubGluZSB2b2lkIENTU0Nyb3NzZmFkZVZhbHVlOjpjcm9z
c2ZhZGVDaGFuZ2VkKCkKICAgICBpZiAoIW1fc3ViaW1hZ2VzQXJlUmVhZHkpCiAgICAgICAgIHJl
dHVybjsKICAgICBmb3IgKGF1dG8mIGNsaWVudCA6IGNsaWVudHMoKSkKLSAgICAgICAgY2xpZW50
LmtleS0+aW1hZ2VDaGFuZ2VkKHRoaXMpOworICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5n
ZWQoV3JhcHBlZEltYWdlUHRyKHRoaXMpKTsKIH0KIAogYm9vbCBDU1NDcm9zc2ZhZGVWYWx1ZTo6
dHJhdmVyc2VTdWJyZXNvdXJjZXMoY29uc3QgV1RGOjpGdW5jdGlvbjxib29sIChjb25zdCBDYWNo
ZWRSZXNvdXJjZSYpPiYgaGFuZGxlcikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGaWx0ZXJJbWFnZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGaWx0
ZXJJbWFnZVZhbHVlLmNwcAppbmRleCBlNjUyZDI1MmZiODkyNjllYjE3NzU4NjA5ODM2NmM5OWQ1
ZDc2ZmRiLi4zZGFmZWRlMzk3OWVhOGY1MGJiMzhlYzFiNDk2ZDFiMGU5NThkNjQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwCkBAIC0xNDEsNyArMTQxLDcg
QEAgUmVmUHRyPEltYWdlPiBDU1NGaWx0ZXJJbWFnZVZhbHVlOjppbWFnZShSZW5kZXJFbGVtZW50
JiByZW5kZXJlciwgY29uc3QgRmxvYXRTaXoKIHZvaWQgQ1NTRmlsdGVySW1hZ2VWYWx1ZTo6Zmls
dGVySW1hZ2VDaGFuZ2VkKGNvbnN0IEludFJlY3QmKQogewogICAgIGZvciAoYXV0byYgY2xpZW50
IDogY2xpZW50cygpKQotICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSk7CisgICAgICAgIGNsaWVudC5rZXktPmltYWdlQ2hh
bmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcykpOwogfQogCiB2b2lkIENTU0ZpbHRlckltYWdlVmFs
dWU6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoU3R5bGU6OkJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0
YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA0YjdjYTIxNjNh
Yjc3YzU4MmNmMDI0NDkyNTAxNmZmNTQ2MTM2MTQzLi5mNDkxOWRhMTgyNzVhNzA3MTIxZjQ3OTQ4
MjI0ZjgyZDgwOTVhMGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApA
QCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogCiAjaW5jbHVkZSAiQ1NT
Rm9udFNlbGVjdG9yLmgiCisjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJDb250
cm9sU3RhdGVzLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFZGl0aW5nLmgi
CkBAIC0xODA3LDYgKzE4MDgsMTMgQEAgdm9pZCBSZW5kZXJCb3g6OmltYWdlQ2hhbmdlZChXcmFw
cGVkSW1hZ2VQdHIgaW1hZ2UsIGNvbnN0IEludFJlY3QqKQogICAgIGlmICghcGFyZW50KCkpCiAg
ICAgICAgIHJldHVybjsKIAorICAgIGlmIChDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UgPSBpbWFn
ZSA/ICpXVEY6OmdldF9pZjxDYWNoZWRJbWFnZSo+KCppbWFnZSkgOiBudWxscHRyKSB7CisgICAg
ICAgIGlmIChjYWNoZWRJbWFnZS0+aGFzU1ZHSW1hZ2UoKSkgeworICAgICAgICAgICAgc2V0TmVl
ZHNMYXlvdXQoKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0KKwogICAg
IGlmICgoc3R5bGUoKS5ib3JkZXJJbWFnZSgpLmltYWdlKCkgJiYgc3R5bGUoKS5ib3JkZXJJbWFn
ZSgpLmltYWdlKCktPmRhdGEoKSA9PSBpbWFnZSkgfHwKICAgICAgICAgKHN0eWxlKCkubWFza0Jv
eEltYWdlKCkuaW1hZ2UoKSAmJiBzdHlsZSgpLm1hc2tCb3hJbWFnZSgpLmltYWdlKCktPmRhdGEo
KSA9PSBpbWFnZSkpIHsKICAgICAgICAgcmVwYWludCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlUmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJJbWFnZVJlc291cmNlLmgKaW5kZXggZWUxNmJmYTZhYmY3MTBmODM1MTRl
ZjcyYjQxYTdmNjYxMTRmMDJiNy4uNjZiZDI4MDkwNjE4ZjAwMGNiZWJmMjMyMmQ2MDljYjg2YTlm
MWQwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlUmVz
b3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNvdXJj
ZS5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICBpbmxpbmUgTGF5b3V0U2l6ZSBpbWFn
ZVNpemUoZmxvYXQgbXVsdGlwbGllcikgY29uc3QgeyByZXR1cm4gaW1hZ2VTaXplKG11bHRpcGxp
ZXIsIENhY2hlZEltYWdlOjpVc2VkU2l6ZSk7IH0KICAgICBpbmxpbmUgTGF5b3V0U2l6ZSBpbnRy
aW5zaWNTaXplKGZsb2F0IG11bHRpcGxpZXIpIGNvbnN0IHsgcmV0dXJuIGltYWdlU2l6ZShtdWx0
aXBsaWVyLCBDYWNoZWRJbWFnZTo6SW50cmluc2ljU2l6ZSk7IH0KIAotICAgIHZpcnR1YWwgV3Jh
cHBlZEltYWdlUHRyIGltYWdlUHRyKCkgY29uc3QgeyByZXR1cm4gbV9jYWNoZWRJbWFnZS5nZXQo
KTsgfQorICAgIHZpcnR1YWwgV3JhcHBlZEltYWdlUHRyIGltYWdlUHRyKCkgY29uc3QgeyByZXR1
cm4gY2FjaGVkSW1hZ2UoKSA/IFdyYXBwZWRJbWFnZVB0cihjYWNoZWRJbWFnZSgpKSA6IFdURjo6
bnVsbG9wdDsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVyRWxlbWVudCogcmVuZGVyZXIoKSBj
b25zdCB7IHJldHVybiBtX3JlbmRlcmVyLmdldCgpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IDA1NjUyNjdkOGE3ZDIyNDg0YWNlM2NhMTEzMzE3NGQ0
YzY1NzgzODQuLjhkZTVhYTQ0YzU3MjI1YTk4YjI5YjFlZGIyMGY4MjEyM2M0Mzk1OWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCkBAIC0xNjQwLDcgKzE2NDAs
NyBAQCB2b2lkIFJlbmRlck9iamVjdDo6YWRqdXN0UmVjdEZvck91dGxpbmVBbmRTaGFkb3coTGF5
b3V0UmVjdCYgcmVjdCkgY29uc3QKIAogdm9pZCBSZW5kZXJPYmplY3Q6OmltYWdlQ2hhbmdlZChD
YWNoZWRJbWFnZSogaW1hZ2UsIGNvbnN0IEludFJlY3QqIHJlY3QpCiB7Ci0gICAgaW1hZ2VDaGFu
Z2VkKHN0YXRpY19jYXN0PFdyYXBwZWRJbWFnZVB0cj4oaW1hZ2UpLCByZWN0KTsKKyAgICBpbWFn
ZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyKGltYWdlKSwgcmVjdCk7CiB9CiAKIFJlbmRlckJveE1v
ZGVsT2JqZWN0KiBSZW5kZXJPYmplY3Q6Om9mZnNldFBhcmVudCgpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkSW1hZ2UuaAppbmRleCA1MGVk
NzEzNTY3MmQ1OTM5MGFkMmY1Y2Y0YWEwMzkwNWU0NDU2NTE4Li5kYTllMjllZGE1MjI2YTdhOGFj
MWFiMjYxZTU3OGViYWQwZjA0Yzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmgKQEAgLTQzLDcgKzQzLDcgQEAgcHVibGljOgogCiAg
ICAgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlKCkgY29uc3QgZmluYWw7CiAKLSAgICBXcmFwcGVk
SW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fY2FjaGVkSW1hZ2UuZ2V0KCk7
IH0KKyAgICBXcmFwcGVkSW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIGNhY2hl
ZEltYWdlKCkgPyBXcmFwcGVkSW1hZ2VQdHIoY2FjaGVkSW1hZ2UoKSkgOiBXVEY6Om51bGxvcHQ7
IH0KIAogICAgIFJlZjxDU1NWYWx1ZT4gY3NzVmFsdWUoKSBjb25zdCBmaW5hbDsKICAgICAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdlbmVyYXRlZElt
YWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVHZW5lcmF0ZWRJbWFn
ZS5oCmluZGV4IDRlMWQwMmYwYWU2NDZhZGEzY2U0MWIwNzZlODc2NGY3NDMwMWMzMGEuLjY3MDNi
YWU1YWQ5ODVjZTkxYjExZTMxZDBjYjA2YWY0NjU4YWNiNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdlbmVyYXRlZEltYWdlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlR2VuZXJhdGVkSW1hZ2UuaApAQCAtMzcsMTIg
KzM3LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgU3R5bGVHZW5l
cmF0ZWRJbWFnZShXVEZNb3ZlKHZhbHVlKSkpOwogICAgIH0KIAotICAgIENTU0ltYWdlR2VuZXJh
dG9yVmFsdWUmIGltYWdlVmFsdWUoKSB7IHJldHVybiBtX2ltYWdlR2VuZXJhdG9yVmFsdWU7IH0K
KyAgICBDU1NJbWFnZUdlbmVyYXRvclZhbHVlJiBpbWFnZVZhbHVlKCkgY29uc3QgeyByZXR1cm4g
bV9pbWFnZUdlbmVyYXRvclZhbHVlOyB9CiAKIHByaXZhdGU6CiAgICAgYm9vbCBvcGVyYXRvcj09
KGNvbnN0IFN0eWxlSW1hZ2UmIG90aGVyKSBjb25zdCBmaW5hbCB7IHJldHVybiBkYXRhKCkgPT0g
b3RoZXIuZGF0YSgpOyB9CiAKLSAgICBXcmFwcGVkSW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIG1faW1hZ2VHZW5lcmF0b3JWYWx1ZS5wdHIoKTsgfQorICAgIFdyYXBwZWRJbWFn
ZVB0ciBkYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gV3JhcHBlZEltYWdlUHRyKCZpbWFnZVZh
bHVlKCkpOyB9CiAKICAgICBSZWY8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3QgZmluYWw7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUltYWdlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFnZS5oCmluZGV4IDNlZDg5
ODMxMGMzZDZlMjlkMGJiZDhiYTkyNzg0MmE2NjhkY2UwMjIuLjkzNGNkYmEzYjk5MjM1MDFkN2Vl
YTExZjE2NmJiZDY1NjI4Y2U0YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZUltYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlSW1hZ2UuaApAQCAtMzQsMTIgKzM0LDE1IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgQ2FjaGVkSW1hZ2U7CiBjbGFzcyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKK2NsYXNzIENT
U0ltYWdlR2VuZXJhdG9yVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZTsKIGNsYXNzIFJlbmRlckVsZW1l
bnQ7CiBjbGFzcyBSZW5kZXJPYmplY3Q7CitjbGFzcyBTdHlsZUNhY2hlZEltYWdlOworCiBzdHJ1
Y3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zOwogCi10eXBlZGVmIGNvbnN0IHZvaWQqIFdyYXBwZWRJ
bWFnZVB0cjsKK3VzaW5nIFdyYXBwZWRJbWFnZVB0ciA9IE9wdGlvbmFsPFZhcmlhbnQ8Q2FjaGVk
SW1hZ2UqLCBTdHlsZUNhY2hlZEltYWdlKiwgQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSo+PjsKIAog
Y2xhc3MgU3R5bGVJbWFnZSA6IHB1YmxpYyBSZWZDb3VudGVkPFN0eWxlSW1hZ2U+IHsKIHB1Ymxp
YzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRp
SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlTXVsdGlJbWFn
ZS5jcHAKaW5kZXggNzc2NjY3YzdhNjRhYjE2MDZiNzBjN2MzNmYxMWYyNzc2ZTJjMTE1MS4uNGRm
YjIzOTgwZjc3Y2ZkMWJkNjRhMzI5NzFmZjI3Mzc1MDc5Y2YwOCAxMDA3NTUKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlTXVsdGlJbWFnZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlTXVsdGlJbWFnZS5jcHAKQEAgLTc0LDcgKzc0
LDcgQEAgQ2FjaGVkSW1hZ2UqIFN0eWxlTXVsdGlJbWFnZTo6Y2FjaGVkSW1hZ2UoKSBjb25zdAog
V3JhcHBlZEltYWdlUHRyIFN0eWxlTXVsdGlJbWFnZTo6ZGF0YSgpIGNvbnN0CiB7CiAgICAgaWYg
KCFtX3NlbGVjdGVkSW1hZ2UpCi0gICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICByZXR1
cm4gV1RGOjpudWxsb3B0OwogICAgIHJldHVybiBtX3NlbGVjdGVkSW1hZ2UtPmRhdGEoKTsKIH0K
IAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421622</attachid>
            <date>2021-02-26 00:46:36 -0800</date>
            <delta_ts>2021-02-26 02:17:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221253-20210226004635.patch</filename>
            <type>text/plain</type>
            <size>10337</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjRjNzRhMTZhMWEwNTM1
ZGRhOWVkMzFkOTI4OTUyMzY5N2ZhMjI2MC4uNmYzYWM5NDhmOWZiZjcyNTYzZjUxODI5OGFkOGQ5
YmQ0OGJjYWRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAyLTI1ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2Yg
U1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRoZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgYml0bWFwIGltYWdlLCB0aGUgaW50cmluc2lj
IHNpemUgb2YgU1ZHSW1hZ2UgY2FuIG9ubHkgYmUga25vd24KKyAgICAgICAgYWZ0ZXIgcnVubmlu
ZyBpdHMgbGF5b3V0LiBCZWNhdXNlIFNWR0ltYWdlIGNhbiBiZSB1c2VkIGJ5IG11bHRpcGxlIGNs
aWVudHMsCisgICAgICAgIENhY2hlZEltYWdlIG1haW50YWlucyBhbiBTVkdJbWFnZUNhY2hlIHdo
aWNoIG1hcHMgYSBjbGllbnQgdG8gYW4KKyAgICAgICAgU1ZHSW1hZ2VGb3JDb250YWluZXIuIFNW
R0ltYWdlRm9yQ29udGFpbmVyIGlzIGp1c3QgYSB3cmFwcGVyIG9mIFNWR0ltYWdlCisgICAgICAg
IHdpdGggdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIEJlY2F1c2Ugd2UgbWF5IHNl
dCBhbiBlbnRyeSBmb3IKKyAgICAgICAgdGhlIHJlbmRlcmVyIGluIFNWR0ltYWdlQ2FjaGUgZWFy
bHkgYmVmb3JlIHJ1bm5pbmcgYSBsYXlvdXQgZm9yIFNWR0ltYWdlCisgICAgICAgIGFuZCBiZWNh
dXNlIHRoZSByZW5kZXJlciBpbnRyaW5zaWMgc2l6ZSBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMg
c2l6ZSBvZiAKKyAgICAgICAgU1ZHSW1hZ2UsIFNWR0ltYWdlRm9yQ29udGFpbmVyIG1heSBoYXZl
IGFuIGVtcHR5IGludHJpbnNpYyBzaXplLgorCisgICAgICAgIFNvIGJhc2ljYWxseSBpdCBpcyBh
IHJhY2UgY29uZGl0aW9uOiBrbm93aW5nIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiB0aGUKKyAgICAg
ICAgY2xpZW50IGRlcGVuZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIFNWR0ltYWdlLiBBbmQg
dGhlIGludHJpbnNpYyBzaXplCisgICAgICAgIG9mIFNWR0ltYWdlRm9yQ29udGFpbmVyIGRlcGVu
ZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIFRoaXMKKyAgICAgICAgbWF5
IGxlYWQgdG8gbm90IHJlbmRlcmluZyB0aGUgY2xpZW50cyBiZWNhdXNlIHRoZWlyIHNpemVzIGFy
ZSBlbXB0eS4gVG8KKyAgICAgICAgZml4IHRoaXMgaXNzdWUgd2UgbmVlZCB0byBmb3JjZSB0aGUg
bGF5b3V0IGZvciB0aGUgY2xpZW50cyBvbmNlIHdlIGZpbmlzaAorICAgICAgICB0aGUgbGF5b3V0
IG9mIHRoZSBTVkdJbWFnZSB3aGljaCBoYXBwZW5zIGFmdGVyIHJlY2VpdmluZyBhbGwgaXRzIGRh
dGEuCisKKyAgICAgICAgKiBjc3MvQ1NTQ2FudmFzVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTQ2FudmFzVmFsdWU6OmNhbnZhc0NoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Q2FudmFzVmFsdWU6OmNhbnZhc1Jlc2l6ZWQpOgorICAgICAgICAqIGNzcy9DU1NDcm9zc2ZhZGVW
YWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NDcm9zc2ZhZGVWYWx1ZTo6Y3Jvc3NmYWRl
Q2hhbmdlZCk6CisgICAgICAgICogY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTRmlsdGVySW1hZ2VWYWx1ZTo6ZmlsdGVySW1hZ2VDaGFuZ2VkKToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveDo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNv
dXJjZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2VSZXNvdXJjZTo6aW1hZ2VQdHIg
Y29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyT2JqZWN0OjppbWFnZUNoYW5nZWQpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0
eWxlR2VuZXJhdGVkSW1hZ2UuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFn
ZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVNdWx0aUltYWdlOjpkYXRhIGNvbnN0KToKKwogMjAyMS0wMi0y
NSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlkQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVIFBy
b2Nlc3NdIFN0cm9rZSBhbmQgZmlsbCBTdGF0ZUNoYW5nZUZsYWdzIHNob3VsZCBiZSBzZXQgZXhj
bHVzaXZlbHkgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2FudmFzVmFsdWUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NhbnZhc1ZhbHVlLmNwcAppbmRleCBmN2ZiMzcy
ZWY2YjAxNzJiZTI5NmI5Njg1NTU3NTk5NjI2ZmFiNWYyLi5jNTBkNmFiNThjMDg2MGY4ZDRlNTc5
YmZkNTE3OGU4YTczNGZiNjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2Fu
dmFzVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5jcHAK
QEAgLTQ1LDEzICs0NSwxMyBAQCB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNDaGFuZ2VkKEhU
TUxDYW52YXNFbGVtZW50JiwgY29uc3QgRmxvYXRSZWN0JiBjaGFuZ2VkUgogewogICAgIEludFJl
Y3QgaW1hZ2VDaGFuZ2VSZWN0ID0gZW5jbG9zaW5nSW50UmVjdChjaGFuZ2VkUmVjdCk7CiAgICAg
Zm9yIChhdXRvIGl0ID0gY2xpZW50cygpLmJlZ2luKCksIGVuZCA9IGNsaWVudHMoKS5lbmQoKTsg
aXQgIT0gZW5kOyArK2l0KQotICAgICAgICBpdC0+a2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSwgJmltYWdlQ2hhbmdlUmVjdCk7CisgICAgICAgIGl0
LT5rZXktPmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcyksICZpbWFnZUNoYW5nZVJl
Y3QpOwogfQogCiB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNSZXNpemVkKEhUTUxDYW52YXNF
bGVtZW50JikKIHsKICAgICBmb3IgKGF1dG8gaXQgPSBjbGllbnRzKCkuYmVnaW4oKSwgZW5kID0g
Y2xpZW50cygpLmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpCi0gICAgICAgIGl0LT5rZXktPmltYWdl
Q2hhbmdlZChzdGF0aWNfY2FzdDxXcmFwcGVkSW1hZ2VQdHI+KHRoaXMpKTsKKyAgICAgICAgaXQt
PmtleS0+aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0cih0aGlzKSk7CiB9CiAKIHZvaWQgQ1NT
Q2FudmFzVmFsdWU6OmNhbnZhc0Rlc3Ryb3llZChIVE1MQ2FudmFzRWxlbWVudCYgZWxlbWVudCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRlVmFsdWUuY3BwCmluZGV4IDllNmFiNjgwODUx
NWMwMTU0YTgwOGFiOTE1MzdjNzFlNThhZGM5ZDIuLmE3NTA0MjcyNGM2ZmJhZGQ5NDdiNTk0YmRi
NTMyNmJiNjk0MTMzNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2Zh
ZGVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmNw
cApAQCAtMTkwLDcgKzE5MCw3IEBAIGlubGluZSB2b2lkIENTU0Nyb3NzZmFkZVZhbHVlOjpjcm9z
c2ZhZGVDaGFuZ2VkKCkKICAgICBpZiAoIW1fc3ViaW1hZ2VzQXJlUmVhZHkpCiAgICAgICAgIHJl
dHVybjsKICAgICBmb3IgKGF1dG8mIGNsaWVudCA6IGNsaWVudHMoKSkKLSAgICAgICAgY2xpZW50
LmtleS0+aW1hZ2VDaGFuZ2VkKHRoaXMpOworICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5n
ZWQoV3JhcHBlZEltYWdlUHRyKHRoaXMpKTsKIH0KIAogYm9vbCBDU1NDcm9zc2ZhZGVWYWx1ZTo6
dHJhdmVyc2VTdWJyZXNvdXJjZXMoY29uc3QgV1RGOjpGdW5jdGlvbjxib29sIChjb25zdCBDYWNo
ZWRSZXNvdXJjZSYpPiYgaGFuZGxlcikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGaWx0ZXJJbWFnZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGaWx0
ZXJJbWFnZVZhbHVlLmNwcAppbmRleCBlNjUyZDI1MmZiODkyNjllYjE3NzU4NjA5ODM2NmM5OWQ1
ZDc2ZmRiLi4zZGFmZWRlMzk3OWVhOGY1MGJiMzhlYzFiNDk2ZDFiMGU5NThkNjQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwCkBAIC0xNDEsNyArMTQxLDcg
QEAgUmVmUHRyPEltYWdlPiBDU1NGaWx0ZXJJbWFnZVZhbHVlOjppbWFnZShSZW5kZXJFbGVtZW50
JiByZW5kZXJlciwgY29uc3QgRmxvYXRTaXoKIHZvaWQgQ1NTRmlsdGVySW1hZ2VWYWx1ZTo6Zmls
dGVySW1hZ2VDaGFuZ2VkKGNvbnN0IEludFJlY3QmKQogewogICAgIGZvciAoYXV0byYgY2xpZW50
IDogY2xpZW50cygpKQotICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSk7CisgICAgICAgIGNsaWVudC5rZXktPmltYWdlQ2hh
bmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcykpOwogfQogCiB2b2lkIENTU0ZpbHRlckltYWdlVmFs
dWU6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoU3R5bGU6OkJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0
YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA0YjdjYTIxNjNh
Yjc3YzU4MmNmMDI0NDkyNTAxNmZmNTQ2MTM2MTQzLi5mODQzOTk2MDQzY2ZkYjcxNTY5OGNhY2I0
MGRiMWE4ZDFhZDk4N2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApA
QCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogCiAjaW5jbHVkZSAiQ1NT
Rm9udFNlbGVjdG9yLmgiCisjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJDb250
cm9sU3RhdGVzLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFZGl0aW5nLmgi
CkBAIC0xODA3LDYgKzE4MDgsMTEgQEAgdm9pZCBSZW5kZXJCb3g6OmltYWdlQ2hhbmdlZChXcmFw
cGVkSW1hZ2VQdHIgaW1hZ2UsIGNvbnN0IEludFJlY3QqKQogICAgIGlmICghcGFyZW50KCkpCiAg
ICAgICAgIHJldHVybjsKIAorICAgIGlmIChpbWFnZSAmJiBXVEY6OmhvbGRzX2FsdGVybmF0aXZl
PENhY2hlZEltYWdlKj4oKmltYWdlKSAmJiBXVEY6OmdldDxDYWNoZWRJbWFnZSo+KCppbWFnZSkt
Pmhhc1NWR0ltYWdlKCkpIHsKKyAgICAgICAgc2V0TmVlZHNMYXlvdXQoKTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKwogICAgIGlmICgoc3R5bGUoKS5ib3JkZXJJbWFnZSgpLmltYWdlKCkgJiYg
c3R5bGUoKS5ib3JkZXJJbWFnZSgpLmltYWdlKCktPmRhdGEoKSA9PSBpbWFnZSkgfHwKICAgICAg
ICAgKHN0eWxlKCkubWFza0JveEltYWdlKCkuaW1hZ2UoKSAmJiBzdHlsZSgpLm1hc2tCb3hJbWFn
ZSgpLmltYWdlKCktPmRhdGEoKSA9PSBpbWFnZSkpIHsKICAgICAgICAgcmVwYWludCgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlUmVzb3VyY2UuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZVJlc291cmNlLmgKaW5kZXggZWUx
NmJmYTZhYmY3MTBmODM1MTRlZjcyYjQxYTdmNjYxMTRmMDJiNy4uNjZiZDI4MDkwNjE4ZjAwMGNi
ZWJmMjMyMmQ2MDljYjg2YTlmMWQwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckltYWdlUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVySW1hZ2VSZXNvdXJjZS5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICBpbmxp
bmUgTGF5b3V0U2l6ZSBpbWFnZVNpemUoZmxvYXQgbXVsdGlwbGllcikgY29uc3QgeyByZXR1cm4g
aW1hZ2VTaXplKG11bHRpcGxpZXIsIENhY2hlZEltYWdlOjpVc2VkU2l6ZSk7IH0KICAgICBpbmxp
bmUgTGF5b3V0U2l6ZSBpbnRyaW5zaWNTaXplKGZsb2F0IG11bHRpcGxpZXIpIGNvbnN0IHsgcmV0
dXJuIGltYWdlU2l6ZShtdWx0aXBsaWVyLCBDYWNoZWRJbWFnZTo6SW50cmluc2ljU2l6ZSk7IH0K
IAotICAgIHZpcnR1YWwgV3JhcHBlZEltYWdlUHRyIGltYWdlUHRyKCkgY29uc3QgeyByZXR1cm4g
bV9jYWNoZWRJbWFnZS5nZXQoKTsgfQorICAgIHZpcnR1YWwgV3JhcHBlZEltYWdlUHRyIGltYWdl
UHRyKCkgY29uc3QgeyByZXR1cm4gY2FjaGVkSW1hZ2UoKSA/IFdyYXBwZWRJbWFnZVB0cihjYWNo
ZWRJbWFnZSgpKSA6IFdURjo6bnVsbG9wdDsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVyRWxl
bWVudCogcmVuZGVyZXIoKSBjb25zdCB7IHJldHVybiBtX3JlbmRlcmVyLmdldCgpOyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IDA1NjUyNjdkOGE3ZDIy
NDg0YWNlM2NhMTEzMzE3NGQ0YzY1NzgzODQuLjhkZTVhYTQ0YzU3MjI1YTk4YjI5YjFlZGIyMGY4
MjEyM2M0Mzk1OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3Bw
CkBAIC0xNjQwLDcgKzE2NDAsNyBAQCB2b2lkIFJlbmRlck9iamVjdDo6YWRqdXN0UmVjdEZvck91
dGxpbmVBbmRTaGFkb3coTGF5b3V0UmVjdCYgcmVjdCkgY29uc3QKIAogdm9pZCBSZW5kZXJPYmpl
Y3Q6OmltYWdlQ2hhbmdlZChDYWNoZWRJbWFnZSogaW1hZ2UsIGNvbnN0IEludFJlY3QqIHJlY3Qp
CiB7Ci0gICAgaW1hZ2VDaGFuZ2VkKHN0YXRpY19jYXN0PFdyYXBwZWRJbWFnZVB0cj4oaW1hZ2Up
LCByZWN0KTsKKyAgICBpbWFnZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyKGltYWdlKSwgcmVjdCk7
CiB9CiAKIFJlbmRlckJveE1vZGVsT2JqZWN0KiBSZW5kZXJPYmplY3Q6Om9mZnNldFBhcmVudCgp
IGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVD
YWNoZWRJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVk
SW1hZ2UuaAppbmRleCA1MGVkNzEzNTY3MmQ1OTM5MGFkMmY1Y2Y0YWEwMzkwNWU0NDU2NTE4Li5k
YTllMjllZGE1MjI2YTdhOGFjMWFiMjYxZTU3OGViYWQwZjA0Yzg0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmgKQEAgLTQzLDcgKzQz
LDcgQEAgcHVibGljOgogCiAgICAgQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlKCkgY29uc3QgZmlu
YWw7CiAKLSAgICBXcmFwcGVkSW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
Y2FjaGVkSW1hZ2UuZ2V0KCk7IH0KKyAgICBXcmFwcGVkSW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIGNhY2hlZEltYWdlKCkgPyBXcmFwcGVkSW1hZ2VQdHIoY2FjaGVkSW1hZ2Uo
KSkgOiBXVEY6Om51bGxvcHQ7IH0KIAogICAgIFJlZjxDU1NWYWx1ZT4gY3NzVmFsdWUoKSBjb25z
dCBmaW5hbDsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TdHlsZUdlbmVyYXRlZEltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVHZW5lcmF0ZWRJbWFnZS5oCmluZGV4IDRlMWQwMmYwYWU2NDZhZGEzY2U0MWIwNzZlODc2
NGY3NDMwMWMzMGEuLjY3MDNiYWU1YWQ5ODVjZTkxYjExZTMxZDBjYjA2YWY0NjU4YWNiNzggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdlbmVyYXRlZElt
YWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlR2VuZXJhdGVk
SW1hZ2UuaApAQCAtMzcsMTIgKzM3LDEyIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgU3R5bGVHZW5lcmF0ZWRJbWFnZShXVEZNb3ZlKHZhbHVlKSkpOwogICAgIH0KIAot
ICAgIENTU0ltYWdlR2VuZXJhdG9yVmFsdWUmIGltYWdlVmFsdWUoKSB7IHJldHVybiBtX2ltYWdl
R2VuZXJhdG9yVmFsdWU7IH0KKyAgICBDU1NJbWFnZUdlbmVyYXRvclZhbHVlJiBpbWFnZVZhbHVl
KCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZUdlbmVyYXRvclZhbHVlOyB9CiAKIHByaXZhdGU6CiAg
ICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFN0eWxlSW1hZ2UmIG90aGVyKSBjb25zdCBmaW5hbCB7
IHJldHVybiBkYXRhKCkgPT0gb3RoZXIuZGF0YSgpOyB9CiAKLSAgICBXcmFwcGVkSW1hZ2VQdHIg
ZGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faW1hZ2VHZW5lcmF0b3JWYWx1ZS5wdHIoKTsg
fQorICAgIFdyYXBwZWRJbWFnZVB0ciBkYXRhKCkgY29uc3QgZmluYWwgeyByZXR1cm4gV3JhcHBl
ZEltYWdlUHRyKCZpbWFnZVZhbHVlKCkpOyB9CiAKICAgICBSZWY8Q1NTVmFsdWU+IGNzc1ZhbHVl
KCkgY29uc3QgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZUltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVJ
bWFnZS5oCmluZGV4IDNlZDg5ODMxMGMzZDZlMjlkMGJiZDhiYTkyNzg0MmE2NjhkY2UwMjIuLjkz
NGNkYmEzYjk5MjM1MDFkN2VlYTExZjE2NmJiZDY1NjI4Y2U0YWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUltYWdlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlSW1hZ2UuaApAQCAtMzQsMTIgKzM0LDE1IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ2FjaGVkSW1hZ2U7CiBjbGFzcyBDYWNoZWRSZXNvdXJj
ZUxvYWRlcjsKK2NsYXNzIENTU0ltYWdlR2VuZXJhdG9yVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZTsK
IGNsYXNzIFJlbmRlckVsZW1lbnQ7CiBjbGFzcyBSZW5kZXJPYmplY3Q7CitjbGFzcyBTdHlsZUNh
Y2hlZEltYWdlOworCiBzdHJ1Y3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zOwogCi10eXBlZGVmIGNv
bnN0IHZvaWQqIFdyYXBwZWRJbWFnZVB0cjsKK3VzaW5nIFdyYXBwZWRJbWFnZVB0ciA9IE9wdGlv
bmFsPFZhcmlhbnQ8Q2FjaGVkSW1hZ2UqLCBTdHlsZUNhY2hlZEltYWdlKiwgQ1NTSW1hZ2VHZW5l
cmF0b3JWYWx1ZSo+PjsKIAogY2xhc3MgU3R5bGVJbWFnZSA6IHB1YmxpYyBSZWZDb3VudGVkPFN0
eWxlSW1hZ2U+IHsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlTXVsdGlJbWFnZS5jcHAKaW5kZXggNzc2NjY3YzdhNjRhYjE2MDZiNzBjN2MzNmYx
MWYyNzc2ZTJjMTE1MS4uNGRmYjIzOTgwZjc3Y2ZkMWJkNjRhMzI5NzFmZjI3Mzc1MDc5Y2YwOCAx
MDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlTXVsdGlJbWFn
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlTXVsdGlJbWFn
ZS5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgQ2FjaGVkSW1hZ2UqIFN0eWxlTXVsdGlJbWFnZTo6Y2Fj
aGVkSW1hZ2UoKSBjb25zdAogV3JhcHBlZEltYWdlUHRyIFN0eWxlTXVsdGlJbWFnZTo6ZGF0YSgp
IGNvbnN0CiB7CiAgICAgaWYgKCFtX3NlbGVjdGVkSW1hZ2UpCi0gICAgICAgIHJldHVybiBudWxs
cHRyOworICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogICAgIHJldHVybiBtX3NlbGVjdGVk
SW1hZ2UtPmRhdGEoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421627</attachid>
            <date>2021-02-26 02:17:43 -0800</date>
            <delta_ts>2021-02-26 02:20:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221253-20210226021742.patch</filename>
            <type>text/plain</type>
            <size>11317</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjRjNzRhMTZhMWEwNTM1
ZGRhOWVkMzFkOTI4OTUyMzY5N2ZhMjI2MC4uNmYzYWM5NDhmOWZiZjcyNTYzZjUxODI5OGFkOGQ5
YmQ0OGJjYWRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAyLTI1ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2Yg
U1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRoZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgYml0bWFwIGltYWdlLCB0aGUgaW50cmluc2lj
IHNpemUgb2YgU1ZHSW1hZ2UgY2FuIG9ubHkgYmUga25vd24KKyAgICAgICAgYWZ0ZXIgcnVubmlu
ZyBpdHMgbGF5b3V0LiBCZWNhdXNlIFNWR0ltYWdlIGNhbiBiZSB1c2VkIGJ5IG11bHRpcGxlIGNs
aWVudHMsCisgICAgICAgIENhY2hlZEltYWdlIG1haW50YWlucyBhbiBTVkdJbWFnZUNhY2hlIHdo
aWNoIG1hcHMgYSBjbGllbnQgdG8gYW4KKyAgICAgICAgU1ZHSW1hZ2VGb3JDb250YWluZXIuIFNW
R0ltYWdlRm9yQ29udGFpbmVyIGlzIGp1c3QgYSB3cmFwcGVyIG9mIFNWR0ltYWdlCisgICAgICAg
IHdpdGggdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIEJlY2F1c2Ugd2UgbWF5IHNl
dCBhbiBlbnRyeSBmb3IKKyAgICAgICAgdGhlIHJlbmRlcmVyIGluIFNWR0ltYWdlQ2FjaGUgZWFy
bHkgYmVmb3JlIHJ1bm5pbmcgYSBsYXlvdXQgZm9yIFNWR0ltYWdlCisgICAgICAgIGFuZCBiZWNh
dXNlIHRoZSByZW5kZXJlciBpbnRyaW5zaWMgc2l6ZSBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMg
c2l6ZSBvZiAKKyAgICAgICAgU1ZHSW1hZ2UsIFNWR0ltYWdlRm9yQ29udGFpbmVyIG1heSBoYXZl
IGFuIGVtcHR5IGludHJpbnNpYyBzaXplLgorCisgICAgICAgIFNvIGJhc2ljYWxseSBpdCBpcyBh
IHJhY2UgY29uZGl0aW9uOiBrbm93aW5nIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiB0aGUKKyAgICAg
ICAgY2xpZW50IGRlcGVuZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIFNWR0ltYWdlLiBBbmQg
dGhlIGludHJpbnNpYyBzaXplCisgICAgICAgIG9mIFNWR0ltYWdlRm9yQ29udGFpbmVyIGRlcGVu
ZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIFRoaXMKKyAgICAgICAgbWF5
IGxlYWQgdG8gbm90IHJlbmRlcmluZyB0aGUgY2xpZW50cyBiZWNhdXNlIHRoZWlyIHNpemVzIGFy
ZSBlbXB0eS4gVG8KKyAgICAgICAgZml4IHRoaXMgaXNzdWUgd2UgbmVlZCB0byBmb3JjZSB0aGUg
bGF5b3V0IGZvciB0aGUgY2xpZW50cyBvbmNlIHdlIGZpbmlzaAorICAgICAgICB0aGUgbGF5b3V0
IG9mIHRoZSBTVkdJbWFnZSB3aGljaCBoYXBwZW5zIGFmdGVyIHJlY2VpdmluZyBhbGwgaXRzIGRh
dGEuCisKKyAgICAgICAgKiBjc3MvQ1NTQ2FudmFzVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTQ2FudmFzVmFsdWU6OmNhbnZhc0NoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Q2FudmFzVmFsdWU6OmNhbnZhc1Jlc2l6ZWQpOgorICAgICAgICAqIGNzcy9DU1NDcm9zc2ZhZGVW
YWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NDcm9zc2ZhZGVWYWx1ZTo6Y3Jvc3NmYWRl
Q2hhbmdlZCk6CisgICAgICAgICogY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTRmlsdGVySW1hZ2VWYWx1ZTo6ZmlsdGVySW1hZ2VDaGFuZ2VkKToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveDo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNv
dXJjZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2VSZXNvdXJjZTo6aW1hZ2VQdHIg
Y29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyT2JqZWN0OjppbWFnZUNoYW5nZWQpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0
eWxlR2VuZXJhdGVkSW1hZ2UuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFn
ZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVNdWx0aUltYWdlOjpkYXRhIGNvbnN0KToKKwogMjAyMS0wMi0y
NSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlkQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVIFBy
b2Nlc3NdIFN0cm9rZSBhbmQgZmlsbCBTdGF0ZUNoYW5nZUZsYWdzIHNob3VsZCBiZSBzZXQgZXhj
bHVzaXZlbHkgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2FudmFzVmFsdWUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NhbnZhc1ZhbHVlLmNwcAppbmRleCBmN2ZiMzcy
ZWY2YjAxNzJiZTI5NmI5Njg1NTU3NTk5NjI2ZmFiNWYyLi5jNTBkNmFiNThjMDg2MGY4ZDRlNTc5
YmZkNTE3OGU4YTczNGZiNjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2Fu
dmFzVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5jcHAK
QEAgLTQ1LDEzICs0NSwxMyBAQCB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNDaGFuZ2VkKEhU
TUxDYW52YXNFbGVtZW50JiwgY29uc3QgRmxvYXRSZWN0JiBjaGFuZ2VkUgogewogICAgIEludFJl
Y3QgaW1hZ2VDaGFuZ2VSZWN0ID0gZW5jbG9zaW5nSW50UmVjdChjaGFuZ2VkUmVjdCk7CiAgICAg
Zm9yIChhdXRvIGl0ID0gY2xpZW50cygpLmJlZ2luKCksIGVuZCA9IGNsaWVudHMoKS5lbmQoKTsg
aXQgIT0gZW5kOyArK2l0KQotICAgICAgICBpdC0+a2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSwgJmltYWdlQ2hhbmdlUmVjdCk7CisgICAgICAgIGl0
LT5rZXktPmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcyksICZpbWFnZUNoYW5nZVJl
Y3QpOwogfQogCiB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNSZXNpemVkKEhUTUxDYW52YXNF
bGVtZW50JikKIHsKICAgICBmb3IgKGF1dG8gaXQgPSBjbGllbnRzKCkuYmVnaW4oKSwgZW5kID0g
Y2xpZW50cygpLmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpCi0gICAgICAgIGl0LT5rZXktPmltYWdl
Q2hhbmdlZChzdGF0aWNfY2FzdDxXcmFwcGVkSW1hZ2VQdHI+KHRoaXMpKTsKKyAgICAgICAgaXQt
PmtleS0+aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0cih0aGlzKSk7CiB9CiAKIHZvaWQgQ1NT
Q2FudmFzVmFsdWU6OmNhbnZhc0Rlc3Ryb3llZChIVE1MQ2FudmFzRWxlbWVudCYgZWxlbWVudCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRlVmFsdWUuY3BwCmluZGV4IDllNmFiNjgwODUx
NWMwMTU0YTgwOGFiOTE1MzdjNzFlNThhZGM5ZDIuLmE3NTA0MjcyNGM2ZmJhZGQ5NDdiNTk0YmRi
NTMyNmJiNjk0MTMzNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2Zh
ZGVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmNw
cApAQCAtMTkwLDcgKzE5MCw3IEBAIGlubGluZSB2b2lkIENTU0Nyb3NzZmFkZVZhbHVlOjpjcm9z
c2ZhZGVDaGFuZ2VkKCkKICAgICBpZiAoIW1fc3ViaW1hZ2VzQXJlUmVhZHkpCiAgICAgICAgIHJl
dHVybjsKICAgICBmb3IgKGF1dG8mIGNsaWVudCA6IGNsaWVudHMoKSkKLSAgICAgICAgY2xpZW50
LmtleS0+aW1hZ2VDaGFuZ2VkKHRoaXMpOworICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5n
ZWQoV3JhcHBlZEltYWdlUHRyKHRoaXMpKTsKIH0KIAogYm9vbCBDU1NDcm9zc2ZhZGVWYWx1ZTo6
dHJhdmVyc2VTdWJyZXNvdXJjZXMoY29uc3QgV1RGOjpGdW5jdGlvbjxib29sIChjb25zdCBDYWNo
ZWRSZXNvdXJjZSYpPiYgaGFuZGxlcikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGaWx0ZXJJbWFnZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGaWx0
ZXJJbWFnZVZhbHVlLmNwcAppbmRleCBlNjUyZDI1MmZiODkyNjllYjE3NzU4NjA5ODM2NmM5OWQ1
ZDc2ZmRiLi4zZGFmZWRlMzk3OWVhOGY1MGJiMzhlYzFiNDk2ZDFiMGU5NThkNjQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwCkBAIC0xNDEsNyArMTQxLDcg
QEAgUmVmUHRyPEltYWdlPiBDU1NGaWx0ZXJJbWFnZVZhbHVlOjppbWFnZShSZW5kZXJFbGVtZW50
JiByZW5kZXJlciwgY29uc3QgRmxvYXRTaXoKIHZvaWQgQ1NTRmlsdGVySW1hZ2VWYWx1ZTo6Zmls
dGVySW1hZ2VDaGFuZ2VkKGNvbnN0IEludFJlY3QmKQogewogICAgIGZvciAoYXV0byYgY2xpZW50
IDogY2xpZW50cygpKQotICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSk7CisgICAgICAgIGNsaWVudC5rZXktPmltYWdlQ2hh
bmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcykpOwogfQogCiB2b2lkIENTU0ZpbHRlckltYWdlVmFs
dWU6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoU3R5bGU6OkJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0
YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA0YjdjYTIxNjNh
Yjc3YzU4MmNmMDI0NDkyNTAxNmZmNTQ2MTM2MTQzLi5iYjJjNjM3NWI0MTk2Mzk3NzVkOGVlNDVm
MjA4OWNiODU3NTRkNjg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApA
QCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogCiAjaW5jbHVkZSAiQ1NT
Rm9udFNlbGVjdG9yLmgiCisjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJDb250
cm9sU3RhdGVzLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFZGl0aW5nLmgi
CkBAIC0xODEzLDYgKzE4MTQsOSBAQCB2b2lkIFJlbmRlckJveDo6aW1hZ2VDaGFuZ2VkKFdyYXBw
ZWRJbWFnZVB0ciBpbWFnZSwgY29uc3QgSW50UmVjdCopCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKKyAgICBpZiAoaW1hZ2UgJiYgV1RGOjpob2xkc19hbHRlcm5hdGl2ZTxDYWNoZWRJbWFnZSo+
KCppbWFnZSkgJiYgV1RGOjpnZXQ8Q2FjaGVkSW1hZ2UqPigqaW1hZ2UpLT5oYXNTVkdJbWFnZSgp
KQorICAgICAgICBzZXROZWVkc0xheW91dCgpOworCiAgICAgU2hhcGVWYWx1ZSogc2hhcGVPdXRz
aWRlVmFsdWUgPSBzdHlsZSgpLnNoYXBlT3V0c2lkZSgpOwogICAgIGlmICghdmlldygpLmZyYW1l
VmlldygpLmxheW91dENvbnRleHQoKS5pc0luUmVuZGVyVHJlZUxheW91dCgpICYmIGlzRmxvYXRp
bmcoKSAmJiBzaGFwZU91dHNpZGVWYWx1ZSAmJiBzaGFwZU91dHNpZGVWYWx1ZS0+aW1hZ2UoKSAm
JiBzaGFwZU91dHNpZGVWYWx1ZS0+aW1hZ2UoKS0+ZGF0YSgpID09IGltYWdlKSB7CiAgICAgICAg
IFNoYXBlT3V0c2lkZUluZm86OmVuc3VyZUluZm8oKnRoaXMpLm1hcmtTaGFwZUFzRGlydHkoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZVJlc291cmNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNvdXJjZS5oCmluZGV4
IGVlMTZiZmE2YWJmNzEwZjgzNTE0ZWY3MmI0MWE3ZjY2MTE0ZjAyYjcuLjY2YmQyODA5MDYxOGYw
MDBjYmViZjIzMjJkNjA5Y2I4NmE5ZjFkMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJJbWFnZVJlc291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckltYWdlUmVzb3VyY2UuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAg
aW5saW5lIExheW91dFNpemUgaW1hZ2VTaXplKGZsb2F0IG11bHRpcGxpZXIpIGNvbnN0IHsgcmV0
dXJuIGltYWdlU2l6ZShtdWx0aXBsaWVyLCBDYWNoZWRJbWFnZTo6VXNlZFNpemUpOyB9CiAgICAg
aW5saW5lIExheW91dFNpemUgaW50cmluc2ljU2l6ZShmbG9hdCBtdWx0aXBsaWVyKSBjb25zdCB7
IHJldHVybiBpbWFnZVNpemUobXVsdGlwbGllciwgQ2FjaGVkSW1hZ2U6OkludHJpbnNpY1NpemUp
OyB9CiAKLSAgICB2aXJ0dWFsIFdyYXBwZWRJbWFnZVB0ciBpbWFnZVB0cigpIGNvbnN0IHsgcmV0
dXJuIG1fY2FjaGVkSW1hZ2UuZ2V0KCk7IH0KKyAgICB2aXJ0dWFsIFdyYXBwZWRJbWFnZVB0ciBp
bWFnZVB0cigpIGNvbnN0IHsgcmV0dXJuIGNhY2hlZEltYWdlKCkgPyBXcmFwcGVkSW1hZ2VQdHIo
Y2FjaGVkSW1hZ2UoKSkgOiBXVEY6Om51bGxvcHQ7IH0KIAogcHJvdGVjdGVkOgogICAgIFJlbmRl
ckVsZW1lbnQqIHJlbmRlcmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJlci5nZXQoKTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCAwNTY1MjY3ZDhh
N2QyMjQ4NGFjZTNjYTExMzMxNzRkNGM2NTc4Mzg0Li44ZGU1YWE0NGM1NzIyNWE5OGIyOWIxZWRi
MjBmODIxMjNjNDM5NTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0
LmNwcApAQCAtMTY0MCw3ICsxNjQwLDcgQEAgdm9pZCBSZW5kZXJPYmplY3Q6OmFkanVzdFJlY3RG
b3JPdXRsaW5lQW5kU2hhZG93KExheW91dFJlY3QmIHJlY3QpIGNvbnN0CiAKIHZvaWQgUmVuZGVy
T2JqZWN0OjppbWFnZUNoYW5nZWQoQ2FjaGVkSW1hZ2UqIGltYWdlLCBjb25zdCBJbnRSZWN0KiBy
ZWN0KQogewotICAgIGltYWdlQ2hhbmdlZChzdGF0aWNfY2FzdDxXcmFwcGVkSW1hZ2VQdHI+KGlt
YWdlKSwgcmVjdCk7CisgICAgaW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0cihpbWFnZSksIHJl
Y3QpOwogfQogCiBSZW5kZXJCb3hNb2RlbE9iamVjdCogUmVuZGVyT2JqZWN0OjpvZmZzZXRQYXJl
bnQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlQ2FjaGVkSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNh
Y2hlZEltYWdlLmgKaW5kZXggNTBlZDcxMzU2NzJkNTkzOTBhZDJmNWNmNGFhMDM5MDVlNDQ1NjUx
OC4uZGE5ZTI5ZWRhNTIyNmE3YThhYzFhYjI2MWU1NzhlYmFkMGYwNGM4NCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkSW1hZ2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oCkBAIC00Myw3
ICs0Myw3IEBAIHB1YmxpYzoKIAogICAgIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSgpIGNvbnN0
IGZpbmFsOwogCi0gICAgV3JhcHBlZEltYWdlUHRyIGRhdGEoKSBjb25zdCBmaW5hbCB7IHJldHVy
biBtX2NhY2hlZEltYWdlLmdldCgpOyB9CisgICAgV3JhcHBlZEltYWdlUHRyIGRhdGEoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBjYWNoZWRJbWFnZSgpID8gV3JhcHBlZEltYWdlUHRyKGNhY2hlZElt
YWdlKCkpIDogV1RGOjpudWxsb3B0OyB9CiAKICAgICBSZWY8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkg
Y29uc3QgZmluYWw7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVHZW5lcmF0ZWRJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlR2VuZXJhdGVkSW1hZ2UuaAppbmRleCA0ZTFkMDJmMGFlNjQ2YWRhM2NlNDFiMDc2
ZTg3NjRmNzQzMDFjMzBhLi42NzAzYmFlNWFkOTg1Y2U5MWIxMWUzMWQwY2IwNmFmNDY1OGFjYjc4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVHZW5lcmF0
ZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdlbmVy
YXRlZEltYWdlLmgKQEAgLTM3LDEyICszNywxMiBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IFN0eWxlR2VuZXJhdGVkSW1hZ2UoV1RGTW92ZSh2YWx1ZSkpKTsKICAgICB9
CiAKLSAgICBDU1NJbWFnZUdlbmVyYXRvclZhbHVlJiBpbWFnZVZhbHVlKCkgeyByZXR1cm4gbV9p
bWFnZUdlbmVyYXRvclZhbHVlOyB9CisgICAgQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSYgaW1hZ2VW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW1hZ2VHZW5lcmF0b3JWYWx1ZTsgfQogCiBwcml2YXRl
OgogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTdHlsZUltYWdlJiBvdGhlcikgY29uc3QgZmlu
YWwgeyByZXR1cm4gZGF0YSgpID09IG90aGVyLmRhdGEoKTsgfQogCi0gICAgV3JhcHBlZEltYWdl
UHRyIGRhdGEoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ltYWdlR2VuZXJhdG9yVmFsdWUucHRy
KCk7IH0KKyAgICBXcmFwcGVkSW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFdy
YXBwZWRJbWFnZVB0cigmaW1hZ2VWYWx1ZSgpKTsgfQogCiAgICAgUmVmPENTU1ZhbHVlPiBjc3NW
YWx1ZSgpIGNvbnN0IGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlSW1hZ2UuaAppbmRleCAzZWQ4OTgzMTBjM2Q2ZTI5ZDBiYmQ4YmE5Mjc4NDJhNjY4ZGNlMDIy
Li45MzRjZGJhM2I5OTIzNTAxZDdlZWExMWYxNjZiYmQ2NTYyOGNlNGFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFnZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUltYWdlLmgKQEAgLTM0LDEyICszNCwxNSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdlOwogY2xhc3MgQ2FjaGVkUmVz
b3VyY2VMb2FkZXI7CitjbGFzcyBDU1NJbWFnZUdlbmVyYXRvclZhbHVlOwogY2xhc3MgQ1NTVmFs
dWU7CiBjbGFzcyBSZW5kZXJFbGVtZW50OwogY2xhc3MgUmVuZGVyT2JqZWN0OworY2xhc3MgU3R5
bGVDYWNoZWRJbWFnZTsKKwogc3RydWN0IFJlc291cmNlTG9hZGVyT3B0aW9uczsKIAotdHlwZWRl
ZiBjb25zdCB2b2lkKiBXcmFwcGVkSW1hZ2VQdHI7Cit1c2luZyBXcmFwcGVkSW1hZ2VQdHIgPSBP
cHRpb25hbDxWYXJpYW50PENhY2hlZEltYWdlKiwgU3R5bGVDYWNoZWRJbWFnZSosIENTU0ltYWdl
R2VuZXJhdG9yVmFsdWUqPj47CiAKIGNsYXNzIFN0eWxlSW1hZ2UgOiBwdWJsaWMgUmVmQ291bnRl
ZDxTdHlsZUltYWdlPiB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVNdWx0aUltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwCmluZGV4IDc3NjY2N2M3YTY0YWIxNjA2YjcwYzdj
MzZmMTFmMjc3NmUyYzExNTEuLjRkZmIyMzk4MGY3N2NmZDFiZDY0YTMyOTcxZmYyNzM3NTA3OWNm
MDggMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRp
SW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRp
SW1hZ2UuY3BwCkBAIC03NCw3ICs3NCw3IEBAIENhY2hlZEltYWdlKiBTdHlsZU11bHRpSW1hZ2U6
OmNhY2hlZEltYWdlKCkgY29uc3QKIFdyYXBwZWRJbWFnZVB0ciBTdHlsZU11bHRpSW1hZ2U6OmRh
dGEoKSBjb25zdAogewogICAgIGlmICghbV9zZWxlY3RlZEltYWdlKQotICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKICAgICByZXR1cm4gbV9zZWxl
Y3RlZEltYWdlLT5kYXRhKCk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hh
cGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW5zZXJ0LXN2Zy1zaGFwZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUt
b3V0c2lkZS1pbnNlcnQtc3ZnLXNoYXBlLmh0bWwKaW5kZXggZGU2OWY0NTAzY2FmODM1M2Y3YzQ0
ZDllZjYzYzgyZTM2N2JmMDRhYy4uYTExMjBjMTY2NmQyNmJlNmFkNWI5MmZkYzIzYTllM2Q2YjQz
M2JkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1m
bG9hdHMvc2hhcGUtb3V0c2lkZS1pbnNlcnQtc3ZnLXNoYXBlLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbnNlcnQt
c3ZnLXNoYXBlLmh0bWwKQEAgLTExLDcgKzExLDcgQEAKICAgICB3aWR0aDogMTAwcHg7CiAgICAg
aGVpZ2h0OiAxMDBweDsKICAgICBmbG9hdDogbGVmdDsKLSAgICAtd2Via2l0LXNoYXBlLW91dHNp
ZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDBweCcgaGVpZ2h0PScxMDBweCc+PHJlY3QgeD0nMCcg
eT0nNTAnIHdpZHRoPSc1MCcgaGVpZ2h0PSc1MCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAg
IHNoYXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0n
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDBweCcgaGVpZ2h0PScxMDBweCc+
PHJlY3QgeD0nMCcgeT0nNTAnIHdpZHRoPSc1MCcgaGVpZ2h0PSc1MCcgZmlsbD0nYmx1ZScvPjwv
c3ZnPiIpOwogfQogPC9zdHlsZT4KIDxzY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421628</attachid>
            <date>2021-02-26 02:20:25 -0800</date>
            <delta_ts>2021-02-26 12:20:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221253-20210226022024.patch</filename>
            <type>text/plain</type>
            <size>10398</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjRjNzRhMTZhMWEwNTM1
ZGRhOWVkMzFkOTI4OTUyMzY5N2ZhMjI2MC4uNmYzYWM5NDhmOWZiZjcyNTYzZjUxODI5OGFkOGQ5
YmQ0OGJjYWRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIxLTAyLTI1ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2Yg
U1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRoZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgYml0bWFwIGltYWdlLCB0aGUgaW50cmluc2lj
IHNpemUgb2YgU1ZHSW1hZ2UgY2FuIG9ubHkgYmUga25vd24KKyAgICAgICAgYWZ0ZXIgcnVubmlu
ZyBpdHMgbGF5b3V0LiBCZWNhdXNlIFNWR0ltYWdlIGNhbiBiZSB1c2VkIGJ5IG11bHRpcGxlIGNs
aWVudHMsCisgICAgICAgIENhY2hlZEltYWdlIG1haW50YWlucyBhbiBTVkdJbWFnZUNhY2hlIHdo
aWNoIG1hcHMgYSBjbGllbnQgdG8gYW4KKyAgICAgICAgU1ZHSW1hZ2VGb3JDb250YWluZXIuIFNW
R0ltYWdlRm9yQ29udGFpbmVyIGlzIGp1c3QgYSB3cmFwcGVyIG9mIFNWR0ltYWdlCisgICAgICAg
IHdpdGggdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIEJlY2F1c2Ugd2UgbWF5IHNl
dCBhbiBlbnRyeSBmb3IKKyAgICAgICAgdGhlIHJlbmRlcmVyIGluIFNWR0ltYWdlQ2FjaGUgZWFy
bHkgYmVmb3JlIHJ1bm5pbmcgYSBsYXlvdXQgZm9yIFNWR0ltYWdlCisgICAgICAgIGFuZCBiZWNh
dXNlIHRoZSByZW5kZXJlciBpbnRyaW5zaWMgc2l6ZSBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMg
c2l6ZSBvZiAKKyAgICAgICAgU1ZHSW1hZ2UsIFNWR0ltYWdlRm9yQ29udGFpbmVyIG1heSBoYXZl
IGFuIGVtcHR5IGludHJpbnNpYyBzaXplLgorCisgICAgICAgIFNvIGJhc2ljYWxseSBpdCBpcyBh
IHJhY2UgY29uZGl0aW9uOiBrbm93aW5nIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiB0aGUKKyAgICAg
ICAgY2xpZW50IGRlcGVuZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIFNWR0ltYWdlLiBBbmQg
dGhlIGludHJpbnNpYyBzaXplCisgICAgICAgIG9mIFNWR0ltYWdlRm9yQ29udGFpbmVyIGRlcGVu
ZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIFRoaXMKKyAgICAgICAgbWF5
IGxlYWQgdG8gbm90IHJlbmRlcmluZyB0aGUgY2xpZW50cyBiZWNhdXNlIHRoZWlyIHNpemVzIGFy
ZSBlbXB0eS4gVG8KKyAgICAgICAgZml4IHRoaXMgaXNzdWUgd2UgbmVlZCB0byBmb3JjZSB0aGUg
bGF5b3V0IGZvciB0aGUgY2xpZW50cyBvbmNlIHdlIGZpbmlzaAorICAgICAgICB0aGUgbGF5b3V0
IG9mIHRoZSBTVkdJbWFnZSB3aGljaCBoYXBwZW5zIGFmdGVyIHJlY2VpdmluZyBhbGwgaXRzIGRh
dGEuCisKKyAgICAgICAgKiBjc3MvQ1NTQ2FudmFzVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTQ2FudmFzVmFsdWU6OmNhbnZhc0NoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Q2FudmFzVmFsdWU6OmNhbnZhc1Jlc2l6ZWQpOgorICAgICAgICAqIGNzcy9DU1NDcm9zc2ZhZGVW
YWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NDcm9zc2ZhZGVWYWx1ZTo6Y3Jvc3NmYWRl
Q2hhbmdlZCk6CisgICAgICAgICogY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTRmlsdGVySW1hZ2VWYWx1ZTo6ZmlsdGVySW1hZ2VDaGFuZ2VkKToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveDo6aW1hZ2VDaGFuZ2VkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNv
dXJjZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2VSZXNvdXJjZTo6aW1hZ2VQdHIg
Y29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyT2JqZWN0OjppbWFnZUNoYW5nZWQpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0
eWxlR2VuZXJhdGVkSW1hZ2UuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFn
ZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVNdWx0aUltYWdlOjpkYXRhIGNvbnN0KToKKwogMjAyMS0wMi0y
NSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlkQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVIFBy
b2Nlc3NdIFN0cm9rZSBhbmQgZmlsbCBTdGF0ZUNoYW5nZUZsYWdzIHNob3VsZCBiZSBzZXQgZXhj
bHVzaXZlbHkgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2FudmFzVmFsdWUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NhbnZhc1ZhbHVlLmNwcAppbmRleCBmN2ZiMzcy
ZWY2YjAxNzJiZTI5NmI5Njg1NTU3NTk5NjI2ZmFiNWYyLi5jNTBkNmFiNThjMDg2MGY4ZDRlNTc5
YmZkNTE3OGU4YTczNGZiNjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2Fu
dmFzVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5jcHAK
QEAgLTQ1LDEzICs0NSwxMyBAQCB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNDaGFuZ2VkKEhU
TUxDYW52YXNFbGVtZW50JiwgY29uc3QgRmxvYXRSZWN0JiBjaGFuZ2VkUgogewogICAgIEludFJl
Y3QgaW1hZ2VDaGFuZ2VSZWN0ID0gZW5jbG9zaW5nSW50UmVjdChjaGFuZ2VkUmVjdCk7CiAgICAg
Zm9yIChhdXRvIGl0ID0gY2xpZW50cygpLmJlZ2luKCksIGVuZCA9IGNsaWVudHMoKS5lbmQoKTsg
aXQgIT0gZW5kOyArK2l0KQotICAgICAgICBpdC0+a2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSwgJmltYWdlQ2hhbmdlUmVjdCk7CisgICAgICAgIGl0
LT5rZXktPmltYWdlQ2hhbmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcyksICZpbWFnZUNoYW5nZVJl
Y3QpOwogfQogCiB2b2lkIENTU0NhbnZhc1ZhbHVlOjpjYW52YXNSZXNpemVkKEhUTUxDYW52YXNF
bGVtZW50JikKIHsKICAgICBmb3IgKGF1dG8gaXQgPSBjbGllbnRzKCkuYmVnaW4oKSwgZW5kID0g
Y2xpZW50cygpLmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpCi0gICAgICAgIGl0LT5rZXktPmltYWdl
Q2hhbmdlZChzdGF0aWNfY2FzdDxXcmFwcGVkSW1hZ2VQdHI+KHRoaXMpKTsKKyAgICAgICAgaXQt
PmtleS0+aW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0cih0aGlzKSk7CiB9CiAKIHZvaWQgQ1NT
Q2FudmFzVmFsdWU6OmNhbnZhc0Rlc3Ryb3llZChIVE1MQ2FudmFzRWxlbWVudCYgZWxlbWVudCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRlVmFsdWUuY3BwCmluZGV4IDllNmFiNjgwODUx
NWMwMTU0YTgwOGFiOTE1MzdjNzFlNThhZGM5ZDIuLmE3NTA0MjcyNGM2ZmJhZGQ5NDdiNTk0YmRi
NTMyNmJiNjk0MTMzNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2Zh
ZGVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmNw
cApAQCAtMTkwLDcgKzE5MCw3IEBAIGlubGluZSB2b2lkIENTU0Nyb3NzZmFkZVZhbHVlOjpjcm9z
c2ZhZGVDaGFuZ2VkKCkKICAgICBpZiAoIW1fc3ViaW1hZ2VzQXJlUmVhZHkpCiAgICAgICAgIHJl
dHVybjsKICAgICBmb3IgKGF1dG8mIGNsaWVudCA6IGNsaWVudHMoKSkKLSAgICAgICAgY2xpZW50
LmtleS0+aW1hZ2VDaGFuZ2VkKHRoaXMpOworICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5n
ZWQoV3JhcHBlZEltYWdlUHRyKHRoaXMpKTsKIH0KIAogYm9vbCBDU1NDcm9zc2ZhZGVWYWx1ZTo6
dHJhdmVyc2VTdWJyZXNvdXJjZXMoY29uc3QgV1RGOjpGdW5jdGlvbjxib29sIChjb25zdCBDYWNo
ZWRSZXNvdXJjZSYpPiYgaGFuZGxlcikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGaWx0ZXJJbWFnZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGaWx0
ZXJJbWFnZVZhbHVlLmNwcAppbmRleCBlNjUyZDI1MmZiODkyNjllYjE3NzU4NjA5ODM2NmM5OWQ1
ZDc2ZmRiLi4zZGFmZWRlMzk3OWVhOGY1MGJiMzhlYzFiNDk2ZDFiMGU5NThkNjQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZpbHRlckltYWdlVmFsdWUuY3BwCkBAIC0xNDEsNyArMTQxLDcg
QEAgUmVmUHRyPEltYWdlPiBDU1NGaWx0ZXJJbWFnZVZhbHVlOjppbWFnZShSZW5kZXJFbGVtZW50
JiByZW5kZXJlciwgY29uc3QgRmxvYXRTaXoKIHZvaWQgQ1NTRmlsdGVySW1hZ2VWYWx1ZTo6Zmls
dGVySW1hZ2VDaGFuZ2VkKGNvbnN0IEludFJlY3QmKQogewogICAgIGZvciAoYXV0byYgY2xpZW50
IDogY2xpZW50cygpKQotICAgICAgICBjbGllbnQua2V5LT5pbWFnZUNoYW5nZWQoc3RhdGljX2Nh
c3Q8V3JhcHBlZEltYWdlUHRyPih0aGlzKSk7CisgICAgICAgIGNsaWVudC5rZXktPmltYWdlQ2hh
bmdlZChXcmFwcGVkSW1hZ2VQdHIodGhpcykpOwogfQogCiB2b2lkIENTU0ZpbHRlckltYWdlVmFs
dWU6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoU3R5bGU6OkJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0
YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA0YjdjYTIxNjNh
Yjc3YzU4MmNmMDI0NDkyNTAxNmZmNTQ2MTM2MTQzLi5iYjJjNjM3NWI0MTk2Mzk3NzVkOGVlNDVm
MjA4OWNiODU3NTRkNjg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApA
QCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogCiAjaW5jbHVkZSAiQ1NT
Rm9udFNlbGVjdG9yLmgiCisjaW5jbHVkZSAiQ2FjaGVkSW1hZ2UuaCIKICNpbmNsdWRlICJDb250
cm9sU3RhdGVzLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJFZGl0aW5nLmgi
CkBAIC0xODEzLDYgKzE4MTQsOSBAQCB2b2lkIFJlbmRlckJveDo6aW1hZ2VDaGFuZ2VkKFdyYXBw
ZWRJbWFnZVB0ciBpbWFnZSwgY29uc3QgSW50UmVjdCopCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKKyAgICBpZiAoaW1hZ2UgJiYgV1RGOjpob2xkc19hbHRlcm5hdGl2ZTxDYWNoZWRJbWFnZSo+
KCppbWFnZSkgJiYgV1RGOjpnZXQ8Q2FjaGVkSW1hZ2UqPigqaW1hZ2UpLT5oYXNTVkdJbWFnZSgp
KQorICAgICAgICBzZXROZWVkc0xheW91dCgpOworCiAgICAgU2hhcGVWYWx1ZSogc2hhcGVPdXRz
aWRlVmFsdWUgPSBzdHlsZSgpLnNoYXBlT3V0c2lkZSgpOwogICAgIGlmICghdmlldygpLmZyYW1l
VmlldygpLmxheW91dENvbnRleHQoKS5pc0luUmVuZGVyVHJlZUxheW91dCgpICYmIGlzRmxvYXRp
bmcoKSAmJiBzaGFwZU91dHNpZGVWYWx1ZSAmJiBzaGFwZU91dHNpZGVWYWx1ZS0+aW1hZ2UoKSAm
JiBzaGFwZU91dHNpZGVWYWx1ZS0+aW1hZ2UoKS0+ZGF0YSgpID09IGltYWdlKSB7CiAgICAgICAg
IFNoYXBlT3V0c2lkZUluZm86OmVuc3VyZUluZm8oKnRoaXMpLm1hcmtTaGFwZUFzRGlydHkoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZVJlc291cmNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2VSZXNvdXJjZS5oCmluZGV4
IGVlMTZiZmE2YWJmNzEwZjgzNTE0ZWY3MmI0MWE3ZjY2MTE0ZjAyYjcuLjY2YmQyODA5MDYxOGYw
MDBjYmViZjIzMjJkNjA5Y2I4NmE5ZjFkMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJJbWFnZVJlc291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckltYWdlUmVzb3VyY2UuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAg
aW5saW5lIExheW91dFNpemUgaW1hZ2VTaXplKGZsb2F0IG11bHRpcGxpZXIpIGNvbnN0IHsgcmV0
dXJuIGltYWdlU2l6ZShtdWx0aXBsaWVyLCBDYWNoZWRJbWFnZTo6VXNlZFNpemUpOyB9CiAgICAg
aW5saW5lIExheW91dFNpemUgaW50cmluc2ljU2l6ZShmbG9hdCBtdWx0aXBsaWVyKSBjb25zdCB7
IHJldHVybiBpbWFnZVNpemUobXVsdGlwbGllciwgQ2FjaGVkSW1hZ2U6OkludHJpbnNpY1NpemUp
OyB9CiAKLSAgICB2aXJ0dWFsIFdyYXBwZWRJbWFnZVB0ciBpbWFnZVB0cigpIGNvbnN0IHsgcmV0
dXJuIG1fY2FjaGVkSW1hZ2UuZ2V0KCk7IH0KKyAgICB2aXJ0dWFsIFdyYXBwZWRJbWFnZVB0ciBp
bWFnZVB0cigpIGNvbnN0IHsgcmV0dXJuIGNhY2hlZEltYWdlKCkgPyBXcmFwcGVkSW1hZ2VQdHIo
Y2FjaGVkSW1hZ2UoKSkgOiBXVEY6Om51bGxvcHQ7IH0KIAogcHJvdGVjdGVkOgogICAgIFJlbmRl
ckVsZW1lbnQqIHJlbmRlcmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJlci5nZXQoKTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCAwNTY1MjY3ZDhh
N2QyMjQ4NGFjZTNjYTExMzMxNzRkNGM2NTc4Mzg0Li44ZGU1YWE0NGM1NzIyNWE5OGIyOWIxZWRi
MjBmODIxMjNjNDM5NTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0
LmNwcApAQCAtMTY0MCw3ICsxNjQwLDcgQEAgdm9pZCBSZW5kZXJPYmplY3Q6OmFkanVzdFJlY3RG
b3JPdXRsaW5lQW5kU2hhZG93KExheW91dFJlY3QmIHJlY3QpIGNvbnN0CiAKIHZvaWQgUmVuZGVy
T2JqZWN0OjppbWFnZUNoYW5nZWQoQ2FjaGVkSW1hZ2UqIGltYWdlLCBjb25zdCBJbnRSZWN0KiBy
ZWN0KQogewotICAgIGltYWdlQ2hhbmdlZChzdGF0aWNfY2FzdDxXcmFwcGVkSW1hZ2VQdHI+KGlt
YWdlKSwgcmVjdCk7CisgICAgaW1hZ2VDaGFuZ2VkKFdyYXBwZWRJbWFnZVB0cihpbWFnZSksIHJl
Y3QpOwogfQogCiBSZW5kZXJCb3hNb2RlbE9iamVjdCogUmVuZGVyT2JqZWN0OjpvZmZzZXRQYXJl
bnQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlQ2FjaGVkSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNh
Y2hlZEltYWdlLmgKaW5kZXggNTBlZDcxMzU2NzJkNTkzOTBhZDJmNWNmNGFhMDM5MDVlNDQ1NjUx
OC4uZGE5ZTI5ZWRhNTIyNmE3YThhYzFhYjI2MWU1NzhlYmFkMGYwNGM4NCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkSW1hZ2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oCkBAIC00Myw3
ICs0Myw3IEBAIHB1YmxpYzoKIAogICAgIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSgpIGNvbnN0
IGZpbmFsOwogCi0gICAgV3JhcHBlZEltYWdlUHRyIGRhdGEoKSBjb25zdCBmaW5hbCB7IHJldHVy
biBtX2NhY2hlZEltYWdlLmdldCgpOyB9CisgICAgV3JhcHBlZEltYWdlUHRyIGRhdGEoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBjYWNoZWRJbWFnZSgpID8gV3JhcHBlZEltYWdlUHRyKGNhY2hlZElt
YWdlKCkpIDogV1RGOjpudWxsb3B0OyB9CiAKICAgICBSZWY8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkg
Y29uc3QgZmluYWw7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVHZW5lcmF0ZWRJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlR2VuZXJhdGVkSW1hZ2UuaAppbmRleCA0ZTFkMDJmMGFlNjQ2YWRhM2NlNDFiMDc2
ZTg3NjRmNzQzMDFjMzBhLi42NzAzYmFlNWFkOTg1Y2U5MWIxMWUzMWQwY2IwNmFmNDY1OGFjYjc4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVHZW5lcmF0
ZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdlbmVy
YXRlZEltYWdlLmgKQEAgLTM3LDEyICszNywxMiBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IFN0eWxlR2VuZXJhdGVkSW1hZ2UoV1RGTW92ZSh2YWx1ZSkpKTsKICAgICB9
CiAKLSAgICBDU1NJbWFnZUdlbmVyYXRvclZhbHVlJiBpbWFnZVZhbHVlKCkgeyByZXR1cm4gbV9p
bWFnZUdlbmVyYXRvclZhbHVlOyB9CisgICAgQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSYgaW1hZ2VW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW1hZ2VHZW5lcmF0b3JWYWx1ZTsgfQogCiBwcml2YXRl
OgogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTdHlsZUltYWdlJiBvdGhlcikgY29uc3QgZmlu
YWwgeyByZXR1cm4gZGF0YSgpID09IG90aGVyLmRhdGEoKTsgfQogCi0gICAgV3JhcHBlZEltYWdl
UHRyIGRhdGEoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ltYWdlR2VuZXJhdG9yVmFsdWUucHRy
KCk7IH0KKyAgICBXcmFwcGVkSW1hZ2VQdHIgZGF0YSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFdy
YXBwZWRJbWFnZVB0cigmaW1hZ2VWYWx1ZSgpKTsgfQogCiAgICAgUmVmPENTU1ZhbHVlPiBjc3NW
YWx1ZSgpIGNvbnN0IGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlSW1hZ2UuaAppbmRleCAzZWQ4OTgzMTBjM2Q2ZTI5ZDBiYmQ4YmE5Mjc4NDJhNjY4ZGNlMDIy
Li45MzRjZGJhM2I5OTIzNTAxZDdlZWExMWYxNjZiYmQ2NTYyOGNlNGFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVJbWFnZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUltYWdlLmgKQEAgLTM0LDEyICszNCwxNSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZEltYWdlOwogY2xhc3MgQ2FjaGVkUmVz
b3VyY2VMb2FkZXI7CitjbGFzcyBDU1NJbWFnZUdlbmVyYXRvclZhbHVlOwogY2xhc3MgQ1NTVmFs
dWU7CiBjbGFzcyBSZW5kZXJFbGVtZW50OwogY2xhc3MgUmVuZGVyT2JqZWN0OworY2xhc3MgU3R5
bGVDYWNoZWRJbWFnZTsKKwogc3RydWN0IFJlc291cmNlTG9hZGVyT3B0aW9uczsKIAotdHlwZWRl
ZiBjb25zdCB2b2lkKiBXcmFwcGVkSW1hZ2VQdHI7Cit1c2luZyBXcmFwcGVkSW1hZ2VQdHIgPSBP
cHRpb25hbDxWYXJpYW50PENhY2hlZEltYWdlKiwgU3R5bGVDYWNoZWRJbWFnZSosIENTU0ltYWdl
R2VuZXJhdG9yVmFsdWUqPj47CiAKIGNsYXNzIFN0eWxlSW1hZ2UgOiBwdWJsaWMgUmVmQ291bnRl
ZDxTdHlsZUltYWdlPiB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVNdWx0aUltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZU11bHRpSW1hZ2UuY3BwCmluZGV4IDc3NjY2N2M3YTY0YWIxNjA2YjcwYzdj
MzZmMTFmMjc3NmUyYzExNTEuLjRkZmIyMzk4MGY3N2NmZDFiZDY0YTMyOTcxZmYyNzM3NTA3OWNm
MDggMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRp
SW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZU11bHRp
SW1hZ2UuY3BwCkBAIC03NCw3ICs3NCw3IEBAIENhY2hlZEltYWdlKiBTdHlsZU11bHRpSW1hZ2U6
OmNhY2hlZEltYWdlKCkgY29uc3QKIFdyYXBwZWRJbWFnZVB0ciBTdHlsZU11bHRpSW1hZ2U6OmRh
dGEoKSBjb25zdAogewogICAgIGlmICghbV9zZWxlY3RlZEltYWdlKQotICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKICAgICByZXR1cm4gbV9zZWxl
Y3RlZEltYWdlLT5kYXRhKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421646</attachid>
            <date>2021-02-26 08:05:24 -0800</date>
            <delta_ts>2021-03-01 16:18:21 -0800</delta_ts>
            <desc>alternative approach</desc>
            <filename>svg-background-paint.patch</filename>
            <type>text/plain</type>
            <size>3720</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCmluZGV4IDVjNzJi
OTg4ZmFmMi4uMTcxNDQ1OWYxNThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRJbWFnZS5jcHAKQEAgLTQzLDYgKzQzLDcgQEAKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIu
aCIKICNpbmNsdWRlICJTdWJyZXNvdXJjZUxvYWRlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9TZXRGb3JTY29wZS5oPgogI2luY2x1ZGUgPHd0Zi9T
dGRMaWJFeHRyYXMuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCkBAIC01NywxMCArNTgs
NiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENhY2hlZEltYWdlOjpDYWNoZWRJbWFnZShDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBQQUw6OlNlc3Npb25JRCYgc2Vzc2lv
bklELCBjb25zdCBDb29raWVKYXIqIGNvb2tpZUphcikKICAgICA6IENhY2hlZFJlc291cmNlKFdU
Rk1vdmUocmVxdWVzdCksIFR5cGU6OkltYWdlUmVzb3VyY2UsIHNlc3Npb25JRCwgY29va2llSmFy
KQotICAgICwgbV91cGRhdGVJbWFnZURhdGFDb3VudCgwKQotICAgICwgbV9pc01hbnVhbGx5Q2Fj
aGVkKGZhbHNlKQotICAgICwgbV9zaG91bGRQYWludEJyb2tlbkltYWdlKHRydWUpCi0gICAgLCBt
X2ZvcmNlVXBkYXRlSW1hZ2VEYXRhRW5hYmxlZEZvclRlc3RpbmcoZmFsc2UpCiB7CiAgICAgc2V0
U3RhdHVzKFVua25vd24pOwogfQpAQCAtNjgsMjAgKzY1LDEzIEBAIENhY2hlZEltYWdlOjpDYWNo
ZWRJbWFnZShDYWNoZWRSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBQQUw6OlNlc3Np
b25JRCYKIENhY2hlZEltYWdlOjpDYWNoZWRJbWFnZShJbWFnZSogaW1hZ2UsIGNvbnN0IFBBTDo6
U2Vzc2lvbklEJiBzZXNzaW9uSUQsIGNvbnN0IENvb2tpZUphciogY29va2llSmFyKQogICAgIDog
Q2FjaGVkUmVzb3VyY2UoVVJMKCksIFR5cGU6OkltYWdlUmVzb3VyY2UsIHNlc3Npb25JRCwgY29v
a2llSmFyKQogICAgICwgbV9pbWFnZShpbWFnZSkKLSAgICAsIG1fdXBkYXRlSW1hZ2VEYXRhQ291
bnQoMCkKLSAgICAsIG1faXNNYW51YWxseUNhY2hlZChmYWxzZSkKLSAgICAsIG1fc2hvdWxkUGFp
bnRCcm9rZW5JbWFnZSh0cnVlKQotICAgICwgbV9mb3JjZVVwZGF0ZUltYWdlRGF0YUVuYWJsZWRG
b3JUZXN0aW5nKGZhbHNlKQogewogfQogCiBDYWNoZWRJbWFnZTo6Q2FjaGVkSW1hZ2UoY29uc3Qg
VVJMJiB1cmwsIEltYWdlKiBpbWFnZSwgY29uc3QgUEFMOjpTZXNzaW9uSUQmIHNlc3Npb25JRCwg
Y29uc3QgQ29va2llSmFyKiBjb29raWVKYXIsIGNvbnN0IFN0cmluZyYgZG9tYWluRm9yQ2FjaGVQ
YXJ0aXRpb24pCiAgICAgOiBDYWNoZWRSZXNvdXJjZSh1cmwsIFR5cGU6OkltYWdlUmVzb3VyY2Us
IHNlc3Npb25JRCwgY29va2llSmFyKQogICAgICwgbV9pbWFnZShpbWFnZSkKLSAgICAsIG1fdXBk
YXRlSW1hZ2VEYXRhQ291bnQoMCkKICAgICAsIG1faXNNYW51YWxseUNhY2hlZCh0cnVlKQotICAg
ICwgbV9zaG91bGRQYWludEJyb2tlbkltYWdlKHRydWUpCi0gICAgLCBtX2ZvcmNlVXBkYXRlSW1h
Z2VEYXRhRW5hYmxlZEZvclRlc3RpbmcoZmFsc2UpCiB7CiAgICAgbV9yZXNvdXJjZVJlcXVlc3Qu
c2V0RG9tYWluRm9yQ2FjaGVQYXJ0aXRpb24oZG9tYWluRm9yQ2FjaGVQYXJ0aXRpb24pOwogCkBA
IC01NjgsNiArNTU4LDggQEAgdm9pZCBDYWNoZWRJbWFnZTo6dXBkYXRlRGF0YShjb25zdCBjaGFy
KiBkYXRhLCB1bnNpZ25lZCBsZW5ndGgpCiAKIHZvaWQgQ2FjaGVkSW1hZ2U6OmZpbmlzaExvYWRp
bmcoU2hhcmVkQnVmZmVyKiBkYXRhLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3Mp
CiB7CisgICAgU2V0Rm9yU2NvcGU8Ym9vbD4gZmluaXNoTG9hZGluZ1Njb3BlKG1faW5GaW5pc2hM
b2FkaW5nLCB0cnVlKTsKKwogICAgIG1fZGF0YSA9IGNvbnZlcnRlZERhdGFJZk5lZWRlZChkYXRh
KTsKICAgICBpZiAobV9kYXRhKSB7CiAgICAgICAgIHNldEVuY29kZWRTaXplKG1fZGF0YS0+c2l6
ZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFn
ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmgKaW5kZXggZDAx
ZmY5ZDU1MjNjLi40M2Y2NWQzOTY2MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRJbWFnZS5oCkBAIC02Miw3ICs2Miw3IEBAIHB1YmxpYzoKICAgICBzdGQ6OnBhaXI8SW1h
Z2UqLCBmbG9hdD4gYnJva2VuSW1hZ2UoZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IpIGNvbnN0OyAv
LyBSZXR1cm5zIGFuIGltYWdlIGFuZCB0aGUgaW1hZ2UncyByZXNvbHV0aW9uIHNjYWxlIGZhY3Rv
ci4KICAgICBib29sIHdpbGxQYWludEJyb2tlbkltYWdlKCkgY29uc3Q7CiAKLSAgICBib29sIGNh
blJlbmRlcihjb25zdCBSZW5kZXJFbGVtZW50KiByZW5kZXJlciwgZmxvYXQgbXVsdGlwbGllcikg
eyByZXR1cm4gIWVycm9yT2NjdXJyZWQoKSAmJiAhaW1hZ2VTaXplRm9yUmVuZGVyZXIocmVuZGVy
ZXIsIG11bHRpcGxpZXIpLmlzRW1wdHkoKTsgfQorICAgIGJvb2wgY2FuUmVuZGVyKGNvbnN0IFJl
bmRlckVsZW1lbnQqIHJlbmRlcmVyLCBmbG9hdCBtdWx0aXBsaWVyKSB7IHJldHVybiAhZXJyb3JP
Y2N1cnJlZCgpICYmIChtX2luRmluaXNoTG9hZGluZyB8fCAhaW1hZ2VTaXplRm9yUmVuZGVyZXIo
cmVuZGVyZXIsIG11bHRpcGxpZXIpLmlzRW1wdHkoKSk7IH0KIAogICAgIHZvaWQgc2V0Q29udGFp
bmVyQ29udGV4dEZvckNsaWVudChjb25zdCBDYWNoZWRJbWFnZUNsaWVudCYsIGNvbnN0IExheW91
dFNpemUmLCBmbG9hdCwgY29uc3QgVVJMJik7CiAgICAgYm9vbCB1c2VzSW1hZ2VDb250YWluZXJT
aXplKCkgY29uc3QgeyByZXR1cm4gbV9pbWFnZSAmJiBtX2ltYWdlLT51c2VzQ29udGFpbmVyU2l6
ZSgpOyB9CkBAIC0xOTMsMTAgKzE5MywxMSBAQCBwcml2YXRlOgogICAgIFdlYWtQdHI8RG9jdW1l
bnQ+IG1fc2tpcHBpbmdSZXZhbGlkYXRpb25Eb2N1bWVudDsKIAogICAgIHN0YXRpYyBjb25zdGV4
cHIgdW5zaWduZWQgbWF4VXBkYXRlSW1hZ2VEYXRhQ291bnQgPSA0OwotICAgIHVuc2lnbmVkIG1f
dXBkYXRlSW1hZ2VEYXRhQ291bnQgOiAzOwotICAgIGJvb2wgbV9pc01hbnVhbGx5Q2FjaGVkIDog
MTsKLSAgICBib29sIG1fc2hvdWxkUGFpbnRCcm9rZW5JbWFnZSA6IDE7Ci0gICAgYm9vbCBtX2Zv
cmNlVXBkYXRlSW1hZ2VEYXRhRW5hYmxlZEZvclRlc3RpbmcgOiAxOworICAgIHVuc2lnbmVkIG1f
dXBkYXRlSW1hZ2VEYXRhQ291bnQgeyAwIH07CisgICAgYm9vbCBtX2lzTWFudWFsbHlDYWNoZWQg
eyBmYWxzZSB9OworICAgIGJvb2wgbV9zaG91bGRQYWludEJyb2tlbkltYWdlIHsgdHJ1ZSB9Owor
ICAgIGJvb2wgbV9mb3JjZVVwZGF0ZUltYWdlRGF0YUVuYWJsZWRGb3JUZXN0aW5nIHsgZmFsc2Ug
fTsKKyAgICBib29sIG1faW5GaW5pc2hMb2FkaW5nIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421692</attachid>
            <date>2021-02-26 12:20:15 -0800</date>
            <delta_ts>2021-03-01 16:17:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221253-20210226122014.patch</filename>
            <type>text/plain</type>
            <size>3656</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjRjNzRhMTZhMWEwNTM1
ZGRhOWVkMzFkOTI4OTUyMzY5N2ZhMjI2MC4uZmQxNDg0NWU4M2EzYjM5NmZkNTg4ZWE3MTg2MjEy
MGZiYWI1ODlhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTAyLTI2ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2Yg
U1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRoZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgYml0bWFwIGltYWdlLCB0aGUgaW50cmluc2lj
IHNpemUgb2YgU1ZHSW1hZ2UgY2FuIG9ubHkgYmUga25vd24KKyAgICAgICAgYWZ0ZXIgcnVubmlu
ZyBpdHMgbGF5b3V0LiBCZWNhdXNlIFNWR0ltYWdlIGNhbiBiZSB1c2VkIGJ5IG11bHRpcGxlIGNs
aWVudHMsCisgICAgICAgIENhY2hlZEltYWdlIG1haW50YWlucyBhbiBTVkdJbWFnZUNhY2hlIHdo
aWNoIG1hcHMgYSBjbGllbnQgdG8gYW4KKyAgICAgICAgU1ZHSW1hZ2VGb3JDb250YWluZXIuIFNW
R0ltYWdlRm9yQ29udGFpbmVyIGlzIGp1c3QgYSB3cmFwcGVyIG9mIFNWR0ltYWdlCisgICAgICAg
IHdpdGggdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIEJlY2F1c2Ugd2UgbWF5IHNl
dCBhbiBlbnRyeSBmb3IKKyAgICAgICAgdGhlIHJlbmRlcmVyIGluIFNWR0ltYWdlQ2FjaGUgZWFy
bHkgYmVmb3JlIHJ1bm5pbmcgYSBsYXlvdXQgZm9yIFNWR0ltYWdlCisgICAgICAgIGFuZCBiZWNh
dXNlIHRoZSByZW5kZXJlciBpbnRyaW5zaWMgc2l6ZSBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMg
c2l6ZSBvZiAKKyAgICAgICAgU1ZHSW1hZ2UsIFNWR0ltYWdlRm9yQ29udGFpbmVyIG1heSBoYXZl
IGFuIGVtcHR5IGludHJpbnNpYyBzaXplLgorCisgICAgICAgIFNvIGJhc2ljYWxseSBpdCBpcyBh
IHJhY2UgY29uZGl0aW9uOiBrbm93aW5nIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiB0aGUKKyAgICAg
ICAgY2xpZW50IGRlcGVuZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIFNWR0ltYWdlLiBBbmQg
dGhlIGludHJpbnNpYyBzaXplCisgICAgICAgIG9mIFNWR0ltYWdlRm9yQ29udGFpbmVyIGRlcGVu
ZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIFRoaXMKKyAgICAgICAgbWF5
IGxlYWQgdG8gbm90IHJlbmRlcmluZyB0aGUgY2xpZW50cyBiZWNhdXNlIHRoZWlyIHNpemVzIGFy
ZSBlbXB0eS4gVG8KKyAgICAgICAgZml4IHRoaXMgaXNzdWUgd2UgbmVlZCB0byBmb3JjZSBjYWxj
dWxhdGVCYWNrZ3JvdW5kSW1hZ2VHZW9tZXRyeSgpIG9uY2UKKyAgICAgICAgd2UgZmluaXNoIHRo
ZSBsYXlvdXQgb2YgdGhlIFNWR0ltYWdlIHdoaWNoIGhhcHBlbnMgYWZ0ZXIgcmVjZWl2aW5nIGFs
bAorICAgICAgICBpdHMgZGF0YSBhbmQgY2FsbGluZyBSZW5kZXJCb3g6OmltYWdlQ2hhbmdlZCgp
LgorCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNhY2hlZEltYWdlOjpmaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6cmVwYWludExheWVy
UmVjdHNGb3JJbWFnZSk6CisKIDIwMjEtMDItMjUgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2FpZEBh
cHBsZS5jb20+CiAKICAgICAgICAgW0dQVSBQcm9jZXNzXSBTdHJva2UgYW5kIGZpbGwgU3RhdGVD
aGFuZ2VGbGFncyBzaG91bGQgYmUgc2V0IGV4Y2x1c2l2ZWx5IApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRJbWFnZS5jcHAKaW5kZXggNWM3MmI5ODhmYWYyZGMyYzA4OGE5ZmIw
NzZmYjI3ZDgxYWU4ZjE2Yy4uM2U0NTEyOGQ3ZThlZWUzMGEyNjEzNmQzZTZkMzQzZWY5NDY0NTg3
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCkBAIC01
ODQsNiArNTg0LDcgQEAgdm9pZCBDYWNoZWRJbWFnZTo6ZmluaXNoTG9hZGluZyhTaGFyZWRCdWZm
ZXIqIGRhdGEsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbWUKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAorICAgIHNldExvYWRpbmcoZmFsc2UpOwogICAgIG5vdGlmeU9ic2VydmVycygpOwog
ICAgIENhY2hlZFJlc291cmNlOjpmaW5pc2hMb2FkaW5nKGRhdGEsIG1ldHJpY3MpOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA0YjdjYTIxNjNhYjc3YzU4MmNm
MDI0NDkyNTAxNmZmNTQ2MTM2MTQzLi5hNTA4YTcwNDRhZjEwOWJhNjU3NWQ1ZGFlMjk0NzcxNjk2
Mjc4YWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtMTg1MCw3
ICsxODUwLDcgQEAgYm9vbCBSZW5kZXJCb3g6OnJlcGFpbnRMYXllclJlY3RzRm9ySW1hZ2UoV3Jh
cHBlZEltYWdlUHRyIGltYWdlLCBjb25zdCBGaWxsTGF5ZXIKICAgICBSZW5kZXJCb3gqIGxheWVy
UmVuZGVyZXIgPSBudWxscHRyOwogCiAgICAgZm9yIChhdXRvKiBsYXllciA9ICZsYXllcnM7IGxh
eWVyOyBsYXllciA9IGxheWVyLT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKGxheWVyLT5pbWFnZSgp
ICYmIGltYWdlID09IGxheWVyLT5pbWFnZSgpLT5kYXRhKCkgJiYgbGF5ZXItPmltYWdlKCktPmNh
blJlbmRlcih0aGlzLCBzdHlsZSgpLmVmZmVjdGl2ZVpvb20oKSkpIHsKKyAgICAgICAgaWYgKGxh
eWVyLT5pbWFnZSgpICYmIGltYWdlID09IGxheWVyLT5pbWFnZSgpLT5kYXRhKCkgJiYgKGxheWVy
LT5pbWFnZSgpLT5pc0xvYWRlZCgpIHx8IGxheWVyLT5pbWFnZSgpLT5jYW5SZW5kZXIodGhpcywg
c3R5bGUoKS5lZmZlY3RpdmVab29tKCkpKSkgewogICAgICAgICAgICAgLy8gTm93IHRoYXQgd2Ug
a25vdyB0aGlzIGltYWdlIGlzIGJlaW5nIHVzZWQsIGNvbXB1dGUgdGhlIHJlbmRlcmVyIGFuZCB0
aGUgcmVjdCBpZiB3ZSBoYXZlbid0IGFscmVhZHkuCiAgICAgICAgICAgICBib29sIGRyYXdpbmdS
b290QmFja2dyb3VuZCA9IGRyYXdpbmdCYWNrZ3JvdW5kICYmIChpc0RvY3VtZW50RWxlbWVudFJl
bmRlcmVyKCkgfHwgKGlzQm9keSgpICYmICFkb2N1bWVudCgpLmRvY3VtZW50RWxlbWVudCgpLT5y
ZW5kZXJlcigpLT5oYXNCYWNrZ3JvdW5kKCkpKTsKICAgICAgICAgICAgIGlmICghbGF5ZXJSZW5k
ZXJlcikgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421884</attachid>
            <date>2021-03-01 16:18:02 -0800</date>
            <delta_ts>2021-03-02 15:22:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221253-20210301161801.patch</filename>
            <type>text/plain</type>
            <size>6505</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNjcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGJmOGEwMjQ1Yzk0NjMw
MGRlMDliMjQ3ZjNiYjljZTU4M2FmN2NjNC4uYzRjY2M2YzBmNzZhOTYxZGYwMTJkMzViZWIwZTVk
NjA3Y2I5OTA2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDIxLTAzLTAxICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2Yg
U1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRoZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgYml0bWFwIGltYWdlLCB0aGUgaW50cmluc2lj
IHNpemUgb2YgU1ZHSW1hZ2UgY2FuIG9ubHkgYmUga25vd24KKyAgICAgICAgYWZ0ZXIgcnVubmlu
ZyBpdHMgbGF5b3V0LiBCZWNhdXNlIFNWR0ltYWdlIGNhbiBiZSB1c2VkIGJ5IG11bHRpcGxlIGNs
aWVudHMsCisgICAgICAgIENhY2hlZEltYWdlIG1haW50YWlucyBhbiBTVkdJbWFnZUNhY2hlIHdo
aWNoIG1hcHMgYSBjbGllbnQgdG8gYW4KKyAgICAgICAgU1ZHSW1hZ2VGb3JDb250YWluZXIuIFNW
R0ltYWdlRm9yQ29udGFpbmVyIGlzIGp1c3QgYSB3cmFwcGVyIG9mIFNWR0ltYWdlCisgICAgICAg
IHdpdGggdGhlIGludHJpbnNpYyBzaXplIG9mIHRoZSBjbGllbnQuIEJlY2F1c2Ugd2UgbWF5IHNl
dCBhbiBlbnRyeSBmb3IKKyAgICAgICAgdGhlIHJlbmRlcmVyIGluIFNWR0ltYWdlQ2FjaGUgZWFy
bHkgYmVmb3JlIHJ1bm5pbmcgYSBsYXlvdXQgZm9yIFNWR0ltYWdlCisgICAgICAgIGFuZCBiZWNh
dXNlIHRoZSByZW5kZXJlciBpbnRyaW5zaWMgc2l6ZSBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMg
c2l6ZSBvZiAKKyAgICAgICAgU1ZHSW1hZ2UsIFNWR0ltYWdlRm9yQ29udGFpbmVyIG1heSBoYXZl
IGFuIGVtcHR5IGludHJpbnNpYyBzaXplLgorCisgICAgICAgIFNvIGJhc2ljYWxseSBpdCBpcyBh
IHJhY2UgY29uZGl0aW9uOiBrbm93aW5nIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiB0aGUKKyAgICAg
ICAgU1ZHSW1hZ2UgY2xpZW50IGRlcGVuZHMgb24gdGhlIGludHJpbnNpYyBzaXplIG9mIFNWR0lt
YWdlIGl0c2VsZi4gQW5kIHRoZQorICAgICAgICBpbnRyaW5zaWMgc2l6ZSBvZiBTVkdJbWFnZUZv
ckNvbnRhaW5lciBkZXBlbmRzIG9uIHRoZSBpbnRyaW5zaWMgc2l6ZSBvZiAKKyAgICAgICAgdGhl
IGNsaWVudC4gVGhpcyBtYXkgbGVhZCB0byBub3QgcmVuZGVyaW5nIHRoZSBjbGllbnRzIGJlY2F1
c2UgdGhlaXIgc2l6ZXMKKyAgICAgICAgYXJlIGVtcHR5LiBUbyBmaXggdGhpcyBpc3N1ZSB3ZSBu
ZWVkIHRvIGZvcmNlIGNhbGN1bGF0ZUJhY2tncm91bmRJbWFnZUdlb21ldHJ5KCkKKyAgICAgICAg
b25jZSB3ZSBmaW5pc2ggdGhlIGxheW91dCBvZiB0aGUgU1ZHSW1hZ2Ugd2hpY2ggaGFwcGVucyBh
ZnRlciByZWNlaXZpbmcgYWxsCisgICAgICAgIGl0cyBkYXRhIGFuZCBjYWxsaW5nIFJlbmRlckJv
eDo6aW1hZ2VDaGFuZ2VkKCkuCisKKyAgICAgICAgVGVzdDogZmFzdC9jc3MvYmFja2dyb3VuZC1z
dmctaW1hZ2UtbG9hZGluZy5odG1sCisKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkSW1h
Z2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkSW1hZ2U6OmZpbmlzaExvYWRpbmcpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyQm94OjpyZXBhaW50TGF5ZXJSZWN0c0ZvckltYWdlKToKKwogMjAyMS0wMy0wMSAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIFRocm93IFR5cGVF
cnJvciB3aGVuIGdldEZ1bmN0aW9uUmVhbG0gaGl0cyByZXZva2VkIFByb3h5CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcAppbmRleCA1YzcyYjk4OGZhZjJkYzJj
MDg4YTlmYjA3NmZiMjdkODFhZThmMTZjLi4zZTQ1MTI4ZDdlOGVlZTMwYTI2MTM2ZDNlNmQzNDNl
Zjk0NjQ1ODc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
SW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5j
cHAKQEAgLTU4NCw2ICs1ODQsNyBAQCB2b2lkIENhY2hlZEltYWdlOjpmaW5pc2hMb2FkaW5nKFNo
YXJlZEJ1ZmZlciogZGF0YSwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBtZQogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCisgICAgc2V0TG9hZGluZyhmYWxzZSk7CiAgICAgbm90aWZ5T2JzZXJ2
ZXJzKCk7CiAgICAgQ2FjaGVkUmVzb3VyY2U6OmZpbmlzaExvYWRpbmcoZGF0YSwgbWV0cmljcyk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IDUzZmQwZjBmMzhj
YTVhZmQxMDc5ZmRjMzQwNzQ4YjE0YzljMjkwMDAuLjY0YTYwNzY2ODc1OGUwMzU0MDg1Y2QzNjgw
ZTYwNDU1NTVlMzU4OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBA
IC0xODUwLDcgKzE4NTAsNyBAQCBib29sIFJlbmRlckJveDo6cmVwYWludExheWVyUmVjdHNGb3JJ
bWFnZShXcmFwcGVkSW1hZ2VQdHIgaW1hZ2UsIGNvbnN0IEZpbGxMYXllcgogICAgIFJlbmRlckJv
eCogbGF5ZXJSZW5kZXJlciA9IG51bGxwdHI7CiAKICAgICBmb3IgKGF1dG8qIGxheWVyID0gJmxh
eWVyczsgbGF5ZXI7IGxheWVyID0gbGF5ZXItPm5leHQoKSkgewotICAgICAgICBpZiAobGF5ZXIt
PmltYWdlKCkgJiYgaW1hZ2UgPT0gbGF5ZXItPmltYWdlKCktPmRhdGEoKSAmJiBsYXllci0+aW1h
Z2UoKS0+Y2FuUmVuZGVyKHRoaXMsIHN0eWxlKCkuZWZmZWN0aXZlWm9vbSgpKSkgeworICAgICAg
ICBpZiAobGF5ZXItPmltYWdlKCkgJiYgaW1hZ2UgPT0gbGF5ZXItPmltYWdlKCktPmRhdGEoKSAm
JiAobGF5ZXItPmltYWdlKCktPmlzTG9hZGVkKCkgfHwgbGF5ZXItPmltYWdlKCktPmNhblJlbmRl
cih0aGlzLCBzdHlsZSgpLmVmZmVjdGl2ZVpvb20oKSkpKSB7CiAgICAgICAgICAgICAvLyBOb3cg
dGhhdCB3ZSBrbm93IHRoaXMgaW1hZ2UgaXMgYmVpbmcgdXNlZCwgY29tcHV0ZSB0aGUgcmVuZGVy
ZXIgYW5kIHRoZSByZWN0IGlmIHdlIGhhdmVuJ3QgYWxyZWFkeS4KICAgICAgICAgICAgIGJvb2wg
ZHJhd2luZ1Jvb3RCYWNrZ3JvdW5kID0gZHJhd2luZ0JhY2tncm91bmQgJiYgKGlzRG9jdW1lbnRF
bGVtZW50UmVuZGVyZXIoKSB8fCAoaXNCb2R5KCkgJiYgIWRvY3VtZW50KCkuZG9jdW1lbnRFbGVt
ZW50KCktPnJlbmRlcmVyKCktPmhhc0JhY2tncm91bmQoKSkpOwogICAgICAgICAgICAgaWYgKCFs
YXllclJlbmRlcmVyKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjVjNjllMTQ3MjFhN2Q0ZDIzODE3MTc2MDdiZDgxM2Vl
M2NhNTk2OS4uZjBiYzRlYTUyOTA3YjI3YWUzMmYxZTYxYmMyZjdlNmVkODRhNDliNiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDIxLTAzLTAxICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhaWRAYXBw
bGUuY29tPgorCisgICAgICAgIFRoZSBsYXlvdXQgb2YgU1ZHSW1hZ2Ugc2hvdWxkIGZvcmNlIHRo
ZSBsYXlvdXQgZm9yIGl0cyBjbGllbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjEyNTMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MTM4NjQx
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFz
dC9jc3MvYmFja2dyb3VuZC1zdmctaW1hZ2UtbG9hZGluZy1leHBlY3RlZC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2Nzcy9iYWNrZ3JvdW5kLXN2Zy1pbWFnZS1sb2FkaW5nLmh0bWw6IEFk
ZGVkLgorCiAyMDIxLTAzLTAxICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgog
CiAgICAgICAgIFtHUFUgUHJvY2Vzc10gU29tZSBEaXNwbGF5TGlzdCBpdGVtcyBtYXkgbm90IGJl
IHJlcGxheWVkIGJhY2sgYmVmb3JlIGNhbGxpbmcgZ2V0SW1hZ2VEYXRhKCkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL2JhY2tncm91bmQtc3ZnLWltYWdlLWxvYWRpbmctZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JhY2tncm91bmQtc3ZnLWltYWdlLWxvYWRp
bmctZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MmZiMDcwMDhiMTY2MWE4NDA4MmIxNzY0OTQ0
YTdmMjgzNWVlOTYwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvYmFj
a2dyb3VuZC1zdmctaW1hZ2UtbG9hZGluZy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTggQEAK
KzxzdHlsZT4KKyAgICAuY29udGFpbmVyIHsKKyAgICAgICAgd2lkdGg6IDkwMHB4OworICAgIH0K
KyAgICAubGluZSB7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworICAgICAgICBi
YWNrZ3JvdW5kLXNpemU6IDI0cHg7CisgICAgfQorPC9zdHlsZT4KKzxib2R5PgorICAgIDxwPlBB
U1Mgd2hlbiBhbGwgdGhlIGxpbmVzIGJlbG93IGhhdmUgdmlzaWJsZSBiYWNrZ3JvdW5kIGltYWdl
cy48cD4KKyAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgorICAgICAgICA8ZGl2IGNsYXNzPSJs
aW5lIj5zaG91bGQgaGF2ZSBhIHZpc2libGUgYmFja2dyb3VuZCBpbWFnZTwvZGl2PgorICAgICAg
ICA8ZGl2IGNsYXNzPSJsaW5lIj5zaG91bGQgaGF2ZSBhIHZpc2libGUgYmFja2dyb3VuZCBpbWFn
ZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJsaW5lIj5zaG91bGQgaGF2ZSBhIHZpc2libGUg
YmFja2dyb3VuZCBpbWFnZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJsaW5lIj5zaG91bGQg
aGF2ZSBhIHZpc2libGUgYmFja2dyb3VuZCBpbWFnZTwvZGl2PgorICAgIDwvZGl2PgorPGJvZHk+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9iYWNrZ3JvdW5kLXN2Zy1pbWFnZS1s
b2FkaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9iYWNrZ3JvdW5kLXN2Zy1pbWFnZS1s
b2FkaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU3NDdjOGY0OGRlNzBmYmMzYjdiNDA1ZGI4OWM3OTgz
NzUxZDJmNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL2JhY2tncm91
bmQtc3ZnLWltYWdlLWxvYWRpbmcuaHRtbApAQCAtMCwwICsxLDIxIEBACis8c3R5bGU+CisgICAg
LmNvbnRhaW5lciB7CisgICAgICAgIHdpZHRoOiA5MDBweDsKKyAgICB9CisgICAgLmxpbmUgewor
ICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LFwK
KyAgICAgICAgICAgIDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBoZWln
aHQ9IjI0IiB3aWR0aD0iMjQiPlwKKyAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD0iMTAwJSIg
aGVpZ2h0PSIxMDAlIiBmaWxsPSJncmVlbiIvPlwKKyAgICAgICAgICAgIDwvc3ZnPicpOworICAg
ICAgICBiYWNrZ3JvdW5kLXNpemU6IDI0cHg7CisgICAgfQorPC9zdHlsZT4KKzxib2R5PgorICAg
IDxwPlBBU1Mgd2hlbiBhbGwgdGhlIGxpbmVzIGJlbG93IGhhdmUgdmlzaWJsZSBiYWNrZ3JvdW5k
IGltYWdlcy48cD4KKyAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgorICAgICAgICA8ZGl2IGNs
YXNzPSJsaW5lIj5zaG91bGQgaGF2ZSBhIHZpc2libGUgYmFja2dyb3VuZCBpbWFnZTwvZGl2Pgor
ICAgICAgICA8ZGl2IGNsYXNzPSJsaW5lIj5zaG91bGQgaGF2ZSBhIHZpc2libGUgYmFja2dyb3Vu
ZCBpbWFnZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJsaW5lIj5zaG91bGQgaGF2ZSBhIHZp
c2libGUgYmFja2dyb3VuZCBpbWFnZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJsaW5lIj5z
aG91bGQgaGF2ZSBhIHZpc2libGUgYmFja2dyb3VuZCBpbWFnZTwvZGl2PgorICAgIDwvZGl2Pgor
PGJvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>