<?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>68957</bug_id>
          
          <creation_ts>2011-09-27 16:37:00 -0700</creation_ts>
          <short_desc>[MutationObservers] Implement WebKitMutationObserver.observe for characterData changes</short_desc>
          <delta_ts>2011-10-18 16:06:05 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          <dependson>68956</dependson>
          <blocked>68729</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Klein">adamk</reporter>
          <assigned_to name="Adam Klein">adamk</assigned_to>
          <cc>darin</cc>
    
    <cc>mjs</cc>
    
    <cc>ojan</cc>
    
    <cc>rafaelw</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>474348</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Klein">adamk</who>
    <bug_when>2011-09-27 16:37:00 -0700</bug_when>
    <thetext>[MutationObservers] Implement WebKitMutationObserver.observe for characterData changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486306</commentid>
    <comment_count>1</comment_count>
      <attachid>111500</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2011-10-18 14:23:47 -0700</bug_when>
    <thetext>Created attachment 111500
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486396</commentid>
    <comment_count>2</comment_count>
      <attachid>111500</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-18 16:05:59 -0700</bug_when>
    <thetext>Comment on attachment 111500
Patch

Clearing flags on attachment: 111500

Committed r97805: &lt;http://trac.webkit.org/changeset/97805&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486397</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-18 16:06:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111500</attachid>
            <date>2011-10-18 14:23:47 -0700</date>
            <delta_ts>2011-10-18 16:05:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68957-20111018142346.patch</filename>
            <type>text/plain</type>
            <size>11343</size>
            <attacher name="Adam Klein">adamk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTc3ODkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0M2I0Y2IyMWY4MTc1MGZk
ZWViNzE5MWVkNTg5YWNiMWE0ZmNmMjUyLi40NGNhMDU0N2RjYWIwZGFjODY3NWQyNzNmMmIwYWNj
MTlmYjU2ZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMTAtMTggIEFkYW0g
S2xlaW4gIDxhZGFta0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW011dGF0aW9uT2JzZXJ2ZXJz
XSBJbXBsZW1lbnQgV2ViS2l0TXV0YXRpb25PYnNlcnZlci5vYnNlcnZlIGZvciBjaGFyYWN0ZXJE
YXRhIGNoYW5nZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY4OTU3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGVzdDogZmFzdC9tdXRhdGlvbi9vYnNlcnZlLWNoYXJhY3RlcmRhdGEuaHRtbAorCisgICAg
ICAgICogZG9tL0NoYXJhY3RlckRhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2hhcmFjdGVy
RGF0YTo6ZGlzcGF0Y2hNb2RpZmllZEV2ZW50KToKKwogMjAxMS0xMC0xOCAgSnVsaWVuIENoYWZm
cmFpeCAgPGpjaGFmZnJhaXhAd2Via2l0Lm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBSZW5kZXJE
ZXByZWNhdGVkRmxleGlibGVCb3g6OmxheW91dEhvcml6b250YWxCb3gKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9DaGFyYWN0ZXJEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9D
aGFyYWN0ZXJEYXRhLmNwcAppbmRleCA3NDAxYzI4MDVmMjk4MGY0ODEzMGJhMDA3NDVlNjcyMTJh
YjI4OGZlLi44Zjc5ZjU3YzY2ZmM4OTg3NDFjODFkZmI3Mzk5YWJlYzJiNDIyOWEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hhcmFjdGVyRGF0YS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0NoYXJhY3RlckRhdGEuY3BwCkBAIC0yNyw5ICsyNywxMSBAQAogI2luY2x1ZGUg
IkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIK
ICNpbmNsdWRlICJNdXRhdGlvbkV2ZW50LmgiCisjaW5jbHVkZSAiTXV0YXRpb25SZWNvcmQuaCIK
ICNpbmNsdWRlICJOb2RlUmVuZGVyaW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIlJlbmRlclRleHQu
aCIKICNpbmNsdWRlICJUZXh0QnJlYWtJdGVyYXRvci5oIgorI2luY2x1ZGUgIldlYktpdE11dGF0
aW9uT2JzZXJ2ZXIuaCIKIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtMTkwLDYgKzE5Miwx
NSBAQCB2b2lkIENoYXJhY3RlckRhdGE6OnVwZGF0ZVJlbmRlcmVyKHVuc2lnbmVkIG9mZnNldE9m
UmVwbGFjZWREYXRhLCB1bnNpZ25lZCBsZW5ndAogCiB2b2lkIENoYXJhY3RlckRhdGE6OmRpc3Bh
dGNoTW9kaWZpZWRFdmVudChTdHJpbmdJbXBsKiBvbGREYXRhKQogeworI2lmIEVOQUJMRShNVVRB
VElPTl9PQlNFUlZFUlMpCisgICAgVmVjdG9yPFdlYktpdE11dGF0aW9uT2JzZXJ2ZXIqPiBvYnNl
cnZlcnM7CisgICAgcmVnaXN0ZXJlZE11dGF0aW9uT2JzZXJ2ZXJzT2ZUeXBlKG9ic2VydmVycywg
V2ViS2l0TXV0YXRpb25PYnNlcnZlcjo6Q2hhcmFjdGVyRGF0YSk7CisgICAgaWYgKCFvYnNlcnZl
cnMuaXNFbXB0eSgpKSB7CisgICAgICAgIFJlZlB0cjxNdXRhdGlvblJlY29yZD4gbXV0YXRpb24g
PSBNdXRhdGlvblJlY29yZDo6Y3JlYXRlQ2hhcmFjdGVyRGF0YSh0aGlzKTsKKyAgICAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBvYnNlcnZlcnMuc2l6ZSgpOyArK2kpCisgICAgICAgICAgICBv
YnNlcnZlcnNbaV0tPmVucXVldWVNdXRhdGlvblJlY29yZChtdXRhdGlvbik7CisgICAgfQorI2Vu
ZGlmCiAgICAgaWYgKHBhcmVudE5vZGUoKSkKICAgICAgICAgcGFyZW50Tm9kZSgpLT5jaGlsZHJl
bkNoYW5nZWQoKTsKICAgICBpZiAoZG9jdW1lbnQoKS0+aGFzTGlzdGVuZXJUeXBlKERvY3VtZW50
OjpET01DSEFSQUNURVJEQVRBTU9ESUZJRURfTElTVEVORVIpKQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGExN2M3Yjc3NWQw
N2JiNTY4MzdiYTRlOTM4ODdhNmNkNWQwNTcxMTAuLjQ1MzYzNWRmZGIxNTRhMGMxNjAwZjM4Nzdk
ZDE2ZWY3MTc2YjIwN2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxNSBAQAogMjAxMS0xMC0xOCAgQWRhbSBL
bGVpbiAgPGFkYW1rQGNocm9taXVtLm9yZz4KIAorICAgICAgICBbTXV0YXRpb25PYnNlcnZlcnNd
IEltcGxlbWVudCBXZWJLaXRNdXRhdGlvbk9ic2VydmVyLm9ic2VydmUgZm9yIGNoYXJhY3RlckRh
dGEgY2hhbmdlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Njg5NTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGZhc3QvbXV0YXRpb24vb2JzZXJ2ZS1jaGFyYWN0ZXJkYXRhLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9tdXRhdGlvbi9vYnNlcnZlLWNoYXJhY3RlcmRhdGEuaHRtbDog
QWRkZWQuCisKKzIwMTEtMTAtMTggIEFkYW0gS2xlaW4gIDxhZGFta0BjaHJvbWl1bS5vcmc+CisK
ICAgICAgICAgQ29ycmVjdGVkIGJhZCBjdXQtYW5kLXBhc3RlIGluIE11dGF0aW9uT2JzZXJ2ZXIg
dGVzdCBkZXNjcmlwdGlvbi4KIAogICAgICAgICBVbnJldmlld2VkLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9vYnNlcnZlLWNoYXJhY3RlcmRhdGEtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9vYnNlcnZlLWNoYXJhY3RlcmRhdGEtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjNkNWE3NTRmYjlhODRjZTY0NzBhYjYxZDNkMjEzNWNmMzU1OTQ1
ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL29ic2VydmUt
Y2hhcmFjdGVyZGF0YS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzOSBAQAorVGVzdCBXZWJLaXRN
dXRhdGlvbk9ic2VydmVyLm9ic2VydmUgb24gQ2hhcmFjdGVyRGF0YSBub2RlcworCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworVGVzdGluZyBiYXNpYyBhc3BlY3RzIG9mIGNoYXJhY3Rl
ckRhdGEgb2JzZXJ2YXRpb24uCisuLi5jYW4gY2hhcmFjdGVyRGF0YSBjaGFuZ2VzIGJlIG9ic2Vy
dmVkIGF0IGFsbAorUEFTUyBtdXRhdGlvbnMubGVuZ3RoIGlzIDEKK1BBU1MgbXV0YXRpb25zWzBd
LnR5cGUgaXMgImNoYXJhY3RlckRhdGEiCitQQVNTIG11dGF0aW9uc1swXS50YXJnZXQgaXMgY2hh
ckRhdGFOb2RlCisuLi5vYnNlcnZlci5kaXNjb25uZWN0KCkgc2hvdWxkIHByZXZlbnQgZnVydGhl
ciBkZWxpdmVyeSBvZiBtdXRhdGlvbnMuCitQQVNTIG11dGF0aW9ucyBpcyBudWxsCisuLi5yZS1v
YnNlcnZpbmcgYWZ0ZXIgZGlzY29ubmVjdCB3b3JrcyB3aXRoIHRoZSBzYW1lIG9ic2VydmVyLgor
UEFTUyBtdXRhdGlvbnMubGVuZ3RoIGlzIDIKK1BBU1MgbXV0YXRpb25zWzBdLnR5cGUgaXMgImNo
YXJhY3RlckRhdGEiCitQQVNTIG11dGF0aW9uc1swXS50YXJnZXQgaXMgY2hhckRhdGFOb2RlCitQ
QVNTIG11dGF0aW9uc1sxXS50eXBlIGlzICJjaGFyYWN0ZXJEYXRhIgorUEFTUyBtdXRhdGlvbnNb
MV0udGFyZ2V0IGlzIGNoYXJEYXRhTm9kZQorCitUZXN0aW5nIHRoYXQgb2JzZXJ2aW5nIHdpdGhv
dXQgc3BlY2lmeWluZyAiY2hhcmFjdGVyRGF0YSIgZG9lcyBub3QgcmVzdWx0IGluIGhlYXJpbmcg
YWJvdXQgY2hhcmFjdGVyRGF0YSBjaGFuZ2VzLgorUEFTUyBtdXRhdGlvbnMgaXMgbnVsbAorCitU
ZXN0aW5nIHRoYXQgbXVsdGlwbGUgb2JzZXJ2ZXJzIGNhbiBiZSByZWdpc3RlcmVkIHRvIGEgZ2l2
ZW4gbm9kZSBhbmQgYm90aCByZWNlaXZlIG11dGF0aW9ucy4KK1BBU1MgbXV0YXRpb25zLmxlbmd0
aCBpcyAxCitQQVNTIG11dGF0aW9uc1swXS50eXBlIGlzICJjaGFyYWN0ZXJEYXRhIgorUEFTUyBt
dXRhdGlvbnNbMF0udGFyZ2V0IGlzIGNoYXJEYXRhTm9kZQorUEFTUyBtdXRhdGlvbnMyLmxlbmd0
aCBpcyAxCitQQVNTIG11dGF0aW9uczJbMF0udHlwZSBpcyAiY2hhcmFjdGVyRGF0YSIKK1BBU1Mg
bXV0YXRpb25zMlswXS50YXJnZXQgaXMgY2hhckRhdGFOb2RlCisKK1Rlc3RpbmcgbXV0YXRpb24g
cmVjb3JkcyBhcmUgZW5xdWV1ZWQgZm9yIGNoYXJhY3RlckRhdGEgYmVmb3JlIERPTVN1YnRyZWVN
b2RpZmllZCBpcyBkaXNwYXRjaGVkLgorUEFTUyBtdXRhdGlvbnMubGVuZ3RoIGlzIDIKK1BBU1Mg
bXV0YXRpb25zWzBdLnR5cGUgaXMgImNoYXJhY3RlckRhdGEiCitQQVNTIG11dGF0aW9uc1sxXS50
eXBlIGlzICJhdHRyaWJ1dGVzIgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9v
YnNlcnZlLWNoYXJhY3RlcmRhdGEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbXV0YXRpb24vb2Jz
ZXJ2ZS1jaGFyYWN0ZXJkYXRhLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmVmN2VjYzQ2ZDZhMzMyNGY3ODBl
ODQ3ZjEwNjljZTIzNWNiYWU2OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
bXV0YXRpb24vb2JzZXJ2ZS1jaGFyYWN0ZXJkYXRhLmh0bWwKQEAgLTAsMCArMSwyMTggQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUu
Y3NzIj4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPHRpdGxlPjwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPWRlc2NyaXB0aW9u
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKword2luZG93LmpzVGVz
dElzQXN5bmMgPSB0cnVlOwordmFyIG11dGF0aW9uczsKK3ZhciBtdXRhdGlvbnMyOwordmFyIGNh
bGxzOwordmFyIGNoYXJEYXRhTm9kZTsKKworZnVuY3Rpb24gdGVzdEJhc2ljKCkgeworICAgIHZh
ciBkaXY7CisgICAgdmFyIG9ic2VydmVyOworCisgICAgZnVuY3Rpb24gc3RhcnQoKSB7CisgICAg
ICAgIGRlYnVnKCdUZXN0aW5nIGJhc2ljIGFzcGVjdHMgb2YgY2hhcmFjdGVyRGF0YSBvYnNlcnZh
dGlvbi4nKTsKKworICAgICAgICBtdXRhdGlvbnMgPSBudWxsOworICAgICAgICBkaXYgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgZGl2LnRleHRDb250ZW50ID0gJ2Zv
byc7CisgICAgICAgIGNoYXJEYXRhTm9kZSA9IGRpdi5maXJzdENoaWxkOworICAgICAgICBvYnNl
cnZlciA9IG5ldyBXZWJLaXRNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uKG0pIHsKKyAgICAgICAg
ICAgIG11dGF0aW9ucyA9IG07CisgICAgICAgIH0pOworCisgICAgICAgIG9ic2VydmVyLm9ic2Vy
dmUoY2hhckRhdGFOb2RlLCB7Y2hhcmFjdGVyRGF0YTogdHJ1ZX0pOworICAgICAgICBjaGFyRGF0
YU5vZGUudGV4dENvbnRlbnQgPSAnYmFyJzsKKyAgICAgICAgc2V0VGltZW91dChjaGVja0Rpc2Nv
bm5lY3RBbmRNdXRhdGUsIDApOworICAgIH0KKworICAgIGZ1bmN0aW9uIGNoZWNrRGlzY29ubmVj
dEFuZE11dGF0ZSgpIHsKKyAgICAgICAgZGVidWcoJy4uLmNhbiBjaGFyYWN0ZXJEYXRhIGNoYW5n
ZXMgYmUgb2JzZXJ2ZWQgYXQgYWxsJyk7CisKKyAgICAgICAgc2hvdWxkQmUoJ211dGF0aW9ucy5s
ZW5ndGgnLCAnMScpOworICAgICAgICBzaG91bGRCZSgnbXV0YXRpb25zWzBdLnR5cGUnLCAnImNo
YXJhY3RlckRhdGEiJyk7CisgICAgICAgIHNob3VsZEJlKCdtdXRhdGlvbnNbMF0udGFyZ2V0Jywg
J2NoYXJEYXRhTm9kZScpOworCisgICAgICAgIG11dGF0aW9ucyA9IG51bGw7CisgICAgICAgIG9i
c2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgY2hhckRhdGFOb2RlLnRleHRDb250ZW50ID0g
J2Jheic7CisgICAgICAgIHNldFRpbWVvdXQoY2hlY2tOb3REZWxpdmVyZWRBbmRNdXRhdGVNdWx0
aXBsZSwgMCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gY2hlY2tOb3REZWxpdmVyZWRBbmRNdXRh
dGVNdWx0aXBsZSgpIHsKKyAgICAgICAgZGVidWcoJy4uLm9ic2VydmVyLmRpc2Nvbm5lY3QoKSBz
aG91bGQgcHJldmVudCBmdXJ0aGVyIGRlbGl2ZXJ5IG9mIG11dGF0aW9ucy4nKTsKKworICAgICAg
ICBzaG91bGRCZSgnbXV0YXRpb25zJywgJ251bGwnKTsKKyAgICAgICAgY2hhckRhdGFOb2RlID0g
ZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgpOworICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGNoYXJE
YXRhTm9kZSwgeyBjaGFyYWN0ZXJEYXRhOiB0cnVlIH0pOworICAgICAgICBjaGFyRGF0YU5vZGUu
dGV4dENvbnRlbnQgPSAnZm9vJzsKKyAgICAgICAgY2hhckRhdGFOb2RlLnRleHRDb250ZW50ID0g
J2Jhcic7CisgICAgICAgIHNldFRpbWVvdXQoZmluaXNoKTsKKyAgICB9CisKKyAgICBmdW5jdGlv
biBmaW5pc2goKSB7CisgICAgICAgIGRlYnVnKCcuLi5yZS1vYnNlcnZpbmcgYWZ0ZXIgZGlzY29u
bmVjdCB3b3JrcyB3aXRoIHRoZSBzYW1lIG9ic2VydmVyLicpOworCisgICAgICAgIHNob3VsZEJl
KCdtdXRhdGlvbnMubGVuZ3RoJywgJzInKTsKKyAgICAgICAgc2hvdWxkQmUoJ211dGF0aW9uc1sw
XS50eXBlJywgJyJjaGFyYWN0ZXJEYXRhIicpOworICAgICAgICBzaG91bGRCZSgnbXV0YXRpb25z
WzBdLnRhcmdldCcsICdjaGFyRGF0YU5vZGUnKTsKKyAgICAgICAgc2hvdWxkQmUoJ211dGF0aW9u
c1sxXS50eXBlJywgJyJjaGFyYWN0ZXJEYXRhIicpOworICAgICAgICBzaG91bGRCZSgnbXV0YXRp
b25zWzFdLnRhcmdldCcsICdjaGFyRGF0YU5vZGUnKTsKKyAgICAgICAgb2JzZXJ2ZXIuZGlzY29u
bmVjdCgpOworICAgICAgICBkZWJ1ZygnJyk7CisgICAgICAgIHJ1bk5leHRUZXN0KCk7CisgICAg
fQorCisgICAgc3RhcnQoKTsKK30KKworZnVuY3Rpb24gdGVzdFdyb25nVHlwZSgpIHsKKyAgICB2
YXIgZGl2OworICAgIHZhciBvYnNlcnZlcjsKKworICAgIGZ1bmN0aW9uIHN0YXJ0KCkgeworICAg
ICAgICBkZWJ1ZygnVGVzdGluZyB0aGF0IG9ic2VydmluZyB3aXRob3V0IHNwZWNpZnlpbmcgImNo
YXJhY3RlckRhdGEiIGRvZXMgbm90IHJlc3VsdCBpbiBoZWFyaW5nIGFib3V0IGNoYXJhY3RlckRh
dGEgY2hhbmdlcy4nKTsKKworICAgICAgICBtdXRhdGlvbnMgPSBudWxsOworICAgICAgICBkaXYg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgZGl2LnRleHRDb250ZW50
ID0gJ2hlbGxvJzsKKyAgICAgICAgY2hhckRhdGFOb2RlID0gZGl2LmZpcnN0Q2hpbGQ7CisgICAg
ICAgIG9ic2VydmVyID0gbmV3IFdlYktpdE11dGF0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24obSkgewor
ICAgICAgICAgICAgbXV0YXRpb25zID0gbTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgb2JzZXJ2
ZXIub2JzZXJ2ZShjaGFyRGF0YU5vZGUsIHtjaGlsZExpc3Q6IHRydWUsIGF0dHJpYnV0ZXM6IHRy
dWV9KTsKKyAgICAgICAgY2hhckRhdGFOb2RlID0gJ2dvb2RieWUnOworICAgICAgICBzZXRUaW1l
b3V0KGZpbmlzaCwgMCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gZmluaXNoKCkgeworICAgICAg
ICBzaG91bGRCZSgnbXV0YXRpb25zJywgJ251bGwnKTsKKyAgICAgICAgb2JzZXJ2ZXIuZGlzY29u
bmVjdCgpOworICAgICAgICBkZWJ1ZygnJyk7CisgICAgICAgIHJ1bk5leHRUZXN0KCk7CisgICAg
fQorCisgICAgc3RhcnQoKTsKK30KKworZnVuY3Rpb24gdGVzdE11bHRpcGxlT2JzZXJ2ZXJzKCkg
eworICAgIHZhciBkaXY7CisgICAgdmFyIG9ic2VydmVyOworICAgIHZhciBvYnNlcnZlcjI7CisK
KyAgICBmdW5jdGlvbiBzdGFydCgpIHsKKyAgICAgICAgZGVidWcoJ1Rlc3RpbmcgdGhhdCBtdWx0
aXBsZSBvYnNlcnZlcnMgY2FuIGJlIHJlZ2lzdGVyZWQgdG8gYSBnaXZlbiBub2RlIGFuZCBib3Ro
IHJlY2VpdmUgbXV0YXRpb25zLicpOworICAgICAgICBtdXRhdGlvbnMgPSBudWxsOworICAgICAg
ICBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgZGl2LnRleHRD
b250ZW50ID0gJ2Zvbyc7CisgICAgICAgIGNoYXJEYXRhTm9kZSA9IGRpdi5maXJzdENoaWxkOwor
ICAgICAgICBvYnNlcnZlciA9IG5ldyBXZWJLaXRNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uKG0p
IHsKKyAgICAgICAgICAgIG11dGF0aW9ucyA9IG07CisgICAgICAgIH0pOworICAgICAgICBvYnNl
cnZlcjIgPSBuZXcgV2ViS2l0TXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbihtKSB7CisgICAgICAg
ICAgICBtdXRhdGlvbnMyID0gbTsKKyAgICAgICAgfSk7CisgICAgICAgIG9ic2VydmVyLm9ic2Vy
dmUoY2hhckRhdGFOb2RlLCB7Y2hhcmFjdGVyRGF0YTogdHJ1ZX0pOworICAgICAgICBvYnNlcnZl
cjIub2JzZXJ2ZShjaGFyRGF0YU5vZGUsIHtjaGFyYWN0ZXJEYXRhOiB0cnVlfSk7CisgICAgICAg
IGNoYXJEYXRhTm9kZS50ZXh0Q29udGVudCA9ICdiYXInOworICAgICAgICBzZXRUaW1lb3V0KGZp
bmlzaCwgMCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gZmluaXNoKCkgeworICAgICAgICBzaG91
bGRCZSgnbXV0YXRpb25zLmxlbmd0aCcsICcxJyk7CisgICAgICAgIHNob3VsZEJlKCdtdXRhdGlv
bnNbMF0udHlwZScsICciY2hhcmFjdGVyRGF0YSInKTsKKyAgICAgICAgc2hvdWxkQmUoJ211dGF0
aW9uc1swXS50YXJnZXQnLCAnY2hhckRhdGFOb2RlJyk7CisgICAgICAgIHNob3VsZEJlKCdtdXRh
dGlvbnMyLmxlbmd0aCcsICcxJyk7CisgICAgICAgIHNob3VsZEJlKCdtdXRhdGlvbnMyWzBdLnR5
cGUnLCAnImNoYXJhY3RlckRhdGEiJyk7CisgICAgICAgIHNob3VsZEJlKCdtdXRhdGlvbnMyWzBd
LnRhcmdldCcsICdjaGFyRGF0YU5vZGUnKTsKKyAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgp
OworICAgICAgICBvYnNlcnZlcjIuZGlzY29ubmVjdCgpOworICAgICAgICBkZWJ1ZygnJyk7Cisg
ICAgICAgIHJ1bk5leHRUZXN0KCk7CisgICAgfQorCisgICAgc3RhcnQoKTsKK30KKworZnVuY3Rp
b24gdGVzdE9yZGVyaW5nV3J0RE9NU3VidHJlZU1vZGlmaWVkKCkgeworICAgIHZhciBkaXYsIGRp
djIsIHN1YkRpdjsKKyAgICB2YXIgb2JzZXJ2ZXI7CisgICAgdmFyIGxpc3RlbmVyOworCisgICAg
ZnVuY3Rpb24gc3RhcnQoKSB7CisgICAgICAgIGRlYnVnKCdUZXN0aW5nIG11dGF0aW9uIHJlY29y
ZHMgYXJlIGVucXVldWVkIGZvciBjaGFyYWN0ZXJEYXRhIGJlZm9yZSBET01TdWJ0cmVlTW9kaWZp
ZWQgaXMgZGlzcGF0Y2hlZC4nKTsKKworICAgICAgICBtdXRhdGlvbnMgPSBudWxsOworICAgICAg
ICBkaXYgPSBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2RpdicpKTsKKyAgICAgICAgZGl2MiA9IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnZGl2JykpOworCisgICAgICAgIHN1YkRpdiA9IGRpdi5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKSk7CisgICAgICAgIHN1YkRpdi50ZXh0
Q29udGVudCA9ICdmb28nOworICAgICAgICBjaGFyRGF0YU5vZGUgPSBzdWJEaXYuZmlyc3RDaGls
ZDsKKworICAgICAgICBvYnNlcnZlciA9IG5ldyBXZWJLaXRNdXRhdGlvbk9ic2VydmVyKGZ1bmN0
aW9uKG0pIHsKKyAgICAgICAgICAgIG11dGF0aW9ucyA9IG07CisgICAgICAgIH0pOworCisgICAg
ICAgIGxpc3RlbmVyID0gZnVuY3Rpb24oZSkgeworICAgICAgICAgICAgZGl2Mi5zZXRBdHRyaWJ1
dGUoJ2JheicsICdiYXQnKTsKKyAgICAgICAgfQorCisgICAgICAgIGRpdi5hZGRFdmVudExpc3Rl
bmVyKCdET01TdWJ0cmVlTW9kaWZpZWQnLCBsaXN0ZW5lcik7CisgICAgICAgIG9ic2VydmVyLm9i
c2VydmUoY2hhckRhdGFOb2RlLCB7Y2hhcmFjdGVyRGF0YTogdHJ1ZX0pOworICAgICAgICBvYnNl
cnZlci5vYnNlcnZlKGRpdjIsIHthdHRyaWJ1dGVzOiB0cnVlfSk7CisKKyAgICAgICAgY2hhckRh
dGFOb2RlLnRleHRDb250ZW50ID0gJ2Jhcic7CisKKyAgICAgICAgc2V0VGltZW91dChmaW5pc2gs
IDApOworICAgIH0KKworICAgIGZ1bmN0aW9uIGZpbmlzaCgpIHsKKyAgICAgICAgc2hvdWxkQmUo
J211dGF0aW9ucy5sZW5ndGgnLCAnMicpOworICAgICAgICBzaG91bGRCZSgnbXV0YXRpb25zWzBd
LnR5cGUnLCAnImNoYXJhY3RlckRhdGEiJyk7CisgICAgICAgIHNob3VsZEJlKCdtdXRhdGlvbnNb
MV0udHlwZScsICciYXR0cmlidXRlcyInKTsKKyAgICAgICAgZGl2LnJlbW92ZUV2ZW50TGlzdGVu
ZXIobGlzdGVuZXIpOworICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRpdik7Cisg
ICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsKKyAgICAgICAgZGVidWcoJycpOworICAgICAg
ICBydW5OZXh0VGVzdCgpOworICAgIH0KKworICAgIHN0YXJ0KCk7Cit9CisKK3ZhciB0ZXN0cyA9
IFt0ZXN0QmFzaWMsIHRlc3RXcm9uZ1R5cGUsIHRlc3RNdWx0aXBsZU9ic2VydmVycywgdGVzdE9y
ZGVyaW5nV3J0RE9NU3VidHJlZU1vZGlmaWVkXTsKK3ZhciB0ZXN0SW5kZXggPSAwOworCitmdW5j
dGlvbiBydW5OZXh0VGVzdCgpIHsKKyAgICBpZiAodGVzdEluZGV4IDwgdGVzdHMubGVuZ3RoKQor
ICAgICAgICB0ZXN0c1t0ZXN0SW5kZXgrK10oKTsKKyAgICBlbHNlCisgICAgICAgIGZpbmlzaEpT
VGVzdCgpOworfQorCitkZXNjcmlwdGlvbignVGVzdCBXZWJLaXRNdXRhdGlvbk9ic2VydmVyLm9i
c2VydmUgb24gQ2hhcmFjdGVyRGF0YSBub2RlcycpOworCitpZiAoIXdpbmRvdy5XZWJLaXRNdXRh
dGlvbk9ic2VydmVyKQorICAgIHRlc3RGYWlsZWQoJ1RoaXMgdGVzdCByZXF1aXJlcyBFTkFCTEUo
TVVUQVRJT05fT0JTRVJWRVJTKScpOworZWxzZQorICAgIHJ1bk5leHRUZXN0KCk7CisKK3ZhciBz
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworCis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>