<?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>12187</bug_id>
          
          <creation_ts>2007-01-09 18:36:28 -0800</creation_ts>
          <short_desc>WebKit does not respect case attribute name case for SVG elements in HTML docs</short_desc>
          <delta_ts>2007-11-08 12:25:28 -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>SVG</component>
          <version>420+</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>http://dojotoolkit.org/~alex/trunk/tests/gfx/test_linearGradient.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Russell">alex</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
    
    <cc>eugene.lazutkin</cc>
    
    <cc>oliver</cc>
    
    <cc>sjoerdmulder</cc>
    
    <cc>yoah</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>35955</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Russell">alex</who>
    <bug_when>2007-01-09 18:36:28 -0800</bug_when>
    <thetext>while linear gradients appear to work correctly from markup, creating a DOM structure that correctly renders an SVG linear gradient on FF2 and Opera 9 fails to do so on webkit nightlies. See the referenced URL for an example.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>33360</commentid>
    <comment_count>1</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2007-01-22 15:55:26 -0800</bug_when>
    <thetext>Hi Alex,

could you make a simple testcase? It would help a lot.

Thanks in advance,
Niko</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>9014</commentid>
    <comment_count>2</comment_count>
      <attachid>14747</attachid>
    <who name="Yoah Bar-David">yoah</who>
    <bug_when>2007-05-27 02:37:53 -0700</bug_when>
    <thetext>Created attachment 14747
Sample file where instead of a gradient you see a solid fill 

Note that if this file is saved as test.html, the rectangle is filled in solid red (where in Firefox it has a linear gradient fill).
If you change the file name to text.xml, and change the headers to be as follows, the linear gradient is displayed well. 

&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xmlns:svg=&quot;http://www.w3.org/2000/svg&quot; xmlns:xul=&quot;http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul&quot;&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8921</commentid>
    <comment_count>3</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2007-05-28 14:56:50 -0700</bug_when>
    <thetext>Alex, should this bug block Bug 13846?

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8907</commentid>
    <comment_count>4</comment_count>
    <who name="Yoah Bar-David">yoah</who>
    <bug_when>2007-05-28 22:00:04 -0700</bug_when>
    <thetext>Note that the bug was also found in another application (not using dojo), and the sample file I attached earlier is not related to dojo. </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8707</commentid>
    <comment_count>5</comment_count>
    <who name="Alex Russell">alex</who>
    <bug_when>2007-05-30 14:11:08 -0700</bug_when>
    <thetext>Hey David,

I wasn&apos;t aware of #13846. This is something of a problem for dojox.gfx, but not necessarialy dojotoolkit.org itself.

Also, does Yoah&apos;s reduction pass muster? It seems to exercise the same issue the same way as dojo.gfx (save with less code in the way).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8620</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-05-31 14:10:52 -0700</bug_when>
    <thetext>This has nothing to do with gradients.  This has to do with WebKit treating HTML docs different from an XML/XHTML document and different still from an SVG document.  As previously mentioned, if this document is served as XHTML the gradient works just fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8616</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-05-31 14:44:21 -0700</bug_when>
    <thetext>Actually I was wrong.  This has something to do with gradientUnits being set incorrectly.  Note the difference between the two dump render tree dumps:  diff xhtml-results html-results:

--- test1-expected.txt	2007-05-31 14:39:47.000000000 -0700
+++ test2-expected.txt	2007-05-31 14:39:48.000000000 -0700
@@ -1,13 +1,13 @@
-KRenderingPaintServer {id=&quot;lgrad&quot; [type=LINEAR-GRADIENT] [stops=[(0.00,#FF0000), (1.00,#FFFF00)]] [bounding box mode=0] [start=(0,0)] [end=(300,0)]}
+KRenderingPaintServer {id=&quot;lgrad&quot; [type=LINEAR-GRADIENT] [stops=[(0.00,#FF0000), (1.00,#FFFF00)]] [start=(0,0)] [end=(300,0)]}
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
-layer at (0,0) size 800x316
-  RenderBlock {html} at (0,0) size 800x316
-    RenderBody {body} at (8,8) size 784x300
-      RenderBlock {div} at (0,0) size 600x300
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 600x300
         RenderSVGContainer {svg} at (18,18) size 300x200
           RenderSVGHiddenContainer {defs} at (0,0) size 0x0
             RenderSVGHiddenContainer {linearGradient} at (0,0) size 0x0
               RenderSVGGradientStop {stop} at (0,0) size 0x0
               RenderSVGGradientStop {stop} at (0,0) size 0x0
-          RenderPath {rect} at (18,18) size 300x200 [fill={[type=LINEAR-GRADIENT] [stops=[(0.00,#FF0000), (1.00,#FFFF00)]] [bounding box mode=0] [start=(0,0)] [end=(300,0)]}] [data=&quot;M10.00,10.00L310.00,10.00L310.00,210.00L10.00,210.00&quot;]
+          RenderPath {rect} at (18,18) size 300x200 [fill={[type=LINEAR-GRADIENT] [stops=[(0.00,#FF0000), (1.00,#FFFF00)]] [start=(0,0)] [end=(300,0)]}] [data=&quot;M10.00,10.00L310.00,10.00L310.00,210.00L10.00,210.00&quot;]
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8614</commentid>
    <comment_count>8</comment_count>
      <attachid>14812</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-05-31 15:02:53 -0700</bug_when>
    <thetext>Created attachment 14812
better reduction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8609</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-05-31 15:48:27 -0700</bug_when>
    <thetext>Ha!  Found the problem.  It&apos;s Element.cpp:434:

    String localName = inHTMLDocument(this) ? name.lower() : name;

That breaks attributes for SVG elements when they&apos;re in an HTML doc.  I&apos;m not sure why that check exists as such.  It probably should be based on the element and not on which doc its in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8588</commentid>
    <comment_count>10</comment_count>
      <attachid>14816</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-06-01 00:41:15 -0700</bug_when>
    <thetext>Created attachment 14816
test case showing xhtml behavior</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8589</commentid>
    <comment_count>11</comment_count>
      <attachid>14817</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-06-01 00:41:44 -0700</bug_when>
    <thetext>Created attachment 14817
test case showing html behavior</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8587</commentid>
    <comment_count>12</comment_count>
      <attachid>14821</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-06-01 01:12:01 -0700</bug_when>
    <thetext>Created attachment 14821
the fix (and test cases)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8584</commentid>
    <comment_count>13</comment_count>
      <attachid>14821</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-06-01 01:19:14 -0700</bug_when>
    <thetext>Comment on attachment 14821
the fix (and test cases)

I think tag names suffer from the same bug, e.g., feComposite.

Should probably rename the method shouldIgnoreAttributeCase to something more generic like &quot;isCaseInsensitiveHTML&quot;.

Bonus points if you fix tag names too in a followup bug. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8582</commentid>
    <comment_count>14</comment_count>
      <attachid>14821</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-06-01 01:20:59 -0700</bug_when>
    <thetext>Comment on attachment 14821
the fix (and test cases)

Never mind. Eric convinced me this is not going to happen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>8583</commentid>
    <comment_count>15</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-06-01 01:24:19 -0700</bug_when>
    <thetext>Landed r21934 (on the feature-branch) it could be moved to TOT if so desired.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57097</commentid>
    <comment_count>16</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-09-26 11:44:16 -0700</bug_when>
    <thetext>*** Bug 15276 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57609</commentid>
    <comment_count>17</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2007-10-01 23:01:01 -0700</bug_when>
    <thetext>Hmmm, this seems to have been broken by rebasing the feature branch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57675</commentid>
    <comment_count>18</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-10-02 15:18:59 -0700</bug_when>
    <thetext>The updated results are actually better than before.  Well, better for xhtml, worse for HTML.  But I&apos;m not sure that anyone cares that HTML elements have a namespaceURI containing the xhtml namespace.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60655</commentid>
    <comment_count>19</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-11-08 12:21:24 -0800</bug_when>
    <thetext>*** Bug 15898 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60656</commentid>
    <comment_count>20</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-11-08 12:25:28 -0800</bug_when>
    <thetext>Just to clarify, this did *not* ever get moved to (then) TOT from feature-branch, so it did *not* ship as part of Safari 3, however it should still be fixed the current TOT.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>14747</attachid>
            <date>2007-05-27 02:37:53 -0700</date>
            <delta_ts>2007-05-31 15:02:53 -0700</delta_ts>
            <desc>Sample file where instead of a gradient you see a solid fill </desc>
            <filename>webkitsvggradient.html</filename>
            <type>text/html</type>
            <size>1605</size>
            <attacher name="Yoah Bar-David">yoah</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIEhUTUw+CjxodG1sPgo8aGVhZD4KICA8dGl0bGU+V2ViS2l0IFNWRyBCdWc8L3Rp
dGxlPgogIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgIGZ1bmN0aW9uIGRyYXco
KSB7CiAgICAgIHZhciBOUyA9ICJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI7CiAgICAgIHZh
ciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKE5TLCAic3ZnIik7DQogICAgICBzLnNldEF0
dHJpYnV0ZSgid2lkdGgiLCA2MDApOw0KICAgICAgcy5zZXRBdHRyaWJ1dGUoImhlaWdodCIsIDMw
MCk7DQoNCiAgICAgIHZhciBkZWZzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKE5TLCAiZGVm
cyIpOw0KICAgICAgdmFyIGdyYWRpZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKE5TLCAi
bGluZWFyR3JhZGllbnQiKTsNCiAgICAgIGdyYWRpZW50LnNldEF0dHJpYnV0ZSgiaWQiLCAibGdy
YWQiKTsNCiAgICAgIGdyYWRpZW50LnNldEF0dHJpYnV0ZSgieDEiLCAwKTsNCiAgICAgIGdyYWRp
ZW50LnNldEF0dHJpYnV0ZSgieTEiLCAwKTsNCiAgICAgIGdyYWRpZW50LnNldEF0dHJpYnV0ZSgi
eDIiLCAzMDApOw0KICAgICAgZ3JhZGllbnQuc2V0QXR0cmlidXRlKCJ5MiIsIDApOw0KICAgICAg
Z3JhZGllbnQuc2V0QXR0cmlidXRlKCJncmFkaWVudFVuaXRzIiwgInVzZXJTcGFjZU9uVXNlIik7
DQoNCiAgICAgIHZhciBzdG9wMSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhOUywgInN0b3Ai
KTsNCiAgICAgIHN0b3AxLnNldEF0dHJpYnV0ZSgib2Zmc2V0IiwgIjAlIik7DQogICAgICBzdG9w
MS5zZXRBdHRyaWJ1dGUoInN0eWxlIiwgInN0b3AtY29sb3I6IHJlZCIpOw0KDQogICAgICB2YXIg
c3RvcDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoTlMsICJzdG9wIik7DQogICAgICBzdG9w
Mi5zZXRBdHRyaWJ1dGUoIm9mZnNldCIsICIxMDAlIik7DQogICAgICBzdG9wMi5zZXRBdHRyaWJ1
dGUoInN0eWxlIiwgInN0b3AtY29sb3I6IHllbGxvdyIpOw0KDQogICAgICBncmFkaWVudC5hcHBl
bmRDaGlsZChzdG9wMSk7DQogICAgICBncmFkaWVudC5hcHBlbmRDaGlsZChzdG9wMik7DQogICAg
ICBkZWZzLmFwcGVuZENoaWxkKGdyYWRpZW50KTsNCiAgICAgIHMuYXBwZW5kQ2hpbGQoZGVmcyk7
DQoNCiAgICAgIHZhciByZWN0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKE5TLCAicmVjdCIp
Ow0KICAgICAgcmVjdC5zZXRBdHRyaWJ1dGUoIngiLCAiMTAiKTsNCiAgICAgIHJlY3Quc2V0QXR0
cmlidXRlKCJ5IiwgIjEwIik7CiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCJ3aWR0aCIsICIzMDAi
KTsNCiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCJoZWlnaHQiLCAiMjAwIik7DQogICAgICByZWN0
LnNldEF0dHJpYnV0ZSgiZmlsbCIsICJ1cmwoI2xncmFkKSIpOw0KCiAgICAgIHMuYXBwZW5kQ2hp
bGQocmVjdCk7CiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkIikuYXBwZW5kQ2hpbGQo
cyk7DQoKICAgfQogIDwvc2NyaXB0PgoKPC9oZWFkPgoKPGJvZHkgb25sb2FkPSJkcmF3KCkiPgo8
ZGl2IHN0eWxlPSJ3aWR0aDo2MDBweDtoZWlnaHQ6MzAwcHgiIGlkPSJkIj48L2Rpdj4KPC9ib2R5
Pgo8L2h0bWw+
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>14812</attachid>
            <date>2007-05-31 15:02:53 -0700</date>
            <delta_ts>2007-06-01 01:12:01 -0700</delta_ts>
            <desc>better reduction</desc>
            <filename>svg-animated-properties.html</filename>
            <type>text/html</type>
            <size>471</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgo8aGVhZD4KICA8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICBmdW5jdGlvbiBydW5UZXN0KCkgewogICAg
ICB2YXIgZ3JhZGllbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMu
b3JnLzIwMDAvc3ZnIiwgImxpbmVhckdyYWRpZW50Iik7CiAgICAgIGdyYWRpZW50LnNldEF0dHJp
YnV0ZSgiZ3JhZGllbnRVbml0cyIsICJ1c2VyU3BhY2VPblVzZSIpOwogICAgICBpZiAoZ3JhZGll
bnQuZ3JhZGllbnRVbml0cy5iYXNlVmFsID09IDEpCiAgICAgICAgZG9jdW1lbnQud3JpdGUoIjxw
PlBBU1M8L3A+Iik7CiAgICAgIGVsc2UKICAgICAgICBkb2N1bWVudC53cml0ZSgiPHA+RkFJTDwv
cD4iKTsKICAgfQogIDwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4K
PC9ib2R5Pgo8L2h0bWw+
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>14816</attachid>
            <date>2007-06-01 00:41:15 -0700</date>
            <delta_ts>2007-06-01 00:41:15 -0700</delta_ts>
            <desc>test case showing xhtml behavior</desc>
            <filename>svg-animated-properties.xhtml</filename>
            <type>application/xhtml+xml</type>
            <size>4615</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgo8Ym9keT4KICA8dGFi
bGUgaWQ9InJlc3VsdHMiIHdpZHRoPScxMDAlJz4KICAgIDx0cj4KICAgICAgPHRoPmNhc2Ugc2Vu
c2l0aXZlPzwvdGg+CiAgICAgIDx0aD50YWc8L3RoPgogICAgICA8dGg+bmFtZXNwYWNlPC90aD4K
ICAgICAgPHRoPmlkPC90aD4KICAgICAgPHRoPmF0dHJpYnV0ZTwvdGg+CiAgICAgIDx0aD5uYW1l
c3BhY2U8L3RoPgogICAgICA8dGg+Zmlyc3QgdmFsdWU8L3RoPgogICAgICA8dGg+c2Vjb25kIHZh
bHVlPC90aD4KICAgIDwvdHI+CiAgPC90YWJsZT4KICAKICA8IS0tIEZpcnN0IGEgZmV3IGVsZW1l
bnRzIGNyZWF0ZWQgYnkgdGhlIHBhcnNlciAtLT4KICA8ZGl2IGlkPSJwYXJzZXJUZXN0cyIgc3R5
bGU9J2Rpc3BsYXk6IG5vbmUnPgogICAgPHAgaWQ9InRlc3QxIiBjYXNlPSdmaXJzdCcgQ0FTRT0n
c2Vjb25kJz48L3A+CiAgICA8Zm9vYmFyIGlkPSJ0ZXN0MiIgY2FzZT0nZmlyc3QnIENBU0U9J3Nl
Y29uZCc+PC9mb29iYXI+CiAgICA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2
ZyIgaWQ9InRlc3QzIiBjYXNlPSdmaXJzdCcgQ0FTRT0nc2Vjb25kJz48L3N2Zz4KICA8L2Rpdj4K
ICAKICA8ZGl2IGlkPSJqYXZhc2NyaXB0VGVzdHMiIHN0eWxlPSdkaXNwbGF5OiBub25lJz4KICA8
L2Rpdj4KICAKICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgCiAgICBmdW5jdGlv
biBhZGRDZWxsKHJvdywgY29udGVudHMpIHsKICAgICAgdmFyIGNlbGwgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCJ0ZCIpOwogICAgICBy
b3cuYXBwZW5kQ2hpbGQoY2VsbCk7CiAgICAgIGNlbGwuaW5uZXJIVE1MID0gY29udGVudHM7CiAg
ICB9CiAgCiAgICBmdW5jdGlvbiByZXBvcnRSZXN1bHQodGFnTmFtZSwgdGFnTmFtZXNwYWNlLCBp
ZCwgYXR0ck5hbWUsIGF0dHJOYW1lc3BhY2UsIHNlbnNpdGl2ZSwgZmlyc3RWYWx1ZSwgc2Vjb25k
VmFsdWUpIHsKICAgICAgdmFyIG5ld1JvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsICd0cicpOwogICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVzdWx0cyIpLmFwcGVuZENoaWxkKG5ld1Jvdyk7CiAgICAgIGFkZENlbGwobmV3
Um93LCBzZW5zaXRpdmUpOwogICAgICBhZGRDZWxsKG5ld1JvdywgdGFnTmFtZSk7CiAgICAgIGFk
ZENlbGwobmV3Um93LCB0YWdOYW1lc3BhY2UpOwogICAgICBhZGRDZWxsKG5ld1JvdywgaWQpOwog
ICAgICBhZGRDZWxsKG5ld1JvdywgYXR0ck5hbWUpOwogICAgICBhZGRDZWxsKG5ld1JvdywgYXR0
ck5hbWVzcGFjZSk7CiAgICAgIGFkZENlbGwobmV3Um93LCBmaXJzdFZhbHVlKTsKICAgICAgYWRk
Q2VsbChuZXdSb3csIHNlY29uZFZhbHVlKTsKICAgIH0KICAKICAgIGZ1bmN0aW9uIHJlc3VsdExv
ZyhzdHJpbmcpIHsKICAgICAgdmFyIHJlc3VsdExpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCJ0ciIpOwogICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0cyIpLmFwcGVuZENoaWxkKHJlc3VsdExpbmUpOyAgICAgIAog
ICAgICB2YXIgcmVzdWx0VGV4dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCIsInRkIik7CiAgICAgIHJlc3VsdExpbmUuYXBwZW5kQ2hpbGQo
cmVzdWx0VGV4dCk7CiAgICAgIHJlc3VsdFRleHQuc2V0QXR0cmlidXRlKCJjb2xzcGFuIiwgJzYn
KTsKICAgICAgcmVzdWx0VGV4dC5pbm5lckhUTUwgPSBzdHJpbmc7CiAgICB9CiAgICAKICAgIGZ1
bmN0aW9uIGdldFRlc3RFbGVtZW50KG51bWJlcikgewogICAgICByZXR1cm4gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3QiICsgbnVtYmVyKTsKICAgIH0KICAKICAgIGZ1bmN0aW9uIGNoZWNr
QXR0cmlidXRlKGVsZW1lbnQsIGF0dHJOYW1lLCBuYW1lc3BhY2UpIHsKICAgICAgdmFyIGZpcnN0
OwogICAgICB2YXIgc2Vjb25kOwogICAgICAKICAgICAgaWYgKHR5cGVvZihuYW1lc3BhY2UpID09
ICd1bmRlZmluZWQnKSB7CiAgICAgICAgZmlyc3QgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShhdHRy
TmFtZSk7CiAgICAgICAgc2Vjb25kID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUoYXR0ck5hbWUudG9V
cHBlckNhc2UoKSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmlyc3QgPSBlbGVtZW50LmdldEF0
dHJpYnV0ZU5TKG5hbWVzcGFjZSwgYXR0ck5hbWUpOwogICAgICAgIHNlY29uZCA9IGVsZW1lbnQu
Z2V0QXR0cmlidXRlTlMobmFtZXNwYWNlLCBhdHRyTmFtZS50b1VwcGVyQ2FzZSgpKTsKICAgICAg
fQogICAgICAKICAgICAgcmVwb3J0UmVzdWx0KGVsZW1lbnQubG9jYWxOYW1lLCBlbGVtZW50Lm5h
bWVzcGFjZSwgZWxlbWVudC5pZCwgYXR0ck5hbWUsIG5hbWVzcGFjZSwgKGZpcnN0ICE9IHNlY29u
ZCksIGZpcnN0LCBzZWNvbmQpOwogICAgfQogICAgCiAgICBmdW5jdGlvbiBjcmVhdGVBdHRyaWJ1
dGVzRm9yQ2hlY2soZWxlbWVudCwgYXR0ck5hbWUsIG5hbWVzcGFjZSkgewogICAgICBpZiAodHlw
ZW9mKG5hbWVzcGFjZSkgPT0gJ3VuZGVmaW5lZCcpIHsKICAgICAgICBlbGVtZW50LnNldEF0dHJp
YnV0ZShhdHRyTmFtZSwgJ2ZpcnN0Jyk7CiAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0
ck5hbWUudG9VcHBlckNhc2UoKSwgJ3NlY29uZCcpOwogICAgICB9IGVsc2UgewogICAgICAgIGVs
ZW1lbnQuc2V0QXR0cmlidXRlTlMobmFtZXNwYWNlLCBhdHRyTmFtZSwgJ2ZpcnN0Jyk7CiAgICAg
ICAgZWxlbWVudC5zZXRBdHRyaWJ1dGVOUyhuYW1lc3BhY2UsIGF0dHJOYW1lLnRvVXBwZXJDYXNl
KCksICdzZWNvbmQnKTsKICAgICAgfQogICAgfQogICAgCiAgICBmdW5jdGlvbiBjcmVhdGVFbGVt
ZW50Rm9yQ2hlY2sobnVtYmVyLCBuYW1lLCBuYW1lc3BhY2UpIHsKICAgICAgdmFyIG5ld0VsZW1l
bnQ7CiAgICAgIGlmICh0eXBlb2YobmFtZXNwYWNlKSA9PSAndW5kZWZpbmVkJykKICAgICAgICBu
ZXdFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChuYW1lKTsKICAgICAgZWxzZQogICAg
ICAgIG5ld0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMobmFtZXNwYWNlLCBuYW1l
KTsKICAgICAgCiAgICAgIG5ld0VsZW1lbnQuaWQgPSAidGVzdCIgKyBudW1iZXI7CiAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJqYXZhc2NyaXB0VGVzdHMiKS5hcHBlbmRDaGlsZChuZXdF
bGVtZW50KTsKICAgICAgcmV0dXJuIG5ld0VsZW1lbnQ7CiAgICB9CiAgICAKICAgIGZ1bmN0aW9u
IGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCBhdHRyTmFtZSwgbmFtZXNwYWNlKSB7
CiAgICAgIGNyZWF0ZUF0dHJpYnV0ZXNGb3JDaGVjayhlbGVtZW50LCBhdHRyTmFtZSwgbmFtZXNw
YWNlKTsKICAgICAgY2hlY2tBdHRyaWJ1dGUoZWxlbWVudCwgYXR0ck5hbWUsIG5hbWVzcGFjZSk7
CiAgICB9CiAgICAKICAgIHJlc3VsdExvZygiUGFyc2VyIFRlc3RzOiIpCiAgICBjaGVja0F0dHJp
YnV0ZShnZXRUZXN0RWxlbWVudCgxKSwgJ2Nhc2UnKTsKICAgIGNoZWNrQXR0cmlidXRlKGdldFRl
c3RFbGVtZW50KDIpLCAnY2FzZScpOwogICAgY2hlY2tBdHRyaWJ1dGUoZ2V0VGVzdEVsZW1lbnQo
MyksICdjYXNlJyk7CiAgICAKICAgIHJlc3VsdExvZygiSmF2YXNjcmlwdCBUZXN0czoiKQogICAg
dmFyIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNCwgJ3AnKTsKICAgIGNyZWF0ZUFu
ZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0dHInKTsKICAgIGNyZWF0ZUFuZENoZWNr
QXR0cmlidXRlcyhlbGVtZW50LCAnbmFtZXNwYWNldGVzdCcsICdodHRwOi8vd3d3LmV4YW1wbGUu
Y29tLycpOwogICAgY3JlYXRlQW5kQ2hlY2tBdHRyaWJ1dGVzKGVsZW1lbnQsICdocmVmJywgJ2h0
dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnKTsKICAgIAogICAgZWxlbWVudCA9IGNyZWF0ZUVs
ZW1lbnRGb3JDaGVjayg1LCAnZm9vYmFyJyk7CiAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMo
ZWxlbWVudCwgJ3Rlc3RhdHRyJyk7CiAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVu
dCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nKTsKICAgIGNyZWF0
ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAnaHJlZicsICdodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hsaW5rJyk7CiAgICAKICAgIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNiwg
J3N2ZycsICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycpOwogICAgY3JlYXRlQW5kQ2hlY2tB
dHRyaWJ1dGVzKGVsZW1lbnQsICd0ZXN0YXR0cicpOwogICAgY3JlYXRlQW5kQ2hlY2tBdHRyaWJ1
dGVzKGVsZW1lbnQsICduYW1lc3BhY2V0ZXN0JywgJ2h0dHA6Ly93d3cuZXhhbXBsZS5jb20vJyk7
CiAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0cDovL3d3
dy53My5vcmcvMTk5OS94bGluaycpOwogICAgCiAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>14817</attachid>
            <date>2007-06-01 00:41:44 -0700</date>
            <delta_ts>2007-06-01 00:41:44 -0700</delta_ts>
            <desc>test case showing html behavior</desc>
            <filename>svg-animated-properties.html</filename>
            <type>text/html</type>
            <size>4615</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgo8Ym9keT4KICA8dGFi
bGUgaWQ9InJlc3VsdHMiIHdpZHRoPScxMDAlJz4KICAgIDx0cj4KICAgICAgPHRoPmNhc2Ugc2Vu
c2l0aXZlPzwvdGg+CiAgICAgIDx0aD50YWc8L3RoPgogICAgICA8dGg+bmFtZXNwYWNlPC90aD4K
ICAgICAgPHRoPmlkPC90aD4KICAgICAgPHRoPmF0dHJpYnV0ZTwvdGg+CiAgICAgIDx0aD5uYW1l
c3BhY2U8L3RoPgogICAgICA8dGg+Zmlyc3QgdmFsdWU8L3RoPgogICAgICA8dGg+c2Vjb25kIHZh
bHVlPC90aD4KICAgIDwvdHI+CiAgPC90YWJsZT4KICAKICA8IS0tIEZpcnN0IGEgZmV3IGVsZW1l
bnRzIGNyZWF0ZWQgYnkgdGhlIHBhcnNlciAtLT4KICA8ZGl2IGlkPSJwYXJzZXJUZXN0cyIgc3R5
bGU9J2Rpc3BsYXk6IG5vbmUnPgogICAgPHAgaWQ9InRlc3QxIiBjYXNlPSdmaXJzdCcgQ0FTRT0n
c2Vjb25kJz48L3A+CiAgICA8Zm9vYmFyIGlkPSJ0ZXN0MiIgY2FzZT0nZmlyc3QnIENBU0U9J3Nl
Y29uZCc+PC9mb29iYXI+CiAgICA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2
ZyIgaWQ9InRlc3QzIiBjYXNlPSdmaXJzdCcgQ0FTRT0nc2Vjb25kJz48L3N2Zz4KICA8L2Rpdj4K
ICAKICA8ZGl2IGlkPSJqYXZhc2NyaXB0VGVzdHMiIHN0eWxlPSdkaXNwbGF5OiBub25lJz4KICA8
L2Rpdj4KICAKICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgCiAgICBmdW5jdGlv
biBhZGRDZWxsKHJvdywgY29udGVudHMpIHsKICAgICAgdmFyIGNlbGwgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCJ0ZCIpOwogICAgICBy
b3cuYXBwZW5kQ2hpbGQoY2VsbCk7CiAgICAgIGNlbGwuaW5uZXJIVE1MID0gY29udGVudHM7CiAg
ICB9CiAgCiAgICBmdW5jdGlvbiByZXBvcnRSZXN1bHQodGFnTmFtZSwgdGFnTmFtZXNwYWNlLCBp
ZCwgYXR0ck5hbWUsIGF0dHJOYW1lc3BhY2UsIHNlbnNpdGl2ZSwgZmlyc3RWYWx1ZSwgc2Vjb25k
VmFsdWUpIHsKICAgICAgdmFyIG5ld1JvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsICd0cicpOwogICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVzdWx0cyIpLmFwcGVuZENoaWxkKG5ld1Jvdyk7CiAgICAgIGFkZENlbGwobmV3
Um93LCBzZW5zaXRpdmUpOwogICAgICBhZGRDZWxsKG5ld1JvdywgdGFnTmFtZSk7CiAgICAgIGFk
ZENlbGwobmV3Um93LCB0YWdOYW1lc3BhY2UpOwogICAgICBhZGRDZWxsKG5ld1JvdywgaWQpOwog
ICAgICBhZGRDZWxsKG5ld1JvdywgYXR0ck5hbWUpOwogICAgICBhZGRDZWxsKG5ld1JvdywgYXR0
ck5hbWVzcGFjZSk7CiAgICAgIGFkZENlbGwobmV3Um93LCBmaXJzdFZhbHVlKTsKICAgICAgYWRk
Q2VsbChuZXdSb3csIHNlY29uZFZhbHVlKTsKICAgIH0KICAKICAgIGZ1bmN0aW9uIHJlc3VsdExv
ZyhzdHJpbmcpIHsKICAgICAgdmFyIHJlc3VsdExpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCJ0ciIpOwogICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0cyIpLmFwcGVuZENoaWxkKHJlc3VsdExpbmUpOyAgICAgIAog
ICAgICB2YXIgcmVzdWx0VGV4dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCIsInRkIik7CiAgICAgIHJlc3VsdExpbmUuYXBwZW5kQ2hpbGQo
cmVzdWx0VGV4dCk7CiAgICAgIHJlc3VsdFRleHQuc2V0QXR0cmlidXRlKCJjb2xzcGFuIiwgJzYn
KTsKICAgICAgcmVzdWx0VGV4dC5pbm5lckhUTUwgPSBzdHJpbmc7CiAgICB9CiAgICAKICAgIGZ1
bmN0aW9uIGdldFRlc3RFbGVtZW50KG51bWJlcikgewogICAgICByZXR1cm4gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3QiICsgbnVtYmVyKTsKICAgIH0KICAKICAgIGZ1bmN0aW9uIGNoZWNr
QXR0cmlidXRlKGVsZW1lbnQsIGF0dHJOYW1lLCBuYW1lc3BhY2UpIHsKICAgICAgdmFyIGZpcnN0
OwogICAgICB2YXIgc2Vjb25kOwogICAgICAKICAgICAgaWYgKHR5cGVvZihuYW1lc3BhY2UpID09
ICd1bmRlZmluZWQnKSB7CiAgICAgICAgZmlyc3QgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShhdHRy
TmFtZSk7CiAgICAgICAgc2Vjb25kID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUoYXR0ck5hbWUudG9V
cHBlckNhc2UoKSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZmlyc3QgPSBlbGVtZW50LmdldEF0
dHJpYnV0ZU5TKG5hbWVzcGFjZSwgYXR0ck5hbWUpOwogICAgICAgIHNlY29uZCA9IGVsZW1lbnQu
Z2V0QXR0cmlidXRlTlMobmFtZXNwYWNlLCBhdHRyTmFtZS50b1VwcGVyQ2FzZSgpKTsKICAgICAg
fQogICAgICAKICAgICAgcmVwb3J0UmVzdWx0KGVsZW1lbnQubG9jYWxOYW1lLCBlbGVtZW50Lm5h
bWVzcGFjZSwgZWxlbWVudC5pZCwgYXR0ck5hbWUsIG5hbWVzcGFjZSwgKGZpcnN0ICE9IHNlY29u
ZCksIGZpcnN0LCBzZWNvbmQpOwogICAgfQogICAgCiAgICBmdW5jdGlvbiBjcmVhdGVBdHRyaWJ1
dGVzRm9yQ2hlY2soZWxlbWVudCwgYXR0ck5hbWUsIG5hbWVzcGFjZSkgewogICAgICBpZiAodHlw
ZW9mKG5hbWVzcGFjZSkgPT0gJ3VuZGVmaW5lZCcpIHsKICAgICAgICBlbGVtZW50LnNldEF0dHJp
YnV0ZShhdHRyTmFtZSwgJ2ZpcnN0Jyk7CiAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0
ck5hbWUudG9VcHBlckNhc2UoKSwgJ3NlY29uZCcpOwogICAgICB9IGVsc2UgewogICAgICAgIGVs
ZW1lbnQuc2V0QXR0cmlidXRlTlMobmFtZXNwYWNlLCBhdHRyTmFtZSwgJ2ZpcnN0Jyk7CiAgICAg
ICAgZWxlbWVudC5zZXRBdHRyaWJ1dGVOUyhuYW1lc3BhY2UsIGF0dHJOYW1lLnRvVXBwZXJDYXNl
KCksICdzZWNvbmQnKTsKICAgICAgfQogICAgfQogICAgCiAgICBmdW5jdGlvbiBjcmVhdGVFbGVt
ZW50Rm9yQ2hlY2sobnVtYmVyLCBuYW1lLCBuYW1lc3BhY2UpIHsKICAgICAgdmFyIG5ld0VsZW1l
bnQ7CiAgICAgIGlmICh0eXBlb2YobmFtZXNwYWNlKSA9PSAndW5kZWZpbmVkJykKICAgICAgICBu
ZXdFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChuYW1lKTsKICAgICAgZWxzZQogICAg
ICAgIG5ld0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMobmFtZXNwYWNlLCBuYW1l
KTsKICAgICAgCiAgICAgIG5ld0VsZW1lbnQuaWQgPSAidGVzdCIgKyBudW1iZXI7CiAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJqYXZhc2NyaXB0VGVzdHMiKS5hcHBlbmRDaGlsZChuZXdF
bGVtZW50KTsKICAgICAgcmV0dXJuIG5ld0VsZW1lbnQ7CiAgICB9CiAgICAKICAgIGZ1bmN0aW9u
IGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCBhdHRyTmFtZSwgbmFtZXNwYWNlKSB7
CiAgICAgIGNyZWF0ZUF0dHJpYnV0ZXNGb3JDaGVjayhlbGVtZW50LCBhdHRyTmFtZSwgbmFtZXNw
YWNlKTsKICAgICAgY2hlY2tBdHRyaWJ1dGUoZWxlbWVudCwgYXR0ck5hbWUsIG5hbWVzcGFjZSk7
CiAgICB9CiAgICAKICAgIHJlc3VsdExvZygiUGFyc2VyIFRlc3RzOiIpCiAgICBjaGVja0F0dHJp
YnV0ZShnZXRUZXN0RWxlbWVudCgxKSwgJ2Nhc2UnKTsKICAgIGNoZWNrQXR0cmlidXRlKGdldFRl
c3RFbGVtZW50KDIpLCAnY2FzZScpOwogICAgY2hlY2tBdHRyaWJ1dGUoZ2V0VGVzdEVsZW1lbnQo
MyksICdjYXNlJyk7CiAgICAKICAgIHJlc3VsdExvZygiSmF2YXNjcmlwdCBUZXN0czoiKQogICAg
dmFyIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNCwgJ3AnKTsKICAgIGNyZWF0ZUFu
ZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0dHInKTsKICAgIGNyZWF0ZUFuZENoZWNr
QXR0cmlidXRlcyhlbGVtZW50LCAnbmFtZXNwYWNldGVzdCcsICdodHRwOi8vd3d3LmV4YW1wbGUu
Y29tLycpOwogICAgY3JlYXRlQW5kQ2hlY2tBdHRyaWJ1dGVzKGVsZW1lbnQsICdocmVmJywgJ2h0
dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnKTsKICAgIAogICAgZWxlbWVudCA9IGNyZWF0ZUVs
ZW1lbnRGb3JDaGVjayg1LCAnZm9vYmFyJyk7CiAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMo
ZWxlbWVudCwgJ3Rlc3RhdHRyJyk7CiAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVu
dCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nKTsKICAgIGNyZWF0
ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAnaHJlZicsICdodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hsaW5rJyk7CiAgICAKICAgIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNiwg
J3N2ZycsICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycpOwogICAgY3JlYXRlQW5kQ2hlY2tB
dHRyaWJ1dGVzKGVsZW1lbnQsICd0ZXN0YXR0cicpOwogICAgY3JlYXRlQW5kQ2hlY2tBdHRyaWJ1
dGVzKGVsZW1lbnQsICduYW1lc3BhY2V0ZXN0JywgJ2h0dHA6Ly93d3cuZXhhbXBsZS5jb20vJyk7
CiAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0cDovL3d3
dy53My5vcmcvMTk5OS94bGluaycpOwogICAgCiAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>14821</attachid>
            <date>2007-06-01 01:12:01 -0700</date>
            <delta_ts>2007-06-01 01:20:59 -0700</delta_ts>
            <desc>the fix (and test cases)</desc>
            <filename>sensitive.patch</filename>
            <type>text/plain</type>
            <size>16751</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIxOTMzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDctMDYtMDEgIEVyaWMgU2VpZGVsICA8ZXJp
Y0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IGh5YXR0LgorICAgICAgICAKKyAg
ICAgICAgQWRkIHRlc3RzIHRvIGRvY3VtZW50IGF0dHJpYnV0ZSBjYXNlIHNlbnNpdGl2aXR5IHBy
aW9yIHRvIGZpeGluZzoKKyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTIxODcKKworICAgICAgICAqIGZhc3QvZG9tL2F0dHJpYnV0ZS1jYXNlLXNlbnNpdGl2
aXR5LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vYXR0cmlidXRlLWNh
c2Utc2Vuc2l0aXZpdHkuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vYXR0cmlidXRl
LWNhc2Utc2Vuc2l0aXZpdHkyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vYXR0cmlidXRlLWNhc2Utc2Vuc2l0aXZpdHkyLnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L2RvbS9yZXNvdXJjZXMvYXR0ci1jYXNlLXNlbnNpdGl2aXR5LmpzOiBBZGRlZC4KKwogMjAw
Ny0wNS0zMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgTmlrby4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1jYXNlLXNl
bnNpdGl2aXR5Mi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9k
b20vYXR0cmlidXRlLWNhc2Utc2Vuc2l0aXZpdHkyLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1jYXNlLXNlbnNpdGl2aXR5Mi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTkgQEAKK2Nhc2Ugc2Vuc2l0aXZlPwl0
YWcJbmFtZXNwYWNlCWlkCWF0dHJpYnV0ZQluYW1lc3BhY2UJZmlyc3QgdmFsdWUJc2Vjb25kIHZh
bHVlCitQYXJzZXIgVGVzdHM6Cit0cnVlCXAJaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbAl0
ZXN0MQljYXNlCXVuZGVmaW5lZAlmaXJzdAlzZWNvbmQKK3RydWUJZm9vYmFyCWh0dHA6Ly93d3cu
dzMub3JnLzE5OTkveGh0bWwJdGVzdDIJY2FzZQl1bmRlZmluZWQJZmlyc3QJc2Vjb25kCit0cnVl
CXN2ZwlodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zwl0ZXN0MwljYXNlCXVuZGVmaW5lZAlmaXJz
dAlzZWNvbmQKK0phdmFzY3JpcHQgVGVzdHM6Cit0cnVlCXAJbnVsbAl0ZXN0NAl0ZXN0YXR0cgl1
bmRlZmluZWQJZmlyc3QJc2Vjb25kCit0cnVlCXAJbnVsbAl0ZXN0NAluYW1lc3BhY2V0ZXN0CWh0
dHA6Ly93d3cuZXhhbXBsZS5jb20vCWZpcnN0CXNlY29uZAordHJ1ZQlwCW51bGwJdGVzdDQJaHJl
ZglodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rCWZpcnN0CXNlY29uZAordHJ1ZQlmb29iYXIJ
bnVsbAl0ZXN0NQl0ZXN0YXR0cgl1bmRlZmluZWQJZmlyc3QJc2Vjb25kCit0cnVlCWZvb2Jhcglu
dWxsCXRlc3Q1CW5hbWVzcGFjZXRlc3QJaHR0cDovL3d3dy5leGFtcGxlLmNvbS8JZmlyc3QJc2Vj
b25kCit0cnVlCWZvb2JhcgludWxsCXRlc3Q1CWhyZWYJaHR0cDovL3d3dy53My5vcmcvMTk5OS94
bGluawlmaXJzdAlzZWNvbmQKK3RydWUJYmFyYmFyCWh0dHA6Ly93d3cuZXhhbXBsZS5jb20vCXRl
c3Q2CXRlc3RhdHRyCXVuZGVmaW5lZAlmaXJzdAlzZWNvbmQKK3RydWUJYmFyYmFyCWh0dHA6Ly93
d3cuZXhhbXBsZS5jb20vCXRlc3Q2CW5hbWVzcGFjZXRlc3QJaHR0cDovL3d3dy5leGFtcGxlLmNv
bS8JZmlyc3QJc2Vjb25kCit0cnVlCWJhcmJhcglodHRwOi8vd3d3LmV4YW1wbGUuY29tLwl0ZXN0
NglocmVmCWh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsJZmlyc3QJc2Vjb25kCit0cnVlCXN2
ZwlodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zwl0ZXN0Nwl0ZXN0YXR0cgl1bmRlZmluZWQJZmly
c3QJc2Vjb25kCit0cnVlCXN2ZwlodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zwl0ZXN0NwluYW1l
c3BhY2V0ZXN0CWh0dHA6Ly93d3cuZXhhbXBsZS5jb20vCWZpcnN0CXNlY29uZAordHJ1ZQlzdmcJ
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcJdGVzdDcJaHJlZglodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hsaW5rCWZpcnN0CXNlY29uZAorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9hdHRy
aWJ1dGUtY2FzZS1zZW5zaXRpdml0eTIueGh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vYXR0cmlidXRlLWNhc2Utc2Vuc2l0aXZpdHkyLnhodG1sCShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vYXR0cmlidXRlLWNhc2Utc2Vuc2l0aXZpdHkyLnhodG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYxIEBACis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCI+Cis8Ym9keT4KKyAgPHRhYmxlIGlkPSJyZXN1bHRzIiB3aWR0aD0n
MTAwJSc+CisgICAgPHRyPgorICAgICAgPHRoPmNhc2Ugc2Vuc2l0aXZlPzwvdGg+CisgICAgICA8
dGg+dGFnPC90aD4KKyAgICAgIDx0aD5uYW1lc3BhY2U8L3RoPgorICAgICAgPHRoPmlkPC90aD4K
KyAgICAgIDx0aD5hdHRyaWJ1dGU8L3RoPgorICAgICAgPHRoPm5hbWVzcGFjZTwvdGg+CisgICAg
ICA8dGg+Zmlyc3QgdmFsdWU8L3RoPgorICAgICAgPHRoPnNlY29uZCB2YWx1ZTwvdGg+CisgICAg
PC90cj4KKyAgPC90YWJsZT4KKyAgCisgIDwhLS0gRmlyc3QgYSBmZXcgZWxlbWVudHMgY3JlYXRl
ZCBieSB0aGUgcGFyc2VyIC0tPgorICA8ZGl2IGlkPSJwYXJzZXJUZXN0cyIgc3R5bGU9J2Rpc3Bs
YXk6IG5vbmUnPgorICAgIDxwIGlkPSJ0ZXN0MSIgY2FzZT0nZmlyc3QnIENBU0U9J3NlY29uZCc+
PC9wPgorICAgIDxmb29iYXIgaWQ9InRlc3QyIiBjYXNlPSdmaXJzdCcgQ0FTRT0nc2Vjb25kJz48
L2Zvb2Jhcj4KKyAgICA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgaWQ9
InRlc3QzIiBjYXNlPSdmaXJzdCcgQ0FTRT0nc2Vjb25kJz48L3N2Zz4KKyAgPC9kaXY+CisgIAor
ICA8ZGl2IGlkPSJqYXZhc2NyaXB0VGVzdHMiIHN0eWxlPSdkaXNwbGF5OiBub25lJz4KKyAgPC9k
aXY+CisgIAorICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2F0dHItY2FzZS1zZW5zaXRpdml0eS5q
cyI+PC9zY3JpcHQ+CisgIAorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIAor
ICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgCisgICAgcmVzdWx0TG9nKCJQYXJzZXIgVGVzdHM6
IikKKyAgICBjaGVja0F0dHJpYnV0ZShnZXRUZXN0RWxlbWVudCgxKSwgJ2Nhc2UnKTsKKyAgICBj
aGVja0F0dHJpYnV0ZShnZXRUZXN0RWxlbWVudCgyKSwgJ2Nhc2UnKTsKKyAgICBjaGVja0F0dHJp
YnV0ZShnZXRUZXN0RWxlbWVudCgzKSwgJ2Nhc2UnKTsKKyAgICAKKyAgICByZXN1bHRMb2coIkph
dmFzY3JpcHQgVGVzdHM6IikKKyAgICB2YXIgZWxlbWVudCA9IGNyZWF0ZUVsZW1lbnRGb3JDaGVj
ayg0LCAncCcpOworICAgIGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0
dHInKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFjZXRl
c3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJp
YnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycpOwor
ICAgIAorICAgIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNSwgJ2Zvb2JhcicpOwor
ICAgIGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0dHInKTsKKyAgICBj
cmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDov
L3d3dy5leGFtcGxlLmNvbS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVu
dCwgJ2hyZWYnLCAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycpOworICAgIAorICAgIGVs
ZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNiwgJ2JhcmJhcicsICdodHRwOi8vd3d3LmV4
YW1wbGUuY29tLycpOworICAgIGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVz
dGF0dHInKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFj
ZXRlc3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0
dHJpYnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycp
OworICAgIAorICAgIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNywgJ3N2ZycsICdo
dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycpOworICAgIGNyZWF0ZUFuZENoZWNrQXR0cmlidXRl
cyhlbGVtZW50LCAndGVzdGF0dHInKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxl
bWVudCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nKTsKKyAgICBj
cmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0cDovL3d3dy53My5v
cmcvMTk5OS94bGluaycpOworICAgIAorICA8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9hdHRy
aWJ1dGUtY2FzZS1zZW5zaXRpdml0eS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vYXR0cmlidXRlLWNhc2Utc2Vuc2l0aXZpdHktZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vYXR0cmlidXRlLWNhc2Utc2Vuc2l0
aXZpdHktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE5IEBACitjYXNlIHNl
bnNpdGl2ZT8JdGFnCW5hbWVzcGFjZQlpZAlhdHRyaWJ1dGUJbmFtZXNwYWNlCWZpcnN0IHZhbHVl
CXNlY29uZCB2YWx1ZQorUGFyc2VyIFRlc3RzOgorZmFsc2UJcAlodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hodG1sCXRlc3QxCWNhc2UJdW5kZWZpbmVkCWZpcnN0CWZpcnN0CitmYWxzZQlmb29iYXIJ
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbAl0ZXN0MgljYXNlCXVuZGVmaW5lZAlmaXJzdAlm
aXJzdAorZmFsc2UJc3ZnCWh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwJdGVzdDMJY2FzZQl1
bmRlZmluZWQJZmlyc3QJZmlyc3QKK0phdmFzY3JpcHQgVGVzdHM6CitmYWxzZQlwCWh0dHA6Ly93
d3cudzMub3JnLzE5OTkveGh0bWwJdGVzdDQJdGVzdGF0dHIJdW5kZWZpbmVkCXNlY29uZAlzZWNv
bmQKK3RydWUJcAlodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sCXRlc3Q0CW5hbWVzcGFjZXRl
c3QJaHR0cDovL3d3dy5leGFtcGxlLmNvbS8JZmlyc3QJc2Vjb25kCit0cnVlCXAJaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbAl0ZXN0NAlocmVmCWh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxp
bmsJZmlyc3QJc2Vjb25kCitmYWxzZQlmb29iYXIJaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRt
bAl0ZXN0NQl0ZXN0YXR0cgl1bmRlZmluZWQJc2Vjb25kCXNlY29uZAordHJ1ZQlmb29iYXIJaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbAl0ZXN0NQluYW1lc3BhY2V0ZXN0CWh0dHA6Ly93d3cu
ZXhhbXBsZS5jb20vCWZpcnN0CXNlY29uZAordHJ1ZQlmb29iYXIJaHR0cDovL3d3dy53My5vcmcv
MTk5OS94aHRtbAl0ZXN0NQlocmVmCWh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsJZmlyc3QJ
c2Vjb25kCitmYWxzZQliYXJiYXIJaHR0cDovL3d3dy5leGFtcGxlLmNvbS8JdGVzdDYJdGVzdGF0
dHIJdW5kZWZpbmVkCXNlY29uZAlzZWNvbmQKK3RydWUJYmFyYmFyCWh0dHA6Ly93d3cuZXhhbXBs
ZS5jb20vCXRlc3Q2CW5hbWVzcGFjZXRlc3QJaHR0cDovL3d3dy5leGFtcGxlLmNvbS8JZmlyc3QJ
c2Vjb25kCit0cnVlCWJhcmJhcglodHRwOi8vd3d3LmV4YW1wbGUuY29tLwl0ZXN0NglocmVmCWh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsJZmlyc3QJc2Vjb25kCitmYWxzZQlzdmcJaHR0cDov
L3d3dy53My5vcmcvMjAwMC9zdmcJdGVzdDcJdGVzdGF0dHIJdW5kZWZpbmVkCXNlY29uZAlzZWNv
bmQKK3RydWUJc3ZnCWh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnCXRlc3Q3CW5hbWVzcGFjZXRl
c3QJaHR0cDovL3d3dy5leGFtcGxlLmNvbS8JZmlyc3QJc2Vjb25kCit0cnVlCXN2ZwlodHRwOi8v
d3d3LnczLm9yZy8yMDAwL3N2Zwl0ZXN0NwlocmVmCWh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxp
bmsJZmlyc3QJc2Vjb25kCisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1j
YXNlLXNlbnNpdGl2aXR5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20v
YXR0cmlidXRlLWNhc2Utc2Vuc2l0aXZpdHkuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1jYXNlLXNlbnNpdGl2aXR5Lmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNjEgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sIj4KKzxib2R5PgorICA8dGFibGUgaWQ9InJlc3VsdHMiIHdpZHRoPScxMDAlJz4KKyAgICA8
dHI+CisgICAgICA8dGg+Y2FzZSBzZW5zaXRpdmU/PC90aD4KKyAgICAgIDx0aD50YWc8L3RoPgor
ICAgICAgPHRoPm5hbWVzcGFjZTwvdGg+CisgICAgICA8dGg+aWQ8L3RoPgorICAgICAgPHRoPmF0
dHJpYnV0ZTwvdGg+CisgICAgICA8dGg+bmFtZXNwYWNlPC90aD4KKyAgICAgIDx0aD5maXJzdCB2
YWx1ZTwvdGg+CisgICAgICA8dGg+c2Vjb25kIHZhbHVlPC90aD4KKyAgICA8L3RyPgorICA8L3Rh
YmxlPgorICAKKyAgPCEtLSBGaXJzdCBhIGZldyBlbGVtZW50cyBjcmVhdGVkIGJ5IHRoZSBwYXJz
ZXIgLS0+CisgIDxkaXYgaWQ9InBhcnNlclRlc3RzIiBzdHlsZT0nZGlzcGxheTogbm9uZSc+Cisg
ICAgPHAgaWQ9InRlc3QxIiBjYXNlPSdmaXJzdCcgQ0FTRT0nc2Vjb25kJz48L3A+CisgICAgPGZv
b2JhciBpZD0idGVzdDIiIGNhc2U9J2ZpcnN0JyBDQVNFPSdzZWNvbmQnPjwvZm9vYmFyPgorICAg
IDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBpZD0idGVzdDMiIGNhc2U9
J2ZpcnN0JyBDQVNFPSdzZWNvbmQnPjwvc3ZnPgorICA8L2Rpdj4KKyAgCisgIDxkaXYgaWQ9Imph
dmFzY3JpcHRUZXN0cyIgc3R5bGU9J2Rpc3BsYXk6IG5vbmUnPgorICA8L2Rpdj4KKyAgCisgIDxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvYXR0ci1jYXNlLXNlbnNpdGl2aXR5LmpzIj48L3NjcmlwdD4K
KyAgCisgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgCisgICAgaWYgKHdpbmRv
dy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKKyAgCisgICAgcmVzdWx0TG9nKCJQYXJzZXIgVGVzdHM6IikKKyAgICBjaGVja0F0
dHJpYnV0ZShnZXRUZXN0RWxlbWVudCgxKSwgJ2Nhc2UnKTsKKyAgICBjaGVja0F0dHJpYnV0ZShn
ZXRUZXN0RWxlbWVudCgyKSwgJ2Nhc2UnKTsKKyAgICBjaGVja0F0dHJpYnV0ZShnZXRUZXN0RWxl
bWVudCgzKSwgJ2Nhc2UnKTsKKyAgICAKKyAgICByZXN1bHRMb2coIkphdmFzY3JpcHQgVGVzdHM6
IikKKyAgICB2YXIgZWxlbWVudCA9IGNyZWF0ZUVsZW1lbnRGb3JDaGVjayg0LCAncCcpOworICAg
IGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0dHInKTsKKyAgICBjcmVh
dGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDovL3d3
dy5leGFtcGxlLmNvbS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwg
J2hyZWYnLCAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycpOworICAgIAorICAgIGVsZW1l
bnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNSwgJ2Zvb2JhcicpOworICAgIGNyZWF0ZUFuZENo
ZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0dHInKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0
dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNv
bS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0
cDovL3d3dy53My5vcmcvMTk5OS94bGluaycpOworICAgIAorICAgIGVsZW1lbnQgPSBjcmVhdGVF
bGVtZW50Rm9yQ2hlY2soNiwgJ2JhcmJhcicsICdodHRwOi8vd3d3LmV4YW1wbGUuY29tLycpOwor
ICAgIGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVzdGF0dHInKTsKKyAgICBj
cmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFjZXRlc3QnLCAnaHR0cDov
L3d3dy5leGFtcGxlLmNvbS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVu
dCwgJ2hyZWYnLCAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycpOworICAgIAorICAgIGVs
ZW1lbnQgPSBjcmVhdGVFbGVtZW50Rm9yQ2hlY2soNywgJ3N2ZycsICdodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZycpOworICAgIGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCAndGVz
dGF0dHInKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0dHJpYnV0ZXMoZWxlbWVudCwgJ25hbWVzcGFj
ZXRlc3QnLCAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nKTsKKyAgICBjcmVhdGVBbmRDaGVja0F0
dHJpYnV0ZXMoZWxlbWVudCwgJ2hyZWYnLCAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycp
OworICAgIAorICA8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXNvdXJjZXMvYXR0ci1jYXNl
LXNlbnNpdGl2aXR5LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291
cmNlcy9hdHRyLWNhc2Utc2Vuc2l0aXZpdHkuanMJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2RvbS9yZXNvdXJjZXMvYXR0ci1jYXNlLXNlbnNpdGl2aXR5LmpzCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDczIEBACitmdW5jdGlvbiBhZGRDZWxsKHJvdywgY29udGVudHMpIHsKKyAg
dmFyIGNlbGwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiLCJ0ZCIpOworICByb3cuYXBwZW5kQ2hpbGQoY2VsbCk7CisgIGNlbGwuaW5uZXJI
VE1MID0gY29udGVudHM7Cit9CisKK2Z1bmN0aW9uIHJlcG9ydFJlc3VsdCh0YWdOYW1lLCB0YWdO
YW1lc3BhY2UsIGlkLCBhdHRyTmFtZSwgYXR0ck5hbWVzcGFjZSwgc2Vuc2l0aXZlLCBmaXJzdFZh
bHVlLCBzZWNvbmRWYWx1ZSkgeworICB2YXIgbmV3Um93ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiwgJ3RyJyk7CisgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZXN1bHRzIikuYXBwZW5kQ2hpbGQobmV3Um93KTsKKyAgYWRkQ2VsbChu
ZXdSb3csIHNlbnNpdGl2ZSk7CisgIGFkZENlbGwobmV3Um93LCB0YWdOYW1lKTsKKyAgYWRkQ2Vs
bChuZXdSb3csIHRhZ05hbWVzcGFjZSk7CisgIGFkZENlbGwobmV3Um93LCBpZCk7CisgIGFkZENl
bGwobmV3Um93LCBhdHRyTmFtZSk7CisgIGFkZENlbGwobmV3Um93LCBhdHRyTmFtZXNwYWNlKTsK
KyAgYWRkQ2VsbChuZXdSb3csIGZpcnN0VmFsdWUpOworICBhZGRDZWxsKG5ld1Jvdywgc2Vjb25k
VmFsdWUpOworfQorCitmdW5jdGlvbiByZXN1bHRMb2coc3RyaW5nKSB7CisgIHZhciByZXN1bHRM
aW5lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sIiwidHIiKTsKKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdHMiKS5hcHBlbmRD
aGlsZChyZXN1bHRMaW5lKTsgICAgICAKKyAgdmFyIHJlc3VsdFRleHQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCJ0ZCIpOworICByZXN1
bHRMaW5lLmFwcGVuZENoaWxkKHJlc3VsdFRleHQpOworICByZXN1bHRUZXh0LnNldEF0dHJpYnV0
ZSgiY29sc3BhbiIsICc2Jyk7CisgIHJlc3VsdFRleHQuaW5uZXJIVE1MID0gc3RyaW5nOworfQor
CitmdW5jdGlvbiBnZXRUZXN0RWxlbWVudChudW1iZXIpIHsKKyAgcmV0dXJuIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0IiArIG51bWJlcik7Cit9CisKK2Z1bmN0aW9uIGNoZWNrQXR0cmli
dXRlKGVsZW1lbnQsIGF0dHJOYW1lLCBuYW1lc3BhY2UpIHsKKyAgdmFyIGZpcnN0OworICB2YXIg
c2Vjb25kOworICAKKyAgaWYgKHR5cGVvZihuYW1lc3BhY2UpID09ICd1bmRlZmluZWQnKSB7Cisg
ICAgZmlyc3QgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShhdHRyTmFtZSk7CisgICAgc2Vjb25kID0g
ZWxlbWVudC5nZXRBdHRyaWJ1dGUoYXR0ck5hbWUudG9VcHBlckNhc2UoKSk7CisgIH0gZWxzZSB7
CisgICAgZmlyc3QgPSBlbGVtZW50LmdldEF0dHJpYnV0ZU5TKG5hbWVzcGFjZSwgYXR0ck5hbWUp
OworICAgIHNlY29uZCA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlTlMobmFtZXNwYWNlLCBhdHRyTmFt
ZS50b1VwcGVyQ2FzZSgpKTsKKyAgfQorICAKKyAgcmVwb3J0UmVzdWx0KGVsZW1lbnQubG9jYWxO
YW1lLCBlbGVtZW50Lm5hbWVzcGFjZVVSSSwgZWxlbWVudC5pZCwgYXR0ck5hbWUsIG5hbWVzcGFj
ZSwgKGZpcnN0ICE9IHNlY29uZCksIGZpcnN0LCBzZWNvbmQpOworfQorCitmdW5jdGlvbiBjcmVh
dGVBdHRyaWJ1dGVzRm9yQ2hlY2soZWxlbWVudCwgYXR0ck5hbWUsIG5hbWVzcGFjZSkgeworICBp
ZiAodHlwZW9mKG5hbWVzcGFjZSkgPT0gJ3VuZGVmaW5lZCcpIHsKKyAgICBlbGVtZW50LnNldEF0
dHJpYnV0ZShhdHRyTmFtZSwgJ2ZpcnN0Jyk7CisgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0
ck5hbWUudG9VcHBlckNhc2UoKSwgJ3NlY29uZCcpOworICB9IGVsc2UgeworICAgIGVsZW1lbnQu
c2V0QXR0cmlidXRlTlMobmFtZXNwYWNlLCBhdHRyTmFtZSwgJ2ZpcnN0Jyk7CisgICAgZWxlbWVu
dC5zZXRBdHRyaWJ1dGVOUyhuYW1lc3BhY2UsIGF0dHJOYW1lLnRvVXBwZXJDYXNlKCksICdzZWNv
bmQnKTsKKyAgfQorfQorCitmdW5jdGlvbiBjcmVhdGVFbGVtZW50Rm9yQ2hlY2sobnVtYmVyLCBu
YW1lLCBuYW1lc3BhY2UpIHsKKyAgdmFyIG5ld0VsZW1lbnQ7CisgIGlmICh0eXBlb2YobmFtZXNw
YWNlKSA9PSAndW5kZWZpbmVkJykKKyAgICBuZXdFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudChuYW1lKTsKKyAgZWxzZQorICAgIG5ld0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50TlMobmFtZXNwYWNlLCBuYW1lKTsKKyAgCisgIG5ld0VsZW1lbnQuaWQgPSAidGVzdCIgKyBu
dW1iZXI7CisgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJqYXZhc2NyaXB0VGVzdHMiKS5hcHBl
bmRDaGlsZChuZXdFbGVtZW50KTsKKyAgcmV0dXJuIG5ld0VsZW1lbnQ7Cit9CisKK2Z1bmN0aW9u
IGNyZWF0ZUFuZENoZWNrQXR0cmlidXRlcyhlbGVtZW50LCBhdHRyTmFtZSwgbmFtZXNwYWNlKSB7
CisgIGNyZWF0ZUF0dHJpYnV0ZXNGb3JDaGVjayhlbGVtZW50LCBhdHRyTmFtZSwgbmFtZXNwYWNl
KTsKKyAgY2hlY2tBdHRyaWJ1dGUoZWxlbWVudCwgYXR0ck5hbWUsIG5hbWVzcGFjZSk7Cit9Cklu
ZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwko
cmV2aXNpb24gMjE5MzMpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDIzIEBACisyMDA3LTA2LTAxICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggZm9y
OiBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjE4NworCisgICAgICAg
IFRlc3RzOiBmYXN0L2RvbS9hdHRyaWJ1dGUtY2FzZS1zZW5zaXRpdml0eS5odG1sLCBmYXN0L2Rv
bS9hdHRyaWJ1dGUtY2FzZS1zZW5zaXRpdml0eTIueGh0bWwKKworICAgICAgICAqIGRvbS9FbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UpOgor
ICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Z2V0QXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkVsZW1lbnQ6OnNldEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50Ojpy
ZW1vdmVBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Z2V0QXR0cmlidXRl
Tm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpoYXNBdHRyaWJ1dGUpOgorICAgICAg
ICAqIGRvbS9OYW1lZEF0dHJNYXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2hvdWxkSWdub3Jl
QXR0cmlidXRlQ2FzZSk6CisgICAgICAgIChXZWJDb3JlOjpOYW1lZEF0dHJNYXA6OmdldE5hbWVk
SXRlbSk6CisgICAgICAgIChXZWJDb3JlOjpOYW1lZEF0dHJNYXA6OnJlbW92ZU5hbWVkSXRlbSk6
CisKIDIwMDctMDUtMzEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IE5pa28uCkluZGV4OiBXZWJDb3JlL2RvbS9FbGVtZW50LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2RvbS9FbGVtZW50LmNwcAkocmV2aXNpb24gMjE5MzMpCisrKyBXZWJD
b3JlL2RvbS9FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzkzLDE0ICszOTMsMTQgQEAg
aW50IEVsZW1lbnQ6OnNjcm9sbEhlaWdodCgpCiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBp
bmxpbmUgYm9vbCBpbkhUTUxEb2N1bWVudChjb25zdCBFbGVtZW50KiBlKQorc3RhdGljIGlubGlu
ZSBib29sIHNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UoY29uc3QgRWxlbWVudCogZSkKIHsKLSAg
ICByZXR1cm4gZSAmJiBlLT5kb2N1bWVudCgpLT5pc0hUTUxEb2N1bWVudCgpOworICAgIHJldHVy
biBlICYmIGUtPmRvY3VtZW50KCktPmlzSFRNTERvY3VtZW50KCkgJiYgZS0+aXNIVE1MRWxlbWVu
dCgpOwogfQogCiBjb25zdCBBdG9taWNTdHJpbmcmIEVsZW1lbnQ6OmdldEF0dHJpYnV0ZShjb25z
dCBTdHJpbmcmIG5hbWUpIGNvbnN0CiB7Ci0gICAgU3RyaW5nIGxvY2FsTmFtZSA9IGluSFRNTERv
Y3VtZW50KHRoaXMpID8gbmFtZS5sb3dlcigpIDogbmFtZTsKKyAgICBTdHJpbmcgbG9jYWxOYW1l
ID0gc2hvdWxkSWdub3JlQXR0cmlidXRlQ2FzZSh0aGlzKSA/IG5hbWUubG93ZXIoKSA6IG5hbWU7
CiAgICAgaWYgKGxvY2FsTmFtZSA9PSBzdHlsZUF0dHIubG9jYWxOYW1lKCkpCiAgICAgICAgIHVw
ZGF0ZVN0eWxlQXR0cmlidXRlSWZOZWVkZWQoKTsKICAgICAKQEAgLTQyMyw3ICs0MjMsNyBAQCB2
b2lkIEVsZW1lbnQ6OnNldEF0dHJpYnV0ZShjb25zdCBTdHJpbmcmCiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBTdHJpbmcgbG9jYWxOYW1lID0gaW5IVE1MRG9jdW1lbnQodGhpcykgPyBu
YW1lLmxvd2VyKCkgOiBuYW1lOworICAgIFN0cmluZyBsb2NhbE5hbWUgPSBzaG91bGRJZ25vcmVB
dHRyaWJ1dGVDYXNlKHRoaXMpID8gbmFtZS5sb3dlcigpIDogbmFtZTsKIAogICAgIC8vIGFsbG9j
YXRlIGF0dHJpYnV0ZW1hcCBpZiBuZWNlc3NhcnkKICAgICBBdHRyaWJ1dGUqIG9sZCA9IGF0dHJp
YnV0ZXMoZmFsc2UpLT5nZXRBdHRyaWJ1dGVJdGVtKGxvY2FsTmFtZSk7CkBAIC05MDksNyArOTA5
LDcgQEAgdm9pZCBFbGVtZW50OjpzZXRBdHRyaWJ1dGVOUyhjb25zdCBTdHJpbgogCiB2b2lkIEVs
ZW1lbnQ6OnJlbW92ZUF0dHJpYnV0ZShjb25zdCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUm
IGVjKQogewotICAgIFN0cmluZyBsb2NhbE5hbWUgPSBpbkhUTUxEb2N1bWVudCh0aGlzKSA/IG5h
bWUubG93ZXIoKSA6IG5hbWU7CisgICAgU3RyaW5nIGxvY2FsTmFtZSA9IHNob3VsZElnbm9yZUF0
dHJpYnV0ZUNhc2UodGhpcykgPyBuYW1lLmxvd2VyKCkgOiBuYW1lOwogCiAgICAgaWYgKG5hbWVk
QXR0ck1hcCkgewogICAgICAgICBuYW1lZEF0dHJNYXAtPnJlbW92ZU5hbWVkSXRlbShsb2NhbE5h
bWUsIGVjKTsKQEAgLTkyOCw3ICs5MjgsNyBAQCBQYXNzUmVmUHRyPEF0dHI+IEVsZW1lbnQ6Omdl
dEF0dHJpYnV0ZU5vCiAgICAgTmFtZWRBdHRyTWFwKiBhdHRycyA9IGF0dHJpYnV0ZXModHJ1ZSk7
CiAgICAgaWYgKCFhdHRycykKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgU3RyaW5nIGxvY2FsTmFt
ZSA9IGluSFRNTERvY3VtZW50KHRoaXMpID8gbmFtZS5sb3dlcigpIDogbmFtZTsKKyAgICBTdHJp
bmcgbG9jYWxOYW1lID0gc2hvdWxkSWdub3JlQXR0cmlidXRlQ2FzZSh0aGlzKSA/IG5hbWUubG93
ZXIoKSA6IG5hbWU7CiAgICAgcmV0dXJuIHN0YXRpY19wb2ludGVyX2Nhc3Q8QXR0cj4oYXR0cnMt
PmdldE5hbWVkSXRlbShsb2NhbE5hbWUpKTsKIH0KIApAQCAtOTQ1LDcgKzk0NSw3IEBAIGJvb2wg
RWxlbWVudDo6aGFzQXR0cmlidXRlKGNvbnN0IFN0cmluZyYKICAgICBOYW1lZEF0dHJNYXAqIGF0
dHJzID0gYXR0cmlidXRlcyh0cnVlKTsKICAgICBpZiAoIWF0dHJzKQogICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgU3RyaW5nIGxvY2FsTmFtZSA9IGluSFRNTERvY3VtZW50KHRoaXMpID8gbmFt
ZS5sb3dlcigpIDogbmFtZTsKKyAgICBTdHJpbmcgbG9jYWxOYW1lID0gc2hvdWxkSWdub3JlQXR0
cmlidXRlQ2FzZSh0aGlzKSA/IG5hbWUubG93ZXIoKSA6IG5hbWU7CiAgICAgcmV0dXJuIGF0dHJz
LT5nZXRBdHRyaWJ1dGVJdGVtKGxvY2FsTmFtZSk7CiB9CiAKSW5kZXg6IFdlYkNvcmUvZG9tL05h
bWVkQXR0ck1hcC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vTmFtZWRBdHRyTWFwLmNw
cAkocmV2aXNpb24gMjE5MzMpCisrKyBXZWJDb3JlL2RvbS9OYW1lZEF0dHJNYXAuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMyw5ICszMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcg
bmFtZXNwYWNlIEhUTUxOYW1lczsKIAotc3RhdGljIGlubGluZSBib29sIGluSFRNTERvY3VtZW50
KGNvbnN0IEVsZW1lbnQqIGUpCitzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxkSWdub3JlQXR0cmli
dXRlQ2FzZShjb25zdCBFbGVtZW50KiBlKQogewotICAgIHJldHVybiBlICYmIGUtPmRvY3VtZW50
KCktPmlzSFRNTERvY3VtZW50KCk7CisgICAgcmV0dXJuIGUgJiYgZS0+ZG9jdW1lbnQoKS0+aXNI
VE1MRG9jdW1lbnQoKSAmJiBlLT5pc0hUTUxFbGVtZW50KCk7CiB9CiAKIE5hbWVkQXR0ck1hcDo6
TmFtZWRBdHRyTWFwKEVsZW1lbnQgKmUpCkBAIC01Nyw3ICs1Nyw3IEBAIGJvb2wgTmFtZWRBdHRy
TWFwOjppc01hcHBlZEF0dHJpYnV0ZU1hcCgKIAogUGFzc1JlZlB0cjxOb2RlPiBOYW1lZEF0dHJN
YXA6OmdldE5hbWVkSXRlbShjb25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0CiB7Ci0gICAgU3RyaW5n
IGxvY2FsTmFtZSA9IGluSFRNTERvY3VtZW50KGVsZW1lbnQpID8gbmFtZS5sb3dlcigpIDogbmFt
ZTsKKyAgICBTdHJpbmcgbG9jYWxOYW1lID0gc2hvdWxkSWdub3JlQXR0cmlidXRlQ2FzZShlbGVt
ZW50KSA/IG5hbWUubG93ZXIoKSA6IG5hbWU7CiAgICAgQXR0cmlidXRlKiBhID0gZ2V0QXR0cmli
dXRlSXRlbShsb2NhbE5hbWUpOwogICAgIGlmICghYSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC03
Miw3ICs3Miw3IEBAIFBhc3NSZWZQdHI8Tm9kZT4gTmFtZWRBdHRyTWFwOjpnZXROYW1lZEkKIAog
UGFzc1JlZlB0cjxOb2RlPiBOYW1lZEF0dHJNYXA6OnJlbW92ZU5hbWVkSXRlbShjb25zdCBTdHJp
bmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewotICAgIFN0cmluZyBsb2NhbE5hbWUgPSBp
bkhUTUxEb2N1bWVudChlbGVtZW50KSA/IG5hbWUubG93ZXIoKSA6IG5hbWU7CisgICAgU3RyaW5n
IGxvY2FsTmFtZSA9IHNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UoZWxlbWVudCkgPyBuYW1lLmxv
d2VyKCkgOiBuYW1lOwogICAgIEF0dHJpYnV0ZSogYSA9IGdldEF0dHJpYnV0ZUl0ZW0obG9jYWxO
YW1lKTsKICAgICBpZiAoIWEpIHsKICAgICAgICAgZWMgPSBOT1RfRk9VTkRfRVJSOwo=
</data>
<flag name="review"
          id="6124"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>