<?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>30107</bug_id>
          
          <creation_ts>2009-10-05 21:41:40 -0700</creation_ts>
          <short_desc>[Mac] dropEffect is incorrect when effectAllowed = &quot;none&quot;</short_desc>
          <delta_ts>2009-10-06 12:15:00 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</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>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>aroben</cc>
    
    <cc>eric</cc>
    
    <cc>jens</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>152570</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2009-10-05 21:41:40 -0700</bug_when>
    <thetext>The Mac build of WebKit does not comply with the HTML 5 specification for drag-and-drop with respect to the case when effectAllowed == &quot;none&quot; (*).

Currently, the resulting drop effect in the Mac build is determined by the followings mapping when effectAllowed == &quot;none&quot;:


dropEffect:		Actual drop effect:	Expected drop effect:
&quot;none&quot;     -----------&gt; &quot;none&quot;			&quot;none&quot;
&quot;copy&quot;     -----------&gt; &quot;copy&quot;			&quot;none&quot;
&quot;move&quot;     -----------&gt; &quot;move&quot;			&quot;none&quot;
&quot;link&quot;     -----------&gt; &quot;none&quot;			&quot;none&quot;
&quot;dummy&quot;    -----------&gt; &quot;none&quot;			&quot;none&quot;


As per section 7.9.2 of the HTML 5 specification &lt;http://dev.w3.org/html5/spec/Overview.html#the-dragevent-and-datatransfer-interfaces&gt;, regardless of the specified dropEffect, when effectAllowed == &quot;none&quot; the resulting dropEffect should be &quot;none&quot;.

(*) It also does not comply with the spec. when effectAllowed == &quot;uninitialized&quot;, but we should resolve this in a separate bug (after fixing bug #24731) so that we can bring HTML 5 compliance to both Mac and Windows builds in a platform-independent way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152571</commentid>
    <comment_count>1</comment_count>
      <attachid>40685</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2009-10-05 21:44:22 -0700</bug_when>
    <thetext>Created attachment 40685
Patch

No test case is included in this patch because it uses the same test case as in the patch for bug #24731.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152577</commentid>
    <comment_count>2</comment_count>
      <attachid>40686</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2009-10-05 21:56:49 -0700</bug_when>
    <thetext>Created attachment 40686
Test case

Here is a test case based off of the test case in the patch for bug #24731. Compare the results under Safari and Firefox.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152761</commentid>
    <comment_count>3</comment_count>
      <attachid>40685</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-06 09:48:59 -0700</bug_when>
    <thetext>Comment on attachment 40685
Patch

You should still mention which test case this fixes.  If bug 24731 hasn&apos;t yet landed, you might consider landing the test with this change and skipping it on windows for now until bug 24731 can be fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152762</commentid>
    <comment_count>4</comment_count>
      <attachid>40685</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-06 09:49:13 -0700</bug_when>
    <thetext>Comment on attachment 40685
Patch

cq- due to my comment above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152782</commentid>
    <comment_count>5</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2009-10-06 10:33:49 -0700</bug_when>
    <thetext>Before I&apos;ll land this patch, I&apos;ll add this test case to it and modify the file LayoutTest/platform/win/Skipped to skip this test.

(In reply to comment #3)
&gt; (From update of attachment 40685 [details])
&gt; You should still mention which test case this fixes.  If bug 24731 hasn&apos;t yet
&gt; landed, you might consider landing the test with this change and skipping it on
&gt; windows for now until bug 24731 can be fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152816</commentid>
    <comment_count>6</comment_count>
      <attachid>40735</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2009-10-06 12:07:10 -0700</bug_when>
    <thetext>Created attachment 40735
Patch with test case

Patch with test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152818</commentid>
    <comment_count>7</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2009-10-06 12:15:00 -0700</bug_when>
    <thetext>Committed r49203: &lt;http://trac.webkit.org/changeset/49203&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40685</attachid>
            <date>2009-10-05 21:44:22 -0700</date>
            <delta_ts>2009-10-06 09:49:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Bug30107.patch</filename>
            <type>text/plain</type>
            <size>1699</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA0OTE0NSkKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMDktMTAtMDUgIERhbmllbCBCYXRlcyAgPGRiYXRl
c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDEwNworICAg
ICAgICAKKyAgICAgICAgRml4ZXMgYW4gaXNzdWUgd2hlcmUgdGhlIE1hYyBidWlsZCBkb2VzIHJl
dHVybiB0aGUgY29ycmVjdCBkcm9wIGVmZmVjdAorICAgICAgICB3aXRoIHJlc3BlY3QgdG8gdGhl
IEhUTUwgNSBzcGVjaWZpY2F0aW9uIHdoZW4gZWZmZWN0QWxsb3dlZCA9PSAibm9uZSIuCisgICAg
ICAgIAorICAgICAgICBDdXJyZW50bHksIHdoZW4gZWZmZWN0QWxsb3dlZCA9PSAibm9uZSIgYW5k
IGRyb3BFZmZlY3QgPT0gImNvcHkiIG9yIAorICAgICAgICBkcm9wRWZmZWN0ID09ICJtb3ZlIiB0
aGUgcmVzdWx0aW5nIGRyb3AgZWZmZWN0IGlzICJjb3B5IiBhbmQgIm1vdmUiLAorICAgICAgICBy
ZXNwZWN0aXZlbHkuIEhvd2V2ZXIsIHRoZSBIVE1MIDUgc3BlY2lmaWNhdGlvbiBzdGF0ZXMgdGhh
dCByZWdhcmRsZXNzCisgICAgICAgIG9mIHRoZSBzcGVjaWZpZWQgZHJvcEVmZmVjdCwgd2hlbiBl
ZmZlY3RBbGxvd2VkID09ICJub25lIiB0aGUgcmVzdWx0aW5nCisgICAgICAgIGRyb3AgZWZmZWN0
IHNob3VsZCBiZSAibm9uZSIuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1tOgor
ICAgICAgICAoLVtXZWJIVE1MVmlldyBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tGb3JMb2Nh
bDpdKToKKwogMjAwOS0xMC0wNSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBNb3JlIGJ1aWxkIGZpeGVzIGZvciBUaWdlci4KSW5kZXg6IFdlYktpdC9t
YWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViSFRNTFZpZXcubW0JKHJldmlzaW9uIDQ4OTYwKQorKysgV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNDI1LDEwICszNDI1LDYgQEAgZG9u
ZToKICAgICBpZiAoIXBhZ2UpCiAgICAgICAgIHJldHVybiBOU0RyYWdPcGVyYXRpb25Ob25lOwog
Ci0gICAgLy8gRklYTUU6IFdoeSBkbyB3ZSBvdmVycmlkZSB0aGUgc291cmNlIHByb3ZpZGVkIG9w
ZXJhdGlvbiBoZXJlPyAgV2h5IG5vdCBpbiBEcmFnQ29udHJvbGxlcjo6c3RhcnREcmFnCi0gICAg
aWYgKHBhZ2UtPmRyYWdDb250cm9sbGVyKCktPnNvdXJjZURyYWdPcGVyYXRpb24oKSA9PSBEcmFn
T3BlcmF0aW9uTm9uZSkKLSAgICAgICAgcmV0dXJuIE5TRHJhZ09wZXJhdGlvbkdlbmVyaWMgfCBO
U0RyYWdPcGVyYXRpb25Db3B5OwotCiAgICAgcmV0dXJuIChOU0RyYWdPcGVyYXRpb24pcGFnZS0+
ZHJhZ0NvbnRyb2xsZXIoKS0+c291cmNlRHJhZ09wZXJhdGlvbigpOwogfQogCg==
</data>
<flag name="review"
          id="21938"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="21989"
          type_id="3"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>40686</attachid>
            <date>2009-10-05 21:56:49 -0700</date>
            <delta_ts>2009-10-05 21:56:49 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>drag-and-drop-none.html</filename>
            <type>text/html</type>
            <size>12113</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8c3R5bGU+Ci8qIFRha2VuIGZyb20gZmlsZSBMYXlvdXRUZXN0cy9mYXN0
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyAqLwoucGFzcyB7CiAgICBmb250LXdlaWdodDog
Ym9sZDsKICAgIGNvbG9yOiBncmVlbjsKfQouZmFpbCB7CiAgICBmb250LXdlaWdodDogYm9sZDsK
ICAgIGNvbG9yOiByZWQ7Cn0KI2NvbnNvbGUgewogICAgd2hpdGUtc3BhY2U6IHByZS13cmFwOwog
ICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKfQo8L3N0eWxlPgo8c2NyaXB0PgovKiBUYWtlbiBm
cm9tIGZpbGUgTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMgKi8K
ZnVuY3Rpb24gZGVzY3JpcHRpb24obXNnKQp7CiAgICAvLyBGb3IgTVNJRSA2IGNvbXBhdGliaWxp
dHkKICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpOwogICAgc3Bh
bi5pbm5lckhUTUwgPSAnPHA+JyArIG1zZyArICc8L3A+PHA+T24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICI8c3BhbiBjbGFzcz0icGFzcyI+UEFTUzwvc3Bhbj4iIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiPHNwYW4gY2xhc3M9InBhc3MiPlRFU1QgQ09NUExFVEU8L3NwYW4+Ii48
L3A+JzsKICAgIHZhciBkZXNjcmlwdGlvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZXNj
cmlwdGlvbiIpOwogICAgaWYgKGRlc2NyaXB0aW9uLmZpcnN0Q2hpbGQpCiAgICAgICAgZGVzY3Jp
cHRpb24ucmVwbGFjZUNoaWxkKHNwYW4sIGRlc2NyaXB0aW9uLmZpcnN0Q2hpbGQpOwogICAgZWxz
ZQogICAgICAgIGRlc2NyaXB0aW9uLmFwcGVuZENoaWxkKHNwYW4pOwp9CgpmdW5jdGlvbiBkZWJ1
Zyhtc2cpCnsKICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpOwog
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUiKS5hcHBlbmRDaGlsZChzcGFuKTsg
Ly8gaW5zZXJ0IGl0IGZpcnN0IHNvIFhIVE1MIGtub3dzIHRoZSBuYW1lc3BhY2UKICAgIHNwYW4u
aW5uZXJIVE1MID0gbXNnICsgJzxiciAvPic7Cn0KCmZ1bmN0aW9uIGVzY2FwZUhUTUwodGV4dCkK
ewogICAgcmV0dXJuIHRleHQucmVwbGFjZSgvJi9nLCAiJmFtcDsiKS5yZXBsYWNlKC88L2csICIm
bHQ7Iik7Cn0KCmZ1bmN0aW9uIHRlc3RQYXNzZWQobXNnKQp7CiAgICBkZWJ1ZygnPHNwYW4+PHNw
YW4gY2xhc3M9InBhc3MiPlBBU1M8L3NwYW4+ICcgKyBlc2NhcGVIVE1MKG1zZykgKyAnPC9zcGFu
PicpOwp9CgpmdW5jdGlvbiB0ZXN0RmFpbGVkKG1zZykKewogICAgZGVidWcoJzxzcGFuPjxzcGFu
IGNsYXNzPSJmYWlsIj5GQUlMPC9zcGFuPiAnICsgZXNjYXBlSFRNTChtc2cpICsgJzwvc3Bhbj4n
KTsKfQoKZnVuY3Rpb24gYXJlQXJyYXlzRXF1YWwoX2EsIF9iKQp7CiAgICBpZiAoX2EubGVuZ3Ro
ICE9PSBfYi5sZW5ndGgpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgZm9yICh2YXIgaSA9IDA7
IGkgPCBfYS5sZW5ndGg7IGkrKykKICAgICAgICBpZiAoX2FbaV0gIT09IF9iW2ldKQogICAgICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICByZXR1cm4gdHJ1ZTsKfQoKZnVuY3Rpb24gaXNNaW51c1pl
cm8obikKewogICAgLy8gdGhlIG9ubHkgd2F5IHRvIHRlbGwgMCBmcm9tIC0wIGluIEpTIGlzIHRo
ZSBmYWN0IHRoYXQgMS8tMCBpcwogICAgLy8gLUluZmluaXR5IGluc3RlYWQgb2YgSW5maW5pdHkK
ICAgIHJldHVybiBuID09PSAwICYmIDEvbiA8IDA7Cn0KCmZ1bmN0aW9uIGlzUmVzdWx0Q29ycmVj
dChfYWN0dWFsLCBfZXhwZWN0ZWQpCnsKICAgIGlmIChfZXhwZWN0ZWQgPT09IDApCiAgICAgICAg
cmV0dXJuIF9hY3R1YWwgPT09IF9leHBlY3RlZCAmJiAoMS9fYWN0dWFsKSA9PT0gKDEvX2V4cGVj
dGVkKTsKICAgIGlmIChfYWN0dWFsID09PSBfZXhwZWN0ZWQpCiAgICAgICAgcmV0dXJuIHRydWU7
CiAgICBpZiAodHlwZW9mKF9leHBlY3RlZCkgPT0gIm51bWJlciIgJiYgaXNOYU4oX2V4cGVjdGVk
KSkKICAgICAgICByZXR1cm4gdHlwZW9mKF9hY3R1YWwpID09ICJudW1iZXIiICYmIGlzTmFOKF9h
Y3R1YWwpOwogICAgaWYgKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChfZXhwZWN0ZWQp
ID09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChbXSkpCiAgICAgICAgcmV0dXJuIGFy
ZUFycmF5c0VxdWFsKF9hY3R1YWwsIF9leHBlY3RlZCk7CiAgICByZXR1cm4gZmFsc2U7Cn0KCmZ1
bmN0aW9uIHN0cmluZ2lmeSh2KQp7CiAgICBpZiAodiA9PT0gMCAmJiAxL3YgPCAwKQogICAgICAg
IHJldHVybiAiLTAiOwogICAgZWxzZSByZXR1cm4gIiIgKyB2Owp9CgpmdW5jdGlvbiBldmFsQW5k
TG9nKF9hKQp7CiAgaWYgKHR5cGVvZiBfYSAhPSAic3RyaW5nIikKICAgIGRlYnVnKCJXQVJOOiB0
cnlBbmRMb2coKSBleHBlY3RzIGEgc3RyaW5nIGFyZ3VtZW50Iik7CiAgdmFyIGV4Y2VwdGlvbjsK
ICB2YXIgX2F2OwogIHRyeSB7CiAgICAgX2F2ID0gZXZhbChfYSk7CiAgfSBjYXRjaCAoZSkgewog
ICAgIGV4Y2VwdGlvbiA9IGU7CiAgfQoKICBpZiAoZXhjZXB0aW9uKQogICAgdGVzdEZhaWxlZChf
YSArICIgdGhyZXcgZXhjZXB0aW9uICIgKyBleGNlcHRpb24pOwogIGVsc2UKICAgIGRlYnVnKF9h
KTsKfQoKZnVuY3Rpb24gc2hvdWxkQmUoX2EsIF9iKQp7CiAgaWYgKHR5cGVvZiBfYSAhPSAic3Ry
aW5nIiB8fCB0eXBlb2YgX2IgIT0gInN0cmluZyIpCiAgICBkZWJ1ZygiV0FSTjogc2hvdWxkQmUo
KSBleHBlY3RzIHN0cmluZyBhcmd1bWVudHMiKTsKICB2YXIgZXhjZXB0aW9uOwogIHZhciBfYXY7
CiAgdHJ5IHsKICAgICBfYXYgPSBldmFsKF9hKTsKICB9IGNhdGNoIChlKSB7CiAgICAgZXhjZXB0
aW9uID0gZTsKICB9CiAgdmFyIF9idiA9IGV2YWwoX2IpOwoKICBpZiAoZXhjZXB0aW9uKQogICAg
dGVzdEZhaWxlZChfYSArICIgc2hvdWxkIGJlICIgKyBfYnYgKyAiLiBUaHJldyBleGNlcHRpb24g
IiArIGV4Y2VwdGlvbik7CiAgZWxzZSBpZiAoaXNSZXN1bHRDb3JyZWN0KF9hdiwgX2J2KSkKICAg
IHRlc3RQYXNzZWQoX2EgKyAiIGlzICIgKyBfYik7CiAgZWxzZSBpZiAodHlwZW9mKF9hdikgPT0g
dHlwZW9mKF9idikpCiAgICB0ZXN0RmFpbGVkKF9hICsgIiBzaG91bGQgYmUgIiArIF9idiArICIu
IFdhcyAiICsgc3RyaW5naWZ5KF9hdikgKyAiLiIpOwogIGVsc2UKICAgIHRlc3RGYWlsZWQoX2Eg
KyAiIHNob3VsZCBiZSAiICsgX2J2ICsgIiAob2YgdHlwZSAiICsgdHlwZW9mIF9idiArICIpLiBX
YXMgIiArIF9hdiArICIgKG9mIHR5cGUgIiArIHR5cGVvZiBfYXYgKyAiKS4iKTsKfQoKZnVuY3Rp
b24gc2hvdWxkQmVUcnVlKF9hKSB7IHNob3VsZEJlKF9hLCAidHJ1ZSIpOyB9CmZ1bmN0aW9uIHNo
b3VsZEJlRmFsc2UoX2EpIHsgc2hvdWxkQmUoX2EsICJmYWxzZSIpOyB9CmZ1bmN0aW9uIHNob3Vs
ZEJlTmFOKF9hKSB7IHNob3VsZEJlKF9hLCAiTmFOIik7IH0KZnVuY3Rpb24gc2hvdWxkQmVOdWxs
KF9hKSB7IHNob3VsZEJlKF9hLCAibnVsbCIpOyB9CgpmdW5jdGlvbiBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoYSwgYikKewogIHZhciB1bmV2YWxlZFN0cmluZyA9ICciJyArIGIucmVwbGFjZSgvIi9n
LCAiXCIiKSArICciJzsKICBzaG91bGRCZShhLCB1bmV2YWxlZFN0cmluZyk7Cn0KCmZ1bmN0aW9u
IHNob3VsZEV2YWx1YXRlVG8oYWN0dWFsLCBleHBlY3RlZCkgewogIC8vIEEgZ2VuZXJhbC1wdXJw
b3NlIGNvbXBhcmF0b3IuICAnYWN0dWFsJyBzaG91bGQgYmUgYSBzdHJpbmcgdG8gYmUKICAvLyBl
dmFsdWF0ZWQsIGFzIGZvciBzaG91bGRCZSgpLiAnZXhwZWN0ZWQnIG1heSBiZSBhbnkgdHlwZSBh
bmQgd2lsbCBiZQogIC8vIHVzZWQgd2l0aG91dCBiZWluZyBldmFsJ2VkLgogIGlmIChleHBlY3Rl
ZCA9PSBudWxsKSB7CiAgICAvLyBEbyB0aGlzIGJlZm9yZSB0aGUgb2JqZWN0IHRlc3QsIHNpbmNl
IG51bGwgaXMgb2YgdHlwZSAnb2JqZWN0Jy4KICAgIHNob3VsZEJlTnVsbChhY3R1YWwpOwogIH0g
ZWxzZSBpZiAodHlwZW9mIGV4cGVjdGVkID09ICJ1bmRlZmluZWQiKSB7CiAgICBzaG91bGRCZVVu
ZGVmaW5lZChhY3R1YWwpOwogIH0gZWxzZSBpZiAodHlwZW9mIGV4cGVjdGVkID09ICJmdW5jdGlv
biIpIHsKICAgIC8vIEFsbCB0aGlzIGZ1c3MgaXMgdG8gYXZvaWQgdGhlIHN0cmluZy1hcmcgd2Fy
bmluZyBmcm9tIHNob3VsZEJlKCkuCiAgICB0cnkgewogICAgICBhY3R1YWxWYWx1ZSA9IGV2YWwo
YWN0dWFsKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgdGVzdEZhaWxlZCgiRXZhbHVhdGluZyAi
ICsgYWN0dWFsICsgIjogVGhyZXcgZXhjZXB0aW9uICIgKyBlKTsKICAgICAgcmV0dXJuOwogICAg
fQogICAgc2hvdWxkQmUoIiciICsgYWN0dWFsVmFsdWUudG9TdHJpbmcoKS5yZXBsYWNlKC9cbi9n
LCAiIikgKyAiJyIsCiAgICAgICAgICAgICAiJyIgKyBleHBlY3RlZC50b1N0cmluZygpLnJlcGxh
Y2UoL1xuL2csICIiKSArICInIik7CiAgfSBlbHNlIGlmICh0eXBlb2YgZXhwZWN0ZWQgPT0gIm9i
amVjdCIpIHsKICAgIHNob3VsZEJlVHJ1ZShhY3R1YWwgKyAiID09ICciICsgZXhwZWN0ZWQgKyAi
JyIpOwogIH0gZWxzZSBpZiAodHlwZW9mIGV4cGVjdGVkID09ICJzdHJpbmciKSB7CiAgICBzaG91
bGRCZShhY3R1YWwsIGV4cGVjdGVkKTsKICB9IGVsc2UgaWYgKHR5cGVvZiBleHBlY3RlZCA9PSAi
Ym9vbGVhbiIpIHsKICAgIHNob3VsZEJlKCJ0eXBlb2YgIiArIGFjdHVhbCwgIidib29sZWFuJyIp
OwogICAgaWYgKGV4cGVjdGVkKQogICAgICBzaG91bGRCZVRydWUoYWN0dWFsKTsKICAgIGVsc2UK
ICAgICAgc2hvdWxkQmVGYWxzZShhY3R1YWwpOwogIH0gZWxzZSBpZiAodHlwZW9mIGV4cGVjdGVk
ID09ICJudW1iZXIiKSB7CiAgICBzaG91bGRCZShhY3R1YWwsIHN0cmluZ2lmeShleHBlY3RlZCkp
OwogIH0gZWxzZSB7CiAgICBkZWJ1ZyhleHBlY3RlZCArICIgaXMgdW5rbm93biB0eXBlICIgKyB0
eXBlb2YgZXhwZWN0ZWQpOwogICAgc2hvdWxkQmVUcnVlKGFjdHVhbCwgIiciICArZXhwZWN0ZWQu
dG9TdHJpbmcoKSArICInIik7CiAgfQp9CgpmdW5jdGlvbiBzaG91bGRCZVVuZGVmaW5lZChfYSkK
ewogIHZhciBleGNlcHRpb247CiAgdmFyIF9hdjsKICB0cnkgewogICAgIF9hdiA9IGV2YWwoX2Ep
OwogIH0gY2F0Y2ggKGUpIHsKICAgICBleGNlcHRpb24gPSBlOwogIH0KCiAgaWYgKGV4Y2VwdGlv
bikKICAgIHRlc3RGYWlsZWQoX2EgKyAiIHNob3VsZCBiZSB1bmRlZmluZWQuIFRocmV3IGV4Y2Vw
dGlvbiAiICsgZXhjZXB0aW9uKTsKICBlbHNlIGlmICh0eXBlb2YgX2F2ID09ICJ1bmRlZmluZWQi
KQogICAgdGVzdFBhc3NlZChfYSArICIgaXMgdW5kZWZpbmVkLiIpOwogIGVsc2UKICAgIHRlc3RG
YWlsZWQoX2EgKyAiIHNob3VsZCBiZSB1bmRlZmluZWQuIFdhcyAiICsgX2F2KTsKfQoKCmZ1bmN0
aW9uIHNob3VsZFRocm93KF9hLCBfZSkKewogIHZhciBleGNlcHRpb247CiAgdmFyIF9hdjsKICB0
cnkgewogICAgIF9hdiA9IGV2YWwoX2EpOwogIH0gY2F0Y2ggKGUpIHsKICAgICBleGNlcHRpb24g
PSBlOwogIH0KCiAgdmFyIF9ldjsKICBpZiAoX2UpCiAgICAgIF9ldiA9ICBldmFsKF9lKTsKCiAg
aWYgKGV4Y2VwdGlvbikgewogICAgaWYgKHR5cGVvZiBfZSA9PSAidW5kZWZpbmVkIiB8fCBleGNl
cHRpb24gPT0gX2V2KQogICAgICB0ZXN0UGFzc2VkKF9hICsgIiB0aHJldyBleGNlcHRpb24gIiAr
IGV4Y2VwdGlvbiArICIuIik7CiAgICBlbHNlCiAgICAgIHRlc3RGYWlsZWQoX2EgKyAiIHNob3Vs
ZCB0aHJvdyAiICsgKHR5cGVvZiBfZSA9PSAidW5kZWZpbmVkIiA/ICJhbiBleGNlcHRpb24iIDog
X2V2KSArICIuIFRocmV3IGV4Y2VwdGlvbiAiICsgZXhjZXB0aW9uICsgIi4iKTsKICB9IGVsc2Ug
aWYgKHR5cGVvZiBfYXYgPT0gInVuZGVmaW5lZCIpCiAgICB0ZXN0RmFpbGVkKF9hICsgIiBzaG91
bGQgdGhyb3cgIiArICh0eXBlb2YgX2UgPT0gInVuZGVmaW5lZCIgPyAiYW4gZXhjZXB0aW9uIiA6
IF9ldikgKyAiLiBXYXMgdW5kZWZpbmVkLiIpOwogIGVsc2UKICAgIHRlc3RGYWlsZWQoX2EgKyAi
IHNob3VsZCB0aHJvdyAiICsgKHR5cGVvZiBfZSA9PSAidW5kZWZpbmVkIiA/ICJhbiBleGNlcHRp
b24iIDogX2V2KSArICIuIFdhcyAiICsgX2F2ICsgIi4iKTsKfQoKZnVuY3Rpb24gZ2MoKSB7CiAg
ICBpZiAodHlwZW9mIEdDQ29udHJvbGxlciAhPT0gInVuZGVmaW5lZCIpCiAgICAgICAgR0NDb250
cm9sbGVyLmNvbGxlY3QoKTsKICAgIGVsc2UgewogICAgICAgIGZ1bmN0aW9uIGdjUmVjKG4pIHsK
ICAgICAgICAgICAgaWYgKG4gPCAxKQogICAgICAgICAgICAgICAgcmV0dXJuIHt9OwogICAgICAg
ICAgICB2YXIgdGVtcCA9IHtpOiAiYWIiICsgaSArIChpIC8gMTAwMDAwKX07CiAgICAgICAgICAg
IHRlbXAgKz0gImZvbyI7CiAgICAgICAgICAgIGdjUmVjKG4tMSk7CiAgICAgICAgfQogICAgICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDsgaSsrKQogICAgICAgICAgICBnY1JlYygxMCkKICAg
IH0KfQo8L3NjcmlwdD4KPHN0eWxlPgojZHJvcFRhcmdldCwgI2RyYWdNZSB7IHRleHQtYWxpZ246
IGNlbnRlcjsgZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IG1pZGRsZSB9CiNk
cm9wVGFyZ2V0IHt3aWR0aDogMjU2cHg7IGhlaWdodDogMjU2cHg7IGJvcmRlcjogMXB4IGRhc2hl
ZH0KI2RyYWdNZSB7LXdlYmtpdC11c2VyLWRyYWc6IGVsZW1lbnQ7IC13ZWJraXQtdXNlci1zZWxl
Y3Q6IG5vbmU7IGJhY2tncm91bmQ6ICNmZjAwMDA7IHdpZHRoOiA2NHB4OyBoZWlnaHQ6IDY0cHg7
IGNvbG9yOiB3aGl0ZX0KPC9zdHlsZT4KPHNjcmlwdD4KICAgIHZhciBkcmFnTWU7CiAgICB2YXIg
ZHJvcFRhcmdldDsKICAgIHZhciBkcm9wRWZmZWN0RWxlbTsKICAgIHZhciBjb25zb2xlRWxtOwog
ICAgdmFyIGV2ZW50OwogICAgCiAgICB2YXIgQUxMT1dFRF9FRkZFQ1RTID0gJ25vbmUnOwogICAg
CiAgICB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKQogICAgewogICAgICAgIGRyYWdNZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkcmFnTWUiKTsKICAgICAgICBkcm9wVGFyZ2V0ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRyb3BUYXJnZXQiKTsKICAgICAgICBkcm9wRWZmZWN0RWxl
bSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkcm9wRWZmZWN0Iik7CiAgICAgICAgY29uc29s
ZUVsbSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIik7CiAgICAgICAgCiAgICAg
ICAgaWYgKCFkcmFnTWUgfHwgIWRyb3BUYXJnZXQgfHwgIWRyb3BFZmZlY3RFbGVtIHx8ICFjb25z
b2xlRWxtKQogICAgICAgICAgICByZXR1cm47CiAgICAgICAgCiAgICAgICAgZHJhZ01lLm9uZHJh
Z3N0YXJ0ID0gZHJhZ1N0YXJ0OwogICAgICAgIGRyYWdNZS5vbmRyYWdlbmQgPSBkcmFnRW5kOwog
ICAgICAgIAogICAgICAgIGRyb3BUYXJnZXQub25kcmFnZW50ZXIgPSBkcmFnRW50ZXJlZDsKICAg
ICAgICBkcm9wVGFyZ2V0Lm9uZHJhZ292ZXIgPSBkcmFnT3ZlcjsKICAgICAgICBkcm9wVGFyZ2V0
Lm9uZHJvcCA9IGRyb3A7CiAgICAgICAgCiAgICAgICAgcnVuVGVzdCgpOwogICAgfQogICAgCiAg
ICBmdW5jdGlvbiBkcmFnU3RhcnQoZSkKICAgIHsKICAgICAgICBldmVudCA9IGU7CiAgICAgICAg
ZS5kYXRhVHJhbnNmZXIuZWZmZWN0QWxsb3dlZCA9IEFMTE9XRURfRUZGRUNUUzsKICAgICAgICBl
LmRhdGFUcmFuc2Zlci5zZXREYXRhKCdUZXh0JywgZS50YXJnZXQudGV4dENvbnRlbnQpOwogICAg
fQogICAgCiAgICBmdW5jdGlvbiBkcmFnRW5kKGUpCiAgICB7CiAgICAgICAgY2hlY2tEcmFnU3Rh
dGUoZSk7CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgCiAgICBmdW5jdGlvbiBkcmFnRW50ZXJl
ZChlKQogICAgewogICAgICAgIGRyYWdFbnRlcmVkQW5kVXBkYXRlZChlKTsKICAgIH0KICAgIAog
ICAgZnVuY3Rpb24gZHJhZ092ZXIoZSkKICAgIHsKICAgICAgICBkcmFnRW50ZXJlZEFuZFVwZGF0
ZWQoZSk7CiAgICB9CiAgICAKICAgIGZ1bmN0aW9uIGRyYWdFbnRlcmVkQW5kVXBkYXRlZChlKQog
ICAgewogICAgICAgIGV2ZW50ID0gZTsKICAgICAgICBlLmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0
ID0gZHJvcEVmZmVjdEVsZW0ub3B0aW9uc1tkcm9wRWZmZWN0RWxlbS5zZWxlY3RlZEluZGV4XS52
YWx1ZTsKICAgICAgICBjYW5jZWxEcmFnKGUpOwogICAgfQogICAgCiAgICBmdW5jdGlvbiBkcm9w
KGUpCiAgICB7CiAgICAgICAgY2FuY2VsRHJhZyhlKTsKICAgIH0KICAgIAogICAgZnVuY3Rpb24g
Y2FuY2VsRHJhZyhlKQogICAgewogICAgICAgIGlmIChlLnByZXZlbnREZWZhdWx0KQogICAgICAg
ICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIC8vIEFz
c3VtZSB0aGlzIHNjcmlwdCBpcyBleGVjdXRpbmcgd2l0aGluIEludGVybmV0IEV4cGxvcmVyCiAg
ICAgICAgICAgIGUucmV0dXJuVmFsdWUgPSBmYWxzZTsKICAgICAgICB9CiAgICB9CiAgICAKICAg
IGZ1bmN0aW9uIGNoZWNrRHJhZ1N0YXRlKGUpCiAgICB7CiAgICAgICAgZXZlbnQgPSBlOwogICAg
ICAgIHZhciBjaG9zZW5Ecm9wRWZmZWN0ID0gZHJvcEVmZmVjdEVsZW0ub3B0aW9uc1tkcm9wRWZm
ZWN0RWxlbS5zZWxlY3RlZEluZGV4XS52YWx1ZTsKICAgICAgICB2YXIgY2hvc2VuRWZmZWN0QWxs
b3dlZCA9IEFMTE9XRURfRUZGRUNUUzsKICAgICAgICB2YXIgYWN0dWFsRHJvcEVmZmVjdCA9IGUu
ZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3Q7CiAgICAgICAgCiAgICAgICAgaWYgKGlzRHJvcEVmZmVj
dEFsbG93ZWQoY2hvc2VuRHJvcEVmZmVjdCwgY2hvc2VuRWZmZWN0QWxsb3dlZCkpCiAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oJ2V2ZW50LmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0JywgJ2Ry
b3BFZmZlY3RFbGVtLm9wdGlvbnNbZHJvcEVmZmVjdEVsZW0uc2VsZWN0ZWRJbmRleF0udmFsdWUn
KTsKICAgICAgICBlbHNlCiAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnZXZlbnQu
ZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QnLCAnbm9uZScpOwogICAgICAgICAgICAKICAgIH0KICAg
IAogICAgZnVuY3Rpb24gaXNEcm9wRWZmZWN0QWxsb3dlZChjaG9zZW5Ecm9wRWZmZWN0LCBhbGxv
d2VkRHJvcEVmZmVjdCkgewogICAgICAgIC8vIEV4dHJhY3RlZCBmcm9tIHRoZSBIVE1MIDUgZHJh
Zy1hbmQtZHJvcCBzZWN0aW9uLCBodHRwOi8vZGV2LnczLm9yZy9odG1sNS9zcGVjL092ZXJ2aWV3
Lmh0bWwjZG5kCiAgICAgICAgaWYgKGNob3NlbkRyb3BFZmZlY3QgPT0gIm5vbmUiKQogICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBpZiAoY2hvc2VuRHJvcEVmZmVjdCA9PSAiY29weSIg
JiYgWyJjb3B5IiwgImNvcHlMaW5rIiwgImNvcHlNb3ZlIiwgInVuaW5pdGlhbGl6ZWQiLCAiYWxs
Il0uaW5kZXhPZihhbGxvd2VkRHJvcEVmZmVjdCkgIT0gLTEpCiAgICAgICAgICAgIHJldHVybiB0
cnVlOwogICAgICAgIGlmIChjaG9zZW5Ecm9wRWZmZWN0ID09ICJtb3ZlIiAmJiBbIm1vdmUiLCAi
Y29weU1vdmUiLCAibGlua01vdmUiLCAidW5pbml0aWFsaXplZCIsICJhbGwiXS5pbmRleE9mKGFs
bG93ZWREcm9wRWZmZWN0KSAhPSAtMSkKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAg
aWYgKGNob3NlbkRyb3BFZmZlY3QgPT0gImxpbmsiICYmIFsibGluayIsICJjb3B5TGluayIsICJs
aW5rTW92ZSIsICJ1bmluaXRpYWxpemVkIiwgImFsbCJdLmluZGV4T2YoYWxsb3dlZERyb3BFZmZl
Y3QpICE9IC0xKQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICB9CgogICAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICB7CiAgICAgICAgaWYgKCF3aW5kb3cu
ZXZlbnRTZW5kZXIpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgCiAgICAgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOwogICAgICAgICAgICAKICAgICAgICB2YXIgc3RhcnRYID0gZHJh
Z01lLm9mZnNldExlZnQgKyAxMDsKICAgICAgICB2YXIgc3RhcnRZID0gZHJhZ01lLm9mZnNldFRv
cCArIGRyYWdNZS5vZmZzZXRIZWlnaHQgLyAyOwogICAgICAgIHZhciBlbmRYID0gZHJvcFRhcmdl
dC5vZmZzZXRMZWZ0ICsgMTA7CiAgICAgICAgdmFyIGVuZFkgPSBkcm9wVGFyZ2V0Lm9mZnNldFRv
cCArIGRyb3BUYXJnZXQub2Zmc2V0SGVpZ2h0IC8gMjsKICAgICAgICAKICAgICAgICB2YXIgbnVt
RWZmZWN0cyA9IGRyb3BFZmZlY3RFbGVtLm9wdGlvbnMubGVuZ3RoOwogICAgICAgIAogICAgICAg
IGZvciAodmFyIGogPSAwOyBqIDwgbnVtRWZmZWN0czsgKytqKSB7CiAgICAgICAgICAgIGRyb3BF
ZmZlY3RFbGVtLm9wdGlvbnNbal0uc2VsZWN0ZWQgPSB0cnVlOwogICAgICAgICAgICBldmVudFNl
bmRlci5tb3VzZU1vdmVUbyhzdGFydFgsIHN0YXJ0WSk7CiAgICAgICAgICAgIGV2ZW50U2VuZGVy
Lm1vdXNlRG93bigpOwogICAgICAgICAgICBldmVudFNlbmRlci5sZWFwRm9yd2FyZCgxMDApOwog
ICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyhlbmRYLCBlbmRZKTsKICAgICAgICAg
ICAgZXZlbnRTZW5kZXIubW91c2VVcCgpOwogICAgICAgIH0KICAgICAgICB2YXIgdGVzdENvbnRh
aW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0LWNvbnRhaW5lciIpOwogICAgICAg
IGlmICh0ZXN0Q29udGFpbmVyKQogICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxk
KHRlc3RDb250YWluZXIpOwogICAgICAgIGRlYnVnKCc8YnIgLz48c3BhbiBjbGFzcz0icGFzcyI+
VEVTVCBDT01QTEVURTwvc3Bhbj4nKTsKICAgIH0KPC9zY3JpcHQ+CjwvaGVhZD4KPGJvZHk+CiAg
ICA8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KICAgIDxkaXYgaWQ9InRlc3QtY29udGFpbmVyIj4K
ICAgICAgICA8bGFiZWwgZm9yPSJlZmZlY3RBbGxvd2VkIj5lZmZlY3RBbGxvd2VkOjwvbGFiZWw+
IDxjb2RlPjxzY3JpcHQ+ZG9jdW1lbnQud3JpdGUoQUxMT1dFRF9FRkZFQ1RTKTwvc2NyaXB0Pjwv
Y29kZT4KICAgICAgICA8YnIvPjxici8+CiAgICAgICAgPGRpdiBpZD0iZHJvcFRhcmdldCI+RHJv
cCB0aGUgcmVkIHNxdWFyZSBvbnRvIG1lLjxici8+PGJyLz4KICAgICAgICAgICAgPGxhYmVsIGZv
cj0iZHJvcEVmZmVjdCI+RXhwZWN0cyBkcm9wRWZmZWN0PC9sYWJlbD4gPHNlbGVjdCBpZD0iZHJv
cEVmZmVjdCI+CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJub25lIj5Ob25lPC9vcHRp
b24+CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJjb3B5Ij5Db3B5PC9vcHRpb24+CiAg
ICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtb3ZlIj5Nb3ZlPC9vcHRpb24+CiAgICAgICAg
ICAgICAgICA8b3B0aW9uIHZhbHVlPSJsaW5rIj5MaW5rPC9vcHRpb24+CiAgICAgICAgICAgICAg
ICA8b3B0aW9uIHZhbHVlPSJkdW1teSI+Tm9uZXhpc3RlbnQgKER1bW15KSBFZmZlY3Q8L29wdGlv
bj4KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGhyLz4KICAg
ICAgICA8cD5JdGVtcyB0aGF0IGNhbiBiZSBkcmFnZ2VkIHRvIHRoZSBkcm9wIHRhcmdldDo8L3A+
CiAgICAgICAgPGRpdiBpZD0iZHJhZ01lIiBkcmFnZ2FibGU9InRydWUiPlNxdWFyZTwvZGl2Pgog
ICAgICAgIDxoci8+CiAgICA8L2Rpdj4KICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgogICAg
PHNjcmlwdD4KICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGRyYWct
YW5kLWRyb3Agc3VwcG9ydCB3b3JrcyBhbmQgY29uZm9ybXMgdG8gdGhlIEhUTUwgNSBzcGVjaWZp
Y2F0aW9uIHdoZW4gIiArCiAgICAgICAgICAgICAgICAgICAgImVmZmVjdEFsbG93ZWQgPSA8Y29k
ZT5ub25lPC9jb2RlPi48YnIvPiIgKwogICAgICAgICAgICAgICAgICAgICJUaGlzIHRlc3QgaXRl
cmF0ZXMgdGhyb3VnaCB0aGUgcG9zc2libGUgZHJvcEVmZmVjdHM6IG5vbmUsIGNvcHksIG1vdmUs
IGxpbmssIGR1bW15LiIpOwogICAgICAgIHZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwog
ICAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40735</attachid>
            <date>2009-10-06 12:07:10 -0700</date>
            <delta_ts>2009-10-06 12:07:10 -0700</delta_ts>
            <desc>Patch with test case</desc>
            <filename>Bug30107_withtest.patch</filename>
            <type>text/plain</type>
            <size>10215</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA0OTE5OSkKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMDktMTAtMDYgIERhbmllbCBCYXRlcyAgPGRiYXRl
c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgorCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDEwNworICAgICAg
ICAKKyAgICAgICAgRml4ZXMgYW4gaXNzdWUgd2hlcmUgdGhlIE1hYyBidWlsZCBkb2VzIHJldHVy
biB0aGUgY29ycmVjdCBkcm9wIGVmZmVjdAorICAgICAgICB3aXRoIHJlc3BlY3QgdG8gdGhlIEhU
TUwgNSBzcGVjaWZpY2F0aW9uIHdoZW4gZWZmZWN0QWxsb3dlZCA9PSAibm9uZSIuCisgICAgICAg
IAorICAgICAgICBDdXJyZW50bHksIHdoZW4gZWZmZWN0QWxsb3dlZCA9PSAibm9uZSIgYW5kIGRy
b3BFZmZlY3QgPT0gImNvcHkiIG9yIAorICAgICAgICBkcm9wRWZmZWN0ID09ICJtb3ZlIiB0aGUg
cmVzdWx0aW5nIGRyb3AgZWZmZWN0IGlzICJjb3B5IiBhbmQgIm1vdmUiLAorICAgICAgICByZXNw
ZWN0aXZlbHkuIEhvd2V2ZXIsIHRoZSBIVE1MIDUgc3BlY2lmaWNhdGlvbiBzdGF0ZXMgdGhhdCBy
ZWdhcmRsZXNzCisgICAgICAgIG9mIHRoZSBzcGVjaWZpZWQgZHJvcEVmZmVjdCwgd2hlbiBlZmZl
Y3RBbGxvd2VkID09ICJub25lIiB0aGUgcmVzdWx0aW5nCisgICAgICAgIGRyb3AgZWZmZWN0IHNo
b3VsZCBiZSAibm9uZSIuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1tOgorICAg
ICAgICAoLVtXZWJIVE1MVmlldyBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tGb3JMb2NhbDpd
KToKKwogMjAwOS0xMC0wNiAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCkluZGV4OiBXZWJLaXQvbWFj
L1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tCShyZXZpc2lvbiA0OTE5NSkKKysrIFdlYktpdC9tYWMvV2ViVmlldy9X
ZWJIVE1MVmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtMzQyNSwxMCArMzQyNSw2IEBAIGRvbmU6
CiAgICAgaWYgKCFwYWdlKQogICAgICAgICByZXR1cm4gTlNEcmFnT3BlcmF0aW9uTm9uZTsKIAot
ICAgIC8vIEZJWE1FOiBXaHkgZG8gd2Ugb3ZlcnJpZGUgdGhlIHNvdXJjZSBwcm92aWRlZCBvcGVy
YXRpb24gaGVyZT8gIFdoeSBub3QgaW4gRHJhZ0NvbnRyb2xsZXI6OnN0YXJ0RHJhZwotICAgIGlm
IChwYWdlLT5kcmFnQ29udHJvbGxlcigpLT5zb3VyY2VEcmFnT3BlcmF0aW9uKCkgPT0gRHJhZ09w
ZXJhdGlvbk5vbmUpCi0gICAgICAgIHJldHVybiBOU0RyYWdPcGVyYXRpb25HZW5lcmljIHwgTlNE
cmFnT3BlcmF0aW9uQ29weTsKLQogICAgIHJldHVybiAoTlNEcmFnT3BlcmF0aW9uKXBhZ2UtPmRy
YWdDb250cm9sbGVyKCktPnNvdXJjZURyYWdPcGVyYXRpb24oKTsKIH0KIApJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gNDkxOTkpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwxOCBAQAorMjAwOS0xMC0wNiAgRGFuaWVsIEJhdGVzICA8ZGJhdGVzQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwMTA3CisgICAgICAgIAorICAg
ICAgICBUZXN0cyB0aGF0IGRyYWctYW5kLWRyb3AgcmV0dXJucyBkcm9wRWZmZWN0ID0gIm5vbmUi
IHdoZW4gCisgICAgICAgIGVmZmVjdEFsbG93ZWQgPT0gIm5vbmUiLCByZWdhcmRsZXNzIG9mIHRo
ZSB1c2VyLXNwZWNpZmllZAorICAgICAgICBkcm9wIGVmZmVjdC4KKworICAgICAgICAqIGZhc3Qv
ZXZlbnRzL2RyYWctYW5kLWRyb3Atbm9uZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZXZlbnRzL2RyYWctYW5kLWRyb3Atbm9uZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS93aW4vU2tpcHBlZDogVGhpcyB0ZXN0IGRvZXMgbm90IHdvcmsgdW5kZXIgCisgICAg
ICAgIFdpbmRvd3MuIFdlIG5lZWQgdGhlIGZpeCBmb3IgYnVnICMyNDczMS4KKwogMjAwOS0xMC0w
NiAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgRGFyaW4gQWRsZXIuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9kcmFnLWFuZC1k
cm9wLW5vbmUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2RyYWctYW5kLWRyb3Atbm9uZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLW5vbmUtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDE0IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgZHJhZy1hbmQt
ZHJvcCBzdXBwb3J0IHdvcmtzIGFuZCBjb25mb3JtcyB0byB0aGUgSFRNTCA1IHNwZWNpZmljYXRp
b24gd2hlbiBlZmZlY3RBbGxvd2VkID0gbm9uZS4KK1RoaXMgdGVzdCBpdGVyYXRlcyB0aHJvdWdo
IHRoZSBwb3NzaWJsZSBkcm9wRWZmZWN0czogbm9uZSwgY29weSwgbW92ZSwgbGluaywgZHVtbXku
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGV2ZW50LmRhdGFUcmFuc2Zl
ci5kcm9wRWZmZWN0IGlzIGRyb3BFZmZlY3RFbGVtLm9wdGlvbnNbZHJvcEVmZmVjdEVsZW0uc2Vs
ZWN0ZWRJbmRleF0udmFsdWUKK1BBU1MgZXZlbnQuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QgaXMg
Im5vbmUiCitQQVNTIGV2ZW50LmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0IGlzICJub25lIgorUEFT
UyBldmVudC5kYXRhVHJhbnNmZXIuZHJvcEVmZmVjdCBpcyAibm9uZSIKK1BBU1MgZXZlbnQuZGF0
YVRyYW5zZmVyLmRyb3BFZmZlY3QgaXMgIm5vbmUiCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvZHJhZy1hbmQtZHJvcC1ub25lLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvZHJhZy1hbmQtZHJvcC1ub25lLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLW5vbmUu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNjggQEAKKzxodG1sPgorPGhlYWQ+Cis8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNz
cyI+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzxzdHlsZT4KKyNkcm9wVGFyZ2V0LCAjZHJhZ01lIHsgdGV4dC1hbGlnbjogY2VudGVyOyBk
aXNwbGF5OiB0YWJsZS1jZWxsOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlIH0KKyNkcm9wVGFyZ2V0
IHt3aWR0aDogMjU2cHg7IGhlaWdodDogMjU2cHg7IGJvcmRlcjogMXB4IGRhc2hlZH0KKyNkcmFn
TWUgey13ZWJraXQtdXNlci1kcmFnOiBlbGVtZW50OyAtd2Via2l0LXVzZXItc2VsZWN0OiBub25l
OyBiYWNrZ3JvdW5kOiAjZmYwMDAwOyB3aWR0aDogNjRweDsgaGVpZ2h0OiA2NHB4OyBjb2xvcjog
d2hpdGV9Cis8L3N0eWxlPgorPHNjcmlwdD4KKyAgICB2YXIgZHJhZ01lOworICAgIHZhciBkcm9w
VGFyZ2V0OworICAgIHZhciBkcm9wRWZmZWN0RWxlbTsKKyAgICB2YXIgY29uc29sZUVsbTsKKyAg
ICB2YXIgZXZlbnQ7CisgICAgCisgICAgdmFyIEFMTE9XRURfRUZGRUNUUyA9ICdub25lJzsKKyAg
ICAKKyAgICB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgZHJhZ01l
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRyYWdNZSIpOworICAgICAgICBkcm9wVGFyZ2V0
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRyb3BUYXJnZXQiKTsKKyAgICAgICAgZHJvcEVm
ZmVjdEVsZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZHJvcEVmZmVjdCIpOworICAgICAg
ICBjb25zb2xlRWxtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUiKTsKKyAgICAg
ICAgCisgICAgICAgIGlmICghZHJhZ01lIHx8ICFkcm9wVGFyZ2V0IHx8ICFkcm9wRWZmZWN0RWxl
bSB8fCAhY29uc29sZUVsbSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgCisgICAgICAg
IGRyYWdNZS5vbmRyYWdzdGFydCA9IGRyYWdTdGFydDsKKyAgICAgICAgZHJhZ01lLm9uZHJhZ2Vu
ZCA9IGRyYWdFbmQ7CisgICAgICAgIAorICAgICAgICBkcm9wVGFyZ2V0Lm9uZHJhZ2VudGVyID0g
ZHJhZ0VudGVyZWQ7CisgICAgICAgIGRyb3BUYXJnZXQub25kcmFnb3ZlciA9IGRyYWdPdmVyOwor
ICAgICAgICBkcm9wVGFyZ2V0Lm9uZHJvcCA9IGRyb3A7CisgICAgICAgIAorICAgICAgICBydW5U
ZXN0KCk7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIGRyYWdTdGFydChlKQorICAgIHsKKyAg
ICAgICAgZXZlbnQgPSBlOworICAgICAgICBlLmRhdGFUcmFuc2Zlci5lZmZlY3RBbGxvd2VkID0g
QUxMT1dFRF9FRkZFQ1RTOworICAgICAgICBlLmRhdGFUcmFuc2Zlci5zZXREYXRhKCdUZXh0Jywg
ZS50YXJnZXQudGV4dENvbnRlbnQpOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBkcmFnRW5k
KGUpCisgICAgeworICAgICAgICBjaGVja0RyYWdTdGF0ZShlKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBkcmFnRW50ZXJlZChlKQorICAgIHsKKyAgICAgICAg
ZHJhZ0VudGVyZWRBbmRVcGRhdGVkKGUpOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBkcmFn
T3ZlcihlKQorICAgIHsKKyAgICAgICAgZHJhZ0VudGVyZWRBbmRVcGRhdGVkKGUpOworICAgIH0K
KyAgICAKKyAgICBmdW5jdGlvbiBkcmFnRW50ZXJlZEFuZFVwZGF0ZWQoZSkKKyAgICB7CisgICAg
ICAgIGV2ZW50ID0gZTsKKyAgICAgICAgZS5kYXRhVHJhbnNmZXIuZHJvcEVmZmVjdCA9IGRyb3BF
ZmZlY3RFbGVtLm9wdGlvbnNbZHJvcEVmZmVjdEVsZW0uc2VsZWN0ZWRJbmRleF0udmFsdWU7Cisg
ICAgICAgIGNhbmNlbERyYWcoZSk7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIGRyb3AoZSkK
KyAgICB7CisgICAgICAgIGNhbmNlbERyYWcoZSk7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9u
IGNhbmNlbERyYWcoZSkKKyAgICB7CisgICAgICAgIGlmIChlLnByZXZlbnREZWZhdWx0KQorICAg
ICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAg
IC8vIEFzc3VtZSB0aGlzIHNjcmlwdCBpcyBleGVjdXRpbmcgd2l0aGluIEludGVybmV0IEV4cGxv
cmVyCisgICAgICAgICAgICBlLnJldHVyblZhbHVlID0gZmFsc2U7CisgICAgICAgIH0KKyAgICB9
CisgICAgCisgICAgZnVuY3Rpb24gY2hlY2tEcmFnU3RhdGUoZSkKKyAgICB7CisgICAgICAgIGV2
ZW50ID0gZTsKKyAgICAgICAgdmFyIGNob3NlbkRyb3BFZmZlY3QgPSBkcm9wRWZmZWN0RWxlbS5v
cHRpb25zW2Ryb3BFZmZlY3RFbGVtLnNlbGVjdGVkSW5kZXhdLnZhbHVlOworICAgICAgICB2YXIg
Y2hvc2VuRWZmZWN0QWxsb3dlZCA9IEFMTE9XRURfRUZGRUNUUzsKKyAgICAgICAgdmFyIGFjdHVh
bERyb3BFZmZlY3QgPSBlLmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0OworICAgICAgICAKKyAgICAg
ICAgaWYgKGlzRHJvcEVmZmVjdEFsbG93ZWQoY2hvc2VuRHJvcEVmZmVjdCwgY2hvc2VuRWZmZWN0
QWxsb3dlZCkpCisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCdldmVudC5kYXRhVHJhbnNm
ZXIuZHJvcEVmZmVjdCcsICdkcm9wRWZmZWN0RWxlbS5vcHRpb25zW2Ryb3BFZmZlY3RFbGVtLnNl
bGVjdGVkSW5kZXhdLnZhbHVlJyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygnZXZlbnQuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QnLCAnbm9uZScpOwor
ICAgICAgICAgICAgCisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIGlzRHJvcEVmZmVjdEFsbG93
ZWQoY2hvc2VuRHJvcEVmZmVjdCwgYWxsb3dlZERyb3BFZmZlY3QpIHsKKyAgICAgICAgLy8gRXh0
cmFjdGVkIGZyb20gdGhlIEhUTUwgNSBkcmFnLWFuZC1kcm9wIHNlY3Rpb24sIGh0dHA6Ly9kZXYu
dzMub3JnL2h0bWw1L3NwZWMvT3ZlcnZpZXcuaHRtbCNkbmQKKyAgICAgICAgaWYgKGNob3NlbkRy
b3BFZmZlY3QgPT0gIm5vbmUiKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIGlm
IChjaG9zZW5Ecm9wRWZmZWN0ID09ICJjb3B5IiAmJiBbImNvcHkiLCAiY29weUxpbmsiLCAiY29w
eU1vdmUiLCAidW5pbml0aWFsaXplZCIsICJhbGwiXS5pbmRleE9mKGFsbG93ZWREcm9wRWZmZWN0
KSAhPSAtMSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBpZiAoY2hvc2VuRHJv
cEVmZmVjdCA9PSAibW92ZSIgJiYgWyJtb3ZlIiwgImNvcHlNb3ZlIiwgImxpbmtNb3ZlIiwgInVu
aW5pdGlhbGl6ZWQiLCAiYWxsIl0uaW5kZXhPZihhbGxvd2VkRHJvcEVmZmVjdCkgIT0gLTEpCisg
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgaWYgKGNob3NlbkRyb3BFZmZlY3QgPT0g
ImxpbmsiICYmIFsibGluayIsICJjb3B5TGluayIsICJsaW5rTW92ZSIsICJ1bmluaXRpYWxpemVk
IiwgImFsbCJdLmluZGV4T2YoYWxsb3dlZERyb3BFZmZlY3QpICE9IC0xKQorICAgICAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBmdW5jdGlv
biBydW5UZXN0KCkKKyAgICB7CisgICAgICAgIGlmICghd2luZG93LmV2ZW50U2VuZGVyKQorICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgCisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisgICAgICAgICAgICAKKyAgICAgICAgdmFyIHN0YXJ0WCA9IGRyYWdNZS5vZmZzZXRM
ZWZ0ICsgMTA7CisgICAgICAgIHZhciBzdGFydFkgPSBkcmFnTWUub2Zmc2V0VG9wICsgZHJhZ01l
Lm9mZnNldEhlaWdodCAvIDI7CisgICAgICAgIHZhciBlbmRYID0gZHJvcFRhcmdldC5vZmZzZXRM
ZWZ0ICsgMTA7CisgICAgICAgIHZhciBlbmRZID0gZHJvcFRhcmdldC5vZmZzZXRUb3AgKyBkcm9w
VGFyZ2V0Lm9mZnNldEhlaWdodCAvIDI7CisgICAgICAgIAorICAgICAgICB2YXIgbnVtRWZmZWN0
cyA9IGRyb3BFZmZlY3RFbGVtLm9wdGlvbnMubGVuZ3RoOworICAgICAgICAKKyAgICAgICAgZm9y
ICh2YXIgaiA9IDA7IGogPCBudW1FZmZlY3RzOyArK2opIHsKKyAgICAgICAgICAgIGRyb3BFZmZl
Y3RFbGVtLm9wdGlvbnNbal0uc2VsZWN0ZWQgPSB0cnVlOworICAgICAgICAgICAgZXZlbnRTZW5k
ZXIubW91c2VNb3ZlVG8oc3RhcnRYLCBzdGFydFkpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIu
bW91c2VEb3duKCk7CisgICAgICAgICAgICBldmVudFNlbmRlci5sZWFwRm9yd2FyZCgxMDApOwor
ICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oZW5kWCwgZW5kWSk7CisgICAgICAg
ICAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7CisgICAgICAgIH0KKyAgICAgICAgdmFyIHRlc3RD
b250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdC1jb250YWluZXIiKTsKKyAg
ICAgICAgaWYgKHRlc3RDb250YWluZXIpCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92
ZUNoaWxkKHRlc3RDb250YWluZXIpOworICAgICAgICBkZWJ1ZygnPGJyIC8+PHNwYW4gY2xhc3M9
InBhc3MiPlRFU1QgQ09NUExFVEU8L3NwYW4+Jyk7CisgICAgfQorPC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKyAgICA8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKyAgICA8ZGl2IGlkPSJ0ZXN0
LWNvbnRhaW5lciI+CisgICAgICAgIDxsYWJlbCBmb3I9ImVmZmVjdEFsbG93ZWQiPmVmZmVjdEFs
bG93ZWQ6PC9sYWJlbD4gPGNvZGU+PHNjcmlwdD5kb2N1bWVudC53cml0ZShBTExPV0VEX0VGRkVD
VFMpPC9zY3JpcHQ+PC9jb2RlPgorICAgICAgICA8YnIvPjxici8+CisgICAgICAgIDxkaXYgaWQ9
ImRyb3BUYXJnZXQiPkRyb3AgdGhlIHJlZCBzcXVhcmUgb250byBtZS48YnIvPjxici8+CisgICAg
ICAgICAgICA8bGFiZWwgZm9yPSJkcm9wRWZmZWN0Ij5FeHBlY3RzIGRyb3BFZmZlY3Q8L2xhYmVs
PiA8c2VsZWN0IGlkPSJkcm9wRWZmZWN0Ij4KKyAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVl
PSJub25lIj5Ob25lPC9vcHRpb24+CisgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iY29w
eSI+Q29weTwvb3B0aW9uPgorICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im1vdmUiPk1v
dmU8L29wdGlvbj4KKyAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJsaW5rIj5MaW5rPC9v
cHRpb24+CisgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZHVtbXkiPk5vbmV4aXN0ZW50
IChEdW1teSkgRWZmZWN0PC9vcHRpb24+CisgICAgICAgICAgICA8L3NlbGVjdD4KKyAgICAgICAg
PC9kaXY+CisgICAgICAgIDxoci8+CisgICAgICAgIDxwPkl0ZW1zIHRoYXQgY2FuIGJlIGRyYWdn
ZWQgdG8gdGhlIGRyb3AgdGFyZ2V0OjwvcD4KKyAgICAgICAgPGRpdiBpZD0iZHJhZ01lIiBkcmFn
Z2FibGU9InRydWUiPlNxdWFyZTwvZGl2PgorICAgICAgICA8aHIvPgorICAgIDwvZGl2PgorICAg
IDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGRlc2NyaXB0
aW9uKCJUaGlzIHRlc3QgY2hlY2tzIHRoYXQgZHJhZy1hbmQtZHJvcCBzdXBwb3J0IHdvcmtzIGFu
ZCBjb25mb3JtcyB0byB0aGUgSFRNTCA1IHNwZWNpZmljYXRpb24gd2hlbiAiICsKKyAgICAgICAg
ICAgICAgICAgICAgImVmZmVjdEFsbG93ZWQgPSA8Y29kZT5ub25lPC9jb2RlPi48YnIvPiIgKwor
ICAgICAgICAgICAgICAgICAgICAiVGhpcyB0ZXN0IGl0ZXJhdGVzIHRocm91Z2ggdGhlIHBvc3Np
YmxlIGRyb3BFZmZlY3RzOiBub25lLCBjb3B5LCBtb3ZlLCBsaW5rLCBkdW1teS4iKTsKKyAgICAg
ICAgdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkocmV2aXNpb24gNDkxOTUp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAt
MTA1LDYgKzEwNSw5IEBAIGVkaXRpbmcvc2VsZWN0aW9uL2RyYWctaW4taWZyYW1lLmh0bWwKIGZh
c3QvZXZlbnRzL2RyYWctaW4tZnJhbWVzLmh0bWwKIGZhc3QvZXZlbnRzL3N0YW5kYWxvbmUtaW1h
Z2UtZHJhZy10by1lZGl0YWJsZS5odG1sCiAKKyMgV2luZG93cyBkcmFnLWFuZC1kcm9wIGRvZXMg
bm90IHdvcmsgY29ycmVjdGx5IChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjQ3MzEpCitmYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLW5vbmUuaHRtbAorCiAjIDxyZGFy
Oi8vcHJvYmxlbS81NjQzNjc1PiB3aW5kb3cuc2Nyb2xsVG8gc2Nyb2xscyBhIHdpbmRvdyB3aXRo
IG5vIHNjcm9sbGJhcnMKIGZhc3QvZXZlbnRzL2F0dGVtcHQtc2Nyb2xsLXdpdGgtbm8tc2Nyb2xs
YmFycy5odG1sCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>