<?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>223261</bug_id>
          
          <creation_ts>2021-03-16 10:32:44 -0700</creation_ts>
          <short_desc>[resultsdbpy] Prefer GitHub over svn.webkit.org</short_desc>
          <delta_ts>2021-03-30 11:21:40 -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>CONFIGURATION CHANGED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=221860</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1740016</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-16 10:32:44 -0700</bug_when>
    <thetext>Since GitHub is the new canonical home of our repository, we should prefer GitHub commits over svn.webkit.org ones.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1740018</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-16 10:34:59 -0700</bug_when>
    <thetext>&lt;rdar://problem/75483121&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1740926</commentid>
    <comment_count>2</comment_count>
      <attachid>423532</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-17 15:42:07 -0700</bug_when>
    <thetext>Created attachment 423532
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742494</commentid>
    <comment_count>3</comment_count>
      <attachid>423942</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-22 15:02:27 -0700</bug_when>
    <thetext>Created attachment 423942
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742813</commentid>
    <comment_count>4</comment_count>
      <attachid>424022</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-23 08:49:41 -0700</bug_when>
    <thetext>Created attachment 424022
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744194</commentid>
    <comment_count>5</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-03-26 08:58:58 -0700</bug_when>
    <thetext>rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744308</commentid>
    <comment_count>6</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-26 13:30:47 -0700</bug_when>
    <thetext>I think we&apos;re just going to land https://bugs.webkit.org/show_bug.cgi?id=223262, trying to separate these changes seems like a bad idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745194</commentid>
    <comment_count>7</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-03-30 11:21:27 -0700</bug_when>
    <thetext>Resolved this with https://bugs.webkit.org/show_bug.cgi?id=223262</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>423532</attachid>
            <date>2021-03-17 15:42:07 -0700</date>
            <delta_ts>2021-03-22 15:02:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223261-20210317154206.patch</filename>
            <type>text/plain</type>
            <size>28269</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDU5MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQ0IEBACisyMDIxLTAzLTE3ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIFByZWZlciBHaXRIdWIgb3ZlciBzdm4ud2Via2l0
Lm9yZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIz
MjYxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NTQ4MzEyMT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3Vs
dHNkYnB5L3Jlc3VsdHNkYnB5L2NvbnRyb2xsZXIvY29tbWl0X2NvbnRyb2xsZXJfdW5pdHRlc3Qu
cHk6CisgICAgICAgIChDb21taXRDb250cm9sbGVyVGVzdC50ZXN0X2JyYW5jaGVzKTogQ2hhbmdl
IGJyYW5jaGVzIHRvIG1hdGNoIEdpdEh1Yi4KKyAgICAgICAgKENvbW1pdENvbnRyb2xsZXJUZXN0
LnRlc3RfcmVnaXN0ZXJfd2l0aF9wYXJ0aWFsX2NvbW1pdCk6IENvbW1pdHMgYXJlIG5vdyBnaXQt
c3ZuIGNvbW1pdHMuCisgICAgICAgIChDb21taXRDb250cm9sbGVyVGVzdC50ZXN0X3JlZ2lzdGVy
X3dpdGhfZnVsbF9jb21taXQpOiBEZWZhdWx0IGJyYW5jaCBpcyBub3cgbWFpbi4KKyAgICAgICAg
KiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRf
Y29udGV4dC5weToKKyAgICAgICAgKENvbW1pdENvbnRleHQuYnJhbmNoX2tleXNfZm9yX2NvbW1p
dHMpOiBBbnkgYnJhbmNoIHRoYXQgaXMgYSBkZWZhdWx0IGJyYW5jaCBzaG91bGQgYmUgbWF0Y2hl
ZCB0byB0aGUgYXBwcm9wcmlhdGUgZGVmYXVsdCBicmFuY2guCisgICAgICAgIChDb21taXRDb250
ZXh0LnJlZ2lzdGVyX2NvbW1pdCk6IERpdHRvLgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVz
L3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NvbW1pdF9jb250ZXh0X3VuaXR0ZXN0LnB5
OgorICAgICAgICAoQ29tbWl0Q29udGV4dFRlc3QudGVzdF9jb21taXRfYnlfaWQpOiBNYWluIGlz
IHRoZSBuZXcgZGVmYXVsdCBicmFuY2guCisgICAgICAgIChDb21taXRDb250ZXh0VGVzdC50ZXN0
X2NvbW1pdF9ieV91dWlkKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250ZXh0VGVzdC50ZXN0
X2NvbW1pdF9ieV90aW1lc3RhbXApOiBEaXR0by4KKyAgICAgICAgKENvbW1pdENvbnRleHRUZXN0
LnRlc3RfYWxsX2NvbW1pdHNfc3ZuKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250ZXh0VGVz
dC50ZXN0X3N2bl9jb21taXRzX2luX3JhbmdlKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250
ZXh0VGVzdC50ZXN0X3N2bl9jb21taXRzX2JldHdlZW4pOiBEaXR0by4KKyAgICAgICAgKENvbW1p
dENvbnRleHRUZXN0LnRlc3RfY29tbWl0X2Zyb21fc3ZuX3JlcG8pOiBEaXR0by4KKyAgICAgICAg
KENvbW1pdENvbnRleHRUZXN0LnRlc3RfYnJhbmNoZXMpOiBDaGFuZ2UgYnJhbmNoZXMgdG8gbWF0
Y2ggR2l0SHViLgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3Vs
dHNkYnB5L21vZGVsL21vY2tfbW9kZWxfZmFjdG9yeS5weToKKyAgICAgICAgKE1vY2tNb2RlbEZh
Y3Rvcnkud2Via2l0KTogU3VwcG9ydCBib3RoIHN2bi53ZWJraXQub3JnIGFuZCBHaXRIdWIuCisg
ICAgICAgIChNb2NrTW9kZWxGYWN0b3J5LmNyZWF0ZSk6CisgICAgICAgICogU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeS5weToKKyAgICAg
ICAgKFdlYktpdFJlcG9zaXRvcnkuX19pbml0X18pOiBRdWVyeSBib3RoIHN2bi53ZWJraXQub3Jn
IGFuZCBHaXRIdWIuCisgICAgICAgIChXZWJLaXRSZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQpOiBN
YXAgdHJ1bmsgY29tbWl0cyB0byBtYWluLgorICAgICAgICAoV2ViS2l0UmVwb3NpdG9yeS5jb21t
aXQpOiBQcmVmZXIgR2l0SHViIGFuZCBzdXBwb3J0IGhhc2hlcy4KKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5X3VuaXR0
ZXN0LnB5OgorICAgICAgICAoUmVwb3NpdG9yeVRlc3QudGVzdF9zdm4pOiBNYWluIGlzIHRoZSBu
ZXcgZGVmYXVsdCBicmFuY2guCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvdmlldy9hcmNoaXZlX3ZpZXdfdW5pdHRlc3QucHk6CisgICAgICAgIChB
cmNoaXZlVmlld1VuaXR0ZXN0LnJlZ2lzdGVyX2FyY2hpdmUpOiBNYWluIGlzIGFub3RoZXIgZGVm
YXVsdCBicmFuY2guCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvdmlldy9zdGF0aWMvanMvZHJhd2VyLmpzOiAKKyAgICAgICAgKiBTY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9kb2N1bWVudGF0
aW9uLmh0bWw6CisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRtbDoKKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9tb2Nrcy9yZW1vdGUvZ2l0X2h1Yi5w
eToKKyAgICAgICAgKEdpdEh1Yi5fY29tbWl0X3Jlc3BvbnNlKTogU3RhbmRhcmRpemUgdGltZXpv
bmUuCisKIDIwMjEtMDMtMTcgIE1hdHQgTGV3aXMgIDxqbGV3aXMzQGFwcGxlLmNvbT4KIAogICAg
ICAgICBBZGQgQXBwbGVTaWxpY29uIGFuZCBEZWJ1ZyBXSzIgU3VwcG9ydCB0byBFV1MKSW5kZXg6
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3NldHVwLnB5Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3NldHVwLnB5CShyZXZpc2lv
biAyNzQ1ODcpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9zZXR1cC5w
eQkod29ya2luZyBjb3B5KQpAQCAtMzAsNyArMzAsNyBAQCBkZWYgcmVhZG1lKCk6CiAKIHNldHVw
KAogICAgIG5hbWU9J3Jlc3VsdHNkYnB5JywKLSAgICB2ZXJzaW9uPScyLjAuMycsCisgICAgdmVy
c2lvbj0nMi4wLjQnLAogICAgIGRlc2NyaXB0aW9uPSdMaWJyYXJ5IGZvciB2aXN1YWxpemluZywg
cHJvY2Vzc2luZyBhbmQgc3RvcmluZyB0ZXN0IHJlc3VsdHMuJywKICAgICBsb25nX2Rlc2NyaXB0
aW9uPXJlYWRtZSgpLAogICAgIGNsYXNzaWZpZXJzPVsKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGli
cmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L19faW5pdF9fLnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L19faW5pdF9f
LnB5CShyZXZpc2lvbiAyNzQ1ODcpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRz
ZGJweS9yZXN1bHRzZGJweS9fX2luaXRfXy5weQkod29ya2luZyBjb3B5KQpAQCAtNDQsNiArNDQs
NiBAQCBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgICAgICJQbGVhc2UgaW5zdGFsbCB3ZWJraXRj
b3JlcHkgd2l0aCBgcGlwIGluc3RhbGwgd2Via2l0Y29yZXB5IC0tZXh0cmEtaW5kZXgtdXJsIDxw
YWNrYWdlIGluZGV4IFVSTD5gIgogICAgICkKIAotdmVyc2lvbiA9IFZlcnNpb24oMiwgMCwgMykK
K3ZlcnNpb24gPSBWZXJzaW9uKDIsIDAsIDQpCiAKIG5hbWUgPSAncmVzdWx0c2RicHknCkluZGV4
OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9jb250cm9s
bGVyL2NvbW1pdF9jb250cm9sbGVyX3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Nj
cmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L2NvbnRyb2xsZXIvY29tbWl0
X2NvbnRyb2xsZXJfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI3NDU4NykKKysrIFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L2NvbnRyb2xsZXIvY29tbWl0X2Nv
bnRyb2xsZXJfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTc2LDcgKzc2LDcgQEAgY2xh
c3MgQ29tbWl0Q29udHJvbGxlclRlc3QoRmxhc2tUZXN0Q2FzZQogICAgICAgICByZXNwb25zZSA9
IGNsaWVudC5nZXQoc2VsZi5VUkwgKyAnL2FwaS9jb21taXRzL2JyYW5jaGVzJykKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChyZXNwb25zZS5zdGF0dXNfY29kZSwgMjAwKQogICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKGRpY3QoCi0gICAgICAgICAgICB3ZWJraXQ9WydicmFuY2gtYScsICdicmFu
Y2gtYicsICd0YWdzL3RhZy0xJywgJ3RhZ3MvdGFnLTInLCAndHJ1bmsnXSwKKyAgICAgICAgICAg
IHdlYmtpdD1bJ2JyYW5jaC1hJywgJ2JyYW5jaC1iJywgJ21haW4nXSwKICAgICAgICAgICAgIHNh
ZmFyaT1bJ2JyYW5jaC1hJywgJ2JyYW5jaC1iJywgJ21haW4nXSksIHJlc3BvbnNlLmpzb24oKSkK
IAogICAgICAgICByZXNwb25zZSA9IGNsaWVudC5nZXQoc2VsZi5VUkwgKyAnL2FwaS9jb21taXRz
L2JyYW5jaGVzP2JyYW5jaD1icmFuY2gnKQpAQCAtMTAyLDcgKzEwMiw3IEBAIGNsYXNzIENvbW1p
dENvbnRyb2xsZXJUZXN0KEZsYXNrVGVzdENhc2UKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoMjAwLCByZXNwb25zZS5zdGF0dXNfY29kZSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoCiAgICAgICAgICAgICAgICAgQ29tbWl0LmZyb21fanNvbihyZXNwb25zZS5qc29uKClbMF0p
Lm1lc3NhZ2UsCi0gICAgICAgICAgICAgICAgJ1BhdGNoIFNlcmllc1xuJywKKyAgICAgICAgICAg
ICAgICAnUGF0Y2ggU2VyaWVzXG5cbmdpdC1zdm4taWQ6IGh0dHBzOi8vc3ZuLmV4YW1wbGUub3Jn
L3JlcG9zaXRvcnkvd2Via2l0L3RydW5rQE5vbmUgMjY4ZjQ1Y2MtY2QwOS0wNDEwLWFiM2MtZDUy
NjkxYjRkYmZjXG4nLAogICAgICAgICAgICAgKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bCg0MDQsIGNsaWVudC5wb3N0KHNlbGYuVVJMICsgJy9hcGkvY29tbWl0cycsIGRhdGE9ZGljdChy
ZXBvc2l0b3J5X2lkPSdzYWZhcmknLCBpZD0nYWFhYWFhYWFhYWFhYScpKS5zdGF0dXNfY29kZSkK
IApAQCAtMTM0LDcgKzEzNCw3IEBAIGNsYXNzIENvbW1pdENvbnRyb2xsZXJUZXN0KEZsYXNrVGVz
dENhc2UKIAogICAgICAgICBzdm5fY29tbWl0ID0gQ29tbWl0KAogICAgICAgICAgICAgcmVwb3Np
dG9yeV9pZD0nd2Via2l0JywKLSAgICAgICAgICAgIGJyYW5jaD0ndHJ1bmsnLAorICAgICAgICAg
ICAgYnJhbmNoPSdtYWluJywKICAgICAgICAgICAgIGlkPScxMjM0JywKICAgICAgICAgICAgIHRp
bWVzdGFtcD0xNjAxNjUwMTAwLAogICAgICAgICAgICAgb3JkZXI9MCwKSW5kZXg6IFRvb2xzL1Nj
cmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NvbW1pdF9jb250
ZXh0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5
L3Jlc3VsdHNkYnB5L21vZGVsL2NvbW1pdF9jb250ZXh0LnB5CShyZXZpc2lvbiAyNzQ1ODcpCisr
KyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9j
b21taXRfY29udGV4dC5weQkod29ya2luZyBjb3B5KQpAQCAtMTYwLDcgKzE2MCw3IEBAIGNsYXNz
IENvbW1pdENvbnRleHQob2JqZWN0KToKICAgICAgICAgIyB0aGlzIGNhc2UsIHRyYWNrIGJyYW5j
aGVzIHdoaWNoIGFyZSBub3QgdGhlIGRlZmF1bHQgYnJhbmNoIGluZGVwZW5kZW50bHkuCiAgICAg
ICAgIGZvciBjb21taXQgaW4gY29tbWl0czoKICAgICAgICAgICAgIHJlcG8gPSBzZWxmLnJlcG9z
aXRvcmllcy5nZXQoY29tbWl0LnJlcG9zaXRvcnlfaWQsIFJlcG9zaXRvcnkoa2V5PWNvbW1pdC5y
ZXBvc2l0b3J5X2lkKSkKLSAgICAgICAgICAgIGlmIGNvbW1pdC5icmFuY2ggIT0gcmVwby5kZWZh
dWx0X2JyYW5jaDoKKyAgICAgICAgICAgIGlmIGNvbW1pdC5icmFuY2ggbm90IGluIFNjbUJhc2Uu
REVGQVVMVF9CUkFOQ0hFUzoKICAgICAgICAgICAgICAgICBicmFuY2hlcy5hZGQoY29tbWl0LmJy
YW5jaCkKICAgICAgICAgaWYgbGVuKGJyYW5jaGVzKSA9PSAwOgogICAgICAgICAgICAgYnJhbmNo
ZXMuYWRkKHNlbGYuREVGQVVMVF9CUkFOQ0hfS0VZKQpAQCAtMzc5LDYgKzM3OSw5IEBAIGNsYXNz
IENvbW1pdENvbnRleHQob2JqZWN0KToKICAgICAgICAgICAgIGlmIGNvbW1pdC5yZXBvc2l0b3J5
X2lkIG5vdCBpbiBzZWxmLnJlcG9zaXRvcmllczoKICAgICAgICAgICAgICAgICBzZWxmLnJlcG9z
aXRvcmllc1tjb21taXQucmVwb3NpdG9yeV9pZF0gPSBSZXBvc2l0b3J5KGtleT1jb21taXQucmVw
b3NpdG9yeV9pZCkKIAorICAgICAgICAgICAgaWYgY29tbWl0LmJyYW5jaCBpbiBTY21CYXNlLkRF
RkFVTFRfQlJBTkNIRVM6CisgICAgICAgICAgICAgICAgY29tbWl0LmJyYW5jaCA9IHNlbGYucmVw
b3NpdG9yaWVzW2NvbW1pdC5yZXBvc2l0b3J5X2lkXS5kZWZhdWx0X2JyYW5jaAorCiAgICAgICAg
ICAgICBmb3Igb2xkIGluIFtzZWxmLkNvbW1pdEJ5SUQsIHNlbGYuQ29tbWl0QnlVdWlkQXNjZW5k
aW5nLCBzZWxmLkNvbW1pdEJ5VXVpZERlc2NlbmRpbmddOgogICAgICAgICAgICAgICAgIHNlbGYu
Y2Fzc2FuZHJhLmluc2VydF9yb3coCiAgICAgICAgICAgICAgICAgICAgIG9sZC5fX3RhYmxlX25h
bWVfXywKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNk
YnB5L21vZGVsL2NvbW1pdF9jb250ZXh0X3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NvbW1pdF9j
b250ZXh0X3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyNzQ1ODcpCisrKyBUb29scy9TY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRfY29udGV4dF91bml0
dGVzdC5weQkod29ya2luZyBjb3B5KQpAQCAtNzYsOSArNzYsOSBAQCBjbGFzcyBDb21taXRDb250
ZXh0VGVzdChXYWl0Rm9yRG9ja2VyVGVzCiAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
CiAgICAgICAgICAgICAgICAgW3NlbGYuc3ZuX3JlcG9zaXRvcnkuY29tbWl0X2Zvcl9pZChpZD02
KV0sCi0gICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfaWQocmVw
b3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycsIGNvbW1pdF9pZD02KSwKKyAgICAg
ICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV9pZChyZXBvc2l0b3J5X2lk
PSd3ZWJraXQnLCBicmFuY2g9J21haW4nLCBjb21taXRfaWQ9NiksCiAgICAgICAgICAgICApCi0g
ICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGxlbihzZWxmLmRhdGFiYXNlLmZpbmRfY29t
bWl0c19ieV9pZChyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J3RydW5rJywgY29tbWl0
X2lkPScxMjM0JykpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgwLCBsZW4oc2VsZi5k
YXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfaWQocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNo
PSdtYWluJywgY29tbWl0X2lkPScxMjM0JykpKQogCiAgICAgQFdhaXRGb3JEb2NrZXJUZXN0Q2Fz
ZS5tb2NrX2lmX25vX2RvY2tlcihtb2NrX3JlZGlzPUZha2VTdHJpY3RSZWRpcywgbW9ja19jYXNz
YW5kcmE9TW9ja0Nhc3NhbmRyYUNvbnRleHQpCiAgICAgZGVmIHRlc3RfY29tbWl0X2J5X3V1aWQo
c2VsZiwgcmVkaXM9U3RyaWN0UmVkaXMsIGNhc3NhbmRyYT1DYXNzYW5kcmFDb250ZXh0KToKQEAg
LTkyLDcgKzkyLDcgQEAgY2xhc3MgQ29tbWl0Q29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwog
ICAgICAgICAgICAgKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAgICAgICAg
ICAgICBbc2VsZi5zdm5fcmVwb3NpdG9yeS5jb21taXRfZm9yX2lkKGlkPTYpXSwKLSAgICAgICAg
ICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV91dWlkKHJlcG9zaXRvcnlfaWQ9
J3dlYmtpdCcsIGJyYW5jaD0ndHJ1bmsnLCB1dWlkPTE2MDE2Mzk5MDAwMCksCisgICAgICAgICAg
ICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfdXVpZChyZXBvc2l0b3J5X2lkPSd3
ZWJraXQnLCBicmFuY2g9J21haW4nLCB1dWlkPTE2MDE2Mzk5MDAwMCksCiAgICAgICAgICAgICAp
CiAKICAgICBAV2FpdEZvckRvY2tlclRlc3RDYXNlLm1vY2tfaWZfbm9fZG9ja2VyKG1vY2tfcmVk
aXM9RmFrZVN0cmljdFJlZGlzLCBtb2NrX2Nhc3NhbmRyYT1Nb2NrQ2Fzc2FuZHJhQ29udGV4dCkK
QEAgLTEwNyw3ICsxMDcsNyBAQCBjbGFzcyBDb21taXRDb250ZXh0VGVzdChXYWl0Rm9yRG9ja2Vy
VGVzCiAgICAgICAgICAgICApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAg
ICAgICAgICAgIFtzZWxmLnN2bl9yZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NildLAotICAg
ICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X3RpbWVzdGFtcChyZXBv
c2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J3RydW5rJywgdGltZXN0YW1wPTE2MDE2Mzk5MDAp
LAorICAgICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X3RpbWVzdGFt
cChyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J21haW4nLCB0aW1lc3RhbXA9MTYwMTYz
OTkwMCksCiAgICAgICAgICAgICApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxl
bihzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV90aW1lc3RhbXAocmVwb3NpdG9yeV9pZD0n
c2FmYXJpJywgYnJhbmNoPSdtYWluJywgdGltZXN0YW1wPTE2MDE2NjgwMDApKSkKIApAQCAtMTI3
LDEwICsxMjcsMTAgQEAgY2xhc3MgQ29tbWl0Q29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwog
ICAgICAgICB3aXRoIE1vY2tNb2RlbEZhY3Rvcnkuc2FmYXJpKCksIE1vY2tNb2RlbEZhY3Rvcnku
d2Via2l0KCk6CiAgICAgICAgICAgICBzZWxmLmluaXRfZGF0YWJhc2UocmVkaXM9cmVkaXMsIGNh
c3NhbmRyYT1jYXNzYW5kcmEpCiAgICAgICAgICAgICBzZWxmLmFkZF9hbGxfY29tbWl0c190b19k
YXRhYmFzZSgpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDQsIGxlbihzZWxmLmRhdGFi
YXNlLmZpbmRfY29tbWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9
J3RydW5rJykpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg0LCBsZW4oc2VsZi5kYXRh
YmFzZS5maW5kX2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNo
PSdtYWluJykpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAgICAgICAgICAg
ICBbc2VsZi5zdm5fcmVwb3NpdG9yeS5jb21taXRfZm9yX2lkKGlkPTYpLCBzZWxmLnN2bl9yZXBv
c2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NCldLAotICAgICAgICAgICAgICAgIHNlbGYuZGF0YWJh
c2UuZmluZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0n
dHJ1bmsnLCBsaW1pdD0yKSwKKyAgICAgICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29t
bWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J21haW4nLCBsaW1p
dD0yKSwKICAgICAgICAgICAgICkKIAogICAgIEBXYWl0Rm9yRG9ja2VyVGVzdENhc2UubW9ja19p
Zl9ub19kb2NrZXIobW9ja19yZWRpcz1GYWtlU3RyaWN0UmVkaXMsIG1vY2tfY2Fzc2FuZHJhPU1v
Y2tDYXNzYW5kcmFDb250ZXh0KQpAQCAtMTUwLDcgKzE1MCw3IEBAIGNsYXNzIENvbW1pdENvbnRl
eHRUZXN0KFdhaXRGb3JEb2NrZXJUZXMKICAgICAgICAgICAgIHNlbGYuYWRkX2FsbF9jb21taXRz
X3RvX2RhdGFiYXNlKCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAg
ICAgICAgW3NlbGYuc3ZuX3JlcG9zaXRvcnkuY29tbWl0X2Zvcl9pZChpZD02KSwgc2VsZi5zdm5f
cmVwb3NpdG9yeS5jb21taXRfZm9yX2lkKGlkPTQpXSwKLSAgICAgICAgICAgICAgICBzZWxmLmRh
dGFiYXNlLmZpbmRfY29tbWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFu
Y2g9J3RydW5rJywgYmVnaW49MTYwMTYzNzkwMCwgZW5kPTE2MDE2Mzk5MDApLAorICAgICAgICAg
ICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9
J3dlYmtpdCcsIGJyYW5jaD0nbWFpbicsIGJlZ2luPTE2MDE2Mzc5MDAsIGVuZD0xNjAxNjM5OTAw
KSwKICAgICAgICAgICAgICkKIAogICAgIEBXYWl0Rm9yRG9ja2VyVGVzdENhc2UubW9ja19pZl9u
b19kb2NrZXIobW9ja19yZWRpcz1GYWtlU3RyaWN0UmVkaXMsIG1vY2tfY2Fzc2FuZHJhPU1vY2tD
YXNzYW5kcmFDb250ZXh0KQpAQCAtMTc3LDcgKzE3Nyw3IEBAIGNsYXNzIENvbW1pdENvbnRleHRU
ZXN0KFdhaXRGb3JEb2NrZXJUZXMKICAgICAgICAgICAgICAgICBzZWxmLnN2bl9yZXBvc2l0b3J5
LmNvbW1pdF9mb3JfaWQoaWQ9NCksCiAgICAgICAgICAgICAgICAgc2VsZi5zdm5fcmVwb3NpdG9y
eS5jb21taXRfZm9yX2lkKGlkPTIpLAogICAgICAgICAgICAgXQotICAgICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChjb21taXRzLCBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19pbl9yYW5nZShy
ZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J3RydW5rJywgYmVnaW49Y29tbWl0c1stMV0s
IGVuZD1jb21taXRzWzBdKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0cywg
c2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9yeV9pZD0nd2Via2l0
JywgYnJhbmNoPSdtYWluJywgYmVnaW49Y29tbWl0c1stMV0sIGVuZD1jb21taXRzWzBdKSkKIAog
ICAgIEBXYWl0Rm9yRG9ja2VyVGVzdENhc2UubW9ja19pZl9ub19kb2NrZXIobW9ja19yZWRpcz1G
YWtlU3RyaWN0UmVkaXMsIG1vY2tfY2Fzc2FuZHJhPU1vY2tDYXNzYW5kcmFDb250ZXh0KQogICAg
IGRlZiB0ZXN0X2NvbW1pdF9mcm9tX3N0YXNoX3JlcG8oc2VsZiwgcmVkaXM9U3RyaWN0UmVkaXMs
IGNhc3NhbmRyYT1DYXNzYW5kcmFDb250ZXh0KToKQEAgLTE5Niw3ICsxOTYsNyBAQCBjbGFzcyBD
b21taXRDb250ZXh0VGVzdChXYWl0Rm9yRG9ja2VyVGVzCiAgICAgICAgICAgICBzZWxmLmRhdGFi
YXNlLnJlZ2lzdGVyX3BhcnRpYWxfY29tbWl0KCd3ZWJraXQnLCByZXZpc2lvbj02KQogICAgICAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAgICAgICAgICAgICBbc2VsZi5zdm5fcmVwb3Np
dG9yeS5jb21taXRfZm9yX2lkKGlkPTYpXSwKLSAgICAgICAgICAgICAgICBzZWxmLmRhdGFiYXNl
LmZpbmRfY29tbWl0c19ieV9pZChyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J3RydW5r
JywgY29tbWl0X2lkPTYpLAorICAgICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21t
aXRzX2J5X2lkKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbicsIGNvbW1pdF9p
ZD02KSwKICAgICAgICAgICAgICkKIAogICAgIEBXYWl0Rm9yRG9ja2VyVGVzdENhc2UubW9ja19p
Zl9ub19kb2NrZXIobW9ja19yZWRpcz1GYWtlU3RyaWN0UmVkaXMsIG1vY2tfY2Fzc2FuZHJhPU1v
Y2tDYXNzYW5kcmFDb250ZXh0KQpAQCAtMjA2LDcgKzIwNiw3IEBAIGNsYXNzIENvbW1pdENvbnRl
eHRUZXN0KFdhaXRGb3JEb2NrZXJUZXMKICAgICAgICAgICAgIHNlbGYuYWRkX2FsbF9jb21taXRz
X3RvX2RhdGFiYXNlKCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydicmFuY2gtYScs
ICdicmFuY2gtYicsICdtYWluJ10sIHNlbGYuZGF0YWJhc2UuYnJhbmNoZXMocmVwb3NpdG9yeV9p
ZD0nc2FmYXJpJykpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAg
ICAgIFsnYnJhbmNoLWEnLCAnYnJhbmNoLWInLCAndGFncy90YWctMScsICd0YWdzL3RhZy0yJywg
J3RydW5rJ10sCisgICAgICAgICAgICAgICAgWydicmFuY2gtYScsICdicmFuY2gtYicsICdtYWlu
J10sCiAgICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5icmFuY2hlcyhyZXBvc2l0b3J5X2lk
PSd3ZWJraXQnKSwKICAgICAgICAgICAgICkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
WydicmFuY2gtYScsICdicmFuY2gtYiddLCBzZWxmLmRhdGFiYXNlLmJyYW5jaGVzKHJlcG9zaXRv
cnlfaWQ9J3NhZmFyaScsIGJyYW5jaD0nYnJhbmNoJykpCkluZGV4OiBUb29scy9TY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9tb2NrX21vZGVsX2ZhY3Rvcnku
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvbW9kZWwvbW9ja19tb2RlbF9mYWN0b3J5LnB5CShyZXZpc2lvbiAyNzQ1ODcpCisr
KyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9t
b2NrX21vZGVsX2ZhY3RvcnkucHkJKHdvcmtpbmcgY29weSkKQEAgLTIxLDYgKzIxLDcgQEAKICMg
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KIAogaW1wb3J0IGJhc2U2NAoraW1wb3J0IGNvbnRleHRsaWIKIGltcG9ydCBp
bwogaW1wb3J0IHRpbWUKIApAQCAtMjksNyArMzAsNyBAQCBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVs
LmNvbmZpZ3VyYXRpb25fY29uCiBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLm1vZGVsIGltcG9ydCBN
b2RlbAogZnJvbSByZXN1bHRzZGJweS5tb2RlbC5yZXBvc2l0b3J5IGltcG9ydCBTdGFzaFJlcG9z
aXRvcnksIFdlYktpdFJlcG9zaXRvcnkKIAotZnJvbSB3ZWJraXRzY21weSBpbXBvcnQgbW9ja3MK
K2Zyb20gd2Via2l0c2NtcHkgaW1wb3J0IG1vY2tzLCBDb21taXQKIAogCiBjbGFzcyBNb2NrTW9k
ZWxGYWN0b3J5KG9iamVjdCk6CkBAIC02NSwxNiArNjYsNDQgQEAgY2xhc3MgTW9ja01vZGVsRmFj
dG9yeShvYmplY3QpOgogICAgICAgICByZXR1cm4gbW9ja3MucmVtb3RlLkJpdEJ1Y2tldChyZW1v
dGU9J2JpdGJ1Y2tldC5leGFtcGxlLmNvbS9wcm9qZWN0cy9TQUZBUkkvcmVwb3Mvc2FmYXJpJykK
IAogICAgIEBjbGFzc21ldGhvZAorICAgIEBjb250ZXh0bGliLmNvbnRleHRtYW5hZ2VyCiAgICAg
ZGVmIHdlYmtpdChjbHMpOgotICAgICAgICByZXR1cm4gbW9ja3MucmVtb3RlLlN2bihyZW1vdGU9
J3N2bi53ZWJraXQub3JnL3JlcG9zaXRvcnkvd2Via2l0JykKKyAgICAgICAgc3ZuID0gbW9ja3Mu
cmVtb3RlLlN2bihyZW1vdGU9J3N2bi53ZWJraXQub3JnL3JlcG9zaXRvcnkvd2Via2l0JykKKyAg
ICAgICAgZ2l0aHViID0gbW9ja3MucmVtb3RlLkdpdEh1YihyZW1vdGU9J2dpdGh1Yi5jb20vV2Vi
S2l0L1dlYktpdCcsIGdpdF9zdm49VHJ1ZSkKKyAgICAgICAgZ2l0aHViLmNvbW1pdHMgPSB7fQor
CisgICAgICAgIGZvciBicmFuY2gsIGNvbW1pdHMgaW4gc3ZuLmNvbW1pdHMuaXRlbXMoKToKKyAg
ICAgICAgICAgIGlmICd0YWcnIGluIGJyYW5jaDoKKyAgICAgICAgICAgICAgICBjb250aW51ZQor
ICAgICAgICAgICAgaWYgYnJhbmNoID09ICd0cnVuayc6CisgICAgICAgICAgICAgICAgYnJhbmNo
ID0gJ21haW4nCisgICAgICAgICAgICBnaXRodWIuY29tbWl0c1ticmFuY2hdID0gW10KKworICAg
ICAgICAgICAgZm9yIGNvbW1pdCBpbiBjb21taXRzOgorICAgICAgICAgICAgICAgIGdpdGh1Yi5j
b21taXRzW2JyYW5jaF0uYXBwZW5kKENvbW1pdCgKKyAgICAgICAgICAgICAgICAgICAgcmVwb3Np
dG9yeV9pZD1jb21taXQucmVwb3NpdG9yeV9pZCwKKyAgICAgICAgICAgICAgICAgICAgYnJhbmNo
PWJyYW5jaCwKKyAgICAgICAgICAgICAgICAgICAgYXV0aG9yPWNvbW1pdC5hdXRob3IsCisgICAg
ICAgICAgICAgICAgICAgIG1lc3NhZ2U9Y29tbWl0Lm1lc3NhZ2UsCisgICAgICAgICAgICAgICAg
ICAgIHRpbWVzdGFtcD1jb21taXQudGltZXN0YW1wLAorICAgICAgICAgICAgICAgICAgICBvcmRl
cj1jb21taXQub3JkZXIsCisgICAgICAgICAgICAgICAgICAgIGlkZW50aWZpZXI9Y29tbWl0Lmlk
ZW50aWZpZXIsCisgICAgICAgICAgICAgICAgICAgIGJyYW5jaF9wb2ludD1jb21taXQuYnJhbmNo
X3BvaW50LAorICAgICAgICAgICAgICAgICAgICByZXZpc2lvbj1jb21taXQucmV2aXNpb24sCisg
ICAgICAgICAgICAgICAgICAgIGhhc2g9Y29tbWl0Lmhhc2gsCisgICAgICAgICAgICAgICAgKSkK
KworICAgICAgICB3aXRoIHN2biwgZ2l0aHViOgorICAgICAgICAgICAgeWllbGQgZ2l0aHViCiAK
ICAgICBAY2xhc3NtZXRob2QKICAgICBkZWYgY3JlYXRlKGNscywgcmVkaXMsIGNhc3NhbmRyYSwg
YXN5bmNfcHJvY2Vzc2luZz1GYWxzZSk6CiAgICAgICAgIG9sZGVzdF9jb21taXQgPSB0aW1lLnRp
bWUoKQotICAgICAgICBmb3IgcmVwbyBpbiBbY2xzLnNhZmFyaSgpLCBjbHMud2Via2l0KCldOgot
ICAgICAgICAgICAgZm9yIGNvbW1pdHMgaW4gcmVwby5jb21taXRzLnZhbHVlcygpOgotICAgICAg
ICAgICAgICAgIGZvciBjb21taXQgaW4gY29tbWl0czoKLSAgICAgICAgICAgICAgICAgICAgb2xk
ZXN0X2NvbW1pdCA9IG1pbihvbGRlc3RfY29tbWl0LCBjb21taXQudGltZXN0YW1wKQorICAgICAg
ICB3aXRoIGNscy5zYWZhcmkoKSBhcyBzYWZhcmksIGNscy53ZWJraXQoKSBhcyB3ZWJraXQ6Cisg
ICAgICAgICAgICBmb3IgcmVwbyBpbiBbc2FmYXJpLCB3ZWJraXRdOgorICAgICAgICAgICAgICAg
IGZvciBjb21taXRzIGluIHJlcG8uY29tbWl0cy52YWx1ZXMoKToKKyAgICAgICAgICAgICAgICAg
ICAgZm9yIGNvbW1pdCBpbiBjb21taXRzOgorICAgICAgICAgICAgICAgICAgICAgICAgb2xkZXN0
X2NvbW1pdCA9IG1pbihvbGRlc3RfY29tbWl0LCBjb21taXQudGltZXN0YW1wKQogCiAgICAgICAg
IG1vZGVsID0gTW9kZWwoCiAgICAgICAgICAgICByZWRpcz1yZWRpcywKSW5kZXg6IFRvb2xzL1Nj
cmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL3JlcG9zaXRvcnku
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeS5weQkocmV2aXNpb24gMjc0NTg3KQorKysgVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVwb3NpdG9y
eS5weQkod29ya2luZyBjb3B5KQpAQCAtODEsMTggKzgxLDE5IEBAIGNsYXNzIFN0YXNoUmVwb3Np
dG9yeShSZXBvc2l0b3J5KToKIGNsYXNzIFdlYktpdFJlcG9zaXRvcnkoUmVwb3NpdG9yeSk6CiAK
ICAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgIHNlbGYucmVtb3RlID0gcmVtb3RlLlN2
bignaHR0cHM6Ly9zdm4ud2Via2l0Lm9yZy9yZXBvc2l0b3J5L3dlYmtpdCcpCisgICAgICAgIHNl
bGYuc3ZuID0gcmVtb3RlLlN2bignaHR0cHM6Ly9zdm4ud2Via2l0Lm9yZy9yZXBvc2l0b3J5L3dl
YmtpdCcpCisgICAgICAgIHNlbGYuZ2l0aHViID0gcmVtb3RlLkdpdEh1YignaHR0cHM6Ly9naXRo
dWIuY29tL1dlYktpdC9XZWJLaXQnKQogICAgICAgICBzdXBlcihXZWJLaXRSZXBvc2l0b3J5LCBz
ZWxmKS5fX2luaXRfXygKICAgICAgICAgICAgIGtleT0nd2Via2l0JywKLSAgICAgICAgICAgIGRl
ZmF1bHRfYnJhbmNoPXNlbGYucmVtb3RlLmRlZmF1bHRfYnJhbmNoLAorICAgICAgICAgICAgZGVm
YXVsdF9icmFuY2g9c2VsZi5naXRodWIuZGVmYXVsdF9icmFuY2gsCiAgICAgICAgICkKIAogICAg
IGRlZiBjb21taXRfZm9yX2lkKHNlbGYsIGlkKToKLSAgICAgICAgY29tbWl0ID0gc2VsZi5yZW1v
dGUuY29tbWl0KHJldmlzaW9uPWlkLCBpbmNsdWRlX2lkZW50aWZpZXI9RmFsc2UpCisgICAgICAg
IGNvbW1pdCA9IHNlbGYuc3ZuLmNvbW1pdChyZXZpc2lvbj1pZCwgaW5jbHVkZV9pZGVudGlmaWVy
PUZhbHNlKQogICAgICAgICByZXR1cm4gQ29tbWl0KAogICAgICAgICAgICAgcmVwb3NpdG9yeV9p
ZD1zZWxmLmtleSwKICAgICAgICAgICAgIGlkPWNvbW1pdC5yZXZpc2lvbiwKLSAgICAgICAgICAg
IGJyYW5jaD1jb21taXQuYnJhbmNoLAorICAgICAgICAgICAgYnJhbmNoPXNlbGYuZGVmYXVsdF9i
cmFuY2ggaWYgY29tbWl0LmJyYW5jaCA9PSAndHJ1bmsnIGVsc2UgY29tbWl0LmJyYW5jaCwKICAg
ICAgICAgICAgIHRpbWVzdGFtcD1jb21taXQudGltZXN0YW1wLAogICAgICAgICAgICAgb3JkZXI9
Y29tbWl0Lm9yZGVyLAogICAgICAgICAgICAgY29tbWl0dGVyPWNvbW1pdC5hdXRob3IuZW1haWws
CkBAIC0xMDIsMTEgKzEwMywyNiBAQCBjbGFzcyBXZWJLaXRSZXBvc2l0b3J5KFJlcG9zaXRvcnkp
OgogICAgIGRlZiBjb21taXQoc2VsZiwgcmVmPU5vbmUsIHJldmlzaW9uPU5vbmUsIGhhc2g9Tm9u
ZSwgaWRlbnRpZmllcj1Ob25lLCBmYXN0PVRydWUpOgogICAgICAgICBpZiBpZGVudGlmaWVyOgog
ICAgICAgICAgICAgZmFzdCA9IEZhbHNlCisKICAgICAgICAgaWYgcmVmOgogICAgICAgICAgICAg
aWYgaXNpbnN0YW5jZShyZWYsIGludCkgb3IgcmVmLmlzZGlnaXQoKToKLSAgICAgICAgICAgICAg
ICByZWYgPSAncnt9Jy5mb3JtYXQocmVmKQotICAgICAgICAgICAgcmV0dXJuIHNlbGYucmVtb3Rl
LmZpbmQocmVmLCBpbmNsdWRlX2lkZW50aWZpZXI9bm90IGZhc3QpCi0gICAgICAgIHJldHVybiBz
ZWxmLnJlbW90ZS5jb21taXQocmV2aXNpb249cmV2aXNpb24sIGhhc2g9aGFzaCwgaWRlbnRpZmll
cj1pZGVudGlmaWVyLCBpbmNsdWRlX2lkZW50aWZpZXI9bm90IGZhc3QpCisgICAgICAgICAgICAg
ICAgcmVzdWx0ID0gc2VsZi5zdm4uZmluZCgncnt9Jy5mb3JtYXQocmVmKSwgaW5jbHVkZV9pZGVu
dGlmaWVyPW5vdCBmYXN0KQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZXN1
bHQgPSBzZWxmLmdpdGh1Yi5maW5kKHJlZiwgaW5jbHVkZV9pZGVudGlmaWVyPW5vdCBmYXN0KQor
ICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmVzdWx0ID0gKHNlbGYuc3ZuIGlmIHJldmlzaW9u
IGFuZCBub3QgaGFzaCBlbHNlIHNlbGYuZ2l0aHViKS5jb21taXQoCisgICAgICAgICAgICAgICAg
cmV2aXNpb249Tm9uZSBpZiBoYXNoIGVsc2UgcmV2aXNpb24sCisgICAgICAgICAgICAgICAgaGFz
aD1oYXNoLAorICAgICAgICAgICAgICAgIGlkZW50aWZpZXI9Tm9uZSBpZiBub3QgaGFzaCBhbmQg
bm90IHJldmlzaW9uIGVsc2UgaWRlbnRpZmllciwKKyAgICAgICAgICAgICAgICBpbmNsdWRlX2lk
ZW50aWZpZXI9bm90IGZhc3QsCisgICAgICAgICAgICApCisKKyAgICAgICAgaWYgbm90IGZhc3Qg
YW5kIHJlc3VsdC5oYXNoIGFuZCByZXN1bHQuaWRlbnRpZmllcjoKKyAgICAgICAgICAgIHJlc3Vs
dCA9IHNlbGYuZ2l0aHViLmNvbW1pdChpZGVudGlmaWVyPXN0cihyZXN1bHQpKQorCisgICAgICAg
IGlmIHJlc3VsdC5icmFuY2ggaW4gc2VsZi5zdm4uREVGQVVMVF9CUkFOQ0hFUzoKKyAgICAgICAg
ICAgIHJlc3VsdC5icmFuY2ggPSBzZWxmLmRlZmF1bHRfYnJhbmNoCisgICAgICAgIHJldHVybiBy
ZXN1bHQKIAogICAgIGRlZiB1cmxfZm9yX2NvbW1pdChzZWxmLCBjb21taXQpOgogICAgICAgICBy
ZXR1cm4gZidodHRwczovL2NvbW1pdHMud2Via2l0Lm9yZy9ye2NvbW1pdH0nCkluZGV4OiBUb29s
cy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0
b3J5X3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jl
c3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL3JlcG9zaXRvcnlfdW5pdHRlc3QucHkJKHJldmlz
aW9uIDI3NDU4NykKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3Vs
dHNkYnB5L21vZGVsL3JlcG9zaXRvcnlfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTM0
LDcgKzM0LDcgQEAgY2xhc3MgUmVwb3NpdG9yeVRlc3QoV2FpdEZvckRvY2tlclRlc3RDYQogICAg
ICAgICAgICAgY29tbWl0ID0gc3ZuX3JlcG8uY29tbWl0KHJldmlzaW9uPTYpCiAgICAgICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdC51dWlkLCAxNjAxNjM5OTAwMDApCiAgICAgICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdC5tZXNzYWdlLCAnNnRoIGNvbW1pdCcpCi0gICAgICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdC5icmFuY2gsICd0cnVuaycpCisgICAgICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdC5icmFuY2gsICdtYWluJykKIAogICAgIGRlZiB0ZXN0
X3JlZl9zdm4oc2VsZik6CiAgICAgICAgIHdpdGggTW9ja01vZGVsRmFjdG9yeS53ZWJraXQoKToK
SW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3Zp
ZXcvYXJjaGl2ZV92aWV3X3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMv
bGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvYXJjaGl2ZV92aWV3X3VuaXR0
ZXN0LnB5CShyZXZpc2lvbiAyNzQ1ODcpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1
bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L2FyY2hpdmVfdmlld191bml0dGVzdC5weQkod29ya2lu
ZyBjb3B5KQpAQCAtNTEsNyArNTEsNyBAQCBjbGFzcyBBcmNoaXZlVmlld1VuaXR0ZXN0KFdlYlNp
dGVUZXN0Q2FzCiAgICAgICAgICAgICAgICAgKSwgZGljdCgKICAgICAgICAgICAgICAgICAgICAg
cmVwb3NpdG9yeV9pZD0nd2Via2l0JywKICAgICAgICAgICAgICAgICAgICAgaWQ9JzYnLAotICAg
ICAgICAgICAgICAgICAgICBicmFuY2g9J3RydW5rJywKKyAgICAgICAgICAgICAgICAgICAgYnJh
bmNoPSdtYWluJywKICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPTE2MDE2NjUxMDAsCiAg
ICAgICAgICAgICAgICAgICAgIG9yZGVyPTAsCiAgICAgICAgICAgICAgICAgICAgIGNvbW1pdHRl
cj0namJlZGFyZEBhcHBsZS5jb20nLApJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVz
dWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvZHJhd2VyLmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcv
c3RhdGljL2pzL2RyYXdlci5qcwkocmV2aXNpb24gMjc0NTg3KQorKysgVG9vbHMvU2NyaXB0cy9s
aWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvZHJhd2VyLmpz
CSh3b3JraW5nIGNvcHkpCkBAIC0xMzcsNyArMTM3LDcgQEAgZnVuY3Rpb24gcmVmcmVzaENvbmZp
Z3VyYXRpb25zKCkgewogfQogCiBmdW5jdGlvbiBCcmFuY2hTZWxlY3RvcihjYWxsYmFjaykgewot
ICAgIGNvbnN0IGRlZmF1bHRCcmFuY2hlcyA9IG5ldyBTZXQoWyd0cnVuaycsICdtYXN0ZXInXSk7
CisgICAgY29uc3QgZGVmYXVsdEJyYW5jaGVzID0gbmV3IFNldChbJ3RydW5rJywgJ21hc3Rlcics
ICdtYWluJ10pOwogICAgIGNvbnN0IGRlZmF1bHRCcmFuY2hLZXkgPSBbLi4uZGVmYXVsdEJyYW5j
aGVzXS5zb3J0KCkuam9pbignLycpOwogICAgIGNvbnN0IGJyYW5jaE1vZGlmaWVyID0gbmV3IFF1
ZXJ5TW9kaWZpZXIoJ2JyYW5jaCcpOwogCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9y
ZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9kb2N1bWVudGF0aW9uLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy90ZW1wbGF0ZXMvZG9jdW1lbnRhdGlvbi5odG1sCShyZXZpc2lvbiAyNzQ1ODcp
CisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3
L3RlbXBsYXRlcy9kb2N1bWVudGF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEyMyw3ICsx
MjMsNyBAQCBjb25zdCBkb2N1bWVudGF0aW9uID0gewogICAgICAgICAgICAgICAgICAgICBgUmV0
dXJucyBhIGRpY3Rpb25hcnkgb2YgbGlzdHMgb2YgYnJhbmNoZXMgYXNzb2NpYXRlZCB3aXRoIGVh
Y2ggcmVwb3NpdG9yeS4gVGhlIG91dHB1dCBpcyBvZiB0aGUgZm9ybTpgLAogICAgICAgICAgICAg
ICAgICAgICBjb2RlQmxvY2soJ3tcbicgKwogICAgICAgICAgICAgICAgICAgICAnICAgIDxyZXBv
c2l0b3J5LWlkIChhKT46IFsibWFzdGVyIiwgImJyYW5jaC1hIiwgImJyYW5jaC1iIl0sXG4nICsK
LSAgICAgICAgICAgICAgICAgICAgJyAgICA8cmVwb3NpdG9yeS1pZCAoYik+OiBbInRydW5rIiwg
ImJyYW5jaC1hIiwgImJyYW5jaC1jIl1cbicgKworICAgICAgICAgICAgICAgICAgICAnICAgIDxy
ZXBvc2l0b3J5LWlkIChiKT46IFsibWFpbiIsICJicmFuY2gtYSIsICJicmFuY2gtYyJdXG4nICsK
ICAgICAgICAgICAgICAgICAgICAgJ30nKSwKICAgICAgICAgICAgICAgICBdLAogICAgICAgICAg
ICAgKSwKQEAgLTE1OCw3ICsxNTgsNyBAQCBjb25zdCBkb2N1bWVudGF0aW9uID0gewogICAgICAg
ICAgICAgICAgIFsnQnJhbmNoJywgJ1JlcG9zaXRvcnknXSwKICAgICAgICAgICAgICAgICBbCiAg
ICAgICAgICAgICAgICAgICAgIGBSZWdpc3RlciBhIHNpbmdsZSBjb21taXQgaW4gdGhlIHJlc3Vs
dHMgZGF0YWJhc2UuIFRoaXMgY29tbWl0IG11c3QgYmUgYXNzb2NpYXRlZCB3aXRoIGEgcmVwb3Np
dG9yeSBhbHJlYWR5IGtub3duIGJ5IHRoZSByZXN1bHRzIGRhdGFiYXNlLiBXaGlsZSBhICR7bG9j
YWxMaW5rKFsnQVBJJywgJ0NvbW1pdHMnXSwgJ2NvbW1pdCBvYmplY3RzJyl9IGNhbiBiZSB1cGxv
YWRlZCB0byB0aGlzIGVuZHBvaW50LCBpdCBpcyByZWNvbW1lbmRlZCB0aGF0IHRoZSByZWdpc3Ry
YXRpb24gb2YgY29tbWl0cyBvdXRzaWRlIG9mIGF1dG9tYXRpb24gYWxsb3cgdGhlIHJlc3VsdHMg
ZGF0YWJhc2UgdG8gbGV2ZXJhZ2UgeW91ciBzb3VyY2UgY29udHJvbCdzIEFQSS4gU3VjaCBhIHJl
cXVlc3QgbG9va3MgbGlrZSB0aGlzYCwKLSAgICAgICAgICAgICAgICAgICAgY29kZUJsb2NrKCcv
YXBpL2NvbW1pdHMvcmVnaXN0ZXI/cmVwb3NpdG9yeV9pZD13ZWJraXQmYnJhbmNoPXRydW5rJmlk
PTI0NzM1NScpLAorICAgICAgICAgICAgICAgICAgICBjb2RlQmxvY2soJy9hcGkvY29tbWl0cy9y
ZWdpc3Rlcj9yZXBvc2l0b3J5X2lkPXdlYmtpdCZicmFuY2g9bWFpbiZpZD0yNDczNTUnKSwKICAg
ICAgICAgICAgICAgICAgICAgYE1vcmUgZ2VuZXJhbGx5LCBhbnkgZGVmaW5pdGlvbiBvZiBhIGNv
bW1pdCB3aGljaCBkZWZpbmVzIHRoZSByZXBvc2l0b3J5X2lkLCBpZCBhbmQgYnJhbmNoIHByb3Zp
ZGVzIGVub3VnaCBpbmZvcm1hdGlvbiBmb3IgdGhlIHJlc3VsdHMgZGF0YWJhc2UgdG8gcXVlcnkg
eW91ciBzb3VyY2UgY29udHJvbCdzIEFQSSBhbmQgcmV0cmVpdmUgY29tbWl0IGluZm9ybWF0aW9u
LmAsCiAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICksCkBAIC00NzksNyArNDc5LDcg
QEAgY29uc3QgZG9jdW1lbnRhdGlvbiA9IHsKICAgICAgICAgICAgIGBCeSBkZWZhdWx0LCB0aGlz
IGZsYWcgaXMgJ1RydWUnIGFuZCBlbmRwb2ludHMgd2lsbCBpZ25vcmUgdGVzdHMgd2hpY2ggbWF0
Y2hlZCB0aGVpciBleHBlY3RlZCBiZWhhdmlvci4gSWYgc2V0IHRvICdGYWxzZScsIGVuZHBvaW50
cyB3aWxsIHJldHVybiByZXN1bHRzIGZvciBhbGwgZmFpbGluZyB0ZXN0cywgcmVnYXJkbGVzcyBv
ZiB3aGF0IHRoZWlyIGV4cGVjdGF0aW9uIGlzLmAsCiAgICAgICAgIF0sCiAgICAgICAgICdCcmFu
Y2gnOiBbCi0gICAgICAgICAgICBgTW9zdCBkYXRhIGluIHRoZSByZXN1bHRzIGRhdGFiYXNlIGlz
IHBhcnRpdGlvbmVkIGJ5IGJyYW5jaCwgYW5kIGl0IGlzIGdlbmVyYWxseSBleHBlY3RlZCB0aGF0
IHJlc3VsdHMgb24gc2VwZXJhdGUgYnJhbmNoZXMgYXJlIGluZGVwZW5kZW50IG9mIG9uZSBhbm90
aGVyLiBCeSBkZWZhdWx0LCBlbmRwb2ludHMgdGhhdCBzdXBwb3J0IHRoZSBicmFuY2ggcXVlcnkg
d2lsbCBhc3N1bWUgdGhhdCB0aGUgYnJhbmNoIGlzIG1hc3RlciBmb3IgZ2l0IHJlcG9zaXRvcmll
cyBhbmQgdHJ1bmsgZm9yIFNWTiByZXBvc2l0b3JpZXMgaWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVk
LiBJZiBtdWx0aXBsZSB2YWx1ZXMgZm9yIGJyYW5jaCBhcmUgc3BlY2lmaWVkLCBvbmx5IHRoZSBm
aXJzdCB3aWxsIGJlIHJlc3BlY3RlZC4gQSByZXF1ZXN0IHdoaWNoIGludGVuZGVkIHRvIHNlYXJj
aCBmb3IgcmVzdWx0cyBvbiBvbmx5IHJlc3VsdHMgb24gdGhlIHNhZmFyaS02MDcgYnJhbmNoIHdv
dWxkIHVzZSBhIHF1ZXJ5IGxpa2UgdGhpczpgLAorICAgICAgICAgICAgYE1vc3QgZGF0YSBpbiB0
aGUgcmVzdWx0cyBkYXRhYmFzZSBpcyBwYXJ0aXRpb25lZCBieSBicmFuY2gsIGFuZCBpdCBpcyBn
ZW5lcmFsbHkgZXhwZWN0ZWQgdGhhdCByZXN1bHRzIG9uIHNlcGVyYXRlIGJyYW5jaGVzIGFyZSBp
bmRlcGVuZGVudCBvZiBvbmUgYW5vdGhlci4gQnkgZGVmYXVsdCwgZW5kcG9pbnRzIHRoYXQgc3Vw
cG9ydCB0aGUgYnJhbmNoIHF1ZXJ5IHdpbGwgYXNzdW1lIHRoYXQgdGhlIGJyYW5jaCBpcyBtYXN0
ZXIgb3IgbWFpbiBmb3IgZ2l0IHJlcG9zaXRvcmllcyBhbmQgdHJ1bmsgZm9yIFNWTiByZXBvc2l0
b3JpZXMgaWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLiBJZiBtdWx0aXBsZSB2YWx1ZXMgZm9yIGJy
YW5jaCBhcmUgc3BlY2lmaWVkLCBvbmx5IHRoZSBmaXJzdCB3aWxsIGJlIHJlc3BlY3RlZC4gQSBy
ZXF1ZXN0IHdoaWNoIGludGVuZGVkIHRvIHNlYXJjaCBmb3IgcmVzdWx0cyBvbiBvbmx5IHJlc3Vs
dHMgb24gdGhlIHNhZmFyaS02MDcgYnJhbmNoIHdvdWxkIHVzZSBhIHF1ZXJ5IGxpa2UgdGhpczpg
LAogICAgICAgICAgICAgY29kZUJsb2NrKCdicmFuY2g9c2FmYXJpLTYwNycpLAogICAgICAgICBd
LAogICAgICAgICAnQ29uZmlndXJhdGlvbic6IFsKQEAgLTU0NCwxMyArNTQ0LDEzIEBAIGNvbnN0
IGRvY3VtZW50YXRpb24gPSB7CiAgICAgICAgICAgICBgV2UgYWxzbyBrbm93IHRoYXQgdGltZXN0
YW1wcyBjYW4gYmUgZWFzaWx5IGNvbnZlcnRlZCB0byBVVUlEcy4gRW5kcG9pbnRzIHdoaWNoIHN1
cHBvcnQgcXVlcnlpbmcgYnkgVVVJRCBhbHNvIHN1cHBvcnQgcXVlcnlpbmcgYnkgVVRDIHRpbWVz
dGFtcC4gT3VyIHByZXZpb3VzIHF1ZXJ5IGNvdWxkIGJlIGluc3RlYWQgd3JpdHRlbiBsaWtlIHRo
aXM6YCwKICAgICAgICAgICAgIGNvZGVCbG9jaygnYWZ0ZXJfdGltZXN0YW1wPTE1NjI5NTE0OTEm
YmVmb3JlX3RpbWVzdGFtcD0xNTYyOTUyNDczJyksCiAgICAgICAgICAgICBgQ29tbWl0cyBjYW4g
YWxzbyBiZSB0cmFuc2xhdGVkIHRvIHRpbWVzdGFtcCwgYWx0aG91Z2ggd2l0aCBhIGJpdCBtb3Jl
IHdvcmsgcmVxdWlyZWQgZnJvbSB0aGUgYmFjay1lbmQuIEVuZHBvaW50cyB3aGljaCBzdXBwb3J0
IHF1ZXJ5aW5nIGJ5IFVVSUQgYWxzbyBzdXBwb3J0IHF1ZXJ5aW5nIGJ5IGNvbW1pdCBpbmZvcm1h
dGlvbi4gSW4gdGhlIGZpcnN0IGV4YW1wbGUgaW4gdGhpcyBzZWN0aW9uLCB3ZSBxdWVyaWVkIGJ5
IFVVSUQgMTU2Mjk1MjQ3MzAwLiBUaGlzIGNvcnJlc3BvbmRzIHRvICR7ZXh0ZXJuYWxMaW5rKCdo
dHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjQ3MzkxL3dlYmtpdCcsICdyMjQ3Mzkx
Jyl9LiBXZSBjb3VsZCBpbnN0ZWFkIHF1ZXJ5IGJ5IHRoZSBjb21taXQgaW5mb3JtYXRpb246YCwK
LSAgICAgICAgICAgIGNvZGVCbG9jaygnaWQ9MjQ3MzkxJnJlcG9zaXRvcnlfaWQ9d2Via2l0JmJy
YW5jaD10cnVuaycpLAorICAgICAgICAgICAgY29kZUJsb2NrKCdpZD0yNDczOTEmcmVwb3NpdG9y
eV9pZD13ZWJraXQmYnJhbmNoPW1haW4nKSwKICAgICAgICAgICAgIGBCdXQsIGFzIG91dGxpbmVk
IGluIHRoZSBvdmVydmlld3MgYWJvdXQgJHtsb2NhbExpbmsoWydRdWVyeSBQYXJhbWV0ZXJzJywg
J0JyYW5jaCddLCAnYnJhbmNoZXMnKX0gYW5kICR7bG9jYWxMaW5rKFsnUXVlcnkgUGFyYW1ldGVy
cycsICdSZXBvc2l0b3J5J10sICdyZXBvc2l0b3JpZXMnKX0sIGVuZHBvaW50cyB3aGljaCBzdXBw
b3J0IHRob3NlIHF1ZXJpZXMgaGF2ZSBkZWZhdWx0cyB3aGljaCBjb3ZlciBtYW55IGNhc2VzLCBz
byB0aGUgcHJldmlvdXMgcXVlcnkgY291bGQgYmUgc2ltcGxpZmllZCB0bzpgLAogICAgICAgICAg
ICAgY29kZUJsb2NrKCdpZD0yNDczOTEnKSwKICAgICAgICAgICAgIGBCZWNhdXNlIGVuZHBvaW50
cyBzdXBwb3J0aW5nIHRpbWUgYXJlIGNvbnZlcnQgZXZlcnl0aGluZyB0byBVVUlEIG9uIHRoZSBi
YWNrZW5kLCB0aGUgcXVlcmllcyB0byB0aGVzZSBlbmRwb2ludHMgYXJlIHF1aXRlIGZsZXhpYmxl
LiBUaGUgZm9sbG93aW5nIGFyZSBhbGwgZXhhbXBsZXMgb2YgdmFsaWQgdGltZSBxdWVyaWVzOmAs
CiAgICAgICAgICAgICBjb2RlQmxvY2soJ2FmdGVyX2lkPTI0NzM5MSZyZXBvc2l0b3J5X2lkPXdl
YmtpdCcpLAogICAgICAgICAgICAgY29kZUJsb2NrKCdhZnRlcl9pZD0yNDczOTAmYmVmb3JlX3Rp
bWVzdGFtcD0xNTYyOTUyNDczJyksCi0gICAgICAgICAgICBjb2RlQmxvY2soJ2JlZm9yZV9pZD0y
NDczOTEmYWZ0ZXJfdXVpZD0xNTYyOTUxNDkxMDAmYmVmb3JlX2JyYW5jaD10cnVuaycpLAorICAg
ICAgICAgICAgY29kZUJsb2NrKCdiZWZvcmVfaWQ9MjQ3MzkxJmFmdGVyX3V1aWQ9MTU2Mjk1MTQ5
MTAwJmJlZm9yZV9icmFuY2g9bWFpbicpLAogICAgICAgICBdLAogICAgIH0KIH0KSW5kZXg6IFRv
b2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxh
dGVzL2ludmVzdGlnYXRlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJp
ZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRt
bAkocmV2aXNpb24gMjc0NTg3KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMTQ4LDYgKzE0OCw3IEBAIGNsYXNzIFN1aXRlRmFpbHVyZXNWaWV3IHsKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBicmFuY2hlcyA9IG5ldyBT
ZXQoY29tbWl0cy5tYXAoY29tbWl0ID0+IGNvbW1pdC5icmFuY2gpKTsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBicmFuY2hlcy5kZWxldGUoJ3RydW5rJyk7CiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJhbmNoZXMuZGVsZXRlKCdtYXN0
ZXInKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmFuY2hlcy5k
ZWxldGUoJ21haW4nKTsKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IHJlcG9zaXRvcmllcyA9IG5ldyBTZXQoY29tbWl0cy5tYXAoY29tbWl0ID0+IGNvbW1p
dC5yZXBvc2l0b3J5X2lkKSk7CiAKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtp
dHNjbXB5L3dlYmtpdHNjbXB5L21vY2tzL3JlbW90ZS9naXRfaHViLnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L21vY2tzL3Jl
bW90ZS9naXRfaHViLnB5CShyZXZpc2lvbiAyNzQ1ODcpCisrKyBUb29scy9TY3JpcHRzL2xpYnJh
cmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9tb2Nrcy9yZW1vdGUvZ2l0X2h1Yi5weQkod29y
a2luZyBjb3B5KQpAQCAtMjMsNyArMjMsNiBAQAogaW1wb3J0IG9zCiBpbXBvcnQganNvbgogCi1m
cm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQogZnJvbSB3ZWJraXRjb3JlcHkgaW1wb3J0IG1v
Y2tzCiBmcm9tIHdlYmtpdHNjbXB5IGltcG9ydCBDb21taXQsIHJlbW90ZSBhcyBzY21yZW1vdGUK
IApAQCAtMTM0LDYgKzEzMyw4IEBAIGNsYXNzIEdpdEh1Yihtb2Nrcy5SZXF1ZXN0cyk6CiAgICAg
ICAgIF0sIHVybD11cmwpCiAKICAgICBkZWYgX2NvbW1pdF9yZXNwb25zZShzZWxmLCB1cmwsIHJl
Zik6CisgICAgICAgIGZyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lLCB0aW1lZGVsdGEKKwog
ICAgICAgICBjb21taXQgPSBzZWxmLmNvbW1pdChyZWYpCiAgICAgICAgIGlmIG5vdCBjb21taXQ6
CiAgICAgICAgICAgICByZXR1cm4gbW9ja3MuUmVzcG9uc2UoCkBAIC0xNDcsMTEgKzE0OCwxMSBA
QCBjbGFzcyBHaXRIdWIobW9ja3MuUmVxdWVzdHMpOgogICAgICAgICAgICAgICAgICdhdXRob3In
OiB7CiAgICAgICAgICAgICAgICAgICAgICduYW1lJzogY29tbWl0LmF1dGhvci5uYW1lLAogICAg
ICAgICAgICAgICAgICAgICAnZW1haWwnOiBjb21taXQuYXV0aG9yLmVtYWlsLAotICAgICAgICAg
ICAgICAgICAgICAnZGF0ZSc6IGRhdGV0aW1lLmZyb210aW1lc3RhbXAoY29tbWl0LnRpbWVzdGFt
cCkuc3RyZnRpbWUoJyVZLSVtLSVkVCVIOiVNOiVTWicpLAorICAgICAgICAgICAgICAgICAgICAn
ZGF0ZSc6IGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAoY29tbWl0LnRpbWVzdGFtcCAtIHRpbWVk
ZWx0YShob3Vycz03KS5zZWNvbmRzKS5zdHJmdGltZSgnJVktJW0tJWRUJUg6JU06JVNaJyksCiAg
ICAgICAgICAgICAgICAgfSwgJ2NvbW1pdHRlcic6IHsKICAgICAgICAgICAgICAgICAgICAgJ25h
bWUnOiBjb21taXQuYXV0aG9yLm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICdlbWFpbCc6IGNv
bW1pdC5hdXRob3IuZW1haWwsCi0gICAgICAgICAgICAgICAgICAgICdkYXRlJzogZGF0ZXRpbWUu
ZnJvbXRpbWVzdGFtcChjb21taXQudGltZXN0YW1wKS5zdHJmdGltZSgnJVktJW0tJWRUJUg6JU06
JVNaJyksCisgICAgICAgICAgICAgICAgICAgICdkYXRlJzogZGF0ZXRpbWUudXRjZnJvbXRpbWVz
dGFtcChjb21taXQudGltZXN0YW1wIC0gdGltZWRlbHRhKGhvdXJzPTcpLnNlY29uZHMpLnN0cmZ0
aW1lKCclWS0lbS0lZFQlSDolTTolU1onKSwKICAgICAgICAgICAgICAgICB9LCAnbWVzc2FnZSc6
IGNvbW1pdC5tZXNzYWdlICsgJ1xuZ2l0LXN2bi1pZDogaHR0cHM6Ly9zdm4uZXhhbXBsZS5vcmcv
cmVwb3NpdG9yeS93ZWJraXQve31Ae30gMjY4ZjQ1Y2MtY2QwOS0wNDEwLWFiM2MtZDUyNjkxYjRk
YmZjXG4nLmZvcm1hdCgKICAgICAgICAgICAgICAgICAgICAgJ3RydW5rJyBpZiBjb21taXQuYnJh
bmNoID09IHNlbGYuZGVmYXVsdF9icmFuY2ggZWxzZSBjb21taXQuYnJhbmNoLCBjb21taXQucmV2
aXNpb24sCiAgICAgICAgICAgICAgICAgKSBpZiBjb21taXQucmV2aXNpb24gZWxzZSAnJywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>423942</attachid>
            <date>2021-03-22 15:02:27 -0700</date>
            <delta_ts>2021-03-23 08:49:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223261-20210322150226.patch</filename>
            <type>text/plain</type>
            <size>28717</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDgwMSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQ0IEBACisyMDIxLTAzLTIyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIFByZWZlciBHaXRIdWIgb3ZlciBzdm4ud2Via2l0
Lm9yZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIz
MjYxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NTQ4MzEyMT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3Vs
dHNkYnB5L3Jlc3VsdHNkYnB5L2NvbnRyb2xsZXIvY29tbWl0X2NvbnRyb2xsZXJfdW5pdHRlc3Qu
cHk6CisgICAgICAgIChDb21taXRDb250cm9sbGVyVGVzdC50ZXN0X2JyYW5jaGVzKTogQ2hhbmdl
IGJyYW5jaGVzIHRvIG1hdGNoIEdpdEh1Yi4KKyAgICAgICAgKENvbW1pdENvbnRyb2xsZXJUZXN0
LnRlc3RfcmVnaXN0ZXJfd2l0aF9wYXJ0aWFsX2NvbW1pdCk6IENvbW1pdHMgYXJlIG5vdyBnaXQt
c3ZuIGNvbW1pdHMuCisgICAgICAgIChDb21taXRDb250cm9sbGVyVGVzdC50ZXN0X3JlZ2lzdGVy
X3dpdGhfZnVsbF9jb21taXQpOiBEZWZhdWx0IGJyYW5jaCBpcyBub3cgbWFpbi4KKyAgICAgICAg
KiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRf
Y29udGV4dC5weToKKyAgICAgICAgKENvbW1pdENvbnRleHQuYnJhbmNoX2tleXNfZm9yX2NvbW1p
dHMpOiBBbnkgYnJhbmNoIHRoYXQgaXMgYSBkZWZhdWx0IGJyYW5jaCBzaG91bGQgYmUgbWF0Y2hl
ZCB0byB0aGUgYXBwcm9wcmlhdGUgZGVmYXVsdCBicmFuY2guCisgICAgICAgIChDb21taXRDb250
ZXh0LnJlZ2lzdGVyX2NvbW1pdCk6IERpdHRvLgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVz
L3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NvbW1pdF9jb250ZXh0X3VuaXR0ZXN0LnB5
OgorICAgICAgICAoQ29tbWl0Q29udGV4dFRlc3QudGVzdF9jb21taXRfYnlfaWQpOiBNYWluIGlz
IHRoZSBuZXcgZGVmYXVsdCBicmFuY2guCisgICAgICAgIChDb21taXRDb250ZXh0VGVzdC50ZXN0
X2NvbW1pdF9ieV91dWlkKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250ZXh0VGVzdC50ZXN0
X2NvbW1pdF9ieV90aW1lc3RhbXApOiBEaXR0by4KKyAgICAgICAgKENvbW1pdENvbnRleHRUZXN0
LnRlc3RfYWxsX2NvbW1pdHNfc3ZuKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250ZXh0VGVz
dC50ZXN0X3N2bl9jb21taXRzX2luX3JhbmdlKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250
ZXh0VGVzdC50ZXN0X3N2bl9jb21taXRzX2JldHdlZW4pOiBEaXR0by4KKyAgICAgICAgKENvbW1p
dENvbnRleHRUZXN0LnRlc3RfY29tbWl0X2Zyb21fc3ZuX3JlcG8pOiBEaXR0by4KKyAgICAgICAg
KENvbW1pdENvbnRleHRUZXN0LnRlc3RfYnJhbmNoZXMpOiBDaGFuZ2UgYnJhbmNoZXMgdG8gbWF0
Y2ggR2l0SHViLgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3Vs
dHNkYnB5L21vZGVsL21vY2tfbW9kZWxfZmFjdG9yeS5weToKKyAgICAgICAgKE1vY2tNb2RlbEZh
Y3Rvcnkud2Via2l0KTogU3VwcG9ydCBib3RoIHN2bi53ZWJraXQub3JnIGFuZCBHaXRIdWIuCisg
ICAgICAgIChNb2NrTW9kZWxGYWN0b3J5LmNyZWF0ZSk6CisgICAgICAgICogU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeS5weToKKyAgICAg
ICAgKFdlYktpdFJlcG9zaXRvcnkuX19pbml0X18pOiBRdWVyeSBib3RoIHN2bi53ZWJraXQub3Jn
IGFuZCBHaXRIdWIuCisgICAgICAgIChXZWJLaXRSZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQpOiBN
YXAgdHJ1bmsgY29tbWl0cyB0byBtYWluLgorICAgICAgICAoV2ViS2l0UmVwb3NpdG9yeS5jb21t
aXQpOiBQcmVmZXIgR2l0SHViIGFuZCBzdXBwb3J0IGhhc2hlcy4KKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5X3VuaXR0
ZXN0LnB5OgorICAgICAgICAoUmVwb3NpdG9yeVRlc3QudGVzdF9zdm4pOiBNYWluIGlzIHRoZSBu
ZXcgZGVmYXVsdCBicmFuY2guCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvdmlldy9hcmNoaXZlX3ZpZXdfdW5pdHRlc3QucHk6CisgICAgICAgIChB
cmNoaXZlVmlld1VuaXR0ZXN0LnJlZ2lzdGVyX2FyY2hpdmUpOiBNYWluIGlzIGFub3RoZXIgZGVm
YXVsdCBicmFuY2guCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvdmlldy9zdGF0aWMvanMvZHJhd2VyLmpzOiAKKyAgICAgICAgKiBTY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9kb2N1bWVudGF0
aW9uLmh0bWw6CisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRtbDoKKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9tb2Nrcy9yZW1vdGUvZ2l0X2h1Yi5w
eToKKyAgICAgICAgKEdpdEh1Yi5fY29tbWl0X3Jlc3BvbnNlKTogU3RhbmRhcmRpemUgdGltZXpv
bmUuCisKIDIwMjEtMDMtMjIgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbY3NzLWNvbnRhaW5dIFBhcnNlIENTUyBjb250YWluIHByb3BlcnR5CkluZGV4OiBUb29scy9T
Y3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9zZXR1cC5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9zZXR1cC5weQkocmV2aXNpb24gMjc0ODAx
KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvc2V0dXAucHkJKHdvcmtp
bmcgY29weSkKQEAgLTMwLDcgKzMwLDcgQEAgZGVmIHJlYWRtZSgpOgogCiBzZXR1cCgKICAgICBu
YW1lPSdyZXN1bHRzZGJweScsCi0gICAgdmVyc2lvbj0nMi4wLjMnLAorICAgIHZlcnNpb249JzIu
MC40JywKICAgICBkZXNjcmlwdGlvbj0nTGlicmFyeSBmb3IgdmlzdWFsaXppbmcsIHByb2Nlc3Np
bmcgYW5kIHN0b3JpbmcgdGVzdCByZXN1bHRzLicsCiAgICAgbG9uZ19kZXNjcmlwdGlvbj1yZWFk
bWUoKSwKICAgICBjbGFzc2lmaWVycz1bCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9y
ZXN1bHRzZGJweS9yZXN1bHRzZGJweS9fX2luaXRfXy5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9T
Y3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9fX2luaXRfXy5weQkocmV2
aXNpb24gMjc0ODAxKQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvX19pbml0X18ucHkJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDYgQEAgZXhj
ZXB0IEltcG9ydEVycm9yOgogICAgICAgICAiUGxlYXNlIGluc3RhbGwgd2Via2l0Y29yZXB5IHdp
dGggYHBpcCBpbnN0YWxsIHdlYmtpdGNvcmVweSAtLWV4dHJhLWluZGV4LXVybCA8cGFja2FnZSBp
bmRleCBVUkw+YCIKICAgICApCiAKLXZlcnNpb24gPSBWZXJzaW9uKDIsIDAsIDMpCit2ZXJzaW9u
ID0gVmVyc2lvbigyLCAwLCA0KQogCiBuYW1lID0gJ3Jlc3VsdHNkYnB5JwpJbmRleDogVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvY29udHJvbGxlci9jb21t
aXRfY29udHJvbGxlcl91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9jb250cm9sbGVyL2NvbW1pdF9jb250cm9s
bGVyX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyNzQ4MDEpCisrKyBUb29scy9TY3JpcHRzL2xpYnJh
cmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9jb250cm9sbGVyL2NvbW1pdF9jb250cm9sbGVy
X3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC03Niw3ICs3Niw3IEBAIGNsYXNzIENvbW1p
dENvbnRyb2xsZXJUZXN0KEZsYXNrVGVzdENhc2UKICAgICAgICAgcmVzcG9uc2UgPSBjbGllbnQu
Z2V0KHNlbGYuVVJMICsgJy9hcGkvY29tbWl0cy9icmFuY2hlcycpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwocmVzcG9uc2Uuc3RhdHVzX2NvZGUsIDIwMCkKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChkaWN0KAotICAgICAgICAgICAgd2Via2l0PVsnYnJhbmNoLWEnLCAnYnJhbmNoLWInLCAn
dGFncy90YWctMScsICd0YWdzL3RhZy0yJywgJ3RydW5rJ10sCisgICAgICAgICAgICB3ZWJraXQ9
WydicmFuY2gtYScsICdicmFuY2gtYicsICdtYWluJ10sCiAgICAgICAgICAgICBzYWZhcmk9Wydi
cmFuY2gtYScsICdicmFuY2gtYicsICdtYWluJ10pLCByZXNwb25zZS5qc29uKCkpCiAKICAgICAg
ICAgcmVzcG9uc2UgPSBjbGllbnQuZ2V0KHNlbGYuVVJMICsgJy9hcGkvY29tbWl0cy9icmFuY2hl
cz9icmFuY2g9YnJhbmNoJykKQEAgLTEwMiw3ICsxMDIsNyBAQCBjbGFzcyBDb21taXRDb250cm9s
bGVyVGVzdChGbGFza1Rlc3RDYXNlCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIwMCwg
cmVzcG9uc2Uuc3RhdHVzX2NvZGUpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAg
ICAgICAgICAgICAgIENvbW1pdC5mcm9tX2pzb24ocmVzcG9uc2UuanNvbigpWzBdKS5tZXNzYWdl
LAotICAgICAgICAgICAgICAgICdQYXRjaCBTZXJpZXNcbicsCisgICAgICAgICAgICAgICAgJ1Bh
dGNoIFNlcmllc1xuXG5naXQtc3ZuLWlkOiBodHRwczovL3N2bi5leGFtcGxlLm9yZy9yZXBvc2l0
b3J5L3dlYmtpdC90cnVua0BOb25lIDI2OGY0NWNjLWNkMDktMDQxMC1hYjNjLWQ1MjY5MWI0ZGJm
Y1xuJywKICAgICAgICAgICAgICkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNDA0LCBj
bGllbnQucG9zdChzZWxmLlVSTCArICcvYXBpL2NvbW1pdHMnLCBkYXRhPWRpY3QocmVwb3NpdG9y
eV9pZD0nc2FmYXJpJywgaWQ9J2FhYWFhYWFhYWFhYWEnKSkuc3RhdHVzX2NvZGUpCiAKQEAgLTEz
NCw3ICsxMzQsNyBAQCBjbGFzcyBDb21taXRDb250cm9sbGVyVGVzdChGbGFza1Rlc3RDYXNlCiAK
ICAgICAgICAgc3ZuX2NvbW1pdCA9IENvbW1pdCgKICAgICAgICAgICAgIHJlcG9zaXRvcnlfaWQ9
J3dlYmtpdCcsCi0gICAgICAgICAgICBicmFuY2g9J3RydW5rJywKKyAgICAgICAgICAgIGJyYW5j
aD0nbWFpbicsCiAgICAgICAgICAgICBpZD0nMTIzNCcsCiAgICAgICAgICAgICB0aW1lc3RhbXA9
MTYwMTY1MDEwMCwKICAgICAgICAgICAgIG9yZGVyPTAsCkluZGV4OiBUb29scy9TY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRfY29udGV4dC5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRz
ZGJweS9tb2RlbC9jb21taXRfY29udGV4dC5weQkocmV2aXNpb24gMjc0ODAxKQorKysgVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY29tbWl0X2Nv
bnRleHQucHkJKHdvcmtpbmcgY29weSkKQEAgLTE2MCw3ICsxNjAsNyBAQCBjbGFzcyBDb21taXRD
b250ZXh0KG9iamVjdCk6CiAgICAgICAgICMgdGhpcyBjYXNlLCB0cmFjayBicmFuY2hlcyB3aGlj
aCBhcmUgbm90IHRoZSBkZWZhdWx0IGJyYW5jaCBpbmRlcGVuZGVudGx5LgogICAgICAgICBmb3Ig
Y29tbWl0IGluIGNvbW1pdHM6CiAgICAgICAgICAgICByZXBvID0gc2VsZi5yZXBvc2l0b3JpZXMu
Z2V0KGNvbW1pdC5yZXBvc2l0b3J5X2lkLCBSZXBvc2l0b3J5KGtleT1jb21taXQucmVwb3NpdG9y
eV9pZCkpCi0gICAgICAgICAgICBpZiBjb21taXQuYnJhbmNoICE9IHJlcG8uZGVmYXVsdF9icmFu
Y2g6CisgICAgICAgICAgICBpZiBjb21taXQuYnJhbmNoIG5vdCBpbiBTY21CYXNlLkRFRkFVTFRf
QlJBTkNIRVM6CiAgICAgICAgICAgICAgICAgYnJhbmNoZXMuYWRkKGNvbW1pdC5icmFuY2gpCiAg
ICAgICAgIGlmIGxlbihicmFuY2hlcykgPT0gMDoKICAgICAgICAgICAgIGJyYW5jaGVzLmFkZChz
ZWxmLkRFRkFVTFRfQlJBTkNIX0tFWSkKQEAgLTM3OSw2ICszNzksOSBAQCBjbGFzcyBDb21taXRD
b250ZXh0KG9iamVjdCk6CiAgICAgICAgICAgICBpZiBjb21taXQucmVwb3NpdG9yeV9pZCBub3Qg
aW4gc2VsZi5yZXBvc2l0b3JpZXM6CiAgICAgICAgICAgICAgICAgc2VsZi5yZXBvc2l0b3JpZXNb
Y29tbWl0LnJlcG9zaXRvcnlfaWRdID0gUmVwb3NpdG9yeShrZXk9Y29tbWl0LnJlcG9zaXRvcnlf
aWQpCiAKKyAgICAgICAgICAgIGlmIGNvbW1pdC5icmFuY2ggaW4gU2NtQmFzZS5ERUZBVUxUX0JS
QU5DSEVTOgorICAgICAgICAgICAgICAgIGNvbW1pdC5icmFuY2ggPSBzZWxmLnJlcG9zaXRvcmll
c1tjb21taXQucmVwb3NpdG9yeV9pZF0uZGVmYXVsdF9icmFuY2gKKwogICAgICAgICAgICAgZm9y
IG9sZCBpbiBbc2VsZi5Db21taXRCeUlELCBzZWxmLkNvbW1pdEJ5VXVpZEFzY2VuZGluZywgc2Vs
Zi5Db21taXRCeVV1aWREZXNjZW5kaW5nXToKICAgICAgICAgICAgICAgICBzZWxmLmNhc3NhbmRy
YS5pbnNlcnRfcm93KAogICAgICAgICAgICAgICAgICAgICBvbGQuX190YWJsZV9uYW1lX18sCkBA
IC0zOTAsNyArMzkzLDcgQEAgY2xhc3MgQ29tbWl0Q29udGV4dChvYmplY3QpOgogICAgICAgICAg
ICAgICAgICAgICBtZXNzYWdlPWNvbW1pdC5tZXNzYWdlLAogICAgICAgICAgICAgICAgICkKIAot
ICAgICAgICAgICAgZm9yIHRhYmxlIGluIFtzZWxmLkNvbW1pdEJ5VXVpZEFzY2VuZGluZ01rMiwg
c2VsZi5Db21taXRCeVV1aWREZXNjZW5kaW5nTWsyLCBzZWxmLkJyYW5jaGVzXToKKyAgICAgICAg
ICAgIGZvciB0YWJsZSBpbiBbc2VsZi5Db21taXRCeVV1aWRBc2NlbmRpbmdNazIsIHNlbGYuQ29t
bWl0QnlVdWlkRGVzY2VuZGluZ01rMl06CiAgICAgICAgICAgICAgICAgc2VsZi5jYXNzYW5kcmEu
aW5zZXJ0X3JvdygKICAgICAgICAgICAgICAgICAgICAgdGFibGUuX190YWJsZV9uYW1lX18sCiAg
ICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnlfaWQ9Y29tbWl0LnJlcG9zaXRvcnlfaWQsCklu
ZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2Rl
bC9jb21taXRfY29udGV4dF91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRfY29udGV4dF91
bml0dGVzdC5weQkocmV2aXNpb24gMjc0ODAxKQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMv
cmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY29tbWl0X2NvbnRleHRfdW5pdHRlc3QucHkJ
KHdvcmtpbmcgY29weSkKQEAgLTc2LDkgKzc2LDkgQEAgY2xhc3MgQ29tbWl0Q29udGV4dFRlc3Qo
V2FpdEZvckRvY2tlclRlcwogCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAg
ICAgICAgICAgIFtzZWxmLnN2bl9yZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NildLAotICAg
ICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X2lkKHJlcG9zaXRvcnlf
aWQ9J3dlYmtpdCcsIGJyYW5jaD0ndHJ1bmsnLCBjb21taXRfaWQ9NiksCisgICAgICAgICAgICAg
ICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfaWQocmVwb3NpdG9yeV9pZD0nd2Via2l0
JywgYnJhbmNoPSdtYWluJywgY29tbWl0X2lkPTYpLAogICAgICAgICAgICAgKQotICAgICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgwLCBsZW4oc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlf
aWQocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycsIGNvbW1pdF9pZD0nMTIz
NCcpKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMCwgbGVuKHNlbGYuZGF0YWJhc2Uu
ZmluZF9jb21taXRzX2J5X2lkKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbics
IGNvbW1pdF9pZD0nMTIzNCcpKSkKIAogICAgIEBXYWl0Rm9yRG9ja2VyVGVzdENhc2UubW9ja19p
Zl9ub19kb2NrZXIobW9ja19yZWRpcz1GYWtlU3RyaWN0UmVkaXMsIG1vY2tfY2Fzc2FuZHJhPU1v
Y2tDYXNzYW5kcmFDb250ZXh0KQogICAgIGRlZiB0ZXN0X2NvbW1pdF9ieV91dWlkKHNlbGYsIHJl
ZGlzPVN0cmljdFJlZGlzLCBjYXNzYW5kcmE9Q2Fzc2FuZHJhQ29udGV4dCk6CkBAIC05Miw3ICs5
Miw3IEBAIGNsYXNzIENvbW1pdENvbnRleHRUZXN0KFdhaXRGb3JEb2NrZXJUZXMKICAgICAgICAg
ICAgICkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICAgICAgW3Nl
bGYuc3ZuX3JlcG9zaXRvcnkuY29tbWl0X2Zvcl9pZChpZD02KV0sCi0gICAgICAgICAgICAgICAg
c2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfdXVpZChyZXBvc2l0b3J5X2lkPSd3ZWJraXQn
LCBicmFuY2g9J3RydW5rJywgdXVpZD0xNjAxNjM5OTAwMDApLAorICAgICAgICAgICAgICAgIHNl
bGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X3V1aWQocmVwb3NpdG9yeV9pZD0nd2Via2l0Jywg
YnJhbmNoPSdtYWluJywgdXVpZD0xNjAxNjM5OTAwMDApLAogICAgICAgICAgICAgKQogCiAgICAg
QFdhaXRGb3JEb2NrZXJUZXN0Q2FzZS5tb2NrX2lmX25vX2RvY2tlcihtb2NrX3JlZGlzPUZha2VT
dHJpY3RSZWRpcywgbW9ja19jYXNzYW5kcmE9TW9ja0Nhc3NhbmRyYUNvbnRleHQpCkBAIC0xMDcs
NyArMTA3LDcgQEAgY2xhc3MgQ29tbWl0Q29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwogICAg
ICAgICAgICAgKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAgICAgICAgICAg
ICBbc2VsZi5zdm5fcmVwb3NpdG9yeS5jb21taXRfZm9yX2lkKGlkPTYpXSwKLSAgICAgICAgICAg
ICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV90aW1lc3RhbXAocmVwb3NpdG9yeV9p
ZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycsIHRpbWVzdGFtcD0xNjAxNjM5OTAwKSwKKyAgICAg
ICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV90aW1lc3RhbXAocmVwb3Np
dG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSdtYWluJywgdGltZXN0YW1wPTE2MDE2Mzk5MDApLAog
ICAgICAgICAgICAgKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4oc2VsZi5k
YXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfdGltZXN0YW1wKHJlcG9zaXRvcnlfaWQ9J3NhZmFyaScs
IGJyYW5jaD0nbWFpbicsIHRpbWVzdGFtcD0xNjAxNjY4MDAwKSkpCiAKQEAgLTEyNywxMCArMTI3
LDEwIEBAIGNsYXNzIENvbW1pdENvbnRleHRUZXN0KFdhaXRGb3JEb2NrZXJUZXMKICAgICAgICAg
d2l0aCBNb2NrTW9kZWxGYWN0b3J5LnNhZmFyaSgpLCBNb2NrTW9kZWxGYWN0b3J5LndlYmtpdCgp
OgogICAgICAgICAgICAgc2VsZi5pbml0X2RhdGFiYXNlKHJlZGlzPXJlZGlzLCBjYXNzYW5kcmE9
Y2Fzc2FuZHJhKQogICAgICAgICAgICAgc2VsZi5hZGRfYWxsX2NvbW1pdHNfdG9fZGF0YWJhc2Uo
KQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg0LCBsZW4oc2VsZi5kYXRhYmFzZS5maW5k
X2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycp
KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNCwgbGVuKHNlbGYuZGF0YWJhc2UuZmlu
ZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbicp
KSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICAgICAgW3NlbGYu
c3ZuX3JlcG9zaXRvcnkuY29tbWl0X2Zvcl9pZChpZD02KSwgc2VsZi5zdm5fcmVwb3NpdG9yeS5j
b21taXRfZm9yX2lkKGlkPTQpXSwKLSAgICAgICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRf
Y29tbWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J3RydW5rJywg
bGltaXQ9MiksCisgICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfaW5f
cmFuZ2UocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSdtYWluJywgbGltaXQ9MiksCiAg
ICAgICAgICAgICApCiAKICAgICBAV2FpdEZvckRvY2tlclRlc3RDYXNlLm1vY2tfaWZfbm9fZG9j
a2VyKG1vY2tfcmVkaXM9RmFrZVN0cmljdFJlZGlzLCBtb2NrX2Nhc3NhbmRyYT1Nb2NrQ2Fzc2Fu
ZHJhQ29udGV4dCkKQEAgLTE1MCw3ICsxNTAsNyBAQCBjbGFzcyBDb21taXRDb250ZXh0VGVzdChX
YWl0Rm9yRG9ja2VyVGVzCiAgICAgICAgICAgICBzZWxmLmFkZF9hbGxfY29tbWl0c190b19kYXRh
YmFzZSgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgICAgIFtz
ZWxmLnN2bl9yZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NiksIHNlbGYuc3ZuX3JlcG9zaXRv
cnkuY29tbWl0X2Zvcl9pZChpZD00KV0sCi0gICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5m
aW5kX2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVu
aycsIGJlZ2luPTE2MDE2Mzc5MDAsIGVuZD0xNjAxNjM5OTAwKSwKKyAgICAgICAgICAgICAgICBz
ZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3ZWJraXQn
LCBicmFuY2g9J21haW4nLCBiZWdpbj0xNjAxNjM3OTAwLCBlbmQ9MTYwMTYzOTkwMCksCiAgICAg
ICAgICAgICApCiAKICAgICBAV2FpdEZvckRvY2tlclRlc3RDYXNlLm1vY2tfaWZfbm9fZG9ja2Vy
KG1vY2tfcmVkaXM9RmFrZVN0cmljdFJlZGlzLCBtb2NrX2Nhc3NhbmRyYT1Nb2NrQ2Fzc2FuZHJh
Q29udGV4dCkKQEAgLTE3Nyw3ICsxNzcsNyBAQCBjbGFzcyBDb21taXRDb250ZXh0VGVzdChXYWl0
Rm9yRG9ja2VyVGVzCiAgICAgICAgICAgICAgICAgc2VsZi5zdm5fcmVwb3NpdG9yeS5jb21taXRf
Zm9yX2lkKGlkPTQpLAogICAgICAgICAgICAgICAgIHNlbGYuc3ZuX3JlcG9zaXRvcnkuY29tbWl0
X2Zvcl9pZChpZD0yKSwKICAgICAgICAgICAgIF0KLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoY29tbWl0cywgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9y
eV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycsIGJlZ2luPWNvbW1pdHNbLTFdLCBlbmQ9Y29t
bWl0c1swXSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdHMsIHNlbGYuZGF0
YWJhc2UuZmluZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5j
aD0nbWFpbicsIGJlZ2luPWNvbW1pdHNbLTFdLCBlbmQ9Y29tbWl0c1swXSkpCiAKICAgICBAV2Fp
dEZvckRvY2tlclRlc3RDYXNlLm1vY2tfaWZfbm9fZG9ja2VyKG1vY2tfcmVkaXM9RmFrZVN0cmlj
dFJlZGlzLCBtb2NrX2Nhc3NhbmRyYT1Nb2NrQ2Fzc2FuZHJhQ29udGV4dCkKICAgICBkZWYgdGVz
dF9jb21taXRfZnJvbV9zdGFzaF9yZXBvKHNlbGYsIHJlZGlzPVN0cmljdFJlZGlzLCBjYXNzYW5k
cmE9Q2Fzc2FuZHJhQ29udGV4dCk6CkBAIC0xOTYsNyArMTk2LDcgQEAgY2xhc3MgQ29tbWl0Q29u
dGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwogICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5yZWdp
c3Rlcl9wYXJ0aWFsX2NvbW1pdCgnd2Via2l0JywgcmV2aXNpb249NikKICAgICAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICAgICAgW3NlbGYuc3ZuX3JlcG9zaXRvcnkuY29t
bWl0X2Zvcl9pZChpZD02KV0sCi0gICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2Nv
bW1pdHNfYnlfaWQocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycsIGNvbW1p
dF9pZD02KSwKKyAgICAgICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV9p
ZChyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J21haW4nLCBjb21taXRfaWQ9NiksCiAg
ICAgICAgICAgICApCiAKICAgICBAV2FpdEZvckRvY2tlclRlc3RDYXNlLm1vY2tfaWZfbm9fZG9j
a2VyKG1vY2tfcmVkaXM9RmFrZVN0cmljdFJlZGlzLCBtb2NrX2Nhc3NhbmRyYT1Nb2NrQ2Fzc2Fu
ZHJhQ29udGV4dCkKQEAgLTIwNiw3ICsyMDYsNyBAQCBjbGFzcyBDb21taXRDb250ZXh0VGVzdChX
YWl0Rm9yRG9ja2VyVGVzCiAgICAgICAgICAgICBzZWxmLmFkZF9hbGxfY29tbWl0c190b19kYXRh
YmFzZSgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnYnJhbmNoLWEnLCAnYnJhbmNo
LWInLCAnbWFpbiddLCBzZWxmLmRhdGFiYXNlLmJyYW5jaGVzKHJlcG9zaXRvcnlfaWQ9J3NhZmFy
aScpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKLSAgICAgICAgICAgICAgICBbJ2Jy
YW5jaC1hJywgJ2JyYW5jaC1iJywgJ3RhZ3MvdGFnLTEnLCAndGFncy90YWctMicsICd0cnVuaydd
LAorICAgICAgICAgICAgICAgIFsnYnJhbmNoLWEnLCAnYnJhbmNoLWInLCAnbWFpbiddLAogICAg
ICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuYnJhbmNoZXMocmVwb3NpdG9yeV9pZD0nd2Via2l0
JyksCiAgICAgICAgICAgICApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnYnJhbmNo
LWEnLCAnYnJhbmNoLWInXSwgc2VsZi5kYXRhYmFzZS5icmFuY2hlcyhyZXBvc2l0b3J5X2lkPSdz
YWZhcmknLCBicmFuY2g9J2JyYW5jaCcpKQpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMv
cmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvbW9ja19tb2RlbF9mYWN0b3J5LnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5
L21vZGVsL21vY2tfbW9kZWxfZmFjdG9yeS5weQkocmV2aXNpb24gMjc0ODAxKQorKysgVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvbW9ja19tb2Rl
bF9mYWN0b3J5LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2ICsyMSw3IEBACiAjIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAKIGltcG9ydCBiYXNlNjQKK2ltcG9ydCBjb250ZXh0bGliCiBpbXBvcnQgaW8KIGltcG9y
dCB0aW1lCiAKQEAgLTI5LDcgKzMwLDcgQEAgZnJvbSByZXN1bHRzZGJweS5tb2RlbC5jb25maWd1
cmF0aW9uX2NvbgogZnJvbSByZXN1bHRzZGJweS5tb2RlbC5tb2RlbCBpbXBvcnQgTW9kZWwKIGZy
b20gcmVzdWx0c2RicHkubW9kZWwucmVwb3NpdG9yeSBpbXBvcnQgU3Rhc2hSZXBvc2l0b3J5LCBX
ZWJLaXRSZXBvc2l0b3J5CiAKLWZyb20gd2Via2l0c2NtcHkgaW1wb3J0IG1vY2tzCitmcm9tIHdl
YmtpdHNjbXB5IGltcG9ydCBtb2NrcywgQ29tbWl0CiAKIAogY2xhc3MgTW9ja01vZGVsRmFjdG9y
eShvYmplY3QpOgpAQCAtNjUsMTYgKzY2LDQ0IEBAIGNsYXNzIE1vY2tNb2RlbEZhY3Rvcnkob2Jq
ZWN0KToKICAgICAgICAgcmV0dXJuIG1vY2tzLnJlbW90ZS5CaXRCdWNrZXQocmVtb3RlPSdiaXRi
dWNrZXQuZXhhbXBsZS5jb20vcHJvamVjdHMvU0FGQVJJL3JlcG9zL3NhZmFyaScpCiAKICAgICBA
Y2xhc3NtZXRob2QKKyAgICBAY29udGV4dGxpYi5jb250ZXh0bWFuYWdlcgogICAgIGRlZiB3ZWJr
aXQoY2xzKToKLSAgICAgICAgcmV0dXJuIG1vY2tzLnJlbW90ZS5Tdm4ocmVtb3RlPSdzdm4ud2Vi
a2l0Lm9yZy9yZXBvc2l0b3J5L3dlYmtpdCcpCisgICAgICAgIHN2biA9IG1vY2tzLnJlbW90ZS5T
dm4ocmVtb3RlPSdzdm4ud2Via2l0Lm9yZy9yZXBvc2l0b3J5L3dlYmtpdCcpCisgICAgICAgIGdp
dGh1YiA9IG1vY2tzLnJlbW90ZS5HaXRIdWIocmVtb3RlPSdnaXRodWIuY29tL1dlYktpdC9XZWJL
aXQnLCBnaXRfc3ZuPVRydWUpCisgICAgICAgIGdpdGh1Yi5jb21taXRzID0ge30KKworICAgICAg
ICBmb3IgYnJhbmNoLCBjb21taXRzIGluIHN2bi5jb21taXRzLml0ZW1zKCk6CisgICAgICAgICAg
ICBpZiAndGFnJyBpbiBicmFuY2g6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAg
ICAgIGlmIGJyYW5jaCA9PSAndHJ1bmsnOgorICAgICAgICAgICAgICAgIGJyYW5jaCA9ICdtYWlu
JworICAgICAgICAgICAgZ2l0aHViLmNvbW1pdHNbYnJhbmNoXSA9IFtdCisKKyAgICAgICAgICAg
IGZvciBjb21taXQgaW4gY29tbWl0czoKKyAgICAgICAgICAgICAgICBnaXRodWIuY29tbWl0c1ti
cmFuY2hdLmFwcGVuZChDb21taXQoCisgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnlfaWQ9
Y29tbWl0LnJlcG9zaXRvcnlfaWQsCisgICAgICAgICAgICAgICAgICAgIGJyYW5jaD1icmFuY2gs
CisgICAgICAgICAgICAgICAgICAgIGF1dGhvcj1jb21taXQuYXV0aG9yLAorICAgICAgICAgICAg
ICAgICAgICBtZXNzYWdlPWNvbW1pdC5tZXNzYWdlLAorICAgICAgICAgICAgICAgICAgICB0aW1l
c3RhbXA9Y29tbWl0LnRpbWVzdGFtcCwKKyAgICAgICAgICAgICAgICAgICAgb3JkZXI9Y29tbWl0
Lm9yZGVyLAorICAgICAgICAgICAgICAgICAgICBpZGVudGlmaWVyPWNvbW1pdC5pZGVudGlmaWVy
LAorICAgICAgICAgICAgICAgICAgICBicmFuY2hfcG9pbnQ9Y29tbWl0LmJyYW5jaF9wb2ludCwK
KyAgICAgICAgICAgICAgICAgICAgcmV2aXNpb249Y29tbWl0LnJldmlzaW9uLAorICAgICAgICAg
ICAgICAgICAgICBoYXNoPWNvbW1pdC5oYXNoLAorICAgICAgICAgICAgICAgICkpCisKKyAgICAg
ICAgd2l0aCBzdm4sIGdpdGh1YjoKKyAgICAgICAgICAgIHlpZWxkIGdpdGh1YgogCiAgICAgQGNs
YXNzbWV0aG9kCiAgICAgZGVmIGNyZWF0ZShjbHMsIHJlZGlzLCBjYXNzYW5kcmEsIGFzeW5jX3By
b2Nlc3Npbmc9RmFsc2UpOgogICAgICAgICBvbGRlc3RfY29tbWl0ID0gdGltZS50aW1lKCkKLSAg
ICAgICAgZm9yIHJlcG8gaW4gW2Nscy5zYWZhcmkoKSwgY2xzLndlYmtpdCgpXToKLSAgICAgICAg
ICAgIGZvciBjb21taXRzIGluIHJlcG8uY29tbWl0cy52YWx1ZXMoKToKLSAgICAgICAgICAgICAg
ICBmb3IgY29tbWl0IGluIGNvbW1pdHM6Ci0gICAgICAgICAgICAgICAgICAgIG9sZGVzdF9jb21t
aXQgPSBtaW4ob2xkZXN0X2NvbW1pdCwgY29tbWl0LnRpbWVzdGFtcCkKKyAgICAgICAgd2l0aCBj
bHMuc2FmYXJpKCkgYXMgc2FmYXJpLCBjbHMud2Via2l0KCkgYXMgd2Via2l0OgorICAgICAgICAg
ICAgZm9yIHJlcG8gaW4gW3NhZmFyaSwgd2Via2l0XToKKyAgICAgICAgICAgICAgICBmb3IgY29t
bWl0cyBpbiByZXBvLmNvbW1pdHMudmFsdWVzKCk6CisgICAgICAgICAgICAgICAgICAgIGZvciBj
b21taXQgaW4gY29tbWl0czoKKyAgICAgICAgICAgICAgICAgICAgICAgIG9sZGVzdF9jb21taXQg
PSBtaW4ob2xkZXN0X2NvbW1pdCwgY29tbWl0LnRpbWVzdGFtcCkKIAogICAgICAgICBtb2RlbCA9
IE1vZGVsKAogICAgICAgICAgICAgcmVkaXM9cmVkaXMsCkluZGV4OiBUb29scy9TY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5LnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5
L21vZGVsL3JlcG9zaXRvcnkucHkJKHJldmlzaW9uIDI3NDgwMSkKKysrIFRvb2xzL1NjcmlwdHMv
bGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL3JlcG9zaXRvcnkucHkJKHdv
cmtpbmcgY29weSkKQEAgLTgxLDE4ICs4MSwxOSBAQCBjbGFzcyBTdGFzaFJlcG9zaXRvcnkoUmVw
b3NpdG9yeSk6CiBjbGFzcyBXZWJLaXRSZXBvc2l0b3J5KFJlcG9zaXRvcnkpOgogCiAgICAgZGVm
IF9faW5pdF9fKHNlbGYpOgotICAgICAgICBzZWxmLnJlbW90ZSA9IHJlbW90ZS5Tdm4oJ2h0dHBz
Oi8vc3ZuLndlYmtpdC5vcmcvcmVwb3NpdG9yeS93ZWJraXQnKQorICAgICAgICBzZWxmLnN2biA9
IHJlbW90ZS5Tdm4oJ2h0dHBzOi8vc3ZuLndlYmtpdC5vcmcvcmVwb3NpdG9yeS93ZWJraXQnKQor
ICAgICAgICBzZWxmLmdpdGh1YiA9IHJlbW90ZS5HaXRIdWIoJ2h0dHBzOi8vZ2l0aHViLmNvbS9X
ZWJLaXQvV2ViS2l0JykKICAgICAgICAgc3VwZXIoV2ViS2l0UmVwb3NpdG9yeSwgc2VsZikuX19p
bml0X18oCiAgICAgICAgICAgICBrZXk9J3dlYmtpdCcsCi0gICAgICAgICAgICBkZWZhdWx0X2Jy
YW5jaD1zZWxmLnJlbW90ZS5kZWZhdWx0X2JyYW5jaCwKKyAgICAgICAgICAgIGRlZmF1bHRfYnJh
bmNoPXNlbGYuZ2l0aHViLmRlZmF1bHRfYnJhbmNoLAogICAgICAgICApCiAKICAgICBkZWYgY29t
bWl0X2Zvcl9pZChzZWxmLCBpZCk6Ci0gICAgICAgIGNvbW1pdCA9IHNlbGYucmVtb3RlLmNvbW1p
dChyZXZpc2lvbj1pZCwgaW5jbHVkZV9pZGVudGlmaWVyPUZhbHNlKQorICAgICAgICBjb21taXQg
PSBzZWxmLnN2bi5jb21taXQocmV2aXNpb249aWQsIGluY2x1ZGVfaWRlbnRpZmllcj1GYWxzZSkK
ICAgICAgICAgcmV0dXJuIENvbW1pdCgKICAgICAgICAgICAgIHJlcG9zaXRvcnlfaWQ9c2VsZi5r
ZXksCiAgICAgICAgICAgICBpZD1jb21taXQucmV2aXNpb24sCi0gICAgICAgICAgICBicmFuY2g9
Y29tbWl0LmJyYW5jaCwKKyAgICAgICAgICAgIGJyYW5jaD1zZWxmLmRlZmF1bHRfYnJhbmNoIGlm
IGNvbW1pdC5icmFuY2ggPT0gJ3RydW5rJyBlbHNlIGNvbW1pdC5icmFuY2gsCiAgICAgICAgICAg
ICB0aW1lc3RhbXA9Y29tbWl0LnRpbWVzdGFtcCwKICAgICAgICAgICAgIG9yZGVyPWNvbW1pdC5v
cmRlciwKICAgICAgICAgICAgIGNvbW1pdHRlcj1jb21taXQuYXV0aG9yLmVtYWlsLApAQCAtMTAy
LDExICsxMDMsMjYgQEAgY2xhc3MgV2ViS2l0UmVwb3NpdG9yeShSZXBvc2l0b3J5KToKICAgICBk
ZWYgY29tbWl0KHNlbGYsIHJlZj1Ob25lLCByZXZpc2lvbj1Ob25lLCBoYXNoPU5vbmUsIGlkZW50
aWZpZXI9Tm9uZSwgZmFzdD1UcnVlKToKICAgICAgICAgaWYgaWRlbnRpZmllcjoKICAgICAgICAg
ICAgIGZhc3QgPSBGYWxzZQorCiAgICAgICAgIGlmIHJlZjoKICAgICAgICAgICAgIGlmIGlzaW5z
dGFuY2UocmVmLCBpbnQpIG9yIHJlZi5pc2RpZ2l0KCk6Ci0gICAgICAgICAgICAgICAgcmVmID0g
J3J7fScuZm9ybWF0KHJlZikKLSAgICAgICAgICAgIHJldHVybiBzZWxmLnJlbW90ZS5maW5kKHJl
ZiwgaW5jbHVkZV9pZGVudGlmaWVyPW5vdCBmYXN0KQotICAgICAgICByZXR1cm4gc2VsZi5yZW1v
dGUuY29tbWl0KHJldmlzaW9uPXJldmlzaW9uLCBoYXNoPWhhc2gsIGlkZW50aWZpZXI9aWRlbnRp
ZmllciwgaW5jbHVkZV9pZGVudGlmaWVyPW5vdCBmYXN0KQorICAgICAgICAgICAgICAgIHJlc3Vs
dCA9IHNlbGYuc3ZuLmZpbmQoJ3J7fScuZm9ybWF0KHJlZiksIGluY2x1ZGVfaWRlbnRpZmllcj1u
b3QgZmFzdCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gc2Vs
Zi5naXRodWIuZmluZChyZWYsIGluY2x1ZGVfaWRlbnRpZmllcj1ub3QgZmFzdCkKKyAgICAgICAg
ZWxzZToKKyAgICAgICAgICAgIHJlc3VsdCA9IChzZWxmLnN2biBpZiByZXZpc2lvbiBhbmQgbm90
IGhhc2ggZWxzZSBzZWxmLmdpdGh1YikuY29tbWl0KAorICAgICAgICAgICAgICAgIHJldmlzaW9u
PU5vbmUgaWYgaGFzaCBlbHNlIHJldmlzaW9uLAorICAgICAgICAgICAgICAgIGhhc2g9aGFzaCwK
KyAgICAgICAgICAgICAgICBpZGVudGlmaWVyPU5vbmUgaWYgbm90IGhhc2ggYW5kIG5vdCByZXZp
c2lvbiBlbHNlIGlkZW50aWZpZXIsCisgICAgICAgICAgICAgICAgaW5jbHVkZV9pZGVudGlmaWVy
PW5vdCBmYXN0LAorICAgICAgICAgICAgKQorCisgICAgICAgIGlmIG5vdCBmYXN0IGFuZCByZXN1
bHQuaGFzaCBhbmQgcmVzdWx0LmlkZW50aWZpZXI6CisgICAgICAgICAgICByZXN1bHQgPSBzZWxm
LmdpdGh1Yi5jb21taXQoaWRlbnRpZmllcj1zdHIocmVzdWx0KSkKKworICAgICAgICBpZiByZXN1
bHQuYnJhbmNoIGluIHNlbGYuc3ZuLkRFRkFVTFRfQlJBTkNIRVM6CisgICAgICAgICAgICByZXN1
bHQuYnJhbmNoID0gc2VsZi5kZWZhdWx0X2JyYW5jaAorICAgICAgICByZXR1cm4gcmVzdWx0CiAK
ICAgICBkZWYgdXJsX2Zvcl9jb21taXQoc2VsZiwgY29tbWl0KToKICAgICAgICAgcmV0dXJuIGYn
aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvcntjb21taXR9JwpJbmRleDogVG9vbHMvU2NyaXB0
cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeV91bml0
dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJw
eS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5X3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyNzQ4
MDEpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9t
b2RlbC9yZXBvc2l0b3J5X3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3
IEBAIGNsYXNzIFJlcG9zaXRvcnlUZXN0KFdhaXRGb3JEb2NrZXJUZXN0Q2EKICAgICAgICAgICAg
IGNvbW1pdCA9IHN2bl9yZXBvLmNvbW1pdChyZXZpc2lvbj02KQogICAgICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChjb21taXQudXVpZCwgMTYwMTYzOTkwMDAwKQogICAgICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChjb21taXQubWVzc2FnZSwgJzZ0aCBjb21taXQnKQotICAgICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbChjb21taXQuYnJhbmNoLCAndHJ1bmsnKQorICAgICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChjb21taXQuYnJhbmNoLCAnbWFpbicpCiAKICAgICBkZWYgdGVzdF9yZWZfc3Zu
KHNlbGYpOgogICAgICAgICB3aXRoIE1vY2tNb2RlbEZhY3Rvcnkud2Via2l0KCk6CkluZGV4OiBU
b29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L2FyY2hp
dmVfdmlld191bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmll
cy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L2FyY2hpdmVfdmlld191bml0dGVzdC5weQko
cmV2aXNpb24gMjc0ODAxKQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkv
cmVzdWx0c2RicHkvdmlldy9hcmNoaXZlX3ZpZXdfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkK
QEAgLTUxLDcgKzUxLDcgQEAgY2xhc3MgQXJjaGl2ZVZpZXdVbml0dGVzdChXZWJTaXRlVGVzdENh
cwogICAgICAgICAgICAgICAgICksIGRpY3QoCiAgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRv
cnlfaWQ9J3dlYmtpdCcsCiAgICAgICAgICAgICAgICAgICAgIGlkPSc2JywKLSAgICAgICAgICAg
ICAgICAgICAgYnJhbmNoPSd0cnVuaycsCisgICAgICAgICAgICAgICAgICAgIGJyYW5jaD0nbWFp
bicsCiAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD0xNjAxNjY1MTAwLAogICAgICAgICAg
ICAgICAgICAgICBvcmRlcj0wLAogICAgICAgICAgICAgICAgICAgICBjb21taXR0ZXI9J2piZWRh
cmRAYXBwbGUuY29tJywKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5
L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2RyYXdlci5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRpYy9q
cy9kcmF3ZXIuanMJKHJldmlzaW9uIDI3NDgwMSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVz
L3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvc3RhdGljL2pzL2RyYXdlci5qcwkod29ya2lu
ZyBjb3B5KQpAQCAtMTM3LDcgKzEzNyw3IEBAIGZ1bmN0aW9uIHJlZnJlc2hDb25maWd1cmF0aW9u
cygpIHsKIH0KIAogZnVuY3Rpb24gQnJhbmNoU2VsZWN0b3IoY2FsbGJhY2spIHsKLSAgICBjb25z
dCBkZWZhdWx0QnJhbmNoZXMgPSBuZXcgU2V0KFsndHJ1bmsnLCAnbWFzdGVyJ10pOworICAgIGNv
bnN0IGRlZmF1bHRCcmFuY2hlcyA9IG5ldyBTZXQoWyd0cnVuaycsICdtYXN0ZXInLCAnbWFpbidd
KTsKICAgICBjb25zdCBkZWZhdWx0QnJhbmNoS2V5ID0gWy4uLmRlZmF1bHRCcmFuY2hlc10uc29y
dCgpLmpvaW4oJy8nKTsKICAgICBjb25zdCBicmFuY2hNb2RpZmllciA9IG5ldyBRdWVyeU1vZGlm
aWVyKCdicmFuY2gnKTsKIApJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvZG9jdW1lbnRhdGlvbi5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3Zp
ZXcvdGVtcGxhdGVzL2RvY3VtZW50YXRpb24uaHRtbAkocmV2aXNpb24gMjc0ODAxKQorKysgVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0
ZXMvZG9jdW1lbnRhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMjMsNyArMTIzLDcgQEAg
Y29uc3QgZG9jdW1lbnRhdGlvbiA9IHsKICAgICAgICAgICAgICAgICAgICAgYFJldHVybnMgYSBk
aWN0aW9uYXJ5IG9mIGxpc3RzIG9mIGJyYW5jaGVzIGFzc29jaWF0ZWQgd2l0aCBlYWNoIHJlcG9z
aXRvcnkuIFRoZSBvdXRwdXQgaXMgb2YgdGhlIGZvcm06YCwKICAgICAgICAgICAgICAgICAgICAg
Y29kZUJsb2NrKCd7XG4nICsKICAgICAgICAgICAgICAgICAgICAgJyAgICA8cmVwb3NpdG9yeS1p
ZCAoYSk+OiBbIm1hc3RlciIsICJicmFuY2gtYSIsICJicmFuY2gtYiJdLFxuJyArCi0gICAgICAg
ICAgICAgICAgICAgICcgICAgPHJlcG9zaXRvcnktaWQgKGIpPjogWyJ0cnVuayIsICJicmFuY2gt
YSIsICJicmFuY2gtYyJdXG4nICsKKyAgICAgICAgICAgICAgICAgICAgJyAgICA8cmVwb3NpdG9y
eS1pZCAoYik+OiBbIm1haW4iLCAiYnJhbmNoLWEiLCAiYnJhbmNoLWMiXVxuJyArCiAgICAgICAg
ICAgICAgICAgICAgICd9JyksCiAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICksCkBA
IC0xNTgsNyArMTU4LDcgQEAgY29uc3QgZG9jdW1lbnRhdGlvbiA9IHsKICAgICAgICAgICAgICAg
ICBbJ0JyYW5jaCcsICdSZXBvc2l0b3J5J10sCiAgICAgICAgICAgICAgICAgWwogICAgICAgICAg
ICAgICAgICAgICBgUmVnaXN0ZXIgYSBzaW5nbGUgY29tbWl0IGluIHRoZSByZXN1bHRzIGRhdGFi
YXNlLiBUaGlzIGNvbW1pdCBtdXN0IGJlIGFzc29jaWF0ZWQgd2l0aCBhIHJlcG9zaXRvcnkgYWxy
ZWFkeSBrbm93biBieSB0aGUgcmVzdWx0cyBkYXRhYmFzZS4gV2hpbGUgYSAke2xvY2FsTGluayhb
J0FQSScsICdDb21taXRzJ10sICdjb21taXQgb2JqZWN0cycpfSBjYW4gYmUgdXBsb2FkZWQgdG8g
dGhpcyBlbmRwb2ludCwgaXQgaXMgcmVjb21tZW5kZWQgdGhhdCB0aGUgcmVnaXN0cmF0aW9uIG9m
IGNvbW1pdHMgb3V0c2lkZSBvZiBhdXRvbWF0aW9uIGFsbG93IHRoZSByZXN1bHRzIGRhdGFiYXNl
IHRvIGxldmVyYWdlIHlvdXIgc291cmNlIGNvbnRyb2wncyBBUEkuIFN1Y2ggYSByZXF1ZXN0IGxv
b2tzIGxpa2UgdGhpc2AsCi0gICAgICAgICAgICAgICAgICAgIGNvZGVCbG9jaygnL2FwaS9jb21t
aXRzL3JlZ2lzdGVyP3JlcG9zaXRvcnlfaWQ9d2Via2l0JmJyYW5jaD10cnVuayZpZD0yNDczNTUn
KSwKKyAgICAgICAgICAgICAgICAgICAgY29kZUJsb2NrKCcvYXBpL2NvbW1pdHMvcmVnaXN0ZXI/
cmVwb3NpdG9yeV9pZD13ZWJraXQmYnJhbmNoPW1haW4maWQ9MjQ3MzU1JyksCiAgICAgICAgICAg
ICAgICAgICAgIGBNb3JlIGdlbmVyYWxseSwgYW55IGRlZmluaXRpb24gb2YgYSBjb21taXQgd2hp
Y2ggZGVmaW5lcyB0aGUgcmVwb3NpdG9yeV9pZCwgaWQgYW5kIGJyYW5jaCBwcm92aWRlcyBlbm91
Z2ggaW5mb3JtYXRpb24gZm9yIHRoZSByZXN1bHRzIGRhdGFiYXNlIHRvIHF1ZXJ5IHlvdXIgc291
cmNlIGNvbnRyb2wncyBBUEkgYW5kIHJldHJlaXZlIGNvbW1pdCBpbmZvcm1hdGlvbi5gLAogICAg
ICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICApLApAQCAtNDc5LDcgKzQ3OSw3IEBAIGNvbnN0
IGRvY3VtZW50YXRpb24gPSB7CiAgICAgICAgICAgICBgQnkgZGVmYXVsdCwgdGhpcyBmbGFnIGlz
ICdUcnVlJyBhbmQgZW5kcG9pbnRzIHdpbGwgaWdub3JlIHRlc3RzIHdoaWNoIG1hdGNoZWQgdGhl
aXIgZXhwZWN0ZWQgYmVoYXZpb3IuIElmIHNldCB0byAnRmFsc2UnLCBlbmRwb2ludHMgd2lsbCBy
ZXR1cm4gcmVzdWx0cyBmb3IgYWxsIGZhaWxpbmcgdGVzdHMsIHJlZ2FyZGxlc3Mgb2Ygd2hhdCB0
aGVpciBleHBlY3RhdGlvbiBpcy5gLAogICAgICAgICBdLAogICAgICAgICAnQnJhbmNoJzogWwot
ICAgICAgICAgICAgYE1vc3QgZGF0YSBpbiB0aGUgcmVzdWx0cyBkYXRhYmFzZSBpcyBwYXJ0aXRp
b25lZCBieSBicmFuY2gsIGFuZCBpdCBpcyBnZW5lcmFsbHkgZXhwZWN0ZWQgdGhhdCByZXN1bHRz
IG9uIHNlcGVyYXRlIGJyYW5jaGVzIGFyZSBpbmRlcGVuZGVudCBvZiBvbmUgYW5vdGhlci4gQnkg
ZGVmYXVsdCwgZW5kcG9pbnRzIHRoYXQgc3VwcG9ydCB0aGUgYnJhbmNoIHF1ZXJ5IHdpbGwgYXNz
dW1lIHRoYXQgdGhlIGJyYW5jaCBpcyBtYXN0ZXIgZm9yIGdpdCByZXBvc2l0b3JpZXMgYW5kIHRy
dW5rIGZvciBTVk4gcmVwb3NpdG9yaWVzIGlmIG5vIHZhbHVlIGlzIHNwZWNpZmllZC4gSWYgbXVs
dGlwbGUgdmFsdWVzIGZvciBicmFuY2ggYXJlIHNwZWNpZmllZCwgb25seSB0aGUgZmlyc3Qgd2ls
bCBiZSByZXNwZWN0ZWQuIEEgcmVxdWVzdCB3aGljaCBpbnRlbmRlZCB0byBzZWFyY2ggZm9yIHJl
c3VsdHMgb24gb25seSByZXN1bHRzIG9uIHRoZSBzYWZhcmktNjA3IGJyYW5jaCB3b3VsZCB1c2Ug
YSBxdWVyeSBsaWtlIHRoaXM6YCwKKyAgICAgICAgICAgIGBNb3N0IGRhdGEgaW4gdGhlIHJlc3Vs
dHMgZGF0YWJhc2UgaXMgcGFydGl0aW9uZWQgYnkgYnJhbmNoLCBhbmQgaXQgaXMgZ2VuZXJhbGx5
IGV4cGVjdGVkIHRoYXQgcmVzdWx0cyBvbiBzZXBlcmF0ZSBicmFuY2hlcyBhcmUgaW5kZXBlbmRl
bnQgb2Ygb25lIGFub3RoZXIuIEJ5IGRlZmF1bHQsIGVuZHBvaW50cyB0aGF0IHN1cHBvcnQgdGhl
IGJyYW5jaCBxdWVyeSB3aWxsIGFzc3VtZSB0aGF0IHRoZSBicmFuY2ggaXMgbWFzdGVyIG9yIG1h
aW4gZm9yIGdpdCByZXBvc2l0b3JpZXMgYW5kIHRydW5rIGZvciBTVk4gcmVwb3NpdG9yaWVzIGlm
IG5vIHZhbHVlIGlzIHNwZWNpZmllZC4gSWYgbXVsdGlwbGUgdmFsdWVzIGZvciBicmFuY2ggYXJl
IHNwZWNpZmllZCwgb25seSB0aGUgZmlyc3Qgd2lsbCBiZSByZXNwZWN0ZWQuIEEgcmVxdWVzdCB3
aGljaCBpbnRlbmRlZCB0byBzZWFyY2ggZm9yIHJlc3VsdHMgb24gb25seSByZXN1bHRzIG9uIHRo
ZSBzYWZhcmktNjA3IGJyYW5jaCB3b3VsZCB1c2UgYSBxdWVyeSBsaWtlIHRoaXM6YCwKICAgICAg
ICAgICAgIGNvZGVCbG9jaygnYnJhbmNoPXNhZmFyaS02MDcnKSwKICAgICAgICAgXSwKICAgICAg
ICAgJ0NvbmZpZ3VyYXRpb24nOiBbCkBAIC01NDQsMTMgKzU0NCwxMyBAQCBjb25zdCBkb2N1bWVu
dGF0aW9uID0gewogICAgICAgICAgICAgYFdlIGFsc28ga25vdyB0aGF0IHRpbWVzdGFtcHMgY2Fu
IGJlIGVhc2lseSBjb252ZXJ0ZWQgdG8gVVVJRHMuIEVuZHBvaW50cyB3aGljaCBzdXBwb3J0IHF1
ZXJ5aW5nIGJ5IFVVSUQgYWxzbyBzdXBwb3J0IHF1ZXJ5aW5nIGJ5IFVUQyB0aW1lc3RhbXAuIE91
ciBwcmV2aW91cyBxdWVyeSBjb3VsZCBiZSBpbnN0ZWFkIHdyaXR0ZW4gbGlrZSB0aGlzOmAsCiAg
ICAgICAgICAgICBjb2RlQmxvY2soJ2FmdGVyX3RpbWVzdGFtcD0xNTYyOTUxNDkxJmJlZm9yZV90
aW1lc3RhbXA9MTU2Mjk1MjQ3MycpLAogICAgICAgICAgICAgYENvbW1pdHMgY2FuIGFsc28gYmUg
dHJhbnNsYXRlZCB0byB0aW1lc3RhbXAsIGFsdGhvdWdoIHdpdGggYSBiaXQgbW9yZSB3b3JrIHJl
cXVpcmVkIGZyb20gdGhlIGJhY2stZW5kLiBFbmRwb2ludHMgd2hpY2ggc3VwcG9ydCBxdWVyeWlu
ZyBieSBVVUlEIGFsc28gc3VwcG9ydCBxdWVyeWluZyBieSBjb21taXQgaW5mb3JtYXRpb24uIElu
IHRoZSBmaXJzdCBleGFtcGxlIGluIHRoaXMgc2VjdGlvbiwgd2UgcXVlcmllZCBieSBVVUlEIDE1
NjI5NTI0NzMwMC4gVGhpcyBjb3JyZXNwb25kcyB0byAke2V4dGVybmFsTGluaygnaHR0cHM6Ly90
cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI0NzM5MS93ZWJraXQnLCAncjI0NzM5MScpfS4gV2Ug
Y291bGQgaW5zdGVhZCBxdWVyeSBieSB0aGUgY29tbWl0IGluZm9ybWF0aW9uOmAsCi0gICAgICAg
ICAgICBjb2RlQmxvY2soJ2lkPTI0NzM5MSZyZXBvc2l0b3J5X2lkPXdlYmtpdCZicmFuY2g9dHJ1
bmsnKSwKKyAgICAgICAgICAgIGNvZGVCbG9jaygnaWQ9MjQ3MzkxJnJlcG9zaXRvcnlfaWQ9d2Vi
a2l0JmJyYW5jaD1tYWluJyksCiAgICAgICAgICAgICBgQnV0LCBhcyBvdXRsaW5lZCBpbiB0aGUg
b3ZlcnZpZXdzIGFib3V0ICR7bG9jYWxMaW5rKFsnUXVlcnkgUGFyYW1ldGVycycsICdCcmFuY2gn
XSwgJ2JyYW5jaGVzJyl9IGFuZCAke2xvY2FsTGluayhbJ1F1ZXJ5IFBhcmFtZXRlcnMnLCAnUmVw
b3NpdG9yeSddLCAncmVwb3NpdG9yaWVzJyl9LCBlbmRwb2ludHMgd2hpY2ggc3VwcG9ydCB0aG9z
ZSBxdWVyaWVzIGhhdmUgZGVmYXVsdHMgd2hpY2ggY292ZXIgbWFueSBjYXNlcywgc28gdGhlIHBy
ZXZpb3VzIHF1ZXJ5IGNvdWxkIGJlIHNpbXBsaWZpZWQgdG86YCwKICAgICAgICAgICAgIGNvZGVC
bG9jaygnaWQ9MjQ3MzkxJyksCiAgICAgICAgICAgICBgQmVjYXVzZSBlbmRwb2ludHMgc3VwcG9y
dGluZyB0aW1lIGFyZSBjb252ZXJ0IGV2ZXJ5dGhpbmcgdG8gVVVJRCBvbiB0aGUgYmFja2VuZCwg
dGhlIHF1ZXJpZXMgdG8gdGhlc2UgZW5kcG9pbnRzIGFyZSBxdWl0ZSBmbGV4aWJsZS4gVGhlIGZv
bGxvd2luZyBhcmUgYWxsIGV4YW1wbGVzIG9mIHZhbGlkIHRpbWUgcXVlcmllczpgLAogICAgICAg
ICAgICAgY29kZUJsb2NrKCdhZnRlcl9pZD0yNDczOTEmcmVwb3NpdG9yeV9pZD13ZWJraXQnKSwK
ICAgICAgICAgICAgIGNvZGVCbG9jaygnYWZ0ZXJfaWQ9MjQ3MzkwJmJlZm9yZV90aW1lc3RhbXA9
MTU2Mjk1MjQ3MycpLAotICAgICAgICAgICAgY29kZUJsb2NrKCdiZWZvcmVfaWQ9MjQ3MzkxJmFm
dGVyX3V1aWQ9MTU2Mjk1MTQ5MTAwJmJlZm9yZV9icmFuY2g9dHJ1bmsnKSwKKyAgICAgICAgICAg
IGNvZGVCbG9jaygnYmVmb3JlX2lkPTI0NzM5MSZhZnRlcl91dWlkPTE1NjI5NTE0OTEwMCZiZWZv
cmVfYnJhbmNoPW1haW4nKSwKICAgICAgICAgXSwKICAgICB9CiB9CkluZGV4OiBUb29scy9TY3Jp
cHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9pbnZl
c3RpZ2F0ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3Vs
dHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2ludmVzdGlnYXRlLmh0bWwJKHJldmlz
aW9uIDI3NDgwMSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3Vs
dHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2ludmVzdGlnYXRlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTE0OCw2ICsxNDgsNyBAQCBjbGFzcyBTdWl0ZUZhaWx1cmVzVmlldyB7CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYnJhbmNoZXMgPSBuZXcgU2V0KGNvbW1p
dHMubWFwKGNvbW1pdCA9PiBjb21taXQuYnJhbmNoKSk7CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYnJhbmNoZXMuZGVsZXRlKCd0cnVuaycpOwogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyYW5jaGVzLmRlbGV0ZSgnbWFzdGVyJyk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJhbmNoZXMuZGVsZXRlKCdt
YWluJyk7CiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBy
ZXBvc2l0b3JpZXMgPSBuZXcgU2V0KGNvbW1pdHMubWFwKGNvbW1pdCA9PiBjb21taXQucmVwb3Np
dG9yeV9pZCkpOwogCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93
ZWJraXRzY21weS9tb2Nrcy9yZW1vdGUvZ2l0X2h1Yi5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9T
Y3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9tb2Nrcy9yZW1vdGUvZ2l0
X2h1Yi5weQkocmV2aXNpb24gMjc0ODAxKQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Vi
a2l0c2NtcHkvd2Via2l0c2NtcHkvbW9ja3MvcmVtb3RlL2dpdF9odWIucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDcgKzIzLDYgQEAKIGltcG9ydCBvcwogaW1wb3J0IGpzb24KIAotZnJvbSBkYXRl
dGltZSBpbXBvcnQgZGF0ZXRpbWUKIGZyb20gd2Via2l0Y29yZXB5IGltcG9ydCBtb2NrcwogZnJv
bSB3ZWJraXRzY21weSBpbXBvcnQgQ29tbWl0LCByZW1vdGUgYXMgc2NtcmVtb3RlCiAKQEAgLTEz
NCw2ICsxMzMsOCBAQCBjbGFzcyBHaXRIdWIobW9ja3MuUmVxdWVzdHMpOgogICAgICAgICBdLCB1
cmw9dXJsKQogCiAgICAgZGVmIF9jb21taXRfcmVzcG9uc2Uoc2VsZiwgdXJsLCByZWYpOgorICAg
ICAgICBmcm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZSwgdGltZWRlbHRhCisKICAgICAgICAg
Y29tbWl0ID0gc2VsZi5jb21taXQocmVmKQogICAgICAgICBpZiBub3QgY29tbWl0OgogICAgICAg
ICAgICAgcmV0dXJuIG1vY2tzLlJlc3BvbnNlKApAQCAtMTQ3LDExICsxNDgsMTEgQEAgY2xhc3Mg
R2l0SHViKG1vY2tzLlJlcXVlc3RzKToKICAgICAgICAgICAgICAgICAnYXV0aG9yJzogewogICAg
ICAgICAgICAgICAgICAgICAnbmFtZSc6IGNvbW1pdC5hdXRob3IubmFtZSwKICAgICAgICAgICAg
ICAgICAgICAgJ2VtYWlsJzogY29tbWl0LmF1dGhvci5lbWFpbCwKLSAgICAgICAgICAgICAgICAg
ICAgJ2RhdGUnOiBkYXRldGltZS5mcm9tdGltZXN0YW1wKGNvbW1pdC50aW1lc3RhbXApLnN0cmZ0
aW1lKCclWS0lbS0lZFQlSDolTTolU1onKSwKKyAgICAgICAgICAgICAgICAgICAgJ2RhdGUnOiBk
YXRldGltZS51dGNmcm9tdGltZXN0YW1wKGNvbW1pdC50aW1lc3RhbXAgLSB0aW1lZGVsdGEoaG91
cnM9Nykuc2Vjb25kcykuc3RyZnRpbWUoJyVZLSVtLSVkVCVIOiVNOiVTWicpLAogICAgICAgICAg
ICAgICAgIH0sICdjb21taXR0ZXInOiB7CiAgICAgICAgICAgICAgICAgICAgICduYW1lJzogY29t
bWl0LmF1dGhvci5uYW1lLAogICAgICAgICAgICAgICAgICAgICAnZW1haWwnOiBjb21taXQuYXV0
aG9yLmVtYWlsLAotICAgICAgICAgICAgICAgICAgICAnZGF0ZSc6IGRhdGV0aW1lLmZyb210aW1l
c3RhbXAoY29tbWl0LnRpbWVzdGFtcCkuc3RyZnRpbWUoJyVZLSVtLSVkVCVIOiVNOiVTWicpLAor
ICAgICAgICAgICAgICAgICAgICAnZGF0ZSc6IGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAoY29t
bWl0LnRpbWVzdGFtcCAtIHRpbWVkZWx0YShob3Vycz03KS5zZWNvbmRzKS5zdHJmdGltZSgnJVkt
JW0tJWRUJUg6JU06JVNaJyksCiAgICAgICAgICAgICAgICAgfSwgJ21lc3NhZ2UnOiBjb21taXQu
bWVzc2FnZSArICdcbmdpdC1zdm4taWQ6IGh0dHBzOi8vc3ZuLmV4YW1wbGUub3JnL3JlcG9zaXRv
cnkvd2Via2l0L3t9QHt9IDI2OGY0NWNjLWNkMDktMDQxMC1hYjNjLWQ1MjY5MWI0ZGJmY1xuJy5m
b3JtYXQoCiAgICAgICAgICAgICAgICAgICAgICd0cnVuaycgaWYgY29tbWl0LmJyYW5jaCA9PSBz
ZWxmLmRlZmF1bHRfYnJhbmNoIGVsc2UgY29tbWl0LmJyYW5jaCwgY29tbWl0LnJldmlzaW9uLAog
ICAgICAgICAgICAgICAgICkgaWYgY29tbWl0LnJldmlzaW9uIGVsc2UgJycsCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424022</attachid>
            <date>2021-03-23 08:49:41 -0700</date>
            <delta_ts>2021-03-30 11:21:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223261-20210323084940.patch</filename>
            <type>text/plain</type>
            <size>29777</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NDg2OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQ0IEBACisyMDIxLTAzLTIzICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbcmVzdWx0c2RicHldIFByZWZlciBHaXRIdWIgb3ZlciBzdm4ud2Via2l0
Lm9yZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIz
MjYxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NTQ4MzEyMT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3Vs
dHNkYnB5L3Jlc3VsdHNkYnB5L2NvbnRyb2xsZXIvY29tbWl0X2NvbnRyb2xsZXJfdW5pdHRlc3Qu
cHk6CisgICAgICAgIChDb21taXRDb250cm9sbGVyVGVzdC50ZXN0X2JyYW5jaGVzKTogQ2hhbmdl
IGJyYW5jaGVzIHRvIG1hdGNoIEdpdEh1Yi4KKyAgICAgICAgKENvbW1pdENvbnRyb2xsZXJUZXN0
LnRlc3RfcmVnaXN0ZXJfd2l0aF9wYXJ0aWFsX2NvbW1pdCk6IENvbW1pdHMgYXJlIG5vdyBnaXQt
c3ZuIGNvbW1pdHMuCisgICAgICAgIChDb21taXRDb250cm9sbGVyVGVzdC50ZXN0X3JlZ2lzdGVy
X3dpdGhfZnVsbF9jb21taXQpOiBEZWZhdWx0IGJyYW5jaCBpcyBub3cgbWFpbi4KKyAgICAgICAg
KiBTY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRf
Y29udGV4dC5weToKKyAgICAgICAgKENvbW1pdENvbnRleHQuYnJhbmNoX2tleXNfZm9yX2NvbW1p
dHMpOiBBbnkgYnJhbmNoIHRoYXQgaXMgYSBkZWZhdWx0IGJyYW5jaCBzaG91bGQgYmUgbWF0Y2hl
ZCB0byB0aGUgYXBwcm9wcmlhdGUgZGVmYXVsdCBicmFuY2guCisgICAgICAgIChDb21taXRDb250
ZXh0LnJlZ2lzdGVyX2NvbW1pdCk6IERpdHRvLgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVz
L3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NvbW1pdF9jb250ZXh0X3VuaXR0ZXN0LnB5
OgorICAgICAgICAoQ29tbWl0Q29udGV4dFRlc3QudGVzdF9jb21taXRfYnlfaWQpOiBNYWluIGlz
IHRoZSBuZXcgZGVmYXVsdCBicmFuY2guCisgICAgICAgIChDb21taXRDb250ZXh0VGVzdC50ZXN0
X2NvbW1pdF9ieV91dWlkKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250ZXh0VGVzdC50ZXN0
X2NvbW1pdF9ieV90aW1lc3RhbXApOiBEaXR0by4KKyAgICAgICAgKENvbW1pdENvbnRleHRUZXN0
LnRlc3RfYWxsX2NvbW1pdHNfc3ZuKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250ZXh0VGVz
dC50ZXN0X3N2bl9jb21taXRzX2luX3JhbmdlKTogRGl0dG8uCisgICAgICAgIChDb21taXRDb250
ZXh0VGVzdC50ZXN0X3N2bl9jb21taXRzX2JldHdlZW4pOiBEaXR0by4KKyAgICAgICAgKENvbW1p
dENvbnRleHRUZXN0LnRlc3RfY29tbWl0X2Zyb21fc3ZuX3JlcG8pOiBEaXR0by4KKyAgICAgICAg
KENvbW1pdENvbnRleHRUZXN0LnRlc3RfYnJhbmNoZXMpOiBDaGFuZ2UgYnJhbmNoZXMgdG8gbWF0
Y2ggR2l0SHViLgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3Vs
dHNkYnB5L21vZGVsL21vY2tfbW9kZWxfZmFjdG9yeS5weToKKyAgICAgICAgKE1vY2tNb2RlbEZh
Y3Rvcnkud2Via2l0KTogU3VwcG9ydCBib3RoIHN2bi53ZWJraXQub3JnIGFuZCBHaXRIdWIuCisg
ICAgICAgIChNb2NrTW9kZWxGYWN0b3J5LmNyZWF0ZSk6CisgICAgICAgICogU2NyaXB0cy9saWJy
YXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeS5weToKKyAgICAg
ICAgKFdlYktpdFJlcG9zaXRvcnkuX19pbml0X18pOiBRdWVyeSBib3RoIHN2bi53ZWJraXQub3Jn
IGFuZCBHaXRIdWIuCisgICAgICAgIChXZWJLaXRSZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQpOiBN
YXAgdHJ1bmsgY29tbWl0cyB0byBtYWluLgorICAgICAgICAoV2ViS2l0UmVwb3NpdG9yeS5jb21t
aXQpOiBQcmVmZXIgR2l0SHViIGFuZCBzdXBwb3J0IGhhc2hlcy4KKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5X3VuaXR0
ZXN0LnB5OgorICAgICAgICAoUmVwb3NpdG9yeVRlc3QudGVzdF9zdm4pOiBNYWluIGlzIHRoZSBu
ZXcgZGVmYXVsdCBicmFuY2guCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvdmlldy9hcmNoaXZlX3ZpZXdfdW5pdHRlc3QucHk6CisgICAgICAgIChB
cmNoaXZlVmlld1VuaXR0ZXN0LnJlZ2lzdGVyX2FyY2hpdmUpOiBNYWluIGlzIGFub3RoZXIgZGVm
YXVsdCBicmFuY2guCisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvdmlldy9zdGF0aWMvanMvZHJhd2VyLmpzOiAKKyAgICAgICAgKiBTY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9kb2N1bWVudGF0
aW9uLmh0bWw6CisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0
c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRtbDoKKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9tb2Nrcy9yZW1vdGUvZ2l0X2h1Yi5w
eToKKyAgICAgICAgKEdpdEh1Yi5fY29tbWl0X3Jlc3BvbnNlKTogU3RhbmRhcmRpemUgdGltZXpv
bmUuCisKIDIwMjEtMDMtMjIgIENhbWVyb24gTWNDb3JtYWNrICA8aGV5Y2FtQGFwcGxlLmNvbT4K
IAogICAgICAgICBGaXggb3JkZXJpbmcgb2YgbXkgZW1haWwgYWRkcmVzc2VzIGluIGNvbnRyaWJ1
dG9ycy5qc29uCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9zZXR1
cC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9z
ZXR1cC5weQkocmV2aXNpb24gMjc0ODY5KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVz
dWx0c2RicHkvc2V0dXAucHkJKHdvcmtpbmcgY29weSkKQEAgLTMwLDcgKzMwLDcgQEAgZGVmIHJl
YWRtZSgpOgogCiBzZXR1cCgKICAgICBuYW1lPSdyZXN1bHRzZGJweScsCi0gICAgdmVyc2lvbj0n
Mi4wLjMnLAorICAgIHZlcnNpb249JzIuMC40JywKICAgICBkZXNjcmlwdGlvbj0nTGlicmFyeSBm
b3IgdmlzdWFsaXppbmcsIHByb2Nlc3NpbmcgYW5kIHN0b3JpbmcgdGVzdCByZXN1bHRzLicsCiAg
ICAgbG9uZ19kZXNjcmlwdGlvbj1yZWFkbWUoKSwKICAgICBjbGFzc2lmaWVycz1bCkluZGV4OiBU
b29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9fX2luaXRfXy5w
eQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1
bHRzZGJweS9fX2luaXRfXy5weQkocmV2aXNpb24gMjc0ODY5KQorKysgVG9vbHMvU2NyaXB0cy9s
aWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvX19pbml0X18ucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTQ0LDYgKzQ0LDYgQEAgZXhjZXB0IEltcG9ydEVycm9yOgogICAgICAgICAiUGxlYXNl
IGluc3RhbGwgd2Via2l0Y29yZXB5IHdpdGggYHBpcCBpbnN0YWxsIHdlYmtpdGNvcmVweSAtLWV4
dHJhLWluZGV4LXVybCA8cGFja2FnZSBpbmRleCBVUkw+YCIKICAgICApCiAKLXZlcnNpb24gPSBW
ZXJzaW9uKDIsIDAsIDMpCit2ZXJzaW9uID0gVmVyc2lvbigyLCAwLCA0KQogCiBuYW1lID0gJ3Jl
c3VsdHNkYnB5JwpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvY29udHJvbGxlci9jb21taXRfY29udHJvbGxlcl91bml0dGVzdC5weQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9j
b250cm9sbGVyL2NvbW1pdF9jb250cm9sbGVyX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyNzQ4Njkp
CisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9jb250
cm9sbGVyL2NvbW1pdF9jb250cm9sbGVyX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC03
Niw3ICs3Niw3IEBAIGNsYXNzIENvbW1pdENvbnRyb2xsZXJUZXN0KEZsYXNrVGVzdENhc2UKICAg
ICAgICAgcmVzcG9uc2UgPSBjbGllbnQuZ2V0KHNlbGYuVVJMICsgJy9hcGkvY29tbWl0cy9icmFu
Y2hlcycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcG9uc2Uuc3RhdHVzX2NvZGUsIDIw
MCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaWN0KAotICAgICAgICAgICAgd2Via2l0PVsn
YnJhbmNoLWEnLCAnYnJhbmNoLWInLCAndGFncy90YWctMScsICd0YWdzL3RhZy0yJywgJ3RydW5r
J10sCisgICAgICAgICAgICB3ZWJraXQ9WydicmFuY2gtYScsICdicmFuY2gtYicsICdtYWluJ10s
CiAgICAgICAgICAgICBzYWZhcmk9WydicmFuY2gtYScsICdicmFuY2gtYicsICdtYWluJ10pLCBy
ZXNwb25zZS5qc29uKCkpCiAKICAgICAgICAgcmVzcG9uc2UgPSBjbGllbnQuZ2V0KHNlbGYuVVJM
ICsgJy9hcGkvY29tbWl0cy9icmFuY2hlcz9icmFuY2g9YnJhbmNoJykKQEAgLTEwMiw3ICsxMDIs
NyBAQCBjbGFzcyBDb21taXRDb250cm9sbGVyVGVzdChGbGFza1Rlc3RDYXNlCiAgICAgICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKDIwMCwgcmVzcG9uc2Uuc3RhdHVzX2NvZGUpCiAgICAgICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgICAgIENvbW1pdC5mcm9tX2pzb24ocmVz
cG9uc2UuanNvbigpWzBdKS5tZXNzYWdlLAotICAgICAgICAgICAgICAgICdQYXRjaCBTZXJpZXNc
bicsCisgICAgICAgICAgICAgICAgJ1BhdGNoIFNlcmllc1xuXG5naXQtc3ZuLWlkOiBodHRwczov
L3N2bi5leGFtcGxlLm9yZy9yZXBvc2l0b3J5L3dlYmtpdC90cnVua0BOb25lIDI2OGY0NWNjLWNk
MDktMDQxMC1hYjNjLWQ1MjY5MWI0ZGJmY1xuJywKICAgICAgICAgICAgICkKICAgICAgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoNDA0LCBjbGllbnQucG9zdChzZWxmLlVSTCArICcvYXBpL2NvbW1p
dHMnLCBkYXRhPWRpY3QocmVwb3NpdG9yeV9pZD0nc2FmYXJpJywgaWQ9J2FhYWFhYWFhYWFhYWEn
KSkuc3RhdHVzX2NvZGUpCiAKQEAgLTEzNCw3ICsxMzQsNyBAQCBjbGFzcyBDb21taXRDb250cm9s
bGVyVGVzdChGbGFza1Rlc3RDYXNlCiAKICAgICAgICAgc3ZuX2NvbW1pdCA9IENvbW1pdCgKICAg
ICAgICAgICAgIHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsCi0gICAgICAgICAgICBicmFuY2g9J3Ry
dW5rJywKKyAgICAgICAgICAgIGJyYW5jaD0nbWFpbicsCiAgICAgICAgICAgICBpZD0nMTIzNCcs
CiAgICAgICAgICAgICB0aW1lc3RhbXA9MTYwMTY1MDEwMCwKICAgICAgICAgICAgIG9yZGVyPTAs
CkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9t
b2RlbC9jb21taXRfY29udGV4dC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJh
cmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRfY29udGV4dC5weQkocmV2
aXNpb24gMjc0ODY5KQorKysgVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvbW9kZWwvY29tbWl0X2NvbnRleHQucHkJKHdvcmtpbmcgY29weSkKQEAgLTE2MCw3
ICsxNjAsNyBAQCBjbGFzcyBDb21taXRDb250ZXh0KG9iamVjdCk6CiAgICAgICAgICMgdGhpcyBj
YXNlLCB0cmFjayBicmFuY2hlcyB3aGljaCBhcmUgbm90IHRoZSBkZWZhdWx0IGJyYW5jaCBpbmRl
cGVuZGVudGx5LgogICAgICAgICBmb3IgY29tbWl0IGluIGNvbW1pdHM6CiAgICAgICAgICAgICBy
ZXBvID0gc2VsZi5yZXBvc2l0b3JpZXMuZ2V0KGNvbW1pdC5yZXBvc2l0b3J5X2lkLCBSZXBvc2l0
b3J5KGtleT1jb21taXQucmVwb3NpdG9yeV9pZCkpCi0gICAgICAgICAgICBpZiBjb21taXQuYnJh
bmNoICE9IHJlcG8uZGVmYXVsdF9icmFuY2g6CisgICAgICAgICAgICBpZiBjb21taXQuYnJhbmNo
IG5vdCBpbiBTY21CYXNlLkRFRkFVTFRfQlJBTkNIRVM6CiAgICAgICAgICAgICAgICAgYnJhbmNo
ZXMuYWRkKGNvbW1pdC5icmFuY2gpCiAgICAgICAgIGlmIGxlbihicmFuY2hlcykgPT0gMDoKICAg
ICAgICAgICAgIGJyYW5jaGVzLmFkZChzZWxmLkRFRkFVTFRfQlJBTkNIX0tFWSkKQEAgLTM3OSw2
ICszNzksOSBAQCBjbGFzcyBDb21taXRDb250ZXh0KG9iamVjdCk6CiAgICAgICAgICAgICBpZiBj
b21taXQucmVwb3NpdG9yeV9pZCBub3QgaW4gc2VsZi5yZXBvc2l0b3JpZXM6CiAgICAgICAgICAg
ICAgICAgc2VsZi5yZXBvc2l0b3JpZXNbY29tbWl0LnJlcG9zaXRvcnlfaWRdID0gUmVwb3NpdG9y
eShrZXk9Y29tbWl0LnJlcG9zaXRvcnlfaWQpCiAKKyAgICAgICAgICAgIGlmIGNvbW1pdC5icmFu
Y2ggaW4gU2NtQmFzZS5ERUZBVUxUX0JSQU5DSEVTOgorICAgICAgICAgICAgICAgIGNvbW1pdC5i
cmFuY2ggPSBzZWxmLnJlcG9zaXRvcmllc1tjb21taXQucmVwb3NpdG9yeV9pZF0uZGVmYXVsdF9i
cmFuY2gKKwogICAgICAgICAgICAgZm9yIG9sZCBpbiBbc2VsZi5Db21taXRCeUlELCBzZWxmLkNv
bW1pdEJ5VXVpZEFzY2VuZGluZywgc2VsZi5Db21taXRCeVV1aWREZXNjZW5kaW5nXToKICAgICAg
ICAgICAgICAgICBzZWxmLmNhc3NhbmRyYS5pbnNlcnRfcm93KAogICAgICAgICAgICAgICAgICAg
ICBvbGQuX190YWJsZV9uYW1lX18sCkBAIC0zOTAsNyArMzkzLDcgQEAgY2xhc3MgQ29tbWl0Q29u
dGV4dChvYmplY3QpOgogICAgICAgICAgICAgICAgICAgICBtZXNzYWdlPWNvbW1pdC5tZXNzYWdl
LAogICAgICAgICAgICAgICAgICkKIAotICAgICAgICAgICAgZm9yIHRhYmxlIGluIFtzZWxmLkNv
bW1pdEJ5VXVpZEFzY2VuZGluZ01rMiwgc2VsZi5Db21taXRCeVV1aWREZXNjZW5kaW5nTWsyLCBz
ZWxmLkJyYW5jaGVzXToKKyAgICAgICAgICAgIGZvciB0YWJsZSBpbiBbc2VsZi5Db21taXRCeVV1
aWRBc2NlbmRpbmdNazIsIHNlbGYuQ29tbWl0QnlVdWlkRGVzY2VuZGluZ01rMl06CiAgICAgICAg
ICAgICAgICAgc2VsZi5jYXNzYW5kcmEuaW5zZXJ0X3JvdygKICAgICAgICAgICAgICAgICAgICAg
dGFibGUuX190YWJsZV9uYW1lX18sCiAgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnlfaWQ9
Y29tbWl0LnJlcG9zaXRvcnlfaWQsCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1
bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jb21taXRfY29udGV4dF91bml0dGVzdC5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJw
eS9tb2RlbC9jb21taXRfY29udGV4dF91bml0dGVzdC5weQkocmV2aXNpb24gMjc0ODY5KQorKysg
VG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY29t
bWl0X2NvbnRleHRfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTU0LDcgKzU0LDcgQEAg
Y2xhc3MgQ29tbWl0Q29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwogICAgICAgICAgICAgICAg
ICAgICBmb3IgYnJhbmNoLCBjb21taXRzIGluIHJlcG9zaXRvcnkuY29tbWl0cy5pdGVtcygpOgog
ICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbW1pdCBpbiBjb21taXRzOgogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UucmVnaXN0ZXJfcGFydGlhbF9jb21taXQo
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleSwgcmVmPWNvbW1pdC5oYXNoIG9y
IGNvbW1pdC5yZXZpc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5LCBo
YXNoPWNvbW1pdC5oYXNoLCByZXZpc2lvbj1jb21taXQucmV2aXNpb24sIGZhc3Q9RmFsc2UsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogCiAgICAgQFdhaXRGb3JEb2NrZXJUZXN0Q2Fz
ZS5tb2NrX2lmX25vX2RvY2tlcihtb2NrX3JlZGlzPUZha2VTdHJpY3RSZWRpcywgbW9ja19jYXNz
YW5kcmE9TW9ja0Nhc3NhbmRyYUNvbnRleHQpCkBAIC03Niw5ICs3Niw5IEBAIGNsYXNzIENvbW1p
dENvbnRleHRUZXN0KFdhaXRGb3JEb2NrZXJUZXMKIAogICAgICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbCgKICAgICAgICAgICAgICAgICBbc2VsZi5zdm5fcmVwb3NpdG9yeS5jb21taXRfZm9yX2lk
KGlkPTYpXSwKLSAgICAgICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV9p
ZChyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBicmFuY2g9J3RydW5rJywgY29tbWl0X2lkPTYpLAor
ICAgICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X2lkKHJlcG9zaXRv
cnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbicsIGNvbW1pdF9pZD02KSwKICAgICAgICAgICAg
ICkKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMCwgbGVuKHNlbGYuZGF0YWJhc2UuZmlu
ZF9jb21taXRzX2J5X2lkKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0ndHJ1bmsnLCBj
b21taXRfaWQ9JzEyMzQnKSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGxlbihz
ZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV9pZChyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBi
cmFuY2g9J21haW4nLCBjb21taXRfaWQ9JzEyMzQnKSkpCiAKICAgICBAV2FpdEZvckRvY2tlclRl
c3RDYXNlLm1vY2tfaWZfbm9fZG9ja2VyKG1vY2tfcmVkaXM9RmFrZVN0cmljdFJlZGlzLCBtb2Nr
X2Nhc3NhbmRyYT1Nb2NrQ2Fzc2FuZHJhQ29udGV4dCkKICAgICBkZWYgdGVzdF9jb21taXRfYnlf
dXVpZChzZWxmLCByZWRpcz1TdHJpY3RSZWRpcywgY2Fzc2FuZHJhPUNhc3NhbmRyYUNvbnRleHQp
OgpAQCAtOTIsNyArOTIsNyBAQCBjbGFzcyBDb21taXRDb250ZXh0VGVzdChXYWl0Rm9yRG9ja2Vy
VGVzCiAgICAgICAgICAgICApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAg
ICAgICAgICAgIFtzZWxmLnN2bl9yZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NildLAotICAg
ICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X3V1aWQocmVwb3NpdG9y
eV9pZD0nd2Via2l0JywgYnJhbmNoPSd0cnVuaycsIHV1aWQ9MTYwMTYzOTkwMDAwKSwKKyAgICAg
ICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19ieV91dWlkKHJlcG9zaXRvcnlf
aWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbicsIHV1aWQ9MTYwMTYzOTkwMDAwKSwKICAgICAgICAg
ICAgICkKIAogICAgIEBXYWl0Rm9yRG9ja2VyVGVzdENhc2UubW9ja19pZl9ub19kb2NrZXIobW9j
a19yZWRpcz1GYWtlU3RyaWN0UmVkaXMsIG1vY2tfY2Fzc2FuZHJhPU1vY2tDYXNzYW5kcmFDb250
ZXh0KQpAQCAtMTA3LDcgKzEwNyw3IEBAIGNsYXNzIENvbW1pdENvbnRleHRUZXN0KFdhaXRGb3JE
b2NrZXJUZXMKICAgICAgICAgICAgICkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAg
ICAgICAgICAgICAgICAgW3NlbGYuc3ZuX3JlcG9zaXRvcnkuY29tbWl0X2Zvcl9pZChpZD02KV0s
Ci0gICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfdGltZXN0YW1w
KHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0ndHJ1bmsnLCB0aW1lc3RhbXA9MTYwMTYz
OTkwMCksCisgICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfYnlfdGlt
ZXN0YW1wKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbicsIHRpbWVzdGFtcD0x
NjAxNjM5OTAwKSwKICAgICAgICAgICAgICkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
MiwgbGVuKHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2J5X3RpbWVzdGFtcChyZXBvc2l0b3J5
X2lkPSdzYWZhcmknLCBicmFuY2g9J21haW4nLCB0aW1lc3RhbXA9MTYwMTY2ODAwMCkpKQogCkBA
IC0xMjcsMTAgKzEyNywxMCBAQCBjbGFzcyBDb21taXRDb250ZXh0VGVzdChXYWl0Rm9yRG9ja2Vy
VGVzCiAgICAgICAgIHdpdGggTW9ja01vZGVsRmFjdG9yeS5zYWZhcmkoKSwgTW9ja01vZGVsRmFj
dG9yeS53ZWJraXQoKToKICAgICAgICAgICAgIHNlbGYuaW5pdF9kYXRhYmFzZShyZWRpcz1yZWRp
cywgY2Fzc2FuZHJhPWNhc3NhbmRyYSkKICAgICAgICAgICAgIHNlbGYuYWRkX2FsbF9jb21taXRz
X3RvX2RhdGFiYXNlKCkKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNCwgbGVuKHNlbGYu
ZGF0YWJhc2UuZmluZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJy
YW5jaD0ndHJ1bmsnKSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDQsIGxlbihzZWxm
LmRhdGFiYXNlLmZpbmRfY29tbWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3ZWJraXQnLCBi
cmFuY2g9J21haW4nKSkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAg
ICAgICAgIFtzZWxmLnN2bl9yZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NiksIHNlbGYuc3Zu
X3JlcG9zaXRvcnkuY29tbWl0X2Zvcl9pZChpZD00KV0sCi0gICAgICAgICAgICAgICAgc2VsZi5k
YXRhYmFzZS5maW5kX2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJh
bmNoPSd0cnVuaycsIGxpbWl0PTIpLAorICAgICAgICAgICAgICAgIHNlbGYuZGF0YWJhc2UuZmlu
ZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0nbWFpbics
IGxpbWl0PTIpLAogICAgICAgICAgICAgKQogCiAgICAgQFdhaXRGb3JEb2NrZXJUZXN0Q2FzZS5t
b2NrX2lmX25vX2RvY2tlcihtb2NrX3JlZGlzPUZha2VTdHJpY3RSZWRpcywgbW9ja19jYXNzYW5k
cmE9TW9ja0Nhc3NhbmRyYUNvbnRleHQpCkBAIC0xNTAsNyArMTUwLDcgQEAgY2xhc3MgQ29tbWl0
Q29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwogICAgICAgICAgICAgc2VsZi5hZGRfYWxsX2Nv
bW1pdHNfdG9fZGF0YWJhc2UoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAg
ICAgICAgICAgICBbc2VsZi5zdm5fcmVwb3NpdG9yeS5jb21taXRfZm9yX2lkKGlkPTYpLCBzZWxm
LnN2bl9yZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NCldLAotICAgICAgICAgICAgICAgIHNl
bGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2luX3JhbmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcs
IGJyYW5jaD0ndHJ1bmsnLCBiZWdpbj0xNjAxNjM3OTAwLCBlbmQ9MTYwMTYzOTkwMCksCisgICAg
ICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5kX2NvbW1pdHNfaW5fcmFuZ2UocmVwb3NpdG9y
eV9pZD0nd2Via2l0JywgYnJhbmNoPSdtYWluJywgYmVnaW49MTYwMTYzNzkwMCwgZW5kPTE2MDE2
Mzk5MDApLAogICAgICAgICAgICAgKQogCiAgICAgQFdhaXRGb3JEb2NrZXJUZXN0Q2FzZS5tb2Nr
X2lmX25vX2RvY2tlcihtb2NrX3JlZGlzPUZha2VTdHJpY3RSZWRpcywgbW9ja19jYXNzYW5kcmE9
TW9ja0Nhc3NhbmRyYUNvbnRleHQpCkBAIC0xNzcsNyArMTc3LDcgQEAgY2xhc3MgQ29tbWl0Q29u
dGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwogICAgICAgICAgICAgICAgIHNlbGYuc3ZuX3JlcG9z
aXRvcnkuY29tbWl0X2Zvcl9pZChpZD00KSwKICAgICAgICAgICAgICAgICBzZWxmLnN2bl9yZXBv
c2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9MiksCiAgICAgICAgICAgICBdCi0gICAgICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKGNvbW1pdHMsIHNlbGYuZGF0YWJhc2UuZmluZF9jb21taXRzX2luX3Jh
bmdlKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0ndHJ1bmsnLCBiZWdpbj1jb21taXRz
Wy0xXSwgZW5kPWNvbW1pdHNbMF0pKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb21t
aXRzLCBzZWxmLmRhdGFiYXNlLmZpbmRfY29tbWl0c19pbl9yYW5nZShyZXBvc2l0b3J5X2lkPSd3
ZWJraXQnLCBicmFuY2g9J21haW4nLCBiZWdpbj1jb21taXRzWy0xXSwgZW5kPWNvbW1pdHNbMF0p
KQogCiAgICAgQFdhaXRGb3JEb2NrZXJUZXN0Q2FzZS5tb2NrX2lmX25vX2RvY2tlcihtb2NrX3Jl
ZGlzPUZha2VTdHJpY3RSZWRpcywgbW9ja19jYXNzYW5kcmE9TW9ja0Nhc3NhbmRyYUNvbnRleHQp
CiAgICAgZGVmIHRlc3RfY29tbWl0X2Zyb21fc3Rhc2hfcmVwbyhzZWxmLCByZWRpcz1TdHJpY3RS
ZWRpcywgY2Fzc2FuZHJhPUNhc3NhbmRyYUNvbnRleHQpOgpAQCAtMTk2LDcgKzE5Niw3IEBAIGNs
YXNzIENvbW1pdENvbnRleHRUZXN0KFdhaXRGb3JEb2NrZXJUZXMKICAgICAgICAgICAgIHNlbGYu
ZGF0YWJhc2UucmVnaXN0ZXJfcGFydGlhbF9jb21taXQoJ3dlYmtpdCcsIHJldmlzaW9uPTYpCiAg
ICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgICAgIFtzZWxmLnN2bl9y
ZXBvc2l0b3J5LmNvbW1pdF9mb3JfaWQoaWQ9NildLAotICAgICAgICAgICAgICAgIHNlbGYuZGF0
YWJhc2UuZmluZF9jb21taXRzX2J5X2lkKHJlcG9zaXRvcnlfaWQ9J3dlYmtpdCcsIGJyYW5jaD0n
dHJ1bmsnLCBjb21taXRfaWQ9NiksCisgICAgICAgICAgICAgICAgc2VsZi5kYXRhYmFzZS5maW5k
X2NvbW1pdHNfYnlfaWQocmVwb3NpdG9yeV9pZD0nd2Via2l0JywgYnJhbmNoPSdtYWluJywgY29t
bWl0X2lkPTYpLAogICAgICAgICAgICAgKQogCiAgICAgQFdhaXRGb3JEb2NrZXJUZXN0Q2FzZS5t
b2NrX2lmX25vX2RvY2tlcihtb2NrX3JlZGlzPUZha2VTdHJpY3RSZWRpcywgbW9ja19jYXNzYW5k
cmE9TW9ja0Nhc3NhbmRyYUNvbnRleHQpCkBAIC0yMDYsNyArMjA2LDcgQEAgY2xhc3MgQ29tbWl0
Q29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlcwogICAgICAgICAgICAgc2VsZi5hZGRfYWxsX2Nv
bW1pdHNfdG9fZGF0YWJhc2UoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ2JyYW5j
aC1hJywgJ2JyYW5jaC1iJywgJ21haW4nXSwgc2VsZi5kYXRhYmFzZS5icmFuY2hlcyhyZXBvc2l0
b3J5X2lkPSdzYWZhcmknKSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAg
ICAgICAgICAgWydicmFuY2gtYScsICdicmFuY2gtYicsICd0YWdzL3RhZy0xJywgJ3RhZ3MvdGFn
LTInLCAndHJ1bmsnXSwKKyAgICAgICAgICAgICAgICBbJ2JyYW5jaC1hJywgJ2JyYW5jaC1iJywg
J21haW4nXSwKICAgICAgICAgICAgICAgICBzZWxmLmRhdGFiYXNlLmJyYW5jaGVzKHJlcG9zaXRv
cnlfaWQ9J3dlYmtpdCcpLAogICAgICAgICAgICAgKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChbJ2JyYW5jaC1hJywgJ2JyYW5jaC1iJ10sIHNlbGYuZGF0YWJhc2UuYnJhbmNoZXMocmVw
b3NpdG9yeV9pZD0nc2FmYXJpJywgYnJhbmNoPSdicmFuY2gnKSkKSW5kZXg6IFRvb2xzL1Njcmlw
dHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL21vY2tfbW9kZWxfZmFj
dG9yeS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJw
eS9yZXN1bHRzZGJweS9tb2RlbC9tb2NrX21vZGVsX2ZhY3RvcnkucHkJKHJldmlzaW9uIDI3NDg2
OSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21v
ZGVsL21vY2tfbW9kZWxfZmFjdG9yeS5weQkod29ya2luZyBjb3B5KQpAQCAtMjEsNiArMjEsNyBA
QAogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogCiBpbXBvcnQgYmFzZTY0CitpbXBvcnQgY29udGV4dGxpYgogaW1w
b3J0IGlvCiBpbXBvcnQgdGltZQogCkBAIC0yOSw3ICszMCw3IEBAIGZyb20gcmVzdWx0c2RicHku
bW9kZWwuY29uZmlndXJhdGlvbl9jb24KIGZyb20gcmVzdWx0c2RicHkubW9kZWwubW9kZWwgaW1w
b3J0IE1vZGVsCiBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLnJlcG9zaXRvcnkgaW1wb3J0IFN0YXNo
UmVwb3NpdG9yeSwgV2ViS2l0UmVwb3NpdG9yeQogCi1mcm9tIHdlYmtpdHNjbXB5IGltcG9ydCBt
b2NrcworZnJvbSB3ZWJraXRzY21weSBpbXBvcnQgbW9ja3MsIENvbW1pdAogCiAKIGNsYXNzIE1v
Y2tNb2RlbEZhY3Rvcnkob2JqZWN0KToKQEAgLTY1LDE2ICs2Niw0NCBAQCBjbGFzcyBNb2NrTW9k
ZWxGYWN0b3J5KG9iamVjdCk6CiAgICAgICAgIHJldHVybiBtb2Nrcy5yZW1vdGUuQml0QnVja2V0
KHJlbW90ZT0nYml0YnVja2V0LmV4YW1wbGUuY29tL3Byb2plY3RzL1NBRkFSSS9yZXBvcy9zYWZh
cmknKQogCiAgICAgQGNsYXNzbWV0aG9kCisgICAgQGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIK
ICAgICBkZWYgd2Via2l0KGNscyk6Ci0gICAgICAgIHJldHVybiBtb2Nrcy5yZW1vdGUuU3ZuKHJl
bW90ZT0nc3ZuLndlYmtpdC5vcmcvcmVwb3NpdG9yeS93ZWJraXQnKQorICAgICAgICBzdm4gPSBt
b2Nrcy5yZW1vdGUuU3ZuKHJlbW90ZT0nc3ZuLndlYmtpdC5vcmcvcmVwb3NpdG9yeS93ZWJraXQn
KQorICAgICAgICBnaXRodWIgPSBtb2Nrcy5yZW1vdGUuR2l0SHViKHJlbW90ZT0nZ2l0aHViLmNv
bS9XZWJLaXQvV2ViS2l0JywgZ2l0X3N2bj1UcnVlKQorICAgICAgICBnaXRodWIuY29tbWl0cyA9
IHt9CisKKyAgICAgICAgZm9yIGJyYW5jaCwgY29tbWl0cyBpbiBzdm4uY29tbWl0cy5pdGVtcygp
OgorICAgICAgICAgICAgaWYgJ3RhZycgaW4gYnJhbmNoOgorICAgICAgICAgICAgICAgIGNvbnRp
bnVlCisgICAgICAgICAgICBpZiBicmFuY2ggPT0gJ3RydW5rJzoKKyAgICAgICAgICAgICAgICBi
cmFuY2ggPSAnbWFpbicKKyAgICAgICAgICAgIGdpdGh1Yi5jb21taXRzW2JyYW5jaF0gPSBbXQor
CisgICAgICAgICAgICBmb3IgY29tbWl0IGluIGNvbW1pdHM6CisgICAgICAgICAgICAgICAgZ2l0
aHViLmNvbW1pdHNbYnJhbmNoXS5hcHBlbmQoQ29tbWl0KAorICAgICAgICAgICAgICAgICAgICBy
ZXBvc2l0b3J5X2lkPWNvbW1pdC5yZXBvc2l0b3J5X2lkLAorICAgICAgICAgICAgICAgICAgICBi
cmFuY2g9YnJhbmNoLAorICAgICAgICAgICAgICAgICAgICBhdXRob3I9Y29tbWl0LmF1dGhvciwK
KyAgICAgICAgICAgICAgICAgICAgbWVzc2FnZT1jb21taXQubWVzc2FnZSwKKyAgICAgICAgICAg
ICAgICAgICAgdGltZXN0YW1wPWNvbW1pdC50aW1lc3RhbXAsCisgICAgICAgICAgICAgICAgICAg
IG9yZGVyPWNvbW1pdC5vcmRlciwKKyAgICAgICAgICAgICAgICAgICAgaWRlbnRpZmllcj1jb21t
aXQuaWRlbnRpZmllciwKKyAgICAgICAgICAgICAgICAgICAgYnJhbmNoX3BvaW50PWNvbW1pdC5i
cmFuY2hfcG9pbnQsCisgICAgICAgICAgICAgICAgICAgIHJldmlzaW9uPWNvbW1pdC5yZXZpc2lv
biwKKyAgICAgICAgICAgICAgICAgICAgaGFzaD1jb21taXQuaGFzaCwKKyAgICAgICAgICAgICAg
ICApKQorCisgICAgICAgIHdpdGggc3ZuLCBnaXRodWI6CisgICAgICAgICAgICB5aWVsZCBnaXRo
dWIKIAogICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBjcmVhdGUoY2xzLCByZWRpcywgY2Fzc2Fu
ZHJhLCBhc3luY19wcm9jZXNzaW5nPUZhbHNlKToKICAgICAgICAgb2xkZXN0X2NvbW1pdCA9IHRp
bWUudGltZSgpCi0gICAgICAgIGZvciByZXBvIGluIFtjbHMuc2FmYXJpKCksIGNscy53ZWJraXQo
KV06Ci0gICAgICAgICAgICBmb3IgY29tbWl0cyBpbiByZXBvLmNvbW1pdHMudmFsdWVzKCk6Ci0g
ICAgICAgICAgICAgICAgZm9yIGNvbW1pdCBpbiBjb21taXRzOgotICAgICAgICAgICAgICAgICAg
ICBvbGRlc3RfY29tbWl0ID0gbWluKG9sZGVzdF9jb21taXQsIGNvbW1pdC50aW1lc3RhbXApCisg
ICAgICAgIHdpdGggY2xzLnNhZmFyaSgpIGFzIHNhZmFyaSwgY2xzLndlYmtpdCgpIGFzIHdlYmtp
dDoKKyAgICAgICAgICAgIGZvciByZXBvIGluIFtzYWZhcmksIHdlYmtpdF06CisgICAgICAgICAg
ICAgICAgZm9yIGNvbW1pdHMgaW4gcmVwby5jb21taXRzLnZhbHVlcygpOgorICAgICAgICAgICAg
ICAgICAgICBmb3IgY29tbWl0IGluIGNvbW1pdHM6CisgICAgICAgICAgICAgICAgICAgICAgICBv
bGRlc3RfY29tbWl0ID0gbWluKG9sZGVzdF9jb21taXQsIGNvbW1pdC50aW1lc3RhbXApCiAKICAg
ICAgICAgbW9kZWwgPSBNb2RlbCgKICAgICAgICAgICAgIHJlZGlzPXJlZGlzLApAQCAtOTMsNyAr
MTIyLDcgQEAgY2xhc3MgTW9ja01vZGVsRmFjdG9yeShvYmplY3QpOgogICAgICAgICAgICAgICAg
ICAgICBmb3IgYnJhbmNoLCBjb21taXRzIGluIHJlcG9zaXRvcnkuY29tbWl0cy5pdGVtcygpOgog
ICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbW1pdCBpbiBjb21taXRzOgogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG1vZGVsLmNvbW1pdF9jb250ZXh0LnJlZ2lzdGVyX3BhcnRpYWxf
Y29tbWl0KAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXksIGhhc2g9Y29tbWl0
Lmhhc2gsIHJldmlzaW9uPWNvbW1pdC5yZXZpc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAga2V5LCBoYXNoPWNvbW1pdC5oYXNoLCByZXZpc2lvbj1jb21taXQucmV2aXNpb24s
IGZhc3Q9RmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICByZXR1
cm4gbW9kZWwKIApJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVz
dWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRz
L2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5LnB5CShy
ZXZpc2lvbiAyNzQ4NjkpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9y
ZXN1bHRzZGJweS9tb2RlbC9yZXBvc2l0b3J5LnB5CSh3b3JraW5nIGNvcHkpCkBAIC04MSwxOCAr
ODEsMTkgQEAgY2xhc3MgU3Rhc2hSZXBvc2l0b3J5KFJlcG9zaXRvcnkpOgogY2xhc3MgV2ViS2l0
UmVwb3NpdG9yeShSZXBvc2l0b3J5KToKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAg
ICAgc2VsZi5yZW1vdGUgPSByZW1vdGUuU3ZuKCdodHRwczovL3N2bi53ZWJraXQub3JnL3JlcG9z
aXRvcnkvd2Via2l0JykKKyAgICAgICAgc2VsZi5zdm4gPSByZW1vdGUuU3ZuKCdodHRwczovL3N2
bi53ZWJraXQub3JnL3JlcG9zaXRvcnkvd2Via2l0JykKKyAgICAgICAgc2VsZi5naXRodWIgPSBy
ZW1vdGUuR2l0SHViKCdodHRwczovL2dpdGh1Yi5jb20vV2ViS2l0L1dlYktpdCcpCiAgICAgICAg
IHN1cGVyKFdlYktpdFJlcG9zaXRvcnksIHNlbGYpLl9faW5pdF9fKAogICAgICAgICAgICAga2V5
PSd3ZWJraXQnLAotICAgICAgICAgICAgZGVmYXVsdF9icmFuY2g9c2VsZi5yZW1vdGUuZGVmYXVs
dF9icmFuY2gsCisgICAgICAgICAgICBkZWZhdWx0X2JyYW5jaD1zZWxmLmdpdGh1Yi5kZWZhdWx0
X2JyYW5jaCwKICAgICAgICAgKQogCiAgICAgZGVmIGNvbW1pdF9mb3JfaWQoc2VsZiwgaWQpOgot
ICAgICAgICBjb21taXQgPSBzZWxmLnJlbW90ZS5jb21taXQocmV2aXNpb249aWQsIGluY2x1ZGVf
aWRlbnRpZmllcj1GYWxzZSkKKyAgICAgICAgY29tbWl0ID0gc2VsZi5zdm4uY29tbWl0KHJldmlz
aW9uPWlkLCBpbmNsdWRlX2lkZW50aWZpZXI9RmFsc2UpCiAgICAgICAgIHJldHVybiBDb21taXQo
CiAgICAgICAgICAgICByZXBvc2l0b3J5X2lkPXNlbGYua2V5LAogICAgICAgICAgICAgaWQ9Y29t
bWl0LnJldmlzaW9uLAotICAgICAgICAgICAgYnJhbmNoPWNvbW1pdC5icmFuY2gsCisgICAgICAg
ICAgICBicmFuY2g9c2VsZi5kZWZhdWx0X2JyYW5jaCBpZiBjb21taXQuYnJhbmNoID09ICd0cnVu
aycgZWxzZSBjb21taXQuYnJhbmNoLAogICAgICAgICAgICAgdGltZXN0YW1wPWNvbW1pdC50aW1l
c3RhbXAsCiAgICAgICAgICAgICBvcmRlcj1jb21taXQub3JkZXIsCiAgICAgICAgICAgICBjb21t
aXR0ZXI9Y29tbWl0LmF1dGhvci5lbWFpbCwKQEAgLTEwMiwxMSArMTAzLDI2IEBAIGNsYXNzIFdl
YktpdFJlcG9zaXRvcnkoUmVwb3NpdG9yeSk6CiAgICAgZGVmIGNvbW1pdChzZWxmLCByZWY9Tm9u
ZSwgcmV2aXNpb249Tm9uZSwgaGFzaD1Ob25lLCBpZGVudGlmaWVyPU5vbmUsIGZhc3Q9VHJ1ZSk6
CiAgICAgICAgIGlmIGlkZW50aWZpZXI6CiAgICAgICAgICAgICBmYXN0ID0gRmFsc2UKKwogICAg
ICAgICBpZiByZWY6CiAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHJlZiwgaW50KSBvciByZWYu
aXNkaWdpdCgpOgotICAgICAgICAgICAgICAgIHJlZiA9ICdye30nLmZvcm1hdChyZWYpCi0gICAg
ICAgICAgICByZXR1cm4gc2VsZi5yZW1vdGUuZmluZChyZWYsIGluY2x1ZGVfaWRlbnRpZmllcj1u
b3QgZmFzdCkKLSAgICAgICAgcmV0dXJuIHNlbGYucmVtb3RlLmNvbW1pdChyZXZpc2lvbj1yZXZp
c2lvbiwgaGFzaD1oYXNoLCBpZGVudGlmaWVyPWlkZW50aWZpZXIsIGluY2x1ZGVfaWRlbnRpZmll
cj1ub3QgZmFzdCkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBzZWxmLnN2bi5maW5kKCdye30n
LmZvcm1hdChyZWYpLCBpbmNsdWRlX2lkZW50aWZpZXI9bm90IGZhc3QpCisgICAgICAgICAgICBl
bHNlOgorICAgICAgICAgICAgICAgIHJlc3VsdCA9IHNlbGYuZ2l0aHViLmZpbmQocmVmLCBpbmNs
dWRlX2lkZW50aWZpZXI9bm90IGZhc3QpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXN1
bHQgPSAoc2VsZi5zdm4gaWYgcmV2aXNpb24gYW5kIG5vdCBoYXNoIGVsc2Ugc2VsZi5naXRodWIp
LmNvbW1pdCgKKyAgICAgICAgICAgICAgICByZXZpc2lvbj1Ob25lIGlmIGhhc2ggZWxzZSByZXZp
c2lvbiwKKyAgICAgICAgICAgICAgICBoYXNoPWhhc2gsCisgICAgICAgICAgICAgICAgaWRlbnRp
Zmllcj1Ob25lIGlmIG5vdCBoYXNoIGFuZCBub3QgcmV2aXNpb24gZWxzZSBpZGVudGlmaWVyLAor
ICAgICAgICAgICAgICAgIGluY2x1ZGVfaWRlbnRpZmllcj1ub3QgZmFzdCwKKyAgICAgICAgICAg
ICkKKworICAgICAgICBpZiBub3QgZmFzdCBhbmQgcmVzdWx0Lmhhc2ggYW5kIHJlc3VsdC5pZGVu
dGlmaWVyOgorICAgICAgICAgICAgcmVzdWx0ID0gc2VsZi5naXRodWIuY29tbWl0KGlkZW50aWZp
ZXI9c3RyKHJlc3VsdCkpCisKKyAgICAgICAgaWYgcmVzdWx0LmJyYW5jaCBpbiBzZWxmLnN2bi5E
RUZBVUxUX0JSQU5DSEVTOgorICAgICAgICAgICAgcmVzdWx0LmJyYW5jaCA9IHNlbGYuZGVmYXVs
dF9icmFuY2gKKyAgICAgICAgcmV0dXJuIHJlc3VsdAogCiAgICAgZGVmIHVybF9mb3JfY29tbWl0
KHNlbGYsIGNvbW1pdCk6CiAgICAgICAgIHJldHVybiBmJ2h0dHBzOi8vY29tbWl0cy53ZWJraXQu
b3JnL3J7Y29tbWl0fScKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5
L3Jlc3VsdHNkYnB5L21vZGVsL3JlcG9zaXRvcnlfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVw
b3NpdG9yeV91bml0dGVzdC5weQkocmV2aXNpb24gMjc0ODY5KQorKysgVG9vbHMvU2NyaXB0cy9s
aWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvcmVwb3NpdG9yeV91bml0dGVz
dC5weQkod29ya2luZyBjb3B5KQpAQCAtMzQsNyArMzQsNyBAQCBjbGFzcyBSZXBvc2l0b3J5VGVz
dChXYWl0Rm9yRG9ja2VyVGVzdENhCiAgICAgICAgICAgICBjb21taXQgPSBzdm5fcmVwby5jb21t
aXQocmV2aXNpb249NikKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0LnV1aWQs
IDE2MDE2Mzk5MDAwMCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0Lm1lc3Nh
Z2UsICc2dGggY29tbWl0JykKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0LmJy
YW5jaCwgJ3RydW5rJykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0LmJyYW5j
aCwgJ21haW4nKQogCiAgICAgZGVmIHRlc3RfcmVmX3N2bihzZWxmKToKICAgICAgICAgd2l0aCBN
b2NrTW9kZWxGYWN0b3J5LndlYmtpdCgpOgpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMv
cmVzdWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9hcmNoaXZlX3ZpZXdfdW5pdHRlc3QucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2RicHkvcmVzdWx0c2Ri
cHkvdmlldy9hcmNoaXZlX3ZpZXdfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI3NDg2OSkKKysrIFRv
b2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvYXJjaGl2
ZV92aWV3X3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC01MSw3ICs1MSw3IEBAIGNsYXNz
IEFyY2hpdmVWaWV3VW5pdHRlc3QoV2ViU2l0ZVRlc3RDYXMKICAgICAgICAgICAgICAgICApLCBk
aWN0KAogICAgICAgICAgICAgICAgICAgICByZXBvc2l0b3J5X2lkPSd3ZWJraXQnLAogICAgICAg
ICAgICAgICAgICAgICBpZD0nNicsCi0gICAgICAgICAgICAgICAgICAgIGJyYW5jaD0ndHJ1bmsn
LAorICAgICAgICAgICAgICAgICAgICBicmFuY2g9J21haW4nLAogICAgICAgICAgICAgICAgICAg
ICB0aW1lc3RhbXA9MTYwMTY2NTEwMCwKICAgICAgICAgICAgICAgICAgICAgb3JkZXI9MCwKICAg
ICAgICAgICAgICAgICAgICAgY29tbWl0dGVyPSdqYmVkYXJkQGFwcGxlLmNvbScsCkluZGV4OiBU
b29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3N0YXRp
Yy9qcy9kcmF3ZXIuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVz
dWx0c2RicHkvcmVzdWx0c2RicHkvdmlldy9zdGF0aWMvanMvZHJhd2VyLmpzCShyZXZpc2lvbiAy
NzQ4NjkpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJw
eS92aWV3L3N0YXRpYy9qcy9kcmF3ZXIuanMJKHdvcmtpbmcgY29weSkKQEAgLTEzNyw3ICsxMzcs
NyBAQCBmdW5jdGlvbiByZWZyZXNoQ29uZmlndXJhdGlvbnMoKSB7CiB9CiAKIGZ1bmN0aW9uIEJy
YW5jaFNlbGVjdG9yKGNhbGxiYWNrKSB7Ci0gICAgY29uc3QgZGVmYXVsdEJyYW5jaGVzID0gbmV3
IFNldChbJ3RydW5rJywgJ21hc3RlciddKTsKKyAgICBjb25zdCBkZWZhdWx0QnJhbmNoZXMgPSBu
ZXcgU2V0KFsndHJ1bmsnLCAnbWFzdGVyJywgJ21haW4nXSk7CiAgICAgY29uc3QgZGVmYXVsdEJy
YW5jaEtleSA9IFsuLi5kZWZhdWx0QnJhbmNoZXNdLnNvcnQoKS5qb2luKCcvJyk7CiAgICAgY29u
c3QgYnJhbmNoTW9kaWZpZXIgPSBuZXcgUXVlcnlNb2RpZmllcignYnJhbmNoJyk7CiAKSW5kZXg6
IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVt
cGxhdGVzL2RvY3VtZW50YXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xp
YnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9kb2N1bWVudGF0
aW9uLmh0bWwJKHJldmlzaW9uIDI3NDg2OSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3Jl
c3VsdHNkYnB5L3Jlc3VsdHNkYnB5L3ZpZXcvdGVtcGxhdGVzL2RvY3VtZW50YXRpb24uaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTIzLDcgKzEyMyw3IEBAIGNvbnN0IGRvY3VtZW50YXRpb24gPSB7
CiAgICAgICAgICAgICAgICAgICAgIGBSZXR1cm5zIGEgZGljdGlvbmFyeSBvZiBsaXN0cyBvZiBi
cmFuY2hlcyBhc3NvY2lhdGVkIHdpdGggZWFjaCByZXBvc2l0b3J5LiBUaGUgb3V0cHV0IGlzIG9m
IHRoZSBmb3JtOmAsCiAgICAgICAgICAgICAgICAgICAgIGNvZGVCbG9jaygne1xuJyArCiAgICAg
ICAgICAgICAgICAgICAgICcgICAgPHJlcG9zaXRvcnktaWQgKGEpPjogWyJtYXN0ZXIiLCAiYnJh
bmNoLWEiLCAiYnJhbmNoLWIiXSxcbicgKwotICAgICAgICAgICAgICAgICAgICAnICAgIDxyZXBv
c2l0b3J5LWlkIChiKT46IFsidHJ1bmsiLCAiYnJhbmNoLWEiLCAiYnJhbmNoLWMiXVxuJyArCisg
ICAgICAgICAgICAgICAgICAgICcgICAgPHJlcG9zaXRvcnktaWQgKGIpPjogWyJtYWluIiwgImJy
YW5jaC1hIiwgImJyYW5jaC1jIl1cbicgKwogICAgICAgICAgICAgICAgICAgICAnfScpLAogICAg
ICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICApLApAQCAtMTU4LDcgKzE1OCw3IEBAIGNvbnN0
IGRvY3VtZW50YXRpb24gPSB7CiAgICAgICAgICAgICAgICAgWydCcmFuY2gnLCAnUmVwb3NpdG9y
eSddLAogICAgICAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICAgICAgYFJlZ2lzdGVyIGEg
c2luZ2xlIGNvbW1pdCBpbiB0aGUgcmVzdWx0cyBkYXRhYmFzZS4gVGhpcyBjb21taXQgbXVzdCBi
ZSBhc3NvY2lhdGVkIHdpdGggYSByZXBvc2l0b3J5IGFscmVhZHkga25vd24gYnkgdGhlIHJlc3Vs
dHMgZGF0YWJhc2UuIFdoaWxlIGEgJHtsb2NhbExpbmsoWydBUEknLCAnQ29tbWl0cyddLCAnY29t
bWl0IG9iamVjdHMnKX0gY2FuIGJlIHVwbG9hZGVkIHRvIHRoaXMgZW5kcG9pbnQsIGl0IGlzIHJl
Y29tbWVuZGVkIHRoYXQgdGhlIHJlZ2lzdHJhdGlvbiBvZiBjb21taXRzIG91dHNpZGUgb2YgYXV0
b21hdGlvbiBhbGxvdyB0aGUgcmVzdWx0cyBkYXRhYmFzZSB0byBsZXZlcmFnZSB5b3VyIHNvdXJj
ZSBjb250cm9sJ3MgQVBJLiBTdWNoIGEgcmVxdWVzdCBsb29rcyBsaWtlIHRoaXNgLAotICAgICAg
ICAgICAgICAgICAgICBjb2RlQmxvY2soJy9hcGkvY29tbWl0cy9yZWdpc3Rlcj9yZXBvc2l0b3J5
X2lkPXdlYmtpdCZicmFuY2g9dHJ1bmsmaWQ9MjQ3MzU1JyksCisgICAgICAgICAgICAgICAgICAg
IGNvZGVCbG9jaygnL2FwaS9jb21taXRzL3JlZ2lzdGVyP3JlcG9zaXRvcnlfaWQ9d2Via2l0JmJy
YW5jaD1tYWluJmlkPTI0NzM1NScpLAogICAgICAgICAgICAgICAgICAgICBgTW9yZSBnZW5lcmFs
bHksIGFueSBkZWZpbml0aW9uIG9mIGEgY29tbWl0IHdoaWNoIGRlZmluZXMgdGhlIHJlcG9zaXRv
cnlfaWQsIGlkIGFuZCBicmFuY2ggcHJvdmlkZXMgZW5vdWdoIGluZm9ybWF0aW9uIGZvciB0aGUg
cmVzdWx0cyBkYXRhYmFzZSB0byBxdWVyeSB5b3VyIHNvdXJjZSBjb250cm9sJ3MgQVBJIGFuZCBy
ZXRyZWl2ZSBjb21taXQgaW5mb3JtYXRpb24uYCwKICAgICAgICAgICAgICAgICBdLAogICAgICAg
ICAgICAgKSwKQEAgLTQ3OSw3ICs0NzksNyBAQCBjb25zdCBkb2N1bWVudGF0aW9uID0gewogICAg
ICAgICAgICAgYEJ5IGRlZmF1bHQsIHRoaXMgZmxhZyBpcyAnVHJ1ZScgYW5kIGVuZHBvaW50cyB3
aWxsIGlnbm9yZSB0ZXN0cyB3aGljaCBtYXRjaGVkIHRoZWlyIGV4cGVjdGVkIGJlaGF2aW9yLiBJ
ZiBzZXQgdG8gJ0ZhbHNlJywgZW5kcG9pbnRzIHdpbGwgcmV0dXJuIHJlc3VsdHMgZm9yIGFsbCBm
YWlsaW5nIHRlc3RzLCByZWdhcmRsZXNzIG9mIHdoYXQgdGhlaXIgZXhwZWN0YXRpb24gaXMuYCwK
ICAgICAgICAgXSwKICAgICAgICAgJ0JyYW5jaCc6IFsKLSAgICAgICAgICAgIGBNb3N0IGRhdGEg
aW4gdGhlIHJlc3VsdHMgZGF0YWJhc2UgaXMgcGFydGl0aW9uZWQgYnkgYnJhbmNoLCBhbmQgaXQg
aXMgZ2VuZXJhbGx5IGV4cGVjdGVkIHRoYXQgcmVzdWx0cyBvbiBzZXBlcmF0ZSBicmFuY2hlcyBh
cmUgaW5kZXBlbmRlbnQgb2Ygb25lIGFub3RoZXIuIEJ5IGRlZmF1bHQsIGVuZHBvaW50cyB0aGF0
IHN1cHBvcnQgdGhlIGJyYW5jaCBxdWVyeSB3aWxsIGFzc3VtZSB0aGF0IHRoZSBicmFuY2ggaXMg
bWFzdGVyIGZvciBnaXQgcmVwb3NpdG9yaWVzIGFuZCB0cnVuayBmb3IgU1ZOIHJlcG9zaXRvcmll
cyBpZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQuIElmIG11bHRpcGxlIHZhbHVlcyBmb3IgYnJhbmNo
IGFyZSBzcGVjaWZpZWQsIG9ubHkgdGhlIGZpcnN0IHdpbGwgYmUgcmVzcGVjdGVkLiBBIHJlcXVl
c3Qgd2hpY2ggaW50ZW5kZWQgdG8gc2VhcmNoIGZvciByZXN1bHRzIG9uIG9ubHkgcmVzdWx0cyBv
biB0aGUgc2FmYXJpLTYwNyBicmFuY2ggd291bGQgdXNlIGEgcXVlcnkgbGlrZSB0aGlzOmAsCisg
ICAgICAgICAgICBgTW9zdCBkYXRhIGluIHRoZSByZXN1bHRzIGRhdGFiYXNlIGlzIHBhcnRpdGlv
bmVkIGJ5IGJyYW5jaCwgYW5kIGl0IGlzIGdlbmVyYWxseSBleHBlY3RlZCB0aGF0IHJlc3VsdHMg
b24gc2VwZXJhdGUgYnJhbmNoZXMgYXJlIGluZGVwZW5kZW50IG9mIG9uZSBhbm90aGVyLiBCeSBk
ZWZhdWx0LCBlbmRwb2ludHMgdGhhdCBzdXBwb3J0IHRoZSBicmFuY2ggcXVlcnkgd2lsbCBhc3N1
bWUgdGhhdCB0aGUgYnJhbmNoIGlzIG1hc3RlciBvciBtYWluIGZvciBnaXQgcmVwb3NpdG9yaWVz
IGFuZCB0cnVuayBmb3IgU1ZOIHJlcG9zaXRvcmllcyBpZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQu
IElmIG11bHRpcGxlIHZhbHVlcyBmb3IgYnJhbmNoIGFyZSBzcGVjaWZpZWQsIG9ubHkgdGhlIGZp
cnN0IHdpbGwgYmUgcmVzcGVjdGVkLiBBIHJlcXVlc3Qgd2hpY2ggaW50ZW5kZWQgdG8gc2VhcmNo
IGZvciByZXN1bHRzIG9uIG9ubHkgcmVzdWx0cyBvbiB0aGUgc2FmYXJpLTYwNyBicmFuY2ggd291
bGQgdXNlIGEgcXVlcnkgbGlrZSB0aGlzOmAsCiAgICAgICAgICAgICBjb2RlQmxvY2soJ2JyYW5j
aD1zYWZhcmktNjA3JyksCiAgICAgICAgIF0sCiAgICAgICAgICdDb25maWd1cmF0aW9uJzogWwpA
QCAtNTQ0LDEzICs1NDQsMTMgQEAgY29uc3QgZG9jdW1lbnRhdGlvbiA9IHsKICAgICAgICAgICAg
IGBXZSBhbHNvIGtub3cgdGhhdCB0aW1lc3RhbXBzIGNhbiBiZSBlYXNpbHkgY29udmVydGVkIHRv
IFVVSURzLiBFbmRwb2ludHMgd2hpY2ggc3VwcG9ydCBxdWVyeWluZyBieSBVVUlEIGFsc28gc3Vw
cG9ydCBxdWVyeWluZyBieSBVVEMgdGltZXN0YW1wLiBPdXIgcHJldmlvdXMgcXVlcnkgY291bGQg
YmUgaW5zdGVhZCB3cml0dGVuIGxpa2UgdGhpczpgLAogICAgICAgICAgICAgY29kZUJsb2NrKCdh
ZnRlcl90aW1lc3RhbXA9MTU2Mjk1MTQ5MSZiZWZvcmVfdGltZXN0YW1wPTE1NjI5NTI0NzMnKSwK
ICAgICAgICAgICAgIGBDb21taXRzIGNhbiBhbHNvIGJlIHRyYW5zbGF0ZWQgdG8gdGltZXN0YW1w
LCBhbHRob3VnaCB3aXRoIGEgYml0IG1vcmUgd29yayByZXF1aXJlZCBmcm9tIHRoZSBiYWNrLWVu
ZC4gRW5kcG9pbnRzIHdoaWNoIHN1cHBvcnQgcXVlcnlpbmcgYnkgVVVJRCBhbHNvIHN1cHBvcnQg
cXVlcnlpbmcgYnkgY29tbWl0IGluZm9ybWF0aW9uLiBJbiB0aGUgZmlyc3QgZXhhbXBsZSBpbiB0
aGlzIHNlY3Rpb24sIHdlIHF1ZXJpZWQgYnkgVVVJRCAxNTYyOTUyNDczMDAuIFRoaXMgY29ycmVz
cG9uZHMgdG8gJHtleHRlcm5hbExpbmsoJ2h0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNl
dC8yNDczOTEvd2Via2l0JywgJ3IyNDczOTEnKX0uIFdlIGNvdWxkIGluc3RlYWQgcXVlcnkgYnkg
dGhlIGNvbW1pdCBpbmZvcm1hdGlvbjpgLAotICAgICAgICAgICAgY29kZUJsb2NrKCdpZD0yNDcz
OTEmcmVwb3NpdG9yeV9pZD13ZWJraXQmYnJhbmNoPXRydW5rJyksCisgICAgICAgICAgICBjb2Rl
QmxvY2soJ2lkPTI0NzM5MSZyZXBvc2l0b3J5X2lkPXdlYmtpdCZicmFuY2g9bWFpbicpLAogICAg
ICAgICAgICAgYEJ1dCwgYXMgb3V0bGluZWQgaW4gdGhlIG92ZXJ2aWV3cyBhYm91dCAke2xvY2Fs
TGluayhbJ1F1ZXJ5IFBhcmFtZXRlcnMnLCAnQnJhbmNoJ10sICdicmFuY2hlcycpfSBhbmQgJHts
b2NhbExpbmsoWydRdWVyeSBQYXJhbWV0ZXJzJywgJ1JlcG9zaXRvcnknXSwgJ3JlcG9zaXRvcmll
cycpfSwgZW5kcG9pbnRzIHdoaWNoIHN1cHBvcnQgdGhvc2UgcXVlcmllcyBoYXZlIGRlZmF1bHRz
IHdoaWNoIGNvdmVyIG1hbnkgY2FzZXMsIHNvIHRoZSBwcmV2aW91cyBxdWVyeSBjb3VsZCBiZSBz
aW1wbGlmaWVkIHRvOmAsCiAgICAgICAgICAgICBjb2RlQmxvY2soJ2lkPTI0NzM5MScpLAogICAg
ICAgICAgICAgYEJlY2F1c2UgZW5kcG9pbnRzIHN1cHBvcnRpbmcgdGltZSBhcmUgY29udmVydCBl
dmVyeXRoaW5nIHRvIFVVSUQgb24gdGhlIGJhY2tlbmQsIHRoZSBxdWVyaWVzIHRvIHRoZXNlIGVu
ZHBvaW50cyBhcmUgcXVpdGUgZmxleGlibGUuIFRoZSBmb2xsb3dpbmcgYXJlIGFsbCBleGFtcGxl
cyBvZiB2YWxpZCB0aW1lIHF1ZXJpZXM6YCwKICAgICAgICAgICAgIGNvZGVCbG9jaygnYWZ0ZXJf
aWQ9MjQ3MzkxJnJlcG9zaXRvcnlfaWQ9d2Via2l0JyksCiAgICAgICAgICAgICBjb2RlQmxvY2so
J2FmdGVyX2lkPTI0NzM5MCZiZWZvcmVfdGltZXN0YW1wPTE1NjI5NTI0NzMnKSwKLSAgICAgICAg
ICAgIGNvZGVCbG9jaygnYmVmb3JlX2lkPTI0NzM5MSZhZnRlcl91dWlkPTE1NjI5NTE0OTEwMCZi
ZWZvcmVfYnJhbmNoPXRydW5rJyksCisgICAgICAgICAgICBjb2RlQmxvY2soJ2JlZm9yZV9pZD0y
NDczOTEmYWZ0ZXJfdXVpZD0xNTYyOTUxNDkxMDAmYmVmb3JlX2JyYW5jaD1tYWluJyksCiAgICAg
ICAgIF0sCiAgICAgfQogfQpJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvdmlldy90ZW1wbGF0ZXMvaW52ZXN0aWdhdGUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3
L3RlbXBsYXRlcy9pbnZlc3RpZ2F0ZS5odG1sCShyZXZpc2lvbiAyNzQ4NjkpCisrKyBUb29scy9T
Y3JpcHRzL2xpYnJhcmllcy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS92aWV3L3RlbXBsYXRlcy9p
bnZlc3RpZ2F0ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNDgsNiArMTQ4LDcgQEAgY2xhc3Mg
U3VpdGVGYWlsdXJlc1ZpZXcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IGJyYW5jaGVzID0gbmV3IFNldChjb21taXRzLm1hcChjb21taXQgPT4gY29tbWl0
LmJyYW5jaCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyYW5j
aGVzLmRlbGV0ZSgndHJ1bmsnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBicmFuY2hlcy5kZWxldGUoJ21hc3RlcicpOworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGJyYW5jaGVzLmRlbGV0ZSgnbWFpbicpOwogCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVwb3NpdG9yaWVzID0gbmV3IFNldChj
b21taXRzLm1hcChjb21taXQgPT4gY29tbWl0LnJlcG9zaXRvcnlfaWQpKTsKIApJbmRleDogVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvbW9ja3MvcmVtb3Rl
L2dpdF9odWIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0
c2NtcHkvd2Via2l0c2NtcHkvbW9ja3MvcmVtb3RlL2dpdF9odWIucHkJKHJldmlzaW9uIDI3NDg2
OSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L21v
Y2tzL3JlbW90ZS9naXRfaHViLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw3ICsyMyw2IEBACiBp
bXBvcnQgb3MKIGltcG9ydCBqc29uCiAKLWZyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCiBm
cm9tIHdlYmtpdGNvcmVweSBpbXBvcnQgbW9ja3MKIGZyb20gd2Via2l0c2NtcHkgaW1wb3J0IENv
bW1pdCwgcmVtb3RlIGFzIHNjbXJlbW90ZQogCkBAIC0xMzQsNiArMTMzLDggQEAgY2xhc3MgR2l0
SHViKG1vY2tzLlJlcXVlc3RzKToKICAgICAgICAgXSwgdXJsPXVybCkKIAogICAgIGRlZiBfY29t
bWl0X3Jlc3BvbnNlKHNlbGYsIHVybCwgcmVmKToKKyAgICAgICAgZnJvbSBkYXRldGltZSBpbXBv
cnQgZGF0ZXRpbWUsIHRpbWVkZWx0YQorCiAgICAgICAgIGNvbW1pdCA9IHNlbGYuY29tbWl0KHJl
ZikKICAgICAgICAgaWYgbm90IGNvbW1pdDoKICAgICAgICAgICAgIHJldHVybiBtb2Nrcy5SZXNw
b25zZSgKQEAgLTE0NywxMSArMTQ4LDExIEBAIGNsYXNzIEdpdEh1Yihtb2Nrcy5SZXF1ZXN0cyk6
CiAgICAgICAgICAgICAgICAgJ2F1dGhvcic6IHsKICAgICAgICAgICAgICAgICAgICAgJ25hbWUn
OiBjb21taXQuYXV0aG9yLm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICdlbWFpbCc6IGNvbW1p
dC5hdXRob3IuZW1haWwsCi0gICAgICAgICAgICAgICAgICAgICdkYXRlJzogZGF0ZXRpbWUuZnJv
bXRpbWVzdGFtcChjb21taXQudGltZXN0YW1wKS5zdHJmdGltZSgnJVktJW0tJWRUJUg6JU06JVNa
JyksCisgICAgICAgICAgICAgICAgICAgICdkYXRlJzogZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFt
cChjb21taXQudGltZXN0YW1wIC0gdGltZWRlbHRhKGhvdXJzPTcpLnNlY29uZHMpLnN0cmZ0aW1l
KCclWS0lbS0lZFQlSDolTTolU1onKSwKICAgICAgICAgICAgICAgICB9LCAnY29tbWl0dGVyJzog
ewogICAgICAgICAgICAgICAgICAgICAnbmFtZSc6IGNvbW1pdC5hdXRob3IubmFtZSwKICAgICAg
ICAgICAgICAgICAgICAgJ2VtYWlsJzogY29tbWl0LmF1dGhvci5lbWFpbCwKLSAgICAgICAgICAg
ICAgICAgICAgJ2RhdGUnOiBkYXRldGltZS5mcm9tdGltZXN0YW1wKGNvbW1pdC50aW1lc3RhbXAp
LnN0cmZ0aW1lKCclWS0lbS0lZFQlSDolTTolU1onKSwKKyAgICAgICAgICAgICAgICAgICAgJ2Rh
dGUnOiBkYXRldGltZS51dGNmcm9tdGltZXN0YW1wKGNvbW1pdC50aW1lc3RhbXAgLSB0aW1lZGVs
dGEoaG91cnM9Nykuc2Vjb25kcykuc3RyZnRpbWUoJyVZLSVtLSVkVCVIOiVNOiVTWicpLAogICAg
ICAgICAgICAgICAgIH0sICdtZXNzYWdlJzogY29tbWl0Lm1lc3NhZ2UgKyAnXG5naXQtc3ZuLWlk
OiBodHRwczovL3N2bi5leGFtcGxlLm9yZy9yZXBvc2l0b3J5L3dlYmtpdC97fUB7fSAyNjhmNDVj
Yy1jZDA5LTA0MTAtYWIzYy1kNTI2OTFiNGRiZmNcbicuZm9ybWF0KAogICAgICAgICAgICAgICAg
ICAgICAndHJ1bmsnIGlmIGNvbW1pdC5icmFuY2ggPT0gc2VsZi5kZWZhdWx0X2JyYW5jaCBlbHNl
IGNvbW1pdC5icmFuY2gsIGNvbW1pdC5yZXZpc2lvbiwKICAgICAgICAgICAgICAgICApIGlmIGNv
bW1pdC5yZXZpc2lvbiBlbHNlICcnLAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>