<?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>65759</bug_id>
          
          <creation_ts>2011-08-05 01:54:07 -0700</creation_ts>
          <short_desc>Rebuild rebaseline-chromium-webkit-tests on top of modern infrastructure</short_desc>
          <delta_ts>2011-08-22 11:42:12 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>jamesr</cc>
    
    <cc>kbalazs</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>447121</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-05 01:54:07 -0700</bug_when>
    <thetext>Rebuild rebaseline-chromium-webkit-tests on top of modern infrastructure</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447122</commentid>
    <comment_count>1</comment_count>
      <attachid>103052</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-05 01:56:37 -0700</bug_when>
    <thetext>Created attachment 103052
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447319</commentid>
    <comment_count>2</comment_count>
      <attachid>103052</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-05 11:50:40 -0700</bug_when>
    <thetext>Comment on attachment 103052
Patch

Clearing flags on attachment: 103052

Committed r92493: &lt;http://trac.webkit.org/changeset/92493&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447320</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-05 11:50:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447410</commentid>
    <comment_count>4</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2011-08-05 14:09:53 -0700</bug_when>
    <thetext>It broke the main Qt Release bot:
ERROR: test_rebaseline_test (webkitpy.tool.commands.rebaseline_unittest.TestRebaseline)
----------------------------------------------------------------------
Traceback (most recent call last):
  File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/tool/commands/rebaseline_unittest.py&quot;, line 48, in test_rebaseline_test
    OutputCapture().assert_outputs(self, command._rebaseline_test, [&quot;Webkit Linux&quot;, &quot;userscripts/another-test.html&quot;, &quot;txt&quot;], expected_stdout=expected_stdout)
  File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/common/system/outputcapture.py&quot;, line 63, in assert_outputs
    return_value = function(*args, **kwargs)
  File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/tool/commands/rebaseline.py&quot;, line 109, in _rebaseline_test
    self._save_baseline(self._tool.web.get_binary(source_baseline, convert_404_to_None=True), target_baseline)
TypeError: get_binary() got an unexpected keyword argument &apos;convert_404_to_None&apos;

Have you got an idea about what&apos;s going on here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447429</commentid>
    <comment_count>5</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-08-05 14:38:53 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; It broke the main Qt Release bot:
&gt; ERROR: test_rebaseline_test (webkitpy.tool.commands.rebaseline_unittest.TestRebaseline)
&gt; ----------------------------------------------------------------------
&gt; Traceback (most recent call last):
&gt;   File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/tool/commands/rebaseline_unittest.py&quot;, line 48, in test_rebaseline_test
&gt;     OutputCapture().assert_outputs(self, command._rebaseline_test, [&quot;Webkit Linux&quot;, &quot;userscripts/another-test.html&quot;, &quot;txt&quot;], expected_stdout=expected_stdout)
&gt;   File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/common/system/outputcapture.py&quot;, line 63, in assert_outputs
&gt;     return_value = function(*args, **kwargs)
&gt;   File &quot;/ramdisk/qt-linux-release/build/Tools/Scripts/webkitpy/tool/commands/rebaseline.py&quot;, line 109, in _rebaseline_test
&gt;     self._save_baseline(self._tool.web.get_binary(source_baseline, convert_404_to_None=True), target_baseline)
&gt; TypeError: get_binary() got an unexpected keyword argument &apos;convert_404_to_None&apos;
&gt; 
&gt; Have you got an idea about what&apos;s going on here?

Breakage fixed in http://trac.webkit.org/changeset/92515.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>454737</commentid>
    <comment_count>6</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-08-22 11:30:24 -0700</bug_when>
    <thetext>This patch commented out the chromium gpu linux bot without any obvious explanation.  webkit-patch rebaseline-expectations does not seem to work at all for linux gpu tests now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>454753</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-22 11:42:12 -0700</bug_when>
    <thetext>&gt; This patch commented out the chromium gpu linux bot without any obvious explanation.  webkit-patch rebaseline-expectations does not seem to work at all for linux gpu tests now.

Yeah, I&apos;m not entirely sure what&apos;s going on here.  dglazkov said something about those bots being virtual or something.  I&apos;ve filed Bug 66694.  I&apos;ll take a look once I&apos;ve made some progress on the stability Code Yellow.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103052</attachid>
            <date>2011-08-05 01:56:37 -0700</date>
            <delta_ts>2011-08-05 11:50:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-65759-20110805015635.patch</filename>
            <type>text/plain</type>
            <size>26692</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDkyNDY4KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMjkgQEAKKzIwMTEtMDgtMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBSZWJ1aWxkIHJlYmFzZWxpbmUtY2hyb21pdW0td2Via2l0LXRlc3RzIG9uIHRvcCBv
ZiBtb2Rlcm4gaW5mcmFzdHJ1Y3R1cmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTY1NzU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgcmViYXNlbGluZS1jaHJvbWl1bS13ZWJraXQtdGVzdHMgZG9lc24ndCBy
ZWFsbHkgZml0IGludG8gd2Via2l0cHkncworICAgICAgICBhcmNoaXRlY3R1cmUsIGlzIHBvb3Js
eSB0ZXN0ZWQsIGFuZCBoYXMgYSBidW5jaCBvZiBxdWlya3MuICBUaGlzIHBhdGNoCisgICAgICAg
IHJlYnVpbGRzIHRoZSBjb3JlIGZ1bmN0aW9uYWxpdHkgb2YgcmViYXNlbGluZS1jaHJvbWl1bS13
ZWJraXQtdGVzdHMgb24KKyAgICAgICAgdG9wIG9mIG1vcmUgbW9kZXJuIGluZnJhc3RydWN0dXJl
LiAgSW4gdGhlIHByb2Nlc3MsIHdlIGdldCBtb3JlIGNvZGUKKyAgICAgICAgcmUtdXNlIGFuZCBi
ZXR0ZXIgdGVzdGluZy4KKworICAgICAgICBPbmNlIHdlJ3JlIHNhdGlzZmllZCB3aXRoIHRoaXMg
bmV3IGltcGxlbWVudGF0aW9uLCB3ZSBjYW4gZGVsZXRlIHRoZQorICAgICAgICBvbGQgaW1wbGVt
ZW50YXRpb24uCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9i
YXNlbGluZW9wdGltaXplci5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9u
ZXQvd2ViLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVs
cy90ZXN0X2V4cGVjdGF0aW9ucy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L2J1aWxkZXJzLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9mYWN0b3J5LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
dG9vbC9jb21tYW5kcy9yZWJhc2VsaW5lLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
dG9vbC9jb21tYW5kcy9yZWJhc2VsaW5lX3VuaXR0ZXN0LnB5OgorCiAyMDExLTA4LTA0ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgbW9kZWwuanMgbmVlZHMgc29t
ZSB1bml0IHRlc3RpbmcKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNr
b3V0L2Jhc2VsaW5lb3B0aW1pemVyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL2NoZWNrb3V0L2Jhc2VsaW5lb3B0aW1pemVyLnB5CShyZXZpc2lvbiA5MjQ0
OCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2Jhc2VsaW5lb3B0
aW1pemVyLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0xNDUsNiArMTQ1LDcgQEAgY2xhc3MgQmFzZWxp
bmVPcHRpbWl6ZXIob2JqZWN0KToKICAgICAgICAgICAgIGlmIG5ld19yZXN1bHRzX2J5X2RpcmVj
dG9yeS5nZXQoZGlyZWN0b3J5KSAhPSByZXN1bHQ6CiAgICAgICAgICAgICAgICAgZmlsZV9uYW1l
ID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3NjbS5jaGVja291dF9yb290LCBkaXJlY3Rv
cnksIGJhc2VsaW5lX25hbWUpCiAgICAgICAgICAgICAgICAgc2VsZi5fc2NtLmRlbGV0ZShmaWxl
X25hbWUpCisgICAgICAgICAgICAgICAgIyBGSVhNRTogQ2hlY2sgZm9yIGVtcHR5IGRpcmVjdG9y
aWVzIGFuZCByZW1vdmUgdGhlbSBhcyB3ZWxsLgogCiAgICAgZGVmIG9wdGltaXplKHNlbGYsIGJh
c2VsaW5lX25hbWUpOgogICAgICAgICByZXN1bHRzX2J5X2RpcmVjdG9yeSwgbmV3X3Jlc3VsdHNf
YnlfZGlyZWN0b3J5ID0gc2VsZi5fZmluZF9vcHRpbWFsX3Jlc3VsdF9wbGFjZW1lbnQoYmFzZWxp
bmVfbmFtZSkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL25ldC93ZWIucHkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vbmV0L3dlYi5weQko
cmV2aXNpb24gOTI0NDgpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvd2Vi
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zMiw1ICszMiw1IEBAIGZyb20gd2Via2l0cHkuY29tbW9u
Lm5ldC5uZXR3b3JrdHJhbnNhY3QKIAogCiBjbGFzcyBXZWIob2JqZWN0KToKLSAgICBkZWYgZ2V0
X2JpbmFyeShzZWxmLCB1cmwpOgotICAgICAgICByZXR1cm4gTmV0d29ya1RyYW5zYWN0aW9uKCku
cnVuKGxhbWJkYTogdXJsbGliMi51cmxvcGVuKHVybCkucmVhZCgpKQorICAgIGRlZiBnZXRfYmlu
YXJ5KHNlbGYsIHVybCwgY29udmVydF80MDRfdG9fTm9uZT1GYWxzZSk6CisgICAgICAgIHJldHVy
biBOZXR3b3JrVHJhbnNhY3Rpb24oY29udmVydF80MDRfdG9fTm9uZT1jb252ZXJ0XzQwNF90b19O
b25lKS5ydW4obGFtYmRhOiB1cmxsaWIyLnVybG9wZW4odXJsKS5yZWFkKCkpCkluZGV4OiBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9leHBlY3RhdGlvbnMu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9k
ZWxzL3Rlc3RfZXhwZWN0YXRpb25zLnB5CShyZXZpc2lvbiA5MjQ0OCkKKysrIFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X2V4cGVjdGF0aW9ucy5weQkod29y
a2luZyBjb3B5KQpAQCAtNzc2LDcgKzc3Niw3IEBAIGNsYXNzIFRlc3RFeHBlY3RhdGlvbnMob2Jq
ZWN0KToKICAgICAgICAgcmV0dXJuIGNscy5FWFBFQ1RBVElPTlMuZ2V0KHN0cmluZy5sb3dlcigp
KQogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBvcnQsIHRlc3RzLCBleHBlY3RhdGlvbnMsCi0g
ICAgICAgICAgICAgICAgIHRlc3RfY29uZmlnLCBpc19saW50X21vZGUsIG92ZXJyaWRlcz1Ob25l
KToKKyAgICAgICAgICAgICAgICAgdGVzdF9jb25maWcsIGlzX2xpbnRfbW9kZT1GYWxzZSwgb3Zl
cnJpZGVzPU5vbmUpOgogICAgICAgICAiIiJMb2FkcyBhbmQgcGFyc2VzIHRoZSB0ZXN0IGV4cGVj
dGF0aW9ucyBnaXZlbiBpbiB0aGUgc3RyaW5nLgogICAgICAgICBBcmdzOgogICAgICAgICAgICAg
cG9ydDogaGFuZGxlIHRvIG9iamVjdCBjb250YWluaW5nIHBsYXRmb3JtLXNwZWNpZmljIGZ1bmN0
aW9uYWxpdHkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
YnVpbGRlcnMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9idWlsZGVycy5weQkocmV2aXNpb24gOTI0NDgpCisrKyBUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2J1aWxkZXJzLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC0yOSw2MSArMjksOTQgQEAKIAogaW1wb3J0IHJlCiAKK2Zyb20gd2Via2l0cHkuY29tbW9uLm1l
bW9pemVkIGltcG9ydCBtZW1vaXplZAorCisKK19leGFjdF9tYXRjaGVzID0geworICAgICMgVGhl
c2UgYnVpbGRlcnMgYXJlIG9uIGJ1aWxkLmNocm9taXVtLm9yZy4KKyAgICAiV2Via2l0IFdpbiI6
ICJjaHJvbWl1bS13aW4teHAiLAorICAgICJXZWJraXQgVmlzdGEiOiAiY2hyb21pdW0td2luLXZp
c3RhIiwKKyAgICAiV2Via2l0IFdpbjciOiAiY2hyb21pdW0td2luLXdpbjciLAorICAgICJXZWJr
aXQgV2luIChkYmcpKDEpIjogImNocm9taXVtLXdpbi14cCIsCisgICAgIldlYmtpdCBXaW4gKGRi
ZykoMikiOiAiY2hyb21pdW0td2luLXhwIiwKKyAgICAiV2Via2l0IExpbnV4IjogImNocm9taXVt
LWxpbnV4LXg4Nl82NCIsCisgICAgIldlYmtpdCBMaW51eCAzMiI6ICJjaHJvbWl1bS1saW51eC14
ODYiLAorICAgICJXZWJraXQgTGludXggKGRiZykoMSkiOiAiY2hyb21pdW0tbGludXgteDg2XzY0
IiwKKyAgICAiV2Via2l0IExpbnV4IChkYmcpKDIpIjogImNocm9taXVtLWxpbnV4LXg4Nl82NCIs
CisgICAgIldlYmtpdCBNYWMxMC41IjogImNocm9taXVtLW1hYy1sZW9wYXJkIiwKKyAgICAiV2Vi
a2l0IE1hYzEwLjUgKGRiZykoMSkiOiAiY2hyb21pdW0tbWFjLWxlb3BhcmQiLAorICAgICJXZWJr
aXQgTWFjMTAuNSAoZGJnKSgyKSI6ICJjaHJvbWl1bS1tYWMtbGVvcGFyZCIsCisgICAgIldlYmtp
dCBNYWMxMC42IjogImNocm9taXVtLW1hYy1zbm93bGVvcGFyZCIsCisgICAgIldlYmtpdCBNYWMx
MC42IChkYmcpIjogImNocm9taXVtLW1hYy1zbm93bGVvcGFyZCIsCisgICAgIldlYmtpdCBNYWMx
MC42IC0gR1BVIjogImNocm9taXVtLWdwdS1tYWMtc25vd2xlb3BhcmQiLAorICAgICJXZWJraXQg
V2luIC0gR1BVIjogImNocm9taXVtLWdwdS13aW4teHAiLAorICAgICJXZWJraXQgV2luNyAtIEdQ
VSI6ICJjaHJvbWl1bS1ncHUtd2luLXdpbjciLAorICAgICMgRklYTUU6IEZvciBzb21lIHJlYXNv
biwgdGhlc2UgcG9ydCBuYW1lcyBkb24ndCB3b3JrIGNvcnJlY3RseS4KKyAgICAjICJXZWJraXQg
TGludXggLSBHUFUiOiAiY2hyb21pdW0tZ3B1LWxpbnV4LXg4Nl82NCIsCisgICAgIyAiV2Via2l0
IExpbnV4IDMyIC0gR1BVIjogImNocm9taXVtLWdwdS1saW51eC14ODYiLAorICAgICJXZWJraXQg
TWFjMTAuNSAtIEdQVSI6ICJjaHJvbWl1bS1ncHUtbWFjLWxlb3BhcmQiLAorICAgICJXZWJraXQg
TWFjMTAuNiAtIEdQVSI6ICJjaHJvbWl1bS1ncHUtbWFjLXNub3dsZW9wYXJkIiwKKworICAgICMg
VGhlc2UgYnVpbGRlcnMgYXJlIG9uIGJ1aWxkLndlYmtpdC5vcmcuCisgICAgIkdUSyBMaW51eCAz
Mi1iaXQgRGVidWciOiAiZ3RrIiwKKyAgICAiTGVvcGFyZCBJbnRlbCBEZWJ1ZyAoVGVzdHMpIjog
Im1hYy1sZW9wYXJkIiwKKyAgICAiU25vd0xlb3BhcmQgSW50ZWwgUmVsZWFzZSAoVGVzdHMpIjog
Im1hYy1zbm93bGVvcGFyZCIsCisgICAgIlNub3dMZW9wYXJkIEludGVsIFJlbGVhc2UgKFdlYktp
dDIgVGVzdHMpIjogIm1hYy13azIiLAorICAgICJRdCBMaW51eCBSZWxlYXNlIjogInF0LWxpbnV4
IiwKKyAgICAiV2luZG93cyBYUCBEZWJ1ZyAoVGVzdHMpIjogIndpbi14cCIsCisgICAgIldpbmRv
d3MgNyBSZWxlYXNlIChXZWJLaXQyIFRlc3RzKSI6ICJ3aW4td2syIiwKK30KKworCitfZnV6enlf
bWF0Y2hlcyA9IHsKKyAgICAjIFRoZXNlIGJ1aWxkZXJzIGFyZSBvbiBidWlsZC53ZWJraXQub3Jn
LgorICAgIHIiU25vd0xlb3BhcmQiOiAibWFjLXNub3dsZW9wYXJkIiwKKyAgICByIkxlb3BhcmQi
OiAibWFjLWxlb3BhcmQiLAorICAgIHIiV2luZG93cyI6ICJ3aW4iLAorICAgIHIiR1RLIjogImd0
ayIsCisgICAgciJRdCI6ICJxdCIsCisgICAgciJDaHJvbWl1bSBNYWMiOiAiY2hyb21pdW0tbWFj
IiwKKyAgICByIkNocm9taXVtIExpbnV4IjogImNocm9taXVtLWxpbnV4IiwKKyAgICByIkNocm9t
aXVtIFdpbiI6ICJjaHJvbWl1bS13aW4iLAorfQorCisKK19wb3J0c193aXRob3V0X2J1aWxkZXJz
ID0gWworICAgICMgRklYTUU6IEluY2x1ZGluZyBjaHJvbWl1bS1ncHUtbGludXggYmVsb3cgaXMg
YSB3b3JrYXJvdWRuIGZvcgorICAgICMgY2hyb21pdW0tZ3B1LWxpbnV4LXg4Nl82NCBhbmQgY2hy
b21pdW0tZ3B1LWxpbnV4LXg4NiBub3Qgd29ya2luZyBwcm9wZXJseS4KKyAgICAiY2hyb21pdW0t
Z3B1LWxpbnV4IiwKKyAgICAiZ29vZ2xlLWNocm9tZS1saW51eDMyIiwKKyAgICAiZ29vZ2xlLWNo
cm9tZS1saW51eDY0IiwKKyAgICAicXQtbWFjIiwKKyAgICAicXQtd2luIiwKKyAgICAicXQtd2sy
IiwKK10KKwogCiBkZWYgYnVpbGRlcl9wYXRoX2Zyb21fbmFtZShidWlsZGVyX25hbWUpOgogICAg
IHJldHVybiByZS5zdWIocidbXHMoKS5dJywgJ18nLCBidWlsZGVyX25hbWUpCiAKIAotIyBDb21w
aWxlZCBtYW51YWxseSBmcm9tIGh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9q
c29uL2J1aWxkZXJzL2hlbHA/YXNfdGV4dD0xCi0jIFZhbHVlcyBvZiBOb25lIG1lYW4gdGhlcmUg
YXJlIG5vIGJvdHMgcnVubmluZyBhdCBidWlsZC53ZWJraXQub3JnIG9yCi0jIGJ1aWxkLmNocm9t
aXVtLm9yZyBmb3IgdGhhdCBwb3J0LgotIyBGSVhNRSBNYWtlIHRoZSB2YWx1ZXMgaW4gdGhpcyBt
YXAgaW50byBsaXN0cy4KLUNIUk9NSVVNX1BPUlRfVE9fQlVJTERFUl9OQU1FID0gewotICAgICdj
aHJvbWl1bS1ncHUtbGludXgnOiBidWlsZGVyX3BhdGhfZnJvbV9uYW1lKCdXZWJraXQgTGludXgg
LSBHUFUnKSwKLQotICAgICdjaHJvbWl1bS1ncHUtbWFjLXNub3dsZW9wYXJkJzogYnVpbGRlcl9w
YXRoX2Zyb21fbmFtZSgnV2Via2l0IE1hYzEwLjYgLSBHUFUnKSwKLSAgICAnY2hyb21pdW0tZ3B1
LW1hYy1sZW9wYXJkJzogYnVpbGRlcl9wYXRoX2Zyb21fbmFtZSgnV2Via2l0IE1hYzEwLjUgLSBH
UFUnKSwKLQotICAgICdjaHJvbWl1bS1ncHUtd2luLXhwJzogYnVpbGRlcl9wYXRoX2Zyb21fbmFt
ZSgnV2Via2l0IFdpbiAtIEdQVScpLAotICAgICdjaHJvbWl1bS1ncHUtd2luLXZpc3RhJzogYnVp
bGRlcl9wYXRoX2Zyb21fbmFtZSgnV2Via2l0IFZpc3RhIC0gR1BVJyksCi0gICAgJ2Nocm9taXVt
LWdwdS13aW4td2luNyc6IGJ1aWxkZXJfcGF0aF9mcm9tX25hbWUoJ1dlYmtpdCBXaW43IC0gR1BV
JyksCi0KLSAgICAnY2hyb21pdW0tbGludXgteDg2XzY0JzogYnVpbGRlcl9wYXRoX2Zyb21fbmFt
ZSgnTGludXggVGVzdHMgeDY0JyksCi0gICAgJ2Nocm9taXVtLWxpbnV4LXg4Nic6IGJ1aWxkZXJf
cGF0aF9mcm9tX25hbWUoJ0xpbnV4IFRlc3RzIChkYmcpKDEpJyksCi0KLSAgICAnY2hyb21pdW0t
bWFjLWxlb3BhcmQnOiBidWlsZGVyX3BhdGhfZnJvbV9uYW1lKCdNYWMxMC41IFRlc3RzICgxKScp
LAotICAgICdjaHJvbWl1bS1tYWMtc25vd2xlb3BhcmQnOiBidWlsZGVyX3BhdGhfZnJvbV9uYW1l
KCdNYWMgMTAuNiBUZXN0cyAoZGJnKSgxKScpLAotCi0gICAgJ2Nocm9taXVtLXdpbi14cCc6IGJ1
aWxkZXJfcGF0aF9mcm9tX25hbWUoJ1hQIFRlc3RzIChkYmcpKDUpJyksCi0gICAgJ2Nocm9taXVt
LXdpbi12aXN0YSc6IGJ1aWxkZXJfcGF0aF9mcm9tX25hbWUoJ1Zpc3RhIFRlc3RzIChkYmcpKDEp
JyksCi0gICAgJ2Nocm9taXVtLXdpbi13aW43JzogTm9uZSwKK0BtZW1vaXplZAorZGVmIGFsbF9w
b3J0X25hbWVzKCk6CisgICAgcmV0dXJuIHNvcnRlZChzZXQoX2V4YWN0X21hdGNoZXMudmFsdWVz
KCkgKyBfcG9ydHNfd2l0aG91dF9idWlsZGVycykpCiAKLSAgICAnZ29vZ2xlLWNocm9tZS1saW51
eDMyJzogTm9uZSwKLSAgICAnZ29vZ2xlLWNocm9tZS1saW51eDY0JzogTm9uZSwKLX0KIAotIyBD
b21waWxlZCBtYW51YWxseSBmcm9tIGh0dHA6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkZXJzCi1X
RUJLSVRfUE9SVF9UT19CVUlMREVSX05BTUUgPSB7Ci0gICAgJ2d0ayc6ICdHVEsgTGludXggMzIt
Yml0IERlYnVnJywKLQotICAgICdtYWMtbGVvcGFyZCc6ICdMZW9wYXJkIEludGVsIERlYnVnIChU
ZXN0cyknLAotICAgICdtYWMtc25vd2xlb3BhcmQnOiAnU25vd0xlb3BhcmQgSW50ZWwgUmVsZWFz
ZSAoVGVzdHMpJywKLSAgICAnbWFjLXdrMic6ICdTbm93TGVvcGFyZCBJbnRlbCBSZWxlYXNlIChX
ZWJLaXQyIFRlc3RzKScsCi0KLSAgICAncXQtbGludXgnOiAnUXQgTGludXggUmVsZWFzZScsCi0g
ICAgJ3F0LW1hYyc6IE5vbmUsCi0gICAgJ3F0LXdpbic6IE5vbmUsCi0gICAgJ3F0LXdrMic6IE5v
bmUsCi0KLSAgICAnd2luLXhwJzogJ1dpbmRvd3MgWFAgRGVidWcgKFRlc3RzKScsCi0gICAgJ3dp
bic6IE5vbmUsCi0gICAgJ3dpbi13azInOiAnV2luZG93cyA3IFJlbGVhc2UgKFdlYktpdDIgVGVz
dHMpJywKLX0KK2RlZiBwb3J0X25hbWVfZm9yX2J1aWxkZXJfbmFtZShidWlsZGVyX25hbWUpOgor
ICAgIGlmIGJ1aWxkZXJfbmFtZSBpbiBfZXhhY3RfbWF0Y2hlczoKKyAgICAgICAgcmV0dXJuIF9l
eGFjdF9tYXRjaGVzW2J1aWxkZXJfbmFtZV0KKworICAgIGZvciByZWdleHAsIHBvcnRfbmFtZSBp
biBfZnV6enlfbWF0Y2hlcy5pdGVtcygpOgorICAgICAgICBpZiByZS5tYXRjaChyZWdleHAsIGJ1
aWxkZXJfbmFtZSk6CisgICAgICAgICAgICByZXR1cm4gcG9ydF9uYW1lCisKIAotUE9SVF9UT19C
VUlMREVSX05BTUUgPSB7fQotUE9SVF9UT19CVUlMREVSX05BTUUudXBkYXRlKENIUk9NSVVNX1BP
UlRfVE9fQlVJTERFUl9OQU1FKQotUE9SVF9UT19CVUlMREVSX05BTUUudXBkYXRlKFdFQktJVF9Q
T1JUX1RPX0JVSUxERVJfTkFNRSkKK2RlZiBidWlsZGVyX25hbWVfZm9yX3BvcnRfbmFtZSh0YXJn
ZXRfcG9ydF9uYW1lKToKKyAgICBmb3IgYnVpbGRlcl9uYW1lLCBwb3J0X25hbWUgaW4gX2V4YWN0
X21hdGNoZXMuaXRlbXMoKToKKyAgICAgICAgaWYgcG9ydF9uYW1lID09IHRhcmdldF9wb3J0X25h
bWU6CisgICAgICAgICAgICByZXR1cm4gYnVpbGRlcl9uYW1lCisgICAgcmV0dXJuIE5vbmUKIAog
Ci1kZWYgYnVpbGRlcl9uYW1lX2Zvcl9wbGF0Zm9ybShwbGF0Zm9ybSk6Ci0gICAgcmV0dXJuIFBP
UlRfVE9fQlVJTERFUl9OQU1FLmdldChwbGF0Zm9ybSkKK2RlZiBidWlsZGVyX3BhdGhfZm9yX3Bv
cnRfbmFtZShwb3J0X25hbWUpOgorICAgIGJ1aWxkZXJfcGF0aF9mcm9tX25hbWUoYnVpbGRlcl9u
YW1lX2Zvcl9wb3J0X25hbWUocG9ydF9uYW1lKSkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weQkocmV2aXNpb24gOTI0
NDgpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVt
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMjYsNyArMjI2LDcgQEAgY2xhc3MgQ2hyb21pdW1Qb3J0
KFBvcnQpOgogICAgICAgICAgICAgJ2Nocm9taXVtJywgJ3Rlc3RfZXhwZWN0YXRpb25zLnR4dCcp
CiAKICAgICBkZWYgX3Jlc3VsdHNfZm9yX3BsYXRmb3JtKHNlbGYsIHBsYXRmb3JtKToKLSAgICAg
ICAgYnVpbGRlcl9uYW1lID0gYnVpbGRlcnMuYnVpbGRlcl9uYW1lX2Zvcl9wbGF0Zm9ybShwbGF0
Zm9ybSkKKyAgICAgICAgYnVpbGRlcl9uYW1lID0gYnVpbGRlcnMuYnVpbGRlcl9wYXRoX2Zvcl9w
b3J0X25hbWUocGxhdGZvcm0pCiAgICAgICAgIGlmIG5vdCBidWlsZGVyX25hbWU6CiAgICAgICAg
ICAgICByYWlzZSBFeGNlcHRpb24oIkNhbid0IGZpbmQgYnVpbGRlciBmb3IgJXMiICUgcGxhdGZv
cm0pCiAgICAgICAgIHppcF91cmwgPSB1cmxzLmNocm9taXVtX3Jlc3VsdHNfemlwX3VybChidWls
ZGVyX25hbWUpCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L2ZhY3RvcnkucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9mYWN0b3J5LnB5CShyZXZpc2lvbiA5MjQ0OCkKKysrIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZmFjdG9yeS5weQkod29ya2luZyBjb3B5KQpAQCAt
NDIsNyArNDIsNyBAQCBkZWYgYWxsX3BvcnRfbmFtZXMoKToKICAgICBieSByZWFsIHBvcnRzLiBU
aGlzIGRvZXMgbm90IGluY2x1ZGUgYW55ICJmYWtlIiBuYW1lcyBsaWtlICJ0ZXN0IgogICAgIG9y
ICJtb2NrLW1hYyIsIGFuZCBpdCBkb2VzIG5vdCBpbmNsdWRlIGFueSBkaXJlY3RvcmllcyB0aGF0
IGFyZSBub3QgLiIiIgogICAgICMgRklYTUU6IFRoZXJlJ3MgcHJvYmFibHkgYSBiZXR0ZXIgd2F5
IHRvIGdlbmVyYXRlIHRoaXMgbGlzdCAuLi4KLSAgICByZXR1cm4gYnVpbGRlcnMuUE9SVF9UT19C
VUlMREVSX05BTUUua2V5cygpCisgICAgcmV0dXJuIGJ1aWxkZXJzLmFsbF9wb3J0X25hbWVzKCkK
IAogCiBkZWYgZ2V0KHBvcnRfbmFtZT1Ob25lLCBvcHRpb25zPU5vbmUsICoqa3dhcmdzKToKSW5k
ZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Vi
a2l0LnB5CShyZXZpc2lvbiA5MjQ0OCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvd2Via2l0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC04MSw3ICs4MSw3IEBAIGNs
YXNzIFdlYktpdFBvcnQoUG9ydCk6CiAgICAgICAgIHJldHVybiBzZWxmLl9maWxlc3lzdGVtLmpv
aW4oc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgoZXhwZWN0YXRpb25zX2RpcmVjdG9yeSksICd0
ZXN0X2V4cGVjdGF0aW9ucy50eHQnKQogCiAgICAgZGVmIF9yZXN1bHRzX2Zvcl9wbGF0Zm9ybShz
ZWxmLCBwbGF0Zm9ybSk6Ci0gICAgICAgIGJ1aWxkZXJfbmFtZSA9IGJ1aWxkZXJzLmJ1aWxkZXJf
bmFtZV9mb3JfcGxhdGZvcm0ocGxhdGZvcm0pCisgICAgICAgIGJ1aWxkZXJfbmFtZSA9IGJ1aWxk
ZXJzLmJ1aWxkZXJfcGF0aF9mb3JfcG9ydF9uYW1lKHBsYXRmb3JtKQogICAgICAgICBpZiBub3Qg
YnVpbGRlcl9uYW1lOgogICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJDYW4ndCBmaW5kIGJ1
aWxkZXIgZm9yICVzIiAlIHBsYXRmb3JtKQogICAgICAgICBidWlsZGVyc19ieV9uYW1lID0gZGlj
dChbKGJ1aWxkZXIubmFtZSgpLCBidWlsZGVyKSBmb3IgYnVpbGRlciBpbiBCdWlsZEJvdCgpLmJ1
aWxkZXJzKCldKQpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3Jl
YmFzZWxpbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2Nv
bW1hbmRzL3JlYmFzZWxpbmUucHkJKHJldmlzaW9uIDkyNDQ4KQorKysgVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFzZWxpbmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTM1
LDE0ICszNSwyNyBAQCBpbXBvcnQgd2Via2l0cHkuY29tbW9uLmNvbmZpZy51cmxzIGFzIGNvCiBm
cm9tIHdlYmtpdHB5LmNvbW1vbi5jaGVja291dC5iYXNlbGluZW9wdGltaXplciBpbXBvcnQgQmFz
ZWxpbmVPcHRpbWl6ZXIKIGZyb20gd2Via2l0cHkuY29tbW9uLm5ldC5idWlsZGJvdCBpbXBvcnQg
QnVpbGRCb3QKIGZyb20gd2Via2l0cHkuY29tbW9uLm5ldC5sYXlvdXR0ZXN0cmVzdWx0cyBpbXBv
cnQgTGF5b3V0VGVzdFJlc3VsdHMKK2Zyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRp
dmUgaW1wb3J0IFNjcmlwdEVycm9yCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0udXNlciBp
bXBvcnQgVXNlcgogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMubGF5b3V0X3BhY2thZ2UudGVz
dF9yZXN1bHRfd3JpdGVyIGltcG9ydCBUZXN0UmVzdWx0V3JpdGVyCiBmcm9tIHdlYmtpdHB5Lmxh
eW91dF90ZXN0cy5tb2RlbHMgaW1wb3J0IHRlc3RfZmFpbHVyZXMKLWZyb20gd2Via2l0cHkubGF5
b3V0X3Rlc3RzLnBvcnQgaW1wb3J0IGZhY3RvcnkKK2Zyb20gd2Via2l0cHkubGF5b3V0X3Rlc3Rz
Lm1vZGVscy50ZXN0X2V4cGVjdGF0aW9ucyBpbXBvcnQgVGVzdEV4cGVjdGF0aW9ucworZnJvbSB3
ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydCBpbXBvcnQgZmFjdG9yeSwgYnVpbGRlcnMKIGZyb20g
d2Via2l0cHkudG9vbC5ncmFtbWFyIGltcG9ydCBwbHVyYWxpemUKIGZyb20gd2Via2l0cHkudG9v
bC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZAogCiAK
K19iYXNlbGluZV9zdWZmaXhfbGlzdCA9IFsncG5nJywgJ3R4dCddCisKKworZGVmIF9wb3J0X2Zv
cl9idWlsZGVyKGJ1aWxkZXJfbmFtZSk6CisgICAgcG9ydF9uYW1lID0gYnVpbGRlcnMucG9ydF9u
YW1lX2Zvcl9idWlsZGVyX25hbWUoYnVpbGRlcl9uYW1lKQorICAgIGFzc2VydChwb3J0X25hbWUp
ICAjIE5lZWQgdG8gdXBkYXRlIHBvcnRfbmFtZV9mb3JfYnVpbGRlcl9uYW1lCisgICAgcG9ydCA9
IGZhY3RvcnkuZ2V0KHBvcnRfbmFtZSwgUmViYXNlbGluaW5nT3B0aW9ucyhidWlsZGVyX25hbWUp
KQorICAgIGFzc2VydChwb3J0KSAgIyBOZWVkIHRvIHVwZGF0ZSBwb3J0X25hbWVfZm9yX2J1aWxk
ZXJfbmFtZQorICAgIHJldHVybiBwb3J0CisKKwogY2xhc3MgUmViYXNlbGluaW5nT3B0aW9ucyhv
YmplY3QpOgogCiAgICAgREVCVUdfQ09ORklHVVJBVElPTl9SRUdFWCA9IHIiW2R8RF0oZWJ1fGIp
ZyIKQEAgLTUyLDU0ICs2NSwxMSBAQCBjbGFzcyBSZWJhc2VsaW5pbmdPcHRpb25zKG9iamVjdCk6
CiAgICAgICAgIHNlbGYuYnVpbGRlcl9uYW1lID0gYnVpbGRlcl9uYW1lCiAKIAotIyBGSVhNRTog
VGhpcyBsb2dpYyBzaG91bGQgYmUgbW92ZWQgdG8gYnVpbGRlcnMucHkuCi1jbGFzcyBCdWlsZGVy
VG9Qb3J0KG9iamVjdCk6Ci0KLSAgICBfYnVpbGRlcl9uYW1lX3RvX3BvcnRfbmFtZSA9IHsKLSAg
ICAgICAgIyBUaGVzZSBidWlsZGVycyBhcmUgb24gYnVpbGQud2Via2l0Lm9yZy4KLSAgICAgICAg
ciJTbm93TGVvcGFyZCI6ICJtYWMtc25vd2xlb3BhcmQiLAotICAgICAgICByIkxlb3BhcmQiOiAi
bWFjLWxlb3BhcmQiLAotICAgICAgICByIldpbmRvd3MiOiAid2luIiwKLSAgICAgICAgciJHVEsi
OiAiZ3RrIiwKLSAgICAgICAgciJRdCI6ICJxdCIsCi0gICAgICAgIHIiQ2hyb21pdW0gTWFjIjog
ImNocm9taXVtLW1hYyIsCi0gICAgICAgIHIiQ2hyb21pdW0gTGludXgiOiAiY2hyb21pdW0tbGlu
dXgiLAotICAgICAgICByIkNocm9taXVtIFdpbiI6ICJjaHJvbWl1bS13aW4iLAotCi0gICAgICAg
ICMgVGhlc2UgYnVpbGRlcnMgYXJlIG9uIGJ1aWxkLmNocm9taXVtLm9yZy4KLSAgICAgICAgciJX
ZWJraXQgV2luJCI6ICJjaHJvbWl1bS13aW4teHAiLAotICAgICAgICByIldlYmtpdCBWaXN0YSI6
ICJjaHJvbWl1bS13aW4tdmlzdGEiLAotICAgICAgICByIldlYmtpdCBXaW43IjogImNocm9taXVt
LXdpbi13aW43IiwKLSAgICAgICAgciJXZWJraXQgV2luIFwoZGJnXClcKDFcKSI6ICJjaHJvbWl1
bS13aW4teHAiLAotICAgICAgICByIldlYmtpdCBXaW4gXChkYmdcKVwoMlwpIjogImNocm9taXVt
LXdpbi14cCIsCi0gICAgICAgIHIiV2Via2l0IExpbnV4IjogImNocm9taXVtLWxpbnV4LXg4Nl82
NCIsCi0gICAgICAgIHIiV2Via2l0IExpbnV4IDMyIjogImNocm9taXVtLWxpbnV4LXg4NiIsCi0g
ICAgICAgIHIiV2Via2l0IExpbnV4IFwoZGJnXClcKDFcKSI6ICJjaHJvbWl1bS1saW51eC14ODZf
NjQiLAotICAgICAgICByIldlYmtpdCBMaW51eCBcKGRiZ1wpXCgyXCkiOiAiY2hyb21pdW0tbGlu
dXgteDg2XzY0IiwKLSAgICAgICAgciJXZWJraXQgTWFjMTBcLjUiOiAiY2hyb21pdW0tbWFjLWxl
b3BhcmQiLAotICAgICAgICByIldlYmtpdCBNYWMxMFwuNSBcKGRiZ1wpXCgxXCkiOiAiY2hyb21p
dW0tbWFjLWxlb3BhcmQiLAotICAgICAgICByIldlYmtpdCBNYWMxMFwuNSBcKGRiZ1wpXCgyXCki
OiAiY2hyb21pdW0tbWFjLWxlb3BhcmQiLAotICAgICAgICByIldlYmtpdCBNYWMxMFwuNiI6ICJj
aHJvbWl1bS1tYWMtc25vd2xlb3BhcmQiLAotICAgICAgICByIldlYmtpdCBNYWMxMFwuNiBcKGRi
Z1wpIjogImNocm9taXVtLW1hYy1zbm93bGVvcGFyZCIsCi0gICAgfQotCi0gICAgZGVmIF9wb3J0
X25hbWVfZm9yX2J1aWxkZXJfbmFtZShzZWxmLCBidWlsZGVyX25hbWUpOgotICAgICAgICBmb3Ig
cmVnZXhwLCBwb3J0X25hbWUgaW4gc2VsZi5fYnVpbGRlcl9uYW1lX3RvX3BvcnRfbmFtZS5pdGVt
cygpOgotICAgICAgICAgICAgaWYgcmUubWF0Y2gocmVnZXhwLCBidWlsZGVyX25hbWUpOgotICAg
ICAgICAgICAgICAgIHJldHVybiBwb3J0X25hbWUKLQotICAgIGRlZiBwb3J0X2Zvcl9idWlsZGVy
KHNlbGYsIGJ1aWxkZXJfbmFtZSk6Ci0gICAgICAgIHBvcnRfbmFtZSA9IHNlbGYuX3BvcnRfbmFt
ZV9mb3JfYnVpbGRlcl9uYW1lKGJ1aWxkZXJfbmFtZSkKLSAgICAgICAgYXNzZXJ0KHBvcnRfbmFt
ZSkgICMgTmVlZCB0byB1cGRhdGUgX2J1aWxkZXJfbmFtZV90b19wb3J0X25hbWUKLSAgICAgICAg
cG9ydCA9IGZhY3RvcnkuZ2V0KHBvcnRfbmFtZSwgUmViYXNlbGluaW5nT3B0aW9ucyhidWlsZGVy
X25hbWUpKQotICAgICAgICBhc3NlcnQocG9ydCkgICMgTmVlZCB0byB1cGRhdGUgX2J1aWxkZXJf
bmFtZV90b19wb3J0X25hbWUKLSAgICAgICAgcmV0dXJuIHBvcnQKLQotCiBjbGFzcyBSZWJhc2Vs
aW5lVGVzdChBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJyZWJhc2Vs
aW5lLXRlc3QiCiAgICAgaGVscF90ZXh0ID0gIlJlYmFzZWxpbmUgYSBzaW5nbGUgdGVzdCBmcm9t
IGEgYnVpbGRib3QuICAoQ3VycmVudGx5IHdvcmtzIG9ubHkgd2l0aCBidWlsZC5jaHJvbWl1bS5v
cmcgYnVpbGRib3RzLikiCi0gICAgYXJndW1lbnRfbmFtZXMgPSAiQlVJTERFUl9OQU1FIFRFU1Rf
TkFNRSBTVUZGSVgiCisgICAgIyBGSVhNRTogUmVtb3ZlIFNVRkZJWCBhcmd1bWVudC4KKyAgICBh
cmd1bWVudF9uYW1lcyA9ICJCVUlMREVSX05BTUUgVEVTVF9OQU1FIFtTVUZGSVhdIgogCiAgICAg
ZGVmIF9yZXN1bHRzX3VybChzZWxmLCBidWlsZGVyX25hbWUpOgogICAgICAgICAjIEZJWE1FOiBH
ZW5lcmFsaXplIHRoaXMgY29tbWFuZCB0byB3b3JrIHdpdGggbm9uLWJ1aWxkLmNocm9taXVtLm9y
ZyBidWlsZGVycy4KQEAgLTEwNywxMCArNzcsMTIgQEAgY2xhc3MgUmViYXNlbGluZVRlc3QoQWJz
dHJhY3REZWNsYXJhdGl2ZQogICAgICAgICByZXR1cm4gYnVpbGRlci5hY2N1bXVsYXRlZF9yZXN1
bHRzX3VybCgpCiAKICAgICBkZWYgX2Jhc2VsaW5lX2RpcmVjdG9yeShzZWxmLCBidWlsZGVyX25h
bWUpOgotICAgICAgICBwb3J0ID0gQnVpbGRlclRvUG9ydCgpLnBvcnRfZm9yX2J1aWxkZXIoYnVp
bGRlcl9uYW1lKQorICAgICAgICBwb3J0ID0gX3BvcnRfZm9yX2J1aWxkZXIoYnVpbGRlcl9uYW1l
KQogICAgICAgICByZXR1cm4gcG9ydC5iYXNlbGluZV9wYXRoKCkKIAogICAgIGRlZiBfc2F2ZV9i
YXNlbGluZShzZWxmLCBkYXRhLCB0YXJnZXRfYmFzZWxpbmUpOgorICAgICAgICBpZiBub3QgZGF0
YToKKyAgICAgICAgICAgIHJldHVybgogICAgICAgICBmaWxlc3lzdGVtID0gc2VsZi5fdG9vbC5m
aWxlc3lzdGVtCiAgICAgICAgIGZpbGVzeXN0ZW0ubWF5YmVfbWFrZV9kaXJlY3RvcnkoZmlsZXN5
c3RlbS5kaXJuYW1lKHRhcmdldF9iYXNlbGluZSkpCiAgICAgICAgIGZpbGVzeXN0ZW0ud3JpdGVf
YmluYXJ5X2ZpbGUodGFyZ2V0X2Jhc2VsaW5lLCBkYXRhKQpAQCAtMTMwLDE0ICsxMDIsMTUgQEAg
Y2xhc3MgUmViYXNlbGluZVRlc3QoQWJzdHJhY3REZWNsYXJhdGl2ZQogICAgICAgICByZXN1bHRz
X3VybCA9IHNlbGYuX3Jlc3VsdHNfdXJsKGJ1aWxkZXJfbmFtZSkKICAgICAgICAgYmFzZWxpbmVf
ZGlyZWN0b3J5ID0gc2VsZi5fYmFzZWxpbmVfZGlyZWN0b3J5KGJ1aWxkZXJfbmFtZSkKIAotICAg
ICAgICBzb3VyY2VfYmFzZWxpbmUgPSAiJXMvJXMiICUgKHJlc3VsdHNfdXJsLCBzZWxmLl9maWxl
X25hbWVfZm9yX2FjdHVhbF9yZXN1bHQodGVzdF9uYW1lLCBzdWZmaXgpKQorICAgICAgICBzb3Vy
Y2VfYmFzZWxpbmUgPSAiJXMlcyIgJSAocmVzdWx0c191cmwsIHNlbGYuX2ZpbGVfbmFtZV9mb3Jf
YWN0dWFsX3Jlc3VsdCh0ZXN0X25hbWUsIHN1ZmZpeCkpCiAgICAgICAgIHRhcmdldF9iYXNlbGlu
ZSA9IG9zLnBhdGguam9pbihiYXNlbGluZV9kaXJlY3RvcnksIHNlbGYuX2ZpbGVfbmFtZV9mb3Jf
ZXhwZWN0ZWRfcmVzdWx0KHRlc3RfbmFtZSwgc3VmZml4KSkKIAotICAgICAgICBwcmludCAiUmV0
cmlldmluZyAlcyAuLi4iICUgc291cmNlX2Jhc2VsaW5lCi0gICAgICAgIHNlbGYuX3NhdmVfYmFz
ZWxpbmUoc2VsZi5fdG9vbC53ZWIuZ2V0X2JpbmFyeShzb3VyY2VfYmFzZWxpbmUpLCB0YXJnZXRf
YmFzZWxpbmUpCisgICAgICAgIHByaW50ICJSZXRyaWV2aW5nICVzLiIgJSBzb3VyY2VfYmFzZWxp
bmUKKyAgICAgICAgc2VsZi5fc2F2ZV9iYXNlbGluZShzZWxmLl90b29sLndlYi5nZXRfYmluYXJ5
KHNvdXJjZV9iYXNlbGluZSwgY29udmVydF80MDRfdG9fTm9uZT1UcnVlKSwgdGFyZ2V0X2Jhc2Vs
aW5lKQogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6Ci0gICAg
ICAgIHNlbGYuX3JlYmFzZWxpbmVfdGVzdChhcmdzWzBdLCBhcmdzWzFdLCBhcmdzWzJdKQorICAg
ICAgICBmb3Igc3VmZml4IGluIF9iYXNlbGluZV9zdWZmaXhfbGlzdDoKKyAgICAgICAgICAgIHNl
bGYuX3JlYmFzZWxpbmVfdGVzdChhcmdzWzBdLCBhcmdzWzFdLCBzdWZmaXgpCiAKIAogY2xhc3Mg
T3B0aW1pemVCYXNlbGluZXMoQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgpAQCAtMTQ3LDE4
ICsxMjAsNjUgQEAgY2xhc3MgT3B0aW1pemVCYXNlbGluZXMoQWJzdHJhY3REZWNsYXJhdAogCiAg
ICAgIyBGSVhNRTogU2hvdWxkIFRlc3RSZXN1bHRXcml0ZXIga25vdyBob3cgdG8gY29tcHV0ZSB0
aGlzIHN0cmluZz8KICAgICBkZWYgX2Jhc2VsaW5lX25hbWUoc2VsZiwgdGVzdF9uYW1lLCBzdWZm
aXgpOgotICAgICAgICByZXR1cm4gc2VsZi5fdG9vbC5maWxlc3lzdGVtLnNwbGl0ZXh0KHRlc3Rf
bmFtZSlbMF0gKyBUZXN0UmVzdWx0V3JpdGVyLkZJTEVOQU1FX1NVRkZJWF9FWFBFQ1RFRCArIHN1
ZmZpeAorICAgICAgICByZXR1cm4gc2VsZi5fdG9vbC5maWxlc3lzdGVtLnNwbGl0ZXh0KHRlc3Rf
bmFtZSlbMF0gKyBUZXN0UmVzdWx0V3JpdGVyLkZJTEVOQU1FX1NVRkZJWF9FWFBFQ1RFRCArICIu
IiArIHN1ZmZpeAogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6
CiAgICAgICAgIGJhc2VsaW5lX29wdGltaXplciA9IEJhc2VsaW5lT3B0aW1pemVyKHRvb2wuc2Nt
KCksIHRvb2wuZmlsZXN5c3RlbSkKIAogICAgICAgICB0ZXN0X25hbWUgPSBhcmdzWzBdCi0gICAg
ICAgIGZvciBzdWZmaXggaW4gWycucG5nJywgJy50eHQnXToKKyAgICAgICAgZm9yIHN1ZmZpeCBp
biBfYmFzZWxpbmVfc3VmZml4X2xpc3Q6CiAgICAgICAgICAgICBiYXNlbGluZV9uYW1lID0gc2Vs
Zi5fYmFzZWxpbmVfbmFtZSh0ZXN0X25hbWUsIHN1ZmZpeCkKICAgICAgICAgICAgIGlmIG5vdCBi
YXNlbGluZV9vcHRpbWl6ZXIub3B0aW1pemUoYmFzZWxpbmVfbmFtZSk6CiAgICAgICAgICAgICAg
ICAgcHJpbnQgIkh1ZXJpc3RpY3MgZmFpbGVkIHRvIG9wdGltaXplICVzIiAlIGJhc2VsaW5lX25h
bWUKIAogCitjbGFzcyBSZWJhc2VsaW5lRXhwZWN0YXRpb25zKEFic3RyYWN0RGVjbGFyYXRpdmVD
b21tYW5kKToKKyAgICBuYW1lID0gInJlYmFzZWxpbmUtZXhwZWN0YXRpb25zIgorICAgIGhlbHBf
dGV4dCA9ICJSZWJhc2VsaW5lcyB0aGUgdGVzdHMgaW5kaWNhdGVkIGluIHRlc3RfZXhwZWN0YXRp
b25zLnR4dC4iCisKKyAgICBkZWYgX3J1bl93ZWJraXRfcGF0Y2goc2VsZiwgYXJncyk6CisgICAg
ICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX3Rvb2wuZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFtz
ZWxmLl90b29sLnBhdGgoKV0gKyBhcmdzLCBjd2Q9c2VsZi5fdG9vbC5zY20oKS5jaGVja291dF9y
b290KQorICAgICAgICBleGNlcHQgU2NyaXB0RXJyb3IsIGU6CisgICAgICAgICAgICBwYXNzCisK
KyAgICBkZWYgX2lzX3N1cHBvcnRlZF9wb3J0KHNlbGYsIHBvcnRfbmFtZSk6CisgICAgICAgICMg
RklYTUU6IFN1cHBvcnQgbm9uLUNocm9taXVtIHBvcnRzLgorICAgICAgICByZXR1cm4gcG9ydF9u
YW1lLnN0YXJ0c3dpdGgoJ2Nocm9taXVtLScpCisKKyAgICBkZWYgX3VwZGF0ZV9leHBlY3RhdGlv
bnNfZmlsZShzZWxmLCBwb3J0LCBleHBlY3RhdGlvbnMsIHRlc3RzX3RvX3JlYmFzZWxpbmUpOgor
ICAgICAgICBuZXdfZXhwZWN0YXRpb25zID0gZXhwZWN0YXRpb25zLnJlbW92ZV9yZWJhc2VsaW5l
ZF90ZXN0cyh0ZXN0c190b19yZWJhc2VsaW5lKQorICAgICAgICBwYXRoID0gcG9ydC5wYXRoX3Rv
X3Rlc3RfZXhwZWN0YXRpb25zX2ZpbGUoKQorICAgICAgICBzZWxmLl90b29sLmZpbGVzeXN0ZW0u
d3JpdGVfdGV4dF9maWxlKHBhdGgsIG5ld19leHBlY3RhdGlvbnMpCisKKyAgICAjIEZJWE1FOiBX
ZSByZWFkIGFuZCB3cml0ZSB0aGUgdGVzdF9leHBlY3RhdGlvbnMudHh0IGZpbGUgb25jZSBmb3Ig
ZWFjaCBwb3J0LiAgVGhhdCBzZWVtcyBleGNlc3NpdmUuCisgICAgZGVmIF90ZXN0c190b19yZWJh
c2VsaW5lKHNlbGYsIHBvcnQpOgorICAgICAgICBleHBlY3RhdGlvbnMgPSBUZXN0RXhwZWN0YXRp
b25zKHBvcnQsIE5vbmUsIHBvcnQudGVzdF9leHBlY3RhdGlvbnMoKSwgcG9ydC50ZXN0X2NvbmZp
Z3VyYXRpb24oKSkKKyAgICAgICAgdGVzdHNfdG9fcmViYXNlbGluZSA9IGV4cGVjdGF0aW9ucy5n
ZXRfcmViYXNlbGluaW5nX2ZhaWx1cmVzKCkKKyAgICAgICAgc2VsZi5fdXBkYXRlX2V4cGVjdGF0
aW9uc19maWxlKHBvcnQsIGV4cGVjdGF0aW9ucywgdGVzdHNfdG9fcmViYXNlbGluZSkKKyAgICAg
ICAgcmV0dXJuIHRlc3RzX3RvX3JlYmFzZWxpbmUKKworICAgIGRlZiBfcmViYXNlbGluZV9wb3J0
KHNlbGYsIHBvcnRfbmFtZSk6CisgICAgICAgIGlmIG5vdCBzZWxmLl9pc19zdXBwb3J0ZWRfcG9y
dChwb3J0X25hbWUpOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGJ1aWxkZXJfbmFtZSA9
IGJ1aWxkZXJzLmJ1aWxkZXJfbmFtZV9mb3JfcG9ydF9uYW1lKHBvcnRfbmFtZSkKKyAgICAgICAg
aWYgbm90IGJ1aWxkZXJfbmFtZToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBwcmludCAi
UmV0cmlldmluZyByZXN1bHRzIGZvciAlcyBmcm9tICVzLiIgJSAocG9ydF9uYW1lLCBidWlsZGVy
X25hbWUpCisgICAgICAgIGZvciB0ZXN0X25hbWUgaW4gc2VsZi5fdGVzdHNfdG9fcmViYXNlbGlu
ZShmYWN0b3J5LmdldChwb3J0X25hbWUpKToKKyAgICAgICAgICAgIHNlbGYuX3RvdWNoZWRfdGVz
dF9uYW1lcy5hZGQodGVzdF9uYW1lKQorICAgICAgICAgICAgcHJpbnQgIiAgICAlcyIgJSB0ZXN0
X25hbWUKKyAgICAgICAgICAgIHNlbGYuX3J1bl93ZWJraXRfcGF0Y2goWydyZWJhc2VsaW5lLXRl
c3QnLCBidWlsZGVyX25hbWUsIHRlc3RfbmFtZV0pCisKKyAgICBkZWYgZXhlY3V0ZShzZWxmLCBv
cHRpb25zLCBhcmdzLCB0b29sKToKKyAgICAgICAgc2VsZi5fdG91Y2hlZF90ZXN0X25hbWVzID0g
c2V0KFtdKQorICAgICAgICBmb3IgcG9ydF9uYW1lIGluIGZhY3RvcnkuYWxsX3BvcnRfbmFtZXMo
KToKKyAgICAgICAgICAgIHNlbGYuX3JlYmFzZWxpbmVfcG9ydChwb3J0X25hbWUpCisgICAgICAg
IGZvciB0ZXN0X25hbWUgaW4gc2VsZi5fdG91Y2hlZF90ZXN0X25hbWVzOgorICAgICAgICAgICAg
cHJpbnQgIk9wdGltaXppbmcgYmFzZWxpbmVzIGZvciAlcy4iICUgdGVzdF9uYW1lCisgICAgICAg
ICAgICBzZWxmLl9ydW5fd2Via2l0X3BhdGNoKFsnb3B0aW1pemUtYmFzZWxpbmVzJywgdGVzdF9u
YW1lXSkKKworCiBjbGFzcyBSZWJhc2VsaW5lKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToK
ICAgICBuYW1lID0gInJlYmFzZWxpbmUiCiAgICAgaGVscF90ZXh0ID0gIlJlcGxhY2VzIGxvY2Fs
IGV4cGVjdGVkLnR4dCBmaWxlcyB3aXRoIG5ldyByZXN1bHRzIGZyb20gYnVpbGQgYm90cyIKQEAg
LTE5MSw3ICsyMTEsNyBAQCBjbGFzcyBSZWJhc2VsaW5lKEFic3RyYWN0RGVjbGFyYXRpdmVDb21t
CiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6CiAgICAgICAgIGJ1
aWxkZXIsIGJ1aWxkX251bWJlciA9IHNlbGYuX2J1aWxkZXJfdG9fcHVsbF9mcm9tKCkKICAgICAg
ICAgYnVpbGQgPSBidWlsZGVyLmJ1aWxkKGJ1aWxkX251bWJlcikKLSAgICAgICAgcG9ydCA9IEJ1
aWxkZXJUb1BvcnQoKS5wb3J0X2Zvcl9idWlsZGVyKGJ1aWxkZXIubmFtZSgpKQorICAgICAgICBw
b3J0ID0gYnVpbGRlcl9uYW1lX2Zvcl9wb3J0X25hbWUucG9ydF9mb3JfYnVpbGRlcihidWlsZGVy
Lm5hbWUoKSkKIAogICAgICAgICBmb3IgdGVzdCBpbiBzZWxmLl90ZXN0c190b191cGRhdGUoYnVp
bGQpOgogICAgICAgICAgICAgcmVzdWx0c191cmwgPSBzZWxmLl9yZXN1bHRzX3VybF9mb3JfdGVz
dChidWlsZCwgdGVzdCkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5k
cy9yZWJhc2VsaW5lX3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9jb21tYW5kcy9yZWJhc2VsaW5lX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiA5MjQ0
OCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9yZWJhc2VsaW5lX3Vu
aXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zMSwzMyArMzEsNzEgQEAgaW1wb3J0IHVuaXR0
ZXN0CiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0ub3V0cHV0Y2FwdHVyZSBpbXBvcnQgT3V0
cHV0Q2FwdHVyZQogZnJvbSB3ZWJraXRweS50aGlyZHBhcnR5Lm1vY2sgaW1wb3J0IE1vY2sKIGZy
b20gd2Via2l0cHkudG9vbC5jb21tYW5kcy5yZWJhc2VsaW5lIGltcG9ydCAqCi1mcm9tIHdlYmtp
dHB5LnRvb2wubW9ja3Rvb2wgaW1wb3J0IE1vY2tUb29sCitmcm9tIHdlYmtpdHB5LnRvb2wubW9j
a3Rvb2wgaW1wb3J0IE1vY2tUb29sLCBNb2NrRXhlY3V0aXZlCiAKIAogY2xhc3MgVGVzdFJlYmFz
ZWxpbmUodW5pdHRlc3QuVGVzdENhc2UpOgotICAgICMgVGhpcyBqdXN0IG1ha2VzIHN1cmUgdGhl
IGNvZGUgcnVucyB3aXRob3V0IGV4Y2VwdGlvbnMuCiAgICAgZGVmIHRlc3RfdGVzdHNfdG9fdXBk
YXRlKHNlbGYpOgogICAgICAgICBjb21tYW5kID0gUmViYXNlbGluZSgpCiAgICAgICAgIGNvbW1h
bmQuYmluZF90b190b29sKE1vY2tUb29sKCkpCiAgICAgICAgIGJ1aWxkID0gTW9jaygpCiAgICAg
ICAgIE91dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhzZWxmLCBjb21tYW5kLl90ZXN0c190
b191cGRhdGUsIFtidWlsZF0pCiAKLQotY2xhc3MgVGVzdFJlYmFzZWxpbmVUZXN0KHVuaXR0ZXN0
LlRlc3RDYXNlKToKLSAgICBkZWYgdGVzdF90ZXN0c190b191cGRhdGUoc2VsZik6CisgICAgZGVm
IHRlc3RfcmViYXNlbGluZV90ZXN0KHNlbGYpOgogICAgICAgICBjb21tYW5kID0gUmViYXNlbGlu
ZVRlc3QoKQogICAgICAgICBjb21tYW5kLmJpbmRfdG9fdG9vbChNb2NrVG9vbCgpKQotICAgICAg
ICBidWlsZCA9IE1vY2soKQotICAgICAgICBleHBlY3RlZF9zdGRvdXQgPSAiUmV0cmlldmluZyBo
dHRwOi8vZXhhbXBsZS5jb20vZi9idWlsZGVycy9XZWJraXQgTGludXgvcmVzdWx0cy8vdXNlcnNj
cmlwdHMvYW5vdGhlci10ZXN0LWFjdHVhbC50eHQgLi4uXG4iCisgICAgICAgIGV4cGVjdGVkX3N0
ZG91dCA9ICJSZXRyaWV2aW5nIGh0dHA6Ly9leGFtcGxlLmNvbS9mL2J1aWxkZXJzL1dlYmtpdCBM
aW51eC9yZXN1bHRzL3VzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC1hY3R1YWwudHh0LlxuIgogICAg
ICAgICBPdXRwdXRDYXB0dXJlKCkuYXNzZXJ0X291dHB1dHMoc2VsZiwgY29tbWFuZC5fcmViYXNl
bGluZV90ZXN0LCBbIldlYmtpdCBMaW51eCIsICJ1c2Vyc2NyaXB0cy9hbm90aGVyLXRlc3QuaHRt
bCIsICJ0eHQiXSwgZXhwZWN0ZWRfc3Rkb3V0PWV4cGVjdGVkX3N0ZG91dCkKIAotCi1jbGFzcyBC
dWlsZGVyVG9Qb3J0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgZGVmIHRlc3RfcG9ydF9m
b3JfYnVpbGRlcihzZWxmKToKLSAgICAgICAgY29udmVydGVyID0gQnVpbGRlclRvUG9ydCgpCi0g
ICAgICAgIHBvcnQgPSBjb252ZXJ0ZXIucG9ydF9mb3JfYnVpbGRlcigiTGVvcGFyZCBJbnRlbCBE
ZWJ1ZyAoVGVzdHMpIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIocG9ydC50ZXN0X2Nv
bmZpZ3VyYXRpb24oKSksICI8bGVvcGFyZCwgeDg2LCBkZWJ1ZywgY3B1PiIpCi0gICAgICAgIHBv
cnQgPSBjb252ZXJ0ZXIucG9ydF9mb3JfYnVpbGRlcigiTGVvcGFyZCBJbnRlbCBSZWxlYXNlIChU
ZXN0cykiKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihwb3J0LnRlc3RfY29uZmlndXJh
dGlvbigpKSwgIjxsZW9wYXJkLCB4ODYsIHJlbGVhc2UsIGNwdT4iKQotICAgICAgICBwb3J0ID0g
Y29udmVydGVyLnBvcnRfZm9yX2J1aWxkZXIoIldlYmtpdCBXaW4gKGRiZykoMSkiKQotICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKHN0cihwb3J0LnRlc3RfY29uZmlndXJhdGlvbigpKSwgIjx4cCwg
eDg2LCBkZWJ1ZywgY3B1PiIpCisgICAgZGVmIHRlc3RfcmViYXNlbGluZV9leHBlY3RhdGlvbnMo
c2VsZik6CisgICAgICAgIGNvbW1hbmQgPSBSZWJhc2VsaW5lRXhwZWN0YXRpb25zKCkKKyAgICAg
ICAgdG9vbCA9IE1vY2tUb29sKCkKKyAgICAgICAgdG9vbC5leGVjdXRpdmUgPSBNb2NrRXhlY3V0
aXZlKHNob3VsZF9sb2c9VHJ1ZSkKKyAgICAgICAgY29tbWFuZC5iaW5kX3RvX3Rvb2wodG9vbCkK
KyAgICAgICAgZXhwZWN0ZWRfc3Rkb3V0ID0gIiIiUmV0cmlldmluZyByZXN1bHRzIGZvciBjaHJv
bWl1bS1ncHUtbWFjLWxlb3BhcmQgZnJvbSBXZWJraXQgTWFjMTAuNSAtIEdQVS4KK1JldHJpZXZp
bmcgcmVzdWx0cyBmb3IgY2hyb21pdW0tZ3B1LW1hYy1zbm93bGVvcGFyZCBmcm9tIFdlYmtpdCBN
YWMxMC42IC0gR1BVLgorUmV0cmlldmluZyByZXN1bHRzIGZvciBjaHJvbWl1bS1ncHUtd2luLXdp
bjcgZnJvbSBXZWJraXQgV2luNyAtIEdQVS4KK1JldHJpZXZpbmcgcmVzdWx0cyBmb3IgY2hyb21p
dW0tZ3B1LXdpbi14cCBmcm9tIFdlYmtpdCBXaW4gLSBHUFUuCitSZXRyaWV2aW5nIHJlc3VsdHMg
Zm9yIGNocm9taXVtLWxpbnV4LXg4NiBmcm9tIFdlYmtpdCBMaW51eCAzMi4KKyAgICB1c2Vyc2Ny
aXB0cy9hbm90aGVyLXRlc3QuaHRtbAorICAgIHVzZXJzY3JpcHRzL2ltYWdlcy5zdmcKK1JldHJp
ZXZpbmcgcmVzdWx0cyBmb3IgY2hyb21pdW0tbGludXgteDg2XzY0IGZyb20gV2Via2l0IExpbnV4
IChkYmcpKDIpLgorICAgIHVzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sCisgICAgdXNlcnNj
cmlwdHMvaW1hZ2VzLnN2ZworUmV0cmlldmluZyByZXN1bHRzIGZvciBjaHJvbWl1bS1tYWMtbGVv
cGFyZCBmcm9tIFdlYmtpdCBNYWMxMC41IChkYmcpKDEpLgorICAgIHVzZXJzY3JpcHRzL2Fub3Ro
ZXItdGVzdC5odG1sCisgICAgdXNlcnNjcmlwdHMvaW1hZ2VzLnN2ZworUmV0cmlldmluZyByZXN1
bHRzIGZvciBjaHJvbWl1bS1tYWMtc25vd2xlb3BhcmQgZnJvbSBXZWJraXQgTWFjMTAuNiAoZGJn
KS4KKyAgICB1c2Vyc2NyaXB0cy9hbm90aGVyLXRlc3QuaHRtbAorICAgIHVzZXJzY3JpcHRzL2lt
YWdlcy5zdmcKK1JldHJpZXZpbmcgcmVzdWx0cyBmb3IgY2hyb21pdW0td2luLXZpc3RhIGZyb20g
V2Via2l0IFZpc3RhLgorICAgIHVzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sCisgICAgdXNl
cnNjcmlwdHMvaW1hZ2VzLnN2ZworUmV0cmlldmluZyByZXN1bHRzIGZvciBjaHJvbWl1bS13aW4t
d2luNyBmcm9tIFdlYmtpdCBXaW43LgorICAgIHVzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1s
CisgICAgdXNlcnNjcmlwdHMvaW1hZ2VzLnN2ZworUmV0cmlldmluZyByZXN1bHRzIGZvciBjaHJv
bWl1bS13aW4teHAgZnJvbSBXZWJraXQgV2luIChkYmcpKDIpLgorICAgIHVzZXJzY3JpcHRzL2Fu
b3RoZXItdGVzdC5odG1sCisgICAgdXNlcnNjcmlwdHMvaW1hZ2VzLnN2ZworT3B0aW1pemluZyBi
YXNlbGluZXMgZm9yIHVzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sLgorT3B0aW1pemluZyBi
YXNlbGluZXMgZm9yIHVzZXJzY3JpcHRzL2ltYWdlcy5zdmcuCisiIiIKKyAgICAgICAgZXhwZWN0
ZWRfc3RkZXJyID0gIiIiTU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JlYmFzZWxpbmUtdGVz
dCcsICdXZWJraXQgTGludXggMzInLCAndXNlcnNjcmlwdHMvYW5vdGhlci10ZXN0Lmh0bWwnXSwg
Y3dkPS9tb2NrLWNoZWNrb3V0CitNT0NLIHJ1bl9jb21tYW5kOiBbJ2VjaG8nLCAncmViYXNlbGlu
ZS10ZXN0JywgJ1dlYmtpdCBMaW51eCAzMicsICd1c2Vyc2NyaXB0cy9pbWFnZXMuc3ZnJ10sIGN3
ZD0vbW9jay1jaGVja291dAorTU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JlYmFzZWxpbmUt
dGVzdCcsICdXZWJraXQgTGludXggKGRiZykoMiknLCAndXNlcnNjcmlwdHMvYW5vdGhlci10ZXN0
Lmh0bWwnXSwgY3dkPS9tb2NrLWNoZWNrb3V0CitNT0NLIHJ1bl9jb21tYW5kOiBbJ2VjaG8nLCAn
cmViYXNlbGluZS10ZXN0JywgJ1dlYmtpdCBMaW51eCAoZGJnKSgyKScsICd1c2Vyc2NyaXB0cy9p
bWFnZXMuc3ZnJ10sIGN3ZD0vbW9jay1jaGVja291dAorTU9DSyBydW5fY29tbWFuZDogWydlY2hv
JywgJ3JlYmFzZWxpbmUtdGVzdCcsICdXZWJraXQgTWFjMTAuNSAoZGJnKSgxKScsICd1c2Vyc2Ny
aXB0cy9hbm90aGVyLXRlc3QuaHRtbCddLCBjd2Q9L21vY2stY2hlY2tvdXQKK01PQ0sgcnVuX2Nv
bW1hbmQ6IFsnZWNobycsICdyZWJhc2VsaW5lLXRlc3QnLCAnV2Via2l0IE1hYzEwLjUgKGRiZyko
MSknLCAndXNlcnNjcmlwdHMvaW1hZ2VzLnN2ZyddLCBjd2Q9L21vY2stY2hlY2tvdXQKK01PQ0sg
cnVuX2NvbW1hbmQ6IFsnZWNobycsICdyZWJhc2VsaW5lLXRlc3QnLCAnV2Via2l0IE1hYzEwLjYg
KGRiZyknLCAndXNlcnNjcmlwdHMvYW5vdGhlci10ZXN0Lmh0bWwnXSwgY3dkPS9tb2NrLWNoZWNr
b3V0CitNT0NLIHJ1bl9jb21tYW5kOiBbJ2VjaG8nLCAncmViYXNlbGluZS10ZXN0JywgJ1dlYmtp
dCBNYWMxMC42IChkYmcpJywgJ3VzZXJzY3JpcHRzL2ltYWdlcy5zdmcnXSwgY3dkPS9tb2NrLWNo
ZWNrb3V0CitNT0NLIHJ1bl9jb21tYW5kOiBbJ2VjaG8nLCAncmViYXNlbGluZS10ZXN0JywgJ1dl
YmtpdCBWaXN0YScsICd1c2Vyc2NyaXB0cy9hbm90aGVyLXRlc3QuaHRtbCddLCBjd2Q9L21vY2st
Y2hlY2tvdXQKK01PQ0sgcnVuX2NvbW1hbmQ6IFsnZWNobycsICdyZWJhc2VsaW5lLXRlc3QnLCAn
V2Via2l0IFZpc3RhJywgJ3VzZXJzY3JpcHRzL2ltYWdlcy5zdmcnXSwgY3dkPS9tb2NrLWNoZWNr
b3V0CitNT0NLIHJ1bl9jb21tYW5kOiBbJ2VjaG8nLCAncmViYXNlbGluZS10ZXN0JywgJ1dlYmtp
dCBXaW43JywgJ3VzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sJ10sIGN3ZD0vbW9jay1jaGVj
a291dAorTU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JlYmFzZWxpbmUtdGVzdCcsICdXZWJr
aXQgV2luNycsICd1c2Vyc2NyaXB0cy9pbWFnZXMuc3ZnJ10sIGN3ZD0vbW9jay1jaGVja291dAor
TU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JlYmFzZWxpbmUtdGVzdCcsICdXZWJraXQgV2lu
IChkYmcpKDIpJywgJ3VzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sJ10sIGN3ZD0vbW9jay1j
aGVja291dAorTU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JlYmFzZWxpbmUtdGVzdCcsICdX
ZWJraXQgV2luIChkYmcpKDIpJywgJ3VzZXJzY3JpcHRzL2ltYWdlcy5zdmcnXSwgY3dkPS9tb2Nr
LWNoZWNrb3V0CitNT0NLIHJ1bl9jb21tYW5kOiBbJ2VjaG8nLCAnb3B0aW1pemUtYmFzZWxpbmVz
JywgJ3VzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sJ10sIGN3ZD0vbW9jay1jaGVja291dAor
TU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ29wdGltaXplLWJhc2VsaW5lcycsICd1c2Vyc2Ny
aXB0cy9pbWFnZXMuc3ZnJ10sIGN3ZD0vbW9jay1jaGVja291dAorIiIiCisgICAgICAgIGNvbW1h
bmQuX3Rlc3RzX3RvX3JlYmFzZWxpbmUgPSBsYW1iZGEgcG9ydDogW10gaWYgbm90IHBvcnQubmFt
ZSgpLmZpbmQoJy1ncHUtJykgPT0gLTEgZWxzZSBbJ3VzZXJzY3JpcHRzL2Fub3RoZXItdGVzdC5o
dG1sJywgJ3VzZXJzY3JpcHRzL2ltYWdlcy5zdmcnXQorICAgICAgICBPdXRwdXRDYXB0dXJlKCku
YXNzZXJ0X291dHB1dHMoc2VsZiwgY29tbWFuZC5leGVjdXRlLCBbTW9ja1Rvb2woKSwgTm9uZSwg
Tm9uZV0sIGV4cGVjdGVkX3N0ZG91dD1leHBlY3RlZF9zdGRvdXQsIGV4cGVjdGVkX3N0ZGVycj1l
eHBlY3RlZF9zdGRlcnIpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>