<?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>225156</bug_id>
          
          <creation_ts>2021-04-28 11:09:53 -0700</creation_ts>
          <short_desc>Mark specific tests as slow for pytest</short_desc>
          <delta_ts>2021-10-15 07:04:12 -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>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=231805</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Sneddon [:gsnedders]">gsnedders</reporter>
          <assigned_to name="Sam Sneddon [:gsnedders]">gsnedders</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1755082</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-04-28 11:09:53 -0700</bug_when>
    <thetext>Currently for pytest we just outright exclude scm_unittest, as we do with test-webkitpy.

However, there&apos;s no need to ignore absolutely everything; there are some tests in there which aren&apos;t slow, so instead we should explicitly mark those which are slow.

(Aside: I thought I&apos;d already filed this and posted patch, but seemingly not?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755083</commentid>
    <comment_count>1</comment_count>
      <attachid>427280</attachid>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-04-28 11:13:01 -0700</bug_when>
    <thetext>Created attachment 427280
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756994</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-05 11:10:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/77566017&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757413</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-06 08:24:30 -0700</bug_when>
    <thetext>Committed r277089 (237392@main): &lt;https://commits.webkit.org/237392@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427280.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427280</attachid>
            <date>2021-04-28 11:13:01 -0700</date>
            <delta_ts>2021-05-06 08:24:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225156-20210428191300.patch</filename>
            <type>text/plain</type>
            <size>29890</size>
            <attacher name="Sam Sneddon [:gsnedders]">gsnedders</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NzIxCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjMzN2M1NDE2N2E3NDdjY2IyOGRjZjg2MTZhYjcyNTg2
ZDlkNWIwNi4uNmNmZGVkMDZlOWMwMWFhNDY2ZTIwNzU1YzczNTQwN2VmODcyZWFiZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIx
IEBACisyMDIxLTA0LTI4ICBTYW0gU25lZGRvbiAgPGdzbmVkZGVyc0BhcHBsZS5jb20+CisKKyAg
ICAgICAgbWFyayBhbGwgU0NNIHRlc3RzIHVzaW5nIFNWTiBhcyBzbG93LCBhIGNvdXBsZSBhcyB4
ZmFpbDsgZW5hYmxlIFNDTQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI1MTU2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vc2NtX3VuaXR0
ZXN0LnB5OgorICAgICAgICAoU1ZOVGVzdCk6IE1hcmsgYWxsIHRlc3RzIHdpdGggQHNsb3cKKyAg
ICAgICAgKEdpdFNWTlRlc3QpOiBNYXJrIGFsbCB0ZXN0cyB3aXRoIEBzbG93CisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9jb25mdGVzdC5weToKKyAgICAgICAgKHB5dGVzdF9jb25maWd1cmUp
OiBEZWZpbmUgdGhlICJzbG93IiBtYXJrZXIKKyAgICAgICAgKHB5dGVzdF9hZGRvcHRpb24pOiBB
ZGQgLS1ydW4tc2xvdyB0byBvcHQtaW4KKyAgICAgICAgKHB5dGVzdF9jb2xsZWN0aW9uX21vZGlm
eWl0ZW1zKTogSW1wbGVtZW50IC0tcnVuLXNsb3cKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L3B5dGVzdC5pbmk6IHJlbW92ZSAibm90IHNjbV91bml0ZXN0IgorICAgICAgICAqIFNjcmlwdHMv
d2Via2l0cHkvdGVzdC9tYXJrZXJzLnB5OgorICAgICAgICAoc2xvdyk6IGFkZCBvdXIgb3duIHdy
YXBwZXIgYXJvdW5kIHRoZSBweXRlc3QgbWFyayBmdW5jdGlvbgorCiAyMDIxLTA0LTI4ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVtb3Zl
IHN1cHBvcnQgZm9yIE5QQVBJIHBsdWdpbnMgaW4gV2ViVmlldwpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtL3NjbV91bml0dGVzdC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY21fdW5pdHRlc3QucHkK
aW5kZXggZDBhYmU1ZmUwYWJmZmJiMjkwZjE0Yzc2Yzg4MGJhODNmZTFlZjJlYy4uODk4NTVkMDM5
NGQzYmI1YzU5NWRlNDlkZTgzMDU2OThlNTVhZDVhYSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtL3NjbV91bml0dGVzdC5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vc2NtX3VuaXR0ZXN0LnB5CkBA
IC01OSw3ICs1OSw3IEBAIGZyb20gd2Via2l0cHkuY29tbW9uLmNoZWNrb3V0LnNjbS5kZXRlY3Rp
b24gaW1wb3J0IGRldGVjdF9zY21fc3lzdGVtCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5jaGVja291
dC5zY20uc2NtIGltcG9ydCBDaGVja291dE5lZWRzVXBkYXRlLCBjb21taXRfZXJyb3JfaGFuZGxl
ciwgQXV0aGVudGljYXRpb25FcnJvcgogZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuc2Nt
LnN2biBpbXBvcnQgU1ZOCiAKLWZyb20gd2Via2l0cHkudGVzdC5tYXJrZXJzIGltcG9ydCB4ZmFp
bAorZnJvbSB3ZWJraXRweS50ZXN0Lm1hcmtlcnMgaW1wb3J0IHNsb3csIHhmYWlsCiAKIGZyb20g
d2Via2l0Y29yZXB5IGltcG9ydCBPdXRwdXRDYXB0dXJlCiAKQEAgLTYwOSw2ICs2MDksNyBAQCBj
bGFzcyBTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICB3aXRoIFRpbWV6b25lT3ZlcnJpZGUoJ1BT
VDhQRFQnKToKICAgICAgICAgICAgIHJldHVybiBjaGFuZ2Vsb2dfZW50cnkucmVwbGFjZSgnREFU
RV9IRVJFJywgZGF0ZS50b2RheSgpLmlzb2Zvcm1hdCgpKQogCisgICAgQHNsb3cKICAgICBkZWYg
dGVzdF9zdm5fYXBwbHkoc2VsZik6CiAgICAgICAgIGZpcnN0X2VudHJ5ID0gIiIiMjAwOS0xMC0y
NiAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKQEAgLTcxMiwxMiArNzEzLDE0IEBA
IGNsYXNzIFNWTlRlc3QoU0NNVGVzdCk6CiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAg
ICBTVk5UZXN0UmVwb3NpdG9yeS50ZWFyX2Rvd24oc2VsZikKIAorICAgIEBzbG93CiAgICAgZGVm
IHRlc3RfZGV0ZWN0X3NjbV9zeXN0ZW1fcmVsYXRpdmVfdXJsKHNlbGYpOgogICAgICAgICBzY20g
PSBkZXRlY3Rfc2NtX3N5c3RlbSgiLiIpCiAgICAgICAgICMgSSB3YW50ZWQgdG8gYXNzZXJ0IHRo
YXQgd2UgZ290IHRoZSByaWdodCBwYXRoLCBidXQgdGhlcmUgd2FzIHNvbWUKICAgICAgICAgIyBj
cmF6eSBtYWdpYyB3aXRoIHRlbXAgZm9sZGVyIG5hbWVzIHRoYXQgSSBjb3VsZG4ndCBmaWd1cmUg
b3V0LgogICAgICAgICBzZWxmLmFzc2VydFRydWUoc2NtLmNoZWNrb3V0X3Jvb3QpCiAKKyAgICBA
c2xvdwogICAgIGRlZiB0ZXN0X2NyZWF0ZV9wYXRjaF9pc19mdWxsX3BhdGNoKHNlbGYpOgogICAg
ICAgICB0ZXN0X2Rpcl9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuc3ZuX2NoZWNrb3V0X3BhdGgs
ICJ0ZXN0X2RpcjIiKQogICAgICAgICBvcy5ta2Rpcih0ZXN0X2Rpcl9wYXRoKQpAQCAtNzQ2LDEw
ICs3NDksMTIgQEAgY2xhc3MgU1ZOVGVzdChTQ01UZXN0KToKICIiIgogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKGV4cGVjdGVkX3BhdGNoX2NvbnRlbnRzLCBhY3R1YWxfcGF0Y2hfY29udGVudHMp
CiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2RldGVjdGlvbihzZWxmKToKICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbChzZWxmLnNjbS5kaXNwbGF5X25hbWUoKSwgInN2biIpCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoc2VsZi5zY20uc3VwcG9ydHNfbG9jYWxfY29tbWl0cygpLCBGYWxzZSkK
IAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfYXBwbHlfc21hbGxfYmluYXJ5X3BhdGNoKHNlbGYp
OgogICAgICAgICBwYXRjaF9jb250ZW50cyA9ICIiIkluZGV4OiB0ZXN0X2ZpbGUuc3dmCiA9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09CkBAIC03NzEsMTEgKzc3NiwxMyBAQCBRMWRUQngwQUFBQjQyaXRnNEdsZ1lKakd3TURE
eU9ETXhNRHczNEdCZ1FFQUpQUURKQT09CiAgICAgICAgIGFjdHVhbF9jb250ZW50cyA9IHJlYWRf
ZnJvbV9wYXRoKCJ0ZXN0X2ZpbGUuc3dmIiwgZW5jb2Rpbmc9Tm9uZSkKICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChhY3R1YWxfY29udGVudHMsIGV4cGVjdGVkX2NvbnRlbnRzKQogCisgICAgQHNs
b3cKICAgICBkZWYgdGVzdF9hcHBseV9zdm5fcGF0Y2goc2VsZik6CiAgICAgICAgIHBhdGNoID0g
c2VsZi5fY3JlYXRlX3BhdGNoKF9zdm5fZGlmZigiLXI1OjQiKSkKICAgICAgICAgc2VsZi5fc2V0
dXBfd2Via2l0dG9vbHNfc2NyaXB0c19zeW1saW5rKHNlbGYuc2NtKQogICAgICAgICBDaGVja291
dChzZWxmLnNjbSkuYXBwbHlfcGF0Y2gocGF0Y2gpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0
X2NvbW1pdF9sb2dzKHNlbGYpOgogICAgICAgICAjIENvbW1pdHMgaGF2ZSBkYXRlcyBhbmQgdXNl
cm5hbWVzIGluIHRoZW0sIHNvIHdlIGNhbid0IGp1c3QgZGlyZWN0IGNvbXBhcmUuCiAgICAgICAg
IHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhzZWxmLnNjbS5sYXN0X3N2bl9jb21taXRfbG9nKCks
ICdmb3VydGggY29tbWl0JykKQEAgLTc4Niw2ICs3OTMsNyBAQCBRMWRUQngwQUFBQjQyaXRnNEds
Z1lKakd3TUREeU9ETXhNRHczNEdCZ1FFQUpQUURKQT09CiAgICAgICAgIGNvbW1pdF90ZXh0ID0g
c2VsZi5zY20uY29tbWl0X3dpdGhfbWVzc2FnZSgiYW5vdGhlciB0ZXN0IGNvbW1pdCIsIHVzZXJu
YW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2NtLnN2bl9yZXZpc2lvbl9mcm9t
X2NvbW1pdF90ZXh0KGNvbW1pdF90ZXh0KSwgJzYnKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVz
dF9jb21taXRfaW5fc3ViZGlyKHNlbGYsIHVzZXJuYW1lPU5vbmUpOgogICAgICAgICB3cml0ZV9p
bnRvX2ZpbGVfYXRfcGF0aCgndGVzdF9kaXIvdGVzdF9maWxlMycsICdtb3JlIHRlc3QgY29udGVu
dCcpCiAgICAgICAgIG9zLmNoZGlyKCJ0ZXN0X2RpciIpCkBAIC03OTMsMTIgKzgwMSwxNSBAQCBR
MWRUQngwQUFBQjQyaXRnNEdsZ1lKakd3TUREeU9ETXhNRHczNEdCZ1FFQUpQUURKQT09CiAgICAg
ICAgIG9zLmNoZGlyKCIuLiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zY20uc3Zu
X3JldmlzaW9uX2Zyb21fY29tbWl0X3RleHQoY29tbWl0X3RleHQpLCAnNicpCiAKKyAgICBAc2xv
dwogICAgIGRlZiB0ZXN0X2NvbW1pdF90ZXh0X3BhcnNpbmcoc2VsZik6CiAgICAgICAgIHNlbGYu
X3NoYXJlZF90ZXN0X2NvbW1pdF93aXRoX21lc3NhZ2UoKQogCisgICAgQHNsb3cKICAgICBkZWYg
dGVzdF9jb21taXRfd2l0aF91c2VybmFtZShzZWxmKToKICAgICAgICAgc2VsZi5fc2hhcmVkX3Rl
c3RfY29tbWl0X3dpdGhfbWVzc2FnZSgiZGJhdGVzQHdlYmtpdC5vcmciKQogCisgICAgQHNsb3cK
ICAgICBkZWYgdGVzdF9jb21taXRfd2l0aG91dF9hdXRob3JpemF0aW9uKHNlbGYpOgogICAgICAg
ICAjIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTExNjY5
CiAgICAgICAgICMgVGhpcyB0ZXN0IGVuZHMgdXAgbG9va2luZyBpbiB0aGUgYWN0YWwgJEhPTUUv
LnN1YnZlcnNpb24gZm9yIGF1dGhvcml6YXRpb24sCkBAIC04MDgsNiArODE5LDcgQEAgUTFkVEJ4
MEFBQUI0Mml0ZzRHbGdZSmpHd01ERHlPRE14TUR3MzRHQmdRRUFKUFFESkE9PQogICAgICAgICBz
ZWxmLnNjbS5zdm5fc2VydmVyX3JlYWxtID0gJzxodHRwOi8vc3ZuLmV4YW1wbGUuY29tOjgwPiBF
eGFtcGxlJwogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhBdXRoZW50aWNhdGlvbkVycm9yLCBz
ZWxmLl9zaGFyZWRfdGVzdF9jb21taXRfd2l0aF9tZXNzYWdlKQogCisgICAgQHNsb3cKICAgICBk
ZWYgdGVzdF9oYXNfYXV0aG9yaXphdGlvbl9mb3JfcmVhbG1fdXNpbmdfY3JlZGVudGlhbHNfd2l0
aF9wYXNzdHlwZShzZWxmKToKICAgICAgICAgY3JlZGVudGlhbHMgPSAiIiIKIEsgOApAQCAtODI2
LDYgKzgzOCw3IEBAIEVORAogIiIiCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLl90ZXN0
X2hhc19hdXRob3JpemF0aW9uX2Zvcl9yZWFsbV91c2luZ19jcmVkZW50aWFscyhTVk4uc3ZuX3Nl
cnZlcl9yZWFsbSwgY3JlZGVudGlhbHMpKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9oYXNf
YXV0aG9yaXphdGlvbl9mb3JfcmVhbG1fdXNpbmdfY3JlZGVudGlhbHNfd2l0aF9wYXNzd29yZChz
ZWxmKToKICAgICAgICAgY3JlZGVudGlhbHMgPSAiIiIKIEsgMTUKQEAgLTg1Niw2ICs4NjksNyBA
QCBFTkQKICAgICAgICAgb3Mucm1kaXIoZmFrZV9ob21lX2RpcikKICAgICAgICAgcmV0dXJuIHJl
c3VsdAogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9ub3RfaGF2ZV9hdXRob3JpemF0aW9uX2Zv
cl9yZWFsbV93aXRoX2NyZWRlbnRpYWxzX21pc3NpbmdfcGFzc3dvcmRfYW5kX3Bhc3N0eXBlKHNl
bGYpOgogICAgICAgICBjcmVkZW50aWFscyA9ICIiIgogSyAxNQpAQCAtODcwLDYgKzg4NCw3IEBA
IEVORAogIiIiCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uoc2VsZi5fdGVzdF9oYXNfYXV0aG9y
aXphdGlvbl9mb3JfcmVhbG1fdXNpbmdfY3JlZGVudGlhbHMoU1ZOLnN2bl9zZXJ2ZXJfcmVhbG0s
IGNyZWRlbnRpYWxzKSkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3Rfbm90X2hhdmVfYXV0aG9y
aXphdGlvbl9mb3JfcmVhbG1fd2hlbl9taXNzaW5nX2NyZWRlbnRpYWxzX2ZpbGUoc2VsZik6CiAg
ICAgICAgIGZha2VfaG9tZV9kaXIgPSB0ZW1wZmlsZS5ta2R0ZW1wKHN1ZmZpeD0iZmFrZV9ob21l
X2RpciIpCiAgICAgICAgIHN2bl9jb25maWdfZGlyX3BhdGggPSBvcy5wYXRoLmpvaW4oZmFrZV9o
b21lX2RpciwgIi5zdWJ2ZXJzaW9uIikKQEAgLTg3OCw4NSArODkzLDEwOSBAQCBFTkQKICAgICAg
ICAgb3Mucm1kaXIoc3ZuX2NvbmZpZ19kaXJfcGF0aCkKICAgICAgICAgb3Mucm1kaXIoZmFrZV9o
b21lX2RpcikKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfcmV2ZXJzZV9kaWZmKHNlbGYpOgog
ICAgICAgICBzZWxmLl9zaGFyZWRfdGVzdF9yZXZlcnNlX2RpZmYoKQogCisgICAgQHNsb3cKICAg
ICBkZWYgdGVzdF9kaWZmX2Zvcl9yZXZpc2lvbihzZWxmKToKICAgICAgICAgc2VsZi5fc2hhcmVk
X3Rlc3RfZGlmZl9mb3JfcmV2aXNpb24oKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9zdm5f
YXBwbHlfZ2l0X3BhdGNoKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRfdGVzdF9zdm5fYXBw
bHlfZ2l0X3BhdGNoKCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY2hhbmdlZF9maWxlcyhz
ZWxmKToKICAgICAgICAgc2VsZi5fc2hhcmVkX3Rlc3RfY2hhbmdlZF9maWxlcygpCiAKKyAgICBA
c2xvdwogICAgIGRlZiB0ZXN0X3VudHJhY2tlZF9maWxlcyhzZWxmKToKICAgICAgICAgc2VsZi5f
c2hhcmVkX3Rlc3RfdW50cmFja2VkX2ZpbGVzKHNlbGYuc2NtKQogCisgICAgQHNsb3cKICAgICBk
ZWYgdGVzdF9kaXNjYXJkX3VudHJhY2tlZF9maWxlcyhzZWxmKToKICAgICAgICAgc2VsZi5fc2hh
cmVkX3Rlc3RfZGlzY2FyZF91bnRyYWNrZWRfZmlsZXMoc2VsZi5zY20pCiAKKyAgICBAc2xvdwog
ICAgIGRlZiB0ZXN0X2NoYW5nZWRfZmlsZXNfZm9yX3JldmlzaW9uKHNlbGYpOgogICAgICAgICBz
ZWxmLl9zaGFyZWRfdGVzdF9jaGFuZ2VkX2ZpbGVzX2Zvcl9yZXZpc2lvbigpCiAKKyAgICBAc2xv
dwogICAgIGRlZiB0ZXN0X2FkZGVkX2ZpbGVzKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRf
dGVzdF9hZGRlZF9maWxlcygpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NvbnRlbnRzX2F0
X3JldmlzaW9uKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRfdGVzdF9jb250ZW50c19hdF9y
ZXZpc2lvbigpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X3JldmlzaW9uc19jaGFuZ2luZ19m
aWxlKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRfdGVzdF9yZXZpc2lvbnNfY2hhbmdpbmdf
ZmlsZSgpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NvbW1pdHRlcl9lbWFpbF9mb3JfcmV2
aXNpb24oc2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90ZXN0X2NvbW1pdHRlcl9lbWFpbF9m
b3JfcmV2aXNpb24oKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9hZGRfcmVjdXJzaXZlbHko
c2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90ZXN0X2FkZF9yZWN1cnNpdmVseSgpCiAKKyAg
ICBAc2xvdwogICAgIGRlZiB0ZXN0X2RlbGV0ZShzZWxmKToKICAgICAgICAgb3MuY2hkaXIoc2Vs
Zi5zdm5fY2hlY2tvdXRfcGF0aCkKICAgICAgICAgc2VsZi5zY20uZGVsZXRlKCJ0ZXN0X2ZpbGUi
KQogICAgICAgICBzZWxmLmFzc2VydEluKCJ0ZXN0X2ZpbGUiLCBzZWxmLnNjbS5kZWxldGVkX2Zp
bGVzKCkpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2RlbGV0ZV9saXN0KHNlbGYpOgogICAg
ICAgICBvcy5jaGRpcihzZWxmLnN2bl9jaGVja291dF9wYXRoKQogICAgICAgICBzZWxmLnNjbS5k
ZWxldGVfbGlzdChbInRlc3RfZmlsZSIsICJ0ZXN0X2ZpbGUyIl0pCiAgICAgICAgIHNlbGYuYXNz
ZXJ0SW4oInRlc3RfZmlsZSIsIHNlbGYuc2NtLmRlbGV0ZWRfZmlsZXMoKSkKICAgICAgICAgc2Vs
Zi5hc3NlcnRJbigidGVzdF9maWxlMiIsIHNlbGYuc2NtLmRlbGV0ZWRfZmlsZXMoKSkKIAorICAg
IEBzbG93CiAgICAgZGVmIHRlc3RfZGVsZXRlX3JlY3Vyc2l2ZWx5KHNlbGYpOgogICAgICAgICBz
ZWxmLl9zaGFyZWRfdGVzdF9kZWxldGVfcmVjdXJzaXZlbHkoKQogCisgICAgQHNsb3cKICAgICBk
ZWYgdGVzdF9kZWxldGVfcmVjdXJzaXZlbHlfb3Jfbm90KHNlbGYpOgogICAgICAgICBzZWxmLl9z
aGFyZWRfdGVzdF9kZWxldGVfcmVjdXJzaXZlbHlfb3Jfbm90KCkKIAorICAgIEBzbG93CiAgICAg
ZGVmIHRlc3RfaGVhZF9zdm5fcmV2aXNpb24oc2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90
ZXN0X2hlYWRfc3ZuX3JldmlzaW9uKCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3Rfc3ZuX3Jl
dmlzaW9uKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRfdGVzdF9zdm5fcmV2aXNpb24oc2Vs
Zi5zY20pCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X3N2bl9icmFuY2goc2VsZik6CiAgICAg
ICAgIHNlbGYuX3NoYXJlZF90ZXN0X3N2bl9icmFuY2goc2VsZi5zY20pCiAKKyAgICBAc2xvdwog
ICAgIGRlZiB0ZXN0X25hdGl2ZV9yZXZpc2lvbihzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChzZWxmLnNjbS5oZWFkX3N2bl9yZXZpc2lvbigpLCBzZWxmLnNjbS5uYXRpdmVfcmV2aXNp
b24oJy4nKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNjbS5uYXRpdmVfcmV2aXNp
b24oJy4nKSwgJzUnKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9uYXRpdmVfYnJhbmNoKHNl
bGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2NtLm5hdGl2ZV9icmFuY2goJy4n
KSwgJ3RydW5rJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfcHJvcHNldF9wcm9wZ2V0KHNl
bGYpOgogICAgICAgICBmaWxlcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLnN2bl9jaGVja291dF9w
YXRoLCAidGVzdF9maWxlIikKICAgICAgICAgc2VsZi5zY20ucHJvcHNldCgic3ZuOm1pbWUtdHlw
ZSIsICJ4LWFwcGxpY2F0aW9uL2Zvby1iYXIiLCBmaWxlcGF0aCkKICAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbChiIngtYXBwbGljYXRpb24vZm9vLWJhciIsIHNlbGYuc2NtLnByb3BnZXQoInN2bjpt
aW1lLXR5cGUiLCBmaWxlcGF0aCkpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X3Nob3dfaGVh
ZChzZWxmKToKICAgICAgICAgd3JpdGVfaW50b19maWxlX2F0X3BhdGgoInRlc3RfZmlsZSIsIHUi
SGVsbG8hIiwgInV0Zi04IikKICAgICAgICAgU1ZOVGVzdFJlcG9zaXRvcnkuX3N2bl9jb21taXQo
ImZvdXJ0aCBjb21taXQiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiSGVsbG8hIiwgc2Vs
Zi5zY20uc2hvd19oZWFkKCd0ZXN0X2ZpbGUnKSkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3Rf
c2hvd19oZWFkX2JpbmFyeShzZWxmKToKICAgICAgICAgZGF0YSA9IGIiXDI0NCIKICAgICAgICAg
d3JpdGVfaW50b19maWxlX2F0X3BhdGgoImJpbmFyeV9maWxlIiwgZGF0YSwgZW5jb2Rpbmc9Tm9u
ZSkKQEAgLTk4MCw2ICsxMDE5LDcgQEAgRU5ECiAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKHNl
bGYuYm9ndXNfZGlyKToKICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoc2VsZi5ib2d1c19kaXIp
CiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2RpZmZfZm9yX2ZpbGVfd2l0aF9leGlzdGluZ19i
b2d1c19kaXIoc2VsZik6CiAgICAgICAgIHNlbGYuY2xlYW5fYm9ndXNfZGlyKCkKICAgICAgICAg
b3MubWtkaXIoc2VsZi5ib2d1c19kaXIpCkBAIC05ODcsMTEgKzEwMjcsMTMgQEAgRU5ECiAgICAg
ICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzZWxmLmJvZ3VzX2RpcikpCiAgICAg
ICAgIHNodXRpbC5ybXRyZWUoc2VsZi5ib2d1c19kaXIpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0
ZXN0X2RpZmZfZm9yX2ZpbGVfd2l0aF9taXNzaW5nX2JvZ3VzX2RpcihzZWxmKToKICAgICAgICAg
c2VsZi5jbGVhbl9ib2d1c19kaXIoKQogICAgICAgICBzZWxmLmRvX3Rlc3RfZGlmZl9mb3JfZmls
ZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoc2VsZi5ib2d1c19k
aXIpKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9zdm5fbG9jayhzZWxmKToKICAgICAgICAg
aWYgc2VsZi5zY20uc3ZuX3ZlcnNpb24oKSA+PSBWZXJzaW9uKDEsIDcpOgogICAgICAgICAgICAg
IyB0aGUgZm9sbG93aW5nIHRlY2huaXF1ZSB3aXRoIC5zdm4vbG9jayB0aGVuIHN2biB1cGRhdGUg
ZG9lc24ndCB3b3JrIHdpdGggc3VidmVyc2lvbiBjbGllbnQgMS43IG9yIGxhdGVyCkBAIC0xMDA1
LDYgKzEwNDcsNyBAQCBFTkQKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5l
eGlzdHMoc3ZuX3Jvb3RfbG9ja19wYXRoKSkKICAgICAgICAgICAgIHJ1bl9jb21tYW5kKFsnc3Zu
JywgJ3VwZGF0ZSddKSAgIyBTaG91bGQgc3VjY2VlZCBhbmQgbm90IHJhaXNlLgogCisgICAgQHNs
b3cKICAgICBkZWYgdGVzdF9leGlzdHMoc2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90ZXN0
X2V4aXN0cyhzZWxmLnNjbSwgc2VsZi5zY20uY29tbWl0X3dpdGhfbWVzc2FnZSkKIApAQCAtMTE5
NSwxNiArMTIzOCwxOSBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBTVk5U
ZXN0UmVwb3NpdG9yeS50ZWFyX2Rvd24oc2VsZikKICAgICAgICAgc2VsZi5fdGVhcl9kb3duX2dp
dF9jaGVja291dCgpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2RldGVjdGlvbihzZWxmKToK
ICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNjbS5kaXNwbGF5X25hbWUoKSwgImdpdCIp
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zY20uc3VwcG9ydHNfbG9jYWxfY29tbWl0
cygpLCBUcnVlKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9yZWFkX2dpdF9jb25maWcoc2Vs
Zik6CiAgICAgICAgIGtleSA9ICd0ZXN0LmdpdC1jb25maWcnCiAgICAgICAgIHZhbHVlID0gJ2dp
dC1jb25maWcgdmFsdWUnCiAgICAgICAgIHJ1bl9jb21tYW5kKFsnZ2l0JywgJ2NvbmZpZycsIGtl
eSwgdmFsdWVdKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2NtLnJlYWRfZ2l0X2Nv
bmZpZyhrZXkpLCB2YWx1ZSkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfbG9jYWxfY29tbWl0
cyhzZWxmKToKICAgICAgICAgdGVzdF9maWxlID0gb3MucGF0aC5qb2luKHNlbGYuZ2l0X2NoZWNr
b3V0X3BhdGgsICd0ZXN0X2ZpbGUnKQogICAgICAgICB3cml0ZV9pbnRvX2ZpbGVfYXRfcGF0aCh0
ZXN0X2ZpbGUsICdmb28nKQpAQCAtMTIxMiw2ICsxMjU4LDcgQEAgY2xhc3MgR2l0U1ZOVGVzdChT
Q01UZXN0KToKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLnNjbS5sb2NhbF9j
b21taXRzKCkpLCAxKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9kaXNjYXJkX2xvY2FsX2Nv
bW1pdHMoc2VsZik6CiAgICAgICAgIHRlc3RfZmlsZSA9IG9zLnBhdGguam9pbihzZWxmLmdpdF9j
aGVja291dF9wYXRoLCAndGVzdF9maWxlJykKICAgICAgICAgd3JpdGVfaW50b19maWxlX2F0X3Bh
dGgodGVzdF9maWxlLCAnZm9vJykKQEAgLTEyMjEsNiArMTI2OCw3IEBAIGNsYXNzIEdpdFNWTlRl
c3QoU0NNVGVzdCk6CiAgICAgICAgIHNlbGYuc2NtLmRpc2NhcmRfbG9jYWxfY29tbWl0cygpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuc2NtLmxvY2FsX2NvbW1pdHMoKSksIDAp
CiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2RlbGV0ZV9icmFuY2goc2VsZik6CiAgICAgICAg
IG5ld19icmFuY2ggPSAnZm9vJwogCkBAIC0xMjMyLDYgKzEyODAsNyBAQCBjbGFzcyBHaXRTVk5U
ZXN0KFNDTVRlc3QpOgogCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90UmVnZXhwTWF0Y2hlcyhydW5f
Y29tbWFuZChbJ2dpdCcsICdicmFuY2gnXSksIHInZm9vJykKIAorICAgIEBzbG93CiAgICAgZGVm
IHRlc3RfcmVtb3RlX21lcmdlX2Jhc2Uoc2VsZik6CiAgICAgICAgICMgRGlmZiB0byBtZXJnZS1i
YXNlIHNob3VsZCBpbmNsdWRlIHdvcmtpbmctY29weSBjaGFuZ2VzLAogICAgICAgICAjIHdoaWNo
IHRoZSBkaWZmIHRvIHN2bl9icmFuY2guLiBkb2Vzbid0LgpAQCAtMTI0NSw2ICsxMjk0LDcgQEAg
Y2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRj
aGVzKGRpZmZfdG9fbWVyZ2VfYmFzZSwgYidmb28nKQogCiAgICAgQHhmYWlsCisgICAgQHNsb3cK
ICAgICBkZWYgdGVzdF9yZWJhc2VfaW5fcHJvZ3Jlc3Moc2VsZik6CiAgICAgICAgIHN2bl90ZXN0
X2ZpbGUgPSBvcy5wYXRoLmpvaW4oc2VsZi5zdm5fY2hlY2tvdXRfcGF0aCwgJ3Rlc3RfZmlsZScp
CiAgICAgICAgIHdyaXRlX2ludG9fZmlsZV9hdF9wYXRoKHN2bl90ZXN0X2ZpbGUsICJzdm5fY2hl
Y2tvdXQiKQpAQCAtMTI2Niw2ICsxMzE2LDcgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToK
ICAgICAgICAgIyBNYWtlIHN1cmUgY2xlYW51cCBkb2Vzbid0IHRocm93IHdoZW4gbm8gcmViYXNl
IGlzIGluIHByb2dyZXNzLgogICAgICAgICBzZWxmLnNjbS5kaXNjYXJkX3dvcmtpbmdfZGlyZWN0
b3J5X2NoYW5nZXMoKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jb21taXRpc2hfcGFyc2lu
ZyhzZWxmKToKICAgICAgICAgIyBNdWx0aXBsZSByZXZpc2lvbnMgYXJlIGNoZXJyeS1waWNrZWQu
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuc2NtLmNvbW1pdF9pZHNfZnJvbV9j
b21taXRpc2hfYXJndW1lbnRzKFsnSEVBRH4yJ10pKSwgMSkKQEAgLTEyNzQsNiArMTMyNSw3IEBA
IGNsYXNzIEdpdFNWTlRlc3QoU0NNVGVzdCk6CiAgICAgICAgICMgLi4uIGlzIGFuIGludmFsaWQg
cmFuZ2Ugc3BlY2lmaWVyCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFNjcmlwdEVycm9yLCBz
ZWxmLnNjbS5jb21taXRfaWRzX2Zyb21fY29tbWl0aXNoX2FyZ3VtZW50cywgWyd0cnVuay4uLkhF
QUQnXSkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY29tbWl0aXNoX29yZGVyKHNlbGYpOgog
ICAgICAgICBjb21taXRfcmFuZ2UgPSAnSEVBRH4zLi5IRUFEJwogCkBAIC0xMjgzLDYgKzEzMzUs
NyBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoYWN0dWFsX2NvbW1pdHMsIGV4cGVjdGVkX2NvbW1pdHMpCiAKKyAgICBAc2xvdwogICAgIGRl
ZiB0ZXN0X2FwcGx5X2dpdF9wYXRjaChzZWxmKToKICAgICAgICAgIyBXZSBjYXJlZnVsbGx5IHBp
Y2sgYSBkaWZmIHdoaWNoIGRvZXMgbm90IGhhdmUgYSBkaXJlY3RvcnkgYWRkaXRpb24KICAgICAg
ICAgIyBhcyBjdXJyZW50bHkgc3ZuLWFwcGx5IHdpbGwgZXJyb3Igb3V0IHdoZW4gdHJ5aW5nIHRv
IHJlbW92ZSBkaXJlY3RvcmllcwpAQCAtMTI5MSwxMSArMTM0NCwxMyBAQCBjbGFzcyBHaXRTVk5U
ZXN0KFNDTVRlc3QpOgogICAgICAgICBzZWxmLl9zZXR1cF93ZWJraXR0b29sc19zY3JpcHRzX3N5
bWxpbmsoc2VsZi5zY20pCiAgICAgICAgIENoZWNrb3V0KHNlbGYuc2NtKS5hcHBseV9wYXRjaChw
YXRjaCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY29tbWl0X3RleHRfcGFyc2luZyhzZWxm
KToKICAgICAgICAgd3JpdGVfaW50b19maWxlX2F0X3BhdGgoJ3Rlc3RfZmlsZScsICdtb3JlIHRl
c3QgY29udGVudCcpCiAgICAgICAgIGNvbW1pdF90ZXh0ID0gc2VsZi5zY20uY29tbWl0X3dpdGhf
bWVzc2FnZSgiYW5vdGhlciB0ZXN0IGNvbW1pdCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
c2VsZi5zY20uc3ZuX3JldmlzaW9uX2Zyb21fY29tbWl0X3RleHQoY29tbWl0X3RleHQpLCAnNicp
CiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NvbW1pdF93aXRoX21lc3NhZ2Vfd29ya2luZ19j
b3B5X29ubHkoc2VsZik6CiAgICAgICAgIHdyaXRlX2ludG9fZmlsZV9hdF9wYXRoKCd0ZXN0X2Zp
bGVfY29tbWl0MScsICdtb3JlIHRlc3QgY29udGVudCcpCiAgICAgICAgIHJ1bl9jb21tYW5kKFsn
Z2l0JywgJ2FkZCcsICd0ZXN0X2ZpbGVfY29tbWl0MSddKQpAQCAtMTMyOSwxMCArMTM4NCwxMiBA
QCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBzZWxmLl9sb2NhbF9jb21taXQo
J3Rlc3RfZmlsZV9jb21taXQwJywgJ21vcmUgdGVzdCBjb250ZW50JywgJ2Fub3RoZXIgdGVzdCBj
b21taXQnKQogICAgICAgICBzZWxmLl90d29fbG9jYWxfY29tbWl0cygpCiAKKyAgICBAc2xvdwog
ICAgIGRlZiB0ZXN0X3JldmlzaW9uc19jaGFuZ2luZ19maWxlc193aXRoX2xvY2FsX2NvbW1pdChz
ZWxmKToKICAgICAgICAgc2VsZi5fb25lX2xvY2FsX2NvbW1pdCgpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoc2VsZi5zY20ucmV2aXNpb25zX2NoYW5naW5nX2ZpbGUoJ3Rlc3RfZmlsZV9jb21t
aXQxJyksIFtdKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jb21taXRfd2l0aF9tZXNzYWdl
KHNlbGYpOgogICAgICAgICBzZWxmLl9vbmVfbG9jYWxfY29tbWl0X3BsdXNfd29ya2luZ19jb3B5
X2NoYW5nZXMoKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhBbWJpZ3VvdXNDb21taXRFcnJv
ciwgc2VsZi5zY20uY29tbWl0X3dpdGhfbWVzc2FnZSwgInlldCBhbm90aGVyIHRlc3QgY29tbWl0
IikKQEAgLTEzNDMsNiArMTQwMCw3IEBAIGNsYXNzIEdpdFNWTlRlc3QoU0NNVGVzdCk6CiAgICAg
ICAgIHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhzdm5fbG9nLCByJ3Rlc3RfZmlsZV9jb21taXQy
JykKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHN2bl9sb2csIHIndGVzdF9maWxl
X2NvbW1pdDEnKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jb21taXRfd2l0aF9tZXNzYWdl
X2dpdF9jb21taXQoc2VsZik6CiAgICAgICAgIHNlbGYuX3R3b19sb2NhbF9jb21taXRzKCkKIApA
QCAtMTM1Myw2ICsxNDExLDcgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAg
c2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHN2bl9sb2csIHIndGVzdF9maWxlX2NvbW1pdDEnKQog
ICAgICAgICBzZWxmLmFzc2VydE5vdFJlZ2V4cE1hdGNoZXMoc3ZuX2xvZywgcid0ZXN0X2ZpbGVf
Y29tbWl0MicpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NvbW1pdF93aXRoX21lc3NhZ2Vf
Z2l0X2NvbW1pdF9yYW5nZShzZWxmKToKICAgICAgICAgc2VsZi5fdGhyZWVfbG9jYWxfY29tbWl0
cygpCiAKQEAgLTEzNjQsMTIgKzE0MjMsMTQgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToK
ICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHN2bl9sb2csIHIndGVzdF9maWxlX2Nv
bW1pdDEnKQogICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMoc3ZuX2xvZywgcid0ZXN0
X2ZpbGVfY29tbWl0MicpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NvbW1pdF93aXRoX21l
c3NhZ2Vfb25seV9sb2NhbF9jb21taXQoc2VsZik6CiAgICAgICAgIHNlbGYuX29uZV9sb2NhbF9j
b21taXQoKQogICAgICAgICBjb21taXRfdGV4dCA9IHNlbGYuc2NtLmNvbW1pdF93aXRoX21lc3Nh
Z2UoImFub3RoZXIgdGVzdCBjb21taXQiKQogICAgICAgICBzdm5fbG9nID0gcnVuX2NvbW1hbmQo
WydnaXQnLCAnc3ZuJywgJ2xvZycsICctLWxpbWl0PTEnLCAnLS12ZXJib3NlJ10pCiAgICAgICAg
IHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhzdm5fbG9nLCByJ3Rlc3RfZmlsZV9jb21taXQxJykK
IAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY29tbWl0X3dpdGhfbWVzc2FnZV9tdWx0aXBsZV9s
b2NhbF9jb21taXRzX2FuZF93b3JraW5nX2NvcHkoc2VsZik6CiAgICAgICAgIHNlbGYuX3R3b19s
b2NhbF9jb21taXRzKCkKICAgICAgICAgd3JpdGVfaW50b19maWxlX2F0X3BhdGgoJ3Rlc3RfZmls
ZV9jb21taXQxJywgJ3dvcmtpbmcgY29weSBjaGFuZ2UnKQpAQCAtMTM4MiwxMSArMTQ0MywxMyBA
QCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1h
dGNoZXMoc3ZuX2xvZywgcid0ZXN0X2ZpbGVfY29tbWl0MicpCiAgICAgICAgIHNlbGYuYXNzZXJ0
UmVnZXhwTWF0Y2hlcyhzdm5fbG9nLCByJ3Rlc3RfZmlsZV9jb21taXQxJykKIAorICAgIEBzbG93
CiAgICAgZGVmIHRlc3RfY29tbWl0X3dpdGhfbWVzc2FnZV9naXRfY29tbWl0X2FuZF93b3JraW5n
X2NvcHkoc2VsZik6CiAgICAgICAgIHNlbGYuX3R3b19sb2NhbF9jb21taXRzKCkKICAgICAgICAg
d3JpdGVfaW50b19maWxlX2F0X3BhdGgoJ3Rlc3RfZmlsZV9jb21taXQxJywgJ3dvcmtpbmcgY29w
eSBjaGFuZ2UnKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTY3JpcHRFcnJvciwgc2VsZi5z
Y20uY29tbWl0X3dpdGhfbWVzc2FnZSwgImFub3RoZXIgdGVzdCBjb21taXQiLCBnaXRfY29tbWl0
PSJIRUFEXiIpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NvbW1pdF93aXRoX21lc3NhZ2Vf
bXVsdGlwbGVfbG9jYWxfY29tbWl0c19hbHdheXNfc3F1YXNoKHNlbGYpOgogICAgICAgICBydW5f
Y29tbWFuZChbJ2dpdCcsICdjb25maWcnLCAnd2Via2l0LXBhdGNoLmNvbW1pdC1zaG91bGQtYWx3
YXlzLXNxdWFzaCcsICd0cnVlJ10pCiAgICAgICAgIHNlbGYuX3R3b19sb2NhbF9jb21taXRzKCkK
QEAgLTEzOTcsNiArMTQ2MCw3IEBAIGNsYXNzIEdpdFNWTlRlc3QoU0NNVGVzdCk6CiAgICAgICAg
IHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhzdm5fbG9nLCByJ3Rlc3RfZmlsZV9jb21taXQyJykK
ICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHN2bl9sb2csIHIndGVzdF9maWxlX2Nv
bW1pdDEnKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jb21taXRfd2l0aF9tZXNzYWdlX211
bHRpcGxlX2xvY2FsX2NvbW1pdHMoc2VsZik6CiAgICAgICAgIHNlbGYuX3R3b19sb2NhbF9jb21t
aXRzKCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQW1iaWd1b3VzQ29tbWl0RXJyb3IsIHNl
bGYuc2NtLmNvbW1pdF93aXRoX21lc3NhZ2UsICJ5ZXQgYW5vdGhlciB0ZXN0IGNvbW1pdCIpCkBA
IC0xNDA4LDYgKzE0NzIsNyBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBz
ZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMoc3ZuX2xvZywgcid0ZXN0X2ZpbGVfY29tbWl0MicpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhzdm5fbG9nLCByJ3Rlc3RfZmlsZV9jb21t
aXQxJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY29tbWl0X3dpdGhfbWVzc2FnZV9ub3Rf
c3luY2VkKHNlbGYpOgogICAgICAgICBydW5fY29tbWFuZChbJ2dpdCcsICdjaGVja291dCcsICct
YicsICdteS1icmFuY2gnLCAndHJ1bmt+MyddKQogICAgICAgICBzZWxmLl90d29fbG9jYWxfY29t
bWl0cygpCkBAIC0xNDIxLDYgKzE0ODYsNyBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgog
ICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMoc3ZuX2xvZywgcid0ZXN0X2ZpbGVfY29t
bWl0MicpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhzdm5fbG9nLCByJ3Rlc3Rf
ZmlsZV9jb21taXQxJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY29tbWl0X3dpdGhfbWVz
c2FnZV9ub3Rfc3luY2VkX3dpdGhfY29uZmxpY3Qoc2VsZik6CiAgICAgICAgIHJ1bl9jb21tYW5k
KFsnZ2l0JywgJ2NoZWNrb3V0JywgJy1iJywgJ215LWJyYW5jaCcsICd0cnVua34zJ10pCiAgICAg
ICAgIHNlbGYuX2xvY2FsX2NvbW1pdCgndGVzdF9maWxlMicsICdhc2RmJywgJ2FzZGYgY29tbWl0
JykKQEAgLTE0MjgsMjkgKzE0OTQsMzYgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAg
ICAgICAgIyBUaGVyZSdzIGEgY29uZmxpY3QgYmV0d2VlbiB0cnVuayBhbmQgdGhlIHRlc3RfZmls
ZTIgbW9kaWZpY2F0aW9uLgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTY3JpcHRFcnJvciwg
c2VsZi5zY20uY29tbWl0X3dpdGhfbWVzc2FnZSwgImFub3RoZXIgdGVzdCBjb21taXQiLCBmb3Jj
ZV9zcXVhc2g9VHJ1ZSkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfdXBzdHJlYW1fYnJhbmNo
KHNlbGYpOgogICAgICAgICBydW5fY29tbWFuZChbJ2dpdCcsICdjaGVja291dCcsICctdCcsICct
YicsICdteS1icmFuY2gnXSkKICAgICAgICAgcnVuX2NvbW1hbmQoWydnaXQnLCAnY2hlY2tvdXQn
LCAnLXQnLCAnLWInLCAnbXktc2Vjb25kLWJyYW5jaCddKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKHNlbGYuc2NtLl91cHN0cmVhbV9icmFuY2goKSwgJ215LWJyYW5jaCcpCiAKKyAgICBAc2xv
dwogICAgIGRlZiB0ZXN0X3JlbW90ZV9icmFuY2hfcmVmKHNlbGYpOgogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKHNlbGYuc2NtLnJlbW90ZV9icmFuY2hfcmVmKCksICdyZWZzL3JlbW90ZXMvdHJ1
bmsnKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9yZXZlcnNlX2RpZmYoc2VsZik6CiAgICAg
ICAgIHNlbGYuX3NoYXJlZF90ZXN0X3JldmVyc2VfZGlmZigpCiAKKyAgICBAc2xvdwogICAgIGRl
ZiB0ZXN0X2RpZmZfZm9yX3JldmlzaW9uKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRfdGVz
dF9kaWZmX2Zvcl9yZXZpc2lvbigpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X3N2bl9hcHBs
eV9naXRfcGF0Y2goc2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90ZXN0X3N2bl9hcHBseV9n
aXRfcGF0Y2goKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jcmVhdGVfcGF0Y2hfbG9jYWxf
cGx1c193b3JraW5nX2NvcHkoc2VsZik6CiAgICAgICAgIHNlbGYuX29uZV9sb2NhbF9jb21taXRf
cGx1c193b3JraW5nX2NvcHlfY2hhbmdlcygpCiAgICAgICAgIHBhdGNoID0gc2VsZi5zY20uY3Jl
YXRlX3BhdGNoKCkKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHBhdGNoLCBiJ3Rl
c3RfZmlsZV9jb21taXQxJykKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHBhdGNo
LCBiJ3Rlc3RfZmlsZV9jb21taXQyJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY3JlYXRl
X3BhdGNoKHNlbGYpOgogICAgICAgICBzZWxmLl9vbmVfbG9jYWxfY29tbWl0X3BsdXNfd29ya2lu
Z19jb3B5X2NoYW5nZXMoKQogICAgICAgICBwYXRjaCA9IHNlbGYuc2NtLmNyZWF0ZV9wYXRjaCgp
CkBAIC0xNDU4LDYgKzE1MzEsNyBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAg
ICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMocGF0Y2gsIGIndGVzdF9maWxlX2NvbW1pdDEnKQog
ICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMocGF0Y2gsIGInU3VidmVyc2lvbiBSZXZp
c2lvbjogNScpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NyZWF0ZV9wYXRjaF9hZnRlcl9t
ZXJnZShzZWxmKToKICAgICAgICAgcnVuX2NvbW1hbmQoWydnaXQnLCAnY2hlY2tvdXQnLCAnLWIn
LCAnZHVtbXktYnJhbmNoJywgJ3RydW5rfjMnXSkKICAgICAgICAgc2VsZi5fb25lX2xvY2FsX2Nv
bW1pdCgpCkBAIC0xNDY3LDExICsxNTQxLDEzIEBAIGNsYXNzIEdpdFNWTlRlc3QoU0NNVGVzdCk6
CiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhwYXRjaCwgYid0ZXN0X2ZpbGVfY29t
bWl0MScpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhwYXRjaCwgYidTdWJ2ZXJz
aW9uIFJldmlzaW9uOiA1JykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY3JlYXRlX3BhdGNo
X3dpdGhfY2hhbmdlZF9maWxlcyhzZWxmKToKICAgICAgICAgc2VsZi5fb25lX2xvY2FsX2NvbW1p
dF9wbHVzX3dvcmtpbmdfY29weV9jaGFuZ2VzKCkKICAgICAgICAgcGF0Y2ggPSBzZWxmLnNjbS5j
cmVhdGVfcGF0Y2goY2hhbmdlZF9maWxlcz1bJ3Rlc3RfZmlsZV9jb21taXQyJ10pCiAgICAgICAg
IHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcyhwYXRjaCwgYid0ZXN0X2ZpbGVfY29tbWl0MicpCiAK
KyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NyZWF0ZV9wYXRjaF93aXRoX3JtX2FuZF9jaGFuZ2Vk
X2ZpbGVzKHNlbGYpOgogICAgICAgICBzZWxmLl9vbmVfbG9jYWxfY29tbWl0X3BsdXNfd29ya2lu
Z19jb3B5X2NoYW5nZXMoKQogICAgICAgICBvcy5yZW1vdmUoJ3Rlc3RfZmlsZV9jb21taXQxJykK
QEAgLTE0NzksMTIgKzE1NTUsMTQgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAg
ICAgcGF0Y2hfd2l0aF9jaGFuZ2VkX2ZpbGVzID0gc2VsZi5zY20uY3JlYXRlX3BhdGNoKGNoYW5n
ZWRfZmlsZXM9Wyd0ZXN0X2ZpbGVfY29tbWl0MScsICd0ZXN0X2ZpbGVfY29tbWl0MiddKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKHBhdGNoLCBwYXRjaF93aXRoX2NoYW5nZWRfZmlsZXMpCiAK
KyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X2NyZWF0ZV9wYXRjaF9naXRfY29tbWl0KHNlbGYpOgog
ICAgICAgICBzZWxmLl90d29fbG9jYWxfY29tbWl0cygpCiAgICAgICAgIHBhdGNoID0gc2VsZi5z
Y20uY3JlYXRlX3BhdGNoKGdpdF9jb21taXQ9IkhFQUReIikKICAgICAgICAgc2VsZi5hc3NlcnRS
ZWdleHBNYXRjaGVzKHBhdGNoLCBiJ3Rlc3RfZmlsZV9jb21taXQxJykKICAgICAgICAgc2VsZi5h
c3NlcnROb3RSZWdleHBNYXRjaGVzKHBhdGNoLCBiJ3Rlc3RfZmlsZV9jb21taXQyJykKIAorICAg
IEBzbG93CiAgICAgZGVmIHRlc3RfY3JlYXRlX3BhdGNoX2dpdF9jb21taXRfcmFuZ2Uoc2VsZik6
CiAgICAgICAgIHNlbGYuX3RocmVlX2xvY2FsX2NvbW1pdHMoKQogICAgICAgICBwYXRjaCA9IHNl
bGYuc2NtLmNyZWF0ZV9wYXRjaChnaXRfY29tbWl0PSJIRUFEfjIuLkhFQUQiKQpAQCAtMTQ5Miwx
OCArMTU3MCwyMSBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBzZWxmLmFz
c2VydFJlZ2V4cE1hdGNoZXMocGF0Y2gsIGIndGVzdF9maWxlX2NvbW1pdDInKQogICAgICAgICBz
ZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMocGF0Y2gsIGIndGVzdF9maWxlX2NvbW1pdDEnKQogCisg
ICAgQHNsb3cKICAgICBkZWYgdGVzdF9jcmVhdGVfcGF0Y2hfd29ya2luZ19jb3B5X29ubHkoc2Vs
Zik6CiAgICAgICAgIHNlbGYuX29uZV9sb2NhbF9jb21taXRfcGx1c193b3JraW5nX2NvcHlfY2hh
bmdlcygpCiAgICAgICAgIHBhdGNoID0gc2VsZi5zY20uY3JlYXRlX3BhdGNoKGdpdF9jb21taXQ9
IkhFQUQuLi4uIikKICAgICAgICAgc2VsZi5hc3NlcnROb3RSZWdleHBNYXRjaGVzKHBhdGNoLCBi
J3Rlc3RfZmlsZV9jb21taXQxJykKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHBh
dGNoLCBiJ3Rlc3RfZmlsZV9jb21taXQyJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY3Jl
YXRlX3BhdGNoX211bHRpcGxlX2xvY2FsX2NvbW1pdHMoc2VsZik6CiAgICAgICAgIHNlbGYuX3R3
b19sb2NhbF9jb21taXRzKCkKICAgICAgICAgcGF0Y2ggPSBzZWxmLnNjbS5jcmVhdGVfcGF0Y2go
KQogICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMocGF0Y2gsIGIndGVzdF9maWxlX2Nv
bW1pdDInKQogICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMocGF0Y2gsIGIndGVzdF9m
aWxlX2NvbW1pdDEnKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jcmVhdGVfcGF0Y2hfbm90
X3N5bmNlZChzZWxmKToKICAgICAgICAgcnVuX2NvbW1hbmQoWydnaXQnLCAnY2hlY2tvdXQnLCAn
LWInLCAnbXktYnJhbmNoJywgJ3RydW5rfjMnXSkKICAgICAgICAgc2VsZi5fdHdvX2xvY2FsX2Nv
bW1pdHMoKQpAQCAtMTUxMiw2ICsxNTkzLDcgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToK
ICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHBhdGNoLCBiJ3Rlc3RfZmlsZV9jb21t
aXQyJykKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzKHBhdGNoLCBiJ3Rlc3RfZmls
ZV9jb21taXQxJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY3JlYXRlX2JpbmFyeV9wYXRj
aChzZWxmKToKICAgICAgICAgIyBDcmVhdGUgYSBnaXQgYmluYXJ5IHBhdGNoIGFuZCBjaGVjayB0
aGUgY29udGVudHMuCiAgICAgICAgIHRlc3RfZmlsZV9uYW1lID0gJ2JpbmFyeV9maWxlJwpAQCAt
MTU0Myw2ICsxNjI1LDcgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAgc2Vs
Zi5hc3NlcnRSZWdleHBNYXRjaGVzKHBhdGNoX2Zyb21fbG9jYWxfY29tbWl0LCBiJ1xubGl0ZXJh
bCAwXG4nKQogICAgICAgICBzZWxmLmFzc2VydFJlZ2V4cE1hdGNoZXMocGF0Y2hfZnJvbV9sb2Nh
bF9jb21taXQsIGInXG5saXRlcmFsIDI1NlxuJykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3Rf
Y2hhbmdlZF9maWxlc19sb2NhbF9wbHVzX3dvcmtpbmdfY29weShzZWxmKToKICAgICAgICAgc2Vs
Zi5fb25lX2xvY2FsX2NvbW1pdF9wbHVzX3dvcmtpbmdfY29weV9jaGFuZ2VzKCkKICAgICAgICAg
ZmlsZXMgPSBzZWxmLnNjbS5jaGFuZ2VkX2ZpbGVzKCkKQEAgLTE1NjgsMTIgKzE2NTEsMTQgQEAg
Y2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9m
aWxlX2NvbW1pdDEnLCBmaWxlcykKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9maWxlX2Nv
bW1pdDInLCBmaWxlcykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY2hhbmdlZF9maWxlc19n
aXRfY29tbWl0KHNlbGYpOgogICAgICAgICBzZWxmLl90d29fbG9jYWxfY29tbWl0cygpCiAgICAg
ICAgIGZpbGVzID0gc2VsZi5zY20uY2hhbmdlZF9maWxlcyhnaXRfY29tbWl0PSJIRUFEXiIpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3Rlc3RfZmlsZV9jb21taXQxJywgZmlsZXMpCiAgICAgICAg
IHNlbGYuYXNzZXJ0Tm90SW4oJ3Rlc3RfZmlsZV9jb21taXQyJywgZmlsZXMpCiAKKyAgICBAc2xv
dwogICAgIGRlZiB0ZXN0X2NoYW5nZWRfZmlsZXNfZ2l0X2NvbW1pdF9yYW5nZShzZWxmKToKICAg
ICAgICAgc2VsZi5fdGhyZWVfbG9jYWxfY29tbWl0cygpCiAgICAgICAgIGZpbGVzID0gc2VsZi5z
Y20uY2hhbmdlZF9maWxlcyhnaXRfY29tbWl0PSJIRUFEfjIuLkhFQUQiKQpAQCAtMTU4MSwxOCAr
MTY2NiwyMSBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBzZWxmLmFzc2Vy
dEluKCd0ZXN0X2ZpbGVfY29tbWl0MScsIGZpbGVzKQogICAgICAgICBzZWxmLmFzc2VydEluKCd0
ZXN0X2ZpbGVfY29tbWl0MicsIGZpbGVzKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9jaGFu
Z2VkX2ZpbGVzX3dvcmtpbmdfY29weV9vbmx5KHNlbGYpOgogICAgICAgICBzZWxmLl9vbmVfbG9j
YWxfY29tbWl0X3BsdXNfd29ya2luZ19jb3B5X2NoYW5nZXMoKQogICAgICAgICBmaWxlcyA9IHNl
bGYuc2NtLmNoYW5nZWRfZmlsZXMoZ2l0X2NvbW1pdD0iSEVBRC4uLi4iKQogICAgICAgICBzZWxm
LmFzc2VydE5vdEluKCd0ZXN0X2ZpbGVfY29tbWl0MScsIGZpbGVzKQogICAgICAgICBzZWxmLmFz
c2VydEluKCd0ZXN0X2ZpbGVfY29tbWl0MicsIGZpbGVzKQogCisgICAgQHNsb3cKICAgICBkZWYg
dGVzdF9jaGFuZ2VkX2ZpbGVzX211bHRpcGxlX2xvY2FsX2NvbW1pdHMoc2VsZik6CiAgICAgICAg
IHNlbGYuX3R3b19sb2NhbF9jb21taXRzKCkKICAgICAgICAgZmlsZXMgPSBzZWxmLnNjbS5jaGFu
Z2VkX2ZpbGVzKCkKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9maWxlX2NvbW1pdDInLCBm
aWxlcykKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9maWxlX2NvbW1pdDEnLCBmaWxlcykK
IAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY2hhbmdlZF9maWxlc19ub3Rfc3luY2VkKHNlbGYp
OgogICAgICAgICBydW5fY29tbWFuZChbJ2dpdCcsICdjaGVja291dCcsICctYicsICdteS1icmFu
Y2gnLCAndHJ1bmt+MyddKQogICAgICAgICBzZWxmLl90d29fbG9jYWxfY29tbWl0cygpCkBAIC0x
NjAxLDYgKzE2ODksNyBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBzZWxm
LmFzc2VydEluKCd0ZXN0X2ZpbGVfY29tbWl0MicsIGZpbGVzKQogICAgICAgICBzZWxmLmFzc2Vy
dEluKCd0ZXN0X2ZpbGVfY29tbWl0MScsIGZpbGVzKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVz
dF9jaGFuZ2VkX2ZpbGVzX25vdF9zeW5jZWQoc2VsZik6CiAgICAgICAgIHJ1bl9jb21tYW5kKFsn
Z2l0JywgJ2NoZWNrb3V0JywgJy1iJywgJ215LWJyYW5jaCcsICd0cnVua34zJ10pCiAgICAgICAg
IHNlbGYuX3R3b19sb2NhbF9jb21taXRzKCkKQEAgLTE2MDksMTIgKzE2OTgsMTUgQEAgY2xhc3Mg
R2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9maWxlX2Nv
bW1pdDInLCBmaWxlcykKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9maWxlX2NvbW1pdDEn
LCBmaWxlcykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY2hhbmdlZF9maWxlcyhzZWxmKToK
ICAgICAgICAgc2VsZi5fc2hhcmVkX3Rlc3RfY2hhbmdlZF9maWxlcygpCiAKKyAgICBAc2xvdwog
ICAgIGRlZiB0ZXN0X2NoYW5nZWRfZmlsZXNfZm9yX3JldmlzaW9uKHNlbGYpOgogICAgICAgICBz
ZWxmLl9zaGFyZWRfdGVzdF9jaGFuZ2VkX2ZpbGVzX2Zvcl9yZXZpc2lvbigpCiAKKyAgICBAc2xv
dwogICAgIGRlZiB0ZXN0X2NoYW5nZWRfZmlsZXNfdXBzdHJlYW0oc2VsZik6CiAgICAgICAgIHJ1
bl9jb21tYW5kKFsnZ2l0JywgJ2NoZWNrb3V0JywgJy10JywgJy1iJywgJ215LWJyYW5jaCddKQog
ICAgICAgICBzZWxmLl9vbmVfbG9jYWxfY29tbWl0KCkKQEAgLTE2MzUsNTcgKzE3MjcsNzIgQEAg
Y2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9m
aWxlX2NvbW1pdDInLCBmaWxlcykKICAgICAgICAgc2VsZi5hc3NlcnRJbigndGVzdF9maWxlX2Nv
bW1pdDAnLCBmaWxlcykKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfY29udGVudHNfYXRfcmV2
aXNpb24oc2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90ZXN0X2NvbnRlbnRzX2F0X3Jldmlz
aW9uKCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfcmV2aXNpb25zX2NoYW5naW5nX2ZpbGUo
c2VsZik6CiAgICAgICAgIHNlbGYuX3NoYXJlZF90ZXN0X3JldmlzaW9uc19jaGFuZ2luZ19maWxl
KCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfYWRkZWRfZmlsZXMoc2VsZik6CiAgICAgICAg
IHNlbGYuX3NoYXJlZF90ZXN0X2FkZGVkX2ZpbGVzKCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRl
c3RfY29tbWl0dGVyX2VtYWlsX2Zvcl9yZXZpc2lvbihzZWxmKToKICAgICAgICAgc2VsZi5fc2hh
cmVkX3Rlc3RfY29tbWl0dGVyX2VtYWlsX2Zvcl9yZXZpc2lvbigpCiAKKyAgICBAc2xvdwogICAg
IGRlZiB0ZXN0X2FkZF9yZWN1cnNpdmVseShzZWxmKToKICAgICAgICAgc2VsZi5fc2hhcmVkX3Rl
c3RfYWRkX3JlY3Vyc2l2ZWx5KCkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfZGVsZXRlKHNl
bGYpOgogICAgICAgICBzZWxmLl90d29fbG9jYWxfY29tbWl0cygpCiAgICAgICAgIHNlbGYuc2Nt
LmRlbGV0ZSgndGVzdF9maWxlX2NvbW1pdDEnKQogICAgICAgICBzZWxmLmFzc2VydEluKCJ0ZXN0
X2ZpbGVfY29tbWl0MSIsIHNlbGYuc2NtLmRlbGV0ZWRfZmlsZXMoKSkKIAorICAgIEBzbG93CiAg
ICAgZGVmIHRlc3RfZGVsZXRlX2xpc3Qoc2VsZik6CiAgICAgICAgIHNlbGYuX3R3b19sb2NhbF9j
b21taXRzKCkKICAgICAgICAgc2VsZi5zY20uZGVsZXRlX2xpc3QoWyJ0ZXN0X2ZpbGVfY29tbWl0
MSIsICJ0ZXN0X2ZpbGVfY29tbWl0MiJdKQogICAgICAgICBzZWxmLmFzc2VydEluKCJ0ZXN0X2Zp
bGVfY29tbWl0MSIsIHNlbGYuc2NtLmRlbGV0ZWRfZmlsZXMoKSkKICAgICAgICAgc2VsZi5hc3Nl
cnRJbigidGVzdF9maWxlX2NvbW1pdDIiLCBzZWxmLnNjbS5kZWxldGVkX2ZpbGVzKCkpCiAKKyAg
ICBAc2xvdwogICAgIGRlZiB0ZXN0X2RlbGV0ZV9yZWN1cnNpdmVseShzZWxmKToKICAgICAgICAg
c2VsZi5fc2hhcmVkX3Rlc3RfZGVsZXRlX3JlY3Vyc2l2ZWx5KCkKIAorICAgIEBzbG93CiAgICAg
ZGVmIHRlc3RfZGVsZXRlX3JlY3Vyc2l2ZWx5X29yX25vdChzZWxmKToKICAgICAgICAgc2VsZi5f
c2hhcmVkX3Rlc3RfZGVsZXRlX3JlY3Vyc2l2ZWx5X29yX25vdCgpCiAKKyAgICBAc2xvdwogICAg
IGRlZiB0ZXN0X2hlYWRfc3ZuX3JldmlzaW9uKHNlbGYpOgogICAgICAgICBzZWxmLl9zaGFyZWRf
dGVzdF9oZWFkX3N2bl9yZXZpc2lvbigpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0X25hdGl2
ZV9yZXZpc2lvbihzZWxmKToKICAgICAgICAgY29tbWFuZCA9IFsnZ2l0JywgJy1DJywgc2VsZi5n
aXRfY2hlY2tvdXRfcGF0aCwgJ3Jldi1wYXJzZScsICdIRUFEJ10KICAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbChzZWxmLnNjbS5uYXRpdmVfcmV2aXNpb24oc2VsZi5naXRfY2hlY2tvdXRfcGF0aCks
IHJ1bl9jb21tYW5kKGNvbW1hbmQpLnN0cmlwKCkpCiAKKyAgICBAc2xvdwogICAgIGRlZiB0ZXN0
X25hdGl2ZV9icmFuY2goc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3RydW5rJywg
c2VsZi5zY20ubmF0aXZlX2JyYW5jaChzZWxmLmdpdF9jaGVja291dF9wYXRoKSkKIAorICAgIEBz
bG93CiAgICAgZGVmIHRlc3RfdG9fb2JqZWN0X25hbWUoc2VsZik6CiAgICAgICAgIHJlbHBhdGgg
PSAndGVzdF9maWxlX2NvbW1pdDEnCiAgICAgICAgIGZ1bGxwYXRoID0gb3MucGF0aC5yZWFscGF0
aChvcy5wYXRoLmpvaW4oc2VsZi5naXRfY2hlY2tvdXRfcGF0aCwgcmVscGF0aCkpCiAgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwocmVscGF0aCwgc2VsZi5zY20udG9fb2JqZWN0X25hbWUoZnVsbHBh
dGgpKQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9zaG93X2hlYWQoc2VsZik6CiAgICAgICAg
IHNlbGYuX3R3b19sb2NhbF9jb21taXRzKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIm1v
cmUgdGVzdCBjb250ZW50Iiwgc2VsZi5zY20uc2hvd19oZWFkKCd0ZXN0X2ZpbGVfY29tbWl0MScp
KQogCisgICAgQHNsb3cKICAgICBkZWYgdGVzdF9zaG93X2hlYWRfYmluYXJ5KHNlbGYpOgogICAg
ICAgICBzZWxmLl90d29fbG9jYWxfY29tbWl0cygpCiAgICAgICAgIGRhdGEgPSBiIlwyNDQiCkBA
IC0xNjk0LDYgKzE4MDEsNyBAQCBjbGFzcyBHaXRTVk5UZXN0KFNDTVRlc3QpOgogICAgICAgICBz
ZWxmLnNjbS5jb21taXRfbG9jYWxseV93aXRoX21lc3NhZ2UoImEgdGVzdCBjb21taXQiKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGEsIHNlbGYuc2NtLnNob3dfaGVhZCgnYmluYXJ5X2Zp
bGUnKSkKIAorICAgIEBzbG93CiAgICAgZGVmIHRlc3RfZGlmZl9mb3JfZmlsZShzZWxmKToKICAg
ICAgICAgc2VsZi5fdHdvX2xvY2FsX2NvbW1pdHMoKQogICAgICAgICB3cml0ZV9pbnRvX2ZpbGVf
YXRfcGF0aCgndGVzdF9maWxlX2NvbW1pdDEnLCBiIlVwZGF0ZWQiLCBlbmNvZGluZz1Ob25lKQpA
QCAtMTcwOSw2ICsxODE3LDcgQEAgY2xhc3MgR2l0U1ZOVGVzdChTQ01UZXN0KToKICAgICAgICAg
c2VsZi5hc3NlcnRJbigiK1VwZGF0ZWQiLCBjYWNoZWRfZGlmZikKICAgICAgICAgc2VsZi5hc3Nl
cnRJbigiLW1vcmUgdGVzdCBjb250ZW50IiwgY2FjaGVkX2RpZmYpCiAKKyAgICBAc2xvdwogICAg
IGRlZiB0ZXN0X2V4aXN0cyhzZWxmKToKICAgICAgICAgc2VsZi5fc2hhcmVkX3Rlc3RfZXhpc3Rz
KHNlbGYuc2NtLCBzZWxmLnNjbS5jb21taXRfbG9jYWxseV93aXRoX21lc3NhZ2UpCiAKZGlmZiAt
LWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29uZnRlc3QucHkgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2NvbmZ0ZXN0LnB5CmluZGV4IGNmODkxZmQ1MDYzNmMxYzM5OWY0NmUxNjc0MDBh
ZGU1NTY0NWNkNTcuLmUwM2ZhMDZjY2U2OTk0YzcyMjU0YzY4YWEzOTA0ZGEzZDFjZTg1MTAgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29uZnRlc3QucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9jb25mdGVzdC5weQpAQCAtMzAsNiArMzAsNyBAQCBpbXBvcnQgcHl0
ZXN0CiBkZWYgcHl0ZXN0X2NvbmZpZ3VyZShjb25maWcpOgogICAgIGNvbmZpZy5hZGRpbml2YWx1
ZV9saW5lKCJtYXJrZXJzIiwgInNlcmlhbDogdGVzdHMgdGhhdCBtdXN0IGJlIHJ1biBpbiBzZXJp
YWwiKQogICAgIGNvbmZpZy5hZGRpbml2YWx1ZV9saW5lKCJtYXJrZXJzIiwgImludGVncmF0aW9u
OiBpbnRlZ3JhdGlvbiB0ZXN0cyIpCisgICAgY29uZmlnLmFkZGluaXZhbHVlX2xpbmUoIm1hcmtl
cnMiLCAic2xvdzogdGVzdHMgdGhhdCB0YWtlIGEgd2hpbGUgdG8gcnVuIikKIAogCiBkZWYgcHl0
ZXN0X2FkZG9wdGlvbihwYXJzZXIpOgpAQCAtMzksNiArNDAsOSBAQCBkZWYgcHl0ZXN0X2FkZG9w
dGlvbihwYXJzZXIpOgogICAgICAgICBkZWZhdWx0PUZhbHNlLAogICAgICAgICBoZWxwPSJydW4g
aW50ZWdyYXRpb24gdGVzdHMiLAogICAgICkKKyAgICBwYXJzZXIuYWRkb3B0aW9uKAorICAgICAg
ICAiLS1ydW4tc2xvdyIsIGFjdGlvbj0ic3RvcmVfdHJ1ZSIsIGRlZmF1bHQ9RmFsc2UsIGhlbHA9
InJ1biBzbG93IHRlc3RzIgorICAgICkKIAogCiBAcHl0ZXN0Lmhvb2tpbXBsKHRyeWZpcnN0PVRy
dWUpCkBAIC0xMDgsMyArMTEyLDkgQEAgZGVmIHB5dGVzdF9jb2xsZWN0aW9uX21vZGlmeWl0ZW1z
KGNvbmZpZywgaXRlbXMpOgogICAgICAgICBmb3IgaXRlbSBpbiBpdGVtczoKICAgICAgICAgICAg
IGlmICJpbnRlZ3JhdGlvbiIgaW4gaXRlbS5rZXl3b3JkczoKICAgICAgICAgICAgICAgICBpdGVt
LmFkZF9tYXJrZXIoc2tpcF9pbnRlZ3JhdGlvbikKKworICAgIGlmIG5vdCBjb25maWcuZ2V0b3B0
aW9uKCItLXJ1bi1zbG93Iik6CisgICAgICAgIHNraXBfc2xvdyA9IHB5dGVzdC5tYXJrLnNraXAo
cmVhc29uPSJuZWVkIC0tcnVuLXNsb3cgb3B0aW9uIHRvIHJ1biIpCisgICAgICAgIGZvciBpdGVt
IGluIGl0ZW1zOgorICAgICAgICAgICAgaWYgInNsb3ciIGluIGl0ZW0ua2V5d29yZHM6CisgICAg
ICAgICAgICAgICAgaXRlbS5hZGRfbWFya2VyKHNraXBfc2xvdykKZGlmZiAtLWdpdCBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvcHl0ZXN0LmluaSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcHl0
ZXN0LmluaQppbmRleCA5NTEwZmRkNWFkOGVlMjA3Yzk4NWRhNmUwZGRiYmY1YWEyMjZlNmFlLi4z
NjBiNDk2MGJmMmZhMTZiOGMyZWZhOWI5Yjg0NzQyZWMyY2YzYWI1IDEwMDY0NAotLS0gYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3B5dGVzdC5pbmkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9weXRlc3QuaW5pCkBAIC0xLDcgKzEsNyBAQAogW3B5dGVzdF0KIHB5dGhvbl9maWxlcz0qX3Vu
aXR0ZXN0LnB5ICpfaW50ZWdyYXRpb250ZXN0LnB5CiB4ZmFpbF9zdHJpY3Q9dHJ1ZQotYWRkb3B0
cyA9IC1yZkVYIC0tc3RyaWN0LW1hcmtlcnMgLWsgJ25vdCBzY21fdW5pdHRlc3QnCithZGRvcHRz
ID0gLXJmRVggLS1zdHJpY3QtbWFya2VycwogCiBmaWx0ZXJ3YXJuaW5ncyA9CiAgICAgaWdub3Jl
OmludmFsaWQgZXNjYXBlIHNlcXVlbmNlLio6RGVwcmVjYXRpb25XYXJuaW5nCmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rlc3QvbWFya2Vycy5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdGVzdC9tYXJrZXJzLnB5CmluZGV4IGFjYTE2MzkyZjJjZjMwYTM0Zjc0Y2UzN2Mz
OTEyNzMzNTUyZTZhZmMuLjkzMGE0OWQwNDdhZjg4NDI3OWQ5N2JhNjcxNjlmN2FlYmE1YTliNzYg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9tYXJrZXJzLnB5CisrKyBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGVzdC9tYXJrZXJzLnB5CkBAIC01NywzICs1NywxMCBA
QCBkZWYgeGZhaWwoKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgICAgIHJldHVybiBmdW5jCiAK
ICAgICByZXR1cm4gZGVjb3JhdG9yCisKKworZGVmIHNsb3coZnVuYyk6CisgICAgdHJ5OgorICAg
ICAgICByZXR1cm4gcHl0ZXN0Lm1hcmsuc2xvdyhmdW5jKQorICAgIGV4Y2VwdCBOYW1lRXJyb3I6
CisgICAgICAgIHJldHVybiBmdW5jCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>