<?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>148299</bug_id>
          
          <creation_ts>2015-08-21 05:20:58 -0700</creation_ts>
          <short_desc>[Streams API] Add general writable streams tests</short_desc>
          <delta_ts>2015-09-14 00:53:21 -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>New Bugs</component>
          <version>WebKit 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>
          
          <blocked>148305</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Xabier Rodríguez Calvar">calvaris</reporter>
          <assigned_to name="Xabier Rodríguez Calvar">calvaris</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1119719</commentid>
    <comment_count>0</comment_count>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2015-08-21 05:20:58 -0700</bug_when>
    <thetext>[Streams API] Add general writable streams tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1119720</commentid>
    <comment_count>1</comment_count>
      <attachid>259604</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2015-08-21 05:21:20 -0700</bug_when>
    <thetext>Created attachment 259604
Patch

Added general writable streams tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124894</commentid>
    <comment_count>2</comment_count>
      <attachid>260927</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2015-09-10 07:20:15 -0700</bug_when>
    <thetext>Created attachment 260927
Patch

Increased some timeouts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1125561</commentid>
    <comment_count>3</comment_count>
      <attachid>260927</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-09-14 00:53:18 -0700</bug_when>
    <thetext>Comment on attachment 260927
Patch

Clearing flags on attachment: 260927

Committed r189686: &lt;http://trac.webkit.org/changeset/189686&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1125562</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-09-14 00:53:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>259604</attachid>
            <date>2015-08-21 05:21:20 -0700</date>
            <delta_ts>2015-09-10 07:20:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148299-20150821142114.patch</filename>
            <type>text/plain</type>
            <size>11264</size>
            <attacher name="Xabier Rodríguez Calvar">calvaris</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg4NjkyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODVmZTJmZmY0ZmJiNmEwMGUxMzMy
OTgxODExYzE2NDg0NzFhOGRlMS4uMjYyODAzYjBjNjgwNGExZmFmMzc2MzMyNzBhMzMxODE1N2Q3
YzY1MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE1LTA4LTIxICBYYWJpZXIgUm9kcmlndWV6
IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBB
ZGQgZ2VuZXJhbCB3cml0YWJsZSBzdHJlYW1zIHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDgyOTkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0
aW9uL3dyaXRhYmxlLXN0cmVhbS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0cmVh
bXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3dyaXRhYmxlLXN0cmVhbS5odG1sOiBBZGRlZC4K
KwogMjAxNS0wOC0yMCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAg
IFtDb2NvYV0gVHJlYXQgRXBvY2ggYXMgaW52YWxpZCB2YWx1ZSBmb3IgIkxhc3QtTW9kaWZpZWQi
IGhlYWRlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RyZWFtcy9yZWZlcmVuY2UtaW1wbGVt
ZW50YXRpb24vd3JpdGFibGUtc3RyZWFtLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0cmVh
bXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3dyaXRhYmxlLXN0cmVhbS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNTVjZDdlNGJkMDhmMTZlN2E2MWM5M2M4ZTY2NTdkY2JhZDI2YzExNAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0
aW9uL3dyaXRhYmxlLXN0cmVhbS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorCitGQUlM
IGVycm9yIGFyZ3VtZW50IGlzIGdpdmVuIHRvIHN0YXJ0IG1ldGhvZCBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBXcml0YWJsZVN0cmVhbQorRkFJTCBVbmRlcmx5aW5nIHNpbmsncyB3cml0ZSB3b24ndCBi
ZSBjYWxsZWQgdW50aWwgc3RhcnQgZmluaXNoZXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFi
bGVTdHJlYW0KK0ZBSUwgVW5kZXJseWluZyBzaW5rJ3MgY2xvc2Ugd29uJ3QgYmUgY2FsbGVkIHVu
dGlsIHN0YXJ0IGZpbmlzaGVzIENhbid0IGZpbmQgdmFyaWFibGU6IFdyaXRhYmxlU3RyZWFtCitG
QUlMIEZ1bGZpbGxtZW50IHZhbHVlIG9mIHdzLmNsb3NlKCkgY2FsbCBtdXN0IGJlIHVuZGVmaW5l
ZCBldmVuIGlmIHRoZSB1bmRlcmx5aW5nIHNpbmsgcmV0dXJucyBhIG5vbi11bmRlZmluZWQgdmFs
dWUgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVTdHJlYW0KK0ZBSUwgVW5kZXJseWluZyBz
aW5rJ3Mgd3JpdGUgb3IgY2xvc2UgYXJlIG5ldmVyIGludm9rZWQgaWYgc3RhcnQgdGhyb3dzIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIG9iamVjdCAiRXJyb3I6IGhvcnJpYmxlIHRoaW5ncyIgYnV0
IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXcml0YWJs
ZVN0cmVhbSIKK0ZBSUwgVW5kZXJseWluZyBzaW5rJ3Mgd3JpdGUgb3IgY2xvc2UgYXJlIG5ldmVy
IGludm9rZWQgaWYgdGhlIHByb21pc2UgcmV0dXJuZWQgYnkgc3RhcnQgaXMgcmVqZWN0ZWQgQ2Fu
J3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVTdHJlYW0KK0ZBSUwgV3JpdGFibGVTdHJlYW0gY2Fu
IGJlIGNvbnN0cnVjdGVkIHdpdGggbm8gYXJndW1lbnRzIENhbid0IGZpbmQgdmFyaWFibGU6IFdy
aXRhYmxlU3RyZWFtCitGQUlMIFdyaXRhYmxlU3RyZWFtIGluc3RhbmNlcyBoYXZlIHRoZSBjb3Jy
ZWN0IG1ldGhvZHMgYW5kIHByb3BlcnRpZXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVT
dHJlYW0KK0ZBSUwgV3JpdGFibGVTdHJlYW0gd2l0aCBzaW1wbGUgaW5wdXQsIHByb2Nlc3NlZCBh
c3luY2hyb25vdXNseSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVhbQorRkFJTCBX
cml0YWJsZVN0cmVhbSB3aXRoIHNpbXBsZSBpbnB1dCwgcHJvY2Vzc2VkIHN5bmNocm9ub3VzbHkg
Q2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVTdHJlYW0KK0ZBSUwgV3JpdGFibGVTdHJlYW0g
aXMgd3JpdGFibGUgYW5kIHJlYWR5IGZ1bGZpbGxzIGltbWVkaWF0ZWx5IGlmIHRoZSBzdHJhdGVn
eSBkb2VzIG5vdCBhcHBseSBiYWNrcHJlc3N1cmUgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFi
bGVTdHJlYW0KK0ZBSUwgRnVsZmlsbG1lbnQgdmFsdWUgb2Ygd3Mud3JpdGUoKSBjYWxsIG11c3Qg
YmUgdW5kZWZpbmVkIGV2ZW4gaWYgdGhlIHVuZGVybHlpbmcgc2luayByZXR1cm5zIGEgbm9uLXVu
ZGVmaW5lZCBvdmFsdWUgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVTdHJlYW0KKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RyZWFtcy9yZWZlcmVuY2UtaW1wbGVtZW50YXRpb24vd3Jp
dGFibGUtc3RyZWFtLmh0bWwgYi9MYXlvdXRUZXN0cy9zdHJlYW1zL3JlZmVyZW5jZS1pbXBsZW1l
bnRhdGlvbi93cml0YWJsZS1zdHJlYW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ODM5ZTM1ZjBjYTAwZjA1
NjQ3MzgzODYwMjkxMGRiZjIwZDk3YjRiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
c3RyZWFtcy9yZWZlcmVuY2UtaW1wbGVtZW50YXRpb24vd3JpdGFibGUtc3RyZWFtLmh0bWwKQEAg
LTAsMCArMSwyNTQgQEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdCBzcmM9Jy4uLy4uL3Jlc291
cmNlcy90ZXN0aGFybmVzcy5qcyc+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0nLi4vLi4vcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzJz48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSdyZXNvdXJj
ZXMvc3RyZWFtcy11dGlscy5qcyc+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gd3JpdGVB
cnJheVRvU3RyZWFtKGFycmF5LCB3cml0YWJsZVN0cmVhbSkgeworICAgIGFycmF5LmZvckVhY2go
ZnVuY3Rpb24oY2h1bmspIHsgd3JpdGFibGVTdHJlYW0ud3JpdGUoY2h1bmspOyB9KQorICAgIHJl
dHVybiB3cml0YWJsZVN0cmVhbS5jbG9zZSgpOworfQorCit2YXIgdGVzdDEgPSBhc3luY190ZXN0
KCdlcnJvciBhcmd1bWVudCBpcyBnaXZlbiB0byBzdGFydCBtZXRob2QnKTsKK3Rlc3QxLnN0ZXAo
ZnVuY3Rpb24oKSB7CisgICAgdmFyIGVycm9yOworICAgIHZhciB3cyA9IG5ldyBXcml0YWJsZVN0
cmVhbSh7CisgICAgICAgIHN0YXJ0OiBmdW5jdGlvbihlcnJvcl8pIHsKKyAgICAgICAgICAgIGVy
cm9yID0gZXJyb3JfOworICAgICAgICB9CisgICAgfSk7CisKKyAgICAvLyBOb3cgZXJyb3IgdGhl
IHN0cmVhbSBhZnRlciBpdHMgY29uc3RydWN0aW9uLgorICAgIHZhciBwYXNzZWRFcnJvciA9IG5l
dyBFcnJvcignaG9ycmlibGUgdGhpbmdzJyk7CisgICAgZXJyb3IocGFzc2VkRXJyb3IpOworICAg
IGFzc2VydF9lcXVhbHMod3Muc3RhdGUsICdlcnJvcmVkJyk7CisgICAgd3MuY2xvc2VkLmNhdGNo
KHRlc3QxLnN0ZXBfZnVuYyhmdW5jdGlvbihyKSB7CisgICAgICAgIGFzc2VydF9lcXVhbHMociwg
cGFzc2VkRXJyb3IpOworICAgICAgICB0ZXN0MS5kb25lKCk7CisgICAgfSkpOworfSk7CisKK3Zh
ciB0ZXN0MiA9IGFzeW5jX3Rlc3QoJ1VuZGVybHlpbmcgc2lua1wncyB3cml0ZSB3b25cJ3QgYmUg
Y2FsbGVkIHVudGlsIHN0YXJ0IGZpbmlzaGVzJyk7Cit0ZXN0Mi5zdGVwKGZ1bmN0aW9uKCkgewor
ICAgIHZhciBleHBlY3RXcml0ZUNhbGwgPSBmYWxzZTsKKworICAgIHZhciByZXNvbHZlU3RhcnRQ
cm9taXNlOworICAgIHZhciB3cyA9IG5ldyBXcml0YWJsZVN0cmVhbSh7CisgICAgICAgIHN0YXJ0
OiBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSh0ZXN0Mi5zdGVw
X2Z1bmMoZnVuY3Rpb24ocmVzb2x2ZSkgeyByZXNvbHZlU3RhcnRQcm9taXNlID0gcmVzb2x2ZTsg
fSkpOworICAgICAgICB9LAorICAgICAgICB3cml0ZTogZnVuY3Rpb24oY2h1bmspIHsKKyAgICAg
ICAgICAgIGlmIChleHBlY3RXcml0ZUNhbGwpIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGNodW5rLCAnYScpOworICAgICAgICAgICAgICAgIHRlc3QyLmRvbmUoKTsKKyAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVW5leHBlY3Rl
ZCB3cml0ZSBjYWxsJyk7CisgICAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgIGNsb3Nl
OiBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1VuZXhwZWN0ZWQg
Y2xvc2UgY2FsbCcpOworICAgICAgICB9CisgICAgfSk7CisKKyAgICB3cy53cml0ZSgnYScpOwor
ICAgIGFzc2VydF9lcXVhbHMod3Muc3RhdGUsICd3YWl0aW5nJywgJ3dyaXRhYmxlIHN0cmVhbSBz
aG91bGQgYmUgd2FpdGluZywgbm90ICcgKyB3cy5zdGF0ZSk7CisKKyAgICAvLyBXYWl0IGFuZCBz
ZWUgdGhhdCB3cml0ZSB3b24ndCBiZSBjYWxsZWQuCisgICAgc2V0VGltZW91dCh0ZXN0Mi5zdGVw
X2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgIGV4cGVjdFdyaXRlQ2FsbCA9IHRydWU7CisgICAg
ICAgIHJlc29sdmVTdGFydFByb21pc2UoKTsKKyAgICB9KSwgMTAwKTsKK30pOworCit2YXIgdGVz
dDMgPSBhc3luY190ZXN0KCdVbmRlcmx5aW5nIHNpbmtcJ3MgY2xvc2Ugd29uXCd0IGJlIGNhbGxl
ZCB1bnRpbCBzdGFydCBmaW5pc2hlcycpOwordGVzdDMuc3RlcChmdW5jdGlvbigpIHsKKyAgICB2
YXIgZXhwZWN0Q2xvc2VDYWxsID0gZmFsc2U7CisKKyAgICB2YXIgcmVzb2x2ZVN0YXJ0UHJvbWlz
ZTsKKyAgICB2YXIgd3MgPSBuZXcgV3JpdGFibGVTdHJlYW0oeworICAgICAgICBzdGFydDogZnVu
Y3Rpb24oKSB7CisgICAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UodGVzdDMuc3RlcF9mdW5j
KGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgeyByZXNvbHZlU3RhcnRQcm9taXNlID0gcmVzb2x2
ZTsgfSkpOworICAgICAgICB9LAorICAgICAgICB3cml0ZTogZnVuY3Rpb24oY2h1bmspIHsKKyAg
ICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1VuZXhwZWN0ZWQgd3JpdGUgY2FsbCcpOworICAg
ICAgICB9LAorICAgICAgICBjbG9zZTogZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBpZiAoZXhw
ZWN0Q2xvc2VDYWxsKSB7CisgICAgICAgICAgICAgICAgdGVzdDMuZG9uZSgpOworICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdVbmV4cGVjdGVk
IGNsb3NlIGNhbGwnKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0pOworICAgIHdz
LmNsb3NlKCdhJyk7CisgICAgYXNzZXJ0X2VxdWFscyh3cy5zdGF0ZSwgJ2Nsb3NpbmcnKTsKKwor
ICAgIC8vIFdhaXQgYW5kIHNlZSB0aGF0IHdyaXRlIHdvbid0IGJlIGNhbGxlZC4KKyAgICBzZXRU
aW1lb3V0KHRlc3QzLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgZXhwZWN0Q2xvc2VD
YWxsID0gdHJ1ZTsKKyAgICAgICAgcmVzb2x2ZVN0YXJ0UHJvbWlzZSgpOworICAgIH0pLCAxMDAp
OworfSk7CisKK3ZhciB0ZXN0NCA9IGFzeW5jX3Rlc3QoJ0Z1bGZpbGxtZW50IHZhbHVlIG9mIHdz
LmNsb3NlKCkgY2FsbCBtdXN0IGJlIHVuZGVmaW5lZCBldmVuIGlmIHRoZSB1bmRlcmx5aW5nIHNp
bmsgcmV0dXJucyBhIG5vbi11bmRlZmluZWQgdmFsdWUnKTsKK3Rlc3Q0LnN0ZXAoZnVuY3Rpb24o
KSB7CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHsKKyAgICAgICAgY2xvc2U6IGZ1
bmN0aW9uKCkgeworICAgICAgICAgICAgcmV0dXJuICdIZWxsbyc7CisgICAgICAgIH0KKyAgICB9
KTsKKworICAgIHZhciBjbG9zZVByb21pc2UgPSB3cy5jbG9zZSgnYScpOworICAgIGNsb3NlUHJv
bWlzZS50aGVuKHRlc3Q0LnN0ZXBfZnVuYyhmdW5jdGlvbih2YWx1ZSkgeworICAgICAgICBhc3Nl
cnRfZXF1YWxzKHZhbHVlLCB1bmRlZmluZWQsICdmdWxmaWxsbWVudCB2YWx1ZSBtdXN0IGJlIHVu
ZGVmaW5lZCcpOworICAgICAgICB0ZXN0NC5kb25lKCk7CisgICAgfSkpLmNhdGNoKHRlc3Q0LnN0
ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnY2xvc2VQcm9t
aXNlIGlzIHJlamVjdGVkJyk7CisgICAgfSkpOworfSk7CisKK3ZhciB0ZXN0NSA9IGFzeW5jX3Rl
c3QoJ1VuZGVybHlpbmcgc2lua1wncyB3cml0ZSBvciBjbG9zZSBhcmUgbmV2ZXIgaW52b2tlZCBp
ZiBzdGFydCB0aHJvd3MnKTsKK3Rlc3Q1LnN0ZXAoZnVuY3Rpb24oKSB7CisgICAgdmFyIHBhc3Nl
ZEVycm9yID0gbmV3IEVycm9yKCdob3JyaWJsZSB0aGluZ3MnKTsKKworICAgIHRyeSB7CisgICAg
ICAgIHZhciB3cyA9IG5ldyBXcml0YWJsZVN0cmVhbSh7CisgICAgICAgICAgICBzdGFydDogZnVu
Y3Rpb24oKSB7CisgICAgICAgICAgICAgICAgdGhyb3cgcGFzc2VkRXJyb3I7CisgICAgICAgICAg
ICB9LAorICAgICAgICAgICAgd3JpdGU6IGZ1bmN0aW9uKGNodW5rKSB7CisgICAgICAgICAgICAg
ICAgYXNzZXJ0X3VucmVhY2hlZCgnVW5leHBlY3RlZCB3cml0ZSBjYWxsJyk7CisgICAgICAgICAg
ICB9LAorICAgICAgICAgICAgY2xvc2U6IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIGFz
c2VydF91bnJlYWNoZWQoJ1VuZXhwZWN0ZWQgY2xvc2UgY2FsbCcpOworICAgICAgICAgICAgfQor
ICAgICAgICB9KTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIGFzc2VydF9lcXVhbHMoZSwg
cGFzc2VkRXJyb3IpOworICAgICAgICB0ZXN0NS5kb25lKCk7CisgICAgfQorICAgIGFzc2VydF91
bnJlYWNoZWQoJ0NvbnN0cnVjdG9yIGRpZG5cJ3QgdGhyb3cnKTsKK30pOworCit2YXIgdGVzdDYg
PSBhc3luY190ZXN0KCdVbmRlcmx5aW5nIHNpbmtcJ3Mgd3JpdGUgb3IgY2xvc2UgYXJlIG5ldmVy
IGludm9rZWQgaWYgdGhlIHByb21pc2UgcmV0dXJuZWQgYnkgc3RhcnQgaXMgcmVqZWN0ZWQnKTsK
K3Rlc3Q2LnN0ZXAoZnVuY3Rpb24oKSB7CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFt
KHsKKyAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgcmV0dXJuIFByb21p
c2UucmVqZWN0KCk7CisgICAgICAgIH0sCisgICAgICAgIHdyaXRlOiBmdW5jdGlvbihjaHVuaykg
eworICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVW5leHBlY3RlZCB3cml0ZSBjYWxsJyk7
CisgICAgICAgIH0sCisgICAgICAgIGNsb3NlOiBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGFz
c2VydF91bnJlYWNoZWQoJ1VuZXhwZWN0ZWQgY2xvc2UgY2FsbCcpOworICAgICAgICB9CisgICAg
fSk7CisKKyAgICAvLyBXYWl0IGFuZCBzZWUgdGhhdCB3cml0ZSBvciBjbG9zZSB3b24ndCBiZSBj
YWxsZWQuCisgICAgc2V0VGltZW91dCh0ZXN0Ni5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAg
ICAgIHRlc3Q2LmRvbmUoKTsKKyAgICB9KSwgMTAwKTsKK30pOworCit0ZXN0KGZ1bmN0aW9uKCkg
eworICAgIG5ldyBXcml0YWJsZVN0cmVhbSgpIC8vIFdyaXRhYmxlU3RyZWFtIGNvbnN0cnVjdGVk
IHdpdGggbm8gZXJyb3JzLgorfSwgJ1dyaXRhYmxlU3RyZWFtIGNhbiBiZSBjb25zdHJ1Y3RlZCB3
aXRoIG5vIGFyZ3VtZW50cycpOworCit0ZXN0KGZ1bmN0aW9uKCkgeworICAgIHZhciB3cyA9IG5l
dyBXcml0YWJsZVN0cmVhbSgpOworCisgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2Ygd3Mud3JpdGUs
ICdmdW5jdGlvbicsICdoYXMgYSB3cml0ZSBtZXRob2QnKTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5
cGVvZiB3cy5hYm9ydCwgJ2Z1bmN0aW9uJywgJ2hhcyBhbiBhYm9ydCBtZXRob2QnKTsKKyAgICBh
c3NlcnRfZXF1YWxzKHR5cGVvZiB3cy5jbG9zZSwgJ2Z1bmN0aW9uJywgJ2hhcyBhIGNsb3NlIG1l
dGhvZCcpOworCisgICAgYXNzZXJ0X2VxdWFscyh3cy5zdGF0ZSwgJ3dyaXRhYmxlJywgJ3N0YXRl
IHN0YXJ0cyBvdXQgd3JpdGFibGUnKTsKKworICAgIGFzc2VydF90cnVlKCdyZWFkeScgaW4gd3Ms
ICdoYXMgYSByZWFkeSBwcm9wZXJ0eScpOworICAgIGFzc2VydF90cnVlKCd0aGVuJyBpbiB3cy5y
ZWFkeSwgJ3JlYWR5IHByb3BlcnR5IGlzIGEgdGhlbmFibGUnKTsKKyAgICBhc3NlcnRfdHJ1ZSgn
Y2xvc2VkJyBpbiB3cywgJ2hhcyBhIGNsb3NlZCBwcm9wZXJ0eScpOworICAgIGFzc2VydF90cnVl
KCd0aGVuJyBpbiB3cy5jbG9zZWQsICdjbG9zZWQgcHJvcGVydHkgaXMgdGhlbmFibGUnKTsKK30s
ICdXcml0YWJsZVN0cmVhbSBpbnN0YW5jZXMgaGF2ZSB0aGUgY29ycmVjdCBtZXRob2RzIGFuZCBw
cm9wZXJ0aWVzJyk7CisKK3ZhciB0ZXN0NyA9IGFzeW5jX3Rlc3QoJ1dyaXRhYmxlU3RyZWFtIHdp
dGggc2ltcGxlIGlucHV0LCBwcm9jZXNzZWQgYXN5bmNocm9ub3VzbHknKTsKK3Rlc3Q3LnN0ZXAo
ZnVuY3Rpb24oKSB7CisgICAgdmFyIHN0b3JhZ2U7CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxl
U3RyZWFtKHsKKyAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgc3RvcmFn
ZSA9IFtdOworICAgICAgICB9LAorCisgICAgICAgIHdyaXRlOiBmdW5jdGlvbihjaHVuaykgewor
ICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHRlc3Q3LnN0ZXBfZnVuYyhmdW5jdGlvbihy
ZXNvbHZlKSB7CisgICAgICAgICAgICAgICAgc2V0VGltZW91dCh0ZXN0Ny5zdGVwX2Z1bmMoZnVu
Y3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UucHVzaChjaHVuayk7CisgICAg
ICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKKyAgICAgICAgICAgICAgICB9KSwgMCk7CisgICAg
ICAgICAgICB9KSk7CisgICAgICAgIH0sCisKKyAgICAgICAgY2xvc2U6IGZ1bmN0aW9uKCkgewor
ICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHRlc3Q3LnN0ZXBfZnVuYyhmdW5jdGlvbihy
ZXNvbHZlKSB7IHNldFRpbWVvdXQodGVzdDcuc3RlcF9mdW5jKHJlc29sdmUpLCAwKTsgfSkpOwor
ICAgICAgICB9CisgICAgfSk7CisKKyAgICB2YXIgaW5wdXQgPSBbMSwgMiwgMywgNCwgNV07Cisg
ICAgd3JpdGVBcnJheVRvU3RyZWFtKGlucHV0LCB3cykudGhlbigKKyAgICAgICAgdGVzdDcuc3Rl
cF9mdW5jKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhzdG9y
YWdlLCBpbnB1dCwgJ2NvcnJlY3QgZGF0YSB3YXMgcmVsYXllZCB0byB1bmRlcmx5aW5nIHNpbmsn
KTsKKyAgICAgICAgICAgIHRlc3Q3LmRvbmUoKTsKKyAgICAgICAgfSksCisgICAgICAgIHRlc3Q3
LnN0ZXBfZnVuYyhmdW5jdGlvbihyKSB7IGFzc2VydF91bnJlYWNoZWQocik7IH0pCisgICAgKTsK
K30pOworCit2YXIgdGVzdDggPSBhc3luY190ZXN0KCdXcml0YWJsZVN0cmVhbSB3aXRoIHNpbXBs
ZSBpbnB1dCwgcHJvY2Vzc2VkIHN5bmNocm9ub3VzbHknKTsKK3Rlc3Q4LnN0ZXAoZnVuY3Rpb24o
KSB7CisgICAgdmFyIHN0b3JhZ2U7CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHsK
KyAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgc3RvcmFnZSA9IFtdOwor
ICAgICAgICB9LAorCisgICAgICAgIHdyaXRlOiBmdW5jdGlvbihjaHVuaykgeworICAgICAgICAg
ICAgc3RvcmFnZS5wdXNoKGNodW5rKTsKKyAgICAgICAgfSwKKyAgICB9KTsKKworICAgIHZhciBp
bnB1dCA9IFsxLCAyLCAzLCA0LCA1XTsKKyAgICB3cml0ZUFycmF5VG9TdHJlYW0oaW5wdXQsIHdz
KS50aGVuKAorICAgICAgICB0ZXN0OC5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgICAg
ICBhc3NlcnRfYXJyYXlfZXF1YWxzKHN0b3JhZ2UsIGlucHV0LCAnY29ycmVjdCBkYXRhIHdhcyBy
ZWxheWVkIHRvIHVuZGVybHlpbmcgc2luaycpOworICAgICAgICAgICAgdGVzdDguZG9uZSgpOwor
ICAgICAgICB9KSwKKyAgICAgICAgdGVzdDguc3RlcF9mdW5jKGZ1bmN0aW9uKHIpIHsgYXNzZXJ0
X3VucmVhY2hlZChyKTsgfSkKKyAgICApOworfSk7CisKK3ZhciB0ZXN0OSA9IGFzeW5jX3Rlc3Qo
J1dyaXRhYmxlU3RyZWFtIGlzIHdyaXRhYmxlIGFuZCByZWFkeSBmdWxmaWxscyBpbW1lZGlhdGVs
eSBpZiB0aGUgc3RyYXRlZ3kgZG9lcyBub3QgYXBwbHkgYmFja3ByZXNzdXJlJyk7Cit0ZXN0OS5z
dGVwKGZ1bmN0aW9uKCkgeworICAgIHZhciB3cyA9IG5ldyBXcml0YWJsZVN0cmVhbSh7fSwgewor
ICAgICAgICBoaWdoV2F0ZXJNYXJrOiBJbmZpbml0eSwKKyAgICAgICAgc2l6ZSgpIHsgcmV0dXJu
IDA7IH0KKyAgICB9KTsKKworICAgIGFzc2VydF9lcXVhbHMod3Muc3RhdGUsICd3cml0YWJsZScp
OworCisgICAgd3MucmVhZHkudGhlbih0ZXN0OS5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAg
ICAgIHRlc3Q5LmRvbmUoJ3JlYWR5IHByb21pc2Ugd2FzIGZ1bGZpbGxlZCcpOworICAgIH0pKTsK
K30pOworCit2YXIgdGVzdDEwID0gYXN5bmNfdGVzdCgnRnVsZmlsbG1lbnQgdmFsdWUgb2Ygd3Mu
d3JpdGUoKSBjYWxsIG11c3QgYmUgdW5kZWZpbmVkIGV2ZW4gaWYgdGhlIHVuZGVybHlpbmcgc2lu
ayByZXR1cm5zIGEgbm9uLXVuZGVmaW5lZCBvdmFsdWUnKTsKK3Rlc3QxMC5zdGVwKGZ1bmN0aW9u
KCkgeworICAgIHZhciB3cyA9IG5ldyBXcml0YWJsZVN0cmVhbSh7CisgICAgICAgIHdyaXRlOiBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIHJldHVybiAnSGVsbG8nOworICAgICAgICB9CisgICAg
fSk7CisKKyAgICB2YXIgd3JpdGVQcm9taXNlID0gd3Mud3JpdGUoJ2EnKTsKKyAgICB3cml0ZVBy
b21pc2UudGhlbih0ZXN0MTAuc3RlcF9mdW5jKGZ1bmN0aW9uKHZhbHVlKSB7CisgICAgICAgIGFz
c2VydF9lcXVhbHModmFsdWUsIHVuZGVmaW5lZCwgJ2Z1bGZpbGxtZW50IHZhbHVlIG11c3QgYmUg
dW5kZWZpbmVkJyk7CisgICAgICAgIHRlc3QxMC5kb25lKCk7CisgICAgfSkpLmNhdGNoKHRlc3Qx
MC5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7IGFzc2VydF91bnJlYWNoZWQoJ3dyaXRlUHJvbWlzZSBp
cyByZWplY3RlZCcpOyB9KSk7Cit9KTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260927</attachid>
            <date>2015-09-10 07:20:15 -0700</date>
            <delta_ts>2015-09-14 00:53:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148299-20150910162008.patch</filename>
            <type>text/plain</type>
            <size>11257</size>
            <attacher name="Xabier Rodríguez Calvar">calvaris</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg5NTY1CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTNkYWQ2MGRiYmVkZDdhMWI0MGQ1
ZmFiMGY5YjMzZTkyMTM3MGU5ZC4uYjlmYjg4MmE5NjhkMTdlNDYxZWVkNzQ0ZTIxM2VhYjM2MDZi
ZDU4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE1LTA5LTEwICBYYWJpZXIgUm9kcmlndWV6
IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBB
ZGQgZ2VuZXJhbCB3cml0YWJsZSBzdHJlYW1zIHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDgyOTkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0
aW9uL3dyaXRhYmxlLXN0cmVhbS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0cmVh
bXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3dyaXRhYmxlLXN0cmVhbS5odG1sOiBBZGRlZC4K
KwogMjAxNS0wOS0wOSAgRGV3ZWkgWmh1ICA8ZGV3ZWlfemh1QGFwcGxlLmNvbT4KIAogICAgICAg
ICBEb2N1bWVudC5jaGFyYWN0ZXJTZXQgc2hvdWxkIHJldHVybiAiVVRGLTgiIGJ5IGRlZmF1bHQu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdHJlYW1zL3JlZmVyZW5jZS1pbXBsZW1lbnRhdGlv
bi93cml0YWJsZS1zdHJlYW0tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RyZWFtcy9yZWZl
cmVuY2UtaW1wbGVtZW50YXRpb24vd3JpdGFibGUtc3RyZWFtLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi41NWNkN2U0YmQwOGYxNmU3YTYxYzkzYzhlNjY1N2RjYmFkMjZjMTE0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RyZWFtcy9yZWZlcmVuY2UtaW1wbGVtZW50YXRpb24vd3Jp
dGFibGUtc3RyZWFtLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACisKK0ZBSUwgZXJyb3Ig
YXJndW1lbnQgaXMgZ2l2ZW4gdG8gc3RhcnQgbWV0aG9kIENhbid0IGZpbmQgdmFyaWFibGU6IFdy
aXRhYmxlU3RyZWFtCitGQUlMIFVuZGVybHlpbmcgc2luaydzIHdyaXRlIHdvbid0IGJlIGNhbGxl
ZCB1bnRpbCBzdGFydCBmaW5pc2hlcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVh
bQorRkFJTCBVbmRlcmx5aW5nIHNpbmsncyBjbG9zZSB3b24ndCBiZSBjYWxsZWQgdW50aWwgc3Rh
cnQgZmluaXNoZXMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVTdHJlYW0KK0ZBSUwgRnVs
ZmlsbG1lbnQgdmFsdWUgb2Ygd3MuY2xvc2UoKSBjYWxsIG11c3QgYmUgdW5kZWZpbmVkIGV2ZW4g
aWYgdGhlIHVuZGVybHlpbmcgc2luayByZXR1cm5zIGEgbm9uLXVuZGVmaW5lZCB2YWx1ZSBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVhbQorRkFJTCBVbmRlcmx5aW5nIHNpbmsncyB3
cml0ZSBvciBjbG9zZSBhcmUgbmV2ZXIgaW52b2tlZCBpZiBzdGFydCB0aHJvd3MgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgb2JqZWN0ICJFcnJvcjogaG9ycmlibGUgdGhpbmdzIiBidXQgZ290IG9i
amVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IFdyaXRhYmxlU3RyZWFt
IgorRkFJTCBVbmRlcmx5aW5nIHNpbmsncyB3cml0ZSBvciBjbG9zZSBhcmUgbmV2ZXIgaW52b2tl
ZCBpZiB0aGUgcHJvbWlzZSByZXR1cm5lZCBieSBzdGFydCBpcyByZWplY3RlZCBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBXcml0YWJsZVN0cmVhbQorRkFJTCBXcml0YWJsZVN0cmVhbSBjYW4gYmUgY29u
c3RydWN0ZWQgd2l0aCBubyBhcmd1bWVudHMgQ2FuJ3QgZmluZCB2YXJpYWJsZTogV3JpdGFibGVT
dHJlYW0KK0ZBSUwgV3JpdGFibGVTdHJlYW0gaW5zdGFuY2VzIGhhdmUgdGhlIGNvcnJlY3QgbWV0
aG9kcyBhbmQgcHJvcGVydGllcyBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVhbQor
RkFJTCBXcml0YWJsZVN0cmVhbSB3aXRoIHNpbXBsZSBpbnB1dCwgcHJvY2Vzc2VkIGFzeW5jaHJv
bm91c2x5IENhbid0IGZpbmQgdmFyaWFibGU6IFdyaXRhYmxlU3RyZWFtCitGQUlMIFdyaXRhYmxl
U3RyZWFtIHdpdGggc2ltcGxlIGlucHV0LCBwcm9jZXNzZWQgc3luY2hyb25vdXNseSBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVhbQorRkFJTCBXcml0YWJsZVN0cmVhbSBpcyB3cml0
YWJsZSBhbmQgcmVhZHkgZnVsZmlsbHMgaW1tZWRpYXRlbHkgaWYgdGhlIHN0cmF0ZWd5IGRvZXMg
bm90IGFwcGx5IGJhY2twcmVzc3VyZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVh
bQorRkFJTCBGdWxmaWxsbWVudCB2YWx1ZSBvZiB3cy53cml0ZSgpIGNhbGwgbXVzdCBiZSB1bmRl
ZmluZWQgZXZlbiBpZiB0aGUgdW5kZXJseWluZyBzaW5rIHJldHVybnMgYSBub24tdW5kZWZpbmVk
IG92YWx1ZSBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXcml0YWJsZVN0cmVhbQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9zdHJlYW1zL3JlZmVyZW5jZS1pbXBsZW1lbnRhdGlvbi93cml0YWJsZS1z
dHJlYW0uaHRtbCBiL0xheW91dFRlc3RzL3N0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9u
L3dyaXRhYmxlLXN0cmVhbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwODkzYmMwNDFjOWU5Y2VlZDkzZjdm
MzZmMDBiNjI1OTBhNDQ1YTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdHJlYW1z
L3JlZmVyZW5jZS1pbXBsZW1lbnRhdGlvbi93cml0YWJsZS1zdHJlYW0uaHRtbApAQCAtMCwwICsx
LDI1NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0IHNyYz0nLi4vLi4vcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzJz48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPScuLi8uLi9yZXNvdXJjZXMvdGVz
dGhhcm5lc3NyZXBvcnQuanMnPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9J3Jlc291cmNlcy9zdHJl
YW1zLXV0aWxzLmpzJz48L3NjcmlwdD4KKzxzY3JpcHQ+CitmdW5jdGlvbiB3cml0ZUFycmF5VG9T
dHJlYW0oYXJyYXksIHdyaXRhYmxlU3RyZWFtKSB7CisgICAgYXJyYXkuZm9yRWFjaChmdW5jdGlv
bihjaHVuaykgeyB3cml0YWJsZVN0cmVhbS53cml0ZShjaHVuayk7IH0pCisgICAgcmV0dXJuIHdy
aXRhYmxlU3RyZWFtLmNsb3NlKCk7Cit9CisKK3ZhciB0ZXN0MSA9IGFzeW5jX3Rlc3QoJ2Vycm9y
IGFyZ3VtZW50IGlzIGdpdmVuIHRvIHN0YXJ0IG1ldGhvZCcpOwordGVzdDEuc3RlcChmdW5jdGlv
bigpIHsKKyAgICB2YXIgZXJyb3I7CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHsK
KyAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uKGVycm9yXykgeworICAgICAgICAgICAgZXJyb3IgPSBl
cnJvcl87CisgICAgICAgIH0KKyAgICB9KTsKKworICAgIC8vIE5vdyBlcnJvciB0aGUgc3RyZWFt
IGFmdGVyIGl0cyBjb25zdHJ1Y3Rpb24uCisgICAgdmFyIHBhc3NlZEVycm9yID0gbmV3IEVycm9y
KCdob3JyaWJsZSB0aGluZ3MnKTsKKyAgICBlcnJvcihwYXNzZWRFcnJvcik7CisgICAgYXNzZXJ0
X2VxdWFscyh3cy5zdGF0ZSwgJ2Vycm9yZWQnKTsKKyAgICB3cy5jbG9zZWQuY2F0Y2godGVzdDEu
c3RlcF9mdW5jKGZ1bmN0aW9uKHIpIHsKKyAgICAgICAgYXNzZXJ0X2VxdWFscyhyLCBwYXNzZWRF
cnJvcik7CisgICAgICAgIHRlc3QxLmRvbmUoKTsKKyAgICB9KSk7Cit9KTsKKwordmFyIHRlc3Qy
ID0gYXN5bmNfdGVzdCgnVW5kZXJseWluZyBzaW5rXCdzIHdyaXRlIHdvblwndCBiZSBjYWxsZWQg
dW50aWwgc3RhcnQgZmluaXNoZXMnKTsKK3Rlc3QyLnN0ZXAoZnVuY3Rpb24oKSB7CisgICAgdmFy
IGV4cGVjdFdyaXRlQ2FsbCA9IGZhbHNlOworCisgICAgdmFyIHJlc29sdmVTdGFydFByb21pc2U7
CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHsKKyAgICAgICAgc3RhcnQ6IGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHRlc3QyLnN0ZXBfZnVuYyhm
dW5jdGlvbihyZXNvbHZlKSB7IHJlc29sdmVTdGFydFByb21pc2UgPSByZXNvbHZlOyB9KSk7Cisg
ICAgICAgIH0sCisgICAgICAgIHdyaXRlOiBmdW5jdGlvbihjaHVuaykgeworICAgICAgICAgICAg
aWYgKGV4cGVjdFdyaXRlQ2FsbCkgeworICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoY2h1
bmssICdhJyk7CisgICAgICAgICAgICAgICAgdGVzdDIuZG9uZSgpOworICAgICAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdVbmV4cGVjdGVkIHdyaXRl
IGNhbGwnKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgY2xvc2U6IGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnVW5leHBlY3RlZCBjbG9zZSBj
YWxsJyk7CisgICAgICAgIH0KKyAgICB9KTsKKworICAgIHdzLndyaXRlKCdhJyk7CisgICAgYXNz
ZXJ0X2VxdWFscyh3cy5zdGF0ZSwgJ3dhaXRpbmcnLCAnd3JpdGFibGUgc3RyZWFtIHNob3VsZCBi
ZSB3YWl0aW5nLCBub3QgJyArIHdzLnN0YXRlKTsKKworICAgIC8vIFdhaXQgYW5kIHNlZSB0aGF0
IHdyaXRlIHdvbid0IGJlIGNhbGxlZC4KKyAgICBzZXRUaW1lb3V0KHRlc3QyLnN0ZXBfZnVuYyhm
dW5jdGlvbigpIHsKKyAgICAgICAgZXhwZWN0V3JpdGVDYWxsID0gdHJ1ZTsKKyAgICAgICAgcmVz
b2x2ZVN0YXJ0UHJvbWlzZSgpOworICAgIH0pLCAyMDApOworfSk7CisKK3ZhciB0ZXN0MyA9IGFz
eW5jX3Rlc3QoJ1VuZGVybHlpbmcgc2lua1wncyBjbG9zZSB3b25cJ3QgYmUgY2FsbGVkIHVudGls
IHN0YXJ0IGZpbmlzaGVzJyk7Cit0ZXN0My5zdGVwKGZ1bmN0aW9uKCkgeworICAgIHZhciBleHBl
Y3RDbG9zZUNhbGwgPSBmYWxzZTsKKworICAgIHZhciByZXNvbHZlU3RhcnRQcm9taXNlOworICAg
IHZhciB3cyA9IG5ldyBXcml0YWJsZVN0cmVhbSh7CisgICAgICAgIHN0YXJ0OiBmdW5jdGlvbigp
IHsKKyAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSh0ZXN0My5zdGVwX2Z1bmMoZnVuY3Rp
b24ocmVzb2x2ZSwgcmVqZWN0KSB7IHJlc29sdmVTdGFydFByb21pc2UgPSByZXNvbHZlOyB9KSk7
CisgICAgICAgIH0sCisgICAgICAgIHdyaXRlOiBmdW5jdGlvbihjaHVuaykgeworICAgICAgICAg
ICAgYXNzZXJ0X3VucmVhY2hlZCgnVW5leHBlY3RlZCB3cml0ZSBjYWxsJyk7CisgICAgICAgIH0s
CisgICAgICAgIGNsb3NlOiBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGlmIChleHBlY3RDbG9z
ZUNhbGwpIHsKKyAgICAgICAgICAgICAgICB0ZXN0My5kb25lKCk7CisgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoJ1VuZXhwZWN0ZWQgY2xvc2Ug
Y2FsbCcpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfSk7CisgICAgd3MuY2xvc2Uo
J2EnKTsKKyAgICBhc3NlcnRfZXF1YWxzKHdzLnN0YXRlLCAnY2xvc2luZycpOworCisgICAgLy8g
V2FpdCBhbmQgc2VlIHRoYXQgd3JpdGUgd29uJ3QgYmUgY2FsbGVkLgorICAgIHNldFRpbWVvdXQo
dGVzdDMuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgeworICAgICAgICBleHBlY3RDbG9zZUNhbGwgPSB0
cnVlOworICAgICAgICByZXNvbHZlU3RhcnRQcm9taXNlKCk7CisgICAgfSksIDIwMCk7Cit9KTsK
KwordmFyIHRlc3Q0ID0gYXN5bmNfdGVzdCgnRnVsZmlsbG1lbnQgdmFsdWUgb2Ygd3MuY2xvc2Uo
KSBjYWxsIG11c3QgYmUgdW5kZWZpbmVkIGV2ZW4gaWYgdGhlIHVuZGVybHlpbmcgc2luayByZXR1
cm5zIGEgbm9uLXVuZGVmaW5lZCB2YWx1ZScpOwordGVzdDQuc3RlcChmdW5jdGlvbigpIHsKKyAg
ICB2YXIgd3MgPSBuZXcgV3JpdGFibGVTdHJlYW0oeworICAgICAgICBjbG9zZTogZnVuY3Rpb24o
KSB7CisgICAgICAgICAgICByZXR1cm4gJ0hlbGxvJzsKKyAgICAgICAgfQorICAgIH0pOworCisg
ICAgdmFyIGNsb3NlUHJvbWlzZSA9IHdzLmNsb3NlKCdhJyk7CisgICAgY2xvc2VQcm9taXNlLnRo
ZW4odGVzdDQuc3RlcF9mdW5jKGZ1bmN0aW9uKHZhbHVlKSB7CisgICAgICAgIGFzc2VydF9lcXVh
bHModmFsdWUsIHVuZGVmaW5lZCwgJ2Z1bGZpbGxtZW50IHZhbHVlIG11c3QgYmUgdW5kZWZpbmVk
Jyk7CisgICAgICAgIHRlc3Q0LmRvbmUoKTsKKyAgICB9KSkuY2F0Y2godGVzdDQuc3RlcF9mdW5j
KGZ1bmN0aW9uKCkgeworICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdjbG9zZVByb21pc2UgaXMg
cmVqZWN0ZWQnKTsKKyAgICB9KSk7Cit9KTsKKwordmFyIHRlc3Q1ID0gYXN5bmNfdGVzdCgnVW5k
ZXJseWluZyBzaW5rXCdzIHdyaXRlIG9yIGNsb3NlIGFyZSBuZXZlciBpbnZva2VkIGlmIHN0YXJ0
IHRocm93cycpOwordGVzdDUuc3RlcChmdW5jdGlvbigpIHsKKyAgICB2YXIgcGFzc2VkRXJyb3Ig
PSBuZXcgRXJyb3IoJ2hvcnJpYmxlIHRoaW5ncycpOworCisgICAgdHJ5IHsKKyAgICAgICAgdmFy
IHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHsKKyAgICAgICAgICAgIHN0YXJ0OiBmdW5jdGlvbigp
IHsKKyAgICAgICAgICAgICAgICB0aHJvdyBwYXNzZWRFcnJvcjsKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICB3cml0ZTogZnVuY3Rpb24oY2h1bmspIHsKKyAgICAgICAgICAgICAgICBhc3Nl
cnRfdW5yZWFjaGVkKCdVbmV4cGVjdGVkIHdyaXRlIGNhbGwnKTsKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICBjbG9zZTogZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3Vu
cmVhY2hlZCgnVW5leHBlY3RlZCBjbG9zZSBjYWxsJyk7CisgICAgICAgICAgICB9CisgICAgICAg
IH0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgYXNzZXJ0X2VxdWFscyhlLCBwYXNzZWRF
cnJvcik7CisgICAgICAgIHRlc3Q1LmRvbmUoKTsKKyAgICB9CisgICAgYXNzZXJ0X3VucmVhY2hl
ZCgnQ29uc3RydWN0b3IgZGlkblwndCB0aHJvdycpOworfSk7CisKK3ZhciB0ZXN0NiA9IGFzeW5j
X3Rlc3QoJ1VuZGVybHlpbmcgc2lua1wncyB3cml0ZSBvciBjbG9zZSBhcmUgbmV2ZXIgaW52b2tl
ZCBpZiB0aGUgcHJvbWlzZSByZXR1cm5lZCBieSBzdGFydCBpcyByZWplY3RlZCcpOwordGVzdDYu
c3RlcChmdW5jdGlvbigpIHsKKyAgICB2YXIgd3MgPSBuZXcgV3JpdGFibGVTdHJlYW0oeworICAg
ICAgICBzdGFydDogZnVuY3Rpb24oKSB7CisgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWpl
Y3QoKTsKKyAgICAgICAgfSwKKyAgICAgICAgd3JpdGU6IGZ1bmN0aW9uKGNodW5rKSB7CisgICAg
ICAgICAgICBhc3NlcnRfdW5yZWFjaGVkKCdVbmV4cGVjdGVkIHdyaXRlIGNhbGwnKTsKKyAgICAg
ICAgfSwKKyAgICAgICAgY2xvc2U6IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgYXNzZXJ0X3Vu
cmVhY2hlZCgnVW5leHBlY3RlZCBjbG9zZSBjYWxsJyk7CisgICAgICAgIH0KKyAgICB9KTsKKwor
ICAgIC8vIFdhaXQgYW5kIHNlZSB0aGF0IHdyaXRlIG9yIGNsb3NlIHdvbid0IGJlIGNhbGxlZC4K
KyAgICBzZXRUaW1lb3V0KHRlc3Q2LnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgdGVz
dDYuZG9uZSgpOworICAgIH0pLCA1MDApOworfSk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAg
bmV3IFdyaXRhYmxlU3RyZWFtKCkgLy8gV3JpdGFibGVTdHJlYW0gY29uc3RydWN0ZWQgd2l0aCBu
byBlcnJvcnMuCit9LCAnV3JpdGFibGVTdHJlYW0gY2FuIGJlIGNvbnN0cnVjdGVkIHdpdGggbm8g
YXJndW1lbnRzJyk7CisKK3Rlc3QoZnVuY3Rpb24oKSB7CisgICAgdmFyIHdzID0gbmV3IFdyaXRh
YmxlU3RyZWFtKCk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiB3cy53cml0ZSwgJ2Z1bmN0
aW9uJywgJ2hhcyBhIHdyaXRlIG1ldGhvZCcpOworICAgIGFzc2VydF9lcXVhbHModHlwZW9mIHdz
LmFib3J0LCAnZnVuY3Rpb24nLCAnaGFzIGFuIGFib3J0IG1ldGhvZCcpOworICAgIGFzc2VydF9l
cXVhbHModHlwZW9mIHdzLmNsb3NlLCAnZnVuY3Rpb24nLCAnaGFzIGEgY2xvc2UgbWV0aG9kJyk7
CisKKyAgICBhc3NlcnRfZXF1YWxzKHdzLnN0YXRlLCAnd3JpdGFibGUnLCAnc3RhdGUgc3RhcnRz
IG91dCB3cml0YWJsZScpOworCisgICAgYXNzZXJ0X3RydWUoJ3JlYWR5JyBpbiB3cywgJ2hhcyBh
IHJlYWR5IHByb3BlcnR5Jyk7CisgICAgYXNzZXJ0X3RydWUoJ3RoZW4nIGluIHdzLnJlYWR5LCAn
cmVhZHkgcHJvcGVydHkgaXMgYSB0aGVuYWJsZScpOworICAgIGFzc2VydF90cnVlKCdjbG9zZWQn
IGluIHdzLCAnaGFzIGEgY2xvc2VkIHByb3BlcnR5Jyk7CisgICAgYXNzZXJ0X3RydWUoJ3RoZW4n
IGluIHdzLmNsb3NlZCwgJ2Nsb3NlZCBwcm9wZXJ0eSBpcyB0aGVuYWJsZScpOworfSwgJ1dyaXRh
YmxlU3RyZWFtIGluc3RhbmNlcyBoYXZlIHRoZSBjb3JyZWN0IG1ldGhvZHMgYW5kIHByb3BlcnRp
ZXMnKTsKKwordmFyIHRlc3Q3ID0gYXN5bmNfdGVzdCgnV3JpdGFibGVTdHJlYW0gd2l0aCBzaW1w
bGUgaW5wdXQsIHByb2Nlc3NlZCBhc3luY2hyb25vdXNseScpOwordGVzdDcuc3RlcChmdW5jdGlv
bigpIHsKKyAgICB2YXIgc3RvcmFnZTsKKyAgICB2YXIgd3MgPSBuZXcgV3JpdGFibGVTdHJlYW0o
eworICAgICAgICBzdGFydDogZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBzdG9yYWdlID0gW107
CisgICAgICAgIH0sCisKKyAgICAgICAgd3JpdGU6IGZ1bmN0aW9uKGNodW5rKSB7CisgICAgICAg
ICAgICByZXR1cm4gbmV3IFByb21pc2UodGVzdDcuc3RlcF9mdW5jKGZ1bmN0aW9uKHJlc29sdmUp
IHsKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHRlc3Q3LnN0ZXBfZnVuYyhmdW5jdGlvbigp
IHsKKyAgICAgICAgICAgICAgICAgICAgc3RvcmFnZS5wdXNoKGNodW5rKTsKKyAgICAgICAgICAg
ICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICAgICAgICAgIH0pLCAwKTsKKyAgICAgICAgICAg
IH0pKTsKKyAgICAgICAgfSwKKworICAgICAgICBjbG9zZTogZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICByZXR1cm4gbmV3IFByb21pc2UodGVzdDcuc3RlcF9mdW5jKGZ1bmN0aW9uKHJlc29sdmUp
IHsgc2V0VGltZW91dCh0ZXN0Ny5zdGVwX2Z1bmMocmVzb2x2ZSksIDApOyB9KSk7CisgICAgICAg
IH0KKyAgICB9KTsKKworICAgIHZhciBpbnB1dCA9IFsxLCAyLCAzLCA0LCA1XTsKKyAgICB3cml0
ZUFycmF5VG9TdHJlYW0oaW5wdXQsIHdzKS50aGVuKAorICAgICAgICB0ZXN0Ny5zdGVwX2Z1bmMo
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKHN0b3JhZ2UsIGlu
cHV0LCAnY29ycmVjdCBkYXRhIHdhcyByZWxheWVkIHRvIHVuZGVybHlpbmcgc2luaycpOworICAg
ICAgICAgICAgdGVzdDcuZG9uZSgpOworICAgICAgICB9KSwKKyAgICAgICAgdGVzdDcuc3RlcF9m
dW5jKGZ1bmN0aW9uKHIpIHsgYXNzZXJ0X3VucmVhY2hlZChyKTsgfSkKKyAgICApOworfSk7CisK
K3ZhciB0ZXN0OCA9IGFzeW5jX3Rlc3QoJ1dyaXRhYmxlU3RyZWFtIHdpdGggc2ltcGxlIGlucHV0
LCBwcm9jZXNzZWQgc3luY2hyb25vdXNseScpOwordGVzdDguc3RlcChmdW5jdGlvbigpIHsKKyAg
ICB2YXIgc3RvcmFnZTsKKyAgICB2YXIgd3MgPSBuZXcgV3JpdGFibGVTdHJlYW0oeworICAgICAg
ICBzdGFydDogZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBzdG9yYWdlID0gW107CisgICAgICAg
IH0sCisKKyAgICAgICAgd3JpdGU6IGZ1bmN0aW9uKGNodW5rKSB7CisgICAgICAgICAgICBzdG9y
YWdlLnB1c2goY2h1bmspOworICAgICAgICB9LAorICAgIH0pOworCisgICAgdmFyIGlucHV0ID0g
WzEsIDIsIDMsIDQsIDVdOworICAgIHdyaXRlQXJyYXlUb1N0cmVhbShpbnB1dCwgd3MpLnRoZW4o
CisgICAgICAgIHRlc3Q4LnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGFzc2Vy
dF9hcnJheV9lcXVhbHMoc3RvcmFnZSwgaW5wdXQsICdjb3JyZWN0IGRhdGEgd2FzIHJlbGF5ZWQg
dG8gdW5kZXJseWluZyBzaW5rJyk7CisgICAgICAgICAgICB0ZXN0OC5kb25lKCk7CisgICAgICAg
IH0pLAorICAgICAgICB0ZXN0OC5zdGVwX2Z1bmMoZnVuY3Rpb24ocikgeyBhc3NlcnRfdW5yZWFj
aGVkKHIpOyB9KQorICAgICk7Cit9KTsKKwordmFyIHRlc3Q5ID0gYXN5bmNfdGVzdCgnV3JpdGFi
bGVTdHJlYW0gaXMgd3JpdGFibGUgYW5kIHJlYWR5IGZ1bGZpbGxzIGltbWVkaWF0ZWx5IGlmIHRo
ZSBzdHJhdGVneSBkb2VzIG5vdCBhcHBseSBiYWNrcHJlc3N1cmUnKTsKK3Rlc3Q5LnN0ZXAoZnVu
Y3Rpb24oKSB7CisgICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHt9LCB7CisgICAgICAg
IGhpZ2hXYXRlck1hcms6IEluZmluaXR5LAorICAgICAgICBzaXplKCkgeyByZXR1cm4gMDsgfQor
ICAgIH0pOworCisgICAgYXNzZXJ0X2VxdWFscyh3cy5zdGF0ZSwgJ3dyaXRhYmxlJyk7CisKKyAg
ICB3cy5yZWFkeS50aGVuKHRlc3Q5LnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgdGVz
dDkuZG9uZSgncmVhZHkgcHJvbWlzZSB3YXMgZnVsZmlsbGVkJyk7CisgICAgfSkpOworfSk7CisK
K3ZhciB0ZXN0MTAgPSBhc3luY190ZXN0KCdGdWxmaWxsbWVudCB2YWx1ZSBvZiB3cy53cml0ZSgp
IGNhbGwgbXVzdCBiZSB1bmRlZmluZWQgZXZlbiBpZiB0aGUgdW5kZXJseWluZyBzaW5rIHJldHVy
bnMgYSBub24tdW5kZWZpbmVkIG92YWx1ZScpOwordGVzdDEwLnN0ZXAoZnVuY3Rpb24oKSB7Cisg
ICAgdmFyIHdzID0gbmV3IFdyaXRhYmxlU3RyZWFtKHsKKyAgICAgICAgd3JpdGU6IGZ1bmN0aW9u
KCkgeworICAgICAgICAgICAgcmV0dXJuICdIZWxsbyc7CisgICAgICAgIH0KKyAgICB9KTsKKwor
ICAgIHZhciB3cml0ZVByb21pc2UgPSB3cy53cml0ZSgnYScpOworICAgIHdyaXRlUHJvbWlzZS50
aGVuKHRlc3QxMC5zdGVwX2Z1bmMoZnVuY3Rpb24odmFsdWUpIHsKKyAgICAgICAgYXNzZXJ0X2Vx
dWFscyh2YWx1ZSwgdW5kZWZpbmVkLCAnZnVsZmlsbG1lbnQgdmFsdWUgbXVzdCBiZSB1bmRlZmlu
ZWQnKTsKKyAgICAgICAgdGVzdDEwLmRvbmUoKTsKKyAgICB9KSkuY2F0Y2godGVzdDEwLnN0ZXBf
ZnVuYyhmdW5jdGlvbigpIHsgYXNzZXJ0X3VucmVhY2hlZCgnd3JpdGVQcm9taXNlIGlzIHJlamVj
dGVkJyk7IH0pKTsKK30pOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>