<?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>64792</bug_id>
          
          <creation_ts>2011-07-19 04:29:00 -0700</creation_ts>
          <short_desc>new-run-webkit-tests should only enable MallocStackLogging for DRT</short_desc>
          <delta_ts>2011-07-19 15:56:14 -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>63832</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          <cc>abarth</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>439090</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-19 04:29:00 -0700</bug_when>
    <thetext>new-run-webkit-tests should only enable MallocStackLogging for DRT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439091</commentid>
    <comment_count>1</comment_count>
      <attachid>101299</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-19 04:31:34 -0700</bug_when>
    <thetext>Created attachment 101299
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439094</commentid>
    <comment_count>2</comment_count>
      <attachid>101301</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-19 04:47:20 -0700</bug_when>
    <thetext>Created attachment 101301
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439506</commentid>
    <comment_count>3</comment_count>
      <attachid>101399</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-19 15:25:51 -0700</bug_when>
    <thetext>Created attachment 101399
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439510</commentid>
    <comment_count>4</comment_count>
      <attachid>101399</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-19 15:29:42 -0700</bug_when>
    <thetext>Comment on attachment 101399
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/port/gtk.py:69
&gt; +        environment = webkit.WebKitPort.setup_environ_for_server(self, server_name)

super?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439530</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-19 15:56:14 -0700</bug_when>
    <thetext>Committed r91315: &lt;http://trac.webkit.org/changeset/91315&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101299</attachid>
            <date>2011-07-19 04:31:34 -0700</date>
            <delta_ts>2011-07-19 04:47:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64792-20110719043133.patch</filename>
            <type>text/plain</type>
            <size>17536</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTEyNDUKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkNzFlYzVlYWE3NTQzOWE4NGMyZTYxYTUzNjNkZWRhMjUw
MTdmMmI4Li5hNzk5MGUxYWJiODk4MTlhNWQ2MTEwOWU3YjExODdiMmI0ZmEyZWMyIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTEtMDctMTkgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAg
IG5ldy1ydW4td2Via2l0LXRlc3RzIHNob3VsZCBvbmx5IGVuYWJsZSBNYWxsb2NTdGFja0xvZ2dp
bmcgZm9yIERSVAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NjQ3OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUaGUgcHJldmlvdXMgY29kZSB3b3VsZCBlbmFibGUgaXQgZm9yIGFsbCBzZXJ2ZXJzIGxhdW5j
aGVkCisgICAgICAgIGJ5IHRoZSBwb3J0LCB3aGljaCBpbmNsdWRlZCBBcGFjaGUsIHRoZSBweXRo
b24gd2Vic29ja2V0IHNlcnZlcgorICAgICAgICBhcyB3ZWxsIGFzIEltYWdlRGlmZi4gIE5vdyBv
bmx5IER1bXBSZW5kZXJUcmVlIHdpbGwgaGF2ZQorICAgICAgICBNYWxsb2NTdGFja0xvZ2dpbmcg
ZW5hYmxlZCBvciB0aGUgR3VhcmRNYWxsb2MgbGlicmFyeSBpbmplY3RlZC4KKworICAgICAgICBJ
IGFsc28gY2xlYW5lZCB1cCB0aGUgd2Vic29ja2V0X3NlcnZlciBjb2RlIHRvIHVzZSBmaWxlc3lz
dGVtCisgICAgICAgIHdoaWxlIEkgd2FzIGluIGl0LgorCisgICAgICAgIEkgYWxzbyBtYWRlIERS
VCByZXN0YXJ0IGV2ZXJ5IDEwMDAgdGVzdHMgd2hlbiBydW5uaW5nIHdpdGgKKyAgICAgICAgLS1s
ZWFrcyBlbmFibGVkLiAgSSBiZWxpZXZlIHRoaXMgbWFkZSB0aGUgLS1sZWFrcyBydW4gc2xpZ2h0
bHkKKyAgICAgICAgZmFzdGVyLCBidXQgaXQgc3RpbGwgdGFrZXMgb3ZlciBhbiBob3VyIG9uIG15
IG1hY2hpbmUuIDooCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9j
b250cm9sbGVycy93b3JrZXIucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvY2hyb21pdW1fd2luLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvbWFjLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvcXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L3dlYmtpdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2Vic29ja2V0X3NlcnZlci5weToKKwogMjAxMS0wNy0x
OCAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgbmV3LXJ1bi13ZWJr
aXQtdGVzdHMgc2hvdWxkIHN1cHBvcnQgLS1sZWFrcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5IGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5CmluZGV4IDUx
NzgwNDIwMTMxNzEwZmI5ODMxYmQ2MTFiMGU4MjM3N2I4ZTAyNTcuLmE2ZGQ5NGVmYTZjYTk2ZDA2
N2YyN2U4Njc1MjAyMzhmMDUwZmUwNWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlci5weQorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy93b3JrZXIucHkKQEAgLTY4LDggKzY4
LDcgQEAgY2xhc3MgV29ya2VyKG1hbmFnZXJfd29ya2VyX2Jyb2tlci5BYnN0cmFjdFdvcmtlcik6
CiAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0gPSBwb3J0LmZpbGVzeXN0ZW0KICAgICAgICAgc2Vs
Zi5fYmF0Y2hfY291bnQgPSAwCiAgICAgICAgIHNlbGYuX2JhdGNoX3NpemUgPSBzZWxmLl9vcHRp
b25zLmJhdGNoX3NpemUKLSAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5
c3RlbS5qb2luKHBvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0ZXN0c19ydW4lZC50eHQiICUgc2VsZi5f
d29ya2VyX251bWJlcikKKyAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5
c3RlbS5qb2luKHBvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwgInRlc3RzX3J1biVkLnR4dCIgJSBz
ZWxmLl93b3JrZXJfbnVtYmVyKQogICAgICAgICBzZWxmLl90ZXN0c19ydW5fZmlsZSA9IHNlbGYu
X2ZpbGVzeXN0ZW0ub3Blbl90ZXh0X2ZpbGVfZm9yX3dyaXRpbmcodGVzdHNfcnVuX2ZpbGVuYW1l
KQogCiAgICAgZGVmIGNhbmNlbChzZWxmKToKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQppbmRleCAzNjBiZDZkMDE0ZWYxOWRjYWYxOThiMGYy
MWEzM2MwYWE0MTM3NTI0Li44MmFhMDc3NzE5OWY1YjE4MjZlOTRjNjkxMDM1NmYxNDdlNjU5MGU1
IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jh
c2UucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNl
LnB5CkBAIC0yMzQsNyArMjM0LDggQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAg
aHR0cGRfcGF0aCA9IHNlbGYuX3BhdGhfdG9fbGlnaHR0cGQoKQogCiAgICAgICAgIHRyeToKLSAg
ICAgICAgICAgIGVudiA9IHNlbGYuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAg
ICAgIHNlcnZlcl9uYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5iYXNlbmFtZShodHRwZF9wYXRoKQor
ICAgICAgICAgICAgZW52ID0gc2VsZi5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VydmVyX25h
bWUpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFtodHRw
ZF9wYXRoLCAiLXYiXSwgZW52PWVudiwgcmV0dXJuX2V4aXRfY29kZT1UcnVlKSA9PSAwCiAgICAg
ICAgIGV4Y2VwdCBPU0Vycm9yOgogICAgICAgICAgICAgX2xvZy5lcnJvcigiTm8gaHR0cGQgZm91
bmQuIENhbm5vdCBydW4gaHR0cCB0ZXN0cy4iKQpAQCAtNjYyLDcgKzY2Myw3IEBAIGNsYXNzIFBv
cnQob2JqZWN0KToKICAgICAgICAgIiIiUGVyZm9ybSBwb3J0LXNwZWNpZmljIHdvcmsgYXQgdGhl
IGJlZ2lubmluZyBvZiBhIHRlc3QgcnVuLiIiIgogICAgICAgICBwYXNzCiAKLSAgICBkZWYgc2V0
dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYpOgorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9z
ZXJ2ZXIoc2VsZiwgc2VydmVyX25hbWU9Tm9uZSk6CiAgICAgICAgICIiIlBlcmZvcm0gcG9ydC1z
cGVjaWZpYyB3b3JrIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBzZXJ2ZXIgbGF1bmNoLgogCiAgICAg
ICAgIFJldHVybnM6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L2Nocm9taXVtX3dpbi5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CmluZGV4IDM1MTI5OTExNmQxMDZiZDM2MWE5YzBh
MDNlNmE3ZDgyYjFkNDVhMWMuLjUxYjI1YjNmM2VhNjIxMzhjMTcxOTA5MzIxZjY2ZDMxM2E3ZDll
MmEgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
Y2hyb21pdW1fd2luLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvY2hyb21pdW1fd2luLnB5CkBAIC05OCw3ICs5OCw3IEBAIGNsYXNzIENocm9taXVtV2lu
UG9ydChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogICAgICAgICAgICAgYXNzZXJ0IHNlbGYuX3Zl
cnNpb24gaW4gc2VsZi5TVVBQT1JURURfVkVSU0lPTlMsICIlcyBpcyBub3QgaW4gJXMiICUgKHNl
bGYuX3ZlcnNpb24sIHNlbGYuU1VQUE9SVEVEX1ZFUlNJT05TKQogICAgICAgICBzZWxmLl9vcGVy
YXRpbmdfc3lzdGVtID0gJ3dpbicKIAotICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIo
c2VsZik6CisgICAgZGVmIHNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFt
ZT1Ob25lKToKICAgICAgICAgZW52ID0gY2hyb21pdW0uQ2hyb21pdW1Qb3J0LnNldHVwX2Vudmly
b25fZm9yX3NlcnZlcihzZWxmKQogICAgICAgICAjIFB1dCB0aGUgY3lnd2luIGRpcmVjdG9yeSBm
aXJzdCBpbiB0aGUgcGF0aCB0byBmaW5kIGN5Z3dpbjEuZGxsLgogICAgICAgICBlbnZbIlBBVEgi
XSA9ICIlczslcyIgJSAoc2VsZi5wYXRoX2Zyb21fY2hyb21pdW1fYmFzZSgidGhpcmRfcGFydHki
LCAiY3lnd2luIiwgImJpbiIpLCBlbnZbIlBBVEgiXSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9ndGsucHkKaW5kZXggNTc0YzI5MTdlNDAzMDJiM2U2N2E1
NWY3ZjI2MzQ4ZTJmNzBlY2I1NC4uNzZiM2UxOWYyZWU2MzdiNzU1ZWZmYzI5YTFmMjNkOGFhMmI1
YWNlMCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9ndGsucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9n
dGsucHkKQEAgLTQ0LDEwICs0NCwxMSBAQCBjbGFzcyBHdGtEcml2ZXIod2Via2l0LldlYktpdERy
aXZlcik6CiAgICAgICAgIGRpc3BsYXlfaWQgPSBzZWxmLl93b3JrZXJfbnVtYmVyICsgMQogICAg
ICAgICBydW5feHZmYiA9IFsiWHZmYiIsICI6JWQiICUgKGRpc3BsYXlfaWQpLCAiLXNjcmVlbiIs
ICAiMCIsICI4MDB4NjAweDI0IiwgIi1ub2xpc3RlbiIsICJ0Y3AiXQogICAgICAgICBzZWxmLl94
dmZiX3Byb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKHJ1bl94dmZiKQotICAgICAgICBlbnZpcm9u
bWVudCA9IHNlbGYuX3BvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAgc2Vy
dmVyX25hbWUgPSBzZWxmLl9wb3J0LmRyaXZlcl9uYW1lKCkKKyAgICAgICAgZW52aXJvbm1lbnQg
PSBzZWxmLl9wb3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZXJ2ZXJfbmFtZSkKICAgICAg
ICAgIyBXZSBtdXN0IGRvIHRoaXMgaGVyZSBiZWNhdXNlIHRoZSBESVNQTEFZIG51bWJlciBkZXBl
bmRzIG9uIF93b3JrZXJfbnVtYmVyCiAgICAgICAgIGVudmlyb25tZW50WydESVNQTEFZJ10gPSAi
OiVkIiAlIChkaXNwbGF5X2lkKQotICAgICAgICBzZWxmLl9zZXJ2ZXJfcHJvY2VzcyA9IHNlcnZl
cl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VsZi5fcG9ydC5kcml2ZXJfbmFt
ZSgpLCBzZWxmLmNtZF9saW5lKCksIGVudmlyb25tZW50KQorICAgICAgICBzZWxmLl9zZXJ2ZXJf
cHJvY2VzcyA9IHNlcnZlcl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VydmVy
X25hbWUsIHNlbGYuY21kX2xpbmUoKSwgZW52aXJvbm1lbnQpCiAKICAgICBkZWYgc3RvcChzZWxm
KToKICAgICAgICAgd2Via2l0LldlYktpdERyaXZlci5zdG9wKHNlbGYpCkBAIC02NCw4ICs2NSw4
IEBAIGNsYXNzIEd0a1BvcnQod2Via2l0LldlYktpdFBvcnQpOgogICAgIGRlZiBjcmVhdGVfZHJp
dmVyKHNlbGYsIHdvcmtlcl9udW1iZXIpOgogICAgICAgICByZXR1cm4gR3RrRHJpdmVyKHNlbGYs
IHdvcmtlcl9udW1iZXIpCiAKLSAgICBkZWYgc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYp
OgotICAgICAgICBlbnZpcm9ubWVudCA9IHdlYmtpdC5XZWJLaXRQb3J0LnNldHVwX2Vudmlyb25f
Zm9yX3NlcnZlcihzZWxmKQorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VsZiwg
c2VydmVyX25hbWU9Tm9uZSk6CisgICAgICAgIGVudmlyb25tZW50ID0gd2Via2l0LldlYktpdFBv
cnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lKQogICAgICAgICBl
bnZpcm9ubWVudFsnR1RLX01PRFVMRVMnXSA9ICdnYWlsJwogICAgICAgICBlbnZpcm9ubWVudFsn
TElCT1ZFUkxBWV9TQ1JPTExCQVInXSA9ICcwJwogICAgICAgICBlbnZpcm9ubWVudFsnV0VCS0lU
X0lOU1BFQ1RPUl9QQVRIJ10gPSBzZWxmLl9idWlsZF9wYXRoKCdQcm9ncmFtcy9yZXNvdXJjZXMv
aW5zcGVjdG9yJykKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvbWFjLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9tYWMucHkKaW5kZXggNmVjZmE3ZTFiMzgyMWIxZTNkZTdhNWUyZTM1ODUzNGU2MWEzZDFlOS4u
ZTAwMWJjNzgzYjlmOTA0ZDQ2MDQzMTQ2YmQ5OTJjYTA5ZWFkMTQyYyAxMDA2NDQKLS0tIGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKQEAgLTE5NSw2ICsxOTUs
MTAgQEAgY2xhc3MgTWFjUG9ydChXZWJLaXRQb3J0KToKICAgICAgICAgICAgIGFzc2VydCBzZWxm
Ll92ZXJzaW9uIGluIHNlbGYuU1VQUE9SVEVEX1ZFUlNJT05TLCAiJXMgaXMgbm90IGluICVzIiAl
IChzZWxmLl92ZXJzaW9uLCBzZWxmLlNVUFBPUlRFRF9WRVJTSU9OUykKICAgICAgICAgc2VsZi5f
b3BlcmF0aW5nX3N5c3RlbSA9ICdtYWMnCiAgICAgICAgIHNlbGYuX2xlYWtfZGV0ZWN0b3IgPSBM
ZWFrRGV0ZWN0b3Ioc2VsZikKKyAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCJsZWFrcyIpOgor
ICAgICAgICAgICAgIyBEdW1wUmVuZGVyVHJlZSBzbG93cyBkb3duIG5vdGljYWJseSBpZiB3ZSBy
dW4gbW9yZSB0aGFuIGFib3V0IDEwMDAgdGVzdHMgaW4gYSBiYXRjaAorICAgICAgICAgICAgIyB3
aXRoIE1hbGxvY1N0YWNrTG9nZ2luZyBlbmFibGVkLgorICAgICAgICAgICAgc2VsZi5zZXRfb3B0
aW9uX2RlZmF1bHQoImJhdGNoX3NpemUiLCAxMDAwKQogCiAgICAgZGVmIGJhc2VsaW5lX3NlYXJj
aF9wYXRoKHNlbGYpOgogICAgICAgICBzZWFyY2hfcGF0aHMgPSBzZWxmLkZBTExCQUNLX1BBVEhT
W3NlbGYuX3ZlcnNpb25dCkBAIC0yMDIsMTIgKzIwNiwxMyBAQCBjbGFzcyBNYWNQb3J0KFdlYktp
dFBvcnQpOgogICAgICAgICAgICAgc2VhcmNoX3BhdGhzLmluc2VydCgwLCBzZWxmLl93azJfcG9y
dF9uYW1lKCkpCiAgICAgICAgIHJldHVybiBtYXAoc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgs
IHNlYXJjaF9wYXRocykKIAotICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VsZik6
Ci0gICAgICAgIGVudiA9IFdlYktpdFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYp
Ci0gICAgICAgIGlmIHNlbGYuZ2V0X29wdGlvbignbGVha3MnKToKLSAgICAgICAgICAgIGVudlsn
TWFsbG9jU3RhY2tMb2dnaW5nJ10gPSAnMScKLSAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCdn
dWFyZF9tYWxsb2MnKToKLSAgICAgICAgICAgIGVudlsnRFlMRF9JTlNFUlRfTElCUkFSSUVTJ10g
PSAnL3Vzci9saWIvbGliZ21hbGxvYy5keWxpYicKKyAgICBkZWYgc2V0dXBfZW52aXJvbl9mb3Jf
c2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lPU5vbmUpOgorICAgICAgICBlbnYgPSBXZWJLaXRQb3J0
LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFtZSkKKyAgICAgICAgaWYg
c2VydmVyX25hbWUgPT0gc2VsZi5kcml2ZXJfbmFtZSgpOgorICAgICAgICAgICAgaWYgc2VsZi5n
ZXRfb3B0aW9uKCdsZWFrcycpOgorICAgICAgICAgICAgICAgIGVudlsnTWFsbG9jU3RhY2tMb2dn
aW5nJ10gPSAnMScKKyAgICAgICAgICAgIGlmIHNlbGYuZ2V0X29wdGlvbignZ3VhcmRfbWFsbG9j
Jyk6CisgICAgICAgICAgICAgICAgZW52WydEWUxEX0lOU0VSVF9MSUJSQVJJRVMnXSA9ICcvdXNy
L2xpYi9saWJnbWFsbG9jLmR5bGliJwogICAgICAgICByZXR1cm4gZW52CiAKICAgICAjIEJlbG9u
Z3Mgb24gYSBQbGF0Zm9ybSBvYmplY3QuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9xdC5weQppbmRleCBmZGFiYTFjODQ5NTQ2NjFmZTg1M2M3YjMwZjhlYTNi
MTAxOWZiYWEyLi43OTNhNjBmNTY2ZWU3NGRjM2JmYjRhMmE5ZDE2NmZmZDYyNzUyMWM2IDEwMDY0
NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5Cisr
KyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQucHkKQEAgLTgy
LDggKzgyLDggQEAgY2xhc3MgUXRQb3J0KFdlYktpdFBvcnQpOgogICAgIGRlZiBfcnVudGltZV9m
ZWF0dXJlX2xpc3Qoc2VsZik6CiAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICBkZWYgc2V0dXBf
ZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYpOgotICAgICAgICBlbnYgPSBXZWJLaXRQb3J0LnNldHVw
X2Vudmlyb25fZm9yX3NlcnZlcihzZWxmKQorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2
ZXIoc2VsZiwgc2VydmVyX25hbWU9Tm9uZSk6CisgICAgICAgIGVudiA9IFdlYktpdFBvcnQuc2V0
dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lKQogICAgICAgICBlbnZbJ1FU
V0VCS0lUX1BMVUdJTl9QQVRIJ10gPSBzZWxmLl9idWlsZF9wYXRoKCdsaWIvcGx1Z2lucycpCiAg
ICAgICAgIHJldHVybiBlbnYKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvc2VydmVyX3Byb2Nlc3MucHkKaW5kZXggZTZiMTYxZTQ0MGI1
MzBlMDA2MTBiOTIzMjBhMDAyNTUwZjc0MGRmMy4uNzdjY2E2ZWZkZjk2ZDkxYjZhZGJiNDY4YWEx
ZGViMDhhMTQxMTc0MSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5CkBAIC0xMjQsNiArMTI0LDcgQEAg
Y2xhc3MgU2VydmVyUHJvY2VzczoKICAgICAgICAgICAgIHNlbGYuX3Byb2Muc3RkaW4ud3JpdGUo
aW5wdXQpCiAgICAgICAgIGV4Y2VwdCBJT0Vycm9yLCBlOgogICAgICAgICAgICAgc2VsZi5zdG9w
KCkKKyAgICAgICAgICAgICMgc3RvcCgpIGNhbGxzIF9yZXNldCgpLCBzbyB3ZSBoYXZlIHRvIHNl
dCBjcmFzaGVkIHRvIFRydWUgYWZ0ZXIgY2FsbGluZyBzdG9wKCkuCiAgICAgICAgICAgICBzZWxm
LmNyYXNoZWQgPSBUcnVlCiAKICAgICBkZWYgcmVhZF9saW5lKHNlbGYsIHRpbWVvdXQpOgpAQCAt
MTYwLDggKzE2MSw3IEBAIGNsYXNzIFNlcnZlclByb2Nlc3M6CiAgICAgICAgICAgICAgICAgc3Ry
aW5nIGlzIHJldHVybmVkLgogICAgICAgICAiIiIKICAgICAgICAgaWYgc2l6ZSA8PSAwOgotICAg
ICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignU2VydmVyUHJvY2Vzcy5yZWFkKCkgY2FsbGVkIHdp
dGggYSAnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICdub24tcG9zaXRpdmUgc2l6ZTog
JWQgJyAlIHNpemUpCisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdTZXJ2ZXJQcm9jZXNz
LnJlYWQoKSBjYWxsZWQgd2l0aCBhIG5vbi1wb3NpdGl2ZSBzaXplOiAlZCAnICUgc2l6ZSkKICAg
ICAgICAgcmV0dXJuIHNlbGYuX3JlYWQodGltZW91dCwgc2l6ZSkKIAogICAgIGRlZiBfY2hlY2tf
Zm9yX2NyYXNoKHNlbGYpOgpAQCAtMjM2LDcgKzIzNiw5IEBAIGNsYXNzIFNlcnZlclByb2Nlc3M6
CiAgICAgICAgIGlmIG5vdCBzZWxmLl9wcm9jOgogICAgICAgICAgICAgcmV0dXJuCiAKLSAgICAg
ICAgc2VsZi5fcG9ydC5jaGVja19mb3JfbGVha3Moc2VsZi5uYW1lKCksIHNlbGYucGlkKCkpCisg
ICAgICAgICMgT25seSBib3RoZXIgdG8gY2hlY2sgZm9yIGxlYWtzIGlmIHRoZSBwcm9jZXNzIGlz
IHN0aWxsIHJ1bm5pbmcuCisgICAgICAgIGlmIHNlbGYucG9sbCgpIGlzIE5vbmU6CisgICAgICAg
ICAgICBzZWxmLl9wb3J0LmNoZWNrX2Zvcl9sZWFrcyhzZWxmLm5hbWUoKSwgc2VsZi5waWQoKSkK
IAogICAgICAgICBwaWQgPSBzZWxmLl9wcm9jLnBpZAogICAgICAgICBzZWxmLl9wcm9jLnN0ZGlu
LmNsb3NlKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvd2Via2l0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC93ZWJraXQucHkKaW5kZXggMWM0N2M2NDNiZjIyNTA3NmJjMmUxN2QxYTFjYWQ0ZjMxMjljNTVm
ZC4uYWY3YTQyYmU0OWViNWEwMDlmZjBiM2I2OTFlZDY2ZjE5ZTkwOTRkZiAxMDA2NDQKLS0tIGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkKKysrIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkKQEAgLTQ0
NCwxMSArNDQ0LDEyIEBAIGNsYXNzIFdlYktpdERyaXZlcihEcml2ZXIpOgogICAgICAgICByZXR1
cm4gY21kCiAKICAgICBkZWYgc3RhcnQoc2VsZik6Ci0gICAgICAgIGVudmlyb25tZW50ID0gc2Vs
Zi5fcG9ydC5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoKQorICAgICAgICBzZXJ2ZXJfbmFtZSA9
IHNlbGYuX3BvcnQuZHJpdmVyX25hbWUoKQorICAgICAgICBlbnZpcm9ubWVudCA9IHNlbGYuX3Bv
cnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlcnZlcl9uYW1lKQogICAgICAgICBlbnZpcm9u
bWVudFsnRFlMRF9GUkFNRVdPUktfUEFUSCddID0gc2VsZi5fcG9ydC5fYnVpbGRfcGF0aCgpCiAg
ICAgICAgICMgRklYTUU6IFdlJ3JlIGFzc3VtaW5nIHRoYXQgV2ViS2l0VGVzdFJ1bm5lciBjaGVj
a3MgdGhpcyBEdW1wUmVuZGVyVHJlZS1uYW1lZCBlbnZpcm9ubWVudCB2YXJpYWJsZS4KICAgICAg
ICAgZW52aXJvbm1lbnRbJ0RVTVBSRU5ERVJUUkVFX1RFTVAnXSA9IHN0cihzZWxmLl9kcml2ZXJf
dGVtcGRpcikKLSAgICAgICAgc2VsZi5fc2VydmVyX3Byb2Nlc3MgPSBzZXJ2ZXJfcHJvY2Vzcy5T
ZXJ2ZXJQcm9jZXNzKHNlbGYuX3BvcnQsIHNlbGYuX3BvcnQuZHJpdmVyX25hbWUoKSwgc2VsZi5j
bWRfbGluZSgpLCBlbnZpcm9ubWVudCkKKyAgICAgICAgc2VsZi5fc2VydmVyX3Byb2Nlc3MgPSBz
ZXJ2ZXJfcHJvY2Vzcy5TZXJ2ZXJQcm9jZXNzKHNlbGYuX3BvcnQsIHNlcnZlcl9uYW1lLCBzZWxm
LmNtZF9saW5lKCksIGVudmlyb25tZW50KQogCiAgICAgZGVmIHBvbGwoc2VsZik6CiAgICAgICAg
IHJldHVybiBzZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5wb2xsKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5Cmlu
ZGV4IDAwOTM3OGNhYWQ3OGQ5ODhhMTk2NGY4YWU1NzBhNTYzZmU1NDY2MTkuLjcwMWU3YmQ3Mzhk
ZmZiYzk2YThiZTU3NzNjZDA1NmFlYzEzNDBkM2MgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlci5weQpAQCAt
MTgwLDcgKzE4MCw3IEBAIGNsYXNzIExpZ2h0dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZl
ckJhc2UpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpv
aW4odG1wX21vZHVsZV9wYXRoLCBsaWJfZmlsZSkpCiAKICAgICAgICAgc2VsZi5fc3RhcnRfY21k
ID0gc3RhcnRfY21kCi0gICAgICAgIHNlbGYuX2VudiA9IHNlbGYuX3BvcnRfb2JqLnNldHVwX2Vu
dmlyb25fZm9yX3NlcnZlcigpCisgICAgICAgIHNlbGYuX2VudiA9IHNlbGYuX3BvcnRfb2JqLnNl
dHVwX2Vudmlyb25fZm9yX3NlcnZlcignbGlnaHR0cGQnKQogICAgICAgICBzZWxmLl9tYXBwaW5n
cyA9IG1hcHBpbmdzCiAKICAgICBkZWYgX3JlbW92ZV9zdGFsZV9sb2dzKHNlbGYpOgpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJzb2Nr
ZXRfc2VydmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVy
cy93ZWJzb2NrZXRfc2VydmVyLnB5CmluZGV4IGU0MGJkMTAxMmEzMDI2ZDIwYzljN2M5N2Q2MGNl
OGFjN2ZkNGM2MmUuLmJjMmU5MGE1ZmFhZDFkYjE4N2MwZTBiZmVlMGViYWFhZjRhMjA1YzEgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2Vi
c29ja2V0X3NlcnZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9zZXJ2ZXJzL3dlYnNvY2tldF9zZXJ2ZXIucHkKQEAgLTgyLDE2ICs4MiwxNSBAQCBjbGFzcyBQ
eVdlYlNvY2tldChodHRwX3NlcnZlci5MaWdodHRwZCk6CiAgICAgICAgICAgICBzZWxmLl9waWRf
ZmlsZSA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9ydW50aW1lX3BhdGgsICclcy5waWQn
ICUgc2VsZi5fbmFtZSkKIAogICAgICAgICAjIFdlYmtpdCB0ZXN0cworICAgICAgICAjIEZJWE1F
OiBUaGlzIGlzIHRoZSB3cm9uZyB3YXkgdG8gZGV0ZWN0IGlmIHdlJ3JlIGluIENocm9tZSB2cy4g
V2ViS2l0IQorICAgICAgICAjIFRoZSBwb3J0IG9iamVjdHMgYXJlIHN1cHBvc2VkIHRvIGFic3Ry
YWN0IHRoaXMuCiAgICAgICAgIGlmIHNlbGYuX3Jvb3Q6Ci0gICAgICAgICAgICBzZWxmLl9sYXlv
dXRfdGVzdHMgPSBvcy5wYXRoLmFic3BhdGgoc2VsZi5fcm9vdCkKLSAgICAgICAgICAgIHNlbGYu
X3dlYl9zb2NrZXRfdGVzdHMgPSBvcy5wYXRoLmFic3BhdGgoCi0gICAgICAgICAgICAgICAgb3Mu
cGF0aC5qb2luKHNlbGYuX3Jvb3QsICdodHRwJywgJ3Rlc3RzJywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJ3dlYnNvY2tldCcsICd0ZXN0cycpKQorICAgICAgICAgICAgc2VsZi5fbGF5
b3V0X3Rlc3RzID0gc2VsZi5fZmlsZXN5c3RlbS5hYnNwYXRoKHNlbGYuX3Jvb3QpCisgICAgICAg
ICAgICBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzID0gc2VsZi5fZmlsZXN5c3RlbS5hYnNwYXRoKHNl
bGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9yb290LCAnaHR0cCcsICd0ZXN0cycsICd3ZWJzb2Nr
ZXQnLCAndGVzdHMnKSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHRyeToKICAgICAgICAg
ICAgICAgICBzZWxmLl9sYXlvdXRfdGVzdHMgPSBzZWxmLl9wb3J0X29iai5sYXlvdXRfdGVzdHNf
ZGlyKCkKLSAgICAgICAgICAgICAgICBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzID0gb3MucGF0aC5q
b2luKHNlbGYuX2xheW91dF90ZXN0cywKLSAgICAgICAgICAgICAgICAgICAgICdodHRwJywgJ3Rl
c3RzJywgJ3dlYnNvY2tldCcsICd0ZXN0cycpCisgICAgICAgICAgICAgICAgc2VsZi5fd2ViX3Nv
Y2tldF90ZXN0cyA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9sYXlvdXRfdGVzdHMsICdo
dHRwJywgJ3Rlc3RzJywgJ3dlYnNvY2tldCcsICd0ZXN0cycpCiAgICAgICAgICAgICBleGNlcHQ6
CiAgICAgICAgICAgICAgICAgc2VsZi5fd2ViX3NvY2tldF90ZXN0cyA9IE5vbmUKIApAQCAtMTAz
LDM0ICsxMDIsMzIgQEAgY2xhc3MgUHlXZWJTb2NrZXQoaHR0cF9zZXJ2ZXIuTGlnaHR0cGQpOgog
ICAgIGRlZiBfcHJlcGFyZV9jb25maWcoc2VsZik6CiAgICAgICAgIHRpbWVfc3RyID0gdGltZS5z
dHJmdGltZSgnJWQlYiVZLSVIJU0lUycpCiAgICAgICAgIGxvZ19maWxlX25hbWUgPSBzZWxmLl9s
b2dfcHJlZml4ICsgdGltZV9zdHIKKyAgICAgICAgIyBGSVhNRTogRG9lc24ndCBFeGVjdXRpdmUg
aGF2ZSBhIGRldm51bGwsIHNvIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byB1c2Ugb3MuZGV2bnVsbCBk
aXJlY3RseT8KICAgICAgICAgc2VsZi5fd3NpbiA9IG9wZW4ob3MuZGV2bnVsbCwgJ3InKQogCi0g
ICAgICAgIGVycm9yX2xvZyA9IG9zLnBhdGguam9pbihzZWxmLl9vdXRwdXRfZGlyLCBsb2dfZmls
ZV9uYW1lICsgIi1lcnIudHh0IikKLQotICAgICAgICBvdXRwdXRfbG9nID0gb3MucGF0aC5qb2lu
KHNlbGYuX291dHB1dF9kaXIsIGxvZ19maWxlX25hbWUgKyAiLW91dC50eHQiKQorICAgICAgICBl
cnJvcl9sb2cgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fb3V0cHV0X2RpciwgbG9nX2Zp
bGVfbmFtZSArICItZXJyLnR4dCIpCisgICAgICAgIG91dHB1dF9sb2cgPSBzZWxmLl9maWxlc3lz
dGVtLmpvaW4oc2VsZi5fb3V0cHV0X2RpciwgbG9nX2ZpbGVfbmFtZSArICItb3V0LnR4dCIpCiAg
ICAgICAgIHNlbGYuX3dzb3V0ID0gc2VsZi5fZmlsZXN5c3RlbS5vcGVuX3RleHRfZmlsZV9mb3Jf
d3JpdGluZyhvdXRwdXRfbG9nKQogCiAgICAgICAgIGZyb20gd2Via2l0cHkudGhpcmRwYXJ0eS5h
dXRvaW5zdGFsbGVkLnB5d2Vic29ja2V0IGltcG9ydCBtb2RfcHl3ZWJzb2NrZXQKICAgICAgICAg
cHl0aG9uX2ludGVycCA9IHN5cy5leGVjdXRhYmxlCi0gICAgICAgIHB5d2Vic29ja2V0X2Jhc2Ug
PSBvcy5wYXRoLmpvaW4oCi0gICAgICAgICAgICBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJu
YW1lKG9zLnBhdGguZGlybmFtZSgKLSAgICAgICAgICAgIG9zLnBhdGguYWJzcGF0aChfX2ZpbGVf
XykpKSksICd0aGlyZHBhcnR5JywKLSAgICAgICAgICAgICdhdXRvaW5zdGFsbGVkJywgJ3B5d2Vi
c29ja2V0JykKLSAgICAgICAgcHl3ZWJzb2NrZXRfc2NyaXB0ID0gb3MucGF0aC5qb2luKHB5d2Vi
c29ja2V0X2Jhc2UsICdtb2RfcHl3ZWJzb2NrZXQnLAotICAgICAgICAgICAgJ3N0YW5kYWxvbmUu
cHknKQorICAgICAgICAjIEZJWE1FOiBVc2Ugc2VsZi5fZmlsZXN5c3RlbS5wYXRoX3RvX21vZHVs
ZShzZWxmLl9fbW9kdWxlX18pIGluc3RlYWQgb2YgX19maWxlX18KKyAgICAgICAgIyBJIHRoaW5r
IHRoaXMgaXMgdHJ5aW5nIHRvIGdldCB0aGUgY2hyb21lIGRpcmVjdG9yeT8gIERvZXNuJ3QgdGhl
IHBvcnQgb2JqZWN0IGtub3cgdGhhdD8KKyAgICAgICAgcHl3ZWJzb2NrZXRfYmFzZSA9IHNlbGYu
X2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9maWxlc3lzdGVtLmRpcm5hbWUoc2VsZi5fZmlsZXN5c3Rl
bS5kaXJuYW1lKHNlbGYuX2ZpbGVzeXN0ZW0uZGlybmFtZShzZWxmLl9maWxlc3lzdGVtLmFic3Bh
dGgoX19maWxlX18pKSkpLCAndGhpcmRwYXJ0eScsICdhdXRvaW5zdGFsbGVkJywgJ3B5d2Vic29j
a2V0JykKKyAgICAgICAgcHl3ZWJzb2NrZXRfc2NyaXB0ID0gc2VsZi5fZmlsZXN5c3RlbS5qb2lu
KHB5d2Vic29ja2V0X2Jhc2UsICdtb2RfcHl3ZWJzb2NrZXQnLCAnc3RhbmRhbG9uZS5weScpCiAg
ICAgICAgIHN0YXJ0X2NtZCA9IFsKICAgICAgICAgICAgIHB5dGhvbl9pbnRlcnAsICctdScsIHB5
d2Vic29ja2V0X3NjcmlwdCwKICAgICAgICAgICAgICctLXNlcnZlci1ob3N0JywgJzEyNy4wLjAu
MScsCiAgICAgICAgICAgICAnLS1wb3J0Jywgc3RyKHNlbGYuX3BvcnQpLAotICAgICAgICAgICAg
Jy0tZG9jdW1lbnQtcm9vdCcsIG9zLnBhdGguam9pbihzZWxmLl9sYXlvdXRfdGVzdHMsICdodHRw
JywgJ3Rlc3RzJyksCisgICAgICAgICAgICAjIEZJWE1FOiBEb24ndCB3ZSBoYXZlIGEgc2VsZi5f
cG9ydF9vYmoubGF5b3V0X3Rlc3RfcGF0aD8KKyAgICAgICAgICAgICctLWRvY3VtZW50LXJvb3Qn
LCBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fbGF5b3V0X3Rlc3RzLCAnaHR0cCcsICd0ZXN0
cycpLAogICAgICAgICAgICAgJy0tc2Nhbi1kaXInLCBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzLAog
ICAgICAgICAgICAgJy0tY2dpLXBhdGhzJywgJy93ZWJzb2NrZXQvdGVzdHMnLAogICAgICAgICAg
ICAgJy0tbG9nLWZpbGUnLCBlcnJvcl9sb2csCiAgICAgICAgIF0KIAotICAgICAgICBoYW5kbGVy
X21hcF9maWxlID0gb3MucGF0aC5qb2luKHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hhbmRsZXJfbWFwLnR4dCcpCi0gICAg
ICAgIGlmIG9zLnBhdGguZXhpc3RzKGhhbmRsZXJfbWFwX2ZpbGUpOgorICAgICAgICBoYW5kbGVy
X21hcF9maWxlID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMs
ICdoYW5kbGVyX21hcC50eHQnKQorICAgICAgICBpZiBzZWxmLl9maWxlc3lzdGVtLmV4aXN0cyho
YW5kbGVyX21hcF9maWxlKToKICAgICAgICAgICAgIF9sb2cuZGVidWcoJ1VzaW5nIGhhbmRsZXJf
bWFwX2ZpbGU6ICVzJyAlIGhhbmRsZXJfbWFwX2ZpbGUpCiAgICAgICAgICAgICBzdGFydF9jbWQu
YXBwZW5kKCctLXdlYnNvY2staGFuZGxlcnMtbWFwLWZpbGUnKQogICAgICAgICAgICAgc3RhcnRf
Y21kLmFwcGVuZChoYW5kbGVyX21hcF9maWxlKQpAQCAtMTQyLDggKzEzOSw5IEBAIGNsYXNzIFB5
V2ViU29ja2V0KGh0dHBfc2VydmVyLkxpZ2h0dHBkKToKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICctYycsIHNlbGYuX2NlcnRpZmljYXRlXSkKIAogICAgICAgICBzZWxmLl9zdGFydF9j
bWQgPSBzdGFydF9jbWQKLSAgICAgICAgc2VsZi5fZW52ID0gc2VsZi5fcG9ydF9vYmouc2V0dXBf
ZW52aXJvbl9mb3Jfc2VydmVyKCkKLSAgICAgICAgc2VsZi5fZW52WydQWVRIT05QQVRIJ10gPSAo
cHl3ZWJzb2NrZXRfYmFzZSArIG9zLnBhdGgucGF0aHNlcCArIHNlbGYuX2Vudi5nZXQoJ1BZVEhP
TlBBVEgnLCAnJykpCisgICAgICAgIHNlcnZlcl9uYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5iYXNl
bmFtZShweXdlYnNvY2tldF9zY3JpcHQpCisgICAgICAgIHNlbGYuX2VudiA9IHNlbGYuX3BvcnRf
b2JqLnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZXJ2ZXJfbmFtZSkKKyAgICAgICAgc2VsZi5f
ZW52WydQWVRIT05QQVRIJ10gPSAocHl3ZWJzb2NrZXRfYmFzZSArIHNlbGYuX2ZpbGVzeXN0ZW0u
cGF0aHNlcCArIHNlbGYuX2Vudi5nZXQoJ1BZVEhPTlBBVEgnLCAnJykpCiAKICAgICBkZWYgX3Jl
bW92ZV9zdGFsZV9sb2dzKHNlbGYpOgogICAgICAgICB0cnk6Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101301</attachid>
            <date>2011-07-19 04:47:20 -0700</date>
            <delta_ts>2011-07-19 15:25:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64792-20110719044719.patch</filename>
            <type>text/plain</type>
            <size>19305</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTEyNDUKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkNzFlYzVlYWE3NTQzOWE4NGMyZTYxYTUzNjNkZWRhMjUw
MTdmMmI4Li5hNzk5MGUxYWJiODk4MTlhNWQ2MTEwOWU3YjExODdiMmI0ZmEyZWMyIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTEtMDctMTkgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAg
IG5ldy1ydW4td2Via2l0LXRlc3RzIHNob3VsZCBvbmx5IGVuYWJsZSBNYWxsb2NTdGFja0xvZ2dp
bmcgZm9yIERSVAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NjQ3OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUaGUgcHJldmlvdXMgY29kZSB3b3VsZCBlbmFibGUgaXQgZm9yIGFsbCBzZXJ2ZXJzIGxhdW5j
aGVkCisgICAgICAgIGJ5IHRoZSBwb3J0LCB3aGljaCBpbmNsdWRlZCBBcGFjaGUsIHRoZSBweXRo
b24gd2Vic29ja2V0IHNlcnZlcgorICAgICAgICBhcyB3ZWxsIGFzIEltYWdlRGlmZi4gIE5vdyBv
bmx5IER1bXBSZW5kZXJUcmVlIHdpbGwgaGF2ZQorICAgICAgICBNYWxsb2NTdGFja0xvZ2dpbmcg
ZW5hYmxlZCBvciB0aGUgR3VhcmRNYWxsb2MgbGlicmFyeSBpbmplY3RlZC4KKworICAgICAgICBJ
IGFsc28gY2xlYW5lZCB1cCB0aGUgd2Vic29ja2V0X3NlcnZlciBjb2RlIHRvIHVzZSBmaWxlc3lz
dGVtCisgICAgICAgIHdoaWxlIEkgd2FzIGluIGl0LgorCisgICAgICAgIEkgYWxzbyBtYWRlIERS
VCByZXN0YXJ0IGV2ZXJ5IDEwMDAgdGVzdHMgd2hlbiBydW5uaW5nIHdpdGgKKyAgICAgICAgLS1s
ZWFrcyBlbmFibGVkLiAgSSBiZWxpZXZlIHRoaXMgbWFkZSB0aGUgLS1sZWFrcyBydW4gc2xpZ2h0
bHkKKyAgICAgICAgZmFzdGVyLCBidXQgaXQgc3RpbGwgdGFrZXMgb3ZlciBhbiBob3VyIG9uIG15
IG1hY2hpbmUuIDooCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9j
b250cm9sbGVycy93b3JrZXIucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvY2hyb21pdW1fd2luLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvbWFjLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvcXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L3dlYmtpdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2Vic29ja2V0X3NlcnZlci5weToKKwogMjAxMS0wNy0x
OCAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgbmV3LXJ1bi13ZWJr
aXQtdGVzdHMgc2hvdWxkIHN1cHBvcnQgLS1sZWFrcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5IGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5CmluZGV4IDUx
NzgwNDIwMTMxNzEwZmI5ODMxYmQ2MTFiMGU4MjM3N2I4ZTAyNTcuLmE2ZGQ5NGVmYTZjYTk2ZDA2
N2YyN2U4Njc1MjAyMzhmMDUwZmUwNWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlci5weQorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy93b3JrZXIucHkKQEAgLTY4LDggKzY4
LDcgQEAgY2xhc3MgV29ya2VyKG1hbmFnZXJfd29ya2VyX2Jyb2tlci5BYnN0cmFjdFdvcmtlcik6
CiAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0gPSBwb3J0LmZpbGVzeXN0ZW0KICAgICAgICAgc2Vs
Zi5fYmF0Y2hfY291bnQgPSAwCiAgICAgICAgIHNlbGYuX2JhdGNoX3NpemUgPSBzZWxmLl9vcHRp
b25zLmJhdGNoX3NpemUKLSAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5
c3RlbS5qb2luKHBvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0ZXN0c19ydW4lZC50eHQiICUgc2VsZi5f
d29ya2VyX251bWJlcikKKyAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5
c3RlbS5qb2luKHBvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwgInRlc3RzX3J1biVkLnR4dCIgJSBz
ZWxmLl93b3JrZXJfbnVtYmVyKQogICAgICAgICBzZWxmLl90ZXN0c19ydW5fZmlsZSA9IHNlbGYu
X2ZpbGVzeXN0ZW0ub3Blbl90ZXh0X2ZpbGVfZm9yX3dyaXRpbmcodGVzdHNfcnVuX2ZpbGVuYW1l
KQogCiAgICAgZGVmIGNhbmNlbChzZWxmKToKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQppbmRleCAzNjBiZDZkMDE0ZWYxOWRjYWYxOThiMGYy
MWEzM2MwYWE0MTM3NTI0Li44MmFhMDc3NzE5OWY1YjE4MjZlOTRjNjkxMDM1NmYxNDdlNjU5MGU1
IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jh
c2UucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNl
LnB5CkBAIC0yMzQsNyArMjM0LDggQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAg
aHR0cGRfcGF0aCA9IHNlbGYuX3BhdGhfdG9fbGlnaHR0cGQoKQogCiAgICAgICAgIHRyeToKLSAg
ICAgICAgICAgIGVudiA9IHNlbGYuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAg
ICAgIHNlcnZlcl9uYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5iYXNlbmFtZShodHRwZF9wYXRoKQor
ICAgICAgICAgICAgZW52ID0gc2VsZi5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VydmVyX25h
bWUpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFtodHRw
ZF9wYXRoLCAiLXYiXSwgZW52PWVudiwgcmV0dXJuX2V4aXRfY29kZT1UcnVlKSA9PSAwCiAgICAg
ICAgIGV4Y2VwdCBPU0Vycm9yOgogICAgICAgICAgICAgX2xvZy5lcnJvcigiTm8gaHR0cGQgZm91
bmQuIENhbm5vdCBydW4gaHR0cCB0ZXN0cy4iKQpAQCAtNjYyLDcgKzY2Myw3IEBAIGNsYXNzIFBv
cnQob2JqZWN0KToKICAgICAgICAgIiIiUGVyZm9ybSBwb3J0LXNwZWNpZmljIHdvcmsgYXQgdGhl
IGJlZ2lubmluZyBvZiBhIHRlc3QgcnVuLiIiIgogICAgICAgICBwYXNzCiAKLSAgICBkZWYgc2V0
dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYpOgorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9z
ZXJ2ZXIoc2VsZiwgc2VydmVyX25hbWU9Tm9uZSk6CiAgICAgICAgICIiIlBlcmZvcm0gcG9ydC1z
cGVjaWZpYyB3b3JrIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBzZXJ2ZXIgbGF1bmNoLgogCiAgICAg
ICAgIFJldHVybnM6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L2Nocm9taXVtX3dpbi5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CmluZGV4IDM1MTI5OTExNmQxMDZiZDM2MWE5YzBh
MDNlNmE3ZDgyYjFkNDVhMWMuLjUxYjI1YjNmM2VhNjIxMzhjMTcxOTA5MzIxZjY2ZDMxM2E3ZDll
MmEgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
Y2hyb21pdW1fd2luLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvY2hyb21pdW1fd2luLnB5CkBAIC05OCw3ICs5OCw3IEBAIGNsYXNzIENocm9taXVtV2lu
UG9ydChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogICAgICAgICAgICAgYXNzZXJ0IHNlbGYuX3Zl
cnNpb24gaW4gc2VsZi5TVVBQT1JURURfVkVSU0lPTlMsICIlcyBpcyBub3QgaW4gJXMiICUgKHNl
bGYuX3ZlcnNpb24sIHNlbGYuU1VQUE9SVEVEX1ZFUlNJT05TKQogICAgICAgICBzZWxmLl9vcGVy
YXRpbmdfc3lzdGVtID0gJ3dpbicKIAotICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIo
c2VsZik6CisgICAgZGVmIHNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFt
ZT1Ob25lKToKICAgICAgICAgZW52ID0gY2hyb21pdW0uQ2hyb21pdW1Qb3J0LnNldHVwX2Vudmly
b25fZm9yX3NlcnZlcihzZWxmKQogICAgICAgICAjIFB1dCB0aGUgY3lnd2luIGRpcmVjdG9yeSBm
aXJzdCBpbiB0aGUgcGF0aCB0byBmaW5kIGN5Z3dpbjEuZGxsLgogICAgICAgICBlbnZbIlBBVEgi
XSA9ICIlczslcyIgJSAoc2VsZi5wYXRoX2Zyb21fY2hyb21pdW1fYmFzZSgidGhpcmRfcGFydHki
LCAiY3lnd2luIiwgImJpbiIpLCBlbnZbIlBBVEgiXSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9ndGsucHkKaW5kZXggNTc0YzI5MTdlNDAzMDJiM2U2N2E1
NWY3ZjI2MzQ4ZTJmNzBlY2I1NC4uNzZiM2UxOWYyZWU2MzdiNzU1ZWZmYzI5YTFmMjNkOGFhMmI1
YWNlMCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9ndGsucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9n
dGsucHkKQEAgLTQ0LDEwICs0NCwxMSBAQCBjbGFzcyBHdGtEcml2ZXIod2Via2l0LldlYktpdERy
aXZlcik6CiAgICAgICAgIGRpc3BsYXlfaWQgPSBzZWxmLl93b3JrZXJfbnVtYmVyICsgMQogICAg
ICAgICBydW5feHZmYiA9IFsiWHZmYiIsICI6JWQiICUgKGRpc3BsYXlfaWQpLCAiLXNjcmVlbiIs
ICAiMCIsICI4MDB4NjAweDI0IiwgIi1ub2xpc3RlbiIsICJ0Y3AiXQogICAgICAgICBzZWxmLl94
dmZiX3Byb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKHJ1bl94dmZiKQotICAgICAgICBlbnZpcm9u
bWVudCA9IHNlbGYuX3BvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAgc2Vy
dmVyX25hbWUgPSBzZWxmLl9wb3J0LmRyaXZlcl9uYW1lKCkKKyAgICAgICAgZW52aXJvbm1lbnQg
PSBzZWxmLl9wb3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZXJ2ZXJfbmFtZSkKICAgICAg
ICAgIyBXZSBtdXN0IGRvIHRoaXMgaGVyZSBiZWNhdXNlIHRoZSBESVNQTEFZIG51bWJlciBkZXBl
bmRzIG9uIF93b3JrZXJfbnVtYmVyCiAgICAgICAgIGVudmlyb25tZW50WydESVNQTEFZJ10gPSAi
OiVkIiAlIChkaXNwbGF5X2lkKQotICAgICAgICBzZWxmLl9zZXJ2ZXJfcHJvY2VzcyA9IHNlcnZl
cl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VsZi5fcG9ydC5kcml2ZXJfbmFt
ZSgpLCBzZWxmLmNtZF9saW5lKCksIGVudmlyb25tZW50KQorICAgICAgICBzZWxmLl9zZXJ2ZXJf
cHJvY2VzcyA9IHNlcnZlcl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VydmVy
X25hbWUsIHNlbGYuY21kX2xpbmUoKSwgZW52aXJvbm1lbnQpCiAKICAgICBkZWYgc3RvcChzZWxm
KToKICAgICAgICAgd2Via2l0LldlYktpdERyaXZlci5zdG9wKHNlbGYpCkBAIC02NCw4ICs2NSw4
IEBAIGNsYXNzIEd0a1BvcnQod2Via2l0LldlYktpdFBvcnQpOgogICAgIGRlZiBjcmVhdGVfZHJp
dmVyKHNlbGYsIHdvcmtlcl9udW1iZXIpOgogICAgICAgICByZXR1cm4gR3RrRHJpdmVyKHNlbGYs
IHdvcmtlcl9udW1iZXIpCiAKLSAgICBkZWYgc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYp
OgotICAgICAgICBlbnZpcm9ubWVudCA9IHdlYmtpdC5XZWJLaXRQb3J0LnNldHVwX2Vudmlyb25f
Zm9yX3NlcnZlcihzZWxmKQorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VsZiwg
c2VydmVyX25hbWU9Tm9uZSk6CisgICAgICAgIGVudmlyb25tZW50ID0gd2Via2l0LldlYktpdFBv
cnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lKQogICAgICAgICBl
bnZpcm9ubWVudFsnR1RLX01PRFVMRVMnXSA9ICdnYWlsJwogICAgICAgICBlbnZpcm9ubWVudFsn
TElCT1ZFUkxBWV9TQ1JPTExCQVInXSA9ICcwJwogICAgICAgICBlbnZpcm9ubWVudFsnV0VCS0lU
X0lOU1BFQ1RPUl9QQVRIJ10gPSBzZWxmLl9idWlsZF9wYXRoKCdQcm9ncmFtcy9yZXNvdXJjZXMv
aW5zcGVjdG9yJykKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvbWFjLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9tYWMucHkKaW5kZXggNmVjZmE3ZTFiMzgyMWIxZTNkZTdhNWUyZTM1ODUzNGU2MWEzZDFlOS4u
Njc2ZmIyYmYyYzkyMDNjNmVhMjcwYzAzMGNhY2VhZDcyZTU5MzY5YSAxMDA2NDQKLS0tIGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKQEAgLTExOCw3ICsxMTgs
MTAgQEAgY2xhc3MgTGVha0RldGVjdG9yKG9iamVjdCk6CiAgICAgZGVmIGNoZWNrX2Zvcl9sZWFr
cyhzZWxmLCBwcm9jZXNzX25hbWUsIHByb2Nlc3NfcGlkKToKICAgICAgICAgX2xvZy5kZWJ1Zygi
Q2hlY2tpbmcgZm9yIGxlYWtzIGluICVzIiAlIHByb2Nlc3NfbmFtZSkKICAgICAgICAgdHJ5Ogot
ICAgICAgICAgICAgbGVha3Nfb3V0cHV0ID0gc2VsZi5fcG9ydC5fcnVuX3NjcmlwdCgicnVuLWxl
YWtzIiwgc2VsZi5fbGVha3NfYXJncyhwcm9jZXNzX3BpZCksIGluY2x1ZGVfY29uZmlndXJhdGlv
bl9hcmd1bWVudHM9RmFsc2UpCisgICAgICAgICAgICAjIE9kZGx5IGVub3VnaCwgcnVuLWxlYWtz
IChvciB0aGUgdW5kZXJseWluZyBsZWFrcyB0b29sKSBkb2VzIG5vdCBzZWVtIHRvIGFsd2F5cyBv
dXRwdXQgdXRmLTgsCisgICAgICAgICAgICAjIHRodXMgd2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZh
bHNlLiAgV2l0aG91dCB0aGlzIGNvZGUgd2UndmUgc2VlbiBlcnJvcnMgbGlrZToKKyAgICAgICAg
ICAgICMgIlVuaWNvZGVEZWNvZGVFcnJvcjogJ3V0ZjgnIGNvZGVjIGNhbid0IGRlY29kZSBieXRl
IDB4ODggaW4gcG9zaXRpb24gNzc5ODc0OiB1bmV4cGVjdGVkIGNvZGUgYnl0ZSIKKyAgICAgICAg
ICAgIGxlYWtzX291dHB1dCA9IHNlbGYuX3BvcnQuX3J1bl9zY3JpcHQoInJ1bi1sZWFrcyIsIHNl
bGYuX2xlYWtzX2FyZ3MocHJvY2Vzc19waWQpLCBpbmNsdWRlX2NvbmZpZ3VyYXRpb25fYXJndW1l
bnRzPUZhbHNlLCBkZWNvZGVfb3V0cHV0PUZhbHNlKQogICAgICAgICBleGNlcHQgU2NyaXB0RXJy
b3IsIGU6CiAgICAgICAgICAgICBfbG9nLndhcm4oIkZhaWxlZCB0byBydW4gbGVha3MgdG9vbDog
JXMiICUgZS5tZXNzYWdlX3dpdGhfb3V0cHV0KCkpCiAgICAgICAgICAgICByZXR1cm4KQEAgLTE5
NSw2ICsxOTgsMTAgQEAgY2xhc3MgTWFjUG9ydChXZWJLaXRQb3J0KToKICAgICAgICAgICAgIGFz
c2VydCBzZWxmLl92ZXJzaW9uIGluIHNlbGYuU1VQUE9SVEVEX1ZFUlNJT05TLCAiJXMgaXMgbm90
IGluICVzIiAlIChzZWxmLl92ZXJzaW9uLCBzZWxmLlNVUFBPUlRFRF9WRVJTSU9OUykKICAgICAg
ICAgc2VsZi5fb3BlcmF0aW5nX3N5c3RlbSA9ICdtYWMnCiAgICAgICAgIHNlbGYuX2xlYWtfZGV0
ZWN0b3IgPSBMZWFrRGV0ZWN0b3Ioc2VsZikKKyAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCJs
ZWFrcyIpOgorICAgICAgICAgICAgIyBEdW1wUmVuZGVyVHJlZSBzbG93cyBkb3duIG5vdGljYWJs
eSBpZiB3ZSBydW4gbW9yZSB0aGFuIGFib3V0IDEwMDAgdGVzdHMgaW4gYSBiYXRjaAorICAgICAg
ICAgICAgIyB3aXRoIE1hbGxvY1N0YWNrTG9nZ2luZyBlbmFibGVkLgorICAgICAgICAgICAgc2Vs
Zi5zZXRfb3B0aW9uX2RlZmF1bHQoImJhdGNoX3NpemUiLCAxMDAwKQogCiAgICAgZGVmIGJhc2Vs
aW5lX3NlYXJjaF9wYXRoKHNlbGYpOgogICAgICAgICBzZWFyY2hfcGF0aHMgPSBzZWxmLkZBTExC
QUNLX1BBVEhTW3NlbGYuX3ZlcnNpb25dCkBAIC0yMDIsMTIgKzIwOSwxMyBAQCBjbGFzcyBNYWNQ
b3J0KFdlYktpdFBvcnQpOgogICAgICAgICAgICAgc2VhcmNoX3BhdGhzLmluc2VydCgwLCBzZWxm
Ll93azJfcG9ydF9uYW1lKCkpCiAgICAgICAgIHJldHVybiBtYXAoc2VsZi5fd2Via2l0X2Jhc2Vs
aW5lX3BhdGgsIHNlYXJjaF9wYXRocykKIAotICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2
ZXIoc2VsZik6Ci0gICAgICAgIGVudiA9IFdlYktpdFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2Vy
dmVyKHNlbGYpCi0gICAgICAgIGlmIHNlbGYuZ2V0X29wdGlvbignbGVha3MnKToKLSAgICAgICAg
ICAgIGVudlsnTWFsbG9jU3RhY2tMb2dnaW5nJ10gPSAnMScKLSAgICAgICAgaWYgc2VsZi5nZXRf
b3B0aW9uKCdndWFyZF9tYWxsb2MnKToKLSAgICAgICAgICAgIGVudlsnRFlMRF9JTlNFUlRfTElC
UkFSSUVTJ10gPSAnL3Vzci9saWIvbGliZ21hbGxvYy5keWxpYicKKyAgICBkZWYgc2V0dXBfZW52
aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lPU5vbmUpOgorICAgICAgICBlbnYgPSBX
ZWJLaXRQb3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFtZSkKKyAg
ICAgICAgaWYgc2VydmVyX25hbWUgPT0gc2VsZi5kcml2ZXJfbmFtZSgpOgorICAgICAgICAgICAg
aWYgc2VsZi5nZXRfb3B0aW9uKCdsZWFrcycpOgorICAgICAgICAgICAgICAgIGVudlsnTWFsbG9j
U3RhY2tMb2dnaW5nJ10gPSAnMScKKyAgICAgICAgICAgIGlmIHNlbGYuZ2V0X29wdGlvbignZ3Vh
cmRfbWFsbG9jJyk6CisgICAgICAgICAgICAgICAgZW52WydEWUxEX0lOU0VSVF9MSUJSQVJJRVMn
XSA9ICcvdXNyL2xpYi9saWJnbWFsbG9jLmR5bGliJwogICAgICAgICByZXR1cm4gZW52CiAKICAg
ICAjIEJlbG9uZ3Mgb24gYSBQbGF0Zm9ybSBvYmplY3QuCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weQppbmRleCBmZGFiYTFjODQ5NTQ2NjFmZTg1M2M3
YjMwZjhlYTNiMTAxOWZiYWEyLi43OTNhNjBmNTY2ZWU3NGRjM2JmYjRhMmE5ZDE2NmZmZDYyNzUy
MWM2IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L3F0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQu
cHkKQEAgLTgyLDggKzgyLDggQEAgY2xhc3MgUXRQb3J0KFdlYktpdFBvcnQpOgogICAgIGRlZiBf
cnVudGltZV9mZWF0dXJlX2xpc3Qoc2VsZik6CiAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICBk
ZWYgc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYpOgotICAgICAgICBlbnYgPSBXZWJLaXRQ
b3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmKQorICAgIGRlZiBzZXR1cF9lbnZpcm9u
X2Zvcl9zZXJ2ZXIoc2VsZiwgc2VydmVyX25hbWU9Tm9uZSk6CisgICAgICAgIGVudiA9IFdlYktp
dFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lKQogICAgICAg
ICBlbnZbJ1FUV0VCS0lUX1BMVUdJTl9QQVRIJ10gPSBzZWxmLl9idWlsZF9wYXRoKCdsaWIvcGx1
Z2lucycpCiAgICAgICAgIHJldHVybiBlbnYKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weSBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvc2VydmVyX3Byb2Nlc3MucHkKaW5kZXggZTZi
MTYxZTQ0MGI1MzBlMDA2MTBiOTIzMjBhMDAyNTUwZjc0MGRmMy4uNzdjY2E2ZWZkZjk2ZDkxYjZh
ZGJiNDY4YWExZGViMDhhMTQxMTc0MSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weQorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5CkBAIC0xMjQsNiAr
MTI0LDcgQEAgY2xhc3MgU2VydmVyUHJvY2VzczoKICAgICAgICAgICAgIHNlbGYuX3Byb2Muc3Rk
aW4ud3JpdGUoaW5wdXQpCiAgICAgICAgIGV4Y2VwdCBJT0Vycm9yLCBlOgogICAgICAgICAgICAg
c2VsZi5zdG9wKCkKKyAgICAgICAgICAgICMgc3RvcCgpIGNhbGxzIF9yZXNldCgpLCBzbyB3ZSBo
YXZlIHRvIHNldCBjcmFzaGVkIHRvIFRydWUgYWZ0ZXIgY2FsbGluZyBzdG9wKCkuCiAgICAgICAg
ICAgICBzZWxmLmNyYXNoZWQgPSBUcnVlCiAKICAgICBkZWYgcmVhZF9saW5lKHNlbGYsIHRpbWVv
dXQpOgpAQCAtMTYwLDggKzE2MSw3IEBAIGNsYXNzIFNlcnZlclByb2Nlc3M6CiAgICAgICAgICAg
ICAgICAgc3RyaW5nIGlzIHJldHVybmVkLgogICAgICAgICAiIiIKICAgICAgICAgaWYgc2l6ZSA8
PSAwOgotICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignU2VydmVyUHJvY2Vzcy5yZWFkKCkg
Y2FsbGVkIHdpdGggYSAnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICdub24tcG9zaXRp
dmUgc2l6ZTogJWQgJyAlIHNpemUpCisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdTZXJ2
ZXJQcm9jZXNzLnJlYWQoKSBjYWxsZWQgd2l0aCBhIG5vbi1wb3NpdGl2ZSBzaXplOiAlZCAnICUg
c2l6ZSkKICAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWQodGltZW91dCwgc2l6ZSkKIAogICAgIGRl
ZiBfY2hlY2tfZm9yX2NyYXNoKHNlbGYpOgpAQCAtMjM2LDcgKzIzNiw5IEBAIGNsYXNzIFNlcnZl
clByb2Nlc3M6CiAgICAgICAgIGlmIG5vdCBzZWxmLl9wcm9jOgogICAgICAgICAgICAgcmV0dXJu
CiAKLSAgICAgICAgc2VsZi5fcG9ydC5jaGVja19mb3JfbGVha3Moc2VsZi5uYW1lKCksIHNlbGYu
cGlkKCkpCisgICAgICAgICMgT25seSBib3RoZXIgdG8gY2hlY2sgZm9yIGxlYWtzIGlmIHRoZSBw
cm9jZXNzIGlzIHN0aWxsIHJ1bm5pbmcuCisgICAgICAgIGlmIHNlbGYucG9sbCgpIGlzIE5vbmU6
CisgICAgICAgICAgICBzZWxmLl9wb3J0LmNoZWNrX2Zvcl9sZWFrcyhzZWxmLm5hbWUoKSwgc2Vs
Zi5waWQoKSkKIAogICAgICAgICBwaWQgPSBzZWxmLl9wcm9jLnBpZAogICAgICAgICBzZWxmLl9w
cm9jLnN0ZGluLmNsb3NlKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC93ZWJraXQucHkKaW5kZXggMWM0N2M2NDNiZjIyNTA3NmJjMmUxN2QxYTFjYWQ0
ZjMxMjljNTVmZC4uYTEzOTVlOTAxNDhjMjUwOWE1OWRlMjhmNGFmYmZjYmRiZTRkNmQ1NCAxMDA2
NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQu
cHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQu
cHkKQEAgLTExMSwxMyArMTExLDEzIEBAIGNsYXNzIFdlYktpdFBvcnQoUG9ydCk6CiAgICAgICAg
ICAgICBjb25maWdfYXJncy5hcHBlbmQocG9ydF9mbGFnKQogICAgICAgICByZXR1cm4gY29uZmln
X2FyZ3MKIAotICAgIGRlZiBfcnVuX3NjcmlwdChzZWxmLCBzY3JpcHRfbmFtZSwgYXJncz1Ob25l
LCBpbmNsdWRlX2NvbmZpZ3VyYXRpb25fYXJndW1lbnRzPVRydWUpOgorICAgIGRlZiBfcnVuX3Nj
cmlwdChzZWxmLCBzY3JpcHRfbmFtZSwgYXJncz1Ob25lLCBpbmNsdWRlX2NvbmZpZ3VyYXRpb25f
YXJndW1lbnRzPVRydWUsIGRlY29kZV9vdXRwdXQ9VHJ1ZSk6CiAgICAgICAgIHJ1bl9zY3JpcHRf
Y29tbWFuZCA9IFtzZWxmLl9jb25maWcuc2NyaXB0X3BhdGgoc2NyaXB0X25hbWUpXQogICAgICAg
ICBpZiBpbmNsdWRlX2NvbmZpZ3VyYXRpb25fYXJndW1lbnRzOgogICAgICAgICAgICAgcnVuX3Nj
cmlwdF9jb21tYW5kLmV4dGVuZChzZWxmLl9hcmd1bWVudHNfZm9yX2NvbmZpZ3VyYXRpb24oKSkK
ICAgICAgICAgaWYgYXJnczoKICAgICAgICAgICAgIHJ1bl9zY3JpcHRfY29tbWFuZC5leHRlbmQo
YXJncykKLSAgICAgICAgcmV0dXJuIHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChydW5fc2Ny
aXB0X2NvbW1hbmQsIGN3ZD1zZWxmLl9jb25maWcud2Via2l0X2Jhc2VfZGlyKCkpCisgICAgICAg
IHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQocnVuX3NjcmlwdF9jb21tYW5kLCBj
d2Q9c2VsZi5fY29uZmlnLndlYmtpdF9iYXNlX2RpcigpLCBkZWNvZGVfb3V0cHV0PWRlY29kZV9v
dXRwdXQpCiAKICAgICBkZWYgX2J1aWxkX2RyaXZlcihzZWxmKToKICAgICAgICAgdHJ5OgpAQCAt
NDQ0LDExICs0NDQsMTIgQEAgY2xhc3MgV2ViS2l0RHJpdmVyKERyaXZlcik6CiAgICAgICAgIHJl
dHVybiBjbWQKIAogICAgIGRlZiBzdGFydChzZWxmKToKLSAgICAgICAgZW52aXJvbm1lbnQgPSBz
ZWxmLl9wb3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcigpCisgICAgICAgIHNlcnZlcl9uYW1l
ID0gc2VsZi5fcG9ydC5kcml2ZXJfbmFtZSgpCisgICAgICAgIGVudmlyb25tZW50ID0gc2VsZi5f
cG9ydC5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VydmVyX25hbWUpCiAgICAgICAgIGVudmly
b25tZW50WydEWUxEX0ZSQU1FV09SS19QQVRIJ10gPSBzZWxmLl9wb3J0Ll9idWlsZF9wYXRoKCkK
ICAgICAgICAgIyBGSVhNRTogV2UncmUgYXNzdW1pbmcgdGhhdCBXZWJLaXRUZXN0UnVubmVyIGNo
ZWNrcyB0aGlzIER1bXBSZW5kZXJUcmVlLW5hbWVkIGVudmlyb25tZW50IHZhcmlhYmxlLgogICAg
ICAgICBlbnZpcm9ubWVudFsnRFVNUFJFTkRFUlRSRUVfVEVNUCddID0gc3RyKHNlbGYuX2RyaXZl
cl90ZW1wZGlyKQotICAgICAgICBzZWxmLl9zZXJ2ZXJfcHJvY2VzcyA9IHNlcnZlcl9wcm9jZXNz
LlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VsZi5fcG9ydC5kcml2ZXJfbmFtZSgpLCBzZWxm
LmNtZF9saW5lKCksIGVudmlyb25tZW50KQorICAgICAgICBzZWxmLl9zZXJ2ZXJfcHJvY2VzcyA9
IHNlcnZlcl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VydmVyX25hbWUsIHNl
bGYuY21kX2xpbmUoKSwgZW52aXJvbm1lbnQpCiAKICAgICBkZWYgcG9sbChzZWxmKToKICAgICAg
ICAgcmV0dXJuIHNlbGYuX3NlcnZlcl9wcm9jZXNzLnBvbGwoKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlci5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkK
aW5kZXggMDA5Mzc4Y2FhZDc4ZDk4OGExOTY0ZjhhZTU3MGE1NjNmZTU0NjYxOS4uNzAxZTdiZDcz
OGRmZmJjOTZhOGJlNTc3M2NkMDU2YWVjMTM0MGQzYyAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlci5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5CkBA
IC0xODAsNyArMTgwLDcgQEAgY2xhc3MgTGlnaHR0cGQoaHR0cF9zZXJ2ZXJfYmFzZS5IdHRwU2Vy
dmVyQmFzZSk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGgu
am9pbih0bXBfbW9kdWxlX3BhdGgsIGxpYl9maWxlKSkKIAogICAgICAgICBzZWxmLl9zdGFydF9j
bWQgPSBzdGFydF9jbWQKLSAgICAgICAgc2VsZi5fZW52ID0gc2VsZi5fcG9ydF9vYmouc2V0dXBf
ZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAgc2VsZi5fZW52ID0gc2VsZi5fcG9ydF9vYmou
c2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCdsaWdodHRwZCcpCiAgICAgICAgIHNlbGYuX21hcHBp
bmdzID0gbWFwcGluZ3MKIAogICAgIGRlZiBfcmVtb3ZlX3N0YWxlX2xvZ3Moc2VsZik6CmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYnNv
Y2tldF9zZXJ2ZXIucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2
ZXJzL3dlYnNvY2tldF9zZXJ2ZXIucHkKaW5kZXggZTQwYmQxMDEyYTMwMjZkMjBjOWM3Yzk3ZDYw
Y2U4YWM3ZmQ0YzYyZS4uYmMyZTkwYTVmYWFkMWRiMTg3YzBlMGJmZWUwZWJhYWFmNGEyMDVjMSAx
MDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93
ZWJzb2NrZXRfc2VydmVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3NlcnZlcnMvd2Vic29ja2V0X3NlcnZlci5weQpAQCAtODIsMTYgKzgyLDE1IEBAIGNsYXNz
IFB5V2ViU29ja2V0KGh0dHBfc2VydmVyLkxpZ2h0dHBkKToKICAgICAgICAgICAgIHNlbGYuX3Bp
ZF9maWxlID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3J1bnRpbWVfcGF0aCwgJyVzLnBp
ZCcgJSBzZWxmLl9uYW1lKQogCiAgICAgICAgICMgV2Via2l0IHRlc3RzCisgICAgICAgICMgRklY
TUU6IFRoaXMgaXMgdGhlIHdyb25nIHdheSB0byBkZXRlY3QgaWYgd2UncmUgaW4gQ2hyb21lIHZz
LiBXZWJLaXQhCisgICAgICAgICMgVGhlIHBvcnQgb2JqZWN0cyBhcmUgc3VwcG9zZWQgdG8gYWJz
dHJhY3QgdGhpcy4KICAgICAgICAgaWYgc2VsZi5fcm9vdDoKLSAgICAgICAgICAgIHNlbGYuX2xh
eW91dF90ZXN0cyA9IG9zLnBhdGguYWJzcGF0aChzZWxmLl9yb290KQotICAgICAgICAgICAgc2Vs
Zi5fd2ViX3NvY2tldF90ZXN0cyA9IG9zLnBhdGguYWJzcGF0aCgKLSAgICAgICAgICAgICAgICBv
cy5wYXRoLmpvaW4oc2VsZi5fcm9vdCwgJ2h0dHAnLCAndGVzdHMnLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAnd2Vic29ja2V0JywgJ3Rlc3RzJykpCisgICAgICAgICAgICBzZWxmLl9s
YXlvdXRfdGVzdHMgPSBzZWxmLl9maWxlc3lzdGVtLmFic3BhdGgoc2VsZi5fcm9vdCkKKyAgICAg
ICAgICAgIHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMgPSBzZWxmLl9maWxlc3lzdGVtLmFic3BhdGgo
c2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3Jvb3QsICdodHRwJywgJ3Rlc3RzJywgJ3dlYnNv
Y2tldCcsICd0ZXN0cycpKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgdHJ5OgogICAgICAg
ICAgICAgICAgIHNlbGYuX2xheW91dF90ZXN0cyA9IHNlbGYuX3BvcnRfb2JqLmxheW91dF90ZXN0
c19kaXIoKQotICAgICAgICAgICAgICAgIHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMgPSBvcy5wYXRo
LmpvaW4oc2VsZi5fbGF5b3V0X3Rlc3RzLAotICAgICAgICAgICAgICAgICAgICAgJ2h0dHAnLCAn
dGVzdHMnLCAnd2Vic29ja2V0JywgJ3Rlc3RzJykKKyAgICAgICAgICAgICAgICBzZWxmLl93ZWJf
c29ja2V0X3Rlc3RzID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX2xheW91dF90ZXN0cywg
J2h0dHAnLCAndGVzdHMnLCAnd2Vic29ja2V0JywgJ3Rlc3RzJykKICAgICAgICAgICAgIGV4Y2Vw
dDoKICAgICAgICAgICAgICAgICBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzID0gTm9uZQogCkBAIC0x
MDMsMzQgKzEwMiwzMiBAQCBjbGFzcyBQeVdlYlNvY2tldChodHRwX3NlcnZlci5MaWdodHRwZCk6
CiAgICAgZGVmIF9wcmVwYXJlX2NvbmZpZyhzZWxmKToKICAgICAgICAgdGltZV9zdHIgPSB0aW1l
LnN0cmZ0aW1lKCclZCViJVktJUglTSVTJykKICAgICAgICAgbG9nX2ZpbGVfbmFtZSA9IHNlbGYu
X2xvZ19wcmVmaXggKyB0aW1lX3N0cgorICAgICAgICAjIEZJWE1FOiBEb2Vzbid0IEV4ZWN1dGl2
ZSBoYXZlIGEgZGV2bnVsbCwgc28gdGhhdCB3ZSBkb24ndCBoYXZlIHRvIHVzZSBvcy5kZXZudWxs
IGRpcmVjdGx5PwogICAgICAgICBzZWxmLl93c2luID0gb3Blbihvcy5kZXZudWxsLCAncicpCiAK
LSAgICAgICAgZXJyb3JfbG9nID0gb3MucGF0aC5qb2luKHNlbGYuX291dHB1dF9kaXIsIGxvZ19m
aWxlX25hbWUgKyAiLWVyci50eHQiKQotCi0gICAgICAgIG91dHB1dF9sb2cgPSBvcy5wYXRoLmpv
aW4oc2VsZi5fb3V0cHV0X2RpciwgbG9nX2ZpbGVfbmFtZSArICItb3V0LnR4dCIpCisgICAgICAg
IGVycm9yX2xvZyA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9vdXRwdXRfZGlyLCBsb2df
ZmlsZV9uYW1lICsgIi1lcnIudHh0IikKKyAgICAgICAgb3V0cHV0X2xvZyA9IHNlbGYuX2ZpbGVz
eXN0ZW0uam9pbihzZWxmLl9vdXRwdXRfZGlyLCBsb2dfZmlsZV9uYW1lICsgIi1vdXQudHh0IikK
ICAgICAgICAgc2VsZi5fd3NvdXQgPSBzZWxmLl9maWxlc3lzdGVtLm9wZW5fdGV4dF9maWxlX2Zv
cl93cml0aW5nKG91dHB1dF9sb2cpCiAKICAgICAgICAgZnJvbSB3ZWJraXRweS50aGlyZHBhcnR5
LmF1dG9pbnN0YWxsZWQucHl3ZWJzb2NrZXQgaW1wb3J0IG1vZF9weXdlYnNvY2tldAogICAgICAg
ICBweXRob25faW50ZXJwID0gc3lzLmV4ZWN1dGFibGUKLSAgICAgICAgcHl3ZWJzb2NrZXRfYmFz
ZSA9IG9zLnBhdGguam9pbigKLSAgICAgICAgICAgIG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRp
cm5hbWUob3MucGF0aC5kaXJuYW1lKAotICAgICAgICAgICAgb3MucGF0aC5hYnNwYXRoKF9fZmls
ZV9fKSkpKSwgJ3RoaXJkcGFydHknLAotICAgICAgICAgICAgJ2F1dG9pbnN0YWxsZWQnLCAncHl3
ZWJzb2NrZXQnKQotICAgICAgICBweXdlYnNvY2tldF9zY3JpcHQgPSBvcy5wYXRoLmpvaW4ocHl3
ZWJzb2NrZXRfYmFzZSwgJ21vZF9weXdlYnNvY2tldCcsCi0gICAgICAgICAgICAnc3RhbmRhbG9u
ZS5weScpCisgICAgICAgICMgRklYTUU6IFVzZSBzZWxmLl9maWxlc3lzdGVtLnBhdGhfdG9fbW9k
dWxlKHNlbGYuX19tb2R1bGVfXykgaW5zdGVhZCBvZiBfX2ZpbGVfXworICAgICAgICAjIEkgdGhp
bmsgdGhpcyBpcyB0cnlpbmcgdG8gZ2V0IHRoZSBjaHJvbWUgZGlyZWN0b3J5PyAgRG9lc24ndCB0
aGUgcG9ydCBvYmplY3Qga25vdyB0aGF0PworICAgICAgICBweXdlYnNvY2tldF9iYXNlID0gc2Vs
Zi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX2ZpbGVzeXN0ZW0uZGlybmFtZShzZWxmLl9maWxlc3lz
dGVtLmRpcm5hbWUoc2VsZi5fZmlsZXN5c3RlbS5kaXJuYW1lKHNlbGYuX2ZpbGVzeXN0ZW0uYWJz
cGF0aChfX2ZpbGVfXykpKSksICd0aGlyZHBhcnR5JywgJ2F1dG9pbnN0YWxsZWQnLCAncHl3ZWJz
b2NrZXQnKQorICAgICAgICBweXdlYnNvY2tldF9zY3JpcHQgPSBzZWxmLl9maWxlc3lzdGVtLmpv
aW4ocHl3ZWJzb2NrZXRfYmFzZSwgJ21vZF9weXdlYnNvY2tldCcsICdzdGFuZGFsb25lLnB5JykK
ICAgICAgICAgc3RhcnRfY21kID0gWwogICAgICAgICAgICAgcHl0aG9uX2ludGVycCwgJy11Jywg
cHl3ZWJzb2NrZXRfc2NyaXB0LAogICAgICAgICAgICAgJy0tc2VydmVyLWhvc3QnLCAnMTI3LjAu
MC4xJywKICAgICAgICAgICAgICctLXBvcnQnLCBzdHIoc2VsZi5fcG9ydCksCi0gICAgICAgICAg
ICAnLS1kb2N1bWVudC1yb290Jywgb3MucGF0aC5qb2luKHNlbGYuX2xheW91dF90ZXN0cywgJ2h0
dHAnLCAndGVzdHMnKSwKKyAgICAgICAgICAgICMgRklYTUU6IERvbid0IHdlIGhhdmUgYSBzZWxm
Ll9wb3J0X29iai5sYXlvdXRfdGVzdF9wYXRoPworICAgICAgICAgICAgJy0tZG9jdW1lbnQtcm9v
dCcsIHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9sYXlvdXRfdGVzdHMsICdodHRwJywgJ3Rl
c3RzJyksCiAgICAgICAgICAgICAnLS1zY2FuLWRpcicsIHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMs
CiAgICAgICAgICAgICAnLS1jZ2ktcGF0aHMnLCAnL3dlYnNvY2tldC90ZXN0cycsCiAgICAgICAg
ICAgICAnLS1sb2ctZmlsZScsIGVycm9yX2xvZywKICAgICAgICAgXQogCi0gICAgICAgIGhhbmRs
ZXJfbWFwX2ZpbGUgPSBvcy5wYXRoLmpvaW4oc2VsZi5fd2ViX3NvY2tldF90ZXN0cywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGFuZGxlcl9tYXAudHh0JykKLSAg
ICAgICAgaWYgb3MucGF0aC5leGlzdHMoaGFuZGxlcl9tYXBfZmlsZSk6CisgICAgICAgIGhhbmRs
ZXJfbWFwX2ZpbGUgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fd2ViX3NvY2tldF90ZXN0
cywgJ2hhbmRsZXJfbWFwLnR4dCcpCisgICAgICAgIGlmIHNlbGYuX2ZpbGVzeXN0ZW0uZXhpc3Rz
KGhhbmRsZXJfbWFwX2ZpbGUpOgogICAgICAgICAgICAgX2xvZy5kZWJ1ZygnVXNpbmcgaGFuZGxl
cl9tYXBfZmlsZTogJXMnICUgaGFuZGxlcl9tYXBfZmlsZSkKICAgICAgICAgICAgIHN0YXJ0X2Nt
ZC5hcHBlbmQoJy0td2Vic29jay1oYW5kbGVycy1tYXAtZmlsZScpCiAgICAgICAgICAgICBzdGFy
dF9jbWQuYXBwZW5kKGhhbmRsZXJfbWFwX2ZpbGUpCkBAIC0xNDIsOCArMTM5LDkgQEAgY2xhc3Mg
UHlXZWJTb2NrZXQoaHR0cF9zZXJ2ZXIuTGlnaHR0cGQpOgogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJy1jJywgc2VsZi5fY2VydGlmaWNhdGVdKQogCiAgICAgICAgIHNlbGYuX3N0YXJ0
X2NtZCA9IHN0YXJ0X2NtZAotICAgICAgICBzZWxmLl9lbnYgPSBzZWxmLl9wb3J0X29iai5zZXR1
cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoKQotICAgICAgICBzZWxmLl9lbnZbJ1BZVEhPTlBBVEgnXSA9
IChweXdlYnNvY2tldF9iYXNlICsgb3MucGF0aC5wYXRoc2VwICsgc2VsZi5fZW52LmdldCgnUFlU
SE9OUEFUSCcsICcnKSkKKyAgICAgICAgc2VydmVyX25hbWUgPSBzZWxmLl9maWxlc3lzdGVtLmJh
c2VuYW1lKHB5d2Vic29ja2V0X3NjcmlwdCkKKyAgICAgICAgc2VsZi5fZW52ID0gc2VsZi5fcG9y
dF9vYmouc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlcnZlcl9uYW1lKQorICAgICAgICBzZWxm
Ll9lbnZbJ1BZVEhPTlBBVEgnXSA9IChweXdlYnNvY2tldF9iYXNlICsgc2VsZi5fZmlsZXN5c3Rl
bS5wYXRoc2VwICsgc2VsZi5fZW52LmdldCgnUFlUSE9OUEFUSCcsICcnKSkKIAogICAgIGRlZiBf
cmVtb3ZlX3N0YWxlX2xvZ3Moc2VsZik6CiAgICAgICAgIHRyeToK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101399</attachid>
            <date>2011-07-19 15:25:51 -0700</date>
            <delta_ts>2011-07-19 15:48:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64792-20110719152549.patch</filename>
            <type>text/plain</type>
            <size>19684</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTEyNDUKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkNzFlYzVlYWE3NTQzOWE4NGMyZTYxYTUzNjNkZWRhMjUw
MTdmMmI4Li5hNzk5MGUxYWJiODk4MTlhNWQ2MTEwOWU3YjExODdiMmI0ZmEyZWMyIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTEtMDctMTkgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAg
IG5ldy1ydW4td2Via2l0LXRlc3RzIHNob3VsZCBvbmx5IGVuYWJsZSBNYWxsb2NTdGFja0xvZ2dp
bmcgZm9yIERSVAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NjQ3OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUaGUgcHJldmlvdXMgY29kZSB3b3VsZCBlbmFibGUgaXQgZm9yIGFsbCBzZXJ2ZXJzIGxhdW5j
aGVkCisgICAgICAgIGJ5IHRoZSBwb3J0LCB3aGljaCBpbmNsdWRlZCBBcGFjaGUsIHRoZSBweXRo
b24gd2Vic29ja2V0IHNlcnZlcgorICAgICAgICBhcyB3ZWxsIGFzIEltYWdlRGlmZi4gIE5vdyBv
bmx5IER1bXBSZW5kZXJUcmVlIHdpbGwgaGF2ZQorICAgICAgICBNYWxsb2NTdGFja0xvZ2dpbmcg
ZW5hYmxlZCBvciB0aGUgR3VhcmRNYWxsb2MgbGlicmFyeSBpbmplY3RlZC4KKworICAgICAgICBJ
IGFsc28gY2xlYW5lZCB1cCB0aGUgd2Vic29ja2V0X3NlcnZlciBjb2RlIHRvIHVzZSBmaWxlc3lz
dGVtCisgICAgICAgIHdoaWxlIEkgd2FzIGluIGl0LgorCisgICAgICAgIEkgYWxzbyBtYWRlIERS
VCByZXN0YXJ0IGV2ZXJ5IDEwMDAgdGVzdHMgd2hlbiBydW5uaW5nIHdpdGgKKyAgICAgICAgLS1s
ZWFrcyBlbmFibGVkLiAgSSBiZWxpZXZlIHRoaXMgbWFkZSB0aGUgLS1sZWFrcyBydW4gc2xpZ2h0
bHkKKyAgICAgICAgZmFzdGVyLCBidXQgaXQgc3RpbGwgdGFrZXMgb3ZlciBhbiBob3VyIG9uIG15
IG1hY2hpbmUuIDooCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9j
b250cm9sbGVycy93b3JrZXIucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvY2hyb21pdW1fd2luLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvbWFjLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvcXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L3dlYmtpdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2Vic29ja2V0X3NlcnZlci5weToKKwogMjAxMS0wNy0x
OCAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgbmV3LXJ1bi13ZWJr
aXQtdGVzdHMgc2hvdWxkIHN1cHBvcnQgLS1sZWFrcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5IGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5CmluZGV4IDUx
NzgwNDIwMTMxNzEwZmI5ODMxYmQ2MTFiMGU4MjM3N2I4ZTAyNTcuLmE2ZGQ5NGVmYTZjYTk2ZDA2
N2YyN2U4Njc1MjAyMzhmMDUwZmUwNWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlci5weQorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy93b3JrZXIucHkKQEAgLTY4LDggKzY4
LDcgQEAgY2xhc3MgV29ya2VyKG1hbmFnZXJfd29ya2VyX2Jyb2tlci5BYnN0cmFjdFdvcmtlcik6
CiAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0gPSBwb3J0LmZpbGVzeXN0ZW0KICAgICAgICAgc2Vs
Zi5fYmF0Y2hfY291bnQgPSAwCiAgICAgICAgIHNlbGYuX2JhdGNoX3NpemUgPSBzZWxmLl9vcHRp
b25zLmJhdGNoX3NpemUKLSAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5
c3RlbS5qb2luKHBvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0ZXN0c19ydW4lZC50eHQiICUgc2VsZi5f
d29ya2VyX251bWJlcikKKyAgICAgICAgdGVzdHNfcnVuX2ZpbGVuYW1lID0gc2VsZi5fZmlsZXN5
c3RlbS5qb2luKHBvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwgInRlc3RzX3J1biVkLnR4dCIgJSBz
ZWxmLl93b3JrZXJfbnVtYmVyKQogICAgICAgICBzZWxmLl90ZXN0c19ydW5fZmlsZSA9IHNlbGYu
X2ZpbGVzeXN0ZW0ub3Blbl90ZXh0X2ZpbGVfZm9yX3dyaXRpbmcodGVzdHNfcnVuX2ZpbGVuYW1l
KQogCiAgICAgZGVmIGNhbmNlbChzZWxmKToKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQppbmRleCAzNjBiZDZkMDE0ZWYxOWRjYWYxOThiMGYy
MWEzM2MwYWE0MTM3NTI0Li44MmFhMDc3NzE5OWY1YjE4MjZlOTRjNjkxMDM1NmYxNDdlNjU5MGU1
IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jh
c2UucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNl
LnB5CkBAIC0yMzQsNyArMjM0LDggQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAg
aHR0cGRfcGF0aCA9IHNlbGYuX3BhdGhfdG9fbGlnaHR0cGQoKQogCiAgICAgICAgIHRyeToKLSAg
ICAgICAgICAgIGVudiA9IHNlbGYuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAg
ICAgIHNlcnZlcl9uYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5iYXNlbmFtZShodHRwZF9wYXRoKQor
ICAgICAgICAgICAgZW52ID0gc2VsZi5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VydmVyX25h
bWUpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFtodHRw
ZF9wYXRoLCAiLXYiXSwgZW52PWVudiwgcmV0dXJuX2V4aXRfY29kZT1UcnVlKSA9PSAwCiAgICAg
ICAgIGV4Y2VwdCBPU0Vycm9yOgogICAgICAgICAgICAgX2xvZy5lcnJvcigiTm8gaHR0cGQgZm91
bmQuIENhbm5vdCBydW4gaHR0cCB0ZXN0cy4iKQpAQCAtNjYyLDcgKzY2Myw3IEBAIGNsYXNzIFBv
cnQob2JqZWN0KToKICAgICAgICAgIiIiUGVyZm9ybSBwb3J0LXNwZWNpZmljIHdvcmsgYXQgdGhl
IGJlZ2lubmluZyBvZiBhIHRlc3QgcnVuLiIiIgogICAgICAgICBwYXNzCiAKLSAgICBkZWYgc2V0
dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYpOgorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9z
ZXJ2ZXIoc2VsZiwgc2VydmVyX25hbWU9Tm9uZSk6CiAgICAgICAgICIiIlBlcmZvcm0gcG9ydC1z
cGVjaWZpYyB3b3JrIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBzZXJ2ZXIgbGF1bmNoLgogCiAgICAg
ICAgIFJldHVybnM6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L2Nocm9taXVtX3dpbi5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CmluZGV4IDM1MTI5OTExNmQxMDZiZDM2MWE5YzBh
MDNlNmE3ZDgyYjFkNDVhMWMuLjUxYjI1YjNmM2VhNjIxMzhjMTcxOTA5MzIxZjY2ZDMxM2E3ZDll
MmEgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
Y2hyb21pdW1fd2luLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvY2hyb21pdW1fd2luLnB5CkBAIC05OCw3ICs5OCw3IEBAIGNsYXNzIENocm9taXVtV2lu
UG9ydChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogICAgICAgICAgICAgYXNzZXJ0IHNlbGYuX3Zl
cnNpb24gaW4gc2VsZi5TVVBQT1JURURfVkVSU0lPTlMsICIlcyBpcyBub3QgaW4gJXMiICUgKHNl
bGYuX3ZlcnNpb24sIHNlbGYuU1VQUE9SVEVEX1ZFUlNJT05TKQogICAgICAgICBzZWxmLl9vcGVy
YXRpbmdfc3lzdGVtID0gJ3dpbicKIAotICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIo
c2VsZik6CisgICAgZGVmIHNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFt
ZT1Ob25lKToKICAgICAgICAgZW52ID0gY2hyb21pdW0uQ2hyb21pdW1Qb3J0LnNldHVwX2Vudmly
b25fZm9yX3NlcnZlcihzZWxmKQogICAgICAgICAjIFB1dCB0aGUgY3lnd2luIGRpcmVjdG9yeSBm
aXJzdCBpbiB0aGUgcGF0aCB0byBmaW5kIGN5Z3dpbjEuZGxsLgogICAgICAgICBlbnZbIlBBVEgi
XSA9ICIlczslcyIgJSAoc2VsZi5wYXRoX2Zyb21fY2hyb21pdW1fYmFzZSgidGhpcmRfcGFydHki
LCAiY3lnd2luIiwgImJpbiIpLCBlbnZbIlBBVEgiXSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9ndGsucHkKaW5kZXggNTc0YzI5MTdlNDAzMDJiM2U2N2E1
NWY3ZjI2MzQ4ZTJmNzBlY2I1NC4uNzZiM2UxOWYyZWU2MzdiNzU1ZWZmYzI5YTFmMjNkOGFhMmI1
YWNlMCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9ndGsucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9n
dGsucHkKQEAgLTQ0LDEwICs0NCwxMSBAQCBjbGFzcyBHdGtEcml2ZXIod2Via2l0LldlYktpdERy
aXZlcik6CiAgICAgICAgIGRpc3BsYXlfaWQgPSBzZWxmLl93b3JrZXJfbnVtYmVyICsgMQogICAg
ICAgICBydW5feHZmYiA9IFsiWHZmYiIsICI6JWQiICUgKGRpc3BsYXlfaWQpLCAiLXNjcmVlbiIs
ICAiMCIsICI4MDB4NjAweDI0IiwgIi1ub2xpc3RlbiIsICJ0Y3AiXQogICAgICAgICBzZWxmLl94
dmZiX3Byb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKHJ1bl94dmZiKQotICAgICAgICBlbnZpcm9u
bWVudCA9IHNlbGYuX3BvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAgc2Vy
dmVyX25hbWUgPSBzZWxmLl9wb3J0LmRyaXZlcl9uYW1lKCkKKyAgICAgICAgZW52aXJvbm1lbnQg
PSBzZWxmLl9wb3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZXJ2ZXJfbmFtZSkKICAgICAg
ICAgIyBXZSBtdXN0IGRvIHRoaXMgaGVyZSBiZWNhdXNlIHRoZSBESVNQTEFZIG51bWJlciBkZXBl
bmRzIG9uIF93b3JrZXJfbnVtYmVyCiAgICAgICAgIGVudmlyb25tZW50WydESVNQTEFZJ10gPSAi
OiVkIiAlIChkaXNwbGF5X2lkKQotICAgICAgICBzZWxmLl9zZXJ2ZXJfcHJvY2VzcyA9IHNlcnZl
cl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VsZi5fcG9ydC5kcml2ZXJfbmFt
ZSgpLCBzZWxmLmNtZF9saW5lKCksIGVudmlyb25tZW50KQorICAgICAgICBzZWxmLl9zZXJ2ZXJf
cHJvY2VzcyA9IHNlcnZlcl9wcm9jZXNzLlNlcnZlclByb2Nlc3Moc2VsZi5fcG9ydCwgc2VydmVy
X25hbWUsIHNlbGYuY21kX2xpbmUoKSwgZW52aXJvbm1lbnQpCiAKICAgICBkZWYgc3RvcChzZWxm
KToKICAgICAgICAgd2Via2l0LldlYktpdERyaXZlci5zdG9wKHNlbGYpCkBAIC02NCw4ICs2NSw4
IEBAIGNsYXNzIEd0a1BvcnQod2Via2l0LldlYktpdFBvcnQpOgogICAgIGRlZiBjcmVhdGVfZHJp
dmVyKHNlbGYsIHdvcmtlcl9udW1iZXIpOgogICAgICAgICByZXR1cm4gR3RrRHJpdmVyKHNlbGYs
IHdvcmtlcl9udW1iZXIpCiAKLSAgICBkZWYgc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYp
OgotICAgICAgICBlbnZpcm9ubWVudCA9IHdlYmtpdC5XZWJLaXRQb3J0LnNldHVwX2Vudmlyb25f
Zm9yX3NlcnZlcihzZWxmKQorICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VsZiwg
c2VydmVyX25hbWU9Tm9uZSk6CisgICAgICAgIGVudmlyb25tZW50ID0gd2Via2l0LldlYktpdFBv
cnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lKQogICAgICAgICBl
bnZpcm9ubWVudFsnR1RLX01PRFVMRVMnXSA9ICdnYWlsJwogICAgICAgICBlbnZpcm9ubWVudFsn
TElCT1ZFUkxBWV9TQ1JPTExCQVInXSA9ICcwJwogICAgICAgICBlbnZpcm9ubWVudFsnV0VCS0lU
X0lOU1BFQ1RPUl9QQVRIJ10gPSBzZWxmLl9idWlsZF9wYXRoKCdQcm9ncmFtcy9yZXNvdXJjZXMv
aW5zcGVjdG9yJykKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvbWFjLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9tYWMucHkKaW5kZXggNmVjZmE3ZTFiMzgyMWIxZTNkZTdhNWUyZTM1ODUzNGU2MWEzZDFlOS4u
Y2M0ODNlOWIxNzUwZWFhNmNhZmZhMTlhMzMwN2M0MzkzNzkxYjI0YyAxMDA2NDQKLS0tIGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKQEAgLTExOCw3ICsxMTgs
MTAgQEAgY2xhc3MgTGVha0RldGVjdG9yKG9iamVjdCk6CiAgICAgZGVmIGNoZWNrX2Zvcl9sZWFr
cyhzZWxmLCBwcm9jZXNzX25hbWUsIHByb2Nlc3NfcGlkKToKICAgICAgICAgX2xvZy5kZWJ1Zygi
Q2hlY2tpbmcgZm9yIGxlYWtzIGluICVzIiAlIHByb2Nlc3NfbmFtZSkKICAgICAgICAgdHJ5Ogot
ICAgICAgICAgICAgbGVha3Nfb3V0cHV0ID0gc2VsZi5fcG9ydC5fcnVuX3NjcmlwdCgicnVuLWxl
YWtzIiwgc2VsZi5fbGVha3NfYXJncyhwcm9jZXNzX3BpZCksIGluY2x1ZGVfY29uZmlndXJhdGlv
bl9hcmd1bWVudHM9RmFsc2UpCisgICAgICAgICAgICAjIE9kZGx5IGVub3VnaCwgcnVuLWxlYWtz
IChvciB0aGUgdW5kZXJseWluZyBsZWFrcyB0b29sKSBkb2VzIG5vdCBzZWVtIHRvIGFsd2F5cyBv
dXRwdXQgdXRmLTgsCisgICAgICAgICAgICAjIHRodXMgd2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZh
bHNlLiAgV2l0aG91dCB0aGlzIGNvZGUgd2UndmUgc2VlbiBlcnJvcnMgbGlrZToKKyAgICAgICAg
ICAgICMgIlVuaWNvZGVEZWNvZGVFcnJvcjogJ3V0ZjgnIGNvZGVjIGNhbid0IGRlY29kZSBieXRl
IDB4ODggaW4gcG9zaXRpb24gNzc5ODc0OiB1bmV4cGVjdGVkIGNvZGUgYnl0ZSIKKyAgICAgICAg
ICAgIGxlYWtzX291dHB1dCA9IHNlbGYuX3BvcnQuX3J1bl9zY3JpcHQoInJ1bi1sZWFrcyIsIHNl
bGYuX2xlYWtzX2FyZ3MocHJvY2Vzc19waWQpLCBpbmNsdWRlX2NvbmZpZ3VyYXRpb25fYXJndW1l
bnRzPUZhbHNlLCBkZWNvZGVfb3V0cHV0PUZhbHNlKQogICAgICAgICBleGNlcHQgU2NyaXB0RXJy
b3IsIGU6CiAgICAgICAgICAgICBfbG9nLndhcm4oIkZhaWxlZCB0byBydW4gbGVha3MgdG9vbDog
JXMiICUgZS5tZXNzYWdlX3dpdGhfb3V0cHV0KCkpCiAgICAgICAgICAgICByZXR1cm4KQEAgLTE5
NSw2ICsxOTgsMTAgQEAgY2xhc3MgTWFjUG9ydChXZWJLaXRQb3J0KToKICAgICAgICAgICAgIGFz
c2VydCBzZWxmLl92ZXJzaW9uIGluIHNlbGYuU1VQUE9SVEVEX1ZFUlNJT05TLCAiJXMgaXMgbm90
IGluICVzIiAlIChzZWxmLl92ZXJzaW9uLCBzZWxmLlNVUFBPUlRFRF9WRVJTSU9OUykKICAgICAg
ICAgc2VsZi5fb3BlcmF0aW5nX3N5c3RlbSA9ICdtYWMnCiAgICAgICAgIHNlbGYuX2xlYWtfZGV0
ZWN0b3IgPSBMZWFrRGV0ZWN0b3Ioc2VsZikKKyAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCJs
ZWFrcyIpOgorICAgICAgICAgICAgIyBEdW1wUmVuZGVyVHJlZSBzbG93cyBkb3duIG5vdGljYWJs
eSBpZiB3ZSBydW4gbW9yZSB0aGFuIGFib3V0IDEwMDAgdGVzdHMgaW4gYSBiYXRjaAorICAgICAg
ICAgICAgIyB3aXRoIE1hbGxvY1N0YWNrTG9nZ2luZyBlbmFibGVkLgorICAgICAgICAgICAgc2Vs
Zi5zZXRfb3B0aW9uX2RlZmF1bHQoImJhdGNoX3NpemUiLCAxMDAwKQogCiAgICAgZGVmIGJhc2Vs
aW5lX3NlYXJjaF9wYXRoKHNlbGYpOgogICAgICAgICBzZWFyY2hfcGF0aHMgPSBzZWxmLkZBTExC
QUNLX1BBVEhTW3NlbGYuX3ZlcnNpb25dCkBAIC0yMDIsMTIgKzIwOSwxMyBAQCBjbGFzcyBNYWNQ
b3J0KFdlYktpdFBvcnQpOgogICAgICAgICAgICAgc2VhcmNoX3BhdGhzLmluc2VydCgwLCBzZWxm
Ll93azJfcG9ydF9uYW1lKCkpCiAgICAgICAgIHJldHVybiBtYXAoc2VsZi5fd2Via2l0X2Jhc2Vs
aW5lX3BhdGgsIHNlYXJjaF9wYXRocykKIAotICAgIGRlZiBzZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2
ZXIoc2VsZik6Ci0gICAgICAgIGVudiA9IFdlYktpdFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2Vy
dmVyKHNlbGYpCi0gICAgICAgIGlmIHNlbGYuZ2V0X29wdGlvbignbGVha3MnKToKLSAgICAgICAg
ICAgIGVudlsnTWFsbG9jU3RhY2tMb2dnaW5nJ10gPSAnMScKLSAgICAgICAgaWYgc2VsZi5nZXRf
b3B0aW9uKCdndWFyZF9tYWxsb2MnKToKLSAgICAgICAgICAgIGVudlsnRFlMRF9JTlNFUlRfTElC
UkFSSUVTJ10gPSAnL3Vzci9saWIvbGliZ21hbGxvYy5keWxpYicKKyAgICBkZWYgc2V0dXBfZW52
aXJvbl9mb3Jfc2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lPU5vbmUpOgorICAgICAgICBlbnYgPSBX
ZWJLaXRQb3J0LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFtZSkKKyAg
ICAgICAgaWYgc2VydmVyX25hbWUgPT0gc2VsZi5kcml2ZXJfbmFtZSgpOgorICAgICAgICAgICAg
aWYgc2VsZi5nZXRfb3B0aW9uKCdsZWFrcycpOgorICAgICAgICAgICAgICAgIGVudlsnTWFsbG9j
U3RhY2tMb2dnaW5nJ10gPSAnMScKKyAgICAgICAgICAgIGlmIHNlbGYuZ2V0X29wdGlvbignZ3Vh
cmRfbWFsbG9jJyk6CisgICAgICAgICAgICAgICAgZW52WydEWUxEX0lOU0VSVF9MSUJSQVJJRVMn
XSA9ICcvdXNyL2xpYi9saWJnbWFsbG9jLmR5bGliJwogICAgICAgICByZXR1cm4gZW52CiAKICAg
ICAjIEJlbG9uZ3Mgb24gYSBQbGF0Zm9ybSBvYmplY3QuCkBAIC0yNDQsNyArMjUyLDcgQEAgY2xh
c3MgTWFjUG9ydChXZWJLaXRQb3J0KToKICAgICAgICAgbGVha3NfZmlsZXMgPSBzZWxmLl9sZWFr
X2RldGVjdG9yLmxlYWtzX2ZpbGVzX2luX2RpcmVjdG9yeShzZWxmLnJlc3VsdHNfZGlyZWN0b3J5
KCkpCiAgICAgICAgIGlmIG5vdCBsZWFrc19maWxlczoKICAgICAgICAgICAgIHJldHVybgotICAg
ICAgICB0b3RhbF9ieXRlcywgdW5pcXVlX2xlYWtzID0gc2VsZi5wYXJzZV9sZWFrX2ZpbGVzKGxl
YWtzX2ZpbGVzKQorICAgICAgICB0b3RhbF9ieXRlcywgdW5pcXVlX2xlYWtzID0gc2VsZi5fbGVh
a19kZXRlY3Rvci5wYXJzZV9sZWFrX2ZpbGVzKGxlYWtzX2ZpbGVzKQogICAgICAgICBfbG9nLmlu
Zm8oIiVzIHRvdGFsIGxlYWtzIGZvdW5kIGZvciBhIHRvdGFsIG9mICVzISIgJSAoc2VsZi5fdG90
YWxfbGVha3MsIHRvdGFsX2J5dGVzKSkKICAgICAgICAgX2xvZy5pbmZvKCIlcyB1bmlxdWUgbGVh
a3MgZm91bmQhIiAlIHVuaXF1ZV9sZWFrcykKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvcXQucHkKaW5kZXggZmRhYmExYzg0OTU0NjYxZmU4NTNjN2IzMGY4
ZWEzYjEwMTlmYmFhMi4uNzkzYTYwZjU2NmVlNzRkYzNiZmI0YTJhOWQxNjZmZmQ2Mjc1MjFjNiAx
MDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5w
eQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5CkBA
IC04Miw4ICs4Miw4IEBAIGNsYXNzIFF0UG9ydChXZWJLaXRQb3J0KToKICAgICBkZWYgX3J1bnRp
bWVfZmVhdHVyZV9saXN0KHNlbGYpOgogICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgZGVmIHNl
dHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmKToKLSAgICAgICAgZW52ID0gV2ViS2l0UG9ydC5z
ZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoc2VsZikKKyAgICBkZWYgc2V0dXBfZW52aXJvbl9mb3Jf
c2VydmVyKHNlbGYsIHNlcnZlcl9uYW1lPU5vbmUpOgorICAgICAgICBlbnYgPSBXZWJLaXRQb3J0
LnNldHVwX2Vudmlyb25fZm9yX3NlcnZlcihzZWxmLCBzZXJ2ZXJfbmFtZSkKICAgICAgICAgZW52
WydRVFdFQktJVF9QTFVHSU5fUEFUSCddID0gc2VsZi5fYnVpbGRfcGF0aCgnbGliL3BsdWdpbnMn
KQogICAgICAgICByZXR1cm4gZW52CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvc2VydmVyX3Byb2Nlc3MucHkgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5CmluZGV4IGU2YjE2MWU0
NDBiNTMwZTAwNjEwYjkyMzIwYTAwMjU1MGY3NDBkZjMuLjc3Y2NhNmVmZGY5NmQ5MWI2YWRiYjQ2
OGFhMWRlYjA4YTE0MTE3NDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvc2VydmVyX3Byb2Nlc3MucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weQpAQCAtMTI0LDYgKzEyNCw3
IEBAIGNsYXNzIFNlcnZlclByb2Nlc3M6CiAgICAgICAgICAgICBzZWxmLl9wcm9jLnN0ZGluLndy
aXRlKGlucHV0KQogICAgICAgICBleGNlcHQgSU9FcnJvciwgZToKICAgICAgICAgICAgIHNlbGYu
c3RvcCgpCisgICAgICAgICAgICAjIHN0b3AoKSBjYWxscyBfcmVzZXQoKSwgc28gd2UgaGF2ZSB0
byBzZXQgY3Jhc2hlZCB0byBUcnVlIGFmdGVyIGNhbGxpbmcgc3RvcCgpLgogICAgICAgICAgICAg
c2VsZi5jcmFzaGVkID0gVHJ1ZQogCiAgICAgZGVmIHJlYWRfbGluZShzZWxmLCB0aW1lb3V0KToK
QEAgLTE2MCw4ICsxNjEsNyBAQCBjbGFzcyBTZXJ2ZXJQcm9jZXNzOgogICAgICAgICAgICAgICAg
IHN0cmluZyBpcyByZXR1cm5lZC4KICAgICAgICAgIiIiCiAgICAgICAgIGlmIHNpemUgPD0gMDoK
LSAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ1NlcnZlclByb2Nlc3MucmVhZCgpIGNhbGxl
ZCB3aXRoIGEgJwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbm9uLXBvc2l0aXZlIHNp
emU6ICVkICcgJSBzaXplKQorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignU2VydmVyUHJv
Y2Vzcy5yZWFkKCkgY2FsbGVkIHdpdGggYSBub24tcG9zaXRpdmUgc2l6ZTogJWQgJyAlIHNpemUp
CiAgICAgICAgIHJldHVybiBzZWxmLl9yZWFkKHRpbWVvdXQsIHNpemUpCiAKICAgICBkZWYgX2No
ZWNrX2Zvcl9jcmFzaChzZWxmKToKQEAgLTIzNiw3ICsyMzYsOSBAQCBjbGFzcyBTZXJ2ZXJQcm9j
ZXNzOgogICAgICAgICBpZiBub3Qgc2VsZi5fcHJvYzoKICAgICAgICAgICAgIHJldHVybgogCi0g
ICAgICAgIHNlbGYuX3BvcnQuY2hlY2tfZm9yX2xlYWtzKHNlbGYubmFtZSgpLCBzZWxmLnBpZCgp
KQorICAgICAgICAjIE9ubHkgYm90aGVyIHRvIGNoZWNrIGZvciBsZWFrcyBpZiB0aGUgcHJvY2Vz
cyBpcyBzdGlsbCBydW5uaW5nLgorICAgICAgICBpZiBzZWxmLnBvbGwoKSBpcyBOb25lOgorICAg
ICAgICAgICAgc2VsZi5fcG9ydC5jaGVja19mb3JfbGVha3Moc2VsZi5uYW1lKCksIHNlbGYucGlk
KCkpCiAKICAgICAgICAgcGlkID0gc2VsZi5fcHJvYy5waWQKICAgICAgICAgc2VsZi5fcHJvYy5z
dGRpbi5jbG9zZSgpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L3dlYmtpdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvd2Via2l0LnB5CmluZGV4IDFjNDdjNjQzYmYyMjUwNzZiYzJlMTdkMWExY2FkNGYzMTI5
YzU1ZmQuLmExMzk1ZTkwMTQ4YzI1MDlhNTlkZTI4ZjRhZmJmY2JkYmU0ZDZkNTQgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5Cisr
KyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CkBA
IC0xMTEsMTMgKzExMSwxMyBAQCBjbGFzcyBXZWJLaXRQb3J0KFBvcnQpOgogICAgICAgICAgICAg
Y29uZmlnX2FyZ3MuYXBwZW5kKHBvcnRfZmxhZykKICAgICAgICAgcmV0dXJuIGNvbmZpZ19hcmdz
CiAKLSAgICBkZWYgX3J1bl9zY3JpcHQoc2VsZiwgc2NyaXB0X25hbWUsIGFyZ3M9Tm9uZSwgaW5j
bHVkZV9jb25maWd1cmF0aW9uX2FyZ3VtZW50cz1UcnVlKToKKyAgICBkZWYgX3J1bl9zY3JpcHQo
c2VsZiwgc2NyaXB0X25hbWUsIGFyZ3M9Tm9uZSwgaW5jbHVkZV9jb25maWd1cmF0aW9uX2FyZ3Vt
ZW50cz1UcnVlLCBkZWNvZGVfb3V0cHV0PVRydWUpOgogICAgICAgICBydW5fc2NyaXB0X2NvbW1h
bmQgPSBbc2VsZi5fY29uZmlnLnNjcmlwdF9wYXRoKHNjcmlwdF9uYW1lKV0KICAgICAgICAgaWYg
aW5jbHVkZV9jb25maWd1cmF0aW9uX2FyZ3VtZW50czoKICAgICAgICAgICAgIHJ1bl9zY3JpcHRf
Y29tbWFuZC5leHRlbmQoc2VsZi5fYXJndW1lbnRzX2Zvcl9jb25maWd1cmF0aW9uKCkpCiAgICAg
ICAgIGlmIGFyZ3M6CiAgICAgICAgICAgICBydW5fc2NyaXB0X2NvbW1hbmQuZXh0ZW5kKGFyZ3Mp
Ci0gICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQocnVuX3NjcmlwdF9j
b21tYW5kLCBjd2Q9c2VsZi5fY29uZmlnLndlYmtpdF9iYXNlX2RpcigpKQorICAgICAgICByZXR1
cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKHJ1bl9zY3JpcHRfY29tbWFuZCwgY3dkPXNl
bGYuX2NvbmZpZy53ZWJraXRfYmFzZV9kaXIoKSwgZGVjb2RlX291dHB1dD1kZWNvZGVfb3V0cHV0
KQogCiAgICAgZGVmIF9idWlsZF9kcml2ZXIoc2VsZik6CiAgICAgICAgIHRyeToKQEAgLTQ0NCwx
MSArNDQ0LDEyIEBAIGNsYXNzIFdlYktpdERyaXZlcihEcml2ZXIpOgogICAgICAgICByZXR1cm4g
Y21kCiAKICAgICBkZWYgc3RhcnQoc2VsZik6Ci0gICAgICAgIGVudmlyb25tZW50ID0gc2VsZi5f
cG9ydC5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIoKQorICAgICAgICBzZXJ2ZXJfbmFtZSA9IHNl
bGYuX3BvcnQuZHJpdmVyX25hbWUoKQorICAgICAgICBlbnZpcm9ubWVudCA9IHNlbGYuX3BvcnQu
c2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlcnZlcl9uYW1lKQogICAgICAgICBlbnZpcm9ubWVu
dFsnRFlMRF9GUkFNRVdPUktfUEFUSCddID0gc2VsZi5fcG9ydC5fYnVpbGRfcGF0aCgpCiAgICAg
ICAgICMgRklYTUU6IFdlJ3JlIGFzc3VtaW5nIHRoYXQgV2ViS2l0VGVzdFJ1bm5lciBjaGVja3Mg
dGhpcyBEdW1wUmVuZGVyVHJlZS1uYW1lZCBlbnZpcm9ubWVudCB2YXJpYWJsZS4KICAgICAgICAg
ZW52aXJvbm1lbnRbJ0RVTVBSRU5ERVJUUkVFX1RFTVAnXSA9IHN0cihzZWxmLl9kcml2ZXJfdGVt
cGRpcikKLSAgICAgICAgc2VsZi5fc2VydmVyX3Byb2Nlc3MgPSBzZXJ2ZXJfcHJvY2Vzcy5TZXJ2
ZXJQcm9jZXNzKHNlbGYuX3BvcnQsIHNlbGYuX3BvcnQuZHJpdmVyX25hbWUoKSwgc2VsZi5jbWRf
bGluZSgpLCBlbnZpcm9ubWVudCkKKyAgICAgICAgc2VsZi5fc2VydmVyX3Byb2Nlc3MgPSBzZXJ2
ZXJfcHJvY2Vzcy5TZXJ2ZXJQcm9jZXNzKHNlbGYuX3BvcnQsIHNlcnZlcl9uYW1lLCBzZWxmLmNt
ZF9saW5lKCksIGVudmlyb25tZW50KQogCiAgICAgZGVmIHBvbGwoc2VsZik6CiAgICAgICAgIHJl
dHVybiBzZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5wb2xsKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5CmluZGV4
IDAwOTM3OGNhYWQ3OGQ5ODhhMTk2NGY4YWU1NzBhNTYzZmU1NDY2MTkuLjcwMWU3YmQ3MzhkZmZi
Yzk2YThiZTU3NzNjZDA1NmFlYzEzNDBkM2MgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkKKysrIGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlci5weQpAQCAtMTgw
LDcgKzE4MCw3IEBAIGNsYXNzIExpZ2h0dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZlckJh
c2UpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4o
dG1wX21vZHVsZV9wYXRoLCBsaWJfZmlsZSkpCiAKICAgICAgICAgc2VsZi5fc3RhcnRfY21kID0g
c3RhcnRfY21kCi0gICAgICAgIHNlbGYuX2VudiA9IHNlbGYuX3BvcnRfb2JqLnNldHVwX2Vudmly
b25fZm9yX3NlcnZlcigpCisgICAgICAgIHNlbGYuX2VudiA9IHNlbGYuX3BvcnRfb2JqLnNldHVw
X2Vudmlyb25fZm9yX3NlcnZlcignbGlnaHR0cGQnKQogICAgICAgICBzZWxmLl9tYXBwaW5ncyA9
IG1hcHBpbmdzCiAKICAgICBkZWYgX3JlbW92ZV9zdGFsZV9sb2dzKHNlbGYpOgpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJzb2NrZXRf
c2VydmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93
ZWJzb2NrZXRfc2VydmVyLnB5CmluZGV4IGU0MGJkMTAxMmEzMDI2ZDIwYzljN2M5N2Q2MGNlOGFj
N2ZkNGM2MmUuLmU2YTYzNTJjMmZlODZhMDZjNTNlMjZiMmE2OWQzYjA3MWVhYTZlZTcgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2Vic29j
a2V0X3NlcnZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9z
ZXJ2ZXJzL3dlYnNvY2tldF9zZXJ2ZXIucHkKQEAgLTgyLDE2ICs4MiwxNSBAQCBjbGFzcyBQeVdl
YlNvY2tldChodHRwX3NlcnZlci5MaWdodHRwZCk6CiAgICAgICAgICAgICBzZWxmLl9waWRfZmls
ZSA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9ydW50aW1lX3BhdGgsICclcy5waWQnICUg
c2VsZi5fbmFtZSkKIAogICAgICAgICAjIFdlYmtpdCB0ZXN0cworICAgICAgICAjIEZJWE1FOiBU
aGlzIGlzIHRoZSB3cm9uZyB3YXkgdG8gZGV0ZWN0IGlmIHdlJ3JlIGluIENocm9tZSB2cy4gV2Vi
S2l0IQorICAgICAgICAjIFRoZSBwb3J0IG9iamVjdHMgYXJlIHN1cHBvc2VkIHRvIGFic3RyYWN0
IHRoaXMuCiAgICAgICAgIGlmIHNlbGYuX3Jvb3Q6Ci0gICAgICAgICAgICBzZWxmLl9sYXlvdXRf
dGVzdHMgPSBvcy5wYXRoLmFic3BhdGgoc2VsZi5fcm9vdCkKLSAgICAgICAgICAgIHNlbGYuX3dl
Yl9zb2NrZXRfdGVzdHMgPSBvcy5wYXRoLmFic3BhdGgoCi0gICAgICAgICAgICAgICAgb3MucGF0
aC5qb2luKHNlbGYuX3Jvb3QsICdodHRwJywgJ3Rlc3RzJywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJ3dlYnNvY2tldCcsICd0ZXN0cycpKQorICAgICAgICAgICAgc2VsZi5fbGF5b3V0
X3Rlc3RzID0gc2VsZi5fZmlsZXN5c3RlbS5hYnNwYXRoKHNlbGYuX3Jvb3QpCisgICAgICAgICAg
ICBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzID0gc2VsZi5fZmlsZXN5c3RlbS5hYnNwYXRoKHNlbGYu
X2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9yb290LCAnaHR0cCcsICd0ZXN0cycsICd3ZWJzb2NrZXQn
LCAndGVzdHMnKSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAg
ICAgICBzZWxmLl9sYXlvdXRfdGVzdHMgPSBzZWxmLl9wb3J0X29iai5sYXlvdXRfdGVzdHNfZGly
KCkKLSAgICAgICAgICAgICAgICBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzID0gb3MucGF0aC5qb2lu
KHNlbGYuX2xheW91dF90ZXN0cywKLSAgICAgICAgICAgICAgICAgICAgICdodHRwJywgJ3Rlc3Rz
JywgJ3dlYnNvY2tldCcsICd0ZXN0cycpCisgICAgICAgICAgICAgICAgc2VsZi5fd2ViX3NvY2tl
dF90ZXN0cyA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9sYXlvdXRfdGVzdHMsICdodHRw
JywgJ3Rlc3RzJywgJ3dlYnNvY2tldCcsICd0ZXN0cycpCiAgICAgICAgICAgICBleGNlcHQ6CiAg
ICAgICAgICAgICAgICAgc2VsZi5fd2ViX3NvY2tldF90ZXN0cyA9IE5vbmUKIApAQCAtMTAzLDM0
ICsxMDIsMzIgQEAgY2xhc3MgUHlXZWJTb2NrZXQoaHR0cF9zZXJ2ZXIuTGlnaHR0cGQpOgogICAg
IGRlZiBfcHJlcGFyZV9jb25maWcoc2VsZik6CiAgICAgICAgIHRpbWVfc3RyID0gdGltZS5zdHJm
dGltZSgnJWQlYiVZLSVIJU0lUycpCiAgICAgICAgIGxvZ19maWxlX25hbWUgPSBzZWxmLl9sb2df
cHJlZml4ICsgdGltZV9zdHIKKyAgICAgICAgIyBGSVhNRTogRG9lc24ndCBFeGVjdXRpdmUgaGF2
ZSBhIGRldm51bGwsIHNvIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byB1c2Ugb3MuZGV2bnVsbCBkaXJl
Y3RseT8KICAgICAgICAgc2VsZi5fd3NpbiA9IG9wZW4ob3MuZGV2bnVsbCwgJ3InKQogCi0gICAg
ICAgIGVycm9yX2xvZyA9IG9zLnBhdGguam9pbihzZWxmLl9vdXRwdXRfZGlyLCBsb2dfZmlsZV9u
YW1lICsgIi1lcnIudHh0IikKLQotICAgICAgICBvdXRwdXRfbG9nID0gb3MucGF0aC5qb2luKHNl
bGYuX291dHB1dF9kaXIsIGxvZ19maWxlX25hbWUgKyAiLW91dC50eHQiKQorICAgICAgICBlcnJv
cl9sb2cgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fb3V0cHV0X2RpciwgbG9nX2ZpbGVf
bmFtZSArICItZXJyLnR4dCIpCisgICAgICAgIG91dHB1dF9sb2cgPSBzZWxmLl9maWxlc3lzdGVt
LmpvaW4oc2VsZi5fb3V0cHV0X2RpciwgbG9nX2ZpbGVfbmFtZSArICItb3V0LnR4dCIpCiAgICAg
ICAgIHNlbGYuX3dzb3V0ID0gc2VsZi5fZmlsZXN5c3RlbS5vcGVuX3RleHRfZmlsZV9mb3Jfd3Jp
dGluZyhvdXRwdXRfbG9nKQogCiAgICAgICAgIGZyb20gd2Via2l0cHkudGhpcmRwYXJ0eS5hdXRv
aW5zdGFsbGVkLnB5d2Vic29ja2V0IGltcG9ydCBtb2RfcHl3ZWJzb2NrZXQKICAgICAgICAgcHl0
aG9uX2ludGVycCA9IHN5cy5leGVjdXRhYmxlCi0gICAgICAgIHB5d2Vic29ja2V0X2Jhc2UgPSBv
cy5wYXRoLmpvaW4oCi0gICAgICAgICAgICBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1l
KG9zLnBhdGguZGlybmFtZSgKLSAgICAgICAgICAgIG9zLnBhdGguYWJzcGF0aChfX2ZpbGVfXykp
KSksICd0aGlyZHBhcnR5JywKLSAgICAgICAgICAgICdhdXRvaW5zdGFsbGVkJywgJ3B5d2Vic29j
a2V0JykKLSAgICAgICAgcHl3ZWJzb2NrZXRfc2NyaXB0ID0gb3MucGF0aC5qb2luKHB5d2Vic29j
a2V0X2Jhc2UsICdtb2RfcHl3ZWJzb2NrZXQnLAotICAgICAgICAgICAgJ3N0YW5kYWxvbmUucHkn
KQorICAgICAgICAjIEZJWE1FOiBVc2Ugc2VsZi5fZmlsZXN5c3RlbS5wYXRoX3RvX21vZHVsZShz
ZWxmLl9fbW9kdWxlX18pIGluc3RlYWQgb2YgX19maWxlX18KKyAgICAgICAgIyBJIHRoaW5rIHRo
aXMgaXMgdHJ5aW5nIHRvIGdldCB0aGUgY2hyb21lIGRpcmVjdG9yeT8gIERvZXNuJ3QgdGhlIHBv
cnQgb2JqZWN0IGtub3cgdGhhdD8KKyAgICAgICAgcHl3ZWJzb2NrZXRfYmFzZSA9IHNlbGYuX2Zp
bGVzeXN0ZW0uam9pbihzZWxmLl9maWxlc3lzdGVtLmRpcm5hbWUoc2VsZi5fZmlsZXN5c3RlbS5k
aXJuYW1lKHNlbGYuX2ZpbGVzeXN0ZW0uZGlybmFtZShzZWxmLl9maWxlc3lzdGVtLmFic3BhdGgo
X19maWxlX18pKSkpLCAndGhpcmRwYXJ0eScsICdhdXRvaW5zdGFsbGVkJywgJ3B5d2Vic29ja2V0
JykKKyAgICAgICAgcHl3ZWJzb2NrZXRfc2NyaXB0ID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHB5
d2Vic29ja2V0X2Jhc2UsICdtb2RfcHl3ZWJzb2NrZXQnLCAnc3RhbmRhbG9uZS5weScpCiAgICAg
ICAgIHN0YXJ0X2NtZCA9IFsKICAgICAgICAgICAgIHB5dGhvbl9pbnRlcnAsICctdScsIHB5d2Vi
c29ja2V0X3NjcmlwdCwKICAgICAgICAgICAgICctLXNlcnZlci1ob3N0JywgJzEyNy4wLjAuMScs
CiAgICAgICAgICAgICAnLS1wb3J0Jywgc3RyKHNlbGYuX3BvcnQpLAotICAgICAgICAgICAgJy0t
ZG9jdW1lbnQtcm9vdCcsIG9zLnBhdGguam9pbihzZWxmLl9sYXlvdXRfdGVzdHMsICdodHRwJywg
J3Rlc3RzJyksCisgICAgICAgICAgICAjIEZJWE1FOiBEb24ndCB3ZSBoYXZlIGEgc2VsZi5fcG9y
dF9vYmoubGF5b3V0X3Rlc3RfcGF0aD8KKyAgICAgICAgICAgICctLWRvY3VtZW50LXJvb3QnLCBz
ZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fbGF5b3V0X3Rlc3RzLCAnaHR0cCcsICd0ZXN0cycp
LAogICAgICAgICAgICAgJy0tc2Nhbi1kaXInLCBzZWxmLl93ZWJfc29ja2V0X3Rlc3RzLAogICAg
ICAgICAgICAgJy0tY2dpLXBhdGhzJywgJy93ZWJzb2NrZXQvdGVzdHMnLAogICAgICAgICAgICAg
Jy0tbG9nLWZpbGUnLCBlcnJvcl9sb2csCiAgICAgICAgIF0KIAotICAgICAgICBoYW5kbGVyX21h
cF9maWxlID0gb3MucGF0aC5qb2luKHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hhbmRsZXJfbWFwLnR4dCcpCi0gICAgICAg
IGlmIG9zLnBhdGguZXhpc3RzKGhhbmRsZXJfbWFwX2ZpbGUpOgorICAgICAgICBoYW5kbGVyX21h
cF9maWxlID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3dlYl9zb2NrZXRfdGVzdHMsICdo
YW5kbGVyX21hcC50eHQnKQorICAgICAgICBpZiBzZWxmLl9maWxlc3lzdGVtLmV4aXN0cyhoYW5k
bGVyX21hcF9maWxlKToKICAgICAgICAgICAgIF9sb2cuZGVidWcoJ1VzaW5nIGhhbmRsZXJfbWFw
X2ZpbGU6ICVzJyAlIGhhbmRsZXJfbWFwX2ZpbGUpCiAgICAgICAgICAgICBzdGFydF9jbWQuYXBw
ZW5kKCctLXdlYnNvY2staGFuZGxlcnMtbWFwLWZpbGUnKQogICAgICAgICAgICAgc3RhcnRfY21k
LmFwcGVuZChoYW5kbGVyX21hcF9maWxlKQpAQCAtMTQyLDcgKzEzOSw4IEBAIGNsYXNzIFB5V2Vi
U29ja2V0KGh0dHBfc2VydmVyLkxpZ2h0dHBkKToKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICctYycsIHNlbGYuX2NlcnRpZmljYXRlXSkKIAogICAgICAgICBzZWxmLl9zdGFydF9jbWQg
PSBzdGFydF9jbWQKLSAgICAgICAgc2VsZi5fZW52ID0gc2VsZi5fcG9ydF9vYmouc2V0dXBfZW52
aXJvbl9mb3Jfc2VydmVyKCkKKyAgICAgICAgc2VydmVyX25hbWUgPSBzZWxmLl9maWxlc3lzdGVt
LmJhc2VuYW1lKHB5d2Vic29ja2V0X3NjcmlwdCkKKyAgICAgICAgc2VsZi5fZW52ID0gc2VsZi5f
cG9ydF9vYmouc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlcnZlcl9uYW1lKQogICAgICAgICBz
ZWxmLl9lbnZbJ1BZVEhPTlBBVEgnXSA9IChweXdlYnNvY2tldF9iYXNlICsgb3MucGF0aC5wYXRo
c2VwICsgc2VsZi5fZW52LmdldCgnUFlUSE9OUEFUSCcsICcnKSkKIAogICAgIGRlZiBfcmVtb3Zl
X3N0YWxlX2xvZ3Moc2VsZik6Cg==
</data>
<flag name="review"
          id="96298"
          type_id="1"
          status="+"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="96299"
          type_id="3"
          status="-"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>