<?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>150450</bug_id>
          
          <creation_ts>2015-10-22 10:44:23 -0700</creation_ts>
          <short_desc>Add graphics benchmark to performance bot</short_desc>
          <delta_ts>2015-11-03 17:59:32 -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>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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1135726</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-22 10:44:23 -0700</bug_when>
    <thetext>Need to automate running and reporting the results of the graphics benchmark.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135731</commentid>
    <comment_count>1</comment_count>
      <attachid>263835</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-22 10:49:41 -0700</bug_when>
    <thetext>Created attachment 263835
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135750</commentid>
    <comment_count>2</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-22 11:28:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/22882966&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135757</commentid>
    <comment_count>3</comment_count>
      <attachid>263835</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2015-10-22 11:37:57 -0700</bug_when>
    <thetext>Comment on attachment 263835
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=263835&amp;action=review

&gt; Tools/Scripts/webkitpy/benchmark_runner/data/plans/animometer.plan:2
&gt; +    &quot;timeout&quot;: 30000,

I would like to choose shorter timeout for this test. 500min seems too long for a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135818</commentid>
    <comment_count>4</comment_count>
      <attachid>263855</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-22 13:55:04 -0700</bug_when>
    <thetext>Created attachment 263855
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135822</commentid>
    <comment_count>5</comment_count>
      <attachid>263835</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-22 13:57:47 -0700</bug_when>
    <thetext>Comment on attachment 263835
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=263835&amp;action=review

&gt;&gt; Tools/Scripts/webkitpy/benchmark_runner/data/plans/animometer.plan:2
&gt;&gt; +    &quot;timeout&quot;: 30000,
&gt; 
&gt; I would like to choose shorter timeout for this test. 500min seems too long for a test.

Yes you are right. I changed the timeout to be 1200s. Currently the benchmark takes exactly 1080s. But soon I am going to lower this number even to be less than 500s.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1136730</commentid>
    <comment_count>6</comment_count>
      <attachid>264110</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-26 17:49:25 -0700</bug_when>
    <thetext>Created attachment 264110
Output file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1136731</commentid>
    <comment_count>7</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-26 17:50:01 -0700</bug_when>
    <thetext>Here is the output of running the benchmark after applying the attached patch using the command:

python Tools/Scripts/run-benchmark --plan animometer --platform osx --browser safari --output-file animometer --count 1

Animometer:Score:Geometric: 584.4pt stdev=0.9%
          Basic canvas path suite:Score:Geometric: 1.3377Kpt stdev=0.0%
                                 Canvas arc segments:Score: 855.4pt stdev=0.8%
                                 Canvas arc segments, fill:Score: 1.510Kpt stdev=0.2%
                                 Canvas arcTo segments:Score: 948pt stdev=4.5%
                                 Canvas arcTo segments, fill:Score: 1.454Kpt stdev=0.5%
                                 Canvas bezier path:Score: 435.2pt stdev=0.1%
                                 Canvas bezier path, fill:Score: 1.0943Kpt stdev=0.1%
                                 Canvas bezier segments:Score: 854pt stdev=3.0%
                                 Canvas line path with dash pattern:Score: 1.096Kpt stdev=0.3%
                                 Canvas line path, bevel join:Score: 865pt stdev=4.9%
                                 Canvas line path, fill:Score: 1.871Kpt stdev=1.0%
                                 Canvas line path, miter join:Score: 855pt stdev=3.7%
                                 Canvas line path, round join:Score: 852pt stdev=2.6%
                                 Canvas line segments, butt caps:Score: 4.158Kpt stdev=0.3%
                                 Canvas line segments, round caps:Score: 4.14Kpt stdev=1.5%
                                 Canvas line segments, square caps:Score: 4.18Kpt stdev=1.2%
                                 Canvas quadratic path:Score: 566pt stdev=1.5%
                                 Canvas quadratic path, fill:Score: 1.30Kpt stdev=1.5%
                                 Canvas quadratic segments:Score: 1.1998Kpt stdev=0.1%
                                 Canvas rects:Score: 1.76Kpt stdev=1.9%
                                 Canvas rects, fill:Score: 3.217Kpt stdev=0.6%
          Canvas suite:Score:Geometric: 545.5pt stdev=0.5%
                      canvas bouncing PNG images:Score: 2.82Kpt stdev=1.2%
                      canvas bouncing SVG images:Score: 59.08pt stdev=0.1%
                      canvas bouncing circles:Score: 2.03Kpt stdev=3.3%
                      canvas bouncing clipped rects:Score: 453pt stdev=1.4%
                      canvas bouncing gradient circles:Score: 315.9pt stdev=0.6%
          HTML suite:Score:Geometric: 281pt stdev=1.5%
                    CSS bouncing PNG images:Score: 839pt stdev=2.2%
                    CSS bouncing SVG images:Score: 41.0pt stdev=2.4%
                    CSS bouncing circles:Score: 778.2pt stdev=0.6%
                    CSS bouncing clipped rects:Score: 279pt stdev=4.7%
                    CSS bouncing gradient circles:Score: 162pt stdev=1.6%
                    CSS layering text:Score: 411pt stdev=1.8%
          SVG suite:Score:Geometric: 568pt stdev=2.6%
                   SVG bouncing PNG images:Score: 2.70Kpt stdev=8.2%
                   SVG bouncing SVG images:Score: 46.9pt stdev=2.7%
                   SVG bouncing circles:Score: 4.81Kpt stdev=2.0%
                   SVG bouncing clipped rects:Score: 364pt stdev=2.0%
                   SVG bouncing gradient circles:Score: 268pt stdev=2.0%

Also the output file is attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1136733</commentid>
    <comment_count>8</comment_count>
      <attachid>264112</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-10-26 17:53:56 -0700</bug_when>
    <thetext>Created attachment 264112
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1136740</commentid>
    <comment_count>9</comment_count>
      <attachid>264112</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2015-10-26 18:01:27 -0700</bug_when>
    <thetext>Comment on attachment 264112
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=264112&amp;action=review

&gt; Tools/Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch:95
&gt; ++});

I do not have review privilege. I&apos;ve invited Ryosuke to take a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139071</commentid>
    <comment_count>10</comment_count>
      <attachid>264112</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2015-11-03 14:12:07 -0800</bug_when>
    <thetext>Comment on attachment 264112
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=264112&amp;action=review

&gt;&gt; Tools/Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch:95
&gt;&gt; ++});
&gt; 
&gt; I do not have review privilege. I&apos;ve invited Ryosuke to take a look.

The format is verified by submitting to my locally instance.

&gt; Tools/Scripts/webkitpy/benchmark_runner/data/plans/animometer.plan:2
&gt; +    &quot;timeout&quot;: 1200,

I run the test locally. It takes almost 19mins. I will suggest 1.5x / 2x the time the test usually takes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139074</commentid>
    <comment_count>11</comment_count>
      <attachid>264112</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-11-03 14:15:23 -0800</bug_when>
    <thetext>Comment on attachment 264112
Patch

rs=me based on Dewei&apos;s informal review. Please address his minor comment before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139194</commentid>
    <comment_count>12</comment_count>
      <attachid>264757</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-11-03 17:00:03 -0800</bug_when>
    <thetext>Created attachment 264757
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139199</commentid>
    <comment_count>13</comment_count>
      <attachid>264112</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-11-03 17:01:36 -0800</bug_when>
    <thetext>Comment on attachment 264112
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=264112&amp;action=review

&gt;&gt; Tools/Scripts/webkitpy/benchmark_runner/data/plans/animometer.plan:2
&gt;&gt; +    &quot;timeout&quot;: 1200,
&gt; 
&gt; I run the test locally. It takes almost 19mins. I will suggest 1.5x / 2x the time the test usually takes.

I increased the timeout to be 1800 seconds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139214</commentid>
    <comment_count>14</comment_count>
      <attachid>264757</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-11-03 17:59:28 -0800</bug_when>
    <thetext>Comment on attachment 264757
Patch

Clearing flags on attachment: 264757

Committed r192006: &lt;http://trac.webkit.org/changeset/192006&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139215</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-11-03 17:59:32 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>263835</attachid>
            <date>2015-10-22 10:49:41 -0700</date>
            <delta_ts>2015-10-22 13:55:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150450-20151022104857.patch</filename>
            <type>text/plain</type>
            <size>4462</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE5MTQ1NikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE1IEBACisyMDE1LTEwLTIyICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIGdyYXBoaWNzIGJlbmNobWFyayB0byBwZXJmb3JtYW5j
ZSBib3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
MDQ1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVy
LnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5u
ZXIvZGF0YS9wbGFucy9hbmltb21ldGVyLnBsYW46IEFkZGVkLgorICAgICAgICBBZGQgYSBwYXRj
aCBhbmQgYSBwbGFuIHRvIHNldCB0aGUgZGVmYXVsdHMgb2YgdGhlIGJlbmNobWFyaywgcnVuIGl0
LAorICAgICAgICBjb2xsZWN0IHRoZSByZXN1bHQgYW5kIHJlcG9ydCBpdCB0byB0aGUgYmVuY2ht
YXJrIHJ1bm5lci4KKwogMjAxNS0xMC0yMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTgxOTcyKTogU2Nyb2xsIHBvc2l0aW9uIGNoYW5n
ZXMgdG8gdG9wIG9mIHlvdXR1YmUgcGFnZSB3aGVuIHN3aXRjaGluZyB0YWJzCkluZGV4OiBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvZGF0YS9wYXRjaGVzL0FuaW1vbWV0
ZXIucGF0Y2gKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtf
cnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVyLnBhdGNoCShyZXZpc2lvbiAwKQorKysgVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21l
dGVyLnBhdGNoCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjggQEAKK2RpZmYgLS1naXQgYS9y
dW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0ZXIuanMgYi9ydW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0
ZXIuanMKK2luZGV4IGQ4YjM4MjUuLmE1MWYxNjYgMTAwNjQ0CistLS0gYS9ydW5uZXIvcmVzb3Vy
Y2VzL2FuaW1vbWV0ZXIuanMKKysrKyBiL3J1bm5lci9yZXNvdXJjZXMvYW5pbW9tZXRlci5qcwor
QEAgLTM1LDEwICszNSw0NyBAQCB3aW5kb3cuYmVuY2htYXJrUnVubmVyQ2xpZW50ID0geworICAg
ICAgICAgdGhpcy5faXRlcmF0aW9uc1NhbXBsZXJzLnB1c2goc3VpdGVzU2FtcGxlcnMpOworICAg
ICB9LAorICAgICAKKysgICAgY29tcHV0ZVJlZmluZWRSZXN1bHRzOiBmdW5jdGlvbigpCisrICAg
IHsKKysgICAgICAgIHZhciBzdWl0ZXNSZXN1bHRzID0ge307CisrICAgICAgICB2YXIgc3VpdGVz
U2FtcGxlcnMgPSB0aGlzLl9pdGVyYXRpb25zU2FtcGxlcnNbMF07CisrCisrICAgICAgICBmb3Ig
KHZhciBzdWl0ZU5hbWUgaW4gc3VpdGVzU2FtcGxlcnMpIHsKKysgICAgICAgICAgICB2YXIgc3Vp
dGUgPSBzdWl0ZUZyb21OYW1lKHN1aXRlTmFtZSk7CisrICAgICAgICAgICAgdmFyIHN1aXRlU2Ft
cGxlcnMgPSBzdWl0ZXNTYW1wbGVyc1tzdWl0ZU5hbWVdOworKyAgICAgICAgCisrICAgICAgICAg
ICAgdmFyIHRlc3RzUmVzdWx0cyA9IHt9OworKyAgICAgICAgICAgIGZvciAodmFyIHRlc3ROYW1l
IGluIHN1aXRlU2FtcGxlcnMpIHsKKysgICAgICAgICAgICAgICAgdmFyIHNhbXBsZXIgPSBzdWl0
ZVNhbXBsZXJzW3Rlc3ROYW1lXTsgCisrICAgICAgICAgICAgICAgIHZhciBleHBlcmltZW50ID0g
c2FtcGxlci5leHBlcmltZW50c1swXTsKKysgICAgICAgICAgICAgICAgdGVzdHNSZXN1bHRzW3Rl
c3ROYW1lXSA9IHsgIm1ldHJpY3MiIDogeyAiU2NvcmUiIDogeyAiY3VycmVudCIgOiBbIGV4cGVy
aW1lbnQubWVhbigpLCBleHBlcmltZW50Lm1lYW4oKSBdIH0gfSB9OworKyAgICAgICAgICAgIH0K
KysgICAgICAgICAgICAKKysgICAgICAgICAgICBzdWl0ZXNSZXN1bHRzW3N1aXRlTmFtZV0gPSB7
ICJtZXRyaWNzIiA6IHsiU2NvcmUiIDogWyJHZW9tZXRyaWMiXX0sICJ0ZXN0cyIgOiB0ZXN0c1Jl
c3VsdHMgfTsKKysgICAgICAgIH0KKysKKysgICAgICAgIHJldHVybiB7IkFuaW1vbWV0ZXIiOiB7
Im1ldHJpY3MiIDogeyJTY29yZSIgOiBbIkdlb21ldHJpYyJdfSwgInRlc3RzIiA6IHN1aXRlc1Jl
c3VsdHMgfSB9OworKyAgICB9LAorKyAgICAKKyAgICAgZGlkRmluaXNoTGFzdEl0ZXJhdGlvbjog
ZnVuY3Rpb24gKCkKKyAgICAgeworLSAgICAgICAgdGhpcy5zY29yZSA9IHRoaXMuX3Jlc3VsdHNU
YWJsZS5zaG93SXRlcmF0aW9ucyh0aGlzLl9pdGVyYXRpb25zU2FtcGxlcnMsICIiKTsKKy0gICAg
ICAgIHNob3dSZXN1bHRzKCk7CisrICAgICAgICAvLyBzdWJtaXQgcmVzdWx0IHRvIHNlcnZlcgor
KyAgICAgICAgcmVzdWx0cyA9IEpTT04uc3RyaW5naWZ5KHRoaXMuY29tcHV0ZVJlZmluZWRSZXN1
bHRzKCkpOworKyAgICAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworKyAgICAg
ICAgeGhyLm9wZW4oIlBPU1QiLCAiL3JlcG9ydCIpOworKyAgICAgICAgCisrICAgICAgICB4aHIu
c2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC10eXBlIiwgImFwcGxpY2F0aW9uL2pzb24iKTsKKysg
ICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LWxlbmd0aCIsIHJlc3VsdHMubGVu
Z3RoKTsKKysgICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCJDb25uZWN0aW9uIiwgImNsb3Nl
Iik7CisrCisrICAgICAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7Cisr
ICAgICAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09IFhNTEh0dHBSZXF1ZXN0LkRPTkUgJiYg
eGhyLnN0YXR1cyA9PSAyMDApIHsKKysgICAgICAgICAgICAgICAgY2xvc2VSZXF1ZXN0ID0gbmV3
IFhNTEh0dHBSZXF1ZXN0KCk7CisrICAgICAgICAgICAgICAgIGNsb3NlUmVxdWVzdC5vcGVuKCJH
RVQiLCAiL3NodXRkb3duIik7CisrICAgICAgICAgICAgICAgIGNsb3NlUmVxdWVzdC5zZW5kKCkK
KysgICAgICAgICAgICB9CisrICAgICAgICB9CisrICAgICAgICB4aHIuc2VuZChyZXN1bHRzKTsK
KyAgICAgfQorIH0KKyAKK0BAIC0xNDAsNCArMTc3LDExIEBAIGZ1bmN0aW9uIHBvcHVsYXRlU2V0
dGluZ3MoKSB7CisgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdC1pbnRlcnZh
bCIpLnZhbHVlID0gaW50ZXJ2YWw7CisgICAgIH0KKyB9CistZG9jdW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIHBvcHVsYXRlU2V0dGluZ3MpOworXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCisrCisrZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVu
dExvYWRlZCIsIGZ1bmN0aW9uKCkgeworKyAgICBwb3B1bGF0ZVNldHRpbmdzKCk7CisrICAgIHZh
ciBjaGVja2JveGVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiI3N1aXRlcyBpbnB1dCIp
OworKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoZWNrYm94ZXMubGVuZ3RoOyArK2kpCisrICAg
ICAgICBjaGVja2JveGVzW2ldLmNoZWNrZWQgPSBpIDwgNDsKKysgICAgc2V0VGltZW91dChzdGFy
dFRlc3QsIDMwMDApOworK30pOwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1h
cmtfcnVubmVyL2RhdGEvcGxhbnMvYW5pbW9tZXRlci5wbGFuCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9kYXRhL3BsYW5zL2FuaW1vbWV0ZXIu
cGxhbgkocmV2aXNpb24gMCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1
bm5lci9kYXRhL3BsYW5zL2FuaW1vbWV0ZXIucGxhbgkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDggQEAKK3sKKyAgICAidGltZW91dCI6IDMwMDAwLAorICAgICJjb3VudCI6IDEsCisgICAgInN2
bl9zb3VyY2UiOiAiaHR0cHM6Ly9zdm4ud2Via2l0Lm9yZy9yZXBvc2l0b3J5L3dlYmtpdC90cnVu
ay9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvQHIxOTEzNjUiLAorICAgICJiZW5jaG1hcmtf
cGF0Y2giOiAiZGF0YS9wYXRjaGVzL0FuaW1vbWV0ZXIucGF0Y2giLAorICAgICJlbnRyeV9wb2lu
dCI6ICJydW5uZXIvYW5pbW9tZXRlci5odG1sIiwKKyAgICAib3V0cHV0X2ZpbGUiOiAiYW5pbW9t
ZXRlci5yZXN1bHQiCit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>263855</attachid>
            <date>2015-10-22 13:55:04 -0700</date>
            <delta_ts>2015-10-26 17:53:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150450-20151022135420.patch</filename>
            <type>text/plain</type>
            <size>4461</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE5MTQ1NikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE1IEBACisyMDE1LTEwLTIyICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIGdyYXBoaWNzIGJlbmNobWFyayB0byBwZXJmb3JtYW5j
ZSBib3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
MDQ1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVy
LnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5u
ZXIvZGF0YS9wbGFucy9hbmltb21ldGVyLnBsYW46IEFkZGVkLgorICAgICAgICBBZGQgYSBwYXRj
aCBhbmQgYSBwbGFuIHRvIHNldCB0aGUgZGVmYXVsdHMgb2YgdGhlIGJlbmNobWFyaywgcnVuIGl0
LAorICAgICAgICBjb2xsZWN0IHRoZSByZXN1bHQgYW5kIHJlcG9ydCBpdCB0byB0aGUgYmVuY2ht
YXJrIHJ1bm5lci4KKwogMjAxNS0xMC0yMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMTgxOTcyKTogU2Nyb2xsIHBvc2l0aW9uIGNoYW5n
ZXMgdG8gdG9wIG9mIHlvdXR1YmUgcGFnZSB3aGVuIHN3aXRjaGluZyB0YWJzCkluZGV4OiBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvZGF0YS9wYXRjaGVzL0FuaW1vbWV0
ZXIucGF0Y2gKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtf
cnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVyLnBhdGNoCShyZXZpc2lvbiAwKQorKysgVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21l
dGVyLnBhdGNoCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjggQEAKK2RpZmYgLS1naXQgYS9y
dW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0ZXIuanMgYi9ydW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0
ZXIuanMKK2luZGV4IGQ4YjM4MjUuLmE1MWYxNjYgMTAwNjQ0CistLS0gYS9ydW5uZXIvcmVzb3Vy
Y2VzL2FuaW1vbWV0ZXIuanMKKysrKyBiL3J1bm5lci9yZXNvdXJjZXMvYW5pbW9tZXRlci5qcwor
QEAgLTM1LDEwICszNSw0NyBAQCB3aW5kb3cuYmVuY2htYXJrUnVubmVyQ2xpZW50ID0geworICAg
ICAgICAgdGhpcy5faXRlcmF0aW9uc1NhbXBsZXJzLnB1c2goc3VpdGVzU2FtcGxlcnMpOworICAg
ICB9LAorICAgICAKKysgICAgY29tcHV0ZVJlZmluZWRSZXN1bHRzOiBmdW5jdGlvbigpCisrICAg
IHsKKysgICAgICAgIHZhciBzdWl0ZXNSZXN1bHRzID0ge307CisrICAgICAgICB2YXIgc3VpdGVz
U2FtcGxlcnMgPSB0aGlzLl9pdGVyYXRpb25zU2FtcGxlcnNbMF07CisrCisrICAgICAgICBmb3Ig
KHZhciBzdWl0ZU5hbWUgaW4gc3VpdGVzU2FtcGxlcnMpIHsKKysgICAgICAgICAgICB2YXIgc3Vp
dGUgPSBzdWl0ZUZyb21OYW1lKHN1aXRlTmFtZSk7CisrICAgICAgICAgICAgdmFyIHN1aXRlU2Ft
cGxlcnMgPSBzdWl0ZXNTYW1wbGVyc1tzdWl0ZU5hbWVdOworKyAgICAgICAgCisrICAgICAgICAg
ICAgdmFyIHRlc3RzUmVzdWx0cyA9IHt9OworKyAgICAgICAgICAgIGZvciAodmFyIHRlc3ROYW1l
IGluIHN1aXRlU2FtcGxlcnMpIHsKKysgICAgICAgICAgICAgICAgdmFyIHNhbXBsZXIgPSBzdWl0
ZVNhbXBsZXJzW3Rlc3ROYW1lXTsgCisrICAgICAgICAgICAgICAgIHZhciBleHBlcmltZW50ID0g
c2FtcGxlci5leHBlcmltZW50c1swXTsKKysgICAgICAgICAgICAgICAgdGVzdHNSZXN1bHRzW3Rl
c3ROYW1lXSA9IHsgIm1ldHJpY3MiIDogeyAiU2NvcmUiIDogeyAiY3VycmVudCIgOiBbIGV4cGVy
aW1lbnQubWVhbigpLCBleHBlcmltZW50Lm1lYW4oKSBdIH0gfSB9OworKyAgICAgICAgICAgIH0K
KysgICAgICAgICAgICAKKysgICAgICAgICAgICBzdWl0ZXNSZXN1bHRzW3N1aXRlTmFtZV0gPSB7
ICJtZXRyaWNzIiA6IHsiU2NvcmUiIDogWyJHZW9tZXRyaWMiXX0sICJ0ZXN0cyIgOiB0ZXN0c1Jl
c3VsdHMgfTsKKysgICAgICAgIH0KKysKKysgICAgICAgIHJldHVybiB7IkFuaW1vbWV0ZXIiOiB7
Im1ldHJpY3MiIDogeyJTY29yZSIgOiBbIkdlb21ldHJpYyJdfSwgInRlc3RzIiA6IHN1aXRlc1Jl
c3VsdHMgfSB9OworKyAgICB9LAorKyAgICAKKyAgICAgZGlkRmluaXNoTGFzdEl0ZXJhdGlvbjog
ZnVuY3Rpb24gKCkKKyAgICAgeworLSAgICAgICAgdGhpcy5zY29yZSA9IHRoaXMuX3Jlc3VsdHNU
YWJsZS5zaG93SXRlcmF0aW9ucyh0aGlzLl9pdGVyYXRpb25zU2FtcGxlcnMsICIiKTsKKy0gICAg
ICAgIHNob3dSZXN1bHRzKCk7CisrICAgICAgICAvLyBzdWJtaXQgcmVzdWx0IHRvIHNlcnZlcgor
KyAgICAgICAgcmVzdWx0cyA9IEpTT04uc3RyaW5naWZ5KHRoaXMuY29tcHV0ZVJlZmluZWRSZXN1
bHRzKCkpOworKyAgICAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworKyAgICAg
ICAgeGhyLm9wZW4oIlBPU1QiLCAiL3JlcG9ydCIpOworKyAgICAgICAgCisrICAgICAgICB4aHIu
c2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC10eXBlIiwgImFwcGxpY2F0aW9uL2pzb24iKTsKKysg
ICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LWxlbmd0aCIsIHJlc3VsdHMubGVu
Z3RoKTsKKysgICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCJDb25uZWN0aW9uIiwgImNsb3Nl
Iik7CisrCisrICAgICAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7Cisr
ICAgICAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09IFhNTEh0dHBSZXF1ZXN0LkRPTkUgJiYg
eGhyLnN0YXR1cyA9PSAyMDApIHsKKysgICAgICAgICAgICAgICAgY2xvc2VSZXF1ZXN0ID0gbmV3
IFhNTEh0dHBSZXF1ZXN0KCk7CisrICAgICAgICAgICAgICAgIGNsb3NlUmVxdWVzdC5vcGVuKCJH
RVQiLCAiL3NodXRkb3duIik7CisrICAgICAgICAgICAgICAgIGNsb3NlUmVxdWVzdC5zZW5kKCkK
KysgICAgICAgICAgICB9CisrICAgICAgICB9CisrICAgICAgICB4aHIuc2VuZChyZXN1bHRzKTsK
KyAgICAgfQorIH0KKyAKK0BAIC0xNDAsNCArMTc3LDExIEBAIGZ1bmN0aW9uIHBvcHVsYXRlU2V0
dGluZ3MoKSB7CisgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdC1pbnRlcnZh
bCIpLnZhbHVlID0gaW50ZXJ2YWw7CisgICAgIH0KKyB9CistZG9jdW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIHBvcHVsYXRlU2V0dGluZ3MpOworXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCisrCisrZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVu
dExvYWRlZCIsIGZ1bmN0aW9uKCkgeworKyAgICBwb3B1bGF0ZVNldHRpbmdzKCk7CisrICAgIHZh
ciBjaGVja2JveGVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiI3N1aXRlcyBpbnB1dCIp
OworKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoZWNrYm94ZXMubGVuZ3RoOyArK2kpCisrICAg
ICAgICBjaGVja2JveGVzW2ldLmNoZWNrZWQgPSBpIDwgNDsKKysgICAgc2V0VGltZW91dChzdGFy
dFRlc3QsIDMwMDApOworK30pOwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1h
cmtfcnVubmVyL2RhdGEvcGxhbnMvYW5pbW9tZXRlci5wbGFuCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9kYXRhL3BsYW5zL2FuaW1vbWV0ZXIu
cGxhbgkocmV2aXNpb24gMCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1
bm5lci9kYXRhL3BsYW5zL2FuaW1vbWV0ZXIucGxhbgkod29ya2luZyBjb3B5KQpAQCAtMCwwICsx
LDggQEAKK3sKKyAgICAidGltZW91dCI6IDEyMDAsCisgICAgImNvdW50IjogMSwKKyAgICAic3Zu
X3NvdXJjZSI6ICJodHRwczovL3N2bi53ZWJraXQub3JnL3JlcG9zaXRvcnkvd2Via2l0L3RydW5r
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9AcjE5MTM2NSIsCisgICAgImJlbmNobWFya19w
YXRjaCI6ICJkYXRhL3BhdGNoZXMvQW5pbW9tZXRlci5wYXRjaCIsCisgICAgImVudHJ5X3BvaW50
IjogInJ1bm5lci9hbmltb21ldGVyLmh0bWwiLAorICAgICJvdXRwdXRfZmlsZSI6ICJhbmltb21l
dGVyLnJlc3VsdCIKK30K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>264110</attachid>
            <date>2015-10-26 17:49:25 -0700</date>
            <delta_ts>2015-10-26 17:49:25 -0700</delta_ts>
            <desc>Output file</desc>
            <filename>animometer</filename>
            <type>application/octet-stream</type>
            <size>4165</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">eyJBbmltb21ldGVyIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IFsiR2VvbWV0cmljIl19LCAidGVz
dHMiOiB7IkJhc2ljIGNhbnZhcyBwYXRoIHN1aXRlIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IFsi
R2VvbWV0cmljIl19LCAidGVzdHMiOiB7IkNhbnZhcyBhcmMgc2VnbWVudHMsIGZpbGwiOiB7Im1l
dHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzE1MDcuNzA4MDQ5MjQwMjk2OCwgMTUxMS45
ODM2ODg5MDg4MzEzXX19fSwgIkNhbnZhcyBiZXppZXIgcGF0aCwgZmlsbCI6IHsibWV0cmljcyI6
IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbMTA5My44MDQzMTkzMjUzMjUyLCAxMDk0Ljg3NDg0MzY1
ODY0MzJdfX19LCAiQ2FudmFzIGxpbmUgcGF0aCwgcm91bmQgam9pbiI6IHsibWV0cmljcyI6IHsi
U2NvcmUiOiB7ImN1cnJlbnQiOiBbODY3LjIwMDg0NDQ5MTk0MjgsIDgzNi40MjMyODc1MjI1MzU5
XX19fSwgIkNhbnZhcyBsaW5lIHBhdGgsIG1pdGVyIGpvaW4iOiB7Im1ldHJpY3MiOiB7IlNjb3Jl
IjogeyJjdXJyZW50IjogWzg3Ny4yNDE1MjE3MjAxNDEzLCA4MzIuNzk2OTkyNjMxMTExNF19fX0s
ICJDYW52YXMgbGluZSBwYXRoLCBiZXZlbCBqb2luIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IHsi
Y3VycmVudCI6IFs4OTUuNjI2NzM4NTkzNjg2NSwgODM1LjI5NjAxNTM3NDgyMzZdfX19LCAiQ2Fu
dmFzIGxpbmUgc2VnbWVudHMsIHNxdWFyZSBjYXBzIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IHsi
Y3VycmVudCI6IFs0MTQwLjAzODcxNDc3MDEyOCwgNDIxMS4zMTE3NTc0ODkwMzZdfX19LCAiQ2Fu
dmFzIGFyYyBzZWdtZW50cyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbODYw
LjMwOTA3NjEyMDQ0NDgsIDg1MC41NTU5MjI5MDYxOTIyXX19fSwgIkNhbnZhcyBsaW5lIHBhdGgg
d2l0aCBkYXNoIHBhdHRlcm4iOiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzEw
OTguODc0ODQyNDIxMzU3LCAxMDkzLjkwNjYwNTE5NzgwMV19fX0sICJDYW52YXMgYXJjVG8gc2Vn
bWVudHMsIGZpbGwiOiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzE0NDguMjI2
NTkwMzMxNDU4NywgMTQ1OS4wMDMwMjk1OTE0ODldfX19LCAiQ2FudmFzIHF1YWRyYXRpYyBzZWdt
ZW50cyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbMTE5OC45MjgzNTI5Njc3
OTU3LCAxMjAwLjU5MTc3MjAzNzg3NjhdfX19LCAiQ2FudmFzIGFyY1RvIHNlZ21lbnRzIjogeyJt
ZXRyaWNzIjogeyJTY29yZSI6IHsiY3VycmVudCI6IFs5MTcuOTczODQ4ODM2MjE2NywgOTc3Ljk5
MjI4NDYwOTUwMzldfX19LCAiQ2FudmFzIHF1YWRyYXRpYyBwYXRoLCBmaWxsIjogeyJtZXRyaWNz
IjogeyJTY29yZSI6IHsiY3VycmVudCI6IFsxMjg3Ljk3MTkxMzkxNDAyMjUsIDEzMTYuMjc1ODY0
ODU4MzMxM119fX0sICJDYW52YXMgcmVjdHMsIGZpbGwiOiB7Im1ldHJpY3MiOiB7IlNjb3JlIjog
eyJjdXJyZW50IjogWzMyMzAuMjE2MjIyNjAwNjE1MywgMzIwNC42ODgzNzI1MjA1MTVdfX19LCAi
Q2FudmFzIGxpbmUgc2VnbWVudHMsIGJ1dHQgY2FwcyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7
ImN1cnJlbnQiOiBbNDE2Ny40NzIyMTkxNDcwOTYsIDQxNDcuODI4MzM5Nzg5MTU1NV19fX0sICJD
YW52YXMgcXVhZHJhdGljIHBhdGgiOiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50Ijog
WzU1OS42MTc0MDgxNTU4MDgzLCA1NzEuNzY4NjkxODg4ODU5NF19fX0sICJDYW52YXMgYmV6aWVy
IHNlZ21lbnRzIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IHsiY3VycmVudCI6IFs4MzUuODMzMTE5
MTIzNzg0LCA4NzEuNzEzMDQzNDc1NjIyM119fX0sICJDYW52YXMgYmV6aWVyIHBhdGgiOiB7Im1l
dHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzQzNS41NDcxNTk3NjExMDAwMywgNDM0Ljg5
NzEwMzExMDIzOTY0XX19fSwgIkNhbnZhcyByZWN0cyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7
ImN1cnJlbnQiOiBbMTc0MC44MTU3MjEyMTkzODYyLCAxNzg3LjEzODc2OTk4MzMwMTVdfX19LCAi
Q2FudmFzIGxpbmUgcGF0aCwgZmlsbCI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQi
OiBbMTg1OC43MDQzODgwNzkwMjY2LCAxODg0LjAzMzQ1ODE3MzIwNF19fX0sICJDYW52YXMgbGlu
ZSBzZWdtZW50cywgcm91bmQgY2FwcyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQi
OiBbNDE4My4xNjAwMDU5NTc2NzMsIDQwOTYuMzk3MjUzNDg4OTddfX19fX0sICJIVE1MIHN1aXRl
IjogeyJtZXRyaWNzIjogeyJTY29yZSI6IFsiR2VvbWV0cmljIl19LCAidGVzdHMiOiB7IkNTUyBi
b3VuY2luZyBncmFkaWVudCBjaXJjbGVzIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IHsiY3VycmVu
dCI6IFsxNTkuNzU3MzI1NjMzNjIyNTQsIDE2My4zMDQ3MDU4MTg4MDg0Nl19fX0sICJDU1MgYm91
bmNpbmcgUE5HIGltYWdlcyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbODUy
LjQ0OTAzMTE0MDMwMjcsIDgyNS44NDg1NDk0ODE3MzRdfX19LCAiQ1NTIGxheWVyaW5nIHRleHQi
OiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzQwNi4xMzMzMTM3NzA1NzUzLCA0
MTYuNTkwNjI4NzcxNTQ4N119fX0sICJDU1MgYm91bmNpbmcgY2xpcHBlZCByZWN0cyI6IHsibWV0
cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbMjY5LjMzNDA5MjAzNjc2MjQsIDI4Ny44NTc0
MzM0NjMxNjQxN119fX0sICJDU1MgYm91bmNpbmcgU1ZHIGltYWdlcyI6IHsibWV0cmljcyI6IHsi
U2NvcmUiOiB7ImN1cnJlbnQiOiBbNDAuMjk0MTE0MzM3MzQ4NzUsIDQxLjY4MTc1NDI2MTgzNzcy
XX19fSwgIkNTUyBib3VuY2luZyBjaXJjbGVzIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IHsiY3Vy
cmVudCI6IFs3NzQuNTk1MzE1MDgwMDY3OCwgNzgxLjczMTM5MzI3ODQyNDldfX19fX0sICJTVkcg
c3VpdGUiOiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogWyJHZW9tZXRyaWMiXX0sICJ0ZXN0cyI6IHsi
U1ZHIGJvdW5jaW5nIGNpcmNsZXMiOiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50Ijog
WzQ3MzcuMDI2OTE5MjAyMzc2LCA0ODczLjc3ODQ5NzYyOTI1Ml19fX0sICJTVkcgYm91bmNpbmcg
U1ZHIGltYWdlcyI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbNDYuMDA3MTQy
MDY4NTg0NTUsIDQ3Ljc3ODI2MDk2ODQzMTQxXX19fSwgIlNWRyBib3VuY2luZyBncmFkaWVudCBj
aXJjbGVzIjogeyJtZXRyaWNzIjogeyJTY29yZSI6IHsiY3VycmVudCI6IFsyNzEuNTQ0Mjc5Mjg2
MzgxOCwgMjYzLjkyMDMyODEwODk1NDNdfX19LCAiU1ZHIGJvdW5jaW5nIGNsaXBwZWQgcmVjdHMi
OiB7Im1ldHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzM1OS40NTkxNzE3MjI3MzI5NSwg
MzY5LjUzNjkxNjUzMjYxNjk0XX19fSwgIlNWRyBib3VuY2luZyBQTkcgaW1hZ2VzIjogeyJtZXRy
aWNzIjogeyJTY29yZSI6IHsiY3VycmVudCI6IFsyNTQxLjM0OTA5ODE4MDQzNTIsIDI4NTQuNDEw
MzI1NTgxMjE1Nl19fX19fSwgIkNhbnZhcyBzdWl0ZSI6IHsibWV0cmljcyI6IHsiU2NvcmUiOiBb
Ikdlb21ldHJpYyJdfSwgInRlc3RzIjogeyJjYW52YXMgYm91bmNpbmcgY2xpcHBlZCByZWN0cyI6
IHsibWV0cmljcyI6IHsiU2NvcmUiOiB7ImN1cnJlbnQiOiBbNDQ4Ljc1MTQ1Mzg1Njc4OTk2LCA0
NTcuNDE4OTM2MzE1ODU4MzNdfX19LCAiY2FudmFzIGJvdW5jaW5nIFNWRyBpbWFnZXMiOiB7Im1l
dHJpY3MiOiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzU5LjEzNjExMjQ3ODgxNTcwNCwgNTkuMDMz
NjU3NDM1ODUxNDNdfX19LCAiY2FudmFzIGJvdW5jaW5nIFBORyBpbWFnZXMiOiB7Im1ldHJpY3Mi
OiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzI4MzkuMDI5NTE5NDgyNjY2NywgMjc5MS45MTY1NjE3
MzQ1NjZdfX19LCAiY2FudmFzIGJvdW5jaW5nIGdyYWRpZW50IGNpcmNsZXMiOiB7Im1ldHJpY3Mi
OiB7IlNjb3JlIjogeyJjdXJyZW50IjogWzMxNC42NTEwNTgwNzA2OTA4LCAzMTcuMTQ5Nzc3MjA0
Nzc2N119fX0sICJjYW52YXMgYm91bmNpbmcgY2lyY2xlcyI6IHsibWV0cmljcyI6IHsiU2NvcmUi
OiB7ImN1cnJlbnQiOiBbMjA3Ni4zMzAwOTY5MDc2NDYsIDE5ODAuNzkxOTAyOTc2NTA2NF19fX19
fX19fQ==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264112</attachid>
            <date>2015-10-26 17:53:56 -0700</date>
            <delta_ts>2015-11-03 17:00:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150450-20151026175308.patch</filename>
            <type>text/plain</type>
            <size>5356</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE5MTYxNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE1IEBACisyMDE1LTEwLTI2ICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIGdyYXBoaWNzIGJlbmNobWFyayB0byBwZXJmb3JtYW5j
ZSBib3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
MDQ1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVy
LnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5u
ZXIvZGF0YS9wbGFucy9hbmltb21ldGVyLnBsYW46IEFkZGVkLgorICAgICAgICBBZGQgYSBwYXRj
aCBhbmQgYSBwbGFuIHRvIHNldCB0aGUgZGVmYXVsdHMgb2YgdGhlIGJlbmNobWFyaywgcnVuIGl0
LAorICAgICAgICBjb2xsZWN0IHRoZSByZXN1bHQgYW5kIHJlcG9ydCBpdCB0byB0aGUgYmVuY2ht
YXJrIHJ1bm5lci4KKyAKIDIwMTUtMTAtMjYgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBs
ZS5jb20+CiAKICAgICAgICAgQWRkaW5nIG15c2VsZiB0byBjb250cmlidXRvcnMuanNvbgpJbmRl
eDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9B
bmltb21ldGVyLnBhdGNoCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVu
Y2htYXJrX3J1bm5lci9kYXRhL3BhdGNoZXMvQW5pbW9tZXRlci5wYXRjaAkocmV2aXNpb24gMCkK
KysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9kYXRhL3BhdGNoZXMv
QW5pbW9tZXRlci5wYXRjaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDk1IEBACitkaWZmIC0t
Z2l0IGEvcnVubmVyL3Jlc291cmNlcy9hbmltb21ldGVyLmpzIGIvcnVubmVyL3Jlc291cmNlcy9h
bmltb21ldGVyLmpzCitpbmRleCBhYWVhNGYxLi5lNGY4Nzc3IDEwMDY0NAorLS0tIGEvcnVubmVy
L3Jlc291cmNlcy9hbmltb21ldGVyLmpzCisrKysgYi9ydW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0
ZXIuanMKK0BAIC0zNCwyMSArMzQsNjMgQEAgd2luZG93LmJlbmNobWFya1J1bm5lckNsaWVudCA9
IHsKKyAgICAgeworICAgICAgICAgdGhpcy5fcmVzdWx0c0Rhc2hib2FyZC5wdXNoKHN1aXRlc1Nh
bXBsZXJzKTsKKyAgICAgfSwKKysKKysgICAgX2NvbXB1dGVUZXN0UmVwb3J0OiBmdW5jdGlvbih0
ZXN0TmFtZSwgdGVzdFJlc3VsdHMpCisrICAgIHsKKysgICAgICAgIHJldHVybiBbdGVzdFJlc3Vs
dHNbU3RyaW5nc1siSlNPTl9TQ09SRSJdWzBdXV07CisrICAgIH0sCisrCisrICAgIF9jb21wdXRl
U3VpdGVSZXBvcnRzOiBmdW5jdGlvbihzdWl0ZU5hbWUsIHN1aXRlUmVzdWx0cykKKysgICAgewor
KyAgICAgICAgdmFyIHRlc3RzUmVwb3J0cyA9IHt9OworKworKyAgICAgICAgZm9yICh2YXIgdGVz
dE5hbWUgaW4gc3VpdGVSZXN1bHRzW1N0cmluZ3NbIkpTT05fUkVTVUxUUyJdWzJdXSkgeworKyAg
ICAgICAgICAgIHZhciB0ZXN0UmVwb3J0cyA9IHRoaXMuX2NvbXB1dGVUZXN0UmVwb3J0KHRlc3RO
YW1lLCBzdWl0ZVJlc3VsdHNbU3RyaW5nc1siSlNPTl9SRVNVTFRTIl1bMl1dW3Rlc3ROYW1lXSk7
CisrICAgICAgICAgICAgdGVzdHNSZXBvcnRzW3Rlc3ROYW1lXSA9IHsgIm1ldHJpY3MiOiB7ICJT
Y29yZSI6IHsgImN1cnJlbnQiOiB0ZXN0UmVwb3J0cyB9IH0gfTsKKysgICAgICAgIH0KKysKKysg
ICAgICAgIHJldHVybiB0ZXN0c1JlcG9ydHM7CisrICAgIH0sCisrICAgIAorKyAgICBfY29tcHV0
ZUl0ZXJhdGlvblJlcG9ydHM6IGZ1bmN0aW9uKGl0ZXJhdGlvblJlc3VsdHMpCisrICAgIHsKKysg
ICAgICAgIHZhciBzdWl0ZXNSZXBvcnRzID0ge307CisrCisrICAgICAgICBmb3IgKHZhciBzdWl0
ZU5hbWUgaW4gaXRlcmF0aW9uUmVzdWx0c1tTdHJpbmdzWyJKU09OX1JFU1VMVFMiXVsxXV0pIHsK
KysgICAgICAgICAgICB2YXIgdGVzdHNSZXBvcnRzID0gdGhpcy5fY29tcHV0ZVN1aXRlUmVwb3J0
cyhzdWl0ZU5hbWUsIGl0ZXJhdGlvblJlc3VsdHNbU3RyaW5nc1siSlNPTl9SRVNVTFRTIl1bMV1d
W3N1aXRlTmFtZV0pOworKyAgICAgICAgICAgIHN1aXRlc1JlcG9ydHNbc3VpdGVOYW1lXSA9IHsg
Im1ldHJpY3MiOiB7ICJTY29yZSI6IFsiR2VvbWV0cmljIl0gfSwgInRlc3RzIjogdGVzdHNSZXBv
cnRzIH07CisrICAgICAgICB9CisrCisrICAgICAgICByZXR1cm4gc3VpdGVzUmVwb3J0czsKKysg
ICAgfSwKKysKKysgICAgY29tcHV0ZVJlc3VsdHNSZXBvcnRzOiBmdW5jdGlvbigpCisrICAgIHsK
KysgICAgICAgIHZhciBqc29uID0gdGhpcy5fcmVzdWx0c0Rhc2hib2FyZC50b0pTT04oZmFsc2Us
IGZhbHNlKTsKKysgICAgICAgIHZhciBpdGVyYXRpb25SZXBvcnRzID0gdGhpcy5fY29tcHV0ZUl0
ZXJhdGlvblJlcG9ydHMoanNvbltTdHJpbmdzWyJKU09OX1JFU1VMVFMiXVswXV1bMF0pCisrICAg
ICAgICByZXR1cm4geyJBbmltb21ldGVyIjogeyJtZXRyaWNzIiA6IHsiU2NvcmUiIDogWyJHZW9t
ZXRyaWMiXX0sICJ0ZXN0cyIgOiBpdGVyYXRpb25SZXBvcnRzIH0gfTsKKysgICAgfSwKKyAgICAg
CisgICAgIGRpZEZpbmlzaExhc3RJdGVyYXRpb246IGZ1bmN0aW9uICgpCisgICAgIHsKKy0gICAg
ICAgIHZhciBqc29uID0gdGhpcy5fcmVzdWx0c0Rhc2hib2FyZC50b0pTT04odHJ1ZSwgdHJ1ZSk7
CistICAgICAgICB0aGlzLl9yZXN1bHRzVGFibGUuc2hvd0l0ZXJhdGlvbnMoanNvbltTdHJpbmdz
WyJKU09OX1JFU1VMVFMiXVswXV0pOworLSAgICAgICAgCistICAgICAgICB2YXIgZWxlbWVudCA9
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNqc29uID4gdGV4dGFyZWEiKTsKKy0gICAgICAgIGVs
ZW1lbnQuaW5uZXJIVE1MID0gSlNPTi5zdHJpbmdpZnkoanNvbltTdHJpbmdzWyJKU09OX1JFU1VM
VFMiXVswXV1bMF0sIGZ1bmN0aW9uKGtleSwgdmFsdWUpIHsgCistICAgICAgICAgICAgaWYgKHR5
cGVvZiB2YWx1ZSA9PSAibnVtYmVyIikKKy0gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnRv
Rml4ZWQoMik7CistICAgICAgICAgICAgcmV0dXJuIHZhbHVlOworLSAgICAgICAgfSwgNCk7Cisr
ICAgICAgICAvLyBzdWJtaXQgcmVzdWx0IHRvIHNlcnZlcgorKyAgICAgICAgdmFyIHJlc3VsdHMg
PSBKU09OLnN0cmluZ2lmeSh0aGlzLmNvbXB1dGVSZXN1bHRzUmVwb3J0cygpKTsKKysgICAgICAg
IHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKysgICAgICAgIHhoci5vcGVuKCJQT1NU
IiwgIi9yZXBvcnQiKTsKKysKKysgICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50
LXR5cGUiLCAiYXBwbGljYXRpb24vanNvbiIpOworKyAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFk
ZXIoIkNvbnRlbnQtbGVuZ3RoIiwgcmVzdWx0cy5sZW5ndGgpOworKyAgICAgICAgeGhyLnNldFJl
cXVlc3RIZWFkZXIoIkNvbm5lY3Rpb24iLCAiY2xvc2UiKTsKKysKKysgICAgICAgIHhoci5vbnJl
YWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKKysgICAgICAgICAgICBpZiAoeGhyLnJlYWR5
U3RhdGUgPT0gWE1MSHR0cFJlcXVlc3QuRE9ORSAmJiB4aHIuc3RhdHVzID09IDIwMCkgeworKyAg
ICAgICAgICAgICAgICBjbG9zZVJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKysgICAg
ICAgICAgICAgICAgY2xvc2VSZXF1ZXN0Lm9wZW4oIkdFVCIsICIvc2h1dGRvd24iKTsKKysgICAg
ICAgICAgICAgICAgY2xvc2VSZXF1ZXN0LnNlbmQoKQorKyAgICAgICAgICAgIH0KKysgICAgICAg
IH0KKyAgICAgICAgIAorLSAgICAgICAgdGhpcy5zY29yZSA9IGpzb25bU3RyaW5nc1siSlNPTl9T
Q09SRSJdXTsKKy0gICAgICAgIHNob3dSZXN1bHRzKCk7CisrICAgICAgICB4aHIuc2VuZChyZXN1
bHRzKTsKKyAgICAgfQorIH0KKyAKK0BAIC0xNzksNCArMjIxLDEzIEBAIGZ1bmN0aW9uIHBvcHVs
YXRlU2V0dGluZ3MoKSB7CisgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdC1p
bnRlcnZhbCIpLnZhbHVlID0gaW50ZXJ2YWw7CisgICAgIH0KKyB9CistZG9jdW1lbnQuYWRkRXZl
bnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIHBvcHVsYXRlU2V0dGluZ3MpOworXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisrCisrZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9N
Q29udGVudExvYWRlZCIsIGZ1bmN0aW9uKCkgeworKyAgICBwb3B1bGF0ZVNldHRpbmdzKCk7Cisr
CisrICAgIHZhciBjaGVja2JveGVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiI3N1aXRl
cyBpbnB1dCIpOworKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoZWNrYm94ZXMubGVuZ3RoOyAr
K2kpCisrICAgICAgICBjaGVja2JveGVzW2ldLmNoZWNrZWQgPSBpIDwgNDsKKysKKysgICAgc2V0
VGltZW91dChzdGFydFRlc3QsIDMwMDApOworK30pOwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGxhbnMvYW5pbW9tZXRlci5wbGFuCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9kYXRhL3BsYW5z
L2FuaW1vbWV0ZXIucGxhbgkocmV2aXNpb24gMCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
YmVuY2htYXJrX3J1bm5lci9kYXRhL3BsYW5zL2FuaW1vbWV0ZXIucGxhbgkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDggQEAKK3sKKyAgICAidGltZW91dCI6IDEyMDAsCisgICAgImNvdW50Ijog
MSwKKyAgICAic3ZuX3NvdXJjZSI6ICJodHRwczovL3N2bi53ZWJraXQub3JnL3JlcG9zaXRvcnkv
d2Via2l0L3RydW5rL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9AcjE5MTU4NiIsCisgICAg
ImJlbmNobWFya19wYXRjaCI6ICJkYXRhL3BhdGNoZXMvQW5pbW9tZXRlci5wYXRjaCIsCisgICAg
ImVudHJ5X3BvaW50IjogInJ1bm5lci9hbmltb21ldGVyLmh0bWwiLAorICAgICJvdXRwdXRfZmls
ZSI6ICJhbmltb21ldGVyLnJlc3VsdCIKK30KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264757</attachid>
            <date>2015-11-03 17:00:03 -0800</date>
            <delta_ts>2015-11-03 17:59:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150450-20151103165907.patch</filename>
            <type>text/plain</type>
            <size>5592</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE5MTk5OCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE1IEBACisyMDE1LTExLTAzICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIGdyYXBoaWNzIGJlbmNobWFyayB0byBwZXJmb3JtYW5j
ZSBib3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
MDQ1MAorCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIER1bWV6LgorCisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVyLnBh
dGNoOiBBZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIv
ZGF0YS9wbGFucy9hbmltb21ldGVyLnBsYW46IEFkZGVkLgorICAgICAgICBBZGQgYSBwYXRjaCBh
bmQgYSBwbGFuIHRvIHNldCB0aGUgZGVmYXVsdHMgb2YgdGhlIGJlbmNobWFyaywgcnVuIGl0LAor
ICAgICAgICBjb2xsZWN0IHRoZSByZXN1bHQgYW5kIHJlcG9ydCBpdCB0byB0aGUgYmVuY2htYXJr
IHJ1bm5lci4KKwogMjAxNS0xMS0wMyAgSmFzb24gTWFyY2VsbCAgPGptYXJjZWxsQGFwcGxlLmNv
bT4KIAogICAgICAgICBydW4td2Via2l0LXRlc3Qgc2hvdWxkIGxvb2sgaW4gLS1yb290IGRpcmVj
dG9yeSBmb3IgTGF5b3V0VGVzdFJlbGF5CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2Jl
bmNobWFya19ydW5uZXIvZGF0YS9wYXRjaGVzL0FuaW1vbWV0ZXIucGF0Y2gKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9B
bmltb21ldGVyLnBhdGNoCShyZXZpc2lvbiAwKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9i
ZW5jaG1hcmtfcnVubmVyL2RhdGEvcGF0Y2hlcy9Bbmltb21ldGVyLnBhdGNoCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsOTYgQEAKK2RpZmYgLS1naXQgYS9ydW5uZXIvcmVzb3VyY2VzL2FuaW1v
bWV0ZXIuanMgYi9ydW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0ZXIuanMKK2luZGV4IGU1Njc2ODEu
LmJhMGFiMGYgMTAwNjQ0CistLS0gYS9ydW5uZXIvcmVzb3VyY2VzL2FuaW1vbWV0ZXIuanMKKysr
KyBiL3J1bm5lci9yZXNvdXJjZXMvYW5pbW9tZXRlci5qcworQEAgLTQxLDE0ICs0MSw2MiBAQCB3
aW5kb3cuYmVuY2htYXJrUnVubmVyQ2xpZW50ID0geworICAgICAgICAgdGhpcy5fcmVzdWx0c0Rh
c2hib2FyZC5wdXNoKHN1aXRlc1NhbXBsZXJzKTsKKyAgICAgfSwKKyAgICAgCisrICAgIF9jb21w
dXRlVGVzdFJlcG9ydDogZnVuY3Rpb24odGVzdE5hbWUsIHRlc3RSZXN1bHRzKQorKyAgICB7Cisr
ICAgICAgICByZXR1cm4gW3Rlc3RSZXN1bHRzW1N0cmluZ3NbIkpTT05fU0NPUkUiXVswXV1dOwor
KyAgICB9LAorKworKyAgICBfY29tcHV0ZVN1aXRlUmVwb3J0czogZnVuY3Rpb24oc3VpdGVOYW1l
LCBzdWl0ZVJlc3VsdHMpCisrICAgIHsKKysgICAgICAgIHZhciB0ZXN0c1JlcG9ydHMgPSB7fTsK
KysKKysgICAgICAgIGZvciAodmFyIHRlc3ROYW1lIGluIHN1aXRlUmVzdWx0c1tTdHJpbmdzWyJK
U09OX1JFU1VMVFMiXVsyXV0pIHsKKysgICAgICAgICAgICB2YXIgdGVzdFJlcG9ydHMgPSB0aGlz
Ll9jb21wdXRlVGVzdFJlcG9ydCh0ZXN0TmFtZSwgc3VpdGVSZXN1bHRzW1N0cmluZ3NbIkpTT05f
UkVTVUxUUyJdWzJdXVt0ZXN0TmFtZV0pOworKyAgICAgICAgICAgIHRlc3RzUmVwb3J0c1t0ZXN0
TmFtZV0gPSB7ICJtZXRyaWNzIjogeyAiU2NvcmUiOiB7ICJjdXJyZW50IjogdGVzdFJlcG9ydHMg
fSB9IH07CisrICAgICAgICB9CisrCisrICAgICAgICByZXR1cm4gdGVzdHNSZXBvcnRzOworKyAg
ICB9LAorKworKyAgICBfY29tcHV0ZUl0ZXJhdGlvblJlcG9ydHM6IGZ1bmN0aW9uKGl0ZXJhdGlv
blJlc3VsdHMpCisrICAgIHsKKysgICAgICAgIHZhciBzdWl0ZXNSZXBvcnRzID0ge307CisrCisr
ICAgICAgICBmb3IgKHZhciBzdWl0ZU5hbWUgaW4gaXRlcmF0aW9uUmVzdWx0c1tTdHJpbmdzWyJK
U09OX1JFU1VMVFMiXVsxXV0pIHsKKysgICAgICAgICAgICB2YXIgdGVzdHNSZXBvcnRzID0gdGhp
cy5fY29tcHV0ZVN1aXRlUmVwb3J0cyhzdWl0ZU5hbWUsIGl0ZXJhdGlvblJlc3VsdHNbU3RyaW5n
c1siSlNPTl9SRVNVTFRTIl1bMV1dW3N1aXRlTmFtZV0pOworKyAgICAgICAgICAgIHN1aXRlc1Jl
cG9ydHNbc3VpdGVOYW1lXSA9IHsgIm1ldHJpY3MiOiB7ICJTY29yZSI6IFsiR2VvbWV0cmljIl0g
fSwgInRlc3RzIjogdGVzdHNSZXBvcnRzIH07CisrICAgICAgICB9CisrCisrICAgICAgICByZXR1
cm4gc3VpdGVzUmVwb3J0czsKKysgICAgfSwKKysKKysgICAgY29tcHV0ZVJlc3VsdHNSZXBvcnRz
OiBmdW5jdGlvbigpCisrICAgIHsKKysgICAgICAgIHZhciBqc29uID0gdGhpcy5fcmVzdWx0c0Rh
c2hib2FyZC50b0pTT04oZmFsc2UsIGZhbHNlKTsKKysgICAgICAgIHZhciBpdGVyYXRpb25SZXBv
cnRzID0gdGhpcy5fY29tcHV0ZUl0ZXJhdGlvblJlcG9ydHMoanNvbltTdHJpbmdzWyJKU09OX1JF
U1VMVFMiXVswXV1bMF0pCisrICAgICAgICByZXR1cm4geyJBbmltb21ldGVyIjogeyJtZXRyaWNz
IiA6IHsiU2NvcmUiIDogWyJHZW9tZXRyaWMiXX0sICJ0ZXN0cyIgOiBpdGVyYXRpb25SZXBvcnRz
IH0gfTsKKysgICAgfSwKKysKKyAgICAgZGlkRmluaXNoTGFzdEl0ZXJhdGlvbjogZnVuY3Rpb24g
KCkKKyAgICAgeworLSAgICAgICAgdmFyIGpzb24gPSB0aGlzLl9yZXN1bHRzRGFzaGJvYXJkLnRv
SlNPTih0cnVlLCB0cnVlKTsKKy0gICAgICAgIHRoaXMuc2NvcmUgPSBqc29uW1N0cmluZ3NbIkpT
T05fU0NPUkUiXV07CistICAgICAgICB0aGlzLl9yZXN1bHRzVGFibGUuc2hvd0l0ZXJhdGlvbnMo
anNvbltTdHJpbmdzWyJKU09OX1JFU1VMVFMiXVswXV0pOworLSAgICAgICAgc2VjdGlvbnNNYW5h
Z2VyLnNob3dKU09OKCJqc29uIiwganNvbltTdHJpbmdzWyJKU09OX1JFU1VMVFMiXVswXV1bMF0p
OworLSAgICAgICAgc3VpdGVzTWFuYWdlci51cGRhdGVMb2NhbFN0b3JhZ2VGcm9tSlNPTihqc29u
W1N0cmluZ3NbIkpTT05fUkVTVUxUUyJdWzBdXVswXSk7CistICAgICAgICBiZW5jaG1hcmtDb250
cm9sbGVyLnNob3dSZXN1bHRzKCk7CisrICAgICAgICAvLyBzdWJtaXQgcmVzdWx0IHRvIHNlcnZl
cgorKyAgICAgICAgdmFyIHJlc3VsdHMgPSBKU09OLnN0cmluZ2lmeSh0aGlzLmNvbXB1dGVSZXN1
bHRzUmVwb3J0cygpKTsKKysgICAgICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsK
KysgICAgICAgIHhoci5vcGVuKCJQT1NUIiwgIi9yZXBvcnQiKTsKKysKKysgICAgICAgIHhoci5z
ZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LXR5cGUiLCAiYXBwbGljYXRpb24vanNvbiIpOworKyAg
ICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtbGVuZ3RoIiwgcmVzdWx0cy5sZW5n
dGgpOworKyAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoIkNvbm5lY3Rpb24iLCAiY2xvc2Ui
KTsKKysKKysgICAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKKysg
ICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gWE1MSHR0cFJlcXVlc3QuRE9ORSAmJiB4
aHIuc3RhdHVzID09IDIwMCkgeworKyAgICAgICAgICAgICAgICBjbG9zZVJlcXVlc3QgPSBuZXcg
WE1MSHR0cFJlcXVlc3QoKTsKKysgICAgICAgICAgICAgICAgY2xvc2VSZXF1ZXN0Lm9wZW4oIkdF
VCIsICIvc2h1dGRvd24iKTsKKysgICAgICAgICAgICAgICAgY2xvc2VSZXF1ZXN0LnNlbmQoKQor
KyAgICAgICAgICAgIH0KKysgICAgICAgIH0KKysKKysgICAgICAgIHhoci5zZW5kKHJlc3VsdHMp
OworICAgICB9CisgfQorIAorQEAgLTMwNyw2ICszNTUsMTAgQEAgd2luZG93LnN1aXRlc01hbmFn
ZXIgPQorIAorICAgICAgICAgICAgIHN1aXRlLnRlc3RzLmZvckVhY2goZnVuY3Rpb24odGVzdCkg
eworICAgICAgICAgICAgICAgICB2YXIgdGVzdEVsZW1lbnQgPSB0aGlzLl9jcmVhdGVUZXN0RWxl
bWVudChsaXN0RWxlbWVudCwgdGVzdCwgc3VpdGVDaGVja2JveCk7CisrICAgICAgICAgICAgICAg
IGlmIChpbmRleCA8IDQpIHsKKysgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0Q2hlY2tib3gg
PSB0aGlzLl9jaGVja2JveEVsZW1lbnQodGVzdEVsZW1lbnQpOworKyAgICAgICAgICAgICAgICAg
ICAgdGVzdENoZWNrYm94LmNoZWNrZWQgPSB0cnVlOworKyAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgfSwgdGhpcyk7CisgICAgICAgICB9LCB0aGlzKTsKKyAgICAgfSwKK0BAIC00MDgs
MTAgKzQ2MCw4IEBAIHdpbmRvdy5iZW5jaG1hcmtDb250cm9sbGVyID0KKyAgICAgaW5pdGlhbGl6
ZTogZnVuY3Rpb24oKQorICAgICB7CisgICAgICAgICBzZWN0aW9uc01hbmFnZXIuc2V0dXBTZWN0
aW9uU3R5bGUoKTsKKy0gICAgICAgIG9wdGlvbnNNYW5hZ2VyLnVwZGF0ZVVJRnJvbUxvY2FsU3Rv
cmFnZSgpOworICAgICAgICAgc3VpdGVzTWFuYWdlci5jcmVhdGVFbGVtZW50cygpOworLSAgICAg
ICAgc3VpdGVzTWFuYWdlci51cGRhdGVVSUZyb21Mb2NhbFN0b3JhZ2UoKTsKKy0gICAgICAgIHN1
aXRlc01hbmFnZXIudXBkYXRlRWRpdHNFbGVtZW50c1N0YXRlKCk7CisrICAgICAgICBzZXRUaW1l
b3V0KHRoaXMuc3RhcnRUZXN0LmJpbmQodGhpcyksIDMwMDApOworICAgICB9LAorIAorICAgICBv
bkNoYW5nZUFkYXB0aXZlVGVzdENoZWNrYm94OiBmdW5jdGlvbigpCkluZGV4OiBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvZGF0YS9wbGFucy9hbmltb21ldGVyLnBsYW4K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2Rh
dGEvcGxhbnMvYW5pbW9tZXRlci5wbGFuCShyZXZpc2lvbiAwKQorKysgVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2RhdGEvcGxhbnMvYW5pbW9tZXRlci5wbGFuCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAoreworICAgICJ0aW1lb3V0IjogMTgwMCwKKyAgICAi
Y291bnQiOiAxLAorICAgICJzdm5fc291cmNlIjogImh0dHBzOi8vc3ZuLndlYmtpdC5vcmcvcmVw
b3NpdG9yeS93ZWJraXQvdHJ1bmsvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL0ByMTkxODcz
IiwKKyAgICAiYmVuY2htYXJrX3BhdGNoIjogImRhdGEvcGF0Y2hlcy9Bbmltb21ldGVyLnBhdGNo
IiwKKyAgICAiZW50cnlfcG9pbnQiOiAicnVubmVyL2FuaW1vbWV0ZXIuaHRtbCIsCisgICAgIm91
dHB1dF9maWxlIjogImFuaW1vbWV0ZXIucmVzdWx0IgorfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>