<?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>58414</bug_id>
          
          <creation_ts>2011-04-12 22:42:12 -0700</creation_ts>
          <short_desc>Style change in invisible iframes can cause accelerated content to disappear</short_desc>
          <delta_ts>2011-04-19 19:17:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Labour">piman</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>cmarrin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>jamesr</cc>
    
    <cc>kbr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>vangelis</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>384685</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-12 22:42:12 -0700</bug_when>
    <thetext>See repro case in attachment (unpack, load main.html). After 2 seconds, the iframe content changes style that triggers a compositing change there. This causes layers in the main page to disappear. 
The problem is that it seems to cause the root layer for the page to be replaced by the invisible iframe&apos;s root layer.

Here&apos;s the stack trace:

#0  WebCore::LayerRendererChromium::setRootLayer (this=0xd6769a0, layer=...) at third_party/WebKit/Source/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp:495
#1  0x09821c59 in WebKit::WebViewImpl::setRootGraphicsLayer (this=0xd676580, layer=0xd813400) at third_party/WebKit/Source/WebKit/chromium/src/WebViewImpl.cpp:2336
#2  0x0983b5d7 in WebKit::ChromeClientImpl::attachRootGraphicsLayer (this=0xd676598, frame=0xe749000, graphicsLayer=0xd7fdc40) at third_party/WebKit/Source/WebKit/chromium/src/ChromeClientImpl.cpp:811
#3  0x0a26695e in WebCore::RenderLayerCompositor::attachRootPlatformLayer (this=0xd818900, attachment=WebCore::RenderLayerCompositor::RootLayerAttachedViaChromeClient) at third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:1496    &lt;---- wrong
#4  0x0a2666e4 in WebCore::RenderLayerCompositor::ensureRootPlatformLayer (this=0xd818900) at third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:1461
#5  0x0a2622de in WebCore::RenderLayerCompositor::enableCompositingMode (this=0xd818900, enable=true) at third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:135
#6  0x0a262a36 in WebCore::RenderLayerCompositor::updateBacking (this=0xd818900, layer=0xe1e087c, shouldRepaint=WebCore::RenderLayerCompositor::CompositingChangeRepaintNow) at third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:330
#7  0x0a262ce7 in WebCore::RenderLayerCompositor::updateLayerCompositingState (this=0xd818900, layer=0xe1e087c, shouldRepaint=WebCore::RenderLayerCompositor::CompositingChangeRepaintNow) at third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:400
#8  0x0a254fbb in WebCore::RenderLayer::styleChanged (this=0xe1e087c, diff=WebCore::StyleDifferenceLayout, oldStyle=0xe76ce40) at third_party/WebKit/Source/WebCore/rendering/RenderLayer.cpp:3911
#9  0x0a21e5ec in WebCore::RenderBoxModelObject::styleDidChange (this=0xd760a0c, diff=WebCore::StyleDifferenceLayout, oldStyle=0xe76ce40) at third_party/WebKit/Source/WebCore/rendering/RenderBoxModelObject.cpp:363
#10 0x0a20d479 in WebCore::RenderBox::styleDidChange (this=0xd760a0c, diff=WebCore::StyleDifferenceLayout, oldStyle=0xe76ce40) at third_party/WebKit/Source/WebCore/rendering/RenderBox.cpp:289
#11 0x0a1ca58a in WebCore::RenderBlock::styleDidChange (this=0xd760a0c, diff=WebCore::StyleDifferenceLayout, oldStyle=0xe76ce40) at third_party/WebKit/Source/WebCore/rendering/RenderBlock.cpp:228
#12 0x0a282334 in WebCore::RenderObject::setStyle (this=0xd760a0c, style=...) at third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp:1759
#13 0x0a281cc9 in WebCore::RenderObject::setAnimatableStyle (this=0xd760a0c, style=...) at third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp:1676
#14 0x09e2ff07 in WebCore::Node::setRenderStyle (this=0xe1c8f00, s=...) at third_party/WebKit/Source/WebCore/dom/Node.cpp:1554
#15 0x09e0e8bb in WebCore::Element::recalcStyle (this=0xe1c8f00, change=WebCore::Node::NoChange) at third_party/WebKit/Source/WebCore/dom/Element.cpp:1111
#16 0x09e0ebc6 in WebCore::Element::recalcStyle (this=0xe7334b0, change=WebCore::Node::NoChange) at third_party/WebKit/Source/WebCore/dom/Element.cpp:1144
#17 0x09e0ebc6 in WebCore::Element::recalcStyle (this=0xe108be0, change=WebCore::Node::NoChange) at third_party/WebKit/Source/WebCore/dom/Element.cpp:1144
#18 0x09dd969a in WebCore::Document::recalcStyle (this=0xdccb000, change=WebCore::Node::NoChange) at third_party/WebKit/Source/WebCore/dom/Document.cpp:1508
#19 0x09dd99fc in WebCore::Document::updateStyleIfNeeded (this=0xdccb000) at third_party/WebKit/Source/WebCore/dom/Document.cpp:1560
#20 0x09dd9ae7 in WebCore::Document::updateStyleForAllDocuments () at third_party/WebKit/Source/WebCore/dom/Document.cpp:1577
#21 0x0a0f6378 in WebCore::ScheduledAction::execute (this=0xd760100, proxy=0xe1cfac0) at third_party/WebKit/Source/WebCore/bindings/v8/ScheduledAction.cpp:120
#22 0x0a0f61bc in WebCore::ScheduledAction::execute (this=0xd760100, context=0xdccb134) at third_party/WebKit/Source/WebCore/bindings/v8/ScheduledAction.cpp:95
#23 0x09fe8ec4 in WebCore::DOMTimer::fired (this=0xe112900) at third_party/WebKit/Source/WebCore/page/DOMTimer.cpp:148


On frame #4, the RenderLayerCompositor for the iframe calls attachRootPlatformLayer with RootLayerAttachedViaChromeClient. The reason for that is that at the beginning of ensureRootPlatformLayer(), shouldPropagateCompositingToEnclosingFrame() returns false because the iframe doesn&apos;t have a renderer (because it&apos;s invisible).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>384686</commentid>
    <comment_count>1</comment_count>
      <attachid>89341</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-12 22:42:48 -0700</bug_when>
    <thetext>Created attachment 89341
Test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385027</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-13 11:21:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/9279281&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385369</commentid>
    <comment_count>3</comment_count>
      <attachid>89493</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-13 17:03:46 -0700</bug_when>
    <thetext>Created attachment 89493
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385373</commentid>
    <comment_count>4</comment_count>
      <attachid>89493</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-13 17:10:55 -0700</bug_when>
    <thetext>Comment on attachment 89493
Patch

Walking up the frame tree for every call to needsToBeComposited() is too slow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385379</commentid>
    <comment_count>5</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-13 17:15:44 -0700</bug_when>
    <thetext>any suggested alternative ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385380</commentid>
    <comment_count>6</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-13 17:17:31 -0700</bug_when>
    <thetext>I think we need to figure out somewhere to cache whether an iframe&apos;s ownerElement has a renderer and only propagate updates when that value changes.

This patch will also need a layout test (currently it&apos;ll only apply to Chromium and Safari/WebKit2).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385409</commentid>
    <comment_count>7</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-13 18:05:46 -0700</bug_when>
    <thetext>I&apos;m wondering if the real bug here is that we are loading this iframe at all.  We used to not do that, and I don&apos;t think other browser load &lt;iframe&gt;s that are display:none.  When did this behavior change and was this change in behavior intentional?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385422</commentid>
    <comment_count>8</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-13 18:14:24 -0700</bug_when>
    <thetext>Firefox 3.6.16 also loads display:none iframes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385887</commentid>
    <comment_count>9</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2011-04-14 11:10:15 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; I&apos;m wondering if the real bug here is that we are loading this iframe at all.  We used to not do that, and I don&apos;t think other browser load &lt;iframe&gt;s that are display:none.  When did this behavior change and was this change in behavior intentional?

Even if that is a behavioral change, the fix isn&apos;t to avoid the load. There will be other ways to trigger a recomputation of the compositing tree and this bug will show up again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385896</commentid>
    <comment_count>10</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2011-04-14 11:17:04 -0700</bug_when>
    <thetext>Is it true that we are creating renderers for iframes that are not display:none, but that are inside iframes that are display:none? If so, it seems like the solution is not to avoid loading that nested iframe but to avoid creating a renderer for it. Then the inRenderTree() test would simply test if the current iframe has a renderer, without the traversal. Or something like that...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385949</commentid>
    <comment_count>11</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-14 12:20:30 -0700</bug_when>
    <thetext>I did confirm that RenderObject are currently created for iframes inside of invisible iframes.

The approach I was going to take is to somehow cache the inRenderTree result in the HTMLFrameOwnerElement: when creating a renderer, check the conditions, and check the parent. If the bit changes, propagate downwards if needed. Same when destroying the renderer. Propagating downwards is the slightly tricky bit, but I think I can do it by having the HTMLFrameOwnerElement register themselves to their parent HTMLFrameOwnerElement (if any) when they start caring about it, so that the parent doesn&apos;t have to go through all the DOM. Working on a patch right now.

I&apos;m very new to all that code, so if avoiding creating RenderObjects in invisible iframes is desirable and won&apos;t cause bad side effects, then I&apos;m happy to take that road instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386086</commentid>
    <comment_count>12</comment_count>
      <attachid>89666</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-14 15:10:40 -0700</bug_when>
    <thetext>Created attachment 89666
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386089</commentid>
    <comment_count>13</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-14 15:11:34 -0700</bug_when>
    <thetext>New patch up, I&apos;m working on tests, but if you have comments on the general approach, please let me know.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386107</commentid>
    <comment_count>14</comment_count>
      <attachid>89666</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-14 15:27:13 -0700</bug_when>
    <thetext>Comment on attachment 89666
Patch

It&apos;s bad to cache rendering-related state on a DOM object. You should cache in Frame or FrameView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386252</commentid>
    <comment_count>15</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-14 18:15:53 -0700</bug_when>
    <thetext>This is tricky.  I think what we want to do is create the iframe and its DOM but somehow avoid constructing an actual render tree for it.  I&apos;m not sure how to go about that - documents definitely expect to have a RenderView and it&apos;s not immediately clear how to avoid constructing a render object tree beneath that view in the case where the Frame&apos;s ownerRenderer() is NULL, if that&apos;s even the right approach, in a way that doesn&apos;t violate a bunch of other expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387078</commentid>
    <comment_count>16</comment_count>
      <attachid>89892</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-15 17:29:57 -0700</bug_when>
    <thetext>Created attachment 89892
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387080</commentid>
    <comment_count>17</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-15 17:31:13 -0700</bug_when>
    <thetext>New patch up. Here I&apos;m preventing renderers to be created in the child document if it will be invisible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387109</commentid>
    <comment_count>18</comment_count>
      <attachid>89892</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-15 18:08:46 -0700</bug_when>
    <thetext>Comment on attachment 89892
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests. (OOPS!)

This patch definitely needs tests.  I&apos;d suggest to start a pixel test to verify that the compositing regression does not occur and a few tests that add/remove iframes and toggle display: on ancestors to ensure that everything ends up as expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388219</commentid>
    <comment_count>19</comment_count>
      <attachid>90129</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-18 19:07:15 -0700</bug_when>
    <thetext>Created attachment 90129
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388220</commentid>
    <comment_count>20</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-18 19:07:32 -0700</bug_when>
    <thetext>Added tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388260</commentid>
    <comment_count>21</comment_count>
      <attachid>90129</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-18 20:36:59 -0700</bug_when>
    <thetext>Comment on attachment 90129
Patch

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

I&apos;m wondering about side effects of calling setShouldCreateRenderers(false) now. Will the behavior of plugins in iframes change?

&gt; LayoutTests/compositing/iframes/invisible-nested-iframe-show.html:1
&gt; +&lt;!DOCTYPE html&gt;

The scrollbar in the pixel result means that this test  result should move to platform-specific directories. Or change the test to avoid the scrollbar.

Can the tests use layerTreeAsText() and be text tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388273</commentid>
    <comment_count>22</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-18 20:52:23 -0700</bug_when>
    <thetext>I would like to keep pixel test for invisible-iframe and invisible-nested-iframe, but changing the other 2 to text tests seems fine.

As to plugin behavior in invisible iframes, it will change to be consistent with plugins in invisible divs (i.e. won&apos;t be loaded).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388276</commentid>
    <comment_count>23</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-18 20:58:46 -0700</bug_when>
    <thetext>(In reply to comment #22)

&gt; As to plugin behavior in invisible iframes, it will change to be consistent with plugins in invisible divs (i.e. won&apos;t be loaded).

If there is a behavior change here, it should be tested, and the ramifications for the web should be considered. You may break web sites.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388279</commentid>
    <comment_count>24</comment_count>
      <attachid>90138</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-18 21:24:06 -0700</bug_when>
    <thetext>Created attachment 90138
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388289</commentid>
    <comment_count>25</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-18 21:40:51 -0700</bug_when>
    <thetext>New patch with text tests for invisible-nested-iframe-{show,hide}.

For the plugin tests, do you mean to test that the behavior is actually broken ? I can add that if you wish, though it seems counter-productive.

The ramifications for the web... well. Plugins are handled awkwardly in WebKit in that they are linked to the render tree instead of the DOM. When that is solved, the (rare) extra failures caused by this change will go away as well.
It&apos;s not the intention of this patch to fix plugins - if you need me to fix that as well before you accept this patch, please let me know, though it won&apos;t happen any time soon.
I think having correct rendering for visible content outweighs correct behavior in invisible iframes - and several other developers seem to agree that not creating render objects for invisible iframes is the right thing to do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388292</commentid>
    <comment_count>26</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-18 21:50:21 -0700</bug_when>
    <thetext>(In reply to comment #25)

&gt; The ramifications for the web... well. Plugins are handled awkwardly in WebKit in that they are linked to the render tree instead of the DOM. When that is solved, the (rare) extra failures caused by this change will go away as well.
&gt; It&apos;s not the intention of this patch to fix plugins - if you need me to fix that as well before you accept this patch, please let me know, though it won&apos;t happen any time soon.
&gt; I think having correct rendering for visible content outweighs correct behavior in invisible iframes - and several other developers seem to agree that not creating render objects for invisible iframes is the right thing to do.

All I&apos;m saying is that if you decide to change this behavior, you need to do some testing to make sure no major sites break, and be prepared to deal with the consequences.

There are safer ways to fix this bug: just make sure that the compositing layer state doesn&apos;t go bad, or don&apos;t create compositing layers for display:none plugins.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388577</commentid>
    <comment_count>27</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2011-04-19 10:19:50 -0700</bug_when>
    <thetext>What if we modify RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame() and return true when (ownerElement != NULL) &amp;&amp; (renderer == NULL)  (modulo whatever special treatment needs to happen on the mac)? 

That won&apos;t disturb the existing compositor&apos;s root layer if an enclosed iframe doesn&apos;t have a renderer (e.g. hidden) which seems to be the root of the issue here.

The only side-effect appears to be that if the enclosed iframe would have triggered the compositor, we would propagate compositing up to the parent even if the iframe is hidden.  I wouldn&apos;t think that would be a big issue though.

A local patch of this change seems to be work fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388580</commentid>
    <comment_count>28</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-04-19 10:28:32 -0700</bug_when>
    <thetext>(In reply to comment #27)
&gt; What if we modify RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame() and return true when (ownerElement != NULL) &amp;&amp; (renderer == NULL)  (modulo whatever special treatment needs to happen on the mac)? 
&gt; 
&gt; That won&apos;t disturb the existing compositor&apos;s root layer if an enclosed iframe doesn&apos;t have a renderer (e.g. hidden) which seems to be the root of the issue here.
&gt; 
&gt; The only side-effect appears to be that if the enclosed iframe would have triggered the compositor, we would propagate compositing up to the parent even if the iframe is hidden.  I wouldn&apos;t think that would be a big issue though.
&gt; 
&gt; A local patch of this change seems to be work fine.

I think that&apos;s a safer approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388584</commentid>
    <comment_count>29</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-19 10:39:23 -0700</bug_when>
    <thetext>Doesn&apos;t ensureRootPlatformLayer rely on it being false in that case to set up the (top-level) root layer (via chrome client) ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388605</commentid>
    <comment_count>30</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-19 11:00:40 -0700</bug_when>
    <thetext>NVM, I get it now. It seems to work, I&apos;ll post a patch shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388646</commentid>
    <comment_count>31</comment_count>
      <attachid>90225</attachid>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-19 11:35:48 -0700</bug_when>
    <thetext>Created attachment 90225
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388649</commentid>
    <comment_count>32</comment_count>
    <who name="Antoine Labour">piman</who>
    <bug_when>2011-04-19 11:37:17 -0700</bug_when>
    <thetext>New patch up. I&apos;m assuming if allowsIndependentlyCompositedFrames is true (on the mac), then returning false from shouldPropagateCompositingToEnclosingFrame will do the right thing in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388728</commentid>
    <comment_count>33</comment_count>
      <attachid>90225</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-19 13:05:53 -0700</bug_when>
    <thetext>Comment on attachment 90225
Patch

Looks good and nice tests.  R=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388894</commentid>
    <comment_count>34</comment_count>
      <attachid>90225</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-19 16:24:55 -0700</bug_when>
    <thetext>Comment on attachment 90225
Patch

Landed by hand: http://trac.webkit.org/changeset/84307</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388903</commentid>
    <comment_count>35</comment_count>
      <attachid>90225</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-19 16:33:40 -0700</bug_when>
    <thetext>Comment on attachment 90225
Patch

Rejecting attachment 90225 from commit-queue.

Failed to run &quot;[u&apos;zip&apos;, u&apos;-r&apos;, u&apos;../commit-queue-logs/58414-layout-test-results-3.zip&apos;, u&apos;/tmp/layout-test-resul...&quot; exit_code: 12

	zip warning: name not matched: /tmp/layout-test-results

zip error: Nothing to do! (try: zip -r ../commit-queue-logs/58414-layout-test-results-3.zip . -i /tmp/layout-test-results)

Full output: http://queues.webkit.org/results/8474435</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388906</commentid>
    <comment_count>36</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-04-19 16:36:47 -0700</bug_when>
    <thetext>Interesting.  The commit-queue barfs now if non-layout tests fail. :(  Sorry for the trouble.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388932</commentid>
    <comment_count>37</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-19 17:22:50 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/84307 might have broken Windows 7 Release (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388983</commentid>
    <comment_count>38</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-04-19 18:22:12 -0700</bug_when>
    <thetext>The cq will be made healthy again by bug 58955.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388996</commentid>
    <comment_count>39</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2011-04-19 19:05:44 -0700</bug_when>
    <thetext>(In reply to comment #38)
&gt; The cq will be made healthy again by bug 58955.

So then this is just noise from the commit-queue, not any issue with the patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389000</commentid>
    <comment_count>40</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-04-19 19:10:15 -0700</bug_when>
    <thetext>&gt; So then this is just noise from the commit-queue, not any issue with the patch?

My understanding is that your patch caused a test to fail, but not a LayoutTest.  The commit-queue wasn&apos;t smart enough to handle that case and so reported a bug about itself.  That bug will be fixed soon, but your patch might still be causing that non-LayoutTest test to fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>389006</commentid>
    <comment_count>41</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-04-19 19:17:05 -0700</bug_when>
    <thetext>It wasn&apos;t actually your patch.  webkitpy tests were failing on the bots.  The commit-queue got sad when it tried to archive away layout test results (after a test run failure) but there were none (cause no layout tests failed, only webkitpy tests).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>89341</attachid>
            <date>2011-04-12 22:42:48 -0700</date>
            <delta_ts>2011-04-12 22:42:48 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>compositing_bug.tar.gz</filename>
            <type>application/octet-stream</type>
            <size>1020</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">H4sIABo1pU0AA+2du2/TUBTGb2GiKi2PgYHlYiTUSjSxkziR2jRCSB0qUUCidAAJ5NhuY+rYIXZo
IwQs/AvsCKkLCwsLK2JBbEwworJ1YQHBxrFj5+HWbSryAPr9pK/Xj5tzb3x9/FD66ap2uWI7hmtY
q3eLtdUk6wMikZNlr5RysthehjBJkmUplU6l5TQTpXQqIzIu96MzUWqOq1Q5ZxWjrFh71Ntv/z+K
Ghn/lapS1hMlt2z2rg1vgLOZTOz4Z+To+MspKce42LsuxHPIxz/vDXVhlPN8SVc0b4EWHbVqVNzG
CucrNUt1DdvitYqmuPoNt27qk1P8YbCbc81Wa2XdchOrujtv6t7i5fqCNinUhamE41VPqI6zpG+4
c8L0ul5cM9xpt6pYzopdLc9wf9GkyLcmxalZYTaI+6jRl2SrM/lk2Md80dbq3LZMW9HmBEd3l4yy
btfcybYuXuQpOrcoYPClNOMBN6j2hlDYyCdpLbK9LhTqze35pNdCYZSa9I/P6LDHqV9E87+sGFaP
03/f/E9nc838l7KSl/8i3S6Q/wOglf+NE74jJYoC99N3TtAMp2Iq9Rlu2ZYuhFeGvOHfLrhTVeeE
1p1DKOSTjT1BvEi2BTH3vxSE7SxYXOHUvF7dLV5Y66rtciOmZjSfh33Y/xqi+Z9oDWPCWa/0pA0/
/0UxJv/Tnc9/WdouZcUs8n8gFMXlhUWeS6S8lROMbWc2F79eKrHCYvdfWTPu2d3Ue+wHTFZqRdNQ
73qnWHIQj58AAJ/jjJ6w/MvqeeEcP33q5rA7BAAAAAAAABggbmWEPaHySLA+HpQjkRIAAAAAAAAA
AAD/LorG2FN66f/kvfifaL3//5pg7Btpi/SOZJI00jLpCuks6Shpmz7whfQ5iPFzfK/WAAAAAAAA
AACAWBqejeh6gXHethgYPJpbdtkV4/bq3N5yh7GD2sxY06HGOpxrLPCzsT755djeNj3WbuljodEv
MP7s9H80DWA9s38cyP+RkjKe/ysnwf8xEKL+j/uZzcVX00Pzf/TDfggA8IH/AwAAAAAAgMNM1P9x
PCjh/wAAAAAAAAAAAP4fPP/Hm3HGjk0w//f/8P0/9H+8Jz0nPSMppOukedIs6ULgAzk50fj8mOcX
oVgfSR9Ib0kvSSXSHdIy6TbpDGmc9IMae016SXpBWiNdI+VI38cY2yZtjQ3z6AAAAAAAAAD6SOO/
9vvxt9DhCNjVG9CyA3Be0k3T7rQGqI3ZMKLhBl3+Yff9iTfiIjS3x1bY/ZD2oc87KnTb5x31umu6
i1qdE4zE97R9wpLWGHQ/68nOePtPtNI51rETt4Smlqb/AwAAAAAAHC5+AwKOcX0AeAAA
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89493</attachid>
            <date>2011-04-13 17:03:46 -0700</date>
            <delta_ts>2011-04-14 15:10:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58414-20110413170345.patch</filename>
            <type>text/plain</type>
            <size>2723</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODM3NTQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA5OGE2ZDZiNmQzZjQ3ODk3
YWQzMzRiMGYyZjNkZjNjYTEzNTY5ZWEwLi4wMTQzMDc3ODhiYjNkYjZjNzk1YzNmM2MyMzkyNWQw
OGFhY2I5Y2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMDQtMTMgIEFudG9p
bmUgTGFib3VyICA8cGltYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IHRyaWdnZXIgY29tcG9zaXRpbmcgZm9yIGlu
dmlzaWJsZSBpZnJhbWVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTg0MTQKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0
b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjppblJlbmRl
clRyZWUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpuZWVkc1Rv
QmVDb21wb3NpdGVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9y
Lmg6CisKIDIwMTEtMDQtMTMgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBHYXZpbiBCYXJyYWNsb3VnaC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKaW5kZXggZGYzY2I2ZTU5MTdm
NzNiMDA2MTFmZDRhNWU2MWIwNDVkZWExMjE2OC4uZTVkYTU5NzMzYzNkOWI4Y2RiZjQ0MWZhMTlj
ODYyZjE1ZDI3ZmQ0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHAKQEAgLTExODQsOSArMTE4NCwyNCBAQCBIVE1MRnJhbWVPd25l
ckVsZW1lbnQqIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZW5jbG9zaW5nRnJhbWVFbGVtZW50KCkg
Y29uc3QKICAgICByZXR1cm4gMDsKIH0KIAorYm9vbCBSZW5kZXJMYXllckNvbXBvc2l0b3I6Omlu
UmVuZGVyVHJlZSgpIGNvbnN0Cit7CisgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVs
ZW1lbnQgPSBlbmNsb3NpbmdGcmFtZUVsZW1lbnQoKTsKKworICAgIHdoaWxlIChvd25lckVsZW1l
bnQpIHsKKyAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG93bmVyRWxlbWVudC0+cmVu
ZGVyZXIoKTsKKyAgICAgICAgaWYgKCFyZW5kZXJlciB8fCAhcmVuZGVyZXItPmlzUmVuZGVyUGFy
dCgpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBvd25lckVsZW1lbnQgPSBv
d25lckVsZW1lbnQtPmRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpOworICAgIH0KKworICAgIC8v
IFdlIHJlYWNoZWQgdGhlIHJvb3QuCisgICAgcmV0dXJuIHRydWU7Cit9CisKIGJvb2wgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjpuZWVkc1RvQmVDb21wb3NpdGVkKGNvbnN0IFJlbmRlckxheWVyKiBs
YXllcikgY29uc3QKIHsKLSAgICBpZiAoIWNhbkJlQ29tcG9zaXRlZChsYXllcikpCisgICAgaWYg
KCFjYW5CZUNvbXBvc2l0ZWQobGF5ZXIpIHx8ICFpblJlbmRlclRyZWUoKSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCiAgICAgcmV0dXJuIHJlcXVpcmVzQ29tcG9zaXRpbmdMYXllcihsYXllcikg
fHwgbGF5ZXItPm11c3RPdmVybGFwQ29tcG9zaXRlZExheWVycygpIHx8IChpbkNvbXBvc2l0aW5n
TW9kZSgpICYmIGxheWVyLT5pc1Jvb3RMYXllcigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAppbmRleCAyZTAwNjJiZjhjMmQ0MzEyZDZk
YjVmZGFmZDFlMmZjZmJjOTcxNjVkLi4yZjE2YmZiNjAzN2U1OTBhZGQwNjc2NjAyNmZkZjE3NTNi
ZjYwNTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJD
b21wb3NpdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29t
cG9zaXRvci5oCkBAIC0xOTQsNiArMTk0LDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGJvb2wg
c2hvd0RlYnVnQm9yZGVycygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBi
b29sIHNob3dSZXBhaW50Q291bnRlcigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgCisg
ICAgLy8gV2hldGhlciB0aGUgRnJhbWUgaXMgYWN0dWFsbHkgaW4gdGhlIHJlbmRlciB0cmVlLgor
ICAgIGJvb2wgaW5SZW5kZXJUcmVlKCkgY29uc3Q7CiAgICAgLy8gV2hldGhlciB0aGUgZ2l2ZW4g
UkwgbmVlZHMgYSBjb21wb3NpdGluZyBsYXllci4KICAgICBib29sIG5lZWRzVG9CZUNvbXBvc2l0
ZWQoY29uc3QgUmVuZGVyTGF5ZXIqKSBjb25zdDsKICAgICAvLyBXaGV0aGVyIHRoZSBsYXllciBo
YXMgYW4gaW50cmluc2ljIG5lZWQgZm9yIGNvbXBvc2l0aW5nIGxheWVyLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89666</attachid>
            <date>2011-04-14 15:10:40 -0700</date>
            <delta_ts>2011-04-15 17:29:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58414-20110414151039.patch</filename>
            <type>text/plain</type>
            <size>8104</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODM3NTQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA5OGE2ZDZiNmQzZjQ3ODk3
YWQzMzRiMGYyZjNkZjNjYTEzNTY5ZWEwLi5jZWIzOGY4MTkwY2ZjMTE5MzAxNDliMDFmZWE3MDc1
MjY3ODU0ZGRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTEtMDQtMTQgIEFudG9p
bmUgTGFib3VyICA8cGltYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IHRyaWdnZXIgY29tcG9zaXRpbmcgZm9yIGlm
cmFtZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
ODQxNAorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAgICogaHRtbC9I
VE1MRnJhbWVPd25lckVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZyYW1lT3du
ZXJFbGVtZW50OjpIVE1MRnJhbWVPd25lckVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TEZyYW1lT3duZXJFbGVtZW50OjphdHRhY2gpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZyYW1l
T3duZXJFbGVtZW50OjpkZXRhY2gpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJF
bGVtZW50Ojp3aWxsTW92ZVRvTmV3T3duZXJEb2N1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MRnJhbWVPd25lckVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50Ojp3aWxsUmVtb3ZlKToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudDo6fkhUTUxGcmFtZU93bmVyRWxlbWVudCk6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQ6OnVwZGF0ZUluUmVuZGVy
VHJlZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQ6OmFkZENoaWxk
RnJhbWVPd25lcik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQ6OnJl
bW92ZUNoaWxkRnJhbWVPd25lcik6CisgICAgICAgICogaHRtbC9IVE1MRnJhbWVPd25lckVsZW1l
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudDo6aW5SZW5kZXJU
cmVlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6aW5SZW5kZXJUcmVlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6bmVlZHNUb0JlQ29tcG9zaXRl
ZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oOgorCiAyMDEx
LTA0LTEzICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgR2F2aW4gQmFycmFjbG91Z2guCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxGcmFtZU93bmVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFt
ZU93bmVyRWxlbWVudC5jcHAKaW5kZXggYTIxNzg4MWYzMjU0NmM1ZTRkNGJjNDUwNzY5ZTg4ODYz
ZTRiNDI5OS4uNWQ4ZGMwODlhY2ExYWEyZTI3ODhlYWVlMDE3YWNjMTFhODNjNTFiMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmNwcApAQCAtMzcsNyAr
MzcsMTEgQEAgSFRNTEZyYW1lT3duZXJFbGVtZW50OjpIVE1MRnJhbWVPd25lckVsZW1lbnQoY29u
c3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW0KICAgICA6IEhUTUxFbGVtZW50KHRhZ05h
bWUsIGRvY3VtZW50KQogICAgICwgbV9jb250ZW50RnJhbWUoMCkKICAgICAsIG1fc2FuZGJveEZs
YWdzKFNhbmRib3hOb25lKQorICAgICwgbV9pblJlbmRlclRyZWUoZmFsc2UpCiB7CisgICAgSFRN
TEZyYW1lT3duZXJFbGVtZW50KiBwYXJlbnQgPSBkb2N1bWVudC0+b3duZXJFbGVtZW50KCk7Cisg
ICAgaWYgKHBhcmVudCkKKyAgICAgICAgcGFyZW50LT5hZGRDaGlsZEZyYW1lT3duZXIodGhpcyk7
CiB9CiAKIFJlbmRlclBhcnQqIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6cmVuZGVyUGFydCgpIGNv
bnN0CkBAIC00OSw2ICs1MywzNCBAQCBSZW5kZXJQYXJ0KiBIVE1MRnJhbWVPd25lckVsZW1lbnQ6
OnJlbmRlclBhcnQoKSBjb25zdAogICAgIHJldHVybiB0b1JlbmRlclBhcnQocmVuZGVyZXIoKSk7
CiB9CiAKK3ZvaWQgSFRNTEZyYW1lT3duZXJFbGVtZW50OjphdHRhY2goKQoreworICAgIEhUTUxF
bGVtZW50OjphdHRhY2goKTsKKyAgICB1cGRhdGVJblJlbmRlclRyZWUoKTsKK30KKwordm9pZCBI
VE1MRnJhbWVPd25lckVsZW1lbnQ6OmRldGFjaCgpCit7CisgICAgSFRNTEVsZW1lbnQ6OmRldGFj
aCgpOworICAgIHVwZGF0ZUluUmVuZGVyVHJlZSgpOworfQorCit2b2lkIEhUTUxGcmFtZU93bmVy
RWxlbWVudDo6d2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKQoreworICAgIEhUTUxGcmFtZU93
bmVyRWxlbWVudCogcGFyZW50ID0gZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCk7CisgICAgaWYg
KHBhcmVudCkKKyAgICAgICAgcGFyZW50LT5yZW1vdmVDaGlsZEZyYW1lT3duZXIodGhpcyk7Cisg
ICAgSFRNTEVsZW1lbnQ6OndpbGxNb3ZlVG9OZXdPd25lckRvY3VtZW50KCk7Cit9CisKK3ZvaWQg
SFRNTEZyYW1lT3duZXJFbGVtZW50OjpkaWRNb3ZlVG9OZXdPd25lckRvY3VtZW50KCkKK3sKKyAg
ICBIVE1MRWxlbWVudDo6ZGlkTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpOworICAgIEhUTUxGcmFt
ZU93bmVyRWxlbWVudCogcGFyZW50ID0gZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCk7CisgICAg
aWYgKHBhcmVudCkKKyAgICAgICAgcGFyZW50LT5hZGRDaGlsZEZyYW1lT3duZXIodGhpcyk7Cit9
CisKIHZvaWQgSFRNTEZyYW1lT3duZXJFbGVtZW50Ojp3aWxsUmVtb3ZlKCkKIHsKICAgICAvLyBG
SVhNRTogSXQgaXMgdW5jbGVhciB3aHkgdGhpcyBjYW4ndCBiZSBtb3ZlZCB0byByZW1vdmVkRnJv
bURvY3VtZW50KCkKQEAgLTU4LDEyICs5MCwyMCBAQCB2b2lkIEhUTUxGcmFtZU93bmVyRWxlbWVu
dDo6d2lsbFJlbW92ZSgpCiAgICAgICAgIGZyYW1lLT5sb2FkZXIoKS0+ZnJhbWVEZXRhY2hlZCgp
OwogICAgICAgICBmcmFtZS0+ZGlzY29ubmVjdE93bmVyRWxlbWVudCgpOwogICAgIH0KKyAgICAv
LyBUaGUgZnJhbWUgZ290IGRpc2Nvbm5lY3RlZCwgc28gdGhlIGNoaWxkcmVuIHdvbid0IGJlIGFi
bGUgdG8gcmVtb3ZlCisgICAgLy8gdGhlbXNlbHZlcyBmcm9tIG1fY2hpbGRGcmFtZU93bmVycy4K
KyAgICBtX2NoaWxkRnJhbWVPd25lcnMuY2xlYXIoKTsKIAogICAgIEhUTUxFbGVtZW50Ojp3aWxs
UmVtb3ZlKCk7CiB9CiAKIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6fkhUTUxGcmFtZU93bmVyRWxl
bWVudCgpCiB7CisgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBwYXJlbnQgPSBkb2N1bWVudCgp
LT5vd25lckVsZW1lbnQoKTsKKyAgICBpZiAocGFyZW50KQorICAgICAgICBwYXJlbnQtPnJlbW92
ZUNoaWxkRnJhbWVPd25lcih0aGlzKTsKKyAgICBpZiAocmVuZGVyZXIoKSkKKyAgICAgICAgZGV0
YWNoKCk7CiAgICAgaWYgKG1fY29udGVudEZyYW1lKQogICAgICAgICBtX2NvbnRlbnRGcmFtZS0+
ZGlzY29ubmVjdE93bmVyRWxlbWVudCgpOwogfQpAQCAtOTQsNiArMTM0LDMwIEBAIGJvb2wgSFRN
TEZyYW1lT3duZXJFbGVtZW50Ojppc0tleWJvYXJkRm9jdXNhYmxlKEtleWJvYXJkRXZlbnQqIGV2
ZW50KSBjb25zdAogICAgIHJldHVybiBtX2NvbnRlbnRGcmFtZSAmJiBIVE1MRWxlbWVudDo6aXNL
ZXlib2FyZEZvY3VzYWJsZShldmVudCk7CiB9CiAKK3ZvaWQgSFRNTEZyYW1lT3duZXJFbGVtZW50
Ojp1cGRhdGVJblJlbmRlclRyZWUoKQoreworICAgIEhUTUxGcmFtZU93bmVyRWxlbWVudCogcGFy
ZW50ID0gZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCk7CisgICAgYm9vbCBpblJlbmRlclRyZWUg
PSByZW5kZXJlcigpICYmIHJlbmRlcmVyKCktPmlzUmVuZGVyUGFydCgpICYmICghcGFyZW50IHx8
IHBhcmVudC0+aW5SZW5kZXJUcmVlKCkpOworICAgIGlmIChtX2luUmVuZGVyVHJlZSAhPSBpblJl
bmRlclRyZWUpIHsKKyAgICAgICAgbV9pblJlbmRlclRyZWUgPSBpblJlbmRlclRyZWU7CisgICAg
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9jaGlsZEZyYW1lT3duZXJzLnNpemUoKTsgKytp
KQorICAgICAgICAgICAgbV9jaGlsZEZyYW1lT3duZXJzW2ldLT51cGRhdGVJblJlbmRlclRyZWUo
KTsKKyAgICB9Cit9CisKK3ZvaWQgSFRNTEZyYW1lT3duZXJFbGVtZW50OjphZGRDaGlsZEZyYW1l
T3duZXIoSFRNTEZyYW1lT3duZXJFbGVtZW50KiBlbGVtZW50KQoreworICAgIGlmICghbV9jaGls
ZEZyYW1lT3duZXJzLmNvbnRhaW5zKGVsZW1lbnQpKQorICAgICAgICBtX2NoaWxkRnJhbWVPd25l
cnMuYXBwZW5kKGVsZW1lbnQpOworfQorCit2b2lkIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6cmVt
b3ZlQ2hpbGRGcmFtZU93bmVyKEhUTUxGcmFtZU93bmVyRWxlbWVudCogZWxlbWVudCkKK3sKKyAg
ICBzaXplX3QgaW5kZXggPSBtX2NoaWxkRnJhbWVPd25lcnMuZmluZChlbGVtZW50KTsKKyAgICBp
ZiAoaW5kZXggIT0gV1RGOjpub3RGb3VuZCkKKyAgICAgICAgbV9jaGlsZEZyYW1lT3duZXJzLnJl
bW92ZShpbmRleCk7Cit9CisKICNpZiBFTkFCTEUoU1ZHKQogU1ZHRG9jdW1lbnQqIEhUTUxGcmFt
ZU93bmVyRWxlbWVudDo6Z2V0U1ZHRG9jdW1lbnQoRXhjZXB0aW9uQ29kZSYgZWMpIGNvbnN0CiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuaAppbmRleCBkZTlk
MTUzMjBjZjc1YmE3NTdjMjg5MWIwZmEzMWE2YTFiOTQzNDMxLi5hNzliOWY4MGM5ZTcxZGE1Zjc2
NDE0YjQxMzkyOTc4MTc2MTY3NmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGcmFtZU93bmVyRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1l
T3duZXJFbGVtZW50LmgKQEAgLTU0LDEyICs1NCwxNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBT
Y3JvbGxiYXJNb2RlIHNjcm9sbGluZ01vZGUoKSBjb25zdCB7IHJldHVybiBTY3JvbGxiYXJBdXRv
OyB9CiAKICAgICBTYW5kYm94RmxhZ3Mgc2FuZGJveEZsYWdzKCkgY29uc3QgeyByZXR1cm4gbV9z
YW5kYm94RmxhZ3M7IH0KKyAgICBib29sIGluUmVuZGVyVHJlZSgpIGNvbnN0IHsgcmV0dXJuIG1f
aW5SZW5kZXJUcmVlOyB9CiAKIHByb3RlY3RlZDoKICAgICBIVE1MRnJhbWVPd25lckVsZW1lbnQo
Y29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqKTsKIAogICAgIHZvaWQgc2V0
U2FuZGJveEZsYWdzKFNhbmRib3hGbGFncyk7CiAKKyAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoKCk7
CisgICAgdmlydHVhbCB2b2lkIGRldGFjaCgpOworICAgIHZpcnR1YWwgdm9pZCB3aWxsTW92ZVRv
TmV3T3duZXJEb2N1bWVudCgpOworICAgIHZpcnR1YWwgdm9pZCBkaWRNb3ZlVG9OZXdPd25lckRv
Y3VtZW50KCk7CiAgICAgdmlydHVhbCB2b2lkIHdpbGxSZW1vdmUoKTsKIAogcHJpdmF0ZToKQEAg
LTY4LDggKzczLDE2IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIGlzRnJhbWVPd25lckVs
ZW1lbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCBib29sIGlzS2V5Ym9h
cmRGb2N1c2FibGUoS2V5Ym9hcmRFdmVudCopIGNvbnN0OwogCisgICAgLy8gVXBkYXRlcyBtX2lu
UmVuZGVyVHJlZSBhbmQgcHJvcGFnYXRlIGRvd24gdG8gdGhlIGNoaWxkcmVuIGZyYW1lIG93bmVy
cyBpZgorICAgIC8vIGl0IGNoYW5nZWQuCisgICAgdm9pZCB1cGRhdGVJblJlbmRlclRyZWUoKTsK
KyAgICB2b2lkIGFkZENoaWxkRnJhbWVPd25lcihIVE1MRnJhbWVPd25lckVsZW1lbnQqKTsKKyAg
ICB2b2lkIHJlbW92ZUNoaWxkRnJhbWVPd25lcihIVE1MRnJhbWVPd25lckVsZW1lbnQqKTsKKwog
ICAgIEZyYW1lKiBtX2NvbnRlbnRGcmFtZTsKICAgICBTYW5kYm94RmxhZ3MgbV9zYW5kYm94Rmxh
Z3M7CisgICAgYm9vbCBtX2luUmVuZGVyVHJlZTsKKyAgICBWZWN0b3I8SFRNTEZyYW1lT3duZXJF
bGVtZW50Kj4gbV9jaGlsZEZyYW1lT3duZXJzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9z
aXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9y
LmNwcAppbmRleCBkZjNjYjZlNTkxN2Y3M2IwMDYxMWZkNGE1ZTYxYjA0NWRlYTEyMTY4Li41NTg3
NzI0Zjg0NzczYmY1YTBmY2ZiODgwZDVjOTM1YjE0MDBiNTFiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcApAQCAtMTE4NCw5ICsx
MTg0LDE1IEBAIEhUTUxGcmFtZU93bmVyRWxlbWVudCogUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpl
bmNsb3NpbmdGcmFtZUVsZW1lbnQoKSBjb25zdAogICAgIHJldHVybiAwOwogfQogCitib29sIFJl
bmRlckxheWVyQ29tcG9zaXRvcjo6aW5SZW5kZXJUcmVlKCkgY29uc3QKK3sKKyAgICBIVE1MRnJh
bWVPd25lckVsZW1lbnQqIG93bmVyRWxlbWVudCA9IGVuY2xvc2luZ0ZyYW1lRWxlbWVudCgpOwor
ICAgIHJldHVybiBvd25lckVsZW1lbnQgPyBvd25lckVsZW1lbnQtPmluUmVuZGVyVHJlZSgpIDog
dHJ1ZTsKK30KKwogYm9vbCBSZW5kZXJMYXllckNvbXBvc2l0b3I6Om5lZWRzVG9CZUNvbXBvc2l0
ZWQoY29uc3QgUmVuZGVyTGF5ZXIqIGxheWVyKSBjb25zdAogewotICAgIGlmICghY2FuQmVDb21w
b3NpdGVkKGxheWVyKSkKKyAgICBpZiAoIWNhbkJlQ29tcG9zaXRlZChsYXllcikgfHwgIWluUmVu
ZGVyVHJlZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gcmVxdWlyZXND
b21wb3NpdGluZ0xheWVyKGxheWVyKSB8fCBsYXllci0+bXVzdE92ZXJsYXBDb21wb3NpdGVkTGF5
ZXJzKCkgfHwgKGluQ29tcG9zaXRpbmdNb2RlKCkgJiYgbGF5ZXItPmlzUm9vdExheWVyKCkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRv
ci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oCmlu
ZGV4IDJlMDA2MmJmOGMyZDQzMTJkNmRiNWZkYWZkMWUyZmNmYmM5NzE2NWQuLjJmMTZiZmI2MDM3
ZTU5MGFkZDA2NzY2MDI2ZmRmMTc1M2JmNjA1NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKQEAgLTE5NCw2ICsxOTQsOCBAQCBwcml2
YXRlOgogICAgIHZpcnR1YWwgYm9vbCBzaG93RGVidWdCb3JkZXJzKCkgY29uc3QgeyByZXR1cm4g
ZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgc2hvd1JlcGFpbnRDb3VudGVyKCkgY29uc3QgeyBy
ZXR1cm4gZmFsc2U7IH0KICAgICAKKyAgICAvLyBXaGV0aGVyIHRoZSBGcmFtZSBpcyBhY3R1YWxs
eSBpbiB0aGUgcmVuZGVyIHRyZWUuCisgICAgYm9vbCBpblJlbmRlclRyZWUoKSBjb25zdDsKICAg
ICAvLyBXaGV0aGVyIHRoZSBnaXZlbiBSTCBuZWVkcyBhIGNvbXBvc2l0aW5nIGxheWVyLgogICAg
IGJvb2wgbmVlZHNUb0JlQ29tcG9zaXRlZChjb25zdCBSZW5kZXJMYXllciopIGNvbnN0OwogICAg
IC8vIFdoZXRoZXIgdGhlIGxheWVyIGhhcyBhbiBpbnRyaW5zaWMgbmVlZCBmb3IgY29tcG9zaXRp
bmcgbGF5ZXIuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89892</attachid>
            <date>2011-04-15 17:29:57 -0700</date>
            <delta_ts>2011-04-18 19:07:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58414-20110415172956.patch</filename>
            <type>text/plain</type>
            <size>3683</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQwMzEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmZjU1ZGMxMTU4ZWY0ZTFj
ZTM4MjU0MjU5ZWNkYTk5Nzk4NzYyMjlhLi5kZmNiOGQ5MGYxZmEyMTIxN2I1NGQ1YWRjNDAwYTU2
MjVhYTdlNTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDQtMTUgIEFudG9p
bmUgTGFib3VyICA8cGltYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNyZWF0ZSByZW5kZXJlcnMgaW4gZGlzcGxh
eTpub25lIGlmcmFtZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01ODQxNAorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAg
ICogaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TEZyYW1lT3duZXJFbGVtZW50OjphdHRhY2gpOiBBbGxvdyByZW5kZXJlcnMgdG8gYmUgY3JlYXRl
ZAorICAgICAgICBpbiBjb250ZW50IGRvY3VtZW50IChpZiB2aXNpYmxlKSwgYW5kIHRyaWdnZXIg
YSBzdHlsZSByZWNhbGMgdG8gY3JlYXRlCisgICAgICAgIHRoZW0uCisgICAgICAgIChXZWJDb3Jl
OjpIVE1MRnJhbWVPd25lckVsZW1lbnQ6OmRldGFjaCk6IEJsb2NrIHJlbmRlcmVycyBmcm9tIGJl
aW5nCisgICAgICAgIGNyZWF0ZWQgaW4gY29udGVudCBkb2N1bWVudCwgYW5kIHRyaWdnZXIgYSBz
dHlsZSByZWNhbGMgdG8gZGVzdHJveQorICAgICAgICBleGlzdGluZyBvbmVzLgorICAgICAgICAq
IGh0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50Lmg6CisgICAgICAgICogcGFnZS9GcmFtZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpGcmFtZTo6c2V0RG9jdW1lbnQpOiBCbG9jayByZW5kZXJlcnMg
ZnJvbSBiZWluZyBjcmVhdGVkIGlmIHRoZQorICAgICAgICBkb2N1bWVudCB3aWxsIGJlIGludmlz
aWJsZS4KKwogMjAxMS0wNC0xNSAgR2VvZmZyZXkgR2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwCmluZGV4IGEyMTc4ODFmMzI1NDZjNWU0ZDRiYzQ1
MDc2OWU4ODg2M2U0YjQyOTkuLjlhZDQzYWU2N2Q1ZTJlMjM1YzY4M2FlNDYyODc3NDM2NGQxY2Fm
MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5jcHAK
QEAgLTQ5LDYgKzQ5LDMwIEBAIFJlbmRlclBhcnQqIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6cmVu
ZGVyUGFydCgpIGNvbnN0CiAgICAgcmV0dXJuIHRvUmVuZGVyUGFydChyZW5kZXJlcigpKTsKIH0K
IAordm9pZCBIVE1MRnJhbWVPd25lckVsZW1lbnQ6OmF0dGFjaCgpCit7CisgICAgSFRNTEVsZW1l
bnQ6OmF0dGFjaCgpOworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRlbnREb2N1bWVudCgp
OworICAgIGlmICghZG9jdW1lbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGJvb2wgaXNWaXNp
YmxlID0gcmVuZGVyZXIoKSAmJiByZW5kZXJlcigpLT5pc1JlbmRlclBhcnQoKTsKKyAgICBkb2N1
bWVudC0+c2V0U2hvdWxkQ3JlYXRlUmVuZGVyZXJzKGlzVmlzaWJsZSk7CisgICAgZG9jdW1lbnQt
PnNldE5lZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOworICAgIGRvY3VtZW50
LT5yZWNhbGNTdHlsZShGb3JjZSk7Cit9CisKK3ZvaWQgSFRNTEZyYW1lT3duZXJFbGVtZW50Ojpk
ZXRhY2goKQoreworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRlbnREb2N1bWVudCgpOwor
ICAgIGlmIChkb2N1bWVudCkgeworICAgICAgICBkb2N1bWVudC0+c2V0U2hvdWxkQ3JlYXRlUmVu
ZGVyZXJzKGZhbHNlKTsKKyAgICAgICAgZG9jdW1lbnQtPnNldE5lZWRzU3R5bGVSZWNhbGMoU3lu
dGhldGljU3R5bGVDaGFuZ2UpOworICAgICAgICBkb2N1bWVudC0+cmVjYWxjU3R5bGUoRm9yY2Up
OworICAgIH0KKyAgICBIVE1MRWxlbWVudDo6ZGV0YWNoKCk7Cit9CisKIHZvaWQgSFRNTEZyYW1l
T3duZXJFbGVtZW50Ojp3aWxsUmVtb3ZlKCkKIHsKICAgICAvLyBGSVhNRTogSXQgaXMgdW5jbGVh
ciB3aHkgdGhpcyBjYW4ndCBiZSBtb3ZlZCB0byByZW1vdmVkRnJvbURvY3VtZW50KCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oCmluZGV4IGRlOWQxNTMyMGNm
NzViYTc1N2MyODkxYjBmYTMxYTZhMWI5NDM0MzEuLjNmMmE4NGQ5MGQ5ZWZkZTMzMzFlZTFkMjU5
MzA0MGFjMzc4YzYzNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1l
T3duZXJFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVs
ZW1lbnQuaApAQCAtNjAsNiArNjAsOCBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2b2lkIHNldFNhbmRi
b3hGbGFncyhTYW5kYm94RmxhZ3MpOwogCisgICAgdmlydHVhbCB2b2lkIGF0dGFjaCgpOworICAg
IHZpcnR1YWwgdm9pZCBkZXRhY2goKTsKICAgICB2aXJ0dWFsIHZvaWQgd2lsbFJlbW92ZSgpOwog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAppbmRleCBiNjBiMzkzY2JjMDg5N2JjYjU1ZGU1
NmY3MWYxNDEwNjdkMDIzODIwLi4xZjcwZTg1ZjNiMWNiN2I4OWM4ODkzYTc5YTBlZjgyYTg3MjM5
NzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMzAwLDggKzMwMCwxMiBAQCB2b2lkIEZyYW1l
OjpzZXREb2N1bWVudChQYXNzUmVmUHRyPERvY3VtZW50PiBuZXdEb2MpCiAgICAgbV9kb2MgPSBu
ZXdEb2M7CiAgICAgc2VsZWN0aW9uKCktPnVwZGF0ZVNlY3VyZUtleWJvYXJkRW50cnlJZkFjdGl2
ZSgpOwogCi0gICAgaWYgKG1fZG9jICYmICFtX2RvYy0+YXR0YWNoZWQoKSkKLSAgICAgICAgbV9k
b2MtPmF0dGFjaCgpOworICAgIGlmIChtX2RvYykgeworICAgICAgICBib29sIGlzVmlzaWJsZSA9
ICFtX293bmVyRWxlbWVudCB8fCAobV9vd25lckVsZW1lbnQtPnJlbmRlcmVyKCkgJiYgbV9vd25l
ckVsZW1lbnQtPnJlbmRlcmVyKCktPmlzUmVuZGVyUGFydCgpKTsKKyAgICAgICAgbV9kb2MtPnNl
dFNob3VsZENyZWF0ZVJlbmRlcmVycyhpc1Zpc2libGUpOworICAgICAgICBpZiAoIW1fZG9jLT5h
dHRhY2hlZCgpKQorICAgICAgICAgICAgbV9kb2MtPmF0dGFjaCgpOworICAgIH0KIAogICAgIC8v
IFVwZGF0ZSB0aGUgY2FjaGVkICdkb2N1bWVudCcgcHJvcGVydHksIHdoaWNoIGlzIG5vdyBzdGFs
ZS4KICAgICBtX3NjcmlwdC51cGRhdGVEb2N1bWVudCgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90129</attachid>
            <date>2011-04-18 19:07:15 -0700</date>
            <delta_ts>2011-04-18 21:24:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58414-20110418190714.patch</filename>
            <type>text/plain</type>
            <size>22071</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQwMzEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxMjQyNmE2OWZlN2M3NzNmNzdkODZl
OTljYWE2YjI5OTQyNjc0MTlkLi44ZDJjZjJkMTMwNGY5ZjA5NDNlNzNhMjBiMjQ4MzRlNjY2N2Uy
MGUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDQtMTggIEFudG9pbmUgTGFib3VyICA8
cGltYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIERvbid0IGNyZWF0ZSByZW5kZXJlcnMgaW4gZGlzcGxheTpub25lIGlmcmFt
ZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODQx
NAorCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLWV4cGVj
dGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlz
aWJsZS1pZnJhbWUtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBj
b21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAg
ICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC5j
aGVja3N1bTogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUt
bmVzdGVkLWlmcmFtZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5n
L2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUt
ZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMv
aW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAg
ICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxl
LW5lc3RlZC1pZnJhbWUtaGlkZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0ZWQuY2hlY2tzdW06IEFk
ZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJh
bWUtc2hvdy1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFt
ZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0
ZWQtaWZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDExLTA0LTE1ICBBbmRyZWFzIEtsaW5nICA8a2xp
bmdAd2Via2l0Lm9yZz4KIAogICAgICAgICBTa2lwIGZhaWxpbmcgdGVzdHMgYWZ0ZXIgcjg0MDEw
IGFuZCByODQwMTIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNWNkNDFjNmI2YmUzYTliZjg1OWJkMDNiNWE4OGU4YTRkODliNzkwNQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1l
eHBlY3RlZC5jaGVja3N1bQpAQCAtMCwwICsxIEBACiszYTRlYzE0N2ZkMmNkNmExMjZmMjcxODM4
MzEzODRiNApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQu
cG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjY4ZmRmNDYyNmQ1NzEzNjcxYTA3MDllZDQxNWM1MjY3OTI4MDRmMjEK
R0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI4NTkKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlV
eyt2WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhgb2s8bX0/b1RuNkpyCnpsaGtCRzZaNW5icXZSQmBM
XztJOUckVjZFM3U2bW9MdF9oKkIkTXh9R0F9YlFhUDlTVWFTVy1MXlktcFImSVNoXwp6MjFveGxg
PTNUTTczZyNyZWRkMyVeVH1qV1Z8RTZIeHU0JiVHQkVzZU9KSE87IVhuMXQ7RGVqLT05WUJ5PlI5
R14Kemx+eFB+IWd0X1Noc1RJZkRmfmVeOGF8YHBMb2dxYm89RGQxLThpJDFtIWFXKiE5Z2E1NG8p
NDBoOFlKJjhLWiRQCm5uaTU4SCFEdWNSJT57IW43dT8rdSYlSihvZiFLNmw+ekJkUCl6NCp9USRp
Qn03MyUwLQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTBhNzJkMTAzOWVhYmJjMTE3YTQ1MGQwMzM0OTA3YTg2ZmQwZDFiZgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxl
LWlmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgw
LDApIHNpemUgODAweDIzMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4
MjMwCisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTApIHNpemUgNzg0eDIxMAorbGF5ZXIg
YXQgKDE4LDEwKSBzaXplIDIxMHgyMTAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDEwLDApIHNp
emUgMjEweDIxMCBbYmdjb2xvcj0jMDAwMEZGXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTAzMzI1
ZmU3NWJlZjgxOTUzMDYzYTkwODhiODYwZWJhN2FiMmIxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWwKQEAgLTAs
MCArMSwzNiBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9y
ZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGhl
aWdodDogMTUwcHg7CisgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgLXdlYmtpdC1ib3gt
c2hhZG93OiAwIDAgMjBweCBibGFjazsKKyAgICB9CisgICAgLmJveCB7CisgICAgICAgIGhlaWdo
dDogMjAwcHg7CisgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgbWFyZ2luOiAxMHB4Owor
ICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7Cisg
ICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAgICAgICBvdmVyZmxv
dzpoaWRkZW47CisgICAgfQorICAgIC5ib3g6aG92ZXIgeworICAgICAgICAtd2Via2l0LXRyYW5z
Zm9ybTogbm9uZTsKKyAgICB9CisgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDwh
LS0gVGhlIGludmlzaWJsZSBpZnJhbWUgc2hvdWxkIG5vdCBzZXQgaXRzZWxmIGFzIHRoZSByb290
IGxheWVyLiAtLT4KKyAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CisgICAgICAgIDxp
ZnJhbWUgc3JjPSJyZXNvdXJjZXMvY29tcG9zaXRlZC1zdWJmcmFtZS5odG1sIj48L2lmcmFtZT4K
KyAgICA8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giPgorICAgIDwvZGl2PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZp
c2libGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL2NvbXBv
c2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNWNkNDFjNmI2YmUzYTliZjg1OWJkMDNiNWE4OGU4YTRkODliNzkwNQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxl
LW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorM2E0ZWMxNDdm
ZDJjZDZhMTI2ZjI3MTgzODMxMzg0YjQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQt
aWZyYW1lLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52
aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4ZmRmNDYyNmQ1
NzEzNjcxYTA3MDllZDQxNWM1MjY3OTI4MDRmMjEKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI4
NTkKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhg
b2s8bX0/b1RuNkpyCnpsaGtCRzZaNW5icXZSQmBMXztJOUckVjZFM3U2bW9MdF9oKkIkTXh9R0F9
YlFhUDlTVWFTVy1MXlktcFImSVNoXwp6MjFveGxgPTNUTTczZyNyZWRkMyVeVH1qV1Z8RTZIeHU0
JiVHQkVzZU9KSE87IVhuMXQ7RGVqLT05WUJ5PlI5R14Kemx+eFB+IWd0X1Noc1RJZkRmfmVeOGF8
YHBMb2dxYm89RGQxLThpJDFtIWFXKiE5Z2E1NG8pNDBoOFlKJjhLWiRQCm5uaTU4SCFEdWNSJT57
IW43dT8rdSYlSihvZiFLNmw+ekJkUCl6NCp9USRpQn03MyUwLQoKbGl0ZXJhbCAwCkhjbVY/ZDAw
MDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2li
bGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
MGE3MmQxMDM5ZWFiYmMxMTdhNDUwZDAzMzQ5MDdhODZmZDBkMWJmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFt
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNp
emUgODAweDIzMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4MjMwCisg
ICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTApIHNpemUgNzg0eDIxMAorbGF5ZXIgYXQgKDE4
LDEwKSBzaXplIDIxMHgyMTAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDEwLDApIHNpemUgMjEw
eDIxMCBbYmdjb2xvcj0jMDAwMEZGXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRp
bmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1oaWRlLWV4cGVjdGVkLmNoZWNrc3Vt
IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFt
ZS1oaWRlLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVjZDQxYzZiNmJlM2E5YmY4NTli
ZDAzYjVhODhlOGE0ZDg5Yjc5MDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0ZWQuY2hl
Y2tzdW0KQEAgLTAsMCArMSBAQAorM2E0ZWMxNDdmZDJjZDZhMTI2ZjI3MTgzODMxMzg0YjQKXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0ZWQucG5nIGIv
TGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1o
aWRlLWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OGZkZjQ2MjZkNTcxMzY3MWEwNzA5ZWQ0MTVj
NTI2NzkyODA0ZjIxCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAyODU5CnpjbWVBU0BOPyhvbEh5
YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9aF5obEElQFdzJGxIYG9rPG19P29UbjZKcgp6bGhr
Qkc2WjVuYnF2UkJgTF87STlHJFY2RTN1Nm1vTHRfaCpCJE14fUdBfWJRYVA5U1VhU1ctTF5ZLXBS
JklTaF8KejIxb3hsYD0zVE03M2cjcmVkZDMlXlR9aldWfEU2SHh1NCYlR0JFc2VPSkhPOyFYbjF0
O0Rlai09OVlCeT5SOUdeCnpsfnhQfiFndF9TaHNUSWZEZn5lXjhhfGBwTG9ncWJvPURkMS04aSQx
bSFhVyohOWdhNTRvKTQwaDhZSiY4S1okUApubmk1OEghRHVjUiU+eyFuN3U/K3UmJUoob2YhSzZs
PnpCZFApejQqfVEkaUJ9NzMlMC0KCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUt
aGlkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlz
aWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkwYTcyZDEw
MzllYWJiYzExN2E0NTBkMDMzNDkwN2E4NmZkMGQxYmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAw
CisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHgyMzAKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDIzMAorICAg
IFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDEwKSBzaXplIDc4NHgyMTAKK2xheWVyIGF0ICgxOCwx
MCkgc2l6ZSAyMTB4MjEwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxMCwwKSBzaXplIDIxMHgy
MTAgW2JnY29sb3I9IzAwMDBGRl0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS5odG1sIGIvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1oaWRlLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNmYyMjMyN2RmMzVlZWI4MzBlOGVjN2U4NzYwZTJmZjFlYjM1ZWMwYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5l
c3RlZC1pZnJhbWUtaGlkZS5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKzwhRE9DVFlQRSBodG1sPgor
Cis8aHRtbD4KKzxoZWFkPgorICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4i
PgorICAgIGlmcmFtZSB7CisgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKKyAgICAg
ICAgcGFkZGluZzogNXB4OworICAgICAgICBoZWlnaHQ6IDE1MHB4OworICAgICAgICB3aWR0aDog
MzAwcHg7CisgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDIwcHggYmxhY2s7CisgICAg
fQorICAgIC5ib3ggeworICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICB3aWR0aDogMjAw
cHg7CisgICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICAgcGFkZGluZzogNXB4OworICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJh
bnNsYXRlWigwKTsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgIH0KKyAgICAuYm94Omhv
dmVyIHsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CisgICAgfQorICA8L3N0eWxl
PgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgorICAg
IAorICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKQorICAg
IHsKKyAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICB2YXIgZGl2
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ludmlzaWJsZScpOworICAgICAgICBkaXYuc3R5
bGUuY3NzVGV4dCA9ICJkaXNwbGF5Om5vbmU7IjsKKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25l
KCk7CisgICAgICB9LCAwKQorICAgIH0KKyAgICAKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5l
cignbG9hZCcsIGRvVGVzdCwgZmFsc2UpOworICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
CisgICAgPCEtLSBUaGUgbmVzdGVkIGlmcmFtZSBzaG91bGQgZGlzYXBwZWFyIHdoZW4gd2Ugc2V0
IGl0IHRvICJkaXBsYXk6bm9uZSIuIC0tPgorICAgIDxkaXYgaWQ9ImludmlzaWJsZSI+CisgICAg
ICAgIDxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvaW50ZXJtZWRpYXRlLWZyYW1lLmh0bWwiPjwvaWZy
YW1lPgorICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImJveCI+CisgICAgPC9kaXY+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhw
ZWN0ZWQuY2hlY2tzdW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjJhN2ZmZjcyZDRhNjIzMDY5ZjBiZDY0ODMzMWI0
NTM0NTRkNDlkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lm
cmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy1leHBlY3RlZC5jaGVja3N1bQpAQCAt
MCwwICsxIEBACis3ZDZlMTBlYTBmNjAxYTFhMjQ3NzNlODc5ZDkwZDliNgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFt
ZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0
cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0
ZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjE3YjIwYTUxNjNiYjA4MGFhYmYzY2ZlMGU4MjcwMGIwYjNiYzA2
OTUKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDQ3MzYKemNtZUhMWDtmMyE3Q3MzUWtPVj87cGlt
YE50NWlTKmt3SzlgI1IoS0RVPW8hO0FiPksmcXw1QDZLPEp+cWl1NVQlCnpuVlEtQCNTcTlLTG47
QURNQng9d0RpOCp2R15sfStLb3xvQjREPj9aZGFNMV97KDglPDxAc34oeF83VSRod3Rwfgp6K3hL
UkQ7Jm9KQyZyfVpwcG52P0J5QUo/Ym4qZjAwYj5ZeUhiISpwfEx6bkhiaHctdGIzISRYUW1eZDxV
MihiXmYKenU/YEtnNHpzdG0zOTw+PXl+bn05SHFfQiFaXiZOamtpRWg3aD91fCowRX49fHlDM2pO
RUUjPXEobm9xc3QwbX1NCnplJT07cF9UMitNejdLYWgkUCVBI0ArPVFhcTxrNnE4a18tKGlOPlhT
NChgVH5tYT9OSl9haj4hNSZNdj1STW97Rgp6clgmJEhGRD9xQ3FoVkZzMUhZSmZNUSlGPlNKSmUt
IzM/Umd3OTJBZUQtUmRIUCpNUHFMYXQ9clF6dG5tZSZRTVYKejxyJiotP1hueCNyKkJ4ZCZoem5J
SWBXUyU3S1BhdD1XKjM3MCU+SjQrfGdhaVd2aDRZM2g1cFJDdjR4NU5ZZmFaCnpKfGJqeU1vZFR7
UGlSSEVmdk03WTI/O1JYUFBmQG0zfS03NT15fF5TYFRwKGBNRGJjZ24lJnBKQD43eXBeNHptcAp6
XjQ+M1g4cHx1ejwrcDYoMUF+YzMxaU0/KClPNkBMZC05dnFiQmlfZyhZJnFmSD1FPE1lTkE+NTxv
ajd2Vkt0bnkKekl9N0JjS0dJcVNza1E+dVo3eHxTYHRhR2wlY28tJGk7SWZgJWo8XkEkNGtAeHFg
Ymg3Y3RpX14kaDFjaWViKmB1CnppbFVCVmN+bTJGU2k2a19IaDtZZSVWTCpDcV5mNjAqfF5uZHRT
Zj9teWV6ZzRqP2ZjRj1uNEZKWXtfcnc7UWRNTwp6VjVIMkRPcnM+VFpaOWs+MitLVDM1fEtzb2It
WEE4KFRSKXUzRUZ0MWo8YllkWlMkaVVyXzl4RWMmZ0JveCNjQUQKekpPfm9le0Z9THtFfFMqZDtN
Q21jPTskd3xQMnpgXiZ9JjBzZiRvP31iPDZDMXMjUVdsMHQxT3MqM3AqMl51ZnNKCno0QE47V001
SDFPYzlqMyhCNG5lMDJUTjxeO3xeS2NoRng2PTlKTEFzTjRuSkI7b3NAY2tibDtPOXBTQyZefHQq
VQp6alV7WD9OZ3w1KVU3aWVPc0hHLW5MKipgQzk3cytzNXRwK3dadF88PXNoY2V8LVdQaFd4Y3M9
MC1lOU0kKHA4cWQKeiVxXytIcUVVfGQoTn1zN3I0RyUxMHxFUGhFQTI8YzJVbFgqRUZIdUtQdj1M
MG5wRnY0WDZocWVZaldTNjJ5Mzs3CnpQR1ZVeTd7bHpvdkFQYUMoMX0xOGh4SyUteTBvO2UtWlVH
T3s7Uk1LZShie2VzeCFgbFpwKjl5ZVhCQn08QyleZQp6VlNJZjNjKUI+MFE1eWh6cG5zbCt6XnA9
K2w7UzljJnM7bE5aMUdAJllKeX5nRDZ8eytpdkM/ditlVldJPnFRP0gKeiloWHxQYU9SZ295LUN7
Q3NLLSZVIVJ6cWp7T3B7R2Y8fHB3Vj8+ITU3ezY5clQjUnV8LTlPN1VIYTBGT0NeJE9iCnpkNSRA
WTsmSUs+TFJFVFJ0IWxNZUI5UlBtYC1VWiN0aWE0bjxhSj9ueF5HTk8ldjY0SzlrbE09P09XaEYm
Y0xxVAp6eFRNKUNTe3J+amRBXlZiPmR8VDF6O0dLNmZjdll+bXQwcFdtOD91NFFiUENISn4mZ1BZ
PGxDWTM7eURfUDBZYlcKeistdFFrVihncVA3PGFqdmByVDhoUjd6U30/ZjcyY3lfQ0hqNnRuaVQ7
Wn02dEtgI3sqUU4zMWxpTFprTW5AJGo2CnpBWS0pXnBqIypOV1UrVSpYbyg3cUBZSzN7c2hXTU1s
U0EhSCNgKHAkQSFkUyEwaWM5dDhVRF9teDg/O3lFcEhvUQp6V3J7RkVHY3o8X0c+bmVFazZJN2h6
N29OSz9peEcqTEdWOH5fKzF1bml4RHFnMFJ4b0RRSz97Mkt3SHd4YGZZKjkKelBRI0g7bnRIZl9a
NDlPPiZDQUlNMWdzP2YyKGBYTSQxPysqY1BFTjNAIVdOKE4zN24xZ04jQ1BgVj13Q1A8QlB2Cnok
YFBIZjN3IWVVKWBMKG4tQDt0flFjTm9hWGBpMU5tM0FFaEw8fTcxKWV9aDVzUGhYaEZEK18lcTNY
RXUtRjUkVwp6ODJfJkBLNGE7Q3ttTztldkVgRj84N2VtY2hyPn1XXis4Uj1LTUVKb2c4eShsU0Yj
UGU/b15VQ20qU0VkRXFybEwKel5BT2FWK3YySCs8e2ZIKDAqdEIkSEJlXmlEVjhPRGpYNiZpbUNO
ekxmaWlFUmM8KDczSURnPWB3czFUSkhTej13CnpLSkpwTC1KUmwrNWJqV3QrdCRgNU5jb1FwYXgw
aDFgKUxwUFhlIUVFI2dPfFUmRSpQKFZzTFA8Qj9yXnFBYmFgcAp6V2owM0YrMXttcDwwOURKKCh2
QD57dHUkYnVTNH5pPXI/bnU1aldTNmMhZ1VNbDFQRTUjTUNaRjh6V2BNO0dPYDgKeiFDREpyVTNN
PU1UaT5PNkNqfjZzakp0VitOaUpAZGReUjNyY1hDUTArfUB4fntvSCkwPzsyTUErRypLdjcmQ2x9
CnoxSk9wUWRYVXEpU2BjM0pGbkQ0enIocXVNKXNvcGJKRGEoTFpyLXV9aXpGVnAhLUU4S3VWJjEw
PCZQRjNUKj55dQp6dm5DaXI5NkZ8JDUzY0B1bjJZTX08Z0IqJU1idjUmZlMlaXpXNEF6OUNLeHd3
STZKJihNKHwkLVI7RSE5JFc4MkYKekA0eTxlNU8wOz1DWGM/bUxpZjMoZGI3el8lfCQ8MChWTXl3
YyNUKkBMMGhQX21lNnozKjs8Q0w8M3ZocF9oOXVhCnoxa1omcXg8aUNBbHAhQ0RWekR6YkdnbWg1
aU16PmZNUm0pKnkrNk9aUEA1LWNJcitYa082YjIrJFQ/U3VVNkJRRQp6cmJgP0ZjWjwhR1d9VXVa
TWJ9aXYmNmlpOElhc3pqc1VkKHt3eWEtdkpjVUoyPjRRNVN4YHQwQDYyOW01Q148XnwKejsldXFF
U08qSmRIK3U5azl+MzNVMCp2XlRTdyRfYHBeKz8qRjg5NGswRXNFSUJvVXtGMWw+dz95bEA5TTdE
TSp4CnpXQlFecj9XRWdOSzU7Sl5tMzd8RWFSQGRkZjdwYCNPYHZEU098fU9xazY2P2ByMCgpcEM/
Sih6Zz43dHQ0JU8kKwp6aiVZaj9aS3dRcTJBSkhBdmtUWjxxQiRPPE1ANWw0X2VlK01gU0B3eWFC
NTZORytfWFd4KUtYJShhPzA+cWpjNloKekJ8eVNfVX00UGRsNSVzbXYtYyZhcEJ2cVA2ITFCVHNB
Z2BnKlgmcT5iNWVRYCNqZz0qSEMyMj89elZxTVckUSlKCnoyNEZCOWlOLUZtI003cn5LU193OFJH
IU9pekQlUjlEKnYma0ZfWVJyTmlNQjF7WWpfSSUhLX5Ie3xUPERFVWhNaAp6M2p3b2l0YitFZFpX
ZElVUWtvO2FQUig1cUpATTRGZ1FWXnN3cz1qUTF2MV5Ldi1SYnNsQT8pJjEyS2dYbnN4dT4KenQo
Q3hfQzt4aFFjKlVZZ1pCKF5JcDxRcFJnZW1tRlFUTlJrY2p7ekljMiFRaUl6V0pRTXlwMUI7JXZP
SXJ9STxTCnpeN3glZGdBUnt5dV4rO0ArT3tnPGE1bTwpQ0g/eXI1aX50UG1AfUBPKn5YRUw/MDNr
a0B4QT1gMU9iKiZVRztRWgp6LXZPXnxwJDk9Y3tKfGIqczVgOXhQWShodDxaKzhzbDJGQClKb2lr
IXo5anVxR3hib30weV9Sa1VMOVB3WHcwZ3QKemZTRUYyTE9pPVgxe1JpRiEtN3d6MVI8VTU0e3Vm
eiZ2SzcrdjwreXhiemM+azhoVmYwZH44OGFtYFdtIUY0fnchCnpecHwkJiRveF5SPH5vM2B3SVlS
b1NOOHIoNiN2Zlg/PD4jbXU9e2lEWThFdVRAeD5idkstM2IxYy1zZmljWXl2bQprcHprUjh3LTI8
cE9xRGQ0JSEoMSFuI1hSeyZAVXgke0lIaWg9TzhpdFJ7KEh2XlopPD0KCmxpdGVyYWwgMApIY21W
P2QwMDAwMQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52
aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjJkYzkwY2I0MjQ2MTA5MjYxYmViNTQzZDA2ZmM3Yjc3OTI0ODI5ZTcKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJs
ZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjUgQEAKK2xheWVy
IGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYw
MAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NDIzCisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAo
MCwwKSBzaXplIDgwMHg0MjMKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4
NHg0MDUKKyAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNzg0eDE4NQorICAg
ICAgICBSZW5kZXJQYXJ0T2JqZWN0IHtJRlJBTUV9IGF0ICgwLDApIHNpemUgMzMweDE4MCBbYm9y
ZGVyOiAoMTBweCBzb2xpZCAjMDAwMDAwKV0KKyAgICAgICAgICBsYXllciBhdCAoMCwwKSBzaXpl
IDI4NXgxOTMKKyAgICAgICAgICAgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSAyODV4MTUwCisg
ICAgICAgICAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSAyODV4MTkzCisgICAgICAgICAgICBSZW5kZXJC
bG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSAyODV4MTkzCisgICAgICAgICAgICAgIFJlbmRlckJv
ZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgMjY5eDE3NworICAgICAgICAgICAgICAgIFJlbmRlclRl
eHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAorICAgICAgICAgIGxheWVyIGF0ICg4LDgpIHNp
emUgMjUyeDE3MgorICAgICAgICAgICAgUmVuZGVyUGFydE9iamVjdCB7SUZSQU1FfSBhdCAoMCww
KSBzaXplIDI1MngxNzIgW2JvcmRlcjogKDFweCBzb2xpZCAjMDAwMDAwKV0KKyAgICAgICAgICAg
ICAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSAyNTB4MjMwCisgICAgICAgICAgICAgICAgUmVuZGVyVmll
dyBhdCAoMCwwKSBzaXplIDI1MHgxNzAKKyAgICAgICAgICAgICAgbGF5ZXIgYXQgKDAsMCkgc2l6
ZSAyNTB4MjMwCisgICAgICAgICAgICAgICAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNp
emUgMjUweDIzMAorICAgICAgICAgICAgICAgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTAp
IHNpemUgMjM0eDIxMCBbYmdjb2xvcj0jQzBDMEMwXQorICAgICAgICAgICAgICBsYXllciBhdCAo
MTgsMTApIHNpemUgMjEweDIxMAorICAgICAgICAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0
ICgxMCwwKSBzaXplIDIxMHgyMTAgW2JnY29sb3I9IzAwMDBGRl0KKyAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCitsYXllciBhdCAoMTgsMjAzKSBzaXplIDIxMHgy
MTAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDEwLDE5NSkgc2l6ZSAyMTB4MjEwIFtiZ2NvbG9y
PSMwMDAwRkZdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2lu
dmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3cuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4
NjQ3ODQ5NWMxYzIxZmJhY2E1MTcyZGFkYzE3NTM3MGExNDQ0ZmUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1l
LXNob3cuaHRtbApAQCAtMCwwICsxLDUzIEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8
aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBpZnJh
bWUgeworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgIHBhZGRpbmc6
IDVweDsKKyAgICAgICAgaGVpZ2h0OiAxNTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4OworICAg
ICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrOworICAgIH0KKyAgICAuYm94
IHsKKyAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgd2lkdGg6IDIwMHB4OworICAgICAg
ICBtYXJnaW46IDEwcHg7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogYmx1ZTsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7
CisgICAgICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICB9CisgICAgLmJveDpob3ZlciB7CisgICAg
ICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOworICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAKKyAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
d2FpdFVudGlsRG9uZSgpOworCisgICAgZnVuY3Rpb24gZG9UZXN0KCkKKyAgICB7CisgICAgICB3
aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdpbnZpc2libGUnKTsKKyAgICAgICAgZGl2LnN0eWxlLmNzc1RleHQg
PSAiIjsKKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAg
ICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgICB9LCAwKQorICAgIH0K
KyAgICAKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGRvVGVzdCwgZmFsc2Up
OworICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCisgICAgPCEtLSBUaGUgbmVzdGVkIGlm
cmFtZSBzaG91bGQgYXBwZWFyIHdoZW4gd2UgcmVtb3ZlICJkaXBsYXk6bm9uZSIuIC0tPgorICAg
IDxkaXYgaWQ9ImludmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICA8aWZy
YW1lIHNyYz0icmVzb3VyY2VzL2ludGVybWVkaWF0ZS1mcmFtZS5odG1sIj48L2lmcmFtZT4KKyAg
ICA8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giPgorICAgIDwvZGl2PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2li
bGUtbmVzdGVkLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9p
bnZpc2libGUtbmVzdGVkLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2MjViOTVhZmY0NTczODRi
ZTI0ODFkNmFmNDdlNGJlMjRjMGRmOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLmh0bWwKQEAgLTAsMCAr
MSwzNiBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0eXBl
PSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9yZGVy
OiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGhlaWdo
dDogMTUwcHg7CisgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgLXdlYmtpdC1ib3gtc2hh
ZG93OiAwIDAgMjBweCBibGFjazsKKyAgICB9CisgICAgLmJveCB7CisgICAgICAgIGhlaWdodDog
MjAwcHg7CisgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgbWFyZ2luOiAxMHB4OworICAg
ICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7CisgICAg
ICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAgICAgICBvdmVyZmxvdzpo
aWRkZW47CisgICAgfQorICAgIC5ib3g6aG92ZXIgeworICAgICAgICAtd2Via2l0LXRyYW5zZm9y
bTogbm9uZTsKKyAgICB9CisgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDwhLS0g
VGhlIG5lc3RlZCBpZnJhbWUgaW5zaWRlIGludmlzaWJsZSBpZnJhbWUgc2hvdWxkIG5vdCBzZXQg
aXRzZWxmIGFzIHRoZSByb290IGxheWVyLiAtLT4KKyAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBu
b25lOyI+CisgICAgICAgIDxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvaW50ZXJtZWRpYXRlLWZyYW1l
Lmh0bWwiPjwvaWZyYW1lPgorICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImJveCI+CisgICAg
PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmY1NWRjMTE1OGVmNGUxY2Uz
ODI1NDI1OWVjZGE5OTc5ODc2MjI5YS4uMjEzZDg4OTViYzhiZTIyOWFmYjU1NDRkYTdkNGZkNDY3
ZTg1N2Y3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDExLTA0LTE1ICBBbnRvaW5l
IExhYm91ciAgPHBpbWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBEb24ndCBjcmVhdGUgcmVuZGVyZXJzIGluIGRpc3BsYXk6
bm9uZSBpZnJhbWVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTg0MTQKKworICAgICAgICBOZXcgdGVzdHM6CisgICAgICAgICogY29tcG9zaXRpbmcv
aWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0
aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3cu
aHRtbDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVz
dGVkLWlmcmFtZS5odG1sOiBBZGRlZC4KKworICAgICAgICAqIGh0bWwvSFRNTEZyYW1lT3duZXJF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudDo6YXR0
YWNoKTogQWxsb3cgcmVuZGVyZXJzIHRvIGJlIGNyZWF0ZWQKKyAgICAgICAgaW4gY29udGVudCBk
b2N1bWVudCAoaWYgdmlzaWJsZSksIGFuZCB0cmlnZ2VyIGEgc3R5bGUgcmVjYWxjIHRvIGNyZWF0
ZQorICAgICAgICB0aGVtLgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50
OjpkZXRhY2gpOiBCbG9jayByZW5kZXJlcnMgZnJvbSBiZWluZworICAgICAgICBjcmVhdGVkIGlu
IGNvbnRlbnQgZG9jdW1lbnQsIGFuZCB0cmlnZ2VyIGEgc3R5bGUgcmVjYWxjIHRvIGRlc3Ryb3kK
KyAgICAgICAgZXhpc3Rpbmcgb25lcy4KKyAgICAgICAgKiBodG1sL0hUTUxGcmFtZU93bmVyRWxl
bWVudC5oOgorICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJh
bWU6OnNldERvY3VtZW50KTogQmxvY2sgcmVuZGVyZXJzIGZyb20gYmVpbmcgY3JlYXRlZCBpZiB0
aGUKKyAgICAgICAgZG9jdW1lbnQgd2lsbCBiZSBpbnZpc2libGUuCisKIDIwMTEtMDQtMTUgIEdl
b2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBP
bGl2ZXIgSHVudC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3du
ZXJFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50
LmNwcAppbmRleCBhMjE3ODgxZjMyNTQ2YzVlNGQ0YmM0NTA3NjllODg4NjNlNGI0Mjk5Li45YWQ0
M2FlNjdkNWUyZTIzNWM2ODNhZTQ2Mjg3NzQzNjRkMWNhZjE3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwCkBAIC00OSw2ICs0OSwzMCBAQCBSZW5k
ZXJQYXJ0KiBIVE1MRnJhbWVPd25lckVsZW1lbnQ6OnJlbmRlclBhcnQoKSBjb25zdAogICAgIHJl
dHVybiB0b1JlbmRlclBhcnQocmVuZGVyZXIoKSk7CiB9CiAKK3ZvaWQgSFRNTEZyYW1lT3duZXJF
bGVtZW50OjphdHRhY2goKQoreworICAgIEhUTUxFbGVtZW50OjphdHRhY2goKTsKKyAgICBEb2N1
bWVudCogZG9jdW1lbnQgPSBjb250ZW50RG9jdW1lbnQoKTsKKyAgICBpZiAoIWRvY3VtZW50KQor
ICAgICAgICByZXR1cm47CisKKyAgICBib29sIGlzVmlzaWJsZSA9IHJlbmRlcmVyKCkgJiYgcmVu
ZGVyZXIoKS0+aXNSZW5kZXJQYXJ0KCk7CisgICAgZG9jdW1lbnQtPnNldFNob3VsZENyZWF0ZVJl
bmRlcmVycyhpc1Zpc2libGUpOworICAgIGRvY3VtZW50LT5zZXROZWVkc1N0eWxlUmVjYWxjKFN5
bnRoZXRpY1N0eWxlQ2hhbmdlKTsKKyAgICBkb2N1bWVudC0+cmVjYWxjU3R5bGUoRm9yY2UpOwor
fQorCit2b2lkIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6ZGV0YWNoKCkKK3sKKyAgICBEb2N1bWVu
dCogZG9jdW1lbnQgPSBjb250ZW50RG9jdW1lbnQoKTsKKyAgICBpZiAoZG9jdW1lbnQpIHsKKyAg
ICAgICAgZG9jdW1lbnQtPnNldFNob3VsZENyZWF0ZVJlbmRlcmVycyhmYWxzZSk7CisgICAgICAg
IGRvY3VtZW50LT5zZXROZWVkc1N0eWxlUmVjYWxjKFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKKyAg
ICAgICAgZG9jdW1lbnQtPnJlY2FsY1N0eWxlKEZvcmNlKTsKKyAgICB9CisgICAgSFRNTEVsZW1l
bnQ6OmRldGFjaCgpOworfQorCiB2b2lkIEhUTUxGcmFtZU93bmVyRWxlbWVudDo6d2lsbFJlbW92
ZSgpCiB7CiAgICAgLy8gRklYTUU6IEl0IGlzIHVuY2xlYXIgd2h5IHRoaXMgY2FuJ3QgYmUgbW92
ZWQgdG8gcmVtb3ZlZEZyb21Eb2N1bWVudCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJh
bWVPd25lckVsZW1lbnQuaAppbmRleCBkZTlkMTUzMjBjZjc1YmE3NTdjMjg5MWIwZmEzMWE2YTFi
OTQzNDMxLi4zZjJhODRkOTBkOWVmZGUzMzMxZWUxZDI1OTMwNDBhYzM3OGM2MzRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmgKQEAgLTYwLDYgKzYwLDgg
QEAgcHJvdGVjdGVkOgogCiAgICAgdm9pZCBzZXRTYW5kYm94RmxhZ3MoU2FuZGJveEZsYWdzKTsK
IAorICAgIHZpcnR1YWwgdm9pZCBhdHRhY2goKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoKCk7
CiAgICAgdmlydHVhbCB2b2lkIHdpbGxSZW1vdmUoKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFt
ZS5jcHAKaW5kZXggYjYwYjM5M2NiYzA4OTdiY2I1NWRlNTZmNzFmMTQxMDY3ZDAyMzgyMC4uMWY3
MGU4NWYzYjFjYjdiODljODg5M2E3OWEwZWY4MmE4NzIzOTc2NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5j
cHAKQEAgLTMwMCw4ICszMDAsMTIgQEAgdm9pZCBGcmFtZTo6c2V0RG9jdW1lbnQoUGFzc1JlZlB0
cjxEb2N1bWVudD4gbmV3RG9jKQogICAgIG1fZG9jID0gbmV3RG9jOwogICAgIHNlbGVjdGlvbigp
LT51cGRhdGVTZWN1cmVLZXlib2FyZEVudHJ5SWZBY3RpdmUoKTsKIAotICAgIGlmIChtX2RvYyAm
JiAhbV9kb2MtPmF0dGFjaGVkKCkpCi0gICAgICAgIG1fZG9jLT5hdHRhY2goKTsKKyAgICBpZiAo
bV9kb2MpIHsKKyAgICAgICAgYm9vbCBpc1Zpc2libGUgPSAhbV9vd25lckVsZW1lbnQgfHwgKG1f
b3duZXJFbGVtZW50LT5yZW5kZXJlcigpICYmIG1fb3duZXJFbGVtZW50LT5yZW5kZXJlcigpLT5p
c1JlbmRlclBhcnQoKSk7CisgICAgICAgIG1fZG9jLT5zZXRTaG91bGRDcmVhdGVSZW5kZXJlcnMo
aXNWaXNpYmxlKTsKKyAgICAgICAgaWYgKCFtX2RvYy0+YXR0YWNoZWQoKSkKKyAgICAgICAgICAg
IG1fZG9jLT5hdHRhY2goKTsKKyAgICB9CiAKICAgICAvLyBVcGRhdGUgdGhlIGNhY2hlZCAnZG9j
dW1lbnQnIHByb3BlcnR5LCB3aGljaCBpcyBub3cgc3RhbGUuCiAgICAgbV9zY3JpcHQudXBkYXRl
RG9jdW1lbnQoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90138</attachid>
            <date>2011-04-18 21:24:06 -0700</date>
            <delta_ts>2011-04-19 11:35:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58414-20110418212405.patch</filename>
            <type>text/plain</type>
            <size>19826</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQwMzEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxMjQyNmE2OWZlN2M3NzNmNzdkODZl
OTljYWE2YjI5OTQyNjc0MTlkLi44ZDJjZjJkMTMwNGY5ZjA5NDNlNzNhMjBiMjQ4MzRlNjY2N2Uy
MGUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDQtMTggIEFudG9pbmUgTGFib3VyICA8
cGltYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIERvbid0IGNyZWF0ZSByZW5kZXJlcnMgaW4gZGlzcGxheTpub25lIGlmcmFt
ZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODQx
NAorCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLWV4cGVj
dGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlz
aWJsZS1pZnJhbWUtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBj
b21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAg
ICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC5j
aGVja3N1bTogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUt
bmVzdGVkLWlmcmFtZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5n
L2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUt
ZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMv
aW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAg
ICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxl
LW5lc3RlZC1pZnJhbWUtaGlkZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0ZWQuY2hlY2tzdW06IEFk
ZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJh
bWUtc2hvdy1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFt
ZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0
ZWQtaWZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDExLTA0LTE1ICBBbmRyZWFzIEtsaW5nICA8a2xp
bmdAd2Via2l0Lm9yZz4KIAogICAgICAgICBTa2lwIGZhaWxpbmcgdGVzdHMgYWZ0ZXIgcjg0MDEw
IGFuZCByODQwMTIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNWNkNDFjNmI2YmUzYTliZjg1OWJkMDNiNWE4OGU4YTRkODliNzkwNQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1l
eHBlY3RlZC5jaGVja3N1bQpAQCAtMCwwICsxIEBACiszYTRlYzE0N2ZkMmNkNmExMjZmMjcxODM4
MzEzODRiNApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQu
cG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjY4ZmRmNDYyNmQ1NzEzNjcxYTA3MDllZDQxNWM1MjY3OTI4MDRmMjEK
R0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI4NTkKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlV
eyt2WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhgb2s8bX0/b1RuNkpyCnpsaGtCRzZaNW5icXZSQmBM
XztJOUckVjZFM3U2bW9MdF9oKkIkTXh9R0F9YlFhUDlTVWFTVy1MXlktcFImSVNoXwp6MjFveGxg
PTNUTTczZyNyZWRkMyVeVH1qV1Z8RTZIeHU0JiVHQkVzZU9KSE87IVhuMXQ7RGVqLT05WUJ5PlI5
R14Kemx+eFB+IWd0X1Noc1RJZkRmfmVeOGF8YHBMb2dxYm89RGQxLThpJDFtIWFXKiE5Z2E1NG8p
NDBoOFlKJjhLWiRQCm5uaTU4SCFEdWNSJT57IW43dT8rdSYlSihvZiFLNmw+ekJkUCl6NCp9USRp
Qn03MyUwLQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTBhNzJkMTAzOWVhYmJjMTE3YTQ1MGQwMzM0OTA3YTg2ZmQwZDFiZgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxl
LWlmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgw
LDApIHNpemUgODAweDIzMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4
MjMwCisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTApIHNpemUgNzg0eDIxMAorbGF5ZXIg
YXQgKDE4LDEwKSBzaXplIDIxMHgyMTAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDEwLDApIHNp
emUgMjEweDIxMCBbYmdjb2xvcj0jMDAwMEZGXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTAzMzI1
ZmU3NWJlZjgxOTUzMDYzYTkwODhiODYwZWJhN2FiMmIxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWwKQEAgLTAs
MCArMSwzNiBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9y
ZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGhl
aWdodDogMTUwcHg7CisgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgLXdlYmtpdC1ib3gt
c2hhZG93OiAwIDAgMjBweCBibGFjazsKKyAgICB9CisgICAgLmJveCB7CisgICAgICAgIGhlaWdo
dDogMjAwcHg7CisgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgbWFyZ2luOiAxMHB4Owor
ICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7Cisg
ICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAgICAgICBvdmVyZmxv
dzpoaWRkZW47CisgICAgfQorICAgIC5ib3g6aG92ZXIgeworICAgICAgICAtd2Via2l0LXRyYW5z
Zm9ybTogbm9uZTsKKyAgICB9CisgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDwh
LS0gVGhlIGludmlzaWJsZSBpZnJhbWUgc2hvdWxkIG5vdCBzZXQgaXRzZWxmIGFzIHRoZSByb290
IGxheWVyLiAtLT4KKyAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CisgICAgICAgIDxp
ZnJhbWUgc3JjPSJyZXNvdXJjZXMvY29tcG9zaXRlZC1zdWJmcmFtZS5odG1sIj48L2lmcmFtZT4K
KyAgICA8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giPgorICAgIDwvZGl2PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZp
c2libGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL2NvbXBv
c2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNWNkNDFjNmI2YmUzYTliZjg1OWJkMDNiNWE4OGU4YTRkODliNzkwNQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxl
LW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorM2E0ZWMxNDdm
ZDJjZDZhMTI2ZjI3MTgzODMxMzg0YjQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQt
aWZyYW1lLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52
aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4ZmRmNDYyNmQ1
NzEzNjcxYTA3MDllZDQxNWM1MjY3OTI4MDRmMjEKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI4
NTkKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhg
b2s8bX0/b1RuNkpyCnpsaGtCRzZaNW5icXZSQmBMXztJOUckVjZFM3U2bW9MdF9oKkIkTXh9R0F9
YlFhUDlTVWFTVy1MXlktcFImSVNoXwp6MjFveGxgPTNUTTczZyNyZWRkMyVeVH1qV1Z8RTZIeHU0
JiVHQkVzZU9KSE87IVhuMXQ7RGVqLT05WUJ5PlI5R14Kemx+eFB+IWd0X1Noc1RJZkRmfmVeOGF8
YHBMb2dxYm89RGQxLThpJDFtIWFXKiE5Z2E1NG8pNDBoOFlKJjhLWiRQCm5uaTU4SCFEdWNSJT57
IW43dT8rdSYlSihvZiFLNmw+ekJkUCl6NCp9USRpQn03MyUwLQoKbGl0ZXJhbCAwCkhjbVY/ZDAw
MDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2li
bGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
MGE3MmQxMDM5ZWFiYmMxMTdhNDUwZDAzMzQ5MDdhODZmZDBkMWJmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFt
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNp
emUgODAweDIzMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4MjMwCisg
ICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTApIHNpemUgNzg0eDIxMAorbGF5ZXIgYXQgKDE4
LDEwKSBzaXplIDIxMHgyMTAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDEwLDApIHNpemUgMjEw
eDIxMCBbYmdjb2xvcj0jMDAwMEZGXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRp
bmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1oaWRlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlk
ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2Q2Y2YwNGEzMTA4MWNlY2JiNGI2NmNjZTgxZTQw
Njc5OGViMWIwYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lm
cmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxNiBAQAorKEdyYXBoaWNzTGF5ZXIKKyAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAoY2hp
bGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAoYm91bmRzIDgwMC4wMCA2MDAuMDAp
CisgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChw
b3NpdGlvbiAxOC4wMCAxMC4wMCkKKyAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisg
ICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICApCisgICAgICApCisgICAgKQorICAp
CispCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNp
YmxlLW5lc3RlZC1pZnJhbWUtaGlkZS5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZy
YW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1oaWRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWY5YjY4
ZjEwNzE0N2RhYWU1NTRmNTJmZTNkYzljZDMwNjdiOTQyZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlk
ZS5odG1sCkBAIC0wLDAgKzEsNTkgQEAKKzwhRE9DVFlQRSBodG1sPgorCis8aHRtbD4KKzxoZWFk
PgorICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPgorICAgIGlmcmFtZSB7
CisgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKKyAgICAgICAgcGFkZGluZzogNXB4
OworICAgICAgICBoZWlnaHQ6IDE1MHB4OworICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAg
IC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDIwcHggYmxhY2s7CisgICAgfQorICAgIC5ib3ggewor
ICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgIG1h
cmdpbjogMTBweDsKKyAgICAgICAgcGFkZGluZzogNXB4OworICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiBibHVlOworICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKKyAg
ICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgIH0KKyAgICAuYm94OmhvdmVyIHsKKyAgICAgICAg
LXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CisgICAgfQorICA8L3N0eWxlPgorICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgorICAgIAorICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1
bXBBc1RleHQoKTsKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsK
KyAgICB9CisKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKQorICAgIHsKKyAgICAgIHdpbmRvdy5zZXRU
aW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ2ludmlzaWJsZScpOworICAgICAgICBkaXYuc3R5bGUuY3NzVGV4dCA9ICJkaXNwbGF5
Om5vbmU7IjsKKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAg
ICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmRpc3BsYXkoKTsKKyAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnbGF5ZXJzJykuaW5uZXJIVE1MID0gbGF5b3V0VGVzdENvbnRyb2xs
ZXIubGF5ZXJUcmVlQXNUZXh0KCk7CisgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90
aWZ5RG9uZSgpOworICAgICAgICB9CisgICAgICB9LCAwKQorICAgIH0KKyAgICAKKyAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGRvVGVzdCwgZmFsc2UpOworICA8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorCisgICAgPCEtLSBUaGUgbmVzdGVkIGlmcmFtZSBzaG91bGQgZGlz
YXBwZWFyIHdoZW4gd2Ugc2V0IGl0IHRvICJkaXBsYXk6bm9uZSIuIC0tPgorICAgIDxkaXYgaWQ9
ImludmlzaWJsZSI+CisgICAgICAgIDxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvaW50ZXJtZWRpYXRl
LWZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImJveCI+
CisgICAgPC9kaXY+CisgICAgPHByZSBpZD0ibGF5ZXJzIj5MYXllciB0cmVlIGFwcGVhcnMgaGVy
ZSBpbiBEUlQuPC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVk
LWlmcmFtZS1zaG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZDVlOTZiNjI2ZDQzMGUzZDNh
MjVhOGFmZDgxZDU0MzQ3NDZkNWE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1zaG93LWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDkxIEBACisKKyhHcmFwaGljc0xheWVyCisgIChib3VuZHMgODAwLjAwIDYw
MC4wMCkKKyAgKGNoaWxkcmVuIDEKKyAgICAoR3JhcGhpY3NMYXllcgorICAgICAgKGJvdW5kcyA4
MDAuMDAgNjAwLjAwKQorICAgICAgKGNoaWxkcmVuIDIKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIK
KyAgICAgICAgICAocG9zaXRpb24gLTEyLjAwIC0xMi4wMCkKKyAgICAgICAgICAoYm91bmRzIDM3
MC4wMCAyMjAuMDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChjaGls
ZHJlbiAxCisgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAocG9zaXRp
b24gMzUuMDAgMzUuMDApCisgICAgICAgICAgICAgIChjaGlsZHJlbiAyCisgICAgICAgICAgICAg
ICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDE1MC4w
MCkKKyAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgIChH
cmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAg
ICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAgICAgICAg
IChib3VuZHMgMjg1LjAwIDE5My4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoaWxk
cmVuIDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMTkzLjAwKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRp
b24gOC4wMCA4LjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMg
MjUyLjAwIDE3Mi4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZHJhd3ND
b250ZW50IDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAxLjAwIDEuMDApCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMgMjUwLjAwIDE3MC4wMCkK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVy
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVu
IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHcmFw
aGljc0xheWVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIChib3VuZHMgMjUwLjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyNTAuMDAg
MjMwLjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRp
b24gMTguMDAgMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyMTAuMDAgMjEwLjAwKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQg
MSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAg
ICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgor
ICAgICAgICAgICAgICAgICAgKHBvc2l0aW9uIDI4NS4wMCAwLjAwKQorICAgICAgICAgICAgICAg
ICAgKGJvdW5kcyAxNS4wMCAxNTAuMDApCisgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50
IDEpCisgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICApCisgICAgICAgICAgICApCisg
ICAgICAgICAgKQorICAgICAgICApCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAg
KHBvc2l0aW9uIDE4LjAwIDIwMy4wMCkKKyAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDAp
CisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICApCisgICAgICApCisgICAgKQor
ICApCispCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52
aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcv
aWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1zaG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGU4
NjU1OGM1YzUzNWNkOGU1NDc5YzUxNGVkYzZlMGYyZGFkOGJjZQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUt
c2hvdy5odG1sCkBAIC0wLDAgKzEsNTkgQEAKKzwhRE9DVFlQRSBodG1sPgorCis8aHRtbD4KKzxo
ZWFkPgorICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPgorICAgIGlmcmFt
ZSB7CisgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKKyAgICAgICAgcGFkZGluZzog
NXB4OworICAgICAgICBoZWlnaHQ6IDE1MHB4OworICAgICAgICB3aWR0aDogMzAwcHg7CisgICAg
ICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDIwcHggYmxhY2s7CisgICAgfQorICAgIC5ib3gg
eworICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAg
IG1hcmdpbjogMTBweDsKKyAgICAgICAgcGFkZGluZzogNXB4OworICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiBibHVlOworICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsK
KyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgIH0KKyAgICAuYm94OmhvdmVyIHsKKyAgICAg
ICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CisgICAgfQorICA8L3N0eWxlPgorICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgorICAgIAorICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUo
KTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKQorICAgIHsKKyAgICAgIHdpbmRvdy5z
ZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ2ludmlzaWJsZScpOworICAgICAgICBkaXYuc3R5bGUuY3NzVGV4dCA9ICIiOwor
ICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIuZGlzcGxheSgpOworICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdsYXllcnMnKS5pbm5lckhUTUwgPSBsYXlvdXRUZXN0Q29udHJvbGxlci5sYXllclRy
ZWVBc1RleHQoKTsKKyAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7
CisgICAgICAgIH0KKyAgICAgIH0sIDApCisgICAgfQorICAgIAorICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCdsb2FkJywgZG9UZXN0LCBmYWxzZSk7CisgIDwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+CisKKyAgICA8IS0tIFRoZSBuZXN0ZWQgaWZyYW1lIHNob3VsZCBhcHBlYXIgd2hlbiB3
ZSByZW1vdmUgImRpcGxheTpub25lIi4gLS0+CisgICAgPGRpdiBpZD0iaW52aXNpYmxlIiBzdHls
ZT0iZGlzcGxheTpub25lOyI+CisgICAgICAgIDxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvaW50ZXJt
ZWRpYXRlLWZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAgIDwvZGl2PgorICAgIDxkaXYgY2xhc3M9
ImJveCI+CisgICAgPC9kaXY+CisgICAgPHByZSBpZD0ibGF5ZXJzIj5MYXllciB0cmVlIGFwcGVh
cnMgaGVyZSBpbiBEUlQuPC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1l
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYzYyNWI5NWFmZjQ1NzM4NGJlMjQ4MWQ2YWY0N2U0YmUyNGMwZGY5
MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52
aXNpYmxlLW5lc3RlZC1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDM2IEBACis8IURPQ1RZUEUgaHRt
bD4KKworPGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2Ny
ZWVuIj4KKyAgICBpZnJhbWUgeworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7Cisg
ICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAgICAgaGVpZ2h0OiAxNTBweDsKKyAgICAgICAgd2lk
dGg6IDMwMHB4OworICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrOwor
ICAgIH0KKyAgICAuYm94IHsKKyAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgd2lkdGg6
IDIwMHB4OworICAgICAgICBtYXJnaW46IDEwcHg7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06
IHRyYW5zbGF0ZVooMCk7CisgICAgICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICB9CisgICAgLmJv
eDpob3ZlciB7CisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOworICAgIH0KKyAgPC9z
dHlsZT4KKzwvaGVhZD4KKzxib2R5PgorCisgICAgPCEtLSBUaGUgbmVzdGVkIGlmcmFtZSBpbnNp
ZGUgaW52aXNpYmxlIGlmcmFtZSBzaG91bGQgbm90IHNldCBpdHNlbGYgYXMgdGhlIHJvb3QgbGF5
ZXIuIC0tPgorICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6IG5vbmU7Ij4KKyAgICAgICAgPGlmcmFt
ZSBzcmM9InJlc291cmNlcy9pbnRlcm1lZGlhdGUtZnJhbWUuaHRtbCI+PC9pZnJhbWU+CisgICAg
PC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYm94Ij4KKyAgICA8L2Rpdj4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCBmZjU1ZGMxMTU4ZWY0ZTFjZTM4MjU0MjU5ZWNkYTk5Nzk4NzYyMjlh
Li4yMTNkODg5NWJjOGJlMjI5YWZiNTU0NGRhN2Q0ZmQ0NjdlODU3Zjc0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjggQEAKKzIwMTEtMDQtMTUgIEFudG9pbmUgTGFib3VyICA8cGltYW5AY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IERvbid0IGNyZWF0ZSByZW5kZXJlcnMgaW4gZGlzcGxheTpub25lIGlmcmFtZXMuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODQxNAorCisgICAgICAg
IE5ldyB0ZXN0czoKKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJh
bWUuaHRtbDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUt
bmVzdGVkLWlmcmFtZS1oaWRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lm
cmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLmh0bWw6IEFkZGVk
LgorCisgICAgICAgICogaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50OjphdHRhY2gpOiBBbGxvdyByZW5kZXJlcnMg
dG8gYmUgY3JlYXRlZAorICAgICAgICBpbiBjb250ZW50IGRvY3VtZW50IChpZiB2aXNpYmxlKSwg
YW5kIHRyaWdnZXIgYSBzdHlsZSByZWNhbGMgdG8gY3JlYXRlCisgICAgICAgIHRoZW0uCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQ6OmRldGFjaCk6IEJsb2NrIHJlbmRl
cmVycyBmcm9tIGJlaW5nCisgICAgICAgIGNyZWF0ZWQgaW4gY29udGVudCBkb2N1bWVudCwgYW5k
IHRyaWdnZXIgYSBzdHlsZSByZWNhbGMgdG8gZGVzdHJveQorICAgICAgICBleGlzdGluZyBvbmVz
LgorICAgICAgICAqIGh0bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50Lmg6CisgICAgICAgICogcGFn
ZS9GcmFtZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZTo6c2V0RG9jdW1lbnQpOiBCbG9j
ayByZW5kZXJlcnMgZnJvbSBiZWluZyBjcmVhdGVkIGlmIHRoZQorICAgICAgICBkb2N1bWVudCB3
aWxsIGJlIGludmlzaWJsZS4KKwogMjAxMS0wNC0xNSAgR2VvZmZyZXkgR2FyZW4gIDxnZ2FyZW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVPd25lckVsZW1lbnQuY3BwCmluZGV4IGEyMTc4ODFmMzI1
NDZjNWU0ZDRiYzQ1MDc2OWU4ODg2M2U0YjQyOTkuLjlhZDQzYWU2N2Q1ZTJlMjM1YzY4M2FlNDYy
ODc3NDM2NGQxY2FmMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1l
T3duZXJFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVy
RWxlbWVudC5jcHAKQEAgLTQ5LDYgKzQ5LDMwIEBAIFJlbmRlclBhcnQqIEhUTUxGcmFtZU93bmVy
RWxlbWVudDo6cmVuZGVyUGFydCgpIGNvbnN0CiAgICAgcmV0dXJuIHRvUmVuZGVyUGFydChyZW5k
ZXJlcigpKTsKIH0KIAordm9pZCBIVE1MRnJhbWVPd25lckVsZW1lbnQ6OmF0dGFjaCgpCit7Cisg
ICAgSFRNTEVsZW1lbnQ6OmF0dGFjaCgpOworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRl
bnREb2N1bWVudCgpOworICAgIGlmICghZG9jdW1lbnQpCisgICAgICAgIHJldHVybjsKKworICAg
IGJvb2wgaXNWaXNpYmxlID0gcmVuZGVyZXIoKSAmJiByZW5kZXJlcigpLT5pc1JlbmRlclBhcnQo
KTsKKyAgICBkb2N1bWVudC0+c2V0U2hvdWxkQ3JlYXRlUmVuZGVyZXJzKGlzVmlzaWJsZSk7Cisg
ICAgZG9jdW1lbnQtPnNldE5lZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOwor
ICAgIGRvY3VtZW50LT5yZWNhbGNTdHlsZShGb3JjZSk7Cit9CisKK3ZvaWQgSFRNTEZyYW1lT3du
ZXJFbGVtZW50OjpkZXRhY2goKQoreworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnRlbnRE
b2N1bWVudCgpOworICAgIGlmIChkb2N1bWVudCkgeworICAgICAgICBkb2N1bWVudC0+c2V0U2hv
dWxkQ3JlYXRlUmVuZGVyZXJzKGZhbHNlKTsKKyAgICAgICAgZG9jdW1lbnQtPnNldE5lZWRzU3R5
bGVSZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOworICAgICAgICBkb2N1bWVudC0+cmVjYWxj
U3R5bGUoRm9yY2UpOworICAgIH0KKyAgICBIVE1MRWxlbWVudDo6ZGV0YWNoKCk7Cit9CisKIHZv
aWQgSFRNTEZyYW1lT3duZXJFbGVtZW50Ojp3aWxsUmVtb3ZlKCkKIHsKICAgICAvLyBGSVhNRTog
SXQgaXMgdW5jbGVhciB3aHkgdGhpcyBjYW4ndCBiZSBtb3ZlZCB0byByZW1vdmVkRnJvbURvY3Vt
ZW50KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lT3duZXJFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZU93bmVyRWxlbWVudC5oCmluZGV4
IGRlOWQxNTMyMGNmNzViYTc1N2MyODkxYjBmYTMxYTZhMWI5NDM0MzEuLjNmMmE4NGQ5MGQ5ZWZk
ZTMzMzFlZTFkMjU5MzA0MGFjMzc4YzYzNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEZyYW1lT3duZXJFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RnJhbWVPd25lckVsZW1lbnQuaApAQCAtNjAsNiArNjAsOCBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2
b2lkIHNldFNhbmRib3hGbGFncyhTYW5kYm94RmxhZ3MpOwogCisgICAgdmlydHVhbCB2b2lkIGF0
dGFjaCgpOworICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goKTsKICAgICB2aXJ0dWFsIHZvaWQgd2ls
bFJlbW92ZSgpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9G
cmFtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAppbmRleCBiNjBiMzkzY2Jj
MDg5N2JjYjU1ZGU1NmY3MWYxNDEwNjdkMDIzODIwLi4xZjcwZTg1ZjNiMWNiN2I4OWM4ODkzYTc5
YTBlZjgyYTg3MjM5NzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMzAwLDggKzMwMCwxMiBA
QCB2b2lkIEZyYW1lOjpzZXREb2N1bWVudChQYXNzUmVmUHRyPERvY3VtZW50PiBuZXdEb2MpCiAg
ICAgbV9kb2MgPSBuZXdEb2M7CiAgICAgc2VsZWN0aW9uKCktPnVwZGF0ZVNlY3VyZUtleWJvYXJk
RW50cnlJZkFjdGl2ZSgpOwogCi0gICAgaWYgKG1fZG9jICYmICFtX2RvYy0+YXR0YWNoZWQoKSkK
LSAgICAgICAgbV9kb2MtPmF0dGFjaCgpOworICAgIGlmIChtX2RvYykgeworICAgICAgICBib29s
IGlzVmlzaWJsZSA9ICFtX293bmVyRWxlbWVudCB8fCAobV9vd25lckVsZW1lbnQtPnJlbmRlcmVy
KCkgJiYgbV9vd25lckVsZW1lbnQtPnJlbmRlcmVyKCktPmlzUmVuZGVyUGFydCgpKTsKKyAgICAg
ICAgbV9kb2MtPnNldFNob3VsZENyZWF0ZVJlbmRlcmVycyhpc1Zpc2libGUpOworICAgICAgICBp
ZiAoIW1fZG9jLT5hdHRhY2hlZCgpKQorICAgICAgICAgICAgbV9kb2MtPmF0dGFjaCgpOworICAg
IH0KIAogICAgIC8vIFVwZGF0ZSB0aGUgY2FjaGVkICdkb2N1bWVudCcgcHJvcGVydHksIHdoaWNo
IGlzIG5vdyBzdGFsZS4KICAgICBtX3NjcmlwdC51cGRhdGVEb2N1bWVudCgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90225</attachid>
            <date>2011-04-19 11:35:48 -0700</date>
            <delta_ts>2011-04-19 16:33:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58414-20110419113547.patch</filename>
            <type>text/plain</type>
            <size>18274</size>
            <attacher name="Antoine Labour">piman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQwMzEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxMjQyNmE2OWZlN2M3NzNmNzdkODZl
OTljYWE2YjI5OTQyNjc0MTlkLi42ZTY3MmU2OWRlNWU2ZTZlYmEwYWZiZjM3Y2Q4NmJmOTZlMzhm
NWJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTEtMDQtMTggIEFudG9pbmUgTGFib3VyICA8
cGltYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEZvciBpbnZpc2libGUgaWZyYW1lcywgcHJvcGFnYXRlIGNvbXBvc2l0aW5n
IHRvIHBhcmVudCBpbnN0ZWFkIG9mIHNldHRpbmcgc2VsZgorICAgICAgICBhcyByb290LgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTg0MTQKKworICAg
ICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1leHBlY3RlZC5jaGVj
a3N1bTogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZy
YW1lLWV4cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9p
bnZpc2libGUtaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRp
bmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNvbXBv
c2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW06
IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1p
ZnJhbWUtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVz
L2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
Y29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1oaWRlLWV4cGVjdGVk
LmNoZWNrc3VtOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJs
ZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21w
b3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQt
aWZyYW1lLWhpZGUuaHRtbDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9p
bnZpc2libGUtbmVzdGVkLWlmcmFtZS1zaG93LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAg
ICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ct
ZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlz
aWJsZS1uZXN0ZWQtaWZyYW1lLXNob3ctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBj
b21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3cuaHRtbDogQWRk
ZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFt
ZS5odG1sOiBBZGRlZC4KKwogMjAxMS0wNC0xNSAgQW5kcmVhcyBLbGluZyAgPGtsaW5nQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgU2tpcCBmYWlsaW5nIHRlc3RzIGFmdGVyIHI4NDAxMCBhbmQgcjg0
MDEyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2li
bGUtaWZyYW1lLWV4cGVjdGVkLmNoZWNrc3VtIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZy
YW1lcy9pbnZpc2libGUtaWZyYW1lLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVjZDQx
YzZiNmJlM2E5YmY4NTliZDAzYjVhODhlOGE0ZDg5Yjc5MDUKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQu
Y2hlY2tzdW0KQEAgLTAsMCArMSBAQAorM2E0ZWMxNDdmZDJjZDZhMTI2ZjI3MTgzODMxMzg0YjQK
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVz
dHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLWV4cGVjdGVkLnBuZwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42OGZkZjQ2MjZkNTcxMzY3MWEwNzA5ZWQ0MTVjNTI2NzkyODA0ZjIxCkdJVCBiaW5h
cnkgcGF0Y2gKbGl0ZXJhbCAyODU5CnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+
aTAqWik9aF5obEElQFdzJGxIYG9rPG19P29UbjZKcgp6bGhrQkc2WjVuYnF2UkJgTF87STlHJFY2
RTN1Nm1vTHRfaCpCJE14fUdBfWJRYVA5U1VhU1ctTF5ZLXBSJklTaF8KejIxb3hsYD0zVE03M2cj
cmVkZDMlXlR9aldWfEU2SHh1NCYlR0JFc2VPSkhPOyFYbjF0O0Rlai09OVlCeT5SOUdeCnpsfnhQ
fiFndF9TaHNUSWZEZn5lXjhhfGBwTG9ncWJvPURkMS04aSQxbSFhVyohOWdhNTRvKTQwaDhZSiY4
S1okUApubmk1OEghRHVjUiU+eyFuN3U/K3UmJUoob2YhSzZsPnpCZFApejQqfVEkaUJ9NzMlMC0K
CmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0
aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjkwYTcyZDEwMzllYWJiYzExN2E0NTBkMDMzNDkwN2E4NmZkMGQxYmYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1pZnJhbWUt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAw
CisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHgyMzAKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDIzMAorICAg
IFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDEwKSBzaXplIDc4NHgyMTAKK2xheWVyIGF0ICgxOCwx
MCkgc2l6ZSAyMTB4MjEwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxMCwwKSBzaXplIDIxMHgy
MTAgW2JnY29sb3I9IzAwMDBGRl0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcv
aWZyYW1lcy9pbnZpc2libGUtaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTUwMzMyNWZlNzViZWY4
MTk1MzA2M2E5MDg4Yjg2MGViYTdhYjJiMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsMzYg
QEAKKzwhRE9DVFlQRSBodG1sPgorCis8aHRtbD4KKzxoZWFkPgorICA8c3R5bGUgdHlwZT0idGV4
dC9jc3MiIG1lZGlhPSJzY3JlZW4iPgorICAgIGlmcmFtZSB7CisgICAgICAgIGJvcmRlcjogMTBw
eCBzb2xpZCBibGFjazsKKyAgICAgICAgcGFkZGluZzogNXB4OworICAgICAgICBoZWlnaHQ6IDE1
MHB4OworICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzog
MCAwIDIwcHggYmxhY2s7CisgICAgfQorICAgIC5ib3ggeworICAgICAgICBoZWlnaHQ6IDIwMHB4
OworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICAg
cGFkZGluZzogNXB4OworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworICAgICAgICAt
d2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVu
OworICAgIH0KKyAgICAuYm94OmhvdmVyIHsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5v
bmU7CisgICAgfQorICA8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisKKyAgICA8IS0tIFRoZSBp
bnZpc2libGUgaWZyYW1lIHNob3VsZCBub3Qgc2V0IGl0c2VsZiBhcyB0aGUgcm9vdCBsYXllci4g
LS0+CisgICAgPGRpdiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgorICAgICAgICA8aWZyYW1lIHNy
Yz0icmVzb3VyY2VzL2NvbXBvc2l0ZWQtc3ViZnJhbWUuaHRtbCI+PC9pZnJhbWU+CisgICAgPC9k
aXY+CisgICAgPGRpdiBjbGFzcz0iYm94Ij4KKyAgICA8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5l
c3RlZC1pZnJhbWUtZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjVjZDQxYzZiNmJlM2E5YmY4NTliZDAzYjVhODhlOGE0ZDg5Yjc5MDUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQt
aWZyYW1lLWV4cGVjdGVkLmNoZWNrc3VtCkBAIC0wLDAgKzEgQEAKKzNhNGVjMTQ3ZmQyY2Q2YTEy
NmYyNzE4MzgzMTM4NGI0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1l
eHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1u
ZXN0ZWQtaWZyYW1lLWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OGZkZjQ2MjZkNTcxMzY3MWEw
NzA5ZWQ0MTVjNTI2NzkyODA0ZjIxCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAyODU5CnpjbWVB
U0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9aF5obEElQFdzJGxIYG9rPG19P29U
bjZKcgp6bGhrQkc2WjVuYnF2UkJgTF87STlHJFY2RTN1Nm1vTHRfaCpCJE14fUdBfWJRYVA5U1Vh
U1ctTF5ZLXBSJklTaF8KejIxb3hsYD0zVE03M2cjcmVkZDMlXlR9aldWfEU2SHh1NCYlR0JFc2VP
SkhPOyFYbjF0O0Rlai09OVlCeT5SOUdeCnpsfnhQfiFndF9TaHNUSWZEZn5lXjhhfGBwTG9ncWJv
PURkMS04aSQxbSFhVyohOWdhNTRvKTQwaDhZSiY4S1okUApubmk1OEghRHVjUiU+eyFuN3U/K3Um
JUoob2YhSzZsPnpCZFApejQqfVEkaUJ9NzMlMC0KCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3Rl
ZC1pZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9p
bnZpc2libGUtbmVzdGVkLWlmcmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTBhNzJkMTAz
OWVhYmJjMTE3YTQ1MGQwMzM0OTA3YTg2ZmQwZDFiZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJl
bmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHgy
MzAKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDIzMAorICAgIFJlbmRl
ckJvZHkge0JPRFl9IGF0ICg4LDEwKSBzaXplIDc4NHgyMTAKK2xheWVyIGF0ICgxOCwxMCkgc2l6
ZSAyMTB4MjEwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxMCwwKSBzaXplIDIxMHgyMTAgW2Jn
Y29sb3I9IzAwMDBGRl0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFt
ZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjNkNmNmMDRhMzEwODFjZWNiYjRiNjZjY2U4MWU0MDY3OThlYjFi
MGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2lu
dmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTYgQEAK
KyhHcmFwaGljc0xheWVyCisgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgKGNoaWxkcmVuIDEK
KyAgICAoR3JhcGhpY3NMYXllcgorICAgICAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAgICAg
KGNoaWxkcmVuIDEKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24g
MTguMDAgMTAuMDApCisgICAgICAgICAgKGJvdW5kcyAyMTAuMDAgMjEwLjAwKQorICAgICAgICAg
IChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgKQorICAgICAgKQorICAgICkKKyAgKQorKQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0
ZWQtaWZyYW1lLWhpZGUuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52
aXNpYmxlLW5lc3RlZC1pZnJhbWUtaGlkZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmOWI2OGYxMDcxNDdk
YWFlNTU0ZjUyZmUzZGM5Y2QzMDY3Yjk0MmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhpZGUuaHRtbApA
QCAtMCwwICsxLDU5IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8aGVhZD4KKyAgPHN0
eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBpZnJhbWUgeworICAgICAg
ICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAg
ICAgaGVpZ2h0OiAxNTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4OworICAgICAgICAtd2Via2l0
LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrOworICAgIH0KKyAgICAuYm94IHsKKyAgICAgICAg
aGVpZ2h0OiAyMDBweDsKKyAgICAgICAgd2lkdGg6IDIwMHB4OworICAgICAgICBtYXJnaW46IDEw
cHg7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1
ZTsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CisgICAgICAgIG92
ZXJmbG93OmhpZGRlbjsKKyAgICB9CisgICAgLmJveDpob3ZlciB7CisgICAgICAgIC13ZWJraXQt
dHJhbnNmb3JtOiBub25lOworICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAKKyAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKSB7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAgfQor
CisgICAgZnVuY3Rpb24gZG9UZXN0KCkKKyAgICB7CisgICAgICB3aW5kb3cuc2V0VGltZW91dChm
dW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdp
bnZpc2libGUnKTsKKyAgICAgICAgZGl2LnN0eWxlLmNzc1RleHQgPSAiZGlzcGxheTpub25lOyI7
CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5kaXNwbGF5KCk7CisgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ2xheWVycycpLmlubmVySFRNTCA9IGxheW91dFRlc3RDb250cm9sbGVyLmxheWVy
VHJlZUFzVGV4dCgpOworICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUo
KTsKKyAgICAgICAgfQorICAgICAgfSwgMCkKKyAgICB9CisgICAgCisgICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoJ2xvYWQnLCBkb1Rlc3QsIGZhbHNlKTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKworICAgIDwhLS0gVGhlIG5lc3RlZCBpZnJhbWUgc2hvdWxkIGRpc2FwcGVhciB3
aGVuIHdlIHNldCBpdCB0byAiZGlwbGF5Om5vbmUiLiAtLT4KKyAgICA8ZGl2IGlkPSJpbnZpc2li
bGUiPgorICAgICAgICA8aWZyYW1lIHNyYz0icmVzb3VyY2VzL2ludGVybWVkaWF0ZS1mcmFtZS5o
dG1sIj48L2lmcmFtZT4KKyAgICA8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giPgorICAgIDwv
ZGl2PgorICAgIDxwcmUgaWQ9ImxheWVycyI+TGF5ZXIgdHJlZSBhcHBlYXJzIGhlcmUgaW4gRFJU
LjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS1zaG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUt
c2hvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmQ1ZTk2YjYyNmQ0MzBlM2QzYTI1YThhZmQ4
MWQ1NDM0NzQ2ZDVhNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw5MSBAQAorCisoR3JhcGhpY3NMYXllcgorICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisg
IChjaGlsZHJlbiAxCisgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgIChib3VuZHMgODAwLjAwIDYw
MC4wMCkKKyAgICAgIChjaGlsZHJlbiAyCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAg
ICAgKHBvc2l0aW9uIC0xMi4wMCAtMTIuMDApCisgICAgICAgICAgKGJvdW5kcyAzNzAuMDAgMjIw
LjAwKQorICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQor
ICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAw
IDM1LjAwKQorICAgICAgICAgICAgICAoY2hpbGRyZW4gMgorICAgICAgICAgICAgICAgIChHcmFw
aGljc0xheWVyCisgICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4wMCAxNTAuMDApCisgICAg
ICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NM
YXllcgorICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAg
ICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRz
IDI4NS4wMCAxOTMuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDE5My4wMCkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGlj
c0xheWVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvc2l0aW9uIDguMDAg
OC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDI1Mi4wMCAx
NzIuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAx
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMS4wMCAxLjAwKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDI1MC4wMCAxNzAuMDApCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXll
cgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91
bmRzIDI1MC4wMCAyMzAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMgMjUwLjAwIDIzMC4wMCkK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChk
cmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvc2l0aW9uIDE4LjAw
IDEwLjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIChib3VuZHMgMjEwLjAwIDIxMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAp
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAg
ICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAgICAgICAgIChwb3NpdGlvbiAyODUuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgIChib3Vu
ZHMgMTUuMDAgMTUwLjAwKQorICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAg
ICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgKQorICAgICAgICAgICAgKQorICAgICAgICAg
ICkKKyAgICAgICAgKQorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3NpdGlv
biAxOC4wMCAyMDMuMDApCisgICAgICAgICAgKGJvdW5kcyAyMTAuMDAgMjEwLjAwKQorICAgICAg
ICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgKQorICAgICAgKQorICAgICkKKyAgKQorKQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1u
ZXN0ZWQtaWZyYW1lLXNob3cuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMv
aW52aXNpYmxlLW5lc3RlZC1pZnJhbWUtc2hvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBlODY1NThjNWM1
MzVjZDhlNTQ3OWM1MTRlZGM2ZTBmMmRhZDhiY2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLXNob3cuaHRt
bApAQCAtMCwwICsxLDU5IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8aGVhZD4KKyAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBpZnJhbWUgeworICAg
ICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAg
ICAgICAgaGVpZ2h0OiAxNTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4OworICAgICAgICAtd2Vi
a2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrOworICAgIH0KKyAgICAuYm94IHsKKyAgICAg
ICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgd2lkdGg6IDIwMHB4OworICAgICAgICBtYXJnaW46
IDEwcHg7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
Ymx1ZTsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CisgICAgICAg
IG92ZXJmbG93OmhpZGRlbjsKKyAgICB9CisgICAgLmJveDpob3ZlciB7CisgICAgICAgIC13ZWJr
aXQtdHJhbnNmb3JtOiBub25lOworICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAKKyAgICBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAg
fQorCisgICAgZnVuY3Rpb24gZG9UZXN0KCkKKyAgICB7CisgICAgICB3aW5kb3cuc2V0VGltZW91
dChmdW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdpbnZpc2libGUnKTsKKyAgICAgICAgZGl2LnN0eWxlLmNzc1RleHQgPSAiIjsKKyAgICAgICAg
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICAgIGxheW91dFRlc3RD
b250cm9sbGVyLmRpc3BsYXkoKTsKKyAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
bGF5ZXJzJykuaW5uZXJIVE1MID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0
KCk7CisgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAg
ICB9CisgICAgICB9LCAwKQorICAgIH0KKyAgICAKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5l
cignbG9hZCcsIGRvVGVzdCwgZmFsc2UpOworICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
CisgICAgPCEtLSBUaGUgbmVzdGVkIGlmcmFtZSBzaG91bGQgYXBwZWFyIHdoZW4gd2UgcmVtb3Zl
ICJkaXBsYXk6bm9uZSIuIC0tPgorICAgIDxkaXYgaWQ9ImludmlzaWJsZSIgc3R5bGU9ImRpc3Bs
YXk6bm9uZTsiPgorICAgICAgICA8aWZyYW1lIHNyYz0icmVzb3VyY2VzL2ludGVybWVkaWF0ZS1m
cmFtZS5odG1sIj48L2lmcmFtZT4KKyAgICA8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJib3giPgor
ICAgIDwvZGl2PgorICAgIDxwcmUgaWQ9ImxheWVycyI+TGF5ZXIgdHJlZSBhcHBlYXJzIGhlcmUg
aW4gRFJULjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS5odG1sIGIvTGF5b3V0
VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUtbmVzdGVkLWlmcmFtZS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmM2MjViOTVhZmY0NTczODRiZTI0ODFkNmFmNDdlNGJlMjRjMGRmOTEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1u
ZXN0ZWQtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSwzNiBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxo
dG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+Cisg
ICAgaWZyYW1lIHsKKyAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBw
YWRkaW5nOiA1cHg7CisgICAgICAgIGhlaWdodDogMTUwcHg7CisgICAgICAgIHdpZHRoOiAzMDBw
eDsKKyAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMjBweCBibGFjazsKKyAgICB9Cisg
ICAgLmJveCB7CisgICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgIHdpZHRoOiAyMDBweDsK
KyAgICAgICAgbWFyZ2luOiAxMHB4OworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IGJsdWU7CisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xh
dGVaKDApOworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgfQorICAgIC5ib3g6aG92ZXIg
eworICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKKyAgICB9CisgIDwvc3R5bGU+Cis8
L2hlYWQ+Cis8Ym9keT4KKworICAgIDwhLS0gVGhlIG5lc3RlZCBpZnJhbWUgaW5zaWRlIGludmlz
aWJsZSBpZnJhbWUgc2hvdWxkIG5vdCBzZXQgaXRzZWxmIGFzIHRoZSByb290IGxheWVyLiAtLT4K
KyAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CisgICAgICAgIDxpZnJhbWUgc3JjPSJy
ZXNvdXJjZXMvaW50ZXJtZWRpYXRlLWZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAgIDwvZGl2Pgor
ICAgIDxkaXYgY2xhc3M9ImJveCI+CisgICAgPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggZmY1NWRjMTE1OGVmNGUxY2UzODI1NDI1OWVjZGE5OTc5ODc2MjI5YS4uMjNhMGFm
MWEwZWQ1ODY5Yjc0NjdhZmU0NzM4Y2ExZTc0ODExM2YwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIyIEBACisyMDExLTA0LTE5ICBBbnRvaW5lIExhYm91ciAgPHBpbWFuQGNocm9taXVtLm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb3IgaW52
aXNpYmxlIGlmcmFtZXMsIHByb3BhZ2F0ZSBjb21wb3NpdGluZyB0byBwYXJlbnQgaW5zdGVhZCBv
ZiBzZXR0aW5nIHNlbGYKKyAgICAgICAgYXMgcm9vdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4NDE0CisKKyAgICAgICAgTmV3IHRlc3RzOgorICAg
ICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaW52aXNpYmxlLWlmcmFtZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2ludmlzaWJsZS1uZXN0ZWQtaWZyYW1lLWhp
ZGUuaHRtbDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pbnZpc2libGUt
bmVzdGVkLWlmcmFtZS1zaG93Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lm
cmFtZXMvaW52aXNpYmxlLW5lc3RlZC1pZnJhbWUuaHRtbDogQWRkZWQuCisKKworICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1RvRW5jbG9z
aW5nRnJhbWUpOgorICAgICAgICBQcm9wYWdhdGUgY29tcG9zaXRpbmcgdG8gcGFyZW50IGV2ZW4g
aWYgZnJhbWUgb3duZXIgaGFzIG5vIHJlbmRlcmVyLgorCiAyMDExLTA0LTE1ICBHZW9mZnJleSBH
YXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1
bnQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21w
b3NpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0
b3IuY3BwCmluZGV4IGZkYWI3ZjZmMTYwOGJjNzJkZjg0MjEzMzk1YmM4NGNhZGI4OGY2MTkuLmNj
MmJiZDhiNTkyZjQ2NzFjMzg2NzVlZDMxY2M2NmQ2ZGU0MmMzMGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC0xMTc5LDEy
ICsxMTc5LDE3IEBAIGJvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpzaG91bGRQcm9wYWdhdGVD
b21wb3NpdGluZ1RvRW5jbG9zaW5nRnJhbWUoKSBjb25zdAogICAgIC8vIHVzZSBuYXRpdmUgdmll
d3MgZm9yIGZyYW1lcyAobGlrZSBNYWMpLCBzbyBkaXNhYmxlIHRoYXQgYmVoYXZpb3Igb24gdGhv
c2UgcGxhdGZvcm1zIGZvciBub3cuCiAgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVs
ZW1lbnQgPSBlbmNsb3NpbmdGcmFtZUVsZW1lbnQoKTsKICAgICBSZW5kZXJPYmplY3QqIHJlbmRl
cmVyID0gb3duZXJFbGVtZW50ID8gb3duZXJFbGVtZW50LT5yZW5kZXJlcigpIDogMDsKLSAgICBp
ZiAoIXJlbmRlcmVyIHx8ICFyZW5kZXJlci0+aXNSZW5kZXJQYXJ0KCkpCisKKyAgICAvLyBJZiB3
ZSBhcmUgdGhlIHRvcC1sZXZlbCBmcmFtZSwgZG9uJ3QgcHJvcGFnYXRlLgorICAgIGlmICghb3du
ZXJFbGVtZW50KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBpZiAoIWFsbG93c0luZGVw
ZW5kZW50bHlDb21wb3NpdGVkRnJhbWVzKG1fcmVuZGVyVmlldy0+ZnJhbWVWaWV3KCkpKQogICAg
ICAgICByZXR1cm4gdHJ1ZTsKIAorICAgIGlmICghcmVuZGVyZXIgfHwgIXJlbmRlcmVyLT5pc1Jl
bmRlclBhcnQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgLy8gT24gTWFjLCBvbmx5
IHByb3BhZ2F0ZSBjb21wb3NpdGluZyBpZiB0aGUgZnJhbWUgaXMgb3ZlcmxhcHBlZCBpbiB0aGUg
cGFyZW50CiAgICAgLy8gZG9jdW1lbnQsIG9yIHRoZSBwYXJlbnQgaXMgYWxyZWFkeSBjb21wb3Np
dGluZywgb3IgdGhlIG1haW4gZnJhbWUgaXMgc2NhbGVkLgogICAgIEZyYW1lKiBmcmFtZSA9IG1f
cmVuZGVyVmlldy0+ZnJhbWVWaWV3KCktPmZyYW1lKCk7Cg==
</data>
<flag name="review"
          id="82956"
          type_id="1"
          status="+"
          setter="jamesr"
    />
    <flag name="commit-queue"
          id="83007"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>