<?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>225241</bug_id>
          
          <creation_ts>2021-04-30 12:06:01 -0700</creation_ts>
          <short_desc>[webkitcmpy] Better document inner-workings of identifier generation</short_desc>
          <delta_ts>2021-04-30 15:25:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>dean_johnson</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1755764</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-04-30 12:06:01 -0700</bug_when>
    <thetext>Dean Johnson recommended adding more comments to the implementation details of webkitscmpy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755770</commentid>
    <comment_count>1</comment_count>
      <attachid>427440</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-04-30 12:13:23 -0700</bug_when>
    <thetext>Created attachment 427440
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755805</commentid>
    <comment_count>2</comment_count>
      <attachid>427447</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-04-30 14:28:34 -0700</bug_when>
    <thetext>Created attachment 427447
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755810</commentid>
    <comment_count>3</comment_count>
      <attachid>427447</attachid>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2021-04-30 14:39:28 -0700</bug_when>
    <thetext>Comment on attachment 427447
Patch

Unofficial r+; LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755812</commentid>
    <comment_count>4</comment_count>
      <attachid>427447</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-04-30 14:40:05 -0700</bug_when>
    <thetext>Comment on attachment 427447
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755831</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-30 15:24:22 -0700</bug_when>
    <thetext>Committed r276856 (237207@main): &lt;https://commits.webkit.org/237207@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427447.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1755832</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-30 15:25:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/77401337&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427440</attachid>
            <date>2021-04-30 12:13:23 -0700</date>
            <delta_ts>2021-04-30 14:28:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225241-20210430121322.patch</filename>
            <type>text/plain</type>
            <size>6111</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3Njg0OCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE2IEBACisyMDIxLTA0LTMwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbd2Via2l0Y21weV0gQmV0dGVyIGRvY3VtZW50IGlubmVyLXdvcmtpbmdz
IG9mIGlkZW50aWZpZXIgZ2VuZXJhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgV0lQCisKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy93ZWJr
aXRzY21weS93ZWJraXRzY21weS9sb2NhbC9naXQucHk6CisgICAgICAgIChHaXQuY29tbWl0KToK
KyAgICAgICAgKEdpdC5maW5kKToKKwogMjAyMS0wNC0zMCAgTWlndWVsIEdvbWV6ICA8bWFnb21l
ekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW1dQRV0gUHJvcGVybHkgcmVjb3ZlciBmcm9t
IHVucmVzcG9uc2l2ZSB3ZWIgcHJvY2Vzc2VzCkluZGV4OiBUb29scy9TY3JpcHRzL2xpYnJhcmll
cy93ZWJraXRzY21weS93ZWJraXRzY21weS9sb2NhbC9naXQucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvbG9jYWwvZ2l0LnB5
CShyZXZpc2lvbiAyNzY4NDEpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21w
eS93ZWJraXRzY21weS9sb2NhbC9naXQucHkJKHdvcmtpbmcgY29weSkKQEAgLTE1MSw4ICsxNTEs
MTEgQEAgY2xhc3MgR2l0KFNjbSk6CiAgICAgICAgIHJldHVybiBzb3J0ZWQoc2V0KFsnLycuam9p
bihicmFuY2guc3BsaXQoJy8nKVsyOl0pIGlmIGJyYW5jaC5zdGFydHN3aXRoKCdyZW1vdGVzL29y
aWdpbi8nKSBlbHNlIGJyYW5jaCBmb3IgYnJhbmNoIGluIHJlc3VsdF0pKQogCiAgICAgZGVmIGNv
bW1pdChzZWxmLCBoYXNoPU5vbmUsIHJldmlzaW9uPU5vbmUsIGlkZW50aWZpZXI9Tm9uZSwgYnJh
bmNoPU5vbmUsIHRhZz1Ob25lLCBpbmNsdWRlX2xvZz1UcnVlLCBpbmNsdWRlX2lkZW50aWZpZXI9
VHJ1ZSk6CisgICAgICAgICMgT25seSBnaXQtc3ZuIGNoZWNrb3V0cyBjYW4gY29udmVydCByZXZp
c2lvbnMgdG8gZnVsbHkgcXVhbGlmaWVkIGNvbW1pdHMKICAgICAgICAgaWYgcmV2aXNpb24gYW5k
IG5vdCBzZWxmLmlzX3N2bjoKICAgICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9uKCdUaGlz
IGdpdCBjaGVja291dCBkb2VzIG5vdCBzdXBwb3J0IFNWTiByZXZpc2lvbnMnKQorCisgICAgICAg
ICMgRGV0ZXJtaW5lIHRoZSBoYXNoIGZvciBhIHByb3ZpZGVkIFN1YnZlcnNpb24gcmV2aXNpb24K
ICAgICAgICAgZWxpZiByZXZpc2lvbjoKICAgICAgICAgICAgIGlmIGhhc2g6CiAgICAgICAgICAg
ICAgICAgcmFpc2UgVmFsdWVFcnJvcignQ2Fubm90IGRlZmluZSBib3RoIGhhc2ggYW5kIHJldmlz
aW9uJykKQEAgLTE3Myw2ICsxNzYsNyBAQCBjbGFzcyBHaXQoU2NtKToKICAgICAgICAgcGFyc2Vk
X2JyYW5jaF9wb2ludCA9IE5vbmUKICAgICAgICAgbG9nX2Zvcm1hdCA9IFsnLTEnXSBpZiBpbmNs
dWRlX2xvZyBlbHNlIFsnLTEnLCAnLS1mb3JtYXQ9c2hvcnQnXQogCisgICAgICAgICMgRGV0ZXJt
aW5lIHRoZSBgZ2l0IGxvZ2Agb3V0cHV0IGFuZCBicmFuY2ggZm9yIGEgZ2l2ZW4gaWRlbnRpZmll
cgogICAgICAgICBpZiBpZGVudGlmaWVyIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgaWYgcmV2
aXNpb246CiAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignQ2Fubm90IGRlZmluZSBi
b3RoIHJldmlzaW9uIGFuZCBpZGVudGlmaWVyJykKQEAgLTIxOCw2ICsyMjIsNyBAQCBjbGFzcyBH
aXQoU2NtKToKICAgICAgICAgICAgIGlmIGlkZW50aWZpZXIgPCAwOgogICAgICAgICAgICAgICAg
IGlkZW50aWZpZXIgPSBOb25lCiAKKyAgICAgICAgIyBEZXRlcm1pbmUgdGhlIGBnaXQgbG9nYCBv
dXRwdXQgZm9yIGEgZ2l2ZW4gYnJhbmNoIG9yIHRhZwogICAgICAgICBlbGlmIGJyYW5jaCBvciB0
YWc6CiAgICAgICAgICAgICBpZiBoYXNoOgogICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJy
b3IoJ0Nhbm5vdCBkZWZpbmUgYm90aCB0YWcvYnJhbmNoIGFuZCBoYXNoJykKQEAgLTIyOCwyOSAr
MjMzLDM3IEBAIGNsYXNzIEdpdChTY20pOgogICAgICAgICAgICAgaWYgbG9nLnJldHVybmNvZGU6
CiAgICAgICAgICAgICAgICAgcmFpc2Ugc2VsZi5FeGNlcHRpb24oIkZhaWxlZCB0byByZXRyaWV2
ZSBjb21taXQgaW5mb3JtYXRpb24gZm9yICd7fSciLmZvcm1hdChicmFuY2ggb3IgdGFnKSkKIAor
ICAgICAgICAjIERldGVybWluZSB0aGUgYGdpdCBsb2dgIG91dHB1dCBmb3IgYSBnaXZlbiBoYXNo
CiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBoYXNoID0gQ29tbWl0Ll9wYXJzZV9oYXNoKGhh
c2gsIGRvX2Fzc2VydD1UcnVlKQogICAgICAgICAgICAgbG9nID0gcnVuKFtzZWxmLmV4ZWN1dGFi
bGUoKSwgJ2xvZycsIGhhc2ggb3IgJ0hFQUQnXSArIGxvZ19mb3JtYXQsIGN3ZD1zZWxmLnJvb3Rf
cGF0aCwgY2FwdHVyZV9vdXRwdXQ9VHJ1ZSwgZW5jb2Rpbmc9J3V0Zi04JykKICAgICAgICAgICAg
IGlmIGxvZy5yZXR1cm5jb2RlOgogICAgICAgICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9u
KCJGYWlsZWQgdG8gcmV0cmlldmUgY29tbWl0IGluZm9ybWF0aW9uIGZvciAne30nIi5mb3JtYXQo
aGFzaCBvciAnSEVBRCcpKQogCisgICAgICAgICMgRnVsbHkgZGVmaW5lIHRoZSBoYXNoIGZyb20g
dGhlIGBnaXQgbG9nYCBvdXRwdXQKICAgICAgICAgbWF0Y2ggPSBzZWxmLkdJVF9DT01NSVQubWF0
Y2gobG9nLnN0ZG91dC5zcGxpdGxpbmVzKClbMF0pCiAgICAgICAgIGlmIG5vdCBtYXRjaDoKICAg
ICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9uKCdJbnZhbGlkIGNvbW1pdCBoYXNoIGluIGdp
dCBsb2cnKQogICAgICAgICBoYXNoID0gbWF0Y2guZ3JvdXAoJ2hhc2gnKQogCisgICAgICAgICMg
QSBjb21taXQgaXMgb2Z0ZW4gb24gbXVsdGlwbGUgYnJhbmNoZXMsIHRoZSBjYW5vbmljYWwgYnJh
bmNoIGlzIHRoZSBvbmUgd2l0aCB0aGUgaGlnaGVzdCBwcmlvcml0eQogICAgICAgICBicmFuY2gg
PSBzZWxmLnByaW9yaXRpemVfYnJhbmNoZXMoc2VsZi5fYnJhbmNoZXNfZm9yKGhhc2gpKQogCisg
ICAgICAgICMgQ29tcHV0ZSB0aGUgaWRlbnRpZmllciBpZiB0aGUgZnVuY3Rpb24gZGlkIG5vdCBy
ZWNlaXZlIG9uZSBhbmQgd2Ugd2VyZSBhc2tlZCB0bwogICAgICAgICBpZiBub3QgaWRlbnRpZmll
ciBhbmQgaW5jbHVkZV9pZGVudGlmaWVyOgogICAgICAgICAgICAgaWRlbnRpZmllciA9IHNlbGYu
X2NvbW1pdF9jb3VudChoYXNoIGlmIGJyYW5jaCA9PSBkZWZhdWx0X2JyYW5jaCBlbHNlICd7fS4u
e30nLmZvcm1hdChkZWZhdWx0X2JyYW5jaCwgaGFzaCkpCisKKyAgICAgICAgIyBPbmx5IGNvbXB1
dGUgdGhlIGJyYW5jaCBwb2ludCB3ZSdyZSBvbiBzb21ldGhpbmcgb3RoZXIgdGhhbiB0aGUgZGVm
YXVsdCBicmFuY2gKICAgICAgICAgYnJhbmNoX3BvaW50ID0gTm9uZSBpZiBub3QgaW5jbHVkZV9p
ZGVudGlmaWVyIG9yIGJyYW5jaCA9PSBkZWZhdWx0X2JyYW5jaCBlbHNlIHNlbGYuX2NvbW1pdF9j
b3VudChoYXNoKSAtIGlkZW50aWZpZXIKICAgICAgICAgaWYgYnJhbmNoX3BvaW50IGFuZCBwYXJz
ZWRfYnJhbmNoX3BvaW50IGFuZCBicmFuY2hfcG9pbnQgIT0gcGFyc2VkX2JyYW5jaF9wb2ludDoK
ICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlByb3ZpZGVkICdicmFuY2hfcG9pbnQnIGRv
ZXMgbm90IG1hdGNoIGJyYW5jaCBwb2ludCBvZiBzcGVjaWZpZWQgYnJhbmNoIikKIAorICAgICAg
ICAjIENoZWNrIHRoZSBjb21taXQgbG9nIGZvciBhIGdpdC1zdm4gcmV2aXNpb24KICAgICAgICAg
bG9nY29udGVudCA9ICdcbicuam9pbihsaW5lWzQ6XSBmb3IgbGluZSBpbiBsb2cuc3Rkb3V0LnNw
bGl0bGluZXMoKVs0Ol0pCiAgICAgICAgIG1hdGNoZXMgPSBzZWxmLkdJVF9TVk5fUkVWSVNJT04u
ZmluZGFsbChsb2djb250ZW50KQogICAgICAgICByZXZpc2lvbiA9IGludChtYXRjaGVzWy0xXS5z
cGxpdCgnQCcpWzBdKSBpZiBtYXRjaGVzIGVsc2UgTm9uZQogCisgICAgICAgICMgV2Ugb25seSBj
YXJlIGFib3V0IHdoZW4gYSBjb21taXQgd2FzIGNvbW1pdGVkCiAgICAgICAgIGNvbW1pdF90aW1l
ID0gcnVuKAogICAgICAgICAgICAgW3NlbGYuZXhlY3V0YWJsZSgpLCAnc2hvdycsICctcycsICct
LWZvcm1hdD0lY3QnLCBoYXNoXSwKICAgICAgICAgICAgIGN3ZD1zZWxmLnJvb3RfcGF0aCwgY2Fw
dHVyZV9vdXRwdXQ9VHJ1ZSwgZW5jb2Rpbmc9J3V0Zi04JywKQEAgLTI1OSw2ICsyNzIsOSBAQCBj
bGFzcyBHaXQoU2NtKToKICAgICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9uKCdGYWlsZWQg
dG8gcmV0cmlldmUgY29tbWl0IHRpbWUgZm9yIHt9Jy5mb3JtYXQoaGFzaCkpCiAgICAgICAgIHRp
bWVzdGFtcCA9IGludChjb21taXRfdGltZS5zdGRvdXQubHN0cmlwKCkpCiAKKyAgICAgICAgIyBD
b21wYXJpbmcgY29tbWl0cyBpbiBkaWZmZXJlbnQgcmVwb3NpdG9yaWVzIGludm9sdmVzIGNvbXBh
cmluZyB0aW1lc3RhbXBzLiBUaGlzIGlzIHByb2JsZW1hdGljIGJlY2F1c2UgaXQgZ2l0LAorICAg
ICAgICAjIGl0J3MgcG9zc2libGUgZm9yIGEgc2VyaWVzIG9mIGNvbW1pdHMgdG8gc2hhcmUgYSBj
b21taXQgdGltZS4gVG8gaGFuZGxlIHRoaXMgY2FzZSwgd2UgYXNzaWduIGVhY2ggY29tbWl0IGEK
KyAgICAgICAgIyB6ZXJvLWluZGV4ZWQgIm9yZGVyIiB3aXRoaW4gaXQncyB0aW1lc3RhbXAuCiAg
ICAgICAgIG9yZGVyID0gMAogICAgICAgICB3aGlsZSBub3QgaWRlbnRpZmllciBvciBvcmRlciAr
IDEgPCBpZGVudGlmaWVyICsgKGJyYW5jaF9wb2ludCBvciAwKToKICAgICAgICAgICAgIGNvbW1p
dF90aW1lID0gcnVuKApAQCAtMjg4LDkgKzMwNCwxMSBAQCBjbGFzcyBHaXQoU2NtKToKICAgICAg
ICAgaWYgbm90IGlzaW5zdGFuY2UoYXJndW1lbnQsIHNpeC5zdHJpbmdfdHlwZXMpOgogICAgICAg
ICAgICAgcmFpc2UgVmFsdWVFcnJvcigiRXhwZWN0ZWQgJ2FyZ3VtZW50JyB0byBiZSBhIHN0cmlu
Zywgbm90ICd7fSciLmZvcm1hdCh0eXBlKGFyZ3VtZW50KSkpCiAKKyAgICAgICAgIyBNYXAgYW55
IGNhbmRpZGF0ZSBkZWZhdWx0IGJyYW5jaCB0byB0aGUgb25lIHVzZWQgYnkgdGhpcyByZXBvc2l0
b3J5CiAgICAgICAgIGlmIGFyZ3VtZW50IGluIHNlbGYuREVGQVVMVF9CUkFOQ0hFUzoKICAgICAg
ICAgICAgIGFyZ3VtZW50ID0gc2VsZi5kZWZhdWx0X2JyYW5jaAogCisgICAgICAgICMgU2VlIGlm
IHRoZSBhcmd1bWVudCB0aGUgdXNlciBzcGVjaWZpZWQgaXMgYSByZWNvZ25pemVkIGNvbW1pdCBm
b3JtYXQKICAgICAgICAgcGFyc2VkX2NvbW1pdCA9IENvbW1pdC5wYXJzZShhcmd1bWVudCwgZG9f
YXNzZXJ0PUZhbHNlKQogICAgICAgICBpZiBwYXJzZWRfY29tbWl0OgogICAgICAgICAgICAgaWYg
cGFyc2VkX2NvbW1pdC5icmFuY2ggaW4gc2VsZi5ERUZBVUxUX0JSQU5DSEVTOgpAQCAtMzA1LDYg
KzMyMyw3IEBAIGNsYXNzIEdpdChTY20pOgogICAgICAgICAgICAgICAgIGluY2x1ZGVfaWRlbnRp
Zmllcj1pbmNsdWRlX2lkZW50aWZpZXIsCiAgICAgICAgICAgICApCiAKKyAgICAgICAgIyBUaGUg
YXJndW1lbnQgaXNuJ3QgYSByZWNvZ25pemVkIGNvbW1pdCBmb3JtYXQsIGhvcGVmdWxseSBpdCBp
cyBhIHZhbGlkIGdpdCByZWYgb2Ygc29tZSBmb3JtCiAgICAgICAgIG91dHB1dCA9IHJ1bigKICAg
ICAgICAgICAgIFtzZWxmLmV4ZWN1dGFibGUoKSwgJ3Jldi1wYXJzZScsIGFyZ3VtZW50XSwKICAg
ICAgICAgICAgIGN3ZD1zZWxmLnJvb3RfcGF0aCwgY2FwdHVyZV9vdXRwdXQ9VHJ1ZSwgZW5jb2Rp
bmc9J3V0Zi04JywK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427447</attachid>
            <date>2021-04-30 14:28:34 -0700</date>
            <delta_ts>2021-04-30 15:24:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225241-20210430142833.patch</filename>
            <type>text/plain</type>
            <size>16597</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3Njg1MikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIwIEBACisyMDIxLTA0LTMwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbd2Via2l0Y21weV0gQmV0dGVyIGRvY3VtZW50IGlubmVyLXdvcmtpbmdz
IG9mIGlkZW50aWZpZXIgZ2VuZXJhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MjQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRz
Y21weS9sb2NhbC9naXQucHk6CisgICAgICAgIChHaXQuY29tbWl0KToKKyAgICAgICAgKEdpdC5m
aW5kKToKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21w
eS9sb2NhbC9zdm4ucHk6CisgICAgICAgIChTdm4uY29tbWl0KToKKyAgICAgICAgKiBTY3JpcHRz
L2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9yZW1vdGUvYml0YnVja2V0LnB5Ogor
ICAgICAgICAoQml0QnVja2V0LmNvbW1pdCk6CisgICAgICAgICogU2NyaXB0cy9saWJyYXJpZXMv
d2Via2l0c2NtcHkvd2Via2l0c2NtcHkvcmVtb3RlL2dpdF9odWIucHk6CisgICAgICAgIChHaXRI
dWIuY29tbWl0KToKKwogMjAyMS0wNC0zMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzY4NDYuCkluZGV4
OiBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9sb2NhbC9n
aXQucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkv
d2Via2l0c2NtcHkvbG9jYWwvZ2l0LnB5CShyZXZpc2lvbiAyNzY4NTEpCisrKyBUb29scy9TY3Jp
cHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9sb2NhbC9naXQucHkJKHdvcmtp
bmcgY29weSkKQEAgLTE1MSw4ICsxNTEsMTEgQEAgY2xhc3MgR2l0KFNjbSk6CiAgICAgICAgIHJl
dHVybiBzb3J0ZWQoc2V0KFsnLycuam9pbihicmFuY2guc3BsaXQoJy8nKVsyOl0pIGlmIGJyYW5j
aC5zdGFydHN3aXRoKCdyZW1vdGVzL29yaWdpbi8nKSBlbHNlIGJyYW5jaCBmb3IgYnJhbmNoIGlu
IHJlc3VsdF0pKQogCiAgICAgZGVmIGNvbW1pdChzZWxmLCBoYXNoPU5vbmUsIHJldmlzaW9uPU5v
bmUsIGlkZW50aWZpZXI9Tm9uZSwgYnJhbmNoPU5vbmUsIHRhZz1Ob25lLCBpbmNsdWRlX2xvZz1U
cnVlLCBpbmNsdWRlX2lkZW50aWZpZXI9VHJ1ZSk6CisgICAgICAgICMgT25seSBnaXQtc3ZuIGNo
ZWNrb3V0cyBjYW4gY29udmVydCByZXZpc2lvbnMgdG8gZnVsbHkgcXVhbGlmaWVkIGNvbW1pdHMK
ICAgICAgICAgaWYgcmV2aXNpb24gYW5kIG5vdCBzZWxmLmlzX3N2bjoKICAgICAgICAgICAgIHJh
aXNlIHNlbGYuRXhjZXB0aW9uKCdUaGlzIGdpdCBjaGVja291dCBkb2VzIG5vdCBzdXBwb3J0IFNW
TiByZXZpc2lvbnMnKQorCisgICAgICAgICMgRGV0ZXJtaW5lIHRoZSBoYXNoIGZvciBhIHByb3Zp
ZGVkIFN1YnZlcnNpb24gcmV2aXNpb24KICAgICAgICAgZWxpZiByZXZpc2lvbjoKICAgICAgICAg
ICAgIGlmIGhhc2g6CiAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignQ2Fubm90IGRl
ZmluZSBib3RoIGhhc2ggYW5kIHJldmlzaW9uJykKQEAgLTE3Myw2ICsxNzYsNyBAQCBjbGFzcyBH
aXQoU2NtKToKICAgICAgICAgcGFyc2VkX2JyYW5jaF9wb2ludCA9IE5vbmUKICAgICAgICAgbG9n
X2Zvcm1hdCA9IFsnLTEnXSBpZiBpbmNsdWRlX2xvZyBlbHNlIFsnLTEnLCAnLS1mb3JtYXQ9c2hv
cnQnXQogCisgICAgICAgICMgRGV0ZXJtaW5lIHRoZSBgZ2l0IGxvZ2Agb3V0cHV0IGFuZCBicmFu
Y2ggZm9yIGEgZ2l2ZW4gaWRlbnRpZmllcgogICAgICAgICBpZiBpZGVudGlmaWVyIGlzIG5vdCBO
b25lOgogICAgICAgICAgICAgaWYgcmV2aXNpb246CiAgICAgICAgICAgICAgICAgcmFpc2UgVmFs
dWVFcnJvcignQ2Fubm90IGRlZmluZSBib3RoIHJldmlzaW9uIGFuZCBpZGVudGlmaWVyJykKQEAg
LTIxOCw2ICsyMjIsNyBAQCBjbGFzcyBHaXQoU2NtKToKICAgICAgICAgICAgIGlmIGlkZW50aWZp
ZXIgPCAwOgogICAgICAgICAgICAgICAgIGlkZW50aWZpZXIgPSBOb25lCiAKKyAgICAgICAgIyBE
ZXRlcm1pbmUgdGhlIGBnaXQgbG9nYCBvdXRwdXQgZm9yIGEgZ2l2ZW4gYnJhbmNoIG9yIHRhZwog
ICAgICAgICBlbGlmIGJyYW5jaCBvciB0YWc6CiAgICAgICAgICAgICBpZiBoYXNoOgogICAgICAg
ICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ0Nhbm5vdCBkZWZpbmUgYm90aCB0YWcvYnJhbmNo
IGFuZCBoYXNoJykKQEAgLTIyOCwyOSArMjMzLDM3IEBAIGNsYXNzIEdpdChTY20pOgogICAgICAg
ICAgICAgaWYgbG9nLnJldHVybmNvZGU6CiAgICAgICAgICAgICAgICAgcmFpc2Ugc2VsZi5FeGNl
cHRpb24oIkZhaWxlZCB0byByZXRyaWV2ZSBjb21taXQgaW5mb3JtYXRpb24gZm9yICd7fSciLmZv
cm1hdChicmFuY2ggb3IgdGFnKSkKIAorICAgICAgICAjIERldGVybWluZSB0aGUgYGdpdCBsb2dg
IG91dHB1dCBmb3IgYSBnaXZlbiBoYXNoCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBoYXNo
ID0gQ29tbWl0Ll9wYXJzZV9oYXNoKGhhc2gsIGRvX2Fzc2VydD1UcnVlKQogICAgICAgICAgICAg
bG9nID0gcnVuKFtzZWxmLmV4ZWN1dGFibGUoKSwgJ2xvZycsIGhhc2ggb3IgJ0hFQUQnXSArIGxv
Z19mb3JtYXQsIGN3ZD1zZWxmLnJvb3RfcGF0aCwgY2FwdHVyZV9vdXRwdXQ9VHJ1ZSwgZW5jb2Rp
bmc9J3V0Zi04JykKICAgICAgICAgICAgIGlmIGxvZy5yZXR1cm5jb2RlOgogICAgICAgICAgICAg
ICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9uKCJGYWlsZWQgdG8gcmV0cmlldmUgY29tbWl0IGluZm9y
bWF0aW9uIGZvciAne30nIi5mb3JtYXQoaGFzaCBvciAnSEVBRCcpKQogCisgICAgICAgICMgRnVs
bHkgZGVmaW5lIHRoZSBoYXNoIGZyb20gdGhlIGBnaXQgbG9nYCBvdXRwdXQKICAgICAgICAgbWF0
Y2ggPSBzZWxmLkdJVF9DT01NSVQubWF0Y2gobG9nLnN0ZG91dC5zcGxpdGxpbmVzKClbMF0pCiAg
ICAgICAgIGlmIG5vdCBtYXRjaDoKICAgICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9uKCdJ
bnZhbGlkIGNvbW1pdCBoYXNoIGluIGdpdCBsb2cnKQogICAgICAgICBoYXNoID0gbWF0Y2guZ3Jv
dXAoJ2hhc2gnKQogCisgICAgICAgICMgQSBjb21taXQgaXMgb2Z0ZW4gb24gbXVsdGlwbGUgYnJh
bmNoZXMsIHRoZSBjYW5vbmljYWwgYnJhbmNoIGlzIHRoZSBvbmUgd2l0aCB0aGUgaGlnaGVzdCBw
cmlvcml0eQogICAgICAgICBicmFuY2ggPSBzZWxmLnByaW9yaXRpemVfYnJhbmNoZXMoc2VsZi5f
YnJhbmNoZXNfZm9yKGhhc2gpKQogCisgICAgICAgICMgQ29tcHV0ZSB0aGUgaWRlbnRpZmllciBp
ZiB0aGUgZnVuY3Rpb24gZGlkIG5vdCByZWNlaXZlIG9uZSBhbmQgd2Ugd2VyZSBhc2tlZCB0bwog
ICAgICAgICBpZiBub3QgaWRlbnRpZmllciBhbmQgaW5jbHVkZV9pZGVudGlmaWVyOgogICAgICAg
ICAgICAgaWRlbnRpZmllciA9IHNlbGYuX2NvbW1pdF9jb3VudChoYXNoIGlmIGJyYW5jaCA9PSBk
ZWZhdWx0X2JyYW5jaCBlbHNlICd7fS4ue30nLmZvcm1hdChkZWZhdWx0X2JyYW5jaCwgaGFzaCkp
CisKKyAgICAgICAgIyBPbmx5IGNvbXB1dGUgdGhlIGJyYW5jaCBwb2ludCB3ZSdyZSBvbiBzb21l
dGhpbmcgb3RoZXIgdGhhbiB0aGUgZGVmYXVsdCBicmFuY2gKICAgICAgICAgYnJhbmNoX3BvaW50
ID0gTm9uZSBpZiBub3QgaW5jbHVkZV9pZGVudGlmaWVyIG9yIGJyYW5jaCA9PSBkZWZhdWx0X2Jy
YW5jaCBlbHNlIHNlbGYuX2NvbW1pdF9jb3VudChoYXNoKSAtIGlkZW50aWZpZXIKICAgICAgICAg
aWYgYnJhbmNoX3BvaW50IGFuZCBwYXJzZWRfYnJhbmNoX3BvaW50IGFuZCBicmFuY2hfcG9pbnQg
IT0gcGFyc2VkX2JyYW5jaF9wb2ludDoKICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlBy
b3ZpZGVkICdicmFuY2hfcG9pbnQnIGRvZXMgbm90IG1hdGNoIGJyYW5jaCBwb2ludCBvZiBzcGVj
aWZpZWQgYnJhbmNoIikKIAorICAgICAgICAjIENoZWNrIHRoZSBjb21taXQgbG9nIGZvciBhIGdp
dC1zdm4gcmV2aXNpb24KICAgICAgICAgbG9nY29udGVudCA9ICdcbicuam9pbihsaW5lWzQ6XSBm
b3IgbGluZSBpbiBsb2cuc3Rkb3V0LnNwbGl0bGluZXMoKVs0Ol0pCiAgICAgICAgIG1hdGNoZXMg
PSBzZWxmLkdJVF9TVk5fUkVWSVNJT04uZmluZGFsbChsb2djb250ZW50KQogICAgICAgICByZXZp
c2lvbiA9IGludChtYXRjaGVzWy0xXS5zcGxpdCgnQCcpWzBdKSBpZiBtYXRjaGVzIGVsc2UgTm9u
ZQogCisgICAgICAgICMgV2Ugb25seSBjYXJlIGFib3V0IHdoZW4gYSBjb21taXQgd2FzIGNvbW1p
dGVkCiAgICAgICAgIGNvbW1pdF90aW1lID0gcnVuKAogICAgICAgICAgICAgW3NlbGYuZXhlY3V0
YWJsZSgpLCAnc2hvdycsICctcycsICctLWZvcm1hdD0lY3QnLCBoYXNoXSwKICAgICAgICAgICAg
IGN3ZD1zZWxmLnJvb3RfcGF0aCwgY2FwdHVyZV9vdXRwdXQ9VHJ1ZSwgZW5jb2Rpbmc9J3V0Zi04
JywKQEAgLTI1OSw2ICsyNzIsOSBAQCBjbGFzcyBHaXQoU2NtKToKICAgICAgICAgICAgIHJhaXNl
IHNlbGYuRXhjZXB0aW9uKCdGYWlsZWQgdG8gcmV0cmlldmUgY29tbWl0IHRpbWUgZm9yIHt9Jy5m
b3JtYXQoaGFzaCkpCiAgICAgICAgIHRpbWVzdGFtcCA9IGludChjb21taXRfdGltZS5zdGRvdXQu
bHN0cmlwKCkpCiAKKyAgICAgICAgIyBDb21wYXJpbmcgY29tbWl0cyBpbiBkaWZmZXJlbnQgcmVw
b3NpdG9yaWVzIGludm9sdmVzIGNvbXBhcmluZyB0aW1lc3RhbXBzLiBUaGlzIGlzIHByb2JsZW1h
dGljIGJlY2F1c2UgaXQgZ2l0LAorICAgICAgICAjIGl0J3MgcG9zc2libGUgZm9yIGEgc2VyaWVz
IG9mIGNvbW1pdHMgdG8gc2hhcmUgYSBjb21taXQgdGltZS4gVG8gaGFuZGxlIHRoaXMgY2FzZSwg
d2UgYXNzaWduIGVhY2ggY29tbWl0IGEKKyAgICAgICAgIyB6ZXJvLWluZGV4ZWQgIm9yZGVyIiB3
aXRoaW4gaXQncyB0aW1lc3RhbXAuCiAgICAgICAgIG9yZGVyID0gMAogICAgICAgICB3aGlsZSBu
b3QgaWRlbnRpZmllciBvciBvcmRlciArIDEgPCBpZGVudGlmaWVyICsgKGJyYW5jaF9wb2ludCBv
ciAwKToKICAgICAgICAgICAgIGNvbW1pdF90aW1lID0gcnVuKApAQCAtMjg4LDkgKzMwNCwxMSBA
QCBjbGFzcyBHaXQoU2NtKToKICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoYXJndW1lbnQsIHNp
eC5zdHJpbmdfdHlwZXMpOgogICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiRXhwZWN0ZWQg
J2FyZ3VtZW50JyB0byBiZSBhIHN0cmluZywgbm90ICd7fSciLmZvcm1hdCh0eXBlKGFyZ3VtZW50
KSkpCiAKKyAgICAgICAgIyBNYXAgYW55IGNhbmRpZGF0ZSBkZWZhdWx0IGJyYW5jaCB0byB0aGUg
b25lIHVzZWQgYnkgdGhpcyByZXBvc2l0b3J5CiAgICAgICAgIGlmIGFyZ3VtZW50IGluIHNlbGYu
REVGQVVMVF9CUkFOQ0hFUzoKICAgICAgICAgICAgIGFyZ3VtZW50ID0gc2VsZi5kZWZhdWx0X2Jy
YW5jaAogCisgICAgICAgICMgU2VlIGlmIHRoZSBhcmd1bWVudCB0aGUgdXNlciBzcGVjaWZpZWQg
aXMgYSByZWNvZ25pemVkIGNvbW1pdCBmb3JtYXQKICAgICAgICAgcGFyc2VkX2NvbW1pdCA9IENv
bW1pdC5wYXJzZShhcmd1bWVudCwgZG9fYXNzZXJ0PUZhbHNlKQogICAgICAgICBpZiBwYXJzZWRf
Y29tbWl0OgogICAgICAgICAgICAgaWYgcGFyc2VkX2NvbW1pdC5icmFuY2ggaW4gc2VsZi5ERUZB
VUxUX0JSQU5DSEVTOgpAQCAtMzA1LDYgKzMyMyw3IEBAIGNsYXNzIEdpdChTY20pOgogICAgICAg
ICAgICAgICAgIGluY2x1ZGVfaWRlbnRpZmllcj1pbmNsdWRlX2lkZW50aWZpZXIsCiAgICAgICAg
ICAgICApCiAKKyAgICAgICAgIyBUaGUgYXJndW1lbnQgaXNuJ3QgYSByZWNvZ25pemVkIGNvbW1p
dCBmb3JtYXQsIGhvcGVmdWxseSBpdCBpcyBhIHZhbGlkIGdpdCByZWYgb2Ygc29tZSBmb3JtCiAg
ICAgICAgIG91dHB1dCA9IHJ1bigKICAgICAgICAgICAgIFtzZWxmLmV4ZWN1dGFibGUoKSwgJ3Jl
di1wYXJzZScsIGFyZ3VtZW50XSwKICAgICAgICAgICAgIGN3ZD1zZWxmLnJvb3RfcGF0aCwgY2Fw
dHVyZV9vdXRwdXQ9VHJ1ZSwgZW5jb2Rpbmc9J3V0Zi04JywKSW5kZXg6IFRvb2xzL1NjcmlwdHMv
bGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L2xvY2FsL3N2bi5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9sb2Nh
bC9zdm4ucHkJKHJldmlzaW9uIDI3Njg1MSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dl
YmtpdHNjbXB5L3dlYmtpdHNjbXB5L2xvY2FsL3N2bi5weQkod29ya2luZyBjb3B5KQpAQCAtMjY5
LDYgKzI2OSw3IEBAIGNsYXNzIFN2bihTY20pOgogICAgICAgICBpZiBoYXNoOgogICAgICAgICAg
ICAgcmFpc2UgVmFsdWVFcnJvcignU1ZOIGRvZXMgbm90IHN1cHBvcnQgR2l0IGhhc2hlcycpCiAK
KyAgICAgICAgIyBEZXRlcm1pbmUgY29tbWl0IGluZm8sIHJldmlzaW9uIGFuZCBicmFuY2ggZm9y
IGEgZ2l2ZW4gaWRlbnRpZmllcgogICAgICAgICBwYXJzZWRfYnJhbmNoX3BvaW50ID0gTm9uZQog
ICAgICAgICBpZiBpZGVudGlmaWVyIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgaWYgcmV2aXNp
b246CkBAIC0yOTAsNiArMjkxLDggQEAgY2xhc3MgU3ZuKFNjbSk6CiAgICAgICAgICAgICBpZiBi
cmFuY2ggPT0gc2VsZi5kZWZhdWx0X2JyYW5jaCBhbmQgcGFyc2VkX2JyYW5jaF9wb2ludDoKICAg
ICAgICAgICAgICAgICByYWlzZSBzZWxmLkV4Y2VwdGlvbignQ2Fubm90IHByb3ZpZGUgYSBicmFu
Y2ggcG9pbnQgZm9yIGEgY29tbWl0IG9uIHRoZSBkZWZhdWx0IGJyYW5jaCcpCiAKKyAgICAgICAg
ICAgICMgUG9wdWxhdGUgbWFwcGluZyBvZiByZXZpc2lvbnMgb24gdGhlaXIgcmVzcGVjdGl2ZSBi
cmFuY2hlcyBpZiB3ZSBkb24ndCBoYXZlIGVub3VnaCByZXZpc2lvbnMgb24gdGhlCisgICAgICAg
ICAgICAjIGJyYW5jaCBzcGVjaWZpZWQgYnkgdGhlIHByb3ZpZGVkIGlkZW50aWZpZXIKICAgICAg
ICAgICAgIGlmIG5vdCBzZWxmLl9tZXRhZGF0YV9jYWNoZS5nZXQoYnJhbmNoLCBbXSkgb3IgaWRl
bnRpZmllciA+PSBsZW4oc2VsZi5fbWV0YWRhdGFfY2FjaGUuZ2V0KGJyYW5jaCwgW10pKToKICAg
ICAgICAgICAgICAgICBpZiBicmFuY2ggIT0gc2VsZi5kZWZhdWx0X2JyYW5jaDoKICAgICAgICAg
ICAgICAgICAgICAgc2VsZi5fY2FjaGVfcmV2aXNpb25zKGJyYW5jaD1zZWxmLmRlZmF1bHRfYnJh
bmNoKQpAQCAtMzEyLDYgKzMxNSw3IEBAIGNsYXNzIFN2bihTY20pOgogICAgICAgICAgICAgaWYg
bm90IHNlbGYuX21ldGFkYXRhX2NhY2hlLmdldChicmFuY2gsIFtdKSBvciBpZGVudGlmaWVyID49
IGxlbihzZWxmLl9tZXRhZGF0YV9jYWNoZS5nZXQoYnJhbmNoLCBbXSkpOgogICAgICAgICAgICAg
ICAgIHNlbGYuX2NhY2hlX3JldmlzaW9ucyhicmFuY2g9YnJhbmNoKQogCisgICAgICAgICMgRGV0
ZXJtaW5lIHRoZSBjb21taXQgaW5mbyBhbmQgYnJhbmNoIGZvciBhIGdpdmVuIHJldmlzaW9uCiAg
ICAgICAgIGVsaWYgcmV2aXNpb246CiAgICAgICAgICAgICBpZiBicmFuY2g6CiAgICAgICAgICAg
ICAgICAgcmFpc2UgVmFsdWVFcnJvcignQ2Fubm90IGRlZmluZSBib3RoIGJyYW5jaCBhbmQgcmV2
aXNpb24nKQpAQCAtMzIxLDYgKzMyNSw3IEBAIGNsYXNzIFN2bihTY20pOgogICAgICAgICAgICAg
YnJhbmNoID0gc2VsZi5fYnJhbmNoX2ZvcihyZXZpc2lvbikKICAgICAgICAgICAgIGluZm8gPSBz
ZWxmLmluZm8oY2FjaGVkPVRydWUsIHJldmlzaW9uPXJldmlzaW9uKQogCisgICAgICAgICMgRGV0
ZXJtaW5lIHRoZSBjb21taXQgaW5mbywgcmV2aXNpb24gYW5kIGJyYW5jaCBmb3IgYSB0YWcgb3Ig
YnJhbmNoLgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgaWYgYnJhbmNoIGFuZCB0YWc6CiAg
ICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignQ2Fubm90IGRlZmluZSBib3RoIGJyYW5j
aCBhbmQgdGFnJykKQEAgLTMzNiw2ICszNDEsNyBAQCBjbGFzcyBTdm4oU2NtKToKICAgICAgICAg
ICAgIGlmIGJyYW5jaCAhPSBzZWxmLmRlZmF1bHRfYnJhbmNoOgogICAgICAgICAgICAgICAgIGJy
YW5jaCA9IHNlbGYuX2JyYW5jaF9mb3IocmV2aXNpb24pCiAKKyAgICAgICAgIyBFeHRyYWN0IHRo
ZSBjb21taXQgdGltZSBmcm9tIHRoZSBjb21taXQgaW5mbwogICAgICAgICBkYXRlID0gaW5mb1sn
TGFzdCBDaGFuZ2VkIERhdGUnXS5zcGxpdCgnICgnKVswXSBpZiBpbmZvLmdldCgnTGFzdCBDaGFu
Z2VkIERhdGUnKSBlbHNlIE5vbmUKICAgICAgICAgaWYgZGF0ZToKICAgICAgICAgICAgIHR6X2Rp
ZmYgPSBkYXRlLnNwbGl0KCcgJylbLTFdCkBAIC0zNDUsNiArMzUxLDcgQEAgY2xhc3MgU3ZuKFNj
bSk6CiAgICAgICAgICAgICAgICAgbWludXRlcz1pbnQodHpfZGlmZlszOjVdKSwKICAgICAgICAg
ICAgICkgKiAoMSBpZiB0el9kaWZmWzBdID09ICctJyBlbHNlIC0xKQogCisgICAgICAgICMgQ29t
cHV0ZSB0aGUgaWRlbnRpZmllciBpZiB0aGUgZnVuY3Rpb24gZGlkIG5vdCByZWNlaXZlIG9uZSBh
bmQgd2Ugd2VyZSBhc2tlZCB0bwogICAgICAgICBpZiBpbmNsdWRlX2lkZW50aWZpZXIgYW5kIG5v
dCBpZGVudGlmaWVyOgogICAgICAgICAgICAgaWYgYnJhbmNoICE9IHNlbGYuZGVmYXVsdF9icmFu
Y2ggYW5kIHJldmlzaW9uID4gc2VsZi5fbWV0YWRhdGFfY2FjaGUuZ2V0KHNlbGYuZGVmYXVsdF9i
cmFuY2gsIFswXSlbLTFdOgogICAgICAgICAgICAgICAgIHNlbGYuX2NhY2hlX3JldmlzaW9ucyhi
cmFuY2g9c2VsZi5kZWZhdWx0X2JyYW5jaCkKQEAgLTM1NiwxMSArMzYzLDEyIEBAIGNsYXNzIFN2
bihTY20pOgogICAgICAgICBpZiBicmFuY2hfcG9pbnQgYW5kIHBhcnNlZF9icmFuY2hfcG9pbnQg
YW5kIGJyYW5jaF9wb2ludCAhPSBwYXJzZWRfYnJhbmNoX3BvaW50OgogICAgICAgICAgICAgcmFp
c2UgVmFsdWVFcnJvcigiUHJvdmlkZWQgJ2JyYW5jaF9wb2ludCcgZG9lcyBub3QgbWF0Y2ggYnJh
bmNoIHBvaW50IG9mIHNwZWNpZmllZCBicmFuY2giKQogCisgICAgICAgICMgRGV0ZXJtaW5lIHRo
ZSBjb21taXQgbWVzc2FnZSBmb3IgYSBjb21taXQuIE5vdGUgdGhhdCBpbiBTdWJ2ZXJzaW9uLCB0
aGlzIHdpbGwgYWx3YXlzIHJlc3VsdCBpbiBhIG5ldHdvcmsgY2FsbAorICAgICAgICAjIGFuZCBp
cyBvbmUgb2YgdGhlIG1ham9yIHJlYXNvbnMgdGhlIFdlYktpdCBwcm9qZWN0IHVzZXMgQ2hhbmdl
TG9ncy4KICAgICAgICAgaWYgYnJhbmNoID09IHNlbGYuZGVmYXVsdF9icmFuY2ggb3IgJy8nIGlu
IGJyYW5jaDoKICAgICAgICAgICAgIGJyYW5jaF9hcmcgPSAnXi97fScuZm9ybWF0KGJyYW5jaCkK
ICAgICAgICAgZWxzZToKICAgICAgICAgICAgIGJyYW5jaF9hcmcgPSAnXi9icmFuY2hlcy97fScu
Zm9ybWF0KGJyYW5jaCkKLQogICAgICAgICBsb2cgPSBydW4oCiAgICAgICAgICAgICBbc2VsZi5l
eGVjdXRhYmxlKCksICdsb2cnLCAnLWwnLCAnMScsICctcicsIHN0cihyZXZpc2lvbiksIGJyYW5j
aF9hcmddLCBjd2Q9c2VsZi5yb290X3BhdGgsCiAgICAgICAgICAgICBjYXB0dXJlX291dHB1dD1U
cnVlLCBlbmNvZGluZz0ndXRmLTgnLApJbmRleDogVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Vi
a2l0c2NtcHkvd2Via2l0c2NtcHkvcmVtb3RlL2JpdGJ1Y2tldC5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRzY21weS93ZWJraXRzY21weS9yZW1vdGUvYml0
YnVja2V0LnB5CShyZXZpc2lvbiAyNzY4NTEpCisrKyBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93
ZWJraXRzY21weS93ZWJraXRzY21weS9yZW1vdGUvYml0YnVja2V0LnB5CSh3b3JraW5nIGNvcHkp
CkBAIC0xNDUsNiArMTQ1LDcgQEAgY2xhc3MgQml0QnVja2V0KFNjbSk6CiAgICAgICAgIGlmIHJl
dmlzaW9uOgogICAgICAgICAgICAgcmFpc2Ugc2VsZi5FeGNlcHRpb24oJ0Nhbm5vdCBtYXAgcmV2
aXNpb25zIHRvIGNvbW1pdHMgb24gQml0QnVja2V0JykKIAorICAgICAgICAjIERldGVybWluZSB0
aGUgY29tbWl0IGRhdGEgYW5kIGJyYW5jaCBmb3IgYSBnaXZlbiBpZGVudGlmaWVyCiAgICAgICAg
IGlmIGlkZW50aWZpZXIgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBpZiByZXZpc2lvbjoKICAg
ICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdDYW5ub3QgZGVmaW5lIGJvdGggcmV2aXNp
b24gYW5kIGlkZW50aWZpZXInKQpAQCAtMTk0LDYgKzE5NSw3IEBAIGNsYXNzIEJpdEJ1Y2tldChT
Y20pOgogICAgICAgICAgICAgaWYgaWRlbnRpZmllciA8PSAwOgogICAgICAgICAgICAgICAgIGlk
ZW50aWZpZXIgPSBOb25lCiAKKyAgICAgICAgIyBEZXRlcm1pbmUgdGhlIGNvbW1pdCBkYXRhIGZv
ciBhIGdpdmVuIGJyYW5jaCBvciB0YWcKICAgICAgICAgZWxpZiBicmFuY2ggb3IgdGFnOgogICAg
ICAgICAgICAgaWYgaGFzaDoKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdDYW5u
b3QgZGVmaW5lIGJvdGggdGFnL2JyYW5jaCBhbmQgaGFzaCcpCkBAIC0yMDMsMzQgKzIwNSw0MSBA
QCBjbGFzcyBCaXRCdWNrZXQoU2NtKToKICAgICAgICAgICAgIGlmIG5vdCBjb21taXRfZGF0YToK
ICAgICAgICAgICAgICAgICByYWlzZSBzZWxmLkV4Y2VwdGlvbigiRmFpbGVkIHRvIHJldHJpZXZl
IGNvbW1pdCBpbmZvcm1hdGlvbiBmb3IgJ3t9JyIuZm9ybWF0KGJyYW5jaCBvciB0YWcpKQogCisg
ICAgICAgICMgRGV0ZXJtaW5lIHRoZSBjb21taXQgZGF0YSBmb3IgYSBnaXZlbiBoYXNoCiAgICAg
ICAgIGVsc2U6CiAgICAgICAgICAgICBoYXNoID0gQ29tbWl0Ll9wYXJzZV9oYXNoKGhhc2gsIGRv
X2Fzc2VydD1UcnVlKQogICAgICAgICAgICAgY29tbWl0X2RhdGEgPSBzZWxmLnJlcXVlc3QoJ2Nv
bW1pdHMve30nLmZvcm1hdChoYXNoIG9yIHNlbGYuZGVmYXVsdF9icmFuY2gpKQogICAgICAgICAg
ICAgaWYgbm90IGNvbW1pdF9kYXRhOgogICAgICAgICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0
aW9uKCJGYWlsZWQgdG8gcmV0cmlldmUgY29tbWl0IGluZm9ybWF0aW9uIGZvciAne30nIi5mb3Jt
YXQoaGFzaCBvciAnSEVBRCcpKQogCisgICAgICAgICMgQSBjb21taXQgaXMgb2Z0ZW4gb24gbXVs
dGlwbGUgYnJhbmNoZXMsIHRoZSBjYW5vbmljYWwgYnJhbmNoIGlzIHRoZSBvbmUgd2l0aCB0aGUg
aGlnaGVzdCBwcmlvcml0eQogICAgICAgICBicmFuY2hlcyA9IHNlbGYuX2JyYW5jaGVzX2Zvcihj
b21taXRfZGF0YVsnaWQnXSkKICAgICAgICAgaWYgYnJhbmNoZXM6CiAgICAgICAgICAgICBicmFu
Y2ggPSBzZWxmLnByaW9yaXRpemVfYnJhbmNoZXMoYnJhbmNoZXMpCi0KICAgICAgICAgZWxzZToK
ICAgICAgICAgICAgICMgQSBjb21taXQgbm90IG9uIGFueSBicmFuY2hlcyBjYW5ub3QgaGF2ZSBh
biBpZGVudGlmaWVyCiAgICAgICAgICAgICBpZGVudGlmaWVyID0gTm9uZQogICAgICAgICAgICAg
YnJhbmNoID0gTm9uZQogCisgICAgICAgICMgRGVmaW5lIGlkZW50aWZpZXJzIG9uIGRlZmF1bHQg
YnJhbmNoCiAgICAgICAgIGJyYW5jaF9wb2ludCA9IE5vbmUKICAgICAgICAgaWYgaW5jbHVkZV9p
ZGVudGlmaWVyIGFuZCBicmFuY2ggYW5kIGJyYW5jaCA9PSBzZWxmLmRlZmF1bHRfYnJhbmNoOgog
ICAgICAgICAgICAgaWYgbm90IGlkZW50aWZpZXI6CiAgICAgICAgICAgICAgICAgaWRlbnRpZmll
ciA9IHNlbGYuX2Rpc3RhbmNlKGNvbW1pdF9kYXRhWydpZCddKQogCisgICAgICAgICMgRGVmaW5l
IGlkZW50aWZpZXJzIG9uIGJyYW5jaGVzIGRpdmVyZ2VkIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNo
CiAgICAgICAgIGVsaWYgaW5jbHVkZV9pZGVudGlmaWVyIGFuZCBicmFuY2g6CiAgICAgICAgICAg
ICBpZiBub3QgaWRlbnRpZmllcjoKICAgICAgICAgICAgICAgICBpZGVudGlmaWVyID0gc2VsZi5f
ZGlzdGFuY2UoY29tbWl0X2RhdGFbJ2lkJ10sIG1hZ25pdHVkZT0yNTYsIGNvbmRpdGlvbj1sYW1i
ZGEgdmFsOiBzZWxmLmRlZmF1bHRfYnJhbmNoIG5vdCBpbiB2YWwpCiAgICAgICAgICAgICBicmFu
Y2hfcG9pbnQgPSBzZWxmLl9kaXN0YW5jZShjb21taXRfZGF0YVsnaWQnXSkgLSBpZGVudGlmaWVy
CiAKKyAgICAgICAgIyBDaGVjayB0aGUgY29tbWl0IGxvZyBmb3IgYSBnaXQtc3ZuIHJldmlzaW9u
CiAgICAgICAgIG1hdGNoZXMgPSBzZWxmLkdJVF9TVk5fUkVWSVNJT04uZmluZGFsbChjb21taXRf
ZGF0YVsnbWVzc2FnZSddKQogICAgICAgICByZXZpc2lvbiA9IGludChtYXRjaGVzWy0xXS5zcGxp
dCgnQCcpWzBdKSBpZiBtYXRjaGVzIGVsc2UgTm9uZQogCisgICAgICAgICMgQ29tcGFyaW5nIGNv
bW1pdHMgaW4gZGlmZmVyZW50IHJlcG9zaXRvcmllcyBpbnZvbHZlcyBjb21wYXJpbmcgdGltZXN0
YW1wcy4gVGhpcyBpcyBwcm9ibGVtYXRpYyBiZWNhdXNlIGl0IGdpdCwKKyAgICAgICAgIyBpdCdz
IHBvc3NpYmxlIGZvciBhIHNlcmllcyBvZiBjb21taXRzIHRvIHNoYXJlIGEgY29tbWl0IHRpbWUu
IFRvIGhhbmRsZSB0aGlzIGNhc2UsIHdlIGFzc2lnbiBlYWNoIGNvbW1pdCBhCisgICAgICAgICMg
emVyby1pbmRleGVkICJvcmRlciIgd2l0aGluIGl0J3MgdGltZXN0YW1wLgogICAgICAgICB0aW1l
c3RhbXAgPSBpbnQoY29tbWl0X2RhdGFbJ2NvbW1pdHRlclRpbWVzdGFtcCddIC8gMTAwMCkKICAg
ICAgICAgb3JkZXIgPSAwCiAgICAgICAgIHdoaWxlIG5vdCBpZGVudGlmaWVyIG9yIG9yZGVyICsg
MSA8IGlkZW50aWZpZXIgKyAoYnJhbmNoX3BvaW50IG9yIDApOgpJbmRleDogVG9vbHMvU2NyaXB0
cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2NtcHkvcmVtb3RlL2dpdF9odWIucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0c2NtcHkvd2Via2l0c2Nt
cHkvcmVtb3RlL2dpdF9odWIucHkJKHJldmlzaW9uIDI3Njg1MSkKKysrIFRvb2xzL1NjcmlwdHMv
bGlicmFyaWVzL3dlYmtpdHNjbXB5L3dlYmtpdHNjbXB5L3JlbW90ZS9naXRfaHViLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xODcsNiArMTg3LDcgQEAgY2xhc3MgR2l0SHViKFNjbSk6CiAgICAgICAg
IGlmIHJldmlzaW9uOgogICAgICAgICAgICAgcmFpc2Ugc2VsZi5FeGNlcHRpb24oJ0Nhbm5vdCBt
YXAgcmV2aXNpb25zIHRvIGNvbW1pdHMgb24gR2l0SHViJykKIAorICAgICAgICAjIERldGVybWlu
ZSB0aGUgY29tbWl0IGRhdGEgYW5kIGJyYW5jaCBmb3IgYSBnaXZlbiBpZGVudGlmaWVyCiAgICAg
ICAgIGlmIGlkZW50aWZpZXIgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBpZiByZXZpc2lvbjoK
ICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdDYW5ub3QgZGVmaW5lIGJvdGggcmV2
aXNpb24gYW5kIGlkZW50aWZpZXInKQpAQCAtMjMyLDYgKzIzMyw3IEBAIGNsYXNzIEdpdEh1YihT
Y20pOgogICAgICAgICAgICAgaWYgaWRlbnRpZmllciA8PSAwOgogICAgICAgICAgICAgICAgIGlk
ZW50aWZpZXIgPSBOb25lCiAKKyAgICAgICAgIyBEZXRlcm1pbmUgdGhlIGNvbW1pdCBkYXRhIGZv
ciBhIGdpdmVuIGJyYW5jaCBvciB0YWcKICAgICAgICAgZWxpZiBicmFuY2ggb3IgdGFnOgogICAg
ICAgICAgICAgaWYgaGFzaDoKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdDYW5u
b3QgZGVmaW5lIGJvdGggdGFnL2JyYW5jaCBhbmQgaGFzaCcpCkBAIC0yNDEsMjEgKzI0MywyMyBA
QCBjbGFzcyBHaXRIdWIoU2NtKToKICAgICAgICAgICAgIGlmIG5vdCBjb21taXRfZGF0YToKICAg
ICAgICAgICAgICAgICByYWlzZSBzZWxmLkV4Y2VwdGlvbigiRmFpbGVkIHRvIHJldHJpZXZlIGNv
bW1pdCBpbmZvcm1hdGlvbiBmb3IgJ3t9JyIuZm9ybWF0KGJyYW5jaCBvciB0YWcpKQogCisgICAg
ICAgICMgRGV0ZXJtaW5lIHRoZSBjb21taXQgZGF0YSBmb3IgYSBnaXZlbiBoYXNoCiAgICAgICAg
IGVsc2U6CiAgICAgICAgICAgICBoYXNoID0gQ29tbWl0Ll9wYXJzZV9oYXNoKGhhc2gsIGRvX2Fz
c2VydD1UcnVlKQogICAgICAgICAgICAgY29tbWl0X2RhdGEgPSBzZWxmLnJlcXVlc3QoJ2NvbW1p
dHMve30nLmZvcm1hdChoYXNoIG9yIHNlbGYuZGVmYXVsdF9icmFuY2gpKQogICAgICAgICAgICAg
aWYgbm90IGNvbW1pdF9kYXRhOgogICAgICAgICAgICAgICAgIHJhaXNlIHNlbGYuRXhjZXB0aW9u
KCJGYWlsZWQgdG8gcmV0cmlldmUgY29tbWl0IGluZm9ybWF0aW9uIGZvciAne30nIi5mb3JtYXQo
aGFzaCBvciAnSEVBRCcpKQogCisgICAgICAgICMgQSBjb21taXQgaXMgb2Z0ZW4gb24gbXVsdGlw
bGUgYnJhbmNoZXMsIHRoZSBjYW5vbmljYWwgYnJhbmNoIGlzIHRoZSBvbmUgd2l0aCB0aGUgaGln
aGVzdCBwcmlvcml0eQogICAgICAgICBicmFuY2hlcyA9IHNlbGYuX2JyYW5jaGVzX2Zvcihjb21t
aXRfZGF0YVsnc2hhJ10pCiAgICAgICAgIGlmIGJyYW5jaGVzOgogICAgICAgICAgICAgYnJhbmNo
ID0gc2VsZi5wcmlvcml0aXplX2JyYW5jaGVzKGJyYW5jaGVzKQotCiAgICAgICAgIGVsc2U6CiAg
ICAgICAgICAgICAjIEEgY29tbWl0IG5vdCBvbiBhbnkgYnJhbmNoZXMgY2Fubm90IGhhdmUgYW4g
aWRlbnRpZmllcgogICAgICAgICAgICAgaWRlbnRpZmllciA9IE5vbmUKICAgICAgICAgICAgIGJy
YW5jaCA9IE5vbmUKIAorICAgICAgICAjIERlZmluZSBpZGVudGlmaWVycyBvbiBkZWZhdWx0IGJy
YW5jaAogICAgICAgICBicmFuY2hfcG9pbnQgPSBOb25lCiAgICAgICAgIGlmIGluY2x1ZGVfaWRl
bnRpZmllciBhbmQgYnJhbmNoIGFuZCBicmFuY2ggPT0gc2VsZi5kZWZhdWx0X2JyYW5jaDoKICAg
ICAgICAgICAgIGlmIG5vdCBpZGVudGlmaWVyOgpAQCAtMjY0LDExICsyNjgsMTMgQEAgY2xhc3Mg
R2l0SHViKFNjbSk6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigne30ge30n
LmZvcm1hdChyZXN1bHQsIGNvbW1pdF9kYXRhWydzaGEnXSkpCiAgICAgICAgICAgICAgICAgaWRl
bnRpZmllciwgXyA9IHJlc3VsdAogCisgICAgICAgICMgRGVmaW5lIGlkZW50aWZpZXJzIG9uIGJy
YW5jaGVzIGRpdmVyZ2VkIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoCiAgICAgICAgIGVsaWYgaW5j
bHVkZV9pZGVudGlmaWVyIGFuZCBicmFuY2g6CiAgICAgICAgICAgICBpZiBub3QgaWRlbnRpZmll
cjoKICAgICAgICAgICAgICAgICBpZGVudGlmaWVyID0gc2VsZi5fZGlmZmVyZW5jZShzZWxmLmRl
ZmF1bHRfYnJhbmNoLCBjb21taXRfZGF0YVsnc2hhJ10pCiAgICAgICAgICAgICBicmFuY2hfcG9p
bnQgPSBzZWxmLl9jb3VudF9mb3JfcmVmKHJlZj1jb21taXRfZGF0YVsnc2hhJ10pWzBdIC0gaWRl
bnRpZmllcgogCisgICAgICAgICMgQ2hlY2sgdGhlIGNvbW1pdCBsb2cgZm9yIGEgZ2l0LXN2biBy
ZXZpc2lvbgogICAgICAgICBtYXRjaGVzID0gc2VsZi5HSVRfU1ZOX1JFVklTSU9OLmZpbmRhbGwo
Y29tbWl0X2RhdGFbJ2NvbW1pdCddWydtZXNzYWdlJ10pCiAgICAgICAgIHJldmlzaW9uID0gaW50
KG1hdGNoZXNbLTFdLnNwbGl0KCdAJylbMF0pIGlmIG1hdGNoZXMgZWxzZSBOb25lCiAKQEAgLTI3
Nyw2ICsyODMsOSBAQCBjbGFzcyBHaXRIdWIoU2NtKToKICAgICAgICAgICAgIGNvbW1pdF9kYXRh
Wydjb21taXQnXVsnY29tbWl0dGVyJ11bJ2RhdGUnXSwgJyVZLSVtLSVkVCVIOiVNOiVTWicsCiAg
ICAgICAgICkudGltZXR1cGxlKCkpKQogCisgICAgICAgICMgQ29tcGFyaW5nIGNvbW1pdHMgaW4g
ZGlmZmVyZW50IHJlcG9zaXRvcmllcyBpbnZvbHZlcyBjb21wYXJpbmcgdGltZXN0YW1wcy4gVGhp
cyBpcyBwcm9ibGVtYXRpYyBiZWNhdXNlIGl0IGdpdCwKKyAgICAgICAgIyBpdCdzIHBvc3NpYmxl
IGZvciBhIHNlcmllcyBvZiBjb21taXRzIHRvIHNoYXJlIGEgY29tbWl0IHRpbWUuIFRvIGhhbmRs
ZSB0aGlzIGNhc2UsIHdlIGFzc2lnbiBlYWNoIGNvbW1pdCBhCisgICAgICAgICMgemVyby1pbmRl
eGVkICJvcmRlciIgd2l0aGluIGl0J3MgdGltZXN0YW1wLgogICAgICAgICBvcmRlciA9IDAKICAg
ICAgICAgd2hpbGUgbm90IGlkZW50aWZpZXIgb3Igb3JkZXIgKyAxIDwgaWRlbnRpZmllciArIChi
cmFuY2hfcG9pbnQgb3IgMCk6CiAgICAgICAgICAgICByZXNwb25zZSA9IHNlbGYucmVxdWVzdCgn
Y29tbWl0cy97fScuZm9ybWF0KCd7fX57fScuZm9ybWF0KGNvbW1pdF9kYXRhWydzaGEnXSwgb3Jk
ZXIgKyAxKSkpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>