<?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>37187</bug_id>
          
          <creation_ts>2010-04-06 21:00:57 -0700</creation_ts>
          <short_desc>SVG &lt;use href=&quot;foo&quot;&gt; is interpreted as &lt;use href=&quot;#foo&quot;&gt;</short_desc>
          <delta_ts>2010-05-05 22:20:08 -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>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Hajime Morrita">morrita</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
    
    <cc>jamesr</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>209431</commentid>
    <comment_count>0</comment_count>
      <attachid>52699</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-06 21:00:57 -0700</bug_when>
    <thetext>Created attachment 52699
reproduce - an expected behaviour is not show anything.

in SVG, &lt;use xlink:href=&quot;foo&quot;&gt; refers &lt;defs id=&quot;foo&quot;&gt;. But it shoudn&apos;t.
It should be referenced as &lt;use xlink:href=&quot;#foo&quot;&gt;, but not href=&quot;foo&quot;.

See attachment to reproduce.  

Glancing code, I suspect that almost every internal reference (&quot;fragment identifier&quot;) handling in svg/ would be wrong.
Because SVGURIReference::getTarget() looks broken, which is widely used in SVG.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209459</commentid>
    <comment_count>1</comment_count>
      <attachid>52703</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-06 22:50:30 -0700</bug_when>
    <thetext>Created attachment 52703
patch v0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210876</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-09 13:27:36 -0700</bug_when>
    <thetext>We have an ancient bug about this.  bug 6007.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>210879</commentid>
    <comment_count>3</comment_count>
      <attachid>52703</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-09 13:29:24 -0700</bug_when>
    <thetext>Comment on attachment 52703
patch v0

drive-by nits:
The test case is difficult to read.  Can we make it simpler?

Also, this is not really english:
 63     } else // The url doesn&apos;t have no target internal reference</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211112</commentid>
    <comment_count>4</comment_count>
      <attachid>53033</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-09 23:19:18 -0700</bug_when>
    <thetext>Created attachment 53033
v1; add explanations to testcase, fix comment</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211113</commentid>
    <comment_count>5</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-09 23:30:47 -0700</bug_when>
    <thetext>Eric, thank you for reviewing!

(In reply to comment #3)
&gt; (From update of attachment 52703 [details])
&gt; drive-by nits:
&gt; The test case is difficult to read.  Can we make it simpler?
I hope we could use script-test but SVG DOM doesn&apos;t provide to the way to get linked node.
I add an explanation to the testcase to help understanding what the case does.

&gt; Also, this is not really english:
&gt;  63     } else // The url doesn&apos;t have no target internal reference
Oops. (try to) fix it...

BTW, Bug 6007 looks already be handled inside code
because referring invalid node cause errors. 
I agree we need tests for them, although.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215925</commentid>
    <comment_count>6</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-04-22 09:49:07 -0700</bug_when>
    <thetext>This probably needs to be updated if bug 37986 lands.

Fix looks good though, as Eric reviewed the first round, I&apos;d like him to give final r+ though.

Are you sure this doesn&apos;t affect any other pixel tests btw? (Run run-webkit-tests --tolerance 0 -p svg, with 0% tolerance)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216077</commentid>
    <comment_count>7</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-22 14:17:44 -0700</bug_when>
    <thetext>Nikolas, thank you for reviewing!

(In reply to comment #6)
&gt; This probably needs to be updated if bug 37986 lands.
Wow. A huge change is coming... I hope this patch would land before that.

&gt; Are you sure this doesn&apos;t affect any other pixel tests btw? (Run
&gt; run-webkit-tests --tolerance 0 -p svg, with 0% tolerance)
Yes. The results don&apos;t change even after the patch is applied.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216333</commentid>
    <comment_count>8</comment_count>
      <attachid>53033</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-04-23 01:20:56 -0700</bug_when>
    <thetext>Comment on attachment 53033
v1; add explanations to testcase, fix comment

Okay the patch is simple enough, I will just give r+, so you have a chance to land before the big refactoring sets in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216543</commentid>
    <comment_count>9</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-23 13:40:49 -0700</bug_when>
    <thetext>Committed r58187: &lt;http://trac.webkit.org/changeset/58187&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216580</commentid>
    <comment_count>10</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2010-04-23 15:08:22 -0700</bug_when>
    <thetext>The ChangeLog entry mentions these files:

    * platform/mac/svg/custom/broken-internal-references-expected.checksum: Added. 
    * platform/mac/svg/custom/broken-internal-references-expected.png: Added. 

but it looks like you didn&apos;t actually check them in?  The pixel tests will fail without these results</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216589</commentid>
    <comment_count>11</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-23 15:23:18 -0700</bug_when>
    <thetext>&gt; The ChangeLog entry mentions these files:
&gt; 
&gt;     * platform/mac/svg/custom/broken-internal-references-expected.checksum:
&gt; Added. 
&gt;     * platform/mac/svg/custom/broken-internal-references-expected.png: Added. 
&gt; 
&gt; but it looks like you didn&apos;t actually check them in?  The pixel tests will fail
&gt; without these results

I&apos;m sorry. The checkin missed them. Now I&apos;m preparing them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216597</commentid>
    <comment_count>12</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-04-23 15:32:45 -0700</bug_when>
    <thetext>Committed r58195: &lt;http://trac.webkit.org/changeset/58195&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>52699</attachid>
            <date>2010-04-06 21:00:57 -0700</date>
            <delta_ts>2010-04-06 21:00:57 -0700</delta_ts>
            <desc>reproduce - an expected behaviour is not show anything.</desc>
            <filename>uri.svg</filename>
            <type>image/svg+xml</type>
            <size>463</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJ
QyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iIAogICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGlj
cy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8c3ZnIHdpZHRoPSIxMGNtIiBoZWlnaHQ9IjNjbSIg
dmlld0JveD0iMCAwIDEwMCAzMCIgdmVyc2lvbj0iMS4xIgogICAgIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxp
bmsiPgogIDxkZWZzPgogICAgPHJlY3QgaWQ9Ik15UmVjdCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjEw
Ii8+CiAgPC9kZWZzPgo8IS0tCiAgPHVzZSB4PSIyMCIgeT0iMTAiIHhsaW5rOmhyZWY9IiNNeVJl
Y3QiIC8+CiAgLS0+CiAgPHVzZSB4PSIyMCIgeT0iMTAiIHhsaW5rOmhyZWY9Ik15UmVjdCIgLz4K
PC9zdmc+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52703</attachid>
            <date>2010-04-06 22:50:30 -0700</date>
            <delta_ts>2010-04-09 23:19:12 -0700</delta_ts>
            <desc>patch v0</desc>
            <filename>bug-37187-20100407145028.patch</filename>
            <type>text/plain</type>
            <size>12458</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3OGFhODM1Li5jNGUxN2I4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTAtMDQt
MDYgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM3MTg3CisgICAgICAgIFNWRyA8dXNlIGhyZWY9ImZvbyI+IGlzIGlu
dGVycHJldGVkIGFzIDx1c2UgaHJlZj0iI2ZvbyI+CisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC5jaGVja3N1bTog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIHN2Zy9jdXN0b20vYnJva2VuLWludGVybmFsLXJlZmVyZW5jZXMuc3ZnOiBB
ZGRlZC4KKyAgICAgICAgKiBzdmcvZHluYW1pYy11cGRhdGVzL1NWR1RSZWZFbGVtZW50LWRvbS1o
cmVmLWF0dHItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN2Zy9keW5hbWljLXVwZGF0ZXMvc2Ny
aXB0LXRlc3RzL1NWR1RSZWZFbGVtZW50LWRvbS1ocmVmLWF0dHIuanM6CisgICAgICAgIChleGVj
dXRlVGVzdCk6IFVwZGF0ZWQgdG8gZm9sbG93IHRoaXMgZml4LiBocmVmIHZhbHVlIHNob3VsZCBi
ZSBhbiBVUkwsIG5vdCBhbiBpZC4KKwogMjAxMC0wNC0wNiAgTWFyayBSb3dlICA8bXJvd2VAYXBw
bGUuY29tPgogCiAgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMtZXhwZWN0ZWQuY2hlY2tzdW0gYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC5jaGVja3N1bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iODg1OWVmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMtZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorNGJjOGM4MTZmMjg4
N2FkNTlhMjJjZDdlNTc0MTcyZTMKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwt
cmVmZXJlbmNlcy1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1
c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC5wbmcKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NWRmMTQ5ZjMyYmRjMTQwNDkwMmQxYTIwNzJiYzI2YjIxZTJiZjA0NgpHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgMTA2NzMKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMUIlUWxZ
YnBRPVNaNnZyMlk1Tz1EK0NuZnIpQjEoCnpHQjh2eXdvZFdSeERwYEpfUDxCN1gtbV9KdHp1SWlJ
Q1hEUHdZJCgyYTY1REJ3VFhvaXpiYDFBRmV5JSNALTtTYAp6REprRks7ZHRqflJGfH1UTjRNNF5y
KEZSQk9TdmFIejBNOX5ET3tANTtiYjBrPzchTXVBRlZLYm03aGlEPmQoSiEKelYraUZCP25genhO
d3sldF9zTWxEJTNnZUUqakIrNXkyODxQTV5NfUlFJFR3UVluTyVESnp4S0ZkJSUqXk9gZ1pQCnp6
Ukoke3VfZ0VHVSs/fjtfcGolRGAhKDw5dWdaSz1Kej1JVXg3U0BjMmNsS14rNGg4Z0k9TkBeQEBF
fD4kckBBRAp6dGU/MVRTSEoxRiZvT1FtQDVoOVclWkgyYFIrKGlMd0xMY1NPSlV1KUckU1NUT3lI
KXg8LVc2UlJOclF2bXNyO0oKeipSQWVFPGJgOFhgeCkwfUhATkMrWik0PF8qdnF7cER0QEVzNi1N
cGZqVD8xRVo9WVhjRlRiP3gmZ3E8K1pgeS1iCnpFbmY0fGRGN1g0K1lMWFk0MnJqZ3szPX0/R0hk
NXFuS2g0UnJpJEVJdl8zV1FsKHhiT15CWlM+b1YxTVVYcjVPUwp6JTNVeklfKVI/MTVqfT9NX0Rz
QHA0NSNJcEpFYXordm54SG5uT0VAaXNPQ0E9N2JoJjIjfk5FdHhvLUNRU0p+UlIKej8lR0BPWmZF
M08zN1dSX3I9RVh0dE5OV3E5X0duNnY8bEFzaSNrQGxid2Y0KHI8NERicDB7a1RvO0chMiQqUmVs
CnpVNXMhNG5qfClOX3NRTlQpc25eajx+dGomaGE5X21TJGV+IWkpWUhldiZnKk15dz44cFluRD4h
d31kfG9HZTMlNgp6Sj9afGBNeTA+dlh0VTk+ZUVWcylyWWxeKEprTXJjeDJMYn1faWJ8fVVwPHVj
M3xuTERFYy1GQz95Y0EpcXhWKT4Kej88fVZNS2Y4SWBpREg+SFJ6X2o3X2h1JDQ3aDUlRUp2aVhY
Q3QybUE8ckIzdXt6QkhGIXlvcis+OGhPQ3Qpc1E7CnohXn4+Qy1fP0UjNCV7YFdsVjRRV1Y9XyVT
PENwY3srNWc9M3VlXlY4ZjgwdWFsTW94X2NZJjhCX1d6ayVuM0AqWgp6K2FyQk48TUhXUE8rVk9I
PVB0a1FIMEBlcW9UR25TPGI5RUtkZGN4Q157WSowST4rPyp4OTx7Sj07SkdxVnNtcnIKem58JlZK
ZXlJSmFEWlZLLU9LeitGSWxHbXNwSHdhR2xieU15dUZ4IW9IfmF0USlkYG4ydF5WKyZjWT5aeF9R
R3xjCno8fTJASmI/OylId2FZczxJUXB2SnpQQk9ZcjxaPnozUkNtamxzRW5BQCpCOyltJW9KaD9K
fG1IYDdjJnlfKCM4Iwp6R2tWOWVnKHZHWDR4TFQpQCYze0c7RzJCOCQ0fnR+eW97fSl5ZnhtfCko
aXteNDR5OElBcip7bz9fTWw/PHQ0JXoKel9ePkVRI1l4Vl5ObHdLblZ1cXBRZmVXZ2dOQjdeWGN2
KjkmWmU2Jnt5Wi1Cc1RwSmh8bk9IYWs2ZFcyRDhYWD59CnotIU8xUTdPN2BzZD9XeW8xdUh3aiFz
NmtVK2t3eW5seEd7MjJaaTFzMzdAKWp5OyF9fE1aMz98eFdFNnA/IWQ8Iwp6ST9xNHZlKmZxPkNw
ZH5oanl4a2M8Q3BqWkwzeVQ+YkltaDk+ZGlhTzxONipSPT8xfEd1aV9uIXV9bDl5YG5QS0MKelBy
PCN7UzJIY1l5eFJXZGIzYG9IeFBqRXplSFByUzROcDZhT3gxenszZX1hOT5pQSpGaUlHV0tLdE1z
ZCFveUFwCnp1Qj5xezJnaWlISGxGKzA1a2tCYEF6bTk1YEhBcFVicyZ5fjx3VkBQQ0hJPlZMVG9A
R0hufmF0OWBOTHVwd0QhOQp6S1lMMmUmJDtqQ007eCMwTmpLYSN7YilCck0tPEM0d3ZQSFk+ejsx
M3ZwLSVUSH1CLUdkN2J7d1EwK2c7OFZ+PmQKel9eWFUlemRoVX5qNytAXnxKaiFtWmdZYSQoUXZA
b3B9flJ+O1V5TCRNI2YyaihuXyFoUzgjQT4qbndvaXNRaFU3CnpqSFp2I3s0cldTenpYOGdAXlEz
JjdfQzN5dCo2b1UhKVdfeXdFWn5SZXVqNTNNKGZBWGBmOz49OUlZUnJWQFJYegp6Z1ZGWkVYIX5I
YWVLNldTZlIzdDt3dlJeSk4yQmVkKGV9fTNgdl9ibWpKNkwpK2xUbnVoaTRueV9jMVdBc2U7eDUK
dmpEezhkdW8/fVkoZU40VlltRHxhTXJkRTcoTFFYUit7O351bTUmMEtWbHNIVGBuanhnTkB4TkE8
fFBkIQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFsLXJlZmVyZW5jZXMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjE3OTVkMDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyNyBAQAorS1JlbmRlcmluZ1BhaW50U2VydmVyIHtpZD0iR3JhZDFhIiBbdHlwZT1MSU5F
QVItR1JBRElFTlRdIFtzdG9wcz1bKDAuMDAsIzAwMDBGRiksICgxLjAwLCNGRjAwMDApXV0gW3N0
YXJ0PSgwLDApXSBbZW5kPSgxLDApXX0KK0tSZW5kZXJpbmdQYWludFNlcnZlciB7aWQ9IkdyYWQx
YiIgW3R5cGU9TElORUFSLUdSQURJRU5UXSBbc3RvcHM9W11dIFtzdGFydD0oMCwwKV0gW2VuZD0o
MCwwKV19CitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCww
KSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJTVkdS
b290IHtzdmd9IGF0ICgwLDApIHNpemUgODAweDYwMAorICAgIFJlbmRlclNWR0hpZGRlbkNvbnRh
aW5lciB7ZGVmc30gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAgIFJlbmRlclBhdGgge3JlY3R9IGF0
ICgwLDApIHNpemUgNjB4MTAgW2ZpbGw9e1t0eXBlPVNPTElEXSBbY29sb3I9IzAwMDAwMF19XSBb
ZGF0YT0iTTAuMDAsMC4wMCBMNjAuMDAsMC4wMCBMNjAuMDAsMTAuMDAgTDAuMDAsMTAuMDAgWiJd
CisgICAgICBSZW5kZXJTVkdIaWRkZW5Db250YWluZXIge2xpbmVhckdyYWRpZW50fSBhdCAoMCww
KSBzaXplIDB4MAorICAgICAgICBSZW5kZXJTVkdHcmFkaWVudFN0b3Age3N0b3B9IGF0ICgwLDAp
IHNpemUgMHgwCisgICAgICAgIFJlbmRlclNWR0dyYWRpZW50U3RvcCB7c3RvcH0gYXQgKDAsMCkg
c2l6ZSAweDAKKyAgICAgIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lciB7bGluZWFyR3JhZGllbnR9
IGF0ICgwLDApIHNpemUgMHgwCisgICAgICBSZW5kZXJQYXRoIHtwYXRofSBhdCAoMTk4LDEzKSBz
aXplIDIyMXg5OSBbc3Ryb2tlPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDAwRkZdfV0gW2RhdGE9
Ik0xOTkuMDAsODkuMzAgQzIwNi42MCw2Ni42MCwyMzUuODAsMTMuMjAsMjcwLjAwLDMwLjMwIEMy
ODYuNjAsMzguNjAsMjk4LjkwLDU5LjQwLDMxMC4wMCw3My4zMCBDMzIxLjcwLDg3LjkwLDMzOC42
MCw5OS4wMCwzNTYuMDAsMTAzLjMwIEMzODcuMzAsMTExLjEwLDM5Ni42MCw5MC40MCw0MTguMDAs
NzQuMzAiXQorICAgICAgUmVuZGVyU1ZHVGV4dCB7dGV4dH0gYXQgKDAsMCkgc2l6ZSA2OXgxOCBj
b250YWlucyAxIGNodW5rKHMpCisgICAgICAgIFJlbmRlclNWR0lubGluZVRleHQgeyN0ZXh0fSBh
dCAoMCwtMTQpIHNpemUgNjl4MTgKKyAgICAgICAgICBjaHVuayAxIHRleHQgcnVuIDEgYXQgKDAu
MDAsMC4wMCkgc3RhcnRPZmZzZXQgMCBlbmRPZmZzZXQgMTIgd2lkdGggNjkuMDA6ICJUaGlzIGlz
IHRleHQiCisgICAgUmVuZGVyU1ZHQ29udGFpbmVyIHt1c2V9IGF0ICgwLDApIHNpemUgMHgwCisg
ICAgICBSZW5kZXJTVkdDb250YWluZXIge2d9IGF0ICgwLDApIHNpemUgMHgwCisgICAgUmVuZGVy
UGF0aCB7cmVjdH0gYXQgKDE5LDI5KSBzaXplIDEwMngxMiBbc3Ryb2tlPXtbdHlwZT1TT0xJRF0g
W2NvbG9yPSMwMDAwRkZdIFtzdHJva2Ugd2lkdGg9MS4zM119XSBbZmlsbD17W3R5cGU9TElORUFS
LUdSQURJRU5UXSBbc3RvcHM9W11dIFtzdGFydD0oMCwwKV0gW2VuZD0oMCwwKV19XSBbZGF0YT0i
TTIwLjAwLDMwLjAwIEwxMjAuMDAsMzAuMDAgTDEyMC4wMCw0MC4wMCBMMjAuMDAsNDAuMDAgWiJd
CisgICAgUmVuZGVyU1ZHVGV4dCB7dGV4dH0gYXQgKC0yMTQ3NDgzNjQ4LC0yMTQ3NDgzNjQ4KSBz
aXplIDB4MCBjb250YWlucyAxIGNodW5rKHMpCisgICAgICBSZW5kZXJTVkdUZXh0UGF0aCB7dGV4
dFBhdGh9IGF0ICgwLDApIHNpemUgMHgwCisgICAgICAgIFJlbmRlclNWR0lubGluZVRleHQgeyN0
ZXh0fSBhdCAoLTIxNDc0ODM2NDgsLTIxNDc0ODM2NDgpIHNpemUgMHgwCisgICAgICAgICAgY2h1
bmsgMSB0ZXh0IHJ1biAxIGF0ICgzNDAyODIzNDY2Mzg1Mjg4NTk4MTE3MDQxODM0ODQ1MTY5MjU0
NDAuMDAsMzQwMjgyMzQ2NjM4NTI4ODU5ODExNzA0MTgzNDg0NTE2OTI1NDQwLjAwKSBzdGFydE9m
ZnNldCAwIGVuZE9mZnNldCAxNCB3aWR0aCAyMjYuMDA6ICJUZXh0IG9uIGEgcGF0aCIKKyAgICAg
IFJlbmRlclNWR0lubGluZVRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAorICAgIFJlbmRl
clNWR1RleHQge3RleHR9CisgICAgICBSZW5kZXJTVkdJbmxpbmUge3RyZWZ9IGF0ICgwLDApIHNp
emUgMHgwCisgICAgICBSZW5kZXJTVkdJbmxpbmVUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAw
eDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFsLXJl
ZmVyZW5jZXMuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVm
ZXJlbmNlcy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzMxYjMwNgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMuc3ZnCkBAIC0wLDAgKzEsNDAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgc3Rh
bmRhbG9uZT0ibm8iPz4KKzwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4x
Ly9FTiIgCisgICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5k
dGQiPgorPHN2ZyB2ZXJzaW9uPSIxLjEiCisgICAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8y
MDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgorCisg
IDxkZWZzPgorICAgIDxyZWN0IGlkPSJNeVJlY3QiIHdpZHRoPSI2MCIgaGVpZ2h0PSIxMCIvPgor
CisgICAgPGxpbmVhckdyYWRpZW50IGlkPSJHcmFkMWEiIGdyYWRpZW50VW5pdHM9Im9iamVjdEJv
dW5kaW5nQm94IiB4MT0iMCIgeTE9IjAiIHgyPSIxIiB5Mj0iMCI+CisgICAgICA8c3RvcCBzdG9w
LWNvbG9yPSJibHVlIiAgb2Zmc2V0PSIwIi8+CisgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZWQi
ICBvZmZzZXQ9IjEiLz4KKyAgICA8L2xpbmVhckdyYWRpZW50PgorCisgICAgPCEtLSB0aGlzIGxp
bmsgb24gdGhlIGdyYWRpZW50IHNob3VsZCBiZSBpbnZhbGlkLiAtLT4KKyAgICA8bGluZWFyR3Jh
ZGllbnQgaWQ9IkdyYWQxYiIgeGxpbms6aHJlZj0iR3JhZDFhIi8+CisKKyAgICA8cGF0aCBpZD0i
TXlQYXRoIiBmaWxsPSJub25lIiBzdHJva2U9ImJsdWUiIGQ9Ik0xOTkgODkuMyBDMjA2LjYgNjYu
NiAyMzUuOCAxMy4yIDI3MCAzMC4zIDI4Ni42IDM4LjYgMjk4LjkgNTkuNCAzMTAgNzMuMyAzMjEu
NyA4Ny45IDMzOC42ICAgICAgOTkgMzU2IDEwMy4zIDM4Ny4zIDExMS4xIDM5Ni42IDkwLjQgNDE4
IDc0LjMiLz4KKyAgICA8dGV4dCBpZD0iTXlUZXh0Ij5UaGlzIGlzIHRleHQ8L3RleHQ+CisgIDwv
ZGVmcz4KKworCisgIDwhLS0gc2hvdWxkIG5vdCBiZSBzaG93bi4gLS0+CisgIDx1c2UgeD0iMjAi
IHk9IjEwIiB4bGluazpocmVmPSJNeVJlY3QiIC8+CisKKyAgPCEtLSBzaG91bGQgYmUgZmlsbGVk
IGRlZmF1bHQgc3R5bGUgKGJsYWNrIGZpbGwpLiAtLT4KKyAgPHJlY3QgeD0iMjAiIHk9IjMwIiB3
aWR0aD0iMTAwIiBoZWlnaHQ9IjEwIiBmaWxsPSJ1cmwoI0dyYWQxYikiIHN0eWxlPSJzdHJva2Ut
d2lkdGg6MXB0OyBzdHJva2U6Ymx1ZTsiLz4KKworICA8IS0tIHNob3VsZG4ndCBiZSBzaG93biAt
LT4KKyAgPHRleHQgZm9udC1zaXplPSIzNiIgZm9udC1mYW1pbHk9Ikdlb3JnaWEiIGZpbGw9ImJs
YWNrIiA+CisgICAgPHRleHRQYXRoIGZvbnQtc2l6ZT0iMzYiIHhsaW5rOmhyZWY9Ik15UGF0aCI+
VGV4dCBvbiBhIHBhdGg8L3RleHRQYXRoPiAKKyAgPC90ZXh0PgorCisgIDwhLS0gc2hvdWxkbid0
IGJlIHNob3duIC0tPgorICA8dGV4dCB4PSIyMCIgeT0iMTAwIiBmaWxsPSJibGFjayIgPgorICAg
IDx0cmVmIHhsaW5rOmhyZWY9Ik15VGV4dCIgLz4KKyAgPC90ZXh0PgorCisKKzwvc3ZnPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUUmVmRWxlbWVudC1k
b20taHJlZi1hdHRyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHVFJlZkVsZW1lbnQtZG9tLWhyZWYtYXR0ci1leHBlY3RlZC50eHQKaW5kZXggMWIyMDcx
YS4uMDMwZGU3YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdUUmVmRWxlbWVudC1kb20taHJlZi1hdHRyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9zdmcvZHluYW1pYy11cGRhdGVzL1NWR1RSZWZFbGVtZW50LWRvbS1ocmVmLWF0dHItZXhwZWN0
ZWQudHh0CkBAIC04LDkgKzgsOSBAQCBUZXN0cyBkeW5hbWljIHVwZGF0ZXMgb2YgdGhlICdocmVm
JyBhdHRyaWJ1dGUgb2YgdGhlIFNWR1RSZWZFbGVtZW50IG9iamVjdAogT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgogCiAKLVBBU1MgdHJlZkVsZW1lbnQuZ2V0QXR0cmlidXRlTlMoJ2h0dHA6Ly93
d3cudzMub3JnLzE5OTkveGxpbmsnLCAnaHJlZicpIGlzICJ0ZXN0RmFpbCIKK1BBU1MgdHJlZkVs
ZW1lbnQuZ2V0QXR0cmlidXRlTlMoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnLCAnaHJl
ZicpIGlzICIjdGVzdEZhaWwiCiBQQVNTIHRleHRFbGVtZW50LnRleHRDb250ZW50IGlzICJUZXN0
IGZhaWxlZCIKLVBBU1MgdHJlZkVsZW1lbnQuZ2V0QXR0cmlidXRlTlMoJ2h0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGxpbmsnLCAnaHJlZicpIGlzICJ0ZXN0UGFzcyIKK1BBU1MgdHJlZkVsZW1lbnQu
Z2V0QXR0cmlidXRlTlMoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnLCAnaHJlZicpIGlz
ICIjdGVzdFBhc3MiCiBQQVNTIHRleHRFbGVtZW50LnRleHRDb250ZW50IGlzICJUZXN0IHBhc3Nl
ZCIKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvc3ZnL2R5bmFtaWMtdXBkYXRlcy9zY3JpcHQtdGVzdHMvU1ZHVFJlZkVsZW1lbnQtZG9t
LWhyZWYtYXR0ci5qcyBiL0xheW91dFRlc3RzL3N2Zy9keW5hbWljLXVwZGF0ZXMvc2NyaXB0LXRl
c3RzL1NWR1RSZWZFbGVtZW50LWRvbS1ocmVmLWF0dHIuanMKaW5kZXggZGU0MWRmMS4uNjJjYzU2
YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2R5bmFtaWMtdXBkYXRlcy9zY3JpcHQtdGVz
dHMvU1ZHVFJlZkVsZW1lbnQtZG9tLWhyZWYtYXR0ci5qcworKysgYi9MYXlvdXRUZXN0cy9zdmcv
ZHluYW1pYy11cGRhdGVzL3NjcmlwdC10ZXN0cy9TVkdUUmVmRWxlbWVudC1kb20taHJlZi1hdHRy
LmpzCkBAIC0yMiwxNSArMjIsMTUgQEAgdGV4dEVsZW1lbnQuc2V0QXR0cmlidXRlKCJ5IiwgIjE1
Iik7CiByb290U1ZHRWxlbWVudC5hcHBlbmRDaGlsZCh0ZXh0RWxlbWVudCk7CiAKIHZhciB0cmVm
RWxlbWVudCA9IGNyZWF0ZVNWR0VsZW1lbnQoInRyZWYiKTsKLXRyZWZFbGVtZW50LnNldEF0dHJp
YnV0ZU5TKHhsaW5rTlMsICJ4bGluazpocmVmIiwgInRlc3RGYWlsIik7Cit0cmVmRWxlbWVudC5z
ZXRBdHRyaWJ1dGVOUyh4bGlua05TLCAieGxpbms6aHJlZiIsICIjdGVzdEZhaWwiKTsKIHRleHRF
bGVtZW50LmFwcGVuZENoaWxkKHRyZWZFbGVtZW50KTsgICAgCiAKLXNob3VsZEJlRXF1YWxUb1N0
cmluZygidHJlZkVsZW1lbnQuZ2V0QXR0cmlidXRlTlMoJyIgKyB4bGlua05TICsgIicsICdocmVm
JykiLCAidGVzdEZhaWwiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygidHJlZkVsZW1lbnQuZ2V0
QXR0cmlidXRlTlMoJyIgKyB4bGlua05TICsgIicsICdocmVmJykiLCAiI3Rlc3RGYWlsIik7CiBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInRleHRFbGVtZW50LnRleHRDb250ZW50IiwgIlRlc3QgZmFp
bGVkIik7CiAKIGZ1bmN0aW9uIGV4ZWN1dGVUZXN0KCkgewotICAgIHRyZWZFbGVtZW50LnNldEF0
dHJpYnV0ZU5TKHhsaW5rTlMsICJ4bGluazpocmVmIiwgInRlc3RQYXNzIik7Ci0gICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJ0cmVmRWxlbWVudC5nZXRBdHRyaWJ1dGVOUygnIiArIHhsaW5rTlMg
KyAiJywgJ2hyZWYnKSIsICJ0ZXN0UGFzcyIpOworICAgIHRyZWZFbGVtZW50LnNldEF0dHJpYnV0
ZU5TKHhsaW5rTlMsICJ4bGluazpocmVmIiwgIiN0ZXN0UGFzcyIpOworICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygidHJlZkVsZW1lbnQuZ2V0QXR0cmlidXRlTlMoJyIgKyB4bGlua05TICsgIics
ICdocmVmJykiLCAiI3Rlc3RQYXNzIik7CiAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0ZXh0
RWxlbWVudC50ZXh0Q29udGVudCIsICJUZXN0IHBhc3NlZCIpOwogCiAgICAgY29tcGxldGVUZXN0
KCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IDhkMTdiMGMuLjYwZjFlMzEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTAtMDQtMDYgIE1PUklUQSBI
YWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM3MTg3CisgICAgICAgIFNWRyA8dXNlIGhyZWY9ImZvbyI+IGlzIGludGVycHJldGVkIGFz
IDx1c2UgaHJlZj0iI2ZvbyI+CisKKyAgICAgICAgZ2V0VGFyZ2V0KCkgZGlkIHJldHVybiB1cmwg
cGFyYW1ldGVyIGFzIGlzIGlmIGRvZXNuJ3QgaGF2ZQorICAgICAgICBmcmFnbWVudCBpZGVudGlm
aWVyLiBTbyBmaXhlZCB0byByZXR1cm4gZW1wdHkgc3RyaW5nIGluIHN1Y2ggY2FzZQorICAgICAg
ICBiZWNhdXNlIHdlIG5lZWQgdG8gZGlzdGluZ3Vpc2ggInl5eS5odG1sIiBmcm9tICJ4eHguc3Zn
I3l5eS5odG1sIi4KKyAgICAgICAgCisgICAgICAgIFRlc3Q6IHN2Zy9jdXN0b20vYnJva2VuLWlu
dGVybmFsLXJlZmVyZW5jZXMuc3ZnCisKKyAgICAgICAgKiBzdmcvU1ZHRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTVkdFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCk6CisgICAg
ICAgICogc3ZnL1NWR1VSSVJlZmVyZW5jZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVUklS
ZWZlcmVuY2U6OmdldFRhcmdldCk6CisKIDIwMTAtMDQtMDYgIEtpbnVrbyBZYXN1ZGEgIDxraW51
a29AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEppYW4gTGkuCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcCBiL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQu
Y3BwCmluZGV4IDQxYmJiYTQuLjU5MDA4MzkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3ZnL1NWR0Vs
ZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwCkBAIC0yODEsNyArMjgx
LDcgQEAgdm9pZCBTVkdFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgpCiAgICAgU3R5bGVk
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKTsKICAgICBTVkdEb2N1bWVudEV4dGVuc2lv
bnMqIGV4dGVuc2lvbnMgPSBkb2N1bWVudCgpLT5hY2Nlc3NTVkdFeHRlbnNpb25zKCk7CiAKLSAg
ICBTdHJpbmcgcmVzb3VyY2VJZCA9IFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGdldEF0dHJp
YnV0ZShpZEF0dHJpYnV0ZU5hbWUoKSkpOworICAgIFN0cmluZyByZXNvdXJjZUlkID0gZ2V0QXR0
cmlidXRlKGlkQXR0cmlidXRlTmFtZSgpKTsKICAgICBpZiAoZXh0ZW5zaW9ucy0+aXNQZW5kaW5n
UmVzb3VyY2UocmVzb3VyY2VJZCkpIHsKICAgICAgICAgT3duUHRyPEhhc2hTZXQ8U1ZHU3R5bGVk
RWxlbWVudCo+ID4gY2xpZW50cyhleHRlbnNpb25zLT5yZW1vdmVQZW5kaW5nUmVzb3VyY2UocmVz
b3VyY2VJZCkpOwogICAgICAgICBpZiAoY2xpZW50cy0+aXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9zdmcvU1ZHVVJJUmVmZXJlbmNlLmNwcCBiL1dlYkNvcmUvc3ZnL1NWR1VSSVJlZmVy
ZW5jZS5jcHAKaW5kZXggNWZlNzFhYi4uMmFlNTdlZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdmcv
U1ZHVVJJUmVmZXJlbmNlLmNwcAorKysgYi9XZWJDb3JlL3N2Zy9TVkdVUklSZWZlcmVuY2UuY3Bw
CkBAIC02MCw4ICs2MCw4IEBAIFN0cmluZyBTVkdVUklSZWZlcmVuY2U6OmdldFRhcmdldChjb25z
dCBTdHJpbmcmIHVybCkKICAgICB9IGVsc2UgaWYgKHVybC5maW5kKCcjJykgPiAtMSkgeyAvLyBm
b3JtYXQgaXMgI3RhcmdldAogICAgICAgICB1bnNpZ25lZCBpbnQgc3RhcnQgPSB1cmwuZmluZCgn
IycpICsgMTsKICAgICAgICAgcmV0dXJuIHVybC5zdWJzdHJpbmcoc3RhcnQsIHVybC5sZW5ndGgo
KSAtIHN0YXJ0KTsKLSAgICB9IGVsc2UgLy8gTm9ybWFsIFJlZmVyZW5jZSwgaWUuIHN0eWxlPSJj
b2xvci1wcm9maWxlOmNoYW5nZUNvbG9yIgotICAgICAgICByZXR1cm4gdXJsOworICAgIH0gZWxz
ZSAvLyBUaGUgdXJsIGRvZXNuJ3QgaGF2ZSBubyB0YXJnZXQgaW50ZXJuYWwgcmVmZXJlbmNlCisg
ICAgICAgIHJldHVybiBTdHJpbmcoKTsKIH0KIAogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53033</attachid>
            <date>2010-04-09 23:19:18 -0700</date>
            <delta_ts>2010-05-05 22:20:08 -0700</delta_ts>
            <desc>v1; add explanations to testcase, fix comment</desc>
            <filename>bug-37187-20100410151916.patch</filename>
            <type>text/plain</type>
            <size>10868</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3OGFhODM1Li5jNGUxN2I4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTAtMDQt
MDYgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTM3MTg3CisgICAgICAgIFNWRyA8dXNlIGhyZWY9ImZvbyI+IGlzIGlu
dGVycHJldGVkIGFzIDx1c2UgaHJlZj0iI2ZvbyI+CisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC5jaGVja3N1bTog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIHN2Zy9jdXN0b20vYnJva2VuLWludGVybmFsLXJlZmVyZW5jZXMuc3ZnOiBB
ZGRlZC4KKyAgICAgICAgKiBzdmcvZHluYW1pYy11cGRhdGVzL1NWR1RSZWZFbGVtZW50LWRvbS1o
cmVmLWF0dHItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN2Zy9keW5hbWljLXVwZGF0ZXMvc2Ny
aXB0LXRlc3RzL1NWR1RSZWZFbGVtZW50LWRvbS1ocmVmLWF0dHIuanM6CisgICAgICAgIChleGVj
dXRlVGVzdCk6IFVwZGF0ZWQgdG8gZm9sbG93IHRoaXMgZml4LiBocmVmIHZhbHVlIHNob3VsZCBi
ZSBhbiBVUkwsIG5vdCBhbiBpZC4KKwogMjAxMC0wNC0wNiAgTWFyayBSb3dlICA8bXJvd2VAYXBw
bGUuY29tPgogCiAgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vYnJva2VuLWludGVybmFs
LXJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9j
dXN0b20vYnJva2VuLWludGVybmFsLXJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2ZmU3NGEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNl
cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNyBAQAorS1JlbmRlcmluZ1BhaW50U2VydmVyIHtp
ZD0iZ3JhZC10aGF0LWlzLW5ldmVyLXJlZmVycmVkIiBbdHlwZT1MSU5FQVItR1JBRElFTlRdIFtz
dG9wcz1bKDAuMDAsIzAwMDBGRiksICgxLjAwLCNGRjAwMDApXV0gW3N0YXJ0PSgwLDApXSBbZW5k
PSgxLDApXX0KK0tSZW5kZXJpbmdQYWludFNlcnZlciB7aWQ9ImdyYWQtd2l0aC1pbnZhbGlkLWhy
ZWYiIFt0eXBlPUxJTkVBUi1HUkFESUVOVF0gW3N0b3BzPVtdXSBbc3RhcnQ9KDAsMCldIFtlbmQ9
KDAsMCldfQorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAs
MCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyU1ZH
Um9vdCB7c3ZnfSBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgICBSZW5kZXJTVkdIaWRkZW5Db250
YWluZXIge2RlZnN9IGF0ICgwLDApIHNpemUgMHgwCisgICAgICBSZW5kZXJQYXRoIHtyZWN0fSBh
dCAoMCwwKSBzaXplIDYweDEwIFtmaWxsPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDAwMDBdfV0g
W2RhdGE9Ik0wLjAwLDAuMDAgTDYwLjAwLDAuMDAgTDYwLjAwLDEwLjAwIEwwLjAwLDEwLjAwIFoi
XQorICAgICAgUmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyIHtsaW5lYXJHcmFkaWVudH0gYXQgKDAs
MCkgc2l6ZSAweDAKKyAgICAgICAgUmVuZGVyU1ZHR3JhZGllbnRTdG9wIHtzdG9wfSBhdCAoMCww
KSBzaXplIDB4MAorICAgICAgICBSZW5kZXJTVkdHcmFkaWVudFN0b3Age3N0b3B9IGF0ICgwLDAp
IHNpemUgMHgwCisgICAgICBSZW5kZXJQYXRoIHtwYXRofSBhdCAoMTk4LDEzKSBzaXplIDIyMXg5
OSBbc3Ryb2tlPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDAwRkZdfV0gW2RhdGE9Ik0xOTkuMDAs
ODkuMzAgQzIwNi42MCw2Ni42MCwyMzUuODAsMTMuMjAsMjcwLjAwLDMwLjMwIEMyODYuNjAsMzgu
NjAsMjk4LjkwLDU5LjQwLDMxMC4wMCw3My4zMCBDMzIxLjcwLDg3LjkwLDMzOC42MCw5OS4wMCwz
NTYuMDAsMTAzLjMwIEMzODcuMzAsMTExLjEwLDM5Ni42MCw5MC40MCw0MTguMDAsNzQuMzAiXQor
ICAgICAgUmVuZGVyU1ZHVGV4dCB7dGV4dH0gYXQgKDAsMCkgc2l6ZSAxMzR4MTggY29udGFpbnMg
MSBjaHVuayhzKQorICAgICAgICBSZW5kZXJTVkdJbmxpbmVUZXh0IHsjdGV4dH0gYXQgKDAsLTE0
KSBzaXplIDEzNHgxOAorICAgICAgICAgIGNodW5rIDEgdGV4dCBydW4gMSBhdCAoMC4wMCwwLjAw
KSBzdGFydE9mZnNldCAwIGVuZE9mZnNldCAxOSB3aWR0aCAxMzQuMDA6ICJTaG91ZCBub3QgYmUg
c2hvd24uIgorICAgICAgUmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyIHtsaW5lYXJHcmFkaWVudH0g
YXQgKDAsMCkgc2l6ZSAweDAKKyAgICBSZW5kZXJTVkdDb250YWluZXIge3VzZX0gYXQgKDAsMCkg
c2l6ZSAweDAKKyAgICAgIFJlbmRlclNWR0NvbnRhaW5lciB7Z30gYXQgKDAsMCkgc2l6ZSAweDAK
KyAgICBSZW5kZXJQYXRoIHtyZWN0fSBhdCAoMTksOSkgc2l6ZSAxMDJ4MTAyIFtzdHJva2U9e1t0
eXBlPVNPTElEXSBbY29sb3I9IzAwMDBGRl0gW3N0cm9rZSB3aWR0aD0xLjMzXX1dIFtmaWxsPXtb
dHlwZT1MSU5FQVItR1JBRElFTlRdIFtzdG9wcz1bXV0gW3N0YXJ0PSgwLDApXSBbZW5kPSgwLDAp
XX1dIFtkYXRhPSJNMjAuMDAsMTAuMDAgTDEyMC4wMCwxMC4wMCBMMTIwLjAwLDExMC4wMCBMMjAu
MDAsMTEwLjAwIFoiXQorICAgIFJlbmRlclNWR1RleHQge3RleHR9IGF0ICgtMjE0NzQ4MzY0OCwt
MjE0NzQ4MzY0OCkgc2l6ZSAweDAgY29udGFpbnMgMSBjaHVuayhzKQorICAgICAgUmVuZGVyU1ZH
VGV4dFBhdGgge3RleHRQYXRofSBhdCAoMCwwKSBzaXplIDB4MAorICAgICAgICBSZW5kZXJTVkdJ
bmxpbmVUZXh0IHsjdGV4dH0gYXQgKC0yMTQ3NDgzNjQ4LC0yMTQ3NDgzNjQ4KSBzaXplIDB4MAor
ICAgICAgICAgIGNodW5rIDEgdGV4dCBydW4gMSBhdCAoMzQwMjgyMzQ2NjM4NTI4ODU5ODExNzA0
MTgzNDg0NTE2OTI1NDQwLjAwLDM0MDI4MjM0NjYzODUyODg1OTgxMTcwNDE4MzQ4NDUxNjkyNTQ0
MC4wMCkgc3RhcnRPZmZzZXQgMCBlbmRPZmZzZXQgMTggd2lkdGggMzIyLjAwOiAiU2hvdWQgbm90
IGJlIHNob3duIgorICAgICAgUmVuZGVyU1ZHSW5saW5lVGV4dCB7I3RleHR9IGF0ICgwLDApIHNp
emUgMHgwCisgICAgUmVuZGVyU1ZHVGV4dCB7dGV4dH0KKyAgICAgIFJlbmRlclNWR0lubGluZSB7
dHJlZn0gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAgIFJlbmRlclNWR0lubGluZVRleHQgeyN0ZXh0
fSBhdCAoMCwwKSBzaXplIDB4MApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9i
cm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2Jy
b2tlbi1pbnRlcm5hbC1yZWZlcmVuY2VzLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi5kMTU4ZWM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy5zdmcKQEAgLTAsMCArMSw1MiBAQAorPD94bWwg
dmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PgorPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0v
L1czQy8vRFREIFNWRyAxLjEvL0VOIiAKKyAgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NW
Ry8xLjEvRFREL3N2ZzExLmR0ZCI+Cis8c3ZnIHZlcnNpb249IjEuMSIKKyAgICAgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcv
MTk5OS94bGluayI+CisKKyAgPCEtLSAKKyAgICBQQVNTIGlmIHNpbmdsZSB3aGl0ZSBzcXVhcmUg
d2l0aCBhIGJsdWUgYm9yZGVyIGlzIHNob3duLgorICAgIFRoaXMgdGVzdCBlbnN1cmVzIHRoYXQg
aW52YWxpZCByZWZlcmVuY2VzIGRvIE5PVCByZWFjaCB0aGVpciBiYWRseS1zcGVjaWZpZWQgdGFy
Z2V0IG5vZGUuCisgICAgU28gdGhlIGV4cGVjdGVkIGltYWdlIGlzIG5vdCBjbGVhciB3aGF0IGl0
IGRvZXMuCisgICAgLS0+CisKKyAgPGRlZnM+CisgICAgPCEtLQorICAgICAgRGVmaW5lcyB0YXJn
ZXQgbm9kZSAgdGhhdCBpcyBuZXZlciByZWFjaGVkIGJ5IGFueSByZWZlcnJlciAKKyAgICAgIC0t
PgorICAgIDxyZWN0IGlkPSJzaGFwZS10aGF0LWlzLW5ldmVyLXJlZmVycmVkIiB3aWR0aD0iNjAi
IGhlaWdodD0iMTAiLz4KKworICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iZ3JhZC10aGF0LWlzLW5l
dmVyLXJlZmVycmVkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAiIHkx
PSIwIiB4Mj0iMSIgeTI9IjAiPgorICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iYmx1ZSIgIG9mZnNl
dD0iMCIvPgorICAgICAgPHN0b3Agc3RvcC1jb2xvcj0icmVkIiAgb2Zmc2V0PSIxIi8+CisgICAg
PC9saW5lYXJHcmFkaWVudD4KKworICAgIDxwYXRoIGlkPSJwYXRoLXRoYXQtaXMtbmV2ZXItcmVm
ZXJyZWQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmx1ZSIgZD0iTTE5OSA4OS4zIEMyMDYuNiA2Ni42
IDIzNS44IDEzLjIgMjcwIDMwLjMgMjg2LjYgMzguNiAyOTguOSA1OS40IDMxMCA3My4zIDMyMS43
IDg3LjkgMzM4LjYgICAgICA5OSAzNTYgMTAzLjMgMzg3LjMgMTExLjEgMzk2LjYgOTAuNCA0MTgg
NzQuMyIvPgorCisgICAgPHRleHQgaWQ9InRleHQtdGhhdC1pcy1uZXZlci1yZWZlcnJlZCI+U2hv
dWQgbm90IGJlIHNob3duLjwvdGV4dD4KKworICAgIDwhLS0gUmVmZXJyaW5nIGdyYWRpZW50IHdp
dGggd3JvbmcgZm9ybWF0OyBBIHZhbGlkIGhyZWYgdmFsdWUgd2hvdWxkIGJlICIjZ3JhZC10aGF0
LWlzLW5ldmVyLXJlZmVycmVkIi4gIC0tPgorICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iZ3JhZC13
aXRoLWludmFsaWQtaHJlZiIgeGxpbms6aHJlZj0iZ3JhZC10aGF0LWlzLW5ldmVyLXJlZmVycmVk
Ii8+CisgIDwvZGVmcz4KKworICA8IS0tCisgICAgVHJpZXMgdG8gcmVmZXJyaW5nIGRlZmluZWQg
bm9kZXMgdXNpbmcgVVJJcyB3aXRoIHdyb25nIGZvcm1hdC4gKFRoZXkgbGFjayAiIyIgZm9yIGxv
Y2F0aW5nIGludGVybmFsIElEcykKKyAgICAtLT4KKworICA8IS0tIFJlZmVycmluZyBhIHNoYXBl
IHdpdGggd3JvbmcgZm9ybWF0OyBBIHZhbGlkIGhyZWYgdmFsdWUgd291bGQgYmUgIiNzaGFwZS10
aGF0LWlzLW5ldmVyLXJlZmVycmVkIi4gLS0+CisgIDx1c2UgeD0iMjAiIHk9IjEwIiBpZD0idGFy
Z2V0IiB4bGluazpocmVmPSJzaGFwZS10aGF0LWlzLW5ldmVyLXJlZmVycmVkIiAvPgorCisgIDwh
LS0gUmVmZXJyaW5nIGEgYmFkIGdyYWRpZW50IHRoYXQgc2hvdWxkIHJlc3VsdCBubyBmaWxsIChh
bmQgYmx1ZSBib3JkZXIpLiAtLT4KKyAgPHJlY3QgeD0iMjAiIHk9IjEwIiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjEwMCIgZmlsbD0idXJsKCNncmFkLXdpdGgtaW52YWxpZC1ocmVmKSIgc3R5bGU9InN0
cm9rZS13aWR0aDoxcHQ7IHN0cm9rZTpibHVlOyIvPgorCisgIDx0ZXh0IGZvbnQtc2l6ZT0iMzYi
IGZvbnQtZmFtaWx5PSJHZW9yZ2lhIiBmaWxsPSJibGFjayIgPgorICAgIDwhLS0gUmVmZXJyaW5n
IGEgcGF0aCB3aXRoIHdyb25nIGZvcm1hdDsgQSB2YWxpZCBocmVmIHNob3VsZCBiZSAiI3BhdGgt
dGhhdC1pcy1uZXZlci1yZWZlcnJlZCIgIC0tPgorICAgIDx0ZXh0UGF0aCBmb250LXNpemU9IjM2
IiB4bGluazpocmVmPSJwYXRoLXRoYXQtaXMtbmV2ZXItcmVmZXJyZWQiPlNob3VkIG5vdCBiZSBz
aG93bjwvdGV4dFBhdGg+IAorICA8L3RleHQ+CisKKyAgPHRleHQgeD0iMjAiIHk9IjEwMCIgZmls
bD0iYmxhY2siID4KKyAgICA8IS0tIFJlZmVycmluZyBhIHRleHQgaW4gd3JvbmcgZm9ybWF0OyBB
IHZhbGlkIGhyZWYgc2hvdWxkIGJlICIjdGV4dC10aGF0LWlzLW5ldmVyLXJlZmVycmVkIiAtLT4K
KyAgICA8dHJlZiB4bGluazpocmVmPSJ0ZXh0LXRoYXQtaXMtbmV2ZXItcmVmZXJyZWQiIC8+Cisg
IDwvdGV4dD4KKworPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZHluYW1pYy11
cGRhdGVzL1NWR1RSZWZFbGVtZW50LWRvbS1ocmVmLWF0dHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUUmVmRWxlbWVudC1kb20taHJlZi1hdHRyLWV4
cGVjdGVkLnR4dAppbmRleCAxYjIwNzFhLi4wMzBkZTdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9zdmcvZHluYW1pYy11cGRhdGVzL1NWR1RSZWZFbGVtZW50LWRvbS1ocmVmLWF0dHItZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVFJlZkVsZW1l
bnQtZG9tLWhyZWYtYXR0ci1leHBlY3RlZC50eHQKQEAgLTgsOSArOCw5IEBAIFRlc3RzIGR5bmFt
aWMgdXBkYXRlcyBvZiB0aGUgJ2hyZWYnIGF0dHJpYnV0ZSBvZiB0aGUgU1ZHVFJlZkVsZW1lbnQg
b2JqZWN0CiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotUEFTUyB0cmVmRWxlbWVudC5n
ZXRBdHRyaWJ1dGVOUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycsICdocmVmJykgaXMg
InRlc3RGYWlsIgorUEFTUyB0cmVmRWxlbWVudC5nZXRBdHRyaWJ1dGVOUygnaHR0cDovL3d3dy53
My5vcmcvMTk5OS94bGluaycsICdocmVmJykgaXMgIiN0ZXN0RmFpbCIKIFBBU1MgdGV4dEVsZW1l
bnQudGV4dENvbnRlbnQgaXMgIlRlc3QgZmFpbGVkIgotUEFTUyB0cmVmRWxlbWVudC5nZXRBdHRy
aWJ1dGVOUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycsICdocmVmJykgaXMgInRlc3RQ
YXNzIgorUEFTUyB0cmVmRWxlbWVudC5nZXRBdHRyaWJ1dGVOUygnaHR0cDovL3d3dy53My5vcmcv
MTk5OS94bGluaycsICdocmVmJykgaXMgIiN0ZXN0UGFzcyIKIFBBU1MgdGV4dEVsZW1lbnQudGV4
dENvbnRlbnQgaXMgIlRlc3QgcGFzc2VkIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZHluYW1pYy11cGRhdGVzL3NjcmlwdC10
ZXN0cy9TVkdUUmVmRWxlbWVudC1kb20taHJlZi1hdHRyLmpzIGIvTGF5b3V0VGVzdHMvc3ZnL2R5
bmFtaWMtdXBkYXRlcy9zY3JpcHQtdGVzdHMvU1ZHVFJlZkVsZW1lbnQtZG9tLWhyZWYtYXR0ci5q
cwppbmRleCBkZTQxZGYxLi42MmNjNTZiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdmcvZHlu
YW1pYy11cGRhdGVzL3NjcmlwdC10ZXN0cy9TVkdUUmVmRWxlbWVudC1kb20taHJlZi1hdHRyLmpz
CisrKyBiL0xheW91dFRlc3RzL3N2Zy9keW5hbWljLXVwZGF0ZXMvc2NyaXB0LXRlc3RzL1NWR1RS
ZWZFbGVtZW50LWRvbS1ocmVmLWF0dHIuanMKQEAgLTIyLDE1ICsyMiwxNSBAQCB0ZXh0RWxlbWVu
dC5zZXRBdHRyaWJ1dGUoInkiLCAiMTUiKTsKIHJvb3RTVkdFbGVtZW50LmFwcGVuZENoaWxkKHRl
eHRFbGVtZW50KTsKIAogdmFyIHRyZWZFbGVtZW50ID0gY3JlYXRlU1ZHRWxlbWVudCgidHJlZiIp
OwotdHJlZkVsZW1lbnQuc2V0QXR0cmlidXRlTlMoeGxpbmtOUywgInhsaW5rOmhyZWYiLCAidGVz
dEZhaWwiKTsKK3RyZWZFbGVtZW50LnNldEF0dHJpYnV0ZU5TKHhsaW5rTlMsICJ4bGluazpocmVm
IiwgIiN0ZXN0RmFpbCIpOwogdGV4dEVsZW1lbnQuYXBwZW5kQ2hpbGQodHJlZkVsZW1lbnQpOyAg
ICAKIAotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0cmVmRWxlbWVudC5nZXRBdHRyaWJ1dGVOUygn
IiArIHhsaW5rTlMgKyAiJywgJ2hyZWYnKSIsICJ0ZXN0RmFpbCIpOworc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJ0cmVmRWxlbWVudC5nZXRBdHRyaWJ1dGVOUygnIiArIHhsaW5rTlMgKyAiJywgJ2hy
ZWYnKSIsICIjdGVzdEZhaWwiKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGV4dEVsZW1lbnQu
dGV4dENvbnRlbnQiLCAiVGVzdCBmYWlsZWQiKTsKIAogZnVuY3Rpb24gZXhlY3V0ZVRlc3QoKSB7
Ci0gICAgdHJlZkVsZW1lbnQuc2V0QXR0cmlidXRlTlMoeGxpbmtOUywgInhsaW5rOmhyZWYiLCAi
dGVzdFBhc3MiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInRyZWZFbGVtZW50LmdldEF0
dHJpYnV0ZU5TKCciICsgeGxpbmtOUyArICInLCAnaHJlZicpIiwgInRlc3RQYXNzIik7CisgICAg
dHJlZkVsZW1lbnQuc2V0QXR0cmlidXRlTlMoeGxpbmtOUywgInhsaW5rOmhyZWYiLCAiI3Rlc3RQ
YXNzIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0cmVmRWxlbWVudC5nZXRBdHRyaWJ1
dGVOUygnIiArIHhsaW5rTlMgKyAiJywgJ2hyZWYnKSIsICIjdGVzdFBhc3MiKTsKICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInRleHRFbGVtZW50LnRleHRDb250ZW50IiwgIlRlc3QgcGFzc2Vk
Iik7CiAKICAgICBjb21wbGV0ZVRlc3QoKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGQxN2IwYy4uNjBmMWUzMSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBA
QAorMjAxMC0wNC0wNiAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzcxODcKKyAgICAgICAgU1ZHIDx1c2UgaHJlZj0i
Zm9vIj4gaXMgaW50ZXJwcmV0ZWQgYXMgPHVzZSBocmVmPSIjZm9vIj4KKworICAgICAgICBnZXRU
YXJnZXQoKSBkaWQgcmV0dXJuIHVybCBwYXJhbWV0ZXIgYXMgaXMgaWYgZG9lc24ndCBoYXZlCisg
ICAgICAgIGZyYWdtZW50IGlkZW50aWZpZXIuIFNvIGZpeGVkIHRvIHJldHVybiBlbXB0eSBzdHJp
bmcgaW4gc3VjaCBjYXNlCisgICAgICAgIGJlY2F1c2Ugd2UgbmVlZCB0byBkaXN0aW5ndWlzaCAi
eXl5Lmh0bWwiIGZyb20gInh4eC5zdmcjeXl5Lmh0bWwiLgorICAgICAgICAKKyAgICAgICAgVGVz
dDogc3ZnL2N1c3RvbS9icm9rZW4taW50ZXJuYWwtcmVmZXJlbmNlcy5zdmcKKworICAgICAgICAq
IHN2Zy9TVkdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0VsZW1lbnQ6Omluc2Vy
dGVkSW50b0RvY3VtZW50KToKKyAgICAgICAgKiBzdmcvU1ZHVVJJUmVmZXJlbmNlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KToKKwogMjAxMC0wNC0w
NiAgS2ludWtvIFlhc3VkYSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgSmlhbiBMaS4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwIGIv
V2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAKaW5kZXggNDFiYmJhNC4uNTkwMDgzOSAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9zdmcvU1ZHRWxl
bWVudC5jcHAKQEAgLTI4MSw3ICsyODEsNyBAQCB2b2lkIFNWR0VsZW1lbnQ6Omluc2VydGVkSW50
b0RvY3VtZW50KCkKICAgICBTdHlsZWRFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgpOwog
ICAgIFNWR0RvY3VtZW50RXh0ZW5zaW9ucyogZXh0ZW5zaW9ucyA9IGRvY3VtZW50KCktPmFjY2Vz
c1NWR0V4dGVuc2lvbnMoKTsKIAotICAgIFN0cmluZyByZXNvdXJjZUlkID0gU1ZHVVJJUmVmZXJl
bmNlOjpnZXRUYXJnZXQoZ2V0QXR0cmlidXRlKGlkQXR0cmlidXRlTmFtZSgpKSk7CisgICAgU3Ry
aW5nIHJlc291cmNlSWQgPSBnZXRBdHRyaWJ1dGUoaWRBdHRyaWJ1dGVOYW1lKCkpOwogICAgIGlm
IChleHRlbnNpb25zLT5pc1BlbmRpbmdSZXNvdXJjZShyZXNvdXJjZUlkKSkgewogICAgICAgICBP
d25QdHI8SGFzaFNldDxTVkdTdHlsZWRFbGVtZW50Kj4gPiBjbGllbnRzKGV4dGVuc2lvbnMtPnJl
bW92ZVBlbmRpbmdSZXNvdXJjZShyZXNvdXJjZUlkKSk7CiAgICAgICAgIGlmIChjbGllbnRzLT5p
c0VtcHR5KCkpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3N2Zy9TVkdVUklSZWZlcmVuY2UuY3BwIGIv
V2ViQ29yZS9zdmcvU1ZHVVJJUmVmZXJlbmNlLmNwcAppbmRleCA1ZmU3MWFiLi41ZGJkZmI4IDEw
MDY0NAotLS0gYS9XZWJDb3JlL3N2Zy9TVkdVUklSZWZlcmVuY2UuY3BwCisrKyBiL1dlYkNvcmUv
c3ZnL1NWR1VSSVJlZmVyZW5jZS5jcHAKQEAgLTYwLDggKzYwLDggQEAgU3RyaW5nIFNWR1VSSVJl
ZmVyZW5jZTo6Z2V0VGFyZ2V0KGNvbnN0IFN0cmluZyYgdXJsKQogICAgIH0gZWxzZSBpZiAodXJs
LmZpbmQoJyMnKSA+IC0xKSB7IC8vIGZvcm1hdCBpcyAjdGFyZ2V0CiAgICAgICAgIHVuc2lnbmVk
IGludCBzdGFydCA9IHVybC5maW5kKCcjJykgKyAxOwogICAgICAgICByZXR1cm4gdXJsLnN1YnN0
cmluZyhzdGFydCwgdXJsLmxlbmd0aCgpIC0gc3RhcnQpOwotICAgIH0gZWxzZSAvLyBOb3JtYWwg
UmVmZXJlbmNlLCBpZS4gc3R5bGU9ImNvbG9yLXByb2ZpbGU6Y2hhbmdlQ29sb3IiCi0gICAgICAg
IHJldHVybiB1cmw7CisgICAgfSBlbHNlIC8vIFRoZSB1cmwgZG9lc24ndCBoYXZlIGFueSB0YXJn
ZXQuCisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKIH0KIAogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>