<?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>226353</bug_id>
          
          <creation_ts>2021-05-27 13:37:58 -0700</creation_ts>
          <short_desc>Print bot configuration in build.webkit.org builds</short_desc>
          <delta_ts>2021-06-01 09:29:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>jbedard</cc>
    
    <cc>jlewis3</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1764481</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-05-27 13:37:58 -0700</bug_when>
    <thetext>Print bot configuration in build.webkit.org builds (e.g.: OS/xcode version, uptime, disk-space etc.), similar to how we print in EWS builds. This would help in debugging any bot related issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764485</commentid>
    <comment_count>1</comment_count>
      <attachid>429922</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-05-27 13:42:43 -0700</bug_when>
    <thetext>Created attachment 429922
[fast-cq] Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764486</commentid>
    <comment_count>2</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-05-27 13:45:22 -0700</bug_when>
    <thetext>Sample runs: https://build.webkit-dev.org/#/builders/17/builds/65</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764498</commentid>
    <comment_count>3</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-05-27 14:14:09 -0700</bug_when>
    <thetext>(In reply to Aakash Jain from comment #2)
&gt; Sample runs: https://build.webkit-dev.org/#/builders/17/builds/65

I notice that the linked run prints out watchOS information, but the run is associated with the iPad queue? What&apos;s going on with that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764530</commentid>
    <comment_count>4</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-05-27 15:14:14 -0700</bug_when>
    <thetext>Not sure. The bot might have multiple SDKs installed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764539</commentid>
    <comment_count>5</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-05-27 15:25:39 -0700</bug_when>
    <thetext>(In reply to Aakash Jain from comment #4)
&gt; Not sure. The bot might have multiple SDKs installed.

I didn&apos;t look at the entire log. You&apos;re dumping all installed SDKs, so that makes sense. Is the goal here just to have this information accessible if someone needs it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764721</commentid>
    <comment_count>6</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-05-28 03:34:45 -0700</bug_when>
    <thetext>(In reply to Jonathan Bedard from comment #5)
&gt; Is the goal here just to have this information accessible if someone needs it?
Yes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1765025</commentid>
    <comment_count>7</comment_count>
      <attachid>429922</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-05-28 17:25:10 -0700</bug_when>
    <thetext>Comment on attachment 429922
[fast-cq] Patch

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

&gt; Tools/CISupport/build-webkit-org/steps_unittest.py:1203
&gt; +            + ExpectShell.log(&apos;stdio&apos;, stdout=&apos;&apos;&apos;Upon execvpe sw_vers [&apos;sw_vers&apos;] in environment id 7696545650400
&gt; +:Traceback (most recent call last):
&gt; +  File &quot;/usr/lib/python2.7/site-packages/twisted/internet/process.py&quot;, line 445, in _fork
&gt; +    environment)
&gt; +  File &quot;/usr/lib/python2.7/site-packages/twisted/internet/process.py&quot;, line 523, in _execChild
&gt; +    os.execvpe(executable, args, environment)
&gt; +  File &quot;/usr/lib/python2.7/os.py&quot;, line 355, in execvpe
&gt; +    _execvpe(file, args, env)
&gt; +  File &quot;/usr/lib/python2.7/os.py&quot;, line 382, in _execvpe
&gt; +    func(fullname, *argrest)
&gt; +OSError: [Errno 2] No such file or directory&apos;&apos;&apos;),

This seems surprising. Not sure if I understand the logic of the test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1765073</commentid>
    <comment_count>8</comment_count>
      <attachid>429922</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-05-29 05:08:05 -0700</bug_when>
    <thetext>Comment on attachment 429922
[fast-cq] Patch

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

&gt;&gt; Tools/CISupport/build-webkit-org/steps_unittest.py:1203
&gt;&gt; +OSError: [Errno 2] No such file or directory&apos;&apos;&apos;),
&gt; 
&gt; This seems surprising. Not sure if I understand the logic of the test.

The exact error doesn&apos;t matter in this test. We are looking at the exit code (1) of the command, and ensure that the step result is &apos;FAILURE&apos; and description (state_string) is &apos;Failed to print configuration&apos;. 

This code is being copied from https://github.com/WebKit/WebKit/blob/main/Tools/CISupport/ews-build/steps_unittest.py#L3709
At that time I would have copied this particular error log from some bot having issues.

Note that long-term we want to share buildbot configuration between ews and build.webkit.org, but that would be a separate effort.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1765636</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-06-01 09:28:30 -0700</bug_when>
    <thetext>Committed r278310 (238347@main): &lt;https://commits.webkit.org/238347@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 429922.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1765638</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-01 09:29:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/78718168&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>429922</attachid>
            <date>2021-05-27 13:42:43 -0700</date>
            <delta_ts>2021-06-01 09:28:31 -0700</delta_ts>
            <desc>[fast-cq] Patch</desc>
            <filename>bug-226353-20210527164242.patch</filename>
            <type>text/plain</type>
            <size>17517</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3ODE3NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIwIEBACisyMDIxLTA1LTI3ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBQcmludCBib3QgY29uZmlndXJhdGlvbiBpbiBidWlsZC53ZWJraXQub3Jn
IGJ1aWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI2MzUzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBDSVN1cHBvcnQvYnVpbGQtd2Via2l0LW9yZy9mYWN0b3JpZXMucHk6CisgICAgICAgIChGYWN0
b3J5Ll9faW5pdF9fKTogQWRkZWQgUHJpbnRDb25maWd1cmF0aW9uIHN0ZXAuCisgICAgICAgICog
Q0lTdXBwb3J0L2J1aWxkLXdlYmtpdC1vcmcvc3RlcHMucHk6CisgICAgICAgIChQcmludENvbmZp
Z3VyYXRpb24pOiBDb3BpZWQgZnJvbSBld3MgY29kZSwgc3RlcCB0byBwcmludCBjb25maWd1cmF0
aW9uLgorICAgICAgICAoUHJpbnRDb25maWd1cmF0aW9uLl9faW5pdF9fKToKKyAgICAgICAgKFBy
aW50Q29uZmlndXJhdGlvbi5ydW4pOgorICAgICAgICAoUHJpbnRDb25maWd1cmF0aW9uLmNvbnZl
cnRfYnVpbGRfdG9fb3NfbmFtZSk6CisgICAgICAgIChQcmludENvbmZpZ3VyYXRpb24uZ2V0UmVz
dWx0U3VtbWFyeSk6CisgICAgICAgICogQ0lTdXBwb3J0L2J1aWxkLXdlYmtpdC1vcmcvc3RlcHNf
dW5pdHRlc3QucHk6IEFkZGVkIHVuaXQtdGVzdHMuCisKIDIwMjEtMDUtMjcgIEZ1amlpIEhpcm9u
b3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAgICAgW3J1bi13ZWJraXQtdGVz
dHNdW1dpbl0gU3RyaXAgUEhQIHN1cHBvcnQgZnJvbSB3ZWJzZXJ2ZXIKSW5kZXg6IFRvb2xzL0NJ
U3VwcG9ydC9idWlsZC13ZWJraXQtb3JnL2ZhY3Rvcmllcy5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9DSVN1cHBvcnQvYnVpbGQtd2Via2l0LW9yZy9mYWN0b3JpZXMucHkJKHJldmlzaW9uIDI3ODE3
NSkKKysrIFRvb2xzL0NJU3VwcG9ydC9idWlsZC13ZWJraXQtb3JnL2ZhY3Rvcmllcy5weQkod29y
a2luZyBjb3B5KQpAQCAtMzAsNiArMzAsNyBAQCBjbGFzcyBGYWN0b3J5KGZhY3RvcnkuQnVpbGRG
YWN0b3J5KToKICAgICBkZWYgX19pbml0X18oc2VsZiwgcGxhdGZvcm0sIGNvbmZpZ3VyYXRpb24s
IGFyY2hpdGVjdHVyZXMsIGJ1aWxkT25seSwgYWRkaXRpb25hbEFyZ3VtZW50cywgZGV2aWNlX21v
ZGVsKToKICAgICAgICAgZmFjdG9yeS5CdWlsZEZhY3RvcnkuX19pbml0X18oc2VsZikKICAgICAg
ICAgc2VsZi5hZGRTdGVwKENvbmZpZ3VyZUJ1aWxkKHBsYXRmb3JtPXBsYXRmb3JtLCBjb25maWd1
cmF0aW9uPWNvbmZpZ3VyYXRpb24sIGFyY2hpdGVjdHVyZT0iICIuam9pbihhcmNoaXRlY3R1cmVz
KSwgYnVpbGRPbmx5PWJ1aWxkT25seSwgYWRkaXRpb25hbEFyZ3VtZW50cz1hZGRpdGlvbmFsQXJn
dW1lbnRzLCBkZXZpY2VfbW9kZWw9ZGV2aWNlX21vZGVsKSkKKyAgICAgICAgc2VsZi5hZGRTdGVw
KFByaW50Q29uZmlndXJhdGlvbigpKQogICAgICAgICBzZWxmLmFkZFN0ZXAoQ2hlY2tPdXRTb3Vy
Y2UoKSkKICAgICAgICAgc2VsZi5hZGRTdGVwKFNob3dJZGVudGlmaWVyKCkpCiAgICAgICAgIGlm
IG5vdCAocGxhdGZvcm0gPT0gImpzYy1vbmx5Iik6CkluZGV4OiBUb29scy9DSVN1cHBvcnQvYnVp
bGQtd2Via2l0LW9yZy9zdGVwcy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DSVN1cHBvcnQvYnVp
bGQtd2Via2l0LW9yZy9zdGVwcy5weQkocmV2aXNpb24gMjc4MTc1KQorKysgVG9vbHMvQ0lTdXBw
b3J0L2J1aWxkLXdlYmtpdC1vcmcvc3RlcHMucHkJKHdvcmtpbmcgY29weSkKQEAgLTIwLDE4ICsy
MCwxOCBAQAogIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitmcm9tIGJ1
aWxkYm90LnBsdWdpbnMgaW1wb3J0IHN0ZXBzLCB1dGlsCiBmcm9tIGJ1aWxkYm90LnByb2Nlc3Mg
aW1wb3J0IGJ1aWxkc3RlcCwgZmFjdG9yeSwgbG9nb2JzZXJ2ZXIsIHByb3BlcnRpZXMKIGZyb20g
YnVpbGRib3QucHJvY2Vzcy5yZXN1bHRzIGltcG9ydCBSZXN1bHRzLCBTVUNDRVNTLCBGQUlMVVJF
LCBXQVJOSU5HUywgU0tJUFBFRCwgRVhDRVBUSU9OLCBSRVRSWQogZnJvbSBidWlsZGJvdC5zdGVw
cyBpbXBvcnQgbWFzdGVyLCBzaGVsbCwgdHJhbnNmZXIsIHRyaWdnZXIKIGZyb20gYnVpbGRib3Qu
c3RlcHMuc291cmNlLnN2biBpbXBvcnQgU1ZOCi0KIGZyb20gdHdpc3RlZC5pbnRlcm5ldCBpbXBv
cnQgZGVmZXIKIAoraW1wb3J0IGpzb24KIGltcG9ydCBvcwogaW1wb3J0IHJlCiBpbXBvcnQgc29j
a2V0CiBpbXBvcnQgc3lzCi1pbXBvcnQganNvbgogaW1wb3J0IHVybGxpYgogCiBpZiBzeXMudmVy
c2lvbl9pbmZvIDwgKDMsIDUpOgpAQCAtMTE1NSw2ICsxMTU1LDg0IEBAIGNsYXNzIEV4dHJhY3RU
ZXN0UmVzdWx0cyhtYXN0ZXIuTWFzdGVyU2gKICAgICAgICAgcmV0dXJuIG1hc3Rlci5NYXN0ZXJT
aGVsbENvbW1hbmQuZmluaXNoZWQoc2VsZiwgcmVzdWx0KQogCiAKK2NsYXNzIFByaW50Q29uZmln
dXJhdGlvbihzdGVwcy5TaGVsbFNlcXVlbmNlKToKKyAgICBuYW1lID0gJ2NvbmZpZ3VyYXRpb24n
CisgICAgZGVzY3JpcHRpb24gPSBbJ2NvbmZpZ3VyYXRpb24nXQorICAgIGhhbHRPbkZhaWx1cmUg
PSBGYWxzZQorICAgIGZsdW5rT25GYWlsdXJlID0gRmFsc2UKKyAgICB3YXJuT25GYWlsdXJlID0g
RmFsc2UKKyAgICBsb2dFbnZpcm9uID0gRmFsc2UKKyAgICBjb21tYW5kX2xpc3RfZ2VuZXJpYyA9
IFtbJ2hvc3RuYW1lJ11dCisgICAgY29tbWFuZF9saXN0X2FwcGxlID0gW1snZGYnLCAnLWhsJ10s
IFsnZGF0ZSddLCBbJ3N3X3ZlcnMnXSwgWyd4Y29kZWJ1aWxkJywgJy1zZGsnLCAnLXZlcnNpb24n
XSwgWyd1cHRpbWUnXV0KKyAgICBjb21tYW5kX2xpc3RfbGludXggPSBbWydkZicsICctaGwnXSwg
WydkYXRlJ10sIFsndW5hbWUnLCAnLWEnXSwgWyd1cHRpbWUnXV0KKyAgICBjb21tYW5kX2xpc3Rf
d2luID0gW1snZGYnLCAnLWhsJ11dCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3Mp
OgorICAgICAgICBzdXBlcihQcmludENvbmZpZ3VyYXRpb24sIHNlbGYpLl9faW5pdF9fKHRpbWVv
dXQ9NjAsICoqa3dhcmdzKQorICAgICAgICBzZWxmLmNvbW1hbmRzID0gW10KKyAgICAgICAgc2Vs
Zi5sb2dfb2JzZXJ2ZXIgPSBsb2dvYnNlcnZlci5CdWZmZXJMb2dPYnNlcnZlcih3YW50U3RkZXJy
PVRydWUpCisgICAgICAgIHNlbGYuYWRkTG9nT2JzZXJ2ZXIoJ3N0ZGlvJywgc2VsZi5sb2dfb2Jz
ZXJ2ZXIpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBjb21tYW5kX2xpc3QgPSBsaXN0
KHNlbGYuY29tbWFuZF9saXN0X2dlbmVyaWMpCisgICAgICAgIHBsYXRmb3JtID0gc2VsZi5nZXRQ
cm9wZXJ0eSgncGxhdGZvcm0nLCAnKicpCisgICAgICAgIGlmIHBsYXRmb3JtICE9ICdqc2Mtb25s
eSc6CisgICAgICAgICAgICBwbGF0Zm9ybSA9IHBsYXRmb3JtLnNwbGl0KCctJylbMF0KKyAgICAg
ICAgaWYgcGxhdGZvcm0gaW4gKCdtYWMnLCAnaW9zJywgJ3R2b3MnLCAnd2F0Y2hvcycsICcqJyk6
CisgICAgICAgICAgICBjb21tYW5kX2xpc3QuZXh0ZW5kKHNlbGYuY29tbWFuZF9saXN0X2FwcGxl
KQorICAgICAgICBlbGlmIHBsYXRmb3JtIGluICgnZ3RrJywgJ3dwZScsICdqc2Mtb25seScpOgor
ICAgICAgICAgICAgY29tbWFuZF9saXN0LmV4dGVuZChzZWxmLmNvbW1hbmRfbGlzdF9saW51eCkK
KyAgICAgICAgZWxpZiBwbGF0Zm9ybSBpbiAoJ3dpbicpOgorICAgICAgICAgICAgY29tbWFuZF9s
aXN0LmV4dGVuZChzZWxmLmNvbW1hbmRfbGlzdF93aW4pCisKKyAgICAgICAgZm9yIGNvbW1hbmQg
aW4gY29tbWFuZF9saXN0OgorICAgICAgICAgICAgc2VsZi5jb21tYW5kcy5hcHBlbmQodXRpbC5T
aGVsbEFyZyhjb21tYW5kPWNvbW1hbmQsIGxvZ25hbWU9J3N0ZGlvJykpCisgICAgICAgIHJldHVy
biBzdXBlcihQcmludENvbmZpZ3VyYXRpb24sIHNlbGYpLnJ1bigpCisKKyAgICBkZWYgY29udmVy
dF9idWlsZF90b19vc19uYW1lKHNlbGYsIGJ1aWxkKToKKyAgICAgICAgaWYgbm90IGJ1aWxkOgor
ICAgICAgICAgICAgcmV0dXJuICdVbmtub3duJworCisgICAgICAgIGJ1aWxkX3RvX25hbWVfbWFw
cGluZyA9IHsKKyAgICAgICAgICAgICcxMSc6ICdCaWcgU3VyJywKKyAgICAgICAgICAgICcxMC4x
NSc6ICdDYXRhbGluYScsCisgICAgICAgICAgICAnMTAuMTQnOiAnTW9qYXZlJywKKyAgICAgICAg
ICAgICcxMC4xMyc6ICdIaWdoIFNpZXJyYScsCisgICAgICAgICAgICAnMTAuMTInOiAnU2llcnJh
JywKKyAgICAgICAgICAgICcxMC4xMSc6ICdFbCBDYXBpdGFuJywKKyAgICAgICAgICAgICcxMC4x
MCc6ICdZb3NlbWl0ZScsCisgICAgICAgICAgICAnMTAuOSc6ICdNYXZlcmljaycsCisgICAgICAg
ICAgICAnMTAuOCc6ICdNb3VudGFpbiBMaW9uJywKKyAgICAgICAgICAgICcxMC43JzogJ0xpb24n
LAorICAgICAgICAgICAgJzEwLjYnOiAnU25vdyBMZW9wYXJkJywKKyAgICAgICAgICAgICcxMC41
JzogJ0xlb3BhcmQnLAorICAgICAgICB9CisKKyAgICAgICAgZm9yIGtleSwgdmFsdWUgaW4gYnVp
bGRfdG9fbmFtZV9tYXBwaW5nLml0ZW1zKCk6CisgICAgICAgICAgICBpZiBidWlsZC5zdGFydHN3
aXRoKGtleSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlCisgICAgICAgIHJldHVybiAn
VW5rbm93bicKKworICAgIGRlZiBnZXRSZXN1bHRTdW1tYXJ5KHNlbGYpOgorICAgICAgICBpZiBz
ZWxmLnJlc3VsdHMgIT0gU1VDQ0VTUzoKKyAgICAgICAgICAgIHJldHVybiB7J3N0ZXAnOiAnRmFp
bGVkIHRvIHByaW50IGNvbmZpZ3VyYXRpb24nfQorICAgICAgICBsb2dUZXh0ID0gc2VsZi5sb2df
b2JzZXJ2ZXIuZ2V0U3Rkb3V0KCkgKyBzZWxmLmxvZ19vYnNlcnZlci5nZXRTdGRlcnIoKQorICAg
ICAgICBjb25maWd1cmF0aW9uID0gJ1ByaW50ZWQgY29uZmlndXJhdGlvbicKKyAgICAgICAgbWF0
Y2ggPSByZS5zZWFyY2goJ1Byb2R1Y3RWZXJzaW9uOlsgXHRdKiguKz8pXG4nLCBsb2dUZXh0KQor
ICAgICAgICBpZiBtYXRjaDoKKyAgICAgICAgICAgIG9zX3ZlcnNpb24gPSBtYXRjaC5ncm91cCgx
KS5zdHJpcCgpCisgICAgICAgICAgICBvc19uYW1lID0gc2VsZi5jb252ZXJ0X2J1aWxkX3RvX29z
X25hbWUob3NfdmVyc2lvbikKKyAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24gPSAnT1M6IHt9ICh7
fSknLmZvcm1hdChvc19uYW1lLCBvc192ZXJzaW9uKQorCisgICAgICAgIHhjb2RlX3JlID0gc2Rr
X3JlID0gJ1hjb2RlWyBcdF0rPyhbMC05Ll0rPylcbicKKyAgICAgICAgbWF0Y2ggPSByZS5zZWFy
Y2goeGNvZGVfcmUsIGxvZ1RleHQpCisgICAgICAgIGlmIG1hdGNoOgorICAgICAgICAgICAgeGNv
ZGVfdmVyc2lvbiA9IG1hdGNoLmdyb3VwKDEpLnN0cmlwKCkKKyAgICAgICAgICAgIGNvbmZpZ3Vy
YXRpb24gKz0gJywgWGNvZGU6IHt9Jy5mb3JtYXQoeGNvZGVfdmVyc2lvbikKKyAgICAgICAgcmV0
dXJuIHsnc3RlcCc6IGNvbmZpZ3VyYXRpb259CisKKworCiBjbGFzcyBTZXRQZXJtaXNzaW9ucyht
YXN0ZXIuTWFzdGVyU2hlbGxDb21tYW5kKToKICAgICBuYW1lID0gJ3NldC1wZXJtaXNzaW9ucycK
IApJbmRleDogVG9vbHMvQ0lTdXBwb3J0L2J1aWxkLXdlYmtpdC1vcmcvc3RlcHNfdW5pdHRlc3Qu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvQ0lTdXBwb3J0L2J1aWxkLXdlYmtpdC1vcmcvc3RlcHNf
dW5pdHRlc3QucHkJKHJldmlzaW9uIDI3ODE3NSkKKysrIFRvb2xzL0NJU3VwcG9ydC9idWlsZC13
ZWJraXQtb3JnL3N0ZXBzX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0xMDI3LDMgKzEw
MjcsMTk0IEBAIGNsYXNzIFRlc3RTVk5DbGVhbnVwKEJ1aWxkU3RlcE1peGluQWRkaXQKICAgICAg
ICAgKQogICAgICAgICBzZWxmLmV4cGVjdE91dGNvbWUocmVzdWx0PUZBSUxVUkUsIHN0YXRlX3N0
cmluZz0nUnVuIHN2biBjbGVhbnVwIChmYWlsdXJlKScpCiAgICAgICAgIHJldHVybiBzZWxmLnJ1
blN0ZXAoKQorCisKK2NsYXNzIFRlc3RQcmludENvbmZpZ3VyYXRpb24oQnVpbGRTdGVwTWl4aW5B
ZGRpdGlvbnMsIHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAg
ICAgIHNlbGYubG9uZ01lc3NhZ2UgPSBUcnVlCisgICAgICAgIHJldHVybiBzZWxmLnNldFVwQnVp
bGRTdGVwKCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYu
dGVhckRvd25CdWlsZFN0ZXAoKQorCisgICAgZGVmIHRlc3Rfc3VjY2Vzc19tYWMoc2VsZik6Cisg
ICAgICAgIHNlbGYuc2V0dXBTdGVwKFByaW50Q29uZmlndXJhdGlvbigpKQorICAgICAgICBzZWxm
LnNldFByb3BlcnR5KCdidWlsZGVybmFtZScsICdtYWNPUy1IaWdoLVNpZXJyYS1SZWxlYXNlLVdL
Mi1UZXN0cy1FV1MnKQorICAgICAgICBzZWxmLnNldFByb3BlcnR5KCdwbGF0Zm9ybScsICdtYWMt
aGlnaHNpZXJyYScpCisKKyAgICAgICAgc2VsZi5leHBlY3RSZW1vdGVDb21tYW5kcygKKyAgICAg
ICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9Wydob3N0bmFtZSddLCB3b3JrZGlyPSd3a2Rpcics
IHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMAorICAgICAgICAgICAgKyBFeHBlY3RT
aGVsbC5sb2coJ3N0ZGlvJywgc3Rkb3V0PSdld3MxNTAuYXBwbGUuY29tJyksCisgICAgICAgICAg
ICBFeHBlY3RTaGVsbChjb21tYW5kPVsnZGYnLCAnLWhsJ10sIHdvcmtkaXI9J3drZGlyJywgdGlt
ZW91dD02MCwgbG9nRW52aXJvbj1GYWxzZSkgKyAwCisgICAgICAgICAgICArIEV4cGVjdFNoZWxs
LmxvZygnc3RkaW8nLCBzdGRvdXQ9JycnRmlsZXN5c3RlbSAgICAgU2l6ZSAgIFVzZWQgIEF2YWls
IENhcGFjaXR5IGl1c2VkICBpZnJlZSAlaXVzZWQgIE1vdW50ZWQgb24KKy9kZXYvZGlzazFzMSAg
MTE5R2kgICA5NUdpICAgMjNHaSAgICA4MSUgIDkzNzk1OSA5MjIzMzcyMDM2ODUzODM3ODQ4ICAg
IDAlICAgLworL2Rldi9kaXNrMXM0ICAxMTlHaSAgIDIwS2kgICAyM0dpICAgICAxJSAgICAgICAw
IDkyMjMzNzIwMzY4NTQ3NzU4MDcgICAgMCUgICAvcHJpdmF0ZS92YXIvdm0KKy9kZXYvZGlzazBz
MyAgMTE5R2kgICAyMkdpICAgOTdHaSAgICAxOSUgIDMzNzU5NSAgICAgICAgICA0Mjk0NjI5Njg0
ICAgIDAlICAgL1ZvbHVtZXMvRGF0YScnJyksCisgICAgICAgICAgICBFeHBlY3RTaGVsbChjb21t
YW5kPVsnZGF0ZSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFs
c2UpICsgMAorICAgICAgICAgICAgKyBFeHBlY3RTaGVsbC5sb2coJ3N0ZGlvJywgc3Rkb3V0PSdU
dWUgQXByICA5IDE1OjMwOjUyIFBEVCAyMDE5JyksCisgICAgICAgICAgICBFeHBlY3RTaGVsbChj
b21tYW5kPVsnc3dfdmVycyddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmly
b249RmFsc2UpICsgMAorICAgICAgICAgICAgKyBFeHBlY3RTaGVsbC5sb2coJ3N0ZGlvJywgc3Rk
b3V0PScnJ1Byb2R1Y3ROYW1lOglNYWMgT1MgWAorUHJvZHVjdFZlcnNpb246CTEwLjEzLjQKK0J1
aWxkVmVyc2lvbjoJMTdFMTk5JycnKSwKKyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9
Wyd4Y29kZWJ1aWxkJywgJy1zZGsnLCAnLXZlcnNpb24nXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1l
b3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKQorICAgICAgICAgICAgKyBFeHBlY3RTaGVsbC5sb2co
J3N0ZGlvJywgc3Rkb3V0PScnJ01hY09TWDEwLjEzLnNkayAtIG1hY09TIDEwLjEzIChtYWNvc3gx
MC4xMykKK1NES1ZlcnNpb246IDEwLjEzCitQYXRoOiAvQXBwbGljYXRpb25zL1hjb2RlLmFwcC9D
b250ZW50cy9EZXZlbG9wZXIvUGxhdGZvcm1zL01hY09TWC5wbGF0Zm9ybS9EZXZlbG9wZXIvU0RL
cy9NYWNPU1gxMC4xMy5zZGsKK1BsYXRmb3JtVmVyc2lvbjogMS4xCitQbGF0Zm9ybVBhdGg6IC9B
cHBsaWNhdGlvbnMvWGNvZGUuYXBwL0NvbnRlbnRzL0RldmVsb3Blci9QbGF0Zm9ybXMvTWFjT1NY
LnBsYXRmb3JtCitQcm9kdWN0QnVpbGRWZXJzaW9uOiAxN0UxODkKK1Byb2R1Y3RDb3B5cmlnaHQ6
IDE5ODMtMjAxOCBBcHBsZSBJbmMuCitQcm9kdWN0TmFtZTogTWFjIE9TIFgKK1Byb2R1Y3RVc2Vy
VmlzaWJsZVZlcnNpb246IDEwLjEzLjQKK1Byb2R1Y3RWZXJzaW9uOiAxMC4xMy40CisKK1hjb2Rl
IDkuNC4xCitCdWlsZCB2ZXJzaW9uIDlGMjAwMCcnJykKKyAgICAgICAgICAgICsgMCwKKyAgICAg
ICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9Wyd1cHRpbWUnXSwgd29ya2Rpcj0nd2tkaXInLCB0
aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAKKyAgICAgICAgICAgICsgRXhwZWN0U2hl
bGwubG9nKCdzdGRpbycsIHN0ZG91dD0nIDY6MzEgIHVwIDEgZGF5LCAxOTowNSwgMjQgdXNlcnMs
IGxvYWQgYXZlcmFnZXM6IDQuMTcgNy4yMyA1LjQ1JyksCisgICAgICAgICkKKyAgICAgICAgc2Vs
Zi5leHBlY3RPdXRjb21lKHJlc3VsdD1TVUNDRVNTLCBzdGF0ZV9zdHJpbmc9J09TOiBIaWdoIFNp
ZXJyYSAoMTAuMTMuNCksIFhjb2RlOiA5LjQuMScpCisgICAgICAgIHJldHVybiBzZWxmLnJ1blN0
ZXAoKQorCisgICAgZGVmIHRlc3Rfc3VjY2Vzc19pb3Nfc2ltdWxhdG9yKHNlbGYpOgorICAgICAg
ICBzZWxmLnNldHVwU3RlcChQcmludENvbmZpZ3VyYXRpb24oKSkKKyAgICAgICAgc2VsZi5zZXRQ
cm9wZXJ0eSgnYnVpbGRlcm5hbWUnLCAnbWFjT1MtU2llcnJhLVJlbGVhc2UtV0syLVRlc3RzLUVX
UycpCisgICAgICAgIHNlbGYuc2V0UHJvcGVydHkoJ3BsYXRmb3JtJywgJ2lvcy1zaW11bGF0b3It
MTInKQorCisgICAgICAgIHNlbGYuZXhwZWN0UmVtb3RlQ29tbWFuZHMoCisgICAgICAgICAgICBF
eHBlY3RTaGVsbChjb21tYW5kPVsnaG9zdG5hbWUnXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0
PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAKKyAgICAgICAgICAgICsgRXhwZWN0U2hlbGwubG9n
KCdzdGRpbycsIHN0ZG91dD0nZXdzMTUyLmFwcGxlLmNvbScpLAorICAgICAgICAgICAgRXhwZWN0
U2hlbGwoY29tbWFuZD1bJ2RmJywgJy1obCddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAs
IGxvZ0Vudmlyb249RmFsc2UpICsgMAorICAgICAgICAgICAgKyBFeHBlY3RTaGVsbC5sb2coJ3N0
ZGlvJywgc3Rkb3V0PScnJ0ZpbGVzeXN0ZW0gICAgIFNpemUgICBVc2VkICBBdmFpbCBDYXBhY2l0
eSBpdXNlZCAgaWZyZWUgJWl1c2VkICBNb3VudGVkIG9uCisvZGV2L2Rpc2sxczEgIDExOUdpICAg
OTVHaSAgIDIzR2kgICAgODElICA5Mzc5NTkgOTIyMzM3MjAzNjg1MzgzNzg0OCAgICAwJSAgIC8K
Ky9kZXYvZGlzazFzNCAgMTE5R2kgICAyMEtpICAgMjNHaSAgICAgMSUgICAgICAgMCA5MjIzMzcy
MDM2ODU0Nzc1ODA3ICAgIDAlICAgL3ByaXZhdGUvdmFyL3ZtCisvZGV2L2Rpc2swczMgIDExOUdp
ICAgMjJHaSAgIDk3R2kgICAgMTklICAzMzc1OTUgICAgICAgICAgNDI5NDYyOTY4NCAgICAwJSAg
IC9Wb2x1bWVzL0RhdGEnJycpLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29tbWFuZD1bJ2Rh
dGUnXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAK
KyAgICAgICAgICAgICsgRXhwZWN0U2hlbGwubG9nKCdzdGRpbycsIHN0ZG91dD0nVHVlIEFwciAg
OSAxNTozMDo1MiBQRFQgMjAxOScpLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29tbWFuZD1b
J3N3X3ZlcnMnXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNl
KSArIDAKKyAgICAgICAgICAgICsgRXhwZWN0U2hlbGwubG9nKCdzdGRpbycsIHN0ZG91dD0nJydQ
cm9kdWN0TmFtZToJTWFjIE9TIFgKK1Byb2R1Y3RWZXJzaW9uOgkxMC4xNS42CitCdWlsZFZlcnNp
b246CTE5SDInJycpLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29tbWFuZD1bJ3hjb2RlYnVp
bGQnLCAnLXNkaycsICctdmVyc2lvbiddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxv
Z0Vudmlyb249RmFsc2UpCisgICAgICAgICAgICArIEV4cGVjdFNoZWxsLmxvZygnc3RkaW8nLCBz
dGRvdXQ9JycnaVBob25lU2ltdWxhdG9yMTMuNC5zZGsgLSBTaW11bGF0b3IgLSBpT1MgMTMuNCAo
aXBob25lc2ltdWxhdG9yMTMuNCkKK1NES1ZlcnNpb246IDEzLjQKK1BhdGg6IC9BcHBsaWNhdGlv
bnMvWGNvZGUuYXBwL0NvbnRlbnRzL0RldmVsb3Blci9QbGF0Zm9ybXMvaVBob25lU2ltdWxhdG9y
LnBsYXRmb3JtL0RldmVsb3Blci9TREtzL2lQaG9uZVNpbXVsYXRvcjEzLjQuc2RrCitQbGF0Zm9y
bVZlcnNpb246IDEzLjQKK1BsYXRmb3JtUGF0aDogL0FwcGxpY2F0aW9ucy9YY29kZS5hcHAvQ29u
dGVudHMvRGV2ZWxvcGVyL1BsYXRmb3Jtcy9pUGhvbmVTaW11bGF0b3IucGxhdGZvcm0KK0J1aWxk
SUQ6IEJCNEM4MkFFLTVGOEEtMTFFQS1BMUE1LTgzOEFEMDNEREUwNgorUHJvZHVjdEJ1aWxkVmVy
c2lvbjogMTdFMjU1CitQcm9kdWN0Q29weXJpZ2h0OiAxOTgzLTIwMjAgQXBwbGUgSW5jLgorUHJv
ZHVjdE5hbWU6IGlQaG9uZSBPUworUHJvZHVjdFZlcnNpb246IDEzLjQKKworWGNvZGUgMTEuNwor
QnVpbGQgdmVyc2lvbiAxMEUxMjUnJycpCisgICAgICAgICAgICArIDAsCisgICAgICAgICAgICBF
eHBlY3RTaGVsbChjb21tYW5kPVsndXB0aW1lJ10sIHdvcmtkaXI9J3drZGlyJywgdGltZW91dD02
MCwgbG9nRW52aXJvbj1GYWxzZSkgKyAwCisgICAgICAgICAgICArIEV4cGVjdFNoZWxsLmxvZygn
c3RkaW8nLCBzdGRvdXQ9JyA2OjMxICB1cCAxIGRheSwgMTk6MDUsIDI0IHVzZXJzLCBsb2FkIGF2
ZXJhZ2VzOiA0LjE3IDcuMjMgNS40NScpLAorICAgICAgICApCisgICAgICAgIHNlbGYuZXhwZWN0
T3V0Y29tZShyZXN1bHQ9U1VDQ0VTUywgc3RhdGVfc3RyaW5nPSdPUzogQ2F0YWxpbmEgKDEwLjE1
LjYpLCBYY29kZTogMTEuNycpCisgICAgICAgIHJldHVybiBzZWxmLnJ1blN0ZXAoKQorCisgICAg
ZGVmIHRlc3Rfc3VjY2Vzc193ZWJraXRweShzZWxmKToKKyAgICAgICAgc2VsZi5zZXR1cFN0ZXAo
UHJpbnRDb25maWd1cmF0aW9uKCkpCisgICAgICAgIHNlbGYuc2V0UHJvcGVydHkoJ3BsYXRmb3Jt
JywgJyonKQorCisgICAgICAgIHNlbGYuZXhwZWN0UmVtb3RlQ29tbWFuZHMoCisgICAgICAgICAg
ICBFeHBlY3RTaGVsbChjb21tYW5kPVsnaG9zdG5hbWUnXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1l
b3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAsCisgICAgICAgICAgICBFeHBlY3RTaGVsbChj
b21tYW5kPVsnZGYnLCAnLWhsJ10sIHdvcmtkaXI9J3drZGlyJywgdGltZW91dD02MCwgbG9nRW52
aXJvbj1GYWxzZSkgKyAwLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29tbWFuZD1bJ2RhdGUn
XSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAsCisg
ICAgICAgICAgICBFeHBlY3RTaGVsbChjb21tYW5kPVsnc3dfdmVycyddLCB3b3JrZGlyPSd3a2Rp
cicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMAorICAgICAgICAgICAgKyBFeHBl
Y3RTaGVsbC5sb2coJ3N0ZGlvJywgc3Rkb3V0PScnJ1Byb2R1Y3ROYW1lOglNYWMgT1MgWAorUHJv
ZHVjdFZlcnNpb246CTEwLjEzLjYKK0J1aWxkVmVyc2lvbjoJMTdHNzAyNCcnJyksCisgICAgICAg
ICAgICBFeHBlY3RTaGVsbChjb21tYW5kPVsneGNvZGVidWlsZCcsICctc2RrJywgJy12ZXJzaW9u
J10sIHdvcmtkaXI9J3drZGlyJywgdGltZW91dD02MCwgbG9nRW52aXJvbj1GYWxzZSkgKyAwCisg
ICAgICAgICAgICArIEV4cGVjdFNoZWxsLmxvZygnc3RkaW8nLCBzdGRvdXQ9JycnWGNvZGUgMTAu
MlxuQnVpbGQgdmVyc2lvbiAxMEUxMjUnJycpLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29t
bWFuZD1bJ3VwdGltZSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249
RmFsc2UpICsgMAorICAgICAgICAgICAgKyBFeHBlY3RTaGVsbC5sb2coJ3N0ZGlvJywgc3Rkb3V0
PScgNjozMSAgdXAgMjIgc2Vjb25kcywgMTI6MDUsIDIgdXNlcnMsIGxvYWQgYXZlcmFnZXM6IDMu
MTcgNy4yMyA1LjQ1JyksCisgICAgICAgICkKKyAgICAgICAgc2VsZi5leHBlY3RPdXRjb21lKHJl
c3VsdD1TVUNDRVNTLCBzdGF0ZV9zdHJpbmc9J09TOiBIaWdoIFNpZXJyYSAoMTAuMTMuNiksIFhj
b2RlOiAxMC4yJykKKyAgICAgICAgcmV0dXJuIHNlbGYucnVuU3RlcCgpCisKKyAgICBkZWYgdGVz
dF9zdWNjZXNzX2xpbnV4X3dwZShzZWxmKToKKyAgICAgICAgc2VsZi5zZXR1cFN0ZXAoUHJpbnRD
b25maWd1cmF0aW9uKCkpCisgICAgICAgIHNlbGYuc2V0UHJvcGVydHkoJ3BsYXRmb3JtJywgJ3dw
ZScpCisKKyAgICAgICAgc2VsZi5leHBlY3RSZW1vdGVDb21tYW5kcygKKyAgICAgICAgICAgIEV4
cGVjdFNoZWxsKGNvbW1hbmQ9Wydob3N0bmFtZSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9
NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMAorICAgICAgICAgICAgKyBFeHBlY3RTaGVsbC5sb2co
J3N0ZGlvJywgc3Rkb3V0PSdld3MxOTAnKSwKKyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1h
bmQ9WydkZicsICctaGwnXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9u
PUZhbHNlKSArIDAKKyAgICAgICAgICAgICsgRXhwZWN0U2hlbGwubG9nKCdzdGRpbycsIHN0ZG91
dD0nJydGaWxlc3lzdGVtICAgICBTaXplICAgVXNlZCAgQXZhaWwgQ2FwYWNpdHkgaXVzZWQgIGlm
cmVlICVpdXNlZCAgTW91bnRlZCBvbgorL2Rldi9kaXNrMHMzICAxMTlHaSAgIDIyR2kgICA5N0dp
ICAgIDE5JSAgMzM3NTk1ICAgICAgICAgIDQyOTQ2Mjk2ODQgICAgMCUgICAvJycnKSwKKyAgICAg
ICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9WydkYXRlJ10sIHdvcmtkaXI9J3drZGlyJywgdGlt
ZW91dD02MCwgbG9nRW52aXJvbj1GYWxzZSkgKyAwCisgICAgICAgICAgICArIEV4cGVjdFNoZWxs
LmxvZygnc3RkaW8nLCBzdGRvdXQ9J1R1ZSBBcHIgIDkgMTU6MzA6NTIgUERUIDIwMTknKSwKKyAg
ICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9Wyd1bmFtZScsICctYSddLCB3b3JrZGlyPSd3
a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMAorICAgICAgICAgICAgKyBF
eHBlY3RTaGVsbC5sb2coJ3N0ZGlvJywgc3Rkb3V0PScnJ0xpbnV4IGtvZGFtYS1ld3MgNS4wLjQt
YXJjaDEtMS1BUkNIICMxIFNNUCBQUkVFTVBUIFNhdCBNYXIgMjMgMjE6MDA6MzMgVVRDIDIwMTkg
eDg2XzY0IEdOVS9MaW51eCcnJyksCisgICAgICAgICAgICBFeHBlY3RTaGVsbChjb21tYW5kPVsn
dXB0aW1lJ10sIHdvcmtkaXI9J3drZGlyJywgdGltZW91dD02MCwgbG9nRW52aXJvbj1GYWxzZSkg
KyAwCisgICAgICAgICAgICArIEV4cGVjdFNoZWxsLmxvZygnc3RkaW8nLCBzdGRvdXQ9JyA2OjMx
ICB1cCAyMiBzZWNvbmRzLCAxMjowNSwgMiB1c2VycywgbG9hZCBhdmVyYWdlczogMy4xNyA3LjIz
IDUuNDUnKSwKKyAgICAgICAgKQorICAgICAgICBzZWxmLmV4cGVjdE91dGNvbWUocmVzdWx0PVNV
Q0NFU1MsIHN0YXRlX3N0cmluZz0nUHJpbnRlZCBjb25maWd1cmF0aW9uJykKKyAgICAgICAgcmV0
dXJuIHNlbGYucnVuU3RlcCgpCisKKyAgICBkZWYgdGVzdF9zdWNjZXNzX2xpbnV4X2d0ayhzZWxm
KToKKyAgICAgICAgc2VsZi5zZXR1cFN0ZXAoUHJpbnRDb25maWd1cmF0aW9uKCkpCisgICAgICAg
IHNlbGYuc2V0UHJvcGVydHkoJ3BsYXRmb3JtJywgJ2d0aycpCisKKyAgICAgICAgc2VsZi5leHBl
Y3RSZW1vdGVDb21tYW5kcygKKyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9Wydob3N0
bmFtZSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFsc2UpICsg
MCwKKyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9WydkZicsICctaGwnXSwgd29ya2Rp
cj0nd2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAsCisgICAgICAgICAg
ICBFeHBlY3RTaGVsbChjb21tYW5kPVsnZGF0ZSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9
NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMCwKKyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1h
bmQ9Wyd1bmFtZScsICctYSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmly
b249RmFsc2UpICsgMCwKKyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9Wyd1cHRpbWUn
XSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAsCisg
ICAgICAgICkKKyAgICAgICAgc2VsZi5leHBlY3RPdXRjb21lKHJlc3VsdD1TVUNDRVNTLCBzdGF0
ZV9zdHJpbmc9J1ByaW50ZWQgY29uZmlndXJhdGlvbicpCisgICAgICAgIHJldHVybiBzZWxmLnJ1
blN0ZXAoKQorCisgICAgZGVmIHRlc3Rfc3VjY2Vzc193aW4oc2VsZik6CisgICAgICAgIHNlbGYu
c2V0dXBTdGVwKFByaW50Q29uZmlndXJhdGlvbigpKQorICAgICAgICBzZWxmLnNldFByb3BlcnR5
KCdwbGF0Zm9ybScsICd3aW4nKQorCisgICAgICAgIHNlbGYuZXhwZWN0UmVtb3RlQ29tbWFuZHMo
CisgICAgICAgICAgICBFeHBlY3RTaGVsbChjb21tYW5kPVsnaG9zdG5hbWUnXSwgd29ya2Rpcj0n
d2tkaXInLCB0aW1lb3V0PTYwLCBsb2dFbnZpcm9uPUZhbHNlKSArIDAsCisgICAgICAgICAgICBF
eHBlY3RTaGVsbChjb21tYW5kPVsnZGYnLCAnLWhsJ10sIHdvcmtkaXI9J3drZGlyJywgdGltZW91
dD02MCwgbG9nRW52aXJvbj1GYWxzZSkgKyAwLAorICAgICAgICApCisgICAgICAgIHNlbGYuZXhw
ZWN0T3V0Y29tZShyZXN1bHQ9U1VDQ0VTUywgc3RhdGVfc3RyaW5nPSdQcmludGVkIGNvbmZpZ3Vy
YXRpb24nKQorICAgICAgICByZXR1cm4gc2VsZi5ydW5TdGVwKCkKKworICAgIGRlZiB0ZXN0X2Zh
aWx1cmUoc2VsZik6CisgICAgICAgIHNlbGYuc2V0dXBTdGVwKFByaW50Q29uZmlndXJhdGlvbigp
KQorICAgICAgICBzZWxmLnNldFByb3BlcnR5KCdwbGF0Zm9ybScsICdpb3MtMTInKQorICAgICAg
ICBzZWxmLmV4cGVjdFJlbW90ZUNvbW1hbmRzKAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29t
bWFuZD1bJ2hvc3RuYW1lJ10sIHdvcmtkaXI9J3drZGlyJywgdGltZW91dD02MCwgbG9nRW52aXJv
bj1GYWxzZSkgKyAwLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29tbWFuZD1bJ2RmJywgJy1o
bCddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMCwK
KyAgICAgICAgICAgIEV4cGVjdFNoZWxsKGNvbW1hbmQ9WydkYXRlJ10sIHdvcmtkaXI9J3drZGly
JywgdGltZW91dD02MCwgbG9nRW52aXJvbj1GYWxzZSkgKyAwLAorICAgICAgICAgICAgRXhwZWN0
U2hlbGwoY29tbWFuZD1bJ3N3X3ZlcnMnXSwgd29ya2Rpcj0nd2tkaXInLCB0aW1lb3V0PTYwLCBs
b2dFbnZpcm9uPUZhbHNlKSArIDEKKyAgICAgICAgICAgICsgRXhwZWN0U2hlbGwubG9nKCdzdGRp
bycsIHN0ZG91dD0nJydVcG9uIGV4ZWN2cGUgc3dfdmVycyBbJ3N3X3ZlcnMnXSBpbiBlbnZpcm9u
bWVudCBpZCA3Njk2NTQ1NjUwNDAwCis6VHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3Qp
OgorICBGaWxlICIvdXNyL2xpYi9weXRob24yLjcvc2l0ZS1wYWNrYWdlcy90d2lzdGVkL2ludGVy
bmV0L3Byb2Nlc3MucHkiLCBsaW5lIDQ0NSwgaW4gX2ZvcmsKKyAgICBlbnZpcm9ubWVudCkKKyAg
RmlsZSAiL3Vzci9saWIvcHl0aG9uMi43L3NpdGUtcGFja2FnZXMvdHdpc3RlZC9pbnRlcm5ldC9w
cm9jZXNzLnB5IiwgbGluZSA1MjMsIGluIF9leGVjQ2hpbGQKKyAgICBvcy5leGVjdnBlKGV4ZWN1
dGFibGUsIGFyZ3MsIGVudmlyb25tZW50KQorICBGaWxlICIvdXNyL2xpYi9weXRob24yLjcvb3Mu
cHkiLCBsaW5lIDM1NSwgaW4gZXhlY3ZwZQorICAgIF9leGVjdnBlKGZpbGUsIGFyZ3MsIGVudikK
KyAgRmlsZSAiL3Vzci9saWIvcHl0aG9uMi43L29zLnB5IiwgbGluZSAzODIsIGluIF9leGVjdnBl
CisgICAgZnVuYyhmdWxsbmFtZSwgKmFyZ3Jlc3QpCitPU0Vycm9yOiBbRXJybm8gMl0gTm8gc3Vj
aCBmaWxlIG9yIGRpcmVjdG9yeScnJyksCisgICAgICAgICAgICBFeHBlY3RTaGVsbChjb21tYW5k
PVsneGNvZGVidWlsZCcsICctc2RrJywgJy12ZXJzaW9uJ10sIHdvcmtkaXI9J3drZGlyJywgdGlt
ZW91dD02MCwgbG9nRW52aXJvbj1GYWxzZSkKKyAgICAgICAgICAgICsgRXhwZWN0U2hlbGwubG9n
KCdzdGRpbycsIHN0ZG91dD0nJydVcG9uIGV4ZWN2cGUgeGNvZGVidWlsZCBbJ3hjb2RlYnVpbGQn
LCAnLXNkaycsICctdmVyc2lvbiddIGluIGVudmlyb25tZW50IGlkIDc2OTY1NDU2MTI0MTYKKzpU
cmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgIEZpbGUgIi91c3IvbGliL3B5dGhv
bjIuNy9zaXRlLXBhY2thZ2VzL3R3aXN0ZWQvaW50ZXJuZXQvcHJvY2Vzcy5weSIsIGxpbmUgNDQ1
LCBpbiBfZm9yaworICAgIGVudmlyb25tZW50KQorICBGaWxlICIvdXNyL2xpYi9weXRob24yLjcv
c2l0ZS1wYWNrYWdlcy90d2lzdGVkL2ludGVybmV0L3Byb2Nlc3MucHkiLCBsaW5lIDUyMywgaW4g
X2V4ZWNDaGlsZAorICAgIG9zLmV4ZWN2cGUoZXhlY3V0YWJsZSwgYXJncywgZW52aXJvbm1lbnQp
CisgIEZpbGUgIi91c3IvbGliL3B5dGhvbjIuNy9vcy5weSIsIGxpbmUgMzU1LCBpbiBleGVjdnBl
CisgICAgX2V4ZWN2cGUoZmlsZSwgYXJncywgZW52KQorICBGaWxlICIvdXNyL2xpYi9weXRob24y
Ljcvb3MucHkiLCBsaW5lIDM4MiwgaW4gX2V4ZWN2cGUKKyAgICBmdW5jKGZ1bGxuYW1lLCAqYXJn
cmVzdCkKK09TRXJyb3I6IFtFcnJubyAyXSBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JycnKQor
ICAgICAgICAgICAgKyAxLAorICAgICAgICAgICAgRXhwZWN0U2hlbGwoY29tbWFuZD1bJ3VwdGlt
ZSddLCB3b3JrZGlyPSd3a2RpcicsIHRpbWVvdXQ9NjAsIGxvZ0Vudmlyb249RmFsc2UpICsgMCwK
KyAgICAgICAgKQorICAgICAgICBzZWxmLmV4cGVjdE91dGNvbWUocmVzdWx0PUZBSUxVUkUsIHN0
YXRlX3N0cmluZz0nRmFpbGVkIHRvIHByaW50IGNvbmZpZ3VyYXRpb24nKQorICAgICAgICByZXR1
cm4gc2VsZi5ydW5TdGVwKCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>