<?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>137985</bug_id>
          
          <creation_ts>2014-10-22 15:57:15 -0700</creation_ts>
          <short_desc>commitqueuetask_unittest.py should be made more concise.</short_desc>
          <delta_ts>2014-10-22 19:54:31 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jake Nielsen">jake.nielsen.webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>glenn</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1043572</commentid>
    <comment_count>0</comment_count>
    <who name="Jake Nielsen">jake.nielsen.webkit</who>
    <bug_when>2014-10-22 15:57:15 -0700</bug_when>
    <thetext>There are several tests that could use MockSimpleTestPlanCommitQueue to test patch-testing behavior, but instead use MockCommitQueue and pass/fail based on the log messages that it generates.
If they were moved over, the tests would become more readable, more concise, and less brittle.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043600</commentid>
    <comment_count>1</comment_count>
      <attachid>240308</attachid>
    <who name="Jake Nielsen">jake.nielsen.webkit</who>
    <bug_when>2014-10-22 17:11:30 -0700</bug_when>
    <thetext>Created attachment 240308
Almost 1:3 addition to deletion ratio! Alright!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043650</commentid>
    <comment_count>2</comment_count>
      <attachid>240308</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-22 19:54:27 -0700</bug_when>
    <thetext>Comment on attachment 240308
Almost 1:3 addition to deletion ratio! Alright!

Clearing flags on attachment: 240308

Committed r175082: &lt;http://trac.webkit.org/changeset/175082&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043651</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-22 19:54:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240308</attachid>
            <date>2014-10-22 17:11:30 -0700</date>
            <delta_ts>2014-10-22 19:54:27 -0700</delta_ts>
            <desc>Almost 1:3 addition to deletion ratio! Alright!</desc>
            <filename>0001-commitqueuetask_unittest.py-should-be-made-more-conc.patch</filename>
            <type>text/plain</type>
            <size>29737</size>
            <attacher name="Jake Nielsen">jake.nielsen.webkit</attacher>
            
              <data encoding="base64">RnJvbSA2NDI1NGIyMGM5MGMyNzFhMmUzMTU4NmM4M2VmMTgyNzFkYTZmNGZhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKYWtlIE5pZWxzZW4gPGphY29iX25pZWxzZW5AYXBwbGUuY29t
PgpEYXRlOiBXZWQsIDIyIE9jdCAyMDE0IDE3OjEwOjEzIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0g
Y29tbWl0cXVldWV0YXNrX3VuaXR0ZXN0LnB5IHNob3VsZCBiZSBtYWRlIG1vcmUgY29uY2lzZS4K
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzc5ODUKClJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgoKKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2NvbW1pdHF1
ZXVldGFza191bml0dGVzdC5weToKUmVmYWN0b3JzIHRlc3RzIHRvIHVzZSBNb2NrU2ltcGxlVGVz
dFBsYW5Db21taXRRdWV1ZSB3aGVyZSBwb3NzaWJsZS4KKE1vY2tDb21taXRRdWV1ZS5fX2luaXRf
Xyk6CihNb2NrQ29tbWl0UXVldWUucmVwb3J0X2ZsYWt5X3Rlc3RzKToKKE1vY2tDb21taXRRdWV1
ZSk6CihNb2NrQ29tbWl0UXVldWUuZ2V0X3JlcG9ydGVkX2ZsYWt5X3Rlc3RzKToKKE1vY2tTaW1w
bGVUZXN0UGxhbkNvbW1pdFF1ZXVlLl9faW5pdF9fKToKKE1vY2tTaW1wbGVUZXN0UGxhbkNvbW1p
dFF1ZXVlLnJ1bl9jb21tYW5kKToKKE1vY2tTaW1wbGVUZXN0UGxhbkNvbW1pdFF1ZXVlLmRpZF9y
dW5fY2xlYW5fdGVzdHMpOgooQ29tbWl0UXVldWVUYXNrVGVzdC5fcnVuX2FuZF9leHBlY3RfcGF0
Y2hfYW5hbHlzaXNfcmVzdWx0KToKKHRlc3RfbGFuZF9mYWlsdXJlKToKKHRlc3RfZmFpbGVkX2Fy
Y2hpdmUpOgoodGVzdF9kb3VibGVfZmxha3lfdGVzdF9mYWlsdXJlKToKKHRlc3RfdGVzdF9mYWls
dXJlKToKKHRlc3RfcmVkX3Rlc3RfZmFpbHVyZSk6Cih0ZXN0X3ZlcnlfcmVkX3RyZWVfcmV0cnkp
OgoodGVzdF9yZWRfdHJlZV9wYXRjaF9yZWplY3Rpb24pOgoodGVzdF9vbmVfZmxha3lfdGVzdCk6
Cih0ZXN0X3RyZWVfbW9yZV9yZWRfdGhhbl9wYXRjaCk6CihNb2NrQ29tbWl0UXVldWUudGVzdF9y
ZXN1bHRzKTogRGVsZXRlZC4KKHRlc3Rfc2ltcGxlX2ZsYWt5X3Rlc3RfZmFpbHVyZSk6IERlbGV0
ZWQuCihfZXhwZWN0X3ZhbGlkYXRlKTogRGVsZXRlZC4KKF9leHBlY3RfdmFsaWRhdGUuTW9ja0Rl
bGVnYXRlKTogRGVsZXRlZC4KKF9leHBlY3RfdmFsaWRhdGUuTW9ja0RlbGVnYXRlLnJlZmV0Y2hf
cGF0Y2gpOiBEZWxldGVkLgooX2V4cGVjdF92YWxpZGF0ZS5Nb2NrRGVsZWdhdGUuZXhwZWN0ZWRf
ZmFpbHVyZXMpOiBEZWxldGVkLgooX21vY2tfcGF0Y2gpOiBEZWxldGVkLgoodGVzdF92YWxpZGF0
ZSk6IERlbGV0ZWQuCiogU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFz
ay5weToKRml4ZXMgYSBidWcgdGhhdCBzbGlwcGVkIHRocm91Z2ggdGhlIGNyYWNrcyBwcmlvciB0
byB0aGlzIGNoYW5nZS4KKFBhdGNoQW5hbHlzaXNUYXNrLl90ZXN0X3BhdGNoKToKLS0tCiBUb29s
cy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAzOCArKysK
IC4uLi93ZWJraXRweS90b29sL2JvdC9jb21taXRxdWV1ZXRhc2tfdW5pdHRlc3QucHkgIHwgMzQ5
ICsrKystLS0tLS0tLS0tLS0tLS0tLQogLi4uL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcGF0
Y2hhbmFseXNpc3Rhc2sucHkgfCAgIDEgKwogMyBmaWxlcyBjaGFuZ2VkLCAxMDIgaW5zZXJ0aW9u
cygrKSwgMjg2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rv
b2xzL0NoYW5nZUxvZwppbmRleCAzZjAyYTZhLi5hM2IwN2I3IDEwMDY0NAotLS0gYS9Ub29scy9D
aGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDMgQEAKIDIwMTQtMTAt
MjIgIEpha2UgTmllbHNlbiAgPGphY29iX25pZWxzZW5AYXBwbGUuY29tPgogCisgICAgICAgIGNv
bW1pdHF1ZXVldGFza191bml0dGVzdC5weSBzaG91bGQgYmUgbWFkZSBtb3JlIGNvbmNpc2UuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzc5ODUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMv
d2Via2l0cHkvdG9vbC9ib3QvY29tbWl0cXVldWV0YXNrX3VuaXR0ZXN0LnB5OgorICAgICAgICBS
ZWZhY3RvcnMgdGVzdHMgdG8gdXNlIE1vY2tTaW1wbGVUZXN0UGxhbkNvbW1pdFF1ZXVlIHdoZXJl
IHBvc3NpYmxlLgorICAgICAgICAoTW9ja0NvbW1pdFF1ZXVlLl9faW5pdF9fKToKKyAgICAgICAg
KE1vY2tDb21taXRRdWV1ZS5yZXBvcnRfZmxha3lfdGVzdHMpOgorICAgICAgICAoTW9ja0NvbW1p
dFF1ZXVlKToKKyAgICAgICAgKE1vY2tDb21taXRRdWV1ZS5nZXRfcmVwb3J0ZWRfZmxha3lfdGVz
dHMpOgorICAgICAgICAoTW9ja1NpbXBsZVRlc3RQbGFuQ29tbWl0UXVldWUuX19pbml0X18pOgor
ICAgICAgICAoTW9ja1NpbXBsZVRlc3RQbGFuQ29tbWl0UXVldWUucnVuX2NvbW1hbmQpOgorICAg
ICAgICAoTW9ja1NpbXBsZVRlc3RQbGFuQ29tbWl0UXVldWUuZGlkX3J1bl9jbGVhbl90ZXN0cyk6
CisgICAgICAgIChDb21taXRRdWV1ZVRhc2tUZXN0Ll9ydW5fYW5kX2V4cGVjdF9wYXRjaF9hbmFs
eXNpc19yZXN1bHQpOgorICAgICAgICAodGVzdF9sYW5kX2ZhaWx1cmUpOgorICAgICAgICAodGVz
dF9mYWlsZWRfYXJjaGl2ZSk6CisgICAgICAgICh0ZXN0X2RvdWJsZV9mbGFreV90ZXN0X2ZhaWx1
cmUpOgorICAgICAgICAodGVzdF90ZXN0X2ZhaWx1cmUpOgorICAgICAgICAodGVzdF9yZWRfdGVz
dF9mYWlsdXJlKToKKyAgICAgICAgKHRlc3RfdmVyeV9yZWRfdHJlZV9yZXRyeSk6CisgICAgICAg
ICh0ZXN0X3JlZF90cmVlX3BhdGNoX3JlamVjdGlvbik6CisgICAgICAgICh0ZXN0X29uZV9mbGFr
eV90ZXN0KToKKyAgICAgICAgKHRlc3RfdHJlZV9tb3JlX3JlZF90aGFuX3BhdGNoKToKKyAgICAg
ICAgKE1vY2tDb21taXRRdWV1ZS50ZXN0X3Jlc3VsdHMpOiBEZWxldGVkLgorICAgICAgICAodGVz
dF9zaW1wbGVfZmxha3lfdGVzdF9mYWlsdXJlKTogRGVsZXRlZC4KKyAgICAgICAgKF9leHBlY3Rf
dmFsaWRhdGUpOiBEZWxldGVkLgorICAgICAgICAoX2V4cGVjdF92YWxpZGF0ZS5Nb2NrRGVsZWdh
dGUpOiBEZWxldGVkLgorICAgICAgICAoX2V4cGVjdF92YWxpZGF0ZS5Nb2NrRGVsZWdhdGUucmVm
ZXRjaF9wYXRjaCk6IERlbGV0ZWQuCisgICAgICAgIChfZXhwZWN0X3ZhbGlkYXRlLk1vY2tEZWxl
Z2F0ZS5leHBlY3RlZF9mYWlsdXJlcyk6IERlbGV0ZWQuCisgICAgICAgIChfbW9ja19wYXRjaCk6
IERlbGV0ZWQuCisgICAgICAgICh0ZXN0X3ZhbGlkYXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiBT
Y3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3BhdGNoYW5hbHlzaXN0YXNrLnB5OgorICAgICAgICBG
aXhlcyBhIGJ1ZyB0aGF0IHNsaXBwZWQgdGhyb3VnaCB0aGUgY3JhY2tzIHByaW9yIHRvIHRoaXMg
Y2hhbmdlLgorICAgICAgICAoUGF0Y2hBbmFseXNpc1Rhc2suX3Rlc3RfcGF0Y2gpOgorCisyMDE0
LTEwLTIyICBKYWtlIE5pZWxzZW4gIDxqYWNvYl9uaWVsc2VuQGFwcGxlLmNvbT4KKwogICAgICAg
ICBjb21taXRxdWV1ZXRhc2sgc2hvdWxkIGluY2x1ZGUgbW9yZSB0ZXN0cyB0byBlbnN1cmUgdGhh
dCB0aGUgYmVoYXZpb3IKICAgICAgICAgb2YgUGF0Y2hBbmFseXNpc1Rhc2suX3Rlc3RfcGF0Y2go
KSBpcyB3ZWxsIGRlZmluZWQKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEzNzk3NwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2JvdC9jb21taXRxdWV1ZXRhc2tfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L2NvbW1pdHF1ZXVldGFza191bml0dGVzdC5weQppbmRleCBkMTI0Y2U3Li40ZGZh
YzNmIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2NvbW1pdHF1
ZXVldGFza191bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90
L2NvbW1pdHF1ZXVldGFza191bml0dGVzdC5weQpAQCAtNDcsNiArNDcsNyBAQCBjbGFzcyBNb2Nr
Q29tbWl0UXVldWUoQ29tbWl0UXVldWVUYXNrRGVsZWdhdGUpOgogICAgIGRlZiBfX2luaXRfXyhz
ZWxmLCBlcnJvcl9wbGFuKToKICAgICAgICAgc2VsZi5fZXJyb3JfcGxhbiA9IGVycm9yX3BsYW4K
ICAgICAgICAgc2VsZi5fZmFpbHVyZV9zdGF0dXNfaWQgPSAwCisgICAgICAgIHNlbGYuX2ZsYWt5
X3Rlc3RzID0gW10KIAogICAgIGRlZiBydW5fY29tbWFuZChzZWxmLCBjb21tYW5kKToKICAgICAg
ICAgX2xvZy5pbmZvKCJydW5fd2Via2l0X3BhdGNoOiAlcyIgJSBjb21tYW5kKQpAQCAtNzIsOCAr
NzMsMTEgQEAgY2xhc3MgTW9ja0NvbW1pdFF1ZXVlKENvbW1pdFF1ZXVlVGFza0RlbGVnYXRlKToK
ICAgICAgICAgcmV0dXJuIExheW91dFRlc3RSZXN1bHRzKHRlc3RfcmVzdWx0cz1bXSwgZGlkX2V4
Y2VlZF90ZXN0X2ZhaWx1cmVfbGltaXQ9RmFsc2UpCiAKICAgICBkZWYgcmVwb3J0X2ZsYWt5X3Rl
c3RzKHNlbGYsIHBhdGNoLCBmbGFreV9yZXN1bHRzLCByZXN1bHRzX2FyY2hpdmUpOgotICAgICAg
ICBmbGFreV90ZXN0cyA9IFtyZXN1bHQudGVzdF9uYW1lIGZvciByZXN1bHQgaW4gZmxha3lfcmVz
dWx0c10KLSAgICAgICAgX2xvZy5pbmZvKCJyZXBvcnRfZmxha3lfdGVzdHM6IHBhdGNoPSclcycg
Zmxha3lfdGVzdHM9JyVzJyBhcmNoaXZlPSclcyciICUgKHBhdGNoLmlkKCksIGZsYWt5X3Rlc3Rz
LCByZXN1bHRzX2FyY2hpdmUuZmlsZW5hbWUpKQorICAgICAgICBzZWxmLl9mbGFreV90ZXN0cyA9
IFtyZXN1bHQudGVzdF9uYW1lIGZvciByZXN1bHQgaW4gZmxha3lfcmVzdWx0c10KKyAgICAgICAg
X2xvZy5pbmZvKCJyZXBvcnRfZmxha3lfdGVzdHM6IHBhdGNoPSclcycgZmxha3lfdGVzdHM9JyVz
JyBhcmNoaXZlPSclcyciICUgKHBhdGNoLmlkKCksIHNlbGYuX2ZsYWt5X3Rlc3RzLCByZXN1bHRz
X2FyY2hpdmUuZmlsZW5hbWUpKQorCisgICAgZGVmIGdldF9yZXBvcnRlZF9mbGFreV90ZXN0cyhz
ZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX2ZsYWt5X3Rlc3RzCiAKICAgICBkZWYgYXJjaGl2
ZV9sYXN0X3Rlc3RfcmVzdWx0cyhzZWxmLCBwYXRjaCk6CiAgICAgICAgIF9sb2cuaW5mbygiYXJj
aGl2ZV9sYXN0X3Rlc3RfcmVzdWx0czogcGF0Y2g9JyVzJyIgJSBwYXRjaC5pZCgpKQpAQCAtMTIw
LDYgKzEyNCw3IEBAIGNsYXNzIFBhdGNoQW5hbHlzaXNSZXN1bHQob2JqZWN0KToKIGNsYXNzIE1v
Y2tTaW1wbGVUZXN0UGxhbkNvbW1pdFF1ZXVlKE1vY2tDb21taXRRdWV1ZSk6CiAgICAgZGVmIF9f
aW5pdF9fKHNlbGYsIGZpcnN0X3Rlc3RfZmFpbHVyZXMsIHNlY29uZF90ZXN0X2ZhaWx1cmVzLCBj
bGVhbl90ZXN0X2ZhaWx1cmVzKToKICAgICAgICAgTW9ja0NvbW1pdFF1ZXVlLl9faW5pdF9fKHNl
bGYsIFtdKQorICAgICAgICBzZWxmLl9kaWRfcnVuX2NsZWFuX3Rlc3RzID0gRmFsc2UKICAgICAg
ICAgc2VsZi5fcGF0Y2hfdGVzdF9yZXN1bHRzID0gW2ZpcnN0X3Rlc3RfZmFpbHVyZXMsIHNlY29u
ZF90ZXN0X2ZhaWx1cmVzXQogICAgICAgICBzZWxmLl9jbGVhbl90ZXN0X3Jlc3VsdHMgPSBbY2xl
YW5fdGVzdF9mYWlsdXJlc10KICAgICAgICAgc2VsZi5fY3VycmVudF90ZXN0X3Jlc3VsdHMgPSBb
XQpAQCAtMTMxLDYgKzEzNiw3IEBAIGNsYXNzIE1vY2tTaW1wbGVUZXN0UGxhbkNvbW1pdFF1ZXVl
KE1vY2tDb21taXRRdWV1ZSk6CiAgICAgICAgICAgICAgICAgc2VsZi5fY3VycmVudF90ZXN0X3Jl
c3VsdHMgPSBzZWxmLl9wYXRjaF90ZXN0X3Jlc3VsdHMucG9wKDApCiAgICAgICAgICAgICBlbHNl
OgogICAgICAgICAgICAgICAgIHNlbGYuX2N1cnJlbnRfdGVzdF9yZXN1bHRzID0gc2VsZi5fY2xl
YW5fdGVzdF9yZXN1bHRzLnBvcCgwKQorICAgICAgICAgICAgICAgIHNlbGYuX2RpZF9ydW5fY2xl
YW5fdGVzdHMgPSBUcnVlCiAKICAgICAgICAgICAgIGlmIHNlbGYuX2N1cnJlbnRfdGVzdF9yZXN1
bHRzOgogICAgICAgICAgICAgICAgIHJhaXNlIFNjcmlwdEVycm9yKCJNT0NLIHRlc3QgZmFpbHVy
ZSIpCkBAIC0xNDIsNiArMTQ4LDkgQEAgY2xhc3MgTW9ja1NpbXBsZVRlc3RQbGFuQ29tbWl0UXVl
dWUoTW9ja0NvbW1pdFF1ZXVlKToKICAgICAgICAgYXNzZXJ0KGlzaW5zdGFuY2Uoc2VsZi5fY3Vy
cmVudF90ZXN0X3Jlc3VsdHMsIGxpc3QpKQogICAgICAgICByZXR1cm4gTGF5b3V0VGVzdFJlc3Vs
dHModGVzdF9yZXN1bHRzPW1hcChzZWxmLl9tb2NrX3Rlc3RfcmVzdWx0LCBzZWxmLl9jdXJyZW50
X3Rlc3RfcmVzdWx0cyksIGRpZF9leGNlZWRfdGVzdF9mYWlsdXJlX2xpbWl0PShsZW4oc2VsZi5f
Y3VycmVudF90ZXN0X3Jlc3VsdHMpID49IDEwKSkKIAorICAgIGRlZiBkaWRfcnVuX2NsZWFuX3Rl
c3RzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fZGlkX3J1bl9jbGVhbl90ZXN0cworCiAK
ICMgV2UgdXNlIEdvbGRlblNjcmlwdEVycm9yIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb2RlIHVu
ZGVyIHRlc3QgdGhyb3dzIHRoZQogIyBjb3JyZWN0IChpLmUuLCBnb2xkZW4pIGV4Y2VwdGlvbi4K
QEAgLTE1MCw3ICsxNTksNyBAQCBjbGFzcyBHb2xkZW5TY3JpcHRFcnJvcihTY3JpcHRFcnJvcik6
CiAKIAogY2xhc3MgQ29tbWl0UXVldWVUYXNrVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAg
ZGVmIF9ydW5fYW5kX2V4cGVjdF9wYXRjaF9hbmFseXNpc19yZXN1bHQoc2VsZiwgY29tbWl0X3F1
ZXVlLCBleHBlY3RlZF9hbmFseXNpc19yZXN1bHQpOgorICAgIGRlZiBfcnVuX2FuZF9leHBlY3Rf
cGF0Y2hfYW5hbHlzaXNfcmVzdWx0KHNlbGYsIGNvbW1pdF9xdWV1ZSwgZXhwZWN0ZWRfYW5hbHlz
aXNfcmVzdWx0LCBleHBlY3RlZF9yZXBvcnRlZF9mbGFreV90ZXN0cz1bXSwgZXhwZWN0X2NsZWFu
X3Rlc3RzX3RvX3J1bj1GYWxzZSwgZXhwZWN0ZWRfZmFpbHVyZV9zdGF0dXNfaWQ9MCk6CiAgICAg
ICAgIHRvb2wgPSBNb2NrVG9vbChsb2dfZXhlY3V0aXZlPVRydWUpCiAgICAgICAgIHBhdGNoID0g
dG9vbC5idWdzLmZldGNoX2F0dGFjaG1lbnQoMTAwMDApCiAgICAgICAgIHRhc2sgPSBDb21taXRR
dWV1ZVRhc2soY29tbWl0X3F1ZXVlLCBwYXRjaCkKQEAgLTE2NSw2ICsxNzQsMTIgQEAgY2xhc3Mg
Q29tbWl0UXVldWVUYXNrVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgICAgICBhbmFs
eXNpc19yZXN1bHQgPSBQYXRjaEFuYWx5c2lzUmVzdWx0LkZBSUwKIAogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKGFuYWx5c2lzX3Jlc3VsdCwgZXhwZWN0ZWRfYW5hbHlzaXNfcmVzdWx0KQorICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdF9xdWV1ZS5nZXRfcmVwb3J0ZWRfZmxha3lfdGVz
dHMoKSwgZXhwZWN0ZWRfcmVwb3J0ZWRfZmxha3lfdGVzdHMpCisgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwoY29tbWl0X3F1ZXVlLmRpZF9ydW5fY2xlYW5fdGVzdHMoKSwgZXhwZWN0X2NsZWFuX3Rl
c3RzX3RvX3J1bikKKworICAgICAgICAjIFRoZSBmYWlsdXJlIHN0YXR1cyBvbmx5IG1lYW5zIGFu
eXRoaW5nIGlmIHdlIGFjdHVhbGx5IGZhaWxlZC4KKyAgICAgICAgaWYgZXhwZWN0ZWRfYW5hbHlz
aXNfcmVzdWx0ID09IFBhdGNoQW5hbHlzaXNSZXN1bHQuRkFJTDoKKyAgICAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwodGFzay5mYWlsdXJlX3N0YXR1c19pZCwgZXhwZWN0ZWRfZmFpbHVyZV9zdGF0
dXNfaWQpCiAKICAgICBkZWYgX3J1bl90aHJvdWdoX3Rhc2soc2VsZiwgY29tbWl0X3F1ZXVlLCBl
eHBlY3RlZF9sb2dzLCBleHBlY3RlZF9leGNlcHRpb249Tm9uZSwgZXhwZWN0X3JldHJ5PUZhbHNl
KToKICAgICAgICAgc2VsZi5tYXhEaWZmID0gTm9uZQpAQCAtMzE0LDUwICszMjksMTYgQEAgY29t
bWFuZF9mYWlsZWQ6IGZhaWx1cmVfbWVzc2FnZT0nVW5hYmxlIHRvIGJ1aWxkIHdpdGhvdXQgcGF0
Y2gnIHNjcmlwdF9lcnJvcj0nTU8KICIiIgogICAgICAgICBzZWxmLl9ydW5fdGhyb3VnaF90YXNr
KGNvbW1pdF9xdWV1ZSwgZXhwZWN0ZWRfbG9ncywgZXhwZWN0X3JldHJ5PVRydWUpCiAKLSAgICBk
ZWYgdGVzdF9mbGFreV90ZXN0X2ZhaWx1cmUoc2VsZik6CisgICAgZGVmIHRlc3RfbGFuZF9mYWls
dXJlKHNlbGYpOgogICAgICAgICBjb21taXRfcXVldWUgPSBNb2NrQ29tbWl0UXVldWUoWwogICAg
ICAgICAgICAgTm9uZSwKICAgICAgICAgICAgIE5vbmUsCiAgICAgICAgICAgICBOb25lLAogICAg
ICAgICAgICAgTm9uZSwKICAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBTY3JpcHRFcnJv
cigiTU9DSyB0ZXN0cyBmYWlsdXJlIiksCi0gICAgICAgIF0pCi0gICAgICAgICMgQ29tbWl0UXVl
dWVUYXNrIHdpbGwgb25seSByZXBvcnQgZmxha3kgdGVzdHMgaWYgd2Ugc3VjY2Vzc2Z1bGx5IHBh
cnNlZAotICAgICAgICAjIHJlc3VsdHMuanNvbiBhbmQgcmV0dXJuZWQgYSBMYXlvdXRUZXN0UmVz
dWx0cyBvYmplY3QsIHNvIHdlIGZha2Ugb25lLgotICAgICAgICBleHBlY3RlZF9sb2dzID0gIiIi
cnVuX3dlYmtpdF9wYXRjaDogWydjbGVhbiddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNz
YWdlPSdDbGVhbmVkIHdvcmtpbmcgZGlyZWN0b3J5JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0
X3BhdGNoOiBbJ3VwZGF0ZSddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdVcGRh
dGVkIHdvcmtpbmcgZGlyZWN0b3J5JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBb
J2FwcGx5LWF0dGFjaG1lbnQnLCAnLS1uby11cGRhdGUnLCAnLS1ub24taW50ZXJhY3RpdmUnLCAx
MDAwMF0KLWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0FwcGxpZWQgcGF0Y2gnIHBh
dGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsndmFsaWRhdGUtY2hhbmdlbG9nJywgJy0t
Y2hlY2stb29wcycsICctLW5vbi1pbnRlcmFjdGl2ZScsIDEwMDAwXQotY29tbWFuZF9wYXNzZWQ6
IHN1Y2Nlc3NfbWVzc2FnZT0nQ2hhbmdlTG9nIHZhbGlkYXRlZCcgcGF0Y2g9JzEwMDAwJwotcnVu
X3dlYmtpdF9wYXRjaDogWydidWlsZCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0t
YnVpbGQtc3R5bGU9Ym90aCddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdCdWls
dCBwYXRjaCcgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydidWlsZC1hbmQtdGVz
dCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0tdGVzdCcsICctLW5vbi1pbnRlcmFj
dGl2ZSddCi1jb21tYW5kX2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdlPSdQYXRjaCBkb2VzIG5vdCBw
YXNzIHRlc3RzJyBzY3JpcHRfZXJyb3I9J01PQ0sgdGVzdHMgZmFpbHVyZScgcGF0Y2g9JzEwMDAw
JwotYXJjaGl2ZV9sYXN0X3Rlc3RfcmVzdWx0czogcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9w
YXRjaDogWydidWlsZC1hbmQtdGVzdCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0t
dGVzdCcsICctLW5vbi1pbnRlcmFjdGl2ZSddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNz
YWdlPSdQYXNzZWQgdGVzdHMnIHBhdGNoPScxMDAwMCcKLXJlcG9ydF9mbGFreV90ZXN0czogcGF0
Y2g9JzEwMDAwJyBmbGFreV90ZXN0cz0nW10nIGFyY2hpdmU9J21vY2stYXJjaGl2ZS0xMDAwMC56
aXAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2xhbmQtYXR0YWNobWVudCcsICctLWZvcmNlLWNsZWFu
JywgJy0tbm9uLWludGVyYWN0aXZlJywgJy0tcGFyZW50LWNvbW1hbmQ9Y29tbWl0LXF1ZXVlJywg
MTAwMDBdCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdMYW5kZWQgcGF0Y2gnIHBh
dGNoPScxMDAwMCcKLSIiIgotICAgICAgICBzZWxmLl9ydW5fdGhyb3VnaF90YXNrKGNvbW1pdF9x
dWV1ZSwgZXhwZWN0ZWRfbG9ncykKLQotICAgIGRlZiB0ZXN0X2ZhaWxlZF9hcmNoaXZlKHNlbGYp
OgotICAgICAgICBjb21taXRfcXVldWUgPSBNb2NrQ29tbWl0UXVldWUoWwotICAgICAgICAgICAg
Tm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBOb25lLAogICAgICAgICAgICAg
Tm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBTY3JpcHRFcnJvcigiTU9DSyB0
ZXN0cyBmYWlsdXJlIiksCisgICAgICAgICAgICBHb2xkZW5TY3JpcHRFcnJvcigiTU9DSyBsYW5k
IGZhaWx1cmUiKSwKICAgICAgICAgXSkKLSAgICAgICAgIyBJdCdzIHBvc3NpYmxlIGRlbGVnYXRl
IHRvIGZhaWwgdG8gYXJjaGl2ZSBsYXlvdXQgdGVzdHMsIGRvbid0IHRyeSB0byByZXBvcnQKLSAg
ICAgICAgIyBmbGFreSB0ZXN0cyB3aGVuIHRoYXQgaGFwcGVucy4KLSAgICAgICAgY29tbWl0X3F1
ZXVlLmFyY2hpdmVfbGFzdF90ZXN0X3Jlc3VsdHMgPSBsYW1iZGEgcGF0Y2g6IE5vbmUKICAgICAg
ICAgZXhwZWN0ZWRfbG9ncyA9ICIiInJ1bl93ZWJraXRfcGF0Y2g6IFsnY2xlYW4nXQogY29tbWFu
ZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQ2xlYW5lZCB3b3JraW5nIGRpcmVjdG9yeScgcGF0
Y2g9JzEwMDAwJwogcnVuX3dlYmtpdF9wYXRjaDogWyd1cGRhdGUnXQpAQCAtMzY5LDI3MyArMzUw
LDY5IEBAIGNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0NoYW5nZUxvZyB2YWxpZGF0
ZWQnIHBhdGNoPScxMDAwMCcKIHJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVpbGQnLCAnLS1uby1jbGVh
bicsICctLW5vLXVwZGF0ZScsICctLWJ1aWxkLXN0eWxlPWJvdGgnXQogY29tbWFuZF9wYXNzZWQ6
IHN1Y2Nlc3NfbWVzc2FnZT0nQnVpbHQgcGF0Y2gnIHBhdGNoPScxMDAwMCcKIHJ1bl93ZWJraXRf
cGF0Y2g6IFsnYnVpbGQtYW5kLXRlc3QnLCAnLS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICct
LXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUnXQotY29tbWFuZF9mYWlsZWQ6IGZhaWx1cmVfbWVz
c2FnZT0nUGF0Y2ggZG9lcyBub3QgcGFzcyB0ZXN0cycgc2NyaXB0X2Vycm9yPSdNT0NLIHRlc3Rz
IGZhaWx1cmUnIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVpbGQtYW5kLXRl
c3QnLCAnLS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICctLXRlc3QnLCAnLS1ub24taW50ZXJh
Y3RpdmUnXQogY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nUGFzc2VkIHRlc3RzJyBw
YXRjaD0nMTAwMDAnCiBydW5fd2Via2l0X3BhdGNoOiBbJ2xhbmQtYXR0YWNobWVudCcsICctLWZv
cmNlLWNsZWFuJywgJy0tbm9uLWludGVyYWN0aXZlJywgJy0tcGFyZW50LWNvbW1hbmQ9Y29tbWl0
LXF1ZXVlJywgMTAwMDBdCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdMYW5kZWQg
cGF0Y2gnIHBhdGNoPScxMDAwMCcKK2NvbW1hbmRfZmFpbGVkOiBmYWlsdXJlX21lc3NhZ2U9J1Vu
YWJsZSB0byBsYW5kIHBhdGNoJyBzY3JpcHRfZXJyb3I9J01PQ0sgbGFuZCBmYWlsdXJlJyBwYXRj
aD0nMTAwMDAnCiAiIiIKLSAgICAgICAgc2VsZi5fcnVuX3Rocm91Z2hfdGFzayhjb21taXRfcXVl
dWUsIGV4cGVjdGVkX2xvZ3MpCisgICAgICAgICMgRklYTUU6IFRoaXMgc2hvdWxkIHJlYWxseSBi
ZSBleHBlY3RfcmV0cnk9VHJ1ZSBmb3IgYSBiZXR0ZXIgdXNlciBleHBlcmlhbmNlLgorICAgICAg
ICBzZWxmLl9ydW5fdGhyb3VnaF90YXNrKGNvbW1pdF9xdWV1ZSwgZXhwZWN0ZWRfbG9ncywgR29s
ZGVuU2NyaXB0RXJyb3IpCiAKLSAgICBkZWYgdGVzdF9zaW1wbGVfZmxha3lfdGVzdF9mYWlsdXJl
KHNlbGYpOgotICAgICAgICBjb21taXRfcXVldWUgPSBGYWlsaW5nVGVzdENvbW1pdFF1ZXVlKFsK
LSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBOb25lLAotICAgICAgICAgICAgTm9uZSwK
LSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBOb25lLAotICAgICAgICAgICAgU2NyaXB0
RXJyb3IoIk1PQ0sgdGVzdCBmYWlsdXJlIiksCi0gICAgICAgICAgICBOb25lLAotICAgICAgICBd
LCBbCi0gICAgICAgICAgICBbImZvby5odG1sIl0sCi0gICAgICAgICAgICBbXSwKLSAgICAgICAg
ICAgIFtdLAotICAgICAgICBdKQorICAgIGRlZiB0ZXN0X2ZhaWxlZF9hcmNoaXZlKHNlbGYpOgor
ICAgICAgICBjb21taXRfcXVldWUgPSBNb2NrU2ltcGxlVGVzdFBsYW5Db21taXRRdWV1ZSgKKyAg
ICAgICAgICAgIGZpcnN0X3Rlc3RfZmFpbHVyZXM9WyJGYWlsMSJdLAorICAgICAgICAgICAgc2Vj
b25kX3Rlc3RfZmFpbHVyZXM9W10sCisgICAgICAgICAgICBjbGVhbl90ZXN0X2ZhaWx1cmVzPVtd
KQogCi0gICAgICAgIHNlbGYubWF4RGlmZiA9IE5vbmUKKyAgICAgICAgIyBJdCdzIHBvc3NpYmxl
IGZvciB0aGUgZGVsZWdhdGUgdG8gZmFpbCB0byBhcmNoaXZlIGxheW91dCB0ZXN0cywKKyAgICAg
ICAgIyBidXQgd2Ugc2hvdWxkbid0IHRyeSB0byByZXBvcnQgZmxha3kgdGVzdHMgd2hlbiB0aGF0
IGhhcHBlbnMuCisgICAgICAgIGNvbW1pdF9xdWV1ZS5hcmNoaXZlX2xhc3RfdGVzdF9yZXN1bHRz
ID0gbGFtYmRhIHBhdGNoOiBOb25lCiAKLSAgICAgICAgZXhwZWN0ZWRfbG9ncyA9ICIiInJ1bl93
ZWJraXRfcGF0Y2g6IFsnY2xlYW4nXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0n
Q2xlYW5lZCB3b3JraW5nIGRpcmVjdG9yeScgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRj
aDogWyd1cGRhdGUnXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nVXBkYXRlZCB3
b3JraW5nIGRpcmVjdG9yeScgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydhcHBs
eS1hdHRhY2htZW50JywgJy0tbm8tdXBkYXRlJywgJy0tbm9uLWludGVyYWN0aXZlJywgMTAwMDBd
Ci1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdBcHBsaWVkIHBhdGNoJyBwYXRjaD0n
MTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ3ZhbGlkYXRlLWNoYW5nZWxvZycsICctLWNoZWNr
LW9vcHMnLCAnLS1ub24taW50ZXJhY3RpdmUnLCAxMDAwMF0KLWNvbW1hbmRfcGFzc2VkOiBzdWNj
ZXNzX21lc3NhZ2U9J0NoYW5nZUxvZyB2YWxpZGF0ZWQnIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJr
aXRfcGF0Y2g6IFsnYnVpbGQnLCAnLS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICctLWJ1aWxk
LXN0eWxlPWJvdGgnXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQnVpbHQgcGF0
Y2gnIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVpbGQtYW5kLXRlc3QnLCAn
LS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICctLXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUn
XQotY29tbWFuZF9mYWlsZWQ6IGZhaWx1cmVfbWVzc2FnZT0nUGF0Y2ggZG9lcyBub3QgcGFzcyB0
ZXN0cycgc2NyaXB0X2Vycm9yPSdNT0NLIHRlc3QgZmFpbHVyZScgcGF0Y2g9JzEwMDAwJwotYXJj
aGl2ZV9sYXN0X3Rlc3RfcmVzdWx0czogcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDog
WydidWlsZC1hbmQtdGVzdCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0tdGVzdCcs
ICctLW5vbi1pbnRlcmFjdGl2ZSddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdQ
YXNzZWQgdGVzdHMnIHBhdGNoPScxMDAwMCcKLXJlcG9ydF9mbGFreV90ZXN0czogcGF0Y2g9JzEw
MDAwJyBmbGFreV90ZXN0cz0nWydmb28uaHRtbCddJyBhcmNoaXZlPSdtb2NrLWFyY2hpdmUtMTAw
MDAuemlwJwotcnVuX3dlYmtpdF9wYXRjaDogWydsYW5kLWF0dGFjaG1lbnQnLCAnLS1mb3JjZS1j
bGVhbicsICctLW5vbi1pbnRlcmFjdGl2ZScsICctLXBhcmVudC1jb21tYW5kPWNvbW1pdC1xdWV1
ZScsIDEwMDAwXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nTGFuZGVkIHBhdGNo
JyBwYXRjaD0nMTAwMDAnCi0iIiIKLSAgICAgICAgdG9vbCA9IE1vY2tUb29sKGxvZ19leGVjdXRp
dmU9VHJ1ZSkKLSAgICAgICAgcGF0Y2ggPSB0b29sLmJ1Z3MuZmV0Y2hfYXR0YWNobWVudCgxMDAw
MCkKLSAgICAgICAgdGFzayA9IENvbW1pdFF1ZXVlVGFzayhjb21taXRfcXVldWUsIHBhdGNoKQot
ICAgICAgICBzdWNjZXNzID0gT3V0cHV0Q2FwdHVyZSgpLmFzc2VydF9vdXRwdXRzKHNlbGYsIHRh
c2sucnVuLCBleHBlY3RlZF9sb2dzPWV4cGVjdGVkX2xvZ3MpCi0gICAgICAgIHNlbGYuYXNzZXJ0
VHJ1ZShzdWNjZXNzKQorICAgICAgICBzZWxmLl9ydW5fYW5kX2V4cGVjdF9wYXRjaF9hbmFseXNp
c19yZXN1bHQoY29tbWl0X3F1ZXVlLCBQYXRjaEFuYWx5c2lzUmVzdWx0LlBBU1MpCiAKICAgICBk
ZWYgdGVzdF9kb3VibGVfZmxha3lfdGVzdF9mYWlsdXJlKHNlbGYpOgotICAgICAgICBjb21taXRf
cXVldWUgPSBGYWlsaW5nVGVzdENvbW1pdFF1ZXVlKFsKLSAgICAgICAgICAgIE5vbmUsCi0gICAg
ICAgICAgICBOb25lLAotICAgICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAg
ICAgICAgICBOb25lLAotICAgICAgICAgICAgU2NyaXB0RXJyb3IoIk1PQ0sgdGVzdCBmYWlsdXJl
IiksCi0gICAgICAgICAgICBTY3JpcHRFcnJvcigiTU9DSyB0ZXN0IGZhaWx1cmUgYWdhaW4iKSwK
LSAgICAgICAgXSwgWwotICAgICAgICAgICAgWyJmb28uaHRtbCJdLAotICAgICAgICAgICAgWyJi
YXIuaHRtbCJdLAotICAgICAgICAgICAgWyJmb28uaHRtbCJdLAotICAgICAgICBdKQotICAgICAg
ICAjIFRoZSAoc3VidGxlKSBwb2ludCBvZiB0aGlzIHRlc3QgaXMgdGhhdCByZXBvcnRfZmxha3lf
dGVzdHMgZG9lcyBub3QgYXBwZWFyCi0gICAgICAgICMgaW4gdGhlIGV4cGVjdGVkX2xvZ3MgZm9y
IHRoaXMgcnVuLgorICAgICAgICBjb21taXRfcXVldWUgPSBNb2NrU2ltcGxlVGVzdFBsYW5Db21t
aXRRdWV1ZSgKKyAgICAgICAgICAgIGZpcnN0X3Rlc3RfZmFpbHVyZXM9WyJGYWlsMSJdLAorICAg
ICAgICAgICAgc2Vjb25kX3Rlc3RfZmFpbHVyZXM9WyJGYWlsMiJdLAorICAgICAgICAgICAgY2xl
YW5fdGVzdF9mYWlsdXJlcz1bIkZhaWwxIl0pCisKKyAgICAgICAgIyBUaGUgKHN1YnRsZSkgcG9p
bnQgb2YgdGhpcyB0ZXN0IGlzIHRoYXQgcmVwb3J0X2ZsYWt5X3Rlc3RzIGRvZXMgbm90IGdldAor
ICAgICAgICAjIGNhbGxlZCBmb3IgdGhpcyBydW4uCiAgICAgICAgICMgTm90ZSBhbHNvIHRoYXQg
dGhlcmUgaXMgbm8gYXR0ZW1wdCB0byBydW4gdGhlIHRlc3RzIHcvbyB0aGUgcGF0Y2guCi0gICAg
ICAgIGV4cGVjdGVkX2xvZ3MgPSAiIiJydW5fd2Via2l0X3BhdGNoOiBbJ2NsZWFuJ10KLWNvbW1h
bmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0NsZWFuZWQgd29ya2luZyBkaXJlY3RvcnknIHBh
dGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsndXBkYXRlJ10KLWNvbW1hbmRfcGFzc2Vk
OiBzdWNjZXNzX21lc3NhZ2U9J1VwZGF0ZWQgd29ya2luZyBkaXJlY3RvcnknIHBhdGNoPScxMDAw
MCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYXBwbHktYXR0YWNobWVudCcsICctLW5vLXVwZGF0ZScs
ICctLW5vbi1pbnRlcmFjdGl2ZScsIDEwMDAwXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVz
c2FnZT0nQXBwbGllZCBwYXRjaCcgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWyd2
YWxpZGF0ZS1jaGFuZ2Vsb2cnLCAnLS1jaGVjay1vb3BzJywgJy0tbm9uLWludGVyYWN0aXZlJywg
MTAwMDBdCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdDaGFuZ2VMb2cgdmFsaWRh
dGVkJyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2J1aWxkJywgJy0tbm8tY2xl
YW4nLCAnLS1uby11cGRhdGUnLCAnLS1idWlsZC1zdHlsZT1ib3RoJ10KLWNvbW1hbmRfcGFzc2Vk
OiBzdWNjZXNzX21lc3NhZ2U9J0J1aWx0IHBhdGNoJyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0
X3BhdGNoOiBbJ2J1aWxkLWFuZC10ZXN0JywgJy0tbm8tY2xlYW4nLCAnLS1uby11cGRhdGUnLCAn
LS10ZXN0JywgJy0tbm9uLWludGVyYWN0aXZlJ10KLWNvbW1hbmRfZmFpbGVkOiBmYWlsdXJlX21l
c3NhZ2U9J1BhdGNoIGRvZXMgbm90IHBhc3MgdGVzdHMnIHNjcmlwdF9lcnJvcj0nTU9DSyB0ZXN0
IGZhaWx1cmUnIHBhdGNoPScxMDAwMCcKLWFyY2hpdmVfbGFzdF90ZXN0X3Jlc3VsdHM6IHBhdGNo
PScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVpbGQtYW5kLXRlc3QnLCAnLS1uby1jbGVh
bicsICctLW5vLXVwZGF0ZScsICctLXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUnXQotY29tbWFu
ZF9mYWlsZWQ6IGZhaWx1cmVfbWVzc2FnZT0nUGF0Y2ggZG9lcyBub3QgcGFzcyB0ZXN0cycgc2Ny
aXB0X2Vycm9yPSdNT0NLIHRlc3QgZmFpbHVyZSBhZ2FpbicgcGF0Y2g9JzEwMDAwJwotYXJjaGl2
ZV9sYXN0X3Rlc3RfcmVzdWx0czogcGF0Y2g9JzEwMDAwJwotIiIiCi0gICAgICAgIHRvb2wgPSBN
b2NrVG9vbChsb2dfZXhlY3V0aXZlPVRydWUpCi0gICAgICAgIHBhdGNoID0gdG9vbC5idWdzLmZl
dGNoX2F0dGFjaG1lbnQoMTAwMDApCi0gICAgICAgIHRhc2sgPSBDb21taXRRdWV1ZVRhc2soY29t
bWl0X3F1ZXVlLCBwYXRjaCkKLSAgICAgICAgc3VjY2VzcyA9IE91dHB1dENhcHR1cmUoKS5hc3Nl
cnRfb3V0cHV0cyhzZWxmLCB0YXNrLnJ1biwgZXhwZWN0ZWRfbG9ncz1leHBlY3RlZF9sb2dzKQot
ICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHN1Y2Nlc3MpCisgICAgICAgIHNlbGYuX3J1bl9hbmRf
ZXhwZWN0X3BhdGNoX2FuYWx5c2lzX3Jlc3VsdChjb21taXRfcXVldWUsIFBhdGNoQW5hbHlzaXNS
ZXN1bHQuREVGRVIpCiAKICAgICBkZWYgdGVzdF90ZXN0X2ZhaWx1cmUoc2VsZik6Ci0gICAgICAg
IGNvbW1pdF9xdWV1ZSA9IE1vY2tDb21taXRRdWV1ZShbCi0gICAgICAgICAgICBOb25lLAotICAg
ICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBOb25lLAotICAg
ICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIEdvbGRlblNjcmlwdEVycm9yKCJNT0NLIHRlc3Qg
ZmFpbHVyZSIpLAotICAgICAgICAgICAgU2NyaXB0RXJyb3IoIk1PQ0sgdGVzdCBmYWlsdXJlIGFn
YWluIiksCi0gICAgICAgIF0pCi0gICAgICAgIGV4cGVjdGVkX2xvZ3MgPSAiIiJydW5fd2Via2l0
X3BhdGNoOiBbJ2NsZWFuJ10KLWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0NsZWFu
ZWQgd29ya2luZyBkaXJlY3RvcnknIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsn
dXBkYXRlJ10KLWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J1VwZGF0ZWQgd29ya2lu
ZyBkaXJlY3RvcnknIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYXBwbHktYXR0
YWNobWVudCcsICctLW5vLXVwZGF0ZScsICctLW5vbi1pbnRlcmFjdGl2ZScsIDEwMDAwXQotY29t
bWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQXBwbGllZCBwYXRjaCcgcGF0Y2g9JzEwMDAw
JwotcnVuX3dlYmtpdF9wYXRjaDogWyd2YWxpZGF0ZS1jaGFuZ2Vsb2cnLCAnLS1jaGVjay1vb3Bz
JywgJy0tbm9uLWludGVyYWN0aXZlJywgMTAwMDBdCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19t
ZXNzYWdlPSdDaGFuZ2VMb2cgdmFsaWRhdGVkJyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3Bh
dGNoOiBbJ2J1aWxkJywgJy0tbm8tY2xlYW4nLCAnLS1uby11cGRhdGUnLCAnLS1idWlsZC1zdHls
ZT1ib3RoJ10KLWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0J1aWx0IHBhdGNoJyBw
YXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2J1aWxkLWFuZC10ZXN0JywgJy0tbm8t
Y2xlYW4nLCAnLS1uby11cGRhdGUnLCAnLS10ZXN0JywgJy0tbm9uLWludGVyYWN0aXZlJ10KLWNv
bW1hbmRfZmFpbGVkOiBmYWlsdXJlX21lc3NhZ2U9J1BhdGNoIGRvZXMgbm90IHBhc3MgdGVzdHMn
IHNjcmlwdF9lcnJvcj0nTU9DSyB0ZXN0IGZhaWx1cmUnIHBhdGNoPScxMDAwMCcKLWFyY2hpdmVf
bGFzdF90ZXN0X3Jlc3VsdHM6IHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVp
bGQtYW5kLXRlc3QnLCAnLS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICctLXRlc3QnLCAnLS1u
b24taW50ZXJhY3RpdmUnXQotY29tbWFuZF9mYWlsZWQ6IGZhaWx1cmVfbWVzc2FnZT0nUGF0Y2gg
ZG9lcyBub3QgcGFzcyB0ZXN0cycgc2NyaXB0X2Vycm9yPSdNT0NLIHRlc3QgZmFpbHVyZSBhZ2Fp
bicgcGF0Y2g9JzEwMDAwJwotYXJjaGl2ZV9sYXN0X3Rlc3RfcmVzdWx0czogcGF0Y2g9JzEwMDAw
JwotcnVuX3dlYmtpdF9wYXRjaDogWydidWlsZC1hbmQtdGVzdCcsICctLWZvcmNlLWNsZWFuJywg
Jy0tbm8tdXBkYXRlJywgJy0tYnVpbGQnLCAnLS10ZXN0JywgJy0tbm9uLWludGVyYWN0aXZlJ10K
LWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0FibGUgdG8gcGFzcyB0ZXN0cyB3aXRo
b3V0IHBhdGNoJyBwYXRjaD0nMTAwMDAnCi0iIiIKLSAgICAgICAgc2VsZi5fcnVuX3Rocm91Z2hf
dGFzayhjb21taXRfcXVldWUsIGV4cGVjdGVkX2xvZ3MsIEdvbGRlblNjcmlwdEVycm9yKQorICAg
ICAgICBjb21taXRfcXVldWUgPSBNb2NrU2ltcGxlVGVzdFBsYW5Db21taXRRdWV1ZSgKKyAgICAg
ICAgICAgIGZpcnN0X3Rlc3RfZmFpbHVyZXM9WyJGYWlsMSJdLAorICAgICAgICAgICAgc2Vjb25k
X3Rlc3RfZmFpbHVyZXM9WyJGYWlsMSJdLAorICAgICAgICAgICAgY2xlYW5fdGVzdF9mYWlsdXJl
cz1bXSkKKworICAgICAgICBzZWxmLl9ydW5fYW5kX2V4cGVjdF9wYXRjaF9hbmFseXNpc19yZXN1
bHQoY29tbWl0X3F1ZXVlLCBQYXRjaEFuYWx5c2lzUmVzdWx0LkZBSUwsIGV4cGVjdF9jbGVhbl90
ZXN0c190b19ydW49VHJ1ZSwgZXhwZWN0ZWRfZmFpbHVyZV9zdGF0dXNfaWQ9MSkKIAogICAgIGRl
ZiB0ZXN0X3JlZF90ZXN0X2ZhaWx1cmUoc2VsZik6Ci0gICAgICAgIGNvbW1pdF9xdWV1ZSA9IEZh
aWxpbmdUZXN0Q29tbWl0UXVldWUoWwotICAgICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5v
bmUsCi0gICAgICAgICAgICBOb25lLAotICAgICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5v
bmUsCi0gICAgICAgICAgICBTY3JpcHRFcnJvcigiTU9DSyB0ZXN0IGZhaWx1cmUiKSwKLSAgICAg
ICAgICAgIFNjcmlwdEVycm9yKCJNT0NLIHRlc3QgZmFpbHVyZSBhZ2FpbiIpLAotICAgICAgICAg
ICAgU2NyaXB0RXJyb3IoIk1PQ0sgY2xlYW4gdGVzdCBmYWlsdXJlIiksCi0gICAgICAgIF0sIFsK
LSAgICAgICAgICAgIFsiZm9vLmh0bWwiXSwKLSAgICAgICAgICAgIFsiZm9vLmh0bWwiXSwKLSAg
ICAgICAgICAgIFsiZm9vLmh0bWwiXSwKLSAgICAgICAgXSkKKyAgICAgICAgY29tbWl0X3F1ZXVl
ID0gTW9ja1NpbXBsZVRlc3RQbGFuQ29tbWl0UXVldWUoCisgICAgICAgICAgICBmaXJzdF90ZXN0
X2ZhaWx1cmVzPVsiRmFpbDEiXSwKKyAgICAgICAgICAgIHNlY29uZF90ZXN0X2ZhaWx1cmVzPVsi
RmFpbDEiXSwKKyAgICAgICAgICAgIGNsZWFuX3Rlc3RfZmFpbHVyZXM9WyJGYWlsMSJdKQogCi0g
ICAgICAgICMgVGVzdHMgYWx3YXlzIGZhaWwsIGFuZCBhbHdheXMgcmV0dXJuIHRoZSBzYW1lIHJl
c3VsdHMsIGJ1dCB3ZQotICAgICAgICAjIHNob3VsZCBzdGlsbCBiZSBhYmxlIHRvIGxhbmQgaW4g
dGhpcyBjYXNlIQotICAgICAgICBleHBlY3RlZF9sb2dzID0gIiIicnVuX3dlYmtpdF9wYXRjaDog
WydjbGVhbiddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdDbGVhbmVkIHdvcmtp
bmcgZGlyZWN0b3J5JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ3VwZGF0ZSdd
Ci1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdVcGRhdGVkIHdvcmtpbmcgZGlyZWN0
b3J5JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2FwcGx5LWF0dGFjaG1lbnQn
LCAnLS1uby11cGRhdGUnLCAnLS1ub24taW50ZXJhY3RpdmUnLCAxMDAwMF0KLWNvbW1hbmRfcGFz
c2VkOiBzdWNjZXNzX21lc3NhZ2U9J0FwcGxpZWQgcGF0Y2gnIHBhdGNoPScxMDAwMCcKLXJ1bl93
ZWJraXRfcGF0Y2g6IFsndmFsaWRhdGUtY2hhbmdlbG9nJywgJy0tY2hlY2stb29wcycsICctLW5v
bi1pbnRlcmFjdGl2ZScsIDEwMDAwXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0n
Q2hhbmdlTG9nIHZhbGlkYXRlZCcgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydi
dWlsZCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0tYnVpbGQtc3R5bGU9Ym90aCdd
Ci1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdCdWlsdCBwYXRjaCcgcGF0Y2g9JzEw
MDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydidWlsZC1hbmQtdGVzdCcsICctLW5vLWNsZWFuJywg
Jy0tbm8tdXBkYXRlJywgJy0tdGVzdCcsICctLW5vbi1pbnRlcmFjdGl2ZSddCi1jb21tYW5kX2Zh
aWxlZDogZmFpbHVyZV9tZXNzYWdlPSdQYXRjaCBkb2VzIG5vdCBwYXNzIHRlc3RzJyBzY3JpcHRf
ZXJyb3I9J01PQ0sgdGVzdCBmYWlsdXJlJyBwYXRjaD0nMTAwMDAnCi1hcmNoaXZlX2xhc3RfdGVz
dF9yZXN1bHRzOiBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2J1aWxkLWFuZC10
ZXN0JywgJy0tbm8tY2xlYW4nLCAnLS1uby11cGRhdGUnLCAnLS10ZXN0JywgJy0tbm9uLWludGVy
YWN0aXZlJ10KLWNvbW1hbmRfZmFpbGVkOiBmYWlsdXJlX21lc3NhZ2U9J1BhdGNoIGRvZXMgbm90
IHBhc3MgdGVzdHMnIHNjcmlwdF9lcnJvcj0nTU9DSyB0ZXN0IGZhaWx1cmUgYWdhaW4nIHBhdGNo
PScxMDAwMCcKLWFyY2hpdmVfbGFzdF90ZXN0X3Jlc3VsdHM6IHBhdGNoPScxMDAwMCcKLXJ1bl93
ZWJraXRfcGF0Y2g6IFsnYnVpbGQtYW5kLXRlc3QnLCAnLS1mb3JjZS1jbGVhbicsICctLW5vLXVw
ZGF0ZScsICctLWJ1aWxkJywgJy0tdGVzdCcsICctLW5vbi1pbnRlcmFjdGl2ZSddCi1jb21tYW5k
X2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdlPSdVbmFibGUgdG8gcGFzcyB0ZXN0cyB3aXRob3V0IHBh
dGNoICh0cmVlIGlzIHJlZD8pJyBzY3JpcHRfZXJyb3I9J01PQ0sgY2xlYW4gdGVzdCBmYWlsdXJl
JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2xhbmQtYXR0YWNobWVudCcsICct
LWZvcmNlLWNsZWFuJywgJy0tbm9uLWludGVyYWN0aXZlJywgJy0tcGFyZW50LWNvbW1hbmQ9Y29t
bWl0LXF1ZXVlJywgMTAwMDBdCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdMYW5k
ZWQgcGF0Y2gnIHBhdGNoPScxMDAwMCcKLSIiIgotICAgICAgICBzZWxmLl9ydW5fdGhyb3VnaF90
YXNrKGNvbW1pdF9xdWV1ZSwgZXhwZWN0ZWRfbG9ncykKKyAgICAgICAgc2VsZi5fcnVuX2FuZF9l
eHBlY3RfcGF0Y2hfYW5hbHlzaXNfcmVzdWx0KGNvbW1pdF9xdWV1ZSwgUGF0Y2hBbmFseXNpc1Jl
c3VsdC5QQVNTLCBleHBlY3RfY2xlYW5fdGVzdHNfdG9fcnVuPVRydWUpCiAKICAgICBkZWYgdGVz
dF92ZXJ5X3JlZF90cmVlX3JldHJ5KHNlbGYpOgogICAgICAgICBsb3RzX29mX2ZhaWxpbmdfdGVz
dHMgPSBtYXAobGFtYmRhIG51bTogInRlc3QtJXMuaHRtbCIgJSBudW0sIHJhbmdlKDAsIDEwMCkp
Ci0gICAgICAgIGNvbW1pdF9xdWV1ZSA9IEZhaWxpbmdUZXN0Q29tbWl0UXVldWUoWwotICAgICAg
ICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBOb25lLAotICAgICAg
ICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBTY3JpcHRFcnJvcigi
TU9DSyB0ZXN0IGZhaWx1cmUiKSwKLSAgICAgICAgICAgIFNjcmlwdEVycm9yKCJNT0NLIGNsZWFu
IHRlc3QgZmFpbHVyZSIpLAotICAgICAgICBdLCBbCi0gICAgICAgICAgICBsb3RzX29mX2ZhaWxp
bmdfdGVzdHMsCi0gICAgICAgICAgICBsb3RzX29mX2ZhaWxpbmdfdGVzdHMsCi0gICAgICAgIF0p
CisgICAgICAgIGNvbW1pdF9xdWV1ZSA9IE1vY2tTaW1wbGVUZXN0UGxhbkNvbW1pdFF1ZXVlKAor
ICAgICAgICAgICAgZmlyc3RfdGVzdF9mYWlsdXJlcz1sb3RzX29mX2ZhaWxpbmdfdGVzdHMsCisg
ICAgICAgICAgICBzZWNvbmRfdGVzdF9mYWlsdXJlcz1sb3RzX29mX2ZhaWxpbmdfdGVzdHMsCisg
ICAgICAgICAgICBjbGVhbl90ZXN0X2ZhaWx1cmVzPWxvdHNfb2ZfZmFpbGluZ190ZXN0cykKIAot
ICAgICAgICAjIFRlc3RzIGFsd2F5cyBmYWlsLCBhbmQgcmV0dXJuIHNvIG1hbnkgZmFpbHVyZXMg
dGhhdCB3ZSBkbyBub3QKLSAgICAgICAgIyB0cnVzdCB0aGUgcmVzdWx0cyAoc2VlIEV4cGVjdGVk
RmFpbHVyZXMuX2Nhbl90cnVzdF9yZXN1bHRzKSBzbyB3ZQotICAgICAgICAjIGp1c3QgZ2l2ZSB1
cCBhbmQgcmV0cnkgdGhlIHBhdGNoLgotICAgICAgICBleHBlY3RlZF9sb2dzID0gIiIicnVuX3dl
YmtpdF9wYXRjaDogWydjbGVhbiddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdD
bGVhbmVkIHdvcmtpbmcgZGlyZWN0b3J5JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNo
OiBbJ3VwZGF0ZSddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdVcGRhdGVkIHdv
cmtpbmcgZGlyZWN0b3J5JyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBbJ2FwcGx5
LWF0dGFjaG1lbnQnLCAnLS1uby11cGRhdGUnLCAnLS1ub24taW50ZXJhY3RpdmUnLCAxMDAwMF0K
LWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0FwcGxpZWQgcGF0Y2gnIHBhdGNoPScx
MDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsndmFsaWRhdGUtY2hhbmdlbG9nJywgJy0tY2hlY2st
b29wcycsICctLW5vbi1pbnRlcmFjdGl2ZScsIDEwMDAwXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nl
c3NfbWVzc2FnZT0nQ2hhbmdlTG9nIHZhbGlkYXRlZCcgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtp
dF9wYXRjaDogWydidWlsZCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0tYnVpbGQt
c3R5bGU9Ym90aCddCi1jb21tYW5kX3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdCdWlsdCBwYXRj
aCcgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydidWlsZC1hbmQtdGVzdCcsICct
LW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0tdGVzdCcsICctLW5vbi1pbnRlcmFjdGl2ZSdd
Ci1jb21tYW5kX2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdlPSdQYXRjaCBkb2VzIG5vdCBwYXNzIHRl
c3RzJyBzY3JpcHRfZXJyb3I9J01PQ0sgdGVzdCBmYWlsdXJlJyBwYXRjaD0nMTAwMDAnCi1hcmNo
aXZlX2xhc3RfdGVzdF9yZXN1bHRzOiBwYXRjaD0nMTAwMDAnCi1ydW5fd2Via2l0X3BhdGNoOiBb
J2J1aWxkLWFuZC10ZXN0JywgJy0tZm9yY2UtY2xlYW4nLCAnLS1uby11cGRhdGUnLCAnLS1idWls
ZCcsICctLXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUnXQotY29tbWFuZF9mYWlsZWQ6IGZhaWx1
cmVfbWVzc2FnZT0nVW5hYmxlIHRvIHBhc3MgdGVzdHMgd2l0aG91dCBwYXRjaCAodHJlZSBpcyBy
ZWQ/KScgc2NyaXB0X2Vycm9yPSdNT0NLIGNsZWFuIHRlc3QgZmFpbHVyZScgcGF0Y2g9JzEwMDAw
JwotIiIiCi0gICAgICAgIHNlbGYuX3J1bl90aHJvdWdoX3Rhc2soY29tbWl0X3F1ZXVlLCBleHBl
Y3RlZF9sb2dzLCBleHBlY3RfcmV0cnk9VHJ1ZSkKKyAgICAgICAgc2VsZi5fcnVuX2FuZF9leHBl
Y3RfcGF0Y2hfYW5hbHlzaXNfcmVzdWx0KGNvbW1pdF9xdWV1ZSwgUGF0Y2hBbmFseXNpc1Jlc3Vs
dC5ERUZFUiwgZXhwZWN0X2NsZWFuX3Rlc3RzX3RvX3J1bj1UcnVlKQogCiAgICAgZGVmIHRlc3Rf
cmVkX3RyZWVfcGF0Y2hfcmVqZWN0aW9uKHNlbGYpOgotICAgICAgICBjb21taXRfcXVldWUgPSBG
YWlsaW5nVGVzdENvbW1pdFF1ZXVlKFsKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBO
b25lLAotICAgICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUsCi0gICAgICAgICAgICBO
b25lLAotICAgICAgICAgICAgR29sZGVuU2NyaXB0RXJyb3IoIk1PQ0sgdGVzdCBmYWlsdXJlIiks
Ci0gICAgICAgICAgICBTY3JpcHRFcnJvcigiTU9DSyB0ZXN0IGZhaWx1cmUgYWdhaW4iKSwKLSAg
ICAgICAgICAgIFNjcmlwdEVycm9yKCJNT0NLIGNsZWFuIHRlc3QgZmFpbHVyZSIpLAotICAgICAg
ICBdLCBbCi0gICAgICAgICAgICBbImZvby5odG1sIiwgImJhci5odG1sIl0sCi0gICAgICAgICAg
ICBbImZvby5odG1sIiwgImJhci5odG1sIl0sCi0gICAgICAgICAgICBbImZvby5odG1sIl0sCi0g
ICAgICAgIF0pCisgICAgICAgIGNvbW1pdF9xdWV1ZSA9IE1vY2tTaW1wbGVUZXN0UGxhbkNvbW1p
dFF1ZXVlKAorICAgICAgICAgICAgZmlyc3RfdGVzdF9mYWlsdXJlcz1bIkZhaWwxIiwgIkZhaWwy
Il0sCisgICAgICAgICAgICBzZWNvbmRfdGVzdF9mYWlsdXJlcz1bIkZhaWwxIiwgIkZhaWwyIl0s
CisgICAgICAgICAgICBjbGVhbl90ZXN0X2ZhaWx1cmVzPVsiRmFpbDEiXSkKIAotICAgICAgICAj
IFRlc3RzIGFsd2F5cyBmYWlsLCBidXQgdGhlIGNsZWFuIHRyZWUgb25seSBmYWlscyBvbmUgdGVz
dAotICAgICAgICAjIHdoaWxlIHRoZSBwYXRjaCBmYWlscyB0d28uICBTbyB3ZSBzaG91bGQgcmVq
ZWN0IHRoZSBwYXRjaCEKLSAgICAgICAgZXhwZWN0ZWRfbG9ncyA9ICIiInJ1bl93ZWJraXRfcGF0
Y2g6IFsnY2xlYW4nXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQ2xlYW5lZCB3
b3JraW5nIGRpcmVjdG9yeScgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWyd1cGRh
dGUnXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nVXBkYXRlZCB3b3JraW5nIGRp
cmVjdG9yeScgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydhcHBseS1hdHRhY2ht
ZW50JywgJy0tbm8tdXBkYXRlJywgJy0tbm9uLWludGVyYWN0aXZlJywgMTAwMDBdCi1jb21tYW5k
X3Bhc3NlZDogc3VjY2Vzc19tZXNzYWdlPSdBcHBsaWVkIHBhdGNoJyBwYXRjaD0nMTAwMDAnCi1y
dW5fd2Via2l0X3BhdGNoOiBbJ3ZhbGlkYXRlLWNoYW5nZWxvZycsICctLWNoZWNrLW9vcHMnLCAn
LS1ub24taW50ZXJhY3RpdmUnLCAxMDAwMF0KLWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3Nh
Z2U9J0NoYW5nZUxvZyB2YWxpZGF0ZWQnIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6
IFsnYnVpbGQnLCAnLS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICctLWJ1aWxkLXN0eWxlPWJv
dGgnXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQnVpbHQgcGF0Y2gnIHBhdGNo
PScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVpbGQtYW5kLXRlc3QnLCAnLS1uby1jbGVh
bicsICctLW5vLXVwZGF0ZScsICctLXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUnXQotY29tbWFu
ZF9mYWlsZWQ6IGZhaWx1cmVfbWVzc2FnZT0nUGF0Y2ggZG9lcyBub3QgcGFzcyB0ZXN0cycgc2Ny
aXB0X2Vycm9yPSdNT0NLIHRlc3QgZmFpbHVyZScgcGF0Y2g9JzEwMDAwJwotYXJjaGl2ZV9sYXN0
X3Rlc3RfcmVzdWx0czogcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydidWlsZC1h
bmQtdGVzdCcsICctLW5vLWNsZWFuJywgJy0tbm8tdXBkYXRlJywgJy0tdGVzdCcsICctLW5vbi1p
bnRlcmFjdGl2ZSddCi1jb21tYW5kX2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdlPSdQYXRjaCBkb2Vz
IG5vdCBwYXNzIHRlc3RzJyBzY3JpcHRfZXJyb3I9J01PQ0sgdGVzdCBmYWlsdXJlIGFnYWluJyBw
YXRjaD0nMTAwMDAnCi1hcmNoaXZlX2xhc3RfdGVzdF9yZXN1bHRzOiBwYXRjaD0nMTAwMDAnCi1y
dW5fd2Via2l0X3BhdGNoOiBbJ2J1aWxkLWFuZC10ZXN0JywgJy0tZm9yY2UtY2xlYW4nLCAnLS1u
by11cGRhdGUnLCAnLS1idWlsZCcsICctLXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUnXQotY29t
bWFuZF9mYWlsZWQ6IGZhaWx1cmVfbWVzc2FnZT0nVW5hYmxlIHRvIHBhc3MgdGVzdHMgd2l0aG91
dCBwYXRjaCAodHJlZSBpcyByZWQ/KScgc2NyaXB0X2Vycm9yPSdNT0NLIGNsZWFuIHRlc3QgZmFp
bHVyZScgcGF0Y2g9JzEwMDAwJwotIiIiCi0gICAgICAgIHRhc2sgPSBzZWxmLl9ydW5fdGhyb3Vn
aF90YXNrKGNvbW1pdF9xdWV1ZSwgZXhwZWN0ZWRfbG9ncywgR29sZGVuU2NyaXB0RXJyb3IpCi0g
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGFzay5yZXN1bHRzX2Zyb21fcGF0Y2hfdGVzdF9ydW4o
dGFzay5fcGF0Y2gpLmZhaWxpbmdfdGVzdHMoKSwgWyJmb28uaHRtbCIsICJiYXIuaHRtbCJdKQog
ICAgICAgICAjIGZhaWx1cmVfc3RhdHVzX2lkIHNob3VsZCBiZSBvZiB0aGUgdGVzdCB3aXRoIHBh
dGNoICgxKSwgbm90IHRoZSB0ZXN0IHdpdGhvdXQgcGF0Y2ggKDIpLgotICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKHRhc2suZmFpbHVyZV9zdGF0dXNfaWQsIDEpCi0KLSAgICBkZWYgdGVzdF9sYW5k
X2ZhaWx1cmUoc2VsZik6Ci0gICAgICAgIGNvbW1pdF9xdWV1ZSA9IE1vY2tDb21taXRRdWV1ZShb
Ci0gICAgICAgICAgICBOb25lLAotICAgICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUs
Ci0gICAgICAgICAgICBOb25lLAotICAgICAgICAgICAgTm9uZSwKLSAgICAgICAgICAgIE5vbmUs
Ci0gICAgICAgICAgICBHb2xkZW5TY3JpcHRFcnJvcigiTU9DSyBsYW5kIGZhaWx1cmUiKSwKLSAg
ICAgICAgXSkKLSAgICAgICAgZXhwZWN0ZWRfbG9ncyA9ICIiInJ1bl93ZWJraXRfcGF0Y2g6IFsn
Y2xlYW4nXQotY29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQ2xlYW5lZCB3b3JraW5n
IGRpcmVjdG9yeScgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWyd1cGRhdGUnXQot
Y29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nVXBkYXRlZCB3b3JraW5nIGRpcmVjdG9y
eScgcGF0Y2g9JzEwMDAwJwotcnVuX3dlYmtpdF9wYXRjaDogWydhcHBseS1hdHRhY2htZW50Jywg
Jy0tbm8tdXBkYXRlJywgJy0tbm9uLWludGVyYWN0aXZlJywgMTAwMDBdCi1jb21tYW5kX3Bhc3Nl
ZDogc3VjY2Vzc19tZXNzYWdlPSdBcHBsaWVkIHBhdGNoJyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Vi
a2l0X3BhdGNoOiBbJ3ZhbGlkYXRlLWNoYW5nZWxvZycsICctLWNoZWNrLW9vcHMnLCAnLS1ub24t
aW50ZXJhY3RpdmUnLCAxMDAwMF0KLWNvbW1hbmRfcGFzc2VkOiBzdWNjZXNzX21lc3NhZ2U9J0No
YW5nZUxvZyB2YWxpZGF0ZWQnIHBhdGNoPScxMDAwMCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVp
bGQnLCAnLS1uby1jbGVhbicsICctLW5vLXVwZGF0ZScsICctLWJ1aWxkLXN0eWxlPWJvdGgnXQot
Y29tbWFuZF9wYXNzZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nQnVpbHQgcGF0Y2gnIHBhdGNoPScxMDAw
MCcKLXJ1bl93ZWJraXRfcGF0Y2g6IFsnYnVpbGQtYW5kLXRlc3QnLCAnLS1uby1jbGVhbicsICct
LW5vLXVwZGF0ZScsICctLXRlc3QnLCAnLS1ub24taW50ZXJhY3RpdmUnXQotY29tbWFuZF9wYXNz
ZWQ6IHN1Y2Nlc3NfbWVzc2FnZT0nUGFzc2VkIHRlc3RzJyBwYXRjaD0nMTAwMDAnCi1ydW5fd2Vi
a2l0X3BhdGNoOiBbJ2xhbmQtYXR0YWNobWVudCcsICctLWZvcmNlLWNsZWFuJywgJy0tbm9uLWlu
dGVyYWN0aXZlJywgJy0tcGFyZW50LWNvbW1hbmQ9Y29tbWl0LXF1ZXVlJywgMTAwMDBdCi1jb21t
YW5kX2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdlPSdVbmFibGUgdG8gbGFuZCBwYXRjaCcgc2NyaXB0
X2Vycm9yPSdNT0NLIGxhbmQgZmFpbHVyZScgcGF0Y2g9JzEwMDAwJwotIiIiCi0gICAgICAgICMg
RklYTUU6IFRoaXMgc2hvdWxkIHJlYWxseSBiZSBleHBlY3RfcmV0cnk9VHJ1ZSBmb3IgYSBiZXR0
ZXIgdXNlciBleHBlcmlhbmNlLgotICAgICAgICBzZWxmLl9ydW5fdGhyb3VnaF90YXNrKGNvbW1p
dF9xdWV1ZSwgZXhwZWN0ZWRfbG9ncywgR29sZGVuU2NyaXB0RXJyb3IpCisgICAgICAgIHNlbGYu
X3J1bl9hbmRfZXhwZWN0X3BhdGNoX2FuYWx5c2lzX3Jlc3VsdChjb21taXRfcXVldWUsIFBhdGNo
QW5hbHlzaXNSZXN1bHQuRkFJTCwgZXhwZWN0X2NsZWFuX3Rlc3RzX3RvX3J1bj1UcnVlLCBleHBl
Y3RlZF9mYWlsdXJlX3N0YXR1c19pZD0xKQogCiAgICAgZGVmIHRlc3RfdHdvX2ZsYWt5X3Rlc3Rz
KHNlbGYpOgogICAgICAgICBjb21taXRfcXVldWUgPSBNb2NrU2ltcGxlVGVzdFBsYW5Db21taXRR
dWV1ZSgKQEAgLTY1Miw3ICs0MjksNyBAQCBjb21tYW5kX2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdl
PSdVbmFibGUgdG8gbGFuZCBwYXRjaCcgc2NyaXB0X2Vycm9yPSdNT0NLIGxhbmQgZgogICAgICAg
ICAgICAgc2Vjb25kX3Rlc3RfZmFpbHVyZXM9W10sCiAgICAgICAgICAgICBjbGVhbl90ZXN0X2Zh
aWx1cmVzPVtdKQogCi0gICAgICAgIHNlbGYuX3J1bl9hbmRfZXhwZWN0X3BhdGNoX2FuYWx5c2lz
X3Jlc3VsdChjb21taXRfcXVldWUsIFBhdGNoQW5hbHlzaXNSZXN1bHQuUEFTUykKKyAgICAgICAg
c2VsZi5fcnVuX2FuZF9leHBlY3RfcGF0Y2hfYW5hbHlzaXNfcmVzdWx0KGNvbW1pdF9xdWV1ZSwg
UGF0Y2hBbmFseXNpc1Jlc3VsdC5QQVNTLCBleHBlY3RlZF9yZXBvcnRlZF9mbGFreV90ZXN0cz1b
IkZhaWwxIl0pCiAKICAgICBkZWYgdGVzdF92ZXJ5X2ZsYWt5X3BhdGNoKHNlbGYpOgogICAgICAg
ICBjb21taXRfcXVldWUgPSBNb2NrU2ltcGxlVGVzdFBsYW5Db21taXRRdWV1ZSgKQEAgLTcxMiw3
ICs0ODksNyBAQCBjb21tYW5kX2ZhaWxlZDogZmFpbHVyZV9tZXNzYWdlPSdVbmFibGUgdG8gbGFu
ZCBwYXRjaCcgc2NyaXB0X2Vycm9yPSdNT0NLIGxhbmQgZgogICAgICAgICAgICAgc2Vjb25kX3Rl
c3RfZmFpbHVyZXM9WyJGYWlsMSIsICJGYWlsMiIsICJGYWlsMyJdLAogICAgICAgICAgICAgY2xl
YW5fdGVzdF9mYWlsdXJlcz1bIkZhaWwxIiwgIkZhaWwyIiwgIkZhaWwzIiwgIkZhaWw0Il0pCiAK
LSAgICAgICAgc2VsZi5fcnVuX2FuZF9leHBlY3RfcGF0Y2hfYW5hbHlzaXNfcmVzdWx0KGNvbW1p
dF9xdWV1ZSwgUGF0Y2hBbmFseXNpc1Jlc3VsdC5QQVNTKQorICAgICAgICBzZWxmLl9ydW5fYW5k
X2V4cGVjdF9wYXRjaF9hbmFseXNpc19yZXN1bHQoY29tbWl0X3F1ZXVlLCBQYXRjaEFuYWx5c2lz
UmVzdWx0LlBBU1MsIGV4cGVjdF9jbGVhbl90ZXN0c190b19ydW49VHJ1ZSkKIAogICAgIGRlZiBf
ZXhwZWN0X3ZhbGlkYXRlKHNlbGYsIHBhdGNoLCBpc192YWxpZCk6CiAgICAgICAgIGNsYXNzIE1v
Y2tEZWxlZ2F0ZShvYmplY3QpOgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90
b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFzay5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9ib3QvcGF0Y2hhbmFseXNpc3Rhc2sucHkKaW5kZXggZTk1YzIxMS4uNTU4ZDNmYyAxMDA2NDQK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFzay5w
eQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3BhdGNoYW5hbHlzaXN0YXNr
LnB5CkBAIC0yMzQsNiArMjM0LDcgQEAgY2xhc3MgUGF0Y2hBbmFseXNpc1Rhc2sob2JqZWN0KToK
IAogICAgICAgICBpZiBzZWxmLl9idWlsZF9hbmRfdGVzdF93aXRob3V0X3BhdGNoKCk6CiAgICAg
ICAgICAgICAjIFRoZSBlcnJvciBmcm9tIHRoZSBwcmV2aW91cyAuX3Rlc3QoKSBydW4gaXMgcmVh
bCwgcmVwb3J0IGl0LgorICAgICAgICAgICAgc2VsZi5mYWlsdXJlX3N0YXR1c19pZCA9IGZpcnN0
X2ZhaWx1cmVfc3RhdHVzX2lkCiAgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXBvcnRfZmFpbHVy
ZShmaXJzdF9yZXN1bHRzX2FyY2hpdmUsIGZpcnN0X3Jlc3VsdHMsIGZpcnN0X3NjcmlwdF9lcnJv
cikKIAogICAgICAgICBzZWxmLl9jbGVhbl90cmVlX3Jlc3VsdHMgPSBzZWxmLl9kZWxlZ2F0ZS50
ZXN0X3Jlc3VsdHMoKQotLSAKMS45LjMgKEFwcGxlIEdpdC01MCkKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>