<?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>77080</bug_id>
          
          <creation_ts>2012-01-26 01:43:19 -0800</creation_ts>
          <short_desc>REGRESSION(r105935): test-webkitpy is still broken (Requested by abarth on #webkit).</short_desc>
          <delta_ts>2012-01-26 01:51:44 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>76973</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>dpranke</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>542964</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-26 01:43:19 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/105935 broke the build:
test-webkitpy is still broken (Requested by abarth 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>542965</commentid>
    <comment_count>1</comment_count>
      <attachid>124080</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-26 01:43:49 -0800</bug_when>
    <thetext>Created attachment 124080
ROLLOUT of r105935

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

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>542974</commentid>
    <comment_count>2</comment_count>
      <attachid>124080</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-26 01:51:39 -0800</bug_when>
    <thetext>Comment on attachment 124080
ROLLOUT of r105935

Clearing flags on attachment: 124080

Committed r105979: &lt;http://trac.webkit.org/changeset/105979&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>542975</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-26 01:51:44 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124080</attachid>
            <date>2012-01-26 01:43:49 -0800</date>
            <delta_ts>2012-01-26 01:51:39 -0800</delta_ts>
            <desc>ROLLOUT of r105935</desc>
            <filename>bug-77080-20120126094504.patch</filename>
            <type>text/plain</type>
            <size>19106</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1OTc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNDRlMmY3ZjM1ZDU4MDA0ZWFlMDJiOTY4N2U4ZDY4MmY4
ODFlM2MxOS4uMjk5ODVmZjc2YTFjZWRhYjEwMWI5YmYxNmJiMzk5ZjdhMGYwMjlhOSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0
IEBACisyMDEyLTAxLTI2ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNv
bT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTA1OTM1IGFuZCByMTA1OTU0
LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xMDU5MzUKKyAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTA1OTU0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NzA4MAorCisgICAgICAgIHRlc3Qt
d2Via2l0cHkgaXMgc3RpbGwgYnJva2VuIChSZXF1ZXN0ZWQgYnkgYWJhcnRoIG9uCisgICAgICAg
ICN3ZWJraXQpLgorCisgICAgICAgICogU2NyaXB0cy90ZXN0LXdlYmtpdHB5OgorICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9leGVjdXRpdmVfdW5pdHRlc3QucHk6Cisg
ICAgICAgIChuZXZlcl9lbmRpbmdfY29tbWFuZCk6CisgICAgICAgIChFeGVjdXRpdmVUZXN0LnRl
c3RfcnVuX2NvbW1hbmRfYXJnc190eXBlKToKKyAgICAgICAgKEV4ZWN1dGl2ZVRlc3QudGVzdF9y
dW5fY29tbWFuZF93aXRoX3VuaWNvZGUpOgorICAgICAgICAoRXhlY3V0aXZlVGVzdC50ZXN0X3J1
bm5pbmdfcGlkcyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2Zp
bGV1dGlscy5weToKKyAgICAgICAgKG1ha2Vfc3Rkb3V0X2JpbmFyeSk6CisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS90ZXN0L2NhdC5weToKKyAgICAgICAgKGNvbW1hbmRfYXJndW1lbnRzKToK
KyAgICAgICAgKG1haW4pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdGVzdC9jYXRfdW5p
dHRlc3QucHk6CisgICAgICAgIChDYXRUZXN0KToKKyAgICAgICAgKENhdFRlc3QuYXNzZXJ0X2Nh
dCk6CisgICAgICAgIChDYXRUZXN0LnRlc3RfYmFzaWMpOgorICAgICAgICAoQ2F0VGVzdC50ZXN0
X25vX25ld2xpbmUpOgorICAgICAgICAoQ2F0VGVzdC50ZXN0X3VuaWNvZGUpOgorICAgICAgICAo
Q2F0VGVzdC50ZXN0X2FzX2NvbW1hbmQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdGVz
dC9lY2hvLnB5OgorICAgICAgICAoY29tbWFuZF9hcmd1bWVudHMpOgorICAgICAgICAobWFpbik6
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90ZXN0L2VjaG9fdW5pdHRlc3QucHk6CisgICAg
ICAgIChFY2hvVGVzdCk6CisgICAgICAgIChFY2hvVGVzdC50ZXN0X2Jhc2ljKToKKyAgICAgICAg
KEVjaG9UZXN0LnRlc3Rfbm9fbmV3bGluZSk6CisgICAgICAgIChFY2hvVGVzdC50ZXN0X3VuaWNv
ZGUpOgorICAgICAgICAoRWNob1Rlc3QudGVzdF9hcmd1bWVudF9vcmRlcik6CisgICAgICAgIChF
Y2hvVGVzdC50ZXN0X2VtcHR5X2FyZ3VtZW50cyk6CisgICAgICAgIChFY2hvVGVzdC50ZXN0X25v
X2FyZ3VtZW50cyk6CisgICAgICAgIChFY2hvVGVzdC50ZXN0X2FzX2NvbW1hbmQpOgorCiAyMDEy
LTAxLTI2ICBHYWJvciBSYXBjc2FueWkgIDxyZ2Fib3JAd2Via2l0Lm9yZz4KIAogICAgICAgICBb
R1RLXSBEZXRlY3QgY3Jvc3MtY29tcGlsYXRpb24gaW4gd2Via2l0ZGlycy5wbSB0byBub3QgZ2Vu
ZXJhdGUgZ3RrZG9jCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3Rlc3Qtd2Via2l0cHkgYi9U
b29scy9TY3JpcHRzL3Rlc3Qtd2Via2l0cHkKaW5kZXggNDI5OGZlYWUyMzczYTdiOGEzN2M0MGZi
OWM4ZDA1NzQ2NWJkOTU2YS4uNTVhZDk3YjU1ZDQ1MWI2NTQwMWU2YWU3MDczNDE3NjEwY2YwYTIx
ZiAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy90ZXN0LXdlYmtpdHB5CisrKyBiL1Rvb2xzL1Nj
cmlwdHMvdGVzdC13ZWJraXRweQpAQCAtNDIsNyArNDIsNyBAQCBfbG9nID0gbG9nZ2luZy5nZXRM
b2dnZXIoInRlc3Qtd2Via2l0cHkiKQogCiAKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6Ci0g
ICAgd2Via2l0X3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGgu
ZGlybmFtZShvcy5wYXRoLmFic3BhdGgoX19maWxlX18pKSkpCisgICAgd2Via2l0X3Jvb3QgPSBv
cy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykp
KQogCiAgICAgIyBGSVhNRTogV2Ugc2hvdWxkIHByb2JhYmx5IHRlc3QgZWFjaCBwYWNrYWdlIHNl
cGFyYXRlbHkgdG8gYXZvaWQgbmFtaW5nIGNvbmZsaWN0cy4KICAgICBkaXJzID0gWwpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZV91bml0
dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9leGVjdXRpdmVf
dW5pdHRlc3QucHkKaW5kZXggNmIzMWUzYzMyZWEyYzVkYTdkYjIxNWI3Zjc1YjllOTYwNTc2Y2U4
Yi4uYTA4NzhmOWNlODNhMjY0YzFmMGI0ZjU0OWU4Y2VkN2MyOGE3MTZmMCAxMDA2NDQKLS0tIGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZV91bml0dGVzdC5w
eQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlX3Vu
aXR0ZXN0LnB5CkBAIC0zNSw2ICszNSw3IEBAIGltcG9ydCB1bml0dGVzdAogCiBmcm9tIHdlYmtp
dHB5LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBFeGVjdXRpdmUsIFNjcmlwdEVycm9y
CiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZmlsZXN5c3RlbV9tb2NrIGltcG9ydCBNb2Nr
RmlsZVN5c3RlbQorZnJvbSB3ZWJraXRweS50ZXN0IGltcG9ydCBjYXQsIGVjaG8KIAogCiBjbGFz
cyBTY3JpcHRFcnJvclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtNjMsMjYgKzY0LDcgQEAg
ZGVmIG5ldmVyX2VuZGluZ19jb21tYW5kKCk6CiAgICAgcmV0dXJuIFsneWVzJ10KIAogCi1kZWYg
Y29tbWFuZF9saW5lKGNtZCwgKmFyZ3MpOgotICAgIHJldHVybiBbc3lzLmV4ZWN1dGFibGUsIF9f
ZmlsZV9fLCAnLS0nICsgY21kXSArIGxpc3QoYXJncykKLQotCi1kZWYgc2NyaXB0X2RpcigpOgot
ICAgIHJldHVybiBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFt
ZShvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSkpKSkKLQotCiBjbGFz
cyBFeGVjdXRpdmVUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKLSAgICBkZWYgc2V0VXAoc2VsZik6
Ci0gICAgICAgICMgV2UgbmVlZCB0aGlzIHNvIHRoYXQgd2UgY2FuIGxhdW5jaCAncHl0aG9uIGV4
ZWN1dGl2ZV91bml0dGVzdHMucHknIGRpcmVjdGx5ICh0byB0ZXN0Ci0gICAgICAgICMgYWN0dWFs
bHkgc3Bhd25pbmcgc3VicHJvY2Vzc2VzKSBhbmQgaGF2ZSAnZnJvbSB3ZWJraXRweS4uLicgaW1w
b3J0cyB3b3JrIHJlbGlhYmx5LgotICAgICAgICBzZWxmLm9yaWdfcHl0aG9ucGF0aCA9IG9zLmVu
dmlyb24uZ2V0KCdQWVRIT05QQVRIJykKLSAgICAgICAgb3MuZW52aXJvblsnUFlUSE9OUEFUSCdd
ID0gc2NyaXB0X2RpcigpCi0KLSAgICBkZWYgdGVhckRvd24oc2VsZik6Ci0gICAgICAgIGlmIHNl
bGYub3JpZ19weXRob25wYXRoIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgb3MuZW52aXJvblsn
UFlUSE9OUEFUSCddID0gc2VsZi5vcmlnX3B5dGhvbnBhdGgKLSAgICAgICAgZWxzZToKLSAgICAg
ICAgICAgIGRlbCBvcy5lbnZpcm9uWydQWVRIT05QQVRIJ10KIAogICAgIGRlZiBhc3NlcnRfaW50
ZXJwcmV0ZXJfZm9yX2NvbnRlbnQoc2VsZiwgaW50ZXByZXRlciwgY29udGVudCk6CiAgICAgICAg
IGZzID0gTW9ja0ZpbGVTeXN0ZW0oKQpAQCAtMTIwLDggKzEwMiw4IEBAIGNsYXNzIEV4ZWN1dGl2
ZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBleGVjdXRpdmUgPSBFeGVjdXRpdmUo
KQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhBc3NlcnRpb25FcnJvciwgZXhlY3V0aXZlLnJ1
bl9jb21tYW5kLCAiZWNobyIpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEFzc2VydGlvbkVy
cm9yLCBleGVjdXRpdmUucnVuX2NvbW1hbmQsIHUiZWNobyIpCi0gICAgICAgIGV4ZWN1dGl2ZS5y
dW5fY29tbWFuZChjb21tYW5kX2xpbmUoJ2VjaG8nLCAnZm9vJykpCi0gICAgICAgIGV4ZWN1dGl2
ZS5ydW5fY29tbWFuZCh0dXBsZShjb21tYW5kX2xpbmUoJ2VjaG8nLCAnZm9vJykpKQorICAgICAg
ICBleGVjdXRpdmUucnVuX2NvbW1hbmQoZWNoby5jb21tYW5kX2FyZ3VtZW50cygnZm9vJykpCisg
ICAgICAgIGV4ZWN1dGl2ZS5ydW5fY29tbWFuZCh0dXBsZShlY2hvLmNvbW1hbmRfYXJndW1lbnRz
KCdmb28nKSkpCiAKICAgICBkZWYgdGVzdF9ydW5fY29tbWFuZF93aXRoX3VuaWNvZGUoc2VsZik6
CiAgICAgICAgICIiIlZhbGlkYXRlIHRoYXQgaXQgaXMgc2FmZSB0byBwYXNzIHVuaWNvZGUoKSBv
YmplY3RzCkBAIC0xNDIsMjQgKzEyNCwyNCBAQCBjbGFzcyBFeGVjdXRpdmVUZXN0KHVuaXR0ZXN0
LlRlc3RDYXNlKToKIAogICAgICAgICBleGVjdXRpdmUgPSBFeGVjdXRpdmUoKQogCi0gICAgICAg
IG91dHB1dCA9IGV4ZWN1dGl2ZS5ydW5fY29tbWFuZChjb21tYW5kX2xpbmUoJ2NhdCcpLCBpbnB1
dD11bmljb2RlX3Rvcl9pbnB1dCkKKyAgICAgICAgb3V0cHV0ID0gZXhlY3V0aXZlLnJ1bl9jb21t
YW5kKGNhdC5jb21tYW5kX2FyZ3VtZW50cygpLCBpbnB1dD11bmljb2RlX3Rvcl9pbnB1dCkKICAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbHMob3V0cHV0LCB1bmljb2RlX3Rvcl9vdXRwdXQpCiAKLSAg
ICAgICAgb3V0cHV0ID0gZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGNvbW1hbmRfbGluZSgnZWNobycs
IHVuaWNvZGVfdG9yX2lucHV0KSkKKyAgICAgICAgb3V0cHV0ID0gZXhlY3V0aXZlLnJ1bl9jb21t
YW5kKGVjaG8uY29tbWFuZF9hcmd1bWVudHMoIi1uIiwgdW5pY29kZV90b3JfaW5wdXQpKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFscyhvdXRwdXQsIHVuaWNvZGVfdG9yX291dHB1dCkKIAotICAg
ICAgICBvdXRwdXQgPSBleGVjdXRpdmUucnVuX2NvbW1hbmQoY29tbWFuZF9saW5lKCdlY2hvJywg
dW5pY29kZV90b3JfaW5wdXQpLCBkZWNvZGVfb3V0cHV0PUZhbHNlKQorICAgICAgICBvdXRwdXQg
PSBleGVjdXRpdmUucnVuX2NvbW1hbmQoZWNoby5jb21tYW5kX2FyZ3VtZW50cygiLW4iLCB1bmlj
b2RlX3Rvcl9pbnB1dCksIGRlY29kZV9vdXRwdXQ9RmFsc2UpCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWxzKG91dHB1dCwgZW5jb2RlZF90b3IpCiAKICAgICAgICAgIyBNYWtlIHN1cmUgdGhhdCBz
dHIoKSBpbnB1dCBhbHNvIHdvcmtzLgotICAgICAgICBvdXRwdXQgPSBleGVjdXRpdmUucnVuX2Nv
bW1hbmQoY29tbWFuZF9saW5lKCdjYXQnKSwgaW5wdXQ9ZW5jb2RlZF90b3IsIGRlY29kZV9vdXRw
dXQ9RmFsc2UpCisgICAgICAgIG91dHB1dCA9IGV4ZWN1dGl2ZS5ydW5fY29tbWFuZChjYXQuY29t
bWFuZF9hcmd1bWVudHMoKSwgaW5wdXQ9ZW5jb2RlZF90b3IsIGRlY29kZV9vdXRwdXQ9RmFsc2Up
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKG91dHB1dCwgZW5jb2RlZF90b3IpCiAKICAgICAg
ICAgIyBGSVhNRTogV2Ugc2hvdWxkIG9ubHkgaGF2ZSBvbmUgcnVuKiBtZXRob2QgdG8gdGVzdAot
ICAgICAgICBvdXRwdXQgPSBleGVjdXRpdmUucnVuX2FuZF90aHJvd19pZl9mYWlsKGNvbW1hbmRf
bGluZSgnZWNobycsIHVuaWNvZGVfdG9yX2lucHV0KSwgcXVpZXQ9VHJ1ZSkKKyAgICAgICAgb3V0
cHV0ID0gZXhlY3V0aXZlLnJ1bl9hbmRfdGhyb3dfaWZfZmFpbChlY2hvLmNvbW1hbmRfYXJndW1l
bnRzKCItbiIsIHVuaWNvZGVfdG9yX2lucHV0KSwgcXVpZXQ9VHJ1ZSkKICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbHMob3V0cHV0LCB1bmljb2RlX3Rvcl9vdXRwdXQpCiAKLSAgICAgICAgb3V0cHV0
ID0gZXhlY3V0aXZlLnJ1bl9hbmRfdGhyb3dfaWZfZmFpbChjb21tYW5kX2xpbmUoJ2VjaG8nLCB1
bmljb2RlX3Rvcl9pbnB1dCksIHF1aWV0PVRydWUsIGRlY29kZV9vdXRwdXQ9RmFsc2UpCisgICAg
ICAgIG91dHB1dCA9IGV4ZWN1dGl2ZS5ydW5fYW5kX3Rocm93X2lmX2ZhaWwoZWNoby5jb21tYW5k
X2FyZ3VtZW50cygiLW4iLCB1bmljb2RlX3Rvcl9pbnB1dCksIHF1aWV0PVRydWUsIGRlY29kZV9v
dXRwdXQ9RmFsc2UpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKG91dHB1dCwgZW5jb2RlZF90
b3IpCiAKICAgICBkZWYgdGVzdF9raWxsX3Byb2Nlc3Moc2VsZik6CkBAIC0yMjUsMTcgKzIwNywz
IEBAIGNsYXNzIEV4ZWN1dGl2ZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBleGVj
dXRpdmUgPSBFeGVjdXRpdmUoKQogICAgICAgICBwaWRzID0gZXhlY3V0aXZlLnJ1bm5pbmdfcGlk
cygpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5nZXRwaWQoKSBpbiBwaWRzKQotCi0KLWRl
ZiBtYWluKHBsYXRmb3JtLCBzdGRpbiwgc3Rkb3V0LCBjbWQsIGFyZ3MpOgotICAgIGlmIHBsYXRm
b3JtID09ICd3aW4zMicgYW5kIGhhc2F0dHIoc3Rkb3V0LCAnZmlsZW5vJyk6Ci0gICAgICAgIGlt
cG9ydCBtc3ZjcnQKLSAgICAgICAgbXN2Y3J0LnNldG1vZGUoc3Rkb3V0LmZpbGVubygpLCBvcy5P
X0JJTkFSWSkKLSAgICBpZiBjbWQgPT0gJy0tY2F0JzoKLSAgICAgICAgc3Rkb3V0LndyaXRlKHN0
ZGluLnJlYWQoKSkKLSAgICBlbGlmIGNtZCA9PSAnLS1lY2hvJzoKLSAgICAgICAgc3Rkb3V0Lndy
aXRlKCcgJy5qb2luKGFyZ3MpKQotICAgIHJldHVybiAwCi0KLWlmIF9fbmFtZV9fID09ICdfX21h
aW5fXycgYW5kIGxlbihzeXMuYXJndikgPiAxIGFuZCBzeXMuYXJndlsxXSBpbiAoJy0tY2F0Jywg
Jy0tZWNobycpOgotICAgIHN5cy5leGl0KG1haW4oc3lzLnBsYXRmb3JtLCBzeXMuc3RkaW4sIHN5
cy5zdGRvdXQsIHN5cy5hcmd2WzFdLCBzeXMuYXJndlsyOl0pKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2ZpbGV1dGlscy5weSBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9maWxldXRpbHMucHkKaW5kZXggZTY5ZGUyOWJiMmQx
ZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MS4uNTU4MjFmODM1ODM4ZGZlMzU2OGQ3NTUwN2Rk
OWEyMjQxMTRjNmM2NyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24v
c3lzdGVtL2ZpbGV1dGlscy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9z
eXN0ZW0vZmlsZXV0aWxzLnB5CkBAIC0wLDAgKzEsMzMgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDEw
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworIyBhcmUgbWV0OgorIyAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4gIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORAorIyBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SCisjIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyMgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyMgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIKKyMgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyMgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0IHN5cworCisKK2RlZiBtYWtlX3N0ZG91dF9iaW5h
cnkoKToKKyAgICAiIiJQdXRzIHN5cy5zdGRvdXQgaW50byBiaW5hcnkgbW9kZSAob24gcGxhdGZv
cm1zIHRoYXQgaGF2ZSBhIGRpc3RpbmN0aW9uCisgICAgYmV0d2VlbiB0ZXh0IGFuZCBiaW5hcnkg
bW9kZSkuIiIiCisgICAgaWYgc3lzLnBsYXRmb3JtICE9ICd3aW4zMicgb3Igbm90IGhhc2F0dHIo
c3lzLnN0ZG91dCwgJ2ZpbGVubycpOgorICAgICAgICByZXR1cm4KKyAgICBpbXBvcnQgbXN2Y3J0
CisgICAgaW1wb3J0IG9zCisgICAgbXN2Y3J0LnNldG1vZGUoc3lzLnN0ZG91dC5maWxlbm8oKSwg
b3MuT19CSU5BUlkpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rlc3QvY2F0
LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90ZXN0L2NhdC5weQppbmRleCBlNjlkZTI5YmIy
ZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxLi5hYzU2ZDFjN2YxNzhkM2VmNGJjMDBhNDVj
YTRmMDYyYTM2NjU4ZGQyIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rlc3Qv
Y2F0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9jYXQucHkKQEAgLTAsMCAr
MSw0MiBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuICBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisjIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLAorIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitpbXBvcnQg
b3MucGF0aAoraW1wb3J0IHN5cworCisjIEFkZCBXZWJLaXRUb29scy9TY3JpcHRzIHRvIHRoZSBw
YXRoIHRvIGVuc3VyZSB3ZSBjYW4gZmluZCB3ZWJraXRweS4KK3N5cy5wYXRoLmFwcGVuZChvcy5w
YXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykpKSkK
KworZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtIGltcG9ydCBmaWxldXRpbHMKKworCitkZWYg
Y29tbWFuZF9hcmd1bWVudHMoKmFyZ3MpOgorICAgIHJldHVybiBbc3lzLmV4ZWN1dGFibGUsIF9f
ZmlsZV9fXSArIGxpc3QoYXJncykKKworCitkZWYgbWFpbigpOgorICAgIGZpbGV1dGlscy5tYWtl
X3N0ZG91dF9iaW5hcnkoKQorICAgIHN5cy5zdGRvdXQud3JpdGUoc3lzLnN0ZGluLnJlYWQoKSkK
KyAgICByZXR1cm4gMAorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHN5cy5leGl0
KG1haW4oKSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9jYXRfdW5p
dHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rlc3QvY2F0X3VuaXR0ZXN0LnB5Cmlu
ZGV4IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEuLjRlZDFmNjc5YTg0
ODdhMGEzZDUxMzMwMGFhZjg2Yjc1Y2JlMmJhNjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdGVzdC9jYXRfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS90ZXN0L2NhdF91bml0dGVzdC5weQpAQCAtMCwwICsxLDUyIEBACisjIENvcHlyaWdodCAoQykg
MjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMgMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjIDIuICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJyBBTkQKKyMgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyMgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorIyBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUgorIyBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisjIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisjIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSCisjIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisjIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKK2ltcG9ydCBTdHJpbmdJTworaW1wb3J0IG9zLnBhdGgK
K2ltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAorCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0
ZW0gaW1wb3J0IGV4ZWN1dGl2ZSwgb3V0cHV0Y2FwdHVyZQorZnJvbSB3ZWJraXRweS50ZXN0IGlt
cG9ydCBjYXQKKworCitjbGFzcyBDYXRUZXN0KG91dHB1dGNhcHR1cmUuT3V0cHV0Q2FwdHVyZVRl
c3RDYXNlQmFzZSk6CisgICAgZGVmIGFzc2VydF9jYXQoc2VsZiwgaW5wdXQpOgorICAgICAgICBz
YXZlZF9zdGRpbiA9IHN5cy5zdGRpbgorICAgICAgICBzeXMuc3RkaW4gPSBTdHJpbmdJTy5TdHJp
bmdJTyhpbnB1dCkKKyAgICAgICAgY2F0Lm1haW4oKQorICAgICAgICBzZWxmLmFzc2VydFN0ZG91
dChpbnB1dCkKKyAgICAgICAgc3lzLnN0ZGluID0gc2F2ZWRfc3RkaW4KKworICAgIGRlZiB0ZXN0
X2Jhc2ljKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydF9jYXQoJ2ZvbyBiYXIgYmF6XG4nKQor
CisgICAgZGVmIHRlc3Rfbm9fbmV3bGluZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRfY2F0
KCdmb28gYmFyIGJheicpCisKKyAgICBkZWYgdGVzdF91bmljb2RlKHNlbGYpOgorICAgICAgICBz
ZWxmLmFzc2VydF9jYXQodSdXZWJLaXQgXHUyNjYxIFRvciBBcm5lIFZlc3RiXHUwMEY4IScpCisK
KyAgICBkZWYgdGVzdF9hc19jb21tYW5kKHNlbGYpOgorICAgICAgICBpbnB1dCA9ICdmb28gYmFy
IGJhelxuJworICAgICAgICBvdXRwdXQgPSBleGVjdXRpdmUuRXhlY3V0aXZlKCkucnVuX2NvbW1h
bmQoY2F0LmNvbW1hbmRfYXJndW1lbnRzKCksIGlucHV0PWlucHV0KQorICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKGlucHV0LCBvdXRwdXQpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L3Rlc3QvZWNoby5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9lY2hvLnB5Cmlu
ZGV4IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEuLjVkNGQ4ZTJkNTJi
OGY5YzYwNDI4YjNiYTMyZTMwMjBlOTQyN2QxYzkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdGVzdC9lY2hvLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9l
Y2hvLnB5CkBAIC0wLDAgKzEsNTIgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUg
bWV0OgorIyAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisjICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorIyBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisj
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwKKyMgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyMgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIK
KyMgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyMgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKworaW1wb3J0IG9zLnBhdGgKK2ltcG9ydCBzeXMKKworIyBBZGQgV2ViS2l0VG9vbHMv
U2NyaXB0cyB0byB0aGUgcGF0aCB0byBlbnN1cmUgd2UgY2FuIGZpbmQgd2Via2l0cHkuCitzeXMu
cGF0aC5hcHBlbmQob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRpcm5h
bWUoX19maWxlX18pKSkpCisKK2Zyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbSBpbXBvcnQgZmls
ZXV0aWxzCisKKworZGVmIGNvbW1hbmRfYXJndW1lbnRzKCphcmdzKToKKyAgICByZXR1cm4gW3N5
cy5leGVjdXRhYmxlLCBfX2ZpbGVfX10gKyBsaXN0KGFyZ3MpCisKKworZGVmIG1haW4oYXJncz1O
b25lKToKKyAgICBpZiBhcmdzIGlzIE5vbmU6CisgICAgICAgIGFyZ3MgPSBzeXMuYXJndlsxOl0K
KworICAgIGZpbGV1dGlscy5tYWtlX3N0ZG91dF9iaW5hcnkoKQorCisgICAgcHJpbnRfbmV3bGlu
ZSA9IFRydWUKKyAgICBpZiBsZW4oYXJncykgYW5kIGFyZ3NbMF0gPT0gJy1uJzoKKyAgICAgICAg
cHJpbnRfbmV3bGluZSA9IEZhbHNlCisgICAgICAgIGRlbCBhcmdzWzBdCisgICAgc3lzLnN0ZG91
dC53cml0ZSgnICcuam9pbihhcmdzKSkKKyAgICBpZiBwcmludF9uZXdsaW5lOgorICAgICAgICBz
eXMuc3Rkb3V0LndyaXRlKCdcbicpCisgICAgcmV0dXJuIDAKKworaWYgX19uYW1lX18gPT0gJ19f
bWFpbl9fJzoKKyAgICBzeXMuZXhpdChtYWluKCkpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L3Rlc3QvZWNob191bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dGVzdC9lY2hvX3VuaXR0ZXN0LnB5CmluZGV4IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFk
OGMyZTQ4YzUzOTEuLmJjMTNiNWVlYTE5ZTIzZDVhNzZlMTg0NmI4Y2M1MGZkNDc2YzJlMzkgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9lY2hvX3VuaXR0ZXN0LnB5Cisr
KyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9lY2hvX3VuaXR0ZXN0LnB5CkBAIC0wLDAg
KzEsNjQgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorIyBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisjIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyMgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IKKyMgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyMgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwKKyMgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0
IG9zLnBhdGgKK2ltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAorCitmcm9tIHdlYmtpdHB5LmNv
bW1vbi5zeXN0ZW0gaW1wb3J0IGV4ZWN1dGl2ZSwgb3V0cHV0Y2FwdHVyZQorZnJvbSB3ZWJraXRw
eS50ZXN0IGltcG9ydCBlY2hvCisKKworY2xhc3MgRWNob1Rlc3Qob3V0cHV0Y2FwdHVyZS5PdXRw
dXRDYXB0dXJlVGVzdENhc2VCYXNlKToKKyAgICBkZWYgdGVzdF9iYXNpYyhzZWxmKToKKyAgICAg
ICAgZWNoby5tYWluKFsnZm9vJywgJ2JhcicsICdiYXonXSkKKyAgICAgICAgc2VsZi5hc3NlcnRT
dGRvdXQoJ2ZvbyBiYXIgYmF6XG4nKQorCisgICAgZGVmIHRlc3Rfbm9fbmV3bGluZShzZWxmKToK
KyAgICAgICAgZWNoby5tYWluKFsnLW4nLCAnZm9vJywgJ2JhcicsICdiYXonXSkKKyAgICAgICAg
c2VsZi5hc3NlcnRTdGRvdXQoJ2ZvbyBiYXIgYmF6JykKKworICAgIGRlZiB0ZXN0X3VuaWNvZGUo
c2VsZik6CisgICAgICAgIGVjaG8ubWFpbihbdSdXZWJLaXQgXHUyNjYxJywgJ1RvciBBcm5lJywg
dSdWZXN0Ylx1MDBGOCEnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRTdGRvdXQodSdXZWJLaXQgXHUy
NjYxIFRvciBBcm5lIFZlc3RiXHUwMEY4IVxuJykKKworICAgIGRlZiB0ZXN0X2FyZ3VtZW50X29y
ZGVyKHNlbGYpOgorICAgICAgICBlY2hvLm1haW4oWydmb28nLCAnLW4nLCAnYmFyJ10pCisgICAg
ICAgIHNlbGYuYXNzZXJ0U3Rkb3V0KCdmb28gLW4gYmFyXG4nKQorCisgICAgZGVmIHRlc3RfZW1w
dHlfYXJndW1lbnRzKHNlbGYpOgorICAgICAgICBvbGRfYXJndiA9IHN5cy5hcmd2CisgICAgICAg
IHN5cy5hcmd2ID0gWydlY2hvLnB5JywgJ2ZvbycsICdiYXInLCAnYmF6J10KKyAgICAgICAgZWNo
by5tYWluKFtdKQorICAgICAgICBzZWxmLmFzc2VydFN0ZG91dCgnXG4nKQorICAgICAgICBzeXMu
YXJndiA9IG9sZF9hcmd2CisKKyAgICBkZWYgdGVzdF9ub19hcmd1bWVudHMoc2VsZik6CisgICAg
ICAgIG9sZF9hcmd2ID0gc3lzLmFyZ3YKKyAgICAgICAgc3lzLmFyZ3YgPSBbJ2VjaG8ucHknLCAn
Zm9vJywgJ2JhcicsICdiYXonXQorICAgICAgICBlY2hvLm1haW4oKQorICAgICAgICBzZWxmLmFz
c2VydFN0ZG91dCgnZm9vIGJhciBiYXpcbicpCisgICAgICAgIHN5cy5hcmd2ID0gb2xkX2FyZ3YK
KworICAgIGRlZiB0ZXN0X2FzX2NvbW1hbmQoc2VsZik6CisgICAgICAgIG91dHB1dCA9IGV4ZWN1
dGl2ZS5FeGVjdXRpdmUoKS5ydW5fY29tbWFuZChlY2hvLmNvbW1hbmRfYXJndW1lbnRzKCdmb28n
LCAnYmFyJywgJ2JheicpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dHB1dCwgJ2ZvbyBi
YXIgYmF6XG4nKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>