<?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>53071</bug_id>
          
          <creation_ts>2011-01-25 00:07:40 -0800</creation_ts>
          <short_desc>[NRWT] Pull up a rebaseline feature into a single_test_runner out of each test_type.</short_desc>
          <delta_ts>2011-02-09 13:20:55 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>53004</dependson>
    
    <dependson>53063</dependson>
          <blocked>51091</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hayato Ito">hayato</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>339520</commentid>
    <comment_count>0</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-01-25 00:07:40 -0800</bug_when>
    <thetext>This is a separated patch from https://bugs.webkit.org/show_bug.cgi?id=51091.

This patch is only refactoring. There is no functional changes.

To make this patch smaller, I only extracted rebaseline features from test_type/* into a single_test_runner.
Following patches will pull up remaining features which are defined in each test_type::comapre_output() into a single_test_runner and get rid of test_type/* classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>339524</commentid>
    <comment_count>1</comment_count>
      <attachid>80031</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-01-25 00:10:46 -0800</bug_when>
    <thetext>Created attachment 80031
pull-up-rebaseline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345444</commentid>
    <comment_count>2</comment_count>
      <attachid>81206</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-02-04 05:08:11 -0800</bug_when>
    <thetext>Created attachment 81206
pull-up-rebaseline--for-review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>346746</commentid>
    <comment_count>3</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-02-07 13:02:12 -0800</bug_when>
    <thetext>The changes look fine to me. 

Looking at _run_rebaseline(), it&apos;s not obvious to me that we should be writing new baselines if the test crashed or timed out. I realize this question predates your change, but maybe you could add a FIXME for someone to revisit this later?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347197</commentid>
    <comment_count>4</comment_count>
      <attachid>81606</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-02-07 23:58:56 -0800</bug_when>
    <thetext>Created attachment 81606
pull-up-rebaseline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347199</commentid>
    <comment_count>5</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-02-08 00:01:03 -0800</bug_when>
    <thetext>Thank you for the review.

(In reply to comment #3)
&gt; The changes look fine to me. 
&gt; 
&gt; Looking at _run_rebaseline(), it&apos;s not obvious to me that we should be writing new baselines if the test crashed or timed out. I realize this question predates your change, but maybe you could add a FIXME for someone to revisit this later?

Nice point. That wasted my time too some time ago.
I added a FIXME. Thank you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347568</commentid>
    <comment_count>6</comment_count>
      <attachid>81606</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-02-08 11:37:29 -0800</bug_when>
    <thetext>Comment on attachment 81606
pull-up-rebaseline

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

&gt; Tools/ChangeLog:10
&gt; +        This patch is a first step for eliminating test_type/* classes.
&gt; +
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=53071

Is this covered by existing unit tests?  If not, it would be nice to add some (either in this patch or a follow up patch).

&gt; Tools/Scripts/webkitpy/layout_tests/layout_package/single_test_runner.py:111
&gt; +            self._save_baseline_data(driver_output.image_hash, &quot;.checksum&quot;,
&gt; +                                     encoding=&quot;ascii&quot;,
&gt; +                                     generate_new_baseline=self._options.new_baseline)

In a separate patch, we could just get rid of the encoding flag.  If we encode the .checksum files as binary, it should be the same as ascii.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347949</commentid>
    <comment_count>7</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-02-08 21:29:25 -0800</bug_when>
    <thetext>Thank you for the review.
I&apos;ve merged the patch with ToT and am going to commit it manually.

(In reply to comment #6)
&gt; (From update of attachment 81606 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=81606&amp;action=review
&gt; 
&gt; &gt; Tools/ChangeLog:10
&gt; &gt; +        This patch is a first step for eliminating test_type/* classes.
&gt; &gt; +
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=53071
&gt; 
&gt; Is this covered by existing unit tests?  If not, it would be nice to add some (either in this patch or a follow up patch).

There is no existing unit tests for rebaseline.
It seems that we&apos;ve started to use abstract file system modules recently, now it is possible to write unit tests for rebaseline. That will be in a follow up patch.

&gt; 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/layout_package/single_test_runner.py:111
&gt; &gt; +            self._save_baseline_data(driver_output.image_hash, &quot;.checksum&quot;,
&gt; &gt; +                                     encoding=&quot;ascii&quot;,
&gt; &gt; +                                     generate_new_baseline=self._options.new_baseline)
&gt; 
&gt; In a separate patch, we could just get rid of the encoding flag.  If we encode the .checksum files as binary, it should be the same as ascii.

Thank you. I&apos;ll take care of it in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347951</commentid>
    <comment_count>8</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-02-08 21:33:26 -0800</bug_when>
    <thetext>Committed r78014: &lt;http://trac.webkit.org/changeset/78014&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348498</commentid>
    <comment_count>9</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-02-09 13:20:55 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Thank you for the review.
&gt; I&apos;ve merged the patch with ToT and am going to commit it manually.
&gt; 
&gt; (In reply to comment #6)
&gt; &gt; Is this covered by existing unit tests?  If not, it would be nice to add some (either in this patch or a follow up patch).
&gt; 
&gt; There is no existing unit tests for rebaseline.
&gt; It seems that we&apos;ve started to use abstract file system modules recently, now it is possible to write unit tests for rebaseline. That will be in a follow up patch.
&gt; 

There are tests in run_webkit_tests_unittest  - see the RebaselineTest class. So, I would expect these changes to have been covered by the existing tests.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>80031</attachid>
            <date>2011-01-25 00:10:46 -0800</date>
            <delta_ts>2011-02-04 05:08:06 -0800</delta_ts>
            <desc>pull-up-rebaseline</desc>
            <filename>bug-53071-20110125171044.patch</filename>
            <type>text/plain</type>
            <size>11928</size>
            <attacher name="Hayato Ito">hayato</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzNzdj
NmJkYWE3ZWUyZTQ2YTdkMGYzNmY4YThkYTQ4ZmUzYjliYjFiLi45MjllNGJmNDI5MDFmYzdlOWM3
NDI5MzIxNjU3NzE2MmI0OTEyNTNhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDEtMjUgIEhheWF0byBJdG8g
IDxoYXlhdG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFtOUldUXSBQdWxsIHVwIHJlYmFzZWxpbmUgZmVhdHVyZXMgb3V0IG9m
IHRlc3RfdHlwZS8qIGNsYXNzZXMgaW50byBhCisgICAgICAgIFNpbmdsZVRlc3RSdW5uZXIuCisK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzMDcxCisK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9sYXlvdXRfcGFja2FnZS9z
aW5nbGVfdGVzdF9ydW5uZXIucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvdGVzdF90eXBlcy9pbWFnZV9kaWZmLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2UucHk6CisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHk6CisK
IDIwMTEtMDEtMjQgIEhheWF0byBJdG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvbGF5b3V0X3BhY2thZ2Uvc2luZ2xlX3Rlc3RfcnVubmVyLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbGF5b3V0X3BhY2thZ2Uvc2lu
Z2xlX3Rlc3RfcnVubmVyLnB5CmluZGV4IGRhY2Y2NjYwMTBiOWE5ZmM0YTIzN2UxNTIwMWFmNDM0
MDE2MDZjMjkuLmNjOGUyY2YyZjhkOWM5NzRhOTU4YTE2MTk4MzMzZjZlOTQ1ZWViNjAgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2xheW91dF9wYWNrYWdl
L3NpbmdsZV90ZXN0X3J1bm5lci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9sYXlvdXRfcGFja2FnZS9zaW5nbGVfdGVzdF9ydW5uZXIucHkKQEAgLTg3LDI2ICs4
Nyw2NyBAQCBjbGFzcyBTaW5nbGVUZXN0UnVubmVyOgogICAgICAgICByZXR1cm4gRHJpdmVySW5w
dXQoc2VsZi5fZmlsZW5hbWUsIHNlbGYuX3RpbWVvdXQsIGltYWdlX2hhc2gpCiAKICAgICBkZWYg
cnVuKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9vcHRpb25zLm5ld19iYXNlbGluZSBvciBzZWxm
Ll9vcHRpb25zLnJlc2V0X3Jlc3VsdHM6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcnVuX3Jl
YmFzZWxpbmUoKQorICAgICAgICByZXR1cm4gc2VsZi5fcnVuX3Rlc3QoKQorCisgICAgZGVmIF9y
dW5fcmViYXNlbGluZShzZWxmKToKICAgICAgICAgZHJpdmVyX291dHB1dCA9IHNlbGYuX2RyaXZl
ci5ydW5fdGVzdChzZWxmLl9kcml2ZXJfaW5wdXQoKSkKLSAgICAgICAgcmV0dXJuIHNlbGYuX3By
b2Nlc3Nfb3V0cHV0KGRyaXZlcl9vdXRwdXQpCisgICAgICAgIHNlbGYuX3NhdmVfYmFzZWxpbmVz
KGRyaXZlcl9vdXRwdXQpCisgICAgICAgIGZhaWx1cmVzID0gc2VsZi5faGFuZGxlX2Vycm9yKGRy
aXZlcl9vdXRwdXQpCisgICAgICAgIHJldHVybiBUZXN0UmVzdWx0KHNlbGYuX2ZpbGVuYW1lLCBm
YWlsdXJlcywgZHJpdmVyX291dHB1dC50ZXN0X3RpbWUpCisKKyAgICBkZWYgX3NhdmVfYmFzZWxp
bmVzKHNlbGYsIGRyaXZlcl9vdXRwdXQpOgorICAgICAgICAjIEFsdGhvdWdoIGFsbCB0ZXN0X3No
ZWxsL0R1bXBSZW5kZXJUcmVlIG91dHB1dCBzaG91bGQgYmUgdXRmLTgsCisgICAgICAgICMgd2Ug
ZG8gbm90IGV2ZXIgZGVjb2RlIGl0IGluc2lkZSBydW4td2Via2l0LXRlc3RzLiAgRm9yIHNvbWUg
dGVzdHMKKyAgICAgICAgIyBEdW1wUmVuZGVyVHJlZSBtYXkgbm90IG91dHB1dCB1dGYtOCB0ZXh0
IChlLmcuIHdlYmFyY2hpdmVzKS4KKyAgICAgICAgc2VsZi5fc2F2ZV9iYXNlbGluZV9kYXRhKGRy
aXZlcl9vdXRwdXQudGV4dCwgIi50eHQiLCBlbmNvZGluZz1Ob25lLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lPXNlbGYuX29wdGlvbnMubmV3
X2Jhc2VsaW5lKQorICAgICAgICBpZiBzZWxmLl9vcHRpb25zLnBpeGVsX3Rlc3RzIGFuZCBkcml2
ZXJfb3V0cHV0LmltYWdlX2hhc2g6CisgICAgICAgICAgICBzZWxmLl9zYXZlX2Jhc2VsaW5lX2Rh
dGEoZHJpdmVyX291dHB1dC5pbWFnZSwgIi5wbmciLCBlbmNvZGluZz1Ob25lLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNlbGluZT1zZWxmLl9v
cHRpb25zLm5ld19iYXNlbGluZSkKKyAgICAgICAgICAgIHNlbGYuX3NhdmVfYmFzZWxpbmVfZGF0
YShkcml2ZXJfb3V0cHV0LmltYWdlX2hhc2gsICIuY2hlY2tzdW0iLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nPSJhc2NpaSIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lPXNlbGYuX29wdGlvbnMu
bmV3X2Jhc2VsaW5lKQorCisgICAgZGVmIF9zYXZlX2Jhc2VsaW5lX2RhdGEoc2VsZiwgZGF0YSwg
bW9kaWZpZXIsIGVuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRl
X25ld19iYXNlbGluZT1UcnVlKToKKyAgICAgICAgIiIiU2F2ZXMgYSBuZXcgYmFzZWxpbmUgZmls
ZSBpbnRvIHRoZSBwb3J0J3MgYmFzZWxpbmUgZGlyZWN0b3J5LgorCisgICAgICAgIFRoZSBmaWxl
IHdpbGwgYmUgbmFtZWQgc2ltcGx5ICI8dGVzdD4tZXhwZWN0ZWQ8bW9kaWZpZXI+Iiwgc3VpdGFi
bGUgZm9yCisgICAgICAgIHVzZSBhcyB0aGUgZXhwZWN0ZWQgcmVzdWx0cyBpbiBhIGxhdGVyIHJ1
bi4KIAotICAgIGRlZiBfcHJvY2Vzc19vdXRwdXQoc2VsZiwgZHJpdmVyX291dHB1dCk6Ci0gICAg
ICAgICIiIlJlY2VpdmVzIHRoZSBvdXRwdXQgZnJvbSBhIER1bXBSZW5kZXJUcmVlIHByb2Nlc3Ms
IHN1YmplY3RzIGl0IHRvIGEKLSAgICAgICAgbnVtYmVyIG9mIHRlc3RzLCBhbmQgcmV0dXJucyBh
IGxpc3Qgb2YgZmFpbHVyZSB0eXBlcyB0aGUgdGVzdCBwcm9kdWNlZC4KICAgICAgICAgQXJnczoK
LSAgICAgICAgICBkcml2ZXJfb3V0cHV0OiBhIERyaXZlck91dHB1dCBvYmplY3QgY29udGFpbmlu
ZyB0aGUgb3V0cHV0IGZyb20gdGhlIGRyaXZlcgotCi0gICAgICAgIFJldHVybnM6IGEgVGVzdFJl
c3VsdCBvYmplY3QKKyAgICAgICAgICBkYXRhOiByZXN1bHQgdG8gYmUgc2F2ZWQgYXMgdGhlIG5l
dyBiYXNlbGluZQorICAgICAgICAgIG1vZGlmaWVyOiB0eXBlIG9mIHRoZSByZXN1bHQgZmlsZSwg
ZS5nLiAiLnR4dCIgb3IgIi5wbmciCisgICAgICAgICAgZW5jb2Rpbmc6IGZpbGUgZW5jb2Rpbmcg
KG5vbmUsICJ1dGYtOCIsIGV0Yy4pCisgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lOiB3
aGV0aGVyIHRvIGVuZXJhdGUgYSBuZXcsIHBsYXRmb3JtLXNwZWNpZmljCisgICAgICAgICAgICBi
YXNlbGluZSwgb3IgdXBkYXRlIHRoZSBleGlzdGluZyBvbmUKICAgICAgICAgIiIiCi0gICAgICAg
IGZhaWx1cmVzID0gW10KLSAgICAgICAgZnMgPSBzZWxmLl9wb3J0Ll9maWxlc3lzdGVtCiAKLSAg
ICAgICAgaWYgZHJpdmVyX291dHB1dC5jcmFzaDoKLSAgICAgICAgICAgIGZhaWx1cmVzLmFwcGVu
ZCh0ZXN0X2ZhaWx1cmVzLkZhaWx1cmVDcmFzaCgpKQorICAgICAgICBwb3J0ID0gc2VsZi5fcG9y
dAorICAgICAgICBmcyA9IHBvcnQuX2ZpbGVzeXN0ZW0KKyAgICAgICAgaWYgZ2VuZXJhdGVfbmV3
X2Jhc2VsaW5lOgorICAgICAgICAgICAgcmVsYXRpdmVfZGlyID0gZnMuZGlybmFtZShzZWxmLl90
ZXN0bmFtZSkKKyAgICAgICAgICAgIGJhc2VsaW5lX3BhdGggPSBwb3J0LmJhc2VsaW5lX3BhdGgo
KQorICAgICAgICAgICAgb3V0cHV0X2RpciA9IGZzLmpvaW4oYmFzZWxpbmVfcGF0aCwgcmVsYXRp
dmVfZGlyKQorICAgICAgICAgICAgb3V0cHV0X2ZpbGUgPSBmcy5iYXNlbmFtZShmcy5zcGxpdGV4
dChzZWxmLl9maWxlbmFtZSlbMF0gKworICAgICAgICAgICAgICAgICItZXhwZWN0ZWQiICsgbW9k
aWZpZXIpCisgICAgICAgICAgICBmcy5tYXliZV9tYWtlX2RpcmVjdG9yeShvdXRwdXRfZGlyKQor
ICAgICAgICAgICAgb3V0cHV0X3BhdGggPSBmcy5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxl
KQorICAgICAgICAgICAgX2xvZy5kZWJ1Zygnd3JpdGluZyBuZXcgYmFzZWxpbmUgcmVzdWx0ICIl
cyInICUgKG91dHB1dF9wYXRoKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG91dHB1dF9w
YXRoID0gcG9ydC5leHBlY3RlZF9maWxlbmFtZShzZWxmLl9maWxlbmFtZSwgbW9kaWZpZXIpCisg
ICAgICAgICAgICBfbG9nLmRlYnVnKCdyZXNldHRpbmcgYmFzZWxpbmUgcmVzdWx0ICIlcyInICUg
b3V0cHV0X3BhdGgpCisKKyAgICAgICAgcG9ydC51cGRhdGVfYmFzZWxpbmUob3V0cHV0X3BhdGgs
IGRhdGEsIGVuY29kaW5nKQorCisgICAgZGVmIF9oYW5kbGVfZXJyb3Ioc2VsZiwgZHJpdmVyX291
dHB1dCk6CisgICAgICAgIGZhaWx1cmVzID0gW10KICAgICAgICAgaWYgZHJpdmVyX291dHB1dC50
aW1lb3V0OgogICAgICAgICAgICAgZmFpbHVyZXMuYXBwZW5kKHRlc3RfZmFpbHVyZXMuRmFpbHVy
ZVRpbWVvdXQoKSkKLQogICAgICAgICBpZiBkcml2ZXJfb3V0cHV0LmNyYXNoOgorICAgICAgICAg
ICAgZmFpbHVyZXMuYXBwZW5kKHRlc3RfZmFpbHVyZXMuRmFpbHVyZUNyYXNoKCkpCiAgICAgICAg
ICAgICBfbG9nLmRlYnVnKCIlcyBTdGFja3RyYWNlIGZvciAlczpcbiVzIiAlIChzZWxmLl93b3Jr
ZXJfbmFtZSwgc2VsZi5fdGVzdG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBkcml2ZXJfb3V0cHV0LmVycm9yKSkKICAgICAgICAgICAg
IHN0YWNrX2ZpbGVuYW1lID0gZnMuam9pbihzZWxmLl9vcHRpb25zLnJlc3VsdHNfZGlyZWN0b3J5
LCBzZWxmLl90ZXN0bmFtZSkKQEAgLTExNiw3ICsxNTcsMjIgQEAgY2xhc3MgU2luZ2xlVGVzdFJ1
bm5lcjoKICAgICAgICAgZWxpZiBkcml2ZXJfb3V0cHV0LmVycm9yOgogICAgICAgICAgICAgX2xv
Zy5kZWJ1ZygiJXMgJXMgb3V0cHV0IHN0ZGVyciBsaW5lczpcbiVzIiAlIChzZWxmLl93b3JrZXJf
bmFtZSwgc2VsZi5fdGVzdG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRyaXZlcl9vdXRwdXQuZXJyb3IpKQorICAgICAgICBy
ZXR1cm4gZmFpbHVyZXMKKworICAgIGRlZiBfcnVuX3Rlc3Qoc2VsZik6CisgICAgICAgIGRyaXZl
cl9vdXRwdXQgPSBzZWxmLl9kcml2ZXIucnVuX3Rlc3Qoc2VsZi5fZHJpdmVyX2lucHV0KCkpCisg
ICAgICAgIHJldHVybiBzZWxmLl9wcm9jZXNzX291dHB1dChkcml2ZXJfb3V0cHV0KQogCisgICAg
ZGVmIF9wcm9jZXNzX291dHB1dChzZWxmLCBkcml2ZXJfb3V0cHV0KToKKyAgICAgICAgIiIiUmVj
ZWl2ZXMgdGhlIG91dHB1dCBmcm9tIGEgRHVtcFJlbmRlclRyZWUgcHJvY2Vzcywgc3ViamVjdHMg
aXQgdG8gYQorICAgICAgICBudW1iZXIgb2YgdGVzdHMsIGFuZCByZXR1cm5zIGEgbGlzdCBvZiBm
YWlsdXJlIHR5cGVzIHRoZSB0ZXN0IHByb2R1Y2VkLgorICAgICAgICBBcmdzOgorICAgICAgICAg
IGRyaXZlcl9vdXRwdXQ6IGEgRHJpdmVyT3V0cHV0IG9iamVjdCBjb250YWluaW5nIHRoZSBvdXRw
dXQgZnJvbSB0aGUgZHJpdmVyCisKKyAgICAgICAgUmV0dXJuczogYSBUZXN0UmVzdWx0IG9iamVj
dAorICAgICAgICAiIiIKKyAgICAgICAgZnMgPSBzZWxmLl9wb3J0Ll9maWxlc3lzdGVtCisgICAg
ICAgIGZhaWx1cmVzID0gc2VsZi5faGFuZGxlX2Vycm9yKGRyaXZlcl9vdXRwdXQpCiAgICAgICAg
IGV4cGVjdGVkX2RyaXZlcl9vdXRwdXQgPSBzZWxmLl9leHBlY3RlZF9kcml2ZXJfb3V0cHV0KCkK
IAogICAgICAgICAjIENoZWNrIHRoZSBvdXRwdXQgYW5kIHNhdmUgdGhlIHJlc3VsdHMuCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL2lt
YWdlX2RpZmYucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5
cGVzL2ltYWdlX2RpZmYucHkKaW5kZXggMGU2YmMxZmI0ZWIxZjJhZDdmNjE1MDE0NWVkODNlMGZj
YWQ5MGUzNS4uMWQ3ZTEwNzI0NzZkNDM2ZDRlOGQyMmFiYmM5MDg4Mzk3OTA2ZGZiYyAxMDA2NDQK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy9pbWFn
ZV9kaWZmLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3Rf
dHlwZXMvaW1hZ2VfZGlmZi5weQpAQCAtNDksMjMgKzQ5LDYgQEAgX2xvZyA9IGxvZ2dpbmcuZ2V0
TG9nZ2VyKCJ3ZWJraXRweS5sYXlvdXRfdGVzdHMudGVzdF90eXBlcy5pbWFnZV9kaWZmIikKIAog
Y2xhc3MgSW1hZ2VEaWZmKHRlc3RfdHlwZV9iYXNlLlRlc3RUeXBlQmFzZSk6CiAKLSAgICBkZWYg
X3NhdmVfYmFzZWxpbmVfZmlsZXMoc2VsZiwgZmlsZW5hbWUsIGltYWdlLCBpbWFnZV9oYXNoLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmUpOgotICAg
ICAgICAiIiJTYXZlcyBuZXcgYmFzZWxpbmVzIGZvciB0aGUgUE5HIGFuZCBjaGVja3N1bS4KLQot
ICAgICAgICBBcmdzOgotICAgICAgICAgIGZpbGVuYW1lOiB0ZXN0IGZpbGVuYW1lCi0gICAgICAg
ICAgaW1hZ2U6IGEgaW1hZ2Ugb3V0cHV0Ci0gICAgICAgICAgaW1hZ2VfaGFzaDogYSBjaGVja3N1
bSBvZiB0aGUgaW1hZ2UKLSAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU6IHdoZXRoZXIg
dG8gZ2VuZXJhdGUgYSBuZXcsIHBsYXRmb3JtLXNwZWNpZmljCi0gICAgICAgICAgICBiYXNlbGlu
ZSwgb3IgdXBkYXRlIHRoZSBleGlzdGluZyBvbmUKLSAgICAgICAgIiIiCi0gICAgICAgIHNlbGYu
X3NhdmVfYmFzZWxpbmVfZGF0YShmaWxlbmFtZSwgaW1hZ2UsICIucG5nIiwgZW5jb2Rpbmc9Tm9u
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNlbGlu
ZT1nZW5lcmF0ZV9uZXdfYmFzZWxpbmUpCi0gICAgICAgIHNlbGYuX3NhdmVfYmFzZWxpbmVfZGF0
YShmaWxlbmFtZSwgaW1hZ2VfaGFzaCwgIi5jaGVja3N1bSIsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbmNvZGluZz0iYXNjaWkiLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lPWdlbmVyYXRlX25ld19iYXNlbGluZSkKLQog
ICAgIGRlZiBfY29weV9pbWFnZShzZWxmLCBmaWxlbmFtZSwgYWN0dWFsX2ltYWdlLCBleHBlY3Rl
ZF9pbWFnZSk6CiAgICAgICAgIHNlbGYud3JpdGVfb3V0cHV0X2ZpbGVzKGZpbGVuYW1lLCAnLnBu
ZycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dD1hY3R1YWxfaW1hZ2Us
IGV4cGVjdGVkPWV4cGVjdGVkX2ltYWdlLApAQCAtOTYsMTMgKzc5LDYgQEAgY2xhc3MgSW1hZ2VE
aWZmKHRlc3RfdHlwZV9iYXNlLlRlc3RUeXBlQmFzZSk6CiAgICAgICAgIGlmIGFjdHVhbF9kcml2
ZXJfb3V0cHV0LmltYWdlX2hhc2ggaXMgTm9uZToKICAgICAgICAgICAgIHJldHVybiBmYWlsdXJl
cwogCi0gICAgICAgICMgSWYgd2UncmUgZ2VuZXJhdGluZyBhIG5ldyBiYXNlbGluZSwgd2UgcGFz
cy4KLSAgICAgICAgaWYgb3B0aW9ucy5uZXdfYmFzZWxpbmUgb3Igb3B0aW9ucy5yZXNldF9yZXN1
bHRzOgotICAgICAgICAgICAgc2VsZi5fc2F2ZV9iYXNlbGluZV9maWxlcyhmaWxlbmFtZSwgYWN0
dWFsX2RyaXZlcl9vdXRwdXQuaW1hZ2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGFjdHVhbF9kcml2ZXJfb3V0cHV0LmltYWdlX2hhc2gsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMubmV3X2Jhc2VsaW5lKQotICAgICAgICAgICAg
cmV0dXJuIGZhaWx1cmVzCi0KICAgICAgICAgaWYgbm90IGV4cGVjdGVkX2RyaXZlcl9vdXRwdXQu
aW1hZ2U6CiAgICAgICAgICAgICAjIFJlcG9ydCBhIG1pc3NpbmcgZXhwZWN0ZWQgUE5HIGZpbGUu
CiAgICAgICAgICAgICBzZWxmLl9jb3B5X2ltYWdlKGZpbGVuYW1lLCBhY3R1YWxfZHJpdmVyX291
dHB1dC5pbWFnZSwgZXhwZWN0ZWRfaW1hZ2U9Tm9uZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2UucHkgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL3Rlc3RfdHlwZV9i
YXNlLnB5CmluZGV4IDMyMjRmZjNjZDhlY2YyMjEzODYxZGU4YjUyMTViOWNhYjI4ODQ5MDEuLjA5
YmZjMzFjMTI5MDAzNWU5NzgxOTI3NDA2ZTIwYzI4MTRkNGI5M2QgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2Uu
cHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90
ZXN0X3R5cGVfYmFzZS5weQpAQCAtNzAsMzkgKzcwLDYgQEAgY2xhc3MgVGVzdFR5cGVCYXNlKG9i
amVjdCk6CiAgICAgICAgICAgICBzZWxmLl9wb3J0LnJlbGF0aXZlX3Rlc3RfZmlsZW5hbWUoZmls
ZW5hbWUpKQogICAgICAgICBmcy5tYXliZV9tYWtlX2RpcmVjdG9yeShmcy5kaXJuYW1lKG91dHB1
dF9maWxlbmFtZSkpCiAKLSAgICBkZWYgX3NhdmVfYmFzZWxpbmVfZGF0YShzZWxmLCBmaWxlbmFt
ZSwgZGF0YSwgbW9kaWZpZXIsIGVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGdlbmVyYXRlX25ld19iYXNlbGluZT1UcnVlKToKLSAgICAgICAgIiIiU2F2ZXMgYSBuZXcgYmFz
ZWxpbmUgZmlsZSBpbnRvIHRoZSBwb3J0J3MgYmFzZWxpbmUgZGlyZWN0b3J5LgotCi0gICAgICAg
IFRoZSBmaWxlIHdpbGwgYmUgbmFtZWQgc2ltcGx5ICI8dGVzdD4tZXhwZWN0ZWQ8bW9kaWZpZXI+
Iiwgc3VpdGFibGUgZm9yCi0gICAgICAgIHVzZSBhcyB0aGUgZXhwZWN0ZWQgcmVzdWx0cyBpbiBh
IGxhdGVyIHJ1bi4KLQotICAgICAgICBBcmdzOgotICAgICAgICAgIGZpbGVuYW1lOiBwYXRoIHRv
IHRoZSB0ZXN0IGZpbGUKLSAgICAgICAgICBkYXRhOiByZXN1bHQgdG8gYmUgc2F2ZWQgYXMgdGhl
IG5ldyBiYXNlbGluZQotICAgICAgICAgIG1vZGlmaWVyOiB0eXBlIG9mIHRoZSByZXN1bHQgZmls
ZSwgZS5nLiAiLnR4dCIgb3IgIi5wbmciCi0gICAgICAgICAgZW5jb2Rpbmc6IGZpbGUgZW5jb2Rp
bmcgKG5vbmUsICJ1dGYtOCIsIGV0Yy4pCi0gICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5l
OiB3aGV0aGVyIHRvIGVuZXJhdGUgYSBuZXcsIHBsYXRmb3JtLXNwZWNpZmljCi0gICAgICAgICAg
ICBiYXNlbGluZSwgb3IgdXBkYXRlIHRoZSBleGlzdGluZyBvbmUKLSAgICAgICAgIiIiCi0KLSAg
ICAgICAgcG9ydCA9IHNlbGYuX3BvcnQKLSAgICAgICAgZnMgPSBzZWxmLl9wb3J0Ll9maWxlc3lz
dGVtCi0gICAgICAgIGlmIGdlbmVyYXRlX25ld19iYXNlbGluZToKLSAgICAgICAgICAgIHJlbGF0
aXZlX2RpciA9IGZzLmRpcm5hbWUocG9ydC5yZWxhdGl2ZV90ZXN0X2ZpbGVuYW1lKGZpbGVuYW1l
KSkKLSAgICAgICAgICAgIGJhc2VsaW5lX3BhdGggPSBwb3J0LmJhc2VsaW5lX3BhdGgoKQotICAg
ICAgICAgICAgb3V0cHV0X2RpciA9IGZzLmpvaW4oYmFzZWxpbmVfcGF0aCwgcmVsYXRpdmVfZGly
KQotICAgICAgICAgICAgb3V0cHV0X2ZpbGUgPSBmcy5iYXNlbmFtZShmcy5zcGxpdGV4dChmaWxl
bmFtZSlbMF0gKwotICAgICAgICAgICAgICAgIHNlbGYuRklMRU5BTUVfU1VGRklYX0VYUEVDVEVE
ICsgbW9kaWZpZXIpCi0gICAgICAgICAgICBmcy5tYXliZV9tYWtlX2RpcmVjdG9yeShvdXRwdXRf
ZGlyKQotICAgICAgICAgICAgb3V0cHV0X3BhdGggPSBmcy5qb2luKG91dHB1dF9kaXIsIG91dHB1
dF9maWxlKQotICAgICAgICAgICAgX2xvZy5kZWJ1Zygnd3JpdGluZyBuZXcgYmFzZWxpbmUgcmVz
dWx0ICIlcyInICUgKG91dHB1dF9wYXRoKSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIG91
dHB1dF9wYXRoID0gcG9ydC5leHBlY3RlZF9maWxlbmFtZShmaWxlbmFtZSwgbW9kaWZpZXIpCi0g
ICAgICAgICAgICBfbG9nLmRlYnVnKCdyZXNldHRpbmcgYmFzZWxpbmUgcmVzdWx0ICIlcyInICUg
b3V0cHV0X3BhdGgpCi0KLSAgICAgICAgcG9ydC51cGRhdGVfYmFzZWxpbmUob3V0cHV0X3BhdGgs
IGRhdGEsIGVuY29kaW5nKQotCiAgICAgZGVmIG91dHB1dF9maWxlbmFtZShzZWxmLCBmaWxlbmFt
ZSwgbW9kaWZpZXIpOgogICAgICAgICAiIiJSZXR1cm5zIGEgZmlsZW5hbWUgaW5zaWRlIHRoZSBv
dXRwdXQgZGlyIHRoYXQgY29udGFpbnMgbW9kaWZpZXIuCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGV4dF9kaWZmLnB5IGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHkK
aW5kZXggM2JlZDc1Y2RjYjAwMjcyMGViZTI2ZTQ2NTQyMmE3ZTFjODVjNjk2Zi4uMDdjM2QwM2Zh
NTQ5NzE1YzRlMGU3YmIyNmVmYTU2NmUzZGY3ZWNmYiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHkKKysrIGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHkK
QEAgLTU5LDE2ICs1OSw2IEBAIGNsYXNzIFRlc3RUZXh0RGlmZih0ZXN0X3R5cGVfYmFzZS5UZXN0
VHlwZUJhc2UpOgogICAgICAgICB0aGUgZXhwZWN0ZWQgdGV4dCBmcm9tIHRoZSBMYXlvdXRUZXN0
IGRpcmVjdG9yeS4iIiIKICAgICAgICAgZmFpbHVyZXMgPSBbXQogCi0gICAgICAgICMgSWYgd2Un
cmUgZ2VuZXJhdGluZyBhIG5ldyBiYXNlbGluZSwgd2UgcGFzcy4KLSAgICAgICAgaWYgb3B0aW9u
cy5uZXdfYmFzZWxpbmUgb3Igb3B0aW9ucy5yZXNldF9yZXN1bHRzOgotICAgICAgICAgICAgIyBB
bHRob3VnaCBhbGwgdGVzdF9zaGVsbC9EdW1wUmVuZGVyVHJlZSBvdXRwdXQgc2hvdWxkIGJlIHV0
Zi04LAotICAgICAgICAgICAgIyB3ZSBkbyBub3QgZXZlciBkZWNvZGUgaXQgaW5zaWRlIHJ1bi13
ZWJraXQtdGVzdHMuICBGb3Igc29tZSB0ZXN0cwotICAgICAgICAgICAgIyBEdW1wUmVuZGVyVHJl
ZSBtYXkgbm90IG91dHB1dCB1dGYtOCB0ZXh0IChlLmcuIHdlYmFyY2hpdmVzKS4KLSAgICAgICAg
ICAgIHNlbGYuX3NhdmVfYmFzZWxpbmVfZGF0YShmaWxlbmFtZSwgYWN0dWFsX2RyaXZlcl9vdXRw
dXQudGV4dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLnR4dCIsIGVu
Y29kaW5nPU5vbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJh
dGVfbmV3X2Jhc2VsaW5lPW9wdGlvbnMubmV3X2Jhc2VsaW5lKQotICAgICAgICAgICAgcmV0dXJu
IGZhaWx1cmVzCi0KICAgICAgICAgIyBOb3JtYWxpemUgdGV4dCB0byBkaWZmCiAgICAgICAgIGFj
dHVhbF90ZXh0ID0gc2VsZi5fZ2V0X25vcm1hbGl6ZWRfb3V0cHV0X3RleHQoYWN0dWFsX2RyaXZl
cl9vdXRwdXQudGV4dCkKICAgICAgICAgIyBBc3N1bWluZyBleHBlY3RlZF90ZXh0IGlzIGFscmVh
ZHkgbm9ybWFsaXplZC4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81206</attachid>
            <date>2011-02-04 05:08:11 -0800</date>
            <delta_ts>2011-02-07 23:58:52 -0800</delta_ts>
            <desc>pull-up-rebaseline--for-review</desc>
            <filename>bug-53071-20110204220809.patch</filename>
            <type>text/plain</type>
            <size>12080</size>
            <attacher name="Hayato Ito">hayato</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA0NWRi
YzFhZTNhNzExMjQyNjAxYjViYzZiM2IxMzg0YjJhMTNlN2I3Li42ZDQ2MWI1NDM2NWZmZDY4NmVl
NDIyMDQwZWIwNzkxYzQ5ZWQ0NGY3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjEgQEAKIDIwMTEtMDItMDMgIEhheWF0byBJdG8g
IDxoYXlhdG9AY2hyb21pdW0ub3JnPgogCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFtOUldUXSBQdWxsIHVwIHJlYmFzZWxpbmUgY29kZSBmcm9tIGNvbXBh
cmVfb3V0cHV0KCkgZnVuY3Rpb24gZGVmaW5lZAorICAgICAgICBpbiB0ZXh0X2RpZmYucHkgYW5k
IGltYWdlX2RpZmYucHkgaW50byBhIFNpbmdsZVRlc3RSdW5uZXIuCisKKyAgICAgICAgVGhpcyBw
YXRjaCBpcyBhIGZpcnN0IHN0ZXAgZm9yIGVsaW1pbmF0aW5nIHRlc3RfdHlwZS8qIGNsYXNzZXMu
CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzMDcx
CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9sYXlvdXRfcGFja2Fn
ZS9zaW5nbGVfdGVzdF9ydW5uZXIucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvdGVzdF90eXBlcy9pbWFnZV9kaWZmLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2UucHk6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHk6
CisKKzIwMTEtMDItMDMgIEhheWF0byBJdG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgorCiAgICAg
ICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgogCiAgICAgICAgIFtOUldUXSBSZW1vdmUgVGVz
dEFyZ3MgY2xhc3MsIHdoaWNoIGlzIHdyb25nbHkgdXNlZC4KZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2xheW91dF9wYWNrYWdlL3NpbmdsZV90ZXN0X3J1
bm5lci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2xheW91dF9wYWNr
YWdlL3NpbmdsZV90ZXN0X3J1bm5lci5weQppbmRleCBkODQ2M2Q5YTRlODMyYWRjZTlhNTdlMjMw
MDVkOGFhYTg2NDJjMmNkLi4yYzRmNDBkMWNkOWU3YzlhNGJiYTYxYTM3MjA1M2QxNGVkNmVmZDVk
IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9sYXlvdXRf
cGFja2FnZS9zaW5nbGVfdGVzdF9ydW5uZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvbGF5b3V0X3BhY2thZ2Uvc2luZ2xlX3Rlc3RfcnVubmVyLnB5CkBAIC04
NSwyNiArODUsNjggQEAgY2xhc3MgU2luZ2xlVGVzdFJ1bm5lcjoKICAgICAgICAgcmV0dXJuIGJh
c2UuRHJpdmVySW5wdXQoc2VsZi5fZmlsZW5hbWUsIHNlbGYuX3RpbWVvdXQsIGltYWdlX2hhc2gp
CiAKICAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9vcHRpb25zLm5ld19iYXNl
bGluZSBvciBzZWxmLl9vcHRpb25zLnJlc2V0X3Jlc3VsdHM6CisgICAgICAgICAgICByZXR1cm4g
c2VsZi5fcnVuX3JlYmFzZWxpbmUoKQorICAgICAgICByZXR1cm4gc2VsZi5fcnVuX3Rlc3QoKQor
CisgICAgZGVmIF9ydW5fcmViYXNlbGluZShzZWxmKToKICAgICAgICAgZHJpdmVyX291dHB1dCA9
IHNlbGYuX2RyaXZlci5ydW5fdGVzdChzZWxmLl9kcml2ZXJfaW5wdXQoKSkKLSAgICAgICAgcmV0
dXJuIHNlbGYuX3Byb2Nlc3Nfb3V0cHV0KGRyaXZlcl9vdXRwdXQpCisgICAgICAgIHNlbGYuX3Nh
dmVfYmFzZWxpbmVzKGRyaXZlcl9vdXRwdXQpCisgICAgICAgIGZhaWx1cmVzID0gc2VsZi5faGFu
ZGxlX2Vycm9yKGRyaXZlcl9vdXRwdXQpCisgICAgICAgIHJldHVybiBUZXN0UmVzdWx0KHNlbGYu
X2ZpbGVuYW1lLCBmYWlsdXJlcywgZHJpdmVyX291dHB1dC50ZXN0X3RpbWUpCisKKyAgICBkZWYg
X3NhdmVfYmFzZWxpbmVzKHNlbGYsIGRyaXZlcl9vdXRwdXQpOgorICAgICAgICAjIEFsdGhvdWdo
IGFsbCB0ZXN0X3NoZWxsL0R1bXBSZW5kZXJUcmVlIG91dHB1dCBzaG91bGQgYmUgdXRmLTgsCisg
ICAgICAgICMgd2UgZG8gbm90IGV2ZXIgZGVjb2RlIGl0IGluc2lkZSBydW4td2Via2l0LXRlc3Rz
LiAgRm9yIHNvbWUgdGVzdHMKKyAgICAgICAgIyBEdW1wUmVuZGVyVHJlZSBtYXkgbm90IG91dHB1
dCB1dGYtOCB0ZXh0IChlLmcuIHdlYmFyY2hpdmVzKS4KKyAgICAgICAgc2VsZi5fc2F2ZV9iYXNl
bGluZV9kYXRhKGRyaXZlcl9vdXRwdXQudGV4dCwgIi50eHQiLCBlbmNvZGluZz1Ob25lLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lPXNlbGYu
X29wdGlvbnMubmV3X2Jhc2VsaW5lKQorICAgICAgICBpZiBzZWxmLl9vcHRpb25zLnBpeGVsX3Rl
c3RzIGFuZCBkcml2ZXJfb3V0cHV0LmltYWdlX2hhc2g6CisgICAgICAgICAgICBzZWxmLl9zYXZl
X2Jhc2VsaW5lX2RhdGEoZHJpdmVyX291dHB1dC5pbWFnZSwgIi5wbmciLCBlbmNvZGluZz1Ob25l
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNl
bGluZT1zZWxmLl9vcHRpb25zLm5ld19iYXNlbGluZSkKKyAgICAgICAgICAgIHNlbGYuX3NhdmVf
YmFzZWxpbmVfZGF0YShkcml2ZXJfb3V0cHV0LmltYWdlX2hhc2gsICIuY2hlY2tzdW0iLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nPSJhc2NpaSIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lPXNl
bGYuX29wdGlvbnMubmV3X2Jhc2VsaW5lKQorCisgICAgZGVmIF9zYXZlX2Jhc2VsaW5lX2RhdGEo
c2VsZiwgZGF0YSwgbW9kaWZpZXIsIGVuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGdlbmVyYXRlX25ld19iYXNlbGluZT1UcnVlKToKKyAgICAgICAgIiIiU2F2ZXMgYSBuZXcg
YmFzZWxpbmUgZmlsZSBpbnRvIHRoZSBwb3J0J3MgYmFzZWxpbmUgZGlyZWN0b3J5LgorCisgICAg
ICAgIFRoZSBmaWxlIHdpbGwgYmUgbmFtZWQgc2ltcGx5ICI8dGVzdD4tZXhwZWN0ZWQ8bW9kaWZp
ZXI+Iiwgc3VpdGFibGUgZm9yCisgICAgICAgIHVzZSBhcyB0aGUgZXhwZWN0ZWQgcmVzdWx0cyBp
biBhIGxhdGVyIHJ1bi4KIAotICAgIGRlZiBfcHJvY2Vzc19vdXRwdXQoc2VsZiwgZHJpdmVyX291
dHB1dCk6Ci0gICAgICAgICIiIlJlY2VpdmVzIHRoZSBvdXRwdXQgZnJvbSBhIER1bXBSZW5kZXJU
cmVlIHByb2Nlc3MsIHN1YmplY3RzIGl0IHRvIGEKLSAgICAgICAgbnVtYmVyIG9mIHRlc3RzLCBh
bmQgcmV0dXJucyBhIGxpc3Qgb2YgZmFpbHVyZSB0eXBlcyB0aGUgdGVzdCBwcm9kdWNlZC4KICAg
ICAgICAgQXJnczoKLSAgICAgICAgICBkcml2ZXJfb3V0cHV0OiBhIERyaXZlck91dHB1dCBvYmpl
Y3QgY29udGFpbmluZyB0aGUgb3V0cHV0IGZyb20gdGhlIGRyaXZlcgotCi0gICAgICAgIFJldHVy
bnM6IGEgVGVzdFJlc3VsdCBvYmplY3QKKyAgICAgICAgICBkYXRhOiByZXN1bHQgdG8gYmUgc2F2
ZWQgYXMgdGhlIG5ldyBiYXNlbGluZQorICAgICAgICAgIG1vZGlmaWVyOiB0eXBlIG9mIHRoZSBy
ZXN1bHQgZmlsZSwgZS5nLiAiLnR4dCIgb3IgIi5wbmciCisgICAgICAgICAgZW5jb2Rpbmc6IGZp
bGUgZW5jb2RpbmcgKG5vbmUsICJ1dGYtOCIsIGV0Yy4pCisgICAgICAgICAgZ2VuZXJhdGVfbmV3
X2Jhc2VsaW5lOiB3aGV0aGVyIHRvIGVuZXJhdGUgYSBuZXcsIHBsYXRmb3JtLXNwZWNpZmljCisg
ICAgICAgICAgICBiYXNlbGluZSwgb3IgdXBkYXRlIHRoZSBleGlzdGluZyBvbmUKICAgICAgICAg
IiIiCisKKyAgICAgICAgcG9ydCA9IHNlbGYuX3BvcnQKKyAgICAgICAgZnMgPSBwb3J0Ll9maWxl
c3lzdGVtCisgICAgICAgIGlmIGdlbmVyYXRlX25ld19iYXNlbGluZToKKyAgICAgICAgICAgIHJl
bGF0aXZlX2RpciA9IGZzLmRpcm5hbWUoc2VsZi5fdGVzdG5hbWUpCisgICAgICAgICAgICBiYXNl
bGluZV9wYXRoID0gcG9ydC5iYXNlbGluZV9wYXRoKCkKKyAgICAgICAgICAgIG91dHB1dF9kaXIg
PSBmcy5qb2luKGJhc2VsaW5lX3BhdGgsIHJlbGF0aXZlX2RpcikKKyAgICAgICAgICAgIG91dHB1
dF9maWxlID0gZnMuYmFzZW5hbWUoZnMuc3BsaXRleHQoc2VsZi5fZmlsZW5hbWUpWzBdICsKKyAg
ICAgICAgICAgICAgICAiLWV4cGVjdGVkIiArIG1vZGlmaWVyKQorICAgICAgICAgICAgZnMubWF5
YmVfbWFrZV9kaXJlY3Rvcnkob3V0cHV0X2RpcikKKyAgICAgICAgICAgIG91dHB1dF9wYXRoID0g
ZnMuam9pbihvdXRwdXRfZGlyLCBvdXRwdXRfZmlsZSkKKyAgICAgICAgICAgIF9sb2cuZGVidWco
J3dyaXRpbmcgbmV3IGJhc2VsaW5lIHJlc3VsdCAiJXMiJyAlIChvdXRwdXRfcGF0aCkpCisgICAg
ICAgIGVsc2U6CisgICAgICAgICAgICBvdXRwdXRfcGF0aCA9IHBvcnQuZXhwZWN0ZWRfZmlsZW5h
bWUoc2VsZi5fZmlsZW5hbWUsIG1vZGlmaWVyKQorICAgICAgICAgICAgX2xvZy5kZWJ1ZygncmVz
ZXR0aW5nIGJhc2VsaW5lIHJlc3VsdCAiJXMiJyAlIG91dHB1dF9wYXRoKQorCisgICAgICAgIHBv
cnQudXBkYXRlX2Jhc2VsaW5lKG91dHB1dF9wYXRoLCBkYXRhLCBlbmNvZGluZykKKworICAgIGRl
ZiBfaGFuZGxlX2Vycm9yKHNlbGYsIGRyaXZlcl9vdXRwdXQpOgogICAgICAgICBmYWlsdXJlcyA9
IFtdCiAgICAgICAgIGZzID0gc2VsZi5fcG9ydC5fZmlsZXN5c3RlbQotCi0gICAgICAgIGlmIGRy
aXZlcl9vdXRwdXQuY3Jhc2g6Ci0gICAgICAgICAgICBmYWlsdXJlcy5hcHBlbmQodGVzdF9mYWls
dXJlcy5GYWlsdXJlQ3Jhc2goKSkKICAgICAgICAgaWYgZHJpdmVyX291dHB1dC50aW1lb3V0Ogog
ICAgICAgICAgICAgZmFpbHVyZXMuYXBwZW5kKHRlc3RfZmFpbHVyZXMuRmFpbHVyZVRpbWVvdXQo
KSkKLQogICAgICAgICBpZiBkcml2ZXJfb3V0cHV0LmNyYXNoOgorICAgICAgICAgICAgZmFpbHVy
ZXMuYXBwZW5kKHRlc3RfZmFpbHVyZXMuRmFpbHVyZUNyYXNoKCkpCiAgICAgICAgICAgICBfbG9n
LmRlYnVnKCIlcyBTdGFja3RyYWNlIGZvciAlczpcbiVzIiAlIChzZWxmLl93b3JrZXJfbmFtZSwg
c2VsZi5fdGVzdG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBkcml2ZXJfb3V0cHV0LmVycm9yKSkKICAgICAgICAgICAgIHN0YWNrX2Zp
bGVuYW1lID0gZnMuam9pbihzZWxmLl9vcHRpb25zLnJlc3VsdHNfZGlyZWN0b3J5LCBzZWxmLl90
ZXN0bmFtZSkKQEAgLTExNCw3ICsxNTYsMjIgQEAgY2xhc3MgU2luZ2xlVGVzdFJ1bm5lcjoKICAg
ICAgICAgZWxpZiBkcml2ZXJfb3V0cHV0LmVycm9yOgogICAgICAgICAgICAgX2xvZy5kZWJ1Zygi
JXMgJXMgb3V0cHV0IHN0ZGVyciBsaW5lczpcbiVzIiAlIChzZWxmLl93b3JrZXJfbmFtZSwgc2Vs
Zi5fdGVzdG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGRyaXZlcl9vdXRwdXQuZXJyb3IpKQorICAgICAgICByZXR1cm4gZmFp
bHVyZXMKKworICAgIGRlZiBfcnVuX3Rlc3Qoc2VsZik6CisgICAgICAgIGRyaXZlcl9vdXRwdXQg
PSBzZWxmLl9kcml2ZXIucnVuX3Rlc3Qoc2VsZi5fZHJpdmVyX2lucHV0KCkpCisgICAgICAgIHJl
dHVybiBzZWxmLl9wcm9jZXNzX291dHB1dChkcml2ZXJfb3V0cHV0KQogCisgICAgZGVmIF9wcm9j
ZXNzX291dHB1dChzZWxmLCBkcml2ZXJfb3V0cHV0KToKKyAgICAgICAgIiIiUmVjZWl2ZXMgdGhl
IG91dHB1dCBmcm9tIGEgRHVtcFJlbmRlclRyZWUgcHJvY2Vzcywgc3ViamVjdHMgaXQgdG8gYQor
ICAgICAgICBudW1iZXIgb2YgdGVzdHMsIGFuZCByZXR1cm5zIGEgbGlzdCBvZiBmYWlsdXJlIHR5
cGVzIHRoZSB0ZXN0IHByb2R1Y2VkLgorICAgICAgICBBcmdzOgorICAgICAgICAgIGRyaXZlcl9v
dXRwdXQ6IGEgRHJpdmVyT3V0cHV0IG9iamVjdCBjb250YWluaW5nIHRoZSBvdXRwdXQgZnJvbSB0
aGUgZHJpdmVyCisKKyAgICAgICAgUmV0dXJuczogYSBUZXN0UmVzdWx0IG9iamVjdAorICAgICAg
ICAiIiIKKyAgICAgICAgZnMgPSBzZWxmLl9wb3J0Ll9maWxlc3lzdGVtCisgICAgICAgIGZhaWx1
cmVzID0gc2VsZi5faGFuZGxlX2Vycm9yKGRyaXZlcl9vdXRwdXQpCiAgICAgICAgIGV4cGVjdGVk
X2RyaXZlcl9vdXRwdXQgPSBzZWxmLl9leHBlY3RlZF9kcml2ZXJfb3V0cHV0KCkKIAogICAgICAg
ICAjIENoZWNrIHRoZSBvdXRwdXQgYW5kIHNhdmUgdGhlIHJlc3VsdHMuCmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL2ltYWdlX2RpZmYu
cHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL2ltYWdl
X2RpZmYucHkKaW5kZXggMGU2YmMxZmI0ZWIxZjJhZDdmNjE1MDE0NWVkODNlMGZjYWQ5MGUzNS4u
MWQ3ZTEwNzI0NzZkNDM2ZDRlOGQyMmFiYmM5MDg4Mzk3OTA2ZGZiYyAxMDA2NDQKLS0tIGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy9pbWFnZV9kaWZmLnB5
CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvaW1h
Z2VfZGlmZi5weQpAQCAtNDksMjMgKzQ5LDYgQEAgX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCJ3
ZWJraXRweS5sYXlvdXRfdGVzdHMudGVzdF90eXBlcy5pbWFnZV9kaWZmIikKIAogY2xhc3MgSW1h
Z2VEaWZmKHRlc3RfdHlwZV9iYXNlLlRlc3RUeXBlQmFzZSk6CiAKLSAgICBkZWYgX3NhdmVfYmFz
ZWxpbmVfZmlsZXMoc2VsZiwgZmlsZW5hbWUsIGltYWdlLCBpbWFnZV9oYXNoLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmUpOgotICAgICAgICAiIiJT
YXZlcyBuZXcgYmFzZWxpbmVzIGZvciB0aGUgUE5HIGFuZCBjaGVja3N1bS4KLQotICAgICAgICBB
cmdzOgotICAgICAgICAgIGZpbGVuYW1lOiB0ZXN0IGZpbGVuYW1lCi0gICAgICAgICAgaW1hZ2U6
IGEgaW1hZ2Ugb3V0cHV0Ci0gICAgICAgICAgaW1hZ2VfaGFzaDogYSBjaGVja3N1bSBvZiB0aGUg
aW1hZ2UKLSAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU6IHdoZXRoZXIgdG8gZ2VuZXJh
dGUgYSBuZXcsIHBsYXRmb3JtLXNwZWNpZmljCi0gICAgICAgICAgICBiYXNlbGluZSwgb3IgdXBk
YXRlIHRoZSBleGlzdGluZyBvbmUKLSAgICAgICAgIiIiCi0gICAgICAgIHNlbGYuX3NhdmVfYmFz
ZWxpbmVfZGF0YShmaWxlbmFtZSwgaW1hZ2UsICIucG5nIiwgZW5jb2Rpbmc9Tm9uZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNlbGluZT1nZW5lcmF0
ZV9uZXdfYmFzZWxpbmUpCi0gICAgICAgIHNlbGYuX3NhdmVfYmFzZWxpbmVfZGF0YShmaWxlbmFt
ZSwgaW1hZ2VfaGFzaCwgIi5jaGVja3N1bSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbmNvZGluZz0iYXNjaWkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z2VuZXJhdGVfbmV3X2Jhc2VsaW5lPWdlbmVyYXRlX25ld19iYXNlbGluZSkKLQogICAgIGRlZiBf
Y29weV9pbWFnZShzZWxmLCBmaWxlbmFtZSwgYWN0dWFsX2ltYWdlLCBleHBlY3RlZF9pbWFnZSk6
CiAgICAgICAgIHNlbGYud3JpdGVfb3V0cHV0X2ZpbGVzKGZpbGVuYW1lLCAnLnBuZycsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dD1hY3R1YWxfaW1hZ2UsIGV4cGVjdGVk
PWV4cGVjdGVkX2ltYWdlLApAQCAtOTYsMTMgKzc5LDYgQEAgY2xhc3MgSW1hZ2VEaWZmKHRlc3Rf
dHlwZV9iYXNlLlRlc3RUeXBlQmFzZSk6CiAgICAgICAgIGlmIGFjdHVhbF9kcml2ZXJfb3V0cHV0
LmltYWdlX2hhc2ggaXMgTm9uZToKICAgICAgICAgICAgIHJldHVybiBmYWlsdXJlcwogCi0gICAg
ICAgICMgSWYgd2UncmUgZ2VuZXJhdGluZyBhIG5ldyBiYXNlbGluZSwgd2UgcGFzcy4KLSAgICAg
ICAgaWYgb3B0aW9ucy5uZXdfYmFzZWxpbmUgb3Igb3B0aW9ucy5yZXNldF9yZXN1bHRzOgotICAg
ICAgICAgICAgc2VsZi5fc2F2ZV9iYXNlbGluZV9maWxlcyhmaWxlbmFtZSwgYWN0dWFsX2RyaXZl
cl9vdXRwdXQuaW1hZ2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFj
dHVhbF9kcml2ZXJfb3V0cHV0LmltYWdlX2hhc2gsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG9wdGlvbnMubmV3X2Jhc2VsaW5lKQotICAgICAgICAgICAgcmV0dXJuIGZh
aWx1cmVzCi0KICAgICAgICAgaWYgbm90IGV4cGVjdGVkX2RyaXZlcl9vdXRwdXQuaW1hZ2U6CiAg
ICAgICAgICAgICAjIFJlcG9ydCBhIG1pc3NpbmcgZXhwZWN0ZWQgUE5HIGZpbGUuCiAgICAgICAg
ICAgICBzZWxmLl9jb3B5X2ltYWdlKGZpbGVuYW1lLCBhY3R1YWxfZHJpdmVyX291dHB1dC5pbWFn
ZSwgZXhwZWN0ZWRfaW1hZ2U9Tm9uZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2UucHkgYi9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL3Rlc3RfdHlwZV9iYXNlLnB5Cmlu
ZGV4IDMyMjRmZjNjZDhlY2YyMjEzODYxZGU4YjUyMTViOWNhYjI4ODQ5MDEuLjA5YmZjMzFjMTI5
MDAzNWU5NzgxOTI3NDA2ZTIwYzI4MTRkNGI5M2QgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2UucHkKKysrIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXN0X3R5cGVf
YmFzZS5weQpAQCAtNzAsMzkgKzcwLDYgQEAgY2xhc3MgVGVzdFR5cGVCYXNlKG9iamVjdCk6CiAg
ICAgICAgICAgICBzZWxmLl9wb3J0LnJlbGF0aXZlX3Rlc3RfZmlsZW5hbWUoZmlsZW5hbWUpKQog
ICAgICAgICBmcy5tYXliZV9tYWtlX2RpcmVjdG9yeShmcy5kaXJuYW1lKG91dHB1dF9maWxlbmFt
ZSkpCiAKLSAgICBkZWYgX3NhdmVfYmFzZWxpbmVfZGF0YShzZWxmLCBmaWxlbmFtZSwgZGF0YSwg
bW9kaWZpZXIsIGVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRl
X25ld19iYXNlbGluZT1UcnVlKToKLSAgICAgICAgIiIiU2F2ZXMgYSBuZXcgYmFzZWxpbmUgZmls
ZSBpbnRvIHRoZSBwb3J0J3MgYmFzZWxpbmUgZGlyZWN0b3J5LgotCi0gICAgICAgIFRoZSBmaWxl
IHdpbGwgYmUgbmFtZWQgc2ltcGx5ICI8dGVzdD4tZXhwZWN0ZWQ8bW9kaWZpZXI+Iiwgc3VpdGFi
bGUgZm9yCi0gICAgICAgIHVzZSBhcyB0aGUgZXhwZWN0ZWQgcmVzdWx0cyBpbiBhIGxhdGVyIHJ1
bi4KLQotICAgICAgICBBcmdzOgotICAgICAgICAgIGZpbGVuYW1lOiBwYXRoIHRvIHRoZSB0ZXN0
IGZpbGUKLSAgICAgICAgICBkYXRhOiByZXN1bHQgdG8gYmUgc2F2ZWQgYXMgdGhlIG5ldyBiYXNl
bGluZQotICAgICAgICAgIG1vZGlmaWVyOiB0eXBlIG9mIHRoZSByZXN1bHQgZmlsZSwgZS5nLiAi
LnR4dCIgb3IgIi5wbmciCi0gICAgICAgICAgZW5jb2Rpbmc6IGZpbGUgZW5jb2RpbmcgKG5vbmUs
ICJ1dGYtOCIsIGV0Yy4pCi0gICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lOiB3aGV0aGVy
IHRvIGVuZXJhdGUgYSBuZXcsIHBsYXRmb3JtLXNwZWNpZmljCi0gICAgICAgICAgICBiYXNlbGlu
ZSwgb3IgdXBkYXRlIHRoZSBleGlzdGluZyBvbmUKLSAgICAgICAgIiIiCi0KLSAgICAgICAgcG9y
dCA9IHNlbGYuX3BvcnQKLSAgICAgICAgZnMgPSBzZWxmLl9wb3J0Ll9maWxlc3lzdGVtCi0gICAg
ICAgIGlmIGdlbmVyYXRlX25ld19iYXNlbGluZToKLSAgICAgICAgICAgIHJlbGF0aXZlX2RpciA9
IGZzLmRpcm5hbWUocG9ydC5yZWxhdGl2ZV90ZXN0X2ZpbGVuYW1lKGZpbGVuYW1lKSkKLSAgICAg
ICAgICAgIGJhc2VsaW5lX3BhdGggPSBwb3J0LmJhc2VsaW5lX3BhdGgoKQotICAgICAgICAgICAg
b3V0cHV0X2RpciA9IGZzLmpvaW4oYmFzZWxpbmVfcGF0aCwgcmVsYXRpdmVfZGlyKQotICAgICAg
ICAgICAgb3V0cHV0X2ZpbGUgPSBmcy5iYXNlbmFtZShmcy5zcGxpdGV4dChmaWxlbmFtZSlbMF0g
KwotICAgICAgICAgICAgICAgIHNlbGYuRklMRU5BTUVfU1VGRklYX0VYUEVDVEVEICsgbW9kaWZp
ZXIpCi0gICAgICAgICAgICBmcy5tYXliZV9tYWtlX2RpcmVjdG9yeShvdXRwdXRfZGlyKQotICAg
ICAgICAgICAgb3V0cHV0X3BhdGggPSBmcy5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlKQot
ICAgICAgICAgICAgX2xvZy5kZWJ1Zygnd3JpdGluZyBuZXcgYmFzZWxpbmUgcmVzdWx0ICIlcyIn
ICUgKG91dHB1dF9wYXRoKSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIG91dHB1dF9wYXRo
ID0gcG9ydC5leHBlY3RlZF9maWxlbmFtZShmaWxlbmFtZSwgbW9kaWZpZXIpCi0gICAgICAgICAg
ICBfbG9nLmRlYnVnKCdyZXNldHRpbmcgYmFzZWxpbmUgcmVzdWx0ICIlcyInICUgb3V0cHV0X3Bh
dGgpCi0KLSAgICAgICAgcG9ydC51cGRhdGVfYmFzZWxpbmUob3V0cHV0X3BhdGgsIGRhdGEsIGVu
Y29kaW5nKQotCiAgICAgZGVmIG91dHB1dF9maWxlbmFtZShzZWxmLCBmaWxlbmFtZSwgbW9kaWZp
ZXIpOgogICAgICAgICAiIiJSZXR1cm5zIGEgZmlsZW5hbWUgaW5zaWRlIHRoZSBvdXRwdXQgZGly
IHRoYXQgY29udGFpbnMgbW9kaWZpZXIuCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGV4dF9kaWZmLnB5IGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHkKaW5kZXggOGY2
MWRlNDM1ZjlkNjgwNTU2Nzc5NzlmMTlmYWRiYjRlMmVlYWM2Mi4uMDdjM2QwM2ZhNTQ5NzE1YzRl
MGU3YmIyNmVmYTU2NmUzZGY3ZWNmYiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHkKKysrIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHkKQEAgLTU5LDE2
ICs1OSw2IEBAIGNsYXNzIFRlc3RUZXh0RGlmZih0ZXN0X3R5cGVfYmFzZS5UZXN0VHlwZUJhc2Up
OgogICAgICAgICB0aGUgZXhwZWN0ZWQgdGV4dCBmcm9tIHRoZSBMYXlvdXRUZXN0IGRpcmVjdG9y
eS4iIiIKICAgICAgICAgZmFpbHVyZXMgPSBbXQogCi0gICAgICAgICMgSWYgd2UncmUgZ2VuZXJh
dGluZyBhIG5ldyBiYXNlbGluZSwgd2UgcGFzcy4KLSAgICAgICAgaWYgb3B0aW9ucy5uZXdfYmFz
ZWxpbmUgb3Igb3B0aW9ucy5yZXNldF9yZXN1bHRzOgotICAgICAgICAgICAgIyBBbHRob3VnaCBh
bGwgRHVtcFJlbmRlclRyZWUgb3V0cHV0IHNob3VsZCBiZSB1dGYtOCwgd2UgZG8gbm90Ci0gICAg
ICAgICAgICAjIGV2ZXIgZGVjb2RlIGl0IGluc2lkZSBydW4td2Via2l0LXRlc3RzLiAgRm9yIHNv
bWUgdGVzdHMKLSAgICAgICAgICAgICMgRHVtcFJlbmRlclRyZWUgbWF5IG5vdCBvdXRwdXQgdXRm
LTggdGV4dCAoZS5nLiAgd2ViYXJjaGl2ZXMpLgotICAgICAgICAgICAgc2VsZi5fc2F2ZV9iYXNl
bGluZV9kYXRhKGZpbGVuYW1lLCBhY3R1YWxfZHJpdmVyX291dHB1dC50ZXh0LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICIudHh0IiwgZW5jb2Rpbmc9Tm9uZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU9b3B0
aW9ucy5uZXdfYmFzZWxpbmUpCi0gICAgICAgICAgICByZXR1cm4gZmFpbHVyZXMKLQogICAgICAg
ICAjIE5vcm1hbGl6ZSB0ZXh0IHRvIGRpZmYKICAgICAgICAgYWN0dWFsX3RleHQgPSBzZWxmLl9n
ZXRfbm9ybWFsaXplZF9vdXRwdXRfdGV4dChhY3R1YWxfZHJpdmVyX291dHB1dC50ZXh0KQogICAg
ICAgICAjIEFzc3VtaW5nIGV4cGVjdGVkX3RleHQgaXMgYWxyZWFkeSBub3JtYWxpemVkLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81606</attachid>
            <date>2011-02-07 23:58:56 -0800</date>
            <delta_ts>2011-02-08 11:37:29 -0800</delta_ts>
            <desc>pull-up-rebaseline</desc>
            <filename>bug-53071-20110208165854.patch</filename>
            <type>text/plain</type>
            <size>12135</size>
            <attacher name="Hayato Ito">hayato</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkZTdm
MDIzMWVmMGQ3NDVkYjQ2MTg2OWFjYWFhN2VlNjZiMzFkOWQ1Li41NmU5MDJjODc3OWY0OWI2NDEy
NGNiYjVjMDMzZmIyMDVmM2U4ZjFhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDItMDMgIEhheWF0byBJdG8g
IDxoYXlhdG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFtOUldUXSBQdWxsIHVwIHJlYmFzZWxpbmUgY29kZSBmcm9tIGNvbXBh
cmVfb3V0cHV0KCkgZnVuY3Rpb24gZGVmaW5lZAorICAgICAgICBpbiB0ZXh0X2RpZmYucHkgYW5k
IGltYWdlX2RpZmYucHkgaW50byBhIFNpbmdsZVRlc3RSdW5uZXIuCisKKyAgICAgICAgVGhpcyBw
YXRjaCBpcyBhIGZpcnN0IHN0ZXAgZm9yIGVsaW1pbmF0aW5nIHRlc3RfdHlwZS8qIGNsYXNzZXMu
CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzMDcx
CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9sYXlvdXRfcGFja2Fn
ZS9zaW5nbGVfdGVzdF9ydW5uZXIucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvdGVzdF90eXBlcy9pbWFnZV9kaWZmLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jhc2UucHk6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXh0X2RpZmYucHk6
CisKIDIwMTEtMDItMDMgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbGF5b3V0X3BhY2thZ2Uvc2luZ2xlX3Rlc3RfcnVubmVy
LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbGF5b3V0X3BhY2thZ2Uv
c2luZ2xlX3Rlc3RfcnVubmVyLnB5CmluZGV4IGQ4NDYzZDlhNGU4MzJhZGNlOWE1N2UyMzAwNWQ4
YWFhODY0MmMyY2QuLmQ5Y2I5MWRiZTM1ZDA3ZTJlMzNlNzU2MTcwMzI2YzRiN2FlOTUwOWUgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2xheW91dF9wYWNr
YWdlL3NpbmdsZV90ZXN0X3J1bm5lci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9sYXlvdXRfcGFja2FnZS9zaW5nbGVfdGVzdF9ydW5uZXIucHkKQEAgLTg1LDI2
ICs4NSw3MCBAQCBjbGFzcyBTaW5nbGVUZXN0UnVubmVyOgogICAgICAgICByZXR1cm4gYmFzZS5E
cml2ZXJJbnB1dChzZWxmLl9maWxlbmFtZSwgc2VsZi5fdGltZW91dCwgaW1hZ2VfaGFzaCkKIAog
ICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGlmIHNlbGYuX29wdGlvbnMubmV3X2Jhc2VsaW5l
IG9yIHNlbGYuX29wdGlvbnMucmVzZXRfcmVzdWx0czoKKyAgICAgICAgICAgIHJldHVybiBzZWxm
Ll9ydW5fcmViYXNlbGluZSgpCisgICAgICAgIHJldHVybiBzZWxmLl9ydW5fdGVzdCgpCisKKyAg
ICBkZWYgX3J1bl9yZWJhc2VsaW5lKHNlbGYpOgogICAgICAgICBkcml2ZXJfb3V0cHV0ID0gc2Vs
Zi5fZHJpdmVyLnJ1bl90ZXN0KHNlbGYuX2RyaXZlcl9pbnB1dCgpKQotICAgICAgICByZXR1cm4g
c2VsZi5fcHJvY2Vzc19vdXRwdXQoZHJpdmVyX291dHB1dCkKKyAgICAgICAgZmFpbHVyZXMgPSBz
ZWxmLl9oYW5kbGVfZXJyb3IoZHJpdmVyX291dHB1dCkKKyAgICAgICAgIyBGSVhNRTogSXQgdGhl
IHRlc3QgY3Jhc2hlZCBvciB0aW1lZCBvdXQsIGl0IG1pZ2h0IGJlIGJldHR0ZXIgdG8gYXZvaWQK
KyAgICAgICAgIyB0byB3cml0ZSBuZXcgYmFzZWxpbmVzLgorICAgICAgICBzZWxmLl9zYXZlX2Jh
c2VsaW5lcyhkcml2ZXJfb3V0cHV0KQorICAgICAgICByZXR1cm4gVGVzdFJlc3VsdChzZWxmLl9m
aWxlbmFtZSwgZmFpbHVyZXMsIGRyaXZlcl9vdXRwdXQudGVzdF90aW1lKQorCisgICAgZGVmIF9z
YXZlX2Jhc2VsaW5lcyhzZWxmLCBkcml2ZXJfb3V0cHV0KToKKyAgICAgICAgIyBBbHRob3VnaCBh
bGwgdGVzdF9zaGVsbC9EdW1wUmVuZGVyVHJlZSBvdXRwdXQgc2hvdWxkIGJlIHV0Zi04LAorICAg
ICAgICAjIHdlIGRvIG5vdCBldmVyIGRlY29kZSBpdCBpbnNpZGUgcnVuLXdlYmtpdC10ZXN0cy4g
IEZvciBzb21lIHRlc3RzCisgICAgICAgICMgRHVtcFJlbmRlclRyZWUgbWF5IG5vdCBvdXRwdXQg
dXRmLTggdGV4dCAoZS5nLiB3ZWJhcmNoaXZlcykuCisgICAgICAgIHNlbGYuX3NhdmVfYmFzZWxp
bmVfZGF0YShkcml2ZXJfb3V0cHV0LnRleHQsICIudHh0IiwgZW5jb2Rpbmc9Tm9uZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNlbGluZT1zZWxmLl9v
cHRpb25zLm5ld19iYXNlbGluZSkKKyAgICAgICAgaWYgc2VsZi5fb3B0aW9ucy5waXhlbF90ZXN0
cyBhbmQgZHJpdmVyX291dHB1dC5pbWFnZV9oYXNoOgorICAgICAgICAgICAgc2VsZi5fc2F2ZV9i
YXNlbGluZV9kYXRhKGRyaXZlcl9vdXRwdXQuaW1hZ2UsICIucG5nIiwgZW5jb2Rpbmc9Tm9uZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxp
bmU9c2VsZi5fb3B0aW9ucy5uZXdfYmFzZWxpbmUpCisgICAgICAgICAgICBzZWxmLl9zYXZlX2Jh
c2VsaW5lX2RhdGEoZHJpdmVyX291dHB1dC5pbWFnZV9oYXNoLCAiLmNoZWNrc3VtIiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZz0iYXNjaWkiLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNlbGluZT1zZWxm
Ll9vcHRpb25zLm5ld19iYXNlbGluZSkKKworICAgIGRlZiBfc2F2ZV9iYXNlbGluZV9kYXRhKHNl
bGYsIGRhdGEsIG1vZGlmaWVyLCBlbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU9VHJ1ZSk6CisgICAgICAgICIiIlNhdmVzIGEgbmV3IGJh
c2VsaW5lIGZpbGUgaW50byB0aGUgcG9ydCdzIGJhc2VsaW5lIGRpcmVjdG9yeS4KKworICAgICAg
ICBUaGUgZmlsZSB3aWxsIGJlIG5hbWVkIHNpbXBseSAiPHRlc3Q+LWV4cGVjdGVkPG1vZGlmaWVy
PiIsIHN1aXRhYmxlIGZvcgorICAgICAgICB1c2UgYXMgdGhlIGV4cGVjdGVkIHJlc3VsdHMgaW4g
YSBsYXRlciBydW4uCiAKLSAgICBkZWYgX3Byb2Nlc3Nfb3V0cHV0KHNlbGYsIGRyaXZlcl9vdXRw
dXQpOgotICAgICAgICAiIiJSZWNlaXZlcyB0aGUgb3V0cHV0IGZyb20gYSBEdW1wUmVuZGVyVHJl
ZSBwcm9jZXNzLCBzdWJqZWN0cyBpdCB0byBhCi0gICAgICAgIG51bWJlciBvZiB0ZXN0cywgYW5k
IHJldHVybnMgYSBsaXN0IG9mIGZhaWx1cmUgdHlwZXMgdGhlIHRlc3QgcHJvZHVjZWQuCiAgICAg
ICAgIEFyZ3M6Ci0gICAgICAgICAgZHJpdmVyX291dHB1dDogYSBEcml2ZXJPdXRwdXQgb2JqZWN0
IGNvbnRhaW5pbmcgdGhlIG91dHB1dCBmcm9tIHRoZSBkcml2ZXIKLQotICAgICAgICBSZXR1cm5z
OiBhIFRlc3RSZXN1bHQgb2JqZWN0CisgICAgICAgICAgZGF0YTogcmVzdWx0IHRvIGJlIHNhdmVk
IGFzIHRoZSBuZXcgYmFzZWxpbmUKKyAgICAgICAgICBtb2RpZmllcjogdHlwZSBvZiB0aGUgcmVz
dWx0IGZpbGUsIGUuZy4gIi50eHQiIG9yICIucG5nIgorICAgICAgICAgIGVuY29kaW5nOiBmaWxl
IGVuY29kaW5nIChub25lLCAidXRmLTgiLCBldGMuKQorICAgICAgICAgIGdlbmVyYXRlX25ld19i
YXNlbGluZTogd2hldGhlciB0byBlbmVyYXRlIGEgbmV3LCBwbGF0Zm9ybS1zcGVjaWZpYworICAg
ICAgICAgICAgYmFzZWxpbmUsIG9yIHVwZGF0ZSB0aGUgZXhpc3Rpbmcgb25lCiAgICAgICAgICIi
IgorCisgICAgICAgIHBvcnQgPSBzZWxmLl9wb3J0CisgICAgICAgIGZzID0gcG9ydC5fZmlsZXN5
c3RlbQorICAgICAgICBpZiBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU6CisgICAgICAgICAgICByZWxh
dGl2ZV9kaXIgPSBmcy5kaXJuYW1lKHNlbGYuX3Rlc3RuYW1lKQorICAgICAgICAgICAgYmFzZWxp
bmVfcGF0aCA9IHBvcnQuYmFzZWxpbmVfcGF0aCgpCisgICAgICAgICAgICBvdXRwdXRfZGlyID0g
ZnMuam9pbihiYXNlbGluZV9wYXRoLCByZWxhdGl2ZV9kaXIpCisgICAgICAgICAgICBvdXRwdXRf
ZmlsZSA9IGZzLmJhc2VuYW1lKGZzLnNwbGl0ZXh0KHNlbGYuX2ZpbGVuYW1lKVswXSArCisgICAg
ICAgICAgICAgICAgIi1leHBlY3RlZCIgKyBtb2RpZmllcikKKyAgICAgICAgICAgIGZzLm1heWJl
X21ha2VfZGlyZWN0b3J5KG91dHB1dF9kaXIpCisgICAgICAgICAgICBvdXRwdXRfcGF0aCA9IGZz
LmpvaW4ob3V0cHV0X2Rpciwgb3V0cHV0X2ZpbGUpCisgICAgICAgICAgICBfbG9nLmRlYnVnKCd3
cml0aW5nIG5ldyBiYXNlbGluZSByZXN1bHQgIiVzIicgJSAob3V0cHV0X3BhdGgpKQorICAgICAg
ICBlbHNlOgorICAgICAgICAgICAgb3V0cHV0X3BhdGggPSBwb3J0LmV4cGVjdGVkX2ZpbGVuYW1l
KHNlbGYuX2ZpbGVuYW1lLCBtb2RpZmllcikKKyAgICAgICAgICAgIF9sb2cuZGVidWcoJ3Jlc2V0
dGluZyBiYXNlbGluZSByZXN1bHQgIiVzIicgJSBvdXRwdXRfcGF0aCkKKworICAgICAgICBwb3J0
LnVwZGF0ZV9iYXNlbGluZShvdXRwdXRfcGF0aCwgZGF0YSwgZW5jb2RpbmcpCisKKyAgICBkZWYg
X2hhbmRsZV9lcnJvcihzZWxmLCBkcml2ZXJfb3V0cHV0KToKICAgICAgICAgZmFpbHVyZXMgPSBb
XQogICAgICAgICBmcyA9IHNlbGYuX3BvcnQuX2ZpbGVzeXN0ZW0KLQotICAgICAgICBpZiBkcml2
ZXJfb3V0cHV0LmNyYXNoOgotICAgICAgICAgICAgZmFpbHVyZXMuYXBwZW5kKHRlc3RfZmFpbHVy
ZXMuRmFpbHVyZUNyYXNoKCkpCiAgICAgICAgIGlmIGRyaXZlcl9vdXRwdXQudGltZW91dDoKICAg
ICAgICAgICAgIGZhaWx1cmVzLmFwcGVuZCh0ZXN0X2ZhaWx1cmVzLkZhaWx1cmVUaW1lb3V0KCkp
Ci0KICAgICAgICAgaWYgZHJpdmVyX291dHB1dC5jcmFzaDoKKyAgICAgICAgICAgIGZhaWx1cmVz
LmFwcGVuZCh0ZXN0X2ZhaWx1cmVzLkZhaWx1cmVDcmFzaCgpKQogICAgICAgICAgICAgX2xvZy5k
ZWJ1ZygiJXMgU3RhY2t0cmFjZSBmb3IgJXM6XG4lcyIgJSAoc2VsZi5fd29ya2VyX25hbWUsIHNl
bGYuX3Rlc3RuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZHJpdmVyX291dHB1dC5lcnJvcikpCiAgICAgICAgICAgICBzdGFja19maWxl
bmFtZSA9IGZzLmpvaW4oc2VsZi5fb3B0aW9ucy5yZXN1bHRzX2RpcmVjdG9yeSwgc2VsZi5fdGVz
dG5hbWUpCkBAIC0xMTQsNyArMTU4LDIyIEBAIGNsYXNzIFNpbmdsZVRlc3RSdW5uZXI6CiAgICAg
ICAgIGVsaWYgZHJpdmVyX291dHB1dC5lcnJvcjoKICAgICAgICAgICAgIF9sb2cuZGVidWcoIiVz
ICVzIG91dHB1dCBzdGRlcnIgbGluZXM6XG4lcyIgJSAoc2VsZi5fd29ya2VyX25hbWUsIHNlbGYu
X3Rlc3RuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBkcml2ZXJfb3V0cHV0LmVycm9yKSkKKyAgICAgICAgcmV0dXJuIGZhaWx1
cmVzCisKKyAgICBkZWYgX3J1bl90ZXN0KHNlbGYpOgorICAgICAgICBkcml2ZXJfb3V0cHV0ID0g
c2VsZi5fZHJpdmVyLnJ1bl90ZXN0KHNlbGYuX2RyaXZlcl9pbnB1dCgpKQorICAgICAgICByZXR1
cm4gc2VsZi5fcHJvY2Vzc19vdXRwdXQoZHJpdmVyX291dHB1dCkKIAorICAgIGRlZiBfcHJvY2Vz
c19vdXRwdXQoc2VsZiwgZHJpdmVyX291dHB1dCk6CisgICAgICAgICIiIlJlY2VpdmVzIHRoZSBv
dXRwdXQgZnJvbSBhIER1bXBSZW5kZXJUcmVlIHByb2Nlc3MsIHN1YmplY3RzIGl0IHRvIGEKKyAg
ICAgICAgbnVtYmVyIG9mIHRlc3RzLCBhbmQgcmV0dXJucyBhIGxpc3Qgb2YgZmFpbHVyZSB0eXBl
cyB0aGUgdGVzdCBwcm9kdWNlZC4KKyAgICAgICAgQXJnczoKKyAgICAgICAgICBkcml2ZXJfb3V0
cHV0OiBhIERyaXZlck91dHB1dCBvYmplY3QgY29udGFpbmluZyB0aGUgb3V0cHV0IGZyb20gdGhl
IGRyaXZlcgorCisgICAgICAgIFJldHVybnM6IGEgVGVzdFJlc3VsdCBvYmplY3QKKyAgICAgICAg
IiIiCisgICAgICAgIGZzID0gc2VsZi5fcG9ydC5fZmlsZXN5c3RlbQorICAgICAgICBmYWlsdXJl
cyA9IHNlbGYuX2hhbmRsZV9lcnJvcihkcml2ZXJfb3V0cHV0KQogICAgICAgICBleHBlY3RlZF9k
cml2ZXJfb3V0cHV0ID0gc2VsZi5fZXhwZWN0ZWRfZHJpdmVyX291dHB1dCgpCiAKICAgICAgICAg
IyBDaGVjayB0aGUgb3V0cHV0IGFuZCBzYXZlIHRoZSByZXN1bHRzLgpkaWZmIC0tZ2l0IGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy9pbWFnZV9kaWZmLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy9pbWFnZV9k
aWZmLnB5CmluZGV4IDBlNmJjMWZiNGViMWYyYWQ3ZjYxNTAxNDVlZDgzZTBmY2FkOTBlMzUuLjFk
N2UxMDcyNDc2ZDQzNmQ0ZThkMjJhYmJjOTA4ODM5NzkwNmRmYmMgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvaW1hZ2VfZGlmZi5weQor
KysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL2ltYWdl
X2RpZmYucHkKQEAgLTQ5LDIzICs0OSw2IEBAIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dlcigid2Vi
a2l0cHkubGF5b3V0X3Rlc3RzLnRlc3RfdHlwZXMuaW1hZ2VfZGlmZiIpCiAKIGNsYXNzIEltYWdl
RGlmZih0ZXN0X3R5cGVfYmFzZS5UZXN0VHlwZUJhc2UpOgogCi0gICAgZGVmIF9zYXZlX2Jhc2Vs
aW5lX2ZpbGVzKHNlbGYsIGZpbGVuYW1lLCBpbWFnZSwgaW1hZ2VfaGFzaCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lKToKLSAgICAgICAgIiIiU2F2
ZXMgbmV3IGJhc2VsaW5lcyBmb3IgdGhlIFBORyBhbmQgY2hlY2tzdW0uCi0KLSAgICAgICAgQXJn
czoKLSAgICAgICAgICBmaWxlbmFtZTogdGVzdCBmaWxlbmFtZQotICAgICAgICAgIGltYWdlOiBh
IGltYWdlIG91dHB1dAotICAgICAgICAgIGltYWdlX2hhc2g6IGEgY2hlY2tzdW0gb2YgdGhlIGlt
YWdlCi0gICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lOiB3aGV0aGVyIHRvIGdlbmVyYXRl
IGEgbmV3LCBwbGF0Zm9ybS1zcGVjaWZpYwotICAgICAgICAgICAgYmFzZWxpbmUsIG9yIHVwZGF0
ZSB0aGUgZXhpc3Rpbmcgb25lCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLl9zYXZlX2Jhc2Vs
aW5lX2RhdGEoZmlsZW5hbWUsIGltYWdlLCAiLnBuZyIsIGVuY29kaW5nPU5vbmUsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU9Z2VuZXJhdGVf
bmV3X2Jhc2VsaW5lKQotICAgICAgICBzZWxmLl9zYXZlX2Jhc2VsaW5lX2RhdGEoZmlsZW5hbWUs
IGltYWdlX2hhc2gsICIuY2hlY2tzdW0iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZW5jb2Rpbmc9ImFzY2lpIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdl
bmVyYXRlX25ld19iYXNlbGluZT1nZW5lcmF0ZV9uZXdfYmFzZWxpbmUpCi0KICAgICBkZWYgX2Nv
cHlfaW1hZ2Uoc2VsZiwgZmlsZW5hbWUsIGFjdHVhbF9pbWFnZSwgZXhwZWN0ZWRfaW1hZ2UpOgog
ICAgICAgICBzZWxmLndyaXRlX291dHB1dF9maWxlcyhmaWxlbmFtZSwgJy5wbmcnLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQ9YWN0dWFsX2ltYWdlLCBleHBlY3RlZD1l
eHBlY3RlZF9pbWFnZSwKQEAgLTk2LDEzICs3OSw2IEBAIGNsYXNzIEltYWdlRGlmZih0ZXN0X3R5
cGVfYmFzZS5UZXN0VHlwZUJhc2UpOgogICAgICAgICBpZiBhY3R1YWxfZHJpdmVyX291dHB1dC5p
bWFnZV9oYXNoIGlzIE5vbmU6CiAgICAgICAgICAgICByZXR1cm4gZmFpbHVyZXMKIAotICAgICAg
ICAjIElmIHdlJ3JlIGdlbmVyYXRpbmcgYSBuZXcgYmFzZWxpbmUsIHdlIHBhc3MuCi0gICAgICAg
IGlmIG9wdGlvbnMubmV3X2Jhc2VsaW5lIG9yIG9wdGlvbnMucmVzZXRfcmVzdWx0czoKLSAgICAg
ICAgICAgIHNlbGYuX3NhdmVfYmFzZWxpbmVfZmlsZXMoZmlsZW5hbWUsIGFjdHVhbF9kcml2ZXJf
b3V0cHV0LmltYWdlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3R1
YWxfZHJpdmVyX291dHB1dC5pbWFnZV9oYXNoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBvcHRpb25zLm5ld19iYXNlbGluZSkKLSAgICAgICAgICAgIHJldHVybiBmYWls
dXJlcwotCiAgICAgICAgIGlmIG5vdCBleHBlY3RlZF9kcml2ZXJfb3V0cHV0LmltYWdlOgogICAg
ICAgICAgICAgIyBSZXBvcnQgYSBtaXNzaW5nIGV4cGVjdGVkIFBORyBmaWxlLgogICAgICAgICAg
ICAgc2VsZi5fY29weV9pbWFnZShmaWxlbmFtZSwgYWN0dWFsX2RyaXZlcl9vdXRwdXQuaW1hZ2Us
IGV4cGVjdGVkX2ltYWdlPU5vbmUpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL3Rlc3RfdHlwZV9iYXNlLnB5IGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvdGVzdF90eXBlcy90ZXN0X3R5cGVfYmFzZS5weQppbmRl
eCAzMjI0ZmYzY2Q4ZWNmMjIxMzg2MWRlOGI1MjE1YjljYWIyODg0OTAxLi4wOWJmYzMxYzEyOTAw
MzVlOTc4MTkyNzQwNmUyMGMyODE0ZDRiOTNkIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL3Rlc3RfdHlwZV9iYXNlLnB5CisrKyBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGVzdF90eXBlX2Jh
c2UucHkKQEAgLTcwLDM5ICs3MCw2IEBAIGNsYXNzIFRlc3RUeXBlQmFzZShvYmplY3QpOgogICAg
ICAgICAgICAgc2VsZi5fcG9ydC5yZWxhdGl2ZV90ZXN0X2ZpbGVuYW1lKGZpbGVuYW1lKSkKICAg
ICAgICAgZnMubWF5YmVfbWFrZV9kaXJlY3RvcnkoZnMuZGlybmFtZShvdXRwdXRfZmlsZW5hbWUp
KQogCi0gICAgZGVmIF9zYXZlX2Jhc2VsaW5lX2RhdGEoc2VsZiwgZmlsZW5hbWUsIGRhdGEsIG1v
ZGlmaWVyLCBlbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9u
ZXdfYmFzZWxpbmU9VHJ1ZSk6Ci0gICAgICAgICIiIlNhdmVzIGEgbmV3IGJhc2VsaW5lIGZpbGUg
aW50byB0aGUgcG9ydCdzIGJhc2VsaW5lIGRpcmVjdG9yeS4KLQotICAgICAgICBUaGUgZmlsZSB3
aWxsIGJlIG5hbWVkIHNpbXBseSAiPHRlc3Q+LWV4cGVjdGVkPG1vZGlmaWVyPiIsIHN1aXRhYmxl
IGZvcgotICAgICAgICB1c2UgYXMgdGhlIGV4cGVjdGVkIHJlc3VsdHMgaW4gYSBsYXRlciBydW4u
Ci0KLSAgICAgICAgQXJnczoKLSAgICAgICAgICBmaWxlbmFtZTogcGF0aCB0byB0aGUgdGVzdCBm
aWxlCi0gICAgICAgICAgZGF0YTogcmVzdWx0IHRvIGJlIHNhdmVkIGFzIHRoZSBuZXcgYmFzZWxp
bmUKLSAgICAgICAgICBtb2RpZmllcjogdHlwZSBvZiB0aGUgcmVzdWx0IGZpbGUsIGUuZy4gIi50
eHQiIG9yICIucG5nIgotICAgICAgICAgIGVuY29kaW5nOiBmaWxlIGVuY29kaW5nIChub25lLCAi
dXRmLTgiLCBldGMuKQotICAgICAgICAgIGdlbmVyYXRlX25ld19iYXNlbGluZTogd2hldGhlciB0
byBlbmVyYXRlIGEgbmV3LCBwbGF0Zm9ybS1zcGVjaWZpYwotICAgICAgICAgICAgYmFzZWxpbmUs
IG9yIHVwZGF0ZSB0aGUgZXhpc3Rpbmcgb25lCi0gICAgICAgICIiIgotCi0gICAgICAgIHBvcnQg
PSBzZWxmLl9wb3J0Ci0gICAgICAgIGZzID0gc2VsZi5fcG9ydC5fZmlsZXN5c3RlbQotICAgICAg
ICBpZiBnZW5lcmF0ZV9uZXdfYmFzZWxpbmU6Ci0gICAgICAgICAgICByZWxhdGl2ZV9kaXIgPSBm
cy5kaXJuYW1lKHBvcnQucmVsYXRpdmVfdGVzdF9maWxlbmFtZShmaWxlbmFtZSkpCi0gICAgICAg
ICAgICBiYXNlbGluZV9wYXRoID0gcG9ydC5iYXNlbGluZV9wYXRoKCkKLSAgICAgICAgICAgIG91
dHB1dF9kaXIgPSBmcy5qb2luKGJhc2VsaW5lX3BhdGgsIHJlbGF0aXZlX2RpcikKLSAgICAgICAg
ICAgIG91dHB1dF9maWxlID0gZnMuYmFzZW5hbWUoZnMuc3BsaXRleHQoZmlsZW5hbWUpWzBdICsK
LSAgICAgICAgICAgICAgICBzZWxmLkZJTEVOQU1FX1NVRkZJWF9FWFBFQ1RFRCArIG1vZGlmaWVy
KQotICAgICAgICAgICAgZnMubWF5YmVfbWFrZV9kaXJlY3Rvcnkob3V0cHV0X2RpcikKLSAgICAg
ICAgICAgIG91dHB1dF9wYXRoID0gZnMuam9pbihvdXRwdXRfZGlyLCBvdXRwdXRfZmlsZSkKLSAg
ICAgICAgICAgIF9sb2cuZGVidWcoJ3dyaXRpbmcgbmV3IGJhc2VsaW5lIHJlc3VsdCAiJXMiJyAl
IChvdXRwdXRfcGF0aCkpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBvdXRwdXRfcGF0aCA9
IHBvcnQuZXhwZWN0ZWRfZmlsZW5hbWUoZmlsZW5hbWUsIG1vZGlmaWVyKQotICAgICAgICAgICAg
X2xvZy5kZWJ1ZygncmVzZXR0aW5nIGJhc2VsaW5lIHJlc3VsdCAiJXMiJyAlIG91dHB1dF9wYXRo
KQotCi0gICAgICAgIHBvcnQudXBkYXRlX2Jhc2VsaW5lKG91dHB1dF9wYXRoLCBkYXRhLCBlbmNv
ZGluZykKLQogICAgIGRlZiBvdXRwdXRfZmlsZW5hbWUoc2VsZiwgZmlsZW5hbWUsIG1vZGlmaWVy
KToKICAgICAgICAgIiIiUmV0dXJucyBhIGZpbGVuYW1lIGluc2lkZSB0aGUgb3V0cHV0IGRpciB0
aGF0IGNvbnRhaW5zIG1vZGlmaWVyLgogCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy90ZXN0X3R5cGVzL3RleHRfZGlmZi5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGV4dF9kaWZmLnB5CmluZGV4IDhmNjFk
ZTQzNWY5ZDY4MDU1Njc3OTc5ZjE5ZmFkYmI0ZTJlZWFjNjIuLjA3YzNkMDNmYTU0OTcxNWM0ZTBl
N2JiMjZlZmE1NjZlM2RmN2VjZmIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGV4dF9kaWZmLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Rlc3RfdHlwZXMvdGV4dF9kaWZmLnB5CkBAIC01OSwxNiAr
NTksNiBAQCBjbGFzcyBUZXN0VGV4dERpZmYodGVzdF90eXBlX2Jhc2UuVGVzdFR5cGVCYXNlKToK
ICAgICAgICAgdGhlIGV4cGVjdGVkIHRleHQgZnJvbSB0aGUgTGF5b3V0VGVzdCBkaXJlY3Rvcnku
IiIiCiAgICAgICAgIGZhaWx1cmVzID0gW10KIAotICAgICAgICAjIElmIHdlJ3JlIGdlbmVyYXRp
bmcgYSBuZXcgYmFzZWxpbmUsIHdlIHBhc3MuCi0gICAgICAgIGlmIG9wdGlvbnMubmV3X2Jhc2Vs
aW5lIG9yIG9wdGlvbnMucmVzZXRfcmVzdWx0czoKLSAgICAgICAgICAgICMgQWx0aG91Z2ggYWxs
IER1bXBSZW5kZXJUcmVlIG91dHB1dCBzaG91bGQgYmUgdXRmLTgsIHdlIGRvIG5vdAotICAgICAg
ICAgICAgIyBldmVyIGRlY29kZSBpdCBpbnNpZGUgcnVuLXdlYmtpdC10ZXN0cy4gIEZvciBzb21l
IHRlc3RzCi0gICAgICAgICAgICAjIER1bXBSZW5kZXJUcmVlIG1heSBub3Qgb3V0cHV0IHV0Zi04
IHRleHQgKGUuZy4gIHdlYmFyY2hpdmVzKS4KLSAgICAgICAgICAgIHNlbGYuX3NhdmVfYmFzZWxp
bmVfZGF0YShmaWxlbmFtZSwgYWN0dWFsX2RyaXZlcl9vdXRwdXQudGV4dCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAiLnR4dCIsIGVuY29kaW5nPU5vbmUsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfbmV3X2Jhc2VsaW5lPW9wdGlv
bnMubmV3X2Jhc2VsaW5lKQotICAgICAgICAgICAgcmV0dXJuIGZhaWx1cmVzCi0KICAgICAgICAg
IyBOb3JtYWxpemUgdGV4dCB0byBkaWZmCiAgICAgICAgIGFjdHVhbF90ZXh0ID0gc2VsZi5fZ2V0
X25vcm1hbGl6ZWRfb3V0cHV0X3RleHQoYWN0dWFsX2RyaXZlcl9vdXRwdXQudGV4dCkKICAgICAg
ICAgIyBBc3N1bWluZyBleHBlY3RlZF90ZXh0IGlzIGFscmVhZHkgbm9ybWFsaXplZC4K
</data>
<flag name="review"
          id="73212"
          type_id="1"
          status="+"
          setter="tony"
    />
          </attachment>
      

    </bug>

</bugzilla>