<?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>13622</bug_id>
          
          <creation_ts>2007-05-08 00:49:10 -0700</creation_ts>
          <short_desc>Decompiler omits trailing comma in array literal</short_desc>
          <delta_ts>2007-05-14 19:16:41 -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>JavaScriptCore</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>13638</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jesse Ruderman">jruderman</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>mrowe</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>10677</commentid>
    <comment_count>0</comment_count>
    <who name="Jesse Ruderman">jruderman</who>
    <bug_when>2007-05-08 00:49:10 -0700</bug_when>
    <thetext>(function(){ return [1,,,] })
function () 
{
  return [1,,];
}

Found with jsfunfuzz.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10504</commentid>
    <comment_count>1</comment_count>
      <attachid>14442</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2007-05-09 13:44:17 -0700</bug_when>
    <thetext>Created attachment 14442
Add one to the elision value on &quot;trailing elisions&quot;

The parser consumes the missing comma on trailing elisions. 

In the middle (i.e [1,,,3]) -case doesn&apos;t need to have the addition, since the consumed comma is also printed when the array has &apos;next&apos; ptr in the element list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10526</commentid>
    <comment_count>2</comment_count>
      <attachid>14442</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-05-09 17:03:16 -0700</bug_when>
    <thetext>Comment on attachment 14442
Add one to the elision value on &quot;trailing elisions&quot;

I&apos;d feel better if you also included a test of the 0 and 1 cases as well.  Maybe 2, just for kicks.

[1]
[1,]
[1,,]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10536</commentid>
    <comment_count>3</comment_count>
      <attachid>14442</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-05-09 19:26:46 -0700</bug_when>
    <thetext>Comment on attachment 14442
Add one to the elision value on &quot;trailing elisions&quot;

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10332</commentid>
    <comment_count>4</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-05-11 02:14:19 -0700</bug_when>
    <thetext>Landed in r21393.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10337</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-05-11 03:19:26 -0700</bug_when>
    <thetext>This breaks a JSCore test by changing [1,,].length from 2 to 3.  I&apos;m going to roll out the change now so that the failure can be addressed.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10339</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-05-11 03:27:58 -0700</bug_when>
    <thetext>Rolled out in r21399.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10066</commentid>
    <comment_count>7</comment_count>
      <attachid>14542</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2007-05-14 01:35:15 -0700</bug_when>
    <thetext>Created attachment 14542
Print extra comma if array expression has element list and elisions

contains few additional tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>10049</commentid>
    <comment_count>8</comment_count>
      <attachid>14542</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-05-14 08:10:25 -0700</bug_when>
    <thetext>Comment on attachment 14542
Print extra comma if array expression has element list and elisions

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>9993</commentid>
    <comment_count>9</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-05-14 19:16:41 -0700</bug_when>
    <thetext>Landed in r21473.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>14442</attachid>
            <date>2007-05-09 13:44:17 -0700</date>
            <delta_ts>2007-05-14 01:35:15 -0700</delta_ts>
            <desc>Add one to the elision value on &quot;trailing elisions&quot;</desc>
            <filename>toString-elision.diff</filename>
            <type>text/plain</type>
            <size>4021</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxMzMyKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDctMDUtMDkgIEtpbW1vIEtp
bm51bmVuICA8a2ltbW9rQGlraS5maT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAtIEZpeGVzIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNjIyIChEZWNvbXBpbGVyIG9taXRzIHRyYWlsaW5nCisgICAgICAgICAgY29tbWEg
aW4gYXJyYXkgbGl0ZXJhbCkKKworICAgICAgICAqIGtqcy9ncmFtbWFyLnk6IEFkZCB0aGUgY29t
bWEgdGhhdCBwYXJzZXIgY29uc3VtZXMgaW4gZWxpc2lvbgorICAgICAgICAgIHdoZW4gdGhlIGFy
cmF5IGhhcyB0cmFpbGluZyBjb21tYXMKKwogMjAwNy0wNS0wOSAgRXJpYyBTZWlkZWwgIDxlcmlj
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgbWpzLgpJbmRleDogSmF2YVNjcmlw
dENvcmUva2pzL2dyYW1tYXIueQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9ranMvZ3Jh
bW1hci55CShyZXZpc2lvbiAyMTMyNikKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9ncmFtbWFyLnkJ
KHdvcmtpbmcgY29weSkKQEAgLTI2MCw3ICsyNjAsNyBAQCBQcmltYXJ5RXhwck5vQnJhY2U6CiBB
cnJheUxpdGVyYWw6CiAgICAgJ1snIEVsaXNpb25PcHQgJ10nICAgICAgICAgICAgICAgICAgeyAk
JCA9IG5ldyBBcnJheU5vZGUoJDIpOyB9CiAgIHwgJ1snIEVsZW1lbnRMaXN0ICddJyAgICAgICAg
ICAgICAgICAgeyAkJCA9IG5ldyBBcnJheU5vZGUoJDIpOyB9Ci0gIHwgJ1snIEVsZW1lbnRMaXN0
ICcsJyBFbGlzaW9uT3B0ICddJyAgeyAkJCA9IG5ldyBBcnJheU5vZGUoJDQsICQyKTsgfQorICB8
ICdbJyBFbGVtZW50TGlzdCAnLCcgRWxpc2lvbk9wdCAnXScgIHsgJCQgPSBuZXcgQXJyYXlOb2Rl
KCQ0ICsgMSwgJDIpOyB9CiA7CiAKIEVsZW1lbnRMaXN0OgpJbmRleDogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjEz
MzIpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
MyBAQAorMjAwNy0wNS0wOSAgS2ltbW8gS2lubnVuZW4gIDxraW1tb2tAaWtpLmZpPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIC0gVGVzdHMgZm9yIGZp
eCB0byBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzYyMiAoRGVjb21w
aWxlciBvbWl0cworICAgICAgICAgIHRyYWlsaW5nIGNvbW1hIGluIGFycmF5IGxpdGVyYWwpCisg
ICAgICAgICogZmFzdC9qcy9yZXNvdXJjZXMvdG9TdHJpbmctZWxpc2lvbi10cmFpbGluZy1jb21t
YS5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5n
LWNvbW1hLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy90b1N0cmluZy1l
bGlzaW9uLXRyYWlsaW5nLWNvbW1hLmh0bWw6IEFkZGVkLgorCiAyMDA3LTA1LTA5ICBFcmljIFNl
aWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBtanMuCkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2pzL3RvU3RyaW5nLWVsaXNpb24tdHJhaWxpbmctY29tbWEtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvanMvdG9TdHJpbmctZWxp
c2lvbi10cmFpbGluZy1jb21tYS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2pzL3RvU3RyaW5nLWVsaXNpb24tdHJhaWxpbmctY29tbWEtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgdG9T
dHJpbmcoKSByb3VuZC10cmlwIG9uIGEgZnVuY3Rpb24gdGhhdCBoYXMgYSBhcnJheSB3aXRoIGVs
aXNpb24gZG9lcyBub3QgcmVtb3ZlIGEgY29tbWEuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIHVldWYxIGlzIHVmMQorUEFTUyB1ZXVmMiBpcyB1ZjIKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0
cy9mYXN0L2pzL3RvU3RyaW5nLWVsaXNpb24tdHJhaWxpbmctY29tbWEuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL3RvU3RyaW5nLWVsaXNpb24tdHJhaWxpbmctY29tbWEu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMvdG9TdHJpbmctZWxpc2lv
bi10cmFpbGluZy1jb21tYS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACis8IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFk
PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29s
ZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3RvU3RyaW5nLWVsaXNpb24tdHJhaWxp
bmctY29tbWEuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9qcy9yZXNvdXJjZXMvdG9TdHJpbmctZWxpc2lvbi10cmFpbGluZy1jb21tYS5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL3Jlc291cmNlcy90b1N0cmluZy1lbGlzaW9uLXRy
YWlsaW5nLWNvbW1hLmpzCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNv
dXJjZXMvdG9TdHJpbmctZWxpc2lvbi10cmFpbGluZy1jb21tYS5qcwkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwyNyBAQAorZGVzY3JpcHRpb24oCisiVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRvU3Ry
aW5nKCkgcm91bmQtdHJpcCBvbiBhIGZ1bmN0aW9uIHRoYXQgaGFzIGEgYXJyYXkgd2l0aCBlbGlz
aW9uIGRvZXMgbm90IHJlbW92ZSBhIGNvbW1hLiIKKyk7CisKK2Z1bmN0aW9uIGYxKCkgeworICAg
IHJldHVybiBbMSwsLF07Cit9CisKK2Z1bmN0aW9uIGYyKCkgeworICAgIHJldHVybiBbMSwsLCws
XTsKK30KKwordW5ldmFsZiA9IGZ1bmN0aW9uKHgpIHsgcmV0dXJuICcoJyArIHgudG9TdHJpbmco
KSArICcpJzsgfQorCit0cnkgeworICAgIHVmMSA9IHVuZXZhbGYoZjEpOworICAgIHVldWYxID0g
dW5ldmFsZihldmFsKHVuZXZhbGYoZjEpKSk7CisKKyAgICB1ZjIgPSB1bmV2YWxmKGYyKTsKKyAg
ICB1ZXVmMiA9IHVuZXZhbGYoZXZhbCh1bmV2YWxmKGYyKSkpOworfSBjYXRjaChlKSB7Cit9CisK
K3Nob3VsZEJlKCJ1ZXVmMSIsICJ1ZjEiKTsKK3Nob3VsZEJlKCJ1ZXVmMiIsICJ1ZjIiKTsKKwor
dmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cg==
</data>
<flag name="review"
          id="5892"
          type_id="1"
          status="-"
          setter="mrowe"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>14542</attachid>
            <date>2007-05-14 01:35:15 -0700</date>
            <delta_ts>2007-05-14 08:10:25 -0700</delta_ts>
            <desc>Print extra comma if array expression has element list and elisions</desc>
            <filename>toString-elision-trailing-comma-2.diff</filename>
            <type>text/plain</type>
            <size>8721</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNDQ5KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDctMDUtMTMgIEtpbW1vIEtp
bm51bmVuICA8a2ltbW9rQGlraS5maT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAtIEZpeGVzIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNjIyIChEZWNvbXBpbGVyCisgICAgICAgICAgb21pdHMgdHJhaWxpbmcgY29tbWEg
aW4gYXJyYXkgbGl0ZXJhbCkKKworCSAgICAgKiBranMvbm9kZXMyc3RyaW5nLmNwcDoKKwkgICAg
IChBcnJheU5vZGU6OnN0cmVhbVRvKTogcHJpbnQgZXh0cmEgJywnIGluIGNhc2UgdGhlcmUgd2Fz
IGVsaXNpb24KKwkgICAgIGNvbW1hcyAoY2hlY2sgb3B0IG1lbWJlciB2YXIpIGFuZCBhcnJheSBl
bGVtZW50cyBwcmVzZW50CisJICAgICBpbiB0aGUgYXJyYXkgZXhwcmVzc2lvbgorCiAyMDA3LTA1
LTExICBLaW1tbyBLaW5udW5lbiAgPGtpbW1va0Bpa2kuZmk+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgRGFyaW4uCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ranMvbm9kZXMyc3RyaW5nLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9ranMvbm9kZXMyc3RyaW5nLmNwcAkocmV2aXNpb24g
MjE0NDkpCisrKyBKYXZhU2NyaXB0Q29yZS9ranMvbm9kZXMyc3RyaW5nLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTc3LDYgKzE3NywxMCBAQCB2b2lkIEFycmF5Tm9kZTo6c3RyZWFtVG8oU291cmNl
U3RyZWFtICZzCiAgIHMgPDwgIlsiIDw8IGVsZW1lbnQ7CiAgIGZvciAoaW50IGkgPSAwOyBpIDwg
ZWxpc2lvbjsgaSsrKQogICAgIHMgPDwgIiwiOworICAvLyBQYXJzZXIgY29uc3VtZXMgb25lIGVs
aXNpb24gY29tbWEgaWYgdGhlcmUncyBhcnJheSBlbGVtZW50cyAKKyAgLy8gcHJlc2VudCBpbiB0
aGUgZXhwcmVzc2lvbi4KKyAgaWYgKG9wdCAmJiBlbGVtZW50KQorICAgIHMgPDwgIiwiOwogICBz
IDw8ICJdIjsKIH0KIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjE0NDkpCisrKyBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAwNy0wNS0xMyAgS2lt
bW8gS2lubnVuZW4gIDxraW1tb2tAaWtpLmZpPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIC0gVGVzdHMgZm9yIGZpeCB0byBodHRwOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzYyMiAoRGVjb21waWxlciBvbWl0cworICAgICAgICAg
IHRyYWlsaW5nIGNvbW1hIGluIGFycmF5IGxpdGVyYWwpCisgICAgICAgICogZmFzdC9qcy9yZXNv
dXJjZXMvdG9TdHJpbmctZWxpc2lvbi10cmFpbGluZy1jb21tYS5qczogQWRkZWQuCisgICAgICAg
ICogZmFzdC9qcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5nLWNvbW1hLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZmFzdC9qcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5nLWNvbW1h
Lmh0bWw6IEFkZGVkLgorCiAyMDA3LTA1LTEzICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbi4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvanMvdG9TdHJpbmctZWxpc2lvbi10cmFpbGluZy1jb21tYS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9qcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5n
LWNvbW1hLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMv
dG9TdHJpbmctZWxpc2lvbi10cmFpbGluZy1jb21tYS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsOTAgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCB0b1N0cmluZygpIHJvdW5k
LXRyaXAgb24gYSBmdW5jdGlvbiB0aGF0IGhhcyBhIGFycmF5IHdpdGggZWxpc2lvbiBkb2VzIG5v
dCByZW1vdmUgYSBjb21tYS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mg
dHlwZW9mIHVuZGVmaW5lZCBpcyAndW5kZWZpbmVkJworUEFTUyBmMSgpLmxlbmd0aCBpcyAxCitQ
QVNTIGYxKClbMS0xXSBpcyB1bmRlZmluZWQKK1BBU1MgdW5ldmFsZihldmFsKHVuZXZhbGYoZjEp
KSkgaXMgdW5ldmFsZihmMSkKK1BBU1MgZXZhbCh1bmV2YWxmKGYxKSkoKS5sZW5ndGggaXMgMQor
UEFTUyBldmFsKHVuZXZhbGYoZjEpKSgpWzEtMV0gaXMgdW5kZWZpbmVkCitQQVNTIGYyKCkubGVu
Z3RoIGlzIDEKK1BBU1MgZjIoKVsxLTFdIGlzIDEKK1BBU1MgdW5ldmFsZihldmFsKHVuZXZhbGYo
ZjIpKSkgaXMgdW5ldmFsZihmMikKK1BBU1MgZXZhbCh1bmV2YWxmKGYyKSkoKS5sZW5ndGggaXMg
MQorUEFTUyBldmFsKHVuZXZhbGYoZjIpKSgpWzEtMV0gaXMgMQorUEFTUyBmMygpLmxlbmd0aCBp
cyAxCitQQVNTIGYzKClbMS0xXSBpcyAxCitQQVNTIHVuZXZhbGYoZXZhbCh1bmV2YWxmKGYzKSkp
IGlzIHVuZXZhbGYoZjMpCitQQVNTIGV2YWwodW5ldmFsZihmMykpKCkubGVuZ3RoIGlzIDEKK1BB
U1MgZXZhbCh1bmV2YWxmKGYzKSkoKVsxLTFdIGlzIDEKK1BBU1MgZjQoKS5sZW5ndGggaXMgMgor
UEFTUyBmNCgpWzItMV0gaXMgdW5kZWZpbmVkCitQQVNTIHVuZXZhbGYoZXZhbCh1bmV2YWxmKGY0
KSkpIGlzIHVuZXZhbGYoZjQpCitQQVNTIGV2YWwodW5ldmFsZihmNCkpKCkubGVuZ3RoIGlzIDIK
K1BBU1MgZXZhbCh1bmV2YWxmKGY0KSkoKVsyLTFdIGlzIHVuZGVmaW5lZAorUEFTUyBmNSgpLmxl
bmd0aCBpcyAzCitQQVNTIGY1KClbMy0xXSBpcyB1bmRlZmluZWQKK1BBU1MgdW5ldmFsZihldmFs
KHVuZXZhbGYoZjUpKSkgaXMgdW5ldmFsZihmNSkKK1BBU1MgZXZhbCh1bmV2YWxmKGY1KSkoKS5s
ZW5ndGggaXMgMworUEFTUyBldmFsKHVuZXZhbGYoZjUpKSgpWzMtMV0gaXMgdW5kZWZpbmVkCitQ
QVNTIGY2KCkubGVuZ3RoIGlzIDQKK1BBU1MgZjYoKVs0LTFdIGlzIDQKK1BBU1MgdW5ldmFsZihl
dmFsKHVuZXZhbGYoZjYpKSkgaXMgdW5ldmFsZihmNikKK1BBU1MgZXZhbCh1bmV2YWxmKGY2KSko
KS5sZW5ndGggaXMgNAorUEFTUyBldmFsKHVuZXZhbGYoZjYpKSgpWzQtMV0gaXMgNAorUEFTUyBm
NygpLmxlbmd0aCBpcyAyCitQQVNTIGY3KClbMi0xXSBpcyAyCitQQVNTIHVuZXZhbGYoZXZhbCh1
bmV2YWxmKGY3KSkpIGlzIHVuZXZhbGYoZjcpCitQQVNTIGV2YWwodW5ldmFsZihmNykpKCkubGVu
Z3RoIGlzIDIKK1BBU1MgZXZhbCh1bmV2YWxmKGY3KSkoKVsyLTFdIGlzIDIKK1BBU1MgZjgoKS5s
ZW5ndGggaXMgMworUEFTUyBmOCgpWzMtMV0gaXMgdW5kZWZpbmVkCitQQVNTIHVuZXZhbGYoZXZh
bCh1bmV2YWxmKGY4KSkpIGlzIHVuZXZhbGYoZjgpCitQQVNTIGV2YWwodW5ldmFsZihmOCkpKCku
bGVuZ3RoIGlzIDMKK1BBU1MgZXZhbCh1bmV2YWxmKGY4KSkoKVszLTFdIGlzIHVuZGVmaW5lZAor
UEFTUyBmOSgpLmxlbmd0aCBpcyA1CitQQVNTIGY5KClbNS0xXSBpcyA1CitQQVNTIHVuZXZhbGYo
ZXZhbCh1bmV2YWxmKGY5KSkpIGlzIHVuZXZhbGYoZjkpCitQQVNTIGV2YWwodW5ldmFsZihmOSkp
KCkubGVuZ3RoIGlzIDUKK1BBU1MgZXZhbCh1bmV2YWxmKGY5KSkoKVs1LTFdIGlzIDUKK1BBU1Mg
ZjEwKCkubGVuZ3RoIGlzIDUKK1BBU1MgZjEwKClbNS0xXSBpcyB1bmRlZmluZWQKK1BBU1MgdW5l
dmFsZihldmFsKHVuZXZhbGYoZjEwKSkpIGlzIHVuZXZhbGYoZjEwKQorUEFTUyBldmFsKHVuZXZh
bGYoZjEwKSkoKS5sZW5ndGggaXMgNQorUEFTUyBldmFsKHVuZXZhbGYoZjEwKSkoKVs1LTFdIGlz
IHVuZGVmaW5lZAorUEFTUyBmMTEoKS5sZW5ndGggaXMgNgorUEFTUyBmMTEoKVs2LTFdIGlzIDYK
K1BBU1MgdW5ldmFsZihldmFsKHVuZXZhbGYoZjExKSkpIGlzIHVuZXZhbGYoZjExKQorUEFTUyBl
dmFsKHVuZXZhbGYoZjExKSkoKS5sZW5ndGggaXMgNgorUEFTUyBldmFsKHVuZXZhbGYoZjExKSko
KVs2LTFdIGlzIDYKK1BBU1MgZjEyKCkubGVuZ3RoIGlzIDIKK1BBU1MgZjEyKClbMi0xXSBpcyB1
bmRlZmluZWQKK1BBU1MgdW5ldmFsZihldmFsKHVuZXZhbGYoZjEyKSkpIGlzIHVuZXZhbGYoZjEy
KQorUEFTUyBldmFsKHVuZXZhbGYoZjEyKSkoKS5sZW5ndGggaXMgMgorUEFTUyBldmFsKHVuZXZh
bGYoZjEyKSkoKVsyLTFdIGlzIHVuZGVmaW5lZAorUEFTUyBmMTMoKS5sZW5ndGggaXMgMgorUEFT
UyBmMTMoKVsyLTFdIGlzIHVuZGVmaW5lZAorUEFTUyB1bmV2YWxmKGV2YWwodW5ldmFsZihmMTMp
KSkgaXMgdW5ldmFsZihmMTMpCitQQVNTIGV2YWwodW5ldmFsZihmMTMpKSgpLmxlbmd0aCBpcyAy
CitQQVNTIGV2YWwodW5ldmFsZihmMTMpKSgpWzItMV0gaXMgdW5kZWZpbmVkCitQQVNTIGYxNCgp
Lmxlbmd0aCBpcyAzCitQQVNTIGYxNCgpWzMtMV0gaXMgdW5kZWZpbmVkCitQQVNTIHVuZXZhbGYo
ZXZhbCh1bmV2YWxmKGYxNCkpKSBpcyB1bmV2YWxmKGYxNCkKK1BBU1MgZXZhbCh1bmV2YWxmKGYx
NCkpKCkubGVuZ3RoIGlzIDMKK1BBU1MgZXZhbCh1bmV2YWxmKGYxNCkpKClbMy0xXSBpcyB1bmRl
ZmluZWQKK1BBU1MgZjE1KCkubGVuZ3RoIGlzIDIKK1BBU1MgZjE1KClbMi0xXSBpcyB1bmRlZmlu
ZWQKK1BBU1MgdW5ldmFsZihldmFsKHVuZXZhbGYoZjE1KSkpIGlzIHVuZXZhbGYoZjE1KQorUEFT
UyBldmFsKHVuZXZhbGYoZjE1KSkoKS5sZW5ndGggaXMgMgorUEFTUyBldmFsKHVuZXZhbGYoZjE1
KSkoKVsyLTFdIGlzIHVuZGVmaW5lZAorUEFTUyBmMTYoKS5sZW5ndGggaXMgMworUEFTUyBmMTYo
KVszLTFdIGlzIHVuZGVmaW5lZAorUEFTUyB1bmV2YWxmKGV2YWwodW5ldmFsZihmMTYpKSkgaXMg
dW5ldmFsZihmMTYpCitQQVNTIGV2YWwodW5ldmFsZihmMTYpKSgpLmxlbmd0aCBpcyAzCitQQVNT
IGV2YWwodW5ldmFsZihmMTYpKSgpWzMtMV0gaXMgdW5kZWZpbmVkCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9qcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5nLWNvbW1hLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvZmFzdC9qcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5nLWNvbW1hLmh0bWwJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL3RvU3RyaW5nLWVsaXNpb24tdHJh
aWxpbmctY29tbWEuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4K
KzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90b1N0cmluZy1lbGlzaW9uLXRyYWlsaW5nLWNv
bW1hLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMv
cmVzb3VyY2VzL3RvU3RyaW5nLWVsaXNpb24tdHJhaWxpbmctY29tbWEuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvdG9TdHJpbmctZWxpc2lvbi10cmFpbGlu
Zy1jb21tYS5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMvcmVzb3VyY2Vz
L3RvU3RyaW5nLWVsaXNpb24tdHJhaWxpbmctY29tbWEuanMJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMTExIEBACitkZXNjcmlwdGlvbigKKyJUaGlzIHRlc3QgY2hlY2tzIHRoYXQgdG9TdHJpbmco
KSByb3VuZC10cmlwIG9uIGEgZnVuY3Rpb24gdGhhdCBoYXMgYSBhcnJheSB3aXRoIGVsaXNpb24g
ZG9lcyBub3QgcmVtb3ZlIGEgY29tbWEuIgorKTsKKworZnVuY3Rpb24gZjEoKSB7CisgICAgcmV0
dXJuIFssXTsKK30KKworZnVuY3Rpb24gZjIoKSB7CisgICAgcmV0dXJuIFsxXTsKK30KKworZnVu
Y3Rpb24gZjMoKSB7CisgICAgcmV0dXJuIFsxLF07Cit9CisKKy8vIHRoaXMgaXMgdGhlIGZpcnN0
IHRlc3RjYXNlIHRoYXQgcHJvdmVzIHRoYXQgdHJhaWxpbmcKKy8vIGVsaXNpb24gY29tbWEgaXMg
bm90IHJlbW92ZWQKK2Z1bmN0aW9uIGY0KCkgeworICAgIHJldHVybiBbMSwsXTsKK30KKworZnVu
Y3Rpb24gZjUoKSB7CisgICAgcmV0dXJuIFsxLCwsXTsKK30KK2Z1bmN0aW9uIGY2KCkgeworICAg
IHJldHVybiBbMSwsLDRdOworfQorCitmdW5jdGlvbiBmNygpIHsKKyAgICByZXR1cm4gWywyLF07
Cit9CisKK2Z1bmN0aW9uIGY4KCkgeworICAgIHJldHVybiBbLDIsLF07Cit9CisKK2Z1bmN0aW9u
IGY5KCkgeworICAgIHJldHVybiBbLDIsLCw1XTsKK30KKworZnVuY3Rpb24gZjEwKCkgeworICAg
IHJldHVybiBbLCwzLCwsXTsKK30KKworZnVuY3Rpb24gZjExKCkgeworICAgIHJldHVybiBbLCwz
LCwsNl07Cit9CisKK2Z1bmN0aW9uIGYxMigpIHsKKyAgICByZXR1cm4gWyx1bmRlZmluZWRdOwor
fQorCitmdW5jdGlvbiBmMTMoKSB7CisgICAgcmV0dXJuIFssdW5kZWZpbmVkLF07Cit9CisKK2Z1
bmN0aW9uIGYxNCgpIHsKKyAgICByZXR1cm4gWyx1bmRlZmluZWQsLF07Cit9CisKK2Z1bmN0aW9u
IGYxNSgpIHsKKyAgICByZXR1cm4gWywsXTsKK30KKworZnVuY3Rpb24gZjE2KCkgeworICAgIHJl
dHVybiBbLCwsXTsKK30KKworc2hvdWxkQmUoInR5cGVvZiB1bmRlZmluZWQiLCAiJ3VuZGVmaW5l
ZCciKTsKKwordW5ldmFsZiA9IGZ1bmN0aW9uKHgpIHsgcmV0dXJuICcoJyArIHgudG9TdHJpbmco
KSArICcpJzsgfTsKKworZnVuY3Rpb24gdGVzdFRvU3RyaW5nQW5kTGVuZ3RoKGZuLCBsZW5ndGgs
IGxhc3RFbGVtZW50KQoreworICAgIC8vIGNoZWNrIHRoYXQgYXJyYXkgbGVuZ3RoIGlzIGNvcnJl
Y3QKKyAgICBzaG91bGRCZSgiIisgZm4gKyIoKS5sZW5ndGgiLCAiIiArIGxlbmd0aCk7CisKKyAg
ICAvLyBjaGVjayB0aGF0IGxhc3QgZWxlbWVudCBpcyB3aGF0IGl0IGlzIHN1cHBvc2VkIHRvIGJl
CisgICAgc2hvdWxkQmUoIiIrIGZuICsiKClbIiArIGxlbmd0aCArIi0xXSIsICIiICsgbGFzdEVs
ZW1lbnQpOworCisgICAgLy8gY2hlY2sgdGhhdCB0b1N0cmluZyByZXN1bHQgZXZhbHVhdGVzIHRv
IGNvZGUgdGhhdCBjYW4gYmUgZXZhbHVhdGVkCisgICAgLy8gYW5kIHRoYXQgdG9TdHJpbmcgZG9l
c24ndCByZW1vdmUgdGhlIHRyYWlsaW5nIGVsaXNpb24gY29tbWEuCisgICAgc2hvdWxkQmUoInVu
ZXZhbGYoZXZhbCh1bmV2YWxmKCIrZm4rIikpKSIsICJ1bmV2YWxmKCIgKyBmbiArICIpIik7CisK
KyAgICAvLyBjaGVjayB0aGF0IHRvU3RyaW5nKCllZCBmdW5jdGlvbnMgc2hvdWxkIHJldGFpbiBz
ZW1hbnRpY3MKKworICAgIHNob3VsZEJlKCJldmFsKHVuZXZhbGYoIitmbisiKSkoKS5sZW5ndGgi
LCAiIitsZW5ndGgpOworICAgIHNob3VsZEJlKCJldmFsKHVuZXZhbGYoIitmbisiKSkoKVsiICsg
bGVuZ3RoICsiLTFdIiwgIiIrbGFzdEVsZW1lbnQpOworfQorCisKK3Rlc3RUb1N0cmluZ0FuZExl
bmd0aCgiZjEiLCAxKTsKK3Rlc3RUb1N0cmluZ0FuZExlbmd0aCgiZjIiLCAxLCAxKTsKK3Rlc3RU
b1N0cmluZ0FuZExlbmd0aCgiZjMiLCAxLDEpOwordGVzdFRvU3RyaW5nQW5kTGVuZ3RoKCJmNCIs
IDIpOwordGVzdFRvU3RyaW5nQW5kTGVuZ3RoKCJmNSIsIDMpOwordGVzdFRvU3RyaW5nQW5kTGVu
Z3RoKCJmNiIsIDQsIDQpOwordGVzdFRvU3RyaW5nQW5kTGVuZ3RoKCJmNyIsIDIsIDIpOwordGVz
dFRvU3RyaW5nQW5kTGVuZ3RoKCJmOCIsIDMpOwordGVzdFRvU3RyaW5nQW5kTGVuZ3RoKCJmOSIs
IDUsIDUpOwordGVzdFRvU3RyaW5nQW5kTGVuZ3RoKCJmMTAiLCA1KTsKK3Rlc3RUb1N0cmluZ0Fu
ZExlbmd0aCgiZjExIiwgNiwgNik7Cit0ZXN0VG9TdHJpbmdBbmRMZW5ndGgoImYxMiIsIDIpOwor
dGVzdFRvU3RyaW5nQW5kTGVuZ3RoKCJmMTMiLCAyKTsKK3Rlc3RUb1N0cmluZ0FuZExlbmd0aCgi
ZjE0IiwgMyk7Cit0ZXN0VG9TdHJpbmdBbmRMZW5ndGgoImYxNSIsIDIpOwordGVzdFRvU3RyaW5n
QW5kTGVuZ3RoKCJmMTYiLCAzKTsKKworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
</data>
<flag name="review"
          id="5950"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>