<?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>90409</bug_id>
          
          <creation_ts>2012-07-02 15:48:13 -0700</creation_ts>
          <short_desc>nrwt: make the worker class stand alone with a cleaner interface</short_desc>
          <delta_ts>2012-07-03 16:32:39 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>90408</dependson>
          <blocked>89725</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Pranke">dpranke</reporter>
          <assigned_to name="Dirk Pranke">dpranke</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>ojan</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>661781</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-07-02 15:48:13 -0700</bug_when>
    <thetext>nrwt: make the worker class stand alone with a cleaner interface</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>661789</commentid>
    <comment_count>1</comment_count>
      <attachid>150491</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-07-02 15:54:59 -0700</bug_when>
    <thetext>Created attachment 150491
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>662506</commentid>
    <comment_count>2</comment_count>
      <attachid>150491</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-07-03 15:17:39 -0700</bug_when>
    <thetext>Comment on attachment 150491
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/controllers/worker.py:64
&gt;      def safe_init(self):

I know you&apos;re not defining this method now, but this name doesn&apos;t match what it does to me. I would think &quot;safe&quot; would mean we can call it whenever we want, but it actually means we can only call it if the object doesn&apos;t need to be pickled. Should we just call this init_unpicklable_state? It&apos;s kinda verbose, but it&apos;s much more clear what it&apos;s doing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>662507</commentid>
    <comment_count>3</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-07-03 15:19:06 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 150491 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=150491&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/controllers/worker.py:64
&gt; &gt;      def safe_init(self):
&gt; 
&gt; I know you&apos;re not defining this method now, but this name doesn&apos;t match what it does to me. I would think &quot;safe&quot; would mean we can call it whenever we want, but it actually means we can only call it if the object doesn&apos;t need to be pickled. Should we just call this init_unpicklable_state? It&apos;s kinda verbose, but it&apos;s much more clear what it&apos;s doing.

It is a crappy name. In a later patch it gets renamed to &quot;start&quot; (and cleanup to &quot;stop&quot;), which I think is actually a clearer indication of its use.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>662560</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-07-03 16:32:39 -0700</bug_when>
    <thetext>Committed r121809: &lt;http://trac.webkit.org/changeset/121809&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>150491</attachid>
            <date>2012-07-02 15:54:59 -0700</date>
            <delta_ts>2012-07-03 15:17:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-90409-20120702155458.patch</filename>
            <type>text/plain</type>
            <size>15459</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIxNTE0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYWQyMDFiYTAyMmYyZjM2ZjA4MWZlNjZjNDliYmQwMTQx
NzJmZmUyOS4uZGMwM2Y4ZGEwZjQwNDU5ZTVmYWIzMzBmZDllMzUzNzZjMjk5ZmUwMiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDY5
IEBACiAyMDEyLTA3LTAyICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgogCisg
ICAgICAgIG5yd3Q6IG1ha2UgdGhlIHdvcmtlciBjbGFzcyBzdGFuZCBhbG9uZSB3aXRoIGEgY2xl
YW5lciBpbnRlcmZhY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTkwNDA5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQ3VycmVudGx5IHRoZSBXb3JrZXIgY2xhc3MgZGVyaXZlcyBmcm9tIEFic3RyYWN0V29y
a2VyLCB3aGljaCBpcworICAgICAgICBraW5kIG9mIGNydWZ0eSBhbmQgYXdrd2FyZDsgaXQgd291
bGQgYmUgYmV0dGVyIGlmIHdlIGRpZCBub3QKKyAgICAgICAgcmVseSBvbiBzaGFyZWQgc3RhdGUu
CisKKyAgICAgICAgVGhpcyBjaGFuZ2UgY2hhbmdlcyB0aGF0IHNvIHRoYXQgV29ya2VyIGRlcml2
ZXMgZnJvbSBvYmplY3QsIGFuZAorICAgICAgICBleHBvc2VzIHRoZSBmb2xsb3dpbmcgaW50ZXJm
YWNlOgorICAgICAgICAgIF9faW5pdF9fKCkgLSBjYWxsZWQgaW4gdGhlIG1hbmFnZXIgcHJvY2Vz
cworICAgICAgICAgIHNhZmVfaW5pdCgpIC0gY2FsbGVkIGluIHRoZSB3b3JrZXIgcHJvY2VzcyB0
byBpbml0aWFsaXplCisgICAgICAgICAgICB1bnBpY2tsYWJsZSBzdGF0ZQorICAgICAgICAgIGhh
bmRsZSgpIC0gYSBzaW5nbGUgcm91dGluZSB0byBoYW5kbGUgYWxsIG1lc3NhZ2VzCisgICAgICAg
ICAgY2xlYW51cCgpIC0gY2FsbGVkIHNvIHRoZSB3b3JrZXIgY2FuIGNsZWFuIHVwCisKKyAgICAg
ICAgQWxzbywgYWxsIG9mIHRoZSAiYWRtaW5pc3RyYXRpdmUiIG1lc3NhZ2VzIHRoYXQgYXJlIGhh
bmRsZWQgYnkKKyAgICAgICAgdGhlIHdvcmtlciAobm90aWZpY2F0aW9uIG9mIHN0YXJ0L3N0b3Av
ZXRjLikgbW92ZSBpbnRvCisgICAgICAgIG1hbmFnZXJfd29ya2VyX2Jyb2tlciAtIHRoaXMgcmVk
dWNlcyB3b3JrZXIucHkgdG8ganVzdCBoYW5kbGluZworICAgICAgICB0aGUgbWVjaGFuaWNzIG9m
IGFjdHVhbGx5IHJ1bm5pbmcgZWFjaCB0ZXN0LgorCisgICAgICAgIEZvciB0aGUgbW9tZW50LCB3
ZSBkbyB0aGlzIGJ5IGNyZWF0aW5nIFlldCBBbm90aGVyIHdyYXBwZXIvcHJveHkKKyAgICAgICAg
Y2xhc3MgaW4gbWFuYWdlcl93b3JrZXJfYnJva2VyLCBidXQgdGhpcyB3aWxsIGdldCBzaW1wbGVy
CisgICAgICAgIHNob3J0bHkgd2hlbiB0aGUgcmVzdCBvZiBtX3dfYiBpcyBjbGVhbmVkIHVwLgor
CisgICAgICAgIFdpdGggdGhpcyBjaGFuZ2Ugd29ya2VyIGlzIG5vdyBpbiBpdHMgbmV3IGZvcm0g
YnV0IHRoZXJlIHdpbGwgYmUKKyAgICAgICAgYSBmb2xsb3ctb24gY2hhbmdlIHRoYXQgY2xlYW5z
IHVwIHNvbWUgbmFtZXMgYW5kIG90aGVyIG1pbm9yCisgICAgICAgIHRoaW5ncy4KKworICAgICAg
ICBUaGlzIGNoYW5nZSBpcyBhZ2FpbiBtb3N0bHkganVzdCBtb3ZpbmcgdGhpbmdzIGFyb3VuZCBh
bmQgc2hvdWxkCisgICAgICAgIGJlIGNvdmVyZWQgYnkgdGhlICh1cGRhdGVkKSBleGlzdGluZyB0
ZXN0cy4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xs
ZXJzL21hbmFnZXJfd29ya2VyX2Jyb2tlci5weToKKyAgICAgICAgKGdldCk6CisgICAgICAgIChB
YnN0cmFjdFdvcmtlci5fX2luaXRfXyk6CisgICAgICAgIChBYnN0cmFjdFdvcmtlci5ydW4pOgor
ICAgICAgICAoQWJzdHJhY3RXb3JrZXIpOgorICAgICAgICAoQWJzdHJhY3RXb3JrZXIuaGFuZGxl
X3N0b3ApOgorICAgICAgICAoQWJzdHJhY3RXb3JrZXIuaGFuZGxlX3Rlc3RfbGlzdCk6CisgICAg
ICAgIChBYnN0cmFjdFdvcmtlci55aWVsZF90b19icm9rZXIpOgorICAgICAgICAoQWJzdHJhY3RX
b3JrZXIucG9zdF9tZXNzYWdlKToKKyAgICAgICAgKF9Xb3JrZXJDb25uZWN0aW9uLl9faW5pdF9f
KToKKyAgICAgICAgKF9Qcm9jZXNzLnJ1bik6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdlcl93b3JrZXJfYnJva2VyX3VuaXR0ZXN0LnB5
OgorICAgICAgICAoX1Rlc3RXb3JrZXIpOgorICAgICAgICAoX1Rlc3RXb3JrZXIuX19pbml0X18p
OgorICAgICAgICAoX1Rlc3RXb3JrZXIubmFtZSk6CisgICAgICAgIChfVGVzdFdvcmtlci5jbGVh
bnVwKToKKyAgICAgICAgKF9UZXN0V29ya2VyLmhhbmRsZSk6CisgICAgICAgIChfVGVzdFdvcmtl
ci5zYWZlX2luaXQpOgorICAgICAgICAoX1Rlc3RXb3JrZXIuc3RvcCk6CisgICAgICAgIChfVGVz
dHNNaXhpbi5oYW5kbGVfZmluaXNoZWRfdGVzdCk6CisgICAgICAgIChfVGVzdHNNaXhpbi5zZXRV
cCk6CisgICAgICAgIChfVGVzdHNNaXhpbi50ZXN0X2NhbmNlbCk6CisgICAgICAgIChfVGVzdHNN
aXhpbi50ZXN0X2RvbmUpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L2NvbnRyb2xsZXJzL3dvcmtlci5weToKKyAgICAgICAgKFdvcmtlcik6CisgICAgICAgIChXb3Jr
ZXIuX19pbml0X18pOgorICAgICAgICAoV29ya2VyLnNhZmVfaW5pdCk6CisgICAgICAgIChXb3Jr
ZXIuaGFuZGxlKToKKworMjAxMi0wNy0wMiAgRGlyayBQcmFua2UgIDxkcHJhbmtlQGNocm9taXVt
Lm9yZz4KKwogICAgICAgICBucnd0OiBtb3ZpbmcgY2hpbGQgcHJvY2VzcyBsb2dnaW5nIGNvZGUg
aW50byBtYW5hZ2VyX3dvcmtlcl9icm9rZXIKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTkwNDA4CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXJfd29ya2VyX2Jyb2tlci5weSBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXJf
d29ya2VyX2Jyb2tlci5weQppbmRleCA3OTBkZjkzMTMyMTcwYWVlOGUxNDBhNDM4OTJjNWQyMTRh
NzhmM2U2Li43ZTgzMzg0NjBhYjYzZDA3ZTA1Mzc4MWY3YTIyNmRhZTIyOTc1MjM4IDEwMDc1NQot
LS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9tYW5h
Z2VyX3dvcmtlcl9icm9rZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvY29udHJvbGxlcnMvbWFuYWdlcl93b3JrZXJfYnJva2VyLnB5CkBAIC03NSw2ICs3NSw3
IEBAIGltcG9ydCBzeXMKIGltcG9ydCB0cmFjZWJhY2sKIAogCitmcm9tIHdlYmtpdHB5LmNvbW1v
bi5ob3N0IGltcG9ydCBIb3N0CiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0gaW1wb3J0IHN0
YWNrX3V0aWxzCiBmcm9tIHdlYmtpdHB5LmxheW91dF90ZXN0cy52aWV3cyBpbXBvcnQgbWV0ZXJl
ZF9zdHJlYW0KIApAQCAtOTYsNyArOTcsNyBAQCBkZWYgZ2V0KG1heF93b3JrZXJzLCBjbGllbnQs
IHdvcmtlcl9mYWN0b3J5LCBob3N0PU5vbmUpOgogICAgICAgICBtYXhfd29ya2VycyAtIG1heCAj
IG9mIHdvcmtlcnMgdG8gcnVuIGNvbmN1cnJlbnRseS4KICAgICAgICAgY2xpZW50IC0gQnJva2Vy
Q2xpZW50IGltcGxlbWVudGF0aW9uIHRvIGRpc3BhdGNoCiAgICAgICAgICAgICByZXBsaWVzIHRv
LgotICAgICAgICB3b3JrZXJfZmFjdG9yeTogZmFjdG9yeSBtZXRob2QgZm9yIGNyZWF0aW4gb2Jq
ZWN0cyB0aGF0IGltcGxlbWVudCB0aGUgQWJzdHJhY3RXb3JrZXIgaW50ZXJmYWNlLgorICAgICAg
ICB3b3JrZXJfZmFjdG9yeTogZmFjdG9yeSBtZXRob2QgZm9yIGNyZWF0aW5nIG9iamVjdHMgdGhh
dCBpbXBsZW1lbnQgdGhlIFdvcmtlciBpbnRlcmZhY2UuCiAgICAgICAgIGhvc3Q6IG9wdGlvbmFs
IHBpY2tsYWJsZSBob3N0IG9iamVjdCB0aGF0IGNhbiBiZSBwYXNzZWQgdG8gd29ya2VycyBmb3Ig
dGVzdGluZy4KICAgICBSZXR1cm5zOgogICAgICAgICBBIGhhbmRsZSB0byBhbiBvYmplY3QgdGhh
dCB3aWxsIHRhbGsgdG8gYSBtZXNzYWdlIGJyb2tlciBjb25maWd1cmVkCkBAIC0yNjMsMjMgKzI2
NCwxNSBAQCBjbGFzcyBfQnJva2VyQ29ubmVjdGlvbihvYmplY3QpOgogCiBjbGFzcyBBYnN0cmFj
dFdvcmtlcihCcm9rZXJDbGllbnQpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB3b3JrZXJfY29u
bmVjdGlvbiwgd29ya2VyX251bWJlcik6Ci0gICAgICAgICIiIlRoZSBjb25zdHJ1Y3RvciBzaG91
bGQgYmUgdXNlZCB0byBkbyBhbnkgc2ltcGxlIGluaXRpYWxpemF0aW9uCi0gICAgICAgIG5lY2Vz
c2FyeSwgYnV0IHNob3VsZCBub3QgZG8gYW55dGhpbmcgdGhhdCBjcmVhdGVzIGRhdGEgc3RydWN0
dXJlcwotICAgICAgICB0aGF0IGNhbm5vdCBiZSBQaWNrbGVkIG9yIHNlbnQgYWNyb3NzIHByb2Nl
c3NlcyAobGlrZSBvcGVuaW5nCi0gICAgICAgIGZpbGVzIG9yIHNvY2tldHMpLiBDb21wbGV4IGlu
aXRpYWxpemF0aW9uIHNob3VsZCBiZSBkb25lIGF0IHRoZQotICAgICAgICBzdGFydCBvZiB0aGUg
cnVuKCkgY2FsbC4KLQotICAgICAgICBBcmdzOgotICAgICAgICAgICAgd29ya2VyX2Nvbm5lY3Rp
b24gLSBoYW5kbGUgdG8gdGhlIF9Ccm9rZXJDb25uZWN0aW9uIG9iamVjdCBjcmVhdGluZwotICAg
ICAgICAgICAgICAgIHRoZSB3b3JrZXIgYW5kIHRoYXQgY2FuIGJlIHVzZWQgZm9yIG1lc3NhZ2lu
Zy4KLSAgICAgICAgICAgIHdvcmtlcl9udW1iZXIgLSB0aGUgbnVtYmVyL2luZGV4IG9mIHRoZSBj
dXJyZW50IHdvcmtlci4iIiIKICAgICAgICAgQnJva2VyQ2xpZW50Ll9faW5pdF9fKHNlbGYpCisg
ICAgICAgIHNlbGYud29ya2VyID0gTm9uZQogICAgICAgICBzZWxmLl93b3JrZXJfY29ubmVjdGlv
biA9IHdvcmtlcl9jb25uZWN0aW9uCiAgICAgICAgIHNlbGYuX3dvcmtlcl9udW1iZXIgPSB3b3Jr
ZXJfbnVtYmVyCiAgICAgICAgIHNlbGYuX25hbWUgPSAnd29ya2VyLyVkJyAlIHdvcmtlcl9udW1i
ZXIKICAgICAgICAgc2VsZi5fZG9uZSA9IEZhbHNlCiAgICAgICAgIHNlbGYuX2NhbmNlbGVkID0g
RmFsc2UKICAgICAgICAgc2VsZi5fb3B0aW9ucyA9IG9wdHBhcnNlLlZhbHVlcyh7J3ZlcmJvc2Un
OiBGYWxzZX0pCisgICAgICAgIHNlbGYuaG9zdCA9IE5vbmUKIAogICAgIGRlZiBuYW1lKHNlbGYp
OgogICAgICAgICByZXR1cm4gc2VsZi5fbmFtZQpAQCAtMjkwLDEwICsyODMsMTQgQEAgY2xhc3Mg
QWJzdHJhY3RXb3JrZXIoQnJva2VyQ2xpZW50KToKICAgICBkZWYgc3RvcF9oYW5kbGluZ19tZXNz
YWdlcyhzZWxmKToKICAgICAgICAgc2VsZi5fZG9uZSA9IFRydWUKIAotICAgIGRlZiBydW4oc2Vs
Zik6CisgICAgZGVmIHJ1bihzZWxmLCBob3N0KToKICAgICAgICAgIiIiQ2FsbGJhY2sgZm9yIHRo
ZSB3b3JrZXIgdG8gc3RhcnQgZXhlY3V0aW5nLiBUeXBpY2FsbHkgZG9lcyBhbnkKICAgICAgICAg
cmVtYWluaW5nIGluaXRpYWxpemF0aW9uIGFuZCB0aGVuIGNhbGxzIGJyb2tlcl9jb25uZWN0aW9u
LnJ1bl9tZXNzYWdlX2xvb3AoKS4iIiIKICAgICAgICAgZXhjZXB0aW9uX21zZyA9ICIiCisgICAg
ICAgIHNlbGYuaG9zdCA9IGhvc3QKKworICAgICAgICBzZWxmLndvcmtlci5zYWZlX2luaXQoKQor
ICAgICAgICBfbG9nLmRlYnVnKCclcyBzdGFydGluZycgJSBzZWxmLl9uYW1lKQogCiAgICAgICAg
IHRyeToKICAgICAgICAgICAgIHNlbGYuX3dvcmtlcl9jb25uZWN0aW9uLnJ1bl9tZXNzYWdlX2xv
b3AoKQpAQCAtMzA4LDYgKzMwNSwxNCBAQCBjbGFzcyBBYnN0cmFjdFdvcmtlcihCcm9rZXJDbGll
bnQpOgogICAgICAgICAgICAgc2VsZi5fd29ya2VyX2Nvbm5lY3Rpb24ucmFpc2VfZXhjZXB0aW9u
KHN5cy5leGNfaW5mbygpKQogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgX2xvZy5kZWJ1
ZygiJXMgZG9uZSB3aXRoIG1lc3NhZ2UgbG9vcCVzIiAlIChzZWxmLl9uYW1lLCBleGNlcHRpb25f
bXNnKSkKKyAgICAgICAgICAgIHNlbGYud29ya2VyLmNsZWFudXAoKQorICAgICAgICAgICAgc2Vs
Zi5fd29ya2VyX2Nvbm5lY3Rpb24ucG9zdF9tZXNzYWdlKCdkb25lJykKKworICAgIGRlZiBoYW5k
bGVfc3RvcChzZWxmLCBzb3VyY2UpOgorICAgICAgICBzZWxmLl9kb25lID0gVHJ1ZQorCisgICAg
ZGVmIGhhbmRsZV90ZXN0X2xpc3Qoc2VsZiwgc291cmNlLCBsaXN0X25hbWUsIHRlc3RfbGlzdCk6
CisgICAgICAgIHNlbGYud29ya2VyLmhhbmRsZSgndGVzdF9saXN0Jywgc291cmNlLCBsaXN0X25h
bWUsIHRlc3RfbGlzdCkKIAogICAgIGRlZiBjYW5jZWwoc2VsZik6CiAgICAgICAgICIiIkNhbGxl
ZCB3aGVuIHBvc3NpYmxlIHRvIGluZGljYXRlIHRvIHRoZSB3b3JrZXIgdG8gc3RvcCBwcm9jZXNz
aW5nCkBAIC0zMTUsNiArMzIwLDEyIEBAIGNsYXNzIEFic3RyYWN0V29ya2VyKEJyb2tlckNsaWVu
dCk6CiAgICAgICAgIG1ldGhvZCBiZWluZyBjYWxsZWQsIHNvIGNsaWVudHMgc2hvdWxkIG5vdCBy
ZWx5IHNvbGVseSBvbiB0aGlzLiIiIgogICAgICAgICBzZWxmLl9jYW5jZWxlZCA9IFRydWUKIAor
ICAgIGRlZiB5aWVsZF90b19icm9rZXIoc2VsZik6CisgICAgICAgIHNlbGYuX3dvcmtlcl9jb25u
ZWN0aW9uLnlpZWxkX3RvX2Jyb2tlcigpCisKKyAgICBkZWYgcG9zdF9tZXNzYWdlKHNlbGYsICph
cmdzKToKKyAgICAgICAgc2VsZi5fd29ya2VyX2Nvbm5lY3Rpb24ucG9zdF9tZXNzYWdlKCphcmdz
KQorCiAKIGNsYXNzIF9NYW5hZ2VyQ29ubmVjdGlvbihfQnJva2VyQ29ubmVjdGlvbik6CiAgICAg
ZGVmIF9faW5pdF9fKHNlbGYsIGJyb2tlciwgY2xpZW50LCB3b3JrZXJfZmFjdG9yeSwgaG9zdCk6
CkBAIC0zNjIsNyArMzczLDEyIEBAIGNsYXNzIF9NdWx0aVByb2Nlc3NNYW5hZ2VyKF9NYW5hZ2Vy
Q29ubmVjdGlvbik6CiAKIGNsYXNzIF9Xb3JrZXJDb25uZWN0aW9uKF9Ccm9rZXJDb25uZWN0aW9u
KToKICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdCwgYnJva2VyLCB3b3JrZXJfZmFjdG9yeSwg
d29ya2VyX251bWJlcik6Ci0gICAgICAgIHNlbGYuX2NsaWVudCA9IHdvcmtlcl9mYWN0b3J5KHNl
bGYsIHdvcmtlcl9udW1iZXIpCisgICAgICAgICMgRklYTUU6IGtlZXBpbmcgdHJhY2sgb2YgdGhl
IGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIFdvcmtlckNvbm5lY3Rpb24sIHRoZSBBYnN0cmFjdFdv
cmtlciwgYW5kIHRoZQorICAgICAgICAjIGFjdHVhbCBXb3JrZXIgKGNyZWF0ZWQgYnkgd29ya2Vy
X2ZhY3RvcnkpIGlzIHZlcnkgY29uZnVzaW5nLCBidXQgdGhpcyBhbGwgZ2V0cyBiZXR0ZXIgd2hl
bgorICAgICAgICAjIF9Xb3JrZXJDb25uZWN0aW9uIGFuZCBBYnN0cmFjdFdvcmtlciBnZXQgbWVy
Z2VkLgorICAgICAgICBzZWxmLl9jbGllbnQgPSBBYnN0cmFjdFdvcmtlcihzZWxmLCB3b3JrZXJf
bnVtYmVyKQorICAgICAgICBzZWxmLl93b3JrZXIgPSB3b3JrZXJfZmFjdG9yeShzZWxmLl9jbGll
bnQsIHdvcmtlcl9udW1iZXIpCisgICAgICAgIHNlbGYuX2NsaWVudC53b3JrZXIgPSBzZWxmLl93
b3JrZXIKICAgICAgICAgc2VsZi5faG9zdCA9IGhvc3QKICAgICAgICAgc2VsZi5fbG9nX21lc3Nh
Z2VzID0gW10KICAgICAgICAgc2VsZi5fbG9nZ2VyID0gTm9uZQpAQCAtNDUxLDYgKzQ2Nyw4IEBA
IGNsYXNzIF9Qcm9jZXNzKG11bHRpcHJvY2Vzc2luZy5Qcm9jZXNzKToKICAgICAgICAgc2VsZi5f
Y2xpZW50ID0gY2xpZW50CiAKICAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2Vs
Zi5fd29ya2VyX2Nvbm5lY3Rpb24uX2hvc3Q6CisgICAgICAgICAgICBzZWxmLl93b3JrZXJfY29u
bmVjdGlvbi5faG9zdCA9IEhvc3QoKQogICAgICAgICBzZWxmLl93b3JrZXJfY29ubmVjdGlvbi5y
dW4oKQogCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L2NvbnRyb2xsZXJzL21hbmFnZXJfd29ya2VyX2Jyb2tlcl91bml0dGVzdC5weSBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXJfd29ya2VyX2Jy
b2tlcl91bml0dGVzdC5weQppbmRleCBmOGJlMDdiYWYxMDc0NDFjNzA0NjhiMzZjZjU2Yzg4MWVl
ZTk0YmEwLi5kN2MzNzE0ZDhkZDkxYTQxNWQ3OWE1NmU2ZjI1ODk5OTM4NDNmMmNlIDEwMDY0NAot
LS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9tYW5h
Z2VyX3dvcmtlcl9icm9rZXJfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdlcl93b3JrZXJfYnJva2VyX3VuaXR0ZXN0
LnB5CkBAIC01NCwzMSArNTQsMzQgQEAgZGVmIG1ha2VfYnJva2VyKG1hbmFnZXIsIG1heF93b3Jr
ZXJzLCBzdGFydF9xdWV1ZT1Ob25lLCBzdG9wX3F1ZXVlPU5vbmUpOgogICAgIHJldHVybiBtYW5h
Z2VyX3dvcmtlcl9icm9rZXIuZ2V0KG1heF93b3JrZXJzLCBtYW5hZ2VyLCBfVGVzdFdvcmtlcikK
IAogCi1jbGFzcyBfVGVzdFdvcmtlcihtYW5hZ2VyX3dvcmtlcl9icm9rZXIuQWJzdHJhY3RXb3Jr
ZXIpOgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCB3b3JrZXJfY29ubmVjdGlvbiwgd29ya2VyX251
bWJlcj0xKToKLSAgICAgICAgc3VwZXIoX1Rlc3RXb3JrZXIsIHNlbGYpLl9faW5pdF9fKHdvcmtl
cl9jb25uZWN0aW9uLCB3b3JrZXJfbnVtYmVyKQorY2xhc3MgX1Rlc3RXb3JrZXIob2JqZWN0KToK
KyAgICBkZWYgX19pbml0X18oc2VsZiwgY2FsbGVyLCB3b3JrZXJfbnVtYmVyKToKKyAgICAgICAg
c2VsZi5fY2FsbGVyID0gY2FsbGVyCiAgICAgICAgIHNlbGYuX3RoaW5nX3RvX2dyZWV0ID0gJ2V2
ZXJ5Ym9keScKICAgICAgICAgc2VsZi5fc3RhcnRpbmdfcXVldWUgPSBzdGFydGluZ19xdWV1ZQog
ICAgICAgICBzZWxmLl9zdG9wcGluZ19xdWV1ZSA9IHN0b3BwaW5nX3F1ZXVlCisgICAgICAgIHNl
bGYuX29wdGlvbnMgPSBvcHRwYXJzZS5WYWx1ZXMoeyd2ZXJib3NlJzogRmFsc2V9KQogCi0gICAg
ZGVmIGhhbmRsZV9zdG9wKHNlbGYsIHNyYyk6Ci0gICAgICAgIHNlbGYuc3RvcF9oYW5kbGluZ19t
ZXNzYWdlcygpCisgICAgZGVmIG5hbWUoc2VsZik6CisgICAgICAgIHJldHVybiBXT1JLRVJfTkFN
RQorCisgICAgZGVmIGNsZWFudXAoc2VsZik6CisgICAgICAgIHBhc3MKIAotICAgIGRlZiBoYW5k
bGVfdGVzdChzZWxmLCBzcmMsIGFuX2ludCwgYV9zdHIpOgorICAgIGRlZiBoYW5kbGUoc2VsZiwg
bWVzc2FnZSwgc3JjLCBhbl9pbnQsIGFfc3RyKToKICAgICAgICAgYXNzZXJ0IGFuX2ludCA9PSAx
CiAgICAgICAgIGFzc2VydCBhX3N0ciA9PSAiaGVsbG8sIHdvcmxkIgotICAgICAgICBzZWxmLl93
b3JrZXJfY29ubmVjdGlvbi5wb3N0X21lc3NhZ2UoJ3Rlc3QnLCAyLCAnaGksICcgKyBzZWxmLl90
aGluZ190b19ncmVldCkKKyAgICAgICAgc2VsZi5fY2FsbGVyLnBvc3RfbWVzc2FnZSgnZmluaXNo
ZWRfdGVzdCcsIDIpCiAKLSAgICBkZWYgcnVuKHNlbGYsIGhvc3QpOgorICAgIGRlZiBzYWZlX2lu
aXQoc2VsZik6CiAgICAgICAgIGlmIHNlbGYuX3N0YXJ0aW5nX3F1ZXVlOgogICAgICAgICAgICAg
c2VsZi5fc3RhcnRpbmdfcXVldWUucHV0KCcnKQogCiAgICAgICAgIGlmIHNlbGYuX3N0b3BwaW5n
X3F1ZXVlOgogICAgICAgICAgICAgc2VsZi5fc3RvcHBpbmdfcXVldWUuZ2V0KCkKLSAgICAgICAg
dHJ5OgotICAgICAgICAgICAgc3VwZXIoX1Rlc3RXb3JrZXIsIHNlbGYpLnJ1bigpCi0gICAgICAg
IGZpbmFsbHk6Ci0gICAgICAgICAgICBzZWxmLl93b3JrZXJfY29ubmVjdGlvbi5wb3N0X21lc3Nh
Z2UoJ2RvbmUnKQorCisgICAgZGVmIHN0b3Aoc2VsZik6CisgICAgICAgIHNlbGYuX2NhbGxlci5w
b3N0X21lc3NhZ2UoJ2RvbmUnKQogCiAKIGNsYXNzIEZ1bmN0aW9uVGVzdHModW5pdHRlc3QuVGVz
dENhc2UpOgpAQCAtMTA1LDE2ICsxMDgsMTQgQEAgY2xhc3MgX1Rlc3RzTWl4aW4ob2JqZWN0KToK
ICAgICBkZWYgaGFuZGxlX2RvbmUoc2VsZiwgc3JjLCBsb2dfbWVzc2FnZXMpOgogICAgICAgICBz
ZWxmLl9kb25lID0gVHJ1ZQogCi0gICAgZGVmIGhhbmRsZV90ZXN0KHNlbGYsIHNyYywgYW5faW50
LCBhX3N0cik6CisgICAgZGVmIGhhbmRsZV9maW5pc2hlZF90ZXN0KHNlbGYsIHNyYywgYW5faW50
LCBsb2dfbWVzc2FnZXMpOgogICAgICAgICBzZWxmLl9hbl9pbnQgPSBhbl9pbnQKLSAgICAgICAg
c2VsZi5fYV9zdHIgPSBhX3N0cgogCiAgICAgZGVmIGhhbmRsZV9leGNlcHRpb24oc2VsZiwgc3Jj
LCBleGNlcHRpb25fdHlwZSwgZXhjZXB0aW9uX3ZhbHVlLCBzdGFjayk6CiAgICAgICAgIHJhaXNl
IGV4Y2VwdGlvbl90eXBlKGV4Y2VwdGlvbl92YWx1ZSkKIAogICAgIGRlZiBzZXRVcChzZWxmKToK
ICAgICAgICAgc2VsZi5fYW5faW50ID0gTm9uZQotICAgICAgICBzZWxmLl9hX3N0ciA9IE5vbmUK
ICAgICAgICAgc2VsZi5fYnJva2VyID0gTm9uZQogICAgICAgICBzZWxmLl9kb25lID0gRmFsc2UK
ICAgICAgICAgc2VsZi5fZXhjZXB0aW9uID0gTm9uZQpAQCAtMTM2LDcgKzEzNyw3IEBAIGNsYXNz
IF9UZXN0c01peGluKG9iamVjdCk6CiAgICAgZGVmIHRlc3RfY2FuY2VsKHNlbGYpOgogICAgICAg
ICBzZWxmLm1ha2VfYnJva2VyKCkKICAgICAgICAgd29ya2VyID0gc2VsZi5fYnJva2VyLnN0YXJ0
X3dvcmtlcigxKQotICAgICAgICBzZWxmLl9icm9rZXIucG9zdF9tZXNzYWdlKCd0ZXN0JywgMSwg
J2hlbGxvLCB3b3JsZCcpCisgICAgICAgIHNlbGYuX2Jyb2tlci5wb3N0X21lc3NhZ2UoJ3Rlc3Rf
bGlzdCcsIDEsICdoZWxsbywgd29ybGQnKQogICAgICAgICB3b3JrZXIuY2FuY2VsKCkKICAgICAg
ICAgd29ya2VyLmpvaW4oMC4xKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHdvcmtlci5pc19h
bGl2ZSgpKQpAQCAtMTQ1LDE0ICsxNDYsMTMgQEAgY2xhc3MgX1Rlc3RzTWl4aW4ob2JqZWN0KToK
ICAgICBkZWYgdGVzdF9kb25lKHNlbGYpOgogICAgICAgICBzZWxmLm1ha2VfYnJva2VyKCkKICAg
ICAgICAgd29ya2VyID0gc2VsZi5fYnJva2VyLnN0YXJ0X3dvcmtlcigxKQotICAgICAgICBzZWxm
Ll9icm9rZXIucG9zdF9tZXNzYWdlKCd0ZXN0JywgMSwgJ2hlbGxvLCB3b3JsZCcpCisgICAgICAg
IHNlbGYuX2Jyb2tlci5wb3N0X21lc3NhZ2UoJ3Rlc3RfbGlzdCcsIDEsICdoZWxsbywgd29ybGQn
KQogICAgICAgICBzZWxmLl9icm9rZXIucG9zdF9tZXNzYWdlKCdzdG9wJykKICAgICAgICAgc2Vs
Zi5fYnJva2VyLnJ1bl9tZXNzYWdlX2xvb3AoKQogICAgICAgICB3b3JrZXIuam9pbigwLjUpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uod29ya2VyLmlzX2FsaXZlKCkpCiAgICAgICAgIHNlbGYu
YXNzZXJ0VHJ1ZShzZWxmLmlzX2RvbmUoKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxm
Ll9hbl9pbnQsIDIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5fYV9zdHIsICdoaSwg
ZXZlcnlib2R5JykKICAgICAgICAgc2VsZi5fYnJva2VyLmNsZWFudXAoKQogCiAgICAgZGVmIHRl
c3RfdW5rbm93bl9tZXNzYWdlKHNlbGYpOgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5IGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5CmluZGV4IDIyYTk2YWFl
OTYyNDkwMzE2YTA5MWJjNWJjMTg1MGJiMmM1NGY1MzEuLjFmNmQwYjU3YmYyYTQ3ZDU2ODU4YmIz
NDBiY2FmY2E5OWU0NmZmNzEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy93b3JrZXIucHkKQEAgLTMyLDggKzMyLDYgQEAg
aW1wb3J0IGxvZ2dpbmcKIGltcG9ydCB0aHJlYWRpbmcKIGltcG9ydCB0aW1lCiAKLWZyb20gd2Vi
a2l0cHkuY29tbW9uLmhvc3QgaW1wb3J0IEhvc3QKLWZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3Rz
LmNvbnRyb2xsZXJzIGltcG9ydCBtYW5hZ2VyX3dvcmtlcl9icm9rZXIKIGZyb20gd2Via2l0cHku
bGF5b3V0X3Rlc3RzLmNvbnRyb2xsZXJzIGltcG9ydCBzaW5nbGVfdGVzdF9ydW5uZXIKIGZyb20g
d2Via2l0cHkubGF5b3V0X3Rlc3RzLm1vZGVscyBpbXBvcnQgdGVzdF9leHBlY3RhdGlvbnMKIGZy
b20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLm1vZGVscyBpbXBvcnQgdGVzdF9yZXN1bHRzCkBAIC00
MiwxMSArNDAsMTYgQEAgZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMubW9kZWxzIGltcG9ydCB0
ZXN0X3Jlc3VsdHMKIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dlcihfX25hbWVfXykKIAogCi1jbGFz
cyBXb3JrZXIobWFuYWdlcl93b3JrZXJfYnJva2VyLkFic3RyYWN0V29ya2VyKToKK2NsYXNzIFdv
cmtlcihvYmplY3QpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB3b3JrZXJfY29ubmVjdGlvbiwg
d29ya2VyX251bWJlciwgcmVzdWx0c19kaXJlY3RvcnksIG9wdGlvbnMpOgotICAgICAgICBzdXBl
cihXb3JrZXIsIHNlbGYpLl9faW5pdF9fKHdvcmtlcl9jb25uZWN0aW9uLCB3b3JrZXJfbnVtYmVy
KQorICAgICAgICBzZWxmLl93b3JrZXJfY29ubmVjdGlvbiA9IHdvcmtlcl9jb25uZWN0aW9uCisg
ICAgICAgIHNlbGYuX3dvcmtlcl9udW1iZXIgPSB3b3JrZXJfbnVtYmVyCisgICAgICAgIHNlbGYu
X25hbWUgPSAnd29ya2VyLyVkJyAlIHdvcmtlcl9udW1iZXIKICAgICAgICAgc2VsZi5fcmVzdWx0
c19kaXJlY3RvcnkgPSByZXN1bHRzX2RpcmVjdG9yeQogICAgICAgICBzZWxmLl9vcHRpb25zID0g
b3B0aW9ucworCisgICAgICAgICMgVGhlIHJlbWFpbmluZyBmaWVsZHMgYXJlIGluaXRpYWxpemVk
IGluIHNhZmVfaW5pdCgpCisgICAgICAgIHNlbGYuX2hvc3QgPSBOb25lCiAgICAgICAgIHNlbGYu
X3BvcnQgPSBOb25lCiAgICAgICAgIHNlbGYuX2JhdGNoX3NpemUgPSBOb25lCiAgICAgICAgIHNl
bGYuX2JhdGNoX2NvdW50ID0gTm9uZQpAQCAtNTksMzUgKzYyLDE5IEBAIGNsYXNzIFdvcmtlciht
YW5hZ2VyX3dvcmtlcl9icm9rZXIuQWJzdHJhY3RXb3JrZXIpOgogICAgICAgICBzZWxmLmNsZWFu
dXAoKQogCiAgICAgZGVmIHNhZmVfaW5pdChzZWxmKToKLSAgICAgICAgIiIiVGhpcyBtZXRob2Qg
c2hvdWxkIG9ubHkgYmUgY2FsbGVkIHdoZW4gaXQgaXMgaXMgc2FmZSBmb3IgdGhlIG1peGluCi0g
ICAgICAgIHRvIGNyZWF0ZSBzdGF0ZSB0aGF0IGNhbid0IGJlIFBpY2tsZWQuCisgICAgICAgICIi
IlRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aGVuIGl0IGlzIHNhZmUgZm9yIHRoZSBvYmplY3QgdG8g
Y3JlYXRlIHN0YXRlIHRoYXQKKyAgICAgICAgZG9lcyBub3QgbmVlZCB0byBiZSBwaWNrbGVkICh1
c3VhbGx5IHRoaXMgbWVhbnMgaXQgaXMgY2FsbGVkIGluIGEgY2hpbGQgcHJvY2VzcykuIiIiCisg
ICAgICAgIHNlbGYuX2hvc3QgPSBzZWxmLl93b3JrZXJfY29ubmVjdGlvbi5ob3N0CisgICAgICAg
IHNlbGYuX2ZpbGVzeXN0ZW0gPSBzZWxmLl9ob3N0LmZpbGVzeXN0ZW0KKyAgICAgICAgc2VsZi5f
cG9ydCA9IHNlbGYuX2hvc3QucG9ydF9mYWN0b3J5LmdldChzZWxmLl9vcHRpb25zLnBsYXRmb3Jt
LCBzZWxmLl9vcHRpb25zKQogCi0gICAgICAgIFRoaXMgcm91dGluZSBleGlzdHMgc28gdGhhdCB0
aGUgbWl4aW4gY2FuIGJlIGNyZWF0ZWQgYW5kIHRoZW4gbWFyc2hhbGVkCi0gICAgICAgIGFjcm9z
cyBpbnRvIGEgY2hpbGQgcHJvY2Vzcy4iIiIKLSAgICAgICAgc2VsZi5fZmlsZXN5c3RlbSA9IHNl
bGYuX3BvcnQuaG9zdC5maWxlc3lzdGVtCiAgICAgICAgIHNlbGYuX2JhdGNoX2NvdW50ID0gMAog
ICAgICAgICBzZWxmLl9iYXRjaF9zaXplID0gc2VsZi5fb3B0aW9ucy5iYXRjaF9zaXplIG9yIDAK
ICAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYu
X3Jlc3VsdHNfZGlyZWN0b3J5LCAidGVzdHNfcnVuJWQudHh0IiAlIHNlbGYuX3dvcmtlcl9udW1i
ZXIpCiAgICAgICAgIHNlbGYuX3Rlc3RzX3J1bl9maWxlID0gc2VsZi5fZmlsZXN5c3RlbS5vcGVu
X3RleHRfZmlsZV9mb3Jfd3JpdGluZyh0ZXN0c19ydW5fZmlsZW5hbWUpCiAKLSAgICBkZWYgcnVu
KHNlbGYsIGhvc3QpOgotICAgICAgICBpZiBub3QgaG9zdDoKLSAgICAgICAgICAgIGhvc3QgPSBI
b3N0KCkKLQotICAgICAgICBvcHRpb25zID0gc2VsZi5fb3B0aW9ucwotICAgICAgICBzZWxmLl9w
b3J0ID0gaG9zdC5wb3J0X2ZhY3RvcnkuZ2V0KG9wdGlvbnMucGxhdGZvcm0sIG9wdGlvbnMpCi0K
LSAgICAgICAgc2VsZi5zYWZlX2luaXQoKQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBfbG9n
LmRlYnVnKCIlcyBzdGFydGluZyIgJSBzZWxmLl9uYW1lKQotICAgICAgICAgICAgc3VwZXIoV29y
a2VyLCBzZWxmKS5ydW4oKQotICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgc2VsZi5raWxs
X2RyaXZlcigpCi0gICAgICAgICAgICBfbG9nLmRlYnVnKCIlcyBleGl0aW5nIiAlIHNlbGYuX25h
bWUpCi0gICAgICAgICAgICBzZWxmLmNsZWFudXAoKQotICAgICAgICAgICAgc2VsZi5fd29ya2Vy
X2Nvbm5lY3Rpb24ucG9zdF9tZXNzYWdlKCdkb25lJykKLQotICAgIGRlZiBoYW5kbGVfdGVzdF9s
aXN0KHNlbGYsIHNyYywgbGlzdF9uYW1lLCB0ZXN0X2xpc3QpOgorICAgIGRlZiBoYW5kbGUoc2Vs
ZiwgbmFtZSwgc291cmNlLCBsaXN0X25hbWUsIHRlc3RfbGlzdCk6CisgICAgICAgIGFzc2VydCBu
YW1lID09ICd0ZXN0X2xpc3QnCiAgICAgICAgIHN0YXJ0X3RpbWUgPSB0aW1lLnRpbWUoKQogICAg
ICAgICBudW1fdGVzdHMgPSAwCiAgICAgICAgIGZvciB0ZXN0X2lucHV0IGluIHRlc3RfbGlzdDoK
QEAgLTk5LDkgKzg2LDYgQEAgY2xhc3MgV29ya2VyKG1hbmFnZXJfd29ya2VyX2Jyb2tlci5BYnN0
cmFjdFdvcmtlcik6CiAgICAgICAgIGVsYXBzZWRfdGltZSA9IHRpbWUudGltZSgpIC0gc3RhcnRf
dGltZQogICAgICAgICBzZWxmLl93b3JrZXJfY29ubmVjdGlvbi5wb3N0X21lc3NhZ2UoJ2Zpbmlz
aGVkX2xpc3QnLCBsaXN0X25hbWUsIG51bV90ZXN0cywgZWxhcHNlZF90aW1lKQogCi0gICAgZGVm
IGhhbmRsZV9zdG9wKHNlbGYsIHNyYyk6Ci0gICAgICAgIHNlbGYuc3RvcF9oYW5kbGluZ19tZXNz
YWdlcygpCi0KICAgICBkZWYgX3VwZGF0ZV90ZXN0X2lucHV0KHNlbGYsIHRlc3RfaW5wdXQpOgog
ICAgICAgICB0ZXN0X2lucHV0LnJlZmVyZW5jZV9maWxlcyA9IHNlbGYuX3BvcnQucmVmZXJlbmNl
X2ZpbGVzKHRlc3RfaW5wdXQudGVzdF9uYW1lKQogICAgICAgICBpZiB0ZXN0X2lucHV0LnJlZmVy
ZW5jZV9maWxlczoK
</data>
<flag name="review"
          id="158743"
          type_id="1"
          status="+"
          setter="ojan"
    />
          </attachment>
      

    </bug>

</bugzilla>