<?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>93744</bug_id>
          
          <creation_ts>2012-08-10 14:38:04 -0700</creation_ts>
          <short_desc>REGRESSION: 6% perf. regressions on Bindings/node-list-access.html</short_desc>
          <delta_ts>2012-10-06 10:26:03 -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>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alph</cc>
    
    <cc>caseq</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>haraken</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>lforschler</cc>
    
    <cc>loislo</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>692884</commentid>
    <comment_count>0</comment_count>
      <attachid>157812</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-10 14:38:04 -0700</bug_when>
    <thetext>Created attachment 157812
Bisect results

See http://webkit-perf.appspot.com/graph.html#tests=[[2966378,2001,32196]]&amp;sel=1343895254495.4062,1344094768078.8474,116.85483870967741,148.30645161290323&amp;displayrange=30&amp;datatype=running

I&apos;ve manually bisected builds and found narrowed the regression range to r124569 and r124570 but http://trac.webkit.org/changeset/124569 is EFL specific so it can&apos;t affect Lion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693765</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-08-13 09:59:45 -0700</bug_when>
    <thetext>It doesn&apos;t seem good if a developer-only feature negatively affects performance for everyone. Should r124570 be rolled out?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>694603</commentid>
    <comment_count>2</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-08-14 00:35:53 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; It doesn&apos;t seem good if a developer-only feature negatively affects performance for everyone. Should r124570 be rolled out?

Hm, that sounds weird as the code changed in http://trac.webkit.org/changeset/124570 is never executed if inspector front-end is not open. I will take a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695060</commentid>
    <comment_count>3</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-08-14 09:40:30 -0700</bug_when>
    <thetext>I&apos;ve got the following results for the test locally:

r124570:
Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 117.058146763 runs/s
median= 117.035110533 runs/s, stdev= 0.154035470159 runs/s, min= 116.580310881 runs/s, max= 117.1875 runs/s

Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 118.598121427 runs/s
median= 119.443074539 runs/s, stdev= 2.12033029385 runs/s, min= 114.503816794 runs/s, max= 121.359223301 runs/s



r124569:
Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 116.415725262 runs/s
median= 116.429495472 runs/s, stdev= 0.388459438058 runs/s, min= 115.979381443 runs/s, max= 117.647058824 runs/s

Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 120.665066918 runs/s
median= 121.065375303 runs/s, stdev= 0.806736064988 runs/s, min= 118.26544021 runs/s, max= 121.212121212 runs/s</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695079</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-14 10:01:49 -0700</bug_when>
    <thetext>This regression only reproduces on Apple&apos;s Mac port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695762</commentid>
    <comment_count>5</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-08-14 23:24:22 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; This regression only reproduces on Apple&apos;s Mac port.

The results above are for Apple&apos;s Mac port. I didn&apos;t have 10.7  under my hand so I ran it on 10.6. I&apos;ll try to find 10.7 today to run the test there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695769</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-14 23:29:07 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt; This regression only reproduces on Apple&apos;s Mac port.
&gt; 
&gt; The results above are for Apple&apos;s Mac port. I didn&apos;t have 10.7  under my hand so I ran it on 10.6. I&apos;ll try to find 10.7 today to run the test there.

Strange. I used a 10.6 machine to get my stat.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695858</commentid>
    <comment_count>7</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2012-08-15 02:27:28 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; (In reply to comment #4)
&gt; &gt; &gt; This regression only reproduces on Apple&apos;s Mac port.
&gt; &gt; 
&gt; &gt; The results above are for Apple&apos;s Mac port. I didn&apos;t have 10.7  under my hand so I ran it on 10.6. I&apos;ll try to find 10.7 today to run the test there.
&gt; 
&gt; Strange. I used a 10.6 machine to get my stat.

FWIW, I tried it on 10.7 and there does not seem to be any perf regression caused by r124570:

r124569:
WebKit caseq$ ./Tools/Scripts/run-perf-tests Bindings/node-list-access.html

Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 180.702349353 runs/s
median= 180.995550742 runs/s, stdev= 1.37570953338 runs/s, min= 177.439797212 runs/s, max= 182.291666667 runs/s

r124570:
WebKit caseq$ ./Tools/Scripts/run-perf-tests Bindings/node-list-access.html
Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 181.230389955 runs/s
median= 181.347150259 runs/s, stdev= 1.4923706351 runs/s, min= 178.117048346 runs/s, max= 183.006535948 runs/s</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>698163</commentid>
    <comment_count>8</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-08-17 03:48:00 -0700</bug_when>
    <thetext>Below are the results for another Mac OX Lion machine:

r124569:
Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 128.321842899 runs/s
median= 127.145633077 runs/s, stdev= 3.5260358241 runs/s, min= 125.470514429 runs/s, max= 135.900339751 runs/s


r124570:
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 127.241506239 runs/s
median= 125.786362543 runs/s, stdev= 3.33869499061 runs/s, min= 123.609394314 runs/s, max= 134.228187919 runs/s


One interesting thing about the test is that I got the following result on r124582:

124582 
Running 1 tests
Running Bindings/node-list-access.html (1 of 1)
DESCRIPTION: This benchmark covers &apos;childNodes&apos; in Dromaeo/dom-traverse.html, and other DOM attributes that access NodeList.
RESULT Bindings: node-list-access= 136.215966376 runs/s
median= 138.364779874 runs/s, stdev= 4.87487494624 runs/s, min= 124.378109453 runs/s, max= 139.416983523 runs/s
which is faster than r124570</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>698497</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-17 11:06:11 -0700</bug_when>
    <thetext>Strange :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>735941</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-10-05 13:59:12 -0700</bug_when>
    <thetext>Looking at the graphs more closely, it seems like the culprit is http://trac.webkit.org/changeset/128400.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736253</commentid>
    <comment_count>11</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-10-06 10:26:03 -0700</bug_when>
    <thetext>&lt;rdar://problem/12448669&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>157812</attachid>
            <date>2012-08-10 14:38:04 -0700</date>
            <delta_ts>2012-08-10 14:38:04 -0700</delta_ts>
            <desc>Bisect results</desc>
            <filename>node-list.html</filename>
            <type>text/html</type>
            <size>9942</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPHRpdGxlPldlYktpdCBQZXJmb3JtYW5jZSBU
ZXN0IFJlc3VsdHM8L3RpdGxlPgo8c2NyaXB0IHNyYz0iL1ZvbHVtZXMvRGF0YS93ZWJraXQyL1Bl
cmZvcm1hbmNlVGVzdHMvRHJvbWFlby9yZXNvdXJjZXMvZHJvbWFlby93ZWIvbGliL2pxdWVyeS0x
LjYuNC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSJodHRwczovL3RyYWMud2Via2l0Lm9yZy9i
cm93c2VyL3RydW5rL1BlcmZvcm1hbmNlVGVzdHMvRHJvbWFlby9yZXNvdXJjZXMvZHJvbWFlby93
ZWIvbGliL2pxdWVyeS0xLjYuNC5qcz9mb3JtYXQ9dHh0Ij48L3NjcmlwdD4KPHNjcmlwdCBzcmM9
Ii9Wb2x1bWVzL0RhdGEvd2Via2l0Mi9QZXJmb3JtYW5jZVRlc3RzL3Jlc291cmNlcy9qcXVlcnku
ZmxvdC5taW4uanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly90cmFjLndlYmtpdC5v
cmcvYnJvd3Nlci90cnVuay9QZXJmb3JtYW5jZVRlc3RzL3Jlc291cmNlcy9qcXVlcnkuZmxvdC5t
aW4uanM/Zm9ybWF0PXR4dCI+PC9zY3JpcHQ+CjxzY3JpcHQgaWQ9Impzb24iIHR5cGU9ImFwcGxp
Y2F0aW9uL2pzb24iPlt7InRpbWVzdGFtcCI6IDEzNDQ2Mjg4MTcsICJyZXN1bHRzIjogeyJCaW5k
aW5ncy9ub2RlLWxpc3QtYWNjZXNzIjogeyJtaW4iOiAxMjguMDQwOTczMTExMzk1NjYsICJtYXgi
OiAxMzQuNTI5MTQ3OTgyMDYyNzcsICJtZWRpYW4iOiAxMzMuOTI4NTcxNDI4NTcxNDIsICJzdGRl
diI6IDEuNDE3MzIxMjM5ODEyNTEyMSwgImF2ZyI6IDEzMy40Mjc0MTIwMDY3NjQ2NSwgInVuaXQi
OiAicnVucy9zIn19LCAiYnJhbmNoIjogIndlYmtpdC10cnVuayIsICJ3ZWJraXQtcmV2aXNpb24i
OiAiMTI0NTgxIn0sIHsidGltZXN0YW1wIjogMTM0NDYyODg2NywgInJlc3VsdHMiOiB7IkJpbmRp
bmdzL25vZGUtbGlzdC1hY2Nlc3MiOiB7Im1pbiI6IDEyNS4wLCAibWF4IjogMTI5LjM2NjEwNjA4
MDIwNjk4LCAibWVkaWFuIjogMTI4LjIwNTEyODIwNTEyODIsICJzdGRldiI6IDEuMTU1OTE3MTE5
ODU3NDQxNCwgImF2ZyI6IDEyNy45NDUwNTAzNzk3MDMzOSwgInVuaXQiOiAicnVucy9zIn19LCAi
YnJhbmNoIjogIndlYmtpdC10cnVuayIsICJ3ZWJraXQtcmV2aXNpb24iOiAiMTI0NTgxIn0sIHsi
dGltZXN0YW1wIjogMTM0NDYyODk2MywgInJlc3VsdHMiOiB7IkJpbmRpbmdzL25vZGUtbGlzdC1h
Y2Nlc3MiOiB7Im1pbiI6IDE1My4wNjEyMjQ0ODk3OTU5LCAibWF4IjogMTU1LjIzOTMyNzI5NjI0
ODM4LCAibWVkaWFuIjogMTU0LjQ0MDE1NDQ0MDE1NDQzLCAic3RkZXYiOiAwLjU0OTM2NzgyMjUz
NDgzNzc0LCAiYXZnIjogMTU0LjM4MjUxMDQ5MzYwMjE4LCAidW5pdCI6ICJydW5zL3MifX0sICJi
cmFuY2giOiAid2Via2l0LXRydW5rIiwgIndlYmtpdC1yZXZpc2lvbiI6ICIxMjQ1NjcifSwgeyJ0
aW1lc3RhbXAiOiAxMzQ0NjI5MDIyLCAicmVzdWx0cyI6IHsiQmluZGluZ3Mvbm9kZS1saXN0LWFj
Y2VzcyI6IHsibWluIjogMTYxLjEwNDcxODA2Njc0MzM3LCAibWF4IjogMTY1LjA5NDMzOTYyMjY0
MTUxLCAibWVkaWFuIjogMTY0LjcwNTg4MjM1Mjk0MTE5LCAic3RkZXYiOiAwLjk3Nzc2MTQxNTk4
NjA2MTkyLCAiYXZnIjogMTY0LjM2MzcyMzc3ODAwMjMxLCAidW5pdCI6ICJydW5zL3MifX0sICJi
cmFuY2giOiAid2Via2l0LXRydW5rIiwgIndlYmtpdC1yZXZpc2lvbiI6ICIxMjQ1NjcifSwgeyJ0
aW1lc3RhbXAiOiAxMzQ0NjMxMDQ4LCAicmVzdWx0cyI6IHsiQmluZGluZ3Mvbm9kZS1saXN0LWFj
Y2VzcyI6IHsibWluIjogMTIyLjY5OTM4NjUwMzA2NzQ5LCAibWF4IjogMTM5LjUzNDg4MzcyMDkz
MDIyLCAibWVkaWFuIjogMTM3LjUzNTg2MTc4NjMxMTA1LCAic3RkZXYiOiA0Ljc3NDk4NTY3Nzkz
MzY0NDQsICJhdmciOiAxMzUuMzcyNjk2OTk2Mjc0NSwgInVuaXQiOiAicnVucy9zIn19LCAiYnJh
bmNoIjogIndlYmtpdC10cnVuayIsICJ3ZWJraXQtcmV2aXNpb24iOiAiMTI0NTgwIn0sIHsidGlt
ZXN0YW1wIjogMTM0NDYzMTEwMSwgInJlc3VsdHMiOiB7IkJpbmRpbmdzL25vZGUtbGlzdC1hY2Nl
c3MiOiB7Im1pbiI6IDEyNy44NzcyMzc4NTE2NjI0LCAibWF4IjogMTM1LjEzNTEzNTEzNTEzNTEz
LCAibWVkaWFuIjogMTM0LjE1MzIwMDEwNDk4Mjk0LCAic3RkZXYiOiAxLjUwNjUyMTY3NDcwMTU4
NDIsICJhdmciOiAxMzMuODA3MjU4Mjg4NzczOTEsICJ1bml0IjogInJ1bnMvcyJ9fSwgImJyYW5j
aCI6ICJ3ZWJraXQtdHJ1bmsiLCAid2Via2l0LXJldmlzaW9uIjogIjEyNDU4MCJ9LCB7InRpbWVz
dGFtcCI6IDEzNDQ2MzE0OTgsICJyZXN1bHRzIjogeyJCaW5kaW5ncy9ub2RlLWxpc3QtYWNjZXNz
IjogeyJtaW4iOiAxMTguMzQzMTk1MjY2MjcyMTksICJtYXgiOiAxMzIuNDUwMzMxMTI1ODI3OCwg
Im1lZGlhbiI6IDEzMC45NzU4MjU2NTM3NjQwOCwgInN0ZGV2IjogNC41MDU2MDEzOTk3MDMzNjc3
LCAiYXZnIjogMTI4LjkzMTgyODYzMDY5NjQ5LCAidW5pdCI6ICJydW5zL3MifX0sICJicmFuY2gi
OiAid2Via2l0LXRydW5rIiwgIndlYmtpdC1yZXZpc2lvbiI6ICIxMjQ1NzgifSwgeyJ0aW1lc3Rh
bXAiOiAxMzQ0NjMxNTc4LCAicmVzdWx0cyI6IHsiQmluZGluZ3Mvbm9kZS1saXN0LWFjY2VzcyI6
IHsibWluIjogMTI0LjY4ODI3OTMwMTc0NTY0LCAibWF4IjogMTI4LjM2OTcwNDc0OTY3OTA3LCAi
bWVkaWFuIjogMTI2LjkwMzU1MzI5OTQ5MjM5LCAic3RkZXYiOiAwLjkyOTE0OTEyNjgwMjMxMzk4
LCAiYXZnIjogMTI2Ljc3MzYzMjIzMTQ5MjE0LCAidW5pdCI6ICJydW5zL3MifX0sICJicmFuY2gi
OiAid2Via2l0LXRydW5rIiwgIndlYmtpdC1yZXZpc2lvbiI6ICIxMjQ1NzgifSwgeyJ0aW1lc3Rh
bXAiOiAxMzQ0NjMxNjE2LCAicmVzdWx0cyI6IHsiQmluZGluZ3Mvbm9kZS1saXN0LWFjY2VzcyI6
IHsibWluIjogMTI3LjIyNjQ2MzEwNDMyNTcsICJtYXgiOiAxMzUuNTkzMjIwMzM4OTgzMDYsICJt
ZWRpYW4iOiAxMzEuMjMzNTk1ODAwNTI0OTQsICJzdGRldiI6IDEuNjEzNDU0NzczNDcwNzQ4Mywg
ImF2ZyI6IDEzMS40MTcxNDIxODMxMzk0OCwgInVuaXQiOiAicnVucy9zIn19LCAiYnJhbmNoIjog
IndlYmtpdC10cnVuayIsICJ3ZWJraXQtcmV2aXNpb24iOiAiMTI0NTc4In0sIHsidGltZXN0YW1w
IjogMTM0NDYzMTc1OCwgInJlc3VsdHMiOiB7IkJpbmRpbmdzL25vZGUtbGlzdC1hY2Nlc3MiOiB7
Im1pbiI6IDEyOS4xOTg5NjY0MDgyNjg3NSwgIm1heCI6IDEzNi4yMDg4NTM1NzU0ODI0MSwgIm1l
ZGlhbiI6IDEzNS43NDY2MDYzMzQ4NDE2MywgInN0ZGV2IjogMS44NjE0MDIxMzg3MzY4MDQsICJh
dmciOiAxMzUuMTI2NzMxMjQxOTQ2NTIsICJ1bml0IjogInJ1bnMvcyJ9fSwgImJyYW5jaCI6ICJ3
ZWJraXQtdHJ1bmsiLCAid2Via2l0LXJldmlzaW9uIjogIjEyNDU3MiJ9LCB7InRpbWVzdGFtcCI6
IDEzNDQ2MzE3ODcsICJyZXN1bHRzIjogeyJCaW5kaW5ncy9ub2RlLWxpc3QtYWNjZXNzIjogeyJt
aW4iOiAxMjguMjA1MTI4MjA1MTI4MiwgIm1heCI6IDEzNi44MzAxMDI2MjI1NzY5NiwgIm1lZGlh
biI6IDEzNC45ODMyOTc5MDQ2NDYyNCwgInN0ZGV2IjogMS44MDI1NDYzNTM1MjY3OTgsICJhdmci
OiAxMzQuNDY1MTI0OTMzODY4NTksICJ1bml0IjogInJ1bnMvcyJ9fSwgImJyYW5jaCI6ICJ3ZWJr
aXQtdHJ1bmsiLCAid2Via2l0LXJldmlzaW9uIjogIjEyNDU3MiJ9LCB7InRpbWVzdGFtcCI6IDEz
NDQ2MzMxMjAsICJyZXN1bHRzIjogeyJCaW5kaW5ncy9ub2RlLWxpc3QtYWNjZXNzIjogeyJtaW4i
OiAxMjAuMzM2OTQzNDQxNjM2NTgsICJtYXgiOiAxMzIuOTc4NzIzNDA0MjU1MzEsICJtZWRpYW4i
OiAxMjguNjE4NjkzMTM0ODIyMTcsICJzdGRldiI6IDMuMDIyNTc1NzAwNzg5ODk1MiwgImF2ZyI6
IDEyOC4zNzYxMzA0NjAyNjY4OSwgInVuaXQiOiAicnVucy9zIn19LCAiYnJhbmNoIjogIndlYmtp
dC10cnVuayIsICJ3ZWJraXQtcmV2aXNpb24iOiAiMTI0NTcwIn0sIHsidGltZXN0YW1wIjogMTM0
NDYzMzE1MSwgInJlc3VsdHMiOiB7IkJpbmRpbmdzL25vZGUtbGlzdC1hY2Nlc3MiOiB7Im1pbiI6
IDEyOS44NzAxMjk4NzAxMjk4NiwgIm1heCI6IDEzNC42Mzg5MjI4ODg2MTY4OSwgIm1lZGlhbiI6
IDEzMy42NTczNTExNTQzMTM0OSwgInN0ZGV2IjogMS4xODk5Mzg4OTAyNDYzMDc5LCAiYXZnIjog
MTMzLjMyMDY2MTkwMDA0NzI3LCAidW5pdCI6ICJydW5zL3MifX0sICJicmFuY2giOiAid2Via2l0
LXRydW5rIiwgIndlYmtpdC1yZXZpc2lvbiI6ICIxMjQ1NzAifSwgeyJ0aW1lc3RhbXAiOiAxMzQ0
NjM0NDAyLCAicmVzdWx0cyI6IHsiQmluZGluZ3Mvbm9kZS1saXN0LWFjY2VzcyI6IHsibWluIjog
MTYyLjAzNzAzNzAzNzAzNzA0LCAibWF4IjogMTYzLjc0MjY5MDA1ODQ3OTUyLCAibWVkaWFuIjog
MTYyLjQxMjk5MzAzOTQ0MzE3LCAic3RkZXYiOiAwLjQyOTM4MTYxODM5NjI2MDY2LCAiYXZnIjog
MTYyLjUyNzI1MDM3MjU0NzAzLCAidW5pdCI6ICJydW5zL3MifX0sICJicmFuY2giOiAid2Via2l0
LXRydW5rIiwgIndlYmtpdC1yZXZpc2lvbiI6ICIxMjQ1NjgifSwgeyJ0aW1lc3RhbXAiOiAxMzQ0
NjM0NjAzLCAicmVzdWx0cyI6IHsiQmluZGluZ3Mvbm9kZS1saXN0LWFjY2VzcyI6IHsibWluIjog
MTU1LjAzODc1OTY4OTkyMjQ3LCAibWF4IjogMTU5Ljc4Njk1MDczMjM1Njg3LCAibWVkaWFuIjog
MTU5LjM2MjU0OTgwMDc5NjgxLCAic3RkZXYiOiAwLjk4ODEyMTIyODc4NTczMDUsICJhdmciOiAx
NTkuMDk0MTY2MDE5MzU5MDgsICJ1bml0IjogInJ1bnMvcyJ9fSwgImJyYW5jaCI6ICJ3ZWJraXQt
dHJ1bmsiLCAid2Via2l0LXJldmlzaW9uIjogIjEyNDU2OCJ9XTwvc2NyaXB0Pgo8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgoKc2VjdGlvbiB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBw
YWRkaW5nOiAwIDEwcHg7Cn0KCnNlY3Rpb24gaDEgewogICAgdGV4dC1hbGlnbjogY2VudGVyOwog
ICAgZm9udC1zaXplOiAxZW07Cn0KCnNlY3Rpb24gLnRvb2x0aXAgewogICAgcG9zaXRpb246IGFi
c29sdXRlOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgYmFja2dyb3VuZDogI2ZmY2M2NjsK
ICAgIGJvcmRlci1yYWRpdXM6IDVweDsKICAgIHBhZGRpbmc6IDBweCA1cHg7Cn0KCjwvc3R5bGU+
CjwvaGVhZD4KPGJvZHk+CjxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+CjxzY3JpcHQ+CgpmdW5j
dGlvbiBjcmVhdGVQbG90KHRlc3ROYW1lKSB7CiAgICB2YXIgc2VjdGlvbiA9ICQoJzxzZWN0aW9u
PjxoMT48L2gxPjxkaXYgY2xhc3M9InBsb3QiPjwvZGl2PicKICAgICAgICArICc8c3BhbiBjbGFz
cz0idG9vbHRpcCI+PC9zcGFuPjxzZWN0aW9uPicpOwogICAgdmFyIHVuaXQgPSB0ZXN0VW5pdHNb
dGVzdE5hbWVdOwogICAgc2VjdGlvbi5jaGlsZHJlbignLnBsb3QnKS5jc3Moeyd3aWR0aCc6IDEw
MCAqIG1heExlbmd0aCArICdweCcsICdoZWlnaHQnOiAnMzAwcHgnfSk7CiAgICBzZWN0aW9uLmNo
aWxkcmVuKCdoMScpLmh0bWwodGVzdE5hbWUgKyAodW5pdCA/ICcgKCcgKyB1bml0ICsgJyknIDog
JycpKTsKICAgICQoJyNjb250YWluZXInKS5hcHBlbmQoc2VjdGlvbik7CiAgICAKICAgIGF0dGFj
aFBsb3QodGVzdE5hbWUsIHNlY3Rpb24pOwp9CgpmdW5jdGlvbiBhdHRhY2hQbG90KHRlc3ROYW1l
LCBzZWN0aW9uLCBtaW5Jc1plcm8pIHsKICAgIHZhciBhdmVyYWdlcyA9IHRlc3RSZXN1bHRzW3Rl
c3ROYW1lXTsKICAgIHZhciBjb2xvciA9ICdyZ2IoMjMwLDUwLDUwKSc7CgogICAgdmFyIG1pbk1h
eE9wdGlvbnMgPSB7bGluZXM6IHtzaG93OnRydWUsIGxpbmVXaWR0aDogMH0sCiAgICAgICAgY29s
b3I6IGNvbG9yLAogICAgICAgIHBvaW50czoge3Nob3c6IHRydWUsIHJhZGl1czogMX0sCiAgICAg
ICAgYmFyczoge3Nob3c6IGZhbHNlfX07CgogICAgZnVuY3Rpb24gbWFrZUxvd1Bsb3QoaWQsIGRh
dGEpIHsgcmV0dXJuICQuZXh0ZW5kKHRydWUsIHt9LCBtaW5NYXhPcHRpb25zLCB7aWQ6IGlkLCBk
YXRhOiBkYXRhfSk7IH0gICAgCiAgICBmdW5jdGlvbiBtYWtlSGlnaFBsb3QoZnJvbSwgdG8sIGZp
bGwsIGRhdGEpIHsgcmV0dXJuICQuZXh0ZW5kKHRydWUsIHt9LCBtaW5NYXhPcHRpb25zLAogICAg
ICAgIHtpZDogdG8sIGRhdGE6IGRhdGF9KTsgfQoKICAgIHZhciBwbG90RGF0YSA9IFsKICAgICAg
ICBtYWtlTG93UGxvdCgnbWluJywgdGVzdFJlc3VsdHNNaW5bdGVzdE5hbWVdKSwKICAgICAgICBt
YWtlSGlnaFBsb3QoJ21pbicsICdtYXgnLCAwLjIsIHRlc3RSZXN1bHRzTWF4W3Rlc3ROYW1lXSks
CiAgICAgICAgbWFrZUxvd1Bsb3QoJy0mIzk2MzsnLCB0ZXN0UmVzdWx0c1N0ZGV2TG93W3Rlc3RO
YW1lXSksIC8vIHNtYWxsIGxldHRlciBzZ2ltYS4KICAgICAgICBtYWtlSGlnaFBsb3QoJy0mIzk2
MzsnLCAnKyYjOTYzOycsIDAuNCwgdGVzdFJlc3VsdHNTdGRldkhpZ2hbdGVzdE5hbWVdKSwKICAg
ICAgICB7ZGF0YTogYXZlcmFnZXMsIGNvbG9yOiBjb2xvcn1dOwoKICAgIHZhciBwbG90Q29udGFp
bmVyID0gc2VjdGlvbi5jaGlsZHJlbignLnBsb3QnKTsKICAgICQucGxvdChwbG90Q29udGFpbmVy
LCBwbG90RGF0YSwgewogICAgICAgIHhheGlzOiB7CiAgICAgICAgICAgIG1pbjogYXZlcmFnZXNb
MF1bMF0gLSAwLjUsCiAgICAgICAgICAgIG1heDogYXZlcmFnZXNbYXZlcmFnZXMubGVuZ3RoIC0g
MV1bMF0gKyAwLjUsCiAgICAgICAgICAgIHRpY2tTaXplOiAxLAogICAgICAgICAgICB0aWNrczog
YXZlcmFnZXMubWFwKGZ1bmN0aW9uICh2YWx1ZSwgaW5kZXgpIHsKICAgICAgICAgICAgICAgIHZh
ciBsYWJlbCA9ICdyJyArIHdlYmtpdFJldmlzaW9uc1tpbmRleF07CiAgICAgICAgICAgICAgICBp
ZiAoZGVzY3JpcHRpb25zW2luZGV4XSkKICAgICAgICAgICAgICAgICAgICBsYWJlbCArPSAnICZk
YXNoOyAnICsgZGVzY3JpcHRpb25zW2luZGV4XQogICAgICAgICAgICAgICAgcmV0dXJuIFtpbmRl
eCwgbGFiZWxdOwogICAgICAgICAgICB9KSwKICAgICAgICB9LAogICAgICAgIHlheGlzOiB7CiAg
ICAgICAgICAgIG1pbjogbWluSXNaZXJvID8gMCA6IE1hdGgubWluLmFwcGx5KE1hdGgsICQubWFw
KHRlc3RSZXN1bHRzTWluW3Rlc3ROYW1lXSwgZnVuY3Rpb24gKGVudHJ5KSB7IHJldHVybiBlbnRy
eVsxXTsgfSkpICogMC45OCwKICAgICAgICAgICAgbWF4OiBNYXRoLm1heC5hcHBseShNYXRoLCAk
Lm1hcCh0ZXN0UmVzdWx0c01heFt0ZXN0TmFtZV0sIGZ1bmN0aW9uIChlbnRyeSkgeyByZXR1cm4g
ZW50cnlbMV07IH0pKSAqIChtaW5Jc1plcm8gPyAxLjEgOiAxLjAxKSwKICAgICAgICB9LAogICAg
ICAgIGNyb3NzaGFpcjogeyBtb2RlOiAneScgfSwKICAgICAgICBzZXJpZXM6IHsgc2hhZG93U2l6
ZTogMCB9LAogICAgICAgIGJhcnM6IHtzaG93OiB0cnVlLCBhbGlnbjogJ2NlbnRlcicsIGJhcldp
ZHRoOiAwLjV9LAogICAgICAgIGxpbmVzOiB7IHNob3c6IGZhbHNlIH0sCiAgICAgICAgcG9pbnRz
OiB7IHNob3c6IHRydWUgfSwKICAgICAgICBncmlkOiB7CiAgICAgICAgICAgIGJvcmRlcldpZHRo
OiAyLAogICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJywKICAgICAgICAgICAgaG92
ZXJhYmxlOiB0cnVlLAogICAgICAgICAgICBhdXRvSGlnaGxpZ2h0OiBmYWxzZSwKICAgICAgICB9
CiAgICB9KTsKCiAgICB2YXIgdG9vbHRpcCA9IHNlY3Rpb24uY2hpbGRyZW4oJy50b29sdGlwJyk7
CiAgICBwbG90Q29udGFpbmVyLmJpbmQoJ3Bsb3Rob3ZlcicsIGZ1bmN0aW9uIChldmVudCwgcG9z
aXRpb24sIGl0ZW0pIHsKICAgICAgICBpZiAoaXRlbSkgewogICAgICAgICAgICB2YXIgcG9zdGZp
eCA9IGl0ZW0uc2VyaWVzLmlkID8gJyAoJyArIGl0ZW0uc2VyaWVzLmlkICsgJyknIDogJyc7CiAg
ICAgICAgICAgIHRvb2x0aXAuaHRtbChpdGVtLmRhdGFwb2ludFsxXS50b1ByZWNpc2lvbig0KSAr
IHBvc3RmaXgpOwogICAgICAgICAgICB0b29sdGlwLmNzcyh7bGVmdDogaXRlbS5wYWdlWCAtIHRv
b2x0aXAub3V0ZXJXaWR0aCgpIC8gMiwgdG9wOiBpdGVtLnBhZ2VZICsgMTB9KTsKICAgICAgICAg
ICAgdG9vbHRpcC5mYWRlSW4oMjAwKTsKICAgICAgICB9IGVsc2UKICAgICAgICAgICAgdG9vbHRp
cC5oaWRlKCk7CiAgICB9KTsKICAgIHBsb3RDb250YWluZXIubW91c2VvdXQoZnVuY3Rpb24gKCkg
ewogICAgICAgIHRvb2x0aXAuaGlkZSgpOwogICAgfSk7CgogICAgcGxvdENvbnRhaW5lci5jbGlj
ayhmdW5jdGlvbiAoZXZlbnQpIHsKICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwogICAg
ICAgIGF0dGFjaFBsb3QodGVzdE5hbWUsIHNlY3Rpb24sICFtaW5Jc1plcm8pOwogICAgfSk7Cn0K
CnZhciByZXN1bHRzID0gSlNPTi5wYXJzZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnanNvbicp
LnRleHRDb250ZW50KTsKdmFyIHRlc3RzID0gW107CnZhciB0ZXN0UmVzdWx0cyA9IHt9LCB0ZXN0
UmVzdWx0c01pbiA9IHt9LCB0ZXN0UmVzdWx0c01heCA9IHt9LCB0ZXN0UmVzdWx0c1N0ZGV2TG93
ID0ge30sIHRlc3RSZXN1bHRzU3RkZXZIaWdoID0ge307CnZhciB0ZXN0VW5pdHMgPSB7fTsKdmFy
IHdlYmtpdFJldmlzaW9ucyA9IFtdOwp2YXIgZGVzY3JpcHRpb25zID0gW107CnZhciBtYXhMZW5n
dGggPSAwOwokLmVhY2gocmVzdWx0cywgZnVuY3Rpb24gKGluZGV4LCBlbnRyeSkgewogICAgd2Vi
a2l0UmV2aXNpb25zLnB1c2goZW50cnlbJ3dlYmtpdC1yZXZpc2lvbiddKTsKICAgIGRlc2NyaXB0
aW9ucy5wdXNoKGVudHJ5WydkZXNjcmlwdGlvbiddKTsKICAgICQuZWFjaChlbnRyeS5yZXN1bHRz
LCBmdW5jdGlvbiAodGVzdCwgcmVzdWx0KSB7CiAgICAgICAgaWYgKHRlc3RzLmluZGV4T2YodGVz
dCkgPCAwKQogICAgICAgICAgICB0ZXN0cy5wdXNoKHRlc3QpOwogICAgICAgIGlmICghdGVzdFJl
c3VsdHNbdGVzdF0pIHsKICAgICAgICAgICAgdGVzdFJlc3VsdHNbdGVzdF0gPSBbXTsKICAgICAg
ICAgICAgdGVzdFJlc3VsdHNNaW5bdGVzdF0gPSBbXTsKICAgICAgICAgICAgdGVzdFJlc3VsdHNN
YXhbdGVzdF0gPSBbXTsKICAgICAgICAgICAgdGVzdFJlc3VsdHNTdGRldkxvd1t0ZXN0XSA9IFtd
OwogICAgICAgICAgICB0ZXN0UmVzdWx0c1N0ZGV2SGlnaFt0ZXN0XSA9IFtdOwogICAgICAgIH0K
ICAgICAgICBpZiAodHlwZW9mIHJlc3VsdCA9PSAnbnVtYmVyJykKICAgICAgICAgICAgdGVzdFJl
c3VsdHNbdGVzdF0ucHVzaChbaW5kZXgsIHJlc3VsdF0pOwogICAgICAgIGVsc2UgewogICAgICAg
ICAgICB0ZXN0UmVzdWx0c1t0ZXN0XS5wdXNoKFtpbmRleCwgcmVzdWx0WydhdmcnXV0pOwogICAg
ICAgICAgICBpZiAoJ21pbicgaW4gcmVzdWx0KQogICAgICAgICAgICAgICAgdGVzdFJlc3VsdHNN
aW5bdGVzdF0ucHVzaChbaW5kZXgsIHJlc3VsdFsnbWluJ11dKTsKICAgICAgICAgICAgaWYgKCdt
YXgnIGluIHJlc3VsdCkKICAgICAgICAgICAgICAgIHRlc3RSZXN1bHRzTWF4W3Rlc3RdLnB1c2go
W2luZGV4LCByZXN1bHRbJ21heCddXSk7CiAgICAgICAgICAgIGlmICgnc3RkZXYnIGluIHJlc3Vs
dCkgewogICAgICAgICAgICAgICAgdGVzdFJlc3VsdHNTdGRldkxvd1t0ZXN0XS5wdXNoKFtpbmRl
eCwgcmVzdWx0WydhdmcnXSAtIHJlc3VsdFsnc3RkZXYnXV0pOwogICAgICAgICAgICAgICAgdGVz
dFJlc3VsdHNTdGRldkhpZ2hbdGVzdF0ucHVzaChbaW5kZXgsIHJlc3VsdFsnYXZnJ10gKyByZXN1
bHRbJ3N0ZGV2J11dKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBtYXhMZW5ndGgg
PSBNYXRoLm1heChtYXhMZW5ndGgsIHRlc3RSZXN1bHRzW3Rlc3RdLmxlbmd0aCk7CiAgICAgICAg
dGVzdFVuaXRzW3Rlc3RdID0gcmVzdWx0LnVuaXQ7CiAgICB9KTsKfSk7CiQuZWFjaCh0ZXN0cy5z
b3J0KCksIGZ1bmN0aW9uIChpbmRleCwgdGVzdCkgeyBjcmVhdGVQbG90KHRlc3QpOyB9KTsKCjwv
c2NyaXB0Pgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>