<?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>52535</bug_id>
          
          <creation_ts>2011-01-16 07:48:04 -0800</creation_ts>
          <short_desc>offsetLeft is wrong for elements inside a TD whose style is set to position:relative</short_desc>
          <delta_ts>2011-03-12 23:25:59 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://doula.co.il</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Moskovich">playmobil</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>eric</cc>
    
    <cc>hyatt</cc>
    
    <cc>jamesr</cc>
    
    <cc>leviw</cc>
    
    <cc>mitz</cc>
    
    <cc>pennig</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>335045</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-01-16 07:48:04 -0800</bug_when>
    <thetext>Chromium bug: http://crbug.com/15535

The attached test case contains a DIV inside a &lt;TD stylel=&quot;position:relative&quot;&gt; .

The value returned for offsetLeft in the testcase by FF &amp; IE is 302.
WebKit however, returns 2.

Removing position:relative from the TD causes the value of offsetLeft reported by FF/IE &amp; WebKit to agree.

Browsers tested:
WebKit: r74962
FF 3.6.13
IE 8

From what I can tell, this bug renders the navigation menus in the following sites unusable:
http://www.doula.co.il
http://www.raanana.muni.il/
http://www.osem.co.il/_Contactus/Index.asp?CategoryID=12
http://www.beeper.co.il/?CategoryID=232
http://www.newpan.co.il/
http://www.water.gov.il/
http://www.most.gov.il/
http://www.ono.ac.il/
http://www.shoham.muni.il/
http://www.lehavim.muni.il/
http://www.givat-shmuel.muni.il/
http://www.qiryat-gat.muni.il/
http://www.oryehuda.muni.il/
http://www.efrata.muni.il/
http://www.tel-mond.muni.il/
http://www.kfar-yona.muni.il/
http://www.metar.muni.il/
http://www.gderot.muni.il/
http://www.golan.org.il/
http://www.qatzrin.muni.il/
http://www.beitberl.ac.il
http://www.michlalah.edu/
http://www.mishpat.ac.il/
http://www.arihav.com/products/sales/index.asp?category=tools

Possibly related WebKit bugs: 24305 and 26020</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335046</commentid>
    <comment_count>1</comment_count>
      <attachid>79098</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-01-16 07:49:00 -0800</bug_when>
    <thetext>Created attachment 79098
Testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335047</commentid>
    <comment_count>2</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-01-16 07:58:38 -0800</bug_when>
    <thetext>The code that calculates offsetLeft resides in RenderBoxModelObject::offsetLeft() [http://trac.webkit.org/browser/trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp#L389] .

Hyatt/Mitz/Eric: Can you vend me a clue on how I can tell if position:relative is set on the TD?  When I check style()-&gt;position() in this function it comes back as &quot;static&quot;. 

I&apos;m guessing that position:relative isn&apos;t valid for the TD element, so WebKit drops it on the floor? Since I need to check it&apos;s existence here to match FF/IE , any idea how I can tell that it&apos;s set?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348524</commentid>
    <comment_count>3</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2011-02-09 13:35:49 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; I&apos;m guessing that position:relative isn&apos;t valid for the TD element, so WebKit drops it on the floor? Since I need to check it&apos;s existence here to match FF/IE , any idea how I can tell that it&apos;s set?

I&apos;m not sure how you can tell if it&apos;s set or not, but I can verify that it&apos;s dropped on the floor in CSSStyleSelector.cpp::asjustRenderStyle:

// After performing the display mutation, check table rows.  We do not honor position:relative on
// table rows or cells.  This has been established in CSS2.1 (and caused a crash in containingBlock()
// on some sites).
if ((style-&gt;display() == TABLE_HEADER_GROUP || style-&gt;display() == TABLE_ROW_GROUP ||
     style-&gt;display() == TABLE_FOOTER_GROUP || style-&gt;display() == TABLE_ROW || style-&gt;display() == TABLE_CELL) &amp;&amp;
     style-&gt;position() == RelativePosition)
    style-&gt;setPosition(StaticPosition);


Perhaps we need a method to track whether we corrected away from the specified positioning in this case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354572</commentid>
    <comment_count>4</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-02-21 06:43:06 -0800</bug_when>
    <thetext>Levi: Thanks, turns out I can access this by looking at the the raw style declaration in the node:
toElement(node())-&gt;style()-&gt;getPropertyCSSValue(CSSPropertyPosition)-&gt;cssText()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>356036</commentid>
    <comment_count>5</comment_count>
      <attachid>83475</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-02-23 05:14:54 -0800</bug_when>
    <thetext>Created attachment 83475
Work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>356771</commentid>
    <comment_count>6</comment_count>
      <attachid>83625</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-02-24 02:00:39 -0800</bug_when>
    <thetext>Created attachment 83625
Work in progress

Now with layout test, not ready for review yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>358527</commentid>
    <comment_count>7</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-02-26 08:33:05 -0800</bug_when>
    <thetext>After a bit more prodding it looks like the problem is actually in offsetParent() where the table element is skipped if the current element is relatively positioned.  Because WebKit overwrites the TD element&apos;s position CSS attribute, we don&apos;t correctly skip over the table element like other browsers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>360109</commentid>
    <comment_count>8</comment_count>
      <attachid>84273</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-01 12:28:52 -0800</bug_when>
    <thetext>Created attachment 84273
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>360115</commentid>
    <comment_count>9</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-01 12:32:08 -0800</bug_when>
    <thetext>Reviewer note: another approach would be to add a flag to RenderObject or the style object to track that positon:relative was corrected away.  Unfortunately, from what I understand, growing RenderObject is frowned upon.

In short, if you think I should stash this info somewhere rather than looking at the raw style each time, please let me know where I should store the flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>360145</commentid>
    <comment_count>10</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-01 12:56:29 -0800</bug_when>
    <thetext>Would it be crazy to just support position:relative for table elements?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>360221</commentid>
    <comment_count>11</comment_count>
      <attachid>84273</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-01 14:16:10 -0800</bug_when>
    <thetext>Comment on attachment 84273
Patch

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

Great to tackle this. This fix is wrong, though.

&gt; Source/WebCore/rendering/RenderObject.cpp:2161
&gt; +      // If relative positioning is already set, then no need to look at the
&gt; +      // raw style.

Should put that comment on one line.

&gt; Source/WebCore/rendering/RenderObject.cpp:2169
&gt; +      CSSStyleDeclaration* rawStyle = toElement(node())-&gt;style();
&gt; +      RefPtr&lt;CSSValue&gt; position = rawStyle-&gt;getPropertyCSSValue(CSSPropertyPosition);
&gt; +      if (position.get() &amp;&amp; position-&gt;cssText() == &quot;relative&quot;)
&gt; +          return true;
&gt; +      return false;

This works only if the style is set with a style attribute, not when it’s set with a stylesheet. You should add a test case where position:relative is set in the stylesheet, perhaps based on class or ID, and that test case will fail.

If we need this information we will probably have to put it in the RenderStyle. Going back to the DOM doesn’t seem workable because there’s no practical way to go back to all the various style declarations that could have influenced the style of the element.

The style declaration that comes from the style attribute for an element is not called the “raw style” and coining that term here is not a good idea. That one style declaration contains only a small part of what determines the style of an element.

Should not need the call to “.get()” here. And if (x) return true; return false; could just be replaced by return.

Getting the cssText is not the right way to check a CSSValue. The right way is more like this:

    static bool valueIsKeyword(CSSValue* value, int keyword)
    {
        return value &amp;&amp; value-&gt;isPrimitiveValue() &amp;&amp; static_cast&lt;CSSPrimitiveValue*&gt;(value)-&gt;getIdent() == keyword;
    }

    ...

    return valueIsKeyword(rawStyle-&gt;getPropertyCSSValue(CSSPropertyPosition).get(), CSSPropertyRelative);

But I think that’s beside the point since this is the wrong approach.

&gt; Source/WebCore/rendering/RenderObject.h:405
&gt; +    // WebKit doesn&apos;t support relative positioning for certain elements.
&gt; +    // In such cases isRelPositioned() won&apos;t match the value set in the original style declaration.
&gt; +    // This function returns the value in the raw style declaration.

I think this is a confusing comment. It doesn’t make it clear if this lack of support is a bug or a feature. Same comment as above about the term “raw style”.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>361902</commentid>
    <comment_count>12</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-03 13:46:42 -0800</bug_when>
    <thetext>Thanks for the review Darin!

The hack to override the style in CSSStyleSelector.cpp::adjustRenderStyle() was checked in at http://trac.webkit.org/changeset/10977 .  The commit says it&apos;s needed to fix a crash with http://cityoflakeforest.com/cs/pw/cs_pw2a3.htm .  While that URL is still live, the crash doesn&apos;t appear to reproduce anymore if I remove the workaround.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>361907</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-03 13:51:23 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; The hack to override the style in CSSStyleSelector.cpp::adjustRenderStyle() was checked in at http://trac.webkit.org/changeset/10977 .  The commit says it&apos;s needed to fix a crash with http://cityoflakeforest.com/cs/pw/cs_pw2a3.htm .  While that URL is still live, the crash doesn&apos;t appear to reproduce anymore if I remove the workaround.

Since Hyatt made that change, I think he’s the best person to discuss it with.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>361911</commentid>
    <comment_count>14</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-03 13:57:10 -0800</bug_when>
    <thetext>Thanks Darin, I&apos;d be grateful if one of the cc-ed Apple folks could take a peek at rdar://4107882  and let me know if it notes any repro steps apart from the URL referenced in the CL description.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>361940</commentid>
    <comment_count>15</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-03 14:23:29 -0800</bug_when>
    <thetext>ap was kind enough to look up the radar for me (thanks!), the only relevant comment is:
&quot;&quot;&quot;
The problem is an inline block with no containingBlock. I don&apos;t know whether this needs to be guarded against, or whether this is considered an illegal state.
&quot;&quot;&quot;&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>361941</commentid>
    <comment_count>16</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-03 14:27:14 -0800</bug_when>
    <thetext>Note that comment was by John Sullivan before our real expert on this, Hyatt, started working on the bug. Hyatt didn’t comment on his fix in the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362487</commentid>
    <comment_count>17</comment_count>
      <attachid>84748</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-04 07:43:24 -0800</bug_when>
    <thetext>Created attachment 84748
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362572</commentid>
    <comment_count>18</comment_count>
      <attachid>84748</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-04 09:48:33 -0800</bug_when>
    <thetext>Comment on attachment 84748
Patch

I would like Hyatt to review; rather than removing the code entirely there may be something else we need to do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362610</commentid>
    <comment_count>19</comment_count>
      <attachid>84748</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-03-04 10:31:56 -0800</bug_when>
    <thetext>Comment on attachment 84748
Patch

This wasn&apos;t a &quot;hack.&quot;  Browsers don&apos;t support relative positioning of table cells.  You can&apos;t take this code out or you will cause compatibility problems.  We should look into fixing offsetParent in some way rather than changing this code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362612</commentid>
    <comment_count>20</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-03-04 10:35:13 -0800</bug_when>
    <thetext>See

http://www.w3.org/TR/CSS2/visuren.html#choose-position

&quot;The effect of &apos;position:relative&apos; on table-row-group, table-header-group, table-footer-group, table-row, table-column-group, table-column, table-cell, and table-caption elements is undefined.&quot;

... which basically means &quot;don&apos;t do it because browsers don&apos;t support it.&quot;

There is no technical limitation to supporting relative positioning on these objects, but historically browsers have not, since it would create bugs and compatibility issues to support it (since relative positioning changes both stacking and if used with left/top the actual placement).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362674</commentid>
    <comment_count>21</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-03-04 13:27:04 -0800</bug_when>
    <thetext>What we might have to do for this is add a bit like we did for positioning.  If isRelPositioned() uses a RenderObject bit, then it can not be set for the table types.  Then offsetParent could go back to the original style with a comment saying why it doesn&apos;t check the bit.

I&apos;d really like to understand more about what other browsers do here though first.  You need to write a stacking test to see if IE and FFX are supporting position:relative layer creation.  Then a secondary test would be to set left/top on the table cell and see what happens.

Certainly at the time I implemented this change (many years ago), no browsers supported position:relative on table cells.  It may be that has changed.  Let&apos;s test and see.  Be sure to try quirks modes and strict mode when testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363289</commentid>
    <comment_count>22</comment_count>
      <attachid>84931</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-07 03:40:26 -0800</bug_when>
    <thetext>Created attachment 84931
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363300</commentid>
    <comment_count>23</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-07 04:26:07 -0800</bug_when>
    <thetext>Uploaded a new patch which only changes the behavior of offsetParent, the tracking bit is stored in StyleNonInheritedData .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363376</commentid>
    <comment_count>24</comment_count>
      <attachid>84931</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-07 09:36:16 -0800</bug_when>
    <thetext>Comment on attachment 84931
Patch

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

I wonder if there are any code paths that reuse the same style object and change the position. I couldn’t find any, but if they existed we’d want to clear this flag.

There might be some obscure case involving an SVG element.

&gt; Source/WebCore/css/CSSStyleSelector.cpp:1939
&gt; +            style-&gt;setPositionWasRelative(true);
&gt;              style-&gt;setPosition(StaticPosition);

I noticed similar code for frame and frameset elements. Perhaps the bit should be set there too.

&gt; Source/WebCore/rendering/RenderObject.cpp:2618
&gt; -                    (!curr-&gt;isPositioned() &amp;&amp; !curr-&gt;isRelPositioned() &amp;&amp; !curr-&gt;isBody()))) {
&gt; +                    (!curr-&gt;isPositioned() &amp;&amp; !(curr-&gt;isRelPositioned() || curr-&gt;style()-&gt;positionWasRelative()) &amp;&amp; !curr-&gt;isBody()))) {

It’s a little awkward here to use:

    !a &amp;&amp; !(b || c) &amp;&amp; !d

Instead of:

    !a &amp;&amp; !b &amp;&amp; !c &amp;&amp; !d

Or:

    !(a || b || c || d)

If you instead added a single inline helper function that returned “is or was relative” then I could see keeping it the way you have it here.

&gt; Source/WebCore/rendering/style/StyleRareNonInheritedData.h:112
&gt; +    // WebKit doesn&apos;t support position:relative for several table elements and overwrites the style internally when position:relative is encountered.
&gt; +    // This flag preservers the fact that the position attribute was originally relative, and was subsequently &quot;corrected&quot;.

Typo: “preservers”.

I’m not sure this comment strikes the right tone. The use of scare quotes around the word corrected and the words “doesn’t support” make it sound like the handling of relative positioning is a bug. Unless that is the case I would prefer not to give that impression.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>364438</commentid>
    <comment_count>25</comment_count>
      <attachid>85163</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-09 05:02:53 -0800</bug_when>
    <thetext>Created attachment 85163
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>364439</commentid>
    <comment_count>26</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-09 05:03:50 -0800</bug_when>
    <thetext>Thanks Darin, made all changes + fixed comments + added layout test for iframes.  Could you take another look please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>364495</commentid>
    <comment_count>27</comment_count>
      <attachid>85163</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-09 07:32:33 -0800</bug_when>
    <thetext>Comment on attachment 85163
Patch

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

&gt; Source/WebCore/ChangeLog:1
&gt; +2011-03-09  Jeremy  &lt;playmobil@dhcp-172-28-32-85.tlv.corp.google.com&gt;

Double change log.

&gt; Source/WebCore/ChangeLog:34
&gt; +2011-03-07  Jeremy Moskovich  &lt;jeremy@chromium.org&gt;

Double change log.

&gt; Source/WebCore/rendering/RenderObject.cpp:2155
&gt; +bool RenderObject::isOriginallyRelPositioned() const

I would call this wasOriginallyRelativePositioned. No need to abbreviate, and the verb tense of &quot;is&quot; and &quot;originally&quot; don’t match.

&gt; Source/WebCore/rendering/style/StyleRareNonInheritedData.h:112
&gt; +    // WebKit overwrites the position:relative style for certain elements for which such positioning is illegal or behavior is undefined.
&gt; +    // This flag preserves the fact that the position attribute was originally specified as relative.

Don}t need this comment twice. I would suggest keeping it just in RenderObject.h.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365054</commentid>
    <comment_count>28</comment_count>
      <attachid>85298</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-10 01:59:40 -0800</bug_when>
    <thetext>Created attachment 85298
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365055</commentid>
    <comment_count>29</comment_count>
      <attachid>85299</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-10 02:02:05 -0800</bug_when>
    <thetext>Created attachment 85299
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365814</commentid>
    <comment_count>30</comment_count>
      <attachid>85299</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-10 21:36:46 -0800</bug_when>
    <thetext>Comment on attachment 85299
Patch

Clearing flags on attachment: 85299

Committed r80814: &lt;http://trac.webkit.org/changeset/80814&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365815</commentid>
    <comment_count>31</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-10 21:36:52 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366542</commentid>
    <comment_count>32</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-03-12 01:08:24 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; 
&gt; I&apos;d really like to understand more about what other browsers do here though first.  You need to write a stacking test to see if IE and FFX are supporting position:relative layer creation.  Then a secondary test would be to set left/top on the table cell and see what happens.
&gt; 
&gt; Certainly at the time I implemented this change (many years ago), no browsers supported position:relative on table cells.  It may be that has changed.  Let&apos;s test and see.  Be sure to try quirks modes and strict mode when testing.

I&apos;m disappointed that my comments here were ignored by both the patch author and the patch reviewer.  It&apos;s possible we could have enabled relative positioning, but nobody even bothered to write tests to see what happens in IE9 or FFX4.

Also, a bit in the style isn&apos;t how I would have implemented this.  We already have RenderObject bits for this kind of separation for replaced, overflow, absolute/fixed positioning, etc.  If we&apos;re going to selectively ignore relative positioning, it would have been better to use the same approach as for other properties.

However, we still needed to do basic testing just to determine whether or not relative positioning really needed to remain off.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366550</commentid>
    <comment_count>33</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-03-12 01:41:01 -0800</bug_when>
    <thetext>Filed https://bugs.webkit.org/show_bug.cgi?id=56246 to track the investigation of relative positioning support.  As you can see from preliminary testing in that bug, this entire patch was probably unnecessary. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366631</commentid>
    <comment_count>34</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-12 19:19:39 -0800</bug_when>
    <thetext>OK, sorry Dave. My bad.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366666</commentid>
    <comment_count>35</comment_count>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2011-03-12 23:25:59 -0800</bug_when>
    <thetext>Only half the sites listed in comment #1 are fixed by this patch, the other half have various other issues.

Sites which are still broken:
http://www.osem.co.il/_Contactus/Index.asp?CategoryID=12
http://www.beeper.co.il/?CategoryID=232
http://www.givat-shmuel.muni.il/
http://www.oryehuda.muni.il/
http://www.kfar-yona.muni.il/
http://www.metar.muni.il/
http://www.mishpat.ac.il/
http://www.michlalah.edu/
http://www.arihav.com/products/sales/index.asp?category=tools - side menus
http://www.tel-mond.muni.il/
http://www.golan.org.il/
http://www.qatzrin.muni.il/388/</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>79098</attachid>
            <date>2011-01-16 07:49:00 -0800</date>
            <delta_ts>2011-01-16 07:49:00 -0800</delta_ts>
            <desc>Testcase</desc>
            <filename>testcase.html</filename>
            <type>text/html</type>
            <size>779</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">77u/PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPHNjcmlwdD4KZnVuY3Rpb24gbG9nKHN0
cikgewogIHZhciBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7CiAgbGkuYXBwZW5k
Q2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoc3RyKSk7CiAgdmFyIGNvbnNvbGUgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpOwogIGNvbnNvbGUuYXBwZW5kQ2hpbGQobGkp
Owp9CgpmdW5jdGlvbiBwcmludERpdlBsYWNlbWVudCgpIHsKCXZhciB0aGVfbm9kZSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCdtZW51X25vZGUnKTsKCWxvZygibm9kZS5vZmZzZXRQYXJlbnQu
b2Zmc2V0TGVmdD0iICsgdGhlX25vZGUub2Zmc2V0UGFyZW50Lm9mZnNldExlZnQgKyAiIChTaG91
bGQgYmUgMzAyIGFzIGluIEZGIGFuZCBJRSkiKTsKfQo8L3NjcmlwdD4KPC9oZWFkPgo8Ym9keSBv
bmxvYWQ9InByaW50RGl2UGxhY2VtZW50KCkiPgo8ZGl2IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0
ZTsgdG9wOjBweDsgbGVmdDowcHg7IHdpZHRoOjgwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNDM0RD
QkY7Ij4KCTx0YWJsZSB3aWR0aD0iMjAwcHgiIHN0eWxlPSJtYXJnaW46IGF1dG87Ij4KCQk8dHI+
CgkJCTx0ZCBzdHlsZT0icG9zaXRpb246cmVsYXRpdmUiPgoJCQkJPGRpdiBpZD1tZW51X25vZGU+
TWVudSBOb2RlPC9kaXY+CgkJCTwvdGQ+CgkJPC90cj4KCTwvdGFibGU+CjwvZGl2Pgo8YnI+PGJy
Pgo8dWwgaWQ9Y29uc29sZT48L3VsPgo8L2JvZHk+CjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83475</attachid>
            <date>2011-02-23 05:14:54 -0800</date>
            <delta_ts>2011-02-24 02:00:39 -0800</delta_ts>
            <desc>Work in progress</desc>
            <filename>offset_left.patch</filename>
            <type>text/plain</type>
            <size>2477</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">Y29tbWl0IDY1YzM0ZDQ5MzdhMzk2OWU0ZWMxMzI4MDBmYjE5MjE1OGZkYzQ0NTAKQXV0aG9yOiBK
ZXJlbXkgTW9za292aWNoIDxqZXJlbXlAY2hyb21pdW0ub3JnPgpEYXRlOiAgIFdlZCBGZWIgMjMg
MTU6MTQ6MTEgMjAxMSArMDIwMAoKICAgIEZpeCBidWcgNTI1MzUKCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAppbmRleCBmZmJlY2NlLi4x
NzNjNzg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJSZW5kZXJCb3hNb2RlbE9iamVjdC5oIgogCisjaW5jbHVkZSAiQ1NTVmFsdWVLZXl3b3Jk
cy5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkhUTUxGcmFtZU93
bmVyRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgpAQCAtNDI0LDYgKzQyNSwxNiBA
QCBpbnQgUmVuZGVyQm94TW9kZWxPYmplY3Q6Om9mZnNldExlZnQoKSBjb25zdAogICAgIGlmIChp
c0JvZHkoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgCisgICAgLy8gV2UgbmVlZCB0byBhY2Nl
c3MgdGhlIHJhdyBzdHlsZSBkZWNsYXJhdGlvbiBmb3IgdGhlICJwb3NpdGlvbiIgY3NzIGF0dHJp
YnV0ZS4KKyAgICAvLyBUaGlzIGlzIGJlYXVzZSBXZWJLaXQgdGhyb3dzIHRoaXMgdmFsdWUgb3V0
IGlmIGl0J3MgaW52YWxpZCBmb3IgbGF5b3V0LCBob3dldmVyCisgICAgLy8gd2Ugc3RpbGwgbmVl
ZCB0aGUgdmFsdWUgaGVyZSB0byBtYXRjaCBJRSBhbmQgRkYuCisgICAgYm9vbCBpc19yZWxhdGl2
ZSA9IGZhbHNlOworICAgIENTU1N0eWxlRGVjbGFyYXRpb24qIHJhd19zdHlsZSA9IHRvRWxlbWVu
dChub2RlKCkpLT5zdHlsZSgpOworICAgIFJlZlB0cjxDU1NWYWx1ZT4gcG9zaXRpb24gPSByYXdf
c3R5bGUtPmdldFByb3BlcnR5Q1NTVmFsdWUoQ1NTUHJvcGVydHlQb3NpdGlvbik7CisgICAgaWYg
KHBvc2l0aW9uLmdldCgpICYmIHBvc2l0aW9uLT5jc3NUZXh0KCkgPT0gInJlbGF0aXZlIikKKyAg
ICAgICAgaXNfcmVsYXRpdmUgPSB0cnVlOworICAgIAorICAgIC8vIG9mZnNldFBhciA9PSBUYWJs
ZSBlbGVtZW50CiAgICAgUmVuZGVyQm94TW9kZWxPYmplY3QqIG9mZnNldFBhciA9IG9mZnNldFBh
cmVudCgpOwogICAgIGludCB4UG9zID0gKGlzQm94KCkgPyB0b1JlbmRlckJveCh0aGlzKS0+eCgp
IDogMCk7CiAgICAgCkBAIC00MzEsOCArNDQyLDEwIEBAIGludCBSZW5kZXJCb3hNb2RlbE9iamVj
dDo6b2Zmc2V0TGVmdCgpIGNvbnN0CiAgICAgLy8gcmV0dXJuIHRoZSBkaXN0YW5jZSBiZXR3ZWVu
IHRoZSBjYW52YXMgb3JpZ2luIGFuZCB0aGUgbGVmdCBib3JkZXIgZWRnZSAKICAgICAvLyBvZiB0
aGUgZWxlbWVudCBhbmQgc3RvcCB0aGlzIGFsZ29yaXRobS4KICAgICBpZiAob2Zmc2V0UGFyKSB7
Ci0gICAgICAgIGlmIChvZmZzZXRQYXItPmlzQm94KCkgJiYgIW9mZnNldFBhci0+aXNCb2R5KCkp
CisgICAgICAgIGlmIChvZmZzZXRQYXItPmlzQm94KCkgJiYgIW9mZnNldFBhci0+aXNCb2R5KCkp
IHsKKyAgICAgICAgICAgIC8vIGJvcmRlckxlZnQgb2YgdGFibGUgZWxlbWVudCBpcyAwLgogICAg
ICAgICAgICAgeFBvcyAtPSB0b1JlbmRlckJveChvZmZzZXRQYXIpLT5ib3JkZXJMZWZ0KCk7Cisg
ICAgICAgIH0KICAgICAgICAgaWYgKCFpc1Bvc2l0aW9uZWQoKSkgewogICAgICAgICAgICAgaWYg
KGlzUmVsUG9zaXRpb25lZCgpKQogICAgICAgICAgICAgICAgIHhQb3MgKz0gcmVsYXRpdmVQb3Np
dGlvbk9mZnNldFgoKTsKQEAgLTQ0Myw3ICs0NTYsOCBAQCBpbnQgUmVuZGVyQm94TW9kZWxPYmpl
Y3Q6Om9mZnNldExlZnQoKSBjb25zdAogICAgICAgICAgICAgICAgICAgICB4UG9zICs9IHRvUmVu
ZGVyQm94KGN1cnIpLT54KCk7CiAgICAgICAgICAgICAgICAgY3VyciA9IGN1cnItPnBhcmVudCgp
OwogICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKG9mZnNldFBhci0+aXNCb3goKSAmJiBv
ZmZzZXRQYXItPmlzQm9keSgpICYmICFvZmZzZXRQYXItPmlzUmVsUG9zaXRpb25lZCgpICYmICFv
ZmZzZXRQYXItPmlzUG9zaXRpb25lZCgpKQorCisgICAgICAgICAgICBpZiAoKCFpc0JveCgpICYm
IGlzX3JlbGF0aXZlKSB8fCAob2Zmc2V0UGFyLT5pc0JveCgpICYmIG9mZnNldFBhci0+aXNCb2R5
KCkgJiYgIW9mZnNldFBhci0+aXNSZWxQb3NpdGlvbmVkKCkgJiYgIW9mZnNldFBhci0+aXNQb3Np
dGlvbmVkKCkpKQogICAgICAgICAgICAgICAgIHhQb3MgKz0gdG9SZW5kZXJCb3gob2Zmc2V0UGFy
KS0+eCgpOwogICAgICAgICB9CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83625</attachid>
            <date>2011-02-24 02:00:39 -0800</date>
            <delta_ts>2011-03-01 12:28:49 -0800</delta_ts>
            <desc>Work in progress</desc>
            <filename>offset_left.patch</filename>
            <type>text/plain</type>
            <size>4660</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">Y29tbWl0IGU4NmEwZjNmM2FlYWY5ZWNkNWMyN2E5MTUzYWI4MzAwNzFhY2JhMTcKQXV0aG9yOiBK
ZXJlbXkgTW9za292aWNoIDxqZXJlbXlAY2hyb21pdW0ub3JnPgpEYXRlOiAgIFdlZCBGZWIgMjMg
MTU6MTQ6MTEgMjAxMSArMDIwMAoKICAgIEZpeCBidWcgNTI1MzUKCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0
LXJlbGF0aXZlLXRkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5hZTIyMmFhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9w
b3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDcgQEAKK01lbnUgTm9kZQorCisKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExlZnQg
aXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIHRkIGVs
ZW1lbnQuCisKK25vZGUub2Zmc2V0UGFyZW50Lm9mZnNldExlZnQ9MzAyIChTaG91bGQgYmUgMzAy
IGFzIGluIEZGIGFuZCBJRSkKK2ZpbmRQb3NYPTMwMiAoU2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBh
bmQgSUUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29m
ZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRp
b25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjU2NDM1ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbApAQCAtMCwwICsx
LDQ3IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCgpOworCitmdW5jdGlvbiBsb2coc3RyKSB7CisgIHZhciBsaSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImxpIik7CisgIGxpLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHRO
b2RlKHN0cikpOworICB2YXIgY29uc29sZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25z
b2xlIik7CisgIGNvbnNvbGUuYXBwZW5kQ2hpbGQobGkpOworfQorCitmdW5jdGlvbiBmaW5kUG9z
WChvYmopIHsKKyAgdmFyIHJldCA9IDA7CisgIGRvIHsKKyAgICByZXQgKz0gb2JqLm9mZnNldExl
ZnQ7CisgICAgb2JqID0gb2JqLm9mZnNldFBhcmVudDsKKyAgfSB3aGlsZSAob2JqKTsKKyAgcmV0
dXJuIHJldDsKK30KKworLy8gVGhpcyBjb2RlIHdhcyByZWR1Y2VkIGZyb20gdGhlIG1lbnUgc3lz
dGVtIG9uIGRvdWxhLmNvLmlsIHdoaWNoIGlzIHdoeSB3ZSBjYWxsIG9mZnNldFBhcmVudC5vZmZz
ZXRMZWZ0IHJhdGhlciB0aGFuCisvLyBqdXN0IHJldHJlaXZpbmcgdGhlIGVsZW1lbnQgZGlyZWN0
bHkuCitmdW5jdGlvbiBwcmludERpdlBsYWNlbWVudCgpIHsKKyAgdmFyIHRoZV9ub2RlID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21lbnVfbm9kZScpOworICBsb2coIm5vZGUub2Zmc2V0UGFy
ZW50Lm9mZnNldExlZnQ9IiArIHRoZV9ub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0ICsgIiAo
U2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpIik7CisgIGxvZygiZmluZFBvc1g9IiArIGZp
bmRQb3NYKHRoZV9ub2RlLm9mZnNldFBhcmVudCkgKyAiIChTaG91bGQgYmUgMzAyIGFzIGluIEZG
IGFuZCBJRSkiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJwcmludERp
dlBsYWNlbWVudCgpIj4KKzxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB0b3A6MHB4OyBs
ZWZ0OjBweDsgd2lkdGg6ODAwcHg7IGJhY2tncm91bmQtY29sb3I6I0MzRENCRjsiPgorCTx0YWJs
ZSB3aWR0aD0iMjAwcHgiIHN0eWxlPSJtYXJnaW46IGF1dG87Ij4KKwkJPHRyPgorCQkJPHRkIHN0
eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZSI+CisJCQkJPGRpdiBpZD1tZW51X25vZGU+TWVudSBOb2Rl
PC9kaXY+CisJCQk8L3RkPgorCQk8L3RyPgorCTwvdGFibGU+Cis8L2Rpdj4KKzxicj48YnI+Cis8
aDM+VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgb2Zmc2V0TGVmdCBpcyBjYWxjdWxhdGVkIGNvcnJl
Y3RseSBmb3IgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgdGQgZWxlbWVudC48L2gzPgorPHVsIGlk
PWNvbnNvbGU+PC91bD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxP
YmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmNwcAppbmRleCBmZmJlY2NlLi4xY2ZkMTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTQyNCw2ICs0MjQsNyBAQCBpbnQg
UmVuZGVyQm94TW9kZWxPYmplY3Q6Om9mZnNldExlZnQoKSBjb25zdAogICAgIGlmIChpc0JvZHko
KSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgCisgICAgLy8gb2Zmc2V0UGFyID09IFRhYmxlIGVs
ZW1lbnQKICAgICBSZW5kZXJCb3hNb2RlbE9iamVjdCogb2Zmc2V0UGFyID0gb2Zmc2V0UGFyZW50
KCk7CiAgICAgaW50IHhQb3MgPSAoaXNCb3goKSA/IHRvUmVuZGVyQm94KHRoaXMpLT54KCkgOiAw
KTsKICAgICAKQEAgLTQzMSw4ICs0MzIsMTAgQEAgaW50IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpv
ZmZzZXRMZWZ0KCkgY29uc3QKICAgICAvLyByZXR1cm4gdGhlIGRpc3RhbmNlIGJldHdlZW4gdGhl
IGNhbnZhcyBvcmlnaW4gYW5kIHRoZSBsZWZ0IGJvcmRlciBlZGdlIAogICAgIC8vIG9mIHRoZSBl
bGVtZW50IGFuZCBzdG9wIHRoaXMgYWxnb3JpdGhtLgogICAgIGlmIChvZmZzZXRQYXIpIHsKLSAg
ICAgICAgaWYgKG9mZnNldFBhci0+aXNCb3goKSAmJiAhb2Zmc2V0UGFyLT5pc0JvZHkoKSkKKyAg
ICAgICAgaWYgKG9mZnNldFBhci0+aXNCb3goKSAmJiAhb2Zmc2V0UGFyLT5pc0JvZHkoKSkgewor
ICAgICAgICAgICAgLy8gYm9yZGVyTGVmdCBvZiB0YWJsZSBlbGVtZW50IGlzIDAuCiAgICAgICAg
ICAgICB4UG9zIC09IHRvUmVuZGVyQm94KG9mZnNldFBhciktPmJvcmRlckxlZnQoKTsKKyAgICAg
ICAgfQogICAgICAgICBpZiAoIWlzUG9zaXRpb25lZCgpKSB7CiAgICAgICAgICAgICBpZiAoaXNS
ZWxQb3NpdGlvbmVkKCkpCiAgICAgICAgICAgICAgICAgeFBvcyArPSByZWxhdGl2ZVBvc2l0aW9u
T2Zmc2V0WCgpOwpAQCAtNDQzLDcgKzQ0NiwxOCBAQCBpbnQgUmVuZGVyQm94TW9kZWxPYmplY3Q6
Om9mZnNldExlZnQoKSBjb25zdAogICAgICAgICAgICAgICAgICAgICB4UG9zICs9IHRvUmVuZGVy
Qm94KGN1cnIpLT54KCk7CiAgICAgICAgICAgICAgICAgY3VyciA9IGN1cnItPnBhcmVudCgpOwog
ICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKG9mZnNldFBhci0+aXNCb3goKSAmJiBvZmZz
ZXRQYXItPmlzQm9keSgpICYmICFvZmZzZXRQYXItPmlzUmVsUG9zaXRpb25lZCgpICYmICFvZmZz
ZXRQYXItPmlzUG9zaXRpb25lZCgpKQorICAgICAgICAgICAgYm9vbCBhZGRfcGFyZW50X29mZnNl
dCA9IGZhbHNlOworICAgICAgICAgICAgaWYgKG5vZGUoKS0+aGFzVGFnTmFtZSh0ZFRhZykpIHsK
KyAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBhY2Nlc3MgdGhlIHJhdyBzdHlsZSBkZWNsYXJh
dGlvbiBmb3IgdGhlICJwb3NpdGlvbiIgY3NzIGF0dHJpYnV0ZS4KKyAgICAgICAgICAgICAgLy8g
V2ViS2l0IHRocm93cyB0aGlzIHZhbHVlIG91dCBpZiBpdCdzIGludmFsaWQgZm9yIGxheW91dCwg
aG93ZXZlciB3ZSBzdGlsbAorICAgICAgICAgICAgICAvLyBuZWVkIHRoZSB2YWx1ZSBoZXJlIHRv
IG1hdGNoIElFIGFuZCBGRi4KKyAgICAgICAgICAgICAgQ1NTU3R5bGVEZWNsYXJhdGlvbiogcmF3
X3N0eWxlID0gdG9FbGVtZW50KG5vZGUoKSktPnN0eWxlKCk7CisgICAgICAgICAgICAgIFJlZlB0
cjxDU1NWYWx1ZT4gcG9zaXRpb24gPSByYXdfc3R5bGUtPmdldFByb3BlcnR5Q1NTVmFsdWUoQ1NT
UHJvcGVydHlQb3NpdGlvbik7CisgICAgICAgICAgICAgIGlmIChwb3NpdGlvbi5nZXQoKSAmJiBw
b3NpdGlvbi0+Y3NzVGV4dCgpID09ICJyZWxhdGl2ZSIpCisgICAgICAgICAgICAgICAgICBhZGRf
cGFyZW50X29mZnNldCA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAgIAorICAg
ICAgICAgICAgaWYgKGFkZF9wYXJlbnRfb2Zmc2V0IHx8IChvZmZzZXRQYXItPmlzQm94KCkgJiYg
b2Zmc2V0UGFyLT5pc0JvZHkoKSAmJiAhb2Zmc2V0UGFyLT5pc1JlbFBvc2l0aW9uZWQoKSAmJiAh
b2Zmc2V0UGFyLT5pc1Bvc2l0aW9uZWQoKSkpCiAgICAgICAgICAgICAgICAgeFBvcyArPSB0b1Jl
bmRlckJveChvZmZzZXRQYXIpLT54KCk7CiAgICAgICAgIH0KICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84273</attachid>
            <date>2011-03-01 12:28:52 -0800</date>
            <delta_ts>2011-03-04 07:43:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52535-20110301122851.patch</filename>
            <type>text/plain</type>
            <size>7522</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogNzk4NjkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5ZDNmNTM0ZmM5MDY5NDkyYTBkZWE3
YWE1MGVhOGFhZTZlM2M3MTgwLi5hNDdmZWMxMWM0ZmRmMzA1YjNmMWQxOWEzMzgzZGM1ZWNjZTJi
NWY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDMtMDEgIEplcmVteSBNb3Nrb3ZpY2gg
IDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMg
aW4gV2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTI1MzUKKworICAgICAgICBBZGQgdGVzdCB0byBtYWtlIHN1cmUgdGhhdCBvZmZzZXRMZWZ0
IG1hdGNoZXMgRkYvSUUgZm9yIGEgcmVsYXRpdmVseQorICAgICAgICBwb3NpdGlvbmVkIFREIGVs
ZW1lbnQuCisgICAgICAgIFRlc3RjYXNlIGlzIGEgcmVkdWN0aW9uIGZyb20gZG91bGEuY28uaWwu
CisKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUt
dGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5n
L29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbDogQWRkZWQuCisKIDIwMTEtMDItMjggIEFkYW0g
Um9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFNraXAgYSBzb21ldGltZXMtY3Jh
c2hpbmcgdGVzdCBvbiBXaW5kb3dzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5hZTIyMmFhMGYwNjg0ZmM1NDRmZWM4M2UyMjY2ZTg1MTg2YjIx
ZTYxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmlu
Zy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK01l
bnUgTm9kZQorCisKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExlZnQgaXMgY2FsY3Vs
YXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIHRkIGVsZW1lbnQuCisK
K25vZGUub2Zmc2V0UGFyZW50Lm9mZnNldExlZnQ9MzAyIChTaG91bGQgYmUgMzAyIGFzIGluIEZG
IGFuZCBJRSkKK2ZpbmRQb3NYPTMwMiAoU2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQt
cmVsYXRpdmUtdGQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zm
c2V0TGVmdC1yZWxhdGl2ZS10ZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU2NDM1ZGUzZjBmNjExNTE3Njgy
MDc3YWVmMGYxMzc4NjFhZWMyZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbApAQCAtMCwwICsx
LDQ3IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCgpOworCitmdW5jdGlvbiBsb2coc3RyKSB7CisgIHZhciBsaSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImxpIik7CisgIGxpLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHRO
b2RlKHN0cikpOworICB2YXIgY29uc29sZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25z
b2xlIik7CisgIGNvbnNvbGUuYXBwZW5kQ2hpbGQobGkpOworfQorCitmdW5jdGlvbiBmaW5kUG9z
WChvYmopIHsKKyAgdmFyIHJldCA9IDA7CisgIGRvIHsKKyAgICByZXQgKz0gb2JqLm9mZnNldExl
ZnQ7CisgICAgb2JqID0gb2JqLm9mZnNldFBhcmVudDsKKyAgfSB3aGlsZSAob2JqKTsKKyAgcmV0
dXJuIHJldDsKK30KKworLy8gVGhpcyBjb2RlIHdhcyByZWR1Y2VkIGZyb20gdGhlIG1lbnUgc3lz
dGVtIG9uIGRvdWxhLmNvLmlsIHdoaWNoIGlzIHdoeSB3ZSBjYWxsIG9mZnNldFBhcmVudC5vZmZz
ZXRMZWZ0IHJhdGhlciB0aGFuCisvLyBqdXN0IHJldHJlaXZpbmcgdGhlIGVsZW1lbnQgZGlyZWN0
bHkuCitmdW5jdGlvbiBwcmludERpdlBsYWNlbWVudCgpIHsKKyAgdmFyIHRoZV9ub2RlID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21lbnVfbm9kZScpOworICBsb2coIm5vZGUub2Zmc2V0UGFy
ZW50Lm9mZnNldExlZnQ9IiArIHRoZV9ub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0ICsgIiAo
U2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpIik7CisgIGxvZygiZmluZFBvc1g9IiArIGZp
bmRQb3NYKHRoZV9ub2RlLm9mZnNldFBhcmVudCkgKyAiIChTaG91bGQgYmUgMzAyIGFzIGluIEZG
IGFuZCBJRSkiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJwcmludERp
dlBsYWNlbWVudCgpIj4KKzxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB0b3A6MHB4OyBs
ZWZ0OjBweDsgd2lkdGg6ODAwcHg7IGJhY2tncm91bmQtY29sb3I6I0MzRENCRjsiPgorCTx0YWJs
ZSB3aWR0aD0iMjAwcHgiIHN0eWxlPSJtYXJnaW46IGF1dG87Ij4KKwkJPHRyPgorCQkJPHRkIHN0
eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZSI+CisJCQkJPGRpdiBpZD1tZW51X25vZGU+TWVudSBOb2Rl
PC9kaXY+CisJCQk8L3RkPgorCQk8L3RyPgorCTwvdGFibGU+Cis8L2Rpdj4KKzxicj48YnI+Cis8
aDM+VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgb2Zmc2V0TGVmdCBpcyBjYWxjdWxhdGVkIGNvcnJl
Y3RseSBmb3IgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgdGQgZWxlbWVudC48L2gzPgorPHVsIGlk
PWNvbnNvbGU+PC91bD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKaW5kZXggZDc2YzY5YzFlNWMwMDY2YTU2ZmJlYjQzYjA4NTgwNzdkMjM3NjE1
YS4uMjRlOGMwNTEwZjE1MjY4MjYxOTUxNjVhNGVkZjU2MzczMDVkZTZhNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI2IEBACisyMDExLTAzLTAxICBKZXJlbXkgTW9za292aWNoICA8amVyZW15QGNo
cm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBGaXggbmF2aWdhdGlvbiBtZW51cyBvbiBhIGJ1bmNoIG9mIHNpdGVzIGluIFdlYktpdC4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNTM1CisK
KyAgICAgICAgV2ViS2l0IGRvZXNuJ3Qgc3VwcG9ydCBwb3NpdGlvbjpyZWxhdGl2ZSBmb3Igc2V2
ZXJhbCB0YWJsZSBlbGVtZW50cyBhbmQgCisgICAgICAgIG92ZXJ3cml0ZXMgdGhlIHN0eWxlIGlu
dGVybmFsbHkgd2hlbiBwb3NpdGlvbjpyZWxhdGl2ZSBpcyBlbmNvdW50ZXJlZC4KKyAgICAgICAg
VW5mb3J0dW5hdGVseSBwb3NpdGlvbjpyZWxhdGl2ZSBhZmZlY3RzIHRoZSBjaG9pY2Ugb2Ygbm9k
ZXMgcmV0dXJuZWQgYnkKKyAgICAgICAgb2Zmc2V0UGFyZW50LgorCisgICAgICAgIFRoaXMgQ0wg
bWFrZXMgb2Zmc2V0UGFyZW50IGNvbnN1bHQgdGhlIHJhdyBzdHlsZSBkZWNsYXJhdGlvbiwgcmF0
aGVyIHRoYW4KKyAgICAgICAgdGhlIGNvcnJlY3RlZCBzdHlsZS4gVGhpcyBtYWtlcyBXZWJLaXQg
bWF0Y2ggRkYvSUUsIHdoaWNoIGFsc28gZml4ZXMKKyAgICAgICAgb2Zmc2V0TGVmdC9vZmZzZXRU
b3AuCisKKyAgICAgICAgVGVzdDogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJl
bGF0aXZlLXRkLmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojppc09yaWdpbmFsbHlSZWxQb3NpdGlvbmVk
KTogQ29uc3VsdCByYXcgc3R5bGUgZGVjbGFyYXRpb24gdG8gY2hlY2sgZm9yIHJlbGF0aXZlIHBv
c2l0aW9uLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0OjpvZmZzZXRQYXJlbnQpOiBp
c1JlbFBvc2l0aW9uZWQoKSAtPiBpc09yaWdpbmFsbHlSZWxQb3NpdGlvbmVkKCkgCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorCiAyMDExLTAyLTI4ICBSZW5hdGEgSG9kb3Zh
biAgPHJlbmlAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbmRyZWFzIEtsaW5n
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCBiZjliYzAy
Y2VhNTg1ZmE2NzI5NDAwYjhkZDJiYjkzNDVmZGIzNzk4Li4yYWFhMDNlYzQ4NjZkZGJjMDk4NTY2
ZjM2NTM2ODdkODYyNzc1NGI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmNwcApAQCAtMjE1NSw2ICsyMTU1LDIwIEBAIFJlbmRlck9iamVjdCogUmVuZGVyT2JqZWN0
Ojpjb250YWluZXIoUmVuZGVyQm94TW9kZWxPYmplY3QqIHJlcGFpbnRDb250YWluZXIsIGJvCiAg
ICAgcmV0dXJuIG87CiB9CiAKK2Jvb2wgUmVuZGVyT2JqZWN0Ojppc09yaWdpbmFsbHlSZWxQb3Np
dGlvbmVkKCkgY29uc3QKK3sKKyAgICAgIC8vIElmIHJlbGF0aXZlIHBvc2l0aW9uaW5nIGlzIGFs
cmVhZHkgc2V0LCB0aGVuIG5vIG5lZWQgdG8gbG9vayBhdCB0aGUKKyAgICAgIC8vIHJhdyBzdHls
ZS4KKyAgICAgIGlmIChpc1JlbFBvc2l0aW9uZWQoKSkKKyAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KworICAgICAgQ1NTU3R5bGVEZWNsYXJhdGlvbiogcmF3U3R5bGUgPSB0b0VsZW1lbnQobm9kZSgp
KS0+c3R5bGUoKTsKKyAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gcG9zaXRpb24gPSByYXdTdHlsZS0+
Z2V0UHJvcGVydHlDU1NWYWx1ZShDU1NQcm9wZXJ0eVBvc2l0aW9uKTsKKyAgICAgIGlmIChwb3Np
dGlvbi5nZXQoKSAmJiBwb3NpdGlvbi0+Y3NzVGV4dCgpID09ICJyZWxhdGl2ZSIpCisgICAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgICByZXR1cm4gZmFsc2U7Cit9CisKIGJvb2wgUmVuZGVyT2Jq
ZWN0Ojppc1NlbGVjdGlvbkJvcmRlcigpIGNvbnN0CiB7CiAgICAgU2VsZWN0aW9uU3RhdGUgc3Qg
PSBzZWxlY3Rpb25TdGF0ZSgpOwpAQCAtMjYxMywxMSArMjYyNywxMiBAQCBSZW5kZXJCb3hNb2Rl
bE9iamVjdCogUmVuZGVyT2JqZWN0OjpvZmZzZXRQYXJlbnQoKSBjb25zdAogICAgIC8vICAgICAq
IFRoZSBjb21wdXRlZCB2YWx1ZSBvZiB0aGUgcG9zaXRpb24gcHJvcGVydHkgb2YgQSBpcyBzdGF0
aWMgYW5kIHRoZSBhbmNlc3RvcgogICAgIC8vICAgICAgIGlzIG9uZSBvZiB0aGUgZm9sbG93aW5n
IEhUTUwgZWxlbWVudHM6IHRkLCB0aCwgb3IgdGFibGUuCiAgICAgLy8gICAgICogT3VyIG93biBl
eHRlbnNpb246IGlmIHRoZXJlIGlzIGEgZGlmZmVyZW5jZSBpbiB0aGUgZWZmZWN0aXZlIHpvb20K
LSAgICBib29sIHNraXBUYWJsZXMgPSBpc1Bvc2l0aW9uZWQoKSB8fCBpc1JlbFBvc2l0aW9uZWQo
KTsKKyAgICAKKyAgICBib29sIHNraXBUYWJsZXMgPSBpc1Bvc2l0aW9uZWQoKSB8fCBpc09yaWdp
bmFsbHlSZWxQb3NpdGlvbmVkKCk7CiAgICAgZmxvYXQgY3Vyclpvb20gPSBzdHlsZSgpLT5lZmZl
Y3RpdmVab29tKCk7CiAgICAgUmVuZGVyT2JqZWN0KiBjdXJyID0gcGFyZW50KCk7CiAgICAgd2hp
bGUgKGN1cnIgJiYgKCFjdXJyLT5ub2RlKCkgfHwKLSAgICAgICAgICAgICAgICAgICAgKCFjdXJy
LT5pc1Bvc2l0aW9uZWQoKSAmJiAhY3Vyci0+aXNSZWxQb3NpdGlvbmVkKCkgJiYgIWN1cnItPmlz
Qm9keSgpKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgKCFjdXJyLT5pc1Bvc2l0aW9uZWQoKSAm
JiAhY3Vyci0+aXNPcmlnaW5hbGx5UmVsUG9zaXRpb25lZCgpICYmICFjdXJyLT5pc0JvZHkoKSkp
KSB7CiAgICAgICAgIE5vZGUqIGVsZW1lbnQgPSBjdXJyLT5ub2RlKCk7CiAgICAgICAgIGlmICgh
c2tpcFRhYmxlcyAmJiBlbGVtZW50KSB7CiAgICAgICAgICAgICBib29sIGlzVGFibGVFbGVtZW50
ID0gZWxlbWVudC0+aGFzVGFnTmFtZSh0YWJsZVRhZykgfHwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuaAppbmRleCA2YWRjZTE3MWQ0NGU5ZmRhMWRiM2NjNDg3ODViYzM5NzVj
YTQ3YTk4Li4xZmI0MjYwM2NmYjc5OGM2YTJlYjZhYjBkZDNiNjM2ZWQyZDM4M2U5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC0zOTksNiArMzk5LDExIEBAIHB1
YmxpYzoKICAgICBib29sIGlzRmxvYXRpbmcoKSBjb25zdCB7IHJldHVybiBtX2Zsb2F0aW5nOyB9
CiAgICAgYm9vbCBpc1Bvc2l0aW9uZWQoKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uZWQ7IH0g
Ly8gYWJzb2x1dGUgb3IgZml4ZWQgcG9zaXRpb25pbmcKICAgICBib29sIGlzUmVsUG9zaXRpb25l
ZCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVsUG9zaXRpb25lZDsgfSAvLyByZWxhdGl2ZSBwb3NpdGlv
bmluZworCisgICAgLy8gV2ViS2l0IGRvZXNuJ3Qgc3VwcG9ydCByZWxhdGl2ZSBwb3NpdGlvbmlu
ZyBmb3IgY2VydGFpbiBlbGVtZW50cy4KKyAgICAvLyBJbiBzdWNoIGNhc2VzIGlzUmVsUG9zaXRp
b25lZCgpIHdvbid0IG1hdGNoIHRoZSB2YWx1ZSBzZXQgaW4gdGhlIG9yaWdpbmFsIHN0eWxlIGRl
Y2xhcmF0aW9uLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFsdWUgaW4gdGhl
IHJhdyBzdHlsZSBkZWNsYXJhdGlvbi4KKyAgICBib29sIGlzT3JpZ2luYWxseVJlbFBvc2l0aW9u
ZWQoKSBjb25zdDsKICAgICBib29sIGlzVGV4dCgpIGNvbnN0ICB7IHJldHVybiBtX2lzVGV4dDsg
fQogICAgIGJvb2wgaXNCb3goKSBjb25zdCB7IHJldHVybiBtX2lzQm94OyB9CiAgICAgYm9vbCBp
c0lubGluZSgpIGNvbnN0IHsgcmV0dXJuIG1faW5saW5lOyB9ICAvLyBpbmxpbmUgb2JqZWN0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84748</attachid>
            <date>2011-03-04 07:43:24 -0800</date>
            <delta_ts>2011-03-07 03:40:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52535-20110304104323.patch</filename>
            <type>text/plain</type>
            <size>10262</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODAyNjIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NmIzMTVjYjQ4ODdlYjlmYWM0ZmRj
NmY2NjMyZTJmMTc1OTBjODI4Li4xZGUzZTQzNzUxYjE3ZDBhMjQ1ZjJiMzBhYmEwZmFhNTljNjRh
YzI1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDMtMDQgIEplcmVteSBNb3Nrb3ZpY2gg
IDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMg
aW4gV2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTI1MzUKKworICAgICAgICBBZGQgdGVzdCB0byBtYWtlIHN1cmUgdGhhdCBvZmZzZXRMZWZ0
IG1hdGNoZXMgRkYvSUUgZm9yIGEgcmVsYXRpdmVseQorICAgICAgICBwb3NpdGlvbmVkIFREIGVs
ZW1lbnQuCisgICAgICAgIFRlc3RjYXNlIGlzIGEgcmVkdWN0aW9uIGZyb20gZG91bGEuY28uaWwu
CisKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUt
dGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5n
L29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0v
bWFjL2Zhc3QvdGFibGUvb3ZlcmZsb3dIaWRkZW4tZXhwZWN0ZWQudHh0OiBMYXllciBvcmRlciBo
YXMKKyAgICAgICAgY2hhbmdlZCwgdmlzdWFsIGluc3BlY3Rpb24gc2hvd3MgcmVzdWx0cyBzdGls
bCBsb29rIGZpbmUuCisKIDIwMTEtMDMtMDMgIEplcmVteSBNb3Nrb3ZpY2ggIDxqZXJlbXlAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0
aXZlLXRkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcv
b2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWUyMjJhYTBm
MDY4NGZjNTQ0ZmVjODNlMjI2NmU4NTE4NmIyMWU2MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitNZW51IE5vZGUKKworCitUaGlzIHRlc3QgdmVyaWZp
ZXMgdGhhdCBvZmZzZXRMZWZ0IGlzIGNhbGN1bGF0ZWQgY29ycmVjdGx5IGZvciBhIHJlbGF0aXZl
bHkgcG9zaXRpb25lZCB0ZCBlbGVtZW50LgorCitub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0
PTMwMiAoU2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpCitmaW5kUG9zWD0zMDIgKFNob3Vs
ZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9i
bG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41NjQzNWRlM2YwZjYxMTUxNzY4MjA3N2FlZjBmMTM3ODYxYWVjMmU1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0
LXJlbGF0aXZlLXRkLmh0bWwKQEAgLTAsMCArMSw0NyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworZnVuY3Rpb24gbG9nKHN0
cikgeworICB2YXIgbGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpOworICBsaS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzdHIpKTsKKyAgdmFyIGNvbnNvbGUgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpOworICBjb25zb2xlLmFwcGVuZENoaWxk
KGxpKTsKK30KKworZnVuY3Rpb24gZmluZFBvc1gob2JqKSB7CisgIHZhciByZXQgPSAwOworICBk
byB7CisgICAgcmV0ICs9IG9iai5vZmZzZXRMZWZ0OworICAgIG9iaiA9IG9iai5vZmZzZXRQYXJl
bnQ7CisgIH0gd2hpbGUgKG9iaik7CisgIHJldHVybiByZXQ7Cit9CisKKy8vIFRoaXMgY29kZSB3
YXMgcmVkdWNlZCBmcm9tIHRoZSBtZW51IHN5c3RlbSBvbiBkb3VsYS5jby5pbCB3aGljaCBpcyB3
aHkgd2UgY2FsbCBvZmZzZXRQYXJlbnQub2Zmc2V0TGVmdCByYXRoZXIgdGhhbgorLy8ganVzdCBy
ZXRyZWl2aW5nIHRoZSBlbGVtZW50IGRpcmVjdGx5LgorZnVuY3Rpb24gcHJpbnREaXZQbGFjZW1l
bnQoKSB7CisgIHZhciB0aGVfbm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtZW51X25v
ZGUnKTsKKyAgbG9nKCJub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0PSIgKyB0aGVfbm9kZS5v
ZmZzZXRQYXJlbnQub2Zmc2V0TGVmdCArICIgKFNob3VsZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElF
KSIpOworICBsb2coImZpbmRQb3NYPSIgKyBmaW5kUG9zWCh0aGVfbm9kZS5vZmZzZXRQYXJlbnQp
ICsgIiAoU2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpIik7Cit9Cis8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5IG9ubG9hZD0icHJpbnREaXZQbGFjZW1lbnQoKSI+Cis8ZGl2IHN0eWxlPSJw
b3NpdGlvbjphYnNvbHV0ZTsgdG9wOjBweDsgbGVmdDowcHg7IHdpZHRoOjgwMHB4OyBiYWNrZ3Jv
dW5kLWNvbG9yOiNDM0RDQkY7Ij4KKwk8dGFibGUgd2lkdGg9IjIwMHB4IiBzdHlsZT0ibWFyZ2lu
OiBhdXRvOyI+CisJCTx0cj4KKwkJCTx0ZCBzdHlsZT0icG9zaXRpb246cmVsYXRpdmUiPgorCQkJ
CTxkaXYgaWQ9bWVudV9ub2RlPk1lbnUgTm9kZTwvZGl2PgorCQkJPC90ZD4KKwkJPC90cj4KKwk8
L3RhYmxlPgorPC9kaXY+Cis8YnI+PGJyPgorPGgzPlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9m
ZnNldExlZnQgaXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlv
bmVkIHRkIGVsZW1lbnQuPC9oMz4KKzx1bCBpZD1jb25zb2xlPjwvdWw+Cis8L2JvZHk+Cis8L2h0
bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2Zhc3QvdGFibGUvb3ZlcmZsb3dIaWRkZW4tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvdGFibGUvb3ZlcmZsb3dIaWRkZW4tZXhwZWN0ZWQu
dHh0CmluZGV4IDY5NDk0YmY1ZTVmNjc3OTEwZjQ5ZjY2Mzg1OWIzNTBiMjY2NGMwZGUuLmQ0NTRi
MGZmODBjMmQ3MmIyZWQ1ZmU2ZjRjMjc2NDRjZDNkY2ExZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9mYXN0L3RhYmxlL292ZXJmbG93SGlkZGVuLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC90YWJsZS9vdmVyZmxvd0hpZGRlbi1l
eHBlY3RlZC50eHQKQEAgLTE2MSwyOCArMTYxLDEyIEBAIGxheWVyIGF0ICgzMTgsODU4KSBzaXpl
IDMwNHgxMDQgY2xpcCBhdCAoMzE5LDg1OSkgc2l6ZSAzMDJ4MTAyIHNjcm9sbFdpZHRoIDYwMQog
ICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDUxOiAiUmV2ZXJzZSIKIGxheWVyIGF0
ICgxMiwxMDA2KSBzaXplIDYwNHgxMDQgY2xpcCBhdCAoMTMsMTAwNykgc2l6ZSA2MDJ4MTAyCiAg
IFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyLDQzKSBzaXplIDYwNHgyMiBbYmdjb2xvcj0jODA4
MDgwXSBbYm9yZGVyOiAoMXB4IGluc2V0ICM4MDgwODApXSBbcj0wIGM9MCBycz0xIGNzPTFdCi1s
YXllciBhdCAoMTIsMTE1NCkgc2l6ZSA2MDR4MTA0IGNsaXAgYXQgKDEzLDExNTUpIHNpemUgNjAy
eDEwMgotICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMiw0Mykgc2l6ZSA2MDR4MjIgW2JnY29s
b3I9IzgwODA4MF0gW2JvcmRlcjogKDFweCBpbnNldCAjODA4MDgwKV0gW3I9MCBjPTAgcnM9MSBj
cz0xXQotICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgyLDIpIHNpemUgNjAweDE4IFtiZ2NvbG9y
PSNGRkMwQ0JdCi0gICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyMDV4MTgK
LSAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMjA1OiAiV2l0aCByZWxhdGl2ZSBwb3Np
dGlvbmluZyBvbiBjZWxsLiIKLWxheWVyIGF0ICgxMiwxMzAyKSBzaXplIDYwNHgxMDQgY2xpcCBh
dCAoMTMsMTMwMykgc2l6ZSA2MDJ4MTAyCi0gIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyLDQz
KSBzaXplIDYwNHgyMiBbYmdjb2xvcj0jODA4MDgwXSBbYm9yZGVyOiAoMXB4IGluc2V0ICM4MDgw
ODApXSBbcj0wIGM9MCBycz0xIGNzPTFdCi0gICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDIsMikg
c2l6ZSA2MDB4MTggW2JnY29sb3I9I0ZGQzBDQl0KLSAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMCwwKSBzaXplIDI5MHgxOAotICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAyOTA6
ICJXaXRoIHJlbGF0aXZlIHBvc2l0aW9uaW5nIGFuZCBhbiBvZmZzZXQgb24gY2VsbC4iCiBsYXll
ciBhdCAoOCwxNDQ2KSBzaXplIDMwMHgxMDAgc2Nyb2xsV2lkdGggNjAwCiAgIFJlbmRlclRhYmxl
Q2VsbCB7RElWfSBhdCAoMCw0MSkgc2l6ZSAzMDB4MTggW3I9MCBjPTAgcnM9MSBjcz0xXQogICAg
IFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgMzAweDE4CiAgICAgICBSZW5kZXJCbG9j
ayB7RElWfSBhdCAoMCwwKSBzaXplIDYwMHgxOCBbYmdjb2xvcj0jRkZBNTAwXQogICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxNDF4MTgKICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCAxNDE6ICJXaXRoIGRpc3BsYXk6dGFibGUtY2VsbCIKLWxheWVyIGF0
ICg4LDE1ODIpIHNpemUgMzAweDEwMCBzY3JvbGxXaWR0aCA2MDAKLSAgUmVuZGVyVGFibGVDZWxs
IHtESVZ9IGF0ICgwLDQxKSBzaXplIDMwMHgxOCBbcj0wIGM9MCBycz0xIGNzPTFdCi0gICAgUmVu
ZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAzMDB4MTgKLSAgICAgIFJlbmRlckJsb2NrIHtE
SVZ9IGF0ICgwLDApIHNpemUgNjAweDE4IFtiZ2NvbG9yPSNGRkE1MDBdCi0gICAgICAgIFJlbmRl
clRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDI3OHgxOAotICAgICAgICAgIHRleHQgcnVuIGF0
ICgwLDApIHdpZHRoIDI3ODogIldpdGggZGlzcGxheTp0YWJsZS1jZWxsICsgcmVsYXRpdmUgcG9z
aXRpb25pbmciCiBsYXllciBhdCAoMTAsMTcyMCkgc2l6ZSA2MDV4MTA3IGNsaXAgYXQgKDEzLDE3
MjMpIHNpemUgNjAyeDEwMgogICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMCw0MSkgc2l6ZSA2
MDV4MjUgW2JnY29sb3I9IzgwODA4MF0gW2JvcmRlcjogKDNweCBpbnNldCAjODA4MDgwKV0gW3I9
MCBjPTAgcnM9MSBjcz0xXQogICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICg0LDQpIHNpemUgNjAw
eDE4IFtiZ2NvbG9yPSNGRkZGMDBdCkBAIC0yMjgsMyArMjEyLDE5IEBAIGxheWVyIGF0ICgxNCwx
MDQ5KSBzaXplIDYwMHgxOAogICBSZW5kZXJCbG9jayAocmVsYXRpdmUgcG9zaXRpb25lZCkge0RJ
Vn0gYXQgKDIsMikgc2l6ZSA2MDB4MTggW2JnY29sb3I9I0ZGQTUwMF0KICAgICBSZW5kZXJUZXh0
IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyMDN4MTgKICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdp
ZHRoIDIwMzogIldpdGggcmVsYXRpdmUgcG9zaXRpb25pbmcgb24gZGl2LiIKK2xheWVyIGF0ICgx
MiwxMTU0KSBzaXplIDYwNHgxMDQgY2xpcCBhdCAoMTMsMTE1NSkgc2l6ZSA2MDJ4MTAyCisgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyLDQzKSBzaXplIDYwNHgyMiBbYmdjb2xvcj0jODA4MDgw
XSBbYm9yZGVyOiAoMXB4IGluc2V0ICM4MDgwODApXSBbcj0wIGM9MCBycz0xIGNzPTFdCisgICAg
UmVuZGVyQmxvY2sge0RJVn0gYXQgKDIsMikgc2l6ZSA2MDB4MTggW2JnY29sb3I9I0ZGQzBDQl0K
KyAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDIwNXgxOAorICAgICAgICB0
ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAyMDU6ICJXaXRoIHJlbGF0aXZlIHBvc2l0aW9uaW5nIG9u
IGNlbGwuIgorbGF5ZXIgYXQgKDExMiwxMzAyKSBzaXplIDYwNHgxMDQgY2xpcCBhdCAoMTEzLDEz
MDMpIHNpemUgNjAyeDEwMgorICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMiw0Mykgc2l6ZSA2
MDR4MjIgW2JnY29sb3I9IzgwODA4MF0gW2JvcmRlcjogKDFweCBpbnNldCAjODA4MDgwKV0gW3I9
MCBjPTAgcnM9MSBjcz0xXQorICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgyLDIpIHNpemUgNjAw
eDE4IFtiZ2NvbG9yPSNGRkMwQ0JdCisgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkg
c2l6ZSAyOTB4MTgKKyAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMjkwOiAiV2l0aCBy
ZWxhdGl2ZSBwb3NpdGlvbmluZyBhbmQgYW4gb2Zmc2V0IG9uIGNlbGwuIgorbGF5ZXIgYXQgKDEw
OCwxNTgyKSBzaXplIDMwMHgxMDAgc2Nyb2xsV2lkdGggNjAwCisgIFJlbmRlclRhYmxlQ2VsbCB7
RElWfSBhdCAoMCw0MSkgc2l6ZSAzMDB4MTggW3I9MCBjPTAgcnM9MSBjcz0xXQorICAgIFJlbmRl
ckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgMzAweDE4CisgICAgICBSZW5kZXJCbG9jayB7RElW
fSBhdCAoMCwwKSBzaXplIDYwMHgxOCBbYmdjb2xvcj0jRkZBNTAwXQorICAgICAgICBSZW5kZXJU
ZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNzh4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAo
MCwwKSB3aWR0aCAyNzg6ICJXaXRoIGRpc3BsYXk6dGFibGUtY2VsbCArIHJlbGF0aXZlIHBvc2l0
aW9uaW5nIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IDZmZjMxN2MwYzUwMTJjNzBkYTY1YTIyYWFkMjUxOTA0ZWFh
MDA5ODAuLjM4Y2E4MzlhYzVlNGI4YThhMTM2YjI1OTg2NjUzZTUyOTg4NzNiMzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwzMSBAQAorMjAxMS0wMy0wNCAgSmVyZW15IE1vc2tvdmljaCAgPGplcmVt
eUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgRml4IG5hdmlnYXRpb24gbWVudXMgb24gYSBidW5jaCBvZiBzaXRlcyBpbiBXZWJL
aXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjUz
NQorCisgICAgICAgIFJlbW92ZSBjb2RlIHRoYXQgb3ZlcndyaXRlcyB0aGUgcG9zaXRpb246cmVs
YXRpdmUgc3R5bGUgZm9yIHZhcmlvdXMKKyAgICAgICAgdGFibGUgZWxlbWVudHMuICBUaGlzIGNv
ZGUgd2FzIGFwcGFyZW50bHkgZmlyc3QgaW50cm9kdWNlZCB0byB3b3JrYXJvdW5kCisgICAgICAg
IGEgY3Jhc2ggKGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzU2NTQgYW5kCisgICAg
ICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzEwOTc3KS4KKworICAgICAgICBU
aGUgZG93bnNpZGUgb2YgdGhlIGNyYXNoIHdvcmthcm91bmQgaXMgdGhhdCBwb3NpdGlvbjpyZWxh
dGl2ZSBhbHNvIGFmZmVjdHMKKyAgICAgICAgb2Zmc2V0VG9wL29mZnNldExlZnQgYW5kIG92ZXJ3
cml0aW5nIHRoZSBzdHlsZSBpbiB0aGlzIHdheSBjYXVzZXMgdGhlCisgICAgICAgIG5hdmlnYXRp
b24gbWVudXMgaW4gYSBidW5jaCBvZiBzaXRlcyB0byBub3Qgd29yayBpbiBXZWJLaXQuCisKKyAg
ICAgICAgSSB3YXMgdW5hYmxlIHRvIHJlcHJvZHVjZSB0aGUgYWZvcmVtZW50aW9uZWQgY3Jhc2gg
d2l0aCB0aGlzIGNvZGUgcmVtb3ZlZCwKKyAgICAgICAgYW5kIGxheW91dCB0ZXN0IHJlc3VsdHMg
ZG9uJ3QgYXBwZWFyIHRvIHNob3cgYW55dGhpbmcgYnJva2VuLgorCisgICAgICAgIFRoaXMgQ0wg
ZG9lcyBub3QgYWRkIHN1cHBvcnQgZm9yIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBURCBlbGVtZW50
cywgYnV0CisgICAgICAgIG5vdyB0aGUgaW50ZXJuYWwgcmVwcmVzZW50YXRpb24gb2YgdGhlIHN0
eWxlIGluZm9ybWF0aW9uIG1hdGNoZXMgdGhhdAorICAgICAgICBpbiB0aGUgb3JpZ2luYWwgc291
cmNlIHJhdGhlciB0aGFuIGJlaW5nIG92ZXJ3cml0dGVuLgorCisgICAgICAgIFRlc3Q6IGZhc3Qv
YmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC5odG1sCisKKyAgICAgICAg
KiBjc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZVNl
bGVjdG9yOjphZGp1c3RSZW5kZXJTdHlsZSk6IFJlbW92ZSBzdHlsZSBvdmVyd3JpdGUuCisKIDIw
MTEtMDMtMDMgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVj
dG9yLmNwcAppbmRleCA4NGI1MGRiYmJjMzIwNWUyOGJiNjQ4MzQ1Nzc0NDVkZDFkYmI2YjU2Li4y
N2VmZTY5NTQ1YmE2MmU5M2UwMjYxOTg1YWM0YjhmOTRjNzlkY2I1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBAIC0xOTI5LDE0ICsxOTI5LDYgQEAgdm9pZCBDU1NT
dHlsZVNlbGVjdG9yOjphZGp1c3RSZW5kZXJTdHlsZShSZW5kZXJTdHlsZSogc3R5bGUsIFJlbmRl
clN0eWxlKiBwYXJlbnQKICAgICAgICAgaWYgKHN0eWxlLT5kaXNwbGF5KCkgPT0gSU5MSU5FICYm
IHN0eWxlLT5zdHlsZVR5cGUoKSA9PSBOT1BTRVVETyAmJiBwYXJlbnRTdHlsZSAmJiBzdHlsZS0+
d3JpdGluZ01vZGUoKSAhPSBwYXJlbnRTdHlsZS0+d3JpdGluZ01vZGUoKSkKICAgICAgICAgICAg
IHN0eWxlLT5zZXREaXNwbGF5KElOTElORV9CTE9DSyk7CiAgICAgICAgIAotICAgICAgICAvLyBB
ZnRlciBwZXJmb3JtaW5nIHRoZSBkaXNwbGF5IG11dGF0aW9uLCBjaGVjayB0YWJsZSByb3dzLiAg
V2UgZG8gbm90IGhvbm9yIHBvc2l0aW9uOnJlbGF0aXZlIG9uCi0gICAgICAgIC8vIHRhYmxlIHJv
d3Mgb3IgY2VsbHMuICBUaGlzIGhhcyBiZWVuIGVzdGFibGlzaGVkIGluIENTUzIuMSAoYW5kIGNh
dXNlZCBhIGNyYXNoIGluIGNvbnRhaW5pbmdCbG9jaygpCi0gICAgICAgIC8vIG9uIHNvbWUgc2l0
ZXMpLgotICAgICAgICBpZiAoKHN0eWxlLT5kaXNwbGF5KCkgPT0gVEFCTEVfSEVBREVSX0dST1VQ
IHx8IHN0eWxlLT5kaXNwbGF5KCkgPT0gVEFCTEVfUk9XX0dST1VQIHx8Ci0gICAgICAgICAgICAg
c3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9GT09URVJfR1JPVVAgfHwgc3R5bGUtPmRpc3BsYXko
KSA9PSBUQUJMRV9ST1cgfHwgc3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9DRUxMKSAmJgotICAg
ICAgICAgICAgIHN0eWxlLT5wb3NpdGlvbigpID09IFJlbGF0aXZlUG9zaXRpb24pCi0gICAgICAg
ICAgICBzdHlsZS0+c2V0UG9zaXRpb24oU3RhdGljUG9zaXRpb24pOwotCiAgICAgICAgIC8vIHdy
aXRpbmctbW9kZSBkb2VzIG5vdCBhcHBseSB0byB0YWJsZSByb3cgZ3JvdXBzLCB0YWJsZSBjb2x1
bW4gZ3JvdXBzLCB0YWJsZSByb3dzLCBhbmQgdGFibGUgY29sdW1ucy4KICAgICAgICAgLy8gRklY
TUU6IFRhYmxlIGNlbGxzIHNob3VsZCBiZSBhbGxvd2VkIHRvIGJlIHBlcnBlbmRpY3VsYXIgb3Ig
ZmxpcHBlZCB3aXRoIHJlc3BlY3QgdG8gdGhlIHRhYmxlLCB0aG91Z2guCiAgICAgICAgIGlmIChz
dHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0NPTFVNTiB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRB
QkxFX0NPTFVNTl9HUk9VUCB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0ZPT1RFUl9HUk9V
UAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84931</attachid>
            <date>2011-03-07 03:40:26 -0800</date>
            <delta_ts>2011-03-09 05:02:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52535-20110307134023.patch</filename>
            <type>text/plain</type>
            <size>11233</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA0NTgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhMGQwMGJiOThkYmFhYmNhZGI4NDA2
ZjRhOTkyYzI5Y2JkOGQ5ZDMxLi44ODE1NmZhZTVlMGMwMmM3ODRkOTFkYTNmM2FjOGVlYjVmZjA3
NzlhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDMtMDcgIEplcmVteSBNb3Nrb3ZpY2gg
IDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMg
aW4gV2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTI1MzUKKworICAgICAgICBBZGQgdGVzdCB0byBtYWtlIHN1cmUgdGhhdCBvZmZzZXRMZWZ0
IG1hdGNoZXMgRkYvSUUgZm9yIGEgcmVsYXRpdmVseQorICAgICAgICBwb3NpdGlvbmVkIFREIGVs
ZW1lbnQuCisgICAgICAgIFRlc3RjYXNlIGlzIGEgcmVkdWN0aW9uIGZyb20gZG91bGEuY28uaWwu
CisKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUt
dGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5n
L29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbDogQWRkZWQuCisKIDIwMTEtMDMtMDcgIFhpYW56
aHUgV2FuZyAgPHdhbmd4aWFuemh1QGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
VG9ueSBHZW50aWxjb3JlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3Np
dGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYWUyMjJhYTBmMDY4NGZjNTQ0ZmVjODNlMjI2NmU4NTE4NmIyMWU2MQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zm
c2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitNZW51IE5v
ZGUKKworCitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBvZmZzZXRMZWZ0IGlzIGNhbGN1bGF0ZWQg
Y29ycmVjdGx5IGZvciBhIHJlbGF0aXZlbHkgcG9zaXRpb25lZCB0ZCBlbGVtZW50LgorCitub2Rl
Lm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0PTMwMiAoU2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQg
SUUpCitmaW5kUG9zWD0zMDIgKFNob3VsZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0
aXZlLXRkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExl
ZnQtcmVsYXRpdmUtdGQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NjQzNWRlM2YwZjYxMTUxNzY4MjA3N2Fl
ZjBmMTM3ODYxYWVjMmU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0bWwKQEAgLTAsMCArMSw0NyBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1Rl
eHQoKTsKKworZnVuY3Rpb24gbG9nKHN0cikgeworICB2YXIgbGkgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJsaSIpOworICBsaS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShz
dHIpKTsKKyAgdmFyIGNvbnNvbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIp
OworICBjb25zb2xlLmFwcGVuZENoaWxkKGxpKTsKK30KKworZnVuY3Rpb24gZmluZFBvc1gob2Jq
KSB7CisgIHZhciByZXQgPSAwOworICBkbyB7CisgICAgcmV0ICs9IG9iai5vZmZzZXRMZWZ0Owor
ICAgIG9iaiA9IG9iai5vZmZzZXRQYXJlbnQ7CisgIH0gd2hpbGUgKG9iaik7CisgIHJldHVybiBy
ZXQ7Cit9CisKKy8vIFRoaXMgY29kZSB3YXMgcmVkdWNlZCBmcm9tIHRoZSBtZW51IHN5c3RlbSBv
biBkb3VsYS5jby5pbCB3aGljaCBpcyB3aHkgd2UgY2FsbCBvZmZzZXRQYXJlbnQub2Zmc2V0TGVm
dCByYXRoZXIgdGhhbgorLy8ganVzdCByZXRyZWl2aW5nIHRoZSBlbGVtZW50IGRpcmVjdGx5Lgor
ZnVuY3Rpb24gcHJpbnREaXZQbGFjZW1lbnQoKSB7CisgIHZhciB0aGVfbm9kZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdtZW51X25vZGUnKTsKKyAgbG9nKCJub2RlLm9mZnNldFBhcmVudC5v
ZmZzZXRMZWZ0PSIgKyB0aGVfbm9kZS5vZmZzZXRQYXJlbnQub2Zmc2V0TGVmdCArICIgKFNob3Vs
ZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKSIpOworICBsb2coImZpbmRQb3NYPSIgKyBmaW5kUG9z
WCh0aGVfbm9kZS5vZmZzZXRQYXJlbnQpICsgIiAoU2hvdWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQg
SUUpIik7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icHJpbnREaXZQbGFj
ZW1lbnQoKSI+Cis8ZGl2IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjBweDsgbGVmdDow
cHg7IHdpZHRoOjgwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNDM0RDQkY7Ij4KKwk8dGFibGUgd2lk
dGg9IjIwMHB4IiBzdHlsZT0ibWFyZ2luOiBhdXRvOyI+CisJCTx0cj4KKwkJCTx0ZCBzdHlsZT0i
cG9zaXRpb246cmVsYXRpdmUiPgorCQkJCTxkaXYgaWQ9bWVudV9ub2RlPk1lbnUgTm9kZTwvZGl2
PgorCQkJPC90ZD4KKwkJPC90cj4KKwk8L3RhYmxlPgorPC9kaXY+Cis8YnI+PGJyPgorPGgzPlRo
aXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExlZnQgaXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkg
Zm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIHRkIGVsZW1lbnQuPC9oMz4KKzx1bCBpZD1jb25z
b2xlPjwvdWw+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IDk1ZmFhOWEzNWI3NWI3NzU1NTZkYmEzYWJkODNhNThmMTVmMGE2MTEuLjEz
MWQ2OTMyZTJkYzUyOTE0N2VkMzZhNzUyOGJlZTE2MWNiNDJkMWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAxMS0wMy0wNyAgSmVyZW15IE1vc2tvdmljaCAgPGplcmVteUBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IG5hdmlnYXRpb24gbWVudXMgb24gYSBidW5jaCBvZiBzaXRlcyBpbiBXZWJLaXQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjUzNQorCisgICAg
ICAgIFdlYktpdCBkb2Vzbid0IHN1cHBvcnQgcG9zaXRpb246cmVsYXRpdmUgZm9yIHNldmVyYWwg
dGFibGUgZWxlbWVudHMgYW5kCisgICAgICAgIG92ZXJ3cml0ZXMgdGhlIHN0eWxlIGludGVybmFs
bHkgd2hlbiBwb3NpdGlvbjpyZWxhdGl2ZSBpcyBlbmNvdW50ZXJlZC4KKyAgICAgICAgVW5mb3J0
dW5hdGVseSBwb3NpdGlvbjpyZWxhdGl2ZSBhZmZlY3RzIHRoZSBjaG9pY2Ugb2Ygbm9kZXMgcmV0
dXJuZWQgYnkKKyAgICAgICAgb2Zmc2V0UGFyZW50LgorCisgICAgICAgIFRoaXMgQ0wgYWRkcyBh
IGJpdCB0byBSZW5kZXJTdHlsZSB0byB0cmFjayB3aGV0aGVyIHBvc2l0aW9uOnJlbGF0aXZlIHdh
cworICAgICAgICBvdmVyd3JpdHRlbi4gIFRoZSB2YWx1ZSBpcyB0aGVuIGNvbnN1bHRlZCBpbiBv
ZmZzZXRQYXJlbnQgd2hpY2ggbWFrZXMgdXMKKyAgICAgICAgbWF0Y2ggRkYvSUUuCisKKyAgICAg
ICAgVGVzdDogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0
bWwKKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFkanVzdFJlbmRlclN0eWxlKToKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6
b2Zmc2V0UGFyZW50KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaDog
QWRkIGEgYml0IHRvIHRyYWNrIHRoZSBvcmlnaW5hbCB2YWx1ZSBvZiBwb3NpdGlvbjpyZWxhdGl2
ZS4KKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpwb3NpdGlvbldhc1JlbGF0aXZl
KToKKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpzZXRQb3NpdGlvbldhc1JlbGF0
aXZlKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0
YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFyZU5vbklu
aGVyaXRlZERhdGE6Om9wZXJhdG9yPT0pOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhLmg6CisKIDIwMTEtMDMtMDcgIFJ5dWFuIENob2kgIDxyeXVh
bi5jaG9pQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgRUZMIGJ1aWxkIGZpeC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAppbmRleCA2NTZkNTFlNzRhNzM4
Mjg3NjY3ZGMwYWYwYjFlY2M0ZTIxM2E0NmU0Li5iMTY3MjEwNDY4NjBiZWQ5MDU5MTY1NzUzZGUz
N2Y1M2NmYzJjNmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBA
IC0xOTM0LDggKzE5MzQsMTAgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphZGp1c3RSZW5kZXJT
dHlsZShSZW5kZXJTdHlsZSogc3R5bGUsIFJlbmRlclN0eWxlKiBwYXJlbnQKICAgICAgICAgLy8g
b24gc29tZSBzaXRlcykuCiAgICAgICAgIGlmICgoc3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9I
RUFERVJfR1JPVVAgfHwgc3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9ST1dfR1JPVVAgfHwKICAg
ICAgICAgICAgICBzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0ZPT1RFUl9HUk9VUCB8fCBzdHls
ZS0+ZGlzcGxheSgpID09IFRBQkxFX1JPVyB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0NF
TEwpICYmCi0gICAgICAgICAgICAgc3R5bGUtPnBvc2l0aW9uKCkgPT0gUmVsYXRpdmVQb3NpdGlv
bikKKyAgICAgICAgICAgICBzdHlsZS0+cG9zaXRpb24oKSA9PSBSZWxhdGl2ZVBvc2l0aW9uKSB7
CisgICAgICAgICAgICBzdHlsZS0+c2V0UG9zaXRpb25XYXNSZWxhdGl2ZSh0cnVlKTsKICAgICAg
ICAgICAgIHN0eWxlLT5zZXRQb3NpdGlvbihTdGF0aWNQb3NpdGlvbik7CisgICAgICAgIH0KIAog
ICAgICAgICAvLyB3cml0aW5nLW1vZGUgZG9lcyBub3QgYXBwbHkgdG8gdGFibGUgcm93IGdyb3Vw
cywgdGFibGUgY29sdW1uIGdyb3VwcywgdGFibGUgcm93cywgYW5kIHRhYmxlIGNvbHVtbnMuCiAg
ICAgICAgIC8vIEZJWE1FOiBUYWJsZSBjZWxscyBzaG91bGQgYmUgYWxsb3dlZCB0byBiZSBwZXJw
ZW5kaWN1bGFyIG9yIGZsaXBwZWQgd2l0aCByZXNwZWN0IHRvIHRoZSB0YWJsZSwgdGhvdWdoLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCA0YmQzYWVmZmJi
ODE0MDgzN2MwZDczMTc1OTJmMTQ3YTI0ODIwZjBiLi5hYWMyNzhlMTY0MThkNzA1ZTRlZmViOTMw
OTM0ODQ2MTY1YjQ3OGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0
LmNwcApAQCAtMjYxMCwxMSArMjYxMCwxMiBAQCBSZW5kZXJCb3hNb2RlbE9iamVjdCogUmVuZGVy
T2JqZWN0OjpvZmZzZXRQYXJlbnQoKSBjb25zdAogICAgIC8vICAgICAqIFRoZSBjb21wdXRlZCB2
YWx1ZSBvZiB0aGUgcG9zaXRpb24gcHJvcGVydHkgb2YgQSBpcyBzdGF0aWMgYW5kIHRoZSBhbmNl
c3RvcgogICAgIC8vICAgICAgIGlzIG9uZSBvZiB0aGUgZm9sbG93aW5nIEhUTUwgZWxlbWVudHM6
IHRkLCB0aCwgb3IgdGFibGUuCiAgICAgLy8gICAgICogT3VyIG93biBleHRlbnNpb246IGlmIHRo
ZXJlIGlzIGEgZGlmZmVyZW5jZSBpbiB0aGUgZWZmZWN0aXZlIHpvb20KLSAgICBib29sIHNraXBU
YWJsZXMgPSBpc1Bvc2l0aW9uZWQoKSB8fCBpc1JlbFBvc2l0aW9uZWQoKTsKKworICAgIGJvb2wg
c2tpcFRhYmxlcyA9IGlzUG9zaXRpb25lZCgpIHx8IGlzUmVsUG9zaXRpb25lZCgpIHx8IHN0eWxl
KCktPnBvc2l0aW9uV2FzUmVsYXRpdmUoKTsKICAgICBmbG9hdCBjdXJyWm9vbSA9IHN0eWxlKCkt
PmVmZmVjdGl2ZVpvb20oKTsKICAgICBSZW5kZXJPYmplY3QqIGN1cnIgPSBwYXJlbnQoKTsKICAg
ICB3aGlsZSAoY3VyciAmJiAoIWN1cnItPm5vZGUoKSB8fAotICAgICAgICAgICAgICAgICAgICAo
IWN1cnItPmlzUG9zaXRpb25lZCgpICYmICFjdXJyLT5pc1JlbFBvc2l0aW9uZWQoKSAmJiAhY3Vy
ci0+aXNCb2R5KCkpKSkgeworICAgICAgICAgICAgICAgICAgICAoIWN1cnItPmlzUG9zaXRpb25l
ZCgpICYmICEoY3Vyci0+aXNSZWxQb3NpdGlvbmVkKCkgfHwgY3Vyci0+c3R5bGUoKS0+cG9zaXRp
b25XYXNSZWxhdGl2ZSgpKSAmJiAhY3Vyci0+aXNCb2R5KCkpKSkgewogICAgICAgICBOb2RlKiBl
bGVtZW50ID0gY3Vyci0+bm9kZSgpOwogICAgICAgICBpZiAoIXNraXBUYWJsZXMgJiYgZWxlbWVu
dCkgewogICAgICAgICAgICAgYm9vbCBpc1RhYmxlRWxlbWVudCA9IGVsZW1lbnQtPmhhc1RhZ05h
bWUodGFibGVUYWcpIHx8CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oCmluZGV4IGI1N2I2NGI4Zjg4YzNiOWU0NTQyZjc5MzYzNTE1NWU4MWY0YTNkZTEuLmQw
MGVkYjU2YWZiZTkyMzZhZmI1NDhiNDUxOWFlMTRiYzU5ZDk1YmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC01OTgsNiArNTk4LDggQEAgcHVi
bGljOgogICAgIHNob3J0IGNvdW50ZXJJbmNyZW1lbnQoKSBjb25zdCB7IHJldHVybiByYXJlTm9u
SW5oZXJpdGVkRGF0YS0+bV9jb3VudGVySW5jcmVtZW50OyB9CiAgICAgc2hvcnQgY291bnRlclJl
c2V0KCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fY291bnRlclJlc2V0
OyB9CiAKKyAgICBib29sIHBvc2l0aW9uV2FzUmVsYXRpdmUoKSBjb25zdCB7IHJldHVybiByYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV9wb3NpdGlvbldhc1JlbGF0aXZlOyB9CisKICAgICBFTGlzdFN0
eWxlVHlwZSBsaXN0U3R5bGVUeXBlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8RUxpc3RT
dHlsZVR5cGU+KGluaGVyaXRlZF9mbGFncy5fbGlzdF9zdHlsZV90eXBlKTsgfQogICAgIFN0eWxl
SW1hZ2UqIGxpc3RTdHlsZUltYWdlKCkgY29uc3QgeyByZXR1cm4gaW5oZXJpdGVkLT5saXN0X3N0
eWxlX2ltYWdlLmdldCgpOyB9CiAgICAgRUxpc3RTdHlsZVBvc2l0aW9uIGxpc3RTdHlsZVBvc2l0
aW9uKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8RUxpc3RTdHlsZVBvc2l0aW9uPihpbmhl
cml0ZWRfZmxhZ3MuX2xpc3Rfc3R5bGVfcG9zaXRpb24pOyB9CkBAIC05NzAsNiArOTcyLDggQEAg
cHVibGljOgogICAgIHZvaWQgc2V0Q291bnRlckluY3JlbWVudChzaG9ydCB2KSB7IFNFVF9WQVIo
cmFyZU5vbkluaGVyaXRlZERhdGEsIG1fY291bnRlckluY3JlbWVudCwgdikgfQogICAgIHZvaWQg
c2V0Q291bnRlclJlc2V0KHNob3J0IHYpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwg
bV9jb3VudGVyUmVzZXQsIHYpIH0KIAorICAgIHZvaWQgc2V0UG9zaXRpb25XYXNSZWxhdGl2ZShi
b29sIHYpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9wb3NpdGlvbldhc1JlbGF0
aXZlLCB2KSB9CisKICAgICB2b2lkIHNldExpc3RTdHlsZVR5cGUoRUxpc3RTdHlsZVR5cGUgdikg
eyBpbmhlcml0ZWRfZmxhZ3MuX2xpc3Rfc3R5bGVfdHlwZSA9IHY7IH0KICAgICB2b2lkIHNldExp
c3RTdHlsZUltYWdlKFBhc3NSZWZQdHI8U3R5bGVJbWFnZT4gdikgeyBpZiAoaW5oZXJpdGVkLT5s
aXN0X3N0eWxlX2ltYWdlICE9IHYpIGluaGVyaXRlZC5hY2Nlc3MoKS0+bGlzdF9zdHlsZV9pbWFn
ZSA9IHY7IH0KICAgICB2b2lkIHNldExpc3RTdHlsZVBvc2l0aW9uKEVMaXN0U3R5bGVQb3NpdGlv
biB2KSB7IGluaGVyaXRlZF9mbGFncy5fbGlzdF9zdHlsZV9wb3NpdGlvbiA9IHY7IH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0
ZWREYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhLmNwcAppbmRleCAzNzcxZjEzODk5YjBiMjJhODE3MDUxMTQ1OWQ5MDQ3NmNj
ZGFmY2ZlLi41ZDcxMDU2ZjI2YTgzNWJmM2FjYzViYmI5YmE0OGQ4NjE4MTRiZWE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVk
RGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5v
bkluaGVyaXRlZERhdGEuY3BwCkBAIC00Niw2ICs0Niw3IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRl
ZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEoKQogICAgICwgbV90ZXh0Q29tYmluZShS
ZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRDb21iaW5lKCkpCiAgICAgLCBtX2NvdW50ZXJJbmNyZW1l
bnQoMCkKICAgICAsIG1fY291bnRlclJlc2V0KDApCisgICAgLCBtX3Bvc2l0aW9uV2FzUmVsYXRp
dmUoMCkKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgLCBtX3J1bm5pbmdB
Y2NlbGVyYXRlZEFuaW1hdGlvbihmYWxzZSkKICNlbmRpZgpAQCAtODMsNiArODQsNyBAQCBTdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKGNvbnN0IFN0
eWxlUmFyZU5vbkluaGVyaXRlZAogICAgICwgbV90ZXh0Q29tYmluZShvLm1fdGV4dENvbWJpbmUp
CiAgICAgLCBtX2NvdW50ZXJJbmNyZW1lbnQoby5tX2NvdW50ZXJJbmNyZW1lbnQpCiAgICAgLCBt
X2NvdW50ZXJSZXNldChvLm1fY291bnRlclJlc2V0KQorICAgICwgbV9wb3NpdGlvbldhc1JlbGF0
aXZlKG8ubV9wb3NpdGlvbldhc1JlbGF0aXZlKQogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJ
VElORykKICAgICAsIG1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uKG8ubV9ydW5uaW5nQWNj
ZWxlcmF0ZWRBbmltYXRpb24pCiAjZW5kaWYKQEAgLTEyOSw2ICsxMzEsNyBAQCBib29sIFN0eWxl
UmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlTm9uSW5oZXJp
dGVkRGF0YSYgbykgYwogICAgICAgICAmJiBtX3RleHRDb21iaW5lID09IG8ubV90ZXh0Q29tYmlu
ZQogICAgICAgICAmJiBtX2NvdW50ZXJJbmNyZW1lbnQgPT0gby5tX2NvdW50ZXJJbmNyZW1lbnQK
ICAgICAgICAgJiYgbV9jb3VudGVyUmVzZXQgPT0gby5tX2NvdW50ZXJSZXNldAorICAgICAgICAm
JiBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUgPT0gby5tX3Bvc2l0aW9uV2FzUmVsYXRpdmUKICNpZiBV
U0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgICAgICYmICFtX3J1bm5pbmdBY2NlbGVy
YXRlZEFuaW1hdGlvbiAmJiAhby5tX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbgogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9u
SW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCA4OTQzN2Y2OGU2ZDg0NGJkNDE0ODAyNzI1NWM3MGVm
NTQ1ZDA2Njk2Li45MjUxODEwM2M5MzM0MGFlMWIzNjI1NDg1NDc5NmE5ZTU3YzA1YTc2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJp
dGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVO
b25Jbmhlcml0ZWREYXRhLmgKQEAgLTEwOCw2ICsxMDgsMTAgQEAgcHVibGljOgogICAgIHNob3J0
IG1fY291bnRlckluY3JlbWVudDsKICAgICBzaG9ydCBtX2NvdW50ZXJSZXNldDsKICAgICAKKyAg
ICAvLyBXZWJLaXQgZG9lc24ndCBzdXBwb3J0IHBvc2l0aW9uOnJlbGF0aXZlIGZvciBzZXZlcmFs
IHRhYmxlIGVsZW1lbnRzIGFuZCBvdmVyd3JpdGVzIHRoZSBzdHlsZSBpbnRlcm5hbGx5IHdoZW4g
cG9zaXRpb246cmVsYXRpdmUgaXMgZW5jb3VudGVyZWQuCisgICAgLy8gVGhpcyBmbGFnIHByZXNl
cnZlcnMgdGhlIGZhY3QgdGhhdCB0aGUgcG9zaXRpb24gYXR0cmlidXRlIHdhcyBvcmlnaW5hbGx5
IHJlbGF0aXZlLCBhbmQgd2FzIHN1YnNlcXVlbnRseSAiY29ycmVjdGVkIi4KKyAgICB1bnNpZ25l
ZCBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUgOiAxOworCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBP
U0lUSU5HKQogICAgIGJvb2wgbV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24gOiAxOwogI2Vu
ZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85163</attachid>
            <date>2011-03-09 05:02:53 -0800</date>
            <delta_ts>2011-03-10 01:59:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52535-20110309150247.patch</filename>
            <type>text/plain</type>
            <size>17198</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA2MjcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0ZjUwZjUzY2Y4NmZjM2VmOTg5Zjhh
NWUxMzYwZDBkNDkxMGFjODIyLi43ZWJjY2U4NzkwYmExNmQxMjQzZTE5ZGU0MjlhMGY3NDk4NDA2
NTliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDMtMDcgIEplcmVteSBNb3Nrb3ZpY2gg
IDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMg
aW4gV2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTI1MzUKKworICAgICAgICBBZGQgdGVzdCB0byBtYWtlIHN1cmUgdGhhdCBvZmZzZXRMZWZ0
IG1hdGNoZXMgRkYvSUUgZm9yIGEgcmVsYXRpdmVseQorICAgICAgICBwb3NpdGlvbmVkIFREIGFu
ZCBJRlJBTUUgZWxlbWVudHMuCisgICAgICAgIFRlc3RjYXNlIGlzIGEgcmVkdWN0aW9uIGZyb20g
ZG91bGEuY28uaWwuCisKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExl
ZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9i
bG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLWlmcmFtZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29m
ZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbDogQWRkZWQuCisKIDIwMTEtMDMtMDkgIFJvbGFuZCBT
dGVpbmVyICA8cm9sYW5kc3RlaW5lckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdl
ZDogeWV0IG1vcmUgdHdlYWtpbmcgb2YgdGhlIGNocm9taXVtIHRlc3QgZXhwZWN0YXRpb25zLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0
LXJlbGF0aXZlLWlmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bv
c2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5jYjIzZmRmMWY3MjhlM2M3YTBkMmE2OGJhNDNlZWFhZjE4MjI5ZTAxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJl
bGF0aXZlLWlmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACisKKworCitUaGlzIHRl
c3QgdmVyaWZpZXMgdGhhdCBvZmZzZXRMZWZ0IGlzIGNhbGN1bGF0ZWQgY29ycmVjdGx5IGZvciBh
IHJlbGF0aXZlbHkgcG9zaXRpb25lZCBpZnJhbWUgZWxlbWVudCBpbnNpZGUgYSB0YWJsZS4KKwor
bm9kZS5vZmZzZXRMZWZ0PTMwMyAoU2hvdWxkIGJlIDMwMyBhcyBpbiBGRiBhbmQgSUUpCitmaW5k
UG9zWD0zMDMgKFNob3VsZCBiZSAzMDMgYXMgaW4gRkYgYW5kIElFKQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLWlmcmFt
ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJl
bGF0aXZlLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzNDllZTczOGEyZWM0YTY4ZGM4OTI0NjJk
OTQ4NzE3M2IwMDRlZWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSw0
NSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKKworZnVuY3Rpb24gbG9nKHN0cikgeworICB2YXIgbGkgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJsaSIpOworICBsaS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9k
ZShzdHIpKTsKKyAgdmFyIGNvbnNvbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29s
ZSIpOworICBjb25zb2xlLmFwcGVuZENoaWxkKGxpKTsKK30KKworZnVuY3Rpb24gZmluZFBvc1go
b2JqKSB7CisgIHZhciByZXQgPSAwOworICBkbyB7CisgICAgcmV0ICs9IG9iai5vZmZzZXRMZWZ0
OworICAgIG9iaiA9IG9iai5vZmZzZXRQYXJlbnQ7CisgIH0gd2hpbGUgKG9iaik7CisgIHJldHVy
biByZXQ7Cit9CisKK2Z1bmN0aW9uIHByaW50RGl2UGxhY2VtZW50KCkgeworICB2YXIgdGhlX25v
ZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZnJhbWUnKTsKKyAgbG9nKCJub2RlLm9mZnNl
dExlZnQ9IiArIHRoZV9ub2RlLm9mZnNldExlZnQgKyAiIChTaG91bGQgYmUgMzAzIGFzIGluIEZG
IGFuZCBJRSkiKTsKKyAgbG9nKCJmaW5kUG9zWD0iICsgZmluZFBvc1godGhlX25vZGUpICsgIiAo
U2hvdWxkIGJlIDMwMyBhcyBpbiBGRiBhbmQgSUUpIik7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5IG9ubG9hZD0icHJpbnREaXZQbGFjZW1lbnQoKSI+Cis8ZGl2IHN0eWxlPSJwb3NpdGlv
bjphYnNvbHV0ZTsgdG9wOjBweDsgbGVmdDowcHg7IHdpZHRoOjgwMHB4OyBiYWNrZ3JvdW5kLWNv
bG9yOiNDM0RDQkY7Ij4KKwk8dGFibGUgd2lkdGg9IjIwMHB4IiBzdHlsZT0ibWFyZ2luOiBhdXRv
OyI+CisJCTx0cj4KKwkJCTx0ZD4KKwkJCQkgIDxpZnJhbWUgaWQ9ZnJhbWUgc3R5bGU9InBvc2l0
aW9uOiByZWxhdGl2ZTsgd2lkdGg6MjBweDsgaGVpZ2h0OjIwcHgiPjwvaWZyYW1lPgorCQkJPC90
ZD4KKwkJPC90cj4KKwk8L3RhYmxlPgorPC9kaXY+Cis8YnI+PGJyPgorPGgzPlRoaXMgdGVzdCB2
ZXJpZmllcyB0aGF0IG9mZnNldExlZnQgaXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVs
YXRpdmVseSBwb3NpdGlvbmVkIGlmcmFtZSBlbGVtZW50IGluc2lkZSBhIHRhYmxlLjwvaDM+Cis8
dWwgaWQ9Y29uc29sZT48L3VsPgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcv
b2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Js
b2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmFlMjIyYWEwZjA2ODRmYzU0NGZlYzgzZTIyNjZlODUxODZiMjFlNjEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQt
cmVsYXRpdmUtdGQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorTWVudSBOb2RlCisKKwor
VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgb2Zmc2V0TGVmdCBpcyBjYWxjdWxhdGVkIGNvcnJlY3Rs
eSBmb3IgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgdGQgZWxlbWVudC4KKworbm9kZS5vZmZzZXRQ
YXJlbnQub2Zmc2V0TGVmdD0zMDIgKFNob3VsZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKQorZmlu
ZFBvc1g9MzAyIChTaG91bGQgYmUgMzAyIGFzIGluIEZGIGFuZCBJRSkKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0
aXZlLXRkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTY0MzVkZTNmMGY2MTE1MTc2ODIwNzdhZWYwZjEzNzg2
MWFlYzJlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRp
b25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC5odG1sCkBAIC0wLDAgKzEsNDcgQEAKK++7vzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisK
K2Z1bmN0aW9uIGxvZyhzdHIpIHsKKyAgdmFyIGxpID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
bGkiKTsKKyAgbGkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoc3RyKSk7Cisg
IHZhciBjb25zb2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUiKTsKKyAgY29u
c29sZS5hcHBlbmRDaGlsZChsaSk7Cit9CisKK2Z1bmN0aW9uIGZpbmRQb3NYKG9iaikgeworICB2
YXIgcmV0ID0gMDsKKyAgZG8geworICAgIHJldCArPSBvYmoub2Zmc2V0TGVmdDsKKyAgICBvYmog
PSBvYmoub2Zmc2V0UGFyZW50OworICB9IHdoaWxlIChvYmopOworICByZXR1cm4gcmV0OworfQor
CisvLyBUaGlzIGNvZGUgd2FzIHJlZHVjZWQgZnJvbSB0aGUgbWVudSBzeXN0ZW0gb24gZG91bGEu
Y28uaWwgd2hpY2ggaXMgd2h5IHdlIGNhbGwgb2Zmc2V0UGFyZW50Lm9mZnNldExlZnQgcmF0aGVy
IHRoYW4KKy8vIGp1c3QgcmV0cmVpdmluZyB0aGUgZWxlbWVudCBkaXJlY3RseS4KK2Z1bmN0aW9u
IHByaW50RGl2UGxhY2VtZW50KCkgeworICB2YXIgdGhlX25vZGUgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgnbWVudV9ub2RlJyk7CisgIGxvZygibm9kZS5vZmZzZXRQYXJlbnQub2Zmc2V0TGVm
dD0iICsgdGhlX25vZGUub2Zmc2V0UGFyZW50Lm9mZnNldExlZnQgKyAiIChTaG91bGQgYmUgMzAy
IGFzIGluIEZGIGFuZCBJRSkiKTsKKyAgbG9nKCJmaW5kUG9zWD0iICsgZmluZFBvc1godGhlX25v
ZGUub2Zmc2V0UGFyZW50KSArICIgKFNob3VsZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKSIpOwor
fQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InByaW50RGl2UGxhY2VtZW50KCki
PgorPGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHRvcDowcHg7IGxlZnQ6MHB4OyB3aWR0
aDo4MDBweDsgYmFja2dyb3VuZC1jb2xvcjojQzNEQ0JGOyI+CisJPHRhYmxlIHdpZHRoPSIyMDBw
eCIgc3R5bGU9Im1hcmdpbjogYXV0bzsiPgorCQk8dHI+CisJCQk8dGQgc3R5bGU9InBvc2l0aW9u
OnJlbGF0aXZlIj4KKwkJCQk8ZGl2IGlkPW1lbnVfbm9kZT5NZW51IE5vZGU8L2Rpdj4KKwkJCTwv
dGQ+CisJCTwvdHI+CisJPC90YWJsZT4KKzwvZGl2PgorPGJyPjxicj4KKzxoMz5UaGlzIHRlc3Qg
dmVyaWZpZXMgdGhhdCBvZmZzZXRMZWZ0IGlzIGNhbGN1bGF0ZWQgY29ycmVjdGx5IGZvciBhIHJl
bGF0aXZlbHkgcG9zaXRpb25lZCB0ZCBlbGVtZW50LjwvaDM+Cis8dWwgaWQ9Y29uc29sZT48L3Vs
PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpp
bmRleCA1Y2ZmYmRmZjBjODI2ODg1NDUwYzVmZDIwYThkNjU1YTljY2VmZjdmLi4yYWUxMTIwY2Uy
Zjc0MmY1Mzk4MjgzMjZiMDQ1N2UzMmJlZTMwOTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjkg
QEAKKzIwMTEtMDMtMDkgIEplcmVteSAgPHBsYXltb2JpbEBkaGNwLTE3Mi0yOC0zMi04NS50bHYu
Y29ycC5nb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMgaW4gV2Vi
S2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI1
MzUKKworICAgICAgICBXZWJLaXQgZG9lc24ndCBzdXBwb3J0IHBvc2l0aW9uOnJlbGF0aXZlIGZv
ciBzZXZlcmFsIHRhYmxlIGVsZW1lbnRzIGFuZAorICAgICAgICBvdmVyd3JpdGVzIHRoZSBzdHls
ZSBpbnRlcm5hbGx5IHdoZW4gcG9zaXRpb246cmVsYXRpdmUgaXMgZW5jb3VudGVyZWQuCisgICAg
ICAgIFVuZm9ydHVuYXRlbHkgcG9zaXRpb246cmVsYXRpdmUgYWZmZWN0cyB0aGUgY2hvaWNlIG9m
IG5vZGVzIHJldHVybmVkIGJ5CisgICAgICAgIG9mZnNldFBhcmVudC4KKworICAgICAgICBUaGlz
IENMIGFkZHMgYSBiaXQgdG8gUmVuZGVyU3R5bGUgdG8gdHJhY2sgd2hldGhlciBwb3NpdGlvbjpy
ZWxhdGl2ZSB3YXMKKyAgICAgICAgb3ZlcndyaXR0ZW4uICBUaGUgdmFsdWUgaXMgdGhlbiBjb25z
dWx0ZWQgaW4gb2Zmc2V0UGFyZW50IHdoaWNoIG1ha2VzIHVzCisgICAgICAgIG1hdGNoIEZGL0lF
LgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVs
YXRpdmUtaWZyYW1lLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvYmxvY2svcG9zaXRpb25pbmcv
b2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZVNlbGVjdG9yOjphZGp1c3RSZW5k
ZXJTdHlsZSk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJPYmplY3Q6OmlzT3JpZ2luYWxseVJlbFBvc2l0aW9uZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0OjpvZmZzZXRQYXJlbnQpOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJPYmplY3QuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVy
U3R5bGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpwb3NpdGlvbldhc1Jl
bGF0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjpzZXRQb3NpdGlvbldh
c1JlbGF0aXZlKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJp
dGVkRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRh
OjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0pOgorICAgICAgICAqIHJlbmRlcmluZy9zdHls
ZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmg6CisKKzIwMTEtMDMtMDcgIEplcmVteSBNb3Nr
b3ZpY2ggIDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Yg
c2l0ZXMgaW4gV2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTI1MzUKKworICAgICAgICBXZWJLaXQgZG9lc24ndCBzdXBwb3J0IHBvc2l0aW9u
OnJlbGF0aXZlIGZvciBzZXZlcmFsIHRhYmxlIGVsZW1lbnRzIGFuZAorICAgICAgICBvdmVyd3Jp
dGVzIHRoZSBzdHlsZSBpbnRlcm5hbGx5IHdoZW4gcG9zaXRpb246cmVsYXRpdmUgaXMgZW5jb3Vu
dGVyZWQuCisgICAgICAgIFVuZm9ydHVuYXRlbHkgcG9zaXRpb246cmVsYXRpdmUgYWZmZWN0cyB0
aGUgY2hvaWNlIG9mIG5vZGVzIHJldHVybmVkIGJ5CisgICAgICAgIG9mZnNldFBhcmVudC4KKwor
ICAgICAgICBUaGlzIENMIGFkZHMgYSBiaXQgdG8gUmVuZGVyU3R5bGUgdG8gdHJhY2sgd2hldGhl
ciBwb3NpdGlvbjpyZWxhdGl2ZSB3YXMKKyAgICAgICAgb3ZlcndyaXR0ZW4uICBUaGUgdmFsdWUg
aXMgdGhlbiBjb25zdWx0ZWQgaW4gb2Zmc2V0UGFyZW50IHdoaWNoIG1ha2VzIHVzCisgICAgICAg
IG1hdGNoIEZGL0lFLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29m
ZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvYmxvY2sv
cG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC5odG1sCisKKyAgICAgICAgKiBjc3Mv
Q1NTU3R5bGVTZWxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZVNlbGVjdG9y
OjphZGp1c3RSZW5kZXJTdHlsZSk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJPYmplY3Q6OmlzT3JpZ2luYWxseVJlbFBvc2l0
aW9uZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0OjpvZmZzZXRQYXJlbnQpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuaDoKKyAgICAgICAgKiByZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaDogQWRkIGEgYml0IHRvIHRyYWNrIHRoZSBvcmlnaW5hbCB2YWx1
ZSBvZiBwb3NpdGlvbjpyZWxhdGl2ZS4KKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdz
Ojpwb3NpdGlvbldhc1JlbGF0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdz
OjpzZXRQb3NpdGlvbldhc1JlbGF0aXZlKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVO
b25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKToKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0pOgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmg6CisKIDIwMTEtMDMt
MDggIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTU3R5bGVTZWxlY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rv
ci5jcHAKaW5kZXggZjJmMGU1NGFkNzZhNDM2ZmUwNmU1OGYzYTJmYjA2MDAwNmM1ZDYwOS4uMGNk
ZTk3ZGJjMWU5OTFjMDAyOTRjNjM2YzliNGYyYTE3YmQwZWRlOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcApAQCAtMTg5Miw2ICsxODkyLDggQEAgdm9pZCBDU1NTdHls
ZVNlbGVjdG9yOjphZGp1c3RSZW5kZXJTdHlsZShSZW5kZXJTdHlsZSogc3R5bGUsIFJlbmRlclN0
eWxlKiBwYXJlbnQKICAgICAgICAgLy8gRnJhbWVzIGFuZCBmcmFtZXNldHMgbmV2ZXIgaG9ub3Ig
cG9zaXRpb246cmVsYXRpdmUgb3IgcG9zaXRpb246YWJzb2x1dGUuICBUaGlzIGlzIG5lY2Vzc2Fy
eSB0bwogICAgICAgICAvLyBmaXggYSBjcmFzaCB3aGVyZSBhIHNpdGUgdHJpZXMgdG8gcG9zaXRp
b24gdGhlc2Ugb2JqZWN0cy4gIFRoZXkgYWxzbyBuZXZlciBob25vciBkaXNwbGF5LgogICAgICAg
ICBpZiAoZSAmJiAoZS0+aGFzVGFnTmFtZShmcmFtZVRhZykgfHwgZS0+aGFzVGFnTmFtZShmcmFt
ZXNldFRhZykpKSB7CisgICAgICAgICAgICBpZiAoc3R5bGUtPnBvc2l0aW9uKCkgPT0gUmVsYXRp
dmVQb3NpdGlvbikKKyAgICAgICAgICAgICAgICBzdHlsZS0+c2V0UG9zaXRpb25XYXNSZWxhdGl2
ZSh0cnVlKTsKICAgICAgICAgICAgIHN0eWxlLT5zZXRQb3NpdGlvbihTdGF0aWNQb3NpdGlvbik7
CiAgICAgICAgICAgICBzdHlsZS0+c2V0RGlzcGxheShCTE9DSyk7CiAgICAgICAgIH0KQEAgLTE5
MzQsOCArMTkzNiwxMCBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6OmFkanVzdFJlbmRlclN0eWxl
KFJlbmRlclN0eWxlKiBzdHlsZSwgUmVuZGVyU3R5bGUqIHBhcmVudAogICAgICAgICAvLyBvbiBz
b21lIHNpdGVzKS4KICAgICAgICAgaWYgKChzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0hFQURF
Ul9HUk9VUCB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX1JPV19HUk9VUCB8fAogICAgICAg
ICAgICAgIHN0eWxlLT5kaXNwbGF5KCkgPT0gVEFCTEVfRk9PVEVSX0dST1VQIHx8IHN0eWxlLT5k
aXNwbGF5KCkgPT0gVEFCTEVfUk9XIHx8IHN0eWxlLT5kaXNwbGF5KCkgPT0gVEFCTEVfQ0VMTCkg
JiYKLSAgICAgICAgICAgICBzdHlsZS0+cG9zaXRpb24oKSA9PSBSZWxhdGl2ZVBvc2l0aW9uKQor
ICAgICAgICAgICAgIHN0eWxlLT5wb3NpdGlvbigpID09IFJlbGF0aXZlUG9zaXRpb24pIHsKKyAg
ICAgICAgICAgIHN0eWxlLT5zZXRQb3NpdGlvbldhc1JlbGF0aXZlKHRydWUpOwogICAgICAgICAg
ICAgc3R5bGUtPnNldFBvc2l0aW9uKFN0YXRpY1Bvc2l0aW9uKTsKKyAgICAgICAgfQogCiAgICAg
ICAgIC8vIHdyaXRpbmctbW9kZSBkb2VzIG5vdCBhcHBseSB0byB0YWJsZSByb3cgZ3JvdXBzLCB0
YWJsZSBjb2x1bW4gZ3JvdXBzLCB0YWJsZSByb3dzLCBhbmQgdGFibGUgY29sdW1ucy4KICAgICAg
ICAgLy8gRklYTUU6IFRhYmxlIGNlbGxzIHNob3VsZCBiZSBhbGxvd2VkIHRvIGJlIHBlcnBlbmRp
Y3VsYXIgb3IgZmxpcHBlZCB3aXRoIHJlc3BlY3QgdG8gdGhlIHRhYmxlLCB0aG91Z2guCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IGIyMTk5ZDBkNGMyYjJl
Mjk0NDQwNmQwNjczYzQ5OTRkMzE1ZDU0MGYuLjI1ZjI3M2E2YTJjNTJiNDQyOGNjYjE2Y2Q5NzM3
ODUwOWQyZGFhMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3Bw
CkBAIC0yMTUyLDYgKzIxNTIsMTEgQEAgUmVuZGVyT2JqZWN0KiBSZW5kZXJPYmplY3Q6OmNvbnRh
aW5lcihSZW5kZXJCb3hNb2RlbE9iamVjdCogcmVwYWludENvbnRhaW5lciwgYm8KICAgICByZXR1
cm4gbzsKIH0KIAorYm9vbCBSZW5kZXJPYmplY3Q6OmlzT3JpZ2luYWxseVJlbFBvc2l0aW9uZWQo
KSBjb25zdAoreworICAgIHJldHVybiBpc1JlbFBvc2l0aW9uZWQoKSB8fCBzdHlsZSgpLT5wb3Np
dGlvbldhc1JlbGF0aXZlKCk7Cit9CisKIGJvb2wgUmVuZGVyT2JqZWN0Ojppc1NlbGVjdGlvbkJv
cmRlcigpIGNvbnN0CiB7CiAgICAgU2VsZWN0aW9uU3RhdGUgc3QgPSBzZWxlY3Rpb25TdGF0ZSgp
OwpAQCAtMjYxMCwxMSArMjYxNSwxMiBAQCBSZW5kZXJCb3hNb2RlbE9iamVjdCogUmVuZGVyT2Jq
ZWN0OjpvZmZzZXRQYXJlbnQoKSBjb25zdAogICAgIC8vICAgICAqIFRoZSBjb21wdXRlZCB2YWx1
ZSBvZiB0aGUgcG9zaXRpb24gcHJvcGVydHkgb2YgQSBpcyBzdGF0aWMgYW5kIHRoZSBhbmNlc3Rv
cgogICAgIC8vICAgICAgIGlzIG9uZSBvZiB0aGUgZm9sbG93aW5nIEhUTUwgZWxlbWVudHM6IHRk
LCB0aCwgb3IgdGFibGUuCiAgICAgLy8gICAgICogT3VyIG93biBleHRlbnNpb246IGlmIHRoZXJl
IGlzIGEgZGlmZmVyZW5jZSBpbiB0aGUgZWZmZWN0aXZlIHpvb20KLSAgICBib29sIHNraXBUYWJs
ZXMgPSBpc1Bvc2l0aW9uZWQoKSB8fCBpc1JlbFBvc2l0aW9uZWQoKTsKKworICAgIGJvb2wgc2tp
cFRhYmxlcyA9IGlzUG9zaXRpb25lZCgpIHx8IGlzT3JpZ2luYWxseVJlbFBvc2l0aW9uZWQoKTsK
ICAgICBmbG9hdCBjdXJyWm9vbSA9IHN0eWxlKCktPmVmZmVjdGl2ZVpvb20oKTsKICAgICBSZW5k
ZXJPYmplY3QqIGN1cnIgPSBwYXJlbnQoKTsKICAgICB3aGlsZSAoY3VyciAmJiAoIWN1cnItPm5v
ZGUoKSB8fAotICAgICAgICAgICAgICAgICAgICAoIWN1cnItPmlzUG9zaXRpb25lZCgpICYmICFj
dXJyLT5pc1JlbFBvc2l0aW9uZWQoKSAmJiAhY3Vyci0+aXNCb2R5KCkpKSkgeworICAgICAgICAg
ICAgICAgICAgICAoIWN1cnItPmlzUG9zaXRpb25lZCgpICYmICFjdXJyLT5pc09yaWdpbmFsbHlS
ZWxQb3NpdGlvbmVkKCkgJiYgIWN1cnItPmlzQm9keSgpKSkpIHsKICAgICAgICAgTm9kZSogZWxl
bWVudCA9IGN1cnItPm5vZGUoKTsKICAgICAgICAgaWYgKCFza2lwVGFibGVzICYmIGVsZW1lbnQp
IHsKICAgICAgICAgICAgIGJvb2wgaXNUYWJsZUVsZW1lbnQgPSBlbGVtZW50LT5oYXNUYWdOYW1l
KHRhYmxlVGFnKSB8fApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4
IDBiNDRmZmFiNjg5MWYxZGE4ZDMyMWQ2ZjE5NWMxYTY4MTQ0ZjYxYjguLjk2YjljYzBiNzM4NzE5
N2Y5NTI2NWNlYWRhZjlhYzkzMjUxMjFlNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyT2JqZWN0LmgKQEAgLTQwMCw2ICs0MDAsMTEgQEAgcHVibGljOgogICAgIGJvb2wgaXNGbG9h
dGluZygpIGNvbnN0IHsgcmV0dXJuIG1fZmxvYXRpbmc7IH0KICAgICBib29sIGlzUG9zaXRpb25l
ZCgpIGNvbnN0IHsgcmV0dXJuIG1fcG9zaXRpb25lZDsgfSAvLyBhYnNvbHV0ZSBvciBmaXhlZCBw
b3NpdGlvbmluZwogICAgIGJvb2wgaXNSZWxQb3NpdGlvbmVkKCkgY29uc3QgeyByZXR1cm4gbV9y
ZWxQb3NpdGlvbmVkOyB9IC8vIHJlbGF0aXZlIHBvc2l0aW9uaW5nCisKKyAgICAvLyBXZWJLaXQg
b3ZlcndyaXRlcyB0aGUgcG9zaXRpb246cmVsYXRpdmUgc3R5bGUgZm9yIGNlcnRhaW4gZWxlbWVu
dHMgZm9yIHdoaWNoIHN1Y2ggcG9zaXRpb25pbmcgaXMgaWxsZWdhbCBvciBiZWhhdmlvciBpcyB1
bmRlZmluZWQuCisgICAgLy8gVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRoZSB2YWx1ZSBzcGVjaWZp
ZWQgaW4gdGhlIHNvdXJjZSwgZXZlbiBpZiBpdCB3YXMgY29ycmVjdGVkIGJ5IFdlYktpdC4KKyAg
ICBib29sIGlzT3JpZ2luYWxseVJlbFBvc2l0aW9uZWQoKSBjb25zdDsKKwogICAgIGJvb2wgaXNU
ZXh0KCkgY29uc3QgIHsgcmV0dXJuIG1faXNUZXh0OyB9CiAgICAgYm9vbCBpc0JveCgpIGNvbnN0
IHsgcmV0dXJuIG1faXNCb3g7IH0KICAgICBib29sIGlzSW5saW5lKCkgY29uc3QgeyByZXR1cm4g
bV9pbmxpbmU7IH0gIC8vIGlubGluZSBvYmplY3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggNmZiZjBjZThmM2IzMTU5ZmFiMjhhYTEwZWNlZDMy
OTY1ODgyZWM0Ni4uYTJhYzkxZDQyZTZjNjM0MjAyYThkNjI0NDI3NGI1ZTUyYjdjNzM1YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTU5OSw2
ICs1OTksOCBAQCBwdWJsaWM6CiAgICAgc2hvcnQgY291bnRlckluY3JlbWVudCgpIGNvbnN0IHsg
cmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2NvdW50ZXJJbmNyZW1lbnQ7IH0KICAgICBz
aG9ydCBjb3VudGVyUmVzZXQoKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+
bV9jb3VudGVyUmVzZXQ7IH0KIAorICAgIGJvb2wgcG9zaXRpb25XYXNSZWxhdGl2ZSgpIGNvbnN0
IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3Bvc2l0aW9uV2FzUmVsYXRpdmU7IH0K
KwogICAgIEVMaXN0U3R5bGVUeXBlIGxpc3RTdHlsZVR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0
aWNfY2FzdDxFTGlzdFN0eWxlVHlwZT4oaW5oZXJpdGVkX2ZsYWdzLl9saXN0X3N0eWxlX3R5cGUp
OyB9CiAgICAgU3R5bGVJbWFnZSogbGlzdFN0eWxlSW1hZ2UoKSBjb25zdCB7IHJldHVybiBpbmhl
cml0ZWQtPmxpc3Rfc3R5bGVfaW1hZ2UuZ2V0KCk7IH0KICAgICBFTGlzdFN0eWxlUG9zaXRpb24g
bGlzdFN0eWxlUG9zaXRpb24oKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFTGlzdFN0eWxl
UG9zaXRpb24+KGluaGVyaXRlZF9mbGFncy5fbGlzdF9zdHlsZV9wb3NpdGlvbik7IH0KQEAgLTk3
MSw2ICs5NzMsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRDb3VudGVySW5jcmVtZW50KHNob3J0
IHYpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9jb3VudGVySW5jcmVtZW50LCB2
KSB9CiAgICAgdm9pZCBzZXRDb3VudGVyUmVzZXQoc2hvcnQgdikgeyBTRVRfVkFSKHJhcmVOb25J
bmhlcml0ZWREYXRhLCBtX2NvdW50ZXJSZXNldCwgdikgfQogCisgICAgdm9pZCBzZXRQb3NpdGlv
bldhc1JlbGF0aXZlKGJvb2wgdikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX3Bv
c2l0aW9uV2FzUmVsYXRpdmUsIHYpIH0KKwogICAgIHZvaWQgc2V0TGlzdFN0eWxlVHlwZShFTGlz
dFN0eWxlVHlwZSB2KSB7IGluaGVyaXRlZF9mbGFncy5fbGlzdF9zdHlsZV90eXBlID0gdjsgfQog
ICAgIHZvaWQgc2V0TGlzdFN0eWxlSW1hZ2UoUGFzc1JlZlB0cjxTdHlsZUltYWdlPiB2KSB7IGlm
IChpbmhlcml0ZWQtPmxpc3Rfc3R5bGVfaW1hZ2UgIT0gdikgaW5oZXJpdGVkLmFjY2VzcygpLT5s
aXN0X3N0eWxlX2ltYWdlID0gdjsgfQogICAgIHZvaWQgc2V0TGlzdFN0eWxlUG9zaXRpb24oRUxp
c3RTdHlsZVBvc2l0aW9uIHYpIHsgaW5oZXJpdGVkX2ZsYWdzLl9saXN0X3N0eWxlX3Bvc2l0aW9u
ID0gdjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxl
UmFyZU5vbkluaGVyaXRlZERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCmluZGV4IDM3NzFmMTM4OTliMGIyMmE4MTcw
NTExNDU5ZDkwNDc2Y2NkYWZjZmUuLjVkNzEwNTZmMjZhODM1YmYzYWNjNWJiYjliYTQ4ZDg2MTgx
NGJlYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTQ2LDYgKzQ2LDcgQEAgU3R5bGVS
YXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSgpCiAgICAgLCBt
X3RleHRDb21iaW5lKFJlbmRlclN0eWxlOjppbml0aWFsVGV4dENvbWJpbmUoKSkKICAgICAsIG1f
Y291bnRlckluY3JlbWVudCgwKQogICAgICwgbV9jb3VudGVyUmVzZXQoMCkKKyAgICAsIG1fcG9z
aXRpb25XYXNSZWxhdGl2ZSgwKQogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAg
ICAsIG1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uKGZhbHNlKQogI2VuZGlmCkBAIC04Myw2
ICs4NCw3IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRl
ZERhdGEoY29uc3QgU3R5bGVSYXJlTm9uSW5oZXJpdGVkCiAgICAgLCBtX3RleHRDb21iaW5lKG8u
bV90ZXh0Q29tYmluZSkKICAgICAsIG1fY291bnRlckluY3JlbWVudChvLm1fY291bnRlckluY3Jl
bWVudCkKICAgICAsIG1fY291bnRlclJlc2V0KG8ubV9jb3VudGVyUmVzZXQpCisgICAgLCBtX3Bv
c2l0aW9uV2FzUmVsYXRpdmUoby5tX3Bvc2l0aW9uV2FzUmVsYXRpdmUpCiAjaWYgVVNFKEFDQ0VM
RVJBVEVEX0NPTVBPU0lUSU5HKQogICAgICwgbV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24o
by5tX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbikKICNlbmRpZgpAQCAtMTI5LDYgKzEzMSw3
IEBAIGJvb2wgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PShjb25zdCBTdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhJiBvKSBjCiAgICAgICAgICYmIG1fdGV4dENvbWJpbmUgPT0g
by5tX3RleHRDb21iaW5lCiAgICAgICAgICYmIG1fY291bnRlckluY3JlbWVudCA9PSBvLm1fY291
bnRlckluY3JlbWVudAogICAgICAgICAmJiBtX2NvdW50ZXJSZXNldCA9PSBvLm1fY291bnRlclJl
c2V0CisgICAgICAgICYmIG1fcG9zaXRpb25XYXNSZWxhdGl2ZSA9PSBvLm1fcG9zaXRpb25XYXNS
ZWxhdGl2ZQogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICAgICAgJiYgIW1f
cnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uICYmICFvLm1fcnVubmluZ0FjY2VsZXJhdGVkQW5p
bWF0aW9uCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCmluZGV4IDg5NDM3ZjY4ZTZkODQ0YmQ0
MTQ4MDI3MjU1YzcwZWY1NDVkMDY2OTYuLjc0NGU4YzI2Zjc5NzY2MjI2NGEzODVkYjkyM2JhOWUz
ZDU0NDJkZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaApAQCAtMTA4LDYgKzEwOCwxMCBAQCBwdWJs
aWM6CiAgICAgc2hvcnQgbV9jb3VudGVySW5jcmVtZW50OwogICAgIHNob3J0IG1fY291bnRlclJl
c2V0OwogICAgIAorICAgIC8vIFdlYktpdCBvdmVyd3JpdGVzIHRoZSBwb3NpdGlvbjpyZWxhdGl2
ZSBzdHlsZSBmb3IgY2VydGFpbiBlbGVtZW50cyBmb3Igd2hpY2ggc3VjaCBwb3NpdGlvbmluZyBp
cyBpbGxlZ2FsIG9yIGJlaGF2aW9yIGlzIHVuZGVmaW5lZC4KKyAgICAvLyBUaGlzIGZsYWcgcHJl
c2VydmVzIHRoZSBmYWN0IHRoYXQgdGhlIHBvc2l0aW9uIGF0dHJpYnV0ZSB3YXMgb3JpZ2luYWxs
eSBzcGVjaWZpZWQgYXMgcmVsYXRpdmUuCisgICAgdW5zaWduZWQgbV9wb3NpdGlvbldhc1JlbGF0
aXZlIDogMTsKKwogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICBib29sIG1f
cnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uIDogMTsKICNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85298</attachid>
            <date>2011-03-10 01:59:40 -0800</date>
            <delta_ts>2011-03-10 02:01:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52535-20110310115937.patch</filename>
            <type>text/plain</type>
            <size>15535</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA2OTgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyZjI2N2E1NjQ3MDk5YmNjZDJmNDBl
MWU2Y2I2MTc1ZDcyNjI1Y2VhLi5iNmVmMDkwNTgzNzEyYTMxZTk1NzMzZDg5N2EyODY0ZDhjMjI0
ZjNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDMtMDcgIEplcmVteSBNb3Nrb3ZpY2gg
IDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMg
aW4gV2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTI1MzUKKworICAgICAgICBBZGQgdGVzdCB0byBtYWtlIHN1cmUgdGhhdCBvZmZzZXRMZWZ0
IG1hdGNoZXMgRkYvSUUgZm9yIGEgcmVsYXRpdmVseQorICAgICAgICBwb3NpdGlvbmVkIFREIGFu
ZCBJRlJBTUUgZWxlbWVudHMuCisgICAgICAgIFRlc3RjYXNlIGlzIGEgcmVkdWN0aW9uIGZyb20g
ZG91bGEuY28uaWwuCisKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExl
ZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9i
bG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLWlmcmFtZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29m
ZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbDogQWRkZWQuCisKIDIwMTEtMDMtMTAgIFBoaWxpcHBl
IE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHNr
aXAganF1ZXJ5L2VmZmVjdHMuaHRtbCBvbiBHVEsuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxh
dGl2ZS1pZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNiMjNmZGYxZjcyOGUzYzdhMGQy
YTY4YmE0M2VlYWFmMTgyMjllMDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDcgQEAKKworCisKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExl
ZnQgaXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIGlm
cmFtZSBlbGVtZW50IGluc2lkZSBhIHRhYmxlLgorCitub2RlLm9mZnNldExlZnQ9MzAzIChTaG91
bGQgYmUgMzAzIGFzIGluIEZGIGFuZCBJRSkKK2ZpbmRQb3NYPTMwMyAoU2hvdWxkIGJlIDMwMyBh
cyBpbiBGRiBhbmQgSUUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0
aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMDM0OWVlNzM4YTJlYzRhNjhkYzg5MjQ2MmQ5NDg3MTczYjAwNGVlZgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1y
ZWxhdGl2ZS1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDQ1IEBACivvu788IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCitmdW5jdGlvbiBsb2co
c3RyKSB7CisgIHZhciBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7CisgIGxpLmFw
cGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHN0cikpOworICB2YXIgY29uc29sZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIik7CisgIGNvbnNvbGUuYXBwZW5kQ2hp
bGQobGkpOworfQorCitmdW5jdGlvbiBmaW5kUG9zWChvYmopIHsKKyAgdmFyIHJldCA9IDA7Cisg
IGRvIHsKKyAgICByZXQgKz0gb2JqLm9mZnNldExlZnQ7CisgICAgb2JqID0gb2JqLm9mZnNldFBh
cmVudDsKKyAgfSB3aGlsZSAob2JqKTsKKyAgcmV0dXJuIHJldDsKK30KKworZnVuY3Rpb24gcHJp
bnREaXZQbGFjZW1lbnQoKSB7CisgIHZhciB0aGVfbm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdmcmFtZScpOworICBsb2coIm5vZGUub2Zmc2V0TGVmdD0iICsgdGhlX25vZGUub2Zmc2V0
TGVmdCArICIgKFNob3VsZCBiZSAzMDMgYXMgaW4gRkYgYW5kIElFKSIpOworICBsb2coImZpbmRQ
b3NYPSIgKyBmaW5kUG9zWCh0aGVfbm9kZSkgKyAiIChTaG91bGQgYmUgMzAzIGFzIGluIEZGIGFu
ZCBJRSkiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJwcmludERpdlBs
YWNlbWVudCgpIj4KKzxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB0b3A6MHB4OyBsZWZ0
OjBweDsgd2lkdGg6ODAwcHg7IGJhY2tncm91bmQtY29sb3I6I0MzRENCRjsiPgorCTx0YWJsZSB3
aWR0aD0iMjAwcHgiIHN0eWxlPSJtYXJnaW46IGF1dG87Ij4KKwkJPHRyPgorCQkJPHRkPgorCQkJ
CSAgPGlmcmFtZSBpZD1mcmFtZSBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDoyMHB4
OyBoZWlnaHQ6MjBweCI+PC9pZnJhbWU+CisJCQk8L3RkPgorCQk8L3RyPgorCTwvdGFibGU+Cis8
L2Rpdj4KKzxicj48YnI+Cis8aDM+VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgb2Zmc2V0TGVmdCBp
cyBjYWxjdWxhdGVkIGNvcnJlY3RseSBmb3IgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgaWZyYW1l
IGVsZW1lbnQgaW5zaWRlIGEgdGFibGUuPC9oMz4KKzx1bCBpZD1jb25zb2xlPjwvdWw+Cis8L2Jv
ZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVm
dC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWUyMjJhYTBmMDY4NGZjNTQ0
ZmVjODNlMjI2NmU4NTE4NmIyMWU2MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw3IEBACitNZW51IE5vZGUKKworCitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBv
ZmZzZXRMZWZ0IGlzIGNhbGN1bGF0ZWQgY29ycmVjdGx5IGZvciBhIHJlbGF0aXZlbHkgcG9zaXRp
b25lZCB0ZCBlbGVtZW50LgorCitub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0PTMwMiAoU2hv
dWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpCitmaW5kUG9zWD0zMDIgKFNob3VsZCBiZSAzMDIg
YXMgaW4gRkYgYW5kIElFKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3Np
dGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Js
b2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41
NjQzNWRlM2YwZjYxMTUxNzY4MjA3N2FlZjBmMTM3ODYxYWVjMmU1Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZl
LXRkLmh0bWwKQEAgLTAsMCArMSw0NyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworZnVuY3Rpb24gbG9nKHN0cikgeworICB2
YXIgbGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpOworICBsaS5hcHBlbmRDaGlsZChk
b2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzdHIpKTsKKyAgdmFyIGNvbnNvbGUgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY29uc29sZSIpOworICBjb25zb2xlLmFwcGVuZENoaWxkKGxpKTsKK30K
KworZnVuY3Rpb24gZmluZFBvc1gob2JqKSB7CisgIHZhciByZXQgPSAwOworICBkbyB7CisgICAg
cmV0ICs9IG9iai5vZmZzZXRMZWZ0OworICAgIG9iaiA9IG9iai5vZmZzZXRQYXJlbnQ7CisgIH0g
d2hpbGUgKG9iaik7CisgIHJldHVybiByZXQ7Cit9CisKKy8vIFRoaXMgY29kZSB3YXMgcmVkdWNl
ZCBmcm9tIHRoZSBtZW51IHN5c3RlbSBvbiBkb3VsYS5jby5pbCB3aGljaCBpcyB3aHkgd2UgY2Fs
bCBvZmZzZXRQYXJlbnQub2Zmc2V0TGVmdCByYXRoZXIgdGhhbgorLy8ganVzdCByZXRyZWl2aW5n
IHRoZSBlbGVtZW50IGRpcmVjdGx5LgorZnVuY3Rpb24gcHJpbnREaXZQbGFjZW1lbnQoKSB7Cisg
IHZhciB0aGVfbm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtZW51X25vZGUnKTsKKyAg
bG9nKCJub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0PSIgKyB0aGVfbm9kZS5vZmZzZXRQYXJl
bnQub2Zmc2V0TGVmdCArICIgKFNob3VsZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKSIpOworICBs
b2coImZpbmRQb3NYPSIgKyBmaW5kUG9zWCh0aGVfbm9kZS5vZmZzZXRQYXJlbnQpICsgIiAoU2hv
dWxkIGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpIik7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5IG9ubG9hZD0icHJpbnREaXZQbGFjZW1lbnQoKSI+Cis8ZGl2IHN0eWxlPSJwb3NpdGlvbjph
YnNvbHV0ZTsgdG9wOjBweDsgbGVmdDowcHg7IHdpZHRoOjgwMHB4OyBiYWNrZ3JvdW5kLWNvbG9y
OiNDM0RDQkY7Ij4KKwk8dGFibGUgd2lkdGg9IjIwMHB4IiBzdHlsZT0ibWFyZ2luOiBhdXRvOyI+
CisJCTx0cj4KKwkJCTx0ZCBzdHlsZT0icG9zaXRpb246cmVsYXRpdmUiPgorCQkJCTxkaXYgaWQ9
bWVudV9ub2RlPk1lbnUgTm9kZTwvZGl2PgorCQkJPC90ZD4KKwkJPC90cj4KKwk8L3RhYmxlPgor
PC9kaXY+Cis8YnI+PGJyPgorPGgzPlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExlZnQg
aXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIHRkIGVs
ZW1lbnQuPC9oMz4KKzx1bCBpZD1jb25zb2xlPjwvdWw+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDY3ZWZlZTJjNzkxZmI3Nzc4YjBm
MTczNGQzOTFlYTQzMWIyZWMzNWMuLjRkODg2ZjEwMTA2N2MwYzQzN2Q1ODQwODUxOTA3YjU5Yjg1
ZGQ3ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMS0wMy0wNyAgSmVyZW15IE1v
c2tvdmljaCAgPGplcmVteUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IG5hdmlnYXRpb24gbWVudXMgb24gYSBidW5jaCBv
ZiBzaXRlcyBpbiBXZWJLaXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01MjUzNQorCisgICAgICAgIFdlYktpdCBkb2Vzbid0IHN1cHBvcnQgcG9zaXRp
b246cmVsYXRpdmUgZm9yIHNldmVyYWwgdGFibGUgZWxlbWVudHMgYW5kCisgICAgICAgIG92ZXJ3
cml0ZXMgdGhlIHN0eWxlIGludGVybmFsbHkgd2hlbiBwb3NpdGlvbjpyZWxhdGl2ZSBpcyBlbmNv
dW50ZXJlZC4KKyAgICAgICAgVW5mb3J0dW5hdGVseSBwb3NpdGlvbjpyZWxhdGl2ZSBhZmZlY3Rz
IHRoZSBjaG9pY2Ugb2Ygbm9kZXMgcmV0dXJuZWQgYnkKKyAgICAgICAgb2Zmc2V0UGFyZW50Lgor
CisgICAgICAgIFRoaXMgQ0wgYWRkcyBhIGJpdCB0byBSZW5kZXJTdHlsZSB0byB0cmFjayB3aGV0
aGVyIHBvc2l0aW9uOnJlbGF0aXZlIHdhcworICAgICAgICBvdmVyd3JpdHRlbi4gIFRoZSB2YWx1
ZSBpcyB0aGVuIGNvbnN1bHRlZCBpbiBvZmZzZXRQYXJlbnQgd2hpY2ggbWFrZXMgdXMKKyAgICAg
ICAgbWF0Y2ggRkYvSUUuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvYmxvY2svcG9zaXRpb25pbmcv
b2Zmc2V0TGVmdC1yZWxhdGl2ZS1pZnJhbWUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0bWwKKworICAgICAgICAqIGNz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0
b3I6OmFkanVzdFJlbmRlclN0eWxlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6aXNPcmlnaW5hbGx5UmVsUG9z
aXRpb25lZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJPYmplY3Q6Om9mZnNldFBhcmVudCk6
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5oOiBBZGQgYSBiaXQgdG8gdHJhY2sgdGhlIG9yaWdpbmFsIHZh
bHVlIG9mIHBvc2l0aW9uOnJlbGF0aXZlLgorICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxh
Z3M6OnBvc2l0aW9uV2FzUmVsYXRpdmUpOgorICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxh
Z3M6OnNldFBvc2l0aW9uV2FzUmVsYXRpdmUpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9T
dHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEpOgorICAgICAgICAo
V2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSk6CisgICAgICAg
ICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDoKKwogMjAxMS0w
My0xMCAgT2phbiBWYWZhaSAgPG9qYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCmlu
ZGV4IGYyZjBlNTRhZDc2YTQzNmZlMDZlNThmM2EyZmIwNjAwMDZjNWQ2MDkuLjBjZGU5N2RiYzFl
OTkxYzAwMjk0YzYzNmM5YjRmMmExN2JkMGVkZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5
bGVTZWxlY3Rvci5jcHAKQEAgLTE4OTIsNiArMTg5Miw4IEBAIHZvaWQgQ1NTU3R5bGVTZWxlY3Rv
cjo6YWRqdXN0UmVuZGVyU3R5bGUoUmVuZGVyU3R5bGUqIHN0eWxlLCBSZW5kZXJTdHlsZSogcGFy
ZW50CiAgICAgICAgIC8vIEZyYW1lcyBhbmQgZnJhbWVzZXRzIG5ldmVyIGhvbm9yIHBvc2l0aW9u
OnJlbGF0aXZlIG9yIHBvc2l0aW9uOmFic29sdXRlLiAgVGhpcyBpcyBuZWNlc3NhcnkgdG8KICAg
ICAgICAgLy8gZml4IGEgY3Jhc2ggd2hlcmUgYSBzaXRlIHRyaWVzIHRvIHBvc2l0aW9uIHRoZXNl
IG9iamVjdHMuICBUaGV5IGFsc28gbmV2ZXIgaG9ub3IgZGlzcGxheS4KICAgICAgICAgaWYgKGUg
JiYgKGUtPmhhc1RhZ05hbWUoZnJhbWVUYWcpIHx8IGUtPmhhc1RhZ05hbWUoZnJhbWVzZXRUYWcp
KSkgeworICAgICAgICAgICAgaWYgKHN0eWxlLT5wb3NpdGlvbigpID09IFJlbGF0aXZlUG9zaXRp
b24pCisgICAgICAgICAgICAgICAgc3R5bGUtPnNldFBvc2l0aW9uV2FzUmVsYXRpdmUodHJ1ZSk7
CiAgICAgICAgICAgICBzdHlsZS0+c2V0UG9zaXRpb24oU3RhdGljUG9zaXRpb24pOwogICAgICAg
ICAgICAgc3R5bGUtPnNldERpc3BsYXkoQkxPQ0spOwogICAgICAgICB9CkBAIC0xOTM0LDggKzE5
MzYsMTAgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphZGp1c3RSZW5kZXJTdHlsZShSZW5kZXJT
dHlsZSogc3R5bGUsIFJlbmRlclN0eWxlKiBwYXJlbnQKICAgICAgICAgLy8gb24gc29tZSBzaXRl
cykuCiAgICAgICAgIGlmICgoc3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9IRUFERVJfR1JPVVAg
fHwgc3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9ST1dfR1JPVVAgfHwKICAgICAgICAgICAgICBz
dHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0ZPT1RFUl9HUk9VUCB8fCBzdHlsZS0+ZGlzcGxheSgp
ID09IFRBQkxFX1JPVyB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0NFTEwpICYmCi0gICAg
ICAgICAgICAgc3R5bGUtPnBvc2l0aW9uKCkgPT0gUmVsYXRpdmVQb3NpdGlvbikKKyAgICAgICAg
ICAgICBzdHlsZS0+cG9zaXRpb24oKSA9PSBSZWxhdGl2ZVBvc2l0aW9uKSB7CisgICAgICAgICAg
ICBzdHlsZS0+c2V0UG9zaXRpb25XYXNSZWxhdGl2ZSh0cnVlKTsKICAgICAgICAgICAgIHN0eWxl
LT5zZXRQb3NpdGlvbihTdGF0aWNQb3NpdGlvbik7CisgICAgICAgIH0KIAogICAgICAgICAvLyB3
cml0aW5nLW1vZGUgZG9lcyBub3QgYXBwbHkgdG8gdGFibGUgcm93IGdyb3VwcywgdGFibGUgY29s
dW1uIGdyb3VwcywgdGFibGUgcm93cywgYW5kIHRhYmxlIGNvbHVtbnMuCiAgICAgICAgIC8vIEZJ
WE1FOiBUYWJsZSBjZWxscyBzaG91bGQgYmUgYWxsb3dlZCB0byBiZSBwZXJwZW5kaWN1bGFyIG9y
IGZsaXBwZWQgd2l0aCByZXNwZWN0IHRvIHRoZSB0YWJsZSwgdGhvdWdoLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCBiMjE5OWQwZDRjMmIyZTI5NDQ0MDZk
MDY3M2M0OTk0ZDMxNWQ1NDBmLi45MzFlMGIxMDE5NzhkY2NhNWVkZGRkNjZkMDdkYTM0ZmFjZGQ3
Yjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcApAQCAtMjE1
Miw2ICsyMTUyLDExIEBAIFJlbmRlck9iamVjdCogUmVuZGVyT2JqZWN0Ojpjb250YWluZXIoUmVu
ZGVyQm94TW9kZWxPYmplY3QqIHJlcGFpbnRDb250YWluZXIsIGJvCiAgICAgcmV0dXJuIG87CiB9
CiAKK2Jvb2wgUmVuZGVyT2JqZWN0Ojp3YXNPcmlnaW5hbGx5UmVsYXRpdmVQb3NpdGlvbmVkKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gaXNSZWxQb3NpdGlvbmVkKCkgfHwgc3R5bGUoKS0+cG9zaXRp
b25XYXNSZWxhdGl2ZSgpOworfQorCiBib29sIFJlbmRlck9iamVjdDo6aXNTZWxlY3Rpb25Cb3Jk
ZXIoKSBjb25zdAogewogICAgIFNlbGVjdGlvblN0YXRlIHN0ID0gc2VsZWN0aW9uU3RhdGUoKTsK
QEAgLTI2MTAsMTEgKzI2MTUsMTIgQEAgUmVuZGVyQm94TW9kZWxPYmplY3QqIFJlbmRlck9iamVj
dDo6b2Zmc2V0UGFyZW50KCkgY29uc3QKICAgICAvLyAgICAgKiBUaGUgY29tcHV0ZWQgdmFsdWUg
b2YgdGhlIHBvc2l0aW9uIHByb3BlcnR5IG9mIEEgaXMgc3RhdGljIGFuZCB0aGUgYW5jZXN0b3IK
ICAgICAvLyAgICAgICBpcyBvbmUgb2YgdGhlIGZvbGxvd2luZyBIVE1MIGVsZW1lbnRzOiB0ZCwg
dGgsIG9yIHRhYmxlLgogICAgIC8vICAgICAqIE91ciBvd24gZXh0ZW5zaW9uOiBpZiB0aGVyZSBp
cyBhIGRpZmZlcmVuY2UgaW4gdGhlIGVmZmVjdGl2ZSB6b29tCi0gICAgYm9vbCBza2lwVGFibGVz
ID0gaXNQb3NpdGlvbmVkKCkgfHwgaXNSZWxQb3NpdGlvbmVkKCk7CisKKyAgICBib29sIHNraXBU
YWJsZXMgPSBpc1Bvc2l0aW9uZWQoKSB8fCB3YXNPcmlnaW5hbGx5UmVsYXRpdmVQb3NpdGlvbmVk
KCk7CiAgICAgZmxvYXQgY3Vyclpvb20gPSBzdHlsZSgpLT5lZmZlY3RpdmVab29tKCk7CiAgICAg
UmVuZGVyT2JqZWN0KiBjdXJyID0gcGFyZW50KCk7CiAgICAgd2hpbGUgKGN1cnIgJiYgKCFjdXJy
LT5ub2RlKCkgfHwKLSAgICAgICAgICAgICAgICAgICAgKCFjdXJyLT5pc1Bvc2l0aW9uZWQoKSAm
JiAhY3Vyci0+aXNSZWxQb3NpdGlvbmVkKCkgJiYgIWN1cnItPmlzQm9keSgpKSkpIHsKKyAgICAg
ICAgICAgICAgICAgICAgKCFjdXJyLT5pc1Bvc2l0aW9uZWQoKSAmJiAhY3Vyci0+d2FzT3JpZ2lu
YWxseVJlbGF0aXZlUG9zaXRpb25lZCgpICYmICFjdXJyLT5pc0JvZHkoKSkpKSB7CiAgICAgICAg
IE5vZGUqIGVsZW1lbnQgPSBjdXJyLT5ub2RlKCk7CiAgICAgICAgIGlmICghc2tpcFRhYmxlcyAm
JiBlbGVtZW50KSB7CiAgICAgICAgICAgICBib29sIGlzVGFibGVFbGVtZW50ID0gZWxlbWVudC0+
aGFzVGFnTmFtZSh0YWJsZVRhZykgfHwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuaAppbmRleCAwYjQ0ZmZhYjY4OTFmMWRhOGQzMjFkNmYxOTVjMWE2ODE0NGY2MWI4Li40NjBm
NTZlY2E5NzVmZDIwODZjNjdhOTk4MjRiMzczYzQ4Y2JiZjc5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC00MDAsNiArNDAwLDExIEBAIHB1YmxpYzoKICAgICBi
b29sIGlzRmxvYXRpbmcoKSBjb25zdCB7IHJldHVybiBtX2Zsb2F0aW5nOyB9CiAgICAgYm9vbCBp
c1Bvc2l0aW9uZWQoKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uZWQ7IH0gLy8gYWJzb2x1dGUg
b3IgZml4ZWQgcG9zaXRpb25pbmcKICAgICBib29sIGlzUmVsUG9zaXRpb25lZCgpIGNvbnN0IHsg
cmV0dXJuIG1fcmVsUG9zaXRpb25lZDsgfSAvLyByZWxhdGl2ZSBwb3NpdGlvbmluZworCisgICAg
Ly8gV2ViS2l0IG92ZXJ3cml0ZXMgdGhlIHBvc2l0aW9uOnJlbGF0aXZlIHN0eWxlIGZvciBjZXJ0
YWluIGVsZW1lbnRzIGZvciB3aGljaCBzdWNoIHBvc2l0aW9uaW5nIGlzIGlsbGVnYWwgb3IgYmVo
YXZpb3IgaXMgdW5kZWZpbmVkLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFs
dWUgc3BlY2lmaWVkIGluIHRoZSBzb3VyY2UsIGV2ZW4gaWYgaXQgd2FzIGNvcnJlY3RlZCBieSBX
ZWJLaXQuCisgICAgYm9vbCB3YXNPcmlnaW5hbGx5UmVsYXRpdmVQb3NpdGlvbmVkKCkgY29uc3Q7
CisKICAgICBib29sIGlzVGV4dCgpIGNvbnN0ICB7IHJldHVybiBtX2lzVGV4dDsgfQogICAgIGJv
b2wgaXNCb3goKSBjb25zdCB7IHJldHVybiBtX2lzQm94OyB9CiAgICAgYm9vbCBpc0lubGluZSgp
IGNvbnN0IHsgcmV0dXJuIG1faW5saW5lOyB9ICAvLyBpbmxpbmUgb2JqZWN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IDZmYmYwY2U4ZjNiMzE1
OWZhYjI4YWExMGVjZWQzMjk2NTg4MmVjNDYuLmEyYWM5MWQ0MmU2YzYzNDIwMmE4ZDYyNDQyNzRi
NWU1MmI3YzczNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oCkBAIC01OTksNiArNTk5LDggQEAgcHVibGljOgogICAgIHNob3J0IGNvdW50ZXJJbmNy
ZW1lbnQoKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jb3VudGVySW5j
cmVtZW50OyB9CiAgICAgc2hvcnQgY291bnRlclJlc2V0KCkgY29uc3QgeyByZXR1cm4gcmFyZU5v
bkluaGVyaXRlZERhdGEtPm1fY291bnRlclJlc2V0OyB9CiAKKyAgICBib29sIHBvc2l0aW9uV2Fz
UmVsYXRpdmUoKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9wb3NpdGlv
bldhc1JlbGF0aXZlOyB9CisKICAgICBFTGlzdFN0eWxlVHlwZSBsaXN0U3R5bGVUeXBlKCkgY29u
c3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8RUxpc3RTdHlsZVR5cGU+KGluaGVyaXRlZF9mbGFncy5f
bGlzdF9zdHlsZV90eXBlKTsgfQogICAgIFN0eWxlSW1hZ2UqIGxpc3RTdHlsZUltYWdlKCkgY29u
c3QgeyByZXR1cm4gaW5oZXJpdGVkLT5saXN0X3N0eWxlX2ltYWdlLmdldCgpOyB9CiAgICAgRUxp
c3RTdHlsZVBvc2l0aW9uIGxpc3RTdHlsZVBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8RUxpc3RTdHlsZVBvc2l0aW9uPihpbmhlcml0ZWRfZmxhZ3MuX2xpc3Rfc3R5bGVfcG9z
aXRpb24pOyB9CkBAIC05NzEsNiArOTczLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q291bnRl
ckluY3JlbWVudChzaG9ydCB2KSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1fY291
bnRlckluY3JlbWVudCwgdikgfQogICAgIHZvaWQgc2V0Q291bnRlclJlc2V0KHNob3J0IHYpIHsg
U0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9jb3VudGVyUmVzZXQsIHYpIH0KIAorICAg
IHZvaWQgc2V0UG9zaXRpb25XYXNSZWxhdGl2ZShib29sIHYpIHsgU0VUX1ZBUihyYXJlTm9uSW5o
ZXJpdGVkRGF0YSwgbV9wb3NpdGlvbldhc1JlbGF0aXZlLCB2KSB9CisKICAgICB2b2lkIHNldExp
c3RTdHlsZVR5cGUoRUxpc3RTdHlsZVR5cGUgdikgeyBpbmhlcml0ZWRfZmxhZ3MuX2xpc3Rfc3R5
bGVfdHlwZSA9IHY7IH0KICAgICB2b2lkIHNldExpc3RTdHlsZUltYWdlKFBhc3NSZWZQdHI8U3R5
bGVJbWFnZT4gdikgeyBpZiAoaW5oZXJpdGVkLT5saXN0X3N0eWxlX2ltYWdlICE9IHYpIGluaGVy
aXRlZC5hY2Nlc3MoKS0+bGlzdF9zdHlsZV9pbWFnZSA9IHY7IH0KICAgICB2b2lkIHNldExpc3RT
dHlsZVBvc2l0aW9uKEVMaXN0U3R5bGVQb3NpdGlvbiB2KSB7IGluaGVyaXRlZF9mbGFncy5fbGlz
dF9zdHlsZV9wb3NpdGlvbiA9IHY7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAppbmRleCAzNzcx
ZjEzODk5YjBiMjJhODE3MDUxMTQ1OWQ5MDQ3NmNjZGFmY2ZlLi41ZDcxMDU2ZjI2YTgzNWJmM2Fj
YzViYmI5YmE0OGQ4NjE4MTRiZWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCkBAIC00Niw2
ICs0Niw3IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRl
ZERhdGEoKQogICAgICwgbV90ZXh0Q29tYmluZShSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRDb21i
aW5lKCkpCiAgICAgLCBtX2NvdW50ZXJJbmNyZW1lbnQoMCkKICAgICAsIG1fY291bnRlclJlc2V0
KDApCisgICAgLCBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUoMCkKICNpZiBVU0UoQUNDRUxFUkFURURf
Q09NUE9TSVRJTkcpCiAgICAgLCBtX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbihmYWxzZSkK
ICNlbmRpZgpAQCAtODMsNiArODQsNyBAQCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhKGNvbnN0IFN0eWxlUmFyZU5vbkluaGVyaXRlZAogICAgICwg
bV90ZXh0Q29tYmluZShvLm1fdGV4dENvbWJpbmUpCiAgICAgLCBtX2NvdW50ZXJJbmNyZW1lbnQo
by5tX2NvdW50ZXJJbmNyZW1lbnQpCiAgICAgLCBtX2NvdW50ZXJSZXNldChvLm1fY291bnRlclJl
c2V0KQorICAgICwgbV9wb3NpdGlvbldhc1JlbGF0aXZlKG8ubV9wb3NpdGlvbldhc1JlbGF0aXZl
KQogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICAsIG1fcnVubmluZ0FjY2Vs
ZXJhdGVkQW5pbWF0aW9uKG8ubV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24pCiAjZW5kaWYK
QEAgLTEyOSw2ICsxMzEsNyBAQCBib29sIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJh
dG9yPT0oY29uc3QgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSYgbykgYwogICAgICAgICAmJiBt
X3RleHRDb21iaW5lID09IG8ubV90ZXh0Q29tYmluZQogICAgICAgICAmJiBtX2NvdW50ZXJJbmNy
ZW1lbnQgPT0gby5tX2NvdW50ZXJJbmNyZW1lbnQKICAgICAgICAgJiYgbV9jb3VudGVyUmVzZXQg
PT0gby5tX2NvdW50ZXJSZXNldAorICAgICAgICAmJiBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUgPT0g
by5tX3Bvc2l0aW9uV2FzUmVsYXRpdmUKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcp
CiAgICAgICAgICYmICFtX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbiAmJiAhby5tX3J1bm5p
bmdBY2NlbGVyYXRlZEFuaW1hdGlvbgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCA4
OTQzN2Y2OGU2ZDg0NGJkNDE0ODAyNzI1NWM3MGVmNTQ1ZDA2Njk2Li4xNDkzOThhNTU2Y2E3Nzdm
ODE3N2RjMTdmMDRjZGVlNmY5Y2Q2NDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKQEAgLTEwOCw2
ICsxMDgsOSBAQCBwdWJsaWM6CiAgICAgc2hvcnQgbV9jb3VudGVySW5jcmVtZW50OwogICAgIHNo
b3J0IG1fY291bnRlclJlc2V0OwogICAgIAorICAgIC8vIFRoaXMgZmxhZyBwcmVzZXJ2ZXMgdGhl
IGZhY3QgdGhhdCB0aGUgcG9zaXRpb24gYXR0cmlidXRlIHdhcyBvcmlnaW5hbGx5IHNwZWNpZmll
ZCBhcyByZWxhdGl2ZS4KKyAgICB1bnNpZ25lZCBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUgOiAxOwor
CiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogICAgIGJvb2wgbV9ydW5uaW5nQWNj
ZWxlcmF0ZWRBbmltYXRpb24gOiAxOwogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85299</attachid>
            <date>2011-03-10 02:02:05 -0800</date>
            <delta_ts>2011-03-10 21:36:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52535-20110310120202.patch</filename>
            <type>text/plain</type>
            <size>15529</size>
            <attacher name="Jeremy Moskovich">playmobil</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA2OTgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyZjI2N2E1NjQ3MDk5YmNjZDJmNDBl
MWU2Y2I2MTc1ZDcyNjI1Y2VhLi5mZDJlNjFhNjY2NGZlZmU4MWE5MWVhM2Q0Y2U5MDcxNmUxZjM5
ZTU5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDMtMDcgIEplcmVteSBNb3Nrb3ZpY2gg
IDxqZXJlbXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
LgorCisgICAgICAgIEZpeCBuYXZpZ2F0aW9uIG1lbnVzIG9uIGEgYnVuY2ggb2Ygc2l0ZXMgaW4g
V2ViS2l0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTI1MzUKKworICAgICAgICBBZGQgdGVzdCB0byBtYWtlIHN1cmUgdGhhdCBvZmZzZXRMZWZ0IG1h
dGNoZXMgRkYvSUUgZm9yIGEgcmVsYXRpdmVseQorICAgICAgICBwb3NpdGlvbmVkIFREIGFuZCBJ
RlJBTUUgZWxlbWVudHMuCisgICAgICAgIFRlc3RjYXNlIGlzIGEgcmVkdWN0aW9uIGZyb20gZG91
bGEuY28uaWwuCisKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQt
cmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLWlmcmFtZS5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNl
dExlZnQtcmVsYXRpdmUtdGQuaHRtbDogQWRkZWQuCisKIDIwMTEtMDMtMTAgIFBoaWxpcHBlIE5v
cm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHNraXAg
anF1ZXJ5L2VmZmVjdHMuaHRtbCBvbiBHVEsuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Jsb2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2
ZS1pZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNiMjNmZGYxZjcyOGUzYzdhMGQyYTY4
YmE0M2VlYWFmMTgyMjllMDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Js
b2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDcgQEAKKworCisKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExlZnQg
aXMgY2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIGlmcmFt
ZSBlbGVtZW50IGluc2lkZSBhIHRhYmxlLgorCitub2RlLm9mZnNldExlZnQ9MzAzIChTaG91bGQg
YmUgMzAzIGFzIGluIEZGIGFuZCBJRSkKK2ZpbmRQb3NYPTMwMyAoU2hvdWxkIGJlIDMwMyBhcyBp
biBGRiBhbmQgSUUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9u
aW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Js
b2NrL3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtaWZyYW1lLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMDM0OWVlNzM4YTJlYzRhNjhkYzg5MjQ2MmQ5NDg3MTczYjAwNGVlZgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxh
dGl2ZS1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDQ1IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
KyAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCitmdW5jdGlvbiBsb2coc3Ry
KSB7CisgIHZhciBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7CisgIGxpLmFwcGVu
ZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHN0cikpOworICB2YXIgY29uc29sZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIik7CisgIGNvbnNvbGUuYXBwZW5kQ2hpbGQo
bGkpOworfQorCitmdW5jdGlvbiBmaW5kUG9zWChvYmopIHsKKyAgdmFyIHJldCA9IDA7CisgIGRv
IHsKKyAgICByZXQgKz0gb2JqLm9mZnNldExlZnQ7CisgICAgb2JqID0gb2JqLm9mZnNldFBhcmVu
dDsKKyAgfSB3aGlsZSAob2JqKTsKKyAgcmV0dXJuIHJldDsKK30KKworZnVuY3Rpb24gcHJpbnRE
aXZQbGFjZW1lbnQoKSB7CisgIHZhciB0aGVfbm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdmcmFtZScpOworICBsb2coIm5vZGUub2Zmc2V0TGVmdD0iICsgdGhlX25vZGUub2Zmc2V0TGVm
dCArICIgKFNob3VsZCBiZSAzMDMgYXMgaW4gRkYgYW5kIElFKSIpOworICBsb2coImZpbmRQb3NY
PSIgKyBmaW5kUG9zWCh0aGVfbm9kZSkgKyAiIChTaG91bGQgYmUgMzAzIGFzIGluIEZGIGFuZCBJ
RSkiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJwcmludERpdlBsYWNl
bWVudCgpIj4KKzxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB0b3A6MHB4OyBsZWZ0OjBw
eDsgd2lkdGg6ODAwcHg7IGJhY2tncm91bmQtY29sb3I6I0MzRENCRjsiPgorCTx0YWJsZSB3aWR0
aD0iMjAwcHgiIHN0eWxlPSJtYXJnaW46IGF1dG87Ij4KKwkJPHRyPgorCQkJPHRkPgorCQkJCSAg
PGlmcmFtZSBpZD1mcmFtZSBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDoyMHB4OyBo
ZWlnaHQ6MjBweCI+PC9pZnJhbWU+CisJCQk8L3RkPgorCQk8L3RyPgorCTwvdGFibGU+Cis8L2Rp
dj4KKzxicj48YnI+Cis8aDM+VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgb2Zmc2V0TGVmdCBpcyBj
YWxjdWxhdGVkIGNvcnJlY3RseSBmb3IgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgaWZyYW1lIGVs
ZW1lbnQgaW5zaWRlIGEgdGFibGUuPC9oMz4KKzx1bCBpZD1jb25zb2xlPjwvdWw+Cis8L2JvZHk+
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1y
ZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWUyMjJhYTBmMDY4NGZjNTQ0ZmVj
ODNlMjI2NmU4NTE4NmIyMWU2MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
YmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0TGVmdC1yZWxhdGl2ZS10ZC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw3IEBACitNZW51IE5vZGUKKworCitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBvZmZz
ZXRMZWZ0IGlzIGNhbGN1bGF0ZWQgY29ycmVjdGx5IGZvciBhIHJlbGF0aXZlbHkgcG9zaXRpb25l
ZCB0ZCBlbGVtZW50LgorCitub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0PTMwMiAoU2hvdWxk
IGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpCitmaW5kUG9zWD0zMDIgKFNob3VsZCBiZSAzMDIgYXMg
aW4gRkYgYW5kIElFKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlv
bmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL29mZnNldExlZnQtcmVsYXRpdmUtdGQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NjQz
NWRlM2YwZjYxMTUxNzY4MjA3N2FlZjBmMTM3ODYxYWVjMmU1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRk
Lmh0bWwKQEAgLTAsMCArMSw0NyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworZnVuY3Rpb24gbG9nKHN0cikgeworICB2YXIg
bGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpOworICBsaS5hcHBlbmRDaGlsZChkb2N1
bWVudC5jcmVhdGVUZXh0Tm9kZShzdHIpKTsKKyAgdmFyIGNvbnNvbGUgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiY29uc29sZSIpOworICBjb25zb2xlLmFwcGVuZENoaWxkKGxpKTsKK30KKwor
ZnVuY3Rpb24gZmluZFBvc1gob2JqKSB7CisgIHZhciByZXQgPSAwOworICBkbyB7CisgICAgcmV0
ICs9IG9iai5vZmZzZXRMZWZ0OworICAgIG9iaiA9IG9iai5vZmZzZXRQYXJlbnQ7CisgIH0gd2hp
bGUgKG9iaik7CisgIHJldHVybiByZXQ7Cit9CisKKy8vIFRoaXMgY29kZSB3YXMgcmVkdWNlZCBm
cm9tIHRoZSBtZW51IHN5c3RlbSBvbiBkb3VsYS5jby5pbCB3aGljaCBpcyB3aHkgd2UgY2FsbCBv
ZmZzZXRQYXJlbnQub2Zmc2V0TGVmdCByYXRoZXIgdGhhbgorLy8ganVzdCByZXRyZWl2aW5nIHRo
ZSBlbGVtZW50IGRpcmVjdGx5LgorZnVuY3Rpb24gcHJpbnREaXZQbGFjZW1lbnQoKSB7CisgIHZh
ciB0aGVfbm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtZW51X25vZGUnKTsKKyAgbG9n
KCJub2RlLm9mZnNldFBhcmVudC5vZmZzZXRMZWZ0PSIgKyB0aGVfbm9kZS5vZmZzZXRQYXJlbnQu
b2Zmc2V0TGVmdCArICIgKFNob3VsZCBiZSAzMDIgYXMgaW4gRkYgYW5kIElFKSIpOworICBsb2co
ImZpbmRQb3NYPSIgKyBmaW5kUG9zWCh0aGVfbm9kZS5vZmZzZXRQYXJlbnQpICsgIiAoU2hvdWxk
IGJlIDMwMiBhcyBpbiBGRiBhbmQgSUUpIik7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
IG9ubG9hZD0icHJpbnREaXZQbGFjZW1lbnQoKSI+Cis8ZGl2IHN0eWxlPSJwb3NpdGlvbjphYnNv
bHV0ZTsgdG9wOjBweDsgbGVmdDowcHg7IHdpZHRoOjgwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiND
M0RDQkY7Ij4KKwk8dGFibGUgd2lkdGg9IjIwMHB4IiBzdHlsZT0ibWFyZ2luOiBhdXRvOyI+CisJ
CTx0cj4KKwkJCTx0ZCBzdHlsZT0icG9zaXRpb246cmVsYXRpdmUiPgorCQkJCTxkaXYgaWQ9bWVu
dV9ub2RlPk1lbnUgTm9kZTwvZGl2PgorCQkJPC90ZD4KKwkJPC90cj4KKwk8L3RhYmxlPgorPC9k
aXY+Cis8YnI+PGJyPgorPGgzPlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IG9mZnNldExlZnQgaXMg
Y2FsY3VsYXRlZCBjb3JyZWN0bHkgZm9yIGEgcmVsYXRpdmVseSBwb3NpdGlvbmVkIHRkIGVsZW1l
bnQuPC9oMz4KKzx1bCBpZD1jb25zb2xlPjwvdWw+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDY3ZWZlZTJjNzkxZmI3Nzc4YjBmMTcz
NGQzOTFlYTQzMWIyZWMzNWMuLjJiY2ZhNWNkMDgyNDRhNTI4M2Y4NjcyNmVmYzJkYWU3NWU5ZGRh
YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMS0wMy0wNyAgSmVyZW15IE1vc2tv
dmljaCAgPGplcmVteUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4g
QWRsZXIuCisKKyAgICAgICAgRml4IG5hdmlnYXRpb24gbWVudXMgb24gYSBidW5jaCBvZiBzaXRl
cyBpbiBXZWJLaXQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD01MjUzNQorCisgICAgICAgIFdlYktpdCBkb2Vzbid0IHN1cHBvcnQgcG9zaXRpb246cmVs
YXRpdmUgZm9yIHNldmVyYWwgdGFibGUgZWxlbWVudHMgYW5kCisgICAgICAgIG92ZXJ3cml0ZXMg
dGhlIHN0eWxlIGludGVybmFsbHkgd2hlbiBwb3NpdGlvbjpyZWxhdGl2ZSBpcyBlbmNvdW50ZXJl
ZC4KKyAgICAgICAgVW5mb3J0dW5hdGVseSBwb3NpdGlvbjpyZWxhdGl2ZSBhZmZlY3RzIHRoZSBj
aG9pY2Ugb2Ygbm9kZXMgcmV0dXJuZWQgYnkKKyAgICAgICAgb2Zmc2V0UGFyZW50LgorCisgICAg
ICAgIFRoaXMgQ0wgYWRkcyBhIGJpdCB0byBSZW5kZXJTdHlsZSB0byB0cmFjayB3aGV0aGVyIHBv
c2l0aW9uOnJlbGF0aXZlIHdhcworICAgICAgICBvdmVyd3JpdHRlbi4gIFRoZSB2YWx1ZSBpcyB0
aGVuIGNvbnN1bHRlZCBpbiBvZmZzZXRQYXJlbnQgd2hpY2ggbWFrZXMgdXMKKyAgICAgICAgbWF0
Y2ggRkYvSUUuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvYmxvY2svcG9zaXRpb25pbmcvb2Zmc2V0
TGVmdC1yZWxhdGl2ZS1pZnJhbWUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9ibG9jay9wb3Np
dGlvbmluZy9vZmZzZXRMZWZ0LXJlbGF0aXZlLXRkLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NT
dHlsZVNlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFk
anVzdFJlbmRlclN0eWxlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6aXNPcmlnaW5hbGx5UmVsUG9zaXRpb25l
ZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJPYmplY3Q6Om9mZnNldFBhcmVudCk6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5oOiBBZGQgYSBiaXQgdG8gdHJhY2sgdGhlIG9yaWdpbmFsIHZhbHVlIG9m
IHBvc2l0aW9uOnJlbGF0aXZlLgorICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OnBv
c2l0aW9uV2FzUmVsYXRpdmUpOgorICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OnNl
dFBvc2l0aW9uV2FzUmVsYXRpdmUpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFyZU5vbklu
aGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSk6CisgICAgICAgICogcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDoKKwogMjAxMS0wMy0xMCAg
T2phbiBWYWZhaSAgPG9qYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERh
cmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCmluZGV4IGYy
ZjBlNTRhZDc2YTQzNmZlMDZlNThmM2EyZmIwNjAwMDZjNWQ2MDkuLjBjZGU5N2RiYzFlOTkxYzAw
Mjk0YzYzNmM5YjRmMmExN2JkMGVkZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NTdHlsZVNlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHAKQEAgLTE4OTIsNiArMTg5Miw4IEBAIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6YWRq
dXN0UmVuZGVyU3R5bGUoUmVuZGVyU3R5bGUqIHN0eWxlLCBSZW5kZXJTdHlsZSogcGFyZW50CiAg
ICAgICAgIC8vIEZyYW1lcyBhbmQgZnJhbWVzZXRzIG5ldmVyIGhvbm9yIHBvc2l0aW9uOnJlbGF0
aXZlIG9yIHBvc2l0aW9uOmFic29sdXRlLiAgVGhpcyBpcyBuZWNlc3NhcnkgdG8KICAgICAgICAg
Ly8gZml4IGEgY3Jhc2ggd2hlcmUgYSBzaXRlIHRyaWVzIHRvIHBvc2l0aW9uIHRoZXNlIG9iamVj
dHMuICBUaGV5IGFsc28gbmV2ZXIgaG9ub3IgZGlzcGxheS4KICAgICAgICAgaWYgKGUgJiYgKGUt
Pmhhc1RhZ05hbWUoZnJhbWVUYWcpIHx8IGUtPmhhc1RhZ05hbWUoZnJhbWVzZXRUYWcpKSkgewor
ICAgICAgICAgICAgaWYgKHN0eWxlLT5wb3NpdGlvbigpID09IFJlbGF0aXZlUG9zaXRpb24pCisg
ICAgICAgICAgICAgICAgc3R5bGUtPnNldFBvc2l0aW9uV2FzUmVsYXRpdmUodHJ1ZSk7CiAgICAg
ICAgICAgICBzdHlsZS0+c2V0UG9zaXRpb24oU3RhdGljUG9zaXRpb24pOwogICAgICAgICAgICAg
c3R5bGUtPnNldERpc3BsYXkoQkxPQ0spOwogICAgICAgICB9CkBAIC0xOTM0LDggKzE5MzYsMTAg
QEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphZGp1c3RSZW5kZXJTdHlsZShSZW5kZXJTdHlsZSog
c3R5bGUsIFJlbmRlclN0eWxlKiBwYXJlbnQKICAgICAgICAgLy8gb24gc29tZSBzaXRlcykuCiAg
ICAgICAgIGlmICgoc3R5bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9IRUFERVJfR1JPVVAgfHwgc3R5
bGUtPmRpc3BsYXkoKSA9PSBUQUJMRV9ST1dfR1JPVVAgfHwKICAgICAgICAgICAgICBzdHlsZS0+
ZGlzcGxheSgpID09IFRBQkxFX0ZPT1RFUl9HUk9VUCB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRB
QkxFX1JPVyB8fCBzdHlsZS0+ZGlzcGxheSgpID09IFRBQkxFX0NFTEwpICYmCi0gICAgICAgICAg
ICAgc3R5bGUtPnBvc2l0aW9uKCkgPT0gUmVsYXRpdmVQb3NpdGlvbikKKyAgICAgICAgICAgICBz
dHlsZS0+cG9zaXRpb24oKSA9PSBSZWxhdGl2ZVBvc2l0aW9uKSB7CisgICAgICAgICAgICBzdHls
ZS0+c2V0UG9zaXRpb25XYXNSZWxhdGl2ZSh0cnVlKTsKICAgICAgICAgICAgIHN0eWxlLT5zZXRQ
b3NpdGlvbihTdGF0aWNQb3NpdGlvbik7CisgICAgICAgIH0KIAogICAgICAgICAvLyB3cml0aW5n
LW1vZGUgZG9lcyBub3QgYXBwbHkgdG8gdGFibGUgcm93IGdyb3VwcywgdGFibGUgY29sdW1uIGdy
b3VwcywgdGFibGUgcm93cywgYW5kIHRhYmxlIGNvbHVtbnMuCiAgICAgICAgIC8vIEZJWE1FOiBU
YWJsZSBjZWxscyBzaG91bGQgYmUgYWxsb3dlZCB0byBiZSBwZXJwZW5kaWN1bGFyIG9yIGZsaXBw
ZWQgd2l0aCByZXNwZWN0IHRvIHRoZSB0YWJsZSwgdGhvdWdoLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCBiMjE5OWQwZDRjMmIyZTI5NDQ0MDZkMDY3M2M0
OTk0ZDMxNWQ1NDBmLi45MzFlMGIxMDE5NzhkY2NhNWVkZGRkNjZkMDdkYTM0ZmFjZGQ3Yjc2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcApAQCAtMjE1Miw2ICsy
MTUyLDExIEBAIFJlbmRlck9iamVjdCogUmVuZGVyT2JqZWN0Ojpjb250YWluZXIoUmVuZGVyQm94
TW9kZWxPYmplY3QqIHJlcGFpbnRDb250YWluZXIsIGJvCiAgICAgcmV0dXJuIG87CiB9CiAKK2Jv
b2wgUmVuZGVyT2JqZWN0Ojp3YXNPcmlnaW5hbGx5UmVsYXRpdmVQb3NpdGlvbmVkKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gaXNSZWxQb3NpdGlvbmVkKCkgfHwgc3R5bGUoKS0+cG9zaXRpb25XYXNS
ZWxhdGl2ZSgpOworfQorCiBib29sIFJlbmRlck9iamVjdDo6aXNTZWxlY3Rpb25Cb3JkZXIoKSBj
b25zdAogewogICAgIFNlbGVjdGlvblN0YXRlIHN0ID0gc2VsZWN0aW9uU3RhdGUoKTsKQEAgLTI2
MTAsMTEgKzI2MTUsMTIgQEAgUmVuZGVyQm94TW9kZWxPYmplY3QqIFJlbmRlck9iamVjdDo6b2Zm
c2V0UGFyZW50KCkgY29uc3QKICAgICAvLyAgICAgKiBUaGUgY29tcHV0ZWQgdmFsdWUgb2YgdGhl
IHBvc2l0aW9uIHByb3BlcnR5IG9mIEEgaXMgc3RhdGljIGFuZCB0aGUgYW5jZXN0b3IKICAgICAv
LyAgICAgICBpcyBvbmUgb2YgdGhlIGZvbGxvd2luZyBIVE1MIGVsZW1lbnRzOiB0ZCwgdGgsIG9y
IHRhYmxlLgogICAgIC8vICAgICAqIE91ciBvd24gZXh0ZW5zaW9uOiBpZiB0aGVyZSBpcyBhIGRp
ZmZlcmVuY2UgaW4gdGhlIGVmZmVjdGl2ZSB6b29tCi0gICAgYm9vbCBza2lwVGFibGVzID0gaXNQ
b3NpdGlvbmVkKCkgfHwgaXNSZWxQb3NpdGlvbmVkKCk7CisKKyAgICBib29sIHNraXBUYWJsZXMg
PSBpc1Bvc2l0aW9uZWQoKSB8fCB3YXNPcmlnaW5hbGx5UmVsYXRpdmVQb3NpdGlvbmVkKCk7CiAg
ICAgZmxvYXQgY3Vyclpvb20gPSBzdHlsZSgpLT5lZmZlY3RpdmVab29tKCk7CiAgICAgUmVuZGVy
T2JqZWN0KiBjdXJyID0gcGFyZW50KCk7CiAgICAgd2hpbGUgKGN1cnIgJiYgKCFjdXJyLT5ub2Rl
KCkgfHwKLSAgICAgICAgICAgICAgICAgICAgKCFjdXJyLT5pc1Bvc2l0aW9uZWQoKSAmJiAhY3Vy
ci0+aXNSZWxQb3NpdGlvbmVkKCkgJiYgIWN1cnItPmlzQm9keSgpKSkpIHsKKyAgICAgICAgICAg
ICAgICAgICAgKCFjdXJyLT5pc1Bvc2l0aW9uZWQoKSAmJiAhY3Vyci0+d2FzT3JpZ2luYWxseVJl
bGF0aXZlUG9zaXRpb25lZCgpICYmICFjdXJyLT5pc0JvZHkoKSkpKSB7CiAgICAgICAgIE5vZGUq
IGVsZW1lbnQgPSBjdXJyLT5ub2RlKCk7CiAgICAgICAgIGlmICghc2tpcFRhYmxlcyAmJiBlbGVt
ZW50KSB7CiAgICAgICAgICAgICBib29sIGlzVGFibGVFbGVtZW50ID0gZWxlbWVudC0+aGFzVGFn
TmFtZSh0YWJsZVRhZykgfHwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaApp
bmRleCAwYjQ0ZmZhYjY4OTFmMWRhOGQzMjFkNmYxOTVjMWE2ODE0NGY2MWI4Li40NjBmNTZlY2E5
NzVmZDIwODZjNjdhOTk4MjRiMzczYzQ4Y2JiZjc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlck9iamVjdC5oCkBAIC00MDAsNiArNDAwLDExIEBAIHB1YmxpYzoKICAgICBib29sIGlz
RmxvYXRpbmcoKSBjb25zdCB7IHJldHVybiBtX2Zsb2F0aW5nOyB9CiAgICAgYm9vbCBpc1Bvc2l0
aW9uZWQoKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uZWQ7IH0gLy8gYWJzb2x1dGUgb3IgZml4
ZWQgcG9zaXRpb25pbmcKICAgICBib29sIGlzUmVsUG9zaXRpb25lZCgpIGNvbnN0IHsgcmV0dXJu
IG1fcmVsUG9zaXRpb25lZDsgfSAvLyByZWxhdGl2ZSBwb3NpdGlvbmluZworCisgICAgLy8gV2Vi
S2l0IG92ZXJ3cml0ZXMgdGhlIHBvc2l0aW9uOnJlbGF0aXZlIHN0eWxlIGZvciBjZXJ0YWluIGVs
ZW1lbnRzIGZvciB3aGljaCBzdWNoIHBvc2l0aW9uaW5nIGlzIGlsbGVnYWwgb3IgYmVoYXZpb3Ig
aXMgdW5kZWZpbmVkLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFsdWUgc3Bl
Y2lmaWVkIGluIHRoZSBzb3VyY2UsIGV2ZW4gaWYgaXQgd2FzIGNvcnJlY3RlZCBieSBXZWJLaXQu
CisgICAgYm9vbCB3YXNPcmlnaW5hbGx5UmVsYXRpdmVQb3NpdGlvbmVkKCkgY29uc3Q7CisKICAg
ICBib29sIGlzVGV4dCgpIGNvbnN0ICB7IHJldHVybiBtX2lzVGV4dDsgfQogICAgIGJvb2wgaXNC
b3goKSBjb25zdCB7IHJldHVybiBtX2lzQm94OyB9CiAgICAgYm9vbCBpc0lubGluZSgpIGNvbnN0
IHsgcmV0dXJuIG1faW5saW5lOyB9ICAvLyBpbmxpbmUgb2JqZWN0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IDZmYmYwY2U4ZjNiMzE1OWZhYjI4
YWExMGVjZWQzMjk2NTg4MmVjNDYuLmEyYWM5MWQ0MmU2YzYzNDIwMmE4ZDYyNDQyNzRiNWU1MmI3
YzczNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
CkBAIC01OTksNiArNTk5LDggQEAgcHVibGljOgogICAgIHNob3J0IGNvdW50ZXJJbmNyZW1lbnQo
KSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9jb3VudGVySW5jcmVtZW50
OyB9CiAgICAgc2hvcnQgY291bnRlclJlc2V0KCkgY29uc3QgeyByZXR1cm4gcmFyZU5vbkluaGVy
aXRlZERhdGEtPm1fY291bnRlclJlc2V0OyB9CiAKKyAgICBib29sIHBvc2l0aW9uV2FzUmVsYXRp
dmUoKSBjb25zdCB7IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9wb3NpdGlvbldhc1Jl
bGF0aXZlOyB9CisKICAgICBFTGlzdFN0eWxlVHlwZSBsaXN0U3R5bGVUeXBlKCkgY29uc3QgeyBy
ZXR1cm4gc3RhdGljX2Nhc3Q8RUxpc3RTdHlsZVR5cGU+KGluaGVyaXRlZF9mbGFncy5fbGlzdF9z
dHlsZV90eXBlKTsgfQogICAgIFN0eWxlSW1hZ2UqIGxpc3RTdHlsZUltYWdlKCkgY29uc3QgeyBy
ZXR1cm4gaW5oZXJpdGVkLT5saXN0X3N0eWxlX2ltYWdlLmdldCgpOyB9CiAgICAgRUxpc3RTdHls
ZVBvc2l0aW9uIGxpc3RTdHlsZVBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8
RUxpc3RTdHlsZVBvc2l0aW9uPihpbmhlcml0ZWRfZmxhZ3MuX2xpc3Rfc3R5bGVfcG9zaXRpb24p
OyB9CkBAIC05NzEsNiArOTczLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q291bnRlckluY3Jl
bWVudChzaG9ydCB2KSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1fY291bnRlcklu
Y3JlbWVudCwgdikgfQogICAgIHZvaWQgc2V0Q291bnRlclJlc2V0KHNob3J0IHYpIHsgU0VUX1ZB
UihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9jb3VudGVyUmVzZXQsIHYpIH0KIAorICAgIHZvaWQg
c2V0UG9zaXRpb25XYXNSZWxhdGl2ZShib29sIHYpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVk
RGF0YSwgbV9wb3NpdGlvbldhc1JlbGF0aXZlLCB2KSB9CisKICAgICB2b2lkIHNldExpc3RTdHls
ZVR5cGUoRUxpc3RTdHlsZVR5cGUgdikgeyBpbmhlcml0ZWRfZmxhZ3MuX2xpc3Rfc3R5bGVfdHlw
ZSA9IHY7IH0KICAgICB2b2lkIHNldExpc3RTdHlsZUltYWdlKFBhc3NSZWZQdHI8U3R5bGVJbWFn
ZT4gdikgeyBpZiAoaW5oZXJpdGVkLT5saXN0X3N0eWxlX2ltYWdlICE9IHYpIGluaGVyaXRlZC5h
Y2Nlc3MoKS0+bGlzdF9zdHlsZV9pbWFnZSA9IHY7IH0KICAgICB2b2lkIHNldExpc3RTdHlsZVBv
c2l0aW9uKEVMaXN0U3R5bGVQb3NpdGlvbiB2KSB7IGluaGVyaXRlZF9mbGFncy5fbGlzdF9zdHls
ZV9wb3NpdGlvbiA9IHY7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAppbmRleCAzNzcxZjEzODk5
YjBiMjJhODE3MDUxMTQ1OWQ5MDQ3NmNjZGFmY2ZlLi41ZDcxMDU2ZjI2YTgzNWJmM2FjYzViYmI5
YmE0OGQ4NjE4MTRiZWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCkBAIC00Niw2ICs0Niw3
IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEo
KQogICAgICwgbV90ZXh0Q29tYmluZShSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRDb21iaW5lKCkp
CiAgICAgLCBtX2NvdW50ZXJJbmNyZW1lbnQoMCkKICAgICAsIG1fY291bnRlclJlc2V0KDApCisg
ICAgLCBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUoMCkKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9T
SVRJTkcpCiAgICAgLCBtX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbihmYWxzZSkKICNlbmRp
ZgpAQCAtODMsNiArODQsNyBAQCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVO
b25Jbmhlcml0ZWREYXRhKGNvbnN0IFN0eWxlUmFyZU5vbkluaGVyaXRlZAogICAgICwgbV90ZXh0
Q29tYmluZShvLm1fdGV4dENvbWJpbmUpCiAgICAgLCBtX2NvdW50ZXJJbmNyZW1lbnQoby5tX2Nv
dW50ZXJJbmNyZW1lbnQpCiAgICAgLCBtX2NvdW50ZXJSZXNldChvLm1fY291bnRlclJlc2V0KQor
ICAgICwgbV9wb3NpdGlvbldhc1JlbGF0aXZlKG8ubV9wb3NpdGlvbldhc1JlbGF0aXZlKQogI2lm
IFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICAsIG1fcnVubmluZ0FjY2VsZXJhdGVk
QW5pbWF0aW9uKG8ubV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24pCiAjZW5kaWYKQEAgLTEy
OSw2ICsxMzEsNyBAQCBib29sIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0o
Y29uc3QgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSYgbykgYwogICAgICAgICAmJiBtX3RleHRD
b21iaW5lID09IG8ubV90ZXh0Q29tYmluZQogICAgICAgICAmJiBtX2NvdW50ZXJJbmNyZW1lbnQg
PT0gby5tX2NvdW50ZXJJbmNyZW1lbnQKICAgICAgICAgJiYgbV9jb3VudGVyUmVzZXQgPT0gby5t
X2NvdW50ZXJSZXNldAorICAgICAgICAmJiBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUgPT0gby5tX3Bv
c2l0aW9uV2FzUmVsYXRpdmUKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAg
ICAgICYmICFtX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbiAmJiAhby5tX3J1bm5pbmdBY2Nl
bGVyYXRlZEFuaW1hdGlvbgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCA4OTQzN2Y2
OGU2ZDg0NGJkNDE0ODAyNzI1NWM3MGVmNTQ1ZDA2Njk2Li4xNDkzOThhNTU2Y2E3NzdmODE3N2Rj
MTdmMDRjZGVlNmY5Y2Q2NDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKQEAgLTEwOCw2ICsxMDgs
OSBAQCBwdWJsaWM6CiAgICAgc2hvcnQgbV9jb3VudGVySW5jcmVtZW50OwogICAgIHNob3J0IG1f
Y291bnRlclJlc2V0OwogICAgIAorICAgIC8vIFRoaXMgZmxhZyBwcmVzZXJ2ZXMgdGhlIGZhY3Qg
dGhhdCB0aGUgcG9zaXRpb24gYXR0cmlidXRlIHdhcyBvcmlnaW5hbGx5IHNwZWNpZmllZCBhcyBy
ZWxhdGl2ZS4KKyAgICB1bnNpZ25lZCBtX3Bvc2l0aW9uV2FzUmVsYXRpdmUgOiAxOworCiAjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogICAgIGJvb2wgbV9ydW5uaW5nQWNjZWxlcmF0
ZWRBbmltYXRpb24gOiAxOwogI2VuZGlmCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>