<?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>75201</bug_id>
          
          <creation_ts>2011-12-25 01:51:19 -0800</creation_ts>
          <short_desc>Add unittests for the JavaScript parser of prepare-ChangeLog</short_desc>
          <delta_ts>2012-01-08 08:17:35 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</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>
          
          <blocked>73531</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>darin</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>527049</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2011-12-25 01:51:19 -0800</bug_when>
    <thetext>We should add unittests for the JavaScript parser (i.e. get_function_line_ranges_for_javascript()) of prepare-ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>527050</commentid>
    <comment_count>1</comment_count>
      <attachid>120508</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2011-12-25 02:04:37 -0800</bug_when>
    <thetext>Created attachment 120508
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>529456</commentid>
    <comment_count>2</comment_count>
      <attachid>121096</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-01-04 04:19:01 -0800</bug_when>
    <thetext>Created attachment 121096
rebased patch for review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531669</commentid>
    <comment_count>3</comment_count>
      <attachid>121096</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2012-01-07 09:47:44 -0800</bug_when>
    <thetext>Comment on attachment 121096
rebased patch for review

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531754</commentid>
    <comment_count>4</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-01-08 08:16:17 -0800</bug_when>
    <thetext>Committed r104400: &lt;http://trac.webkit.org/changeset/104400&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120508</attachid>
            <date>2011-12-25 02:04:37 -0800</date>
            <delta_ts>2012-01-04 04:18:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-75201-20111225190436.patch</filename>
            <type>text/plain</type>
            <size>8223</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAzNjY5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZGFiOTJkYmUwNTYwYTExYjRhMWUwNjMxYTZkNTdlNmI3
ZGQ2OGNkMS4uODhiMDBhYmI4MjNlOWZmMWE0MGQ1ZmY2ODAzZTUyODQ5YTY3MDY3ZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3
IEBACisyMDExLTEyLTI1ICBLZW50YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBBZGQgdW5pdHRlc3RzIGZvciB0aGUgSmF2YVNjcmlwdCBwYXJzZXIgb2YgcHJlcGFy
ZS1DaGFuZ2VMb2cKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTc1MjAxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgamF2YXNjcmlwdF91bml0dGVzdHMuanMgaXMgYSB1bml0dGVzdCBmb3IgZ2V0X2Z1bmN0aW9u
X2xpbmVfcmFuZ2VzX2Zvcl9qYXZhc2NyaXB0KCkKKyAgICAgICAgb2YgcHJlcGFyZS1DaGFuZ2VM
b2cuCisKKyAgICAgICAgKiBTY3JpcHRzL3ByZXBhcmUtQ2hhbmdlTG9nOgorICAgICAgICAoZ2V0
X2Z1bmN0aW9uX2xpbmVfcmFuZ2VzX2Zvcl9qYXZhc2NyaXB0KTogQmVmb3JlIHRoaXMgcGF0Y2gs
IGEgc3RyaW5nIGZvdW5kIHdhcyBqdXN0CisgICAgICAgIG9taXR0ZWQgZnJvbSBwYXJzaW5nLiBU
aHVzLAorCisgICAgICAgICAgICBzdHIgPSAiZm9vIgorICAgICAgICAgICAgZnVuY3Rpb24gZnVu
YygpIHsKKyAgICAgICAgICAgIH0KKworICAgICAgICB3YXMgcmVjb2duaXplZCBhcyBlcXVpdmFs
ZW50IHRvCisKKyAgICAgICAgICAgIHN0ciA9IGZ1bmN0aW9uIGZ1bmMoKSB7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgVGhpcyBwYXRjaCByZXBsYWNlcyBhIHN0cmluZyB3aXRoIGEgZHVtbXkg
aWRlbnRpZmllciAnc3RyaW5nX2FwcGVhcmVkX2hlcmUnCisgICAgICAgIHRvIHRlbGwgdGhlIHBh
cnNlciB0aGF0IGEgc3RyaW5nIGFwcGVhcmVkIHRoZXJlLgorCisgICAgICAgICogU2NyaXB0cy93
ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0L3BhcnNlcl91bml0dGVzdHMucGw6
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0
L3Jlc291cmNlcy9qYXZhc2NyaXB0X3VuaXR0ZXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIFNjcmlwdHMvd2Via2l0cGVybC9wcmVwYXJlLUNoYW5nZUxvZ191bml0dGVzdC9yZXNv
dXJjZXMvamF2YXNjcmlwdF91bml0dGVzdHMuanM6IEFkZGVkLgorICAgICAgICAoZnVuYzEpOgor
ICAgICAgICAoZnVuYzIpOgorICAgICAgICAoZnVuYzMpOgorICAgICAgICAoZnVuYzQpOgorICAg
ICAgICAoZnVuYzUpOgorICAgICAgICAoZnVuYzYpOgorICAgICAgICAoZnVuYzcpOgorICAgICAg
ICAoZnVuYzgpOgorICAgICAgICAoZnVuYzkpOgorICAgICAgICAoZnVuYzEwKToKKyAgICAgICAg
KGZ1bmMxMSk6CisgICAgICAgIChmdW5jMTIpOgorICAgICAgICAoZnVuY092ZXJsb2FkZWQpOgor
ICAgICAgICAoRnVuYzEucHJvdG90eXBlLmdldCB4MSk6CisgICAgICAgIChGdW5jMS5wcm90b3R5
cGUuZ2V0IHgyKToKKyAgICAgICAgKEZ1bmMxLnByb3RvdHlwZS5zZXQgeDEpOgorICAgICAgICAo
RnVuYzEucHJvdG90eXBlLnNldCB4Myk6CisgICAgICAgIChGdW5jMi5wcm90b3R5cGUuZnVuYzEz
KToKKyAgICAgICAgKEZ1bmMyLnByb3RvdHlwZS5mdW5jMTQpOgorICAgICAgICAoRnVuYzIucHJv
dG90eXBlLmZ1bmMxNSk6CisgICAgICAgIChmdW5jMTYuZnVuYzE3KToKKyAgICAgICAgKGZ1bmMx
Ni5mdW5jMTgpOgorICAgICAgICAoZnVuYzE2LmZ1bmMxOSk6CisgICAgICAgIChmdW5jMTYpOgor
CiAyMDExLTEyLTI0ICBLZW50YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBBZGQgdW5pdHRlc3RzIGZvciB0aGUgQysrIHBhcnNlciBvZiBwcmVwYXJlLUNoYW5nZUxv
ZwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9wcmVwYXJlLUNoYW5nZUxvZyBiL1Rvb2xzL1Nj
cmlwdHMvcHJlcGFyZS1DaGFuZ2VMb2cKaW5kZXggNzEzNmZkZmQ0NDRmODdjMzdjNTRmNDBjNzE4
NzkzNmZkZWMzODllNi4uNDdjOGNmY2EzYWY5NjUwMjYyYjllMmNlNjIzOWQ0MjQ4ZGE5MjA0ZiAx
MDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9wcmVwYXJlLUNoYW5nZUxvZworKysgYi9Ub29scy9T
Y3JpcHRzL3ByZXBhcmUtQ2hhbmdlTG9nCkBAIC0xMTUwLDcgKzExNTAsNyBAQCBzdWIgZ2V0X2Z1
bmN0aW9uX2xpbmVfcmFuZ2VzX2Zvcl9qYXZhc2NyaXB0KCQkKQogICAgICAgICAgICAgfSBlbHNp
ZiAoJG1hdGNoIGVxICcvLycpIHsKICAgICAgICAgICAgICAgICBzLS8vLiotLTsKICAgICAgICAg
ICAgIH0gZWxzZSB7ICMgJyBvciAiCi0gICAgICAgICAgICAgICAgaWYgKCFzLSRtYXRjaChbXlxc
XXxcXC4pKj8kbWF0Y2gtLSkgeworICAgICAgICAgICAgICAgIGlmICghcy0kbWF0Y2goW15cXF18
XFwuKSo/JG1hdGNoLXN0cmluZ19hcHBlYXJlZF9oZXJlLSkgewogICAgICAgICAgICAgICAgICAg
ICAkaW5RdW90ZWRUZXh0ID0gJG1hdGNoIGlmIC9cXCQvOwogICAgICAgICAgICAgICAgICAgICB3
YXJuICJtaXNtYXRjaGVkIHF1b3RlcyBhdCBsaW5lICQuIGluICRmaWxlTmFtZVxuIiBpZiAkaW5R
dW90ZWRUZXh0IGVxICIiOwogICAgICAgICAgICAgICAgICAgICBzLSRtYXRjaC4qLS07CmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvcHJlcGFyZS1DaGFuZ2VMb2dfdW5pdHRl
c3QvcGFyc2VyX3VuaXR0ZXN0cy5wbCBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9wcmVwYXJl
LUNoYW5nZUxvZ191bml0dGVzdC9wYXJzZXJfdW5pdHRlc3RzLnBsCmluZGV4IGJhZDkwODA1YmI4
ZjNmYTljZjUwYjA4MWRjOThkZjVlOWYzMzFhMzQuLjNiMjc4OTdkZDNmY2NmNjg2Zjk0OTYxMjEw
MzcwZTZkZGFhNjQ2MDggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9wcmVw
YXJlLUNoYW5nZUxvZ191bml0dGVzdC9wYXJzZXJfdW5pdHRlc3RzLnBsCisrKyBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cGVybC9wcmVwYXJlLUNoYW5nZUxvZ191bml0dGVzdC9wYXJzZXJfdW5pdHRl
c3RzLnBsCkBAIC0zNSw3ICszNSw5IEBAIHVzZSBMb2FkQXNNb2R1bGUgcXcoUHJlcGFyZUNoYW5n
ZUxvZyBwcmVwYXJlLUNoYW5nZUxvZyk7CiBteSAldGVzdEZpbGVzID0gKCJwZXJsX3VuaXR0ZXN0
cy5wbCIgPT4gInBlcmwiLAogICAgICAgICAgICAgICAgICAicHl0aG9uX3VuaXR0ZXN0cy5weSIg
PT4gInB5dGhvbiIsCiAgICAgICAgICAgICAgICAgICJqYXZhX3VuaXR0ZXN0cy5qYXZhIiA9PiAi
amF2YSIsCi0gICAgICAgICAgICAgICAgICJjcHBfdW5pdHRlc3RzLmNwcCIgPT4gImNwcCIpOwor
ICAgICAgICAgICAgICAgICAiY3BwX3VuaXR0ZXN0cy5jcHAiID0+ICJjcHAiLAorICAgICAgICAg
ICAgICAgICAiamF2YXNjcmlwdF91bml0dGVzdHMuanMiID0+ICJqYXZhc2NyaXB0IiwKKyAgICAg
ICAgICAgICAgICApOwogCiBteSAkcmVzZXRSZXN1bHRzOwogR2V0T3B0aW9ucygncmVzZXQtcmVz
dWx0cycgPT4gXCRyZXNldFJlc3VsdHMpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0L3Jlc291cmNlcy9qYXZhc2NyaXB0X3Vu
aXR0ZXN0cy1leHBlY3RlZC50eHQgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvcHJlcGFyZS1D
aGFuZ2VMb2dfdW5pdHRlc3QvcmVzb3VyY2VzL2phdmFzY3JpcHRfdW5pdHRlc3RzLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yNzUwNDVhOGFmNjNiMzIxNzBkZTQxZGY5N2YzMzZjZTFhNDFkZDU2
Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL3ByZXBhcmUtQ2hh
bmdlTG9nX3VuaXR0ZXN0L3Jlc291cmNlcy9qYXZhc2NyaXB0X3VuaXR0ZXN0cy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxMzIgQEAKK1sKKyAgWworICAgICcyMCcsCisgICAgJzIyJywKKyAgICAn
ZnVuYzEnCisgIF0sCisgIFsKKyAgICAnMjQnLAorICAgICcyNScsCisgICAgJ2Z1bmMyJworICBd
LAorICBbCisgICAgJzI3JywKKyAgICAnMjcnLAorICAgICdmdW5jMycKKyAgXSwKKyAgWworICAg
ICcyOScsCisgICAgJzMyJywKKyAgICAnZnVuYzQnCisgIF0sCisgIFsKKyAgICAnMzQnLAorICAg
ICczNycsCisgICAgJ2Z1bmM1JworICBdLAorICBbCisgICAgJzM5JywKKyAgICAnNDInLAorICAg
ICdmdW5jNicKKyAgXSwKKyAgWworICAgICc1MCcsCisgICAgJzUyJywKKyAgICAnZnVuYzcnCisg
IF0sCisgIFsKKyAgICAnNTYnLAorICAgICc1OCcsCisgICAgJ2Z1bmM4JworICBdLAorICBbCisg
ICAgJzYyJywKKyAgICAnNjQnLAorICAgICdmdW5jOScKKyAgXSwKKyAgWworICAgICc2NicsCisg
ICAgJzY4JywKKyAgICAnZnVuYzEwJworICBdLAorICBbCisgICAgJzcwJywKKyAgICAnNzMnLAor
ICAgICdmdW5jMTEnCisgIF0sCisgIFsKKyAgICAnNzUnLAorICAgICc3OScsCisgICAgJ2Z1bmMx
MicKKyAgXSwKKyAgWworICAgICc4MScsCisgICAgJzgzJywKKyAgICAnZnVuY092ZXJsb2FkZWQn
CisgIF0sCisgIFsKKyAgICAnODUnLAorICAgICc4NycsCisgICAgJ2Z1bmNPdmVybG9hZGVkJwor
ICBdLAorICBbCisgICAgJzg5JywKKyAgICAnOTEnLAorICAgICdmdW5jT3ZlcmxvYWRlZCcKKyAg
XSwKKyAgWworICAgICc5NCcsCisgICAgJzk2JywKKyAgICAnRnVuYzEucHJvdG90eXBlLmdldCB4
MScKKyAgXSwKKyAgWworICAgICc5OCcsCisgICAgJzEwMScsCisgICAgJ0Z1bmMxLnByb3RvdHlw
ZS5nZXQgeDInCisgIF0sCisgIFsKKyAgICAnMTAzJywKKyAgICAnMTA1JywKKyAgICAnRnVuYzEu
cHJvdG90eXBlLnNldCB4MScKKyAgXSwKKyAgWworICAgICcxMDcnLAorICAgICcxMTAnLAorICAg
ICdGdW5jMS5wcm90b3R5cGUuc2V0IHgzJworICBdLAorICBbCisgICAgJzExNCcsCisgICAgJzEx
NicsCisgICAgJ0Z1bmMyLnByb3RvdHlwZS5mdW5jMTMnCisgIF0sCisgIFsKKyAgICAnMTE4JywK
KyAgICAnMTIwJywKKyAgICAnRnVuYzIucHJvdG90eXBlLmZ1bmMxNCcKKyAgXSwKKyAgWworICAg
ICcxMjInLAorICAgICcxMjUnLAorICAgICdGdW5jMi5wcm90b3R5cGUuZnVuYzE1JworICBdLAor
ICBbCisgICAgJzEzMycsCisgICAgJzEzNCcsCisgICAgJ2Z1bmMxNi5mdW5jMTcnCisgIF0sCisg
IFsKKyAgICAnMTM2JywKKyAgICAnMTM3JywKKyAgICAnZnVuYzE2LmZ1bmMxOCcKKyAgXSwKKyAg
WworICAgICcxMzknLAorICAgICcxNDEnLAorICAgICdmdW5jMTYuZnVuYzE5JworICBdLAorICBb
CisgICAgJzEyOCcsCisgICAgJzE1MCcsCisgICAgJ2Z1bmMxNicKKyAgXQorXQpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0L3Jl
c291cmNlcy9qYXZhc2NyaXB0X3VuaXR0ZXN0cy5qcyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVy
bC9wcmVwYXJlLUNoYW5nZUxvZ191bml0dGVzdC9yZXNvdXJjZXMvamF2YXNjcmlwdF91bml0dGVz
dHMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOTNkMWQ0Y2NmNGQ2OTJlOWZkMzkxYTZkMjdmYjQyMWNlYzAyOTI1
ZAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9wcmVwYXJlLUNo
YW5nZUxvZ191bml0dGVzdC9yZXNvdXJjZXMvamF2YXNjcmlwdF91bml0dGVzdHMuanMKQEAgLTAs
MCArMSwxNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAy
IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp
bGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g
dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUg
cmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
CisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAg
SWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwg
NTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMw
MSwgVVNBLgorICovCisKK2Z1bmN0aW9uIGZ1bmMxKCkKK3sKK30KKworZnVuY3Rpb24gZnVuYzIo
KSB7Cit9CisKK2Z1bmN0aW9uIGZ1bmMzKCkgeyB9CisKK2Z1bmN0aW9uIGZ1bmM0KCkKK3sKKyAg
ICByZXR1cm4gMTIzOworfQorCitmdW5jdGlvbiBmdW5jNSgpCit7CisgICAgLy8gY29tbWVudAor
fQorCitmdW5jdGlvbiBmdW5jNigpCit7CisgICAgLyogY29tbWVudCAqLworfQorCisvKgorZnVu
Y3Rpb24gZnVuY0luc2lkZUNvbW1lbnQoKQoreworfQorKi8KKworZnVuY3Rpb24gZnVuYzcoKQor
eworfQorCit2YXIgc3RyMSA9ICJmdW5jdGlvbiBmdW5jSW5zaWRlRG91YmxlUXVvdGVkU3RyaW5n
KCkge30iOworCitmdW5jdGlvbiBmdW5jOCgpCit7Cit9CisKK3ZhciBzdHIyID0gJ2Z1bmN0aW9u
IGZ1bmNJbnNpZGVTaW5nbGVRdW90ZWRTdHJpbmcoKSB7fSc7CisKK2Z1bmN0aW9uIGZ1bmM5KGEp
Cit7Cit9CisKK2Z1bmN0aW9uIGZ1bmMxMChhLCBiKQoreworfQorCitmdW5jdGlvbiBmdW5jMTEK
KyAgICAoYSwgYikKK3sKK30KKworZnVuY3Rpb24gZnVuYzEyKGEsIGIsCisgICAgICAgICAgICAg
ICAgYywgZAorICAgICAgICAgICAgICAgICwgZSwgZikKK3sKK30KKworZnVuY3Rpb24gZnVuY092
ZXJsb2FkZWQoKQoreworfQorCitmdW5jdGlvbiBmdW5jT3ZlcmxvYWRlZChhKQoreworfQorCitm
dW5jdGlvbiBmdW5jT3ZlcmxvYWRlZChhLCBiKQoreworfQorCitGdW5jMS5wcm90b3R5cGUgPSB7
CisgICAgZ2V0IHgxKCkKKyAgICB7CisgICAgfSwKKworICAgIGdldCB4MigpCisgICAgeworICAg
ICAgICByZXR1cm4gdGhpcy54MjsKKyAgICB9LAorCisgICAgc2V0IHgxKGEpCisgICAgeworICAg
IH0sCisKKyAgICBzZXQgeDMoYSkKKyAgICB7CisgICAgICAgIHRoaXMueDMgPSBhOworICAgIH0K
K307CisKK0Z1bmMyLnByb3RvdHlwZSA9IHsKKyAgICBmdW5jMTMgOiBmdW5jdGlvbigpCisgICAg
eworICAgIH0sCisKKyAgICBmdW5jMTQgOiBmdW5jdGlvbihhKQorICAgIHsKKyAgICB9LAorCisg
ICAgZnVuYzE1IDogZnVuY3Rpb24oYSwgYikKKyAgICB7CisgICAgICAgIHJldHVybiAxMjM7Cisg
ICAgfQorfTsKKworZnVuY3Rpb24gZnVuYzE2KCkKK3sKKyAgICB2YXIgYSA9IDEyMzsKKyAgICB2
YXIgYiA9IDQ1NjsKKworICAgIHZhciBmdW5jMTcgPSBmdW5jdGlvbigpIHsKKyAgICB9OworCisg
ICAgdmFyIGZ1bmMxOCA9IGZ1bmN0aW9uKGEpIHsKKyAgICB9OworCisgICAgdmFyIGZ1bmMxOSA9
IGZ1bmN0aW9uKGEsIGIpIHsKKyAgICAgICAgcmV0dXJuIDEyMzsKKyAgICB9OworCisgICAgZnVu
YzIwKGZ1bmN0aW9uKCkKKyAgICAgICAgICAgeworICAgICAgICAgICB9LAorICAgICAgICAgICBm
dW5jdGlvbihhKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICByZXR1cm4gMTIzOworICAg
ICAgICAgICB9KTsKK30K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121096</attachid>
            <date>2012-01-04 04:19:01 -0800</date>
            <delta_ts>2012-01-08 08:17:35 -0800</delta_ts>
            <desc>rebased patch for review</desc>
            <filename>bug-75201-20120104211900.patch</filename>
            <type>text/plain</type>
            <size>8218</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA0MDI1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmYxYWZlODE4NDIwYTkxMjE1ZTM1YmEwNjBmZDVlZmFm
Y2YxNDMxNi4uODc5ZmE0M2RjZmJkYTFlNmI3NDI4YmE3MjM0OTEwNzJmOWRjYjM3MSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3
IEBACisyMDEyLTAxLTA0ICBLZW50YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBBZGQgdW5pdHRlc3RzIGZvciB0aGUgSmF2YVNjcmlwdCBwYXJzZXIgb2YgcHJlcGFy
ZS1DaGFuZ2VMb2cKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTc1MjAxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgamF2YXNjcmlwdF91bml0dGVzdHMuanMgaXMgYSB1bml0dGVzdCBmb3IgZ2V0X2Z1bmN0aW9u
X2xpbmVfcmFuZ2VzX2Zvcl9qYXZhc2NyaXB0KCkKKyAgICAgICAgb2YgcHJlcGFyZS1DaGFuZ2VM
b2cuCisKKyAgICAgICAgKiBTY3JpcHRzL3ByZXBhcmUtQ2hhbmdlTG9nOgorICAgICAgICAoZ2V0
X2Z1bmN0aW9uX2xpbmVfcmFuZ2VzX2Zvcl9qYXZhc2NyaXB0KTogQmVmb3JlIHRoaXMgcGF0Y2gs
IGEgc3RyaW5nIGZvdW5kIHdhcyBqdXN0CisgICAgICAgIG9taXR0ZWQgZnJvbSBwYXJzaW5nLiBU
aHVzLAorCisgICAgICAgICAgICBzdHIgPSAiZm9vIgorICAgICAgICAgICAgZnVuY3Rpb24gZnVu
YygpIHsKKyAgICAgICAgICAgIH0KKworICAgICAgICB3YXMgcmVjb2duaXplZCBhcyBlcXVpdmFs
ZW50IHRvCisKKyAgICAgICAgICAgIHN0ciA9IGZ1bmN0aW9uIGZ1bmMoKSB7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgVGhpcyBwYXRjaCByZXBsYWNlcyBhIHN0cmluZyB3aXRoIGEgZHVtbXkg
aWRlbnRpZmllciAnc3RyaW5nX2FwcGVhcmVkX2hlcmUnCisgICAgICAgIHRvIHRlbGwgdGhlIHBh
cnNlciB0aGF0IGEgc3RyaW5nIGFwcGVhcmVkIHRoZXJlLgorCisgICAgICAgICogU2NyaXB0cy93
ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0L3BhcnNlcl91bml0dGVzdHMucGw6
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0
L3Jlc291cmNlcy9qYXZhc2NyaXB0X3VuaXR0ZXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIFNjcmlwdHMvd2Via2l0cGVybC9wcmVwYXJlLUNoYW5nZUxvZ191bml0dGVzdC9yZXNv
dXJjZXMvamF2YXNjcmlwdF91bml0dGVzdHMuanM6IEFkZGVkLgorICAgICAgICAoZnVuYzEpOgor
ICAgICAgICAoZnVuYzIpOgorICAgICAgICAoZnVuYzMpOgorICAgICAgICAoZnVuYzQpOgorICAg
ICAgICAoZnVuYzUpOgorICAgICAgICAoZnVuYzYpOgorICAgICAgICAoZnVuYzcpOgorICAgICAg
ICAoZnVuYzgpOgorICAgICAgICAoZnVuYzkpOgorICAgICAgICAoZnVuYzEwKToKKyAgICAgICAg
KGZ1bmMxMSk6CisgICAgICAgIChmdW5jMTIpOgorICAgICAgICAoZnVuY092ZXJsb2FkZWQpOgor
ICAgICAgICAoRnVuYzEucHJvdG90eXBlLmdldCB4MSk6CisgICAgICAgIChGdW5jMS5wcm90b3R5
cGUuZ2V0IHgyKToKKyAgICAgICAgKEZ1bmMxLnByb3RvdHlwZS5zZXQgeDEpOgorICAgICAgICAo
RnVuYzEucHJvdG90eXBlLnNldCB4Myk6CisgICAgICAgIChGdW5jMi5wcm90b3R5cGUuZnVuYzEz
KToKKyAgICAgICAgKEZ1bmMyLnByb3RvdHlwZS5mdW5jMTQpOgorICAgICAgICAoRnVuYzIucHJv
dG90eXBlLmZ1bmMxNSk6CisgICAgICAgIChmdW5jMTYuZnVuYzE3KToKKyAgICAgICAgKGZ1bmMx
Ni5mdW5jMTgpOgorICAgICAgICAoZnVuYzE2LmZ1bmMxOSk6CisgICAgICAgIChmdW5jMTYpOgor
CiAyMDEyLTAxLTA0ICBNYXJ5IFd1ICA8bWFyeS53dUB0b3JjaG1vYmlsZS5jb20uY24+CiAKICAg
ICAgICAgRW5hYmxlIERPV05MT0FEX0FUVFJJQlVURSBpbiBCbGFja0JlcnJ5IHBvcnRpbmcKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvcHJlcGFyZS1DaGFuZ2VMb2cgYi9Ub29scy9TY3JpcHRz
L3ByZXBhcmUtQ2hhbmdlTG9nCmluZGV4IDcxMzZmZGZkNDQ0Zjg3YzM3YzU0ZjQwYzcxODc5MzZm
ZGVjMzg5ZTYuLjQ3YzhjZmNhM2FmOTY1MDI2MmI5ZTJjZTYyMzlkNDI0OGRhOTIwNGYgMTAwNzU1
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvcHJlcGFyZS1DaGFuZ2VMb2cKKysrIGIvVG9vbHMvU2NyaXB0
cy9wcmVwYXJlLUNoYW5nZUxvZwpAQCAtMTE1MCw3ICsxMTUwLDcgQEAgc3ViIGdldF9mdW5jdGlv
bl9saW5lX3Jhbmdlc19mb3JfamF2YXNjcmlwdCgkJCkKICAgICAgICAgICAgIH0gZWxzaWYgKCRt
YXRjaCBlcSAnLy8nKSB7CiAgICAgICAgICAgICAgICAgcy0vLy4qLS07CiAgICAgICAgICAgICB9
IGVsc2UgeyAjICcgb3IgIgotICAgICAgICAgICAgICAgIGlmICghcy0kbWF0Y2goW15cXF18XFwu
KSo/JG1hdGNoLS0pIHsKKyAgICAgICAgICAgICAgICBpZiAoIXMtJG1hdGNoKFteXFxdfFxcLikq
PyRtYXRjaC1zdHJpbmdfYXBwZWFyZWRfaGVyZS0pIHsKICAgICAgICAgICAgICAgICAgICAgJGlu
UXVvdGVkVGV4dCA9ICRtYXRjaCBpZiAvXFwkLzsKICAgICAgICAgICAgICAgICAgICAgd2FybiAi
bWlzbWF0Y2hlZCBxdW90ZXMgYXQgbGluZSAkLiBpbiAkZmlsZU5hbWVcbiIgaWYgJGluUXVvdGVk
VGV4dCBlcSAiIjsKICAgICAgICAgICAgICAgICAgICAgcy0kbWF0Y2guKi0tOwpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdlTG9nX3VuaXR0ZXN0L3Bh
cnNlcl91bml0dGVzdHMucGwgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvcHJlcGFyZS1DaGFu
Z2VMb2dfdW5pdHRlc3QvcGFyc2VyX3VuaXR0ZXN0cy5wbAppbmRleCBiYWQ5MDgwNWJiOGYzZmE5
Y2Y1MGIwODFkYzk4ZGY1ZTlmMzMxYTM0Li4zYjI3ODk3ZGQzZmNjZjY4NmY5NDk2MTIxMDM3MGU2
ZGRhYTY0NjA4IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvcHJlcGFyZS1D
aGFuZ2VMb2dfdW5pdHRlc3QvcGFyc2VyX3VuaXR0ZXN0cy5wbAorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHBlcmwvcHJlcGFyZS1DaGFuZ2VMb2dfdW5pdHRlc3QvcGFyc2VyX3VuaXR0ZXN0cy5w
bApAQCAtMzUsNyArMzUsOSBAQCB1c2UgTG9hZEFzTW9kdWxlIHF3KFByZXBhcmVDaGFuZ2VMb2cg
cHJlcGFyZS1DaGFuZ2VMb2cpOwogbXkgJXRlc3RGaWxlcyA9ICgicGVybF91bml0dGVzdHMucGwi
ID0+ICJwZXJsIiwKICAgICAgICAgICAgICAgICAgInB5dGhvbl91bml0dGVzdHMucHkiID0+ICJw
eXRob24iLAogICAgICAgICAgICAgICAgICAiamF2YV91bml0dGVzdHMuamF2YSIgPT4gImphdmEi
LAotICAgICAgICAgICAgICAgICAiY3BwX3VuaXR0ZXN0cy5jcHAiID0+ICJjcHAiKTsKKyAgICAg
ICAgICAgICAgICAgImNwcF91bml0dGVzdHMuY3BwIiA9PiAiY3BwIiwKKyAgICAgICAgICAgICAg
ICAgImphdmFzY3JpcHRfdW5pdHRlc3RzLmpzIiA9PiAiamF2YXNjcmlwdCIsCisgICAgICAgICAg
ICAgICAgKTsKIAogbXkgJHJlc2V0UmVzdWx0czsKIEdldE9wdGlvbnMoJ3Jlc2V0LXJlc3VsdHMn
ID0+IFwkcmVzZXRSZXN1bHRzKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVy
bC9wcmVwYXJlLUNoYW5nZUxvZ191bml0dGVzdC9yZXNvdXJjZXMvamF2YXNjcmlwdF91bml0dGVz
dHMtZXhwZWN0ZWQudHh0IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL3ByZXBhcmUtQ2hhbmdl
TG9nX3VuaXR0ZXN0L3Jlc291cmNlcy9qYXZhc2NyaXB0X3VuaXR0ZXN0cy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjc1MDQ1YThhZjYzYjMyMTcwZGU0MWRmOTdmMzM2Y2UxYTQxZGQ1NgotLS0g
L2Rldi9udWxsCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9wcmVwYXJlLUNoYW5nZUxv
Z191bml0dGVzdC9yZXNvdXJjZXMvamF2YXNjcmlwdF91bml0dGVzdHMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTMyIEBACitbCisgIFsKKyAgICAnMjAnLAorICAgICcyMicsCisgICAgJ2Z1bmMx
JworICBdLAorICBbCisgICAgJzI0JywKKyAgICAnMjUnLAorICAgICdmdW5jMicKKyAgXSwKKyAg
WworICAgICcyNycsCisgICAgJzI3JywKKyAgICAnZnVuYzMnCisgIF0sCisgIFsKKyAgICAnMjkn
LAorICAgICczMicsCisgICAgJ2Z1bmM0JworICBdLAorICBbCisgICAgJzM0JywKKyAgICAnMzcn
LAorICAgICdmdW5jNScKKyAgXSwKKyAgWworICAgICczOScsCisgICAgJzQyJywKKyAgICAnZnVu
YzYnCisgIF0sCisgIFsKKyAgICAnNTAnLAorICAgICc1MicsCisgICAgJ2Z1bmM3JworICBdLAor
ICBbCisgICAgJzU2JywKKyAgICAnNTgnLAorICAgICdmdW5jOCcKKyAgXSwKKyAgWworICAgICc2
MicsCisgICAgJzY0JywKKyAgICAnZnVuYzknCisgIF0sCisgIFsKKyAgICAnNjYnLAorICAgICc2
OCcsCisgICAgJ2Z1bmMxMCcKKyAgXSwKKyAgWworICAgICc3MCcsCisgICAgJzczJywKKyAgICAn
ZnVuYzExJworICBdLAorICBbCisgICAgJzc1JywKKyAgICAnNzknLAorICAgICdmdW5jMTInCisg
IF0sCisgIFsKKyAgICAnODEnLAorICAgICc4MycsCisgICAgJ2Z1bmNPdmVybG9hZGVkJworICBd
LAorICBbCisgICAgJzg1JywKKyAgICAnODcnLAorICAgICdmdW5jT3ZlcmxvYWRlZCcKKyAgXSwK
KyAgWworICAgICc4OScsCisgICAgJzkxJywKKyAgICAnZnVuY092ZXJsb2FkZWQnCisgIF0sCisg
IFsKKyAgICAnOTQnLAorICAgICc5NicsCisgICAgJ0Z1bmMxLnByb3RvdHlwZS5nZXQgeDEnCisg
IF0sCisgIFsKKyAgICAnOTgnLAorICAgICcxMDEnLAorICAgICdGdW5jMS5wcm90b3R5cGUuZ2V0
IHgyJworICBdLAorICBbCisgICAgJzEwMycsCisgICAgJzEwNScsCisgICAgJ0Z1bmMxLnByb3Rv
dHlwZS5zZXQgeDEnCisgIF0sCisgIFsKKyAgICAnMTA3JywKKyAgICAnMTEwJywKKyAgICAnRnVu
YzEucHJvdG90eXBlLnNldCB4MycKKyAgXSwKKyAgWworICAgICcxMTQnLAorICAgICcxMTYnLAor
ICAgICdGdW5jMi5wcm90b3R5cGUuZnVuYzEzJworICBdLAorICBbCisgICAgJzExOCcsCisgICAg
JzEyMCcsCisgICAgJ0Z1bmMyLnByb3RvdHlwZS5mdW5jMTQnCisgIF0sCisgIFsKKyAgICAnMTIy
JywKKyAgICAnMTI1JywKKyAgICAnRnVuYzIucHJvdG90eXBlLmZ1bmMxNScKKyAgXSwKKyAgWwor
ICAgICcxMzMnLAorICAgICcxMzQnLAorICAgICdmdW5jMTYuZnVuYzE3JworICBdLAorICBbCisg
ICAgJzEzNicsCisgICAgJzEzNycsCisgICAgJ2Z1bmMxNi5mdW5jMTgnCisgIF0sCisgIFsKKyAg
ICAnMTM5JywKKyAgICAnMTQxJywKKyAgICAnZnVuYzE2LmZ1bmMxOScKKyAgXSwKKyAgWworICAg
ICcxMjgnLAorICAgICcxNTAnLAorICAgICdmdW5jMTYnCisgIF0KK10KZGlmZiAtLWdpdCBhL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cGVybC9wcmVwYXJlLUNoYW5nZUxvZ191bml0dGVzdC9yZXNvdXJj
ZXMvamF2YXNjcmlwdF91bml0dGVzdHMuanMgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvcHJl
cGFyZS1DaGFuZ2VMb2dfdW5pdHRlc3QvcmVzb3VyY2VzL2phdmFzY3JpcHRfdW5pdHRlc3RzLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjkzZDFkNGNjZjRkNjkyZTlmZDM5MWE2ZDI3ZmI0MjFjZWMwMjkyNWQKLS0t
IC9kZXYvbnVsbAorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvcHJlcGFyZS1DaGFuZ2VM
b2dfdW5pdHRlc3QvcmVzb3VyY2VzL2phdmFzY3JpcHRfdW5pdHRlc3RzLmpzCkBAIC0wLDAgKzEs
MTUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi
eSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0
aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisg
KiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl
IHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp
bXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2Vp
dmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICog
YWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5v
dCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZy
YW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVT
QS4KKyAqLworCitmdW5jdGlvbiBmdW5jMSgpCit7Cit9CisKK2Z1bmN0aW9uIGZ1bmMyKCkgewor
fQorCitmdW5jdGlvbiBmdW5jMygpIHsgfQorCitmdW5jdGlvbiBmdW5jNCgpCit7CisgICAgcmV0
dXJuIDEyMzsKK30KKworZnVuY3Rpb24gZnVuYzUoKQoreworICAgIC8vIGNvbW1lbnQKK30KKwor
ZnVuY3Rpb24gZnVuYzYoKQoreworICAgIC8qIGNvbW1lbnQgKi8KK30KKworLyoKK2Z1bmN0aW9u
IGZ1bmNJbnNpZGVDb21tZW50KCkKK3sKK30KKyovCisKK2Z1bmN0aW9uIGZ1bmM3KCkKK3sKK30K
KwordmFyIHN0cjEgPSAiZnVuY3Rpb24gZnVuY0luc2lkZURvdWJsZVF1b3RlZFN0cmluZygpIHt9
IjsKKworZnVuY3Rpb24gZnVuYzgoKQoreworfQorCit2YXIgc3RyMiA9ICdmdW5jdGlvbiBmdW5j
SW5zaWRlU2luZ2xlUXVvdGVkU3RyaW5nKCkge30nOworCitmdW5jdGlvbiBmdW5jOShhKQorewor
fQorCitmdW5jdGlvbiBmdW5jMTAoYSwgYikKK3sKK30KKworZnVuY3Rpb24gZnVuYzExCisgICAg
KGEsIGIpCit7Cit9CisKK2Z1bmN0aW9uIGZ1bmMxMihhLCBiLAorICAgICAgICAgICAgICAgIGMs
IGQKKyAgICAgICAgICAgICAgICAsIGUsIGYpCit7Cit9CisKK2Z1bmN0aW9uIGZ1bmNPdmVybG9h
ZGVkKCkKK3sKK30KKworZnVuY3Rpb24gZnVuY092ZXJsb2FkZWQoYSkKK3sKK30KKworZnVuY3Rp
b24gZnVuY092ZXJsb2FkZWQoYSwgYikKK3sKK30KKworRnVuYzEucHJvdG90eXBlID0geworICAg
IGdldCB4MSgpCisgICAgeworICAgIH0sCisKKyAgICBnZXQgeDIoKQorICAgIHsKKyAgICAgICAg
cmV0dXJuIHRoaXMueDI7CisgICAgfSwKKworICAgIHNldCB4MShhKQorICAgIHsKKyAgICB9LAor
CisgICAgc2V0IHgzKGEpCisgICAgeworICAgICAgICB0aGlzLngzID0gYTsKKyAgICB9Cit9Owor
CitGdW5jMi5wcm90b3R5cGUgPSB7CisgICAgZnVuYzEzIDogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICB9LAorCisgICAgZnVuYzE0IDogZnVuY3Rpb24oYSkKKyAgICB7CisgICAgfSwKKworICAgIGZ1
bmMxNSA6IGZ1bmN0aW9uKGEsIGIpCisgICAgeworICAgICAgICByZXR1cm4gMTIzOworICAgIH0K
K307CisKK2Z1bmN0aW9uIGZ1bmMxNigpCit7CisgICAgdmFyIGEgPSAxMjM7CisgICAgdmFyIGIg
PSA0NTY7CisKKyAgICB2YXIgZnVuYzE3ID0gZnVuY3Rpb24oKSB7CisgICAgfTsKKworICAgIHZh
ciBmdW5jMTggPSBmdW5jdGlvbihhKSB7CisgICAgfTsKKworICAgIHZhciBmdW5jMTkgPSBmdW5j
dGlvbihhLCBiKSB7CisgICAgICAgIHJldHVybiAxMjM7CisgICAgfTsKKworICAgIGZ1bmMyMChm
dW5jdGlvbigpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgfSwKKyAgICAgICAgICAgZnVuY3Rp
b24oYSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgcmV0dXJuIDEyMzsKKyAgICAgICAg
ICAgfSk7Cit9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>