<?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>137351</bug_id>
          
          <creation_ts>2014-10-02 11:38:35 -0700</creation_ts>
          <short_desc>Change layout-test-results directory to test-results directory</short_desc>
          <delta_ts>2014-10-02 13:31:30 -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>WONTFIX</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="Jake Nielsen">jake.nielsen.webkit</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>mrowe</cc>
    
    <cc>rniwa</cc>
    
    <cc>wsiegrist</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1038914</commentid>
    <comment_count>0</comment_count>
    <who name="Jake Nielsen">jake.nielsen.webkit</who>
    <bug_when>2014-10-02 11:38:35 -0700</bug_when>
    <thetext>Tests results should be bundled together in one directory, and hence layout-test-results will soon become a misnomer, but due to the potential fragility of this name change I want to submit it as a patch of its own.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1038920</commentid>
    <comment_count>1</comment_count>
      <attachid>239125</attachid>
    <who name="Jake Nielsen">jake.nielsen.webkit</who>
    <bug_when>2014-10-02 11:46:02 -0700</bug_when>
    <thetext>Created attachment 239125
Performs the dreaded name change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1038928</commentid>
    <comment_count>2</comment_count>
      <attachid>239125</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-10-02 12:15:10 -0700</bug_when>
    <thetext>Comment on attachment 239125
Performs the dreaded name change

OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1038937</commentid>
    <comment_count>3</comment_count>
      <attachid>239125</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-10-02 12:24:14 -0700</bug_when>
    <thetext>Comment on attachment 239125
Performs the dreaded name change

cq-&apos;ing this may break the builders if we don&apos;t coordinate updating the master buildbot config.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1038945</commentid>
    <comment_count>4</comment_count>
      <attachid>239125</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-10-02 12:40:07 -0700</bug_when>
    <thetext>Comment on attachment 239125
Performs the dreaded name change

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

&gt; Tools/BuildSlaveSupport/test-result-archive:32
&gt; -archiveFile = os.path.join(sourceRootDirectory, &quot;layout-test-results.zip&quot;)
&gt; +archiveFile = os.path.join(sourceRootDirectory, &quot;test-results.zip&quot;)
&gt;  
&gt;  def main():
&gt;      parser = optparse.OptionParser(&quot;usage: %prog [options] [action]&quot;)

Further elaborating on my remark in comment #3 (above), this change will lead to the &quot;archive-test-results&quot; step to fail on the bots if the buildbot master config change (included in this patch) is not applied after landing this patch (*).

(*) I&apos;m unclear of the process for updating the build.webkit.org buildbot master config. I suspect we must manually update the master config as opposed to it automatically taking effect upon commit. If we are unable to guarantee that the the master config change will take effect after landing this patch then we should have logic to temporarily handle both the old and new name for the archive file. After we update the buildbot master config then we can remove support for handling the old archive name.

&gt; Tools/BuildSlaveSupport/test-result-archive:45
&gt; +    layoutTestResultsDir = os.path.abspath(os.path.join(sourceRootDirectory, &quot;test-results&quot;))

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1038955</commentid>
    <comment_count>5</comment_count>
    <who name="Jake Nielsen">jake.nielsen.webkit</who>
    <bug_when>2014-10-02 13:31:30 -0700</bug_when>
    <thetext>Because there are so many things that depend on layout-test-results remaining where it is, Lucas suggested a much more sane approach to simply add sister directories for each of the other test results. As such, I&apos;m just going to abandon this patch and have at it from that direction.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239125</attachid>
            <date>2014-10-02 11:46:02 -0700</date>
            <delta_ts>2014-10-02 12:40:07 -0700</delta_ts>
            <desc>Performs the dreaded name change</desc>
            <filename>0001-Change-layout-test-results-directory-to-test-results.patch</filename>
            <type>text/plain</type>
            <size>58525</size>
            <attacher name="Jake Nielsen">jake.nielsen.webkit</attacher>
            
              <data encoding="base64">RnJvbSA0NjMzZTRkYzhiZDJlZDZiZTQyZmExNWViMzkwOGNhN2UzM2RkYTk2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKYWtlIE5pZWxzZW4gPGphY29iX25pZWxzZW5AYXBwbGUuY29t
PgpEYXRlOiBUaHUsIDIgT2N0IDIwMTQgMTE6NDQ6MDggLTA3MDAKU3ViamVjdDogW1BBVENIXSBD
aGFuZ2UgbGF5b3V0LXRlc3QtcmVzdWx0cyBkaXJlY3RvcnkgdG8gdGVzdC1yZXN1bHRzCiBkaXJl
Y3RvcnkgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNzM1MQoKUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpBcyB0aGUgbmFtZSBzdWdnZXN0cywgdGhpcyBwYXRj
aCByZW5hbWVzIGxheW91dC10ZXN0LXJlc3VsdHMgdG8KdGVzdC1yZXN1bHRzIGluIGFuIGFsYXJt
aW5nbHkgbGFyZ2UgbnVtYmVyIG9mIHBsYWNlcy4KCiogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQu
d2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZzoKKFJ1bldlYktpdFRlc3RzKToKKFVwbG9hZFRl
c3RSZXN1bHRzKToKKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9w
dWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy9yZXN1bHRzLmpzOgoqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9z
Y3JpcHRzL3Jlc3VsdHNfdW5pdHRlc3RzLmpzOgooLik6CiogQnVpbGRTbGF2ZVN1cHBvcnQvYnVp
bGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWlf
dW5pdHRlc3RzLmpzOgoqIEJ1aWxkU2xhdmVTdXBwb3J0L3Rlc3QtcmVzdWx0LWFyY2hpdmU6Ciht
YWluKToKKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvcG9ydHMucHk6CihEZXByZWNh
dGVkUG9ydCk6CiogU2NyaXB0cy93ZWJraXRweS9jb21tb24vbmV0L2J1aWxkYm90L2J1aWxkYm90
X21vY2sucHk6CihNb2NrQnVpbGRlci5hY2N1bXVsYXRlZF9yZXN1bHRzX3VybCk6CiogU2NyaXB0
cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2NyYXNobG9nc191bml0dGVzdC5weToKKG1ha2VfbW9j
a19jcmFzaF9yZXBvcnRfd2luKToKKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5f
d2Via2l0X3Rlc3RzX2ludGVncmF0aW9udGVzdC5weToKKFJ1blRlc3QudGVzdF9iYXNpYyk6CihS
dW5UZXN0LnRlc3Rfc3RkZXJyX2lzX3NhdmVkKToKKFJ1blRlc3QudGVzdF9taXNzaW5nX2FuZF91
bmV4cGVjdGVkX3Jlc3VsdHMpOgooUnVuVGVzdC50ZXN0X3BpeGVsX3Rlc3RfZGlyZWN0b3JpZXMp
OgooUnVuVGVzdC50ZXN0X2NyYXNoX3dpdGhfc3RkZXJyKToKKFJ1blRlc3QudGVzdF9ub19pbWFn
ZV9mYWlsdXJlX3dpdGhfaW1hZ2VfZGlmZik6CihSdW5UZXN0LnRlc3RfY3Jhc2hfbG9nKToKKFJ1
blRlc3QudGVzdF93ZWJfcHJvY2Vzc19jcmFzaF9sb2cpOgooUnVuVGVzdC50ZXN0X2V4aXRfYWZ0
ZXJfbl9mYWlsdXJlc191cGxvYWQpOgooUnVuVGVzdC50ZXN0X3Jlc3VsdHNfZGlyZWN0b3J5X2Rl
ZmF1bHQpOgooUnVuVGVzdC50ZXN0X3JldHJ5aW5nX2FuZF9mbGFreV90ZXN0cyk6CihSdW5UZXN0
LnRlc3RfcmV0cnlpbmdfZm9yY2VfcGl4ZWxfdGVzdHMpOgooUnVuVGVzdC50ZXN0X3JldHJ5aW5n
X3VzZXNfcmV0cmllc19kaXJlY3RvcnkpOgooUnVuVGVzdC50ZXN0X3JlZnRlc3Rfc2hvdWxkX25v
dF91c2VfbmFtaW5nX2NvbnZlbnRpb25faWZfbm90X2xpc3RlZF9pbl9yZWZ0ZXN0bGlzdCk6CihS
dW5UZXN0LnRlc3Rfb3V0cHV0X2RpZmZzKToKKEVuZFRvRW5kVGVzdC50ZXN0X3JlZnRlc3Rfd2l0
aF90d29fbm90cmVmcyk6CiogU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2UucHk6CihQb3J0LmRl
ZmF1bHRfcmVzdWx0c19kaXJlY3RvcnkpOgoqIFNjcmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXJf
dW5pdHRlc3QucHk6CihEcml2ZXJUZXN0LnRlc3RfcHJvZmlsZXJfYXNfd3JhcHBlcik6CiogU2Ny
aXB0cy93ZWJraXRweS9wb3J0L2xlYWtkZXRlY3Rvcl92YWxncmluZF91bml0dGVzdC5weToKKExl
YWtEZXRlY3RvclZhbGdyaW5kVGVzdC50ZXN0X3BhcnNlX2FuZF9wcmludF9sZWFrc19kZXRhaWxf
cGFzcyk6CihMZWFrRGV0ZWN0b3JWYWxncmluZFRlc3QudGVzdF9wYXJzZV9hbmRfcHJpbnRfbGVh
a3NfZGV0YWlsX2luY29tcGxldGUpOgooTGVha0RldGVjdG9yVmFsZ3JpbmRUZXN0LnRlc3RfcGFy
c2VfYW5kX3ByaW50X2xlYWtzX2RldGFpbF9lbXB0eSk6CihMZWFrRGV0ZWN0b3JWYWxncmluZFRl
c3QudGVzdF9wYXJzZV9hbmRfcHJpbnRfbGVha3NfZGV0YWlsX21pc2Zvcm1hdHRlZCk6CiogU2Ny
aXB0cy93ZWJraXRweS9wb3J0L21hY191bml0dGVzdC5weToKKHRlc3Rfc2FtcGxlX3Byb2Nlc3Mp
OgoqIFNjcmlwdHMvd2Via2l0cHkvcG9ydC90ZXN0LnB5OgooVGVzdFBvcnQuZGVmYXVsdF9yZXN1
bHRzX2RpcmVjdG9yeSk6CiogU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9mbGFreXRlc3RyZXBv
cnRlci5weToKKF9hdHRhY2hfZmFpbHVyZV9kaWZmKToKKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
Ym90L2ZsYWt5dGVzdHJlcG9ydGVyX3VuaXR0ZXN0LnB5OgoodGVzdF9maW5kX2luX2FyY2hpdmUu
TW9ja1ppcEZpbGUubmFtZWxpc3QpOgoqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvbGF5b3V0
dGVzdHJlc3VsdHNyZWFkZXJfdW5pdHRlc3QucHk6Cih0ZXN0X2FyY2hpdmVfbGFzdF9sYXlvdXRf
dGVzdF9yZXN1bHRzX3dpdGhfcmVsYXRpdmVfcGF0aCk6CiogU2NyaXB0cy93ZWJraXRweS90b29s
L2JvdC9wYXRjaGFuYWx5c2lzdGFzay5weToKKFBhdGNoQW5hbHlzaXNUYXNrLl90ZXN0X3BhdGNo
KToKKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzLnB5OgooUGF0Y2hQcm9j
ZXNzaW5nUXVldWUuX3VwbG9hZF9yZXN1bHRzX2FyY2hpdmVfZm9yX3BhdGNoKToKKiBTY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzX3VuaXR0ZXN0LnB5OgooUGF0Y2hQcm9jZXNz
aW5nUXVldWVUZXN0LnRlc3RfdXBsb2FkX3Jlc3VsdHNfYXJjaGl2ZV9mb3JfcGF0Y2gpOgooQ29t
bWl0UXVldWVUZXN0LnRlc3RfY29tbWl0X3F1ZXVlKToKKHRlc3Rfcm9sbG91dCk6Cih0ZXN0X21h
bnVhbF9yZWplY3RfZHVyaW5nX3Byb2Nlc3NpbmcpOgoqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9j
b21tYW5kcy9yZWJhc2VsaW5lX3VuaXR0ZXN0LnB5OgooX0Jhc2VUZXN0Q2FzZSk6CiogU2NyaXB0
cy93ZWJraXRweS90b29sL3NlcnZlcnMvcmViYXNlbGluZXNlcnZlcl91bml0dGVzdC5weToKKGdl
dF90ZXN0X2NvbmZpZyk6Ci0tLQogLi4uL2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3Rlci5j
ZmcgICAgICAgICAgICAgfCAgNCArLQogLi4uL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3Jp
cHRzL3Jlc3VsdHMuanMgICAgfCAgMiArLQogLi4uL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3Jlc3Vs
dHNfdW5pdHRlc3RzLmpzICAgICAgfCAzNCArKysrKy0tLS0tCiAuLi4vVGVzdEZhaWx1cmVzL3Nj
cmlwdHMvdWlfdW5pdHRlc3RzLmpzICAgICAgICAgICB8IDIwICsrKy0tLQogVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvdGVzdC1yZXN1bHQtYXJjaGl2ZSAgICAgICAgfCAgNCArLQogVG9vbHMvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCA3NSArKysrKysrKysr
KysrKysrKysrKysrCiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvcG9ydHMu
cHkgICAgICB8ICAyICstCiAuLi4vd2Via2l0cHkvY29tbW9uL25ldC9idWlsZGJvdC9idWlsZGJv
dF9tb2NrLnB5ICB8ICAyICstCiAuLi4vd2Via2l0cHkvY29tbW9uL3N5c3RlbS9jcmFzaGxvZ3Nf
dW5pdHRlc3QucHkgICB8ICAyICstCiAuLi4vcnVuX3dlYmtpdF90ZXN0c19pbnRlZ3JhdGlvbnRl
c3QucHkgICAgICAgICAgICB8IDUwICsrKysrKystLS0tLS0tLQogVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9wb3J0L2Jhc2UucHkgICAgICAgICAgICAgICAgfCAgMiArLQogVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9wb3J0L2RyaXZlcl91bml0dGVzdC5weSAgICAgfCAgMiArLQogLi4uL3BvcnQvbGVh
a2RldGVjdG9yX3ZhbGdyaW5kX3VuaXR0ZXN0LnB5ICAgICAgICAgfCAyNCArKystLS0tCiBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjX3VuaXR0ZXN0LnB5ICAgICAgICB8ICAyICstCiBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvdGVzdC5weSAgICAgICAgICAgICAgICB8ICAyICst
CiAuLi4vU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9mbGFreXRlc3RyZXBvcnRlci5weSB8ICA2
ICstCiAuLi4vdG9vbC9ib3QvZmxha3l0ZXN0cmVwb3J0ZXJfdW5pdHRlc3QucHkgICAgICAgICB8
ICAyICstCiAuLi4vdG9vbC9ib3QvbGF5b3V0dGVzdHJlc3VsdHNyZWFkZXJfdW5pdHRlc3QucHkg
ICB8ICA0ICstCiAuLi4vU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFz
ay5weSB8ICAyICstCiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVz
LnB5ICAgICB8ICA0ICstCiAuLi4vd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXNfdW5pdHRl
c3QucHkgICAgICB8IDE2ICsrLS0tCiAuLi4vd2Via2l0cHkvdG9vbC9jb21tYW5kcy9yZWJhc2Vs
aW5lX3VuaXR0ZXN0LnB5ICB8ICAyICstCiAuLi4vdG9vbC9zZXJ2ZXJzL3JlYmFzZWxpbmVzZXJ2
ZXJfdW5pdHRlc3QucHkgICAgICB8ICAyICstCiAyMyBmaWxlcyBjaGFuZ2VkLCAxNzAgaW5zZXJ0
aW9ucygrKSwgOTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvVG9vbHMvQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZyBiL1Rvb2xzL0J1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3Rlci5jZmcKaW5kZXggMDkxMzk2
Yi4uNTZhOWIwOCAxMDA2NDQKLS0tIGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Vi
a2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZworKysgYi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9i
dWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnCkBAIC0zNDksNyArMzQ5LDcgQEAgY2xh
c3MgUnVuV2ViS2l0VGVzdHMoc2hlbGwuVGVzdCk6CiAgICAgICAgICAgICAgICAiLS1uby1zaG93
LXJlc3VsdHMiLAogICAgICAgICAgICAgICAgIi0tbm8tbmV3LXRlc3QtcmVzdWx0cyIsCiAgICAg
ICAgICAgICAgICAiLS1uby1zYW1wbGUtb24tdGltZW91dCIsCi0gICAgICAgICAgICAgICAiLS1y
ZXN1bHRzLWRpcmVjdG9yeSIsICJsYXlvdXQtdGVzdC1yZXN1bHRzIiwKKyAgICAgICAgICAgICAg
ICItLXJlc3VsdHMtZGlyZWN0b3J5IiwgInRlc3QtcmVzdWx0cyIsCiAgICAgICAgICAgICAgICAi
LS1idWlsZGVyLW5hbWUiLCBXaXRoUHJvcGVydGllcygiJShidWlsZGVybmFtZSlzIiksCiAgICAg
ICAgICAgICAgICAiLS1idWlsZC1udW1iZXIiLCBXaXRoUHJvcGVydGllcygiJShidWlsZG51bWJl
cilzIiksCiAgICAgICAgICAgICAgICAiLS1tYXN0ZXItbmFtZSIsICJ3ZWJraXQub3JnIiwKQEAg
LTc0Nyw3ICs3NDcsNyBAQCBjbGFzcyBBcmNoaXZlVGVzdFJlc3VsdHMoc2hlbGwuU2hlbGxDb21t
YW5kKToKIAogCiBjbGFzcyBVcGxvYWRUZXN0UmVzdWx0cyh0cmFuc2Zlci5GaWxlVXBsb2FkKToK
LSAgICBzbGF2ZXNyYyA9ICJsYXlvdXQtdGVzdC1yZXN1bHRzLnppcCIKKyAgICBzbGF2ZXNyYyA9
ICJ0ZXN0LXJlc3VsdHMuemlwIgogICAgIG1hc3RlcmRlc3QgPSBXaXRoUHJvcGVydGllcygicHVi
bGljX2h0bWwvcmVzdWx0cy8lKGJ1aWxkZXJuYW1lKXMvciUoZ290X3JldmlzaW9uKXMgKCUoYnVp
bGRudW1iZXIpcykuemlwIikKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqKmt3YXJncyk6CmRp
ZmYgLS1naXQgYS9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZp
Zy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy9yZXN1bHRzLmpzIGIvVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZh
aWx1cmVzL3NjcmlwdHMvcmVzdWx0cy5qcwppbmRleCAyZGQ1NWE4Li41OTQ4OTkyIDEwMDY0NAot
LS0gYS9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJs
aWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy9yZXN1bHRzLmpzCisrKyBiL1Rvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWls
dXJlcy9zY3JpcHRzL3Jlc3VsdHMuanMKQEAgLTE4OSw3ICsxODksNyBAQCBmdW5jdGlvbiByZXN1
bHRzRGlyZWN0b3J5VVJMKHBsYXRmb3JtLCBidWlsZGVyTmFtZSkKIHsKICAgICBpZiAoY29uZmln
LnVzZUxvY2FsUmVzdWx0cykKICAgICAgICAgcmV0dXJuICcvbG9jYWxyZXN1bHQ/cGF0aD0nOwot
ICAgIHJldHVybiByZXN1bHRzRGlyZWN0b3J5TGlzdGluZ1VSTChwbGF0Zm9ybSwgYnVpbGRlck5h
bWUpICsgJ3Jlc3VsdHMvbGF5b3V0LXRlc3QtcmVzdWx0cy8nOworICAgIHJldHVybiByZXN1bHRz
RGlyZWN0b3J5TGlzdGluZ1VSTChwbGF0Zm9ybSwgYnVpbGRlck5hbWUpICsgJ3Jlc3VsdHMvdGVz
dC1yZXN1bHRzLyc7CiB9CiAKIGZ1bmN0aW9uIHJlc3VsdHNEaXJlY3RvcnlMaXN0aW5nVVJMKHBs
YXRmb3JtLCBidWlsZGVyTmFtZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRz
L3Jlc3VsdHNfdW5pdHRlc3RzLmpzIGIvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Vi
a2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvcmVzdWx0c191
bml0dGVzdHMuanMKaW5kZXggMjgzOGFhMi4uNTAxZGQ4OCAxMDA2NDQKLS0tIGEvVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZh
aWx1cmVzL3NjcmlwdHMvcmVzdWx0c191bml0dGVzdHMuanMKKysrIGIvVG9vbHMvQnVpbGRTbGF2
ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVz
L3NjcmlwdHMvcmVzdWx0c191bml0dGVzdHMuanMKQEAgLTQ5Myw3ICs0OTMsNyBAQCB0ZXN0KCJm
ZXRjaFJlc3VsdHNVUkxzIiwgNSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAnZmFpbHVyZVR5
cGVMaXN0JzogWydJTUFHRScsICdDUkFTSCddLAogICAgICAgICB9LCBmdW5jdGlvbihyZXN1bHRV
UkxzKSB7CiAgICAgICAgICAgICBkZWVwRXF1YWwocmVzdWx0VVJMcywgWwotICAgICAgICAgICAg
ICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVz
dWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy9sYXlvdXQtdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRz
L2Fub3RoZXItdGVzdC1jcmFzaC1sb2cudHh0IgorICAgICAgICAgICAgICAgICJodHRwOi8vYnVp
bGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxk
ZXIvcmVzdWx0cy90ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvYW5vdGhlci10ZXN0LWNyYXNoLWxv
Zy50eHQiCiAgICAgICAgICAgICBdKTsKICAgICAgICAgfSk7CiAgICAgICAgIHJlc3VsdHMuZmV0
Y2hSZXN1bHRzVVJMcyh7CkBAIC01MDksMjcgKzUwOSwyNyBAQCB0ZXN0KCJmZXRjaFJlc3VsdHNV
UkxzIiwgNSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAnZmFpbHVyZVR5cGVMaXN0JzogWydJ
TUFHRScsICdJTUFHRStURVhUJ10sCiAgICAgICAgIH0sIGZ1bmN0aW9uKHJlc3VsdFVSTHMpIHsK
ICAgICAgICAgICAgIGRlZXBFcXVhbChyZXN1bHRVUkxzLCBbCi0gICAgICAgICAgICAgICAgImh0
dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01v
Y2tfQnVpbGRlci9yZXN1bHRzL2xheW91dC10ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1l
eHBlY3RlZC5wbmciLAotICAgICAgICAgICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3Jn
L2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy9sYXlv
dXQtdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRzL3RhY28tYWN0dWFsLnBuZyIsCi0gICAgICAgICAg
ICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9y
ZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRzL2xheW91dC10ZXN0LXJlc3VsdHMvdXNlcnNjcmlw
dHMvdGFjby1kaWZmLnBuZyIsCi0gICAgICAgICAgICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1
bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRz
L2xheW91dC10ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1leHBlY3RlZC50eHQiLAotICAg
ICAgICAgICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0
X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy9sYXlvdXQtdGVzdC1yZXN1bHRzL3Vz
ZXJzY3JpcHRzL3RhY28tYWN0dWFsLnR4dCIsCi0gICAgICAgICAgICAgICAgImh0dHA6Ly9idWls
ZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRl
ci9yZXN1bHRzL2xheW91dC10ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1kaWZmLnR4dCIs
CisgICAgICAgICAgICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9s
YXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRzL3Rlc3QtcmVzdWx0cy91c2Vy
c2NyaXB0cy90YWNvLWV4cGVjdGVkLnBuZyIsCisgICAgICAgICAgICAgICAgImh0dHA6Ly9idWls
ZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRl
ci9yZXN1bHRzL3Rlc3QtcmVzdWx0cy91c2Vyc2NyaXB0cy90YWNvLWFjdHVhbC5wbmciLAorICAg
ICAgICAgICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0
X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy90ZXN0LXJlc3VsdHMvdXNlcnNjcmlw
dHMvdGFjby1kaWZmLnBuZyIsCisgICAgICAgICAgICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1
bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRz
L3Rlc3QtcmVzdWx0cy91c2Vyc2NyaXB0cy90YWNvLWV4cGVjdGVkLnR4dCIsCisgICAgICAgICAg
ICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9y
ZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRzL3Rlc3QtcmVzdWx0cy91c2Vyc2NyaXB0cy90YWNv
LWFjdHVhbC50eHQiLAorICAgICAgICAgICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3Jn
L2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy90ZXN0
LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1kaWZmLnR4dCIsCiAgICAgICAgICAgICBdKTsKICAg
ICAgICAgfSk7CiAgICAgfSk7CiAKICAgICBkZWVwRXF1YWwocHJvYmVkVVJMcywgWwotICAgICAg
ICAiaHR0cDovL2J1aWxkLmNocm9taXVtLm9yZy9mL2Nocm9taXVtL2xheW91dF90ZXN0X3Jlc3Vs
dHMvTW9ja19CdWlsZGVyL3Jlc3VsdHMvbGF5b3V0LXRlc3QtcmVzdWx0cy91c2Vyc2NyaXB0cy9h
bm90aGVyLXRlc3QtZXhwZWN0ZWQucG5nIiwKLSAgICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1
bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRz
L2xheW91dC10ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvYW5vdGhlci10ZXN0LWFjdHVhbC5wbmci
LAotICAgICAgICAiaHR0cDovL2J1aWxkLmNocm9taXVtLm9yZy9mL2Nocm9taXVtL2xheW91dF90
ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVyL3Jlc3VsdHMvbGF5b3V0LXRlc3QtcmVzdWx0cy91c2Vy
c2NyaXB0cy9hbm90aGVyLXRlc3QtZGlmZi5wbmciLAotICAgICAgICAiaHR0cDovL2J1aWxkLmNo
cm9taXVtLm9yZy9mL2Nocm9taXVtL2xheW91dF90ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVyL3Jl
c3VsdHMvbGF5b3V0LXRlc3QtcmVzdWx0cy91c2Vyc2NyaXB0cy9hbm90aGVyLXRlc3QtY3Jhc2gt
bG9nLnR4dCIsCi0gICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0v
bGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy9sYXlvdXQtdGVzdC1yZXN1
bHRzL3VzZXJzY3JpcHRzL3RhY28tZXhwZWN0ZWQucG5nIiwKLSAgICAgICAgImh0dHA6Ly9idWls
ZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRl
ci9yZXN1bHRzL2xheW91dC10ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1hY3R1YWwucG5n
IiwKLSAgICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRf
dGVzdF9yZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRzL2xheW91dC10ZXN0LXJlc3VsdHMvdXNl
cnNjcmlwdHMvdGFjby1kaWZmLnBuZyIsCi0gICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0u
b3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy9s
YXlvdXQtdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRzL3RhY28tYWN0dWFsLnR4dCIsCi0gICAgICAg
ICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0
cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy9sYXlvdXQtdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRzL3Rh
Y28tZXhwZWN0ZWQudHh0IiwKLSAgICAgICAgImh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9j
aHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRzL01vY2tfQnVpbGRlci9yZXN1bHRzL2xheW91dC10
ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1kaWZmLnR4dCIsCisgICAgICAgICJodHRwOi8v
YnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1
aWxkZXIvcmVzdWx0cy90ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvYW5vdGhlci10ZXN0LWV4cGVj
dGVkLnBuZyIsCisgICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0v
bGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy90ZXN0LXJlc3VsdHMvdXNl
cnNjcmlwdHMvYW5vdGhlci10ZXN0LWFjdHVhbC5wbmciLAorICAgICAgICAiaHR0cDovL2J1aWxk
LmNocm9taXVtLm9yZy9mL2Nocm9taXVtL2xheW91dF90ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVy
L3Jlc3VsdHMvdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC1kaWZmLnBuZyIs
CisgICAgICAgICJodHRwOi8vYnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rl
c3RfcmVzdWx0cy9Nb2NrX0J1aWxkZXIvcmVzdWx0cy90ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMv
YW5vdGhlci10ZXN0LWNyYXNoLWxvZy50eHQiLAorICAgICAgICAiaHR0cDovL2J1aWxkLmNocm9t
aXVtLm9yZy9mL2Nocm9taXVtL2xheW91dF90ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVyL3Jlc3Vs
dHMvdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRzL3RhY28tZXhwZWN0ZWQucG5nIiwKKyAgICAgICAg
Imh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvZi9jaHJvbWl1bS9sYXlvdXRfdGVzdF9yZXN1bHRz
L01vY2tfQnVpbGRlci9yZXN1bHRzL3Rlc3QtcmVzdWx0cy91c2Vyc2NyaXB0cy90YWNvLWFjdHVh
bC5wbmciLAorICAgICAgICAiaHR0cDovL2J1aWxkLmNocm9taXVtLm9yZy9mL2Nocm9taXVtL2xh
eW91dF90ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVyL3Jlc3VsdHMvdGVzdC1yZXN1bHRzL3VzZXJz
Y3JpcHRzL3RhY28tZGlmZi5wbmciLAorICAgICAgICAiaHR0cDovL2J1aWxkLmNocm9taXVtLm9y
Zy9mL2Nocm9taXVtL2xheW91dF90ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVyL3Jlc3VsdHMvdGVz
dC1yZXN1bHRzL3VzZXJzY3JpcHRzL3RhY28tYWN0dWFsLnR4dCIsCisgICAgICAgICJodHRwOi8v
YnVpbGQuY2hyb21pdW0ub3JnL2YvY2hyb21pdW0vbGF5b3V0X3Rlc3RfcmVzdWx0cy9Nb2NrX0J1
aWxkZXIvcmVzdWx0cy90ZXN0LXJlc3VsdHMvdXNlcnNjcmlwdHMvdGFjby1leHBlY3RlZC50eHQi
LAorICAgICAgICAiaHR0cDovL2J1aWxkLmNocm9taXVtLm9yZy9mL2Nocm9taXVtL2xheW91dF90
ZXN0X3Jlc3VsdHMvTW9ja19CdWlsZGVyL3Jlc3VsdHMvdGVzdC1yZXN1bHRzL3VzZXJzY3JpcHRz
L3RhY28tZGlmZi50eHQiLAogICAgIF0pOwogfSk7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWls
dXJlcy9zY3JpcHRzL3VpX3VuaXR0ZXN0cy5qcyBiL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1
aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3Vp
X3VuaXR0ZXN0cy5qcwppbmRleCA2NmY3YWM5Li45YjIzMjk5IDEwMDY0NAotLS0gYS9Ub29scy9C
dWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0
RmFpbHVyZXMvc2NyaXB0cy91aV91bml0dGVzdHMuanMKKysrIGIvVG9vbHMvQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3Nj
cmlwdHMvdWlfdW5pdHRlc3RzLmpzCkBAIC03NywxMCArNzcsMTAgQEAgdGVzdCgidWkub25lYmFy
IiwgMywgZnVuY3Rpb24oKSB7CiB0ZXN0KCJyZXN1bHRzLlJlc3VsdHNHcmlkIiwgMSwgZnVuY3Rp
b24oKSB7CiAgICAgdmFyIGdyaWQgPSBuZXcgdWkucmVzdWx0cy5SZXN1bHRzR3JpZCgpCiAgICAg
Z3JpZC5hZGRSZXN1bHRzKFsKLSAgICAgICAgJ2h0dHA6Ly9leGFtcGxlLmNvbS9sYXlvdXQtdGVz
dC1yZXN1bHRzL2Zvby1iYXItZGlmZi50eHQnLAotICAgICAgICAnaHR0cDovL2V4YW1wbGUuY29t
L2xheW91dC10ZXN0LXJlc3VsdHMvZm9vLWJhci1leHBlY3RlZC5wbmcnLAotICAgICAgICAnaHR0
cDovL2V4YW1wbGUuY29tL2xheW91dC10ZXN0LXJlc3VsdHMvZm9vLWJhci1hY3R1YWwucG5nJywK
LSAgICAgICAgJ2h0dHA6Ly9leGFtcGxlLmNvbS9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zvby1iYXIt
ZGlmZi5wbmcnLAorICAgICAgICAnaHR0cDovL2V4YW1wbGUuY29tL3Rlc3QtcmVzdWx0cy9mb28t
YmFyLWRpZmYudHh0JywKKyAgICAgICAgJ2h0dHA6Ly9leGFtcGxlLmNvbS90ZXN0LXJlc3VsdHMv
Zm9vLWJhci1leHBlY3RlZC5wbmcnLAorICAgICAgICAnaHR0cDovL2V4YW1wbGUuY29tL3Rlc3Qt
cmVzdWx0cy9mb28tYmFyLWFjdHVhbC5wbmcnLAorICAgICAgICAnaHR0cDovL2V4YW1wbGUuY29t
L3Rlc3QtcmVzdWx0cy9mb28tYmFyLWRpZmYucG5nJywKICAgICBdKTsKICAgICBlcXVhbChncmlk
LmlubmVySFRNTCwKICAgICAgICAgJzx0YWJsZSBjbGFzcz0iY29tcGFyaXNvbiI+JyArCkBAIC05
Myw5ICs5Myw5IEBAIHRlc3QoInJlc3VsdHMuUmVzdWx0c0dyaWQiLCAxLCBmdW5jdGlvbigpIHsK
ICAgICAgICAgICAgICc8L3RoZWFkPicgKwogICAgICAgICAgICAgJzx0Ym9keT4nICsKICAgICAg
ICAgICAgICAgICAnPHRyPicgKwotICAgICAgICAgICAgICAgICAgICAnPHRkIGNsYXNzPSJleHBl
Y3RlZCByZXN1bHQtY29udGFpbmVyIj48aW1nIGNsYXNzPSJpbWFnZS1yZXN1bHQiIHNyYz0iaHR0
cDovL2V4YW1wbGUuY29tL2xheW91dC10ZXN0LXJlc3VsdHMvZm9vLWJhci1leHBlY3RlZC5wbmci
PjwvdGQ+JyArCi0gICAgICAgICAgICAgICAgICAgICc8dGQgY2xhc3M9ImFjdHVhbCByZXN1bHQt
Y29udGFpbmVyIj48aW1nIGNsYXNzPSJpbWFnZS1yZXN1bHQiIHNyYz0iaHR0cDovL2V4YW1wbGUu
Y29tL2xheW91dC10ZXN0LXJlc3VsdHMvZm9vLWJhci1hY3R1YWwucG5nIj48L3RkPicgKwotICAg
ICAgICAgICAgICAgICAgICAnPHRkIGNsYXNzPSJkaWZmIHJlc3VsdC1jb250YWluZXIiPjxpbWcg
Y2xhc3M9ImltYWdlLXJlc3VsdCIgc3JjPSJodHRwOi8vZXhhbXBsZS5jb20vbGF5b3V0LXRlc3Qt
cmVzdWx0cy9mb28tYmFyLWRpZmYucG5nIj48L3RkPicgKworICAgICAgICAgICAgICAgICAgICAn
PHRkIGNsYXNzPSJleHBlY3RlZCByZXN1bHQtY29udGFpbmVyIj48aW1nIGNsYXNzPSJpbWFnZS1y
ZXN1bHQiIHNyYz0iaHR0cDovL2V4YW1wbGUuY29tL3Rlc3QtcmVzdWx0cy9mb28tYmFyLWV4cGVj
dGVkLnBuZyI+PC90ZD4nICsKKyAgICAgICAgICAgICAgICAgICAgJzx0ZCBjbGFzcz0iYWN0dWFs
IHJlc3VsdC1jb250YWluZXIiPjxpbWcgY2xhc3M9ImltYWdlLXJlc3VsdCIgc3JjPSJodHRwOi8v
ZXhhbXBsZS5jb20vdGVzdC1yZXN1bHRzL2Zvby1iYXItYWN0dWFsLnBuZyI+PC90ZD4nICsKKyAg
ICAgICAgICAgICAgICAgICAgJzx0ZCBjbGFzcz0iZGlmZiByZXN1bHQtY29udGFpbmVyIj48aW1n
IGNsYXNzPSJpbWFnZS1yZXN1bHQiIHNyYz0iaHR0cDovL2V4YW1wbGUuY29tL3Rlc3QtcmVzdWx0
cy9mb28tYmFyLWRpZmYucG5nIj48L3RkPicgKwogICAgICAgICAgICAgICAgICc8L3RyPicgKwog
ICAgICAgICAgICAgJzwvdGJvZHk+JyArCiAgICAgICAgICc8L3RhYmxlPicgKwpAQCAtMTExLDcg
KzExMSw3IEBAIHRlc3QoInJlc3VsdHMuUmVzdWx0c0dyaWQiLCAxLCBmdW5jdGlvbigpIHsKICAg
ICAgICAgICAgICAgICAnPHRyPicgKwogICAgICAgICAgICAgICAgICAgICAnPHRkIGNsYXNzPSJl
eHBlY3RlZCByZXN1bHQtY29udGFpbmVyIj48L3RkPicgKwogICAgICAgICAgICAgICAgICAgICAn
PHRkIGNsYXNzPSJhY3R1YWwgcmVzdWx0LWNvbnRhaW5lciI+PC90ZD4nICsKLSAgICAgICAgICAg
ICAgICAgICAgJzx0ZCBjbGFzcz0iZGlmZiByZXN1bHQtY29udGFpbmVyIj48aWZyYW1lIGNsYXNz
PSJ0ZXh0LXJlc3VsdCIgc3JjPSJodHRwOi8vZXhhbXBsZS5jb20vbGF5b3V0LXRlc3QtcmVzdWx0
cy9mb28tYmFyLWRpZmYudHh0Ij48L2lmcmFtZT48L3RkPicgKworICAgICAgICAgICAgICAgICAg
ICAnPHRkIGNsYXNzPSJkaWZmIHJlc3VsdC1jb250YWluZXIiPjxpZnJhbWUgY2xhc3M9InRleHQt
cmVzdWx0IiBzcmM9Imh0dHA6Ly9leGFtcGxlLmNvbS90ZXN0LXJlc3VsdHMvZm9vLWJhci1kaWZm
LnR4dCI+PC9pZnJhbWU+PC90ZD4nICsKICAgICAgICAgICAgICAgICAnPC90cj4nICsKICAgICAg
ICAgICAgICc8L3Rib2R5PicgKwogICAgICAgICAnPC90YWJsZT4nKTsKQEAgLTExOSw4ICsxMTks
OCBAQCB0ZXN0KCJyZXN1bHRzLlJlc3VsdHNHcmlkIiwgMSwgZnVuY3Rpb24oKSB7CiAKIHRlc3Qo
InJlc3VsdHMuUmVzdWx0c0dyaWQgKGNyYXNobG9nKSIsIDEsIGZ1bmN0aW9uKCkgewogICAgIHZh
ciBncmlkID0gbmV3IHVpLnJlc3VsdHMuUmVzdWx0c0dyaWQoKQotICAgIGdyaWQuYWRkUmVzdWx0
cyhbJ2h0dHA6Ly9leGFtcGxlLmNvbS9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zvby1iYXItY3Jhc2gt
bG9nLnR4dCddKTsKLSAgICBlcXVhbChncmlkLmlubmVySFRNTCwgJzxpZnJhbWUgY2xhc3M9InRl
eHQtcmVzdWx0IiBzcmM9Imh0dHA6Ly9leGFtcGxlLmNvbS9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zv
by1iYXItY3Jhc2gtbG9nLnR4dCI+PC9pZnJhbWU+Jyk7CisgICAgZ3JpZC5hZGRSZXN1bHRzKFsn
aHR0cDovL2V4YW1wbGUuY29tL3Rlc3QtcmVzdWx0cy9mb28tYmFyLWNyYXNoLWxvZy50eHQnXSk7
CisgICAgZXF1YWwoZ3JpZC5pbm5lckhUTUwsICc8aWZyYW1lIGNsYXNzPSJ0ZXh0LXJlc3VsdCIg
c3JjPSJodHRwOi8vZXhhbXBsZS5jb20vdGVzdC1yZXN1bHRzL2Zvby1iYXItY3Jhc2gtbG9nLnR4
dCI+PC9pZnJhbWU+Jyk7CiB9KTsKIAogdGVzdCgicmVzdWx0cy5SZXN1bHRzR3JpZCAoZW1wdHkp
IiwgMSwgZnVuY3Rpb24oKSB7CmRpZmYgLS1naXQgYS9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC90
ZXN0LXJlc3VsdC1hcmNoaXZlIGIvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvdGVzdC1yZXN1bHQt
YXJjaGl2ZQppbmRleCA0MDJkZjY1Li43ZDVkNmY3IDEwMDY0NAotLS0gYS9Ub29scy9CdWlsZFNs
YXZlU3VwcG9ydC90ZXN0LXJlc3VsdC1hcmNoaXZlCisrKyBiL1Rvb2xzL0J1aWxkU2xhdmVTdXBw
b3J0L3Rlc3QtcmVzdWx0LWFyY2hpdmUKQEAgLTI2LDcgKzI2LDcgQEAKIGltcG9ydCBvcHRwYXJz
ZSwgb3MsIHNodXRpbCwgc3VicHJvY2Vzcywgc3lzCiAKIHNvdXJjZVJvb3REaXJlY3RvcnkgPSBv
cy5wYXRoLmFic3BhdGgob3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICIu
LiIsICIuLiIpKQotYXJjaGl2ZUZpbGUgPSBvcy5wYXRoLmpvaW4oc291cmNlUm9vdERpcmVjdG9y
eSwgImxheW91dC10ZXN0LXJlc3VsdHMuemlwIikKK2FyY2hpdmVGaWxlID0gb3MucGF0aC5qb2lu
KHNvdXJjZVJvb3REaXJlY3RvcnksICJ0ZXN0LXJlc3VsdHMuemlwIikKIAogZGVmIG1haW4oKToK
ICAgICBwYXJzZXIgPSBvcHRwYXJzZS5PcHRpb25QYXJzZXIoInVzYWdlOiAlcHJvZyBbb3B0aW9u
c10gW2FjdGlvbl0iKQpAQCAtNDIsNyArNDIsNyBAQCBkZWYgbWFpbigpOgogICAgIGlmIGFjdGlv
biBub3QgaW4gKCdhcmNoaXZlJyk6CiAgICAgICAgIHBhcnNlci5lcnJvcigiQWN0aW9uIGlzIHJl
cXVpcmVkIikKIAotICAgIGxheW91dFRlc3RSZXN1bHRzRGlyID0gb3MucGF0aC5hYnNwYXRoKG9z
LnBhdGguam9pbihzb3VyY2VSb290RGlyZWN0b3J5LCAibGF5b3V0LXRlc3QtcmVzdWx0cyIpKQor
ICAgIGxheW91dFRlc3RSZXN1bHRzRGlyID0gb3MucGF0aC5hYnNwYXRoKG9zLnBhdGguam9pbihz
b3VyY2VSb290RGlyZWN0b3J5LCAidGVzdC1yZXN1bHRzIikpCiAgICAgcmV0dXJuIGFyY2hpdmVU
ZXN0UmVzdWx0cyhvcHRpb25zLmNvbmZpZ3VyYXRpb24sIG9wdGlvbnMucGxhdGZvcm0sIGxheW91
dFRlc3RSZXN1bHRzRGlyKQogCiBkZWYgYXJjaGl2ZVRlc3RSZXN1bHRzKGNvbmZpZ3VyYXRpb24s
IHBsYXRmb3JtLCBsYXlvdXRUZXN0UmVzdWx0c0Rpcik6CmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGY0M2JlYy4uNmU2ZTE2YyAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc4IEBA
CisyMDE0LTEwLTAyICBKYWtlIE5pZWxzZW4gIDxqYWNvYl9uaWVsc2VuQGFwcGxlLmNvbT4KKwor
ICAgICAgICBDaGFuZ2UgbGF5b3V0LXRlc3QtcmVzdWx0cyBkaXJlY3RvcnkgdG8gdGVzdC1yZXN1
bHRzIGRpcmVjdG9yeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTM3MzUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQXMgdGhlIG5hbWUgc3VnZ2VzdHMsIHRoaXMgcGF0Y2ggcmVuYW1lcyBsYXlvdXQtdGVz
dC1yZXN1bHRzIHRvCisgICAgICAgIHRlc3QtcmVzdWx0cyBpbiBhbiBhbGFybWluZ2x5IGxhcmdl
IG51bWJlciBvZiBwbGFjZXMuCisKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53
ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnOgorICAgICAgICAoUnVuV2ViS2l0VGVzdHMpOgor
ICAgICAgICAoVXBsb2FkVGVzdFJlc3VsdHMpOgorICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRz
L3Jlc3VsdHMuanM6CisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9y
Zy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvcmVzdWx0c191bml0dGVz
dHMuanM6CisgICAgICAgICguKToKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53
ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aV91bml0
dGVzdHMuanM6CisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvdGVzdC1yZXN1bHQtYXJjaGl2
ZToKKyAgICAgICAgKG1haW4pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2Nv
bmZpZy9wb3J0cy5weToKKyAgICAgICAgKERlcHJlY2F0ZWRQb3J0KToKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvYnVpbGRib3QvYnVpbGRib3RfbW9jay5weToKKyAgICAg
ICAgKE1vY2tCdWlsZGVyLmFjY3VtdWxhdGVkX3Jlc3VsdHNfdXJsKToKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vY3Jhc2hsb2dzX3VuaXR0ZXN0LnB5OgorICAgICAg
ICAobWFrZV9tb2NrX2NyYXNoX3JlcG9ydF93aW4pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5OgorICAg
ICAgICAoUnVuVGVzdC50ZXN0X2Jhc2ljKToKKyAgICAgICAgKFJ1blRlc3QudGVzdF9zdGRlcnJf
aXNfc2F2ZWQpOgorICAgICAgICAoUnVuVGVzdC50ZXN0X21pc3NpbmdfYW5kX3VuZXhwZWN0ZWRf
cmVzdWx0cyk6CisgICAgICAgIChSdW5UZXN0LnRlc3RfcGl4ZWxfdGVzdF9kaXJlY3Rvcmllcyk6
CisgICAgICAgIChSdW5UZXN0LnRlc3RfY3Jhc2hfd2l0aF9zdGRlcnIpOgorICAgICAgICAoUnVu
VGVzdC50ZXN0X25vX2ltYWdlX2ZhaWx1cmVfd2l0aF9pbWFnZV9kaWZmKToKKyAgICAgICAgKFJ1
blRlc3QudGVzdF9jcmFzaF9sb2cpOgorICAgICAgICAoUnVuVGVzdC50ZXN0X3dlYl9wcm9jZXNz
X2NyYXNoX2xvZyk6CisgICAgICAgIChSdW5UZXN0LnRlc3RfZXhpdF9hZnRlcl9uX2ZhaWx1cmVz
X3VwbG9hZCk6CisgICAgICAgIChSdW5UZXN0LnRlc3RfcmVzdWx0c19kaXJlY3RvcnlfZGVmYXVs
dCk6CisgICAgICAgIChSdW5UZXN0LnRlc3RfcmV0cnlpbmdfYW5kX2ZsYWt5X3Rlc3RzKToKKyAg
ICAgICAgKFJ1blRlc3QudGVzdF9yZXRyeWluZ19mb3JjZV9waXhlbF90ZXN0cyk6CisgICAgICAg
IChSdW5UZXN0LnRlc3RfcmV0cnlpbmdfdXNlc19yZXRyaWVzX2RpcmVjdG9yeSk6CisgICAgICAg
IChSdW5UZXN0LnRlc3RfcmVmdGVzdF9zaG91bGRfbm90X3VzZV9uYW1pbmdfY29udmVudGlvbl9p
Zl9ub3RfbGlzdGVkX2luX3JlZnRlc3RsaXN0KToKKyAgICAgICAgKFJ1blRlc3QudGVzdF9vdXRw
dXRfZGlmZnMpOgorICAgICAgICAoRW5kVG9FbmRUZXN0LnRlc3RfcmVmdGVzdF93aXRoX3R3b19u
b3RyZWZzKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFzZS5weToKKyAgICAg
ICAgKFBvcnQuZGVmYXVsdF9yZXN1bHRzX2RpcmVjdG9yeSk6CisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS9wb3J0L2RyaXZlcl91bml0dGVzdC5weToKKyAgICAgICAgKERyaXZlclRlc3QudGVz
dF9wcm9maWxlcl9hc193cmFwcGVyKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQv
bGVha2RldGVjdG9yX3ZhbGdyaW5kX3VuaXR0ZXN0LnB5OgorICAgICAgICAoTGVha0RldGVjdG9y
VmFsZ3JpbmRUZXN0LnRlc3RfcGFyc2VfYW5kX3ByaW50X2xlYWtzX2RldGFpbF9wYXNzKToKKyAg
ICAgICAgKExlYWtEZXRlY3RvclZhbGdyaW5kVGVzdC50ZXN0X3BhcnNlX2FuZF9wcmludF9sZWFr
c19kZXRhaWxfaW5jb21wbGV0ZSk6CisgICAgICAgIChMZWFrRGV0ZWN0b3JWYWxncmluZFRlc3Qu
dGVzdF9wYXJzZV9hbmRfcHJpbnRfbGVha3NfZGV0YWlsX2VtcHR5KToKKyAgICAgICAgKExlYWtE
ZXRlY3RvclZhbGdyaW5kVGVzdC50ZXN0X3BhcnNlX2FuZF9wcmludF9sZWFrc19kZXRhaWxfbWlz
Zm9ybWF0dGVkKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjX3VuaXR0ZXN0
LnB5OgorICAgICAgICAodGVzdF9zYW1wbGVfcHJvY2Vzcyk6CisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS9wb3J0L3Rlc3QucHk6CisgICAgICAgIChUZXN0UG9ydC5kZWZhdWx0X3Jlc3VsdHNf
ZGlyZWN0b3J5KToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ZsYWt5dGVz
dHJlcG9ydGVyLnB5OgorICAgICAgICAoX2F0dGFjaF9mYWlsdXJlX2RpZmYpOgorICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZmxha3l0ZXN0cmVwb3J0ZXJfdW5pdHRlc3QucHk6
CisgICAgICAgICh0ZXN0X2ZpbmRfaW5fYXJjaGl2ZS5Nb2NrWmlwRmlsZS5uYW1lbGlzdCk6Cisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9sYXlvdXR0ZXN0cmVzdWx0c3JlYWRl
cl91bml0dGVzdC5weToKKyAgICAgICAgKHRlc3RfYXJjaGl2ZV9sYXN0X2xheW91dF90ZXN0X3Jl
c3VsdHNfd2l0aF9yZWxhdGl2ZV9wYXRoKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvYm90L3BhdGNoYW5hbHlzaXN0YXNrLnB5OgorICAgICAgICAoUGF0Y2hBbmFseXNpc1Rhc2su
X3Rlc3RfcGF0Y2gpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9x
dWV1ZXMucHk6CisgICAgICAgIChQYXRjaFByb2Nlc3NpbmdRdWV1ZS5fdXBsb2FkX3Jlc3VsdHNf
YXJjaGl2ZV9mb3JfcGF0Y2gpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21t
YW5kcy9xdWV1ZXNfdW5pdHRlc3QucHk6CisgICAgICAgIChQYXRjaFByb2Nlc3NpbmdRdWV1ZVRl
c3QudGVzdF91cGxvYWRfcmVzdWx0c19hcmNoaXZlX2Zvcl9wYXRjaCk6CisgICAgICAgIChDb21t
aXRRdWV1ZVRlc3QudGVzdF9jb21taXRfcXVldWUpOgorICAgICAgICAodGVzdF9yb2xsb3V0KToK
KyAgICAgICAgKHRlc3RfbWFudWFsX3JlamVjdF9kdXJpbmdfcHJvY2Vzc2luZyk6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFzZWxpbmVfdW5pdHRlc3QucHk6
CisgICAgICAgIChfQmFzZVRlc3RDYXNlKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvc2VydmVycy9yZWJhc2VsaW5lc2VydmVyX3VuaXR0ZXN0LnB5OgorICAgICAgICAoZ2V0X3Rl
c3RfY29uZmlnKToKKwogMjAxNC0xMC0wMiAgQ2FybG9zIEFsYmVydG8gTG9wZXogUGVyZXogIDxj
bG9wZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBbSkhCdWlsZF0gU3dpdGNoIHNvdXJj
ZXdhcmUub3JnIG1pcnJvciB0byBodHRwLgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9jb21tb24vY29uZmlnL3BvcnRzLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21t
b24vY29uZmlnL3BvcnRzLnB5CmluZGV4IGI3MGI4M2MuLjc1ZmFkYzYgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NvbmZpZy9wb3J0cy5weQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvcG9ydHMucHkKQEAgLTM3LDcgKzM3LDcgQEAg
ZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZSBpbXBvcnQgRXhlY3V0aXZlCiAK
IAogY2xhc3MgRGVwcmVjYXRlZFBvcnQob2JqZWN0KToKLSAgICByZXN1bHRzX2RpcmVjdG9yeSA9
ICIvdG1wL2xheW91dC10ZXN0LXJlc3VsdHMiCisgICAgcmVzdWx0c19kaXJlY3RvcnkgPSAiL3Rt
cC90ZXN0LXJlc3VsdHMiCiAKICAgICAjIFN1YmNsYXNzZXMgbXVzdCBvdmVycmlkZQogICAgIHBv
cnRfZmxhZ19uYW1lID0gTm9uZQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9j
b21tb24vbmV0L2J1aWxkYm90L2J1aWxkYm90X21vY2sucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2NvbW1vbi9uZXQvYnVpbGRib3QvYnVpbGRib3RfbW9jay5weQppbmRleCBkMjBiZGI3Li4z
MTEwMWI0IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvYnVp
bGRib3QvYnVpbGRib3RfbW9jay5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1v
bi9uZXQvYnVpbGRib3QvYnVpbGRib3RfbW9jay5weQpAQCAtNTEsNyArNTEsNyBAQCBjbGFzcyBN
b2NrQnVpbGRlcihvYmplY3QpOgogICAgICAgICByZXR1cm4gImh0dHA6Ly9leGFtcGxlLmNvbS9i
dWlsZGVycy8lcy9yZXN1bHRzIiAlIHNlbGYubmFtZSgpCiAKICAgICBkZWYgYWNjdW11bGF0ZWRf
cmVzdWx0c191cmwoc2VsZik6Ci0gICAgICAgIHJldHVybiAiaHR0cDovL2V4YW1wbGUuY29tL2Yv
YnVpbGRlcnMvJXMvcmVzdWx0cy9sYXlvdXQtdGVzdC1yZXN1bHRzIiAlIHNlbGYubmFtZSgpCisg
ICAgICAgIHJldHVybiAiaHR0cDovL2V4YW1wbGUuY29tL2YvYnVpbGRlcnMvJXMvcmVzdWx0cy90
ZXN0LXJlc3VsdHMiICUgc2VsZi5uYW1lKCkKIAogICAgIGRlZiBsYXRlc3RfbGF5b3V0X3Rlc3Rf
cmVzdWx0c191cmwoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLmFjY3VtdWxhdGVkX3Jlc3Vs
dHNfdXJsKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3Rl
bS9jcmFzaGxvZ3NfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9z
eXN0ZW0vY3Jhc2hsb2dzX3VuaXR0ZXN0LnB5CmluZGV4IGE4ZmY4MjIuLjQwZjdjNmYgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9jcmFzaGxvZ3NfdW5p
dHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2NyYXNo
bG9nc191bml0dGVzdC5weQpAQCAtNzIsNyArNzIsNyBAQCBTZXJpYWwgQVRBIERldmljZTogT1BU
SUFSQyBEVkQgUlcgQUQtNTY3MFMKIAogCiBkZWYgbWFrZV9tb2NrX2NyYXNoX3JlcG9ydF93aW4o
cHJvY2Vzc19uYW1lLCBwaWQpOgotICAgIHJldHVybiAiIiJPcGVuZWQgbG9nIGZpbGUgJ0M6XFBy
b2plY3RzXFdlYktpdFxPcGVuU291cmNlXFdlYktpdEJ1aWxkXFJlbGVhc2VcYmluMzJcbGF5b3V0
LXRlc3QtcmVzdWx0c1xDcmFzaExvZ18xZDU4XzIwMTMtMDYtMDNfMTItMjEtMjAtMTEwLnR4dCcK
KyAgICByZXR1cm4gIiIiT3BlbmVkIGxvZyBmaWxlICdDOlxQcm9qZWN0c1xXZWJLaXRcT3BlblNv
dXJjZVxXZWJLaXRCdWlsZFxSZWxlYXNlXGJpbjMyXHRlc3QtcmVzdWx0c1xDcmFzaExvZ18xZDU4
XzIwMTMtMDYtMDNfMTItMjEtMjAtMTEwLnR4dCcKIDA6MDAwPiAuc3JjcGF0aCAiQzpcUHJvamVj
dHNcV2ViS2l0XE9wZW5Tb3VyY2UiCiBTb3VyY2Ugc2VhcmNoIHBhdGggaXM6IEM6XFByb2plY3Rz
XFdlYktpdFxPcGVuU291cmNlCiAwOjAwMD4gIWFuYWx5emUgLXZ2CmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzX2ludGVncmF0
aW9udGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3J1bl93ZWJr
aXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5CmluZGV4IDg2MmNjNmUuLjEyNWQ4ZDkgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3J1bl93ZWJraXRfdGVz
dHNfaW50ZWdyYXRpb250ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5CkBAIC0yMTIsMTEgKzIx
MiwxMSBAQCBjbGFzcyBSdW5UZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBTdHJlYW1UZXN0aW5nTWl4
aW4pOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRldGFpbHMuc3VtbWFyaXplZF9yZXN1bHRz
Wyd0ZXN0cyddWydmYWlsdXJlcyddWydleHBlY3RlZCddWydpbWFnZS5odG1sJ11bJ2ltYWdlX2Rp
ZmZfcGVyY2VudCddLCAxKQogCiAgICAgICAgICMgRW5zdXJlIHRoZSByZXN1bHRzIHdlcmUgd3Jp
dHRlbiBvdXQgYW5kIGRpc3BsYXllZC4KLSAgICAgICAgZnVsbF9yZXN1bHRzX3RleHQgPSBob3N0
LmZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxs
X3Jlc3VsdHMuanNvbicpCisgICAgICAgIGZ1bGxfcmVzdWx0c190ZXh0ID0gaG9zdC5maWxlc3lz
dGVtLnJlYWRfdGV4dF9maWxlKCcvdG1wL3Rlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNvbicp
CiAgICAgICAgIGpzb25fdG9fZXZhbCA9IGZ1bGxfcmVzdWx0c190ZXh0LnJlcGxhY2UoIkFERF9S
RVNVTFRTKCIsICIiKS5yZXBsYWNlKCIpOyIsICIiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KGpzb24ubG9hZHMoanNvbl90b19ldmFsKSwgZGV0YWlscy5zdW1tYXJpemVkX3Jlc3VsdHMpCiAK
LSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChob3N0LnVzZXIub3BlbmVkX3VybHMsIFtwYXRoLmFi
c3BhdGhfdG9fdXJpKE1vY2tIb3N0KCkucGxhdGZvcm0sICcvdG1wL2xheW91dC10ZXN0LXJlc3Vs
dHMvcmVzdWx0cy5odG1sJyldKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhvc3QudXNlci5v
cGVuZWRfdXJscywgW3BhdGguYWJzcGF0aF90b191cmkoTW9ja0hvc3QoKS5wbGF0Zm9ybSwgJy90
bXAvdGVzdC1yZXN1bHRzL3Jlc3VsdHMuaHRtbCcpXSkKIAogCiAgICAgZGVmIHRlc3RfYmF0Y2hf
c2l6ZShzZWxmKToKQEAgLTQ2NCw3ICs0NjQsNyBAQCBjbGFzcyBSdW5UZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlLCBTdHJlYW1UZXN0aW5nTWl4aW4pOgogICAgIGRlZiB0ZXN0X3N0ZGVycl9pc19zYXZl
ZChzZWxmKToKICAgICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKICAgICAgICAgc2VsZi5hc3NlcnRU
cnVlKHBhc3NpbmdfcnVuKGhvc3Q9aG9zdCkpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaG9z
dC5maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxlKCcvdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGFz
c2VzL2Vycm9yLXN0ZGVyci50eHQnKSwKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChob3N0LmZp
bGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoJy90bXAvdGVzdC1yZXN1bHRzL3Bhc3Nlcy9lcnJvci1z
dGRlcnIudHh0JyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdzdHVmZiBnb2luZyB0byBz
dGRlcnInKQogCiAgICAgZGVmIHRlc3RfdGVzdF9saXN0KHNlbGYpOgpAQCAtNDk3LDcgKzQ5Nyw3
IEBAIGNsYXNzIFJ1blRlc3QodW5pdHRlc3QuVGVzdENhc2UsIFN0cmVhbVRlc3RpbmdNaXhpbik6
CiAgICAgICAgIGZpbGVfbGlzdCA9IGhvc3QuZmlsZXN5c3RlbS53cml0dGVuX2ZpbGVzLmtleXMo
KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRldGFpbHMuZXhpdF9jb2RlLCAxKQogICAgICAg
ICBleHBlY3RlZF90b2tlbiA9ICcidW5leHBlY3RlZCI6eyJ0ZXh0LWltYWdlLWNoZWNrc3VtLmh0
bWwiOnsicmVwb3J0IjoiUkVHUkVTU0lPTiIsImV4cGVjdGVkIjoiUEFTUyIsImFjdHVhbCI6IklN
QUdFK1RFWFQiLCJpbWFnZV9kaWZmX3BlcmNlbnQiOjF9LCJtaXNzaW5nX3RleHQuaHRtbCI6eyJy
ZXBvcnQiOiJNSVNTSU5HIiwiZXhwZWN0ZWQiOiJQQVNTIiwiaXNfbWlzc2luZ190ZXh0Ijp0cnVl
LCJhY3R1YWwiOiJNSVNTSU5HIn0nCi0gICAgICAgIGpzb25fc3RyaW5nID0gaG9zdC5maWxlc3lz
dGVtLnJlYWRfdGV4dF9maWxlKCcvdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRz
Lmpzb24nKQorICAgICAgICBqc29uX3N0cmluZyA9IGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRf
ZmlsZSgnL3RtcC90ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nKQogICAgICAgICBzZWxm
LmFzc2VydFRydWUoanNvbl9zdHJpbmcuZmluZChleHBlY3RlZF90b2tlbikgIT0gLTEpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0VHJ1ZShqc29uX3N0cmluZy5maW5kKCcibnVtX3JlZ3Jlc3Npb25zIjox
JykgIT0gLTEpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShqc29uX3N0cmluZy5maW5kKCcibnVt
X2ZsYWt5IjowJykgIT0gLTEpCkBAIC01MTQsNyArNTE0LDcgQEAgY2xhc3MgUnVuVGVzdCh1bml0
dGVzdC5UZXN0Q2FzZSwgU3RyZWFtVGVzdGluZ01peGluKToKIAogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKGRldGFpbHMuZXhpdF9jb2RlLCAxKQogICAgICAgICBleHBlY3RlZF90b2tlbiA9ICci
dW5leHBlY3RlZCI6eyJwaXhlbGRpciI6eyJpbWFnZV9pbl9waXhlbGRpci5odG1sIjp7InJlcG9y
dCI6IlJFR1JFU1NJT04iLCJleHBlY3RlZCI6IlBBU1MiLCJhY3R1YWwiOiJJTUFHRSInCi0gICAg
ICAgIGpzb25fc3RyaW5nID0gaG9zdC5maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxlKCcvdG1wL2xh
eW91dC10ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nKQorICAgICAgICBqc29uX3N0cmlu
ZyA9IGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmlsZSgnL3RtcC90ZXN0LXJlc3VsdHMvZnVs
bF9yZXN1bHRzLmpzb24nKQogICAgICAgICBzZWxmLmFzc2VydFRydWUoanNvbl9zdHJpbmcuZmlu
ZChleHBlY3RlZF90b2tlbikgIT0gLTEpCiAKICAgICBkZWYgdGVzdF9taXNzaW5nX2FuZF91bmV4
cGVjdGVkX3Jlc3VsdHNfd2l0aF9jdXN0b21fZXhpdF9jb2RlKHNlbGYpOgpAQCAtNTM3LDEyICs1
MzcsMTIgQEAgY2xhc3MgUnVuVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSwgU3RyZWFtVGVzdGluZ01p
eGluKToKICAgICBkZWYgdGVzdF9jcmFzaF93aXRoX3N0ZGVycihzZWxmKToKICAgICAgICAgaG9z
dCA9IE1vY2tIb3N0KCkKICAgICAgICAgXywgcmVndWxhcl9vdXRwdXQsIF8gPSBsb2dnaW5nX3J1
bihbJ2ZhaWx1cmVzL3VuZXhwZWN0ZWQvY3Jhc2gtd2l0aC1zdGRlcnIuaHRtbCddLCB0ZXN0c19p
bmNsdWRlZD1UcnVlLCBob3N0PWhvc3QpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShob3N0LmZp
bGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxsX3Jl
c3VsdHMuanNvbicpLmZpbmQoJ3siY3Jhc2gtd2l0aC1zdGRlcnIuaHRtbCI6eyJyZXBvcnQiOiJS
RUdSRVNTSU9OIiwiZXhwZWN0ZWQiOiJQQVNTIiwiYWN0dWFsIjoiQ1JBU0giLCJoYXNfc3RkZXJy
Ijp0cnVlfX0nKSAhPSAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3Rl
bS5yZWFkX3RleHRfZmlsZSgnL3RtcC90ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nKS5m
aW5kKCd7ImNyYXNoLXdpdGgtc3RkZXJyLmh0bWwiOnsicmVwb3J0IjoiUkVHUkVTU0lPTiIsImV4
cGVjdGVkIjoiUEFTUyIsImFjdHVhbCI6IkNSQVNIIiwiaGFzX3N0ZGVyciI6dHJ1ZX19JykgIT0g
LTEpCiAKICAgICBkZWYgdGVzdF9ub19pbWFnZV9mYWlsdXJlX3dpdGhfaW1hZ2VfZGlmZihzZWxm
KToKICAgICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKICAgICAgICAgXywgcmVndWxhcl9vdXRwdXQs
IF8gPSBsb2dnaW5nX3J1bihbJ2ZhaWx1cmVzL3VuZXhwZWN0ZWQvY2hlY2tzdW0td2l0aC1tYXRj
aGluZy1pbWFnZS5odG1sJ10sIHRlc3RzX2luY2x1ZGVkPVRydWUsIGhvc3Q9aG9zdCkKLSAgICAg
ICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmlsZSgnL3RtcC9s
YXlvdXQtdGVzdC1yZXN1bHRzL2Z1bGxfcmVzdWx0cy5qc29uJykuZmluZCgnIm51bV9yZWdyZXNz
aW9ucyI6MCcpICE9IC0xKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaG9zdC5maWxlc3lzdGVt
LnJlYWRfdGV4dF9maWxlKCcvdG1wL3Rlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNvbicpLmZp
bmQoJyJudW1fcmVncmVzc2lvbnMiOjAnKSAhPSAtMSkKIAogICAgIGRlZiB0ZXN0X2NyYXNoX2xv
ZyhzZWxmKToKICAgICAgICAgIyBGSVhNRTogTmVlZCB0byByZXdyaXRlIHRoZXNlIHRlc3RzIHRv
IG5vdCBiZSBtYWMtc3BlY2lmaWMsIG9yIG1vdmUgdGhlbSBlbHNld2hlcmUuCkBAIC01NTQsNyAr
NTU0LDcgQEAgY2xhc3MgUnVuVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSwgU3RyZWFtVGVzdGluZ01p
eGluKToKICAgICAgICAgaG9zdC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZSgnL1VzZXJzL21v
Y2svTGlicmFyeS9Mb2dzL0RpYWdub3N0aWNSZXBvcnRzL0R1bXBSZW5kZXJUcmVlXzIwMTEtMDYt
MTMtMTUwNzE5X3F1YWR6ZW4uY3Jhc2gnLCBtb2NrX2NyYXNoX3JlcG9ydCkKICAgICAgICAgXywg
cmVndWxhcl9vdXRwdXQsIF8gPSBsb2dnaW5nX3J1bihbJ2ZhaWx1cmVzL3VuZXhwZWN0ZWQvY3Jh
c2gtd2l0aC1zdGRlcnIuaHRtbCddLCB0ZXN0c19pbmNsdWRlZD1UcnVlLCBob3N0PWhvc3QpCiAg
ICAgICAgIGV4cGVjdGVkX2NyYXNoX2xvZyA9IG1vY2tfY3Jhc2hfcmVwb3J0Ci0gICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoaG9zdC5maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxlKCcvdG1wL2xheW91
dC10ZXN0LXJlc3VsdHMvZmFpbHVyZXMvdW5leHBlY3RlZC9jcmFzaC13aXRoLXN0ZGVyci1jcmFz
aC1sb2cudHh0JyksIGV4cGVjdGVkX2NyYXNoX2xvZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bChob3N0LmZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoJy90bXAvdGVzdC1yZXN1bHRzL2ZhaWx1
cmVzL3VuZXhwZWN0ZWQvY3Jhc2gtd2l0aC1zdGRlcnItY3Jhc2gtbG9nLnR4dCcpLCBleHBlY3Rl
ZF9jcmFzaF9sb2cpCiAKICAgICBkZWYgdGVzdF93ZWJfcHJvY2Vzc19jcmFzaF9sb2coc2VsZik6
CiAgICAgICAgICMgRklYTUU6IE5lZWQgdG8gcmV3cml0ZSB0aGVzZSB0ZXN0cyB0byBub3QgYmUg
bWFjLXNwZWNpZmljLCBvciBtb3ZlIHRoZW0gZWxzZXdoZXJlLgpAQCAtNTY1LDcgKzU2NSw3IEBA
IGNsYXNzIFJ1blRlc3QodW5pdHRlc3QuVGVzdENhc2UsIFN0cmVhbVRlc3RpbmdNaXhpbik6CiAg
ICAgICAgIGhvc3QgPSBNb2NrSG9zdCgpCiAgICAgICAgIGhvc3QuZmlsZXN5c3RlbS53cml0ZV90
ZXh0X2ZpbGUoJy9Vc2Vycy9tb2NrL0xpYnJhcnkvTG9ncy9EaWFnbm9zdGljUmVwb3J0cy9XZWJQ
cm9jZXNzXzIwMTEtMDYtMTMtMTUwNzE5X3F1YWR6ZW4uY3Jhc2gnLCBtb2NrX2NyYXNoX3JlcG9y
dCkKICAgICAgICAgbG9nZ2luZ19ydW4oWydmYWlsdXJlcy91bmV4cGVjdGVkL3dlYi1wcm9jZXNz
LWNyYXNoLXdpdGgtc3RkZXJyLmh0bWwnXSwgdGVzdHNfaW5jbHVkZWQ9VHJ1ZSwgaG9zdD1ob3N0
KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmls
ZSgnL3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2ZhaWx1cmVzL3VuZXhwZWN0ZWQvd2ViLXByb2Nl
c3MtY3Jhc2gtd2l0aC1zdGRlcnItY3Jhc2gtbG9nLnR4dCcpLCBtb2NrX2NyYXNoX3JlcG9ydCkK
KyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChob3N0LmZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUo
Jy90bXAvdGVzdC1yZXN1bHRzL2ZhaWx1cmVzL3VuZXhwZWN0ZWQvd2ViLXByb2Nlc3MtY3Jhc2gt
d2l0aC1zdGRlcnItY3Jhc2gtbG9nLnR4dCcpLCBtb2NrX2NyYXNoX3JlcG9ydCkKIAogICAgIGRl
ZiB0ZXN0X2V4aXRfYWZ0ZXJfbl9mYWlsdXJlc191cGxvYWQoc2VsZik6CiAgICAgICAgIGhvc3Qg
PSBNb2NrSG9zdCgpCkBAIC01NzQsMTMgKzU3NCwxMyBAQCBjbGFzcyBSdW5UZXN0KHVuaXR0ZXN0
LlRlc3RDYXNlLCBTdHJlYW1UZXN0aW5nTWl4aW4pOgogICAgICAgICAgICB0ZXN0c19pbmNsdWRl
ZD1UcnVlLCBob3N0PWhvc3QpCiAKICAgICAgICAgIyBCeSByZXR1cm5pbmcgRmFsc2UsIHdlIGtu
b3cgdGhhdCB0aGUgaW5jcmVtZW50YWwgcmVzdWx0cyB3ZXJlIGdlbmVyYXRlZCBhbmQgdGhlbiBk
ZWxldGVkLgotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMo
Jy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9pbmNyZW1lbnRhbF9yZXN1bHRzLmpzb24nKSkKKyAg
ICAgICAgc2VsZi5hc3NlcnRGYWxzZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCcvdG1wL3Rlc3Qt
cmVzdWx0cy9pbmNyZW1lbnRhbF9yZXN1bHRzLmpzb24nKSkKIAogICAgICAgICAjIFRoaXMgY2hl
Y2tzIHRoYXQgd2UgcmVwb3J0IG9ubHkgdGhlIG51bWJlciBvZiB0ZXN0cyB0aGF0IGFjdHVhbGx5
IGZhaWxlZC4KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZXRhaWxzLmV4aXRfY29kZSwgMSkK
IAogICAgICAgICAjIFRoaXMgY2hlY2tzIHRoYXQgcGFzc2VzL3RleHQuaHRtbCBpcyBjb25zaWRl
cmVkIFNLSVBwZWQuCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnInNraXBwZWQiOjEnIGluIGhv
c3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmlsZSgnL3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Z1
bGxfcmVzdWx0cy5qc29uJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnInNraXBwZWQiOjEn
IGluIGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmlsZSgnL3RtcC90ZXN0LXJlc3VsdHMvZnVs
bF9yZXN1bHRzLmpzb24nKSkKIAogICAgICAgICAjIFRoaXMgY2hlY2tzIHRoYXQgd2UgdG9sZCB0
aGUgdXNlciB3ZSBiYWlsZWQgb3V0LgogICAgICAgICBzZWxmLmFzc2VydFRydWUoJ0V4aXRpbmcg
ZWFybHkgYWZ0ZXIgMSBmYWlsdXJlcy4gMSB0ZXN0cyBydW4uXG4nIGluIHJlZ3VsYXJfb3V0cHV0
LmdldHZhbHVlKCkpCkBAIC02MjYsNyArNjI2LDcgQEAgY2xhc3MgUnVuVGVzdCh1bml0dGVzdC5U
ZXN0Q2FzZSwgU3RyZWFtVGVzdGluZ01peGluKToKIAogICAgICAgICAjIFRoaXMgaXMgdGhlIGRl
ZmF1bHQgbG9jYXRpb24uCiAgICAgICAgIF8sIF8sIHVzZXIgPSBsb2dnaW5nX3J1bih0ZXN0c19p
bmNsdWRlZD1UcnVlKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVzZXIub3BlbmVkX3VybHMs
IFtwYXRoLmFic3BhdGhfdG9fdXJpKE1vY2tIb3N0KCkucGxhdGZvcm0sICcvdG1wL2xheW91dC10
ZXN0LXJlc3VsdHMvcmVzdWx0cy5odG1sJyldKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVz
ZXIub3BlbmVkX3VybHMsIFtwYXRoLmFic3BhdGhfdG9fdXJpKE1vY2tIb3N0KCkucGxhdGZvcm0s
ICcvdG1wL3Rlc3QtcmVzdWx0cy9yZXN1bHRzLmh0bWwnKV0pCiAKICAgICBkZWYgdGVzdF9yZXN1
bHRzX2RpcmVjdG9yeV9yZWxhdGl2ZShzZWxmKToKICAgICAgICAgIyBXZSBydW4gYSBjb25maWd1
cmF0aW9uIHRoYXQgc2hvdWxkIGZhaWwsIHRvIGdlbmVyYXRlIG91dHB1dCwgdGhlbgpAQCAtNjQy
LDggKzY0Miw4IEBAIGNsYXNzIFJ1blRlc3QodW5pdHRlc3QuVGVzdENhc2UsIFN0cmVhbVRlc3Rp
bmdNaXhpbik6CiAgICAgICAgIGRldGFpbHMsIGVyciwgXyA9IGxvZ2dpbmdfcnVuKFsnLS1kZWJ1
Zy1yd3QtbG9nZ2luZycsICdmYWlsdXJlcy9mbGFreSddLCB0ZXN0c19pbmNsdWRlZD1UcnVlLCBo
b3N0PWhvc3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGV0YWlscy5leGl0X2NvZGUsIDAp
CiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnUmV0cnlpbmcnIGluIGVyci5nZXR2YWx1ZSgpKQot
ICAgICAgICBzZWxmLmFzc2VydFRydWUoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygnL3RtcC9sYXlv
dXQtdGVzdC1yZXN1bHRzL2ZhaWx1cmVzL2ZsYWt5L3RleHQtYWN0dWFsLnR4dCcpKQotICAgICAg
ICBzZWxmLmFzc2VydEZhbHNlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoJy90bXAvbGF5b3V0LXRl
c3QtcmVzdWx0cy9yZXRyaWVzL2ZhaWx1cmVzL2ZsYWt5L3RleHQtYWN0dWFsLnR4dCcpKQorICAg
ICAgICBzZWxmLmFzc2VydFRydWUoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygnL3RtcC90ZXN0LXJl
c3VsdHMvZmFpbHVyZXMvZmxha3kvdGV4dC1hY3R1YWwudHh0JykpCisgICAgICAgIHNlbGYuYXNz
ZXJ0RmFsc2UoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygnL3RtcC90ZXN0LXJlc3VsdHMvcmV0cmll
cy9mYWlsdXJlcy9mbGFreS90ZXh0LWFjdHVhbC50eHQnKSkKIAogICAgICAgICAjIE5vdyB3ZSB0
ZXN0IHRoYXQgLS1jbG9iYmVyLW9sZC1yZXN1bHRzIGRvZXMgcmVtb3ZlIHRoZSBvbGQgZW50cmll
cyBhbmQgdGhlIG9sZCByZXRyaWVzLAogICAgICAgICAjIGFuZCB0aGF0IHdlIGRvbid0IHJldHJ5
IGFnYWluLgpAQCAtNjUyLDcgKzY1Miw3IEBAIGNsYXNzIFJ1blRlc3QodW5pdHRlc3QuVGVzdENh
c2UsIFN0cmVhbVRlc3RpbmdNaXhpbik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGV0YWls
cy5leGl0X2NvZGUsIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnQ2xvYmJlcmluZyBvbGQg
cmVzdWx0cycgaW4gZXJyLmdldHZhbHVlKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnZmxh
a3kvdGV4dC5odG1sJyBpbiBlcnIuZ2V0dmFsdWUoKSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVl
KGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYWlsdXJl
cy9mbGFreS90ZXh0LWFjdHVhbC50eHQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhvc3Qu
ZmlsZXN5c3RlbS5leGlzdHMoJy90bXAvdGVzdC1yZXN1bHRzL2ZhaWx1cmVzL2ZsYWt5L3RleHQt
YWN0dWFsLnR4dCcpKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhvc3QuZmlsZXN5c3RlbS5l
eGlzdHMoJ3JldHJpZXMnKSkKIAogICAgIGRlZiB0ZXN0X3JldHJ5aW5nX2ZvcmNlX3BpeGVsX3Rl
c3RzKHNlbGYpOgpAQCAtNjYwLDExICs2NjAsMTEgQEAgY2xhc3MgUnVuVGVzdCh1bml0dGVzdC5U
ZXN0Q2FzZSwgU3RyZWFtVGVzdGluZ01peGluKToKICAgICAgICAgZGV0YWlscywgZXJyLCBfID0g
bG9nZ2luZ19ydW4oWyctLW5vLXBpeGVsLXRlc3RzJywgJ2ZhaWx1cmVzL3VuZXhwZWN0ZWQvdGV4
dC1pbWFnZS1jaGVja3N1bS5odG1sJ10sIHRlc3RzX2luY2x1ZGVkPVRydWUsIGhvc3Q9aG9zdCkK
ICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZXRhaWxzLmV4aXRfY29kZSwgMSkKICAgICAgICAg
c2VsZi5hc3NlcnRUcnVlKCdSZXRyeWluZycgaW4gZXJyLmdldHZhbHVlKCkpCi0gICAgICAgIHNl
bGYuYXNzZXJ0VHJ1ZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCcvdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvZmFpbHVyZXMvdW5leHBlY3RlZC90ZXh0LWltYWdlLWNoZWNrc3VtLWFjdHVhbC50eHQn
KSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCcvdG1w
L2xheW91dC10ZXN0LXJlc3VsdHMvZmFpbHVyZXMvdW5leHBlY3RlZC90ZXh0LWltYWdlLWNoZWNr
c3VtLWFjdHVhbC5wbmcnKSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3Rl
bS5leGlzdHMoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9yZXRyaWVzL2ZhaWx1cmVzL3VuZXhw
ZWN0ZWQvdGV4dC1pbWFnZS1jaGVja3N1bS1hY3R1YWwudHh0JykpCi0gICAgICAgIHNlbGYuYXNz
ZXJ0VHJ1ZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCcvdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
cmV0cmllcy9mYWlsdXJlcy91bmV4cGVjdGVkL3RleHQtaW1hZ2UtY2hlY2tzdW0tYWN0dWFsLnBu
ZycpKQotICAgICAgICBqc29uX3N0cmluZyA9IGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmls
ZSgnL3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Z1bGxfcmVzdWx0cy5qc29uJykKKyAgICAgICAg
c2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoJy90bXAvdGVzdC1yZXN1bHRz
L2ZhaWx1cmVzL3VuZXhwZWN0ZWQvdGV4dC1pbWFnZS1jaGVja3N1bS1hY3R1YWwudHh0JykpCisg
ICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygnL3RtcC90ZXN0
LXJlc3VsdHMvZmFpbHVyZXMvdW5leHBlY3RlZC90ZXh0LWltYWdlLWNoZWNrc3VtLWFjdHVhbC5w
bmcnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoJy90
bXAvdGVzdC1yZXN1bHRzL3JldHJpZXMvZmFpbHVyZXMvdW5leHBlY3RlZC90ZXh0LWltYWdlLWNo
ZWNrc3VtLWFjdHVhbC50eHQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5
c3RlbS5leGlzdHMoJy90bXAvdGVzdC1yZXN1bHRzL3JldHJpZXMvZmFpbHVyZXMvdW5leHBlY3Rl
ZC90ZXh0LWltYWdlLWNoZWNrc3VtLWFjdHVhbC5wbmcnKSkKKyAgICAgICAganNvbl9zdHJpbmcg
PSBob3N0LmZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoJy90bXAvdGVzdC1yZXN1bHRzL2Z1bGxf
cmVzdWx0cy5qc29uJykKICAgICAgICAganNvbiA9IHBhcnNlX2Z1bGxfcmVzdWx0cyhqc29uX3N0
cmluZykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChqc29uWyJ0ZXN0cyJdWyJmYWlsdXJlcyJd
WyJ1bmV4cGVjdGVkIl1bInRleHQtaW1hZ2UtY2hlY2tzdW0uaHRtbCJdLAogICAgICAgICAgICAg
eyJleHBlY3RlZCI6ICJQQVNTIiwgImFjdHVhbCI6ICJURVhUIElNQUdFK1RFWFQiLCAiaW1hZ2Vf
ZGlmZl9wZXJjZW50IjogMSwgInJlcG9ydCI6ICJSRUdSRVNTSU9OIn0pCkBAIC02NzUsOCArNjc1
LDggQEAgY2xhc3MgUnVuVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSwgU3RyZWFtVGVzdGluZ01peGlu
KToKICAgICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKICAgICAgICAgZGV0YWlscywgZXJyLCBfID0g
bG9nZ2luZ19ydW4oWyctLWRlYnVnLXJ3dC1sb2dnaW5nJywgJ2ZhaWx1cmVzL3VuZXhwZWN0ZWQv
dGV4dC1pbWFnZS1jaGVja3N1bS5odG1sJ10sIHRlc3RzX2luY2x1ZGVkPVRydWUsIGhvc3Q9aG9z
dCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZXRhaWxzLmV4aXRfY29kZSwgMSkKLSAgICAg
ICAgc2VsZi5hc3NlcnRUcnVlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoJy90bXAvbGF5b3V0LXRl
c3QtcmVzdWx0cy9mYWlsdXJlcy91bmV4cGVjdGVkL3RleHQtaW1hZ2UtY2hlY2tzdW0tYWN0dWFs
LnR4dCcpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygn
L3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3JldHJpZXMvZmFpbHVyZXMvdW5leHBlY3RlZC90ZXh0
LWltYWdlLWNoZWNrc3VtLWFjdHVhbC50eHQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhv
c3QuZmlsZXN5c3RlbS5leGlzdHMoJy90bXAvdGVzdC1yZXN1bHRzL2ZhaWx1cmVzL3VuZXhwZWN0
ZWQvdGV4dC1pbWFnZS1jaGVja3N1bS1hY3R1YWwudHh0JykpCisgICAgICAgIHNlbGYuYXNzZXJ0
VHJ1ZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCcvdG1wL3Rlc3QtcmVzdWx0cy9yZXRyaWVzL2Zh
aWx1cmVzL3VuZXhwZWN0ZWQvdGV4dC1pbWFnZS1jaGVja3N1bS1hY3R1YWwudHh0JykpCiAKICAg
ICBkZWYgdGVzdF9ydW5fb3JkZXJfX2lubGluZShzZWxmKToKICAgICAgICAgIyBUaGVzZSBuZXh0
IHRlc3RzIHRlc3QgdGhhdCB3ZSBydW4gdGhlIHRlc3RzIGluIGFzY2VuZGluZyBhbHBoYWJldGlj
YWwKQEAgLTc0OCw3ICs3NDgsNyBAQCBjbGFzcyBSdW5UZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBT
dHJlYW1UZXN0aW5nTWl4aW4pOgogICAgIGRlZiB0ZXN0X3JlZnRlc3Rfc2hvdWxkX25vdF91c2Vf
bmFtaW5nX2NvbnZlbnRpb25faWZfbm90X2xpc3RlZF9pbl9yZWZ0ZXN0bGlzdChzZWxmKToKICAg
ICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKICAgICAgICAgXywgZXJyLCBfID0gbG9nZ2luZ19ydW4o
WyctLW5vLXNob3ctcmVzdWx0cycsICdyZWZ0ZXN0cy9mb28vJ10sIHRlc3RzX2luY2x1ZGVkPVRy
dWUsIGhvc3Q9aG9zdCkKLSAgICAgICAganNvbl9zdHJpbmcgPSBob3N0LmZpbGVzeXN0ZW0ucmVh
ZF90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNvbicp
CisgICAgICAgIGpzb25fc3RyaW5nID0gaG9zdC5maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxlKCcv
dG1wL3Rlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNvbicpCiAgICAgICAgIHNlbGYuYXNzZXJ0
VHJ1ZShqc29uX3N0cmluZy5maW5kKCcidW5saXN0ZWR0ZXN0Lmh0bWwiOnsicmVwb3J0IjoiTUlT
U0lORyIsImV4cGVjdGVkIjoiUEFTUyIsImlzX21pc3NpbmdfdGV4dCI6dHJ1ZSwiYWN0dWFsIjoi
TUlTU0lORyIsImlzX21pc3NpbmdfaW1hZ2UiOnRydWV9JykgIT0gLTEpCiAgICAgICAgIHNlbGYu
YXNzZXJ0VHJ1ZShqc29uX3N0cmluZy5maW5kKCcibnVtX3JlZ3Jlc3Npb25zIjo0JykgIT0gLTEp
CiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShqc29uX3N0cmluZy5maW5kKCcibnVtX2ZsYWt5Ijow
JykgIT0gLTEpCkBAIC04MDEsNyArODAxLDcgQEAgY2xhc3MgUnVuVGVzdCh1bml0dGVzdC5UZXN0
Q2FzZSwgU3RyZWFtVGVzdGluZ01peGluKToKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGFueShw
YXRoLmVuZHN3aXRoKCctZGlmZi50eHQnKSBmb3IgcGF0aCBpbiB3cml0dGVuX2ZpbGVzLmtleXMo
KSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYW55KHBhdGguZW5kc3dpdGgoJy1wcmV0dHkt
ZGlmZi5odG1sJykgZm9yIHBhdGggaW4gd3JpdHRlbl9maWxlcy5rZXlzKCkpKQogCi0gICAgICAg
IGZ1bGxfcmVzdWx0c190ZXh0ID0gaG9zdC5maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxlKCcvdG1w
L2xheW91dC10ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nKQorICAgICAgICBmdWxsX3Jl
c3VsdHNfdGV4dCA9IGhvc3QuZmlsZXN5c3RlbS5yZWFkX3RleHRfZmlsZSgnL3RtcC90ZXN0LXJl
c3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nKQogICAgICAgICBmdWxsX3Jlc3VsdHMgPSBqc29uLmxv
YWRzKGZ1bGxfcmVzdWx0c190ZXh0LnJlcGxhY2UoIkFERF9SRVNVTFRTKCIsICIiKS5yZXBsYWNl
KCIpOyIsICIiKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdWxsX3Jlc3VsdHNbJ2hhc19w
cmV0dHlfcGF0Y2gnXSwgRmFsc2UpCiAKQEAgLTg0MSw3ICs4NDEsNyBAQCBjbGFzcyBFbmRUb0Vu
ZFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBfLCBfLCBfID0gbG9nZ2luZ19ydW4o
WyctLW5vLXNob3ctcmVzdWx0cycsICdyZWZ0ZXN0cy9mb28vJ10sIHRlc3RzX2luY2x1ZGVkPVRy
dWUsIGhvc3Q9aG9zdCkKICAgICAgICAgZmlsZV9saXN0ID0gaG9zdC5maWxlc3lzdGVtLndyaXR0
ZW5fZmlsZXMua2V5cygpCiAKLSAgICAgICAganNvbl9zdHJpbmcgPSBob3N0LmZpbGVzeXN0ZW0u
cmVhZF90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNv
bicpCisgICAgICAgIGpzb25fc3RyaW5nID0gaG9zdC5maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxl
KCcvdG1wL3Rlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNvbicpCiAgICAgICAgIGpzb24gPSBw
YXJzZV9mdWxsX3Jlc3VsdHMoanNvbl9zdHJpbmcpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgi
bXVsdGlwbGUtbWF0Y2gtc3VjY2Vzcy5odG1sIiBub3QgaW4ganNvblsidGVzdHMiXVsicmVmdGVz
dHMiXVsiZm9vIl0pCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgibXVsdGlwbGUtbWlzbWF0Y2gt
c3VjY2Vzcy5odG1sIiBub3QgaW4ganNvblsidGVzdHMiXVsicmVmdGVzdHMiXVsiZm9vIl0pCmRp
ZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFzZS5weSBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5CmluZGV4IDY2NTYzNDEuLmE3OTI3OWEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5CisrKyBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5CkBAIC03OTQsNyArNzk0LDcgQEAgY2xhc3MgUG9y
dChvYmplY3QpOgogICAgICAgICAiIiJBYnNvbHV0ZSBwYXRoIHRvIHRoZSBkZWZhdWx0IHBsYWNl
IHRvIHN0b3JlIHRoZSB0ZXN0IHJlc3VsdHMuIiIiCiAgICAgICAgICMgUmVzdWx0cyBhcmUgc3Rv
cmUgcmVsYXRpdmUgdG8gdGhlIGJ1aWx0IHByb2R1Y3RzIHRvIG1ha2UgaXQgZWFzeQogICAgICAg
ICAjIHRvIGhhdmUgbXVsdGlwbGUgY29waWVzIG9mIHdlYmtpdCBjaGVja2VkIG91dCBhbmQgYnVp
bHQuCi0gICAgICAgIHJldHVybiBzZWxmLl9idWlsZF9wYXRoKCdsYXlvdXQtdGVzdC1yZXN1bHRz
JykKKyAgICAgICAgcmV0dXJuIHNlbGYuX2J1aWxkX3BhdGgoJ3Rlc3QtcmVzdWx0cycpCiAKICAg
ICBkZWYgc2V0dXBfdGVzdF9ydW4oc2VsZik6CiAgICAgICAgICIiIlBlcmZvcm0gcG9ydC1zcGVj
aWZpYyB3b3JrIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSB0ZXN0IHJ1bi4iIiIKZGlmZiAtLWdpdCBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXJfdW5pdHRlc3QucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L3BvcnQvZHJpdmVyX3VuaXR0ZXN0LnB5CmluZGV4IGM2MmE1NDkuLjg1
YTFmNzkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXJfdW5p
dHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2RyaXZlcl91bml0dGVz
dC5weQpAQCAtMTAxLDcgKzEwMSw3IEBAIGNsYXNzIERyaXZlclRlc3QodW5pdHRlc3QuVGVzdENh
c2UpOgogCiAgICAgZGVmIHRlc3RfcHJvZmlsZXJfYXNfd3JhcHBlcihzZWxmKToKICAgICAgICAg
ZHJpdmVyID0gRHJpdmVyKHNlbGYubWFrZV9wb3J0KE1vY2tTeXN0ZW1Ib3N0KG9zX25hbWU9J2xp
bnV4JyksIE1vY2tPcHRpb25zKHByb2ZpbGU9VHJ1ZSwgcHJvZmlsZXI9J3BlcmYnKSksIE5vbmUs
IEZhbHNlKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRyaXZlci5fY29tbWFuZF93cmFwcGVy
KCksIFsncGVyZicsICdyZWNvcmQnLCAnLWcnLCAnLS1vdXRwdXQnLCAnL21vY2stYnVpbGQvbGF5
b3V0LXRlc3QtcmVzdWx0cy90ZXN0LmRhdGEnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChk
cml2ZXIuX2NvbW1hbmRfd3JhcHBlcigpLCBbJ3BlcmYnLCAncmVjb3JkJywgJy1nJywgJy0tb3V0
cHV0JywgJy9tb2NrLWJ1aWxkL3Rlc3QtcmVzdWx0cy90ZXN0LmRhdGEnXSkKIAogICAgIGRlZiB0
ZXN0X3Rlc3RfdG9fdXJpKHNlbGYpOgogICAgICAgICBwb3J0ID0gc2VsZi5tYWtlX3BvcnQoKQpk
aWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2xlYWtkZXRlY3Rvcl92YWxn
cmluZF91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9sZWFrZGV0ZWN0
b3JfdmFsZ3JpbmRfdW5pdHRlc3QucHkKaW5kZXggYWZkNDI0MS4uNDYwZjY0YiAxMDA2NDQKLS0t
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2xlYWtkZXRlY3Rvcl92YWxncmluZF91bml0
dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbGVha2RldGVjdG9yX3Zh
bGdyaW5kX3VuaXR0ZXN0LnB5CkBAIC02Nyw3ICs2Nyw3IEBAIGRlZiBtYWtlX21vY2tfdmFsZ3Jp
bmRfb3V0cHV0KHByb2Nlc3NfbmFtZSwgcGlkLCB1dWlkKToKICAgICA8YXJnPi0tdW5kZWYtdmFs
dWUtZXJyb3JzPW5vPC9hcmc+CiAgICAgPGFyZz4tLWdlbi1zdXBwcmVzc2lvbnM9YWxsPC9hcmc+
CiAgICAgPGFyZz4tLXhtbD15ZXM8L2FyZz4KLSAgICA8YXJnPi0teG1sLWZpbGU9L2hvbWUvdXNl
ci9XZWJLaXQvV2ViS2l0QnVpbGQvUmVsZWFzZS9sYXlvdXQtdGVzdC1yZXN1bHRzL2RydC17cGlk
fS17dXVpZH0tbGVha3MueG1sPC9hcmc+CisgICAgPGFyZz4tLXhtbC1maWxlPS9ob21lL3VzZXIv
V2ViS2l0L1dlYktpdEJ1aWxkL1JlbGVhc2UvdGVzdC1yZXN1bHRzL2RydC17cGlkfS17dXVpZH0t
bGVha3MueG1sPC9hcmc+CiAgICAgPGFyZz4tLXN1cHByZXNzaW9ucz0vaG9tZS91c2VyL1dlYktp
dC9Ub29scy9TY3JpcHRzL3ZhbGdyaW5kL3N1cHByZXNzaW9ucy50eHQ8L2FyZz4KICAgICA8YXJn
Pi0tc3VwcHJlc3Npb25zPS91c3IvbGliL3ZhbGdyaW5kL2RlYmlhbi1saWJjNi1kYmcuc3VwcDwv
YXJnPgogICA8L3Zhcmd2PgpAQCAtNTgwLDcgKzU4MCw3IEBAIGRlZiBtYWtlX21vY2tfaW5jb21w
bGV0ZV92YWxncmluZF9vdXRwdXQocHJvY2Vzc19uYW1lLCBwaWQsIHV1aWQpOgogICAgIDxhcmc+
LS11bmRlZi12YWx1ZS1lcnJvcnM9bm88L2FyZz4KICAgICA8YXJnPi0tZ2VuLXN1cHByZXNzaW9u
cz1hbGw8L2FyZz4KICAgICA8YXJnPi0teG1sPXllczwvYXJnPgotICAgIDxhcmc+LS14bWwtZmls
ZT0vaG9tZS91c2VyL1dlYktpdC9XZWJLaXRCdWlsZC9SZWxlYXNlL2xheW91dC10ZXN0LXJlc3Vs
dHMvZHJ0LXtwaWR9LXt1dWlkfS1sZWFrcy54bWw8L2FyZz4KKyAgICA8YXJnPi0teG1sLWZpbGU9
L2hvbWUvdXNlci9XZWJLaXQvV2ViS2l0QnVpbGQvUmVsZWFzZS90ZXN0LXJlc3VsdHMvZHJ0LXtw
aWR9LXt1dWlkfS1sZWFrcy54bWw8L2FyZz4KICAgICA8YXJnPi0tc3VwcHJlc3Npb25zPS9ob21l
L3VzZXIvV2ViS2l0L1Rvb2xzL1NjcmlwdHMvdmFsZ3JpbmQvc3VwcHJlc3Npb25zLnR4dDwvYXJn
PgogICAgIDxhcmc+LS1zdXBwcmVzc2lvbnM9L3Vzci9saWIvdmFsZ3JpbmQvZGViaWFuLWxpYmM2
LWRiZy5zdXBwPC9hcmc+CiAgIDwvdmFyZ3Y+CkBAIC03NjUsNyArNzY1LDcgQEAgZGVmIG1ha2Vf
bW9ja192YWxncmluZF9yZXN1bHRzX2luY29tcGxldGUoKToKICAgICA8YXJnPi0tdW5kZWYtdmFs
dWUtZXJyb3JzPW5vPC9hcmc+CiAgICAgPGFyZz4tLWdlbi1zdXBwcmVzc2lvbnM9YWxsPC9hcmc+
CiAgICAgPGFyZz4tLXhtbD15ZXM8L2FyZz4KLSAgICA8YXJnPi0teG1sLWZpbGU9L2hvbWUvdXNl
ci9XZWJLaXQvV2ViS2l0QnVpbGQvUmVsZWFzZS9sYXlvdXQtdGVzdC1yZXN1bHRzL2RydC0yODUz
MS1lOGM3ZDdiODNiZTQxMWUzOTBjOWQ0M2Q3ZTAxYmEwOC1sZWFrcy54bWw8L2FyZz4KKyAgICA8
YXJnPi0teG1sLWZpbGU9L2hvbWUvdXNlci9XZWJLaXQvV2ViS2l0QnVpbGQvUmVsZWFzZS90ZXN0
LXJlc3VsdHMvZHJ0LTI4NTMxLWU4YzdkN2I4M2JlNDExZTM5MGM5ZDQzZDdlMDFiYTA4LWxlYWtz
LnhtbDwvYXJnPgogICAgIDxhcmc+LS1zdXBwcmVzc2lvbnM9L2hvbWUvdXNlci9XZWJLaXQvVG9v
bHMvU2NyaXB0cy92YWxncmluZC9zdXBwcmVzc2lvbnMudHh0PC9hcmc+CiAgICAgPGFyZz4tLXN1
cHByZXNzaW9ucz0vdXNyL2xpYi92YWxncmluZC9kZWJpYW4tbGliYzYtZGJnLnN1cHA8L2FyZz4K
ICAgPC92YXJndj4KQEAgLTgxNywyNSArODE3LDI1IEBAIGNsYXNzIExlYWtEZXRlY3RvclZhbGdy
aW5kVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgIG1vY2tfdmFsZ3JpbmRfb3V0cHV0
MSA9IG1ha2VfbW9ja192YWxncmluZF9vdXRwdXQoJ0R1bXBSZW5kZXJUcmVlJywgMjg1MjksICdk
YjkyZTQ4NDNiZTQxMWUzYmFlMWQ0M2Q3ZTAxYmEwOCcpCiAgICAgICAgIG1vY2tfdmFsZ3JpbmRf
b3V0cHV0MiA9IG1ha2VfbW9ja192YWxncmluZF9vdXRwdXQoJ0R1bXBSZW5kZXJUcmVlJywgMjg1
MzAsICdkZDcyMTM0MjNiZTQxMWUzYWE3ZmQ0M2Q3ZTAxYmEwOCcpCiAgICAgICAgIGZpbGVzID0g
e30KLSAgICAgICAgZmlsZXNbJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9kcnQtMjg1MjktZGI5
MmU0ODQzYmU0MTFlM2JhZTFkNDNkN2UwMWJhMDgtbGVha3MueG1sJ10gPSBtb2NrX3ZhbGdyaW5k
X291dHB1dDEKLSAgICAgICAgZmlsZXNbJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9kcnQtMjg1
MzAtZGQ3MjEzNDIzYmU0MTFlM2FhN2ZkNDNkN2UwMWJhMDgtbGVha3MueG1sJ10gPSBtb2NrX3Zh
bGdyaW5kX291dHB1dDIKKyAgICAgICAgZmlsZXNbJy90bXAvdGVzdC1yZXN1bHRzL2RydC0yODUy
OS1kYjkyZTQ4NDNiZTQxMWUzYmFlMWQ0M2Q3ZTAxYmEwOC1sZWFrcy54bWwnXSA9IG1vY2tfdmFs
Z3JpbmRfb3V0cHV0MQorICAgICAgICBmaWxlc1snL3RtcC90ZXN0LXJlc3VsdHMvZHJ0LTI4NTMw
LWRkNzIxMzQyM2JlNDExZTNhYTdmZDQzZDdlMDFiYTA4LWxlYWtzLnhtbCddID0gbW9ja192YWxn
cmluZF9vdXRwdXQyCiAKLSAgICAgICAgbGVha2RldGVjdG9yX3ZhbGdyaW5kID0gTGVha0RldGVj
dG9yVmFsZ3JpbmQoTW9ja0V4ZWN1dGl2ZTIocnVuX2NvbW1hbmRfZm49bW9ja19ydW5fY3BwZmls
dF9jb21tYW5kKSwgTW9ja0ZpbGVTeXN0ZW0oZmlsZXMpLCAnL3RtcC9sYXlvdXQtdGVzdC1yZXN1
bHRzLycpCisgICAgICAgIGxlYWtkZXRlY3Rvcl92YWxncmluZCA9IExlYWtEZXRlY3RvclZhbGdy
aW5kKE1vY2tFeGVjdXRpdmUyKHJ1bl9jb21tYW5kX2ZuPW1vY2tfcnVuX2NwcGZpbHRfY29tbWFu
ZCksIE1vY2tGaWxlU3lzdGVtKGZpbGVzKSwgJy90bXAvdGVzdC1yZXN1bHRzLycpCiAKICAgICAg
ICAgT3V0cHV0Q2FwdHVyZSgpLmFzc2VydF9vdXRwdXRzKHNlbGYsIGxlYWtkZXRlY3Rvcl92YWxn
cmluZC5wYXJzZV9hbmRfcHJpbnRfbGVha3NfZGV0YWlsLCBbZmlsZXNdLCBleHBlY3RlZF9sb2dz
PW1ha2VfbW9ja192YWxncmluZF9yZXN1bHRzKCkpCiAKICAgICBkZWYgdGVzdF9wYXJzZV9hbmRf
cHJpbnRfbGVha3NfZGV0YWlsX2luY29tcGxldGUoc2VsZik6CiAgICAgICAgIG1vY2tfaW5jb21w
bGV0ZV92YWxncmluZF9vdXRwdXQgPSBtYWtlX21vY2tfaW5jb21wbGV0ZV92YWxncmluZF9vdXRw
dXQoJ0R1bXBSZW5kZXJUcmVlJywgMjg1MzEsICdlOGM3ZDdiODNiZTQxMWUzOTBjOWQ0M2Q3ZTAx
YmEwOCcpCiAgICAgICAgIGZpbGVzID0ge30KLSAgICAgICAgZmlsZXNbJy90bXAvbGF5b3V0LXRl
c3QtcmVzdWx0cy9kcnQtMjg1MzEtZThjN2Q3YjgzYmU0MTFlMzkwYzlkNDNkN2UwMWJhMDgtbGVh
a3MueG1sJ10gPSBtb2NrX2luY29tcGxldGVfdmFsZ3JpbmRfb3V0cHV0Ci0gICAgICAgIGxlYWtk
ZXRlY3Rvcl92YWxncmluZCA9IExlYWtEZXRlY3RvclZhbGdyaW5kKE1vY2tFeGVjdXRpdmUyKCks
IE1vY2tGaWxlU3lzdGVtKGZpbGVzKSwgJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy8nKQorICAg
ICAgICBmaWxlc1snL3RtcC90ZXN0LXJlc3VsdHMvZHJ0LTI4NTMxLWU4YzdkN2I4M2JlNDExZTM5
MGM5ZDQzZDdlMDFiYTA4LWxlYWtzLnhtbCddID0gbW9ja19pbmNvbXBsZXRlX3ZhbGdyaW5kX291
dHB1dAorICAgICAgICBsZWFrZGV0ZWN0b3JfdmFsZ3JpbmQgPSBMZWFrRGV0ZWN0b3JWYWxncmlu
ZChNb2NrRXhlY3V0aXZlMigpLCBNb2NrRmlsZVN5c3RlbShmaWxlcyksICcvdG1wL3Rlc3QtcmVz
dWx0cy8nKQogCiAgICAgICAgIE91dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhzZWxmLCBs
ZWFrZGV0ZWN0b3JfdmFsZ3JpbmQucGFyc2VfYW5kX3ByaW50X2xlYWtzX2RldGFpbCwgW2ZpbGVz
XSwgZXhwZWN0ZWRfbG9ncz1tYWtlX21vY2tfdmFsZ3JpbmRfcmVzdWx0c19pbmNvbXBsZXRlKCkp
CiAKICAgICBkZWYgdGVzdF9wYXJzZV9hbmRfcHJpbnRfbGVha3NfZGV0YWlsX2VtcHR5KHNlbGYp
OgogICAgICAgICBmaWxlcyA9IHt9Ci0gICAgICAgIGZpbGVzWycvdG1wL0xvZ3MvbGF5b3V0LXRl
c3QtcmVzdWx0cy9kcnQtMjg1MzItZWJjOWE2YzYzYmU0MTFlMzk5ZDRkNDNkN2UwMWJhMDgtbGVh
a3MueG1sJ10gPSAiIgotICAgICAgICBsZWFrZGV0ZWN0b3JfdmFsZ3JpbmQgPSBMZWFrRGV0ZWN0
b3JWYWxncmluZChNb2NrRXhlY3V0aXZlMigpLCBNb2NrRmlsZVN5c3RlbShmaWxlcyksICcvdG1w
L2xheW91dC10ZXN0LXJlc3VsdHMvJykKKyAgICAgICAgZmlsZXNbJy90bXAvTG9ncy90ZXN0LXJl
c3VsdHMvZHJ0LTI4NTMyLWViYzlhNmM2M2JlNDExZTM5OWQ0ZDQzZDdlMDFiYTA4LWxlYWtzLnht
bCddID0gIiIKKyAgICAgICAgbGVha2RldGVjdG9yX3ZhbGdyaW5kID0gTGVha0RldGVjdG9yVmFs
Z3JpbmQoTW9ja0V4ZWN1dGl2ZTIoKSwgTW9ja0ZpbGVTeXN0ZW0oZmlsZXMpLCAnL3RtcC90ZXN0
LXJlc3VsdHMvJykKIAogICAgICAgICBPdXRwdXRDYXB0dXJlKCkuYXNzZXJ0X291dHB1dHMoc2Vs
ZiwgbGVha2RldGVjdG9yX3ZhbGdyaW5kLnBhcnNlX2FuZF9wcmludF9sZWFrc19kZXRhaWwsIFtm
aWxlc10sIGV4cGVjdGVkX2xvZ3M9bWFrZV9tb2NrX3ZhbGdyaW5kX3Jlc3VsdHNfZW1wdHkoKSkK
IApAQCAtODQzLDcgKzg0Myw3IEBAIGNsYXNzIExlYWtEZXRlY3RvclZhbGdyaW5kVGVzdCh1bml0
dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgIHNlbGYubWF4RGlmZiA9IE5vbmUKICAgICAgICAgbWlz
Zm9ybWF0dGVkX21vY2tfdmFsZ3JpbmRfb3V0cHV0ID0gJ0p1bmsgdGhhdCBzaG91bGQgbm90IGFw
cGVhciBpbiBhIHZhbGdyaW5kIHhtbCBmaWxlJyArIG1ha2VfbW9ja192YWxncmluZF9vdXRwdXQo
J0R1bXBSZW5kZXJUcmVlJywgMjg1MzMsICdmYTZkMGNkNjNiZTQxMWUzOWM3MmQ0M2Q3ZTAxYmEw
OCcpWzoyMF0KICAgICAgICAgZmlsZXMgPSB7fQotICAgICAgICBmaWxlc1snL3RtcC9sYXlvdXQt
dGVzdC1yZXN1bHRzL2RydC0yODUzMy1mYTZkMGNkNjNiZTQxMWUzOWM3MmQ0M2Q3ZTAxYmEwOC1s
ZWFrcy54bWwnXSA9IG1pc2Zvcm1hdHRlZF9tb2NrX3ZhbGdyaW5kX291dHB1dAotICAgICAgICBs
ZWFrZGV0ZWN0b3JfdmFsZ3JpbmQgPSBMZWFrRGV0ZWN0b3JWYWxncmluZChNb2NrRXhlY3V0aXZl
MigpLCBNb2NrRmlsZVN5c3RlbShmaWxlcyksICcvdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvJykK
KyAgICAgICAgZmlsZXNbJy90bXAvdGVzdC1yZXN1bHRzL2RydC0yODUzMy1mYTZkMGNkNjNiZTQx
MWUzOWM3MmQ0M2Q3ZTAxYmEwOC1sZWFrcy54bWwnXSA9IG1pc2Zvcm1hdHRlZF9tb2NrX3ZhbGdy
aW5kX291dHB1dAorICAgICAgICBsZWFrZGV0ZWN0b3JfdmFsZ3JpbmQgPSBMZWFrRGV0ZWN0b3JW
YWxncmluZChNb2NrRXhlY3V0aXZlMigpLCBNb2NrRmlsZVN5c3RlbShmaWxlcyksICcvdG1wL3Rl
c3QtcmVzdWx0cy8nKQogCiAgICAgICAgIE91dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhz
ZWxmLCBsZWFrZGV0ZWN0b3JfdmFsZ3JpbmQucGFyc2VfYW5kX3ByaW50X2xlYWtzX2RldGFpbCwg
W2ZpbGVzXSwgZXhwZWN0ZWRfbG9ncz1tYWtlX21vY2tfdmFsZ3JpbmRfcmVzdWx0c19taXNmb3Jt
YXR0ZWQoKSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9tYWNfdW5p
dHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjX3VuaXR0ZXN0LnB5Cmlu
ZGV4IDBmY2RjMTkuLmE5ZDI0NzIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
cG9ydC9tYWNfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L21h
Y191bml0dGVzdC5weQpAQCAtMjIwLDcgKzIyMCw3IEBAIGphdmEvCiAKICAgICAgICAgcG9ydCA9
IHNlbGYubWFrZV9wb3J0KCkKICAgICAgICAgcG9ydC5fZXhlY3V0aXZlID0gTW9ja0V4ZWN1dGl2
ZTIocnVuX2NvbW1hbmRfZm49bG9nZ2luZ19ydW5fY29tbWFuZCkKLSAgICAgICAgZXhwZWN0ZWRf
c3Rkb3V0ID0gIlsnL3Vzci9iaW4vc2FtcGxlJywgNDIsIDEwLCAxMCwgJy1maWxlJywgJy9tb2Nr
LWJ1aWxkL2xheW91dC10ZXN0LXJlc3VsdHMvdGVzdC00Mi1zYW1wbGUudHh0J11cbiIKKyAgICAg
ICAgZXhwZWN0ZWRfc3Rkb3V0ID0gIlsnL3Vzci9iaW4vc2FtcGxlJywgNDIsIDEwLCAxMCwgJy1m
aWxlJywgJy9tb2NrLWJ1aWxkL3Rlc3QtcmVzdWx0cy90ZXN0LTQyLXNhbXBsZS50eHQnXVxuIgog
ICAgICAgICBPdXRwdXRDYXB0dXJlKCkuYXNzZXJ0X291dHB1dHMoc2VsZiwgcG9ydC5zYW1wbGVf
cHJvY2VzcywgYXJncz1bJ3Rlc3QnLCA0Ml0sIGV4cGVjdGVkX3N0ZG91dD1leHBlY3RlZF9zdGRv
dXQpCiAKICAgICBkZWYgdGVzdF9zYW1wbGVfcHJvY2Vzc190aHJvd3NfZXhjZXB0aW9uKHNlbGYp
OgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L3Rlc3QucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvdGVzdC5weQppbmRleCAzNjJhMGU4Li5kYTJlYWM3IDEw
MDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvdGVzdC5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvdGVzdC5weQpAQCAtNDUyLDcgKzQ1Miw3IEBAIGNsYXNz
IFRlc3RQb3J0KFBvcnQpOgogICAgICAgICByZXR1cm4gc2VsZi5fb3BlcmF0aW5nX3N5c3RlbQog
CiAgICAgZGVmIGRlZmF1bHRfcmVzdWx0c19kaXJlY3Rvcnkoc2VsZik6Ci0gICAgICAgIHJldHVy
biAnL3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzJworICAgICAgICByZXR1cm4gJy90bXAvdGVzdC1y
ZXN1bHRzJwogCiAgICAgZGVmIHNldHVwX3Rlc3RfcnVuKHNlbGYpOgogICAgICAgICBwYXNzCmRp
ZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ZsYWt5dGVzdHJlcG9y
dGVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9mbGFreXRlc3RyZXBvcnRl
ci5weQppbmRleCA5MjljODk5Li5iN2U1ZjJjIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvYm90L2ZsYWt5dGVzdHJlcG9ydGVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdG9vbC9ib3QvZmxha3l0ZXN0cmVwb3J0ZXIucHkKQEAgLTE0Myw3ICsxNDMsNyBA
QCBJZiB5b3Ugd291bGQgbGlrZSB0byB0cmFjayB0aGlzIHRlc3QgZml4IHdpdGggYW5vdGhlciBi
dWcsIHBsZWFzZSBjbG9zZSB0aGlzIGJ1ZwogICAgIGRlZiBfdXBkYXRlX2J1Z19mb3JfZmxha3lf
dGVzdChzZWxmLCBidWcsIGxhdGVzdF9mbGFrZV9tZXNzYWdlKToKICAgICAgICAgc2VsZi5fdG9v
bC5idWdzLnBvc3RfY29tbWVudF90b19idWcoYnVnLmlkKCksIGxhdGVzdF9mbGFrZV9tZXNzYWdl
KQogCi0gICAgIyBUaGlzIG1ldGhvZCBpcyBuZWVkZWQgYmVjYXVzZSBvdXIgYXJjaGl2ZSBwYXRo
cyBpbmNsdWRlIGEgbGVhZGluZyB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cworICAgICMgVGhpcyBt
ZXRob2QgaXMgbmVlZGVkIGJlY2F1c2Ugb3VyIGFyY2hpdmUgcGF0aHMgaW5jbHVkZSBhIGxlYWRp
bmcgdG1wL3Rlc3QtcmVzdWx0cwogICAgIGRlZiBfZmluZF9pbl9hcmNoaXZlKHNlbGYsIHBhdGgs
IGFyY2hpdmUpOgogICAgICAgICBmb3IgYXJjaGl2ZWRfcGF0aCBpbiBhcmNoaXZlLm5hbWVsaXN0
KCk6CiAgICAgICAgICAgICAjIEFyY2hpdmVzIGFyZSBjdXJyZW50bHkgY3JlYXRlZCB3aXRoIGZ1
bGwgcGF0aHMuCkBAIC0xNjQsMTMgKzE2NCwxMyBAQCBJZiB5b3Ugd291bGQgbGlrZSB0byB0cmFj
ayB0aGlzIHRlc3QgZml4IHdpdGggYW5vdGhlciBidWcsIHBsZWFzZSBjbG9zZSB0aGlzIGJ1Zwog
ICAgICAgICAgICAgc2VsZi5fdG9vbC5idWdzLmFkZF9hdHRhY2htZW50X3RvX2J1ZyhmbGFrZV9i
dWdfaWQsIHJlc3VsdHNfZGlmZiwgZGVzY3JpcHRpb24sIGZpbGVuYW1lPSJmYWlsdXJlLmRpZmYi
KQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgX2xvZy53YXJuKCIlcyBkb2VzIG5vdCBleGlz
dCBpbiByZXN1bHRzIGFyY2hpdmUsIHVwbG9hZGluZyBlbnRpcmUgYXJjaGl2ZS4iICUgcmVzdWx0
c19kaWZmX3BhdGgpCi0gICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICJBcmNoaXZlIG9mIGxheW91
dC10ZXN0LXJlc3VsdHMgZnJvbSAlcyIgJSBib3RfaWQKKyAgICAgICAgICAgIGRlc2NyaXB0aW9u
ID0gIkFyY2hpdmUgb2YgdGVzdC1yZXN1bHRzIGZyb20gJXMiICUgYm90X2lkCiAgICAgICAgICAg
ICAjIHJlc3VsdHNfYXJjaGl2ZSBpcyBhIFppcEZpbGUgb2JqZWN0LCBncmFiIHRoZSBGaWxlIG9i
amVjdCAoLmZwKSB0byBwYXNzIHRvIE1lY2hhbml6ZSBmb3IgdXBsb2FkaW5nLgogICAgICAgICAg
ICAgcmVzdWx0c19hcmNoaXZlX2ZpbGUgPSByZXN1bHRzX2FyY2hpdmVfemlwLmZwCiAgICAgICAg
ICAgICAjIFJld2luZCB0aGUgZmlsZSBvYmplY3QgdG8gc3RhcnQgKHNpbmNlIE1lY2hhbml6ZSB3
b24ndCBkbyB0aGF0IGF1dG9tYXRpY2FsbHkpCiAgICAgICAgICAgICAjIFNlZSBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTQ1OTMKICAgICAgICAgICAgIHJlc3VsdHNf
YXJjaGl2ZV9maWxlLnNlZWsoMCkKLSAgICAgICAgICAgIHNlbGYuX3Rvb2wuYnVncy5hZGRfYXR0
YWNobWVudF90b19idWcoZmxha2VfYnVnX2lkLCByZXN1bHRzX2FyY2hpdmVfZmlsZSwgZGVzY3Jp
cHRpb24sIGZpbGVuYW1lPSJsYXlvdXQtdGVzdC1yZXN1bHRzLnppcCIpCisgICAgICAgICAgICBz
ZWxmLl90b29sLmJ1Z3MuYWRkX2F0dGFjaG1lbnRfdG9fYnVnKGZsYWtlX2J1Z19pZCwgcmVzdWx0
c19hcmNoaXZlX2ZpbGUsIGRlc2NyaXB0aW9uLCBmaWxlbmFtZT0idGVzdC1yZXN1bHRzLnppcCIp
CiAKICAgICBkZWYgcmVwb3J0X2ZsYWt5X3Rlc3RzKHNlbGYsIHBhdGNoLCBmbGFreV90ZXN0X3Jl
c3VsdHMsIHJlc3VsdHNfYXJjaGl2ZSk6CiAgICAgICAgIG1lc3NhZ2UgPSAiVGhlICVzIGVuY291
bnRlcmVkIHRoZSBmb2xsb3dpbmcgZmxha3kgdGVzdHMgd2hpbGUgcHJvY2Vzc2luZyBhdHRhY2ht
ZW50ICVzOlxuXG4iICUgKHNlbGYuX2JvdF9uYW1lLCBwYXRjaC5pZCgpKQpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9mbGFreXRlc3RyZXBvcnRlcl91bml0dGVz
dC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZmxha3l0ZXN0cmVwb3J0ZXJf
dW5pdHRlc3QucHkKaW5kZXggMGI5ZjcwOC4uNzM4NzkwZCAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL2JvdC9mbGFreXRlc3RyZXBvcnRlcl91bml0dGVzdC5weQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ZsYWt5dGVzdHJlcG9ydGVyX3VuaXR0
ZXN0LnB5CkBAIC0xNjIsNyArMTYyLDcgQEAgVGhlIGR1bW15LXF1ZXVlIGlzIGNvbnRpbnVpbmcg
dG8gcHJvY2VzcyB5b3VyIHBhdGNoLgogCiAgICAgICAgIGNsYXNzIE1vY2taaXBGaWxlKG9iamVj
dCk6CiAgICAgICAgICAgICBkZWYgbmFtZWxpc3Qoc2VsZik6Ci0gICAgICAgICAgICAgICAgcmV0
dXJuIFsidG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZm9vL2Jhci1kaWZmcy50eHQiXQorICAgICAg
ICAgICAgICAgIHJldHVybiBbInRtcC90ZXN0LXJlc3VsdHMvZm9vL2Jhci1kaWZmcy50eHQiXQog
CiAgICAgICAgIHJlcG9ydGVyLl9maW5kX2luX2FyY2hpdmUoImZvby9iYXItZGlmZnMudHh0Iiwg
TW9ja1ppcEZpbGUoKSkKICAgICAgICAgIyBUaGlzIGlzIG5vdCBpZGVhbCwgYnV0IGl0cwpkaWZm
IC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9sYXlvdXR0ZXN0cmVzdWx0
c3JlYWRlcl91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvbGF5
b3V0dGVzdHJlc3VsdHNyZWFkZXJfdW5pdHRlc3QucHkKaW5kZXggNmY2ZTFkNi4uOWFlMmI4ZiAx
MDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9sYXlvdXR0ZXN0cmVz
dWx0c3JlYWRlcl91bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
Ym90L2xheW91dHRlc3RyZXN1bHRzcmVhZGVyX3VuaXR0ZXN0LnB5CkBAIC0xMDQsNyArMTA0LDcg
QEAgY2xhc3MgTGF5b3V0VGVzdFJlc3VsdHNSZWFkZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToK
IAogICAgIGRlZiB0ZXN0X2FyY2hpdmVfbGFzdF9sYXlvdXRfdGVzdF9yZXN1bHRzX3dpdGhfcmVs
YXRpdmVfcGF0aChzZWxmKToKICAgICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKLSAgICAgICAgcmVz
dWx0c19kaXJlY3RvcnkgPSAiL21vY2stY2hlY2tvdXQvbGF5b3V0LXRlc3QtcmVzdWx0cyIKKyAg
ICAgICAgcmVzdWx0c19kaXJlY3RvcnkgPSAiL21vY2stY2hlY2tvdXQvdGVzdC1yZXN1bHRzIgog
CiAgICAgICAgIGhvc3QuZmlsZXN5c3RlbS5tYXliZV9tYWtlX2RpcmVjdG9yeShyZXN1bHRzX2Rp
cmVjdG9yeSkKICAgICAgICAgaG9zdC5maWxlc3lzdGVtLm1heWJlX21ha2VfZGlyZWN0b3J5KCcv
dmFyL2xvZ3MnKQpAQCAtMTE2LDQgKzExNiw0IEBAIGNsYXNzIExheW91dFRlc3RSZXN1bHRzUmVh
ZGVyVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgICMgU2hvdWxkIGZhaWwgYmVjYXVz
ZSB0aGUgcmVzdWx0c19kaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QuCiAgICAgICAgIHNlbGYuYXNz
ZXJ0SXNOb3ROb25lKHJlYWRlci5hcmNoaXZlKHBhdGNoKSkKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChob3N0LndvcmtzcGFjZS5zb3VyY2VfcGF0aCwgcmVzdWx0c19kaXJlY3RvcnkpCi0gICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoaG9zdC53b3Jrc3BhY2UuemlwX3BhdGgsICcvdmFyL2xvZ3Mv
NTAwMDAtbGF5b3V0LXRlc3QtcmVzdWx0cy56aXAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KGhvc3Qud29ya3NwYWNlLnppcF9wYXRoLCAnL3Zhci9sb2dzLzUwMDAwLXRlc3QtcmVzdWx0cy56
aXAnKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9wYXRjaGFu
YWx5c2lzdGFzay5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcGF0Y2hhbmFs
eXNpc3Rhc2sucHkKaW5kZXggYmE5NjU0ZC4uMDQyZjkwZSAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL2JvdC9wYXRjaGFuYWx5c2lzdGFzay5weQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3BhdGNoYW5hbHlzaXN0YXNrLnB5CkBAIC0yMzAsNyAr
MjMwLDcgQEAgY2xhc3MgUGF0Y2hBbmFseXNpc1Rhc2sob2JqZWN0KToKICAgICAgICAgICAgIHNl
bGYuZmFpbHVyZV9zdGF0dXNfaWQgPSBmaXJzdF9mYWlsdXJlX3N0YXR1c19pZAogICAgICAgICAg
ICAgcmV0dXJuIHNlbGYucmVwb3J0X2ZhaWx1cmUoZmlyc3RfcmVzdWx0c19hcmNoaXZlLCBmaXJz
dF9yZXN1bHRzLCBmaXJzdF9zY3JpcHRfZXJyb3IpCiAKLSAgICAgICAgIyBXZSBkb24ndCBrbm93
IHdoYXQncyBnb2luZyBvbi4gIFRoZSB0cmVlIGlzIGxpa2VseSB2ZXJ5IHJlZCAoYmV5b25kIG91
ciBsYXlvdXQtdGVzdC1yZXN1bHRzCisgICAgICAgICMgV2UgZG9uJ3Qga25vdyB3aGF0J3MgZ29p
bmcgb24uICBUaGUgdHJlZSBpcyBsaWtlbHkgdmVyeSByZWQgKGJleW9uZCBvdXIgdGVzdC1yZXN1
bHRzCiAgICAgICAgICMgZmFpbHVyZSBsaW1pdCksIGp1c3Qga2VlcCByZXRyeWluZyB0aGUgcGF0
Y2guIHVudGlsIHNvbWVvbmUgZml4ZXMgdGhlIHRyZWUuCiAgICAgICAgIHJldHVybiBGYWxzZQog
CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVz
LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlcy5weQppbmRl
eCBjOTJkZmNmLi5jNzY1MWIzIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvY29tbWFuZHMvcXVldWVzLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9j
b21tYW5kcy9xdWV1ZXMucHkKQEAgLTI4Myw3ICsyODMsNyBAQCBjbGFzcyBQYXRjaFByb2Nlc3Np
bmdRdWV1ZShBYnN0cmFjdFBhdGNoUXVldWUpOgogICAgICAgICAgICAgc2VsZi5fcG9ydCA9IHNl
bGYuX3Rvb2wucG9ydF9mYWN0b3J5LmdldChzZWxmLl9uZXdfcG9ydF9uYW1lX2Zyb21fb2xkKHNl
bGYucG9ydF9uYW1lLCBzZWxmLl90b29sLnBsYXRmb3JtKSkKIAogICAgICAgICBib3RfaWQgPSBz
ZWxmLl90b29sLnN0YXR1c19zZXJ2ZXIuYm90X2lkIG9yICJib3QiCi0gICAgICAgIGRlc2NyaXB0
aW9uID0gIkFyY2hpdmUgb2YgbGF5b3V0LXRlc3QtcmVzdWx0cyBmcm9tICVzIGZvciAlcyIgJSAo
Ym90X2lkLCBzZWxmLl9wb3J0Lm5hbWUoKSkKKyAgICAgICAgZGVzY3JpcHRpb24gPSAiQXJjaGl2
ZSBvZiB0ZXN0LXJlc3VsdHMgZnJvbSAlcyBmb3IgJXMiICUgKGJvdF9pZCwgc2VsZi5fcG9ydC5u
YW1lKCkpCiAgICAgICAgICMgcmVzdWx0c19hcmNoaXZlIGlzIGEgWmlwRmlsZSBvYmplY3QsIGdy
YWIgdGhlIEZpbGUgb2JqZWN0ICguZnApIHRvIHBhc3MgdG8gTWVjaGFuaXplIGZvciB1cGxvYWRp
bmcuCiAgICAgICAgIHJlc3VsdHNfYXJjaGl2ZV9maWxlID0gcmVzdWx0c19hcmNoaXZlX3ppcC5m
cAogICAgICAgICAjIFJld2luZCB0aGUgZmlsZSBvYmplY3QgdG8gc3RhcnQgKHNpbmNlIE1lY2hh
bml6ZSB3b24ndCBkbyB0aGF0IGF1dG9tYXRpY2FsbHkpCkBAIC0yOTUsNyArMjk1LDcgQEAgY2xh
c3MgUGF0Y2hQcm9jZXNzaW5nUXVldWUoQWJzdHJhY3RQYXRjaFF1ZXVlKToKICAgICAgICAgIyBG
SVhNRTogV2UgY291bGQgZWFzaWx5IGxpc3QgdGhlIHRlc3QgZmFpbHVyZXMgZnJvbSB0aGUgYXJj
aGl2ZSBoZXJlLAogICAgICAgICAjIGN1cnJlbnRseSBjYWxsZXJzIGRvIHRoYXQgc2VwYXJhdGVs
eS4KICAgICAgICAgY29tbWVudF90ZXh0ICs9IEJvdEluZm8oc2VsZi5fdG9vbCwgc2VsZi5fcG9y
dC5uYW1lKCkpLnN1bW1hcnlfdGV4dCgpCi0gICAgICAgIHNlbGYuX3Rvb2wuYnVncy5hZGRfYXR0
YWNobWVudF90b19idWcocGF0Y2guYnVnX2lkKCksIHJlc3VsdHNfYXJjaGl2ZV9maWxlLCBkZXNj
cmlwdGlvbiwgZmlsZW5hbWU9ImxheW91dC10ZXN0LXJlc3VsdHMuemlwIiwgY29tbWVudF90ZXh0
PWNvbW1lbnRfdGV4dCkKKyAgICAgICAgc2VsZi5fdG9vbC5idWdzLmFkZF9hdHRhY2htZW50X3Rv
X2J1ZyhwYXRjaC5idWdfaWQoKSwgcmVzdWx0c19hcmNoaXZlX2ZpbGUsIGRlc2NyaXB0aW9uLCBm
aWxlbmFtZT0idGVzdC1yZXN1bHRzLnppcCIsIGNvbW1lbnRfdGV4dD1jb21tZW50X3RleHQpCiAK
IAogY2xhc3MgQ29tbWl0UXVldWUoUGF0Y2hQcm9jZXNzaW5nUXVldWUsIFN0ZXBTZXF1ZW5jZUVy
cm9ySGFuZGxlciwgQ29tbWl0UXVldWVUYXNrRGVsZWdhdGUpOgpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlc191bml0dGVzdC5weSBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXNfdW5pdHRlc3QucHkKaW5kZXgg
ODUyNmQxYS4uMTkwY2ZiOSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2NvbW1hbmRzL3F1ZXVlc191bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvY29tbWFuZHMvcXVldWVzX3VuaXR0ZXN0LnB5CkBAIC0xNzYsNyArMTc2LDcgQEAgY2xh
c3MgUGF0Y2hQcm9jZXNzaW5nUXVldWVUZXN0KENvbW1hbmRzVGVzdCk6CiAgICAgICAgIHF1ZXVl
Ll9vcHRpb25zID0gTW9jaygpCiAgICAgICAgIHF1ZXVlLl9vcHRpb25zLnBvcnQgPSBOb25lCiAg
ICAgICAgIHBhdGNoID0gcXVldWUuX3Rvb2wuYnVncy5mZXRjaF9hdHRhY2htZW50KDEwMDAxKQot
ICAgICAgICBleHBlY3RlZF9sb2dzID0gIiIiTU9DSyBhZGRfYXR0YWNobWVudF90b19idWc6IGJ1
Z19pZD01MDAwMCwgZGVzY3JpcHRpb249QXJjaGl2ZSBvZiBsYXlvdXQtdGVzdC1yZXN1bHRzIGZy
b20gYm90IGZvciBtYWMtc25vd2xlb3BhcmQgZmlsZW5hbWU9bGF5b3V0LXRlc3QtcmVzdWx0cy56
aXAgbWltZXR5cGU9Tm9uZQorICAgICAgICBleHBlY3RlZF9sb2dzID0gIiIiTU9DSyBhZGRfYXR0
YWNobWVudF90b19idWc6IGJ1Z19pZD01MDAwMCwgZGVzY3JpcHRpb249QXJjaGl2ZSBvZiB0ZXN0
LXJlc3VsdHMgZnJvbSBib3QgZm9yIG1hYy1zbm93bGVvcGFyZCBmaWxlbmFtZT10ZXN0LXJlc3Vs
dHMuemlwIG1pbWV0eXBlPU5vbmUKIC0tIEJlZ2luIGNvbW1lbnQgLS0KIFRoZSBhdHRhY2hlZCB0
ZXN0IGZhaWx1cmVzIHdlcmUgc2VlbiB3aGlsZSBydW5uaW5nIHJ1bi13ZWJraXQtdGVzdHMgb24g
dGhlIG1vY2stcXVldWUuCiBQb3J0OiBtYWMtc25vd2xlb3BhcmQgIFBsYXRmb3JtOiBNb2NrUGxh
dGZvcm0gMS4wCkBAIC0yMzQsOCArMjM0LDggQEAgY2xhc3MgQ29tbWl0UXVldWVUZXN0KFF1ZXVl
c1Rlc3QpOgogCiAgICAgZGVmIHRlc3RfY29tbWl0X3F1ZXVlKHNlbGYpOgogICAgICAgICB0b29s
ID0gTW9ja1Rvb2woKQotICAgICAgICB0b29sLmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKCcv
dG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nLCAnJykgICMgT3RoZXJ3
aXNlIHRoZSBjb21taXQtcXVldWUgd2lsbCBoaXQgYSBLZXlFcnJvciB0cnlpbmcgdG8gcmVhZCB0
aGUgcmVzdWx0cyBmcm9tIHRoZSBNb2NrRmlsZVN5c3RlbS4KLSAgICAgICAgdG9vbC5maWxlc3lz
dGVtLndyaXRlX3RleHRfZmlsZSgnL3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3dlYmtpdF91bml0
X3Rlc3RzX291dHB1dC54bWwnLCAnJykKKyAgICAgICAgdG9vbC5maWxlc3lzdGVtLndyaXRlX3Rl
eHRfZmlsZSgnL3RtcC90ZXN0LXJlc3VsdHMvZnVsbF9yZXN1bHRzLmpzb24nLCAnJykgICMgT3Ro
ZXJ3aXNlIHRoZSBjb21taXQtcXVldWUgd2lsbCBoaXQgYSBLZXlFcnJvciB0cnlpbmcgdG8gcmVh
ZCB0aGUgcmVzdWx0cyBmcm9tIHRoZSBNb2NrRmlsZVN5c3RlbS4KKyAgICAgICAgdG9vbC5maWxl
c3lzdGVtLndyaXRlX3RleHRfZmlsZSgnL3RtcC90ZXN0LXJlc3VsdHMvd2Via2l0X3VuaXRfdGVz
dHNfb3V0cHV0LnhtbCcsICcnKQogICAgICAgICBleHBlY3RlZF9sb2dzID0gewogICAgICAgICAg
ICAgImJlZ2luX3dvcmtfcXVldWUiOiBzZWxmLl9kZWZhdWx0X2JlZ2luX3dvcmtfcXVldWVfbG9n
cygiY29tbWl0LXF1ZXVlIiksCiAgICAgICAgICAgICAicHJvY2Vzc193b3JrX2l0ZW0iOiAiIiJS
dW5uaW5nOiB3ZWJraXQtcGF0Y2ggLS1zdGF0dXMtaG9zdD1leGFtcGxlLmNvbSBjbGVhbiAtLXBv
cnQ9bWFjCkBAIC0zMTcsOCArMzE3LDggQEAgTU9DSzogcmVsZWFzZV93b3JrX2l0ZW06IGNvbW1p
dC1xdWV1ZSAxMDAwMAogCiAgICAgZGVmIHRlc3Rfcm9sbG91dChzZWxmKToKICAgICAgICAgdG9v
bCA9IE1vY2tUb29sKCkKLSAgICAgICAgdG9vbC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZSgn
L3RtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Z1bGxfcmVzdWx0cy5qc29uJywgJycpICAjIE90aGVy
d2lzZSB0aGUgY29tbWl0LXF1ZXVlIHdpbGwgaGl0IGEgS2V5RXJyb3IgdHJ5aW5nIHRvIHJlYWQg
dGhlIHJlc3VsdHMgZnJvbSB0aGUgTW9ja0ZpbGVTeXN0ZW0uCi0gICAgICAgIHRvb2wuZmlsZXN5
c3RlbS53cml0ZV90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy93ZWJraXRfdW5p
dF90ZXN0c19vdXRwdXQueG1sJywgJycpCisgICAgICAgIHRvb2wuZmlsZXN5c3RlbS53cml0ZV90
ZXh0X2ZpbGUoJy90bXAvdGVzdC1yZXN1bHRzL2Z1bGxfcmVzdWx0cy5qc29uJywgJycpICAjIE90
aGVyd2lzZSB0aGUgY29tbWl0LXF1ZXVlIHdpbGwgaGl0IGEgS2V5RXJyb3IgdHJ5aW5nIHRvIHJl
YWQgdGhlIHJlc3VsdHMgZnJvbSB0aGUgTW9ja0ZpbGVTeXN0ZW0uCisgICAgICAgIHRvb2wuZmls
ZXN5c3RlbS53cml0ZV90ZXh0X2ZpbGUoJy90bXAvdGVzdC1yZXN1bHRzL3dlYmtpdF91bml0X3Rl
c3RzX291dHB1dC54bWwnLCAnJykKICAgICAgICAgdG9vbC5idWlsZGJvdC5saWdodF90cmVlX29u
X2ZpcmUoKQogICAgICAgICBleHBlY3RlZF9sb2dzID0gewogICAgICAgICAgICAgImJlZ2luX3dv
cmtfcXVldWUiOiBzZWxmLl9kZWZhdWx0X2JlZ2luX3dvcmtfcXVldWVfbG9ncygiY29tbWl0LXF1
ZXVlIiksCkBAIC0zODksOCArMzg5LDggQEAgTU9DSzogdXBkYXRlX3N0YXR1czogY29tbWl0LXF1
ZXVlIFRlc3RzIHBhc3NlZCwgYnV0IGNvbW1pdCBmYWlsZWQgKGNoZWNrb3V0IG91dAogICAgIGRl
ZiB0ZXN0X21hbnVhbF9yZWplY3RfZHVyaW5nX3Byb2Nlc3Npbmcoc2VsZik6CiAgICAgICAgIHF1
ZXVlID0gU2Vjb25kVGhvdWdodHNDb21taXRRdWV1ZShNb2NrVG9vbCgpKQogICAgICAgICBxdWV1
ZS5iZWdpbl93b3JrX3F1ZXVlKCkKLSAgICAgICAgcXVldWUuX3Rvb2wuZmlsZXN5c3RlbS53cml0
ZV90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxsX3Jlc3VsdHMuanNvbics
ICcnKSAgIyBPdGhlcndpc2UgdGhlIGNvbW1pdC1xdWV1ZSB3aWxsIGhpdCBhIEtleUVycm9yIHRy
eWluZyB0byByZWFkIHRoZSByZXN1bHRzIGZyb20gdGhlIE1vY2tGaWxlU3lzdGVtLgotICAgICAg
ICBxdWV1ZS5fdG9vbC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZSgnL3RtcC9sYXlvdXQtdGVz
dC1yZXN1bHRzL3dlYmtpdF91bml0X3Rlc3RzX291dHB1dC54bWwnLCAnJykKKyAgICAgICAgcXVl
dWUuX3Rvb2wuZmlsZXN5c3RlbS53cml0ZV90ZXh0X2ZpbGUoJy90bXAvdGVzdC1yZXN1bHRzL2Z1
bGxfcmVzdWx0cy5qc29uJywgJycpICAjIE90aGVyd2lzZSB0aGUgY29tbWl0LXF1ZXVlIHdpbGwg
aGl0IGEgS2V5RXJyb3IgdHJ5aW5nIHRvIHJlYWQgdGhlIHJlc3VsdHMgZnJvbSB0aGUgTW9ja0Zp
bGVTeXN0ZW0uCisgICAgICAgIHF1ZXVlLl90b29sLmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxl
KCcvdG1wL3Rlc3QtcmVzdWx0cy93ZWJraXRfdW5pdF90ZXN0c19vdXRwdXQueG1sJywgJycpCiAg
ICAgICAgIHF1ZXVlLl9vcHRpb25zID0gTW9jaygpCiAgICAgICAgIHF1ZXVlLl9vcHRpb25zLnBv
cnQgPSBOb25lCiAgICAgICAgIGV4cGVjdGVkX2xvZ3MgPSAiIiJSdW5uaW5nOiB3ZWJraXQtcGF0
Y2ggLS1zdGF0dXMtaG9zdD1leGFtcGxlLmNvbSBjbGVhbiAtLXBvcnQ9bWFjCkBAIC00MjYsNyAr
NDI2LDcgQEAgUG9ydDogTW9ja1BvcnQgIFBsYXRmb3JtOiBNb2NrUGxhdGZvcm0gMS4wCiAtLS0g
RW5kIGNvbW1lbnQgLS0tCiAKIGJhci9iYXotZGlmZnMudHh0IGRvZXMgbm90IGV4aXN0IGluIHJl
c3VsdHMgYXJjaGl2ZSwgdXBsb2FkaW5nIGVudGlyZSBhcmNoaXZlLgotTU9DSyBhZGRfYXR0YWNo
bWVudF90b19idWc6IGJ1Z19pZD01MDAwMiwgZGVzY3JpcHRpb249QXJjaGl2ZSBvZiBsYXlvdXQt
dGVzdC1yZXN1bHRzIGZyb20gYm90IGZpbGVuYW1lPWxheW91dC10ZXN0LXJlc3VsdHMuemlwIG1p
bWV0eXBlPU5vbmUKK01PQ0sgYWRkX2F0dGFjaG1lbnRfdG9fYnVnOiBidWdfaWQ9NTAwMDIsIGRl
c2NyaXB0aW9uPUFyY2hpdmUgb2YgdGVzdC1yZXN1bHRzIGZyb20gYm90IGZpbGVuYW1lPXRlc3Qt
cmVzdWx0cy56aXAgbWltZXR5cGU9Tm9uZQogTU9DSyBidWcgY29tbWVudDogYnVnX2lkPTUwMDAw
LCBjYz1Ob25lCiAtLS0gQmVnaW4gY29tbWVudCAtLS0KIFRoZSBjb21taXQtcXVldWUgZW5jb3Vu
dGVyZWQgdGhlIGZvbGxvd2luZyBmbGFreSB0ZXN0cyB3aGlsZSBwcm9jZXNzaW5nIGF0dGFjaG1l
bnQgMTAwMDA6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFu
ZHMvcmViYXNlbGluZV91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9j
b21tYW5kcy9yZWJhc2VsaW5lX3VuaXR0ZXN0LnB5CmluZGV4IDQ0YmM5NmQuLjFhOGVkMjcgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9yZWJhc2VsaW5l
X3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9y
ZWJhc2VsaW5lX3VuaXR0ZXN0LnB5CkBAIC0zOSw3ICszOSw3IEBAIGZyb20gd2Via2l0cHkudG9v
bC5tb2NrdG9vbCBpbXBvcnQgTW9ja1Rvb2wsIE1vY2tPcHRpb25zCiAKIGNsYXNzIF9CYXNlVGVz
dENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIE1PQ0tfV0VCX1JFU1VMVCA9ICdNT0NLIFdl
YiByZXN1bHQsIGNvbnZlcnQgNDA0IHRvIE5vbmU9VHJ1ZScKLSAgICBXRUJfUFJFRklYID0gJ2h0
dHA6Ly9leGFtcGxlLmNvbS9mL2J1aWxkZXJzL0FwcGxlIExpb24gUmVsZWFzZSBXSzEgKFRlc3Rz
KS9yZXN1bHRzL2xheW91dC10ZXN0LXJlc3VsdHMnCisgICAgV0VCX1BSRUZJWCA9ICdodHRwOi8v
ZXhhbXBsZS5jb20vZi9idWlsZGVycy9BcHBsZSBMaW9uIFJlbGVhc2UgV0sxIChUZXN0cykvcmVz
dWx0cy90ZXN0LXJlc3VsdHMnCiAKICAgICBjb21tYW5kX2NvbnN0cnVjdG9yID0gTm9uZQogCmRp
ZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9yZWJhc2VsaW5l
c2VydmVyX3VuaXR0ZXN0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMv
cmViYXNlbGluZXNlcnZlcl91bml0dGVzdC5weQppbmRleCAyNWM4MmI5Li5mN2FjMmE0IDEwMDY0
NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9yZWJhc2VsaW5lc2Vy
dmVyX3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJz
L3JlYmFzZWxpbmVzZXJ2ZXJfdW5pdHRlc3QucHkKQEAgLTI5Miw3ICsyOTIsNyBAQCBjbGFzcyBH
ZXRCYXNlbGluZXNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIGRlZiBnZXRfdGVzdF9jb25maWco
dGVzdF9maWxlcz1bXSwgcmVzdWx0X2ZpbGVzPVtdKToKICAgICAjIFdlIGNvdWxkIGdyYWIgdGhp
cyBmcm9tIHBvcnQubGF5b3V0X3Rlc3RzX2RpcigpLCBidXQgaW5zdGFudGlhdGluZyBhIGZ1bGx5
IG1vY2tlZCBwb3J0IGlzIGEgcGFpbi4KICAgICBsYXlvdXRfdGVzdHNfZGlyZWN0b3J5ID0gIi9t
b2NrLWNoZWNrb3V0L0xheW91dFRlc3RzIgotICAgIHJlc3VsdHNfZGlyZWN0b3J5ID0gJy9XZWJL
aXRCdWlsZC9EZWJ1Zy9sYXlvdXQtdGVzdC1yZXN1bHRzJworICAgIHJlc3VsdHNfZGlyZWN0b3J5
ID0gJy9XZWJLaXRCdWlsZC9EZWJ1Zy90ZXN0LXJlc3VsdHMnCiAgICAgaG9zdCA9IE1vY2tIb3N0
KCkKICAgICBmb3IgZmlsZSBpbiB0ZXN0X2ZpbGVzOgogICAgICAgICBob3N0LmZpbGVzeXN0ZW0u
d3JpdGVfYmluYXJ5X2ZpbGUoaG9zdC5maWxlc3lzdGVtLmpvaW4obGF5b3V0X3Rlc3RzX2RpcmVj
dG9yeSwgZmlsZSksICcnKQotLSAKMS45LjMgKEFwcGxlIEdpdC01MCkKCg==
</data>
<flag name="review"
          id="263834"
          type_id="1"
          status="+"
          setter="dbates"
    />
    <flag name="commit-queue"
          id="263835"
          type_id="3"
          status="-"
          setter="dbates"
    />
          </attachment>
      

    </bug>

</bugzilla>