<?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>26328</bug_id>
          
          <creation_ts>2009-06-11 11:20:44 -0700</creation_ts>
          <short_desc>Changing href attribute of svg images does not work when changing display attribute as well</short_desc>
          <delta_ts>2009-06-24 23:30:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://rapidrabb.it/files/svg-image-bug.xhtml</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Volker Gersabeck">volker.gersabeck</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>125351</commentid>
    <comment_count>0</comment_count>
    <who name="Volker Gersabeck">volker.gersabeck</who>
    <bug_when>2009-06-11 11:20:44 -0700</bug_when>
    <thetext>please try the sample page: https://rapidrabb.it/files/svg-image-bug.xhtml

description:
I have an svg image tag with an empty xlink:href attribute and the broken image icon is shown. then i use JavaScript to set the display attribute and the xlink:href at the same time in three functions as follows:
- set a real image url and display to inherit.
- set an empty image url and display to none.
- remove the xlink:href attribute and set display to none.
Either the image should be shown (first case) or nothing should be visible. However, in some cases the broken image icon reappears.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125353</commentid>
    <comment_count>1</comment_count>
      <attachid>31168</attachid>
    <who name="Volker Gersabeck">volker.gersabeck</who>
    <bug_when>2009-06-11 11:22:04 -0700</bug_when>
    <thetext>Created attachment 31168
example of the bug with short description</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125356</commentid>
    <comment_count>2</comment_count>
    <who name="Volker Gersabeck">volker.gersabeck</who>
    <bug_when>2009-06-11 11:23:42 -0700</bug_when>
    <thetext>forgot to mention: this bug seems to be new since Safari 4 Beta.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125659</commentid>
    <comment_count>3</comment_count>
      <attachid>31244</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2009-06-13 12:43:27 -0700</bug_when>
    <thetext>Created attachment 31244
First attempt

This fixes the bug :) I tried to emulate the two problems in two separate testcases.
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125660</commentid>
    <comment_count>4</comment_count>
      <attachid>31244</attachid>
    <who name="">mitz</who>
    <bug_when>2009-06-13 12:52:33 -0700</bug_when>
    <thetext>Comment on attachment 31244
First attempt

&gt; +        * svg/SVGElement.cpp:
&gt; +        (WebCore::SVGElement::setXmlbase):

I don’t see SVGElement.cpp diffs in the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125756</commentid>
    <comment_count>5</comment_count>
      <attachid>31244</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-06-14 02:23:30 -0700</bug_when>
    <thetext>Comment on attachment 31244
First attempt

SVGLoad events would be a better solution than using timeouts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125760</commentid>
    <comment_count>6</comment_count>
      <attachid>31257</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2009-06-14 04:48:15 -0700</bug_when>
    <thetext>Created attachment 31257
Fixed testcases

I think Eric meant this with using SVGLoad. Also removed setXmlBase stuff.
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126850</commentid>
    <comment_count>7</comment_count>
      <attachid>31257</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-06-18 18:18:33 -0700</bug_when>
    <thetext>Comment on attachment 31257
Fixed testcases

I don&apos;t understand this clause:
 95     if (isURIAttribute)
 96         m_imageLoader.updateFromElementIgnoringPreviousError();
 97     else if (!renderer())
 98         return;

Why only return when ! isURIAttribute &amp;&amp; !renderer()?  That seems wrong, given all the other code below.

How does HTML handle this case?  This patch doesn&apos;t seem right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127152</commentid>
    <comment_count>8</comment_count>
      <attachid>31598</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2009-06-20 12:44:58 -0700</bug_when>
    <thetext>Created attachment 31598
Different approach

I think this approach is clearer, the image loading is part of the general attribute change notification and
does not depend on the renderer being there. If any svg attribute changes still a setNeedsLayout is called, when there is a renderer. HTMLImageElement also loads image on src changes in parseMappedAttribute.
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127299</commentid>
    <comment_count>9</comment_count>
      <attachid>31598</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-06-22 00:00:44 -0700</bug_when>
    <thetext>Comment on attachment 31598
Different approach

Does this still work if you set href.baseVal.value= &quot;newurl.png&quot;?

You&apos;re removing the m_imageLoader.updateFromElementIgnoringPreviousError(); update from svgAttributeChanged, which makes me think that this will break updates which are driven by JavaScript property changes.

Yes, it sucks that JS doesn&apos;t just call parseMappedAttribute.  Eventually we need to fix that.

I think this broke href.baseVal, so r-</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127424</commentid>
    <comment_count>10</comment_count>
      <attachid>31666</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2009-06-22 12:34:23 -0700</bug_when>
    <thetext>Created attachment 31666
Back to fixing SVGImageElement::svgAttributeChanged

These changes were made:

- I went back to the original fix. Since svgAttributeChanged is there for SVG and parseMappedAttribute is not called for the JS bindings, I tried to fix up SVGImageElement::svgAttributeChanged. Basically the xlink:href handling is singled out first and done independent of renderer() being there or not. The rest is as before, I hope the code is more readable than in the first patch. I guess in the long run svgAttributeChanged should go (is there a bug for that?).
- I added a test for the href.baseValue setting alternative, which does not end up in parseMappedAttribute.
- I updated the ChangeLogs because it also fixes bug 26392.
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127843</commentid>
    <comment_count>11</comment_count>
      <attachid>31666</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-06-24 00:39:06 -0700</bug_when>
    <thetext>Comment on attachment 31666
Back to fixing SVGImageElement::svgAttributeChanged

Looks OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128100</commentid>
    <comment_count>12</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2009-06-24 23:30:41 -0700</bug_when>
    <thetext>Landed in r45095.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>31168</attachid>
            <date>2009-06-11 11:22:04 -0700</date>
            <delta_ts>2009-06-11 11:22:04 -0700</delta_ts>
            <desc>example of the bug with short description</desc>
            <filename>svg-image-bug.xhtml</filename>
            <type>application/xhtml+xml</type>
            <size>2071</size>
            <attacher name="Volker Gersabeck">volker.gersabeck</attacher>
            
              <data encoding="base64">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+CjwhRE9DVFlQRSBodG1sIFBV
QkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4xIHBsdXMgU1ZHIDEuMS8vRU4iCiAgImh0dHA6Ly93
d3cudzMub3JnLzIwMDIvMDQveGh0bWwtbWF0aC1zdmcveGh0bWwtbWF0aC1zdmcuZHRkIj4KCjxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KPGhlYWQ+CjxtZXRhIGh0
dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04
IiAvPgoKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwhW0NEQVRBWwpmdW5jdGlvbiBz
ZXRJbWFnZSgpIHsKCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYWdlQmFja2dyb3VuZEltYWdl
Iikuc2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIs
ICJodHRwOi8vd3d3Lmdvb2dsZS5kZS9pbnRsL2RlX2RlL2ltYWdlcy9sb2dvLmdpZiIpOwoJZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhZ2VCYWNrZ3JvdW5kSW1hZ2UiKS5zZXRBdHRyaWJ1dGUo
ImRpc3BsYXkiLCAiaW5oZXJpdCIpOwp9CmZ1bmN0aW9uIHJlbW92ZUltYWdlKCkgewoJZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInBhZ2VCYWNrZ3JvdW5kSW1hZ2UiKS5yZW1vdmVBdHRyaWJ1dGVO
UygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJocmVmIik7Cglkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicGFnZUJhY2tncm91bmRJbWFnZSIpLnNldEF0dHJpYnV0ZSgiZGlzcGxheSIs
ICJub25lIik7Cn0KZnVuY3Rpb24gdW5zZXRJbWFnZSgpIHsKCWRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwYWdlQmFja2dyb3VuZEltYWdlIikuc2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICIiKTsKCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJw
YWdlQmFja2dyb3VuZEltYWdlIikuc2V0QXR0cmlidXRlKCJkaXNwbGF5IiwgIm5vbmUiKTsKfQpd
XT48L3NjcmlwdD4KPC9oZWFkPgo8Ym9keT4KPGRpdj4KR29hbDogbmV2ZXIgc2VlIHRoZSBibHVl
IHF1ZXN0aW9uIG1hcmsgaW5kaWNhdGluZyBhbiBpbWFnZSBjb3VsZCBub3QgYmUgZm91bmQuIChl
eGNlcHRpb246IGluaXRpYWwgc3RhdGUgb2YgdGhlIHBhZ2UpPGJyLz4KUHJvYmxlbTE6IHdoZW4g
Y2xpY2tpbmcgJ3NldCcgdGhlbiAndW5zZXQnIHRoZW4gYWdhaW4gJ3NldCcgdGhlIHF1ZXN0aW9u
IG1hcmsgYXBwZWFycy48YnIvPgpTb2x1dGlvbjE6IGNsaWNraW5nICdzZXQnIHR3aWNlIGFsd2F5
cyB3b3Jrcy4gPGJyLz4KUHJvYmxlbSAyOiB3aGVuIGNsaWNraW5nICdyZW1vdmUnIGFuZCAnc2V0
JyByZXBlYXRlZGx5LCB0aGUgY3VycmVudCBzdGF0ZSBpcyBwcmVzZXJ2ZWQ6IGlmIHRoZSBpbWFn
ZSB3YXMgc2hvd24gYXQgZmlyc3QsIGFmdGVyIGNsaWNraW5nICdyZW1vdmUnIGFuZCAnc2V0JyBp
dCB3aWxsIGJlIHNob3duLiBJZiB0aGUgcXVlc3Rpb24gbWFyayB3YXMgdmlzaWJsZSwgdGhlIHF1
ZXN0aW9uIG1hcmsgd2lsbCBhcHBlYXIuPGJyLz4KU29sdXRpb24gMjogYWdhaW4sIGNsaWNrIHR3
aWNlICdzZXQnLjxici8+CjxpbnB1dCB0eXBlPSJidXR0b24iIG9uY2xpY2s9InNldEltYWdlKCki
IHZhbHVlPSJzZXQiIC8+CjxpbnB1dCB0eXBlPSJidXR0b24iIG9uY2xpY2s9InVuc2V0SW1hZ2Uo
KSIgdmFsdWU9InVuc2V0IiAvPgo8aW5wdXQgdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJyZW1vdmVJ
bWFnZSgpIiB2YWx1ZT0icmVtb3ZlIiAvPgo8L2Rpdj4KCjxzdmcgdmVyc2lvbj0iMS4xIgogICAg
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgICB4bWxuczp4bGluaz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKCSBpZD0iZHJhd2luZ0FyZWEtbGF5ZXJzIiB3aWR0
aD0iODQwIiBoZWlnaHQ9IjQwMCIgPgoJCTxpbWFnZSBpZD0icGFnZUJhY2tncm91bmRJbWFnZSIg
eD0iMCIgeT0iMCIgd2lkdGg9IjgwMCIgaGVpZ2h0PSI0MDAiIHhsaW5rOmhyZWY9IiIgLz4KPC9z
dmc+CjwvYm9keT4KPC9odG1sPg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31244</attachid>
            <date>2009-06-13 12:43:27 -0700</date>
            <delta_ts>2009-06-14 04:48:15 -0700</delta_ts>
            <desc>First attempt</desc>
            <filename>26328.diff</filename>
            <type>text/plain</type>
            <size>8738</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3NGQyOGRhLi44NmVjNDBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0yLDYgKzIsMjMgQEAKIAogICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAorICAgICAgICBUZXN0cyBmb3I6CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjMyOAorICAgICAg
ICBCdWcgMjYzMjg6IGNoYW5naW5nIGhyZWYgYXR0cmlidXRlIG9mIHN2ZyBpbWFnZXMgZG93cyBu
b3Qgd29yayB3aGVuIGNoYW5naW5nIGRpc3BsYXkgYXR0cmlidXRlIGFzIHdlbGwKKworICAgICAg
ICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1l
eHBlY3RlZC5jaGVja3N1bTogQWRkZWQKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQucG5nOiBBZGRlZAorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1l
eHBlY3RlZC50eHQ6IEFkZGVkCisgICAgICAgICogc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2Ut
YW5kLWRpc3BsYXkuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZAor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlz
cGxheTItZXhwZWN0ZWQucG5nOiBBZGRlZAorICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQudHh0OiBBZGRlZAorICAg
ICAgICAqIHN2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi5zdmc6IEFkZGVk
LgorCisyMDA5LTA2LTEzICBSb2IgQnVpcyAgPHJ3bGJ1aXNAZ21haWwuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCiAgICAgICAgIFRlc3QgZm9yOgogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzODQKICAgICAgICAg
QnVnIDIyMzg0OiBzdmcgPHRleHQ+IGZhaWxzIHRvIHVwZGF0ZSB3aGVuIHNldHRpbmcgeC95CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUt
aW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQuY2hl
Y2tzdW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE1M2M4MQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0
ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5jaGVja3N1bQpAQCAtMCwwICsxIEBACitjMDkx
ZTg1ZmNlMmMwNmRiZmQ0MzU5ZDUxYzEyYzFjZgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0
ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQucG5nCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5MDVlZjYKQmluYXJ5IGZpbGVzIC9k
ZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRh
dGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQucG5nIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNw
bGF5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pz
LXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uNGM5NmRlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAg
UmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAw
eDYwMAorICBSZW5kZXJTVkdSb290IHtzdmd9IGF0ICgwLDApIHNpemUgNzV4NzUKKyAgICBSZW5k
ZXJTVkdJbWFnZSB7aW1hZ2V9IGF0ICgwLDApIHNpemUgNzV4NzUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxh
eTItZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhNTNjODEKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRp
c3BsYXkyLWV4cGVjdGVkLmNoZWNrc3VtCkBAIC0wLDAgKzEgQEAKK2MwOTFlODVmY2UyYzA2ZGJm
ZDQzNTlkNTFjMTJjMWNmClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1k
aXNwbGF5Mi1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi5iOTA1ZWY2CkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5k
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFu
ZC1kaXNwbGF5Mi1leHBlY3RlZC5wbmcgZGlmZmVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1p
bWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjRjOTZkZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDUgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJW
aWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisg
IFJlbmRlclNWR1Jvb3Qge3N2Z30gYXQgKDAsMCkgc2l6ZSA3NXg3NQorICAgIFJlbmRlclNWR0lt
YWdlIHtpbWFnZX0gYXQgKDAsMCkgc2l6ZSA3NXg3NQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkuc3ZnIGIvTGF5b3V0VGVzdHMv
c3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkuc3ZnCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhiMDc5MWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcKQEAgLTAsMCAr
MSwzMCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsi
PgorPGltYWdlIGlkPSJpbWFnZSIgeGxpbms6aHJlZj0iIiB3aWR0aD0iNzUiIGhlaWdodD0iNzUi
IC8+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKK2Z1bmN0aW9uIHNldDEoKSB7Cisg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikuc2V0QXR0cmlidXRlTlMoImh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICJyZXNvdXJjZXMvZ3JlZW4tY2hlY2tl
ci5wbmciKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1
dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIpOworICAgIHNldFRpbWVvdXQodW5zZXQsIDApOworfQor
CitmdW5jdGlvbiB1bnNldCgpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2Ui
KS5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJocmVmIiwg
IiIpOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZSgi
ZGlzcGxheSIsICJub25lIik7CisgICAgc2V0VGltZW91dChzZXQyLCAwKTsKK30KKworZnVuY3Rp
b24gc2V0MigpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRy
aWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJocmVmIiwgInJlc291cmNl
cy9ncmVlbi1jaGVja2VyLnBuZyIpOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFn
ZSIpLnNldEF0dHJpYnV0ZSgiZGlzcGxheSIsICJpbmhlcml0Iik7CisKKyAgICBpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3Rp
ZnlEb25lKCk7Cit9CisKK3NldFRpbWVvdXQoc2V0MSwgMCk7Cis8L3NjcmlwdD4KKzwvc3ZnPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRp
c3BsYXkyLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1k
aXNwbGF5Mi5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzUxY2JmZgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdl
LWFuZC1kaXNwbGF5Mi5zdmcKQEAgLTAsMCArMSwyNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+
Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgorPGltYWdlIGlkPSJpbWFnZSIgeGxpbms6aHJl
Zj0iIiB3aWR0aD0iNzUiIGhlaWdodD0iNzUiIC8+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25l
KCk7CisKK2Z1bmN0aW9uIHJlbW92ZSgpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
aW1hZ2UiKS5yZW1vdmVBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIs
ICJocmVmIiwgIiIpOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0
dHJpYnV0ZSgiZGlzcGxheSIsICJub25lIik7CisgICAgc2V0VGltZW91dChzZXQsIDApOworfQor
CitmdW5jdGlvbiBzZXQoKSB7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIiku
c2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICJy
ZXNvdXJjZXMvZ3JlZW4tY2hlY2tlci5wbmciKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIpOworCisgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOworfQorCitzZXRUaW1lb3V0KHJlbW92ZSwgMCk7Cis8L3NjcmlwdD4K
Kzwvc3ZnPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxv
ZwppbmRleCBiYTdmYmM3Li44MTk3M2M5IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZwor
KysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMiw2ICsyLDIzIEBACiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI2MzI4CisgICAgICAgIEJ1ZyAyNjMyODogY2hhbmdpbmcgaHJlZiBh
dHRyaWJ1dGUgb2Ygc3ZnIGltYWdlcyBkb3dzIG5vdCB3b3JrIHdoZW4gY2hhbmdpbmcgZGlzcGxh
eSBhdHRyaWJ1dGUgYXMgd2VsbAorCisgICAgICAgIFJlYWN0IHRvIGhyZWYgdXBkYXRlcyBldmVu
IHdoZW4gdGhlcmUgaXMgbm8gcmVuZGVyZXIsIGkuZS4gZGlzcGxheT1ub25lLgorCisgICAgICAg
IFRlc3RzOiBzdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcKKyAgICAg
ICAgICAgICAgIHN2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi5zdmcKKwor
ICAgICAgICAqIHN2Zy9TVkdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0VsZW1l
bnQ6OnNldFhtbGJhc2UpOgorICAgICAgICAqIHN2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHSW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKwor
MjAwOS0wNi0xMyAgUm9iIEJ1aXMgIDxyd2xidWlzQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwogICAgICAgICBNYWtlIFNWR0xhbmdTcGFjZSBpbnRl
cmZhY2UgdXNlIGdldEF0dHJpYnV0ZSBpbnN0ZWFkIG9mIHN0b3JpbmcgYSBkdXBsaWNhdGVkIHZh
bHVlIGZvciBlYWNoIFNWRyBlbGVtZW50LgogCiAgICAgICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FT
RVMgQURERUQgT1IgQ0hBTkdFRApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVt
ZW50LmNwcCBiL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5jcHAKaW5kZXggNjZlODcwNy4u
YmM2N2FlZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcAorKysg
Yi9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCkBAIC0xLDYgKzEsNiBAQAogLyoKICAg
ICBDb3B5cmlnaHQgKEMpIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDggTmlrb2xhcyBaaW1tZXJtYW5u
IDx6aW1tZXJtYW5uQGtkZS5vcmc+Ci0gICAgICAgICAgICAgICAgICAyMDA0LCAyMDA1LCAyMDA2
LCAyMDA3LCAyMDA4IFJvYiBCdWlzIDxidWlzQGtkZS5vcmc+CisgICAgICAgICAgICAgICAgICAy
MDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5IFJvYiBCdWlzIDxidWlzQGtkZS5vcmc+
CiAgICAgICAgICAgICAgICAgICAyMDA2IEFsZXhhbmRlciBLZWxsZXR0IDxseXBhbm92QGtkZS5v
cmc+CiAKICAgICBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgS0RFIHByb2plY3QKQEAgLTkxLDEw
ICs5MSwxMSBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChjb25z
dCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKIHsKICAgICBTVkdTdHlsZWRUcmFuc2Zvcm1hYmxl
RWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChhdHRyTmFtZSk7CiAKLSAgICBpZiAoIXJlbmRl
cmVyKCkpCi0gICAgICAgIHJldHVybjsKLQogICAgIGJvb2wgaXNVUklBdHRyaWJ1dGUgPSBTVkdV
UklSZWZlcmVuY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpOworICAgIGlmIChpc1VSSUF0
dHJpYnV0ZSkKKyAgICAgICAgbV9pbWFnZUxvYWRlci51cGRhdGVGcm9tRWxlbWVudElnbm9yaW5n
UHJldmlvdXNFcnJvcigpOworICAgIGVsc2UgaWYgKCFyZW5kZXJlcigpKQorICAgICAgICByZXR1
cm47CiAKICAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09
IFNWR05hbWVzOjp5QXR0ciB8fAogICAgICAgICBhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhB
dHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyIHx8CkBAIC0xMDQsMTAgKzEw
NSw4IEBAIHZvaWQgU1ZHSW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1
YWxpZmllZE5hbWUmIGF0dHJOYW1lKQogICAgICAgICBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVp
cmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAogICAgICAgICBpc1VSSUF0dHJpYnV0
ZSB8fAogICAgICAgICBTVkdTdHlsZWRUcmFuc2Zvcm1hYmxlRWxlbWVudDo6aXNLbm93bkF0dHJp
YnV0ZShhdHRyTmFtZSkpIHsKLSAgICAgICAgcmVuZGVyZXIoKS0+c2V0TmVlZHNMYXlvdXQodHJ1
ZSk7Ci0KLSAgICAgICAgaWYgKGlzVVJJQXR0cmlidXRlKQotICAgICAgICAgICAgbV9pbWFnZUxv
YWRlci51cGRhdGVGcm9tRWxlbWVudElnbm9yaW5nUHJldmlvdXNFcnJvcigpOworICAgICAgICBp
ZiAocmVuZGVyZXIoKSkKKyAgICAgICAgICAgIHJlbmRlcmVyKCktPnNldE5lZWRzTGF5b3V0KHRy
dWUpOwogICAgIH0KIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31257</attachid>
            <date>2009-06-14 04:48:15 -0700</date>
            <delta_ts>2009-06-20 12:44:58 -0700</delta_ts>
            <desc>Fixed testcases</desc>
            <filename>26328-2.diff</filename>
            <type>text/plain</type>
            <size>8574</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzYjA1ZmQ0Li4yNzViMzFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xOSw2ICsxOSwyMyBAQAogCiAgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgogCisgICAgICAgIFRlc3RzIGZvcjoKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2MzI4CisgICAg
ICAgIEJ1ZyAyNjMyODogY2hhbmdpbmcgaHJlZiBhdHRyaWJ1dGUgb2Ygc3ZnIGltYWdlcyBkb3dz
IG5vdCB3b3JrIHdoZW4gY2hhbmdpbmcgZGlzcGxheSBhdHRyaWJ1dGUgYXMgd2VsbAorCisgICAg
ICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5
LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZAorICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5wbmc6IEFkZGVkCisgICAg
ICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5
LWV4cGVjdGVkLnR4dDogQWRkZWQKKyAgICAgICAgKiBzdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFn
ZS1hbmQtZGlzcGxheS5zdmc6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVk
CisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1k
aXNwbGF5Mi1leHBlY3RlZC5wbmc6IEFkZGVkCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9j
dXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC50eHQ6IEFkZGVkCisg
ICAgICAgICogc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLnN2ZzogQWRk
ZWQuCisKKzIwMDktMDYtMTMgIFJvYiBCdWlzICA8cndsYnVpc0BnbWFpbC5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAgVGVzdCBmb3I6CiAgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM4NAogICAgICAg
ICBCdWcgMjIzODQ6IHN2ZyA8dGV4dD4gZmFpbHMgdG8gdXBkYXRlIHdoZW4gc2V0dGluZyB4L3kK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0
ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5j
aGVja3N1bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTUzYzgxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBk
YXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLmNoZWNrc3VtCkBAIC0wLDAgKzEgQEAKK2Mw
OTFlODVmY2UyYzA2ZGJmZDQzNTlkNTFjMTJjMWNmClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBk
YXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5wbmcK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjkwNWVmNgpCaW5hcnkgZmlsZXMg
L2Rldi9udWxsIGFuZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVw
ZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5wbmcgZGlmZmVyCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRp
c3BsYXktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20v
anMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi40Yzk2ZGU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAor
ICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4
MDB4NjAwCisgIFJlbmRlclNWR1Jvb3Qge3N2Z30gYXQgKDAsMCkgc2l6ZSA3NXg3NQorICAgIFJl
bmRlclNWR0ltYWdlIHtpbWFnZX0gYXQgKDAsMCkgc2l6ZSA3NXg3NQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNw
bGF5Mi1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQuY2hlY2tzdW0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE1M2M4MQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQt
ZGlzcGxheTItZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorYzA5MWU4NWZjZTJjMDZk
YmZkNDM1OWQ1MWMxMmMxY2YKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5k
LWRpc3BsYXkyLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQucG5nCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5MDVlZjYKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBh
bmQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2Ut
YW5kLWRpc3BsYXkyLWV4cGVjdGVkLnBuZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRl
LWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uNGM5NmRlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNSBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRl
clZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAK
KyAgUmVuZGVyU1ZHUm9vdCB7c3ZnfSBhdCAoMCwwKSBzaXplIDc1eDc1CisgICAgUmVuZGVyU1ZH
SW1hZ2Uge2ltYWdlfSBhdCAoMCwwKSBzaXplIDc1eDc1CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcgYi9MYXlvdXRUZXN0
cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODMxOGI4YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LnN2ZwpAQCAtMCww
ICsxLDI2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlu
ayIgb25sb2FkPSJ0ZXN0KCkiPgorPGltYWdlIGlkPSJpbWFnZSIgeGxpbms6aHJlZj0iIiB3aWR0
aD0iNzUiIGhlaWdodD0iNzUiIC8+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisKK2Z1
bmN0aW9uIHRlc3QoKSB7CisgICAgLy8gc2V0CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImltYWdlIikuc2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAi
aHJlZiIsICJyZXNvdXJjZXMvZ3JlZW4tY2hlY2tlci5wbmciKTsKKyAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIpOwor
CisgICAgLy8gdW5zZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRB
dHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJocmVmIiwgIiIpOwor
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZSgiZGlzcGxh
eSIsICJub25lIik7CisKKyAgICAvLyBzZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
aW1hZ2UiKS5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJo
cmVmIiwgInJlc291cmNlcy9ncmVlbi1jaGVja2VyLnBuZyIpOworICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZSgiZGlzcGxheSIsICJpbmhlcml0Iik7CisK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKKzwvc2NyaXB0PgorPC9zdmc+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTIu
c3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXky
LnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTg5MTUwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRp
c3BsYXkyLnN2ZwpAQCAtMCwwICsxLDIyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzxzdmcg
eG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3
dy53My5vcmcvMTk5OS94bGluayIgb25sb2FkPSJ0ZXN0KCkiPgorPGltYWdlIGlkPSJpbWFnZSIg
eGxpbms6aHJlZj0iIiB3aWR0aD0iNzUiIGhlaWdodD0iNzUiIC8+Cis8c2NyaXB0PgoraWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0
VW50aWxEb25lKCk7CisKK2Z1bmN0aW9uIHRlc3QoKSB7CisgICAgLy8gcmVtb3ZlCisgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikucmVtb3ZlQXR0cmlidXRlTlMoImh0dHA6Ly93
d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICIiKTsKKyAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAibm9uZSIpOworCisgICAg
Ly8gc2V0CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikuc2V0QXR0cmlidXRl
TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICJyZXNvdXJjZXMvZ3Jl
ZW4tY2hlY2tlci5wbmciKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5z
ZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIpOworCisgICAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9u
ZSgpOworfQorCis8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxODNjYTZlLi4wYTI5OTU5IDEwMDY0NAotLS0g
YS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMzc2LDYgKzM3
NiwyMSBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgogCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjMyOAorICAgICAgICBC
dWcgMjYzMjg6IGNoYW5naW5nIGhyZWYgYXR0cmlidXRlIG9mIHN2ZyBpbWFnZXMgZG93cyBub3Qg
d29yayB3aGVuIGNoYW5naW5nIGRpc3BsYXkgYXR0cmlidXRlIGFzIHdlbGwKKworICAgICAgICBS
ZWFjdCB0byBocmVmIHVwZGF0ZXMgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIHJlbmRlcmVyLCBpLmUu
IGRpc3BsYXk9bm9uZS4KKworICAgICAgICBUZXN0czogc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1h
Z2UtYW5kLWRpc3BsYXkuc3ZnCisgICAgICAgICAgICAgICBzdmcvY3VzdG9tL2pzLXVwZGF0ZS1p
bWFnZS1hbmQtZGlzcGxheTIuc3ZnCisKKyAgICAgICAgKiBzdmcvU1ZHSW1hZ2VFbGVtZW50LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ltYWdlRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdl
ZCk6CisKKzIwMDktMDYtMTMgIFJvYiBCdWlzICA8cndsYnVpc0BnbWFpbC5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAgTWFrZSBTVkdMYW5nU3Bh
Y2UgaW50ZXJmYWNlIHVzZSBnZXRBdHRyaWJ1dGUgaW5zdGVhZCBvZiBzdG9yaW5nIGEgZHVwbGlj
YXRlZCB2YWx1ZSBmb3IgZWFjaCBTVkcgZWxlbWVudC4KIAogICAgICAgICBXQVJOSU5HOiBOTyBU
RVNUIENBU0VTIEFEREVEIE9SIENIQU5HRUQKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3ZnL1NWR0lt
YWdlRWxlbWVudC5jcHAgYi9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDY2
ZTg3MDcuLmJjNjdhZWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5j
cHAKKysrIGIvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcApAQCAtMSw2ICsxLDYgQEAK
IC8qCiAgICAgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4IE5pa29sYXMgWmlt
bWVybWFubiA8emltbWVybWFubkBrZGUub3JnPgotICAgICAgICAgICAgICAgICAgMjAwNCwgMjAw
NSwgMjAwNiwgMjAwNywgMjAwOCBSb2IgQnVpcyA8YnVpc0BrZGUub3JnPgorICAgICAgICAgICAg
ICAgICAgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSBSb2IgQnVpcyA8YnVpc0Br
ZGUub3JnPgogICAgICAgICAgICAgICAgICAgMjAwNiBBbGV4YW5kZXIgS2VsbGV0dCA8bHlwYW5v
dkBrZGUub3JnPgogCiAgICAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEtERSBwcm9qZWN0CkBA
IC05MSwxMCArOTEsMTEgQEAgdm9pZCBTVkdJbWFnZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5hbWUpCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNm
b3JtYWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYg
KCFyZW5kZXJlcigpKQotICAgICAgICByZXR1cm47Ci0KICAgICBib29sIGlzVVJJQXR0cmlidXRl
ID0gU1ZHVVJJUmVmZXJlbmNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKTsKKyAgICBpZiAo
aXNVUklBdHRyaWJ1dGUpCisgICAgICAgIG1faW1hZ2VMb2FkZXIudXBkYXRlRnJvbUVsZW1lbnRJ
Z25vcmluZ1ByZXZpb3VzRXJyb3IoKTsKKyAgICBlbHNlIGlmICghcmVuZGVyZXIoKSkKKyAgICAg
ICAgcmV0dXJuOwogCiAgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0ciB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eUF0dHIgfHwKICAgICAgICAgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OndpZHRoQXR0ciB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0ciB8fApAQCAtMTA0
LDEwICsxMDUsOCBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChj
b25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKICAgICAgICAgU1ZHRXh0ZXJuYWxSZXNvdXJj
ZXNSZXF1aXJlZDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKICAgICAgICAgaXNVUklB
dHRyaWJ1dGUgfHwKICAgICAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OmlzS25v
d25BdHRyaWJ1dGUoYXR0ck5hbWUpKSB7Ci0gICAgICAgIHJlbmRlcmVyKCktPnNldE5lZWRzTGF5
b3V0KHRydWUpOwotCi0gICAgICAgIGlmIChpc1VSSUF0dHJpYnV0ZSkKLSAgICAgICAgICAgIG1f
aW1hZ2VMb2FkZXIudXBkYXRlRnJvbUVsZW1lbnRJZ25vcmluZ1ByZXZpb3VzRXJyb3IoKTsKKyAg
ICAgICAgaWYgKHJlbmRlcmVyKCkpCisgICAgICAgICAgICByZW5kZXJlcigpLT5zZXROZWVkc0xh
eW91dCh0cnVlKTsKICAgICB9CiB9CiAK
</data>
<flag name="review"
          id="15956"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31598</attachid>
            <date>2009-06-20 12:44:58 -0700</date>
            <delta_ts>2009-06-22 12:34:23 -0700</delta_ts>
            <desc>Different approach</desc>
            <filename>26328-3.diff</filename>
            <type>text/plain</type>
            <size>8794</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyYjY3MDc5Li43ZDJlNGFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDktMDYt
MjAgIFJvYiBCdWlzICA8cndsYnVpc0BnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHMgZm9yOgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzMjgKKyAgICAgICAgQnVnIDI2MzI4OiBj
aGFuZ2luZyBocmVmIGF0dHJpYnV0ZSBvZiBzdmcgaW1hZ2VzIGRvd3Mgbm90IHdvcmsgd2hlbiBj
aGFuZ2luZyBkaXNwbGF5IGF0dHJpYnV0ZSBhcyB3ZWxsCisKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQuY2hlY2tz
dW06IEFkZGVkCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWlt
YWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnBuZzogQWRkZWQKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQudHh0OiBB
ZGRlZAorICAgICAgICAqIHN2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LnN2
ZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWlt
YWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC5jaGVja3N1bTogQWRkZWQKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVk
LnBuZzogQWRkZWQKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUt
aW1hZ2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLnR4dDogQWRkZWQKKyAgICAgICAgKiBzdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTIuc3ZnOiBBZGRlZC4KKwogMjAwOS0wNi0y
MCAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgU2tpcCBuZXcgYWNj
ZXNzaWJpbGl0eSB0ZXN0LCB3ZSBzdGlsbCBsYWNrIGFuZCBhY2Nlc3NpYmlsaXR5Q29udHJvbGxl
ci4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVw
ZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3Rl
ZC5jaGVja3N1bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTUzYzgxCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMt
dXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLmNoZWNrc3VtCkBAIC0wLDAgKzEgQEAK
K2MwOTFlODVmY2UyYzA2ZGJmZDQzNTlkNTFjMTJjMWNmClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMt
dXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5w
bmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjkwNWVmNgpCaW5hcnkgZmls
ZXMgL2Rldi9udWxsIGFuZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pz
LXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS1leHBlY3RlZC5wbmcgZGlmZmVyCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5k
LWRpc3BsYXktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0
b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi40Yzk2ZGU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYw
MAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6
ZSA4MDB4NjAwCisgIFJlbmRlclNWR1Jvb3Qge3N2Z30gYXQgKDAsMCkgc2l6ZSA3NXg3NQorICAg
IFJlbmRlclNWR0ltYWdlIHtpbWFnZX0gYXQgKDAsMCkgc2l6ZSA3NXg3NQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1k
aXNwbGF5Mi1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcv
Y3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQuY2hlY2tzdW0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE1M2M4MQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1h
bmQtZGlzcGxheTItZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorYzA5MWU4NWZjZTJj
MDZkYmZkNDM1OWQ1MWMxMmMxY2YKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2Ut
YW5kLWRpc3BsYXkyLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcv
Y3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0ZWQucG5nCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5MDVlZjYKQmluYXJ5IGZpbGVzIC9kZXYvbnVs
bCBhbmQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1h
Z2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLnBuZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBk
YXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uNGM5NmRlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTItZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJl
bmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKKyAgUmVuZGVyU1ZHUm9vdCB7c3ZnfSBhdCAoMCwwKSBzaXplIDc1eDc1CisgICAgUmVuZGVy
U1ZHSW1hZ2Uge2ltYWdlfSBhdCAoMCwwKSBzaXplIDc1eDc1CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcgYi9MYXlvdXRU
ZXN0cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODMxOGI4YwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LnN2ZwpAQCAt
MCwwICsxLDI2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzxzdmcgeG1sbnM9Imh0dHA6Ly93
d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94
bGluayIgb25sb2FkPSJ0ZXN0KCkiPgorPGltYWdlIGlkPSJpbWFnZSIgeGxpbms6aHJlZj0iIiB3
aWR0aD0iNzUiIGhlaWdodD0iNzUiIC8+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisK
K2Z1bmN0aW9uIHRlc3QoKSB7CisgICAgLy8gc2V0CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImltYWdlIikuc2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsi
LCAiaHJlZiIsICJyZXNvdXJjZXMvZ3JlZW4tY2hlY2tlci5wbmciKTsKKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIp
OworCisgICAgLy8gdW5zZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5z
ZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJocmVmIiwgIiIp
OworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZSgiZGlz
cGxheSIsICJub25lIik7CisKKyAgICAvLyBzZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIs
ICJocmVmIiwgInJlc291cmNlcy9ncmVlbi1jaGVja2VyLnBuZyIpOworICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZSgiZGlzcGxheSIsICJpbmhlcml0Iik7
CisKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKKzwvc2NyaXB0PgorPC9zdmc+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxh
eTIuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3Bs
YXkyLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTg5MTUwCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5k
LWRpc3BsYXkyLnN2ZwpAQCAtMCwwICsxLDIyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzxz
dmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDov
L3d3dy53My5vcmcvMTk5OS94bGluayIgb25sb2FkPSJ0ZXN0KCkiPgorPGltYWdlIGlkPSJpbWFn
ZSIgeGxpbms6aHJlZj0iIiB3aWR0aD0iNzUiIGhlaWdodD0iNzUiIC8+Cis8c2NyaXB0PgoraWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53
YWl0VW50aWxEb25lKCk7CisKK2Z1bmN0aW9uIHRlc3QoKSB7CisgICAgLy8gcmVtb3ZlCisgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikucmVtb3ZlQXR0cmlidXRlTlMoImh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICIiKTsKKyAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAibm9uZSIpOworCisg
ICAgLy8gc2V0CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikuc2V0QXR0cmli
dXRlTlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICJyZXNvdXJjZXMv
Z3JlZW4tY2hlY2tlci5wbmciKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2Ui
KS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIpOworCisgICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5
RG9uZSgpOworfQorCis8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFu
Z2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlYzE0MjY5Li4xMjNlYzFlIDEwMDY0NAot
LS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE5IEBACisyMDA5LTA2LTIwICBSb2IgQnVpcyAgPHJ3bGJ1aXNAZ21haWwuY29tPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjMyOAorICAgICAgICBCdWcgMjYzMjg6IGNoYW5n
aW5nIGhyZWYgYXR0cmlidXRlIG9mIHN2ZyBpbWFnZXMgZG93cyBub3Qgd29yayB3aGVuIGNoYW5n
aW5nIGRpc3BsYXkgYXR0cmlidXRlIGFzIHdlbGwKKworICAgICAgICBSZWFjdCB0byBocmVmIHVw
ZGF0ZXMgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIHJlbmRlcmVyLCBpLmUuIGRpc3BsYXk9bm9uZS4K
KworICAgICAgICBUZXN0czogc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXku
c3ZnCisgICAgICAgICAgICAgICBzdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxh
eTIuc3ZnCisKKyAgICAgICAgKiBzdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNWR0ltYWdlRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHSW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKwogMjAwOS0w
Ni0yMCAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkuCmRpZmYgLS1naXQgYS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVs
ZW1lbnQuY3BwIGIvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcAppbmRleCA5YWZmOTNk
Li5hNGFmZTkwIDEwMDY0NAotLS0gYS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCisr
KyBiL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5jcHAKQEAgLTEsNiArMSw2IEBACiAvKgog
ICAgIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwOCBOaWtvbGFzIFppbW1lcm1h
bm4gPHppbW1lcm1hbm5Aa2RlLm9yZz4KLSAgICAgICAgICAgICAgICAgIDIwMDQsIDIwMDUsIDIw
MDYsIDIwMDcsIDIwMDggUm9iIEJ1aXMgPGJ1aXNAa2RlLm9yZz4KKyAgICAgICAgICAgICAgICAg
IDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgUm9iIEJ1aXMgPGJ1aXNAa2RlLm9y
Zz4KICAgICAgICAgICAgICAgICAgIDIwMDYgQWxleGFuZGVyIEtlbGxldHQgPGx5cGFub3ZAa2Rl
Lm9yZz4KIAogICAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBLREUgcHJvamVjdApAQCAtODMs
OCArODMsMTAgQEAgdm9pZCBTVkdJbWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKE1h
cHBlZEF0dHJpYnV0ZSAqYXR0cikKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgaWYgKFNW
R0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKGF0dHIpKQog
ICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAoU1ZHVVJJUmVmZXJlbmNlOjpwYXJzZU1h
cHBlZEF0dHJpYnV0ZShhdHRyKSkKKyAgICAgICAgaWYgKFNWR1VSSVJlZmVyZW5jZTo6cGFyc2VN
YXBwZWRBdHRyaWJ1dGUoYXR0cikpIHsKKyAgICAgICAgICAgIG1faW1hZ2VMb2FkZXIudXBkYXRl
RnJvbUVsZW1lbnRJZ25vcmluZ1ByZXZpb3VzRXJyb3IoKTsKICAgICAgICAgICAgIHJldHVybjsK
KyAgICAgICAgfQogICAgICAgICBTVkdTdHlsZWRUcmFuc2Zvcm1hYmxlRWxlbWVudDo6cGFyc2VN
YXBwZWRBdHRyaWJ1dGUoYXR0cik7CiAgICAgfQogfQpAQCAtOTYsMjAgKzk4LDE1IEBAIHZvaWQg
U1ZHSW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUm
IGF0dHJOYW1lKQogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAg
Ym9vbCBpc1VSSUF0dHJpYnV0ZSA9IFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShh
dHRyTmFtZSk7Ci0KICAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJO
YW1lID09IFNWR05hbWVzOjp5QXR0ciB8fAogICAgICAgICBhdHRyTmFtZSA9PSBTVkdOYW1lczo6
d2lkdGhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyIHx8CiAgICAgICAg
IGF0dHJOYW1lID09IFNWR05hbWVzOjpwcmVzZXJ2ZUFzcGVjdFJhdGlvQXR0ciB8fAogICAgICAg
ICBTVkdUZXN0czo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKICAgICAgICAgU1ZHTGFu
Z1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAogICAgICAgICBTVkdFeHRlcm5h
bFJlc291cmNlc1JlcXVpcmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAg
ICBpc1VSSUF0dHJpYnV0ZSB8fAorICAgICAgICBTVkdVUklSZWZlcmVuY2U6OmlzS25vd25BdHRy
aWJ1dGUoYXR0ck5hbWUpIHx8CiAgICAgICAgIFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50
Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkgewogICAgICAgICByZW5kZXJlcigpLT5zZXRO
ZWVkc0xheW91dCh0cnVlKTsKLQotICAgICAgICBpZiAoaXNVUklBdHRyaWJ1dGUpCi0gICAgICAg
ICAgICBtX2ltYWdlTG9hZGVyLnVwZGF0ZUZyb21FbGVtZW50SWdub3JpbmdQcmV2aW91c0Vycm9y
KCk7CiAgICAgfQogfQogCg==
</data>
<flag name="review"
          id="16221"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31666</attachid>
            <date>2009-06-22 12:34:23 -0700</date>
            <delta_ts>2009-06-24 00:39:06 -0700</delta_ts>
            <desc>Back to fixing SVGImageElement::svgAttributeChanged</desc>
            <filename>26328-4.diff</filename>
            <type>text/plain</type>
            <size>11502</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxODkyNTEyLi40YTU0ZDNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMDktMDYt
MjEgIFJvYiBCdWlzICA8cndsYnVpc0BnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHMgZm9yOgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzOTIKKyAgICAgICAgQnVnIDI2MzkyOiBJ
biBodG1sLCBtb2RpZmljYXRpb24gb2YgeGxpbms6aHJlZiBvZiBhbiBuZXdseSBpbnNlcnRlZCBz
dmcgaW1hZ2UgZG9lcyBub3Qgd29yay4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI2MzI4CisgICAgICAgIEJ1ZyAyNjMyODogY2hhbmdpbmcgaHJlZiBh
dHRyaWJ1dGUgb2Ygc3ZnIGltYWdlcyBkb3dzIG5vdCB3b3JrIHdoZW4gY2hhbmdpbmcgZGlzcGxh
eSBhdHRyaWJ1dGUgYXMgd2VsbAorCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20v
anMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZAorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxh
eS1leHBlY3RlZC5wbmc6IEFkZGVkCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20v
anMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnR4dDogQWRkZWQKKyAgICAgICAg
KiBzdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmc6IEFkZGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxh
eTItZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9j
dXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC5wbmc6IEFkZGVkCisg
ICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNw
bGF5Mi1leHBlY3RlZC50eHQ6IEFkZGVkCisgICAgICAgICogc3ZnL2N1c3RvbS9qcy11cGRhdGUt
aW1hZ2UtYW5kLWRpc3BsYXkyLnN2ZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2
Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5My1leHBlY3RlZC5jaGVja3N1bTog
QWRkZWQKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2Ut
YW5kLWRpc3BsYXkzLWV4cGVjdGVkLnBuZzogQWRkZWQKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkzLWV4cGVjdGVkLnR4dDogQWRk
ZWQKKyAgICAgICAgKiBzdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTMuc3Zn
OiBBZGRlZC4KKwogMjAwOS0wNi0yMSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgKiBwbGF0Zm9ybS9ndGsvU2tpcHBlZDogU2tpcCBvbmUgbW9yZSB0ZXN0LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWlt
YWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLmNoZWNrc3VtIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLmNoZWNr
c3VtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhNTNjODEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUt
aW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorYzA5MWU4
NWZjZTJjMDZkYmZkNDM1OWQ1MWMxMmMxY2YKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUt
aW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnBuZwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iOTA1ZWY2CkJpbmFyeSBmaWxlcyAvZGV2
L251bGwgYW5kIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRl
LWltYWdlLWFuZC1kaXNwbGF5LWV4cGVjdGVkLnBuZyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxh
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11
cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjRjOTZkZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXktZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJl
bmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKKyAgUmVuZGVyU1ZHUm9vdCB7c3ZnfSBhdCAoMCwwKSBzaXplIDc1eDc1CisgICAgUmVuZGVy
U1ZHSW1hZ2Uge2ltYWdlfSBhdCAoMCwwKSBzaXplIDc1eDc1CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXky
LWV4cGVjdGVkLmNoZWNrc3VtIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20v
anMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC5jaGVja3N1bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTUzYzgxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNw
bGF5Mi1leHBlY3RlZC5jaGVja3N1bQpAQCAtMCwwICsxIEBACitjMDkxZTg1ZmNlMmMwNmRiZmQ0
MzU5ZDUxYzEyYzFjZgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlz
cGxheTItZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20v
anMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC5wbmcKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYjkwNWVmNgpCaW5hcnkgZmlsZXMgL2Rldi9udWxsIGFuZCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQt
ZGlzcGxheTItZXhwZWN0ZWQucG5nIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1h
Z2UtYW5kLWRpc3BsYXkyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi40Yzk2ZGU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw1IEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmll
dyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBS
ZW5kZXJTVkdSb290IHtzdmd9IGF0ICgwLDApIHNpemUgNzV4NzUKKyAgICBSZW5kZXJTVkdJbWFn
ZSB7aW1hZ2V9IGF0ICgwLDApIHNpemUgNzV4NzUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTMtZXhwZWN0
ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRh
dGUtaW1hZ2UtYW5kLWRpc3BsYXkzLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmJhNTNjODEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkzLWV4
cGVjdGVkLmNoZWNrc3VtCkBAIC0wLDAgKzEgQEAKK2MwOTFlODVmY2UyYzA2ZGJmZDQzNTlkNTFj
MTJjMWNmClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5My1l
eHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9qcy11cGRh
dGUtaW1hZ2UtYW5kLWRpc3BsYXkzLWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi5iOTA1ZWY2CkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5
My1leHBlY3RlZC5wbmcgZGlmZmVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQt
ZGlzcGxheTMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjRjOTZkZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3Zn
L2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDUgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgw
LDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclNW
R1Jvb3Qge3N2Z30gYXQgKDAsMCkgc2l6ZSA3NXg3NQorICAgIFJlbmRlclNWR0ltYWdlIHtpbWFn
ZX0gYXQgKDAsMCkgc2l6ZSA3NXg3NQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjgzMThiOGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcv
Y3VzdG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheS5zdmcKQEAgLTAsMCArMSwyNiBAQAor
PD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAw
L3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG9ubG9hZD0i
dGVzdCgpIj4KKzxpbWFnZSBpZD0iaW1hZ2UiIHhsaW5rOmhyZWY9IiIgd2lkdGg9Ijc1IiBoZWln
aHQ9Ijc1IiAvPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworCitmdW5jdGlvbiB0ZXN0
KCkgeworICAgIC8vIHNldAorICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNl
dEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwgImhyZWYiLCAicmVz
b3VyY2VzL2dyZWVuLWNoZWNrZXIucG5nIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImltYWdlIikuc2V0QXR0cmlidXRlKCJkaXNwbGF5IiwgImluaGVyaXQiKTsKKworICAgIC8vIHVu
c2V0CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikuc2V0QXR0cmlidXRlTlMo
Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICIiKTsKKyAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAibm9uZSIp
OworCisgICAgLy8gc2V0CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikuc2V0
QXR0cmlidXRlTlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCAiaHJlZiIsICJyZXNv
dXJjZXMvZ3JlZW4tY2hlY2tlci5wbmciKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
aW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIpOworCisgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
bm90aWZ5RG9uZSgpOworfQorCis8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvc3ZnL2N1c3RvbS9qcy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLnN2ZyBiL0xheW91
dFRlc3RzL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi5zdmcKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGU4OTE1MAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3N2Zy9jdXN0b20vanMtdXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5Mi5zdmcK
QEAgLTAsMCArMSwyMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8c3ZnIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGxpbmsiIG9ubG9hZD0idGVzdCgpIj4KKzxpbWFnZSBpZD0iaW1hZ2UiIHhsaW5rOmhyZWY9
IiIgd2lkdGg9Ijc1IiBoZWlnaHQ9Ijc1IiAvPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgp
OworCitmdW5jdGlvbiB0ZXN0KCkgeworICAgIC8vIHJlbW92ZQorICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJpbWFnZSIpLnJlbW92ZUF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hsaW5rIiwgImhyZWYiLCAiIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlt
YWdlIikuc2V0QXR0cmlidXRlKCJkaXNwbGF5IiwgIm5vbmUiKTsKKworICAgIC8vIHNldAorICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hsaW5rIiwgImhyZWYiLCAicmVzb3VyY2VzL2dyZWVuLWNoZWNrZXIu
cG5nIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImltYWdlIikuc2V0QXR0cmlidXRl
KCJkaXNwbGF5IiwgImluaGVyaXQiKTsKKworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKK30KKwor
PC9zY3JpcHQ+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vanMt
dXBkYXRlLWltYWdlLWFuZC1kaXNwbGF5My5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2pz
LXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTMuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmFlNzQ5MjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3Vz
dG9tL2pzLXVwZGF0ZS1pbWFnZS1hbmQtZGlzcGxheTMuc3ZnCkBAIC0wLDAgKzEsMjYgQEAKKzw/
eG1sIHZlcnNpb249IjEuMCI/PgorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBvbmxvYWQ9InRl
c3QoKSI+Cis8aW1hZ2UgaWQ9ImltYWdlIiB4bGluazpocmVmPSIiIHdpZHRoPSI3NSIgaGVpZ2h0
PSI3NSIgLz4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAg
IGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKworZnVuY3Rpb24gdGVzdCgp
IHsKKyAgICAvLyBzZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5ocmVm
LmJhc2VWYWwgPSAicmVzb3VyY2VzL2dyZWVuLWNoZWNrZXIucG5nIjsKKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3BsYXkiLCAiaW5oZXJpdCIp
OworCisgICAgLy8gdW5zZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5z
ZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsICJocmVmIiwgIiIp
OworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbWFnZSIpLnNldEF0dHJpYnV0ZSgiZGlz
cGxheSIsICJub25lIik7CisKKyAgICAvLyBzZXQKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiaW1hZ2UiKS5ocmVmLmJhc2VWYWwgPSAicmVzb3VyY2VzL2dyZWVuLWNoZWNrZXIucG5nIjsK
KyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1hZ2UiKS5zZXRBdHRyaWJ1dGUoImRpc3Bs
YXkiLCAiaW5oZXJpdCIpOworCisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
KyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorCis8L3Njcmlw
dD4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCAyODg5YzE3Li40ZGUzNTVmIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDA5LTA2LTIxICBS
b2IgQnVpcyAgPHJ3bGJ1aXNAZ21haWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yNjM5MgorICAgICAgICBCdWcgMjYzOTI6IEluIGh0bWwsIG1vZGlmaWNhdGlvbiBvZiB4
bGluazpocmVmIG9mIGFuIG5ld2x5IGluc2VydGVkIHN2ZyBpbWFnZSBkb2VzIG5vdCB3b3JrLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzMjgKKyAg
ICAgICAgQnVnIDI2MzI4OiBjaGFuZ2luZyBocmVmIGF0dHJpYnV0ZSBvZiBzdmcgaW1hZ2VzIGRv
d3Mgbm90IHdvcmsgd2hlbiBjaGFuZ2luZyBkaXNwbGF5IGF0dHJpYnV0ZSBhcyB3ZWxsCisKKyAg
ICAgICAgUmVhY3QgdG8gaHJlZiB1cGRhdGVzIGV2ZW4gd2hlbiB0aGVyZSBpcyBubyByZW5kZXJl
ciwgaS5lLiBkaXNwbGF5PW5vbmUuCisKKyAgICAgICAgVGVzdHM6IHN2Zy9jdXN0b20vanMtdXBk
YXRlLWltYWdlLWFuZC1kaXNwbGF5LnN2ZworICAgICAgICAgICAgICAgc3ZnL2N1c3RvbS9qcy11
cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkyLnN2ZworICAgICAgICAgICAgICAgc3ZnL2N1c3RvbS9q
cy11cGRhdGUtaW1hZ2UtYW5kLWRpc3BsYXkzLnN2ZworCisgICAgICAgICogc3ZnL1NWR0ltYWdl
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdJbWFnZUVsZW1lbnQ6OnN2Z0F0dHJp
YnV0ZUNoYW5nZWQpOgorCiAyMDA5LTA2LTE5ICBBbGljZSBMaXUgIDxhbGljZS5saXVAYXBwbGUu
Y29tPgogCiAgICAgICAgIEZpeCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjY1NjggCmRpZmYgLS1naXQgYS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwIGIv
V2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcAppbmRleCA5YWZmOTNkLi5hNTY4NGEyIDEw
MDY0NAotLS0gYS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUv
c3ZnL1NWR0ltYWdlRWxlbWVudC5jcHAKQEAgLTEsNiArMSw2IEBACiAvKgogICAgIENvcHlyaWdo
dCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwOCBOaWtvbGFzIFppbW1lcm1hbm4gPHppbW1lcm1h
bm5Aa2RlLm9yZz4KLSAgICAgICAgICAgICAgICAgIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIw
MDggUm9iIEJ1aXMgPGJ1aXNAa2RlLm9yZz4KKyAgICAgICAgICAgICAgICAgIDIwMDQsIDIwMDUs
IDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgUm9iIEJ1aXMgPGJ1aXNAa2RlLm9yZz4KICAgICAgICAg
ICAgICAgICAgIDIwMDYgQWxleGFuZGVyIEtlbGxldHQgPGx5cGFub3ZAa2RlLm9yZz4KIAogICAg
IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBLREUgcHJvamVjdApAQCAtOTMsMjMgKzkzLDIwIEBA
IHZvaWQgU1ZHSW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmll
ZE5hbWUmIGF0dHJOYW1lKQogewogICAgIFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50Ojpz
dmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGlmIChTVkdVUklSZWZlcmVuY2U6
OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQorICAgICAgICBtX2ltYWdlTG9hZGVyLnVwZGF0
ZUZyb21FbGVtZW50SWdub3JpbmdQcmV2aW91c0Vycm9yKCk7CisKICAgICBpZiAoIXJlbmRlcmVy
KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGJvb2wgaXNVUklBdHRyaWJ1dGUgPSBTVkdVUklS
ZWZlcmVuY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpOwotCiAgICAgaWYgKGF0dHJOYW1l
ID09IFNWR05hbWVzOjp4QXR0ciB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eUF0dHIgfHwKICAg
ICAgICAgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0ciB8fCBhdHRyTmFtZSA9PSBTVkdO
YW1lczo6aGVpZ2h0QXR0ciB8fAogICAgICAgICBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cHJlc2Vy
dmVBc3BlY3RSYXRpb0F0dHIgfHwKICAgICAgICAgU1ZHVGVzdHM6OmlzS25vd25BdHRyaWJ1dGUo
YXR0ck5hbWUpIHx8CiAgICAgICAgIFNWR0xhbmdTcGFjZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRy
TmFtZSkgfHwKICAgICAgICAgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZDo6aXNLbm93bkF0
dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgaXNVUklBdHRyaWJ1dGUgfHwKICAgICAgICAg
U1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
KSB7CiAgICAgICAgIHJlbmRlcmVyKCktPnNldE5lZWRzTGF5b3V0KHRydWUpOwotCi0gICAgICAg
IGlmIChpc1VSSUF0dHJpYnV0ZSkKLSAgICAgICAgICAgIG1faW1hZ2VMb2FkZXIudXBkYXRlRnJv
bUVsZW1lbnRJZ25vcmluZ1ByZXZpb3VzRXJyb3IoKTsKICAgICB9CiB9CiAK
</data>
<flag name="review"
          id="16278"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>