<?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>63676</bug_id>
          
          <creation_ts>2011-06-29 18:07:18 -0700</creation_ts>
          <short_desc>REGRESSION(r90070): Broke test-webkitpy rebaseline tests (Requested by eseidel2 on #webkit).</short_desc>
          <delta_ts>2011-06-29 18:11:59 -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>
          
          <blocked>63501</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>430053</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-29 18:07:18 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/90070 broke the build:
Broke test-webkitpy rebaseline tests (Requested by eseidel2 on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>430054</commentid>
    <comment_count>1</comment_count>
      <attachid>99197</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-29 18:07:43 -0700</bug_when>
    <thetext>Created attachment 99197
ROLLOUT of r90070

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID --ignore-builders

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>430058</commentid>
    <comment_count>2</comment_count>
      <attachid>99197</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-29 18:11:54 -0700</bug_when>
    <thetext>Comment on attachment 99197
ROLLOUT of r90070

Clearing flags on attachment: 99197

Committed r90076: &lt;http://trac.webkit.org/changeset/90076&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>430059</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-29 18:11:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>99197</attachid>
            <date>2011-06-29 18:07:43 -0700</date>
            <delta_ts>2011-06-29 18:11:54 -0700</delta_ts>
            <desc>ROLLOUT of r90070</desc>
            <filename>bug-63676-20110630010722.patch</filename>
            <type>text/plain</type>
            <size>33272</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTAwNzUKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiMTc0ZjFkOTYxNGM0OGE4NDBmMmFmNmZlNzY5NjNkYTM2
OGY3YjVlLi5lNGRlNDgwNTgyMGY5YjZlYWJiMGNjOGMxOTkyZmRiOGYwZGZhZTcxIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTEtMDYtMjkgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29t
PgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI5MDA3MC4KKyAgICAgICAgaHR0
cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTAwNzAKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYzNjc2CisKKyAgICAgICAgQnJva2UgdGVzdC13
ZWJraXRweSByZWJhc2VsaW5lIHRlc3RzIChSZXF1ZXN0ZWQgYnkgZXNlaWRlbDIgb24KKyAgICAg
ICAgI3dlYmtpdCkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L2Jhc2UucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9jaHJvbWl1bS5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L2Nocm9taXVtX2xpbnV4LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvbWFjX3VuaXR0ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXRfdW5pdHRlc3QucHk6CisgICAgICAgICogU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93aW4ucHk6CisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFzZWxpbmVzZXJ2ZXJfdW5pdHRlc3QucHk6CisKIDIw
MTEtMDYtMjkgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvYmFzZS5weQppbmRleCA4NmIxMGU3Y2RiMTE2ZWQwYjJiZjQxZjczYjM1ZDI0
OWNlOTcxOWViLi5mYWJjZjYxNjgzMDgzYjA4ZWM2MDVhMTlmMWZmMDhlN2M0MDNlMDc1IDEwMDc1
NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkK
KysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CkBA
IC02Niw3ICs2NiwxMCBAQCBfbG9nID0gbG9ndXRpbHMuZ2V0X2xvZ2dlcihfX2ZpbGVfXykKIAog
CiBjbGFzcyBEdW1teU9wdGlvbnMob2JqZWN0KToKLSAgICAiIiJGYWtlIGltcGxlbWVudGF0aW9u
IG9mIG9wdHBhcnNlLlZhbHVlcy4gQ2xvbmVkIGZyb20gd2Via2l0cHkudG9vbC5tb2NrdG9vbC5N
b2NrT3B0aW9ucy4iIiIKKyAgICAiIiJGYWtlIGltcGxlbWVudGF0aW9uIG9mIG9wdHBhcnNlLlZh
bHVlcy4gQ2xvbmVkIGZyb20KKyAgICB3ZWJraXRweS50b29sLm1vY2t0b29sLk1vY2tPcHRpb25z
LgorCisgICAgIiIiCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgogICAgICAg
ICAjIFRoZSBjYWxsZXIgY2FuIHNldCBvcHRpb24gdmFsdWVzIHVzaW5nIGtleXdvcmQgYXJndW1l
bnRzLiBXZSBkb24ndApAQCAtNzgsMjEgKzgxLDIwIEBAIGNsYXNzIER1bW15T3B0aW9ucyhvYmpl
Y3QpOgogICAgICAgICAgICAgc2VsZi5fX2RpY3RfX1trZXldID0gdmFsdWUKIAogCi0jIEZJWE1F
OiBUaGlzIGNsYXNzIHNob3VsZCBtZXJnZSB3aXRoIHdlYmtpdHB5LmNvbW1vbi5jb25maWcucG9y
dHMuCisjIEZJWE1FOiBUaGlzIGNsYXNzIHNob3VsZCBtZXJnZSB3aXRoIHdlYmtpdHB5LndlYmtp
dF9wb3J0IGF0IHNvbWUgcG9pbnQuCiBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAgIiIiQWJzdHJh
Y3QgY2xhc3MgZm9yIFBvcnQtc3BlY2lmaWMgaG9va3MgZm9yIHRoZSBsYXlvdXRfdGVzdCBwYWNr
YWdlLiIiIgogCi0gICAgcG9ydF9uYW1lID0gTm9uZSAgIyBTdWJjbGFzc2VzIG92ZXJyaWRlIHRo
aXMKLQogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0X25hbWU9Tm9uZSwgb3B0aW9ucz1Ob25l
LAogICAgICAgICAgICAgICAgICBleGVjdXRpdmU9Tm9uZSwKICAgICAgICAgICAgICAgICAgdXNl
cj1Ob25lLAogICAgICAgICAgICAgICAgICBmaWxlc3lzdGVtPU5vbmUsCiAgICAgICAgICAgICAg
ICAgIGNvbmZpZz1Ob25lLAogICAgICAgICAgICAgICAgICAqKmt3YXJncyk6CisgICAgICAgIHNl
bGYuX25hbWUgPSBwb3J0X25hbWUKIAogICAgICAgICAjIFRoZXNlIGFyZSBkZWZhdWx0IHZhbHVl
cyB0aGF0IHNob3VsZCBiZSBvdmVycmlkZGVuIGluIGEgc3ViY2xhc3Nlcy4KLSAgICAgICAgc2Vs
Zi5fbmFtZSA9IHBvcnRfbmFtZSBvciBzZWxmLnBvcnRfbmFtZSAgIyBTdWJjbGFzc2VzIG1heSBh
cHBlbmQgYSAtVkVSU0lPTiAobGlrZSBtYWMtbGVvcGFyZCkgb3Igb3RoZXIgcXVhbGlmaWVycy4K
KyAgICAgICAgIyBGSVhNRTogVGhlc2Ugc2hvdWxkIHJlYWxseSBiZSBwYXNzZWQgaW4uCiAgICAg
ICAgIHNlbGYuX29wZXJhdGluZ19zeXN0ZW0gPSAnbWFjJwogICAgICAgICBzZWxmLl92ZXJzaW9u
ID0gJycKICAgICAgICAgc2VsZi5fYXJjaGl0ZWN0dXJlID0gJ3g4NicKQEAgLTExMCw4ICsxMTIs
OSBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAKICAgICAgICAgc2VsZi5faGVscGVyID0gTm9uZQog
ICAgICAgICBzZWxmLl9odHRwX3NlcnZlciA9IE5vbmUKKyAgICAgICAgc2VsZi5fd2Via2l0X2Jh
c2VfZGlyID0gTm9uZQogICAgICAgICBzZWxmLl93ZWJzb2NrZXRfc2VydmVyID0gTm9uZQotICAg
ICAgICBzZWxmLl9odHRwX2xvY2sgPSBOb25lICAjIEZJWE1FOiBXaHkgZG9lcyB0aGlzIGxpdmUg
b24gdGhlIHBvcnQgb2JqZWN0PworICAgICAgICBzZWxmLl9odHRwX2xvY2sgPSBOb25lCiAKICAg
ICAgICAgIyBQeXRob24ncyBQb3BlbiBoYXMgYSBidWcgdGhhdCBjYXVzZXMgYW55IHBpcGVzIG9w
ZW5lZCB0byBhCiAgICAgICAgICMgcHJvY2VzcyB0aGF0IGNhbid0IGJlIGV4ZWN1dGVkIHRvIGJl
IGxlYWtlZC4gIFNpbmNlIHRoaXMKQEAgLTEyOSwxMSArMTMyLDEyIEBAIGNsYXNzIFBvcnQob2Jq
ZWN0KToKICAgICAgICAgc2VsZi5fd2RpZmZfYXZhaWxhYmxlID0gTm9uZQogCiAgICAgICAgICMg
RklYTUU6IHByZXR0eXBhdGNoLnB5IGtub3dzIHRoaXMgcGF0aCwgd2h5IGlzIGl0IGNvcGllZCBo
ZXJlPwotICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCA9IHNlbGYucGF0aF9mcm9tX3dl
YmtpdF9iYXNlKCJXZWJzaXRlcyIsICJidWdzLndlYmtpdC5vcmciLCAiUHJldHR5UGF0Y2giLCAi
cHJldHRpZnkucmIiKQorICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCA9IHNlbGYucGF0
aF9mcm9tX3dlYmtpdF9iYXNlKCJXZWJzaXRlcyIsCisgICAgICAgICAgICAiYnVncy53ZWJraXQu
b3JnIiwgIlByZXR0eVBhdGNoIiwgInByZXR0aWZ5LnJiIikKICAgICAgICAgc2VsZi5fcHJldHR5
X3BhdGNoX2F2YWlsYWJsZSA9IE5vbmUKIAogICAgICAgICBzZWxmLnNldF9vcHRpb25fZGVmYXVs
dCgnY29uZmlndXJhdGlvbicsIHNlbGYuZGVmYXVsdF9jb25maWd1cmF0aW9uKCkpCi0gICAgICAg
IHNlbGYuX3Rlc3RfY29uZmlndXJhdGlvbiA9IE5vbmUgICMgRklYTUU6IFRoaXMgZG9lcyBub3Qg
YmVsb25nIG9uIHRoZSByZWFsIG9iamVjdC4KKyAgICAgICAgc2VsZi5fdGVzdF9jb25maWd1cmF0
aW9uID0gTm9uZQogICAgICAgICBzZWxmLl9tdWx0aXByb2Nlc3NpbmdfaXNfYXZhaWxhYmxlID0g
KG11bHRpcHJvY2Vzc2luZyBpcyBub3QgTm9uZSkKICAgICAgICAgc2VsZi5fcmVzdWx0c19kaXJl
Y3RvcnkgPSBOb25lCiAgICAgICAgIHNlbGYuc2V0X29wdGlvbl9kZWZhdWx0KCd1c2VfYXBhY2hl
Jywgc2VsZi5fZGVmYXVsdF90b19hcGFjaGUoKSkKQEAgLTE0OSw3ICsxNTMsOCBAQCBjbGFzcyBQ
b3J0KG9iamVjdCk6CiAgICAgICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxl
CiAKICAgICBkZWYgZGVmYXVsdF9jaGlsZF9wcm9jZXNzZXMoc2VsZik6Ci0gICAgICAgICIiIlJl
dHVybiB0aGUgbnVtYmVyIG9mIER1bXBSZW5kZXJUcmVlIGluc3RhbmNlcyB0byB1c2UgZm9yIHRo
aXMgcG9ydC4iIiIKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBudW1iZXIgb2YgRHVtcFJlbmRlclRy
ZWUgaW5zdGFuY2VzIHRvIHVzZSBmb3IgdGhpcworICAgICAgICBwb3J0LiIiIgogICAgICAgICBy
ZXR1cm4gc2VsZi5fZXhlY3V0aXZlLmNwdV9jb3VudCgpCiAKICAgICBkZWYgZGVmYXVsdF93b3Jr
ZXJfbW9kZWwoc2VsZik6CkBAIC0xNTgsOCArMTYzLDEwIEBAIGNsYXNzIFBvcnQob2JqZWN0KToK
ICAgICAgICAgcmV0dXJuICd0aHJlYWRzJwogCiAgICAgZGVmIGJhc2VsaW5lX3BhdGgoc2VsZik6
Ci0gICAgICAgICIiIlJldHVybiB0aGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgZGlyZWN0b3J5IHRv
IHN0b3JlIG5ldyBiYXNlbGluZXMgaW4gZm9yIHRoaXMgcG9ydC4iIiIKLSAgICAgICAgYmFzZWxp
bmVfc2VhcmNoX3BhdGhzID0gc2VsZi5nZXRfb3B0aW9uKCdhZGRpdGlvbmFsX3BsYXRmb3JtX2Rp
cmVjdG9yeScsIFtdKSArIHNlbGYuYmFzZWxpbmVfc2VhcmNoX3BhdGgoKQorICAgICAgICAiIiJS
ZXR1cm4gdGhlIGFic29sdXRlIHBhdGggdG8gdGhlIGRpcmVjdG9yeSB0byBzdG9yZSBuZXcgYmFz
ZWxpbmVzCisgICAgICAgIGluIGZvciB0aGlzIHBvcnQuIiIiCisgICAgICAgIGJhc2VsaW5lX3Nl
YXJjaF9wYXRocyA9IFwKKyAgICAgICAgICAgIHNlbGYuZ2V0X29wdGlvbignYWRkaXRpb25hbF9w
bGF0Zm9ybV9kaXJlY3RvcnknLCBbXSkgKyBzZWxmLmJhc2VsaW5lX3NlYXJjaF9wYXRoKCkKICAg
ICAgICAgcmV0dXJuIGJhc2VsaW5lX3NlYXJjaF9wYXRoc1swXQogCiAgICAgZGVmIGJhc2VsaW5l
X3NlYXJjaF9wYXRoKHNlbGYpOgpAQCAtMjQwLDExICsyNDcsMTEgQEAgY2xhc3MgUG9ydChvYmpl
Y3QpOgogICAgICAgICByZXR1cm4gZXhwZWN0ZWRfdGV4dCAhPSBhY3R1YWxfdGV4dAogCiAgICAg
ZGVmIGNvbXBhcmVfYXVkaW8oc2VsZiwgZXhwZWN0ZWRfYXVkaW8sIGFjdHVhbF9hdWRpbyk6Ci0g
ICAgICAgICMgRklYTUU6IElmIHdlIGdpdmUgdGhpcyBtZXRob2QgYSBiZXR0ZXIgbmFtZSBpdCB3
b24ndCBuZWVkIHRoaXMgZG9jc3RyaW5nIChlLmcuIGFyZV9hdWRpb19yZXN1bHRzX2VxdWFsKCkp
LgogICAgICAgICAiIiJSZXR1cm4gd2hldGhlciB0aGUgdHdvIGF1ZGlvIGZpbGVzIGFyZSAqbm90
KiBlcXVhbC4iIiIKICAgICAgICAgcmV0dXJuIGV4cGVjdGVkX2F1ZGlvICE9IGFjdHVhbF9hdWRp
bwogCi0gICAgZGVmIGRpZmZfaW1hZ2Uoc2VsZiwgZXhwZWN0ZWRfY29udGVudHMsIGFjdHVhbF9j
b250ZW50cywgZGlmZl9maWxlbmFtZT1Ob25lLCB0b2xlcmFuY2U9MCk6CisgICAgZGVmIGRpZmZf
aW1hZ2Uoc2VsZiwgZXhwZWN0ZWRfY29udGVudHMsIGFjdHVhbF9jb250ZW50cywKKyAgICAgICAg
ICAgICAgICAgICBkaWZmX2ZpbGVuYW1lPU5vbmUsIHRvbGVyYW5jZT0wKToKICAgICAgICAgIiIi
Q29tcGFyZSB0d28gaW1hZ2VzIGFuZCBwcm9kdWNlIGEgZGVsdGEgaW1hZ2UgZmlsZS4KIAogICAg
ICAgICBSZXR1cm4gVHJ1ZSBpZiB0aGUgdHdvIGltYWdlcyBhcmUgZGlmZmVyZW50LCBGYWxzZSBp
ZiB0aGV5IGFyZSB0aGUgc2FtZS4KQEAgLTMyNiw3ICszMzMsOCBAQCBjbGFzcyBQb3J0KG9iamVj
dCk6CiAKICAgICAgICAgYmFzZWxpbmVzID0gW10KICAgICAgICAgZm9yIHBsYXRmb3JtX2RpciBp
biBiYXNlbGluZV9zZWFyY2hfcGF0aDoKLSAgICAgICAgICAgIGlmIHNlbGYucGF0aF9leGlzdHMo
c2VsZi5fZmlsZXN5c3RlbS5qb2luKHBsYXRmb3JtX2RpciwgYmFzZWxpbmVfZmlsZW5hbWUpKToK
KyAgICAgICAgICAgIGlmIHNlbGYucGF0aF9leGlzdHMoc2VsZi5fZmlsZXN5c3RlbS5qb2luKHBs
YXRmb3JtX2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJhc2VsaW5lX2ZpbGVuYW1lKSk6CiAgICAgICAgICAgICAgICAgYmFzZWxpbmVz
LmFwcGVuZCgocGxhdGZvcm1fZGlyLCBiYXNlbGluZV9maWxlbmFtZSkpCiAKICAgICAgICAgICAg
IGlmIG5vdCBhbGxfYmFzZWxpbmVzIGFuZCBiYXNlbGluZXM6CkBAIC0zNjMsOCArMzcxLDggQEAg
Y2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICBUaGlzIHJvdXRpbmUgaXMgZ2VuZXJpYyBidXQg
aXMgaW1wbGVtZW50ZWQgaGVyZSB0byBsaXZlIGFsb25nc2lkZQogICAgICAgICB0aGUgb3RoZXIg
YmFzZWxpbmUgYW5kIGZpbGVuYW1lIG1hbmlwdWxhdGlvbiByb3V0aW5lcy4KICAgICAgICAgIiIi
Ci0gICAgICAgICMgRklYTUU6IFRoZSBbMF0gaGVyZSBpcyB2ZXJ5IG15c3RlcmlvdXMsIGFzIGlz
IHRoZSBkZXN0cnVjdHVyZWQgcmV0dXJuLgotICAgICAgICBwbGF0Zm9ybV9kaXIsIGJhc2VsaW5l
X2ZpbGVuYW1lID0gc2VsZi5leHBlY3RlZF9iYXNlbGluZXMoZmlsZW5hbWUsIHN1ZmZpeClbMF0K
KyAgICAgICAgcGxhdGZvcm1fZGlyLCBiYXNlbGluZV9maWxlbmFtZSA9IHNlbGYuZXhwZWN0ZWRf
YmFzZWxpbmVzKAorICAgICAgICAgICAgZmlsZW5hbWUsIHN1ZmZpeClbMF0KICAgICAgICAgaWYg
cGxhdGZvcm1fZGlyOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihw
bGF0Zm9ybV9kaXIsIGJhc2VsaW5lX2ZpbGVuYW1lKQogICAgICAgICByZXR1cm4gc2VsZi5fZmls
ZXN5c3RlbS5qb2luKHNlbGYubGF5b3V0X3Rlc3RzX2RpcigpLCBiYXNlbGluZV9maWxlbmFtZSkK
QEAgLTQ0OCw3ICs0NTYsOSBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgIHJldHVybiB0
ZXN0X2ZpbGVzLmZpbmQoc2VsZiwgcGF0aHMpCiAKICAgICBkZWYgdGVzdF9kaXJzKHNlbGYpOgot
ICAgICAgICAiIiJSZXR1cm5zIHRoZSBsaXN0IG9mIHRvcC1sZXZlbCB0ZXN0IGRpcmVjdG9yaWVz
LiIiIgorICAgICAgICAiIiJSZXR1cm5zIHRoZSBsaXN0IG9mIHRvcC1sZXZlbCB0ZXN0IGRpcmVj
dG9yaWVzLgorCisgICAgICAgIFVzZWQgYnkgLS1jbG9iYmVyLW9sZC1yZXN1bHRzLiIiIgogICAg
ICAgICBsYXlvdXRfdGVzdHNfZGlyID0gc2VsZi5sYXlvdXRfdGVzdHNfZGlyKCkKICAgICAgICAg
cmV0dXJuIGZpbHRlcihsYW1iZGEgeDogc2VsZi5fZmlsZXN5c3RlbS5pc2RpcihzZWxmLl9maWxl
c3lzdGVtLmpvaW4obGF5b3V0X3Rlc3RzX2RpciwgeCkpLAogICAgICAgICAgICAgICAgICAgICAg
IHNlbGYuX2ZpbGVzeXN0ZW0ubGlzdGRpcihsYXlvdXRfdGVzdHNfZGlyKSkKQEAgLTUyOSwxNiAr
NTM5LDkgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICBzZWxmLl9maWxlc3lzdGVtLm1h
eWJlX21ha2VfZGlyZWN0b3J5KCpwYXRoKQogCiAgICAgZGVmIG5hbWUoc2VsZik6Ci0gICAgICAg
ICIiIlJldHVybnMgYSBuYW1lIHRoYXQgdW5pcXVlbHkgaWRlbnRpZmllcyB0aGlzIHBhcnRpY3Vs
YXIgdHlwZSBvZiBwb3J0Ci0gICAgICAgIChlLmcuLCAibWFjLXNub3dsZW9wYXJkIiBvciAiY2hy
b21pdW0tZ3B1LWxpbnV4LXg4Nl94NjQiIGFuZCBjYW4gYmUgcGFzc2VkCi0gICAgICAgIHRvIGZh
Y3RvcnkuZ2V0KCkgdG8gaW5zdGFudGlhdGUgdGhlIHBvcnQuIiIiCisgICAgICAgICIiIlJldHVy
biB0aGUgbmFtZSBvZiB0aGUgcG9ydCAoZS5nLiwgJ21hYycsICdjaHJvbWl1bS13aW4teHAnKS4i
IiIKICAgICAgICAgcmV0dXJuIHNlbGYuX25hbWUKIAotICAgIGRlZiByZWFsX25hbWUoc2VsZik6
Ci0gICAgICAgICMgRklYTUU6IFNlZW1zIHRoaXMgaXMgb25seSB1c2VkIGZvciBNb2NrRFJUIGFu
ZCBzaG91bGQgYmUgcmVtb3ZlZC4KLSAgICAgICAgIiIiUmV0dXJucyB0aGUgbmFtZSBvZiB0aGUg
cG9ydCBhcyBwYXNzZWQgdG8gdGhlIC0tcGxhdGZvcm0gY29tbWFuZCBsaW5lIGFyZ3VtZW50LiIi
IgotICAgICAgICByZXR1cm4gc2VsZi5uYW1lKCkKLQogICAgIGRlZiBvcGVyYXRpbmdfc3lzdGVt
KHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5fb3BlcmF0aW5nX3N5c3RlbQogCkBAIC01NjUs
NiArNTY4LDEwIEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICBkZWYgYXJjaGl0ZWN0dXJlKHNl
bGYpOgogICAgICAgICByZXR1cm4gc2VsZi5fYXJjaGl0ZWN0dXJlCiAKKyAgICBkZWYgcmVhbF9u
YW1lKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm5zIHRoZSBhY3R1YWwgbmFtZSBvZiB0aGUgcG9y
dCwgbm90IHRoZSBkZWxlZ2F0ZSdzLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5uYW1lKCkKKwog
ICAgIGRlZiBnZXRfb3B0aW9uKHNlbGYsIG5hbWUsIGRlZmF1bHRfdmFsdWU9Tm9uZSk6CiAgICAg
ICAgICMgRklYTUU6IEV2ZW50dWFsbHkgd2Ugc2hvdWxkIG5vdCBoYXZlIHRvIGRvIGEgdGVzdCBm
b3IKICAgICAgICAgIyBoYXNhdHRyKCksIGFuZCB3ZSBzaG91bGQgYmUgYWJsZSB0byBqdXN0IGRv
CkBAIC02MzQsNyArNjQxLDggQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICByZXR1cm4g
c2VsZi5fdXNlci5vcGVuX3VybChyZXN1bHRzX2ZpbGVuYW1lKQogCiAgICAgZGVmIGNyZWF0ZV9k
cml2ZXIoc2VsZiwgd29ya2VyX251bWJlcik6Ci0gICAgICAgICIiIlJldHVybiBhIG5ld2x5IGNy
ZWF0ZWQgYmFzZS5Ecml2ZXIgc3ViY2xhc3MgZm9yIHN0YXJ0aW5nL3N0b3BwaW5nIHRoZSB0ZXN0
IGRyaXZlci4iIiIKKyAgICAgICAgIiIiUmV0dXJuIGEgbmV3bHkgY3JlYXRlZCBiYXNlLkRyaXZl
ciBzdWJjbGFzcyBmb3Igc3RhcnRpbmcvc3RvcHBpbmcKKyAgICAgICAgdGhlIHRlc3QgZHJpdmVy
LiIiIgogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKCdQb3J0LmNyZWF0ZV9kcml2
ZXInKQogCiAgICAgZGVmIHN0YXJ0X2hlbHBlcihzZWxmKToKQEAgLTg2OCw3ICs4NzYsOCBAQCBj
bGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoJ1Bv
cnQuX3BhdGhfdG9faGVscGVyJykKIAogICAgIGRlZiBfcGF0aF90b19pbWFnZV9kaWZmKHNlbGYp
OgotICAgICAgICAiIiJSZXR1cm5zIHRoZSBmdWxsIHBhdGggdG8gdGhlIGltYWdlX2RpZmYgYmlu
YXJ5LCBvciBOb25lIGlmIGl0IGlzIG5vdCBhdmFpbGFibGUuCisgICAgICAgICIiIlJldHVybnMg
dGhlIGZ1bGwgcGF0aCB0byB0aGUgaW1hZ2VfZGlmZiBiaW5hcnksIG9yIE5vbmUgaWYgaXQKKyAg
ICAgICAgaXMgbm90IGF2YWlsYWJsZS4KIAogICAgICAgICBUaGlzIGlzIGxpa2VseSB1c2VkIG9u
bHkgYnkgZGlmZl9pbWFnZSgpIiIiCiAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3Io
J1BvcnQucGF0aF90b19pbWFnZV9kaWZmJykKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5CmluZGV4IGM2MzU0ZTUyMzEzNDAzYTk0
ZmNhZjIwYjcyNzljY2ZlN2Q4MzM2MTQuLmJkMmRiNWY2OTZkYzVjYTRlZDliM2Q5MjA5YmU4YmJi
OGJiYjQ5MDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvY2hyb21pdW0ucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9jaHJvbWl1bS5weQpAQCAtNTMsMTEgKzUzLDkgQEAgZnJvbSB3ZWJraXRweS5sYXlv
dXRfdGVzdHMuc2VydmVycyBpbXBvcnQgd2Vic29ja2V0X3NlcnZlcgogX2xvZyA9IGxvZ2dpbmcu
Z2V0TG9nZ2VyKCJ3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC5jaHJvbWl1bSIpCiAKIAorIyBG
SVhNRTogVGhpcyBmdW5jdGlvbiBkb2Vzbid0IGJlbG9uZyBpbiB0aGlzIHBhY2thZ2UuCiBjbGFz
cyBDaHJvbWl1bVBvcnQoYmFzZS5Qb3J0KToKICAgICAiIiJBYnN0cmFjdCBiYXNlIGNsYXNzIGZv
ciBDaHJvbWl1bSBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlIFBvcnQgY2xhc3MuIiIiCi0KLSAgICBw
b3J0X25hbWUgPSAiY2hyb21pdW0iCi0KICAgICBBTExfQkFTRUxJTkVfVkFSSUFOVFMgPSBbCiAg
ICAgICAgICdjaHJvbWl1bS1tYWMtc25vd2xlb3BhcmQnLCAnY2hyb21pdW0tbWFjLWxlb3BhcmQn
LAogICAgICAgICAnY2hyb21pdW0td2luLXdpbjcnLCAnY2hyb21pdW0td2luLXZpc3RhJywgJ2No
cm9taXVtLXdpbi14cCcsCkBAIC0zNDgsNiArMzQ2LDggQEAgY2xhc3MgQ2hyb21pdW1Qb3J0KGJh
c2UuUG9ydCk6CiAKIAogY2xhc3MgQ2hyb21pdW1Ecml2ZXIoYmFzZS5Ecml2ZXIpOgorICAgICIi
IkFic3RyYWN0IGludGVyZmFjZSBmb3IgRFJULiIiIgorCiAgICAgZGVmIF9faW5pdF9fKHNlbGYs
IHBvcnQsIHdvcmtlcl9udW1iZXIpOgogICAgICAgICBzZWxmLl9wb3J0ID0gcG9ydAogICAgICAg
ICBzZWxmLl93b3JrZXJfbnVtYmVyID0gd29ya2VyX251bWJlcgpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbGludXgucHkK
aW5kZXggNDQ4MWZkMjAwMmI2YTU0NTMyNTcxNTY1ZjYwMDRiNzU5MGI5YTg5MS4uMWViYTI2NjJh
MWU1Njg0Nzc2NDczOGUyZTM4NWQwOGE2NWRiNTllNyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX2xpbnV4LnB5CkBA
IC00OCw2ICs0OCw3IEBAIGNsYXNzIENocm9taXVtTGludXhQb3J0KGNocm9taXVtLkNocm9taXVt
UG9ydCk6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBvcnRfbmFtZT1Ob25lLCAqKmt3YXJncyk6
CiAgICAgICAgIHBvcnRfbmFtZSA9IHBvcnRfbmFtZSBvciAnY2hyb21pdW0tbGludXgnCiAgICAg
ICAgIGNocm9taXVtLkNocm9taXVtUG9ydC5fX2luaXRfXyhzZWxmLCBwb3J0X25hbWU9cG9ydF9u
YW1lLCAqKmt3YXJncykKKwogICAgICAgICAjIFdlIHJlLXNldCB0aGUgcG9ydCBuYW1lIG9uY2Ug
dGhlIGJhc2Ugb2JqZWN0IGlzIGZ1bGx5IGluaXRpYWxpemVkCiAgICAgICAgICMgaW4gb3JkZXIg
dG8gYmUgYWJsZSB0byBmaW5kIHRoZSBEUlQgYmluYXJ5IHByb3Blcmx5LgogICAgICAgICBpZiBw
b3J0X25hbWUuZW5kc3dpdGgoJy1saW51eCcpOgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9tYWMucHkgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hYy5weQppbmRleCBkMzBhMWRk
OGEwOTlhZGI1ZTdiODQ4MDk3NDA0ZDczZTUzMTdjN2I0Li5jN2U5NzdjMzYyZjdiYjY5MmNmYzJi
YzhiYzc3ZDg5ZWVkMWFkNWQ0IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hYy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hYy5weQpAQCAtNzYsNyArNzYsNyBAQCBj
bGFzcyBDaHJvbWl1bU1hY1BvcnQoY2hyb21pdW0uQ2hyb21pdW1Qb3J0KToKICAgICAgICAgICAg
IHNlbGYuX3ZlcnNpb24gPSBtYWMub3NfdmVyc2lvbihvc192ZXJzaW9uX3N0cmluZywgc2VsZi5T
VVBQT1JURURfT1NfVkVSU0lPTlMpCiAgICAgICAgICAgICBzZWxmLl9uYW1lID0gcG9ydF9uYW1l
ICsgJy0nICsgc2VsZi5fdmVyc2lvbgogICAgICAgICBlbHNlOgotICAgICAgICAgICAgc2VsZi5f
dmVyc2lvbiA9IHBvcnRfbmFtZVtwb3J0X25hbWUuaW5kZXgoJy1tYWMtJykgKyBsZW4oJy1tYWMt
Jyk6XQorICAgICAgICAgICAgc2VsZi5fdmVyc2lvbiA9IHBvcnRfbmFtZVtwb3J0X25hbWUuaW5k
ZXgoJy1tYWMtJykgKyA1Ol0KICAgICAgICAgICAgIGFzc2VydCBzZWxmLl92ZXJzaW9uIGluIHNl
bGYuU1VQUE9SVEVEX09TX1ZFUlNJT05TCiAgICAgICAgIHNlbGYuX29wZXJhdGluZ19zeXN0ZW0g
PSAnbWFjJwogCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L2Nocm9taXVtX3dpbi5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CmluZGV4IDNiNzU2ODMwMzFiNjdkMjExMTBiMmU2Mzky
N2JkNGMzODUzNzcyZGEuLmI5MDNjM2ZlMmEyN2UwZjAzYTA4ZjdiZWNhZDJhNGExZmNkNWIyNGIg
MTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hy
b21pdW1fd2luLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Bv
cnQvY2hyb21pdW1fd2luLnB5CkBAIC03NCw4ICs3NCw5IEBAIGNsYXNzIENocm9taXVtV2luUG9y
dChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogICAgICAgICAgICAgc2VsZi5fdmVyc2lvbiA9IG9z
X3ZlcnNpb24od2luZG93c192ZXJzaW9uKQogICAgICAgICAgICAgc2VsZi5fbmFtZSA9IHBvcnRf
bmFtZSArICctJyArIHNlbGYuX3ZlcnNpb24KICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNl
bGYuX3ZlcnNpb24gPSBwb3J0X25hbWVbcG9ydF9uYW1lLmluZGV4KCctd2luLScpICsgbGVuKCct
d2luLScpOl0KLSAgICAgICAgICAgIGFzc2VydCBzZWxmLl92ZXJzaW9uIGluIHNlbGYuU1VQUE9S
VEVEX1ZFUlNJT05TLCAiJXMgaXMgbm90IGluICVzIiAlIChzZWxmLl92ZXJzaW9uLCBzZWxmLlNV
UFBPUlRFRF9WRVJTSU9OUykKKyAgICAgICAgICAgIHNlbGYuX3ZlcnNpb24gPSBwb3J0X25hbWVb
cG9ydF9uYW1lLmluZGV4KCctd2luLScpICsgNTpdCisgICAgICAgICAgICBhc3NlcnQgc2VsZi5f
dmVyc2lvbiBpbiBzZWxmLlNVUFBPUlRFRF9WRVJTSU9OUworCiAgICAgICAgIHNlbGYuX29wZXJh
dGluZ19zeXN0ZW0gPSAnd2luJwogCiAgICAgZGVmIHNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihz
ZWxmKToKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Bv
cnQvZ3RrLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9ndGsu
cHkKaW5kZXggMWYzY2ZiNTRlZGIwOTMyZjRlMzk5YTMwZDk2YzE4NDA2YjZkZDgwMC4uMDE4MDk3
YzE1ODM2YzJiM2QwODQ3ZWM5MzQ1NzYzNmVkNmRhMjc5OCAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9ndGsucHkKKysrIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9ndGsucHkKQEAgLTM5LDYgKzM5LDggQEAgX2xv
ZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCJ3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC5ndGsiKQog
CiAKIGNsYXNzIEd0a0RyaXZlcih3ZWJraXQuV2ViS2l0RHJpdmVyKToKKyAgICAiIiJXZWJLaXQg
R3RrIGltcGxlbWVudGF0aW9uIG9mIHRoZSBEcml2ZXIgY2xhc3MuIiIiCisKICAgICBkZWYgc3Rh
cnQoc2VsZik6CiAgICAgICAgIGRpc3BsYXlfaWQgPSBzZWxmLl93b3JrZXJfbnVtYmVyICsgMQog
ICAgICAgICBydW5feHZmYiA9IFsiWHZmYiIsICI6JWQiICUgKGRpc3BsYXlfaWQpXQpAQCAtNTUs
MjAgKzU3LDI3IEBAIGNsYXNzIEd0a0RyaXZlcih3ZWJraXQuV2ViS2l0RHJpdmVyKToKIAogCiBj
bGFzcyBHdGtQb3J0KHdlYmtpdC5XZWJLaXRQb3J0KToKLSAgICBwb3J0X25hbWUgPSAiZ3RrIgor
ICAgICIiIldlYktpdCBHdGsgaW1wbGVtZW50YXRpb24gb2YgdGhlIFBvcnQgY2xhc3MuIiIiCisK
KyAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgorICAgICAgICBrd2FyZ3Muc2V0ZGVm
YXVsdCgncG9ydF9uYW1lJywgJ2d0aycpCisgICAgICAgIHdlYmtpdC5XZWJLaXRQb3J0Ll9faW5p
dF9fKHNlbGYsICoqa3dhcmdzKQogCiAgICAgZGVmIGNyZWF0ZV9kcml2ZXIoc2VsZiwgd29ya2Vy
X251bWJlcik6CiAgICAgICAgIHJldHVybiBHdGtEcml2ZXIoc2VsZiwgd29ya2VyX251bWJlcikK
IAogICAgIGRlZiBfcGF0aF90b19hcGFjaGVfY29uZmlnX2ZpbGUoc2VsZik6CiAgICAgICAgICMg
RklYTUU6IFRoaXMgbmVlZHMgdG8gZGV0ZWN0IHRoZSBkaXN0cmlidXRpb24gYW5kIGNoYW5nZSBj
b25maWcgZmlsZXMuCi0gICAgICAgIHJldHVybiBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5s
YXlvdXRfdGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYnLCAnYXBhY2hlMi1kZWJpYW4taHR0cGQu
Y29uZicpCisgICAgICAgIHJldHVybiBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5sYXlvdXRf
dGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICdhcGFjaGUyLWRlYmlhbi1odHRwZC5jb25mJykKIAogICAgIGRlZiBfcGF0aF90
b19kcml2ZXIoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLl9idWlsZF9wYXRoKCdQcm9ncmFt
cycsIHNlbGYuZHJpdmVyX25hbWUoKSkKIAogICAgIGRlZiBjaGVja19idWlsZChzZWxmLCBuZWVk
c19odHRwKToKLSAgICAgICAgcmV0dXJuIHNlbGYuX2NoZWNrX2RyaXZlcigpCisgICAgICAgIGlm
IG5vdCBzZWxmLl9jaGVja19kcml2ZXIoKToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAg
ICAgICByZXR1cm4gVHJ1ZQogCiAgICAgZGVmIF9wYXRoX3RvX2FwYWNoZShzZWxmKToKICAgICAg
ICAgaWYgc2VsZi5faXNfcmVkaGF0X2Jhc2VkKCk6CkBAIC04Miw3ICs5MSw4IEBAIGNsYXNzIEd0
a1BvcnQod2Via2l0LldlYktpdFBvcnQpOgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgY29u
ZmlnX25hbWUgPSAnYXBhY2hlMi1kZWJpYW4taHR0cGQuY29uZicKIAotICAgICAgICByZXR1cm4g
c2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYubGF5b3V0X3Rlc3RzX2RpcigpLCAnaHR0cCcsICdj
b25mJywgY29uZmlnX25hbWUpCisgICAgICAgIHJldHVybiBzZWxmLl9maWxlc3lzdGVtLmpvaW4o
c2VsZi5sYXlvdXRfdGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYnLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbmZpZ19uYW1lKQogCiAgICAgZGVmIF9wYXRoX3RvX3dkaWZmKHNlbGYp
OgogICAgICAgICBpZiBzZWxmLl9pc19yZWRoYXRfYmFzZWQoKToKQEAgLTEwNSw1ICsxMTUsNyBA
QCBjbGFzcyBHdGtQb3J0KHdlYmtpdC5XZWJLaXRQb3J0KToKICAgICAgICAgICAgIGlmIG9zLnBh
dGguaXNmaWxlKGZ1bGxfbGlicmFyeSk6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bGxfbGli
cmFyeQogCisgICAgICAgIHJldHVybiBOb25lCisKICAgICBkZWYgX3J1bnRpbWVfZmVhdHVyZV9s
aXN0KHNlbGYpOgogICAgICAgICByZXR1cm4gTm9uZQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weQppbmRleCA4NTcwMjE4ZmU5MTJiMzAxMmVmODM3
ZWRhMWE5NjdjOWM2Yjg5ODljLi5hNjg1YzFiZGExNTNhZmMzMTI2YTRjNWNlNzJlNmRiODRlNTIx
NjJiIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L21hYy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21h
Yy5weQpAQCAtNDgsNyArNDgsNiBAQCBkZWYgb3NfdmVyc2lvbihvc192ZXJzaW9uX3N0cmluZz1O
b25lLCBzdXBwb3J0ZWRfdmVyc2lvbnM9Tm9uZSk6CiAgICAgdmVyc2lvbl9zdHJpbmdzID0gewog
ICAgICAgICA1OiAnbGVvcGFyZCcsCiAgICAgICAgIDY6ICdzbm93bGVvcGFyZCcsCi0gICAgICAg
ICMgQWRkIDc6ICdsaW9uJyBoZXJlPwogICAgIH0KICAgICBhc3NlcnQgcmVsZWFzZV92ZXJzaW9u
ID49IG1pbih2ZXJzaW9uX3N0cmluZ3Mua2V5cygpKQogICAgIHZlcnNpb25fc3RyaW5nID0gdmVy
c2lvbl9zdHJpbmdzLmdldChyZWxlYXNlX3ZlcnNpb24sICdmdXR1cmUnKQpAQCAtNTgsOCArNTcs
NyBAQCBkZWYgb3NfdmVyc2lvbihvc192ZXJzaW9uX3N0cmluZz1Ob25lLCBzdXBwb3J0ZWRfdmVy
c2lvbnM9Tm9uZSk6CiAKIAogY2xhc3MgTWFjUG9ydChXZWJLaXRQb3J0KToKLSAgICBwb3J0X25h
bWUgPSAibWFjIgotCisgICAgIiIiV2ViS2l0IE1hYyBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgUG9y
dCBjbGFzcy4iIiIKICAgICAjIEZJWE1FOiAnd2syJyBwcm9iYWJseSBzaG91bGRuJ3QgYmUgYSB2
ZXJzaW9uLCBpdCBzaG91bGQgcHJvYmFibHkgYmUKICAgICAjIGEgbW9kaWZpZXIsIGxpa2UgJ2No
cm9taXVtLWdwdScgaXMgdG8gJ2Nocm9taXVtJy4KICAgICBTVVBQT1JURURfVkVSU0lPTlMgPSAo
J2xlb3BhcmQnLCAnc25vd2xlb3BhcmQnLCAnZnV0dXJlJywgJ3drMicpCkBAIC02OCw3ICs2Niw2
IEBAIGNsYXNzIE1hY1BvcnQoV2ViS2l0UG9ydCk6CiAgICAgICAgICdsZW9wYXJkJzogWydtYWMt
bGVvcGFyZCcsICdtYWMtc25vd2xlb3BhcmQnLCAnbWFjJ10sCiAgICAgICAgICdzbm93bGVvcGFy
ZCc6IFsnbWFjLXNub3dsZW9wYXJkJywgJ21hYyddLAogICAgICAgICAnZnV0dXJlJzogWydtYWMn
XSwKLSAgICAgICAgIyBGSVhNRTogVGhpcyBpc24ndCBxdWl0ZSByaWdodCBmb3Igd2syLCBpdCBz
aG91bGQgaW5jbHVkZSBtYWMtVkVSU0lPTiBhcyB3ZWxsLgogICAgICAgICAnd2syJzogWydtYWMt
d2syJywgJ21hYyddLAogICAgIH0KIApAQCAtNzksOSArNzYsOCBAQCBjbGFzcyBNYWNQb3J0KFdl
YktpdFBvcnQpOgogICAgICAgICAgICAgc2VsZi5fdmVyc2lvbiA9IG9zX3ZlcnNpb24ob3NfdmVy
c2lvbl9zdHJpbmcpCiAgICAgICAgICAgICBzZWxmLl9uYW1lID0gcG9ydF9uYW1lICsgJy0nICsg
c2VsZi5fdmVyc2lvbgogICAgICAgICBlbHNlOgotICAgICAgICAgICAgYXNzZXJ0IHBvcnRfbmFt
ZS5zdGFydHN3aXRoKCdtYWMnKQotICAgICAgICAgICAgc2VsZi5fdmVyc2lvbiA9IHBvcnRfbmFt
ZVtsZW4oJ21hYy0nKTpdCi0gICAgICAgICAgICBhc3NlcnQgc2VsZi5fdmVyc2lvbiBpbiBzZWxm
LlNVUFBPUlRFRF9WRVJTSU9OUywgIiVzIGlzIG5vdCBpbiAlcyIgJSAoc2VsZi5fdmVyc2lvbiwg
c2VsZi5TVVBQT1JURURfVkVSU0lPTlMpCisgICAgICAgICAgICBzZWxmLl92ZXJzaW9uID0gcG9y
dF9uYW1lWzQ6XQorICAgICAgICAgICAgYXNzZXJ0IHNlbGYuX3ZlcnNpb24gaW4gc2VsZi5TVVBQ
T1JURURfVkVSU0lPTlMKICAgICAgICAgc2VsZi5fb3BlcmF0aW5nX3N5c3RlbSA9ICdtYWMnCiAg
ICAgICAgIGlmIG5vdCBoYXNhdHRyKHNlbGYuX29wdGlvbnMsICd0aW1lLW91dC1tcycpIG9yIHNl
bGYuX29wdGlvbnMudGltZV9vdXRfbXMgaXMgTm9uZToKICAgICAgICAgICAgIHNlbGYuX29wdGlv
bnMudGltZV9vdXRfbXMgPSAzNTAwMApAQCAtOTgsOSArOTQsMjQgQEAgY2xhc3MgTWFjUG9ydChX
ZWJLaXRQb3J0KToKICAgICBkZWYgYmFzZWxpbmVfc2VhcmNoX3BhdGgoc2VsZik6CiAgICAgICAg
IHJldHVybiBtYXAoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgsIHNlbGYuRkFMTEJBQ0tfUEFU
SFNbc2VsZi5fdmVyc2lvbl0pCiAKKyAgICBkZWYgcGF0aF90b190ZXN0X2V4cGVjdGF0aW9uc19m
aWxlKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5wYXRoX2Zyb21fd2Via2l0X2Jhc2UoJ0xh
eW91dFRlc3RzJywgJ3BsYXRmb3JtJywKKyAgICAgICAgICAgJ21hYycsICd0ZXN0X2V4cGVjdGF0
aW9ucy50eHQnKQorCiAgICAgZGVmIGlzX2NyYXNoX3JlcG9ydGVyKHNlbGYsIHByb2Nlc3NfbmFt
ZSk6CiAgICAgICAgIHJldHVybiByZS5zZWFyY2gocidSZXBvcnRDcmFzaCcsIHByb2Nlc3NfbmFt
ZSkKIAorICAgIGRlZiBfc2tpcHBlZF9maWxlX3BhdGhzKHNlbGYpOgorICAgICAgICAjIEZJWE1F
OiBUaGlzIG1ldGhvZCB3aWxsIG5lZWQgdG8gYmUgbWFkZSB3b3JrIGZvciBub24tbWFjCisgICAg
ICAgICMgcGxhdGZvcm1zIGFuZCBtb3ZlZCBpbnRvIGJhc2UuUG9ydC4KKyAgICAgICAgc2tpcHBl
ZF9maWxlcyA9IFtdCisgICAgICAgIGlmIHNlbGYuX25hbWUgaW4gKCdtYWMtbGVvcGFyZCcsICdt
YWMtc25vd2xlb3BhcmQnKToKKyAgICAgICAgICAgIHNraXBwZWRfZmlsZXMuYXBwZW5kKHNlbGYu
X2ZpbGVzeXN0ZW0uam9pbigKKyAgICAgICAgICAgICAgICBzZWxmLl93ZWJraXRfYmFzZWxpbmVf
cGF0aChzZWxmLl9uYW1lKSwgJ1NraXBwZWQnKSkKKyAgICAgICAgc2tpcHBlZF9maWxlcy5hcHBl
bmQoc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3dlYmtpdF9iYXNlbGluZV9wYXRoKCdtYWMn
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdTa2lwcGVkJykp
CisgICAgICAgIHJldHVybiBza2lwcGVkX2ZpbGVzCisKICAgICBkZWYgX2J1aWxkX2phdmFfdGVz
dF9zdXBwb3J0KHNlbGYpOgogICAgICAgICBqYXZhX3Rlc3RzX3BhdGggPSBzZWxmLl9maWxlc3lz
dGVtLmpvaW4oc2VsZi5sYXlvdXRfdGVzdHNfZGlyKCksICJqYXZhIikKICAgICAgICAgYnVpbGRf
amF2YSA9IFsiL3Vzci9iaW4vbWFrZSIsICItQyIsIGphdmFfdGVzdHNfcGF0aF0KQEAgLTExMyw3
ICsxMjQsOCBAQCBjbGFzcyBNYWNQb3J0KFdlYktpdFBvcnQpOgogICAgICAgICByZXR1cm4gc2Vs
Zi5fYnVpbGRfamF2YV90ZXN0X3N1cHBvcnQoKQogCiAgICAgZGVmIF9wYXRoX3RvX2FwYWNoZV9j
b25maWdfZmlsZShzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihz
ZWxmLmxheW91dF90ZXN0c19kaXIoKSwgJ2h0dHAnLCAnY29uZicsICdhcGFjaGUyLWh0dHBkLmNv
bmYnKQorICAgICAgICByZXR1cm4gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYubGF5b3V0X3Rl
c3RzX2RpcigpLCAnaHR0cCcsICdjb25mJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAnYXBhY2hlMi1odHRwZC5jb25mJykKIAogICAgIGRlZiBfcGF0aF90b193ZWJjb3Jl
X2xpYnJhcnkoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLl9idWlsZF9wYXRoKCdXZWJDb3Jl
LmZyYW1ld29yay9WZXJzaW9ucy9BL1dlYkNvcmUnKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWNfdW5pdHRlc3QucHkgYi9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hY191bml0dGVzdC5weQppbmRleCA1NmEx
YzdkNjQ2OWYwMzkxNjgzZmFlYzI5ZWNmMDA4M2M4YTBlYmI2Li4yOGZjODVlNmVhMjVkNWI5NTZh
NDljMWNlMWYwNjk1YTYzMDA2NThlIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L21hY191bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hY191bml0dGVzdC5weQpAQCAtNDAsMjAgKzQwLDI0
IEBAIGNsYXNzIE1hY1Rlc3QocG9ydF90ZXN0Y2FzZS5Qb3J0VGVzdENhc2UpOgogICAgICAgICAg
ICAgcmV0dXJuIE5vbmUKICAgICAgICAgcmV0dXJuIG1hYy5NYWNQb3J0CiAKLSAgICBkZWYgYXNz
ZXJ0X3NraXBwZWRfZmlsZV9zZWFyY2hfcGF0aHMoc2VsZiwgcG9ydF9uYW1lLCBleHBlY3RlZF9w
YXRocyk6CisgICAgZGVmIGFzc2VydF9za2lwcGVkX2ZpbGVzX2Zvcl92ZXJzaW9uKHNlbGYsIHBv
cnRfbmFtZSwgZXhwZWN0ZWRfcGF0aHMpOgogICAgICAgICBwb3J0ID0gbWFjLk1hY1BvcnQocG9y
dF9uYW1lPXBvcnRfbmFtZSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0Ll9za2lwcGVk
X2ZpbGVfc2VhcmNoX3BhdGhzKCksIGV4cGVjdGVkX3BhdGhzKQotCi0gICAgZGVmIHRlc3Rfc2tp
cHBlZF9maWxlX3NlYXJjaF9wYXRocyhzZWxmKToKLSAgICAgICAgIyBGSVhNRTogVGhpcyBzaG91
bGQgbm8gbG9uZ2VyIGJlIG5lY2Vzc2FyeSwgYnV0IEknbSBub3QgYnJhdmUgZW5vdWdoIHRvIHJl
bW92ZSBpdC4KKyAgICAgICAgc2tpcHBlZF9wYXRocyA9IHBvcnQuX3NraXBwZWRfZmlsZV9wYXRo
cygpCisgICAgICAgICMgRklYTUU6IF9za2lwcGVkX2ZpbGVfcGF0aHMgc2hvdWxkIHJldHVybiBX
ZWJLaXQtcmVsYXRpdmUgcGF0aHMuCisgICAgICAgICMgU28gdG8gbWFrZSBpdCB1bml0IHRlc3Rh
YmxlLCB3ZSBzdHJpcCB0aGUgV2ViS2l0IGRpcmVjdG9yeSBmcm9tIHRoZSBwYXRoLgorICAgICAg
ICByZWxhdGl2ZV9wYXRocyA9IFtwYXRoW2xlbihwb3J0LnBhdGhfZnJvbV93ZWJraXRfYmFzZSgp
KTpdIGZvciBwYXRoIGluIHNraXBwZWRfcGF0aHNdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cmVsYXRpdmVfcGF0aHMsIGV4cGVjdGVkX3BhdGhzKQorCisgICAgZGVmIHRlc3Rfc2tpcHBlZF9m
aWxlX3BhdGhzKHNlbGYpOgorICAgICAgICAjIFdlIHNraXAgdGhpcyBvbiB3aW4zMiBiZWNhdXNl
IHdlIHVzZSAnLycgYXMgdGhlIGRpciBzZXBhcmF0b3IgYW5kIGl0J3MKKyAgICAgICAgIyBub3Qg
d29ydGggbWFraW5nIHBsYXRmb3JtLWluZGVwZW5kZW50LgogICAgICAgICBpZiBzeXMucGxhdGZv
cm0gPT0gJ3dpbjMyJzoKICAgICAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICAgICAgc2VsZi5h
c3NlcnRfc2tpcHBlZF9maWxlX3NlYXJjaF9wYXRocygnbWFjLXNub3dsZW9wYXJkJywgc2V0KFsn
bWFjLXNub3dsZW9wYXJkJywgJ21hYyddKSkKLSAgICAgICAgc2VsZi5hc3NlcnRfc2tpcHBlZF9m
aWxlX3NlYXJjaF9wYXRocygnbWFjLWxlb3BhcmQnLCBzZXQoWydtYWMtbGVvcGFyZCcsICdtYWMn
XSkpCi0gICAgICAgICMgV2UgY2Fubm90IHRlc3QganVzdCAibWFjIiBoZXJlIGFzIHRoZSBNYWNQ
b3J0IGNvbnN0cnVjdG9yIGF1dG9tYXRpY2FsbHkgZmlsbHMgaW4gdGhlIHZlcnNpb24gZnJvbSB0
aGUgcnVubmluZyBPUy4KLSAgICAgICAgIyBzZWxmLmFzc2VydF9za2lwcGVkX2ZpbGVfc2VhcmNo
X3BhdGhzKCdtYWMnLCBbJ21hYyddKQotCisgICAgICAgIHNlbGYuYXNzZXJ0X3NraXBwZWRfZmls
ZXNfZm9yX3ZlcnNpb24oJ21hYy1zbm93bGVvcGFyZCcsCisgICAgICAgICAgICBbJy9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtc25vd2xlb3BhcmQvU2tpcHBlZCcsICcvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1NraXBwZWQnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRfc2tpcHBlZF9maWxlc19m
b3JfdmVyc2lvbignbWFjLWxlb3BhcmQnLAorICAgICAgICAgICAgWycvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjLWxlb3BhcmQvU2tpcHBlZCcsICcvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Nr
aXBwZWQnXSkKIAogICAgIGV4YW1wbGVfc2tpcHBlZF9maWxlID0gdSIiIgogIyA8cmRhcjovL3By
b2JsZW0vNTY0Nzk1Mj4gZmFzdC9ldmVudHMvbW91c2VvdXQtb24td2luZG93Lmh0bWwgbmVlZHMg
bWFjIERSVCB0byBpc3N1ZSBtb3VzZSBvdXQgZXZlbnRzCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weQppbmRleCA1NGFhMDUyNGU3NGJiYjRkNGRiMTdi
M2QwYTYzMDhiNmEzZTQzMDZlLi42MGIwYzMyOTI3NzY1MjhmMDdmMGQ2MzQxOWNiNDI2OWZlNWM0
NGEyIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L3F0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQu
cHkKQEAgLTM5LDcgKzM5LDExIEBAIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dlcigid2Via2l0cHku
bGF5b3V0X3Rlc3RzLnBvcnQucXQiKQogCiAKIGNsYXNzIFF0UG9ydChXZWJLaXRQb3J0KToKLSAg
ICBwb3J0X25hbWUgPSAicXQiCisgICAgIiIiUXRXZWJLaXQgaW1wbGVtZW50YXRpb24gb2YgdGhl
IFBvcnQgY2xhc3MuIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgorICAg
ICAgICBrd2FyZ3Muc2V0ZGVmYXVsdCgncG9ydF9uYW1lJywgJ3F0JykKKyAgICAgICAgV2ViS2l0
UG9ydC5fX2luaXRfXyhzZWxmLCAqKmt3YXJncykKIAogICAgIGRlZiBiYXNlbGluZV9zZWFyY2hf
cGF0aChzZWxmKToKICAgICAgICAgcG9ydF9uYW1lcyA9IFtdCkBAIC01NCw3ICs1OCw4IEBAIGNs
YXNzIFF0UG9ydChXZWJLaXRQb3J0KToKIAogICAgIGRlZiBfcGF0aF90b19hcGFjaGVfY29uZmln
X2ZpbGUoc2VsZik6CiAgICAgICAgICMgRklYTUU6IFRoaXMgbmVlZHMgdG8gZGV0ZWN0IHRoZSBk
aXN0cmlidXRpb24gYW5kIGNoYW5nZSBjb25maWcgZmlsZXMuCi0gICAgICAgIHJldHVybiBzZWxm
Ll9maWxlc3lzdGVtLmpvaW4oc2VsZi5sYXlvdXRfdGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYn
LCAnYXBhY2hlMi1kZWJpYW4taHR0cGQuY29uZicpCisgICAgICAgIHJldHVybiBzZWxmLl9maWxl
c3lzdGVtLmpvaW4oc2VsZi5sYXlvdXRfdGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYnLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhcGFjaGUyLWRlYmlhbi1odHRwZC5j
b25mJykKIAogICAgIGRlZiBfYnVpbGRfZHJpdmVyKHNlbGYpOgogICAgICAgICAjIFRoZSBRdCBw
b3J0IGJ1aWxkcyBEUlQgYXMgcGFydCBvZiB0aGUgbWFpbiBidWlsZCBzdGVwCmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CmluZGV4IGFj
NDQ3ZDc2ZGI4ODk0ZWI4ZWI0ODI0MGU1YWI0MmY2ZjdjMjg0ZGMuLjc1YWEwNWFkOTZiMTI0ZDQ0
NzMwNTI2NzYwZDgzMDk3ZGViYWJiMGQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CkBAIC0zNiwyMCArMzYsMjYgQEAgaW1wb3J0
IGxvZ2dpbmcKIGltcG9ydCBvcGVyYXRvcgogaW1wb3J0IG9zCiBpbXBvcnQgcmUKK2ltcG9ydCBz
aWduYWwKK2ltcG9ydCBzeXMKIGltcG9ydCB0aW1lCitpbXBvcnQgd2ViYnJvd3NlcgorCiAKIGZy
b20gd2Via2l0cHkuY29tbW9uLm5ldC5idWlsZGJvdCBpbXBvcnQgQnVpbGRCb3QKK2Zyb20gd2Vi
a2l0cHkuY29tbW9uLnN5c3RlbSBpbXBvcnQgb3NwYXRoCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5z
eXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgogZnJvbSB3ZWJraXRweS5sYXlvdXRf
dGVzdHMucG9ydCBpbXBvcnQgYmFzZSwgYnVpbGRlcnMsIHNlcnZlcl9wcm9jZXNzCiAKLQotX2xv
ZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKF9fZmlsZV9fKQorX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2Vy
KCJ3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC53ZWJraXQiKQogCiAKIGNsYXNzIFdlYktpdFBv
cnQoYmFzZS5Qb3J0KToKKyAgICAiIiJXZWJLaXQgaW1wbGVtZW50YXRpb24gb2YgdGhlIFBvcnQg
Y2xhc3MuIiIiCisKICAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgogICAgICAgICBi
YXNlLlBvcnQuX19pbml0X18oc2VsZiwgKiprd2FyZ3MpCi0gICAgICAgIHNlbGYuX2NhY2hlZF9h
cGFjaGVfcGF0aCA9IE5vbmUgICMgRklYTUU6IFRoaXMgY2xhc3Mgc2hvdWxkIHVzZSBAbWVtb2l6
ZWQgaW5zdGVhZC4KKyAgICAgICAgc2VsZi5fY2FjaGVkX2FwYWNoZV9wYXRoID0gTm9uZQogCiAg
ICAgICAgICMgRklYTUU6IGRpc2FibGUgcGl4ZWwgdGVzdHMgdW50aWwgdGhleSBhcmUgcnVuIGJ5
IGRlZmF1bHQgb24gdGhlIGJ1aWxkIG1hY2hpbmVzLgogICAgICAgICBzZWxmLnNldF9vcHRpb25f
ZGVmYXVsdCgicGl4ZWxfdGVzdHMiLCBGYWxzZSkKQEAgLTU5LDIxICs2NSwxMiBAQCBjbGFzcyBX
ZWJLaXRQb3J0KGJhc2UuUG9ydCk6CiAgICAgICAgICAgICByZXR1cm4gIldlYktpdFRlc3RSdW5u
ZXIiCiAgICAgICAgIHJldHVybiAiRHVtcFJlbmRlclRyZWUiCiAKLSAgICAjIEZJWE1FOiBUaGlz
IGlzIG5vdCBhIHZlcnkgdXNlZnVsIGRlZmF1bHQgaW1wbGVtZW50YXRpb24sIGFzIGl0cyB3cm9u
ZyBmb3IgYW55Ci0gICAgIyBwb3J0IHdoaWNoIHVzZXMgdmVyc2lvbi1zcGVjaWZpYyBmYWxsYmFj
ayAoZS5nLiBbJ21hYy1sZWFwYXJkJywgJ21hYyddKS4KLSAgICAjIFdlIHNob3VsZCByZXBsYWNl
IHRoaXMgd2l0aCBhIHNtYXJ0ZXIgaW1wbGVtZW50YXRpb24gc2hhcmVkIGJ5IGFsbCBwb3J0cy4K
ICAgICBkZWYgYmFzZWxpbmVfc2VhcmNoX3BhdGgoc2VsZik6Ci0gICAgICAgIHNlYXJjaF9wYXRo
cyA9IFtzZWxmLm5hbWUoKV0KLSAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCd3ZWJraXRfdGVz
dF9ydW5uZXInKToKLSAgICAgICAgICAgIHNlYXJjaF9wYXRocy5pbnNlcnQoMCwgc2VsZi5fd2sy
X3BvcnRfbmFtZSgpKQotICAgICAgICByZXR1cm4gc2VhcmNoX3BhdGhzCi0KLSAgICBkZWYgX2V4
cGVjdGF0aW9uc19zZWFyY2hfcGF0aChzZWxmKToKLSAgICAgICAgIyB0ZXN0X2V4cGVjdGF0aW9u
cyBhcmUgYWx3YXlzIGluIG1hYy8gbm90IG1hYy1sZW9wYXJkLyBieSBjb252ZW50aW9uLCBoZW5j
ZSB3ZSB1c2UgcG9ydF9uYW1lIGluc3RlYWQgb2YgbmFtZSgpLgotICAgICAgICByZXR1cm4gc2Vs
Zi5fd2syX3BvcnRfbmFtZSgpIGlmIHNlbGYuZ2V0X29wdGlvbignd2Via2l0X3Rlc3RfcnVubmVy
JykgZWxzZSBzZWxmLnBvcnRfbmFtZQorICAgICAgICByZXR1cm4gW3NlbGYuX3dlYmtpdF9iYXNl
bGluZV9wYXRoKHNlbGYuX25hbWUpXQogCiAgICAgZGVmIHBhdGhfdG9fdGVzdF9leHBlY3RhdGlv
bnNfZmlsZShzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxm
Ll93ZWJraXRfYmFzZWxpbmVfcGF0aChzZWxmLl9leHBlY3RhdGlvbnNfc2VhcmNoX3BhdGgoKSks
ICd0ZXN0X2V4cGVjdGF0aW9ucy50eHQnKQorICAgICAgICByZXR1cm4gc2VsZi5fZmlsZXN5c3Rl
bS5qb2luKHNlbGYuX3dlYmtpdF9iYXNlbGluZV9wYXRoKHNlbGYuX25hbWUpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0X2V4cGVjdGF0aW9ucy50eHQnKQogCiAg
ICAgZGVmIF9yZXN1bHRzX2Zvcl9wbGF0Zm9ybShzZWxmLCBwbGF0Zm9ybSk6CiAgICAgICAgIGJ1
aWxkZXJfbmFtZSA9IGJ1aWxkZXJzLmJ1aWxkZXJfbmFtZV9mb3JfcGxhdGZvcm0ocGxhdGZvcm0p
CkBAIC0yODcsMjYgKzI4NCwxMiBAQCBjbGFzcyBXZWJLaXRQb3J0KGJhc2UuUG9ydCk6CiAgICAg
ICAgICAgICB0ZXN0c190b19za2lwLmFwcGVuZChsaW5lKQogICAgICAgICByZXR1cm4gdGVzdHNf
dG9fc2tpcAogCi0gICAgZGVmIF93azJfcG9ydF9uYW1lKHNlbGYpOgotICAgICAgICAjIEJ5IGN1
cnJlbnQgY29udmVudGlvbiwgdGhlIFdlYktpdDIgbmFtZSBpcyBhbHdheXMgbWFjLXdrMiwgd2lu
LXdrMiwgbm90IG1hYy1sZW9wYXJkLXdrMiwgZXRjLgotICAgICAgICByZXR1cm4gIiVzLXdrMiIg
JSBzZWxmLnBvcnRfbmFtZQotCi0gICAgZGVmIF9za2lwcGVkX2ZpbGVfc2VhcmNoX3BhdGhzKHNl
bGYpOgotICAgICAgICAjIFVubGlrZSBiYXNlbGluZV9zZWFyY2hfcGF0aCwgd2Ugb25seSB3YW50
IHRvIHNlYXJjaCBbV0syLVBPUlQsIFBPUlQtVkVSU0lPTiwgUE9SVF0gbm90IHRoZSBmdWxsIGNh
c2FkZS4KLSAgICAgICAgIyBOb3RlIG9yZGVyIGRvZXNuJ3QgbWF0dGVyIHNpbmNlIHRoZSBTa2lw
cGVkIGZpbGUgY29udGVudHMgYXJlIGFsbCBjb21iaW5lZC4KLSAgICAgICAgc2VhcmNoX3BhdGhz
ID0gc2V0KFtzZWxmLnBvcnRfbmFtZSwgc2VsZi5uYW1lKCldKQotICAgICAgICBpZiBzZWxmLmdl
dF9vcHRpb24oJ3dlYmtpdF90ZXN0X3J1bm5lcicpOgotICAgICAgICAgICAgIyBRdW90aW5nIG9s
ZC1ydW4td2Via2l0LXRlc3RzOgotICAgICAgICAgICAgIyBCZWNhdXNlIG5lYXJseSBhbGwgb2Yg
dGhlIHNraXBwZWQgdGVzdHMgZm9yIFdlYktpdCAyIG9uIE1hYyBhcmUgZHVlIHRvCi0gICAgICAg
ICAgICAjIGNyb3NzLXBsYXRmb3JtIGlzc3VlcywgdGhlIFdpbmRvd3MgYW5kIFF0IHBvcnRzIHVz
ZSB0aGUgTWFjIHNraXBwZWQgbGlzdAotICAgICAgICAgICAgIyBhZGRpdGlvbmFsbHkgdG8gdGhl
aXIgb3duIHRvIGF2b2lkIG1haW50YWluaW5nIHNlcGFyYXRlIGxpc3RzLgotICAgICAgICAgICAg
c2VhcmNoX3BhdGhzLnVwZGF0ZShbc2VsZi5fd2syX3BvcnRfbmFtZSgpLCAibWFjLXdrMiJdKQot
ICAgICAgICByZXR1cm4gc2VhcmNoX3BhdGhzCisgICAgZGVmIF9za2lwcGVkX2ZpbGVfcGF0aHMo
c2VsZik6CisgICAgICAgIHJldHVybiBbc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3dlYmtp
dF9iYXNlbGluZV9wYXRoKHNlbGYuX25hbWUpLCAnU2tpcHBlZCcpXQogCiAgICAgZGVmIF9leHBl
Y3RhdGlvbnNfZnJvbV9za2lwcGVkX2ZpbGVzKHNlbGYpOgogICAgICAgICB0ZXN0c190b19za2lw
ID0gW10KLSAgICAgICAgZm9yIHNlYXJjaF9wYXRoIGluIHNlbGYuX3NraXBwZWRfZmlsZV9zZWFy
Y2hfcGF0aHMoKToKLSAgICAgICAgICAgIGZpbGVuYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5qb2lu
KHNlbGYuX3dlYmtpdF9iYXNlbGluZV9wYXRoKHNlYXJjaF9wYXRoKSwgIlNraXBwZWQiKQorICAg
ICAgICBmb3IgZmlsZW5hbWUgaW4gc2VsZi5fc2tpcHBlZF9maWxlX3BhdGhzKCk6CiAgICAgICAg
ICAgICBpZiBub3Qgc2VsZi5fZmlsZXN5c3RlbS5leGlzdHMoZmlsZW5hbWUpOgogICAgICAgICAg
ICAgICAgIF9sb2cud2FybigiRmFpbGVkIHRvIG9wZW4gU2tpcHBlZCBmaWxlOiAlcyIgJSBmaWxl
bmFtZSkKICAgICAgICAgICAgICAgICBjb250aW51ZQpAQCAtMzE1LDE0ICsyOTgsMTIgQEAgY2xh
c3MgV2ViS2l0UG9ydChiYXNlLlBvcnQpOgogICAgICAgICByZXR1cm4gdGVzdHNfdG9fc2tpcAog
CiAgICAgZGVmIHRlc3RfZXhwZWN0YXRpb25zKHNlbGYpOgotICAgICAgICAjIFRoaXMgYWxsb3dz
IHBvcnRzIHRvIHVzZSBhIGNvbWJpbmF0aW9uIG9mIHRlc3RfZXhwZWN0YXRpb25zLnR4dCBmaWxl
cyBhbmQgU2tpcHBlZCBsaXN0cy4KLSAgICAgICAgZXhwZWN0YXRpb25zID0gc2VsZi5fc2tpcHBl
ZF9saXN0X2FzX2V4cGVjdGF0aW9ucygpCisgICAgICAgICMgVGhlIFdlYktpdCBtYWMgcG9ydCB1
c2VzIGEgY29tYmluYXRpb24gb2YgYSB0ZXN0X2V4cGVjdGF0aW9ucyBmaWxlCisgICAgICAgICMg
YW5kICdTa2lwcGVkJyBmaWxlcy4KICAgICAgICAgZXhwZWN0YXRpb25zX3BhdGggPSBzZWxmLnBh
dGhfdG9fdGVzdF9leHBlY3RhdGlvbnNfZmlsZSgpCi0gICAgICAgIGlmIHNlbGYuX2ZpbGVzeXN0
ZW0uZXhpc3RzKGV4cGVjdGF0aW9uc19wYXRoKToKLSAgICAgICAgICAgIGV4cGVjdGF0aW9ucyA9
IHNlbGYuX2ZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoZXhwZWN0YXRpb25zX3BhdGgpICsgZXhw
ZWN0YXRpb25zCi0gICAgICAgIHJldHVybiBleHBlY3RhdGlvbnMKKyAgICAgICAgcmV0dXJuIHNl
bGYuX2ZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoZXhwZWN0YXRpb25zX3BhdGgpICsgc2VsZi5f
c2tpcHMoKQogCi0gICAgZGVmIF9za2lwcGVkX2xpc3RfYXNfZXhwZWN0YXRpb25zKHNlbGYpOgor
ICAgIGRlZiBfc2tpcHMoc2VsZik6CiAgICAgICAgICMgRWFjaCBTa2lwcGVkIGZpbGUgY29udGFp
bnMgYSBsaXN0IG9mIGZpbGVzCiAgICAgICAgICMgb3IgZGlyZWN0b3JpZXMgdG8gYmUgc2tpcHBl
ZCBkdXJpbmcgdGhlIHRlc3QgcnVuLiBUaGUgdG90YWwgbGlzdAogICAgICAgICAjIG9mIHRlc3Rz
IHRvIHNraXBwZWQgaXMgZ2l2ZW4gYnkgdGhlIGNvbnRlbnRzIG9mIHRoZSBnZW5lcmljCkBAIC0z
MzIsNyArMzEzLDggQEAgY2xhc3MgV2ViS2l0UG9ydChiYXNlLlBvcnQpOgogICAgICAgICAjIGZv
cm1hdCBleHBlY3RlZCBieSB0ZXN0X2V4cGVjdGF0aW9ucy4KIAogICAgICAgICB0ZXN0c190b19z
a2lwID0gc2VsZi5za2lwcGVkX2xheW91dF90ZXN0cygpCi0gICAgICAgIHNraXBfbGluZXMgPSBt
YXAobGFtYmRhIHRlc3RfcGF0aDogIkJVR19TS0lQUEVEIFNLSVAgOiAlcyA9IEZBSUwiICUgdGVz
dF9wYXRoLCB0ZXN0c190b19za2lwKQorICAgICAgICBza2lwX2xpbmVzID0gbWFwKGxhbWJkYSB0
ZXN0X3BhdGg6ICJCVUdfU0tJUFBFRCBTS0lQIDogJXMgPSBGQUlMIiAlCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RfcGF0aCwgdGVzdHNfdG9fc2tpcCkKICAgICAgICAgcmV0
dXJuICJcbiIuam9pbihza2lwX2xpbmVzKQogCiAgICAgZGVmIHNraXBwZWRfbGF5b3V0X3Rlc3Rz
KHNlbGYpOgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC93ZWJraXRfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L3dlYmtpdF91bml0dGVzdC5weQppbmRleCBlNDI3MThkZTU0MmY3ODIzOTE5ZDQ0
ODJmNzlkMTM3YTg5NzcyNzU5Li40MWY4NWZhYWRhM2QwYmY3NWMyNWJjYzVlYjNkNzRkNTY5Nzk5
NzdjIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L3dlYmtpdF91bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L3dlYmtpdF91bml0dGVzdC5weQpAQCAtMzcsOCArMzcsNiBAQCBmcm9tIHdlYmtp
dHB5LnRvb2wubW9ja3Rvb2wgaW1wb3J0IE1vY2tFeGVjdXRpdmUsIE1vY2tPcHRpb25zLCBNb2Nr
VXNlcgogCiAKIGNsYXNzIFRlc3RXZWJLaXRQb3J0KFdlYktpdFBvcnQpOgotICAgIHBvcnRfbmFt
ZSA9ICJ0ZXN0d2Via2l0cG9ydCIKLQogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBzeW1ib2xfbGlz
dD1Ob25lLCBmZWF0dXJlX2xpc3Q9Tm9uZSwKICAgICAgICAgICAgICAgICAgZXhwZWN0YXRpb25z
X2ZpbGU9Tm9uZSwgc2tpcHNfZmlsZT1Ob25lLAogICAgICAgICAgICAgICAgICBleGVjdXRpdmU9
Tm9uZSwgZmlsZXN5c3RlbT1Ob25lLCB1c2VyPU5vbmUsCkBAIC00OCw3ICs0Niw3IEBAIGNsYXNz
IFRlc3RXZWJLaXRQb3J0KFdlYktpdFBvcnQpOgogICAgICAgICBleGVjdXRpdmUgPSBleGVjdXRp
dmUgb3IgTW9ja0V4ZWN1dGl2ZShzaG91bGRfbG9nPUZhbHNlKQogICAgICAgICBmaWxlc3lzdGVt
ID0gZmlsZXN5c3RlbSBvciBNb2NrRmlsZVN5c3RlbSgpCiAgICAgICAgIHVzZXIgPSB1c2VyIG9y
IE1vY2tVc2VyKCkKLSAgICAgICAgV2ViS2l0UG9ydC5fX2luaXRfXyhzZWxmLCBleGVjdXRpdmU9
ZXhlY3V0aXZlLCBmaWxlc3lzdGVtPWZpbGVzeXN0ZW0sIHVzZXI9TW9ja1VzZXIoKSwgKiprd2Fy
Z3MpCisgICAgICAgIFdlYktpdFBvcnQuX19pbml0X18oc2VsZiwgcG9ydF9uYW1lPSJ0ZXN0d2Vi
a2l0cG9ydCIsIGV4ZWN1dGl2ZT1leGVjdXRpdmUsIGZpbGVzeXN0ZW09ZmlsZXN5c3RlbSwgdXNl
cj1Nb2NrVXNlcigpLCAqKmt3YXJncykKIAogICAgIGRlZiBfcnVudGltZV9mZWF0dXJlX2xpc3Qo
c2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLmZlYXR1cmVfbGlzdApAQCAtOTEsMTQgKzg5LDYg
QEAgY2xhc3MgV2ViS2l0UG9ydFRlc3QocG9ydF90ZXN0Y2FzZS5Qb3J0VGVzdENhc2UpOgogICAg
IGRlZiB0ZXN0X3NraXBwZWRfbGF5b3V0X3Rlc3RzKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKFRlc3RXZWJLaXRQb3J0KE5vbmUsIE5vbmUpLnNraXBwZWRfbGF5b3V0X3Rlc3RzKCks
IHNldChbIm1lZGlhIl0pKQogCi0gICAgZGVmIHRlc3Rfc2tpcHBlZF9maWxlX3NlYXJjaF9wYXRo
cyhzZWxmKToKLSAgICAgICAgcG9ydCA9IFRlc3RXZWJLaXRQb3J0KCkKLSAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChwb3J0Ll9za2lwcGVkX2ZpbGVfc2VhcmNoX3BhdGhzKCksIHNldChbJ3Rlc3R3
ZWJraXRwb3J0J10pKQotICAgICAgICBwb3J0Ll9uYW1lID0gInRlc3R3ZWJraXRwb3J0LXZlcnNp
b24iCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9ydC5fc2tpcHBlZF9maWxlX3NlYXJjaF9w
YXRocygpLCBzZXQoWyd0ZXN0d2Via2l0cG9ydCcsICd0ZXN0d2Via2l0cG9ydC12ZXJzaW9uJ10p
KQotICAgICAgICBwb3J0Ll9vcHRpb25zID0gTW9ja09wdGlvbnMod2Via2l0X3Rlc3RfcnVubmVy
PVRydWUpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9ydC5fc2tpcHBlZF9maWxlX3NlYXJj
aF9wYXRocygpLCBzZXQoWyd0ZXN0d2Via2l0cG9ydCcsICd0ZXN0d2Via2l0cG9ydC12ZXJzaW9u
JywgJ3Rlc3R3ZWJraXRwb3J0LXdrMicsICdtYWMtd2syJ10pKQotCiAgICAgZGVmIHRlc3RfdGVz
dF9leHBlY3RhdGlvbnMoc2VsZik6CiAgICAgICAgICMgQ2hlY2sgdGhhdCB3ZSByZWFkIGJvdGgg
dGhlIGV4cGVjdGF0aW9ucyBmaWxlIGFuZCBhbnl0aGluZyBpbiBhCiAgICAgICAgICMgU2tpcHBl
ZCBmaWxlLCBhbmQgdGhhdCB3ZSBpbmNsdWRlIHRoZSBmZWF0dXJlIGFuZCBwbGF0Zm9ybSBjaGVj
a3MuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L3dpbi5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2luLnB5
CmluZGV4IGM4N2NhOTk2ZmExNWFhMGQyNDQwZTI0ZjI3MzY4ZDZmYWZlMDQzNzMuLmM1NzUzNzgz
ZGRiOGY1ZmI4MmZhZTkxNjYwYzQzYmJiOWNiM2Y3MzYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2luLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2luLnB5CkBAIC0zMiwyMSArMzIsMjMgQEAgaW1w
b3J0IGxvZ2dpbmcKIAogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC53ZWJraXQgaW1w
b3J0IFdlYktpdFBvcnQKIAotX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKF9fZmlsZV9fKQorX2xv
ZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCJ3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC53aW4iKQog
CiAKIGNsYXNzIFdpblBvcnQoV2ViS2l0UG9ydCk6Ci0gICAgcG9ydF9uYW1lID0gIndpbiIKKyAg
ICAiIiJXZWJLaXQgV2luIGltcGxlbWVudGF0aW9uIG9mIHRoZSBQb3J0IGNsYXNzLiIiIgogCi0g
ICAgZGVmIF9faW5pdF9fKHNlbGYsICoqa3dhcmdzKToKLSAgICAgICAgV2ViS2l0UG9ydC5fX2lu
aXRfXyhzZWxmLCAqKmt3YXJncykKKyAgICBkZWYgX19pbml0X18oc2VsZiwgcG9ydF9uYW1lPU5v
bmUsICoqa3dhcmdzKToKKyAgICAgICAgcG9ydF9uYW1lID0gcG9ydF9uYW1lIG9yICd3aW4nCisg
ICAgICAgIFdlYktpdFBvcnQuX19pbml0X18oc2VsZiwgcG9ydF9uYW1lPXBvcnRfbmFtZSwgKipr
d2FyZ3MpCiAgICAgICAgIHNlbGYuX3ZlcnNpb24gPSAnd2luNycKICAgICAgICAgc2VsZi5fb3Bl
cmF0aW5nX3N5c3RlbSA9ICd3aW4nCiAKICAgICBkZWYgYmFzZWxpbmVfc2VhcmNoX3BhdGgoc2Vs
Zik6CiAgICAgICAgICMgQmFzZWQgb24gY29kZSBmcm9tIG9sZC1ydW4td2Via2l0LXRlc3RzIGV4
cGVjdGVkRGlyZWN0b3J5Rm9yVGVzdCgpCi0gICAgICAgIHNlYXJjaF9wYXRocyA9IFsid2luIiwg
Im1hYy1zbm93bGVvcGFyZCIsICJtYWMiXQotICAgICAgICByZXR1cm4gbWFwKHNlbGYuX3dlYmtp
dF9iYXNlbGluZV9wYXRoLCBzZWFyY2hfcGF0aHMpCisgICAgICAgIHBvcnRfbmFtZXMgPSBbIndp
biIsICJtYWMtc25vd2xlb3BhcmQiLCAibWFjIl0KKyAgICAgICAgcmV0dXJuIG1hcChzZWxmLl93
ZWJraXRfYmFzZWxpbmVfcGF0aCwgcG9ydF9uYW1lcykKIAogICAgIGRlZiBfcGF0aF90b19hcGFj
aGVfY29uZmlnX2ZpbGUoc2VsZik6Ci0gICAgICAgIHJldHVybiBzZWxmLl9maWxlc3lzdGVtLmpv
aW4oc2VsZi5sYXlvdXRfdGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYnLCAnY3lnd2luLWh0dHBk
LmNvbmYnKQorICAgICAgICByZXR1cm4gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYubGF5b3V0
X3Rlc3RzX2RpcigpLCAnaHR0cCcsICdjb25mJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAnY3lnd2luLWh0dHBkLmNvbmYnKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFzZWxpbmVzZXJ2ZXJfdW5pdHRlc3QucHkgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcmViYXNlbGluZXNlcnZlcl91bml0
dGVzdC5weQppbmRleCA0MTk2YmJlNWY2YWIyYmNmNTM0Zjg1ZTZkNzg3YzgxMTZhODI4NWUzLi41
N2RhMGY4NzYzNGJmMzg0Y2UzMDM3NzI1MjRiOTEwNzk5NGUyODNhIDEwMDY0NAotLS0gYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcmViYXNlbGluZXNlcnZlcl91bml0dGVz
dC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcmViYXNlbGlu
ZXNlcnZlcl91bml0dGVzdC5weQpAQCAtMjkxLDcgKzI5MSw2IEBAIGRlZiBnZXRfdGVzdF9jb25m
aWcodGVzdF9maWxlcz1bXSwgcmVzdWx0X2ZpbGVzPVtdKToKICAgICAgICAgbW9ja19maWxlc3lz
dGVtLmZpbGVzW2ZpbGVfcGF0aF0gPSAnJwogCiAgICAgY2xhc3MgVGVzdE1hY1BvcnQoV2ViS2l0
UG9ydCk6Ci0gICAgICAgIHBvcnRfbmFtZSA9ICd0ZXN0bWFjcG9ydCcKICAgICAgICAgZGVmIF9f
aW5pdF9fKHNlbGYpOgogICAgICAgICAgICAgIyBGSVhNRTogVGhpcyBzaG91bGQgdXNlIE1vY2tF
eGVjdXRpdmUgYW5kIE1vY2tVc2VyIGFzIHdlbGwuCiAgICAgICAgICAgICBXZWJLaXRQb3J0Ll9f
aW5pdF9fKHNlbGYsIGZpbGVzeXN0ZW09bW9ja19maWxlc3lzdGVtKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>