<?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>38856</bug_id>
          
          <creation_ts>2010-05-10 10:54:38 -0700</creation_ts>
          <short_desc>Allow compositing layers to be connected across iframe boundaries on Mac</short_desc>
          <delta_ts>2010-05-10 23:44:50 -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>Mac</rep_platform>
          <op_sys>OS X 10.5</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>abarth</cc>
    
    <cc>cmarrin</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>223400</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 10:54:38 -0700</bug_when>
    <thetext>Here follows a set of patches to hook up compositing layers across Iframes on Mac.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223401</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 10:55:02 -0700</bug_when>
    <thetext>&lt;rdar://problem/7950592&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223412</commentid>
    <comment_count>2</comment_count>
      <attachid>55576</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 11:15:53 -0700</bug_when>
    <thetext>Created attachment 55576
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223435</commentid>
    <comment_count>3</comment_count>
      <attachid>55586</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 12:04:45 -0700</bug_when>
    <thetext>Created attachment 55586
Add a bunch move compositing iframe tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223444</commentid>
    <comment_count>4</comment_count>
      <attachid>55589</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 12:20:26 -0700</bug_when>
    <thetext>Created attachment 55589
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223495</commentid>
    <comment_count>5</comment_count>
      <attachid>55598</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2010-05-10 13:49:38 -0700</bug_when>
    <thetext>Created attachment 55598
Windows results for new test cases</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223497</commentid>
    <comment_count>6</comment_count>
      <attachid>55576</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 13:53:47 -0700</bug_when>
    <thetext>Comment on attachment 55576
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223499</commentid>
    <comment_count>7</comment_count>
      <attachid>55586</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 13:54:19 -0700</bug_when>
    <thetext>Comment on attachment 55586
Add a bunch move compositing iframe tests

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223503</commentid>
    <comment_count>8</comment_count>
      <attachid>55589</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 14:02:09 -0700</bug_when>
    <thetext>Comment on attachment 55589
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223504</commentid>
    <comment_count>9</comment_count>
      <attachid>55598</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 14:05:02 -0700</bug_when>
    <thetext>Comment on attachment 55598
Windows results for new test cases

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223507</commentid>
    <comment_count>10</comment_count>
      <attachid>55601</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2010-05-10 14:08:47 -0700</bug_when>
    <thetext>Created attachment 55601
Replace patch for Windows results</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223511</commentid>
    <comment_count>11</comment_count>
      <attachid>55603</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 14:25:13 -0700</bug_when>
    <thetext>Created attachment 55603
Patch to have RenderLayerCompositor track the type of attachment for the root layer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223563</commentid>
    <comment_count>12</comment_count>
      <attachid>55616</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 16:03:57 -0700</bug_when>
    <thetext>Created attachment 55616
Allow run-time switching of iframe propagation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223718</commentid>
    <comment_count>13</comment_count>
      <attachid>55656</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 21:22:04 -0700</bug_when>
    <thetext>Created attachment 55656
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223721</commentid>
    <comment_count>14</comment_count>
      <attachid>55603</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 21:26:30 -0700</bug_when>
    <thetext>Comment on attachment 55603
Patch to have RenderLayerCompositor track the type of attachment for the root layer.

&gt; diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
&gt; index 925b70f..a6e5806 100644
&gt; --- a/WebCore/ChangeLog
&gt; +++ b/WebCore/ChangeLog
&gt; @@ -4,6 +4,35 @@
&gt;  
&gt;          Allow compositing layers to be connected across iframe boundaries on Mac
&gt;          https://bugs.webkit.org/show_bug.cgi?id=38856
&gt; +        
&gt; +        Use an enum for the type of root layer attachment on a RenderLayerCompositor, so we can
&gt; +        determine if the attachemnt is via the ChomeClient, via an enclosing iframe, or unattached.
&gt; +

Typo - attachemnt.

&gt;  
&gt; +void RenderLayerCompositor::attachRootPlatformLayer(RootLayerAttachment attachment)
&gt; +{
&gt; +    if (!m_rootPlatformLayer)
&gt; +        return;
&gt; +
&gt; +    switch (attachment) {
&gt; +    case RootLayerUnattached:
&gt; +        ASSERT_NOT_REACHED();
&gt; +        break;
&gt; +    case RootLayerAttachedViaChromeClient: {
&gt; +            Frame* frame = m_renderView-&gt;frameView()-&gt;frame();
&gt; +            Page* page = frame ? frame-&gt;page() : 0;
&gt; +            if (!page)
&gt; +                return;
&gt; +
&gt; +            page-&gt;chrome()-&gt;client()-&gt;attachRootGraphicsLayer(frame, m_rootPlatformLayer.get());
&gt; +            break;
&gt; +        }

Is this really how we indent block statements inside case statements?

&gt; +    case RootLayerAttachedViaEnclosingIframe: {
&gt; +            // The layer will get hooked up via RenderLayerBacking::updateGraphicsLayerConfiguration()
&gt; +            // for the iframe&apos;s renderer in the parent document.
&gt; +            m_renderView-&gt;document()-&gt;ownerElement()-&gt;setNeedsStyleRecalc(SyntheticStyleChange);
&gt; +            break;
&gt; +        }
&gt; +    }

Same here.

&gt; +    
&gt; +    m_rootLayerAttachment = attachment;
&gt; +}
&gt; +
&gt; +void RenderLayerCompositor::detachRootPlatformLayer()
&gt; +{
&gt; +    if (!m_rootPlatformLayer || m_rootLayerAttachment == RootLayerUnattached)
&gt; +        return;
&gt; +
&gt; +    switch (m_rootLayerAttachment) {
&gt; +    case RootLayerAttachedViaEnclosingIframe: {
&gt; +            // The layer will get unhooked up via RenderLayerBacking::updateGraphicsLayerConfiguration()
&gt; +            // for the iframe&apos;s renderer in the parent document.
&gt; +            m_renderView-&gt;document()-&gt;ownerElement()-&gt;setNeedsStyleRecalc(SyntheticStyleChange);
&gt; +            break;
&gt; +        }

And here.

&gt; +    case RootLayerAttachedViaChromeClient: {
&gt; +            Frame* frame = m_renderView-&gt;frameView()-&gt;frame();
&gt; +            Page* page = frame ? frame-&gt;page() : 0;
&gt; +            if (!page)
&gt; +                return;
&gt; +
&gt; +            page-&gt;chrome()-&gt;client()-&gt;attachRootGraphicsLayer(frame, 0);
&gt; +        }
&gt; +        break;

And here.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223723</commentid>
    <comment_count>15</comment_count>
      <attachid>55616</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 21:29:01 -0700</bug_when>
    <thetext>Comment on attachment 55616
Allow run-time switching of iframe propagation

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223729</commentid>
    <comment_count>16</comment_count>
      <attachid>55659</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 21:44:16 -0700</bug_when>
    <thetext>Created attachment 55659
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223731</commentid>
    <comment_count>17</comment_count>
      <attachid>55661</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 21:47:16 -0700</bug_when>
    <thetext>Created attachment 55661
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223735</commentid>
    <comment_count>18</comment_count>
      <attachid>55656</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 21:50:49 -0700</bug_when>
    <thetext>Comment on attachment 55656
Patch


&gt; +2010-05-10  Simon Fraser  &lt;simon.fraser@apple.com&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=38856
&gt; +        Allow compositing layers to be connected across iframe boundaries on Mac
&gt; +        

Duplicate ChangeLog entry.

&gt; +
&gt; +2010-05-10  Simon Fraser  &lt;simon.fraser@apple.com&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Allow compositing layers to be connected across iframe boundaries on Mac
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=38856
&gt; +

Same here?

&gt;          Rename the static shouldPropagateCompositingToIFrameParent() to shouldPropagateCompositingToEnclosingIFrame(),
&gt;          to pave the way for runtime switches in the propagation behavior. We have to make sure we call it on
&gt;          the correct RenderLayerCompositor (that belonging to the iframe&apos;s content document).
&gt; diff --git a/WebCore/page/FrameView.cpp b/WebCore/page/FrameView.cpp
&gt; index 9b93bebb60ff00ae7bf5276cd7f89a4b99e97913..3f34261079b9e5db674f4098f7ae1f1f7141d44c 100644
&gt; --- a/WebCore/page/FrameView.cpp
&gt; +++ b/WebCore/page/FrameView.cpp
&gt; @@ -478,6 +478,15 @@ void FrameView::setNeedsOneShotDrawingSynchronization()
&gt;  
&gt;  #endif // USE(ACCELERATED_COMPOSITING)
&gt;  
&gt; +bool FrameView::hasCompositedContent() const
&gt; +{
&gt; +#if USE(ACCELERATED_COMPOSITING)
&gt; +    if (RenderView* view = m_frame-&gt;contentRenderer())
&gt; +        return view-&gt;compositor()-&gt;inCompositingMode();
&gt; +#endif
&gt; +    return false;
&gt; +}
&gt; +
&gt;  bool FrameView::isEnclosedInCompositingLayer() const
&gt;  {
&gt;  #if USE(ACCELERATED_COMPOSITING)
&gt; @@ -897,6 +906,15 @@ void FrameView::setIsOverlapped(bool isOverlapped)
&gt;  
&gt;      m_isOverlapped = isOverlapped;
&gt;      setCanBlitOnScroll(!useSlowRepaints());
&gt; +    
&gt; +#if USE(ACCELERATED_COMPOSITING)
&gt; +    // Overlap can affect compositing tests, so if it changes, we need to trigger
&gt; +    // a recalcStyle in the parent document.
&gt; +    if (hasCompositedContent()) {
&gt; +        if (Element* ownerElement = m_frame-&gt;document()-&gt;ownerElement())
&gt; +            ownerElement-&gt;setNeedsStyleRecalc(SyntheticStyleChange);
&gt; +    }
&gt; +#endif    
&gt;  }
&gt;  
&gt; +    RenderLayer* layer = m_renderView-&gt;layer();
&gt; +    RenderLayerBacking* backing = layer ? layer-&gt;backing() : 0;
&gt; +    if (backing)
&gt; +        backing-&gt;updateDrawsContent();

You can move the &quot;backing&quot; variable declaration into the if statement.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223736</commentid>
    <comment_count>19</comment_count>
      <attachid>55661</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 21:53:02 -0700</bug_when>
    <thetext>Comment on attachment 55661
Patch

r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223740</commentid>
    <comment_count>20</comment_count>
      <attachid>55659</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-10 22:10:59 -0700</bug_when>
    <thetext>Comment on attachment 55659
Patch

&gt; diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
&gt; index 704c10956fe981ae131789fb56ee12c17af52890..84c82a0fef270d0a254399a8ea6ba002dab1a072 100644
&gt; --- a/WebCore/ChangeLog
&gt; +++ b/WebCore/ChangeLog
&gt; @@ -4,6 +4,25 @@

&gt; +2010-05-10  Simon Fraser  &lt;simon.fraser@apple.com&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Allow compositing layers to be connected across iframe boundaries on Mac
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=38856

Duplicate ChangeLog entry!

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223741</commentid>
    <comment_count>21</comment_count>
      <attachid>55576</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:14:05 -0700</bug_when>
    <thetext>Comment on attachment 55576
Patch

http://trac.webkit.org/changeset/59129</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223742</commentid>
    <comment_count>22</comment_count>
      <attachid>55586</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:14:23 -0700</bug_when>
    <thetext>Comment on attachment 55586
Add a bunch move compositing iframe tests

http://trac.webkit.org/changeset/59130</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223744</commentid>
    <comment_count>23</comment_count>
      <attachid>55601</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:23:31 -0700</bug_when>
    <thetext>Comment on attachment 55601
Replace patch for Windows results

http://trac.webkit.org/changeset/59131</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223745</commentid>
    <comment_count>24</comment_count>
      <attachid>55589</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:27:29 -0700</bug_when>
    <thetext>Comment on attachment 55589
Patch

http://trac.webkit.org/changeset/59132</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223746</commentid>
    <comment_count>25</comment_count>
      <attachid>55603</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:33:46 -0700</bug_when>
    <thetext>Comment on attachment 55603
Patch to have RenderLayerCompositor track the type of attachment for the root layer.

http://trac.webkit.org/changeset/59133</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223748</commentid>
    <comment_count>26</comment_count>
      <attachid>55616</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:35:02 -0700</bug_when>
    <thetext>Comment on attachment 55616
Allow run-time switching of iframe propagation

http://trac.webkit.org/changeset/59134</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223753</commentid>
    <comment_count>27</comment_count>
      <attachid>55656</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:44:37 -0700</bug_when>
    <thetext>Comment on attachment 55656
Patch

http://trac.webkit.org/changeset/59136</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223754</commentid>
    <comment_count>28</comment_count>
      <attachid>55661</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:47:27 -0700</bug_when>
    <thetext>Comment on attachment 55661
Patch

http://trac.webkit.org/changeset/59137</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223755</commentid>
    <comment_count>29</comment_count>
      <attachid>55659</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:47:56 -0700</bug_when>
    <thetext>Comment on attachment 55659
Patch

http://trac.webkit.org/changeset/59137</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223756</commentid>
    <comment_count>30</comment_count>
      <attachid>55661</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:48:09 -0700</bug_when>
    <thetext>Comment on attachment 55661
Patch

http://trac.webkit.org/changeset/59138</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223758</commentid>
    <comment_count>31</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 22:49:15 -0700</bug_when>
    <thetext>All patches landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223774</commentid>
    <comment_count>32</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-10 23:30:10 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59137 might have broken GTK Linux 32-bit Debug
The following changes are on the blame list:
http://trac.webkit.org/changeset/59137
http://trac.webkit.org/changeset/59138
http://trac.webkit.org/changeset/59131
http://trac.webkit.org/changeset/59132
http://trac.webkit.org/changeset/59133
http://trac.webkit.org/changeset/59134
http://trac.webkit.org/changeset/59135</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223775</commentid>
    <comment_count>33</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-10 23:30:23 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59138 might have broken GTK Linux 32-bit Debug
The following changes are on the blame list:
http://trac.webkit.org/changeset/59137
http://trac.webkit.org/changeset/59138
http://trac.webkit.org/changeset/59131
http://trac.webkit.org/changeset/59132
http://trac.webkit.org/changeset/59133
http://trac.webkit.org/changeset/59134
http://trac.webkit.org/changeset/59135</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223776</commentid>
    <comment_count>34</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-10 23:30:38 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59132 might have broken GTK Linux 32-bit Debug
The following changes are on the blame list:
http://trac.webkit.org/changeset/59137
http://trac.webkit.org/changeset/59138
http://trac.webkit.org/changeset/59131
http://trac.webkit.org/changeset/59132
http://trac.webkit.org/changeset/59133
http://trac.webkit.org/changeset/59134
http://trac.webkit.org/changeset/59135</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223777</commentid>
    <comment_count>35</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-10 23:30:49 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59133 might have broken GTK Linux 32-bit Debug
The following changes are on the blame list:
http://trac.webkit.org/changeset/59137
http://trac.webkit.org/changeset/59138
http://trac.webkit.org/changeset/59131
http://trac.webkit.org/changeset/59132
http://trac.webkit.org/changeset/59133
http://trac.webkit.org/changeset/59134
http://trac.webkit.org/changeset/59135</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223778</commentid>
    <comment_count>36</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-10 23:31:00 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59134 might have broken GTK Linux 32-bit Debug
The following changes are on the blame list:
http://trac.webkit.org/changeset/59137
http://trac.webkit.org/changeset/59138
http://trac.webkit.org/changeset/59131
http://trac.webkit.org/changeset/59132
http://trac.webkit.org/changeset/59133
http://trac.webkit.org/changeset/59134
http://trac.webkit.org/changeset/59135</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223782</commentid>
    <comment_count>37</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-10 23:44:50 -0700</bug_when>
    <thetext>GTK Linux should be fixed by http://trac.webkit.org/changeset/59143</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55576</attachid>
            <date>2010-05-10 11:15:53 -0700</date>
            <delta_ts>2010-05-10 22:14:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38856-20100510111552.patch</filename>
            <type>text/plain</type>
            <size>11779</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NTU3ODViZmFjMThhOTVmNzI0MzM4Y2U1YWY4NzgxMDA4M2FlZWRiNC4uY2IxY2U5NDc5MWU5YWM5
OTg5MDE0ZWExYTZlMWNlMDY5YmM2OTczOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAxMC0wNS0xMCAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBbGxvdyBjb21wb3NpdGluZyBsYXllcnMgdG8g
YmUgY29ubmVjdGVkIGFjcm9zcyBpZnJhbWUgYm91bmRhcmllcyBvbiBNYWMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODU2CisKKyAgICAgICAgQ2xl
YW4gdXAgc29tZSBtZXRob2RzIHJlbGF0ZWQgdG8gY29tcG9zaXRlZCBpZnJhbWVzLiBObyBiZWhh
dmlvcmFsIGNoYW5nZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5n
Lmg6IE1vdmUgaW5uZXJSZW5kZXJMYXllckNvbXBvc2l0b3IoKSB0byBiZSBhIHN0YXRpYyBtZXRo
b2Q6CisgICAgICAgICAgICBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmlmcmFtZUNvbnRlbnRzQ29t
cG9zaXRvcigpLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwOiBS
ZW1vdmUgaW5uZXJSZW5kZXJMYXllckNvbXBvc2l0b3IoKS4KKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyQmFja2luZzo6dXBkYXRlR3JhcGhpY3NMYXllckdlb21ldHJ5KTogQ2FsbCBpZnJh
bWVDb250ZW50c0NvbXBvc2l0b3IoKS4KKyAgICAgICAgCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckxheWVyQ29tcG9zaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNv
bXBvc2l0b3I6OmVuYWJsZUNvbXBvc2l0aW5nTW9kZSk6IENhbGwgZW5jbG9zaW5nSUZyYW1lRWxl
bWVudCgpCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlYnVpbGRD
b21wb3NpdGluZ0xheWVyVHJlZSk6IGlmcmFtZUNvbnRlbnRzQ29tcG9zaXRvcigpIGlzIG5vdyBh
IHN0YXRpYyBtZXRob2QgaW4gdGhpcyBjbGFzcy4KKyAgICAgICAgQWxzbyBjaGVjayB0aGF0IHRo
ZSBpZnJhbWUgY29udGVudHMgYXJlIGluIGNvbXBvc2l0aW5nIG1vZGUgKHNsaWdodGx5IGNsZWFy
ZXIgdGhhbiByZWx5aW5nIG9uIHJvb3RQbGF0Zm9ybUxheWVyKCkgcmV0dXJuaW5nCisgICAgICAg
IG51bGwpLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjppZnJhbWVD
b250ZW50c0NvbXBvc2l0b3IpOiBNb3ZlZCBmcm9tIFJlbmRlckxheWVyQmFja2luZy4KKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZGlkTW92ZU9uc2NyZWVuKTogVXNl
IGVuY2xvc2luZ0lGcmFtZUVsZW1lbnQoKSBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJMYXllckNvbXBvc2l0b3I6OndpbGxNb3ZlT2Zmc2NyZWVuKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmVuY2xvc2luZ0lGcmFtZUVsZW1lbnQpOiBO
ZXcgbWV0aG9kLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjplbnN1
cmVSb290UGxhdGZvcm1MYXllcik6IENhbGwgZW5jbG9zaW5nSUZyYW1lRWxlbWVudCgpLgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaDogTmV3IG1ldGhvZCwgaWZy
YW1lQ29udGVudHNDb21wb3NpdG9yKCkuCisKIDIwMTAtMDUtMDcgIEJldGggRGFraW4gIDxiZGFr
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAgYi9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCmluZGV4IDNkOGJhNTAzOWVkMjQ4MzFk
ZGRlNzQwNTAzODE5NzhiYWQ1ODc4YjIuLmM1OTQ2YWY2MTVlZDQ5YTdhZGMzMmViMTZjYTg1MTM2
MDRhMDJhNmMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2lu
Zy5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcApAQCAt
NDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIktleWZyYW1lTGlzdC5oIgogI2luY2x1ZGUgIlBsdWdp
bldpZGdldC5oIgogI2luY2x1ZGUgIlJlbmRlckJveC5oIgorI2luY2x1ZGUgIlJlbmRlcklGcmFt
ZS5oIgogI2luY2x1ZGUgIlJlbmRlckltYWdlLmgiCiAjaW5jbHVkZSAiUmVuZGVyTGF5ZXJDb21w
b3NpdG9yLmgiCiAjaW5jbHVkZSAiUmVuZGVyRW1iZWRkZWRPYmplY3QuaCIKQEAgLTM4NywyMiAr
Mzg4LDEwIEBAIHZvaWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGljc0xheWVyR2Vv
bWV0cnkoKQogICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0RHJhd3NDb250ZW50KGNvbnRhaW5zUGFp
bnRlZENvbnRlbnQoKSk7CiAKICAgICAvLyBJZiB0aGlzIGlzIGFuIGlmcmFtZSBwYXJlbnQsIHVw
ZGF0ZSB0aGUgaWZyYW1lIGNvbnRlbnQncyBib3gKLSAgICBSZW5kZXJMYXllckNvbXBvc2l0b3Iq
IGlubmVyQ29tcG9zaXRvciA9IGlubmVyUmVuZGVyTGF5ZXJDb21wb3NpdG9yKCk7Ci0gICAgaWYg
KGlubmVyQ29tcG9zaXRvcikKLSAgICAgICAgaW5uZXJDb21wb3NpdG9yLT5zZXRSb290UGxhdGZv
cm1MYXllckNsaXBwaW5nQm94KGNvbnRlbnRzQm94KCkpOwotfQotCi1SZW5kZXJMYXllckNvbXBv
c2l0b3IqIFJlbmRlckxheWVyQmFja2luZzo6aW5uZXJSZW5kZXJMYXllckNvbXBvc2l0b3IoKSBj
b25zdAotewogICAgIGlmIChyZW5kZXJlcigpLT5pc1JlbmRlcklGcmFtZSgpKSB7Ci0gICAgICAg
IEhUTUxJRnJhbWVFbGVtZW50KiBlbGVtZW50ID0gc3RhdGljX2Nhc3Q8SFRNTElGcmFtZUVsZW1l
bnQqPihyZW5kZXJlcigpLT5ub2RlKCkpOwotICAgICAgICBpZiAoRG9jdW1lbnQqIGNvbnRlbnRE
b2N1bWVudCA9IGVsZW1lbnQtPmNvbnRlbnREb2N1bWVudCgpKSB7Ci0gICAgICAgICAgICBpZiAo
UmVuZGVyVmlldyogdmlldyA9IGNvbnRlbnREb2N1bWVudC0+cmVuZGVyVmlldygpKQotICAgICAg
ICAgICAgICAgIHJldHVybiB2aWV3LT5jb21wb3NpdG9yKCk7Ci0gICAgICAgIH0KKyAgICAgICAg
aWYgKFJlbmRlckxheWVyQ29tcG9zaXRvciogaW5uZXJDb21wb3NpdG9yID0gUmVuZGVyTGF5ZXJD
b21wb3NpdG9yOjppZnJhbWVDb250ZW50c0NvbXBvc2l0b3IodG9SZW5kZXJJRnJhbWUocmVuZGVy
ZXIoKSkpKQorICAgICAgICAgICAgaW5uZXJDb21wb3NpdG9yLT5zZXRSb290UGxhdGZvcm1MYXll
ckNsaXBwaW5nQm94KGNvbnRlbnRzQm94KCkpOwogICAgIH0KLQotICAgIHJldHVybiAwOwogfQog
CiB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlSW50ZXJuYWxIaWVyYXJjaHkoKQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmggYi9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuaAppbmRleCA4ZTBlZTIzYTVlNDBhNzg1NjAx
OWFjNjM2NmM4ODA1Njg1ZjgzN2MzLi5hNjkwN2U3ZjVlNDI5MWZhNDhlNWVlZjIyMzMwNDc3YTRl
Mjk3MGJhIDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcu
aAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuaApAQCAtMTI0LDgg
KzEyNCw2IEBAIHB1YmxpYzoKIAogICAgIEludFJlY3QgY29udGVudHNCb3goKSBjb25zdDsKICAg
ICAKLSAgICBSZW5kZXJMYXllckNvbXBvc2l0b3IqIGlubmVyUmVuZGVyTGF5ZXJDb21wb3NpdG9y
KCkgY29uc3Q7Ci0KIHByaXZhdGU6CiAgICAgdm9pZCBjcmVhdGVHcmFwaGljc0xheWVyKCk7CiAg
ICAgdm9pZCBkZXN0cm95R3JhcGhpY3NMYXllcigpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHAKaW5kZXggNDUyYmZlMTI4MmE2ZGNkZmJjMzhhYWFiZDRjMjkx
ZDg0NzUzMDg1NC4uZDljZmQ3NTM3ZGRlMTFiNDkwMzMzYjE5NjRkN2Y3YjE2ZTJkNTJmMCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysg
Yi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC0xMjAsNyAr
MTIwLDcgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmVuYWJsZUNvbXBvc2l0aW5nTW9k
ZShib29sIGVuYWJsZSAvKiA9IHRydWUgKi8pCiAgICAgICAgICAgICBkZXN0cm95Um9vdFBsYXRm
b3JtTGF5ZXIoKTsKIAogICAgICAgICBpZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lG
cmFtZVBhcmVudCgpKSB7Ci0gICAgICAgICAgICBpZiAoRWxlbWVudCogb3duZXJFbGVtZW50ID0g
bV9yZW5kZXJWaWV3LT5kb2N1bWVudCgpLT5vd25lckVsZW1lbnQoKSkgeworICAgICAgICAgICAg
aWYgKEVsZW1lbnQqIG93bmVyRWxlbWVudCA9IGVuY2xvc2luZ0lGcmFtZUVsZW1lbnQoKSkgewog
ICAgICAgICAgICAgICAgIC8vIFRyaWdnZXIgYSByZWNhbGNTdHlsZSBpbiB0aGUgcGFyZW50IGRv
Y3VtZW50LCB0byB1cGRhdGUgY29tcG9zaXRpbmcgaW4gdGhhdCBkb2N1bWVudC4KICAgICAgICAg
ICAgICAgICBvd25lckVsZW1lbnQtPnNldE5lZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5bGVD
aGFuZ2UpOwogICAgICAgICAgICAgfQpAQCAtNzUyLDE4ICs3NTIsMjMgQEAgdm9pZCBSZW5kZXJM
YXllckNvbXBvc2l0b3I6OnJlYnVpbGRDb21wb3NpdGluZ0xheWVyVHJlZShSZW5kZXJMYXllciog
bGF5ZXIsIGNvbnMKICAgICB9CiAgICAgCiAgICAgaWYgKGxheWVyQmFja2luZykgeworICAgICAg
ICBib29sIHBhcmVudGVkID0gZmFsc2U7CiAgICAgICAgIGlmIChzaG91bGRQcm9wYWdhdGVDb21w
b3NpdGluZ1RvSUZyYW1lUGFyZW50KCkgJiYgbGF5ZXItPnJlbmRlcmVyKCktPmlzUmVuZGVySUZy
YW1lKCkpIHsKLSAgICAgICAgICAgIC8vIFRoaXMgaXMgYW4gaWZyYW1lIHBhcmVudC4gTWFrZSBp
dCB0aGUgcGFyZW50IG9mIHRoZSBpZnJhbWUgZG9jdW1lbnQncyByb290Ci0gICAgICAgICAgICBs
YXllckJhY2tpbmctPnBhcmVudEZvclN1YmxheWVycygpLT5yZW1vdmVBbGxDaGlsZHJlbigpOwot
Ci0gICAgICAgICAgICBSZW5kZXJMYXllckNvbXBvc2l0b3IqIGlubmVyQ29tcG9zaXRvciA9IGxh
eWVyQmFja2luZy0+aW5uZXJSZW5kZXJMYXllckNvbXBvc2l0b3IoKTsKLSAgICAgICAgICAgIGlm
IChpbm5lckNvbXBvc2l0b3IpIHsKKyAgICAgICAgICAgIFJlbmRlckxheWVyQ29tcG9zaXRvciog
aW5uZXJDb21wb3NpdG9yID0gaWZyYW1lQ29udGVudHNDb21wb3NpdG9yKHRvUmVuZGVySUZyYW1l
KGxheWVyLT5yZW5kZXJlcigpKSk7CisgICAgICAgICAgICBpZiAoaW5uZXJDb21wb3NpdG9yLT5p
bkNvbXBvc2l0aW5nTW9kZSgpKSB7CisgICAgICAgICAgICAgICAgLy8gVGhpcyBpcyBhbiBpZnJh
bWUgcGFyZW50LiBNYWtlIGl0IHRoZSBwYXJlbnQgb2YgdGhlIGlmcmFtZSBkb2N1bWVudCdzIHJv
b3QKKyAgICAgICAgICAgICAgICBsYXllckJhY2tpbmctPnBhcmVudEZvclN1YmxheWVycygpLT5y
ZW1vdmVBbGxDaGlsZHJlbigpOwogICAgICAgICAgICAgICAgIEdyYXBoaWNzTGF5ZXIqIGlubmVy
Um9vdExheWVyID0gaW5uZXJDb21wb3NpdG9yLT5yb290UGxhdGZvcm1MYXllcigpOwotICAgICAg
ICAgICAgICAgIGlmIChpbm5lclJvb3RMYXllcikKKyAgICAgICAgICAgICAgICBpZiAoaW5uZXJS
b290TGF5ZXIpIHsKICAgICAgICAgICAgICAgICAgICAgbGF5ZXJCYWNraW5nLT5wYXJlbnRGb3JT
dWJsYXllcnMoKS0+YWRkQ2hpbGQoaW5uZXJSb290TGF5ZXIpOworICAgICAgICAgICAgICAgICAg
ICBwYXJlbnRlZCA9IHRydWU7CisgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAg
ICAgICB9IGVsc2UKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgaWYgKCFwYXJlbnRlZCkK
ICAgICAgICAgICAgIGxheWVyQmFja2luZy0+cGFyZW50Rm9yU3VibGF5ZXJzKCktPnNldENoaWxk
cmVuKGxheWVyQ2hpbGRyZW4pOworCiAgICAgICAgIGNoaWxkTGF5ZXJzT2ZFbmNsb3NpbmdMYXll
ci5hcHBlbmQobGF5ZXJCYWNraW5nLT5jaGlsZEZvclN1cGVybGF5ZXJzKCkpOwogICAgIH0KIH0K
QEAgLTc3Niw2ICs3ODEsMTYgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNldFJvb3RQ
bGF0Zm9ybUxheWVyQ2xpcHBpbmdCb3goY29uc3QgSW50UmVjdCYgY29udGUKICAgICB9CiB9CiAK
K1JlbmRlckxheWVyQ29tcG9zaXRvciogUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjppZnJhbWVDb250
ZW50c0NvbXBvc2l0b3IoUmVuZGVySUZyYW1lKiByZW5kZXJlcikKK3sKKyAgICBIVE1MSUZyYW1l
RWxlbWVudCogZWxlbWVudCA9IHN0YXRpY19jYXN0PEhUTUxJRnJhbWVFbGVtZW50Kj4ocmVuZGVy
ZXItPm5vZGUoKSk7CisgICAgaWYgKERvY3VtZW50KiBjb250ZW50RG9jdW1lbnQgPSBlbGVtZW50
LT5jb250ZW50RG9jdW1lbnQoKSkgeworICAgICAgICBpZiAoUmVuZGVyVmlldyogdmlldyA9IGNv
bnRlbnREb2N1bWVudC0+cmVuZGVyVmlldygpKQorICAgICAgICAgICAgcmV0dXJuIHZpZXctPmNv
bXBvc2l0b3IoKTsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKIC8vIFRoaXMganVzdCB1cGRh
dGVzIGxheWVyIGdlb21ldHJ5IHdpdGhvdXQgY2hhbmdpbmcgdGhlIGhpZXJhcmNoeS4KIHZvaWQg
UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVMYXllclRyZWVHZW9tZXRyeShSZW5kZXJMYXll
ciogbGF5ZXIpCiB7CkBAIC05MzksMTQgKzk1NCwxMSBAQCB2b2lkIFJlbmRlckxheWVyQ29tcG9z
aXRvcjo6ZGlkTW92ZU9uc2NyZWVuKCkKIAogICAgIGJvb2wgYXR0YWNoZWQgPSBmYWxzZTsKICAg
ICBpZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lGcmFtZVBhcmVudCgpKSB7Ci0gICAg
ICAgIGlmIChFbGVtZW50KiBvd25lckVsZW1lbnQgPSBtX3JlbmRlclZpZXctPmRvY3VtZW50KCkt
Pm93bmVyRWxlbWVudCgpKSB7Ci0gICAgICAgICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0g
b3duZXJFbGVtZW50LT5yZW5kZXJlcigpOwotICAgICAgICAgICAgaWYgKHJlbmRlcmVyICYmIHJl
bmRlcmVyLT5pc1JlbmRlcklGcmFtZSgpKSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhlIGxheWVy
IHdpbGwgZ2V0IGhvb2tlZCB1cCB2aWEgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGlj
c0xheWVyQ29uZmlndXJhdGlvbigpCi0gICAgICAgICAgICAgICAgLy8gZm9yIHRoZSBpZnJhbWUn
cyByZW5kZXJlciBpbiB0aGUgcGFyZW50IGRvY3VtZW50LgotICAgICAgICAgICAgICAgIG93bmVy
RWxlbWVudC0+c2V0TmVlZHNTdHlsZVJlY2FsYyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7Ci0gICAg
ICAgICAgICAgICAgYXR0YWNoZWQgPSB0cnVlOwotICAgICAgICAgICAgfQorICAgICAgICBpZiAo
RWxlbWVudCogb3duZXJFbGVtZW50ID0gZW5jbG9zaW5nSUZyYW1lRWxlbWVudCgpKSB7CisgICAg
ICAgICAgICAvLyBUaGUgbGF5ZXIgd2lsbCBnZXQgaG9va2VkIHVwIHZpYSBSZW5kZXJMYXllckJh
Y2tpbmc6OnVwZGF0ZUdyYXBoaWNzTGF5ZXJDb25maWd1cmF0aW9uKCkKKyAgICAgICAgICAgIC8v
IGZvciB0aGUgaWZyYW1lJ3MgcmVuZGVyZXIgaW4gdGhlIHBhcmVudCBkb2N1bWVudC4KKyAgICAg
ICAgICAgIG93bmVyRWxlbWVudC0+c2V0TmVlZHNTdHlsZVJlY2FsYyhTeW50aGV0aWNTdHlsZUNo
YW5nZSk7CisgICAgICAgICAgICBhdHRhY2hlZCA9IHRydWU7CiAgICAgICAgIH0KICAgICB9CiAK
QEAgLTk2OCwxNCArOTgwLDExIEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp3aWxsTW92
ZU9mZnNjcmVlbigpCiAKICAgICBib29sIGRldGFjaGVkID0gZmFsc2U7CiAgICAgaWYgKHNob3Vs
ZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9JRnJhbWVQYXJlbnQoKSkgewotICAgICAgICBpZiAoRWxl
bWVudCogb3duZXJFbGVtZW50ID0gbV9yZW5kZXJWaWV3LT5kb2N1bWVudCgpLT5vd25lckVsZW1l
bnQoKSkgewotICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG93bmVyRWxlbWVu
dC0+cmVuZGVyZXIoKTsKLSAgICAgICAgICAgIGlmIChyZW5kZXJlci0+aXNSZW5kZXJJRnJhbWUo
KSkgewotICAgICAgICAgICAgICAgIC8vIFRoZSBsYXllciB3aWxsIGdldCBob29rZWQgdXAgdmlh
IFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlR3JhcGhpY3NMYXllckNvbmZpZ3VyYXRpb24oKQot
ICAgICAgICAgICAgICAgIC8vIGZvciB0aGUgaWZyYW1lJ3MgcmVuZGVyZXIgaW4gdGhlIHBhcmVu
dCBkb2N1bWVudC4KLSAgICAgICAgICAgICAgICBvd25lckVsZW1lbnQtPnNldE5lZWRzU3R5bGVS
ZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOwotICAgICAgICAgICAgICAgIGRldGFjaGVkID0g
dHJ1ZTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgaWYgKEVsZW1lbnQqIG93bmVyRWxlbWVudCA9
IGVuY2xvc2luZ0lGcmFtZUVsZW1lbnQoKSkgeworICAgICAgICAgICAgLy8gVGhlIGxheWVyIHdp
bGwgZ2V0IGhvb2tlZCB1cCB2aWEgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGljc0xh
eWVyQ29uZmlndXJhdGlvbigpCisgICAgICAgICAgICAvLyBmb3IgdGhlIGlmcmFtZSdzIHJlbmRl
cmVyIGluIHRoZSBwYXJlbnQgZG9jdW1lbnQuCisgICAgICAgICAgICBvd25lckVsZW1lbnQtPnNl
dE5lZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOworICAgICAgICAgICAgZGV0
YWNoZWQgPSB0cnVlOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xMDMyLDYgKzEwNDEsMTQgQEAg
Ym9vbCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9J
RnJhbWVQYXJlbnQoKQogI2VuZGlmCiB9CiAKK0VsZW1lbnQqIFJlbmRlckxheWVyQ29tcG9zaXRv
cjo6ZW5jbG9zaW5nSUZyYW1lRWxlbWVudCgpIGNvbnN0Cit7CisgICAgaWYgKEVsZW1lbnQqIG93
bmVyRWxlbWVudCA9IG1fcmVuZGVyVmlldy0+ZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCkpCisg
ICAgICAgIHJldHVybiBvd25lckVsZW1lbnQtPmhhc1RhZ05hbWUoaWZyYW1lVGFnKSA/IG93bmVy
RWxlbWVudCA6IDA7CisKKyAgICByZXR1cm4gMDsKK30KKwogYm9vbCBSZW5kZXJMYXllckNvbXBv
c2l0b3I6Om5lZWRzVG9CZUNvbXBvc2l0ZWQoY29uc3QgUmVuZGVyTGF5ZXIqIGxheWVyKSBjb25z
dAogewogICAgIGlmICghY2FuQmVDb21wb3NpdGVkKGxheWVyKSkKQEAgLTEyMDgsMjEgKzEyMjUs
MTYgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmVuc3VyZVJvb3RQbGF0Zm9ybUxheWVy
KCkKICAgICAvLyBOZWVkIHRvIGNsaXAgdG8gcHJldmVudCB0cmFuc2Zvcm1lZCBjb250ZW50IHNo
b3dpbmcgb3V0c2lkZSB0aGlzIGZyYW1lCiAgICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0TWFz
a3NUb0JvdW5kcyh0cnVlKTsKICAgICAKLSAgICBpZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRp
bmdUb0lGcmFtZVBhcmVudCgpKSB7Ci0gICAgLy8gQ3JlYXRlIGEgY2xpcHBpbmcgbGF5ZXIgaWYg
dGhpcyBpcyBhbiBpZnJhbWUKLSAgICAgICAgaWYgKEVsZW1lbnQqIG93bmVyRWxlbWVudCA9IG1f
cmVuZGVyVmlldy0+ZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCkpIHsKLSAgICAgICAgICAgIFJl
bmRlck9iamVjdCogcmVuZGVyZXIgPSBvd25lckVsZW1lbnQtPnJlbmRlcmVyKCk7Ci0gICAgICAg
ICAgICBpZiAocmVuZGVyZXIgJiYgcmVuZGVyZXItPmlzUmVuZGVySUZyYW1lKCkpIHsKLSAgICAg
ICAgICAgICAgICBtX2NsaXBwaW5nTGF5ZXIgPSBHcmFwaGljc0xheWVyOjpjcmVhdGUoMCk7Ci0g
ICAgICAgICAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5zZXRHZW9tZXRyeU9yaWVudGF0aW9uKEdy
YXBoaWNzTGF5ZXI6OmNvbXBvc2l0aW5nQ29vcmRpbmF0ZXNPcmllbnRhdGlvbigpKTsKKyAgICBp
ZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lGcmFtZVBhcmVudCgpICYmIGVuY2xvc2lu
Z0lGcmFtZUVsZW1lbnQoKSkgeworICAgICAgICAvLyBDcmVhdGUgYSBjbGlwcGluZyBsYXllciBp
ZiB0aGlzIGlzIGFuIGlmcmFtZQorICAgICAgICBtX2NsaXBwaW5nTGF5ZXIgPSBHcmFwaGljc0xh
eWVyOjpjcmVhdGUoMCk7CisgICAgICAgIG1fY2xpcHBpbmdMYXllci0+c2V0R2VvbWV0cnlPcmll
bnRhdGlvbihHcmFwaGljc0xheWVyOjpjb21wb3NpdGluZ0Nvb3JkaW5hdGVzT3JpZW50YXRpb24o
KSk7CiAjaWZuZGVmIE5ERUJVRwotICAgICAgICAgICAgICAgIG1fY2xpcHBpbmdMYXllci0+c2V0
TmFtZSgiaWZyYW1lIENsaXBwaW5nIik7CisgICAgICAgIG1fY2xpcHBpbmdMYXllci0+c2V0TmFt
ZSgiaWZyYW1lIENsaXBwaW5nIik7CiAjZW5kaWYKLSAgICAgICAgICAgICAgICBtX2NsaXBwaW5n
TGF5ZXItPnNldE1hc2tzVG9Cb3VuZHModHJ1ZSk7Ci0gICAgICAgICAgICAgICAgbV9jbGlwcGlu
Z0xheWVyLT5zZXRBbmNob3JQb2ludChGbG9hdFBvaW50KCkpOwotICAgICAgICAgICAgICAgIG1f
Y2xpcHBpbmdMYXllci0+YWRkQ2hpbGQobV9yb290UGxhdGZvcm1MYXllci5nZXQoKSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0KKyAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5zZXRNYXNrc1Rv
Qm91bmRzKHRydWUpOworICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnNldEFuY2hvclBvaW50KEZs
b2F0UG9pbnQoKSk7CisgICAgICAgIG1fY2xpcHBpbmdMYXllci0+YWRkQ2hpbGQobV9yb290UGxh
dGZvcm1MYXllci5nZXQoKSk7CiAgICAgfQogCiAgICAgZGlkTW92ZU9uc2NyZWVuKCk7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaCBiL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oCmluZGV4IDNjYzc5NWY4ODk4ZDg1
MDVhNDlkMDM1ZDQ1ZmVmNGQ5MDk1MmU2OWIuLmUwNWZlMTM3ZWQxOTE1ZTBlZjQwNTU2M2Y0YWU5
NTI1MjQ4MzAxYmMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29t
cG9zaXRvci5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5o
CkBAIC0zNCw2ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNkZWZpbmUgUFJPRklMRV9M
QVlFUl9SRUJVSUxEIDAKIAogY2xhc3MgR3JhcGhpY3NMYXllcjsKK2NsYXNzIFJlbmRlcklGcmFt
ZTsKICNpZiBFTkFCTEUoVklERU8pCiBjbGFzcyBSZW5kZXJWaWRlbzsKICNlbmRpZgpAQCAtMTQx
LDYgKzE0Miw5IEBAIHB1YmxpYzoKICAgICAvLyB0aGVpciBwYXJlbnQgZG9jdW1lbnQuCiAgICAg
c3RhdGljIGJvb2wgc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lGcmFtZVBhcmVudCgpOwog
CisgICAgRWxlbWVudCogZW5jbG9zaW5nSUZyYW1lRWxlbWVudCgpIGNvbnN0OworICAgIHN0YXRp
YyBSZW5kZXJMYXllckNvbXBvc2l0b3IqIGlmcmFtZUNvbnRlbnRzQ29tcG9zaXRvcihSZW5kZXJJ
RnJhbWUqKTsKKwogICAgIHZvaWQgc2V0Um9vdFBsYXRmb3JtTGF5ZXJDbGlwcGluZ0JveChjb25z
dCBJbnRSZWN0JiBjb250ZW50c0JveCk7CiAKIHByaXZhdGU6Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55586</attachid>
            <date>2010-05-10 12:04:45 -0700</date>
            <delta_ts>2010-05-10 22:14:23 -0700</delta_ts>
            <desc>Add a bunch move compositing iframe tests</desc>
            <filename>iframe_tests.txt</filename>
            <type>text/plain</type>
            <size>14614</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1MDQ4OWVhLi4wYmNmZjdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDUt
MTAgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM4ODU2CisgICAgICAgIEFsbG93IGNvbXBvc2l0aW5nIGxheWVy
cyB0byBiZSBjb25uZWN0ZWQgYWNyb3NzIGlmcmFtZSBib3VuZGFyaWVzIG9uIE1hYworICAgICAg
ICAKKyAgICAgICAgQWRkIHNldmVyYWwgbW9yZSBpZnJhbWUtY29tcG9zaXRpbmctcmVsYXRlZCB0
ZXN0cy4gVGhlc2UgdGVzdHM6CisgICAgICAgICAgICAqIGFuIGlmcmFtZSBkeW5hbWljYWxseSBl
bnRlcmluZyBjb21wb3NpdGluZyBtb2RlCisgICAgICAgICAgICAqIGFuIGlmcmFtZSBkeW5hbWlj
YWxseSBsZWF2aW5nIGNvbXBvc2l0aW5nIG1vZGUKKyAgICAgICAgICAgICogYW4gb3ZlcmxhcHBl
ZCBpZnJhbWUKKyAgICAgICAgICAgICogYSBjb21wb3NpdGluZyBpZnJhbWUgYmVpbmcgcmVzaXpl
ZAorICAgICAgICAgICAgCisgICAgICAgIGNvbXBvc2l0ZWQtaWZyYW1lLmh0bWwgaGFkIG5vIHZh
bHVlIGFuZCBpcyByZW1vdmVkLgorCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9jb21w
b3NpdGVkLWlmcmFtZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY29tcG9zaXRp
bmcvaWZyYW1lcy9jb21wb3NpdGVkLWlmcmFtZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNv
bXBvc2l0aW5nL2lmcmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVkLnR4dDog
Q29waWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2NvbXBvc2l0aW5nL2lmcmFtZXMv
Y29tcG9zaXRlZC1pZnJhbWUtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lm
cmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNv
bXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9t
IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0ZWQt
aWZyYW1lLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2lmcmFt
ZS1yZXNpemUuaHRtbDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9sZWF2
ZS1jb21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb21wb3NpdGVkLWlmcmFtZS1leHBl
Y3RlZC50eHQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3NpdGlu
Zy1pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9vdmVy
bGFwcGVkLWlmcmFtZS1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0ZWQtaWZyYW1lLWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvcmVzb3VyY2VzL2VudGVyLWNv
bXBvc2l0aW5nLXN1YmZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lm
cmFtZXMvcmVzb3VyY2VzL2xlYXZlLWNvbXBvc2l0aW5nLXN1YmZyYW1lLmh0bWw6IEFkZGVkLgor
CiAyMDEwLTA1LTA2ICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0ZWQtaWZyYW1lLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29tcG9zaXRlZC1pZnJhbWUtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5N2I4MjlhLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29tcG9zaXRlZC1pZnJhbWUtZXhw
ZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotCi0oR3JhcGhpY3NMYXll
cgotICAocG9zaXRpb24gMC4wMCAwLjAwKQotICAoYW5jaG9yIDAuNTAgMC41MCkKLSAgKGJvdW5k
cyA4MDAuMDAgNjAwLjAwKQotICAob3BhY2l0eSAxLjAwKQotICAodXNpbmdUaWxlZExheWVyIDAp
Ci0gIChwcmVzZXJ2ZXMzRCAwKQotICAoZHJhd3NDb250ZW50IDApCi0gIChiYWNrZmFjZVZpc2li
aWxpdHkgdmlzaWJsZSkKLSAgKGJhY2tncm91bmRDb2xvciBub25lKQotICAodHJhbnNmb3JtIGlk
ZW50aXR5KQotICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCi0gIChjaGlsZHJlbiAxCi0g
ICAgKEdyYXBoaWNzTGF5ZXIKLSAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCi0gICAgICAoYW5j
aG9yIDAuNTAgMC41MCkKLSAgICAgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKLSAgICAgIChvcGFj
aXR5IDEuMDApCi0gICAgICAodXNpbmdUaWxlZExheWVyIDApCi0gICAgICAocHJlc2VydmVzM0Qg
MCkKLSAgICAgIChkcmF3c0NvbnRlbnQgMCkKLSAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlz
aWJsZSkKLSAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKLSAgICAgICh0cmFuc2Zvcm0gaWRl
bnRpdHkpCi0gICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCi0gICAgICAoY2hpbGRy
ZW4gMQotICAgICAgICAoR3JhcGhpY3NMYXllcgotICAgICAgICAgIChwb3NpdGlvbiA4LjAwIDgu
MDApCi0gICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCi0gICAgICAgICAgKGJvdW5kcyAzMDQu
MDAgMTU0LjAwKQotICAgICAgICAgIChvcGFjaXR5IDEuMDApCi0gICAgICAgICAgKHVzaW5nVGls
ZWRMYXllciAwKQotICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQotICAgICAgICAgIChkcmF3c0Nv
bnRlbnQgMSkKLSAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCi0gICAgICAg
ICAgKGJhY2tncm91bmRDb2xvciBub25lKQotICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkp
Ci0gICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQotICAgICAgICApCi0gICAg
ICApCi0gICAgKQotICApCi0pCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvY29tcG9zaXRlZC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvY29tcG9zaXRlZC1pZnJhbWUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOTc5ODE3NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJh
bWVzL2NvbXBvc2l0ZWQtaWZyYW1lLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBA
Ci08IURPQ1RZUEUgaHRtbD4KLQotPGh0bWw+Ci08aGVhZD4KLSAgPHN0eWxlIHR5cGU9InRleHQv
Y3NzIiBtZWRpYT0ic2NyZWVuIj4KLSAgICBpZnJhbWUgewotICAgICAgICBib3JkZXI6IDEwcHgg
c29saWQgYmxhY2s7Ci0gICAgICAgIHBhZGRpbmc6IDEwcHg7Ci0gICAgICAgIGhlaWdodDogNjAl
OwotICAgICAgICB3aWR0aDogODAlOwotICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAy
MHB4IGJsYWNrOwotICAgIH0KLSAgPC9zdHlsZT4KLSAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7Ci0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLSAgICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwotICAgIH0KLQotICAgIGZ1
bmN0aW9uIGRvVGVzdCgpCi0gICAgewotICAgICAgICAvLyBOZWVkIHRvIHdhaXQgZm9yIGNvbXBv
c2l0aW5nIGxheWVycyB0byBiZSB1cGRhdGVkLgotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
IHsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGF5ZXJzJykuaW5u
ZXJIVE1MID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0KCk7Ci0gICAgICAg
ICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAg
fQotICAgICAgICB9LCAwKTsKLSAgICB9Ci0KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcign
bG9hZCcsIGRvVGVzdCwgZmFsc2UpOwotICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotCi0g
ICAgPCEtLSBUaGUgcGFyZW50IGRvY3VtZW50IHNob3VsZCBiZSB0aHJvd24gaW50byBjb21wb3Np
dGluZyBtb2RlIGJ5IHRoZSBpZnJhbWUuIC0tPgotICAgIDxpZnJhbWUgaWQ9InBhcmVudC1pZnJh
bWUiIHNyYz0icmVzb3VyY2VzL2NvbXBvc2l0ZWQtc3ViZnJhbWUuaHRtbCI+PC9pZnJhbWU+Ci0K
LSAgICA8cHJlIGlkPSJsYXllcnMiPkxheWVyIHRyZWUgYXBwZWFycyBoZXJlIGluIERSVC48L3By
ZT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMzk1OTdmCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9lbnRlci1jb21wb3Np
dGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZyYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2VudGVyLWNvbXBvc2l0aW5n
LWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYyNjNlMDQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2VudGVy
LWNvbXBvc2l0aW5nLWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRSBodG1s
PgorCis8aHRtbD4KKzxoZWFkPgorICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3Jl
ZW4iPgorICAgIGlmcmFtZSB7CisgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKKyAg
ICAgICAgcGFkZGluZzogNXB4OworICAgICAgICBtYXJnaW46IDIwcHg7CisgICAgICAgIGhlaWdo
dDogMTUwcHg7CisgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgLXdlYmtpdC1ib3gtc2hh
ZG93OiAwIDAgMjBweCBibGFjazsKKyAgICB9CisgICAgCisgICAgLm92ZXJsYXkgeworICAgICAg
cG9zaXRpb246IGFic29sdXRlOworICAgICAgd2lkdGg6IDUwcHg7CisgICAgICBoZWlnaHQ6IDUw
cHg7CisgICAgICB0b3A6IDVweDsKKyAgICAgIGxlZnQ6IDVweDsKKyAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsKKyAgICB9CisgICAgCisgIDwvc3R5bGU+CisgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CisgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wQXNUZXh0KCk7CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICB9CisKKyAgICAvLyBDYWxsZWQgZnJvbSBzdWJmcmFtZS4KKyAgICBmdW5jdGlv
biB0ZXN0RG9uZSgpCisgICAgeworICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikgeworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGF5ZXJzJykuaW5uZXJUZXh0
ID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0KCk7CisgICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICAgIH0KKyAgICB9CisgIDwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+CisKKyAgICA8IS0tIFRoZSBwYXJlbnQgZG9jdW1lbnQgbWF5IGlu
dG8gY29tcG9zaXRpbmcgbW9kZSBieSB0aGUgaWZyYW1lLiAtLT4KKyAgICA8aWZyYW1lIGlkPSJw
YXJlbnQtaWZyYW1lIiBzcmM9InJlc291cmNlcy9lbnRlci1jb21wb3NpdGluZy1zdWJmcmFtZS5o
dG1sIj48L2lmcmFtZT4KKyAgICAKKyAgICA8ZGl2IGNsYXNzPSJvdmVybGF5Ij4KKyAgICA8L2Rp
dj4KKworICAgIDxwcmUgaWQ9ImxheWVycyI+TGF5ZXIgdHJlZSBhcHBlYXJzIGhlcmUgaW4gRFJU
LjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvaWZyYW1lcy9pZnJhbWUtcmVzaXplLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Nv
bXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTM5NTk3ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwyIEBACisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZy
YW1lcy9pZnJhbWUtcmVzaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2lmcmFtZS1yZXNpemUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5i
YzMyN2ZlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1l
cy9pZnJhbWUtcmVzaXplLmh0bWwKQEAgLTAsMCArMSw2MSBAQAorPCFET0NUWVBFIGh0bWw+CisK
KzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+
CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAg
ICBwYWRkaW5nOiA1cHg7CisgICAgICAgIG1hcmdpbjogMjBweDsKKyAgICAgICAgaGVpZ2h0OiAx
NTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4OworICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6
IDAgMCAyMHB4IGJsYWNrOworICAgIH0KKyAgICAKKyAgICAuYmlnZ2VyIHsKKyAgICAgIGhlaWdo
dDogMTIwcHg7CisgICAgICB3aWR0aDogNDAwcHg7CisgICAgfQorICAgIAorICAgIC5vdmVybGF5
IHsKKyAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgIHdpZHRoOiA1MHB4OworICAgICAg
aGVpZ2h0OiA1MHB4OworICAgICAgdG9wOiA1cHg7CisgICAgICBsZWZ0OiA1cHg7CisgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7CisgICAgfQorICAgIAorICA8L3N0
eWxlPgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgor
ICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53
YWl0VW50aWxEb25lKCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gZG9UZXN0KCkKKyAgICB7Cisg
ICAgICAgIC8vIE5lZWQgdG8gd2FpdCBmb3IgY29tcG9zaXRpbmcgbGF5ZXJzIHRvIGJlIHVwZGF0
ZWQuCisgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhcmVudC1pZnJhbWUnKS5jbGFzc05hbWUgPSAnYmln
Z2VyJzsKKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGF5ZXJzJykuaW5uZXJIVE1M
ID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0KCk7CisgICAgICAgICAgICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorICAg
ICAgICB9LCAwKTsKKyAgICB9CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcs
IGRvVGVzdCwgZmFsc2UpOworICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCisgICAgPCEt
LSBUaGUgcGFyZW50IGRvY3VtZW50IG1heSBpbnRvIGNvbXBvc2l0aW5nIG1vZGUgYnkgdGhlIGlm
cmFtZS4gLS0+CisgICAgPGlmcmFtZSBpZD0icGFyZW50LWlmcmFtZSIgc3JjPSJyZXNvdXJjZXMv
Y29tcG9zaXRlZC1zdWJmcmFtZS5odG1sIj48L2lmcmFtZT4KKyAgICAKKyAgICA8ZGl2IGNsYXNz
PSJvdmVybGF5Ij4KKyAgICA8L2Rpdj4KKworICAgIDxwcmUgaWQ9ImxheWVycyI+TGF5ZXIgdHJl
ZSBhcHBlYXJzIGhlcmUgaW4gRFJULjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3NpdGluZy1pZnJh
bWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9sZWF2ZS1j
b21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjEzOTU5N2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9pZnJhbWVzL2xlYXZlLWNvbXBvc2l0aW5nLWlmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyIEBACisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1l
cy9sZWF2ZS1jb21wb3NpdGluZy1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvbGVhdmUtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uMDdjNzY2MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2lmcmFtZXMvbGVhdmUtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwKQEAgLTAs
MCArMSw1MSBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9y
ZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIG1h
cmdpbjogMjBweDsKKyAgICAgICAgaGVpZ2h0OiAxNTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4
OworICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrOworICAgIH0KKyAg
ICAKKyAgICAub3ZlcmxheSB7CisgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICB3aWR0
aDogNTBweDsKKyAgICAgIGhlaWdodDogNTBweDsKKyAgICAgIHRvcDogNXB4OworICAgICAgbGVm
dDogNXB4OworICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOworICAg
IH0KKyAgICAKKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNo
YXJzZXQ9InV0Zi04Ij4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Cisg
ICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKworICAgIC8vIENhbGxlZCBm
cm9tIHN1YmZyYW1lLgorICAgIGZ1bmN0aW9uIHRlc3REb25lKCkKKyAgICB7CisgICAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdsYXllcnMnKS5pbm5lclRleHQgPSBsYXlvdXRUZXN0Q29udHJvbGxlci5sYXllclRy
ZWVBc1RleHQoKTsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOwor
ICAgICAgfQorICAgIH0KKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDwhLS0g
VGhlIHBhcmVudCBkb2N1bWVudCBtYXkgaW50byBjb21wb3NpdGluZyBtb2RlIGJ5IHRoZSBpZnJh
bWUuIC0tPgorICAgIDxpZnJhbWUgaWQ9InBhcmVudC1pZnJhbWUiIHNyYz0icmVzb3VyY2VzL2xl
YXZlLWNvbXBvc2l0aW5nLXN1YmZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAgIAorICAgIDxkaXYg
Y2xhc3M9Im92ZXJsYXkiPgorICAgIDwvZGl2PgorCisgICAgPHByZSBpZD0ibGF5ZXJzIj5MYXll
ciB0cmVlIGFwcGVhcnMgaGVyZSBpbiBEUlQuPC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1l
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvb3ZlcmxhcHBl
ZC1pZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjEzOTU5N2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJh
bWVzL292ZXJsYXBwZWQtaWZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKKworCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZy
YW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZy
YW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjVjMmI3MgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvb3ZlcmxhcHBl
ZC1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDU1IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+
Cis8aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBp
ZnJhbWUgeworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgIHBhZGRp
bmc6IDVweDsKKyAgICAgICAgbWFyZ2luOiAyMHB4OworICAgICAgICBoZWlnaHQ6IDE1MHB4Owor
ICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDIw
cHggYmxhY2s7CisgICAgfQorICAgIAorICAgIC5vdmVybGF5IHsKKyAgICAgIHBvc2l0aW9uOiBh
YnNvbHV0ZTsKKyAgICAgIHdpZHRoOiA1MHB4OworICAgICAgaGVpZ2h0OiA1MHB4OworICAgICAg
dG9wOiA1cHg7CisgICAgICBsZWZ0OiA1cHg7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Jh
KDAsIDAsIDAsIDAuMik7CisgICAgfQorICAgIAorICA8L3N0eWxlPgorICA8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgorICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAg
fQorCisgICAgZnVuY3Rpb24gZG9UZXN0KCkKKyAgICB7CisgICAgICAgIC8vIE5lZWQgdG8gd2Fp
dCBmb3IgY29tcG9zaXRpbmcgbGF5ZXJzIHRvIGJlIHVwZGF0ZWQuCisgICAgICAgIHdpbmRvdy5z
ZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCds
YXllcnMnKS5pbm5lckhUTUwgPSBsYXlvdXRUZXN0Q29udHJvbGxlci5sYXllclRyZWVBc1RleHQo
KTsKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0sIDApOworICAgIH0KKworICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCdsb2FkJywgZG9UZXN0LCBmYWxzZSk7CisgIDwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+CisKKyAgICA8IS0tIFRoZSBwYXJlbnQgZG9jdW1lbnQgbWF5IGludG8gY29tcG9zaXRp
bmcgbW9kZSBieSB0aGUgaWZyYW1lLiAtLT4KKyAgICA8aWZyYW1lIGlkPSJwYXJlbnQtaWZyYW1l
IiBzcmM9InJlc291cmNlcy9jb21wb3NpdGVkLXN1YmZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAg
IAorICAgIDxkaXYgY2xhc3M9Im92ZXJsYXkiPgorICAgIDwvZGl2PgorCisgICAgPHByZSBpZD0i
bGF5ZXJzIj5MYXllciB0cmVlIGFwcGVhcnMgaGVyZSBpbiBEUlQuPC9wcmU+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL3Jlc291
cmNlcy9lbnRlci1jb21wb3NpdGluZy1zdWJmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvaWZyYW1lcy9yZXNvdXJjZXMvZW50ZXItY29tcG9zaXRpbmctc3ViZnJhbWUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZGExMTc5Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9yZXNvdXJjZXMvZW50ZXItY29t
cG9zaXRpbmctc3ViZnJhbWUuaHRtbApAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4K
KworPGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVu
Ij4KKyAgICBib2R5IHsgYmFja2dyb3VuZC1jb2xvcjpzaWx2ZXIgfQorICAgIAorICAgIC5ib3gg
eworICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAg
IG1hcmdpbjogMTBweDsKKyAgICAgICAgcGFkZGluZzogNXB4OworICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiBibHVlOworICAgIH0KKyAgICAKKyAgICAuY29tcG9zaXRlZCB7CisgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKKyAgICB9CisKKyAgPC9zdHlsZT4KKyAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBmdW5jdGlv
biBkb1Rlc3QoKQorICAgIHsKKyAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewor
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdCcpLmNsYXNzTmFtZSA9ICdjb21w
b3NpdGVkIGJveCc7CisgICAgICAgIHBhcmVudC50ZXN0RG9uZSgpOworICAgICAgfSwgNTAwKTsK
KyAgICB9CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBkb1Rlc3QsIGZhbHNl
KTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDxkaXYgaWQ9InRlc3QiIGNs
YXNzPSJib3giPgorICAgIDwvZGl2PgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL3Jlc291cmNlcy9sZWF2ZS1jb21wb3NpdGlu
Zy1zdWJmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9yZXNvdXJj
ZXMvbGVhdmUtY29tcG9zaXRpbmctc3ViZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi5iZTFiZmU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvaWZyYW1lcy9yZXNvdXJjZXMvbGVhdmUtY29tcG9zaXRpbmctc3ViZnJhbWUuaHRt
bApAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8aGVhZD4KKyAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBib2R5IHsgYmFja2dy
b3VuZC1jb2xvcjpzaWx2ZXIgfQorICAgIAorICAgIC5ib3ggeworICAgICAgICBoZWlnaHQ6IDIw
MHB4OworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAg
ICAgcGFkZGluZzogNXB4OworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworICAgIH0K
KyAgICAKKyAgICAuY29tcG9zaXRlZCB7CisgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNs
YXRlWigwKTsKKyAgICB9CisKKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBmdW5jdGlvbiBkb1Rlc3QoKQorICAgIHsKKyAg
ICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgndGVzdCcpLmNsYXNzTmFtZSA9ICdib3gnOworICAgICAgICBwYXJlbnQudGVz
dERvbmUoKTsKKyAgICAgIH0sIDUwMCk7CisgICAgfQorICAgIHdpbmRvdy5hZGRFdmVudExpc3Rl
bmVyKCdsb2FkJywgZG9UZXN0LCBmYWxzZSk7CisgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
CisKKyAgICA8ZGl2IGlkPSJ0ZXN0IiBjbGFzcz0iY29tcG9zaXRlZCBib3giPgorICAgIDwvZGl2
PgorCis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55589</attachid>
            <date>2010-05-10 12:20:26 -0700</date>
            <delta_ts>2010-05-10 22:27:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38856-20100510122025.patch</filename>
            <type>text/plain</type>
            <size>4417</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Y2IxY2U5NDc5MWU5YWM5OTg5MDE0ZWExYTZlMWNlMDY5YmM2OTczOS4uOTI1YjcwZjMxMzVmNjNj
YjY4YTMxYzVlNjAxODUyYTcwOTdhZjQzZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTUsNiArNSwyMyBAQAogICAgICAgICBBbGxvdyBj
b21wb3NpdGluZyBsYXllcnMgdG8gYmUgY29ubmVjdGVkIGFjcm9zcyBpZnJhbWUgYm91bmRhcmll
cyBvbiBNYWMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM4ODU2CiAKKyAgICAgICAgQ2xlYW4gdXAgdGhlIGdlb21ldHJ5IGxvZ2ljIHdoZW4gcHJvcGFn
YXRpbmcgY29tcG9zaXRpbmcgb3V0IG9mIGlmcmFtZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVy
Q29tcG9zaXRvcjo6dXBkYXRlUm9vdExheWVyUG9zaXRpb24pOiBHZW9tZXRyeSBvbiBtX3Jvb3RQ
bGF0Zm9ybUxheWVyIG5vIGxvbmdlcgorICAgICAgICBuZWVkcyB0byBiZSBzcGVjaWFsIHdoZW4g
dGhlcmUncyBhIGNsaXBwaW5nIGxheWVyLgorICAgICAgICAKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyQ29tcG9zaXRvcjo6ZW5zdXJlUm9vdFBsYXRmb3JtTGF5ZXIpOiBEb24ndCBzZXQg
dGhlIGNsaXBwaW5nIGxheWVyIHRvIGhhdmUKKyAgICAgICAgZmxpcHBlZCBnZW9tZXRyeSBldmVy
LCBhbmQgb25seSBzZXQgdGhlIHJvb3QgbGF5ZXIgdG8gaGF2ZSBmbGlwcGVkIGdlb21ldHJ5IGlm
IGl0IGlzIG5vdAorICAgICAgICBiZWluZyBob3N0ZWQgaW4gYW4gaWZyYW1lLiBBbHNvIG5vIG5l
ZWQgdG8gc2V0IGEgY3VzdG9tIGFuY2hvciBwb2ludCBvbiB0aGUgY2xpcHBpbmcgbGF5ZXIuCisK
KzIwMTAtMDUtMTAgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxsb3cgY29tcG9z
aXRpbmcgbGF5ZXJzIHRvIGJlIGNvbm5lY3RlZCBhY3Jvc3MgaWZyYW1lIGJvdW5kYXJpZXMgb24g
TWFjCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODg1
NgorCiAgICAgICAgIENsZWFuIHVwIHNvbWUgbWV0aG9kcyByZWxhdGVkIHRvIGNvbXBvc2l0ZWQg
aWZyYW1lcy4gTm8gYmVoYXZpb3JhbCBjaGFuZ2VzLgogCiAgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckxheWVyQmFja2luZy5oOiBNb3ZlIGlubmVyUmVuZGVyTGF5ZXJDb21wb3NpdG9yKCkgdG8g
YmUgYSBzdGF0aWMgbWV0aG9kOgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJDb21wb3NpdG9yLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9z
aXRvci5jcHAKaW5kZXggZDljZmQ3NTM3ZGRlMTFiNDkwMzMzYjE5NjRkN2Y3YjE2ZTJkNTJmMC4u
N2QxMDg4NGMxODcwMWJkZmVkZDNmZWVhOTU5NGEyZGQ4MDJhYmUwYyAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC0xMDAxLDE5ICsxMDAxLDEwIEBA
IHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp3aWxsTW92ZU9mZnNjcmVlbigpCiAKIHZvaWQg
UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVSb290TGF5ZXJQb3NpdGlvbigpCiB7Ci0gICAg
aWYgKG1fcm9vdFBsYXRmb3JtTGF5ZXIpIHsKLSAgICAgICAgLy8gRklYTUU6IEFkanVzdCB0aGUg
eSBwb3NpdGlvbiBvZiB0aGUgbV9yb290UGxhdGZvcm1MYXllciBpZiB3ZSBhcmUgY2xpcHBpbmcg
YnkgaXRzIHRvcCBlZGdlCi0gICAgICAgIC8vIEV2ZW50dWFsbHkgdGhpcyB3aWxsIGJlIHRha2Vu
IGNhcmUgb2YgYnkgc2Nyb2xsaW5nIGxvZ2ljCi0gICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODUxOAotICAgICAgICBmbG9hdCBoZWlnaHQgPSBtX3Jl
bmRlclZpZXctPmJvdHRvbUxheW91dE92ZXJmbG93KCk7Ci0gICAgICAgIGZsb2F0IHlPZmZzZXQg
PSAwOwotCi0gICAgICAgIGlmIChtX2NsaXBwaW5nTGF5ZXIgJiYgaGVpZ2h0ID4gbV9jbGlwcGlu
Z0xheWVyLT5zaXplKCkuaGVpZ2h0KCkpCi0gICAgICAgICAgICB5T2Zmc2V0ID0gbV9jbGlwcGlu
Z0xheWVyLT5zaXplKCkuaGVpZ2h0KCkgLSBoZWlnaHQ7Ci0KLSAgICAgICAgbV9yb290UGxhdGZv
cm1MYXllci0+c2V0UG9zaXRpb24oRmxvYXRQb2ludCgwLCB5T2Zmc2V0KSk7Ci0gICAgICAgIG1f
cm9vdFBsYXRmb3JtTGF5ZXItPnNldFNpemUoRmxvYXRTaXplKG1fcmVuZGVyVmlldy0+cmlnaHRM
YXlvdXRPdmVyZmxvdygpLCBoZWlnaHQpKTsKLSAgICB9CisgICAgLy8gRXZlbnR1YWxseSB3ZSB3
aWxsIG5lZWQgdG8gYWNjb3VudCBmb3Igc2Nyb2xsaW5nIGhlcmUuCisgICAgLy8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4NTE4CisgICAgaWYgKG1fcm9vdFBsYXRm
b3JtTGF5ZXIpCisgICAgICAgIG1fcm9vdFBsYXRmb3JtTGF5ZXItPnNldFNpemUoRmxvYXRTaXpl
KG1fcmVuZGVyVmlldy0+cmlnaHRMYXlvdXRPdmVyZmxvdygpLCBtX3JlbmRlclZpZXctPmJvdHRv
bUxheW91dE92ZXJmbG93KCkpKTsKIH0KIAogdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmRp
ZFN0YXJ0QWNjZWxlcmF0ZWRBbmltYXRpb24oKQpAQCAtMTIxNSwyNSArMTIwNiwyOCBAQCB2b2lk
IFJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZW5zdXJlUm9vdFBsYXRmb3JtTGF5ZXIoKQogICAgIGlm
IChtX3Jvb3RQbGF0Zm9ybUxheWVyKQogICAgICAgICByZXR1cm47CiAKKyAgICBib29sIGlzSG9z
dGVkSW5JRnJhbWUgPSBzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1RvSUZyYW1lUGFyZW50KCkg
JiYgZW5jbG9zaW5nSUZyYW1lRWxlbWVudCgpOworICAgIAogICAgIG1fcm9vdFBsYXRmb3JtTGF5
ZXIgPSBHcmFwaGljc0xheWVyOjpjcmVhdGUoMCk7CisjaWZuZGVmIE5ERUJVRworICAgIG1fcm9v
dFBsYXRmb3JtTGF5ZXItPnNldE5hbWUoIlJvb3QgcGxhdGZvcm0iKTsKKyNlbmRpZgogICAgIG1f
cm9vdFBsYXRmb3JtTGF5ZXItPnNldFNpemUoRmxvYXRTaXplKG1fcmVuZGVyVmlldy0+cmlnaHRM
YXlvdXRPdmVyZmxvdygpLCBtX3JlbmRlclZpZXctPmJvdHRvbUxheW91dE92ZXJmbG93KCkpKTsK
ICAgICBtX3Jvb3RQbGF0Zm9ybUxheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KCkpOwogCiAg
ICAgLy8gVGhlIHJvb3QgbGF5ZXIgZG9lcyBmbGlwcGluZyBpZiB3ZSBuZWVkIGl0IG9uIHRoaXMg
cGxhdGZvcm0uCi0gICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0R2VvbWV0cnlPcmllbnRhdGlv
bihHcmFwaGljc0xheWVyOjpjb21wb3NpdGluZ0Nvb3JkaW5hdGVzT3JpZW50YXRpb24oKSk7Cisg
ICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0R2VvbWV0cnlPcmllbnRhdGlvbihpc0hvc3RlZElu
SUZyYW1lID8gR3JhcGhpY3NMYXllcjo6Q29tcG9zaXRpbmdDb29yZGluYXRlc1RvcERvd24gOiBH
cmFwaGljc0xheWVyOjpjb21wb3NpdGluZ0Nvb3JkaW5hdGVzT3JpZW50YXRpb24oKSk7CiAKICAg
ICAvLyBOZWVkIHRvIGNsaXAgdG8gcHJldmVudCB0cmFuc2Zvcm1lZCBjb250ZW50IHNob3dpbmcg
b3V0c2lkZSB0aGlzIGZyYW1lCiAgICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0TWFza3NUb0Jv
dW5kcyh0cnVlKTsKICAgICAKLSAgICBpZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lG
cmFtZVBhcmVudCgpICYmIGVuY2xvc2luZ0lGcmFtZUVsZW1lbnQoKSkgeworICAgIGlmIChpc0hv
c3RlZEluSUZyYW1lKSB7CiAgICAgICAgIC8vIENyZWF0ZSBhIGNsaXBwaW5nIGxheWVyIGlmIHRo
aXMgaXMgYW4gaWZyYW1lCiAgICAgICAgIG1fY2xpcHBpbmdMYXllciA9IEdyYXBoaWNzTGF5ZXI6
OmNyZWF0ZSgwKTsKLSAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5zZXRHZW9tZXRyeU9yaWVudGF0
aW9uKEdyYXBoaWNzTGF5ZXI6OmNvbXBvc2l0aW5nQ29vcmRpbmF0ZXNPcmllbnRhdGlvbigpKTsK
ICNpZm5kZWYgTkRFQlVHCiAgICAgICAgIG1fY2xpcHBpbmdMYXllci0+c2V0TmFtZSgiaWZyYW1l
IENsaXBwaW5nIik7CiAjZW5kaWYKICAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5zZXRNYXNrc1Rv
Qm91bmRzKHRydWUpOwotICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnNldEFuY2hvclBvaW50KEZs
b2F0UG9pbnQoKSk7CiAgICAgICAgIG1fY2xpcHBpbmdMYXllci0+YWRkQ2hpbGQobV9yb290UGxh
dGZvcm1MYXllci5nZXQoKSk7CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55598</attachid>
            <date>2010-05-10 13:49:38 -0700</date>
            <delta_ts>2010-05-10 14:08:47 -0700</delta_ts>
            <desc>Windows results for new test cases</desc>
            <filename>38856-Windows-results.patch</filename>
            <type>text/plain</type>
            <size>12989</size>
            <attacher name="Chris Marrin">cmarrin</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDU5MDk0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDUtMTAgIENocmlzIE1hcnJpbiAgPGNt
YXJyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEFkZCBXaW5kb3dzIHJlc3VsdHMgZm9yIG5ldyBjb21wb3NpdGVkIGlmcmFtZSB0
ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg4
NTYKKworICAgICAgICAqIHBsYXRmb3JtL3dpbi9jb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1y
ZXNpemUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vY29tcG9z
aXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vY29tcG9zaXRpbmcvaWZyYW1lcy9vdmVybGFwcGVk
LWlmcmFtZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorCiAyMDEwLTA1LTA3ICBEaXJrIFByYW5rZSAg
PGRwcmFua2VAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVs
LgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZy
YW1lLXJlc2l6ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luL2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29tcG9zaXRpbmcvaWZyYW1l
cy9pZnJhbWUtcmVzaXplLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMTgg
QEAKKworKEdyYXBoaWNzTGF5ZXIKKyAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgKGFuY2hvciAw
LjUwIDAuNTApCisgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgKG9wYWNpdHkgMS4wMCkKKyAg
KHVzaW5nVGlsZWRMYXllciAwKQorICAocHJlc2VydmVzM0QgMCkKKyAgKGRyYXdzQ29udGVudCAw
KQorICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgIChiYWNrZ3JvdW5kQ29sb3Igbm9u
ZSkKKyAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5
KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAocG9zaXRpb24gMC4w
MCAwLjAwKQorICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAoYm91bmRzIDgwMC4wMCA2
MDAuMDApCisgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQor
ICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAoYmFj
a2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisg
ICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50
aXR5KQorICAgICAgKGNoaWxkcmVuIDIKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAg
ICAgICAgIChib3VuZHMgMzcwLjAwIDIyMC4wMCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQor
ICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkK
KyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0
eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAo
dHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0
eSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAg
ICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAwIDM1LjAwKQorICAgICAgICAgICAgICAoYW5jaG9y
IDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMDAuMDAgMTUwLjAwKQorICAgICAg
ICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDAp
CisgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAoZHJhd3NDb250
ZW50IDApCisgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAg
ICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAodHJhbnNmb3Jt
IGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisg
ICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIK
KyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIC04MC4wMCkKKyAgICAgICAgICAgICAg
ICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAg
MjMwLjAwKQorICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAgICAg
ICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAw
KQorICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAwKQorICAgICAgICAgICAgICAgICAg
KGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAgKGJhY2tncm91
bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAg
ICAgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAg
ICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisg
ICAgICAgICAgICAgICAgICAgICAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAg
ICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgICAgICAoYm91bmRz
IDI4NS4wMCAyMzAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAg
ICAgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAg
ICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVu
dCAxKQorICAgICAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkK
KyAgICAgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAg
ICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAo
Y2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxk
cmVuIDEKKyAgICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIChwb3NpdGlvbiAxOC4wMCAxMC4wMCkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChi
b3VuZHMgMjEwLjAwIDIxMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wYWNpdHkg
MS4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFj
a2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChiYWNr
Z3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHRyYW5zZm9ybSBp
ZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlk
ZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAg
ICkKKyAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgKQorICAgICAgICAg
ICAgICAgICkKKyAgICAgICAgICAgICAgKQorICAgICAgICAgICAgKQorICAgICAgICAgICkKKyAg
ICAgICAgKQorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3NpdGlvbiA1LjAw
IDUuMDApCisgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgKGJvdW5kcyA1
MC4wMCA1MC4wMCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1Rp
bGVkTGF5ZXIgMCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3ND
b250ZW50IDEpCisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAg
ICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5
KQorICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgKQorICAg
ICAgKQorICAgICkKKyAgKQorKQorCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29t
cG9zaXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9jb21wb3NpdGluZy9pZnJhbWVz
L2xlYXZlLWNvbXBvc2l0aW5nLWlmcmFtZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29tcG9zaXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3Np
dGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExOCBAQAor
CisoR3JhcGhpY3NMYXllcgorICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAoYW5jaG9yIDAuNTAg
MC41MCkKKyAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAob3BhY2l0eSAxLjAwKQorICAodXNp
bmdUaWxlZExheWVyIDApCisgIChwcmVzZXJ2ZXMzRCAwKQorICAoZHJhd3NDb250ZW50IDApCisg
IChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgKGJhY2tncm91bmRDb2xvciBub25lKQor
ICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisg
IChjaGlsZHJlbiAxCisgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgIChwb3NpdGlvbiAwLjAwIDAu
MDApCisgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgIChib3VuZHMgODAwLjAwIDYwMC4w
MCkKKyAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAg
ICAocHJlc2VydmVzM0QgMCkKKyAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgIChiYWNrZmFj
ZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAg
ICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkp
CisgICAgICAoY2hpbGRyZW4gMgorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChw
b3NpdGlvbiA4LjAwIDguMDApCisgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAg
ICAgKGJvdW5kcyAzNzAuMDAgMjIwLjAwKQorICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAg
ICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAg
ICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZp
c2libGUpCisgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICh0cmFu
c2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQor
ICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAg
ICAgICAgICAocG9zaXRpb24gMzUuMDAgMzUuMDApCisgICAgICAgICAgICAgIChhbmNob3IgMC4w
MCAwLjAwKQorICAgICAgICAgICAgICAoYm91bmRzIDMwMC4wMCAxNTAuMDApCisgICAgICAgICAg
ICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAg
ICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQg
MCkKKyAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAg
ICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAg
ICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAg
ICAgICAgICAgICAgICAgKHBvc2l0aW9uIDAuMDAgLTgwLjAwKQorICAgICAgICAgICAgICAgICAg
KGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4wMCAyMzAu
MDApCisgICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAgICAg
KHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisg
ICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgICAgICAoYmFj
a2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENv
bG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAg
ICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAg
ICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAg
ICAgICAgICAgICAgICAgICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgICAgICAgICAgICAg
ICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMgMjg1
LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAg
ICAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAg
ICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDEp
CisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAg
ICAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAg
ICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgIChjaGls
ZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4g
MQorICAgICAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgKHBvc2l0aW9uIDE4LjAwIDEwLjAwKQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJvdW5k
cyAyMTAuMDAgMjEwLjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAw
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAg
ICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChiYWNrZmFj
ZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tncm91
bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50
aXR5KQorICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICAgKQor
ICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQorICAgICAg
ICApCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDUuMDAgNS4w
MCkKKyAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAoYm91bmRzIDUwLjAw
IDUwLjAwKQorICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgKHVzaW5nVGlsZWRM
YXllciAwKQorICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgIChkcmF3c0NvbnRl
bnQgMSkKKyAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAg
KGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisg
ICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICApCisgICAgICAp
CisgICAgKQorICApCispCisKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9jb21wb3Np
dGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29tcG9zaXRpbmcvaWZyYW1lcy9vdmVybGFwcGVk
LWlmcmFtZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vY29tcG9zaXRpbmcvaWZyYW1lcy9vdmVybGFwcGVkLWlmcmFtZS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTE4IEBACisKKyhHcmFwaGljc0xheWVyCisgIChwb3Np
dGlvbiAwLjAwIDAuMDApCisgIChhbmNob3IgMC41MCAwLjUwKQorICAoYm91bmRzIDgwMC4wMCA2
MDAuMDApCisgIChvcGFjaXR5IDEuMDApCisgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgKHByZXNl
cnZlczNEIDApCisgIChkcmF3c0NvbnRlbnQgMCkKKyAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNp
YmxlKQorICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisg
IChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxkcmVuIDEKKyAgICAoR3JhcGhp
Y3NMYXllcgorICAgICAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgICAgIChhbmNob3IgMC41MCAw
LjUwKQorICAgICAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAgICAgKG9wYWNpdHkgMS4wMCkK
KyAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAg
KGRyYXdzQ29udGVudCAwKQorICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAg
ICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAg
ICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgIChjaGlsZHJlbiAyCisgICAg
ICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgOC4wMCkKKyAgICAg
ICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAoYm91bmRzIDM3MC4wMCAyMjAuMDAp
CisgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDAp
CisgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQor
ICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dy
b3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAg
ICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgKGNoaWxkcmVuIDEKKyAg
ICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgIChwb3NpdGlvbiAzNS4wMCAz
NS4wMCkKKyAgICAgICAgICAgICAgKGFuY2hvciAwLjAwIDAuMDApCisgICAgICAgICAgICAgIChi
b3VuZHMgMzAwLjAwIDE1MC4wMCkKKyAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAg
ICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAocHJlc2VydmVzM0Qg
MCkKKyAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAwKQorICAgICAgICAgICAgICAoYmFja2Zh
Y2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9u
ZSkKKyAgICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgKGNo
aWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAg
ICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAocG9zaXRpb24g
MC4wMCAtODAuMDApCisgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAg
ICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgIChv
cGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAg
ICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0Nv
bnRlbnQgMCkKKyAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkK
KyAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAg
ICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFu
c2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAg
ICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlv
biAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisg
ICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAg
ICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGls
ZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAg
ICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAo
YmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tn
cm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQor
ICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAg
ICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMTgu
MDAgMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisgICAgICAg
ICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHByZXNl
cnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICkKKyAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5
ZXIKKyAgICAgICAgICAocG9zaXRpb24gNS4wMCA1LjAwKQorICAgICAgICAgIChhbmNob3IgMC41
MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgNTAuMDAgNTAuMDApCisgICAgICAgICAgKG9wYWNp
dHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNl
cnZlczNEIDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFj
ZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisg
ICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zv
cm0gaWRlbnRpdHkpCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwo=
</data>
<flag name="review"
          id="39826"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55601</attachid>
            <date>2010-05-10 14:08:47 -0700</date>
            <delta_ts>2010-05-10 22:23:30 -0700</delta_ts>
            <desc>Replace patch for Windows results</desc>
            <filename>38856-Windows-results.patch</filename>
            <type>text/plain</type>
            <size>14024</size>
            <attacher name="Chris Marrin">cmarrin</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDU5MDk0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMDUtMTAgIENocmlzIE1hcnJpbiAgPGNt
YXJyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEFkZCBXaW5kb3dzIHJlc3VsdHMgZm9yIG5ldyBjb21wb3NpdGVkIGlmcmFtZSB0
ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg4
NTYKKworICAgICAgICAqIHBsYXRmb3JtL3dpbi9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0
ZWQtcGFyZW50LWlmcmFtZS1leHBlY3RlZC50eHQKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vY29t
cG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtcmVzaXplLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogcGxhdGZvcm0vd2luL2NvbXBvc2l0aW5nL2lmcmFtZXMvbGVhdmUtY29tcG9zaXRpbmct
aWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vd2luL2NvbXBv
c2l0aW5nL2lmcmFtZXMvb3ZlcmxhcHBlZC1pZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwog
MjAxMC0wNS0wNyAgRGlyayBQcmFua2UgIDxkcHJhbmtlQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3dp
bi9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0ZWQtcGFyZW50LWlmcmFtZS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2NvbXBvc2l0aW5nL2lm
cmFtZXMvY29tcG9zaXRlZC1wYXJlbnQtaWZyYW1lLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNTkw
ODcpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29tcG9zaXRpbmcvaWZyYW1lcy9jb21w
b3NpdGVkLXBhcmVudC1pZnJhbWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC00MCw3
ICs0MCw3IEBACiAgICAgICAgICAgKGNoaWxkcmVuIDEKICAgICAgICAgICAgIChHcmFwaGljc0xh
eWVyCiAgICAgICAgICAgICAgIChwb3NpdGlvbiAzNS4wMCAzNS4wMCkKLSAgICAgICAgICAgICAg
KGFuY2hvciAwLjAwIDAuMDApCisgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQogICAg
ICAgICAgICAgICAoYm91bmRzIDMwMC4wMCAxNTAuMDApCiAgICAgICAgICAgICAgIChvcGFjaXR5
IDEuMDApCiAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKQEAgLTUyLDcgKzUyLDcg
QEAKICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQogICAgICAgICAg
ICAgICAoY2hpbGRyZW4gMQogICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCi0gICAgICAg
ICAgICAgICAgICAocG9zaXRpb24gMC4wMCAtODAuMDApCisgICAgICAgICAgICAgICAgICAocG9z
aXRpb24gMC4wMCAwLjAwKQogICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCiAg
ICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4wMCAyMzAuMDApCiAgICAgICAgICAgICAgICAg
ICAob3BhY2l0eSAxLjAwKQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2NvbXBvc2l0
aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29t
cG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtcmVzaXplLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwxMTggQEAKKworKEdyYXBoaWNzTGF5ZXIKKyAgKHBvc2l0aW9uIDAuMDAgMC4w
MCkKKyAgKGFuY2hvciAwLjUwIDAuNTApCisgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgKG9w
YWNpdHkgMS4wMCkKKyAgKHVzaW5nVGlsZWRMYXllciAwKQorICAocHJlc2VydmVzM0QgMCkKKyAg
KGRyYXdzQ29udGVudCAwKQorICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgIChiYWNr
Z3JvdW5kQ29sb3Igbm9uZSkKKyAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxkcmVuVHJh
bnNmb3JtIGlkZW50aXR5KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAg
ICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAo
Ym91bmRzIDgwMC4wMCA2MDAuMDApCisgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgKHVzaW5n
VGlsZWRMYXllciAwKQorICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAoZHJhd3NDb250ZW50
IDApCisgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAoYmFja2dyb3Vu
ZENvbG9yIG5vbmUpCisgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVu
VHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuIDIKKyAgICAgICAgKEdyYXBoaWNz
TGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAgICAgICAgIChhbmNob3Ig
MC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgMzcwLjAwIDIyMC4wMCkKKyAgICAgICAgICAo
b3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAo
cHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGJh
Y2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9u
ZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgIChjaGlsZHJlblRy
YW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgKEdy
YXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAwIDM1LjAwKQorICAgICAg
ICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMDAuMDAg
MTUwLjAwKQorICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAodXNp
bmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAg
ICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkg
dmlzaWJsZSkKKyAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAg
ICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zv
cm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAg
KEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisg
ICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgIChi
b3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisg
ICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAo
cHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAg
ICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAg
ICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0g
aWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkp
CisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgICAgICAoR3Jh
cGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisg
ICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAg
ICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAgICAgICAgICAgIChvcGFj
aXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAg
ICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAgICAg
IChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmls
aXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25l
KQorICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAg
ICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAg
ICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXll
cgorICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMTguMDAgMTAuMDApCisgICAg
ICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAg
ICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICh1c2luZ1RpbGVk
TGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAg
ICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJl
blRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAg
ICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAg
ICkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAg
ICAgICAgICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAo
cG9zaXRpb24gNS4wMCA1LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAg
ICAgIChib3VuZHMgNTAuMDAgNTAuMDApCisgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAg
ICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAg
ICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlz
aWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgKHRyYW5z
Zm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisg
ICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luL2NvbXBvc2l0aW5nL2lmcmFtZXMvbGVhdmUtY29tcG9zaXRpbmctaWZyYW1lLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vY29tcG9z
aXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2NvbXBvc2l0aW5nL2lmcmFtZXMv
bGVhdmUtY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwxMTggQEAKKworKEdyYXBoaWNzTGF5ZXIKKyAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAg
KGFuY2hvciAwLjUwIDAuNTApCisgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgKG9wYWNpdHkg
MS4wMCkKKyAgKHVzaW5nVGlsZWRMYXllciAwKQorICAocHJlc2VydmVzM0QgMCkKKyAgKGRyYXdz
Q29udGVudCAwKQorICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgIChiYWNrZ3JvdW5k
Q29sb3Igbm9uZSkKKyAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxkcmVuVHJhbnNmb3Jt
IGlkZW50aXR5KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAocG9z
aXRpb24gMC4wMCAwLjAwKQorICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAoYm91bmRz
IDgwMC4wMCA2MDAuMDApCisgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgKHVzaW5nVGlsZWRM
YXllciAwKQorICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAoZHJhd3NDb250ZW50IDApCisg
ICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAoYmFja2dyb3VuZENvbG9y
IG5vbmUpCisgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuVHJhbnNm
b3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuIDIKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIK
KyAgICAgICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAw
LjUwKQorICAgICAgICAgIChib3VuZHMgMzcwLjAwIDIyMC4wMCkKKyAgICAgICAgICAob3BhY2l0
eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAocHJlc2Vy
dmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGJhY2tmYWNl
VmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAg
ICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9y
bSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgKEdyYXBoaWNz
TGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAwIDM1LjAwKQorICAgICAgICAgICAg
ICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMDAuMDAgMTUwLjAw
KQorICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAodXNpbmdUaWxl
ZExheWVyIDApCisgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAo
ZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJs
ZSkKKyAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAo
dHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgKEdyYXBo
aWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAg
ICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgIChib3VuZHMg
Mjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAg
ICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAocHJlc2Vy
dmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgICAgICAg
ICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgIChi
YWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAg
ICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NM
YXllcgorICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAg
ICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAgICAg
KGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEu
MDApCisgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAg
ICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAgICAgIChkcmF3
c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZp
c2libGUpCisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAg
ICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAg
ICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAg
IChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMTguMDAgMTAuMDApCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChv
cGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIg
MCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICh0cmFu
c2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5z
Zm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAg
ICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAg
ICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRp
b24gNS4wMCA1LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChi
b3VuZHMgNTAuMDAgNTAuMDApCisgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAo
dXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAg
KGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkK
KyAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgKHRyYW5zZm9ybSBp
ZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAg
ICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL2NvbXBvc2l0aW5nL2lmcmFtZXMvb3ZlcmxhcHBlZC1pZnJhbWUtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9jb21wb3NpdGluZy9pZnJhbWVz
L292ZXJsYXBwZWQtaWZyYW1lLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9jb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMTggQEAKKworKEdyYXBoaWNzTGF5
ZXIKKyAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgKGFuY2hvciAwLjUwIDAuNTApCisgIChib3Vu
ZHMgODAwLjAwIDYwMC4wMCkKKyAgKG9wYWNpdHkgMS4wMCkKKyAgKHVzaW5nVGlsZWRMYXllciAw
KQorICAocHJlc2VydmVzM0QgMCkKKyAgKGRyYXdzQ29udGVudCAwKQorICAoYmFja2ZhY2VWaXNp
YmlsaXR5IHZpc2libGUpCisgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgKHRyYW5zZm9ybSBp
ZGVudGl0eSkKKyAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAoY2hpbGRyZW4gMQor
ICAgIChHcmFwaGljc0xheWVyCisgICAgICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgKGFu
Y2hvciAwLjUwIDAuNTApCisgICAgICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgICAgICAob3Bh
Y2l0eSAxLjAwKQorICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgKHByZXNlcnZlczNE
IDApCisgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZp
c2libGUpCisgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAodHJhbnNmb3JtIGlk
ZW50aXR5KQorICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxk
cmVuIDIKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCA4
LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgMzcw
LjAwIDIyMC4wMCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1Rp
bGVkTGF5ZXIgMCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3ND
b250ZW50IDEpCisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAg
ICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5
KQorICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hp
bGRyZW4gMQorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0
aW9uIDM1LjAwIDM1LjAwKQorICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAg
ICAgICAgICAgKGJvdW5kcyAzMDAuMDAgMTUwLjAwKQorICAgICAgICAgICAgICAob3BhY2l0eSAx
LjAwKQorICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgIChw
cmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAg
ICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgKGJhY2tncm91
bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAg
ICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgIChjaGls
ZHJlbiAxCisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAg
IChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41
MCkKKyAgICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAg
ICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVy
IDApCisgICAgICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAg
IChkcmF3c0NvbnRlbnQgMCkKKyAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkg
dmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAg
ICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hp
bGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQor
ICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAg
IChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUw
IDAuNTApCisgICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAg
ICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAg
KHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAw
KQorICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAg
ICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAg
ICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zv
cm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlk
ZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAg
ICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAocG9z
aXRpb24gMTguMDAgMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41
MCAwLjUwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDAp
CisgICAgICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRl
bnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNp
YmxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAg
ICAgICkKKyAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAg
ICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICAgKEdy
YXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gNS4wMCA1LjAwKQorICAgICAgICAgIChh
bmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgNTAuMDAgNTAuMDApCisgICAgICAg
ICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAg
ICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAg
IChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9y
IG5vbmUpCisgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRy
ZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykK
Kwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55603</attachid>
            <date>2010-05-10 14:25:13 -0700</date>
            <delta_ts>2010-05-10 22:33:46 -0700</delta_ts>
            <desc>Patch to have RenderLayerCompositor track the type of attachment for the root layer.</desc>
            <filename>layer_attachment.txt</filename>
            <type>text/plain</type>
            <size>12218</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTI1YjcwZi4uYTZlNTgwNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTQsNiArNCwzNSBAQAogCiAgICAgICAgIEFsbG93IGNvbXBvc2l0
aW5nIGxheWVycyB0byBiZSBjb25uZWN0ZWQgYWNyb3NzIGlmcmFtZSBib3VuZGFyaWVzIG9uIE1h
YwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg4NTYK
KyAgICAgICAgCisgICAgICAgIFVzZSBhbiBlbnVtIGZvciB0aGUgdHlwZSBvZiByb290IGxheWVy
IGF0dGFjaG1lbnQgb24gYSBSZW5kZXJMYXllckNvbXBvc2l0b3IsIHNvIHdlIGNhbgorICAgICAg
ICBkZXRlcm1pbmUgaWYgdGhlIGF0dGFjaGVtbnQgaXMgdmlhIHRoZSBDaG9tZUNsaWVudCwgdmlh
IGFuIGVuY2xvc2luZyBpZnJhbWUsIG9yIHVuYXR0YWNoZWQuCisKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmg6IE5ldyBSb290TGF5ZXJBdHRhY2htZW50IGVudW0u
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJvb3RMYXllckF0dGFj
aG1lbnQpOiBnZXR0ZXIgZm9yIHRoZSBjdXJyZW50IGF0dGFjaG1lbnQuCisKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyQ29tcG9zaXRvcjo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yKTogSW5pdCBtX3Jvb3RM
YXllckF0dGFjaG1lbnQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6
On5SZW5kZXJMYXllckNvbXBvc2l0b3IpOiBBc3NlcnQgdGhhdCBpcyB1bmF0dGFjaGVkLgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xh
eWVycyk6IENhbGwgZGVzdHJveVJvb3RQbGF0Zm9ybUxheWVyIGluc3RlYWQgb2Ygd2lsbE1vdmVP
ZmZzY3JlZW4sCisgICAgICAgIHdoZW4gdGhlcmUgYXJlIG5vIGxheWVycyBsZWZ0LiBBbHNvIGNs
ZWFyIG91dCB0aGUgY2xpcHBpbmcgbGF5ZXIuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXll
ckNvbXBvc2l0b3I6OmRpZE1vdmVPbnNjcmVlbik6IENhbGwgYXR0YWNoUm9vdFBsYXRmb3JtTGF5
ZXIuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OndpbGxNb3ZlT2Zm
c2NyZWVuKTogQ2FsbCBlbnN1cmVSb290UGxhdGZvcm1MYXllciB3aXRoIHRoZSBhcHByb3ByaWF0
ZSBhdHRhY2htZW50LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpl
bnN1cmVSb290UGxhdGZvcm1MYXllcik6IE9ubHkgY3JlYXRlIHRoZSBtX3Jvb3RQbGF0Zm9ybUxh
eWVyIGlmIHdlIGRvbid0IGhhdmUgb25lCisgICAgICAgICAgIGFscmVhZHksIGJ1dCBiZSBzdXJl
IHRvIGFsd2F5cyBzZXQgdGhlIHJvb3QgbGF5ZXIgZ2VvbWV0cnkgb3JpZW50YXRpb24uIEFsc28g
b25seSBjcmVhdGUgdGhlCisgICAgICAgICAgIG1fY2xpcHBpbmdMYXllciBpZiB3ZSBuZWVkIHRv
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpkZXN0cm95Um9vdFBs
YXRmb3JtTGF5ZXIpOiBDYWxsIGRldGFjaFJvb3RQbGF0Zm9ybUxheWVyKCkuCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmF0dGFjaFJvb3RQbGF0Zm9ybUxheWVyKTog
Q29kZSBtb3ZlZCBmcm9tIGRpZE1vdmVPbnNjcmVlbiwgYnV0IHN3aXRjaGluZyBvbgorICAgICAg
ICAgICAgYXR0YWNobWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRv
cjo6ZGV0YWNoUm9vdFBsYXRmb3JtTGF5ZXIpOiBDb2RlIG1vdmVkIGZyb20gd2lsbE1vdmVPZmZz
Y3JlZW4sIGJ1dCBzd2l0Y2hpbmcgb24KKyAgICAgICAgICAgIGF0dGFjaG1lbnQuCisKKzIwMTAt
MDUtMTAgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxsb3cgY29tcG9zaXRpbmcg
bGF5ZXJzIHRvIGJlIGNvbm5lY3RlZCBhY3Jvc3MgaWZyYW1lIGJvdW5kYXJpZXMgb24gTWFjCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODg1NgogCiAg
ICAgICAgIENsZWFuIHVwIHRoZSBnZW9tZXRyeSBsb2dpYyB3aGVuIHByb3BhZ2F0aW5nIGNvbXBv
c2l0aW5nIG91dCBvZiBpZnJhbWVzLgogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJD
b21wb3NpdG9yLmNwcAppbmRleCA3ZDEwODg0Li4zNjRhN2YyIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCisrKyBiL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKQEAgLTkzLDggKzkzLDggQEAgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yOjpSZW5kZXJMYXllckNvbXBvc2l0b3IoUmVuZGVyVmlldyogcmVuZGVyVmll
dykKICAgICAsIG1fc2hvd1JlcGFpbnRDb3VudGVyKGZhbHNlKQogICAgICwgbV9jb21wb3NpdGlu
Z0NvbnN1bHRzT3ZlcmxhcCh0cnVlKQogICAgICwgbV9jb21wb3NpdGluZyhmYWxzZSkKLSAgICAs
IG1fcm9vdExheWVyQXR0YWNoZWQoZmFsc2UpCiAgICAgLCBtX2NvbXBvc2l0aW5nTGF5ZXJzTmVl
ZFJlYnVpbGQoZmFsc2UpCisgICAgLCBtX3Jvb3RMYXllckF0dGFjaG1lbnQoUm9vdExheWVyVW5h
dHRhY2hlZCkKICNpZiBQUk9GSUxFX0xBWUVSX1JFQlVJTEQKICAgICAsIG1fcm9vdExheWVyVXBk
YXRlQ291bnQoMCkKICNlbmRpZiAvLyBQUk9GSUxFX0xBWUVSX1JFQlVJTEQKQEAgLTEwMyw3ICsx
MDMsNyBAQCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OlJlbmRlckxheWVyQ29tcG9zaXRvcihSZW5k
ZXJWaWV3KiByZW5kZXJWaWV3KQogCiBSZW5kZXJMYXllckNvbXBvc2l0b3I6On5SZW5kZXJMYXll
ckNvbXBvc2l0b3IoKQogewotICAgIEFTU0VSVCghbV9yb290TGF5ZXJBdHRhY2hlZCk7CisgICAg
QVNTRVJUKG1fcm9vdExheWVyQXR0YWNobWVudCA9PSBSb290TGF5ZXJVbmF0dGFjaGVkKTsKIH0K
IAogdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmVuYWJsZUNvbXBvc2l0aW5nTW9kZShib29s
IGVuYWJsZSAvKiA9IHRydWUgKi8pCkBAIC0yMzIsNyArMjMyLDExIEBAIHZvaWQgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVycyhDb21wb3NpdGluZ1VwZGF0ZVR5
cGUgdXBkYXRlCiAgICAgICAgIC8vIEhvc3QgdGhlIGRvY3VtZW50IGxheWVyIGluIHRoZSBSZW5k
ZXJWaWV3J3Mgcm9vdCBsYXllci4KICAgICAgICAgaWYgKHVwZGF0ZVJvb3QgPT0gcm9vdFJlbmRl
ckxheWVyKCkpIHsKICAgICAgICAgICAgIGlmIChjaGlsZExpc3QuaXNFbXB0eSgpKSB7Ci0gICAg
ICAgICAgICAgICAgd2lsbE1vdmVPZmZzY3JlZW4oKTsKKyAgICAgICAgICAgICAgICBkZXRhY2hS
b290UGxhdGZvcm1MYXllcigpOworICAgICAgICAgICAgICAgIGlmIChtX2NsaXBwaW5nTGF5ZXIp
IHsKKyAgICAgICAgICAgICAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5yZW1vdmVBbGxDaGlsZHJl
bigpOworICAgICAgICAgICAgICAgICAgICBtX2NsaXBwaW5nTGF5ZXIgPSAwOworICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgICAgICBtX3Jvb3RQbGF0Zm9ybUxheWVyID0gMDsKICAgICAg
ICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgIG1fcm9vdFBsYXRmb3JtTGF5ZXItPnNldENo
aWxkcmVuKGNoaWxkTGlzdCk7CkBAIC05NDksNTQgKzk1MywxMyBAQCBHcmFwaGljc0xheWVyKiBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OnJvb3RQbGF0Zm9ybUxheWVyKCkgY29uc3QKIAogdm9pZCBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OmRpZE1vdmVPbnNjcmVlbigpCiB7Ci0gICAgaWYgKCFtX3Jv
b3RQbGF0Zm9ybUxheWVyKQotICAgICAgICByZXR1cm47Ci0KLSAgICBib29sIGF0dGFjaGVkID0g
ZmFsc2U7Ci0gICAgaWYgKHNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9JRnJhbWVQYXJlbnQo
KSkgewotICAgICAgICBpZiAoRWxlbWVudCogb3duZXJFbGVtZW50ID0gZW5jbG9zaW5nSUZyYW1l
RWxlbWVudCgpKSB7Ci0gICAgICAgICAgICAvLyBUaGUgbGF5ZXIgd2lsbCBnZXQgaG9va2VkIHVw
IHZpYSBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUdyYXBoaWNzTGF5ZXJDb25maWd1cmF0aW9u
KCkKLSAgICAgICAgICAgIC8vIGZvciB0aGUgaWZyYW1lJ3MgcmVuZGVyZXIgaW4gdGhlIHBhcmVu
dCBkb2N1bWVudC4KLSAgICAgICAgICAgIG93bmVyRWxlbWVudC0+c2V0TmVlZHNTdHlsZVJlY2Fs
YyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7Ci0gICAgICAgICAgICBhdHRhY2hlZCA9IHRydWU7Ci0g
ICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoIWF0dGFjaGVkKSB7Ci0gICAgICAgIEZyYW1lKiBm
cmFtZSA9IG1fcmVuZGVyVmlldy0+ZnJhbWVWaWV3KCktPmZyYW1lKCk7Ci0gICAgICAgIFBhZ2Uq
IHBhZ2UgPSBmcmFtZSA/IGZyYW1lLT5wYWdlKCkgOiAwOwotICAgICAgICBpZiAoIXBhZ2UpCi0g
ICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgcGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5h
dHRhY2hSb290R3JhcGhpY3NMYXllcihmcmFtZSwgbV9yb290UGxhdGZvcm1MYXllci5nZXQoKSk7
Ci0gICAgfQotICAgIG1fcm9vdExheWVyQXR0YWNoZWQgPSB0cnVlOyAgICAKKyAgICBSb290TGF5
ZXJBdHRhY2htZW50IGF0dGFjaG1lbnQgPSBzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1RvSUZy
YW1lUGFyZW50KCkgPyBSb290TGF5ZXJBdHRhY2hlZFZpYUVuY2xvc2luZ0lmcmFtZSA6IFJvb3RM
YXllckF0dGFjaGVkVmlhQ2hyb21lQ2xpZW50OworICAgIGF0dGFjaFJvb3RQbGF0Zm9ybUxheWVy
KGF0dGFjaG1lbnQpOwogfQogCiB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6d2lsbE1vdmVP
ZmZzY3JlZW4oKQogewotICAgIGlmICghbV9yb290UGxhdGZvcm1MYXllciB8fCAhbV9yb290TGF5
ZXJBdHRhY2hlZCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgYm9vbCBkZXRhY2hlZCA9IGZhbHNl
OwotICAgIGlmIChzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1RvSUZyYW1lUGFyZW50KCkpIHsK
LSAgICAgICAgaWYgKEVsZW1lbnQqIG93bmVyRWxlbWVudCA9IGVuY2xvc2luZ0lGcmFtZUVsZW1l
bnQoKSkgewotICAgICAgICAgICAgLy8gVGhlIGxheWVyIHdpbGwgZ2V0IGhvb2tlZCB1cCB2aWEg
UmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGljc0xheWVyQ29uZmlndXJhdGlvbigpCi0g
ICAgICAgICAgICAvLyBmb3IgdGhlIGlmcmFtZSdzIHJlbmRlcmVyIGluIHRoZSBwYXJlbnQgZG9j
dW1lbnQuCi0gICAgICAgICAgICBvd25lckVsZW1lbnQtPnNldE5lZWRzU3R5bGVSZWNhbGMoU3lu
dGhldGljU3R5bGVDaGFuZ2UpOwotICAgICAgICAgICAgZGV0YWNoZWQgPSB0cnVlOwotICAgICAg
ICB9Ci0gICAgfQotCi0gICAgaWYgKCFkZXRhY2hlZCkgewotICAgICAgICBGcmFtZSogZnJhbWUg
PSBtX3JlbmRlclZpZXctPmZyYW1lVmlldygpLT5mcmFtZSgpOwotICAgICAgICBQYWdlKiBwYWdl
ID0gZnJhbWUgPyBmcmFtZS0+cGFnZSgpIDogMDsKLSAgICAgICAgaWYgKCFwYWdlKQotICAgICAg
ICAgICAgcmV0dXJuOwotCi0gICAgICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+YXR0YWNo
Um9vdEdyYXBoaWNzTGF5ZXIoZnJhbWUsIDApOwotICAgIH0KLSAgICBtX3Jvb3RMYXllckF0dGFj
aGVkID0gZmFsc2U7CisgICAgZGV0YWNoUm9vdFBsYXRmb3JtTGF5ZXIoKTsKIH0KIAogdm9pZCBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZVJvb3RMYXllclBvc2l0aW9uKCkKQEAgLTEyMDMs
MjUgKzExNjYsMjYgQEAgYm9vbCBSZW5kZXJMYXllckNvbXBvc2l0b3I6Om5lZWRzQ29udGVudHND
b21wb3NpdGluZ0xheWVyKGNvbnN0IFJlbmRlckxheWVyKiBsYXkKIAogdm9pZCBSZW5kZXJMYXll
ckNvbXBvc2l0b3I6OmVuc3VyZVJvb3RQbGF0Zm9ybUxheWVyKCkKIHsKLSAgICBpZiAobV9yb290
UGxhdGZvcm1MYXllcikKLSAgICAgICAgcmV0dXJuOworICAgIFJvb3RMYXllckF0dGFjaG1lbnQg
ZXhwZWN0ZWRBdHRhY2htZW50ID0gKHNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9JRnJhbWVQ
YXJlbnQoKSAmJiBlbmNsb3NpbmdJRnJhbWVFbGVtZW50KCkpID8gUm9vdExheWVyQXR0YWNoZWRW
aWFFbmNsb3NpbmdJZnJhbWUgOiBSb290TGF5ZXJBdHRhY2hlZFZpYUNocm9tZUNsaWVudDsKKyAg
ICBpZiAoZXhwZWN0ZWRBdHRhY2htZW50ID09IG1fcm9vdExheWVyQXR0YWNobWVudCkKKyAgICAg
ICAgIHJldHVybjsKIAotICAgIGJvb2wgaXNIb3N0ZWRJbklGcmFtZSA9IHNob3VsZFByb3BhZ2F0
ZUNvbXBvc2l0aW5nVG9JRnJhbWVQYXJlbnQoKSAmJiBlbmNsb3NpbmdJRnJhbWVFbGVtZW50KCk7
Ci0gICAgCi0gICAgbV9yb290UGxhdGZvcm1MYXllciA9IEdyYXBoaWNzTGF5ZXI6OmNyZWF0ZSgw
KTsKKyAgICBpZiAoIW1fcm9vdFBsYXRmb3JtTGF5ZXIpIHsKKyAgICAgICAgbV9yb290UGxhdGZv
cm1MYXllciA9IEdyYXBoaWNzTGF5ZXI6OmNyZWF0ZSgwKTsKICNpZm5kZWYgTkRFQlVHCi0gICAg
bV9yb290UGxhdGZvcm1MYXllci0+c2V0TmFtZSgiUm9vdCBwbGF0Zm9ybSIpOworICAgICAgICBt
X3Jvb3RQbGF0Zm9ybUxheWVyLT5zZXROYW1lKCJSb290IHBsYXRmb3JtIik7CiAjZW5kaWYKLSAg
ICBtX3Jvb3RQbGF0Zm9ybUxheWVyLT5zZXRTaXplKEZsb2F0U2l6ZShtX3JlbmRlclZpZXctPnJp
Z2h0TGF5b3V0T3ZlcmZsb3coKSwgbV9yZW5kZXJWaWV3LT5ib3R0b21MYXlvdXRPdmVyZmxvdygp
KSk7Ci0gICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0UG9zaXRpb24oRmxvYXRQb2ludCgpKTsK
KyAgICAgICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0U2l6ZShGbG9hdFNpemUobV9yZW5kZXJW
aWV3LT5yaWdodExheW91dE92ZXJmbG93KCksIG1fcmVuZGVyVmlldy0+Ym90dG9tTGF5b3V0T3Zl
cmZsb3coKSkpOworICAgICAgICBtX3Jvb3RQbGF0Zm9ybUxheWVyLT5zZXRQb3NpdGlvbihGbG9h
dFBvaW50KCkpOwogCi0gICAgLy8gVGhlIHJvb3QgbGF5ZXIgZG9lcyBmbGlwcGluZyBpZiB3ZSBu
ZWVkIGl0IG9uIHRoaXMgcGxhdGZvcm0uCi0gICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0R2Vv
bWV0cnlPcmllbnRhdGlvbihpc0hvc3RlZEluSUZyYW1lID8gR3JhcGhpY3NMYXllcjo6Q29tcG9z
aXRpbmdDb29yZGluYXRlc1RvcERvd24gOiBHcmFwaGljc0xheWVyOjpjb21wb3NpdGluZ0Nvb3Jk
aW5hdGVzT3JpZW50YXRpb24oKSk7CisgICAgICAgIC8vIE5lZWQgdG8gY2xpcCB0byBwcmV2ZW50
IHRyYW5zZm9ybWVkIGNvbnRlbnQgc2hvd2luZyBvdXRzaWRlIHRoaXMgZnJhbWUKKyAgICAgICAg
bV9yb290UGxhdGZvcm1MYXllci0+c2V0TWFza3NUb0JvdW5kcyh0cnVlKTsKKyAgICB9CiAKLSAg
ICAvLyBOZWVkIHRvIGNsaXAgdG8gcHJldmVudCB0cmFuc2Zvcm1lZCBjb250ZW50IHNob3dpbmcg
b3V0c2lkZSB0aGlzIGZyYW1lCi0gICAgbV9yb290UGxhdGZvcm1MYXllci0+c2V0TWFza3NUb0Jv
dW5kcyh0cnVlKTsKKyAgICAvLyBUaGUgcm9vdCBsYXllciBkb2VzIGZsaXBwaW5nIGlmIHdlIG5l
ZWQgaXQgb24gdGhpcyBwbGF0Zm9ybS4KKyAgICBtX3Jvb3RQbGF0Zm9ybUxheWVyLT5zZXRHZW9t
ZXRyeU9yaWVudGF0aW9uKGV4cGVjdGVkQXR0YWNobWVudCA9PSBSb290TGF5ZXJBdHRhY2hlZFZp
YUVuY2xvc2luZ0lmcmFtZSA/IEdyYXBoaWNzTGF5ZXI6OkNvbXBvc2l0aW5nQ29vcmRpbmF0ZXNU
b3BEb3duIDogR3JhcGhpY3NMYXllcjo6Y29tcG9zaXRpbmdDb29yZGluYXRlc09yaWVudGF0aW9u
KCkpOwogICAgIAotICAgIGlmIChpc0hvc3RlZEluSUZyYW1lKSB7CisgICAgaWYgKGV4cGVjdGVk
QXR0YWNobWVudCA9PSBSb290TGF5ZXJBdHRhY2hlZFZpYUVuY2xvc2luZ0lmcmFtZSAmJiAhbV9j
bGlwcGluZ0xheWVyKSB7CiAgICAgICAgIC8vIENyZWF0ZSBhIGNsaXBwaW5nIGxheWVyIGlmIHRo
aXMgaXMgYW4gaWZyYW1lCiAgICAgICAgIG1fY2xpcHBpbmdMYXllciA9IEdyYXBoaWNzTGF5ZXI6
OmNyZWF0ZSgwKTsKICNpZm5kZWYgTkRFQlVHCkBAIC0xMjMxLDcgKzExOTUsNyBAQCB2b2lkIFJl
bmRlckxheWVyQ29tcG9zaXRvcjo6ZW5zdXJlUm9vdFBsYXRmb3JtTGF5ZXIoKQogICAgICAgICBt
X2NsaXBwaW5nTGF5ZXItPmFkZENoaWxkKG1fcm9vdFBsYXRmb3JtTGF5ZXIuZ2V0KCkpOwogICAg
IH0KIAotICAgIGRpZE1vdmVPbnNjcmVlbigpOworICAgIGF0dGFjaFJvb3RQbGF0Zm9ybUxheWVy
KGV4cGVjdGVkQXR0YWNobWVudCk7CiB9CiAKIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpk
ZXN0cm95Um9vdFBsYXRmb3JtTGF5ZXIoKQpAQCAtMTIzOSwxMCArMTIwMyw2NyBAQCB2b2lkIFJl
bmRlckxheWVyQ29tcG9zaXRvcjo6ZGVzdHJveVJvb3RQbGF0Zm9ybUxheWVyKCkKICAgICBpZiAo
IW1fcm9vdFBsYXRmb3JtTGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIHdpbGxNb3ZlT2Zm
c2NyZWVuKCk7CisgICAgZGV0YWNoUm9vdFBsYXRmb3JtTGF5ZXIoKTsKICAgICBtX3Jvb3RQbGF0
Zm9ybUxheWVyID0gMDsKIH0KIAordm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmF0dGFjaFJv
b3RQbGF0Zm9ybUxheWVyKFJvb3RMYXllckF0dGFjaG1lbnQgYXR0YWNobWVudCkKK3sKKyAgICBp
ZiAoIW1fcm9vdFBsYXRmb3JtTGF5ZXIpCisgICAgICAgIHJldHVybjsKKworICAgIHN3aXRjaCAo
YXR0YWNobWVudCkgeworICAgIGNhc2UgUm9vdExheWVyVW5hdHRhY2hlZDoKKyAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUm9vdExheWVyQXR0
YWNoZWRWaWFDaHJvbWVDbGllbnQ6IHsKKyAgICAgICAgICAgIEZyYW1lKiBmcmFtZSA9IG1fcmVu
ZGVyVmlldy0+ZnJhbWVWaWV3KCktPmZyYW1lKCk7CisgICAgICAgICAgICBQYWdlKiBwYWdlID0g
ZnJhbWUgPyBmcmFtZS0+cGFnZSgpIDogMDsKKyAgICAgICAgICAgIGlmICghcGFnZSkKKyAgICAg
ICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQo
KS0+YXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoZnJhbWUsIG1fcm9vdFBsYXRmb3JtTGF5ZXIuZ2V0
KCkpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICBjYXNlIFJvb3RMYXllckF0
dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1lOiB7CisgICAgICAgICAgICAvLyBUaGUgbGF5ZXIgd2ls
bCBnZXQgaG9va2VkIHVwIHZpYSBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUdyYXBoaWNzTGF5
ZXJDb25maWd1cmF0aW9uKCkKKyAgICAgICAgICAgIC8vIGZvciB0aGUgaWZyYW1lJ3MgcmVuZGVy
ZXIgaW4gdGhlIHBhcmVudCBkb2N1bWVudC4KKyAgICAgICAgICAgIG1fcmVuZGVyVmlldy0+ZG9j
dW1lbnQoKS0+b3duZXJFbGVtZW50KCktPnNldE5lZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5
bGVDaGFuZ2UpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgCisg
ICAgbV9yb290TGF5ZXJBdHRhY2htZW50ID0gYXR0YWNobWVudDsKK30KKwordm9pZCBSZW5kZXJM
YXllckNvbXBvc2l0b3I6OmRldGFjaFJvb3RQbGF0Zm9ybUxheWVyKCkKK3sKKyAgICBpZiAoIW1f
cm9vdFBsYXRmb3JtTGF5ZXIgfHwgbV9yb290TGF5ZXJBdHRhY2htZW50ID09IFJvb3RMYXllclVu
YXR0YWNoZWQpCisgICAgICAgIHJldHVybjsKKworICAgIHN3aXRjaCAobV9yb290TGF5ZXJBdHRh
Y2htZW50KSB7CisgICAgY2FzZSBSb290TGF5ZXJBdHRhY2hlZFZpYUVuY2xvc2luZ0lmcmFtZTog
eworICAgICAgICAgICAgLy8gVGhlIGxheWVyIHdpbGwgZ2V0IHVuaG9va2VkIHVwIHZpYSBSZW5k
ZXJMYXllckJhY2tpbmc6OnVwZGF0ZUdyYXBoaWNzTGF5ZXJDb25maWd1cmF0aW9uKCkKKyAgICAg
ICAgICAgIC8vIGZvciB0aGUgaWZyYW1lJ3MgcmVuZGVyZXIgaW4gdGhlIHBhcmVudCBkb2N1bWVu
dC4KKyAgICAgICAgICAgIG1fcmVuZGVyVmlldy0+ZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCkt
PnNldE5lZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIH0KKyAgICBjYXNlIFJvb3RMYXllckF0dGFjaGVkVmlhQ2hyb21lQ2xp
ZW50OiB7CisgICAgICAgICAgICBGcmFtZSogZnJhbWUgPSBtX3JlbmRlclZpZXctPmZyYW1lVmll
dygpLT5mcmFtZSgpOworICAgICAgICAgICAgUGFnZSogcGFnZSA9IGZyYW1lID8gZnJhbWUtPnBh
Z2UoKSA6IDA7CisgICAgICAgICAgICBpZiAoIXBhZ2UpCisgICAgICAgICAgICAgICAgcmV0dXJu
OworCisgICAgICAgICAgICBwYWdlLT5jaHJvbWUoKS0+Y2xpZW50KCktPmF0dGFjaFJvb3RHcmFw
aGljc0xheWVyKGZyYW1lLCAwKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICBjYXNl
IFJvb3RMYXllclVuYXR0YWNoZWQ6CisgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIG1fcm9v
dExheWVyQXR0YWNobWVudCA9IFJvb3RMYXllclVuYXR0YWNoZWQ7Cit9CisKIGJvb2wgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjpsYXllckhhczNEQ29udGVudChjb25zdCBSZW5kZXJMYXllciogbGF5
ZXIpIGNvbnN0CiB7CiAgICAgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlID0gbGF5ZXItPnJlbmRl
cmVyKCktPnN0eWxlKCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ckNvbXBvc2l0b3IuaCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5o
CmluZGV4IGUwNWZlMTMuLjRjY2I0ZDkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyQ29tcG9zaXRvci5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
Q29tcG9zaXRvci5oCkBAIC0xMjIsNiArMTIyLDE0IEBAIHB1YmxpYzoKICAgICBSZW5kZXJMYXll
ciogcm9vdFJlbmRlckxheWVyKCkgY29uc3Q7CiAgICAgR3JhcGhpY3NMYXllciogcm9vdFBsYXRm
b3JtTGF5ZXIoKSBjb25zdDsKIAorICAgIGVudW0gUm9vdExheWVyQXR0YWNobWVudCB7CisgICAg
ICAgIFJvb3RMYXllclVuYXR0YWNoZWQsCisgICAgICAgIFJvb3RMYXllckF0dGFjaGVkVmlhQ2hy
b21lQ2xpZW50LAorICAgICAgICBSb290TGF5ZXJBdHRhY2hlZFZpYUVuY2xvc2luZ0lmcmFtZQor
ICAgIH07CisKKyAgICBSb290TGF5ZXJBdHRhY2htZW50IHJvb3RMYXllckF0dGFjaG1lbnQoKSBj
b25zdCB7IHJldHVybiBtX3Jvb3RMYXllckF0dGFjaG1lbnQ7IH0KKwogICAgIHZvaWQgZGlkTW92
ZU9uc2NyZWVuKCk7CiAgICAgdm9pZCB3aWxsTW92ZU9mZnNjcmVlbigpOwogCkBAIC0xODIsNiAr
MTkwLDkgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgZW5zdXJlUm9vdFBsYXRmb3JtTGF5ZXIoKTsK
ICAgICB2b2lkIGRlc3Ryb3lSb290UGxhdGZvcm1MYXllcigpOworCisgICAgdm9pZCBhdHRhY2hS
b290UGxhdGZvcm1MYXllcihSb290TGF5ZXJBdHRhY2htZW50KTsKKyAgICB2b2lkIGRldGFjaFJv
b3RQbGF0Zm9ybUxheWVyKCk7CiAgICAgCiAgICAgLy8gV2hldGhlciBhIHJ1bm5pbmcgdHJhbnNp
dGlvbiBvciBhbmltYXRpb24gZW5mb3JjZXMgdGhlIG5lZWQgZm9yIGEgY29tcG9zaXRpbmcgbGF5
ZXIuCiAgICAgYm9vbCByZXF1aXJlc0NvbXBvc2l0aW5nRm9yQW5pbWF0aW9uKFJlbmRlck9iamVj
dCopIGNvbnN0OwpAQCAtMjAwLDggKzIxMSw5IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3Nob3dS
ZXBhaW50Q291bnRlcjsKICAgICBib29sIG1fY29tcG9zaXRpbmdDb25zdWx0c092ZXJsYXA7CiAg
ICAgYm9vbCBtX2NvbXBvc2l0aW5nOwotICAgIGJvb2wgbV9yb290TGF5ZXJBdHRhY2hlZDsKICAg
ICBib29sIG1fY29tcG9zaXRpbmdMYXllcnNOZWVkUmVidWlsZDsKKyAgICAKKyAgICBSb290TGF5
ZXJBdHRhY2htZW50IG1fcm9vdExheWVyQXR0YWNobWVudDsKIAogICAgIC8vIEVuY2xvc2luZyBj
bGlwcGluZyBsYXllciBmb3IgaWZyYW1lIGNvbnRlbnQKICAgICBPd25QdHI8R3JhcGhpY3NMYXll
cj4gbV9jbGlwcGluZ0xheWVyOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55616</attachid>
            <date>2010-05-10 16:03:57 -0700</date>
            <delta_ts>2010-05-10 22:35:02 -0700</delta_ts>
            <desc>Allow run-time switching of iframe propagation</desc>
            <filename>non-static-shouldPropagateCompositingToEnclosingIFrame.txt</filename>
            <type>text/plain</type>
            <size>8248</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YTZlNTgwNi4uNGU2ODUwOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTQsNiArNCwzNSBAQAogCiAgICAgICAgIEFsbG93IGNvbXBvc2l0
aW5nIGxheWVycyB0byBiZSBjb25uZWN0ZWQgYWNyb3NzIGlmcmFtZSBib3VuZGFyaWVzIG9uIE1h
YwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg4NTYK
KworICAgICAgICBSZW5hbWUgdGhlIHN0YXRpYyBzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1Rv
SUZyYW1lUGFyZW50KCkgdG8gc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0VuY2xvc2luZ0lG
cmFtZSgpLAorICAgICAgICB0byBwYXZlIHRoZSB3YXkgZm9yIHJ1bnRpbWUgc3dpdGNoZXMgaW4g
dGhlIHByb3BhZ2F0aW9uIGJlaGF2aW9yLiBXZSBoYXZlIHRvIG1ha2Ugc3VyZSB3ZSBjYWxsIGl0
IG9uCisgICAgICAgIHRoZSBjb3JyZWN0IFJlbmRlckxheWVyQ29tcG9zaXRvciAodGhhdCBiZWxv
bmdpbmcgdG8gdGhlIGlmcmFtZSdzIGNvbnRlbnQgZG9jdW1lbnQpLgorICAgICAgICAKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyQmFja2luZzo6cGFpbnRpbmdHb2VzVG9XaW5kb3cpOiBOb3cgdGhhdCB3ZSBr
bm93IHRoZSByb290IGxheWVyIGF0dGFjaG1lbnQsIHdlCisgICAgICAgIGNhbiBzaW1wbGlmeSB0
aGlzIG1ldGhvZC4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3Iu
aDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZW5hYmxlQ29tcG9zaXRpbmdNb2Rl
KTogTm8gbmVlZCBmb3IgdGhlIHNldE5lZWRzU3R5bGVSZWNhbGMoKQorICAgICAgICBoZXJlLCBi
ZWNhdXNlIHRoZSBlbnN1cmVSb290UGxhdGZvcm1MYXllcigpIG9yIGRlc3Ryb3lSb290UGxhdGZv
cm1MYXllcigpIHdpbGwgaGF2ZSBhbHJlYWR5IGRvbmUgaXQuCisKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVidWlsZENvbXBvc2l0aW5nTGF5ZXJUcmVlKTogVXNl
IHRoZSByb290IGxheWVyIGF0dGFjaG1lbnQgdG8gZGV0ZXJtaW5lCisgICAgICAgIHdoZXRoZXIg
dG8gcGFyZW50IHRoZSBpZnJhbWUncyBsYXllcnMuCisgICAgICAgIAorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpkaWRNb3ZlT25zY3JlZW4pOiBNZXRob2QgbmFtZSBj
aGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNob3VsZFBy
b3BhZ2F0ZUNvbXBvc2l0aW5nVG9FbmNsb3NpbmdJRnJhbWUpOiBOYW1lIGNoYW5nZS4KKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVxdWlyZXNDb21wb3NpdGluZ0Zv
cklGcmFtZSk6IFdlIG5lZWQgdG8gY29uc3VsdCB0aGUgaWZyYW1lIGNvbnRlbnRzCisgICAgICAg
IGRvY3VtZW50J3MgY29tcG9zaXRvciB0byBhc2sgd2hldGhlciBwcm9wYWdhdGlvbiBpcyBhcHBy
b3ByaWF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZW5zdXJl
Um9vdFBsYXRmb3JtTGF5ZXIpOiBOYW1lIGNoYW5nZS4KKworMjAxMC0wNS0xMCAgU2ltb24gRnJh
c2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBbGxvdyBjb21wb3NpdGluZyBsYXllcnMgdG8gYmUgY29u
bmVjdGVkIGFjcm9zcyBpZnJhbWUgYm91bmRhcmllcyBvbiBNYWMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODU2CiAgICAgICAgIAogICAgICAgICBV
c2UgYW4gZW51bSBmb3IgdGhlIHR5cGUgb2Ygcm9vdCBsYXllciBhdHRhY2htZW50IG9uIGEgUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yLCBzbyB3ZSBjYW4KICAgICAgICAgZGV0ZXJtaW5lIGlmIHRoZSBh
dHRhY2hlbW50IGlzIHZpYSB0aGUgQ2hvbWVDbGllbnQsIHZpYSBhbiBlbmNsb3NpbmcgaWZyYW1l
LCBvciB1bmF0dGFjaGVkLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJCYWNraW5nLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAK
aW5kZXggYzU5NDZhZi4uZmY3ZjZiYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXJCYWNraW5nLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJh
Y2tpbmcuY3BwCkBAIC04MzEsMTQgKzgzMSwxMCBAQCBGbG9hdFBvaW50IFJlbmRlckxheWVyQmFj
a2luZzo6Y29udGVudHNUb0dyYXBoaWNzTGF5ZXJDb29yZGluYXRlcyhjb25zdCBHcmFwaGljcwog
CiBib29sIFJlbmRlckxheWVyQmFja2luZzo6cGFpbnRpbmdHb2VzVG9XaW5kb3coKSBjb25zdAog
ewotICAgIGlmICghUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpzaG91bGRQcm9wYWdhdGVDb21wb3Np
dGluZ1RvSUZyYW1lUGFyZW50KCkpCi0gICAgICAgIHJldHVybiBtX293bmluZ0xheWVyLT5pc1Jv
b3RMYXllcigpOwotCi0gICAgaWYgKCFtX293bmluZ0xheWVyLT5pc1Jvb3RMYXllcigpKQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAvLyBJZnJhbWUgcm9vdCBsYXllcnMgcGFpbnQgaW50
byBiYWNraW5nIHN0b3JlLgotICAgIHJldHVybiAhdG9SZW5kZXJWaWV3KHJlbmRlcmVyKCkpLT5k
b2N1bWVudCgpLT5vd25lckVsZW1lbnQoKTsKKyAgICBpZiAobV9vd25pbmdMYXllci0+aXNSb290
TGF5ZXIoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBvc2l0b3IoKS0+cm9vdExheWVyQXR0YWNobWVu
dCgpID09IFJlbmRlckxheWVyQ29tcG9zaXRvcjo6Um9vdExheWVyQXR0YWNoZWRWaWFDaHJvbWVD
bGllbnQ7CisgICAgCisgICAgcmV0dXJuIGZhbHNlOwogfQogCiB2b2lkIFJlbmRlckxheWVyQmFj
a2luZzo6c2V0Q29udGVudHNOZWVkRGlzcGxheSgpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJDb21wb3NpdG9yLmNwcAppbmRleCAzNjRhN2YyLi5jZTZjMmFmIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCisrKyBiL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKQEAgLTExOCwxMyArMTE4LDYgQEAg
dm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmVuYWJsZUNvbXBvc2l0aW5nTW9kZShib29sIGVu
YWJsZSAvKiA9IHRydWUgKi8pCiAgICAgICAgICAgICBlbnN1cmVSb290UGxhdGZvcm1MYXllcigp
OwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBkZXN0cm95Um9vdFBsYXRmb3JtTGF5ZXIoKTsK
LQotICAgICAgICBpZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lGcmFtZVBhcmVudCgp
KSB7Ci0gICAgICAgICAgICBpZiAoRWxlbWVudCogb3duZXJFbGVtZW50ID0gZW5jbG9zaW5nSUZy
YW1lRWxlbWVudCgpKSB7Ci0gICAgICAgICAgICAgICAgLy8gVHJpZ2dlciBhIHJlY2FsY1N0eWxl
IGluIHRoZSBwYXJlbnQgZG9jdW1lbnQsIHRvIHVwZGF0ZSBjb21wb3NpdGluZyBpbiB0aGF0IGRv
Y3VtZW50LgotICAgICAgICAgICAgICAgIG93bmVyRWxlbWVudC0+c2V0TmVlZHNTdHlsZVJlY2Fs
YyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KICAgICB9
CiB9CiAKQEAgLTc1Nyw5ICs3NTAsOSBAQCB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVi
dWlsZENvbXBvc2l0aW5nTGF5ZXJUcmVlKFJlbmRlckxheWVyKiBsYXllciwgY29ucwogICAgIAog
ICAgIGlmIChsYXllckJhY2tpbmcpIHsKICAgICAgICAgYm9vbCBwYXJlbnRlZCA9IGZhbHNlOwot
ICAgICAgICBpZiAoc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0lGcmFtZVBhcmVudCgpICYm
IGxheWVyLT5yZW5kZXJlcigpLT5pc1JlbmRlcklGcmFtZSgpKSB7CisgICAgICAgIGlmIChsYXll
ci0+cmVuZGVyZXIoKS0+aXNSZW5kZXJJRnJhbWUoKSkgewogICAgICAgICAgICAgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yKiBpbm5lckNvbXBvc2l0b3IgPSBpZnJhbWVDb250ZW50c0NvbXBvc2l0b3Io
dG9SZW5kZXJJRnJhbWUobGF5ZXItPnJlbmRlcmVyKCkpKTsKLSAgICAgICAgICAgIGlmIChpbm5l
ckNvbXBvc2l0b3ItPmluQ29tcG9zaXRpbmdNb2RlKCkpIHsKKyAgICAgICAgICAgIGlmIChpbm5l
ckNvbXBvc2l0b3ItPmluQ29tcG9zaXRpbmdNb2RlKCkgJiYgaW5uZXJDb21wb3NpdG9yLT5yb290
TGF5ZXJBdHRhY2htZW50KCkgPT0gUm9vdExheWVyQXR0YWNoZWRWaWFFbmNsb3NpbmdJZnJhbWUp
IHsKICAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIGFuIGlmcmFtZSBwYXJlbnQuIE1ha2UgaXQg
dGhlIHBhcmVudCBvZiB0aGUgaWZyYW1lIGRvY3VtZW50J3Mgcm9vdAogICAgICAgICAgICAgICAg
IGxheWVyQmFja2luZy0+cGFyZW50Rm9yU3VibGF5ZXJzKCktPnJlbW92ZUFsbENoaWxkcmVuKCk7
CiAgICAgICAgICAgICAgICAgR3JhcGhpY3NMYXllciogaW5uZXJSb290TGF5ZXIgPSBpbm5lckNv
bXBvc2l0b3ItPnJvb3RQbGF0Zm9ybUxheWVyKCk7CkBAIC05NTMsNyArOTQ2LDcgQEAgR3JhcGhp
Y3NMYXllciogUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyb290UGxhdGZvcm1MYXllcigpIGNvbnN0
CiAKIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpkaWRNb3ZlT25zY3JlZW4oKQogewotICAg
IFJvb3RMYXllckF0dGFjaG1lbnQgYXR0YWNobWVudCA9IHNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0
aW5nVG9JRnJhbWVQYXJlbnQoKSA/IFJvb3RMYXllckF0dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1l
IDogUm9vdExheWVyQXR0YWNoZWRWaWFDaHJvbWVDbGllbnQ7CisgICAgUm9vdExheWVyQXR0YWNo
bWVudCBhdHRhY2htZW50ID0gc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0VuY2xvc2luZ0lG
cmFtZSgpID8gUm9vdExheWVyQXR0YWNoZWRWaWFFbmNsb3NpbmdJZnJhbWUgOiBSb290TGF5ZXJB
dHRhY2hlZFZpYUNocm9tZUNsaWVudDsKICAgICBhdHRhY2hSb290UGxhdGZvcm1MYXllcihhdHRh
Y2htZW50KTsKIH0KIApAQCAtOTgzLDE2ICs5NzYsMTggQEAgYm9vbCBSZW5kZXJMYXllckNvbXBv
c2l0b3I6OmhhczNEQ29udGVudCgpIGNvbnN0CiAgICAgcmV0dXJuIGxheWVySGFzM0RDb250ZW50
KHJvb3RSZW5kZXJMYXllcigpKTsKIH0KIAotYm9vbCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNo
b3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9JRnJhbWVQYXJlbnQoKQorYm9vbCBSZW5kZXJMYXll
ckNvbXBvc2l0b3I6OnNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9FbmNsb3NpbmdJRnJhbWUo
KSBjb25zdAogewogICAgIC8vIFBhcmVudCBkb2N1bWVudCBjb250ZW50IG5lZWRzIHRvIGJlIGFi
bGUgdG8gcmVuZGVyIG9uIHRvcCBvZiBhIGNvbXBvc2l0ZWQgaWZyYW1lLCBzbyBjb3JyZWN0IGJl
aGF2aW9yCiAgICAgLy8gaXMgdG8gaGF2ZSB0aGUgcGFyZW50IGRvY3VtZW50IGJlY29tZSBjb21w
b3NpdGVkIHRvby4gSG93ZXZlciwgdGhpcyBjYW4gY2F1c2UgcHJvYmxlbXMgb24gcGxhdGZvcm1z
IHRoYXQKICAgICAvLyB1c2UgbmF0aXZlIHZpZXdzIGZvciBmcmFtZXMgKGxpa2UgTWFjKSwgc28g
ZGlzYWJsZSB0aGF0IGJlaGF2aW9yIG9uIHRob3NlIHBsYXRmb3JtcyBmb3Igbm93LgogI2lmICFQ
TEFURk9STShNQUMpCi0gICAgcmV0dXJuIHRydWU7Ci0jZWxzZQotICAgIHJldHVybiBmYWxzZTsK
KyAgICBpZiAoRWxlbWVudCogb3duZXJFbGVtZW50ID0gZW5jbG9zaW5nSUZyYW1lRWxlbWVudCgp
KSB7CisgICAgICAgIGlmIChSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gb3duZXJFbGVtZW50LT5y
ZW5kZXJlcigpKQorICAgICAgICAgICAgcmV0dXJuIHJlbmRlcmVyLT5pc1JlbmRlcklGcmFtZSgp
OworICAgIH0KICNlbmRpZgorICAgIHJldHVybiBmYWxzZTsKIH0KIAogRWxlbWVudCogUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjplbmNsb3NpbmdJRnJhbWVFbGVtZW50KCkgY29uc3QKQEAgLTExMzcs
OSArMTEzMiwxNiBAQCBib29sIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVxdWlyZXNDb21wb3Np
dGluZ0ZvclBsdWdpbihSZW5kZXJPYmplY3QqIHJlbmRlcmVyKQogCiBib29sIFJlbmRlckxheWVy
Q29tcG9zaXRvcjo6cmVxdWlyZXNDb21wb3NpdGluZ0ZvcklGcmFtZShSZW5kZXJPYmplY3QqIHJl
bmRlcmVyKSBjb25zdAogewotICAgIHJldHVybiBzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1Rv
SUZyYW1lUGFyZW50KCkKLSAgICAgICAgJiYgcmVuZGVyZXItPmlzUmVuZGVySUZyYW1lKCkKLSAg
ICAgICAgJiYgdG9SZW5kZXJJRnJhbWUocmVuZGVyZXIpLT5yZXF1aXJlc0FjY2VsZXJhdGVkQ29t
cG9zaXRpbmcoKTsKKyAgICBpZiAoIXJlbmRlcmVyLT5pc1JlbmRlcklGcmFtZSgpKQorICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgCisgICAgUmVuZGVySUZyYW1lKiBpZnJhbWUgPSB0b1JlbmRl
cklGcmFtZShyZW5kZXJlcik7CisKKyAgICBpZiAoIWlmcmFtZS0+cmVxdWlyZXNBY2NlbGVyYXRl
ZENvbXBvc2l0aW5nKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgCisgICAgUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yKiBpbm5lckNvbXBvc2l0b3IgPSBpZnJhbWVDb250ZW50c0NvbXBv
c2l0b3IoaWZyYW1lKTsKKyAgICByZXR1cm4gaW5uZXJDb21wb3NpdG9yLT5zaG91bGRQcm9wYWdh
dGVDb21wb3NpdGluZ1RvRW5jbG9zaW5nSUZyYW1lKCk7CiB9CiAKIGJvb2wgUmVuZGVyTGF5ZXJD
b21wb3NpdG9yOjpyZXF1aXJlc0NvbXBvc2l0aW5nRm9yQW5pbWF0aW9uKFJlbmRlck9iamVjdCog
cmVuZGVyZXIpIGNvbnN0CkBAIC0xMTY2LDcgKzExNjgsNyBAQCBib29sIFJlbmRlckxheWVyQ29t
cG9zaXRvcjo6bmVlZHNDb250ZW50c0NvbXBvc2l0aW5nTGF5ZXIoY29uc3QgUmVuZGVyTGF5ZXIq
IGxheQogCiB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZW5zdXJlUm9vdFBsYXRmb3JtTGF5
ZXIoKQogewotICAgIFJvb3RMYXllckF0dGFjaG1lbnQgZXhwZWN0ZWRBdHRhY2htZW50ID0gKHNo
b3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9JRnJhbWVQYXJlbnQoKSAmJiBlbmNsb3NpbmdJRnJh
bWVFbGVtZW50KCkpID8gUm9vdExheWVyQXR0YWNoZWRWaWFFbmNsb3NpbmdJZnJhbWUgOiBSb290
TGF5ZXJBdHRhY2hlZFZpYUNocm9tZUNsaWVudDsKKyAgICBSb290TGF5ZXJBdHRhY2htZW50IGV4
cGVjdGVkQXR0YWNobWVudCA9IHNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9FbmNsb3NpbmdJ
RnJhbWUoKSA/IFJvb3RMYXllckF0dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1lIDogUm9vdExheWVy
QXR0YWNoZWRWaWFDaHJvbWVDbGllbnQ7CiAgICAgaWYgKGV4cGVjdGVkQXR0YWNobWVudCA9PSBt
X3Jvb3RMYXllckF0dGFjaG1lbnQpCiAgICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oIGIvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKaW5kZXggNGNjYjRkOS4uZDQ3Y2IyYyAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKKysrIGIvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKQEAgLTE0OCw3ICsxNDgsNyBA
QCBwdWJsaWM6CiAgICAgCiAgICAgLy8gU29tZSBwbGF0Zm9ybXMgbWF5IHdpc2ggdG8gY29ubmVj
dCBjb21wb3NpdGluZyBsYXllciB0cmVlcyBiZXR3ZWVuIGlmcmFtZXMgYW5kCiAgICAgLy8gdGhl
aXIgcGFyZW50IGRvY3VtZW50LgotICAgIHN0YXRpYyBib29sIHNob3VsZFByb3BhZ2F0ZUNvbXBv
c2l0aW5nVG9JRnJhbWVQYXJlbnQoKTsKKyAgICBib29sIHNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0
aW5nVG9FbmNsb3NpbmdJRnJhbWUoKSBjb25zdDsKIAogICAgIEVsZW1lbnQqIGVuY2xvc2luZ0lG
cmFtZUVsZW1lbnQoKSBjb25zdDsKICAgICBzdGF0aWMgUmVuZGVyTGF5ZXJDb21wb3NpdG9yKiBp
ZnJhbWVDb250ZW50c0NvbXBvc2l0b3IoUmVuZGVySUZyYW1lKik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55656</attachid>
            <date>2010-05-10 21:22:04 -0700</date>
            <delta_ts>2010-05-10 22:44:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38856-20100510212202.patch</filename>
            <type>text/plain</type>
            <size>60430</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYmNmZjdhZWVlZjUwNDVkNjYxMjdmOTQ3ZDY2ZTgxMWUwYjkzNzdmLi5jNjNkMDY5
ZGI0N2U0ODIwZDIyNTg1YjhhYzM0MWE1YWJiYjg5MTViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC01LDYgKzUsMzMgQEAK
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODU2CiAg
ICAgICAgIEFsbG93IGNvbXBvc2l0aW5nIGxheWVycyB0byBiZSBjb25uZWN0ZWQgYWNyb3NzIGlm
cmFtZSBib3VuZGFyaWVzIG9uIE1hYwogICAgICAgICAKKyAgICAgICAgTmV3IGV4cGVjdGVkIHJl
c3VsdHMgbm93IHRoYXQgTWFjIHByb3BhZ2F0ZXMgY29tcG9zaXRpbmcgb3V0IG9mIGlmcmFtZXMs
IGlmIG92ZXJsYXBwZWQuCisgICAgICAgIAorICAgICAgICBBbHNvIGFkZCBuZXcgdGVzdHMgdG8g
ZXhlcmNpc2UgdGhlIGNvZGUgdGhhdCBjb25uZWN0cyB0aGUgY29tcG9zaXRpbmcgbGF5ZXJzIG9m
CisgICAgICAgIHRoZSBpZnJhbWUgY29udGVudCB3aXRoIHRoZSBwYXJlbnQgZG9jdW1lbnQsIGZv
ciBkaWZmZXJlbnQgY29tcG9zaXRpbmcgY29uZmlndXJhdGlvbnMuCisKKyAgICAgICAgKiBjb21w
b3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0ZWQtcGFyZW50LWlmcmFtZS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvY29tcG9zaXRlZC1wYXJlbnQtaWZy
YW1lLmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0
aW5nLWlmcmFtZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lm
cmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICog
Y29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5nLWlmcmFtZTItZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9z
aXRpbmctaWZyYW1lMi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVz
L2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUzLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvZW50ZXItY29tcG9zaXRpbmct
aWZyYW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2VudGVy
LWNvbXBvc2l0aW5nLWlmcmFtZS5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMv
aWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1l
cy9sZWF2ZS1jb21wb3NpdGluZy1pZnJhbWUuaHRtbDoKKyAgICAgICAgKiBjb21wb3NpdGluZy9p
ZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb21wb3NpdGVkLXBhcmVudC1pZnJhbWUtZXhwZWN0
ZWQudHh0OiBSZW1vdmVkLgorCisyMDEwLTA1LTEwICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFz
ZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zODg1NgorICAg
ICAgICBBbGxvdyBjb21wb3NpdGluZyBsYXllcnMgdG8gYmUgY29ubmVjdGVkIGFjcm9zcyBpZnJh
bWUgYm91bmRhcmllcyBvbiBNYWMKKyAgICAgICAgCiAgICAgICAgIEFkZCBzZXZlcmFsIG1vcmUg
aWZyYW1lLWNvbXBvc2l0aW5nLXJlbGF0ZWQgdGVzdHMuIFRoZXNlIHRlc3RzOgogICAgICAgICAg
ICAgKiBhbiBpZnJhbWUgZHluYW1pY2FsbHkgZW50ZXJpbmcgY29tcG9zaXRpbmcgbW9kZQogICAg
ICAgICAgICAgKiBhbiBpZnJhbWUgZHluYW1pY2FsbHkgbGVhdmluZyBjb21wb3NpdGluZyBtb2Rl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBvc2l0ZWQt
cGFyZW50LWlmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJh
bWVzL2NvbXBvc2l0ZWQtcGFyZW50LWlmcmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDk5
YmIyNDUyMjBjZmIwMWEzYmM4OGUxNjhhNTZiMzZlNjk4M2QzOQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29tcG9zaXRlZC1wYXJlbnQtaWZyYW1l
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwNSBAQAorCisoR3JhcGhpY3NMYXllcgorICAocG9z
aXRpb24gMC4wMCAwLjAwKQorICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgKGJvdW5kcyA4MDAuMDAg
NjAwLjAwKQorICAob3BhY2l0eSAxLjAwKQorICAodXNpbmdUaWxlZExheWVyIDApCisgIChwcmVz
ZXJ2ZXMzRCAwKQorICAoZHJhd3NDb250ZW50IDApCisgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlz
aWJsZSkKKyAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAodHJhbnNmb3JtIGlkZW50aXR5KQor
ICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgIChjaGlsZHJlbiAxCisgICAgKEdyYXBo
aWNzTGF5ZXIKKyAgICAgIChwb3NpdGlvbiAtMTIuMDAgMC4wMCkKKyAgICAgIChhbmNob3IgMC41
MCAwLjUwKQorICAgICAgKGJvdW5kcyA4MTIuMDAgNjAwLjAwKQorICAgICAgKG9wYWNpdHkgMS4w
MCkKKyAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAg
ICAgKGRyYXdzQ29udGVudCAwKQorICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQor
ICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkK
KyAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgIChjaGlsZHJlbiAxCisg
ICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDAuMDAgLTEyLjAwKQor
ICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgMzcwLjAwIDIy
MC4wMCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5
ZXIgMCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50
IDEpCisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChi
YWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAg
ICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW4g
MQorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1
LjAwIDM1LjAwKQorICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAg
ICAgKGJvdW5kcyAzMDAuMDAgMTUwLjAwKQorICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQor
ICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgIChwcmVzZXJ2
ZXMzRCAwKQorICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgIChi
YWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xv
ciBub25lKQorICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAg
ICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgIChjaGlsZHJlbiAx
CisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3Np
dGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAg
ICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAg
IChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisg
ICAgICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3
c0NvbnRlbnQgMCkKKyAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJs
ZSkKKyAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAg
ICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5U
cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAg
ICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgIChwb3Np
dGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTAp
CisgICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAg
ICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgKHVzaW5n
VGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAg
ICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAg
ICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgKGJh
Y2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5
KQorICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAg
ICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24g
MTguMDAgMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUw
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisgICAg
ICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHBy
ZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkK
KyAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkK
KyAgICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisg
ICkKKykKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb21w
b3NpdGVkLXBhcmVudC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFt
ZXMvY29tcG9zaXRlZC1wYXJlbnQtaWZyYW1lLmh0bWwKaW5kZXggZDZkYmU2YzE4OGZjOTI5ZjVj
MmQ4MjljMjNjMDcwYjI0MDVmYTYzNS4uZDA2M2M4OTY4NDdiNTJkN2Y3ZjQyMWUwMTMzMmNjNDE0
NWZmZjA0MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb21w
b3NpdGVkLXBhcmVudC1pZnJhbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2NvbXBvc2l0ZWQtcGFyZW50LWlmcmFtZS5odG1sCkBAIC05LDcgKzksNyBAQAogICAg
ICAgICBoZWlnaHQ6IDE1MHB4OwogICAgICAgICB3aWR0aDogMzAwcHg7CiAgICAgICAgIC13ZWJr
aXQtYm94LXNoYWRvdzogMCAwIDIwcHggYmxhY2s7Ci0gICAgICAgIC13ZWJraXQtdHJhbnNmb3Jt
OiB0cmFuc2xhdGVYKDApOworICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigw
KTsKICAgICB9CiAgIDwvc3R5bGU+CiAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBj
aGFyc2V0PSJ1dGYtOCI+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJh
bWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmI2OTFmMGUzZjgzNDY5Mjk4YTU1NzY4YzlhN2Q3NDhjMWIyMGJiMmMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5l
Y3QtY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExOCBAQAorCiso
R3JhcGhpY3NMYXllcgorICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAoYW5jaG9yIDAuNTAgMC41
MCkKKyAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAob3BhY2l0eSAxLjAwKQorICAodXNpbmdU
aWxlZExheWVyIDApCisgIChwcmVzZXJ2ZXMzRCAwKQorICAoZHJhd3NDb250ZW50IDApCisgIChi
YWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAo
dHJhbnNmb3JtIGlkZW50aXR5KQorICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgIChj
aGlsZHJlbiAxCisgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDAp
CisgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgIChib3VuZHMgODAwLjAwIDYwMC4wMCkK
KyAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAo
cHJlc2VydmVzM0QgMCkKKyAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgIChiYWNrZmFjZVZp
c2liaWxpdHkgdmlzaWJsZSkKKyAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICh0
cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisg
ICAgICAoY2hpbGRyZW4gMgorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3Np
dGlvbiA4LjAwIDguMDApCisgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAg
KGJvdW5kcyAzNzAuMDAgMjIwLjAwKQorICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAg
ICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAg
ICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2li
bGUpCisgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICh0cmFuc2Zv
cm0gaWRlbnRpdHkpCisgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAg
ICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAg
ICAgICAocG9zaXRpb24gMzUuMDAgMzUuMDApCisgICAgICAgICAgICAgIChhbmNob3IgMC41MCAw
LjUwKQorICAgICAgICAgICAgICAoYm91bmRzIDMwMC4wMCAxNTAuMDApCisgICAgICAgICAgICAg
IChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAg
ICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkK
KyAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAg
ICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAg
ICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAg
ICAgICAgICAgICAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgIChhbmNo
b3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQor
ICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAgICAgICAgICh1c2lu
Z1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAg
ICAgICAgICAgICAgKGRyYXdzQ29udGVudCAwKQorICAgICAgICAgICAgICAgICAgKGJhY2tmYWNl
VmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBu
b25lKQorICAgICAgICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAg
ICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgIChj
aGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAg
ICAgICAgICAgICAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAo
YW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4wMCAy
MzAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAg
ICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAgICAgKHBy
ZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAg
ICAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAg
ICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAg
ICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5U
cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAg
ICAgICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIChwb3NpdGlvbiAxOC4wMCAxMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
KGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMgMjEw
LjAwIDIxMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
KGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNp
YmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29s
b3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQor
ICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAg
ICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICkK
KyAgICAgICAgICAgICAgKQorICAgICAgICAgICAgKQorICAgICAgICAgICkKKyAgICAgICAgKQor
ICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3NpdGlvbiA1LjAwIDUuMDApCisg
ICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgKGJvdW5kcyA1MC4wMCA1MC4w
MCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIg
MCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEp
CisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNr
Z3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAg
ICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgKQorICAgICAgKQorICAg
ICkKKyAgKQorKQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGlu
Zy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDNm
YzA1ZDQ5YzkyYmM3MmM3NGE0NTFmOTNkM2ZiOGM5YWZlM2M2YgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJh
bWUuaHRtbApAQCAtMCwwICsxLDU1IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8aGVh
ZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBpZnJhbWUg
eworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgIHBhZGRpbmc6IDVw
eDsKKyAgICAgICAgbWFyZ2luOiAyMHB4OworICAgICAgICBoZWlnaHQ6IDE1MHB4OworICAgICAg
ICB3aWR0aDogMzAwcHg7CisgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDIwcHggYmxh
Y2s7CisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAgIH0KKyAg
ICAKKyAgICAub3ZlcmxheSB7CisgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICB3aWR0
aDogNTBweDsKKyAgICAgIGhlaWdodDogNTBweDsKKyAgICAgIHRvcDogNXB4OworICAgICAgbGVm
dDogNXB4OworICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOworICAg
IH0KKyAgICAKKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNo
YXJzZXQ9InV0Zi04Ij4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Cisg
ICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKworICAgIC8vIENhbGxlZCBm
cm9tIHN1YmZyYW1lLgorICAgIGZ1bmN0aW9uIHRlc3REb25lKCkKKyAgICB7CisgICAgICAvLyBX
YWl0IGZvciBhIGxheWVyIHVwZGF0ZS4KKyAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9u
KCkgeworICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xheWVycycpLmlubmVyVGV4dCA9IGxheW91dFRl
c3RDb250cm9sbGVyLmxheWVyVHJlZUFzVGV4dCgpOworICAgICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfQorICAgICAgfSwgMCk7CisgICAgfQorICA8
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCisgICAgPCEtLSBUZXN0IHdpdGggYWxyZWFkeS1j
b21wb3NpdGVkIGlmcmFtZSwgYW5kIGlmcmFtZSBjb250ZW50cyBiZWNvbWluZyBjb21wb3NpdGVk
LiAtLT4KKyAgICA8aWZyYW1lIGlkPSJwYXJlbnQtaWZyYW1lIiBzcmM9InJlc291cmNlcy9lbnRl
ci1jb21wb3NpdGluZy1zdWJmcmFtZS5odG1sIj48L2lmcmFtZT4KKyAgICAKKyAgICA8ZGl2IGNs
YXNzPSJvdmVybGF5Ij4KKyAgICA8L2Rpdj4KKworICAgIDxwcmUgaWQ9ImxheWVycyI+TGF5ZXIg
dHJlZSBhcHBlYXJzIGhlcmUgaW4gRFJULjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5n
LWlmcmFtZTItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9j
b25uZWN0LWNvbXBvc2l0aW5nLWlmcmFtZTItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2OTFm
MGUzZjgzNDY5Mjk4YTU1NzY4YzlhN2Q3NDhjMWIyMGJiMmMKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1l
Mi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMTggQEAKKworKEdyYXBoaWNzTGF5ZXIKKyAgKHBv
c2l0aW9uIDAuMDAgMC4wMCkKKyAgKGFuY2hvciAwLjUwIDAuNTApCisgIChib3VuZHMgODAwLjAw
IDYwMC4wMCkKKyAgKG9wYWNpdHkgMS4wMCkKKyAgKHVzaW5nVGlsZWRMYXllciAwKQorICAocHJl
c2VydmVzM0QgMCkKKyAgKGRyYXdzQ29udGVudCAwKQorICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZp
c2libGUpCisgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgKHRyYW5zZm9ybSBpZGVudGl0eSkK
KyAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFw
aGljc0xheWVyCisgICAgICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgKGFuY2hvciAwLjUw
IDAuNTApCisgICAgICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgICAgICAob3BhY2l0eSAxLjAw
KQorICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgKHByZXNlcnZlczNEIDApCisgICAg
ICAoZHJhd3NDb250ZW50IDApCisgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisg
ICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQor
ICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuIDIKKyAg
ICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAg
ICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgMzcwLjAwIDIyMC4w
MCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIg
MCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEp
CisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNr
Z3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAg
ICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQor
ICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAw
IDM1LjAwKQorICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAg
KGJvdW5kcyAzMDAuMDAgMTUwLjAwKQorICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAg
ICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgIChwcmVzZXJ2ZXMz
RCAwKQorICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgIChiYWNr
ZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBu
b25lKQorICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAo
Y2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisg
ICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlv
biAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAg
ICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgIChv
cGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAg
ICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0Nv
bnRlbnQgMCkKKyAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkK
KyAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAg
ICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFu
c2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAg
ICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlv
biAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisg
ICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAg
ICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGls
ZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAg
ICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAo
YmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tn
cm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQor
ICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAg
ICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMTgu
MDAgMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisgICAgICAg
ICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHByZXNl
cnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICkKKyAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5
ZXIKKyAgICAgICAgICAocG9zaXRpb24gNS4wMCA1LjAwKQorICAgICAgICAgIChhbmNob3IgMC41
MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgNTAuMDAgNTAuMDApCisgICAgICAgICAgKG9wYWNp
dHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNl
cnZlczNEIDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFj
ZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisg
ICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zv
cm0gaWRlbnRpdHkpCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5n
LWlmcmFtZTIuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1j
b21wb3NpdGluZy1pZnJhbWUyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjAzMzAxNmQ4ZmZjMzZkNWQ5YmNl
ZmNhZDc0ZmRjZDBkYjUxMzVmNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBv
c2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUyLmh0bWwKQEAgLTAsMCAr
MSw1OCBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0eXBl
PSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9yZGVy
OiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIG1hcmdp
bjogMjBweDsKKyAgICAgICAgaGVpZ2h0OiAxNTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4Owor
ICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrOworICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKKyAgICB9CisgICAgCisgICAgLm92ZXJsYXkg
eworICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgd2lkdGg6IDUwcHg7CisgICAgICBo
ZWlnaHQ6IDUwcHg7CisgICAgICB0b3A6IDVweDsKKyAgICAgIGxlZnQ6IDVweDsKKyAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsKKyAgICB9CisgICAgCisgIDwvc3R5
bGU+CisgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+Cisg
ICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndh
aXRVbnRpbERvbmUoKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKQorICAgIHsKKyAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpZnJhbWUnKS5jbGFzc05hbWUgPSAnY29tcG9z
aXRlZCc7CisKKyAgICAgIC8vIFdhaXQgZm9yIGEgbGF5ZXIgdXBkYXRlLgorICAgICAgd2luZG93
LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpIHsKKyAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGF5ZXJzJyku
aW5uZXJUZXh0ID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0KCk7CisgICAg
ICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9CisgICAg
ICB9LCAwKTsKKyAgICB9CisgICAgCisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQn
LCBkb1Rlc3QsIGZhbHNlKTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDwh
LS0gVGVzdCB3aXRoIGFscmVhZHktY29tcG9zaXRlZCBpZnJhbWUsIGFuZCBpZnJhbWUgY29udGVu
dHMgYmVjb21pbmcgY29tcG9zaXRlZC4gLS0+CisgICAgPGlmcmFtZSBpZD0iaWZyYW1lIiBzcmM9
InJlc291cmNlcy9jb21wb3NpdGVkLXN1YmZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAgIAorICAg
IDxkaXYgY2xhc3M9Im92ZXJsYXkiPgorICAgIDwvZGl2PgorCisgICAgPHByZSBpZD0ibGF5ZXJz
Ij5MYXllciB0cmVlIGFwcGVhcnMgaGVyZSBpbiBEUlQuPC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29t
cG9zaXRpbmctaWZyYW1lMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lMy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uODQ4NzQ2OTg5OGEyOTBhZWVlNDE4MmExYjMwOGZkNjAxYTgzNTEwMAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGlu
Zy1pZnJhbWUzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwNSBAQAorCisoR3JhcGhpY3NMYXll
cgorICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgKGJvdW5k
cyA4MDAuMDAgNjAwLjAwKQorICAob3BhY2l0eSAxLjAwKQorICAodXNpbmdUaWxlZExheWVyIDAp
CisgIChwcmVzZXJ2ZXMzRCAwKQorICAoZHJhd3NDb250ZW50IDApCisgIChiYWNrZmFjZVZpc2li
aWxpdHkgdmlzaWJsZSkKKyAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAodHJhbnNmb3JtIGlk
ZW50aXR5KQorICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgIChjaGlsZHJlbiAxCisg
ICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAoYW5j
aG9yIDAuNTAgMC41MCkKKyAgICAgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgICAgIChvcGFj
aXR5IDEuMDApCisgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAocHJlc2VydmVzM0Qg
MCkKKyAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlz
aWJsZSkKKyAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICh0cmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAoY2hpbGRy
ZW4gMQorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3NpdGlvbiA4LjAwIDgu
MDApCisgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgKGJvdW5kcyAzNzAu
MDAgMjIwLjAwKQorICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgKHVzaW5nVGls
ZWRMYXllciAwKQorICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgIChkcmF3c0Nv
bnRlbnQgMSkKKyAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAg
ICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkp
CisgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgIChjaGls
ZHJlbiAxCisgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAocG9zaXRp
b24gMzUuMDAgMzUuMDApCisgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAg
ICAgICAgICAoYm91bmRzIDMwMC4wMCAxNTAuMDApCisgICAgICAgICAgICAgIChvcGFjaXR5IDEu
MDApCisgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgKHBy
ZXNlcnZlczNEIDApCisgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgICAgICAg
ICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAoYmFja2dyb3Vu
ZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAg
ICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgKGNoaWxk
cmVuIDEKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAg
KHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUw
KQorICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAg
ICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIg
MCkKKyAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAg
KGRyYXdzQ29udGVudCAwKQorICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2
aXNpYmxlKQorICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAg
ICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgIChjaGls
ZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisg
ICAgICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAgICAg
KHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAg
MC41MCkKKyAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4wMCAyMzAuMDApCisgICAg
ICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAo
dXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDAp
CisgICAgICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAg
ICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgICAg
ICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAgICAgKHRyYW5zZm9y
bSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAg
ICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAgICAgICAgIChwb3Np
dGlvbiAxOC4wMCAxMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUw
IDAuNTApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMgMjEwLjAwIDIxMC4wMCkK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVu
dCAxKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2li
bGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAg
ICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgKQorICAgICAgICAgICkKKyAgICAgICAgKQorICAgICAgKQorICAg
ICkKKyAgKQorKQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lMy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRp
bmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5nLWlmcmFtZTMuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
MzVhOThlYjU5OTU3OWYzYmM4NjRkODVkODYyZDI4OWM1NzY0YjFkCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5nLWlm
cmFtZTMuaHRtbApAQCAtMCwwICsxLDQ5IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8
aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4KKyAgICBpZnJh
bWUgeworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgIHBhZGRpbmc6
IDVweDsKKyAgICAgICAgbWFyZ2luOiAyMHB4OworICAgICAgICBoZWlnaHQ6IDE1MHB4OworICAg
ICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDIwcHgg
YmxhY2s7CisgICAgfQorICAgIAorICAgIC5jb21wb3NpdGVkIHsKKyAgICAgIC13ZWJraXQtdHJh
bnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAgIH0KKyAgICAKKyAgPC9zdHlsZT4KKyAgPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1
bXBBc1RleHQoKTsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgp
OworICAgIH0KKworICAgIGZ1bmN0aW9uIGRvVGVzdCgpCisgICAgeworICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2lmcmFtZScpLmNsYXNzTmFtZSA9ICdjb21wb3NpdGVkJzsKKworICAg
ICAgLy8gV2FpdCBmb3IgYSBsYXllciB1cGRhdGUuCisgICAgICB3aW5kb3cuc2V0VGltZW91dChm
dW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewor
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYXllcnMnKS5pbm5lclRleHQgPSBs
YXlvdXRUZXN0Q29udHJvbGxlci5sYXllclRyZWVBc1RleHQoKTsKKyAgICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0KKyAgICAgIH0sIDApOworICAg
IH0KKyAgICAKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGRvVGVzdCwgZmFs
c2UpOworICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCisgICAgPCEtLSBUZXN0IHdpdGgg
YWxyZWFkeS1jb21wb3NpdGVkIGlmcmFtZSBjb250ZW50cywgYW5kIGlmcmFtZSBpdHNlbGYgY29t
cG9zaXRlZC4gLS0+CisgICAgPGlmcmFtZSBpZD0iaWZyYW1lIiBzcmM9InJlc291cmNlcy9jb21w
b3NpdGVkLXN1YmZyYW1lLmh0bWwiPjwvaWZyYW1lPgorICAgIAorICAgIDxwcmUgaWQ9ImxheWVy
cyI+TGF5ZXIgdHJlZSBhcHBlYXJzIGhlcmUgaW4gRFJULjwvcHJlPgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9lbnRlci1jb21w
b3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZy
YW1lcy9lbnRlci1jb21wb3NpdGluZy1pZnJhbWUtZXhwZWN0ZWQudHh0CmluZGV4IDEzOTU5N2Y5
Y2IwN2M1ZDQ4YmVkMTg5ODRlYzQ3NDdmNGI0ZjM0MzguLmI2OTFmMGUzZjgzNDY5Mjk4YTU1NzY4
YzlhN2Q3NDhjMWIyMGJiMmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lm
cmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZyYW1lLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2VudGVyLWNvbXBvc2l0aW5nLWlmcmFtZS1leHBlY3Rl
ZC50eHQKQEAgLTEsMiArMSwxMTggQEAKIAorKEdyYXBoaWNzTGF5ZXIKKyAgKHBvc2l0aW9uIDAu
MDAgMC4wMCkKKyAgKGFuY2hvciAwLjUwIDAuNTApCisgIChib3VuZHMgODAwLjAwIDYwMC4wMCkK
KyAgKG9wYWNpdHkgMS4wMCkKKyAgKHVzaW5nVGlsZWRMYXllciAwKQorICAocHJlc2VydmVzM0Qg
MCkKKyAgKGRyYXdzQ29udGVudCAwKQorICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisg
IChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxk
cmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVy
CisgICAgICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisg
ICAgICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAg
KHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAoZHJhd3ND
b250ZW50IDApCisgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAoYmFj
a2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNo
aWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuIDIKKyAgICAgICAgKEdy
YXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAgICAgICAgIChh
bmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgMzcwLjAwIDIyMC4wMCkKKyAgICAg
ICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAg
ICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAg
ICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNrZ3JvdW5kQ29s
b3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgIChjaGls
ZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAg
ICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAwIDM1LjAwKQor
ICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAz
MDAuMDAgMTUwLjAwKQorICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAg
ICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAg
ICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2li
aWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAg
ICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRyZW5U
cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAg
ICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAu
MDApCisgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAg
ICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEu
MDApCisgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAg
ICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkK
KyAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAg
ICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICh0cmFu
c2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgICAg
ICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAu
MDApCisgICAgICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAg
ICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAgICAgICAgICAg
IChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAw
KQorICAgICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAg
ICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VW
aXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xv
ciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAg
ICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAg
ICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhp
Y3NMYXllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMTguMDAgMTAuMDAp
CisgICAgICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAoYm91bmRzIDIxMC4wMCAyMTAuMDApCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICh1c2lu
Z1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDAp
CisgICAgICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChj
aGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAgICkKKyAg
ICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAg
ICAgICAgICkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAg
ICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAg
ICAgICAocG9zaXRpb24gNS4wMCA1LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQor
ICAgICAgICAgIChib3VuZHMgNTAuMDAgNTAuMDApCisgICAgICAgICAgKG9wYWNpdHkgMS4wMCkK
KyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNlcnZlczNEIDAp
CisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxp
dHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAg
KHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9lbnRlci1jb21wb3NpdGluZy1pZnJhbWUuaHRt
bCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvZW50ZXItY29tcG9zaXRpbmctaWZy
YW1lLmh0bWwKaW5kZXggZjI2M2UwNDU4NDA3ZTAxNGQzYzcxMjM3MGMxMzg5NWY0Zjc4ZTlmZS4u
ZDVjOWNiMmE5YjhiNDZhNWU1YjFhMTYzYzk1NTY2NjBkNmE4ZjAzMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9lbnRlci1jb21wb3NpdGluZy1pZnJhbWUuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2VudGVyLWNvbXBvc2l0aW5n
LWlmcmFtZS5odG1sCkBAIC0zMSwxMCArMzEsMTMgQEAKICAgICAvLyBDYWxsZWQgZnJvbSBzdWJm
cmFtZS4KICAgICBmdW5jdGlvbiB0ZXN0RG9uZSgpCiAgICAgewotICAgICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
bGF5ZXJzJykuaW5uZXJUZXh0ID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0
KCk7Ci0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKLSAgICAgIH0K
KyAgICAgIC8vIFdhaXQgZm9yIGEgbGF5ZXIgdXBkYXRlLgorICAgICAgd2luZG93LnNldFRpbWVv
dXQoZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
IHsKKyAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGF5ZXJzJykuaW5uZXJUZXh0
ID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5ZXJUcmVlQXNUZXh0KCk7CisgICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9CisgICAgICB9LCAwKTsK
ICAgICB9CiAgIDwvc2NyaXB0PgogPC9oZWFkPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtcmVzaXplLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXJlc2l6ZS1leHBlY3RlZC50eHQKaW5kZXggMTM5
NTk3ZjljYjA3YzVkNDhiZWQxODk4NGVjNDc0N2Y0YjRmMzQzOC4uYjY5MWYwZTNmODM0NjkyOThh
NTU3NjhjOWE3ZDc0OGMxYjIwYmIyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRp
bmcvaWZyYW1lcy9pZnJhbWUtcmVzaXplLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1yZXNpemUtZXhwZWN0ZWQudHh0CkBAIC0xLDIgKzEs
MTE4IEBACiAKKyhHcmFwaGljc0xheWVyCisgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgIChhbmNo
b3IgMC41MCAwLjUwKQorICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgIChvcGFjaXR5IDEuMDAp
CisgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgKHByZXNlcnZlczNEIDApCisgIChkcmF3c0NvbnRl
bnQgMCkKKyAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAoYmFja2dyb3VuZENvbG9y
IG5vbmUpCisgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVu
dGl0eSkKKyAgKGNoaWxkcmVuIDEKKyAgICAoR3JhcGhpY3NMYXllcgorICAgICAgKHBvc2l0aW9u
IDAuMDAgMC4wMCkKKyAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgKGJvdW5kcyA4MDAu
MDAgNjAwLjAwKQorICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICh1c2luZ1RpbGVkTGF5ZXIg
MCkKKyAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgKGRyYXdzQ29udGVudCAwKQorICAgICAg
KGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgKGJhY2tncm91bmRDb2xvciBub25l
KQorICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBp
ZGVudGl0eSkKKyAgICAgIChjaGlsZHJlbiAyCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAg
ICAgICAgKHBvc2l0aW9uIDguMDAgOC4wMCkKKyAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkK
KyAgICAgICAgICAoYm91bmRzIDM3MC4wMCAyMjAuMDApCisgICAgICAgICAgKG9wYWNpdHkgMS4w
MCkKKyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNlcnZlczNE
IDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFjZVZpc2li
aWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAg
ICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRl
bnRpdHkpCisgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgIChHcmFwaGljc0xheWVy
CisgICAgICAgICAgICAgIChwb3NpdGlvbiAzNS4wMCAzNS4wMCkKKyAgICAgICAgICAgICAgKGFu
Y2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgIChib3VuZHMgMzAwLjAwIDE1MC4wMCkKKyAg
ICAgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXll
ciAwKQorICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgKGRyYXdz
Q29udGVudCAwKQorICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisg
ICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgKHRyYW5z
Zm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5
KQorICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgIChHcmFwaGljc0xh
eWVyCisgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgICAgICAg
ICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4w
MCAyMzAuMDApCisgICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAg
ICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNE
IDApCisgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgICAg
ICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgICAgICAoYmFja2dy
b3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQor
ICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAg
ICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIK
KyAgICAgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgICAgICAg
ICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgICAgIChib3Vu
ZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQor
ICAgICAgICAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAg
ICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgICAgICAgICAoZHJhd3NDb250
ZW50IDEpCisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxl
KQorICAgICAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAg
ICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAg
IChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2hp
bGRyZW4gMQorICAgICAgICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgKHBvc2l0aW9uIDE4LjAwIDEwLjAwKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
KGJvdW5kcyAyMTAuMDAgMjEwLjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAob3BhY2l0
eSAxLjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisg
ICAgICAgICAgICAgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChi
YWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJh
Y2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAgICAgICAodHJhbnNmb3Jt
IGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0g
aWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICApCisgICAgICAg
ICAgICAgICAgKQorICAgICAgICAgICAgICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQor
ICAgICAgICApCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDUu
MDAgNS4wMCkKKyAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAoYm91bmRz
IDUwLjAwIDUwLjAwKQorICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgKHVzaW5n
VGlsZWRMYXllciAwKQorICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgIChkcmF3
c0NvbnRlbnQgMSkKKyAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAg
ICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICApCisg
ICAgICApCisgICAgKQorICApCispCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0
aW5nL2lmcmFtZXMvbGVhdmUtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9pZnJhbWVzL2xlYXZlLWNvbXBvc2l0aW5nLWlmcmFtZS5odG1sCmluZGV4IDA3
Yzc2NjJkOTYzZTQ1OWYwODI3YzBmZTc4NTk3N2FiMzRlYmFjNmIuLjc4MWI3Y2ViZTM2MzkzNTQ4
NWU0ZWU4NDA0NTI5NTdiN2JlYjRiMzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0
aW5nL2lmcmFtZXMvbGVhdmUtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvY29tcG9zaXRpbmcvaWZyYW1lcy9sZWF2ZS1jb21wb3NpdGluZy1pZnJhbWUuaHRtbApAQCAt
MzEsMTAgKzMxLDEzIEBACiAgICAgLy8gQ2FsbGVkIGZyb20gc3ViZnJhbWUuCiAgICAgZnVuY3Rp
b24gdGVzdERvbmUoKQogICAgIHsKLSAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIpIHsKLSAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xheWVycycpLmlubmVyVGV4
dCA9IGxheW91dFRlc3RDb250cm9sbGVyLmxheWVyVHJlZUFzVGV4dCgpOwotICAgICAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Ci0gICAgICB9CisgICAgICAvLyBXYWl0IGZv
ciBhIGxheWVyIHVwZGF0ZS4KKyAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewor
ICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xheWVycycpLmlubmVyVGV4dCA9IGxheW91dFRlc3RDb250
cm9sbGVyLmxheWVyVHJlZUFzVGV4dCgpOworICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
Lm5vdGlmeURvbmUoKTsKKyAgICAgICAgfQorICAgICAgfSwgMCk7CiAgICAgfQogICA8L3Njcmlw
dD4KIDwvaGVhZD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMv
b3ZlcmxhcHBlZC1pZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcv
aWZyYW1lcy9vdmVybGFwcGVkLWlmcmFtZS1leHBlY3RlZC50eHQKaW5kZXggMTM5NTk3ZjljYjA3
YzVkNDhiZWQxODk4NGVjNDc0N2Y0YjRmMzQzOC4uYjY5MWYwZTNmODM0NjkyOThhNTU3NjhjOWE3
ZDc0OGMxYjIwYmIyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1l
cy9vdmVybGFwcGVkLWlmcmFtZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvaWZyYW1lcy9vdmVybGFwcGVkLWlmcmFtZS1leHBlY3RlZC50eHQKQEAgLTEsMiArMSwx
MTggQEAKIAorKEdyYXBoaWNzTGF5ZXIKKyAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAgKGFuY2hv
ciAwLjUwIDAuNTApCisgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgKG9wYWNpdHkgMS4wMCkK
KyAgKHVzaW5nVGlsZWRMYXllciAwKQorICAocHJlc2VydmVzM0QgMCkKKyAgKGRyYXdzQ29udGVu
dCAwKQorICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgIChiYWNrZ3JvdW5kQ29sb3Ig
bm9uZSkKKyAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50
aXR5KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAocG9zaXRpb24g
MC4wMCAwLjAwKQorICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAoYm91bmRzIDgwMC4w
MCA2MDAuMDApCisgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgKHVzaW5nVGlsZWRMYXllciAw
KQorICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAoZHJhd3NDb250ZW50IDApCisgICAgICAo
YmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUp
CisgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlk
ZW50aXR5KQorICAgICAgKGNoaWxkcmVuIDIKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAg
ICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQor
ICAgICAgICAgIChib3VuZHMgMzcwLjAwIDIyMC4wMCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAw
KQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAocHJlc2VydmVzM0Qg
MCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJp
bGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAg
ICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVu
dGl0eSkKKyAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIK
KyAgICAgICAgICAgICAgKHBvc2l0aW9uIDM1LjAwIDM1LjAwKQorICAgICAgICAgICAgICAoYW5j
aG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMDAuMDAgMTUwLjAwKQorICAg
ICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVy
IDApCisgICAgICAgICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAoZHJhd3ND
b250ZW50IDApCisgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAg
ICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAodHJhbnNm
b3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkp
CisgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5
ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAg
ICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAw
IDIzMC4wMCkKKyAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAg
ICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAocHJlc2VydmVzM0Qg
MCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgICAgICAgICAgICAg
IChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgIChiYWNrZ3Jv
dW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisg
ICAgICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAg
ICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgor
ICAgICAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAg
ICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAgICAgKGJvdW5k
cyAyODUuMDAgMjMwLjAwKQorICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisg
ICAgICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAg
ICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRl
bnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUp
CisgICAgICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAg
ICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAg
KGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgIChjaGls
ZHJlbiAxCisgICAgICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAocG9zaXRpb24gMTguMDAgMTAuMDApCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAo
Ym91bmRzIDIxMC4wMCAyMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5
IDEuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJh
Y2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFj
a2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0g
aWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBp
ZGVudGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAg
ICApCisgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICkKKyAgICAgICAg
ICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAgICApCisg
ICAgICAgICkKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gNS4w
MCA1LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMg
NTAuMDAgNTAuMDApCisgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdU
aWxlZExheWVyIDApCisgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgKGRyYXdz
Q29udGVudCAxKQorICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAg
ICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0
eSkKKyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICkKKyAg
ICAgICkKKyAgICApCisgICkKKykKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29tcG9zaXRlZC1wYXJlbnQtaWZyYW1lLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9pZnJhbWVzL2NvbXBv
c2l0ZWQtcGFyZW50LWlmcmFtZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDEzOTU5N2Y5Y2IwN2M1ZDQ4YmVkMTg5ODRlYzQ3NDdmNGI0ZjM0MzguLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29tcG9zaXRlZC1wYXJlbnQtaWZyYW1lLWV4cGVj
dGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotCi0KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGU2ODUwOWNjZTA4NTQw
Yjc3NTllYjM2ZjM2ZjQ3YTg1NTY3Nzg2Ni4uNzA0YzEwOTU2ZmU5ODFhZTEzMTc4OWZiNTZlZTEy
YzE3YWY1Mjg5MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTUsNiArNSw2NyBAQAogICAgICAgICBBbGxvdyBjb21wb3NpdGluZyBsYXll
cnMgdG8gYmUgY29ubmVjdGVkIGFjcm9zcyBpZnJhbWUgYm91bmRhcmllcyBvbiBNYWMKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODU2CiAKKyAgICAg
ICAgQ2hhbmdlcyB0byBhbGxvdyBjb21wb3NpdGluZyBsYXllcnMgZm9yIGlmcmFtZXMgdG8gc3dp
dGNoIGJldHdlZW4gYmVpbmcgaG9zdGVkCisgICAgICAgIGJ5IHRoZSBpZnJhbWUncyBsYXllci1i
YWNrZWQgTlNWaWV3LCBhbmQgcGFyZW50ZWQgaW4gdGhlIEdyYXBoaWNzTGF5ZXIgdHJlZSBvZiB0
aGUKKyAgICAgICAgZW5jbG9zaW5nIGRvY3VtZW50LgorCisgICAgICAgIFRlc3RzOiBjb21wb3Np
dGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLmh0bWwKKyAgICAgICAgICAg
ICAgIGNvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUyLmh0bWwK
KyAgICAgICAgICAgICAgIGNvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1p
ZnJhbWUzLmh0bWwKKworICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6CisgICAgICAgICogcGFn
ZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpoYXNDb21wb3Np
dGVkQ29udGVudCk6IE5ldyBjb252ZW5pZW5jZSBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpG
cmFtZVZpZXc6OnNldElzT3ZlcmxhcHBlZCk6IElmIHdlJ3JlIGNvbXBvc2l0ZWQsIHBva2UgdGhl
IG93bmVyIGRvY3VtZW50IGluIGNhc2UgaXQKKyAgICAgICAgICAgIHdhbnRzIHRvIHJlLWV2YWx1
YXRlIGNvbXBvc2l0aW5nIGRlY2lzaW9ucy4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6
aXNPdmVybGFwcGVkKTogSnVzdCBleHBvc2UgdGhlIGV4aXN0aW5nIGZsYWcuCisKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5
ZXI6OnNob3VsZEJlTm9ybWFsRmxvd09ubHkpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5
ZXI6OmlzU2VsZlBhaW50aW5nTGF5ZXIpOgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxh
eWVyQmFja2luZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OnVw
ZGF0ZUdyYXBoaWNzTGF5ZXJDb25maWd1cmF0aW9uKTogSWYgdGhpcyBpcyBhbiBpZnJhbWUsIHdl
IG5lZWQKKyAgICAgICAgICAgIHRvIGVuc3VyZSB0aGF0IHRoZSBsYXllcnMgZm9yIHRoZSBpZnJh
bWUgY29udGVudCBhcmUgaG9va2VkIHVwLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJC
YWNraW5nOjp1cGRhdGVEcmF3c0NvbnRlbnQpOiBXaGVuIGFuIGlmcmFtZSB0b2dnbGVzIGJldHdl
ZW4gZGlmZmVyZW50CisgICAgICAgICAgICBhdHRhY2htZW50cywgdGhlICdkcmF3c0NvbnRlbnQn
IGJlaGF2aW9yIG9mIGl0cyByb290IGxheWVyIGNoYW5nZXMsIHNvIG5lZWRzIHRvIGJlIHVwZGF0
ZWQuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmg6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZUNvbXBvc2l0aW5nTGF5
ZXJzKTogQ2FsbCBkZXN0cm95Um9vdFBsYXRmb3JtTGF5ZXIoKQorICAgICAgICAgICAgaW5zdGVh
ZCBvZiBkZXRhY2hSb290UGxhdGZvcm1MYXllcigpIGFuZCBtYW51YWxseSB6ZXJvaW5nIG91dCB0
aGUgT3duUHRycy4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6dXBk
YXRlQmFja2luZyk6IElmIGEgUmVuZGVySUZyYW1lIGNoYW5nZXMgY29tcG9zaXRpbmcgbW9kZSwK
KyAgICAgICAgICAgIHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgaXRzIGNvbnRlbnQgY29tcG9zaXRv
ciBhdHRhY2htZW50IGlzIHVwZGF0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNv
bXBvc2l0b3I6OnJlcGFpbnRPbkNvbXBvc2l0aW5nQ2hhbmdlKTogVGhlIGV4aXN0aW5nIGNvZGUg
aGFkIGEgYnVnCisgICAgICAgICAgICB0aGF0IGNhdXNlZCByZXBhaW50cyBmb3IgUmVuZGVyVmll
d3MgKHdoaWNoIGhhdmUgbm8gcGFyZW50KSB0byBiYWlsLiBXZSBvbmx5IHdhbnQgdG8gYmFpbAor
ICAgICAgICAgICAgZm9yIG5vbi1SZW5kZXJWaWV3cyB0aGF0IGFyZSBub3QgYXR0YWNoZWQuCisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlYnVpbGRDb21wb3NpdGlu
Z0xheWVyVHJlZSk6IEZhY3RvcmVkIHRoZSBpZnJhbWUtY29ubmVjdGluZworICAgICAgICAgICAg
Y29kZSBpbnRvIGEgbmV3IG1ldGhvZCwgcGFyZW50SUZyYW1lQ29udGVudExheWVycygpLgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpwYXJlbnRJRnJhbWVDb250ZW50
TGF5ZXJzKTogTmV3IG1ldGhvZCB0byBzaGFyZSB0aGUgY29kZSB0aGF0IGhvb2tzCisgICAgICAg
ICAgICB1cCB0aGUgaWZyYW1lJ3MgY29tcG9zaXRpbmcgbGF5ZXJzIHRvIHRoZSBwYXJlbnQuCisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnNob3VsZFByb3BhZ2F0ZUNv
bXBvc2l0aW5nVG9FbmNsb3NpbmdJRnJhbWUpOiBBZGQgbG9naWMgdG8gcHJvcGFnYXRlCisgICAg
ICAgICAgICBjb21wb3NpdGluZyBvdXQgb2YgaWZyYW1lcyBvbiBNYWMgaW4gdHdvIHNpdHVhdGlv
bnM6IDEpIHdoZW4gdGhlIEZyYW1lVmlldyBpcyBvdmVybGFwcGVkLCBhbmQgMikKKyAgICAgICAg
ICAgIGlmIHRoZSBwYXJlbnQgZG9jdW1lbnQgaXMgYWxyZWFkeSBjb21wb3NpdGVkLgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjplbnN1cmVSb290UGxhdGZvcm1MYXll
cik6IENsZWFuIHVwIHRoZSBsb2dpYyBoZXJlIHRvIGJldHRlciBkZWFsCisgICAgICAgICAgICB3
aXRoIGR5bmFtaWMgY2hhbmdlcyBvZiB0aGUgYXR0YWNobWVudCB0eXBlLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpkZXN0cm95Um9vdFBsYXRmb3JtTGF5ZXIpOiBD
bGVhbiB1cCBhbmQgbnVsbCBvdXQgdGhlIGNsaXBwaW5nIGxheWVyIGhlcmUuCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmF0dGFjaFJvb3RQbGF0Zm9ybUxheWVyKTog
Q2FsbCByb290TGF5ZXJBdHRhY2htZW50Q2hhbmdlZCgpLgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjpkZXRhY2hSb290UGxhdGZvcm1MYXllcik6IERpdHRvLiBBbHNv
IHVucGFyZW50IHRoZSBjbGlwcGluZyBhbmQgcGxhdGZvcm0gbGF5ZXJzLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVSb290TGF5ZXJBdHRhY2htZW50KTog
Q2FsbCBlbnN1cmVSb290UGxhdGZvcm1MYXllcigpIHRvIHJlLWV2YWx1YXRlCisgICAgICAgICAg
ICB0aGUgbGF5ZXIgYXR0YWNobWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29t
cG9zaXRvcjo6cm9vdExheWVyQXR0YWNobWVudENoYW5nZWQpOiBXZSBuZWVkIHRvIHVwZGF0ZSB0
aGUgZHJhd3NDb250ZW50KCkgc3RhdHVzCisgICAgICAgICAgICBvZiB0aGUgUmVuZGVyVmlldydz
IGxheWVyJ3MgYmFja2luZywgYmVjYXVzZSBpdCBjaGFuZ2VzIGRlcGVuZGluZyBvbiB0aGUgYXR0
YWNobWVudC4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyV2lkZ2V0OjpwYWludCk6IERvIG92ZXJsYXAgdGVzdGluZyBpZiB0
aGUgZnJhbWVWaWV3IGNhbiBkbyBmYXN0IHJlcGFpbnRzIChhcyBiZWZvcmUpLAorICAgICAgICAg
ICAgYnV0IGFsc28gbm93IHdoZW4gdGhlIGZyYW1lVmlldyBoYXMgY29tcG9zaXRlZCBjb250ZW50
LgorCisyMDEwLTA1LTEwICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFsbG93IGNv
bXBvc2l0aW5nIGxheWVycyB0byBiZSBjb25uZWN0ZWQgYWNyb3NzIGlmcmFtZSBib3VuZGFyaWVz
IG9uIE1hYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Mzg4NTYKKwogICAgICAgICBSZW5hbWUgdGhlIHN0YXRpYyBzaG91bGRQcm9wYWdhdGVDb21wb3Np
dGluZ1RvSUZyYW1lUGFyZW50KCkgdG8gc2hvdWxkUHJvcGFnYXRlQ29tcG9zaXRpbmdUb0VuY2xv
c2luZ0lGcmFtZSgpLAogICAgICAgICB0byBwYXZlIHRoZSB3YXkgZm9yIHJ1bnRpbWUgc3dpdGNo
ZXMgaW4gdGhlIHByb3BhZ2F0aW9uIGJlaGF2aW9yLiBXZSBoYXZlIHRvIG1ha2Ugc3VyZSB3ZSBj
YWxsIGl0IG9uCiAgICAgICAgIHRoZSBjb3JyZWN0IFJlbmRlckxheWVyQ29tcG9zaXRvciAodGhh
dCBiZWxvbmdpbmcgdG8gdGhlIGlmcmFtZSdzIGNvbnRlbnQgZG9jdW1lbnQpLgpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNw
cAppbmRleCA5YjkzYmViYjYwZmYwMGFlN2JmNTI3NmNkN2Y4OWE0Yjk5ZTk3OTEzLi4zZjM0MjYx
MDc5YjllNWRiNjc0ZjQwOThmN2FlMWYxZjcxNDFkNDRjIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtNDc4
LDYgKzQ3OCwxNSBAQCB2b2lkIEZyYW1lVmlldzo6c2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNo
cm9uaXphdGlvbigpCiAKICNlbmRpZiAvLyBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAK
K2Jvb2wgRnJhbWVWaWV3OjpoYXNDb21wb3NpdGVkQ29udGVudCgpIGNvbnN0Cit7CisjaWYgVVNF
KEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgIGlmIChSZW5kZXJWaWV3KiB2aWV3ID0gbV9m
cmFtZS0+Y29udGVudFJlbmRlcmVyKCkpCisgICAgICAgIHJldHVybiB2aWV3LT5jb21wb3NpdG9y
KCktPmluQ29tcG9zaXRpbmdNb2RlKCk7CisjZW5kaWYKKyAgICByZXR1cm4gZmFsc2U7Cit9CisK
IGJvb2wgRnJhbWVWaWV3Ojppc0VuY2xvc2VkSW5Db21wb3NpdGluZ0xheWVyKCkgY29uc3QKIHsK
ICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCkBAIC04OTcsNiArOTA2LDE1IEBAIHZv
aWQgRnJhbWVWaWV3OjpzZXRJc092ZXJsYXBwZWQoYm9vbCBpc092ZXJsYXBwZWQpCiAKICAgICBt
X2lzT3ZlcmxhcHBlZCA9IGlzT3ZlcmxhcHBlZDsKICAgICBzZXRDYW5CbGl0T25TY3JvbGwoIXVz
ZVNsb3dSZXBhaW50cygpKTsKKyAgICAKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcp
CisgICAgLy8gT3ZlcmxhcCBjYW4gYWZmZWN0IGNvbXBvc2l0aW5nIHRlc3RzLCBzbyBpZiBpdCBj
aGFuZ2VzLCB3ZSBuZWVkIHRvIHRyaWdnZXIKKyAgICAvLyBhIHJlY2FsY1N0eWxlIGluIHRoZSBw
YXJlbnQgZG9jdW1lbnQuCisgICAgaWYgKGhhc0NvbXBvc2l0ZWRDb250ZW50KCkpIHsKKyAgICAg
ICAgaWYgKEVsZW1lbnQqIG93bmVyRWxlbWVudCA9IG1fZnJhbWUtPmRvY3VtZW50KCktPm93bmVy
RWxlbWVudCgpKQorICAgICAgICAgICAgb3duZXJFbGVtZW50LT5zZXROZWVkc1N0eWxlUmVjYWxj
KFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKKyAgICB9CisjZW5kaWYgICAgCiB9CiAKIHZvaWQgRnJh
bWVWaWV3OjpzZXRDb250ZW50SXNPcGFxdWUoYm9vbCBjb250ZW50SXNPcGFxdWUpCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmggYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgK
aW5kZXggZWZjZWViZThhMWE2ZDY1ODM1NjkxMjE3ZDFmNTU4ZjliMjBmY2ZiZS4uZjZkZmIxZGYw
MTA1NTBhZGNlMTYwYTc4OTZjODUxNGEzY2EwMDBlYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdl
L0ZyYW1lVmlldy5oCisrKyBiL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaApAQCAtMTA1LDYgKzEw
NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6
YXRpb24oKTsKICNlbmRpZgogCisgICAgYm9vbCBoYXNDb21wb3NpdGVkQ29udGVudCgpIGNvbnN0
OwogICAgIGJvb2wgaXNFbmNsb3NlZEluQ29tcG9zaXRpbmdMYXllcigpIGNvbnN0OwogCiAgICAg
Ly8gT25seSB1c2VkIHdpdGggYWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcsIGJ1dCBvdXRzaWRlIHRo
ZSAjaWZkZWYgdG8gbWFrZSBsaW5rYWdlIGVhc2llci4KQEAgLTE0OSw2ICsxNTAsNyBAQCBwdWJs
aWM6CiAKICAgICB2b2lkIHNldFVzZVNsb3dSZXBhaW50cygpOwogICAgIHZvaWQgc2V0SXNPdmVy
bGFwcGVkKGJvb2wpOworICAgIGJvb2wgaXNPdmVybGFwcGVkKCkgY29uc3QgeyByZXR1cm4gbV9p
c092ZXJsYXBwZWQ7IH0KICAgICB2b2lkIHNldENvbnRlbnRJc09wYXF1ZShib29sKTsKIAogICAg
IHZvaWQgYWRkU2xvd1JlcGFpbnRPYmplY3QoKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApp
bmRleCBkMTEyNTRkNjk0YTM0Njg1MTE0NjUxMzIxYWIxMTBhNzYyYjg4YTcyLi5mMDQ3ODM3NjU4
Y2U3ZGI4OTQwZDk1NzQ0OWQzMGEyNTVkYzUyYzMwIDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIu
Y3BwCkBAIC0zNDI5LDE2ICszNDI5LDE2IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnJlcGFpbnRJbmNs
dWRpbmdOb25Db21wb3NpdGluZ0Rlc2NlbmRhbnRzKFJlbmRlckJveE1vZGVsT2JqZWN0CiAKIGJv
b2wgUmVuZGVyTGF5ZXI6OnNob3VsZEJlTm9ybWFsRmxvd09ubHkoKSBjb25zdAogewotICAgIHJl
dHVybiAocmVuZGVyZXIoKS0+aGFzT3ZlcmZsb3dDbGlwKCkgfHwgcmVuZGVyZXIoKS0+aGFzUmVm
bGVjdGlvbigpIHx8IHJlbmRlcmVyKCktPmhhc01hc2soKSB8fCByZW5kZXJlcigpLT5pc1ZpZGVv
KCkgfHwgcmVuZGVyZXIoKS0+aXNFbWJlZGRlZE9iamVjdCgpKSAmJgotICAgICAgICAgICAhcmVu
ZGVyZXIoKS0+aXNQb3NpdGlvbmVkKCkgJiYKLSAgICAgICAgICAgIXJlbmRlcmVyKCktPmlzUmVs
UG9zaXRpb25lZCgpICYmCi0gICAgICAgICAgICFyZW5kZXJlcigpLT5oYXNUcmFuc2Zvcm0oKSAm
JgotICAgICAgICAgICAhaXNUcmFuc3BhcmVudCgpOworICAgIHJldHVybiAocmVuZGVyZXIoKS0+
aGFzT3ZlcmZsb3dDbGlwKCkgfHwgcmVuZGVyZXIoKS0+aGFzUmVmbGVjdGlvbigpIHx8IHJlbmRl
cmVyKCktPmhhc01hc2soKSB8fCByZW5kZXJlcigpLT5pc1ZpZGVvKCkgfHwgcmVuZGVyZXIoKS0+
aXNFbWJlZGRlZE9iamVjdCgpIHx8IHJlbmRlcmVyKCktPmlzUmVuZGVySUZyYW1lKCkpCisgICAg
ICAgICAgICAmJiAhcmVuZGVyZXIoKS0+aXNQb3NpdGlvbmVkKCkKKyAgICAgICAgICAgICYmICFy
ZW5kZXJlcigpLT5pc1JlbFBvc2l0aW9uZWQoKQorICAgICAgICAgICAgJiYgIXJlbmRlcmVyKCkt
Pmhhc1RyYW5zZm9ybSgpCisgICAgICAgICAgICAmJiAhaXNUcmFuc3BhcmVudCgpOwogfQogCiBi
b29sIFJlbmRlckxheWVyOjppc1NlbGZQYWludGluZ0xheWVyKCkgY29uc3QKIHsKLSAgICByZXR1
cm4gIWlzTm9ybWFsRmxvd09ubHkoKSB8fCByZW5kZXJlcigpLT5oYXNSZWZsZWN0aW9uKCkgfHwg
cmVuZGVyZXIoKS0+aGFzTWFzaygpIHx8IHJlbmRlcmVyKCktPmlzVGFibGVSb3coKSB8fCByZW5k
ZXJlcigpLT5pc1ZpZGVvKCkgfHwgcmVuZGVyZXIoKS0+aXNFbWJlZGRlZE9iamVjdCgpOworICAg
IHJldHVybiAhaXNOb3JtYWxGbG93T25seSgpIHx8IHJlbmRlcmVyKCktPmhhc1JlZmxlY3Rpb24o
KSB8fCByZW5kZXJlcigpLT5oYXNNYXNrKCkgfHwgcmVuZGVyZXIoKS0+aXNUYWJsZVJvdygpIHx8
IHJlbmRlcmVyKCktPmlzVmlkZW8oKSB8fCByZW5kZXJlcigpLT5pc0VtYmVkZGVkT2JqZWN0KCkg
fHwgcmVuZGVyZXIoKS0+aXNSZW5kZXJJRnJhbWUoKTsKIH0KIAogdm9pZCBSZW5kZXJMYXllcjo6
c3R5bGVDaGFuZ2VkKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSopCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwIGIvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAppbmRleCBmZjdmNmJhZmY2ZDU5
NTE0NzlhZDQyMDE1YTE5YjIzYmJlODZiY2VmLi4zMTBhOWMyYzEyMjI1NDRjNzZhOGQzNDM5YWQ2
NTJlNjI4YTQzM2FkIDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJh
Y2tpbmcuY3BwCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAK
QEAgLTIzMyw2ICsyMzMsOSBAQCBib29sIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlR3JhcGhp
Y3NMYXllckNvbmZpZ3VyYXRpb24oKQogICAgIH0KICNlbmRpZgogCisgICAgaWYgKHJlbmRlcmVy
KCktPmlzUmVuZGVySUZyYW1lKCkpCisgICAgICAgIGxheWVyQ29uZmlnQ2hhbmdlZCA9IFJlbmRl
ckxheWVyQ29tcG9zaXRvcjo6cGFyZW50SUZyYW1lQ29udGVudExheWVycyh0b1JlbmRlcklGcmFt
ZShyZW5kZXJlcigpKSk7CisKICAgICByZXR1cm4gbGF5ZXJDb25maWdDaGFuZ2VkOwogfQogCkBA
IC0zODUsNyArMzg4LDcgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUdyYXBoaWNz
TGF5ZXJHZW9tZXRyeSgpCiAgICAgfQogCiAgICAgbV9ncmFwaGljc0xheWVyLT5zZXRDb250ZW50
c1JlY3QoY29udGVudHNCb3goKSk7Ci0gICAgbV9ncmFwaGljc0xheWVyLT5zZXREcmF3c0NvbnRl
bnQoY29udGFpbnNQYWludGVkQ29udGVudCgpKTsKKyAgICB1cGRhdGVEcmF3c0NvbnRlbnQoKTsK
IAogICAgIC8vIElmIHRoaXMgaXMgYW4gaWZyYW1lIHBhcmVudCwgdXBkYXRlIHRoZSBpZnJhbWUg
Y29udGVudCdzIGJveAogICAgIGlmIChyZW5kZXJlcigpLT5pc1JlbmRlcklGcmFtZSgpKSB7CkBA
IC00MTAsNiArNDEzLDExIEBAIHZvaWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVJbnRlcm5h
bEhpZXJhcmNoeSgpCiAgICAgfQogfQogCit2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRl
RHJhd3NDb250ZW50KCkKK3sKKyAgICBtX2dyYXBoaWNzTGF5ZXItPnNldERyYXdzQ29udGVudChj
b250YWluc1BhaW50ZWRDb250ZW50KCkpOworfQorCiAvLyBSZXR1cm4gdHJ1ZSBpZiB0aGUgbGF5
ZXJzIGNoYW5nZWQuCiBib29sIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlQ2xpcHBpbmdMYXll
cnMoYm9vbCBuZWVkc0FuY2VzdG9yQ2xpcCwgYm9vbCBuZWVkc0Rlc2NlbmRhbnRDbGlwKQogewpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmggYi9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuaAppbmRleCBhNjkwN2U3ZjVlNDI5MWZh
NDhlNWVlZjIyMzMwNDc3YTRlMjk3MGJhLi5mZjhjNzZjMzE0NzA4MmM0NmQwZTUzNGVjYzcxNmEw
NDg0Y2E5Nzk0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tp
bmcuaAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuaApAQCAtNjIs
NiArNjIsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVHcmFwaGljc0xheWVyR2VvbWV0cnko
KTsgLy8gbWFrZSBwcml2YXRlCiAgICAgLy8gVXBkYXRlIGNvbnRlbnRzIGFuZCBjbGlwcGluZyBz
dHJ1Y3R1cmUuCiAgICAgdm9pZCB1cGRhdGVJbnRlcm5hbEhpZXJhcmNoeSgpOyAvLyBtYWtlIHBy
aXZhdGUKKyAgICB2b2lkIHVwZGF0ZURyYXdzQ29udGVudCgpOwogICAgIAogICAgIEdyYXBoaWNz
TGF5ZXIqIGdyYXBoaWNzTGF5ZXIoKSBjb25zdCB7IHJldHVybiBtX2dyYXBoaWNzTGF5ZXIuZ2V0
KCk7IH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3Np
dG9yLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKaW5k
ZXggY2U2YzJhZjAyN2ViMWRmYzY1ZjA0MzFlYjk3YWFkNmU1MjU2MTVhZi4uMTM1MjYyZGY2ZWJj
YzJkMGUzYmE1NDQ2MmVlNDg4MTc3Mjk4OGQ2OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC0yMjQsMTQgKzIyNCw5IEBAIHZvaWQgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVycyhDb21wb3NpdGluZ1VwZGF0ZVR5
cGUgdXBkYXRlCiAKICAgICAgICAgLy8gSG9zdCB0aGUgZG9jdW1lbnQgbGF5ZXIgaW4gdGhlIFJl
bmRlclZpZXcncyByb290IGxheWVyLgogICAgICAgICBpZiAodXBkYXRlUm9vdCA9PSByb290UmVu
ZGVyTGF5ZXIoKSkgewotICAgICAgICAgICAgaWYgKGNoaWxkTGlzdC5pc0VtcHR5KCkpIHsKLSAg
ICAgICAgICAgICAgICBkZXRhY2hSb290UGxhdGZvcm1MYXllcigpOwotICAgICAgICAgICAgICAg
IGlmIChtX2NsaXBwaW5nTGF5ZXIpIHsKLSAgICAgICAgICAgICAgICAgICAgbV9jbGlwcGluZ0xh
eWVyLT5yZW1vdmVBbGxDaGlsZHJlbigpOwotICAgICAgICAgICAgICAgICAgICBtX2NsaXBwaW5n
TGF5ZXIgPSAwOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBtX3Jvb3RQbGF0
Zm9ybUxheWVyID0gMDsKLSAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgaWYgKGNoaWxk
TGlzdC5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgZGVzdHJveVJvb3RQbGF0Zm9ybUxheWVy
KCk7CisgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgbV9yb290UGxhdGZvcm1MYXll
ci0+c2V0Q2hpbGRyZW4oY2hpbGRMaXN0KTsKICAgICAgICAgfQogICAgIH0gZWxzZSBpZiAobmVl
ZEdlb21ldHJ5VXBkYXRlKSB7CkBAIC0zMDUsNiArMzAwLDEzIEBAIGJvb2wgUmVuZGVyTGF5ZXJD
b21wb3NpdG9yOjp1cGRhdGVCYWNraW5nKFJlbmRlckxheWVyKiBsYXllciwgQ29tcG9zaXRpbmdD
aGFuZ2VSCiAgICAgICAgIHZpZGVvLT5hY2NlbGVyYXRlZFJlbmRlcmluZ1N0YXRlQ2hhbmdlZCgp
OwogICAgIH0KICNlbmRpZgorCisgICAgaWYgKGxheWVyQ2hhbmdlZCAmJiBsYXllci0+cmVuZGVy
ZXIoKS0+aXNSZW5kZXJJRnJhbWUoKSkgeworICAgICAgICBSZW5kZXJMYXllckNvbXBvc2l0b3Iq
IGlubmVyQ29tcG9zaXRvciA9IGlmcmFtZUNvbnRlbnRzQ29tcG9zaXRvcih0b1JlbmRlcklGcmFt
ZShsYXllci0+cmVuZGVyZXIoKSkpOworICAgICAgICBpZiAoaW5uZXJDb21wb3NpdG9yICYmIGlu
bmVyQ29tcG9zaXRvci0+aW5Db21wb3NpdGluZ01vZGUoKSkKKyAgICAgICAgICAgIGlubmVyQ29t
cG9zaXRvci0+dXBkYXRlUm9vdExheWVyQXR0YWNobWVudCgpOworICAgIH0KKwogICAgIHJldHVy
biBsYXllckNoYW5nZWQ7CiB9CiAKQEAgLTMyMyw3ICszMjUsNyBAQCBib29sIFJlbmRlckxheWVy
Q29tcG9zaXRvcjo6dXBkYXRlTGF5ZXJDb21wb3NpdGluZ1N0YXRlKFJlbmRlckxheWVyKiBsYXll
ciwgQ29tcAogdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlcGFpbnRPbkNvbXBvc2l0aW5n
Q2hhbmdlKFJlbmRlckxheWVyKiBsYXllcikKIHsKICAgICAvLyBJZiB0aGUgcmVuZGVyZXIgaXMg
bm90IGF0dGFjaGVkIHlldCwgbm8gbmVlZCB0byByZXBhaW50LgotICAgIGlmICghbGF5ZXItPnJl
bmRlcmVyKCktPnBhcmVudCgpKQorICAgIGlmIChsYXllci0+cmVuZGVyZXIoKSAhPSBtX3JlbmRl
clZpZXcgJiYgIWxheWVyLT5yZW5kZXJlcigpLT5wYXJlbnQoKSkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgUmVuZGVyQm94TW9kZWxPYmplY3QqIHJlcGFpbnRDb250YWluZXIgPSBsYXllci0+cmVu
ZGVyZXIoKS0+Y29udGFpbmVyRm9yUmVwYWludCgpOwpAQCAtNzUwLDE4ICs3NTIsOCBAQCB2b2lk
IFJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVidWlsZENvbXBvc2l0aW5nTGF5ZXJUcmVlKFJlbmRl
ckxheWVyKiBsYXllciwgY29ucwogICAgIAogICAgIGlmIChsYXllckJhY2tpbmcpIHsKICAgICAg
ICAgYm9vbCBwYXJlbnRlZCA9IGZhbHNlOwotICAgICAgICBpZiAobGF5ZXItPnJlbmRlcmVyKCkt
PmlzUmVuZGVySUZyYW1lKCkpIHsKLSAgICAgICAgICAgIFJlbmRlckxheWVyQ29tcG9zaXRvciog
aW5uZXJDb21wb3NpdG9yID0gaWZyYW1lQ29udGVudHNDb21wb3NpdG9yKHRvUmVuZGVySUZyYW1l
KGxheWVyLT5yZW5kZXJlcigpKSk7Ci0gICAgICAgICAgICBpZiAoaW5uZXJDb21wb3NpdG9yLT5p
bkNvbXBvc2l0aW5nTW9kZSgpICYmIGlubmVyQ29tcG9zaXRvci0+cm9vdExheWVyQXR0YWNobWVu
dCgpID09IFJvb3RMYXllckF0dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1lKSB7Ci0gICAgICAgICAg
ICAgICAgLy8gVGhpcyBpcyBhbiBpZnJhbWUgcGFyZW50LiBNYWtlIGl0IHRoZSBwYXJlbnQgb2Yg
dGhlIGlmcmFtZSBkb2N1bWVudCdzIHJvb3QKLSAgICAgICAgICAgICAgICBsYXllckJhY2tpbmct
PnBhcmVudEZvclN1YmxheWVycygpLT5yZW1vdmVBbGxDaGlsZHJlbigpOwotICAgICAgICAgICAg
ICAgIEdyYXBoaWNzTGF5ZXIqIGlubmVyUm9vdExheWVyID0gaW5uZXJDb21wb3NpdG9yLT5yb290
UGxhdGZvcm1MYXllcigpOwotICAgICAgICAgICAgICAgIGlmIChpbm5lclJvb3RMYXllcikgewot
ICAgICAgICAgICAgICAgICAgICBsYXllckJhY2tpbmctPnBhcmVudEZvclN1YmxheWVycygpLT5h
ZGRDaGlsZChpbm5lclJvb3RMYXllcik7Ci0gICAgICAgICAgICAgICAgICAgIHBhcmVudGVkID0g
dHJ1ZTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KKyAgICAg
ICAgaWYgKGxheWVyLT5yZW5kZXJlcigpLT5pc1JlbmRlcklGcmFtZSgpKQorICAgICAgICAgICAg
cGFyZW50ZWQgPSBwYXJlbnRJRnJhbWVDb250ZW50TGF5ZXJzKHRvUmVuZGVySUZyYW1lKGxheWVy
LT5yZW5kZXJlcigpKSk7CiAgICAgICAgIAogICAgICAgICBpZiAoIXBhcmVudGVkKQogICAgICAg
ICAgICAgbGF5ZXJCYWNraW5nLT5wYXJlbnRGb3JTdWJsYXllcnMoKS0+c2V0Q2hpbGRyZW4obGF5
ZXJDaGlsZHJlbik7CkBAIC03ODgsNiArNzgwLDI2IEBAIFJlbmRlckxheWVyQ29tcG9zaXRvciog
UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjppZnJhbWVDb250ZW50c0NvbXBvc2l0b3IoUmVuZGVySUZy
CiAgICAgcmV0dXJuIDA7CiB9CiAKK2Jvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpwYXJlbnRJ
RnJhbWVDb250ZW50TGF5ZXJzKFJlbmRlcklGcmFtZSogcmVuZGVyZXIpCit7CisgICAgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yKiBpbm5lckNvbXBvc2l0b3IgPSBpZnJhbWVDb250ZW50c0NvbXBvc2l0
b3IocmVuZGVyZXIpOworICAgIGlmICghaW5uZXJDb21wb3NpdG9yIHx8ICFpbm5lckNvbXBvc2l0
b3ItPmluQ29tcG9zaXRpbmdNb2RlKCkgfHwgaW5uZXJDb21wb3NpdG9yLT5yb290TGF5ZXJBdHRh
Y2htZW50KCkgIT0gUm9vdExheWVyQXR0YWNoZWRWaWFFbmNsb3NpbmdJZnJhbWUpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICAKKyAgICBSZW5kZXJMYXllciogbGF5ZXIgPSByZW5kZXJlci0+
bGF5ZXIoKTsKKyAgICBpZiAoIWxheWVyLT5pc0NvbXBvc2l0ZWQoKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgUmVuZGVyTGF5ZXJCYWNraW5nKiBiYWNraW5nID0gbGF5ZXItPmJhY2tp
bmcoKTsKKyAgICBHcmFwaGljc0xheWVyKiBob3N0aW5nTGF5ZXIgPSBiYWNraW5nLT5wYXJlbnRG
b3JTdWJsYXllcnMoKTsKKyAgICBHcmFwaGljc0xheWVyKiByb290TGF5ZXIgPSBpbm5lckNvbXBv
c2l0b3ItPnJvb3RQbGF0Zm9ybUxheWVyKCk7CisgICAgaWYgKGhvc3RpbmdMYXllci0+Y2hpbGRy
ZW4oKS5zaXplKCkgIT0gMSB8fCBob3N0aW5nTGF5ZXItPmNoaWxkcmVuKClbMF0gIT0gcm9vdExh
eWVyKSB7CisgICAgICAgIGhvc3RpbmdMYXllci0+cmVtb3ZlQWxsQ2hpbGRyZW4oKTsKKyAgICAg
ICAgaG9zdGluZ0xheWVyLT5hZGRDaGlsZChyb290TGF5ZXIpOworICAgIH0KKyAgICByZXR1cm4g
dHJ1ZTsKK30KKwogLy8gVGhpcyBqdXN0IHVwZGF0ZXMgbGF5ZXIgZ2VvbWV0cnkgd2l0aG91dCBj
aGFuZ2luZyB0aGUgaGllcmFyY2h5Lgogdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0
ZUxheWVyVHJlZUdlb21ldHJ5KFJlbmRlckxheWVyKiBsYXllcikKIHsKQEAgLTk4MSwxMiArOTkz
LDMxIEBAIGJvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpzaG91bGRQcm9wYWdhdGVDb21wb3Np
dGluZ1RvRW5jbG9zaW5nSUZyYW1lKCkgY29uc3QKICAgICAvLyBQYXJlbnQgZG9jdW1lbnQgY29u
dGVudCBuZWVkcyB0byBiZSBhYmxlIHRvIHJlbmRlciBvbiB0b3Agb2YgYSBjb21wb3NpdGVkIGlm
cmFtZSwgc28gY29ycmVjdCBiZWhhdmlvcgogICAgIC8vIGlzIHRvIGhhdmUgdGhlIHBhcmVudCBk
b2N1bWVudCBiZWNvbWUgY29tcG9zaXRlZCB0b28uIEhvd2V2ZXIsIHRoaXMgY2FuIGNhdXNlIHBy
b2JsZW1zIG9uIHBsYXRmb3JtcyB0aGF0CiAgICAgLy8gdXNlIG5hdGl2ZSB2aWV3cyBmb3IgZnJh
bWVzIChsaWtlIE1hYyksIHNvIGRpc2FibGUgdGhhdCBiZWhhdmlvciBvbiB0aG9zZSBwbGF0Zm9y
bXMgZm9yIG5vdy4KKyAgICBFbGVtZW50KiBvd25lckVsZW1lbnQgPSBlbmNsb3NpbmdJRnJhbWVF
bGVtZW50KCk7CisgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG93bmVyRWxlbWVudCA/IG93
bmVyRWxlbWVudC0+cmVuZGVyZXIoKSA6IDA7CisgICAgaWYgKCFyZW5kZXJlciB8fCAhcmVuZGVy
ZXItPmlzUmVuZGVySUZyYW1lKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogI2lmICFQTEFU
Rk9STShNQUMpCi0gICAgaWYgKEVsZW1lbnQqIG93bmVyRWxlbWVudCA9IGVuY2xvc2luZ0lGcmFt
ZUVsZW1lbnQoKSkgewotICAgICAgICBpZiAoUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG93bmVy
RWxlbWVudC0+cmVuZGVyZXIoKSkKLSAgICAgICAgICAgIHJldHVybiByZW5kZXJlci0+aXNSZW5k
ZXJJRnJhbWUoKTsKLSAgICB9CisgICAgLy8gT24gbm9uLU1hYyBwbGF0Zm9ybXMsIGxldCBjb21w
b3NpdGluZyBwcm9wYWdhdGUgZm9yIGFsbCBpZnJhbWVzLgorICAgIHJldHVybiB0cnVlOwogI2Vu
ZGlmCisKKyAgICAvLyBPbiBNYWMsIG9ubHkgcHJvcGFnYXRlIGNvbXBvc2l0aW5nIGlmIHRoZSBp
ZnJhbWUgaXMgb3ZlcmxhcHBlZCBpbiB0aGUgcGFyZW50CisgICAgLy8gZG9jdW1lbnQsIG9yIHRo
ZSBwYXJlbnQgaXMgYWxyZWFkeSBjb21wb3NpdGluZy4KKyAgICBSZW5kZXJJRnJhbWUqIGlmcmFt
ZVJlbmRlcmVyID0gdG9SZW5kZXJJRnJhbWUocmVuZGVyZXIpOworICAgIGlmIChpZnJhbWVSZW5k
ZXJlci0+d2lkZ2V0KCkpIHsKKyAgICAgICAgQVNTRVJUKGlmcmFtZVJlbmRlcmVyLT53aWRnZXQo
KS0+aXNGcmFtZVZpZXcoKSk7CisgICAgICAgIEZyYW1lVmlldyogdmlldyA9IHN0YXRpY19jYXN0
PEZyYW1lVmlldyo+KGlmcmFtZVJlbmRlcmVyLT53aWRnZXQoKSk7CisgICAgICAgIGlmICh2aWV3
LT5pc092ZXJsYXBwZWQoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAKKyAg
ICAgICAgaWYgKFJlbmRlclZpZXcqIHZpZXcgPSBpZnJhbWVSZW5kZXJlci0+dmlldygpKSB7Cisg
ICAgICAgICAgICBpZiAodmlldy0+Y29tcG9zaXRvcigpLT5pbkNvbXBvc2l0aW5nTW9kZSgpKQor
ICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9CisgICAgfQorCiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCkBAIC0xMTg3LDE2ICsxMjE4LDI2IEBAIHZvaWQgUmVuZGVyTGF5ZXJD
b21wb3NpdG9yOjplbnN1cmVSb290UGxhdGZvcm1MYXllcigpCiAgICAgLy8gVGhlIHJvb3QgbGF5
ZXIgZG9lcyBmbGlwcGluZyBpZiB3ZSBuZWVkIGl0IG9uIHRoaXMgcGxhdGZvcm0uCiAgICAgbV9y
b290UGxhdGZvcm1MYXllci0+c2V0R2VvbWV0cnlPcmllbnRhdGlvbihleHBlY3RlZEF0dGFjaG1l
bnQgPT0gUm9vdExheWVyQXR0YWNoZWRWaWFFbmNsb3NpbmdJZnJhbWUgPyBHcmFwaGljc0xheWVy
OjpDb21wb3NpdGluZ0Nvb3JkaW5hdGVzVG9wRG93biA6IEdyYXBoaWNzTGF5ZXI6OmNvbXBvc2l0
aW5nQ29vcmRpbmF0ZXNPcmllbnRhdGlvbigpKTsKICAgICAKLSAgICBpZiAoZXhwZWN0ZWRBdHRh
Y2htZW50ID09IFJvb3RMYXllckF0dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1lICYmICFtX2NsaXBw
aW5nTGF5ZXIpIHsKLSAgICAgICAgLy8gQ3JlYXRlIGEgY2xpcHBpbmcgbGF5ZXIgaWYgdGhpcyBp
cyBhbiBpZnJhbWUKLSAgICAgICAgbV9jbGlwcGluZ0xheWVyID0gR3JhcGhpY3NMYXllcjo6Y3Jl
YXRlKDApOworICAgIGlmIChleHBlY3RlZEF0dGFjaG1lbnQgPT0gUm9vdExheWVyQXR0YWNoZWRW
aWFFbmNsb3NpbmdJZnJhbWUpIHsKKyAgICAgICAgaWYgKCFtX2NsaXBwaW5nTGF5ZXIpIHsKKyAg
ICAgICAgICAgIC8vIENyZWF0ZSBhIGNsaXBwaW5nIGxheWVyIGlmIHRoaXMgaXMgYW4gaWZyYW1l
CisgICAgICAgICAgICBtX2NsaXBwaW5nTGF5ZXIgPSBHcmFwaGljc0xheWVyOjpjcmVhdGUoMCk7
CiAjaWZuZGVmIE5ERUJVRwotICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnNldE5hbWUoImlmcmFt
ZSBDbGlwcGluZyIpOworICAgICAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5zZXROYW1lKCJpZnJh
bWUgQ2xpcHBpbmciKTsKICNlbmRpZgotICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnNldE1hc2tz
VG9Cb3VuZHModHJ1ZSk7Ci0gICAgICAgIG1fY2xpcHBpbmdMYXllci0+YWRkQ2hpbGQobV9yb290
UGxhdGZvcm1MYXllci5nZXQoKSk7CisgICAgICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnNldE1h
c2tzVG9Cb3VuZHModHJ1ZSk7CisgICAgICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPmFkZENoaWxk
KG1fcm9vdFBsYXRmb3JtTGF5ZXIuZ2V0KCkpOworICAgICAgICB9CisgICAgfSBlbHNlIGlmICht
X2NsaXBwaW5nTGF5ZXIpIHsKKyAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5yZW1vdmVBbGxDaGls
ZHJlbigpOworICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnJlbW92ZUZyb21QYXJlbnQoKTsKKyAg
ICAgICAgbV9jbGlwcGluZ0xheWVyID0gMDsKICAgICB9CiAKKyAgICAvLyBDaGVjayB0byBzZWUg
aWYgd2UgaGF2ZSB0byBjaGFuZ2UgdGhlIGF0dGFjaG1lbnQKKyAgICBpZiAobV9yb290TGF5ZXJB
dHRhY2htZW50ICE9IFJvb3RMYXllclVuYXR0YWNoZWQpCisgICAgICAgIGRldGFjaFJvb3RQbGF0
Zm9ybUxheWVyKCk7CisKICAgICBhdHRhY2hSb290UGxhdGZvcm1MYXllcihleHBlY3RlZEF0dGFj
aG1lbnQpOwogfQogCkBAIC0xMjA2LDYgKzEyNDcsMTAgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBv
c2l0b3I6OmRlc3Ryb3lSb290UGxhdGZvcm1MYXllcigpCiAgICAgICAgIHJldHVybjsKIAogICAg
IGRldGFjaFJvb3RQbGF0Zm9ybUxheWVyKCk7CisgICAgaWYgKG1fY2xpcHBpbmdMYXllcikgewor
ICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnJlbW92ZUFsbENoaWxkcmVuKCk7CisgICAgICAgIG1f
Y2xpcHBpbmdMYXllciA9IDA7CisgICAgfQogICAgIG1fcm9vdFBsYXRmb3JtTGF5ZXIgPSAwOwog
fQogCkBAIC0xMjM2LDYgKzEyODEsNyBAQCB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6YXR0
YWNoUm9vdFBsYXRmb3JtTGF5ZXIoUm9vdExheWVyQXR0YWNobWVudCBhdHRhY2htZQogICAgIH0K
ICAgICAKICAgICBtX3Jvb3RMYXllckF0dGFjaG1lbnQgPSBhdHRhY2htZW50OworICAgIHJvb3RM
YXllckF0dGFjaG1lbnRDaGFuZ2VkKCk7CiB9CiAKIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9y
OjpkZXRhY2hSb290UGxhdGZvcm1MYXllcigpCkBAIC0xMjQ3LDYgKzEyOTMsMTAgQEAgdm9pZCBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OmRldGFjaFJvb3RQbGF0Zm9ybUxheWVyKCkKICAgICBjYXNl
IFJvb3RMYXllckF0dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1lOiB7CiAgICAgICAgICAgICAvLyBU
aGUgbGF5ZXIgd2lsbCBnZXQgdW5ob29rZWQgdXAgdmlhIFJlbmRlckxheWVyQmFja2luZzo6dXBk
YXRlR3JhcGhpY3NMYXllckNvbmZpZ3VyYXRpb24oKQogICAgICAgICAgICAgLy8gZm9yIHRoZSBp
ZnJhbWUncyByZW5kZXJlciBpbiB0aGUgcGFyZW50IGRvY3VtZW50LgorICAgICAgICAgICAgaWYg
KG1fY2xpcHBpbmdMYXllcikKKyAgICAgICAgICAgICAgICBtX2NsaXBwaW5nTGF5ZXItPnJlbW92
ZUZyb21QYXJlbnQoKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBtX3Jvb3RQ
bGF0Zm9ybUxheWVyLT5yZW1vdmVGcm9tUGFyZW50KCk7CiAgICAgICAgICAgICBtX3JlbmRlclZp
ZXctPmRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpLT5zZXROZWVkc1N0eWxlUmVjYWxjKFN5bnRo
ZXRpY1N0eWxlQ2hhbmdlKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0xMjY0
LDYgKzEzMTQsMjIgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmRldGFjaFJvb3RQbGF0
Zm9ybUxheWVyKCkKICAgICB9CiAKICAgICBtX3Jvb3RMYXllckF0dGFjaG1lbnQgPSBSb290TGF5
ZXJVbmF0dGFjaGVkOworICAgIHJvb3RMYXllckF0dGFjaG1lbnRDaGFuZ2VkKCk7Cit9CisKK3Zv
aWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVSb290TGF5ZXJBdHRhY2htZW50KCkKK3sK
KyAgICBlbnN1cmVSb290UGxhdGZvcm1MYXllcigpOworfQorCit2b2lkIFJlbmRlckxheWVyQ29t
cG9zaXRvcjo6cm9vdExheWVyQXR0YWNobWVudENoYW5nZWQoKQoreworICAgIC8vIFRoZSBhdHRh
Y2htZW50IGNhbiBhZmZlY3Qgd2hldGhlciB0aGUgUmVuZGVyVmlldyBsYXllcidzIHBhaW50aW5n
R29lc1RvV2luZG93KCkgYmVoYXZpb3IsCisgICAgLy8gc28gY2FsbCB1cGRhdGVHcmFwaGljc0xh
eWVyR2VvbWV0cnkoKSB0byB1ZHBhdGUgdGhhdC4KKyAgICBSZW5kZXJMYXllciogbGF5ZXIgPSBt
X3JlbmRlclZpZXctPmxheWVyKCk7CisgICAgUmVuZGVyTGF5ZXJCYWNraW5nKiBiYWNraW5nID0g
bGF5ZXIgPyBsYXllci0+YmFja2luZygpIDogMDsKKyAgICBpZiAoYmFja2luZykKKyAgICAgICAg
YmFja2luZy0+dXBkYXRlRHJhd3NDb250ZW50KCk7CiB9CiAKIGJvb2wgUmVuZGVyTGF5ZXJDb21w
b3NpdG9yOjpsYXllckhhczNEQ29udGVudChjb25zdCBSZW5kZXJMYXllciogbGF5ZXIpIGNvbnN0
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaCBi
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oCmluZGV4IGQ0N2NiMmNl
Yjk3NjQzNDU3Njc5NDVkYmI1YTlkZmNhYjJjZWQ3YTEuLmZmZTU4NGViZTA4NGI0YjIzMTkyMDgy
OTg0MjgwYmI5MTRlODRkZjcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyQ29tcG9zaXRvci5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9z
aXRvci5oCkBAIC0xMjksMTEgKzEyOSwxMSBAQCBwdWJsaWM6CiAgICAgfTsKIAogICAgIFJvb3RM
YXllckF0dGFjaG1lbnQgcm9vdExheWVyQXR0YWNobWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fcm9v
dExheWVyQXR0YWNobWVudDsgfQotCisgICAgdm9pZCB1cGRhdGVSb290TGF5ZXJBdHRhY2htZW50
KCk7CisgICAgdm9pZCB1cGRhdGVSb290TGF5ZXJQb3NpdGlvbigpOworICAgIAogICAgIHZvaWQg
ZGlkTW92ZU9uc2NyZWVuKCk7CiAgICAgdm9pZCB3aWxsTW92ZU9mZnNjcmVlbigpOwotCi0gICAg
dm9pZCB1cGRhdGVSb290TGF5ZXJQb3NpdGlvbigpOwogICAgIAogICAgIHZvaWQgZGlkU3RhcnRB
Y2NlbGVyYXRlZEFuaW1hdGlvbigpOwogICAgIApAQCAtMTUxLDcgKzE1MSwxMCBAQCBwdWJsaWM6
CiAgICAgYm9vbCBzaG91bGRQcm9wYWdhdGVDb21wb3NpdGluZ1RvRW5jbG9zaW5nSUZyYW1lKCkg
Y29uc3Q7CiAKICAgICBFbGVtZW50KiBlbmNsb3NpbmdJRnJhbWVFbGVtZW50KCkgY29uc3Q7CisK
ICAgICBzdGF0aWMgUmVuZGVyTGF5ZXJDb21wb3NpdG9yKiBpZnJhbWVDb250ZW50c0NvbXBvc2l0
b3IoUmVuZGVySUZyYW1lKik7CisgICAgLy8gUmV0dXJuIHRydWUgaWYgdGhlIGxheWVycyBjaGFu
Z2VkLgorICAgIHN0YXRpYyBib29sIHBhcmVudElGcmFtZUNvbnRlbnRMYXllcnMoUmVuZGVySUZy
YW1lKik7CiAKICAgICB2b2lkIHNldFJvb3RQbGF0Zm9ybUxheWVyQ2xpcHBpbmdCb3goY29uc3Qg
SW50UmVjdCYgY29udGVudHNCb3gpOwogCkBAIC0xOTQsNiArMTk3LDggQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGF0dGFjaFJvb3RQbGF0Zm9ybUxheWVyKFJvb3RMYXllckF0dGFjaG1lbnQpOwogICAg
IHZvaWQgZGV0YWNoUm9vdFBsYXRmb3JtTGF5ZXIoKTsKICAgICAKKyAgICB2b2lkIHJvb3RMYXll
ckF0dGFjaG1lbnRDaGFuZ2VkKCk7CisKICAgICAvLyBXaGV0aGVyIGEgcnVubmluZyB0cmFuc2l0
aW9uIG9yIGFuaW1hdGlvbiBlbmZvcmNlcyB0aGUgbmVlZCBmb3IgYSBjb21wb3NpdGluZyBsYXll
ci4KICAgICBib29sIHJlcXVpcmVzQ29tcG9zaXRpbmdGb3JBbmltYXRpb24oUmVuZGVyT2JqZWN0
KikgY29uc3Q7CiAgICAgYm9vbCByZXF1aXJlc0NvbXBvc2l0aW5nRm9yVHJhbnNmb3JtKFJlbmRl
ck9iamVjdCopIGNvbnN0OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lk
Z2V0LmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKaW5kZXggN2Y1ZmFi
YzI3MmI5MWI0ZjdlMmY1MGY5NTA4Yzc2NjZlMjNmMzk3OS4uOTI1YjdkOWUzODM0MTMzMzM2YWM2
ZTFkNWY5NjA5ZDBkZTY5YzQ3YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
V2lkZ2V0LmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCkBAIC0y
ODIsMTAgKzI4MiwxNSBAQCB2b2lkIFJlbmRlcldpZGdldDo6cGFpbnQoUGFpbnRJbmZvJiBwYWlu
dEluZm8sIGludCB0eCwgaW50IHR5KQogICAgICAgICAgICAgaWYgKCFwYWludE9mZnNldC5pc1pl
cm8oKSkKICAgICAgICAgICAgICAgICBwYWludEluZm8uY29udGV4dC0+dHJhbnNsYXRlKC1wYWlu
dE9mZnNldCk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKG1fd2lkZ2V0LT5pc0ZyYW1lVmlldygp
ICYmIHBhaW50SW5mby5vdmVybGFwVGVzdFJlcXVlc3RzICYmICFzdGF0aWNfY2FzdDxGcmFtZVZp
ZXcqPihtX3dpZGdldC5nZXQoKSktPnVzZVNsb3dSZXBhaW50c0lmTm90T3ZlcmxhcHBlZCgpKSB7
Ci0gICAgICAgICAgICBBU1NFUlQoIXBhaW50SW5mby5vdmVybGFwVGVzdFJlcXVlc3RzLT5jb250
YWlucyh0aGlzKSk7Ci0gICAgICAgICAgICBwYWludEluZm8ub3ZlcmxhcFRlc3RSZXF1ZXN0cy0+
c2V0KHRoaXMsIG1fd2lkZ2V0LT5mcmFtZVJlY3QoKSk7Ci0gICAgICAgIH0KKworICAgICAgICBp
ZiAobV93aWRnZXQtPmlzRnJhbWVWaWV3KCkpIHsKKyAgICAgICAgICAgIEZyYW1lVmlldyogZnJh
bWVWaWV3ID0gc3RhdGljX2Nhc3Q8RnJhbWVWaWV3Kj4obV93aWRnZXQuZ2V0KCkpOworICAgICAg
ICAgICAgYm9vbCBydW5PdmVybGFwVGVzdHMgPSAhZnJhbWVWaWV3LT51c2VTbG93UmVwYWludHNJ
Zk5vdE92ZXJsYXBwZWQoKSB8fCBmcmFtZVZpZXctPmhhc0NvbXBvc2l0ZWRDb250ZW50KCk7Cisg
ICAgICAgICAgICBpZiAocGFpbnRJbmZvLm92ZXJsYXBUZXN0UmVxdWVzdHMgJiYgcnVuT3Zlcmxh
cFRlc3RzKSB7CisgICAgICAgICAgICAgICAgQVNTRVJUKCFwYWludEluZm8ub3ZlcmxhcFRlc3RS
ZXF1ZXN0cy0+Y29udGFpbnModGhpcykpOworICAgICAgICAgICAgICAgIHBhaW50SW5mby5vdmVy
bGFwVGVzdFJlcXVlc3RzLT5zZXQodGhpcywgbV93aWRnZXQtPmZyYW1lUmVjdCgpKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoc3R5bGUoKS0+aGFzQm9yZGVy
UmFkaXVzKCkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55659</attachid>
            <date>2010-05-10 21:44:16 -0700</date>
            <delta_ts>2010-05-10 22:47:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38856-20100510214415.patch</filename>
            <type>text/plain</type>
            <size>3063</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NzA0YzEwOTU2ZmU5ODFhZTEzMTc4OWZiNTZlZTEyYzE3YWY1Mjg5MC4uODRjODJhMGZlZjI3MGQw
YTI1NDM5OWE4ZWE2YmEwMDJkYWIxYTA3MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTQsNiArNCwyNSBAQAogCiAgICAgICAgIEFsbG93
IGNvbXBvc2l0aW5nIGxheWVycyB0byBiZSBjb25uZWN0ZWQgYWNyb3NzIGlmcmFtZSBib3VuZGFy
aWVzIG9uIE1hYwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Mzg4NTYKKyAgICAgICAgCisgICAgICAgIFJlbmRlck9iamVjdDo6cmVwYWludFVzaW5nQ29u
dGFpbmVyKCkgaW5jb3JyZWN0bHkgZGlkIGEgdmlldy1iYXNlZAorICAgICAgICByZXBhaW50IGlm
IHRoZSByZXBhaW50IGNvbnRhaW5lciB3YXMgdGhlIFJlbmRlclZpZXcuIEluc3RlYWQsIHdlIG5l
ZWQKKyAgICAgICAgdG8gY2hlY2sgdG8gc2VlIGlmIHRoZSBSZW5kZXJWaWV3J3MgbGF5ZXIgaXMg
Y29tcG9zaXRlZCwgYW5kLCBpZiBzbywKKyAgICAgICAgd2hldGhlciBpdCdzIHBhaW50aW5nIGlu
dG8gdGhlIHdpbmRvdyBvciBub3QuIFRoaXMgY2FuIG9jY3VyIHdoZW4gaWZyYW1lcworICAgICAg
ICBhcmUgY29tcG9zaXRlZC4KKworICAgICAgICBUaGUgYnVnIGlzIHRpbWluZy1zZW5zaXRpdmUs
IGludm9sdmluZyBjb21wb3NpdGluZyBpbiBpZnJhbWVzLCBhbmQgSSB3YXMgbm90IGFibGUgdG8K
KyAgICAgICAgY29uY29jdCBhIGdvb2QgdGVzdGNhc2UuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6cmVwYWlu
dFVzaW5nQ29udGFpbmVyKToKKworMjAxMC0wNS0xMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJh
c2VyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBbGxvdyBjb21wb3NpdGluZyBsYXllcnMgdG8gYmUgY29ubmVjdGVkIGFjcm9zcyBp
ZnJhbWUgYm91bmRhcmllcyBvbiBNYWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM4ODU2CiAKICAgICAgICAgQ2hhbmdlcyB0byBhbGxvdyBjb21wb3Np
dGluZyBsYXllcnMgZm9yIGlmcmFtZXMgdG8gc3dpdGNoIGJldHdlZW4gYmVpbmcgaG9zdGVkCiAg
ICAgICAgIGJ5IHRoZSBpZnJhbWUncyBsYXllci1iYWNrZWQgTlNWaWV3LCBhbmQgcGFyZW50ZWQg
aW4gdGhlIEdyYXBoaWNzTGF5ZXIgdHJlZSBvZiB0aGUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3Qu
Y3BwCmluZGV4IGJkNjI0M2FhNWJiM2Y5ZDdhODkzNjg5MGYxN2FjZWNmZTNlYjhjOWMuLmM0MDMy
YTAyN2I0ZDhkNzJkYTI0NGI5YWUxYTYxOWViODQxNTU3MDEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmNwcApAQCAtMTA5NiwyMCArMTA5NiwyOCBAQCBSZW5kZXJCb3hNb2RlbE9iamVjdCog
UmVuZGVyT2JqZWN0Ojpjb250YWluZXJGb3JSZXBhaW50KCkgY29uc3QKIAogdm9pZCBSZW5kZXJP
YmplY3Q6OnJlcGFpbnRVc2luZ0NvbnRhaW5lcihSZW5kZXJCb3hNb2RlbE9iamVjdCogcmVwYWlu
dENvbnRhaW5lciwgY29uc3QgSW50UmVjdCYgciwgYm9vbCBpbW1lZGlhdGUpCiB7Ci0gICAgaWYg
KCFyZXBhaW50Q29udGFpbmVyIHx8IHJlcGFpbnRDb250YWluZXItPmlzUmVuZGVyVmlldygpKSB7
Ci0gICAgICAgIFJlbmRlclZpZXcqIHYgPSByZXBhaW50Q29udGFpbmVyID8gdG9SZW5kZXJWaWV3
KHJlcGFpbnRDb250YWluZXIpIDogdmlldygpOwotICAgICAgICB2LT5yZXBhaW50Vmlld1JlY3Rh
bmdsZShyLCBpbW1lZGlhdGUpOwotICAgIH0gZWxzZSB7CisgICAgaWYgKCFyZXBhaW50Q29udGFp
bmVyKSB7CisgICAgICAgIHZpZXcoKS0+cmVwYWludFZpZXdSZWN0YW5nbGUociwgaW1tZWRpYXRl
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJ
VElORykKLSAgICAgICAgUmVuZGVyVmlldyogdiA9IHZpZXcoKTsKLSAgICAgICAgaWYgKHYtPnVz
ZXNDb21wb3NpdGluZygpKSB7Ci0gICAgICAgICAgICBBU1NFUlQocmVwYWludENvbnRhaW5lci0+
aGFzTGF5ZXIoKSAmJiByZXBhaW50Q29udGFpbmVyLT5sYXllcigpLT5pc0NvbXBvc2l0ZWQoKSk7
Ci0gICAgICAgICAgICByZXBhaW50Q29udGFpbmVyLT5sYXllcigpLT5zZXRCYWNraW5nTmVlZHNS
ZXBhaW50SW5SZWN0KHIpOworICAgIFJlbmRlclZpZXcqIHYgPSB2aWV3KCk7CisgICAgaWYgKHJl
cGFpbnRDb250YWluZXItPmlzUmVuZGVyVmlldygpKSB7CisgICAgICAgIEFTU0VSVChyZXBhaW50
Q29udGFpbmVyID09IHYpOworICAgICAgICBpZiAoIXYtPmhhc0xheWVyKCkgfHwgIXYtPmxheWVy
KCktPmlzQ29tcG9zaXRlZCgpIHx8IHYtPmxheWVyKCktPmJhY2tpbmcoKS0+cGFpbnRpbmdHb2Vz
VG9XaW5kb3coKSkgeworICAgICAgICAgICAgdi0+cmVwYWludFZpZXdSZWN0YW5nbGUociwgaW1t
ZWRpYXRlKTsKKyAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQorICAgIH0KKyAgICAKKyAg
ICBpZiAodi0+dXNlc0NvbXBvc2l0aW5nKCkpIHsKKyAgICAgICAgQVNTRVJUKHJlcGFpbnRDb250
YWluZXItPmhhc0xheWVyKCkgJiYgcmVwYWludENvbnRhaW5lci0+bGF5ZXIoKS0+aXNDb21wb3Np
dGVkKCkpOworICAgICAgICByZXBhaW50Q29udGFpbmVyLT5sYXllcigpLT5zZXRCYWNraW5nTmVl
ZHNSZXBhaW50SW5SZWN0KHIpOworICAgIH0KICNlbHNlCi0gICAgICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogI2VuZGlmCi0gICAgfQogfQogCiB2
b2lkIFJlbmRlck9iamVjdDo6cmVwYWludChib29sIGltbWVkaWF0ZSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55661</attachid>
            <date>2010-05-10 21:47:16 -0700</date>
            <delta_ts>2010-05-10 22:48:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38856-20100510214715.patch</filename>
            <type>text/plain</type>
            <size>2324</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggZWE3ZTZmZjJlZWU0MmE2N2Q2ZDdlMjMwYjA3Mjk0YTZlYWY2YTVmMC4uNjMxYjY1NGM0
MjkxNWRlMzg1MWFlNWYzNzAyZTU3ZDJlMzViNjRkYSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9D
aGFuZ2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAx
MC0wNS0xMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBbGxvdyBjb21wb3NpdGlu
ZyBsYXllcnMgdG8gYmUgY29ubmVjdGVkIGFjcm9zcyBpZnJhbWUgYm91bmRhcmllcyBvbiBNYWMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODU2Cisg
ICAgICAgIAorICAgICAgICBXaGVuIHBhaW50aW5nIGFuIGlmcmFtZSBpbnRvIGEgY29tcG9zaXRp
bmcgbGF5ZXIsIHRoZSAiUGFpbnRCZWhhdmlvckZsYXR0ZW5Db21wb3NpdGluZ0xheWVycyIKKyAg
ICAgICAgZmxhZyB3YXMgbWlzdGFrZW5seSBzZXQsIGJlY2F1c2Ugd2UnZCBkZXRlY3QgdGhhdCB3
ZSB3ZXJlIGRyYXdpbmcgaW50byBhIGJpdG1hcC4gVGhpcyBjYXVzZWQKKyAgICAgICAgY29udGVu
dCB0byBzaG93IHVwIGluIGJvdGggY29tcG9zaXRpbmcgbGF5ZXJzLCBhbmQgdGhlIHBhaW50ZWQg
YmFja2dyb3VuZCBpbnNpZGUgdGhlIGlmcmFtZS4KKyAgICAgICAgCisgICAgICAgIEZpeCBieSB0
YWtpbmcgdGhlIGZsYXR0ZW5pbmcgc3RhdGUgZnJvbSB0aGUgcGFyZW50IGZyYW1lLCBpZiB0aGVy
ZSBpcyBvbmUuIEZvciB0aGUgcm9vdAorICAgICAgICBmcmFtZSwgd2UgY29udGludWUgdG8gbG9v
ayB0byBzZWUgaWYgd2UncmUgcGFpbnRpbmcgaW50byBhIGJpdG1hcC4KKworICAgICAgICAqIFdl
YlZpZXcvV2ViRnJhbWUubW06CisgICAgICAgICgtW1dlYkZyYW1lIF9kcmF3UmVjdDpjb250ZW50
c09ubHk6XSk6CisKIDIwMTAtMDUtMDcgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnIGFuZCBTaW1vbiBGcmFzZXIu
CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRnJhbWUubW0gYi9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViRnJhbWUubW0KaW5kZXggYjQxNjliNjE4ODUyZjc5ODk1NTMxYjhiNTJjMjJl
ZmIwYTVhOTczMC4uNzU0NWJkODJkNDEzYzUxMDZmZDUwOTNkMjJlM2VkYjEwMjRmMTlmNyAxMDA2
NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkZyYW1lLm1tCisrKyBiL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJGcmFtZS5tbQpAQCAtNTQxLDcgKzU0MSwxNSBAQCBzdGF0aWMgaW5saW5lIFdl
YkRhdGFTb3VyY2UgKmRhdGFTb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKIAogICAgIEZy
YW1lVmlldyogdmlldyA9IF9wcml2YXRlLT5jb3JlRnJhbWUtPnZpZXcoKTsKICAgICAKLSAgICBi
b29sIHNob3VsZEZsYXR0ZW4gPSBXS0NHQ29udGV4dElzQml0bWFwQ29udGV4dChjdHgpICYmIFtn
ZXRXZWJWaWV3KHNlbGYpIF9pbmNsdWRlc0ZsYXR0ZW5lZENvbXBvc2l0aW5nTGF5ZXJzV2hlbkRy
YXdpbmdUb0JpdG1hcF07CisgICAgYm9vbCBzaG91bGRGbGF0dGVuID0gZmFsc2U7CisgICAgaWYg
KEZyYW1lKiBwYXJlbnRGcmFtZSA9IF9wcml2YXRlLT5jb3JlRnJhbWUtPnRyZWUoKS0+cGFyZW50
KCkpIHsKKyAgICAgICAgLy8gRm9yIHN1YmZyYW1lcywgd2UgbmVlZCB0byBpbmhlcml0IHRoZSBw
YWludCBiZWhhdmlvciBmcm9tIG91ciBwYXJlbnQKKyAgICAgICAgRnJhbWVWaWV3KiBwYXJlbnRW
aWV3ID0gcGFyZW50RnJhbWUgPyBwYXJlbnRGcmFtZS0+dmlldygpIDogMDsKKyAgICAgICAgaWYg
KHBhcmVudFZpZXcpCisgICAgICAgICAgICBzaG91bGRGbGF0dGVuID0gcGFyZW50Vmlldy0+cGFp
bnRCZWhhdmlvcigpICYgUGFpbnRCZWhhdmlvckZsYXR0ZW5Db21wb3NpdGluZ0xheWVyczsKKyAg
ICB9IGVsc2UKKyAgICAgICAgc2hvdWxkRmxhdHRlbiA9IFdLQ0dDb250ZXh0SXNCaXRtYXBDb250
ZXh0KGN0eCkgJiYgW2dldFdlYlZpZXcoc2VsZikgX2luY2x1ZGVzRmxhdHRlbmVkQ29tcG9zaXRp
bmdMYXllcnNXaGVuRHJhd2luZ1RvQml0bWFwXTsKKwogICAgIFBhaW50QmVoYXZpb3Igb2xkQmVo
YXZpb3IgPSBQYWludEJlaGF2aW9yTm9ybWFsOwogICAgIGlmIChzaG91bGRGbGF0dGVuKSB7CiAg
ICAgICAgIG9sZEJlaGF2aW9yID0gdmlldy0+cGFpbnRCZWhhdmlvcigpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>