<?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>232406</bug_id>
          
          <creation_ts>2021-10-27 14:57:56 -0700</creation_ts>
          <short_desc>Import web-platform-tests/web-locks API tests from upstream</short_desc>
          <delta_ts>2021-10-28 09:05:51 -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>
          
          <blocked>232436</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>clopez</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>sam</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1809441</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-27 14:57:56 -0700</bug_when>
    <thetext>Import web-platform-tests/web-locks API tests from upstream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1809446</commentid>
    <comment_count>1</comment_count>
      <attachid>442637</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-27 15:02:27 -0700</bug_when>
    <thetext>Created attachment 442637
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1809665</commentid>
    <comment_count>2</comment_count>
      <attachid>442707</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-28 07:48:40 -0700</bug_when>
    <thetext>Created attachment 442707
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1809666</commentid>
    <comment_count>3</comment_count>
      <attachid>442707</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-10-28 07:59:58 -0700</bug_when>
    <thetext>Comment on attachment 442707
Patch

r=me once bots are happy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1809688</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-28 09:04:48 -0700</bug_when>
    <thetext>Committed r284982 (243629@main): &lt;https://commits.webkit.org/243629@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 442707.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1809691</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-28 09:05:51 -0700</bug_when>
    <thetext>&lt;rdar://problem/84759914&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442637</attachid>
            <date>2021-10-27 15:02:27 -0700</date>
            <delta_ts>2021-10-28 07:48:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232406-20211027150227.patch</filename>
            <type>text/plain</type>
            <size>191825</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0OTU5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCBjY2UzNTgxYjQxOTU5MjI2MTM2M2QyMjRhOGU4YmY4NzFmMTRhYjc2Li42NjBjZmRiZThh
NmQ5OTljOTgyZjg0OWQxNjQzZTg1ZDNhNTVhM2IzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0xMC0yNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgorCisgICAgICAgIEltcG9ydCB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
IEFQSSB0ZXN0cyBmcm9tIHVwc3RyZWFtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzI0MDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJbXBvcnQgd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2NrcyBBUEkg
dGVzdHMgZnJvbSB1cHN0cmVhbSBhOGU3ZDI5NGM2MjZkY2ViNi4KKworICAgICAgICAqIHJlc291
cmNlcy9pbXBvcnQtZXhwZWN0YXRpb25zLmpzb246CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy8qOiBBZGRlZC4KKwogMjAyMS0xMC0yNyAgS2F0ZSBDaGVuZXkgIDxrYXRo
ZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjg0NjUwLTI4
NDY2MSk6IFtpT1MxNSBTaW1dIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29udGVu
dC1zZWN1cml0eS1wb2xpY3kvc2NyaXB0LXNyYy9zY3JpcHQtc3JjLW11bHRpcGxlLXBvbGljaWVz
LW11bHRpcGxlLWhhc2hpbmctYWxnb3JpdGhtcy5odG1sIGlzIGEgdGV4dCBmYWlsdXJlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvcmVzb3VyY2VzL2ltcG9ydC1leHBlY3Rh
dGlvbnMuanNvbiBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4
cGVjdGF0aW9ucy5qc29uCmluZGV4IDI2YzIzMzY5MWRhOTdkZWY1MWQ0YzJjNTI0MTIyY2JjN2Yx
ZTQ3MGMuLjAyZTdjNTFiMDQ2Yjg2YTVlMmI1NGE1MGYzYTg4NDNkZDk5MjkxN2YgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9u
cy5qc29uCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4
cGVjdGF0aW9ucy5qc29uCkBAIC00NTMsNiArNDUzLDcgQEAKICAgICAid2ViLXBsYXRmb3JtLXRl
c3RzL3dhc20iOiAiaW1wb3J0IiwgCiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBp
IjogImltcG9ydCIsIAogICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMiOiAi
aW1wb3J0IiwgCisgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvIjogImltcG9ydCIs
IAogICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLW5mYyI6ICJza2lwIiwgCiAgICAgIndlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItc2hhcmUiOiAiaW1wb3J0IiwgCiAgICAgIndlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpbyI6ICJpbXBvcnQiLCAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL01FVEEueW1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvTUVUQS55bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjRlN2QyODM0MDYwNmQ5YTYyOTBhZjljZWFjNGY0ZmI5MTU2YWJmMAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL01FVEEueW1sCkBAIC0wLDAgKzEsNCBAQAorc3BlYzogaHR0cHM6Ly93aWNnLmdp
dGh1Yi5pby93ZWItbG9ja3MvCitzdWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIGluZXhvcmFibGV0
YXNoCisgIC0gcHduYWxsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9SRUFETUUubWQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9SRUFETUUubWQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OGZmNTM0ZTFiNmYxNDNkZTk1MGU4NzRkOWI5N2RhZTk1MTIwNTExMAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L1JFQURNRS5tZApAQCAtMCwwICsxLDUgQEAKK1RoaXMgZGlyZWN0b3J5IGNvbnRhaW5zIGEgdGVz
dCBzdWl0ZSBmb3IgdGhlIHByb3Bvc2VkIFdlYiBMb2NrcyBBUEkuCisKK0V4cGxhaW5lcjogaHR0
cHM6Ly9naXRodWIuY29tL1dJQ0cvd2ViLWxvY2tzLworCitTcGVjOiBodHRwczovL3dpY2cuZ2l0
aHViLmlvL3dlYi1sb2Nrcy8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2FjcXVpcmUudGVudGF0aXZlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjdhMzE2YjM2YzE2MGE4ZmM0ZDg0N2ExM2RhZjU3NzZkZjNhZDFkZjYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTIgQEAKKworRkFJTCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCByZXF1aXJlcyBhIG5hbWUg
YW5kIGEgY2FsbGJhY2sgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgbW9kZSBtdXN0IGJlICJzaGFy
ZWQiIG9yICJleGNsdXNpdmUiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFRoZSAnc3RlYWwnIGFu
ZCAnaWZBdmFpbGFibGUnIG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBUaGUgJ3N0ZWFsJyBvcHRpb24gbXVzdCBiZSB1c2VkIHdpdGggZXhjbHVz
aXZlIGxvY2tzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFRoZSAnc2lnbmFsJyBhbmQgJ3N0ZWFs
JyBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwg
VGhlICdzaWduYWwnIGFuZCAnaWZBdmFpbGFibGUnIG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1
c2l2ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QncyByZXR1cm5l
ZCBwcm9taXNlIHJlc29sdmVzIGFmdGVyIGxvY2sgaXMgcmVsZWFzZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qn
KSIKK0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGNhbGxiYWNrIHRocm93cyBzeW5j
aHJvbm91c2x5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFJldHVybmVkIFByb21pc2UgcmVqZWN0
cyBpZiBjYWxsYmFjayB0aHJvd3MgYXN5bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2
ZS5odHRwcy5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1
MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55
Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktp
dCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMu
YW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkNzY4OWIz
ZTE4MmMyMTAxYjhkMjdhYTExMDRkODhkM2JiZDFmN2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJl
LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKQEAgLTAsMCArMSwxMjQgQEAKKy8vIE1FVEE6IHRpdGxl
PVdlYiBMb2NrcyBBUEk6IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0IG1ldGhvZAorLy8gTUVUQTog
c2NyaXB0PXJlc291cmNlcy9oZWxwZXJzLmpzCisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRlZGlj
YXRlZHdvcmtlcixzaGFyZWR3b3JrZXIsc2VydmljZXdvcmtlcgorCisndXNlIHN0cmljdCc7CisK
K3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsK
KyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKHQsIFR5cGVFcnJvciwgbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QoKSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcyh0LCBUeXBlRXJyb3IsIG5h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcykpOworfSwgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
IHJlcXVpcmVzIGEgbmFtZSBhbmQgYSBjYWxsYmFjaycpOworCitwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGF3YWl0IHByb21pc2VfcmVq
ZWN0c19qcygKKyAgICB0LCBUeXBlRXJyb3IsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
cmVzLCB7bW9kZTogJ2Zvbyd9LCBsb2NrID0+IHt9KSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0
c19qcygKKyAgICB0LCBUeXBlRXJyb3IsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVz
LCB7bW9kZTogbnVsbCB9LCBsb2NrID0+IHt9KSk7CisgIGFzc2VydF9lcXVhbHMoYXdhaXQgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QoCisgICAgcmVzLCB7bW9kZTogJ2V4Y2x1c2l2ZSd9LCBsb2Nr
ID0+IGxvY2subW9kZSksICdleGNsdXNpdmUnLAorICAgICAgICAgICAgICAgICdtb2RlIGlzIGV4
Y2x1c2l2ZScpOworICBhc3NlcnRfZXF1YWxzKGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KAorICAgIHJlcywge21vZGU6ICdzaGFyZWQnfSwgbG9jayA9PiBsb2NrLm1vZGUpLCAnc2hhcmVk
JywKKyAgICAgICAgICAgICAgICAnbW9kZSBpcyBzaGFyZWQnKTsKK30sICdtb2RlIG11c3QgYmUg
InNoYXJlZCIgb3IgImV4Y2x1c2l2ZSInKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewor
ICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBhd2FpdCBwcm9taXNlX3JlamVjdHNfZG9t
KAorICAgIHQsICdOb3RTdXBwb3J0ZWRFcnJvcicsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QoCisgICAgICByZXMsIHtzdGVhbDogdHJ1ZSwgaWZBdmFpbGFibGU6IHRydWV9LCBsb2NrID0+
IHt9KSwKKyAgICAiQSBOb3RTdXBwb3J0ZWRFcnJvciBzaG91bGQgYmUgdGhyb3duIGlmIGJvdGgg
IiArCisgICAgIidzdGVhbCcgYW5kICdpZkF2YWlsYWJsZScgYXJlIHNwZWNpZmllZC4iKTsKK30s
ICJUaGUgJ3N0ZWFsJyBhbmQgJ2lmQXZhaWxhYmxlJyBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNs
dXNpdmUiKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlx
dWVOYW1lKHQpOworICBhd2FpdCBwcm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdOb3RTdXBw
b3J0ZWRFcnJvcicsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTogJ3No
YXJlZCcsIHN0ZWFsOiB0cnVlfSwgbG9jayA9PiB7fSksCisgICAgJ1JlcXVlc3Qgd2l0aCBtb2Rl
PXNoYXJlZCBhbmQgc3RlYWw9dHJ1ZSBzaG91bGQgZmFpbCcpOworfSwgIlRoZSAnc3RlYWwnIG9w
dGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBleGNsdXNpdmUgbG9ja3MiKTsKKworcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBjb25zdCBjb250
cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpOworICBhd2FpdCBwcm9taXNlX3JlamVjdHNf
ZG9tKAorICAgIHQsICdOb3RTdXBwb3J0ZWRFcnJvcicsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJl
cXVlc3QoCisgICAgICByZXMsIHtzaWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsLCBzdGVhbDogdHJ1
ZX0sIGxvY2sgPT4ge30pLAorICAgICdSZXF1ZXN0IHdpdGggc2lnbmFsIGFuZCBzdGVhbD10cnVl
IHNob3VsZCBmYWlsJyk7Cit9LCAiVGhlICdzaWduYWwnIGFuZCAnc3RlYWwnIG9wdGlvbnMgYXJl
IG11dHVhbGx5IGV4Y2x1c2l2ZSIpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNv
bnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGNvbnN0IGNvbnRyb2xsZXIgPSBuZXcgQWJvcnRD
b250cm9sbGVyKCk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19kb20oCisgICAgdCwgJ05vdFN1
cHBvcnRlZEVycm9yJywKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICAgIHJlcywg
e3NpZ25hbDogY29udHJvbGxlci5zaWduYWwsIGlmQXZhaWxhYmxlOiB0cnVlfSwgbG9jayA9PiB7
fSksCisgICAgJ1JlcXVlc3Qgd2l0aCBzaWduYWwgYW5kIGlmQXZhaWxhYmxlPXRydWUgc2hvdWxk
IGZhaWwnKTsKK30sICJUaGUgJ3NpZ25hbCcgYW5kICdpZkF2YWlsYWJsZScgb3B0aW9ucyBhcmUg
bXV0dWFsbHkgZXhjbHVzaXZlIik7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29u
c3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKAorICAg
IHQsIFR5cGVFcnJvciwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB1bmRlZmluZWQpKTsK
KyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKAorICAgIHQsIFR5cGVFcnJvciwgbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QocmVzLCBudWxsKSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygK
KyAgICB0LCBUeXBlRXJyb3IsIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgMTIzKSk7Cisg
IGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICB0LCBUeXBlRXJyb3IsIG5hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0KHJlcywgJ2FiYycpKTsKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKAor
ICAgIHQsIFR5cGVFcnJvciwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBbXSkpOworICBh
d2FpdCBwcm9taXNlX3JlamVjdHNfanMoCisgICAgdCwgVHlwZUVycm9yLCBuYXZpZ2F0b3IubG9j
a3MucmVxdWVzdChyZXMsIHt9KSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICB0
LCBUeXBlRXJyb3IsIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgbmV3IFByb21pc2UociA9
PiB7fSkpKTsKK30sICdjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24nKTsKKworcHJvbWlzZV90
ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBsZXQgcmVs
ZWFzZTsKKyAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlKHIgPT4geyByZWxlYXNlID0gcjsg
fSk7CisKKyAgbGV0IHJldHVybmVkID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBsb2Nr
ID0+IHsgcmV0dXJuIHByb21pc2U7IH0pOworCisgIGNvbnN0IG9yZGVyID0gW107CisKKyAgcmV0
dXJuZWQudGhlbigoKSA9PiB7IG9yZGVyLnB1c2goJ3JldHVybmVkJyk7IH0pOworICBwcm9taXNl
LnRoZW4oKCkgPT4geyBvcmRlci5wdXNoKCdob2xkaW5nJyk7IH0pOworCisgIHJlbGVhc2UoKTsK
KworICBhd2FpdCBQcm9taXNlLmFsbChbcmV0dXJuZWQsIHByb21pc2VdKTsKKworICBhc3NlcnRf
YXJyYXlfZXF1YWxzKG9yZGVyLCBbJ2hvbGRpbmcnLCAncmV0dXJuZWQnXSk7CisKK30sICduYXZp
Z2F0b3IubG9ja3MucmVxdWVzdFwncyByZXR1cm5lZCBwcm9taXNlIHJlc29sdmVzIGFmdGVyJyAr
CisgICAnIGxvY2sgaXMgcmVsZWFzZWQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewor
ICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBjb25zdCB0ZXN0X2Vycm9yID0ge25hbWU6
ICd0ZXN0J307CisgIGNvbnN0IHAgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2sg
PT4geworICAgIHRocm93IHRlc3RfZXJyb3I7CisgIH0pOworICBhc3NlcnRfZXF1YWxzKFByb21p
c2UucmVzb2x2ZShwKSwgcCwgJ3JlcXVlc3QoKSByZXN1bHQgaXMgYSBQcm9taXNlJyk7CisgIGF3
YWl0IHByb21pc2VfcmVqZWN0c19leGFjdGx5KHQsIHRlc3RfZXJyb3IsIHAsICdyZXN1bHQgc2hv
dWxkIHJlamVjdCcpOworfSwgJ1JldHVybmVkIFByb21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0
aHJvd3Mgc3luY2hyb25vdXNseScpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNv
bnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGNvbnN0IHRlc3RfZXJyb3IgPSB7bmFtZTogJ3Rl
c3QnfTsKKyAgY29uc3QgcCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9j
ayA9PiB7CisgICAgdGhyb3cgdGVzdF9lcnJvcjsKKyAgfSk7CisgIGFzc2VydF9lcXVhbHMoUHJv
bWlzZS5yZXNvbHZlKHApLCBwLCAncmVxdWVzdCgpIHJlc3VsdCBpcyBhIFByb21pc2UnKTsKKyAg
YXdhaXQgcHJvbWlzZV9yZWplY3RzX2V4YWN0bHkodCwgdGVzdF9lcnJvciwgcCwgJ3Jlc3VsdCBz
aG91bGQgcmVqZWN0Jyk7Cit9LCAnUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGNhbGxiYWNr
IHRocm93cyBhc3luY2hyb25vdXNseScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0
cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMu
YW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhMzE2YjM2YzE2MGE4
ZmM0ZDg0N2ExM2RhZjU3NzZkZjNhZDFkZjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRh
dGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBA
QAorCitGQUlMIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0IHJlcXVpcmVzIGEgbmFtZSBhbmQgYSBj
YWxsYmFjayBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBtb2RlIG11c3QgYmUgInNoYXJlZCIgb3Ig
ImV4Y2x1c2l2ZSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgVGhlICdzdGVhbCcgYW5kICdpZkF2
YWlsYWJsZScgb3B0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIFRoZSAnc3RlYWwnIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBleGNsdXNpdmUgbG9j
a3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgVGhlICdzaWduYWwnIGFuZCAnc3RlYWwnIG9wdGlv
bnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBUaGUgJ3Np
Z25hbCcgYW5kICdpZkF2YWlsYWJsZScgb3B0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCitGQUlMIGNhbGxiYWNrIG11c3QgYmUgYSBmdW5jdGlvbiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCdzIHJldHVybmVkIHByb21p
c2UgcmVzb2x2ZXMgYWZ0ZXIgbG9jayBpcyByZWxlYXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3Vz
bHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGNh
bGxiYWNrIHRocm93cyBhc3luY2hyb25vdXNseSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50
ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEz
NTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWly
ZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8
IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUg
dG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L2FjcXVpcmUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjdhMzE2YjM2YzE2MGE4ZmM0ZDg0N2ExM2RhZjU3NzZkZjNhZDFkZjYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEyIEBACisKK0ZBSUwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QgcmVxdWlyZXMgYSBu
YW1lIGFuZCBhIGNhbGxiYWNrIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIG1vZGUgbXVzdCBiZSAi
c2hhcmVkIiBvciAiZXhjbHVzaXZlIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBUaGUgJ3N0ZWFs
JyBhbmQgJ2lmQXZhaWxhYmxlJyBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QnKSIKK0ZBSUwgVGhlICdzdGVhbCcgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIGV4
Y2x1c2l2ZSBsb2NrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBUaGUgJ3NpZ25hbCcgYW5kICdz
dGVhbCcgb3B0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitG
QUlMIFRoZSAnc2lnbmFsJyBhbmQgJ2lmQXZhaWxhYmxlJyBvcHRpb25zIGFyZSBtdXR1YWxseSBl
eGNsdXNpdmUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgY2FsbGJhY2sgbXVzdCBiZSBhIGZ1bmN0
aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0J3MgcmV0
dXJuZWQgcHJvbWlzZSByZXNvbHZlcyBhZnRlciBsb2NrIGlzIHJlbGVhc2VkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCitGQUlMIFJldHVybmVkIFByb21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0aHJvd3Mg
c3luY2hyb25vdXNseSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJl
amVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIGFzeW5jaHJvbm91c2x5IHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL2FjcXVpcmUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2FjcXVp
cmUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4
ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50
ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBm
aWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhl
IHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L2NsaWVudGlkcy50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvY2xpZW50aWRzLnRlbnRhdGl2
ZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjEwNWU4MDVmMmViNjE2YTk2ZTkwNTQz
NGFmMzAxYzVhN2IyMWQ0NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2NsaWVudGlkcy50ZW50YXRpdmUuaHR0
cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitGQUlMIENsaWVudCBJRHMgbWF0Y2gg
YmV0d2VlbiBMb2NrcyBBUEkgYW5kIFNlcnZpY2UgV29ya2VycyBhc3NlcnRfaW1wbGVtZW50czog
dW5kZWZpbmVkCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL2NsaWVudGlkcy50ZW50YXRpdmUuaHR0cHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2NsaWVu
dGlkcy50ZW50YXRpdmUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNWQwNjZkMTU1NTgyYTg3YTBm
ODk0ZmZhMTM0YmZhNTVkOGEzYmM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvY2xpZW50aWRzLnRlbnRhdGl2
ZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPG1ldGEgY2hh
cnNldD11dGYtOD4KKzx0aXRsZT5XZWIgTG9ja3MgQVBJOiBDbGllbnQgSURzIGluIHF1ZXJ5KCkg
dnMuIFNlcnZpY2UgV29ya2VyPC90aXRsZT4KKzxsaW5rIHJlbD1oZWxwIGhyZWY9Imh0dHBzOi8v
d2ljZy5naXRodWIuaW8vd2ViLWxvY2tzLyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
c3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0PgorCisvLyBSZXR1cm5zIGEgcHJvbWlzZSByZXNvbHZlZCBieSB0aGUgbmV4dCBtZXNzYWdl
IGV2ZW50LgorZnVuY3Rpb24gbmV4dE1lc3NhZ2UoKSB7CisgIHJldHVybiBuZXcgUHJvbWlzZShy
ZXNvbHZlID0+IHsKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGV2ZW50
ID0+IHsKKyAgICAgIHJlc29sdmUoZXZlbnQuZGF0YSk7CisgICAgfSwge29uY2U6IHRydWV9KTsK
KyAgfSk7Cit9CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVu
dHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgaWZyYW1lX3VybCA9ICdyZXNvdXJjZXMvc3ct
Y29udHJvbGxlZC1pZnJhbWUuaHRtbCc7CisKKyAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtl
ciB0aGF0IHdpbGwgY29udHJvbCBhbiBpZnJhbWUuCisgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3
YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKAorICAgIHQsICdyZXNv
dXJjZXMvc2VydmljZS13b3JrZXIuanMnLCBpZnJhbWVfdXJsKTsKKyAgYXdhaXQgd2FpdF9mb3Jf
c3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKworICBjb25z
dCBpZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShpZnJhbWVfdXJsKTsKKworICBpZnJhbWUuY29u
dGVudFdpbmRvdy5wb3N0TWVzc2FnZSgnZ2V0X3N3X2NsaWVudF9pZCcsICcqJyk7CisgIGNvbnN0
IHN3X2NsaWVudF9pZCA9IGF3YWl0IG5leHRNZXNzYWdlKCk7CisKKyAgaWZyYW1lLmNvbnRlbnRX
aW5kb3cucG9zdE1lc3NhZ2UoJ2dldF9sb2NrX2NsaWVudF9pZCcsICcqJyk7CisgIGNvbnN0IGxv
Y2tfY2xpZW50X2lkID0gYXdhaXQgbmV4dE1lc3NhZ2UoKTsKKworICAvLyBOT1RFOiBOb3QgYXNz
ZXJ0X2VxdWFscygpLCBhcyB3ZSBkb24ndCB3YW50IGxvZyB0aGUgcmFuZG9tbHkgZ2VuZXJhdGVk
CisgIC8vIGNsaWVudElkcywgc2luY2UgdGhleSB3b3VsZCBub3QgbWF0Y2ggYW55IGZhaWx1cmUg
ZXhwZWN0YXRpb24gZmlsZXMuCisgIGFzc2VydF9lcXVhbHMobG9ja19jbGllbnRfaWQsIHN3X2Ns
aWVudF9pZCwKKyAgICAgICAgICAgICAgJ2NsaWVudElkcyBzaG91bGQgbWF0Y2gsIGJ1dCBhcmUg
ZGlmZmVyZW50Jyk7CisKKyAgYXdhaXQgcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKTsKKworfSwg
J0NsaWVudCBJRHMgbWF0Y2ggYmV0d2VlbiBMb2NrcyBBUEkgYW5kIFNlcnZpY2UgV29ya2Vycycp
OworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2ZyYW1lcy50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvZnJhbWVzLnRlbnRhdGl2ZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNiOGEx
Zjk5YjY4MGI2NmM5MWY5NDA1NmVkMmMwOTNhMDE0NDUxYgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2ZyYW1l
cy50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKKworRkFJTCBX
aW5kb3cgYW5kIEZyYW1lIC0gc2hhcmVkIG1vZGUgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5l
ZAorRkFJTCBXaW5kb3cgYW5kIEZyYW1lIC0gZXhjbHVzaXZlIG1vZGUgYXNzZXJ0X2ltcGxlbWVu
dHM6IHVuZGVmaW5lZAorRkFJTCBGcmFtZSBhbmQgRnJhbWUgLSBleGNsdXNpdmUgbW9kZSBhc3Nl
cnRfaW1wbGVtZW50czogdW5kZWZpbmVkCitGQUlMIFRlcm1pbmF0ZWQgRnJhbWUgd2l0aCBoZWxk
IGxvY2sgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBOYXZpZ2F0ZWQgRnJhbWUg
d2l0aCBoZWxkIGxvY2sgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBOYXZpZ2F0
ZWQgRnJhbWUgd2l0aCBwZW5kaW5nIHJlcXVlc3QgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5l
ZAorRkFJTCBSZW1vdmVkIEZyYW1lIHdpdGggcGVuZGluZyByZXF1ZXN0IGFzc2VydF9pbXBsZW1l
bnRzOiB1bmRlZmluZWQKK0ZBSUwgUmVtb3ZlZCBGcmFtZSBhcyBsb2NrIGlzIGdyYW50ZWQgYXNz
ZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9mcmFtZXMudGVudGF0aXZlLmh0
dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9mcmFtZXMudGVudGF0aXZlLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTg4ZjZjMDgy
ZjQxOWRjYTdmNjM1ODVkOTZkMDhhM2MyNWMzODU3MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2ZyYW1lcy50
ZW50YXRpdmUuaHR0cHMuaHRtbApAQCAtMCwwICsxLDI2NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8
bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPldlYiBMb2NrcyBBUEk6IEZyYW1lczwvdGl0bGU+
Cis8bGluayByZWw9aGVscCBocmVmPSJodHRwczovL3dpY2cuZ2l0aHViLmlvL3dlYi1sb2Nrcy8i
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXJzLmpzIj48L3NjcmlwdD4KKzxzdHlsZT5pZnJhbWUg
eyBkaXNwbGF5OiBub25lOyB9PC9zdHlsZT4KKzxzY3JpcHQ+CisndXNlIHN0cmljdCc7CisKK3By
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxv
Y2tzKTsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBjb25zdCBmcmFtZSA9IGF3
YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIHQuYWRkX2NsZWFudXAoKCkg
PT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisKKyAgY29uc3QgbG9ja19pZCA9IChhd2FpdCBwb3N0
VG9GcmFtZUFuZFdhaXQoCisgICAgZnJhbWUsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMsIG1v
ZGU6ICdzaGFyZWQnfSkpLmxvY2tfaWQ7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QocmVzLCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrID0+IHsKKyAgICBhd2FpdCBwb3N0
VG9GcmFtZUFuZFdhaXQoZnJhbWUsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7CisgIH0pOwor
Cit9LCAnV2luZG93IGFuZCBGcmFtZSAtIHNoYXJlZCBtb2RlJyk7CisKK3Byb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29u
c3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IGlmcmFtZSgn
cmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5y
ZW1vdmUoKTsgfSk7CisKKyAgLy8gZnJhbWUgYWNxdWlyZXMgdGhlIGxvY2suCisgIGNvbnN0IGxv
Y2tfaWQgPSAoYXdhaXQgcG9zdFRvRnJhbWVBbmRXYWl0KAorICAgIGZyYW1lLCB7b3A6ICdyZXF1
ZXN0JywgbmFtZTogcmVzfSkpLmxvY2tfaWQ7CisKKyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBi
ZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQg
PSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2sgPT4geyBsb2NrX2dyYW50ZWQgPSB0
cnVlOyB9KTsKKworICAvLyBWZXJpZnkgdGhhdCB3ZSBjYW4ndCBnZXQgaXQuCisgIGxldCBhdmFp
bGFibGUgPSB1bmRlZmluZWQ7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAg
IHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgbG9jayA9PiB7IGF2YWlsYWJsZSA9IGxvY2sgIT09
IG51bGw7IH0pOworICBhc3NlcnRfZmFsc2UoYXZhaWxhYmxlKTsKKyAgYXNzZXJ0X2ZhbHNlKGxv
Y2tfZ3JhbnRlZCk7CisKKyAgLy8gQXNrIHRoZSBmcmFtZSB0byByZWxlYXNlIGl0LgorICBhd2Fp
dCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7CisK
KyAgYXdhaXQgYmxvY2tlZDsKKyAgLy8gTm93IHdlJ3ZlIGdvdCBpdC4KKyAgYXNzZXJ0X3RydWUo
bG9ja19ncmFudGVkKTsKK30sICdXaW5kb3cgYW5kIEZyYW1lIC0gZXhjbHVzaXZlIG1vZGUnKTsK
KworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZpZ2F0
b3IubG9ja3MpOworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGZyYW1l
MSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNvbnN0IGZyYW1l
MiA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisKKyAgLy8gZnJhbWUx
IGFjcXVpcmVzIHRoZSBsb2NrLgorICBjb25zdCBsb2NrX2lkID0gKGF3YWl0IHBvc3RUb0ZyYW1l
QW5kV2FpdCgKKyAgICBmcmFtZTEsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9KSkubG9ja19p
ZDsKKworICAvLyBmcmFtZTIncyByZXF1ZXN0IHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9j
a19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBwb3N0VG9GcmFtZUFuZFdhaXQo
CisgICAgZnJhbWUyLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSk7CisgIGJsb2NrZWQudGhl
bihmID0+IHsgbG9ja19ncmFudGVkID0gdHJ1ZTsgfSk7CisKKyAgLy8gVmVyaWZ5IHRoYXQgZnJh
bWUyIGNhbid0IGdldCBpdC4KKyAgYXNzZXJ0X3RydWUoKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2Fp
dChmcmFtZTIsIHsKKyAgICBvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMsIGlmQXZhaWxhYmxlOiB0
cnVlCisgIH0pKS5mYWlsZWQsICdMb2NrIHJlcXVlc3Qgc2hvdWxkIGhhdmUgZmFpbGVkJyk7Cisg
IGFzc2VydF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8vIEFzayBmcmFtZTEgdG8gcmVsZWFz
ZSBpdC4KKyAgYXdhaXQgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lMSwge29wOiAncmVsZWFzZScs
IGxvY2tfaWR9KTsKKworICBhd2FpdCBibG9ja2VkOworICAvLyBOb3cgZnJhbWUyIGNhbiBnZXQg
aXQuCisgIGFzc2VydF90cnVlKGxvY2tfZ3JhbnRlZCk7CisgIGZyYW1lMS5wYXJlbnRFbGVtZW50
LnJlbW92ZUNoaWxkKGZyYW1lMSk7CisgIGZyYW1lMi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxk
KGZyYW1lMik7Cit9LCAnRnJhbWUgYW5kIEZyYW1lIC0gZXhjbHVzaXZlIG1vZGUnKTsKKworcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZpZ2F0b3IubG9j
a3MpOworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGZyYW1lID0gYXdh
aXQgaWZyYW1lKCdyZXNvdXJjZXMvaWZyYW1lLmh0bWwnKTsKKworICAvLyBGcmFtZSBhY3F1aXJl
cyB0aGUgbG9jay4KKyAgYXdhaXQgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lLCB7b3A6ICdyZXF1
ZXN0JywgbmFtZTogcmVzfSk7CisKKyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBiZSBibG9ja2Vk
LgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBuYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIGxvY2sgPT4geyBsb2NrX2dyYW50ZWQgPSB0cnVl
OyB9KTsKKworICAvLyBWZXJpZnkgdGhhdCB3ZSBjYW4ndCBnZXQgaXQuCisgIGxldCBhdmFpbGFi
bGUgPSB1bmRlZmluZWQ7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJl
cywge2lmQXZhaWxhYmxlOiB0cnVlfSwgbG9jayA9PiB7IGF2YWlsYWJsZSA9IGxvY2sgIT09IG51
bGw7IH0pOworICBhc3NlcnRfZmFsc2UoYXZhaWxhYmxlKTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tf
Z3JhbnRlZCk7CisKKyAgLy8gSW1wbGljaXRseSByZWxlYXNlIGl0IGJ5IHRlcm1pbmF0aW5nIHRo
ZSBmcmFtZS4KKyAgZnJhbWUucmVtb3ZlKCk7CisgIGF3YWl0IGJsb2NrZWQ7CisgIC8vIE5vdyB3
ZSd2ZSBnb3QgaXQuCisgIGFzc2VydF90cnVlKGxvY2tfZ3JhbnRlZCk7CisKK30sICdUZXJtaW5h
dGVkIEZyYW1lIHdpdGggaGVsZCBsb2NrJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsK
KyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgcmVzID0gdW5p
cXVlTmFtZSh0KTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lm
cmFtZS5odG1sJyk7CisKKyAgLy8gRnJhbWUgYWNxdWlyZXMgdGhlIGxvY2suCisgIGF3YWl0IHBv
c3RUb0ZyYW1lQW5kV2FpdChmcmFtZSwge29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc30pOworCisg
IC8vIFRoaXMgcmVxdWVzdCBzaG91bGQgYmUgYmxvY2tlZC4KKyAgbGV0IGxvY2tfZ3JhbnRlZCA9
IGZhbHNlOworICBjb25zdCBibG9ja2VkID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoCisgICAg
cmVzLCBsb2NrID0+IHsgbG9ja19ncmFudGVkID0gdHJ1ZTsgfSk7CisKKyAgLy8gVmVyaWZ5IHRo
YXQgd2UgY2FuJ3QgZ2V0IGl0LgorICBsZXQgYXZhaWxhYmxlID0gdW5kZWZpbmVkOworICBhd2Fp
dCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIHtpZkF2YWlsYWJsZTogdHJ1ZX0s
IGxvY2sgPT4geyBhdmFpbGFibGUgPSBsb2NrICE9PSBudWxsOyB9KTsKKyAgYXNzZXJ0X2ZhbHNl
KGF2YWlsYWJsZSk7CisgIGFzc2VydF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8vIEltcGxp
Y2l0bHkgcmVsZWFzZSBpdCBieSBuYXZpZ2F0aW5nIHRoZSBmcmFtZS4KKyAgZnJhbWUuc3JjID0g
J2Fib3V0OmJsYW5rJzsKKyAgYXdhaXQgYmxvY2tlZDsKKyAgLy8gTm93IHdlJ3ZlIGdvdCBpdC4K
KyAgYXNzZXJ0X3RydWUobG9ja19ncmFudGVkKTsKKworfSwgJ05hdmlnYXRlZCBGcmFtZSB3aXRo
IGhlbGQgbG9jaycpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBs
ZW1lbnRzKG5hdmlnYXRvci5sb2Nrcyk7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisK
KyAgLy8gZnJhbWUxIHJlcXVlc3RzIGFuZCBob2xkcyByZXMgLSBzaG91bGQgYmUgZ3JhbnRlZCBp
bW1lZGlhdGVseS4KKyAgLy8gZnJhbWUyIHJlcXVlc3RzIHJlcyAtIHNob3VsZCBiZSBibG9ja2Vk
LgorICAvLyBmcmFtZTMgcmVxdWVzdHMgcmVzIC0gc2hvdWxkIGJlIGJsb2NrZWQuCisgIC8vIGZy
YW1lMiBpcyBuYXZpZ2F0ZWQuCisgIC8vIGZyYW1lMSByZWxlYXNlcyByZXMuCisgIC8vIGZyYW1l
MydzIHJlcXVlc3Qgc2hvdWxkIGJlIGdyYW50ZWQuCisKKyAgY29uc3QgZnJhbWUxID0gYXdhaXQg
aWZyYW1lKCdyZXNvdXJjZXMvaWZyYW1lLmh0bWwnKTsKKyAgY29uc3QgZnJhbWUyID0gYXdhaXQg
aWZyYW1lKCdyZXNvdXJjZXMvaWZyYW1lLmh0bWwnKTsKKyAgY29uc3QgZnJhbWUzID0gYXdhaXQg
aWZyYW1lKCdyZXNvdXJjZXMvaWZyYW1lLmh0bWwnKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiB7
IGZyYW1lMS5yZW1vdmUoKTsgfSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZTIucmVt
b3ZlKCk7IH0pOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUzLnJlbW92ZSgpOyB9KTsK
KworICAvLyBmcmFtZTEgcmVxdWVzdHMgYW5kIGhvbGRzIHJlcyAtIHNob3VsZCBiZSBncmFudGVk
IGltbWVkaWF0ZWx5LgorICBjb25zdCBsb2NrX2lkID0gKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2Fp
dCgKKyAgICBmcmFtZTEsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9KSkubG9ja19pZDsKKwor
ICAvLyBmcmFtZTIgcmVxdWVzdHMgcmVzIC0gc2hvdWxkIGJlIGJsb2NrZWQuCisgIC8vIChkb24n
dCBhdHRhY2ggbGlzdGVuZXJzIGFzIHRoZXkgd2lsbCBrZWVwIHRoZSBmcmFtZSBhbGl2ZSkKKyAg
ZnJhbWUyLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2Uoe29wOiAncmVxdWVzdCcsIG5hbWU6IHJl
c30sICcqJyk7CisKKyAgLy8gZnJhbWUzIHJlcXVlc3RzIHJlcyAtIHNob3VsZCBiZSBibG9ja2Vk
LgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBwb3N0VG9G
cmFtZUFuZFdhaXQoZnJhbWUzLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSk7CisgIGJsb2Nr
ZWQudGhlbihmID0+IHsgbG9ja19ncmFudGVkID0gdHJ1ZTsgfSk7CisKKyAgLy8gVmVyaWZ5IHRo
YXQgZnJhbWUzIGNhbid0IGdldCBpdC4KKyAgYXNzZXJ0X3RydWUoKGF3YWl0IHBvc3RUb0ZyYW1l
QW5kV2FpdChmcmFtZTMsIHsKKyAgICBvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMsIGlmQXZhaWxh
YmxlOiB0cnVlCisgIH0pKS5mYWlsZWQsICdMb2NrIHJlcXVlc3Qgc2hvdWxkIGhhdmUgZmFpbGVk
Jyk7CisgIGFzc2VydF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8vIE5hdmlnYXRlIGZyYW1l
Mi4KKyAgZnJhbWUyLnNyYyA9ICdhYm91dDpibGFuayc7CisKKyAgLy8gZnJhbWUxIHJlbGVhc2Vz
IGxvY2sKKyAgYXdhaXQgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lMSwge29wOiAncmVsZWFzZScs
IGxvY2tfaWR9KTsKKworICAvLyBmcmFtZTMncyByZXF1ZXN0IHNob3VsZCBiZSBncmFudGVkLgor
ICBhd2FpdCBibG9ja2VkOworICBhc3NlcnRfdHJ1ZShsb2NrX2dyYW50ZWQpOworCit9LCAnTmF2
aWdhdGVkIEZyYW1lIHdpdGggcGVuZGluZyByZXF1ZXN0Jyk7CisKK3Byb21pc2VfdGVzdChhc3lu
YyB0ID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3Qg
cmVzID0gdW5pcXVlTmFtZSh0KTsKKworICAvLyBmcmFtZTEgcmVxdWVzdHMgYW5kIGhvbGRzIHJl
cyAtIHNob3VsZCBiZSBncmFudGVkIGltbWVkaWF0ZWx5LgorICAvLyBmcmFtZTIgcmVxdWVzdHMg
cmVzIC0gc2hvdWxkIGJlIGJsb2NrZWQuCisgIC8vIGZyYW1lMyByZXF1ZXN0cyByZXMgLSBzaG91
bGQgYmUgYmxvY2tlZC4KKyAgLy8gZnJhbWUyIGlzIHJlbW92ZWQuCisgIC8vIGZyYW1lMSBkcm9w
cyBsb2NrLgorICAvLyBmcmFtZTMncyByZXF1ZXN0IHNob3VsZCBiZSBncmFudGVkLgorCisgIGNv
bnN0IGZyYW1lMSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNv
bnN0IGZyYW1lMiA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNv
bnN0IGZyYW1lMyA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIHQu
YWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZTEucmVtb3ZlKCk7IH0pOworICB0LmFkZF9jbGVhbnVw
KCgpID0+IHsgZnJhbWUzLnJlbW92ZSgpOyB9KTsKKworICAvLyBmcmFtZTEgcmVxdWVzdHMgYW5k
IGhvbGRzIHJlcyAtIHNob3VsZCBiZSBncmFudGVkIGltbWVkaWF0ZWx5LgorICBjb25zdCBsb2Nr
X2lkID0gKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdCgKKyAgICBmcmFtZTEsIHtvcDogJ3JlcXVl
c3QnLCBuYW1lOiByZXN9KSkubG9ja19pZDsKKworICAvLyBmcmFtZTIgcmVxdWVzdHMgcmVzIC0g
c2hvdWxkIGJlIGJsb2NrZWQuCisgIC8vIChkb24ndCBhdHRhY2ggbGlzdGVuZXJzIGFzIHRoZXkg
d2lsbCBrZWVwIHRoZSBmcmFtZSBhbGl2ZSkKKyAgZnJhbWUyLmNvbnRlbnRXaW5kb3cucG9zdE1l
c3NhZ2Uoe29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc30sICcqJyk7CisKKyAgLy8gZnJhbWUzIHJl
cXVlc3RzIHJlcyAtIHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVkID0gZmFs
c2U7CisgIGNvbnN0IGJsb2NrZWQgPSBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUzLCB7b3A6ICdy
ZXF1ZXN0JywgbmFtZTogcmVzfSk7CisgIGJsb2NrZWQudGhlbihmID0+IHsgbG9ja19ncmFudGVk
ID0gdHJ1ZTsgfSk7CisKKyAgLy8gU28gZnJhbWUzIGNhbid0IGdldCBpdAorICBhc3NlcnRfdHJ1
ZSgoYXdhaXQgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lMywgeworICAgIG9wOiAncmVxdWVzdCcs
IG5hbWU6IHJlcywgaWZBdmFpbGFibGU6IHRydWUKKyAgfSkpLmZhaWxlZCwgJ0xvY2sgcmVxdWVz
dCBzaG91bGQgaGF2ZSBmYWlsZWQnKTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tfZ3JhbnRlZCk7CisK
KyAgLy8gUmVtb3ZlIGZyYW1lMi4KKyAgZnJhbWUyLnJlbW92ZSgpOworCisgIC8vIGZyYW1lMSBy
ZWxlYXNlcyBsb2NrCisgIGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTEsIHtvcDogJ3Jl
bGVhc2UnLCBsb2NrX2lkfSk7CisKKyAgLy8gZnJhbWUzJ3MgcmVxdWVzdCBzaG91bGQgYmUgZ3Jh
bnRlZC4KKyAgYXdhaXQgYmxvY2tlZDsKKyAgYXNzZXJ0X3RydWUobG9ja19ncmFudGVkKTsKKwor
fSwgJ1JlbW92ZWQgRnJhbWUgd2l0aCBwZW5kaW5nIHJlcXVlc3QnKTsKKworcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4geworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZpZ2F0b3IubG9ja3MpOworICBj
b25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGZyYW1lID0gYXdhaXQgaWZyYW1l
KCdhYm91dDpibGFuaycpOworCisgIC8vIFJlbW92ZSBhIGZyYW1lIHdoaWxlIGl0IGlzIGluIHRo
ZSBwcm9jZXNzIG9mIHJlcXVlc3RpbmcgYSBsb2NrLgorICAvLyBUaGUgcHJvbWlzZSByZXR1cm5l
ZCBieSBgcmVxdWVzdGAgd2lsbCBuZXZlciByZXNvbHZlIHNpbmNlIGl0cyBmcmFtZSBubworICAv
LyBsb25nZXIgZXhpc3RzLCBidXQgdGhlIGxvY2sgc2hvdWxkIHN0aWxsIGJlIHJlbGVhc2VkLgor
ICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBmcmFtZS5jb250ZW50V2luZG93
Lm5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgKCkgPT4geworICAgICAgZnJhbWUucmVtb3Zl
KCk7CisgICAgICByZXNvbHZlKCk7CisgICAgfSk7CisgIH0pOworCisgIGFzc2VydF9mYWxzZSgo
YXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCkpLmhlbGQuaW5jbHVkZXMocmVzKSk7Cit9LCAn
UmVtb3ZlZCBGcmFtZSBhcyBsb2NrIGlzIGdyYW50ZWQnKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMjE1OGQxNzZhODI3YzhmN2Q4ZGFiMWUz
NGMxZTQwMzFlYmNiMzZiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKKworRkFJTCBjYWxsYmFjaydzIHJlc3VsdCBp
cyBwcm9taXNpZmllZCBpZiBub3QgYXN5bmMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgbG9jayBp
cyBoZWxkIHVudGlsIGNhbGxiYWNrJ3MgcmV0dXJuZWQgcHJvbWlzZSByZXNvbHZlcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBsb2NrIGlzIGhlbGQgdW50aWwgY2FsbGJhY2sncyByZXR1cm5lZCBw
cm9taXNlIHJlamVjdHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgaGVsZCBsb2NrIHByZXZlbnRz
IHRoZSBzYW1lIGNsaWVudCBmcm9tIGFjcXVpcmluZyBpdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBz
LmFueS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBi
NTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAt
MCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5m
cmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRl
bnRhdGl2ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2ZjNGM3MzU0MDU0YzA4YTcwZTZiMWFk
MDUwOTU4YzAzMDNhZjVmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFu
eS5qcwpAQCAtMCwwICsxLDkxIEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBMb2Nr
IGhlbGQgdW50aWwgY2FsbGJhY2sgcmVzdWx0IHJlc29sdmVzCisvLyBNRVRBOiBzY3JpcHQ9cmVz
b3VyY2VzL2hlbHBlcnMuanMKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2Vy
LHNoYXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisKKyd1c2Ugc3RyaWN0JzsKKworLy8gRm9yIHVu
Y2F1Z2h0IHJlamVjdGlvbnMuCitzZXR1cCh7YWxsb3dfdW5jYXVnaHRfZXhjZXB0aW9uOiB0cnVl
fSk7CisKK2Z1bmN0aW9uIHNub296ZSh0LCBtcykgeyByZXR1cm4gbmV3IFByb21pc2UociA9PiB0
LnN0ZXBfdGltZW91dChyLCBtcykpOyB9CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAg
Y29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKyAgY29uc3QgcCA9IG5hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0KHJlcywgbG9jayA9PiAxMjMpOworICBhc3NlcnRfZXF1YWxzKFByb21pc2UucmVzb2x2
ZShwKSwgcCwgJ3JlcXVlc3QoKSByZXN1bHQgaXMgYSBQcm9taXNlJyk7CisgIGFzc2VydF9lcXVh
bHMoYXdhaXQgcCwgMTIzLCAncHJvbWlzZSByZXNvbHZlcyB0byB0aGUgcmV0dXJuZWQgdmFsdWUn
KTsKK30sICdjYWxsYmFja1wncyByZXN1bHQgaXMgcHJvbWlzaWZpZWQgaWYgbm90IGFzeW5jJyk7
CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0
KTsKKyAgLy8gUmVzb2x2ZWQgd2hlbiB0aGUgbG9jayBpcyBncmFudGVkLgorICBsZXQgZ3JhbnRl
ZDsKKyAgY29uc3QgbG9ja19ncmFudGVkX3Byb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHsgZ3Jh
bnRlZCA9IHI7IH0pOworCisgIC8vIExvY2sgaXMgaGVsZCB1bnRpbCB0aGlzIGlzIHJlc29sdmVk
LgorICBsZXQgcmVzb2x2ZTsKKyAgY29uc3QgbG9ja19yZWxlYXNlX3Byb21pc2UgPSBuZXcgUHJv
bWlzZShyID0+IHsgcmVzb2x2ZSA9IHI7IH0pOworCisgIGNvbnN0IG9yZGVyID0gW107CisKKyAg
bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBsb2NrID0+IHsKKyAgICBncmFudGVkKGxvY2sp
OworICAgIHJldHVybiBsb2NrX3JlbGVhc2VfcHJvbWlzZTsKKyAgfSk7CisgIGF3YWl0IGxvY2tf
Z3JhbnRlZF9wcm9taXNlOworCisgIGF3YWl0IFByb21pc2UuYWxsKFsKKyAgICBzbm9vemUodCwg
NTApLnRoZW4oKCkgPT4geworICAgICAgb3JkZXIucHVzaCgnMXN0IGxvY2sgcmVsZWFzZWQnKTsK
KyAgICAgIHJlc29sdmUoKTsKKyAgICB9KSwKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChy
ZXMsICgpID0+IHsKKyAgICAgIG9yZGVyLnB1c2goJzJuZCBsb2NrIGdyYW50ZWQnKTsKKyAgICB9
KQorICBdKTsKKworICBhc3NlcnRfYXJyYXlfZXF1YWxzKG9yZGVyLCBbJzFzdCBsb2NrIHJlbGVh
c2VkJywgJzJuZCBsb2NrIGdyYW50ZWQnXSk7Cit9LCAnbG9jayBpcyBoZWxkIHVudGlsIGNhbGxi
YWNrXCdzIHJldHVybmVkIHByb21pc2UgcmVzb2x2ZXMnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5j
IHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICAvLyBSZXNvbHZlZCB3aGVu
IHRoZSBsb2NrIGlzIGdyYW50ZWQuCisgIGxldCBncmFudGVkOworICBjb25zdCBsb2NrX2dyYW50
ZWRfcHJvbWlzZSA9IG5ldyBQcm9taXNlKHIgPT4geyBncmFudGVkID0gcjsgfSk7CisKKyAgLy8g
TG9jayBpcyBoZWxkIHVudGlsIHRoaXMgaXMgcmVqZWN0ZWQuCisgIGxldCByZWplY3Q7CisgIGNv
bnN0IGxvY2tfcmVsZWFzZV9wcm9taXNlID0gbmV3IFByb21pc2UoKF8sIHIpID0+IHsgcmVqZWN0
ID0gcjsgfSk7CisKKyAgY29uc3Qgb3JkZXIgPSBbXTsKKworICBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdChyZXMsIGxvY2sgPT4geworICAgIGdyYW50ZWQobG9jayk7CisgICAgcmV0dXJuIGxvY2tf
cmVsZWFzZV9wcm9taXNlOworICB9KTsKKyAgYXdhaXQgbG9ja19ncmFudGVkX3Byb21pc2U7CisK
KyAgYXdhaXQgUHJvbWlzZS5hbGwoWworICAgIHNub296ZSh0LCA1MCkudGhlbigoKSA9PiB7Cisg
ICAgICBvcmRlci5wdXNoKCdyZWplY3QnKTsKKyAgICAgIHJlamVjdChuZXcgRXJyb3IoJ3RoaXMg
dW5jYXVnaHQgcmVqZWN0aW9uIGlzIGV4cGVjdGVkJykpOworICAgIH0pLAorICAgIG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgKCkgPT4geworICAgICAgb3JkZXIucHVzaCgnMm5kIGxvY2sg
Z3JhbnRlZCcpOworICAgIH0pCisgIF0pOworCisgIGFzc2VydF9hcnJheV9lcXVhbHMob3JkZXIs
IFsncmVqZWN0JywgJzJuZCBsb2NrIGdyYW50ZWQnXSk7Cit9LCAnbG9jayBpcyBoZWxkIHVudGls
IGNhbGxiYWNrXCdzIHJldHVybmVkIHByb21pc2UgcmVqZWN0cycpOworCitwcm9taXNlX3Rlc3Qo
YXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGxldCBjYWxsYmFj
a19jYWxsZWQgPSBmYWxzZTsKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBh
c3luYyBsb2NrID0+IHsKKyAgICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtp
ZkF2YWlsYWJsZTogdHJ1ZX0sIGxvY2sgPT4geworICAgICAgY2FsbGJhY2tfY2FsbGVkID0gdHJ1
ZTsKKyAgICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwgJ2xvY2sgcmVxdWVzdCBzaG91bGQg
ZmFpbCBpZiBoZWxkJyk7CisgICAgfSk7CisgIH0pOworICBhc3NlcnRfdHJ1ZShjYWxsYmFja19j
YWxsZWQsICdjYWxsYmFjayBzaG91bGQgaGF2ZSBleGVjdXRlZCcpOworfSwgJ2hlbGQgbG9jayBw
cmV2ZW50cyB0aGUgc2FtZSBjbGllbnQgZnJvbSBhY3F1aXJpbmcgaXQnKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hl
bGQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVu
dGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
MjE1OGQxNzZhODI3YzhmN2Q4ZGFiMWUzNGMxZTQwMzFlYmNiMzZiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
aGVsZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNiBAQAorCitGQUlMIGNhbGxiYWNrJ3MgcmVzdWx0IGlzIHByb21pc2lmaWVkIGlmIG5v
dCBhc3luYyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBsb2NrIGlzIGhlbGQgdW50aWwgY2FsbGJh
Y2sncyByZXR1cm5lZCBwcm9taXNlIHJlc29sdmVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIGxv
Y2sgaXMgaGVsZCB1bnRpbCBjYWxsYmFjaydzIHJldHVybmVkIHByb21pc2UgcmVqZWN0cyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCcpIgorRkFJTCBoZWxkIGxvY2sgcHJldmVudHMgdGhlIHNhbWUgY2xpZW50IGZy
b20gYWNxdWlyaW5nIGl0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0
aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBh
NDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVp
cmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0
ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0
aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMuYW55
Lndvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjIxNThkMTc2YTgyN2M4ZjdkOGRhYjFl
MzRjMWU0MDMxZWJjYjM2YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFu
eS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorCitGQUlMIGNhbGxiYWNrJ3Mg
cmVzdWx0IGlzIHByb21pc2lmaWVkIGlmIG5vdCBhc3luYyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBsb2NrIGlzIGhlbGQgdW50aWwgY2FsbGJhY2sncyByZXR1cm5lZCBwcm9taXNlIHJlc29sdmVz
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIGxvY2sgaXMgaGVsZCB1bnRpbCBjYWxsYmFjaydzIHJl
dHVybmVkIHByb21pc2UgcmVqZWN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBoZWxkIGxvY2sg
cHJldmVudHMgdGhlIHNhbWUgY2xpZW50IGZyb20gYWNxdWlyaW5nIGl0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQu
dGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5
M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRp
dmUuaHR0cHMuYW55Lndvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlz
IHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBs
YXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhh
cm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk2ODc2MjVhMzQ3YWFjYzFmMzk3
Yjg3NDM3MzI4YzUwNDIzMzBhMTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDggQEAKKworUEFTUyBpZGxfdGVz
dCBzZXR1cAorUEFTUyBpZGxfdGVzdCB2YWxpZGF0aW9uCitQQVNTIFBhcnRpYWwgaW50ZXJmYWNl
IG1peGluIE5hdmlnYXRvcklEOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0
b3IgaW5jbHVkZXMgTmF2aWdhdG9yTG9ja3M6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNT
IFdvcmtlck5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JMb2NrczogbWVtYmVyIG5hbWVzIGFy
ZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvcklEOiBtZW1iZXIgbmFt
ZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yTGFuZ3VhZ2U6
IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0
b3JPbkxpbmU6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRl
cyBOYXZpZ2F0b3JDb250ZW50VXRpbHM6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5h
dmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JDb29raWVzOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1
ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yUGx1Z2luczogbWVtYmVyIG5hbWVz
IGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckNvbmN1cnJlbnRI
YXJkd2FyZTogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgV29ya2VyTmF2aWdhdG9yIGlu
Y2x1ZGVzIE5hdmlnYXRvcklEOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJO
YXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yTGFuZ3VhZ2U6IG1lbWJlciBuYW1lcyBhcmUgdW5p
cXVlCitQQVNTIFdvcmtlck5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JPbkxpbmU6IG1lbWJl
ciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIFdvcmtlck5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0
b3JDb25jdXJyZW50SGFyZHdhcmU6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitGQUlMIExvY2tN
YW5hZ2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBv
YmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0
eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZwor
RkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2Ugb2JqZWN0IGxlbmd0aCBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0
ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVy
ZmFjZSBvYmplY3QgbmFtZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUg
b3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2Vy
IiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9w
ZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6
IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBw
cm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNl
OiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3Qn
cyAiY29uc3RydWN0b3IiIHByb3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBu
b3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9j
a01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBleGlzdGVuY2Ug
YW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFi
bGVzIHByb3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24g
cHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1p
c3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBvcGVyYXRpb24gcmVxdWVzdChET01T
dHJpbmcsIExvY2tHcmFudGVkQ2FsbGJhY2spIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9l
cyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAi
TG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBvcGVyYXRp
b24gcmVxdWVzdChET01TdHJpbmcsIExvY2tPcHRpb25zLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBh
c3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2Nr
TWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExv
Y2tNYW5hZ2VyIGludGVyZmFjZTogb3BlcmF0aW9uIHF1ZXJ5KCkgYXNzZXJ0X293bl9wcm9wZXJ0
eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVk
IHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBtdXN0IGJl
IHByaW1hcnkgaW50ZXJmYWNlIG9mIG5hdmlnYXRvci5sb2NrcyBhc3NlcnRfZXF1YWxzOiB3cm9u
ZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZB
SUwgU3RyaW5naWZpY2F0aW9uIG9mIG5hdmlnYXRvci5sb2NrcyBhc3NlcnRfZXF1YWxzOiB3cm9u
ZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZB
SUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBuYXZpZ2F0b3IubG9ja3MgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJyZXF1ZXN0KERPTVN0cmluZywgTG9ja0dyYW50ZWRDYWxsYmFjaykiIHdpdGggdGhl
IHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IHdyb25nIHR5cGVvZiBvYmplY3QgZXhwZWN0ZWQg
Im9iamVjdCIgYnV0IGdvdCAidW5kZWZpbmVkIgorRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6
IGNhbGxpbmcgcmVxdWVzdChET01TdHJpbmcsIExvY2tHcmFudGVkQ2FsbGJhY2spIG9uIG5hdmln
YXRvci5sb2NrcyB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFz
c2VydF9lcXVhbHM6IHdyb25nIHR5cGVvZiBvYmplY3QgZXhwZWN0ZWQgIm9iamVjdCIgYnV0IGdv
dCAidW5kZWZpbmVkIgorRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IG5hdmlnYXRvci5sb2Nr
cyBtdXN0IGluaGVyaXQgcHJvcGVydHkgInJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9ucywg
TG9ja0dyYW50ZWRDYWxsYmFjaykiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6
IHdyb25nIHR5cGVvZiBvYmplY3QgZXhwZWN0ZWQgIm9iamVjdCIgYnV0IGdvdCAidW5kZWZpbmVk
IgorRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGNhbGxpbmcgcmVxdWVzdChET01TdHJpbmcs
IExvY2tPcHRpb25zLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBvbiBuYXZpZ2F0b3IubG9ja3Mgd2l0
aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiB3
cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIK
K0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBuYXZpZ2F0b3IubG9ja3MgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJxdWVyeSgpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3
cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIK
K0ZBSUwgTG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZh
Y2Ugb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJv
cGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sg
aW50ZXJmYWNlIG9iamVjdCBsZW5ndGggYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5v
dCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3Np
bmcKK0ZBSUwgTG9jayBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTog
c2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkg
IkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAi
TG9jayIgbWlzc2luZworRkFJTCBMb2NrIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0
aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0
eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJM
b2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJTCBMb2NrIGludGVyZmFj
ZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0
J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMg
bm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlz
c2luZworRkFJTCBMb2NrIGludGVyZmFjZTogYXR0cmlidXRlIG5hbWUgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJv
cGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBtb2Rl
IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxv
Y2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgbXVzdCBiZSBw
cmltYXJ5IGludGVyZmFjZSBvZiBsb2NrIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IGxvY2siCitGQUlMIFN0cmluZ2lm
aWNhdGlvbiBvZiBsb2NrIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4g
ZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNl
RXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IGxvY2siCitGQUlMIExvY2sgaW50ZXJmYWNlOiBs
b2NrIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibmFtZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNz
ZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBl
eHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2
YXJpYWJsZTogbG9jayIKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGxvY2sgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJtb2RlIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdv
dCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2NrIgorRkFJ
TCBOYXZpZ2F0b3IgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgbG9ja3MgYXNzZXJ0X3RydWU6IFRoZSBw
cm90b3R5cGUgb2JqZWN0IG11c3QgaGF2ZSBhIHByb3BlcnR5ICJsb2NrcyIgZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK0ZBSUwgTmF2aWdhdG9yIGludGVyZmFjZTogbmF2aWdhdG9yIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAibG9ja3MiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0
czogcHJvcGVydHkgImxvY2tzIiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRp
dmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0
NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBz
LmFueS5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBX
ZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZl
Lmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yZGY3ODMxYzM0MDU3MjBmNjI0MjhlYjJjODcyMmM3ZDE3MmY3NDNlCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsMjkgQEAKKy8v
IE1FVEE6IHNjcmlwdD0vcmVzb3VyY2VzL1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0
PS9yZXNvdXJjZXMvaWRsaGFybmVzcy5qcworLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyxkZWRpY2F0
ZWR3b3JrZXIsc2hhcmVkd29ya2VyLHNlcnZpY2V3b3JrZXIKKy8vIE1FVEE6IHRpbWVvdXQ9bG9u
ZworCisndXNlIHN0cmljdCc7CisKK2lkbF90ZXN0KAorICBbJ3dlYi1sb2NrcyddLAorICBbJ2h0
bWwnXSwKKyAgYXN5bmMgaWRsX2FycmF5ID0+IHsKKyAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMo
eworICAgICAgTG9ja01hbmFnZXI6IFsnbmF2aWdhdG9yLmxvY2tzJ10sCisgICAgICBMb2NrOiBb
J2xvY2snXSwKKyAgICB9KTsKKworICAgIGlmIChzZWxmLldpbmRvdykgeworICAgICAgaWRsX2Fy
cmF5LmFkZF9vYmplY3RzKHsgTmF2aWdhdG9yOiBbJ25hdmlnYXRvciddIH0pOworICAgIH0gZWxz
ZSB7CisgICAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMoeyBXb3JrZXJOYXZpZ2F0b3I6IFsnbmF2
aWdhdG9yJ10gfSk7CisgICAgfQorCisgICAgdHJ5IHsKKyAgICAgIGF3YWl0IG5hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0KCduYW1lJywgbCA9PiB7IHNlbGYubG9jayA9IGw7IH0pOworICAgIH0gY2F0
Y2ggKGUpIHsKKyAgICAgIC8vIFN1cmZhY2VkIGluIGlkbGhhcm5lc3MuanMncyB0ZXN0X29iamVj
dCBiZWxvdy4KKyAgICB9CisgIH0KKyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTQ0YjAxOTZj
MjI0YWZmYzg2YjM4MzllZGFkM2FkMDk4NWM0ODc5MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5l
c3MudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDQ4IEBACisKK1BBU1MgaWRsX3Rlc3Qgc2V0dXAKK1BBU1MgaWRsX3Rlc3QgdmFsaWRhdGlv
bgorUEFTUyBQYXJ0aWFsIGludGVyZmFjZSBtaXhpbiBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVz
IGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxvY2tzOiBtZW1i
ZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdh
dG9yTG9ja3M6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRl
cyBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGlu
Y2x1ZGVzIE5hdmlnYXRvckxhbmd1YWdlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBO
YXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yT25MaW5lOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1
ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29udGVudFV0aWxzOiBtZW1iZXIg
bmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29va2ll
czogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmln
YXRvclBsdWdpbnM6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNs
dWRlcyBOYXZpZ2F0b3JDb25jdXJyZW50SGFyZHdhcmU6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVl
CitQQVNTIFdvcmtlck5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVz
IGFyZSB1bmlxdWUKK1BBU1MgV29ya2VyTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxhbmd1
YWdlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVk
ZXMgTmF2aWdhdG9yT25MaW5lOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJO
YXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29uY3VycmVudEhhcmR3YXJlOiBtZW1iZXIgbmFt
ZXMgYXJlIHVuaXF1ZQorRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQg
cHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYg
ZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0
eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlIG9iamVj
dCBsZW5ndGggYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9w
ZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2lu
ZworRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVj
dGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9i
amVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5
ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitG
QUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGlu
dGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3NlcnRf
b3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdl
ciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5h
Z2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5
OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQg
cHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFj
ZTogb3BlcmF0aW9uIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBhc3Nl
cnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFu
YWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tN
YW5hZ2VyIGludGVyZmFjZTogb3BlcmF0aW9uIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9u
cywgTG9ja0dyYW50ZWRDYWxsYmFjaykgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5v
dCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2Nr
TWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IG9wZXJhdGlvbiBx
dWVyeSgpIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVy
dHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcK
K0ZBSUwgTG9ja01hbmFnZXIgbXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuYXZpZ2F0b3Iu
bG9ja3MgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0
IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIFN0cmluZ2lmaWNhdGlvbiBvZiBuYXZpZ2F0b3Iu
bG9ja3MgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0
IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2aWdh
dG9yLmxvY2tzIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAicmVxdWVzdChET01TdHJpbmcsIExvY2tH
cmFudGVkQ2FsbGJhY2spIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3cm9u
ZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZB
SUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBjYWxsaW5nIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2Nr
R3JhbnRlZENhbGxiYWNrKSBvbiBuYXZpZ2F0b3IubG9ja3Mgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0
IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIg
aW50ZXJmYWNlOiBuYXZpZ2F0b3IubG9ja3MgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJyZXF1ZXN0
KERPTVN0cmluZywgTG9ja09wdGlvbnMsIExvY2tHcmFudGVkQ2FsbGJhY2spIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJv
YmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBj
YWxsaW5nIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxsYmFj
aykgb24gbmF2aWdhdG9yLmxvY2tzIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBU
eXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2Jq
ZWN0IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2
aWdhdG9yLmxvY2tzIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAicXVlcnkoKSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2Jq
ZWN0IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIExvY2sgaW50ZXJmYWNlOiBleGlzdGVuY2Ug
YW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAi
TG9jayIgbWlzc2luZworRkFJTCBMb2NrIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIGFzc2VydF9v
d25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVj
dGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlIG9iamVjdCBu
YW1lIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkg
IkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJm
YWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmpl
Y3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
TG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZh
Y2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVj
dCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2Vz
IG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1p
c3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBp
bnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgYXNzZXJ0
X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhw
ZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGF0dHJp
YnV0ZSBuYW1lIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJv
cGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sg
aW50ZXJmYWNlOiBhdHRyaWJ1dGUgbW9kZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMg
bm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlz
c2luZworRkFJTCBMb2NrIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbG9jayBhc3NlcnRf
ZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVj
dGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBsb2NrIgorRkFJTCBTdHJpbmdpZmljYXRpb24gb2YgbG9jayBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2Nr
IgorRkFJTCBMb2NrIGludGVyZmFjZTogbG9jayBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm5hbWUi
IHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9u
IHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVm
ZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IGxvY2siCitGQUlMIExvY2sgaW50ZXJm
YWNlOiBsb2NrIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogbG9jayIKK0ZBSUwgV29ya2VyTmF2aWdhdG9yIGludGVyZmFjZTogYXR0
cmlidXRlIGxvY2tzIGFzc2VydF90cnVlOiBUaGUgcHJvdG90eXBlIG9iamVjdCBtdXN0IGhhdmUg
YSBwcm9wZXJ0eSAibG9ja3MiIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFdvcmtlck5h
dmlnYXRvciBpbnRlcmZhY2U6IG5hdmlnYXRvciBtdXN0IGluaGVyaXQgcHJvcGVydHkgImxvY2tz
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJsb2NrcyIg
bm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRh
dGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0
cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVk
NTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRp
dmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMg
ZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRo
ZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhh
cm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjE0NGIwMTk2YzIyNGFmZmM4NmIzODM5ZWRhZDNhZDA5ODVjNDg3OTMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQ4IEBACisKK1BBU1MgaWRsX3Rlc3Qgc2V0dXAKK1BBU1MgaWRsX3Rlc3QgdmFsaWRh
dGlvbgorUEFTUyBQYXJ0aWFsIGludGVyZmFjZSBtaXhpbiBOYXZpZ2F0b3JJRDogbWVtYmVyIG5h
bWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxvY2tzOiBt
ZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2
aWdhdG9yTG9ja3M6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNs
dWRlcyBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9y
IGluY2x1ZGVzIE5hdmlnYXRvckxhbmd1YWdlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFT
UyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yT25MaW5lOiBtZW1iZXIgbmFtZXMgYXJlIHVu
aXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29udGVudFV0aWxzOiBtZW1i
ZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29v
a2llczogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5h
dmlnYXRvclBsdWdpbnM6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBp
bmNsdWRlcyBOYXZpZ2F0b3JDb25jdXJyZW50SGFyZHdhcmU6IG1lbWJlciBuYW1lcyBhcmUgdW5p
cXVlCitQQVNTIFdvcmtlck5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JJRDogbWVtYmVyIG5h
bWVzIGFyZSB1bmlxdWUKK1BBU1MgV29ya2VyTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxh
bmd1YWdlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5j
bHVkZXMgTmF2aWdhdG9yT25MaW5lOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3Jr
ZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29uY3VycmVudEhhcmR3YXJlOiBtZW1iZXIg
bmFtZXMgYXJlIHVuaXF1ZQorRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBh
bmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNl
bGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9w
ZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlIG9i
amVjdCBsZW5ndGggYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBw
cm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlz
c2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9w
cm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4
cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBp
bnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBl
IG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3Bl
cnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5n
CitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9m
IGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3Nl
cnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFu
YWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tN
YW5hZ2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBw
cm90b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0
ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVy
ZmFjZTogb3BlcmF0aW9uIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBh
c3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2Nr
TWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExv
Y2tNYW5hZ2VyIGludGVyZmFjZTogb3BlcmF0aW9uIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0
aW9ucywgTG9ja0dyYW50ZWRDYWxsYmFjaykgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2Vz
IG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJM
b2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IG9wZXJhdGlv
biBxdWVyeSgpIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJv
cGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3Np
bmcKK0ZBSUwgTG9ja01hbmFnZXIgbXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuYXZpZ2F0
b3IubG9ja3MgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2Jq
ZWN0IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIFN0cmluZ2lmaWNhdGlvbiBvZiBuYXZpZ2F0
b3IubG9ja3MgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2Jq
ZWN0IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2
aWdhdG9yLmxvY2tzIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAicmVxdWVzdChET01TdHJpbmcsIExv
Y2tHcmFudGVkQ2FsbGJhY2spIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3
cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIK
K0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBjYWxsaW5nIHJlcXVlc3QoRE9NU3RyaW5nLCBM
b2NrR3JhbnRlZENhbGxiYWNrKSBvbiBuYXZpZ2F0b3IubG9ja3Mgd2l0aCB0b28gZmV3IGFyZ3Vt
ZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2Jq
ZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFn
ZXIgaW50ZXJmYWNlOiBuYXZpZ2F0b3IubG9ja3MgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJyZXF1
ZXN0KERPTVN0cmluZywgTG9ja09wdGlvbnMsIExvY2tHcmFudGVkQ2FsbGJhY2spIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVk
ICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNl
OiBjYWxsaW5nIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxs
YmFjaykgb24gbmF2aWdhdG9yLmxvY2tzIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJv
dyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAi
b2JqZWN0IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTog
bmF2aWdhdG9yLmxvY2tzIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAicXVlcnkoKSIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAi
b2JqZWN0IiBidXQgZ290ICJ1bmRlZmluZWQiCitGQUlMIExvY2sgaW50ZXJmYWNlOiBleGlzdGVu
Y2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5
OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0
eSAiTG9jayIgbWlzc2luZworRkFJTCBMb2NrIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIGFzc2Vy
dF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4
cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlIG9iamVj
dCBuYW1lIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVy
dHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50
ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBv
YmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0
eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9i
amVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBk
b2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2si
IG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgYXNz
ZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIg
ZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGF0
dHJpYnV0ZSBuYW1lIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24g
cHJvcGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExv
Y2sgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgbW9kZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRv
ZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIg
bWlzc2luZworRkFJTCBMb2NrIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbG9jayBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBsb2NrIgorRkFJTCBTdHJpbmdpZmljYXRpb24gb2YgbG9jayBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBs
b2NrIgorRkFJTCBMb2NrIGludGVyZmFjZTogbG9jayBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm5h
bWUiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IGxvY2siCitGQUlMIExvY2sgaW50
ZXJmYWNlOiBsb2NrIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibW9kZSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5n
IG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2Fu
J3QgZmluZCB2YXJpYWJsZTogbG9jayIKK0ZBSUwgV29ya2VyTmF2aWdhdG9yIGludGVyZmFjZTog
YXR0cmlidXRlIGxvY2tzIGFzc2VydF90cnVlOiBUaGUgcHJvdG90eXBlIG9iamVjdCBtdXN0IGhh
dmUgYSBwcm9wZXJ0eSAibG9ja3MiIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFdvcmtl
ck5hdmlnYXRvciBpbnRlcmZhY2U6IG5hdmlnYXRvciBtdXN0IGluaGVyaXQgcHJvcGVydHkgImxv
Y2tzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJsb2Nr
cyIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRl
bnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5h
bnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2
MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFu
eS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBm
b3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAt
LT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50
YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lmQXZhaWxhYmxlLnRlbnRhdGl2ZS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg5MTBjMjdhNTJjMTQ0MGFmNjZlNjA0MTBkZWJm
M2JhZGVmYWM0MjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisKK0ZBSUwgTG9jayByZXF1ZXN0IHdp
dGggaWZBdmFpbGFibGUgLSBsb2NrIGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBM
b2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90
IGF2YWlsYWJsZSwgY2FsbGJhY2sgdGhyb3dzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sg
cmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gdW5yZWxhdGVkIGxvY2sgaGVsZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBTaGFyZWQgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFy
ZWQgbG9jayBoZWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEV4Y2x1c2l2ZSBsb2NrIHJlcXVl
c3Qgd2l0aCBpZkF2YWlsYWJsZSAtIHNoYXJlZCBsb2NrIGhlbGQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIK
K0ZBSUwgU2hhcmVkIGxvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gZXhjbHVzaXZlIGxv
Y2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMg
aWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwg
UmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGFzeW5jIGNhbGxiYWNrIHlpZWxkcyByZWplY3Rl
ZCBwcm9taXNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2tzIGFyZSBhdmFpbGFibGUgb25j
ZSBwcmV2aW91cyByZWxlYXNlIGlzIHByb2Nlc3NlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50
YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2
MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lmQXZhaWxhYmxlLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBm
b3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAt
LT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50
YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42M2U2ZDU2OGZlNTEzNTEyY2I1NThiZDY2ZWViZWExYjYyNWQ1NGM2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDE2
MyBAQAorLy8gTUVUQTogdGl0bGU9V2ViIExvY2tzIEFQSTogaWZBdmFpbGFibGUgb3B0aW9uCisv
LyBNRVRBOiBzY3JpcHQ9cmVzb3VyY2VzL2hlbHBlcnMuanMKKy8vIE1FVEE6IGdsb2JhbD13aW5k
b3csZGVkaWNhdGVkd29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisKKyd1c2Ugc3Ry
aWN0JzsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSBzZWxmLnVu
aXF1ZU5hbWUodCk7CisgIGxldCBjYWxsYmFja19jYWxsZWQgPSBmYWxzZTsKKyAgYXdhaXQgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7aWZBdmFpbGFibGU6IHRydWV9LCBhc3luYyBsb2Nr
ID0+IHsKKyAgICBjYWxsYmFja19jYWxsZWQgPSB0cnVlOworICAgIGFzc2VydF9ub3RfZXF1YWxz
KGxvY2ssIG51bGwsICdsb2NrIHNob3VsZCBiZSBncmFudGVkJyk7CisgIH0pOworICBhc3NlcnRf
dHJ1ZShjYWxsYmFja19jYWxsZWQsICdjYWxsYmFjayBzaG91bGQgYmUgY2FsbGVkJyk7Cit9LCAn
TG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBsb2NrIGF2YWlsYWJsZScpOworCitwcm9t
aXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHNlbGYudW5pcXVlTmFtZSh0KTsK
KyAgbGV0IGNhbGxiYWNrX2NhbGxlZCA9IGZhbHNlOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdChyZXMsIGFzeW5jIGxvY2sgPT4geworICAgIC8vIFJlcXVlc3Qgd291bGQgdGltZSBv
dXQgaWYgfGlmQXZhaWxhYmxlfCB3YXMgbm90IHNwZWNpZmllZC4KKyAgICBjb25zdCByZXN1bHQg
PSBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICAgIHJlcywge2lmQXZhaWxhYmxl
OiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7
CisgICAgICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwgJ2xvY2sgc2hvdWxkIG5vdCBiZSBn
cmFudGVkJyk7CisgICAgICAgIHJldHVybiAxMjM7CisgICAgICB9KTsKKyAgICBhc3NlcnRfZXF1
YWxzKHJlc3VsdCwgMTIzLCAncmVzdWx0IHNob3VsZCBiZSB2YWx1ZSByZXR1cm5lZCBieSBjYWxs
YmFjaycpOworICB9KTsKKyAgYXNzZXJ0X3RydWUoY2FsbGJhY2tfY2FsbGVkLCAnY2FsbGJhY2sg
c2hvdWxkIGJlIGNhbGxlZCcpOworfSwgJ0xvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0g
bG9jayBub3QgYXZhaWxhYmxlJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29u
c3QgcmVzID0gc2VsZi51bmlxdWVOYW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFs
c2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7
CisgICAgdHJ5IHsKKyAgICAgIC8vIFJlcXVlc3Qgd291bGQgdGltZSBvdXQgaWYgfGlmQXZhaWxh
YmxlfCB3YXMgbm90IHNwZWNpZmllZC4KKyAgICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGNh
bGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwg
J2xvY2sgc2hvdWxkIG5vdCBiZSBncmFudGVkJyk7CisgICAgICAgIHRocm93IDEyMzsKKyAgICAg
IH0pOworICAgICAgYXNzZXJ0X3VucmVhY2hlZCgnY2FsbCBzaG91bGQgdGhyb3cnKTsKKyAgICB9
IGNhdGNoIChleCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhleCwgMTIzLCAnZXggc2hvdWxkIGJl
IHZhbHVlIHRocm93biBieSBjYWxsYmFjaycpOworICAgIH0KKyAgfSk7CisgIGFzc2VydF90cnVl
KGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdMb2Nr
IHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSwgY2FsbGJhY2sg
dGhyb3dzJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2Vs
Zi51bmlxdWVOYW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0
IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgLy8gUmVx
dWVzdCB3aXRoIGEgZGlmZmVyZW50IG5hbWUgLSBzaG91bGQgYmUgZ3JhbnRhYmxlLgorICAgIGF3
YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdkaWZmZXJlbnQnLCB7aWZBdmFpbGFibGU6IHRy
dWV9LCBhc3luYyBsb2NrID0+IHsKKyAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAg
ICBhc3NlcnRfbm90X2VxdWFscyhsb2NrLCBudWxsLCAnbG9jayBzaG91bGQgYmUgZ3JhbnRlZCcp
OworICAgIH0pOworICB9KTsKKyAgYXNzZXJ0X3RydWUoY2FsbGJhY2tfY2FsbGVkLCAnY2FsbGJh
Y2sgc2hvdWxkIGJlIGNhbGxlZCcpOworfSwgJ0xvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxl
IC0gdW5yZWxhdGVkIGxvY2sgaGVsZCcpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Cisg
IGNvbnN0IHJlcyA9IHNlbGYudW5pcXVlTmFtZSh0KTsKKyAgbGV0IGNhbGxiYWNrX2NhbGxlZCA9
IGZhbHNlOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHttb2RlOiAnc2hh
cmVkJ30sIGFzeW5jIGxvY2sgPT4geworICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KAorICAgICAgcmVzLCB7bW9kZTogJ3NoYXJlZCcsIGlmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMg
bG9jayA9PiB7CisgICAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgICAgIGFzc2Vy
dF9ub3RfZXF1YWxzKGxvY2ssIG51bGwsICdsb2NrIHNob3VsZCBiZSBncmFudGVkJyk7CisgICAg
ICB9KTsKKyAgfSk7CisgIGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxiYWNrIHNo
b3VsZCBiZSBjYWxsZWQnKTsKK30sICdTaGFyZWQgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFi
bGUgLSBzaGFyZWQgbG9jayBoZWxkJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAg
Y29uc3QgcmVzID0gc2VsZi51bmlxdWVOYW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0g
ZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge21vZGU6ICdzaGFy
ZWQnfSwgYXN5bmMgbG9jayA9PiB7CisgICAgLy8gUmVxdWVzdCB3b3VsZCB0aW1lIG91dCBpZiB8
aWZBdmFpbGFibGV8IHdhcyBub3Qgc3BlY2lmaWVkLgorICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAg
ICBjYWxsYmFja19jYWxsZWQgPSB0cnVlOworICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrLCBudWxs
LCAnbG9jayBzaG91bGQgbm90IGJlIGdyYW50ZWQnKTsKKyAgICB9KTsKKyAgfSk7CisgIGFzc2Vy
dF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30s
ICdFeGNsdXNpdmUgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFyZWQgbG9jayBo
ZWxkJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51
bmlxdWVOYW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgLy8gUmVxdWVz
dCB3b3VsZCB0aW1lIG91dCBpZiB8aWZBdmFpbGFibGV8IHdhcyBub3Qgc3BlY2lmaWVkLgorICAg
IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgICAgcmVzLCB7bW9kZTogJ3NoYXJl
ZCcsIGlmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGNhbGxiYWNr
X2NhbGxlZCA9IHRydWU7CisgICAgICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwgJ2xvY2sg
c2hvdWxkIG5vdCBiZSBncmFudGVkJyk7CisgICAgICB9KTsKKyAgfSk7CisgIGFzc2VydF90cnVl
KGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdTaGFy
ZWQgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBleGNsdXNpdmUgbG9jayBoZWxkJyk7
CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51bmlxdWVO
YW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgY2FsbGJhY2tfY2FsbGVk
ID0gdHJ1ZTsKKyAgICBjb25zdCB0ZXN0X2Vycm9yID0ge25hbWU6ICd0ZXN0J307CisgICAgY29u
c3QgcCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgICAgcmVzLCB7aWZBdmFpbGFibGU6
IHRydWV9LCBsb2NrID0+IHsKKyAgICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrLCBudWxsLCAnbG9j
ayBzaG91bGQgbm90IGJlIGF2YWlsYWJsZScpOworICAgICAgICB0aHJvdyB0ZXN0X2Vycm9yOwor
ICAgICAgfSk7CisgICAgYXNzZXJ0X2VxdWFscyhQcm9taXNlLnJlc29sdmUocCksIHAsICdyZXF1
ZXN0KCkgcmVzdWx0IGlzIGEgUHJvbWlzZScpOworICAgIGF3YWl0IHByb21pc2VfcmVqZWN0c19l
eGFjdGx5KHQsIHRlc3RfZXJyb3IsIHAsICdyZXN1bHQgc2hvdWxkIHJlamVjdCcpOworICB9KTsK
KyAgYXNzZXJ0X3RydWUoY2FsbGJhY2tfY2FsbGVkLCAnY2FsbGJhY2sgc2hvdWxkIGJlIGNhbGxl
ZCcpOworfSwgJ1JldHVybmVkIFByb21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0aHJvd3Mgc3lu
Y2hyb25vdXNseScpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9
IHNlbGYudW5pcXVlTmFtZSh0KTsKKyAgbGV0IGNhbGxiYWNrX2NhbGxlZCA9IGZhbHNlOworICBh
d2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGFzeW5jIGxvY2sgPT4geworICAgIGNh
bGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgY29uc3QgdGVzdF9lcnJvciA9IHtuYW1lOiAndGVz
dCd9OworICAgIGNvbnN0IHAgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICAgIHJlcywg
e2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGFzc2VydF9lcXVh
bHMobG9jaywgbnVsbCwgJ2xvY2sgc2hvdWxkIG5vdCBiZSBhdmFpbGFibGUnKTsKKyAgICAgICAg
dGhyb3cgdGVzdF9lcnJvcjsKKyAgICAgIH0pOworICAgIGFzc2VydF9lcXVhbHMoUHJvbWlzZS5y
ZXNvbHZlKHApLCBwLCAncmVxdWVzdCgpIHJlc3VsdCBpcyBhIFByb21pc2UnKTsKKyAgICBhd2Fp
dCBwcm9taXNlX3JlamVjdHNfZXhhY3RseSh0LCB0ZXN0X2Vycm9yLCBwLCAncmVzdWx0IHNob3Vs
ZCByZWplY3QnKTsKKyAgfSk7CisgIGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxi
YWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMgaWYg
YXN5bmMgY2FsbGJhY2sgeWllbGRzIHJlamVjdGVkIHByb21pc2UnKTsKKworLy8gUmVncmVzc2lv
biB0ZXN0IGZvcjogaHR0cHM6Ly9jcmJ1Zy5jb20vODQwOTk0Citwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7CisgIGNvbnN0IHJlczEgPSBzZWxmLnVuaXF1ZU5hbWUodCk7CisgIGNvbnN0IHJlczIg
PSBzZWxmLnVuaXF1ZU5hbWUodCk7CisgIGxldCBjYWxsYmFjazFfY2FsbGVkID0gZmFsc2U7Cisg
IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlczEsIGFzeW5jIGxvY2sgPT4geworICAg
IGNhbGxiYWNrMV9jYWxsZWQgPSB0cnVlOworICAgIGxldCBjYWxsYmFjazJfY2FsbGVkID0gZmFs
c2U7CisgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzMiwgYXN5bmMgbG9jayA9
PiB7CisgICAgICBjYWxsYmFjazJfY2FsbGVkID0gdHJ1ZTsKKyAgICB9KTsKKyAgICBhc3NlcnRf
dHJ1ZShjYWxsYmFjazJfY2FsbGVkLCAnY2FsbGJhY2syIHNob3VsZCBiZSBjYWxsZWQnKTsKKwor
ICAgIGxldCBjYWxsYmFjazNfY2FsbGVkID0gZmFsc2U7CisgICAgYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QocmVzMiwge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7Cisg
ICAgICBjYWxsYmFjazNfY2FsbGVkID0gdHJ1ZTsKKyAgICAgIC8vIFRoaXMgcmVxdWVzdCB3b3Vs
ZCBmYWlsIGlmIHRoZSAiaXMgdGhpcyBncmFudGFibGU/IiB0ZXN0CisgICAgICAvLyBmYWlsZWQs
IGUuZy4gZHVlIHRvIHRoZSByZWxlYXNlIHdpdGhvdXQgYSBwZW5kaW5nIHJlcXVlc3QKKyAgICAg
IC8vIHNraXBwaW5nIHN0ZXBzLgorICAgICAgYXNzZXJ0X25vdF9lcXVhbHMobG9jaywgbnVsbCwg
J0xvY2sgc2hvdWxkIGJlIGF2YWlsYWJsZScpOworICAgIH0pOworICAgIGFzc2VydF90cnVlKGNh
bGxiYWNrM19jYWxsZWQsICdjYWxsYmFjazIgc2hvdWxkIGJlIGNhbGxlZCcpOworICB9KTsKKyAg
YXNzZXJ0X3RydWUoY2FsbGJhY2sxX2NhbGxlZCwgJ2NhbGxiYWNrMSBzaG91bGQgYmUgY2FsbGVk
Jyk7Cit9LCAnTG9ja3MgYXJlIGF2YWlsYWJsZSBvbmNlIHByZXZpb3VzIHJlbGVhc2UgaXMgcHJv
Y2Vzc2VkJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZp
Y2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2
aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OTEwYzI3YTUyYzE0NDBhZjY2ZTYw
NDEwZGViZjNiYWRlZmFjNDI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZl
Lmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisK
K0ZBSUwgTG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBsb2NrIGF2YWlsYWJsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sg
bm90IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBp
ZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSwgY2FsbGJhY2sgdGhyb3dzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIExvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gdW5yZWxhdGVk
IGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBTaGFyZWQgbG9jayByZXF1ZXN0IHdp
dGggaWZBdmFpbGFibGUgLSBzaGFyZWQgbG9jayBoZWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlM
IEV4Y2x1c2l2ZSBsb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIHNoYXJlZCBsb2NrIGhl
bGQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU2hhcmVkIGxvY2sgcmVxdWVzdCB3aXRoIGlmQXZh
aWxhYmxlIC0gZXhjbHVzaXZlIGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXR1
cm5lZCBQcm9taXNlIHJlamVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3VzbHkgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGFzeW5jIGNh
bGxiYWNrIHlpZWxkcyByZWplY3RlZCBwcm9taXNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExv
Y2tzIGFyZSBhdmFpbGFibGUgb25jZSBwcmV2aW91cyByZWxlYXNlIGlzIHByb2Nlc3NlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL2lmQXZhaWxhYmxlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vydmlj
ZXdvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5
ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1
aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQg
dGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJs
ZS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50
YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODkxMGMyN2E1
MmMxNDQwYWY2NmU2MDQxMGRlYmYzYmFkZWZhYzQyNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lmQXZhaWxh
YmxlLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEy
IEBACisKK0ZBSUwgTG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBsb2NrIGF2YWlsYWJs
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAt
IGxvY2sgbm90IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qg
d2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSwgY2FsbGJhY2sgdGhyb3dzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gdW5y
ZWxhdGVkIGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBTaGFyZWQgbG9jayByZXF1
ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFyZWQgbG9jayBoZWxkIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIEV4Y2x1c2l2ZSBsb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIHNoYXJlZCBs
b2NrIGhlbGQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU2hhcmVkIGxvY2sgcmVxdWVzdCB3aXRo
IGlmQXZhaWxhYmxlIC0gZXhjbHVzaXZlIGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3Vz
bHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGFz
eW5jIGNhbGxiYWNrIHlpZWxkcyByZWplY3RlZCBwcm9taXNlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitG
QUlMIExvY2tzIGFyZSBhdmFpbGFibGUgb25jZSBwcmV2aW91cyByZWxlYXNlIGlzIHByb2Nlc3Nl
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0
cHMuYW55Lndvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIu
aHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0
IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTVkOTc3YTEzZWQyMGRhODg1Yzc3MTQxMjVkYjNj
OTVjMjMwYzE0OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKworRkFJTCBMb2NrIGF0dHJpYnV0
ZXMgcmVmbGVjdCByZXF1ZXN0ZWQgcHJvcGVydGllcyAoZXhjbHVzaXZlKSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorRkFJTCBMb2NrIGF0dHJpYnV0ZXMgcmVmbGVjdCByZXF1ZXN0ZWQgcHJvcGVydGllcyAo
c2hhcmVkKSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVu
dGF0aXZlLmh0dHBzLmFueS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnku
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRt
bApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRl
c3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0
dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmQxYzAzMTAzZTBiN2Q3Y2Y0NjBiNTFlN2NkOTc0YTc2MTVjODk5NTUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDE4
IEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBMb2NrIEF0dHJpYnV0ZXMKKy8vIE1F
VEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNld29y
a2VyCisKKyd1c2Ugc3RyaWN0JzsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhd2Fp
dCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgncmVzb3VyY2UnLCBsb2NrID0+IHsKKyAgICBhc3Nl
cnRfZXF1YWxzKGxvY2submFtZSwgJ3Jlc291cmNlJyk7CisgICAgYXNzZXJ0X2VxdWFscyhsb2Nr
Lm1vZGUsICdleGNsdXNpdmUnKTsKKyAgfSk7Cit9LCAnTG9jayBhdHRyaWJ1dGVzIHJlZmxlY3Qg
cmVxdWVzdGVkIHByb3BlcnRpZXMgKGV4Y2x1c2l2ZSknKTsKKworcHJvbWlzZV90ZXN0KGFzeW5j
IHQgPT4geworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgncmVzb3VyY2UnLCB7bW9k
ZTogJ3NoYXJlZCd9LCBsb2NrID0+IHsKKyAgICBhc3NlcnRfZXF1YWxzKGxvY2submFtZSwgJ3Jl
c291cmNlJyk7CisgICAgYXNzZXJ0X2VxdWFscyhsb2NrLm1vZGUsICdzaGFyZWQnKTsKKyAgfSk7
Cit9LCAnTG9jayBhdHRyaWJ1dGVzIHJlZmxlY3QgcmVxdWVzdGVkIHByb3BlcnRpZXMgKHNoYXJl
ZCknKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZp
Y2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTVkOTc3YTEzZWQyMGRhODg1
Yzc3MTQxMjVkYjNjOTVjMjMwYzE0OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50
ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NCBAQAorCitGQUlMIExvY2sgYXR0cmlidXRlcyByZWZsZWN0IHJlcXVlc3RlZCBwcm9wZXJ0aWVz
IChleGNsdXNpdmUpIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sgYXR0cmlidXRlcyByZWZs
ZWN0IHJlcXVlc3RlZCBwcm9wZXJ0aWVzIChzaGFyZWQpIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vydmlj
ZXdvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZv
ciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0t
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50
ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVu
dGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1ZDk3N2Ex
M2VkMjBkYTg4NWM3NzE0MTI1ZGIzYzk1YzIzMGMxNDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0
dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNCBAQAorCitGQUlMIExvY2sgYXR0cmlidXRlcyByZWZsZWN0IHJlcXVlc3RlZCBwcm9wZXJ0
aWVzIChleGNsdXNpdmUpIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sgYXR0cmlidXRlcyBy
ZWZsZWN0IHJlcXVlc3RlZCBwcm9wZXJ0aWVzIChzaGFyZWQpIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCkBAIC0w
LDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZy
YXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjJjMjdiYjkwOGNjMzhjODA5MzRkN2I4NzA3YTMxZWZkN2VlZWM3Ngot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQg
aW4gb3JkZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAn
bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmVxdWVzdHMgZm9yIGRpc3RpbmN0IHJl
c291cmNlcyBjYW4gYmUgZ3JhbnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2Rl
LWV4Y2x1c2l2ZS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50ZW50YXRp
dmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0
NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBm
b3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAt
LT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50
ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44NDUwZTIzN2MzNTU1YTc1YjkyOWQ4YjFjNDE5Njc4OTA4NjI4ZGRkCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAt
MCwwICsxLDM0IEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBFeGNsdXNpdmUgTW9k
ZQorLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyxkZWRpY2F0ZWR3b3JrZXIsc2hhcmVkd29ya2VyLHNl
cnZpY2V3b3JrZXIKKworJ3VzZSBzdHJpY3QnOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7
CisgIGNvbnN0IGdyYW50ZWQgPSBbXTsKKyAgZnVuY3Rpb24gbG9nX2dyYW50KG4pIHsgcmV0dXJu
ICgpID0+IHsgZ3JhbnRlZC5wdXNoKG4pOyB9OyB9CisKKyAgYXdhaXQgUHJvbWlzZS5hbGwoWwor
ICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywgbG9nX2dyYW50KDEpKSwKKyAgICBuYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCgnYScsIGxvZ19ncmFudCgyKSksCisgICAgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QoJ2EnLCBsb2dfZ3JhbnQoMykpCisgIF0pOworICBhc3NlcnRfYXJyYXlfZXF1
YWxzKGdyYW50ZWQsIFsxLCAyLCAzXSk7Cit9LCAnTG9jayByZXF1ZXN0cyBhcmUgZ3JhbnRlZCBp
biBvcmRlcicpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGdyYW50ZWQg
PSBbXTsKKyAgZnVuY3Rpb24gbG9nX2dyYW50KG4pIHsgcmV0dXJuICgpID0+IHsgZ3JhbnRlZC5w
dXNoKG4pOyB9OyB9CisKKyAgbGV0IGlubmVyX3Byb21pc2U7CisgIGF3YWl0IG5hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0KCdhJywgYXN5bmMgbG9jayA9PiB7CisgICAgaW5uZXJfcHJvbWlzZSA9IFBy
b21pc2UuYWxsKFsKKyAgICAgIC8vIFRoaXMgd2lsbCBiZSBibG9ja2VkLgorICAgICAgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QoJ2EnLCBsb2dfZ3JhbnQoMSkpLAorICAgICAgLy8gQnV0IHRoaXMg
c2hvdWxkIGJlIGdyYW50YWJsZSBpbW1lZGlhdGVseS4KKyAgICAgIG5hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0KCdiJywgbG9nX2dyYW50KDIpKQorICAgIF0pOworICB9KTsKKworICBhd2FpdCBpbm5l
cl9wcm9taXNlOworICBhc3NlcnRfYXJyYXlfZXF1YWxzKGdyYW50ZWQsIFsyLCAxXSk7Cit9LCAn
UmVxdWVzdHMgZm9yIGRpc3RpbmN0IHJlc291cmNlcyBjYW4gYmUgZ3JhbnRlZCcpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjJjMjdiYjkwOGNjMzhjODA5MzRkN2I4NzA3YTMxZWZk
N2VlZWM3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5h
bnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKK0ZBSUwgTG9j
ayByZXF1ZXN0cyBhcmUgZ3JhbnRlZCBpbiBvcmRlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBS
ZXF1ZXN0cyBmb3IgZGlzdGluY3QgcmVzb3VyY2VzIGNhbiBiZSBncmFudGVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vy
dmljZXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNl
d29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4
MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5h
bnkuc2VydmljZXdvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJl
cXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRl
ZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhj
bHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVz
aXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5m
MmMyN2JiOTA4Y2MzOGM4MDkzNGQ3Yjg3MDdhMzFlZmQ3ZWVlYzc2Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNCBAQAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmVxdWVzdHMgZm9yIGRpc3RpbmN0IHJlc291cmNlcyBj
YW4gYmUgZ3JhbnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2
ZS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZl
Lmh0dHBzLmFueS53b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZj
NjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0
aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBp
cyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1w
bGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2Rl
LW1peGVkLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRp
dmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OGM2Y2JmZjQ3NjdmMDc3MzMz
NmQzYmQyN2IzM2FjYTBlNjE1ZDcxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRp
dmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKKworRkFJTCBMb2NrIHJl
cXVlc3RzIGFyZSBncmFudGVkIGluIG9yZGVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFJlbGVh
c2luZyBleGNsdXNpdmUgbG9jayBncmFudHMgbXVsdGlwbGUgc2hhcmVkIGxvY2tzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIEFuIGV4Y2x1c2l2ZSBsb2NrIGJldHdlZW4gc2hhcmVkIGxvY2tzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFu
eS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4
MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21v
ZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhp
cyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4g
dGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZl
Lmh0dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZjM0NTg4NjkzZjk0ZTRjN2Q0MmI1OTQzOTMxOTc4
YTYwYmU5ZThhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55
LmpzCkBAIC0wLDAgKzEsOTggQEAKKy8vIE1FVEE6IHRpdGxlPVdlYiBMb2NrcyBBUEk6IE1peGVk
IE1vZGVzCisvLyBNRVRBOiBzY3JpcHQ9cmVzb3VyY2VzL2hlbHBlcnMuanMKKy8vIE1FVEE6IGds
b2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisK
Kyd1c2Ugc3RyaWN0JzsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBsZXQgdW5ibG9j
azsKKyAgY29uc3QgYmxvY2tlZCA9IG5ldyBQcm9taXNlKHIgPT4geyB1bmJsb2NrID0gcjsgfSk7
CisKKyAgY29uc3QgZ3JhbnRlZCA9IFtdOworCisgIC8vIFRoZXNlIHNob3VsZCBiZSBncmFudGVk
IGltbWVkaWF0ZWx5LCBhbmQgaGVsZCB1bnRpbCB1bmJsb2NrZWQuCisgIG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KCdhJywge21vZGU6ICdzaGFyZWQnfSwgYXN5bmMgbG9jayA9PiB7CisgICAgZ3Jh
bnRlZC5wdXNoKCdhLXNoYXJlZC0xJyk7IGF3YWl0IGJsb2NrZWQ7IH0pOworICBuYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCgnYScsIHttb2RlOiAnc2hhcmVkJ30sIGFzeW5jIGxvY2sgPT4geworICAg
IGdyYW50ZWQucHVzaCgnYS1zaGFyZWQtMicpOyBhd2FpdCBibG9ja2VkOyB9KTsKKyAgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QoJ2EnLCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrID0+IHsK
KyAgICBncmFudGVkLnB1c2goJ2Etc2hhcmVkLTMnKTsgYXdhaXQgYmxvY2tlZDsgfSk7CisKKyAg
Ly8gVGhpcyBzaG91bGQgYmUgYmxvY2tlZC4KKyAgbGV0IGV4Y2x1c2l2ZV9sb2NrOworICBjb25z
dCBleGNsdXNpdmVfcmVxdWVzdCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywgYXN5bmMg
bG9jayA9PiB7CisgICAgZ3JhbnRlZC5wdXNoKCdhLWV4Y2x1c2l2ZScpOworICAgIGV4Y2x1c2l2
ZV9sb2NrID0gbG9jazsKKyAgfSk7CisKKyAgLy8gVGhpcyBzaG91bGQgYmUgZ3JhbnRlZCBpbW1l
ZGlhdGVseSAoZGlmZmVyZW50IG5hbWUpLgorICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCgnYicsIHttb2RlOiAnZXhjbHVzaXZlJ30sIGxvY2sgPT4geworICAgIGdyYW50ZWQucHVzaCgn
Yi1leGNsdXNpdmUnKTsgfSk7CisKKyAgYXNzZXJ0X2FycmF5X2VxdWFscygKKyAgICBncmFudGVk
LCBbJ2Etc2hhcmVkLTEnLCAnYS1zaGFyZWQtMicsICdhLXNoYXJlZC0zJywgJ2ItZXhjbHVzaXZl
J10pOworCisgIC8vIFJlbGVhc2UgdGhlIHNoYXJlZCBsb2NrcyBncmFudGVkIGFib3ZlLgorICB1
bmJsb2NrKCk7CisKKyAgLy8gTm93IHRoZSBibG9ja2VkIHJlcXVlc3QgY2FuIGJlIGdyYW50ZWQu
CisgIGF3YWl0IGV4Y2x1c2l2ZV9yZXF1ZXN0OworICBhc3NlcnRfZXF1YWxzKGV4Y2x1c2l2ZV9s
b2NrLm1vZGUsICdleGNsdXNpdmUnKTsKKworICBhc3NlcnRfYXJyYXlfZXF1YWxzKAorICAgIGdy
YW50ZWQsCisgICAgWydhLXNoYXJlZC0xJywgJ2Etc2hhcmVkLTInLCAnYS1zaGFyZWQtMycsICdi
LWV4Y2x1c2l2ZScsICdhLWV4Y2x1c2l2ZSddKTsKKworfSwgJ0xvY2sgcmVxdWVzdHMgYXJlIGdy
YW50ZWQgaW4gb3JkZXInKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCBy
ZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGxldCBbcHJvbWlzZSwgcmVzb2x2ZV0gPSBtYWtlUHJv
bWlzZUFuZFJlc29sdmVGdW5jKCk7CisKKyAgY29uc3QgZXhjbHVzaXZlID0gbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QocmVzLCAoKSA9PiBwcm9taXNlKTsKKyAgZm9yIChsZXQgaSA9IDA7IGkgPCA1
OyBpKyspIHsKKyAgICByZXF1ZXN0TG9ja0FuZEhvbGQodCwgcmVzLCB7IG1vZGU6ICJzaGFyZWQi
IH0pOworICB9CisKKyAgbGV0IGFuc3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgp
OworICBhc3NlcnRfZXF1YWxzKGFuc3dlci5oZWxkLmxlbmd0aCwgMSwgIkFuIGV4Y2x1c2l2ZSBs
b2NrIGlzIGhlbGQiKTsKKyAgYXNzZXJ0X2VxdWFscyhhbnN3ZXIucGVuZGluZy5sZW5ndGgsIDUs
ICJSZXF1ZXN0cyBmb3Igc2hhcmVkIGxvY2tzIGFyZSBwZW5kaW5nIik7CisgIHJlc29sdmUoKTsK
KyAgYXdhaXQgZXhjbHVzaXZlOworCisgIGFuc3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5x
dWVyeSgpOworICBhc3NlcnRfZXF1YWxzKGFuc3dlci5oZWxkLmxlbmd0aCwgNSwgIlNoYXJlZCBs
b2NrcyBhcmUgaGVsZCIpOworICBhc3NlcnRfdHJ1ZShhbnN3ZXIuaGVsZC5ldmVyeShsID0+IGwu
bW9kZSA9PT0gInNoYXJlZCIpLCAiQWxsIGhlbGQgbG9ja3MgYXJlIHNoYXJlZCBvbmVzIik7Cit9
LCAnUmVsZWFzaW5nIGV4Y2x1c2l2ZSBsb2NrIGdyYW50cyBtdWx0aXBsZSBzaGFyZWQgbG9ja3Mn
KTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1l
KHQpOworCisgIGxldCBbc2hhcmVkUHJvbWlzZSwgc2hhcmVkUmVzb2x2ZV0gPSBtYWtlUHJvbWlz
ZUFuZFJlc29sdmVGdW5jKCk7CisgIGxldCBbZXhjbHVzaXZlUHJvbWlzZSwgZXhjbHVzaXZlUmVz
b2x2ZV0gPSBtYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jKCk7CisKKyAgY29uc3Qgc2hhcmVkUmVs
ZWFzZWRQcm9taXNlID0gUHJvbWlzZS5hbGwobmV3IEFycmF5KDUpLmZpbGwoMCkubWFwKAorICAg
ICgpID0+IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgeyBtb2RlOiAic2hhcmVkIiB9LCAo
KSA9PiBzaGFyZWRQcm9taXNlKSkKKyAgKTsKKyAgY29uc3QgZXhjbHVzaXZlUmVsZWFzZWRQcm9t
aXNlID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCAoKSA9PiBleGNsdXNpdmVQcm9taXNl
KTsKKyAgZm9yIChsZXQgaSA9IDA7IGkgPCA1OyBpKyspIHsKKyAgICByZXF1ZXN0TG9ja0FuZEhv
bGQodCwgcmVzLCB7IG1vZGU6ICJzaGFyZWQiIH0pOworICB9CisKKyAgbGV0IGFuc3dlciA9IGF3
YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3NlcnRfZXF1YWxzKGFuc3dlci5oZWxk
Lmxlbmd0aCwgNSwgIlNoYXJlZCBsb2NrcyBhcmUgaGVsZCIpOworICBhc3NlcnRfdHJ1ZShhbnN3
ZXIuaGVsZC5ldmVyeShsID0+IGwubW9kZSA9PT0gInNoYXJlZCIpLCAiQWxsIGhlbGQgbG9ja3Mg
YXJlIHNoYXJlZCBvbmVzIik7CisgIHNoYXJlZFJlc29sdmUoKTsKKyAgYXdhaXQgc2hhcmVkUmVs
ZWFzZWRQcm9taXNlOworCisgIGFuc3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgp
OworICBhc3NlcnRfZXF1YWxzKGFuc3dlci5oZWxkLmxlbmd0aCwgMSwgIkFuIGV4Y2x1c2l2ZSBs
b2NrIGlzIGhlbGQiKTsKKyAgYXNzZXJ0X2VxdWFscyhhbnN3ZXIuaGVsZFswXS5tb2RlLCAiZXhj
bHVzaXZlIik7CisgIGV4Y2x1c2l2ZVJlc29sdmUoKTsKKyAgYXdhaXQgZXhjbHVzaXZlUmVsZWFz
ZWRQcm9taXNlOworCisgIGFuc3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOwor
ICBhc3NlcnRfZXF1YWxzKGFuc3dlci5oZWxkLmxlbmd0aCwgNSwgIlRoZSBuZXh0IHNoYXJlZCBs
b2NrcyBhcmUgaGVsZCIpOworICBhc3NlcnRfdHJ1ZShhbnN3ZXIuaGVsZC5ldmVyeShsID0+IGwu
bW9kZSA9PT0gInNoYXJlZCIpLCAiQWxsIGhlbGQgbG9ja3MgYXJlIHNoYXJlZCBvbmVzIik7Cit9
LCAnQW4gZXhjbHVzaXZlIGxvY2sgYmV0d2VlbiBzaGFyZWQgbG9ja3MnKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21v
ZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21v
ZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44OGM2Y2JmZjQ3NjdmMDc3MzMzNmQzYmQyN2IzM2FjYTBlNjE1ZDcxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdy
YW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmVsZWFzaW5nIGV4Y2x1c2l2
ZSBsb2NrIGdyYW50cyBtdWx0aXBsZSBzaGFyZWQgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgQW4gZXhjbHVzaXZlIGxvY2sgYmV0d2VlbiBzaGFyZWQgbG9ja3MgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qn
KSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3Jr
ZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2Vy
Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktp
dCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0
cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLW1peGVkLnRlbnRhdGl2ZS5odHRwcy5hbnku
d29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OGM2Y2JmZjQ3NjdmMDc3MzMzNmQzYmQy
N2IzM2FjYTBlNjE1ZDcxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0
cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK0ZBSUwgTG9jayBy
ZXF1ZXN0cyBhcmUgZ3JhbnRlZCBpbiBvcmRlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZWxl
YXNpbmcgZXhjbHVzaXZlIGxvY2sgZ3JhbnRzIG11bHRpcGxlIHNoYXJlZCBsb2NrcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBBbiBleGNsdXNpdmUgbG9jayBiZXR3ZWVuIHNoYXJlZCBsb2NrcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLW1peGVkLnRlbnRhdGl2ZS5odHRwcy5h
bnkud29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9tb2RlLW1peGVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApA
QCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3Qg
aW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmQ5MzA5NDAxYjlkMTQwMDJjOTE2NGY5NjAyYTE0MjlhNTIyMDliMmQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDQgQEAKKworRkFJTCBMb2NrIHJlcXVlc3RzIGFyZSBncmFudGVkIGluIG9y
ZGVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFNoYXJlZCBsb2NrcyBhcmUgbm90IGV4Y2x1c2l2
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0
cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8
IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUg
dG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQu
dGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYzRhNjAxMmZhYjU2NzViY2NlYWZk
ZDZmN2QxN2I2YmM1YTY3ZTY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZl
Lmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDM4IEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3Mg
QVBJOiBTaGFyZWQgTW9kZQorLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyxkZWRpY2F0ZWR3b3JrZXIs
c2hhcmVkd29ya2VyLHNlcnZpY2V3b3JrZXIKKworJ3VzZSBzdHJpY3QnOworCitwcm9taXNlX3Rl
c3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGdyYW50ZWQgPSBbXTsKKyAgZnVuY3Rpb24gbG9nX2dy
YW50KG4pIHsgcmV0dXJuICgpID0+IHsgZ3JhbnRlZC5wdXNoKG4pOyB9OyB9CisKKyAgYXdhaXQg
UHJvbWlzZS5hbGwoWworICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywge21vZGU6ICdz
aGFyZWQnfSwgbG9nX2dyYW50KDEpKSwKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnYics
IHttb2RlOiAnc2hhcmVkJ30sIGxvZ19ncmFudCgyKSksCisgICAgbmF2aWdhdG9yLmxvY2tzLnJl
cXVlc3QoJ2MnLCB7bW9kZTogJ3NoYXJlZCd9LCBsb2dfZ3JhbnQoMykpLAorICAgIG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KCdhJywge21vZGU6ICdzaGFyZWQnfSwgbG9nX2dyYW50KDQpKSwKKyAg
ICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnYicsIHttb2RlOiAnc2hhcmVkJ30sIGxvZ19ncmFu
dCg1KSksCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2MnLCB7bW9kZTogJ3NoYXJlZCd9
LCBsb2dfZ3JhbnQoNikpLAorICBdKTsKKworICBhc3NlcnRfYXJyYXlfZXF1YWxzKGdyYW50ZWQs
IFsxLCAyLCAzLCA0LCA1LCA2XSk7Cit9LCAnTG9jayByZXF1ZXN0cyBhcmUgZ3JhbnRlZCBpbiBv
cmRlcicpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGxldCBhX2FjcXVpcmVkID0g
ZmFsc2UsIGFfYWNxdWlyZWRfYWdhaW4gPSBmYWxzZTsKKworICBhd2FpdCBuYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCgnYScsIHttb2RlOiAnc2hhcmVkJ30sIGFzeW5jIGxvY2sgPT4geworICAgIGFf
YWNxdWlyZWQgPSB0cnVlOworCisgICAgLy8gU2luY2UgbG9jayBpcyBoZWxkLCB0aGlzIHJlcXVl
c3Qgd291bGQgYmUgYmxvY2tlZCBpZiB0aGUKKyAgICAvLyBsb2NrIHdhcyBub3QgJ3NoYXJlZCcs
IGNhdXNpbmcgdGhpcyB0ZXN0IHRvIHRpbWUgb3V0LgorCisgICAgYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QoJ2EnLCB7bW9kZTogJ3NoYXJlZCd9LCBsb2NrID0+IHsKKyAgICAgIGFfYWNx
dWlyZWRfYWdhaW4gPSB0cnVlOworICAgIH0pOworICB9KTsKKworICBhc3NlcnRfdHJ1ZShhX2Fj
cXVpcmVkLCAnZmlyc3QgbG9jayBhY3F1aXJlZCcpOworICBhc3NlcnRfdHJ1ZShhX2FjcXVpcmVk
X2FnYWluLCAnc2Vjb25kIGxvY2sgYWNxdWlyZWQnKTsKK30sICdTaGFyZWQgbG9ja3MgYXJlIG5v
dCBleGNsdXNpdmUnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5MzA5NDAxYjlkMTQwMDJj
OTE2NGY5NjAyYTE0MjlhNTIyMDliMmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50
YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBA
QAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QnKSIKK0ZBSUwgU2hhcmVkIGxvY2tzIGFyZSBub3QgZXhjbHVzaXZlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdv
cmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdv
cmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBX
ZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2
ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRw
cy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kOTMwOTQwMWI5ZDE0MDAyYzkx
NjRmOTYwMmExNDI5YTUyMjA5YjJkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0
aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlM
IExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgU2hhcmVkIGxvY2tzIGFyZSBub3QgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNo
YXJlZC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1
MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNo
YXJlZC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0g
VGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBy
dW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL25vbi1zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25vbi1z
ZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNmVi
Mzk0NTFhOGRjOTY0N2Q2NmUwNGIxODNlODkxOTgxMzMxZmEzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9u
LXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBA
QAorCitGQUlMIEFQSSBwcmVzZW5jZSBpbiBub24tc2VjdXJlIGNvbnRleHRzIGFzc2VydF9mYWxz
ZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0
LnRlbnRhdGl2ZS5hbnkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL25vbi1zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55Lmh0bWwKQEAgLTAs
MCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJh
c3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnkuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9u
b24tc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NDU1MzU5MWYz
NzI0OTJhMWQxMDg1ZDZlZGYyMzcxNTg3MmMwZDgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3Vy
ZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnkuanMKQEAgLTAsMCArMSwxNCBAQAorLy8gTUVUQTogdGl0
bGU9V2ViIExvY2tzIEFQSTogQVBJIG5vdCBhdmFpbGFibGUgaW4gbm9uLXNlY3VyZSBjb250ZXh0
CisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3b3JrZXIKKwor
J3VzZSBzdHJpY3QnOworCit0ZXN0KHQgPT4geworICBhc3NlcnRfZmFsc2Uoc2VsZi5pc1NlY3Vy
ZUNvbnRleHQpOworICBhc3NlcnRfZmFsc2UoJ2xvY2tzJyBpbiBuYXZpZ2F0b3IsCisgICAgICAg
ICAgICAgICAnbmF2aWdhdG9yLmxvY2tzIGlzIG9ubHkgcHJlc2VudCBpbiBzZWN1cmUgY29udGV4
dHMnKTsKKyAgYXNzZXJ0X2ZhbHNlKCdMb2NrTWFuYWdlcicgaW4gc2VsZiwKKyAgICAgICAgICAg
ICAgICdMb2NrTWFuYWdlciBpcyBvbmx5IHByZXNlbnQgaW4gc2VjdXJlIGNvbnRleHRzJyk7Cisg
IGFzc2VydF9mYWxzZSgnTG9jaycgaW4gc2VsZiwKKyAgICAgICAgICAgICAgICdMb2NrIGludGVy
ZmFjZSBpcyBvbmx5IHByZXNlbnQgaW4gc2VjdXJlIGNvbnRleHRzJyk7Cit9LCAnQVBJIHByZXNl
bmNlIGluIG5vbi1zZWN1cmUgY29udGV4dHMnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1cmUtY29udGV4
dC50ZW50YXRpdmUuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9ub24tc2VjdXJlLWNvbnRleHQudGVu
dGF0aXZlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2ZWIzOTQ1MWE4ZGM5
NjQ3ZDY2ZTA0YjE4M2U4OTE5ODEzMzFmYTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9ub24tc2VjdXJlLWNv
bnRleHQudGVudGF0aXZlLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAor
CitGQUlMIEFQSSBwcmVzZW5jZSBpbiBub24tc2VjdXJlIGNvbnRleHRzIGFzc2VydF9mYWxzZTog
ZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRl
bnRhdGl2ZS5hbnkud29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9ub24tc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmFueS53
b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgw
YjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnku
d29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9y
IFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdpbi50ZW50
YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZlOWQzMTY3ODYzYTdlZWY5ZTc0ZDBlZmM1MDdkYWEzMjk5
NWI0MTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9vcGFxdWUtb3JpZ2luLnRlbnRhdGl2ZS5odHRwcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw2IEBACisKK0ZBSUwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
KSBpbiBub24tc2FuZGJveGVkIGlmcmFtZSBzaG91bGQgbm90IHRocm93IGFzc2VydF9lcXVhbHM6
IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCkgc2hvdWxkIG5vdCB0aHJvdyBleHBlY3RlZCAibm8g
ZXhjZXB0aW9uIiBidXQgZ290ICJUeXBlRXJyb3IiCitGQUlMIG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KCkgaW4gc2FuZGJveGVkIGlmcmFtZSBzaG91bGQgdGhyb3cgU2VjdXJpdHlFcnJvciBhc3Nl
cnRfZXF1YWxzOiBFeGNlcHRpb24gc2hvdWxkIGJlIFNlY3VyaXR5RXJyb3IgZXhwZWN0ZWQgIlNl
Y3VyaXR5RXJyb3IiIGJ1dCBnb3QgIlR5cGVFcnJvciIKK0ZBSUwgbmF2aWdhdG9yLmxvY2tzLnF1
ZXJ5KCkgaW4gbm9uLXNhbmRib3hlZCBpZnJhbWUgc2hvdWxkIG5vdCB0aHJvdyBhc3NlcnRfZXF1
YWxzOiBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgpIHNob3VsZCBub3QgdGhyb3cgZXhwZWN0ZWQg
Im5vIGV4Y2VwdGlvbiIgYnV0IGdvdCAiVHlwZUVycm9yIgorRkFJTCBuYXZpZ2F0b3IubG9ja3Mu
cXVlcnkoKSBpbiBzYW5kYm94ZWQgaWZyYW1lIHNob3VsZCB0aHJvdyBTZWN1cml0eUVycm9yIGFz
c2VydF9lcXVhbHM6IEV4Y2VwdGlvbiBzaG91bGQgYmUgU2VjdXJpdHlFcnJvciBleHBlY3RlZCAi
U2VjdXJpdHlFcnJvciIgYnV0IGdvdCAiVHlwZUVycm9yIgorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9vcGFxdWUtb3Jp
Z2luLnRlbnRhdGl2ZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xY2I3YTJkMmU2MDA3OTdiOGUzY2M4ZTVkMTdhODM3NGM5YmRlNGVmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMuaHRtbApAQCAtMCww
ICsxLDg3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+
V2ViIExvY2tzIEFQSTogT3BhcXVlIG9yaWdpbnM8L3RpdGxlPgorPGxpbmsgcmVsPWhlbHAgaHJl
Zj0iaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby93ZWItbG9ja3MvIj4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisKK2Z1bmN0aW9uIGxv
YWRfaWZyYW1lKHNyYywgc2FuZGJveCkgeworICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9
PiB7CisgICAgY29uc3QgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7
CisgICAgaWZyYW1lLm9ubG9hZCA9ICgpID0+IHsgcmVzb2x2ZShpZnJhbWUpOyB9OworICAgIGlm
IChzYW5kYm94KQorICAgICAgaWZyYW1lLnNhbmRib3ggPSBzYW5kYm94OworICAgIGlmcmFtZS5z
cmNkb2MgPSBzcmM7CisgICAgaWZyYW1lLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CisgICAgZG9j
dW1lbnQuZG9jdW1lbnRFbGVtZW50LmFwcGVuZENoaWxkKGlmcmFtZSk7CisgIH0pOworfQorCitm
dW5jdGlvbiB3YWl0X2Zvcl9tZXNzYWdlKGlmcmFtZSkgeworICByZXR1cm4gbmV3IFByb21pc2Uo
cmVzb2x2ZSA9PiB7CisgICAgc2VsZi5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZnVuY3Rp
b24gbGlzdGVuZXIoZSkgeworICAgICAgaWYgKGUuc291cmNlID09PSBpZnJhbWUuY29udGVudFdp
bmRvdykgeworICAgICAgICByZXNvbHZlKGUuZGF0YSk7CisgICAgICAgIHNlbGYucmVtb3ZlRXZl
bnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyKTsKKyAgICAgIH0KKyAgICB9KTsKKyAgfSk7
Cit9CisKK2NvbnN0IHNjcmlwdCA9IGAKKzxzY3JpcHQ+CisgICJ1c2Ugc3RyaWN0IjsKKyAgd2lu
ZG93Lm9ubWVzc2FnZSA9IGFzeW5jIChldikgPT4geworICAgIHRyeSB7CisgICAgICBzd2l0Y2gg
KGV2LmRhdGEpIHsKKyAgICAgICAgY2FzZSAicmVxdWVzdCI6CisgICAgICAgICAgYXdhaXQgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ25hbWUnLCBsb2NrID0+IHt9KTsKKyAgICAgICAgICBicmVh
azsKKyAgICAgICAgY2FzZSAicXVlcnkiOgorICAgICAgICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nr
cy5xdWVyeSgpOworICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAg
IHdpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2Uoe3Jlc3VsdDogInVuZXhwZWN0ZWQgbWVzc2FnZSJ9
LCAiKiIpOworICAgICAgICAgIHJldHVybjsKKyAgICAgIH0KKyAgICAgIHdpbmRvdy5wYXJlbnQu
cG9zdE1lc3NhZ2Uoe3Jlc3VsdDogIm5vIGV4Y2VwdGlvbiJ9LCAiKiIpOworICAgIH0gY2F0Y2gg
KGV4KSB7CisgICAgICB3aW5kb3cucGFyZW50LnBvc3RNZXNzYWdlKHtyZXN1bHQ6IGV4Lm5hbWV9
LCAiKiIpOworICAgIH07CisgIH07Cis8XC9zY3JpcHQ+CitgOworCitwcm9taXNlX3Rlc3QoYXN5
bmMgdCA9PiB7CisgIGNvbnN0IGlmcmFtZSA9IGF3YWl0IGxvYWRfaWZyYW1lKHNjcmlwdCk7Cisg
IGlmcmFtZS5jb250ZW50V2luZG93LnBvc3RNZXNzYWdlKCJyZXF1ZXN0IiwgJyonKTsKKyAgY29u
c3QgbWVzc2FnZSA9IGF3YWl0IHdhaXRfZm9yX21lc3NhZ2UoaWZyYW1lKTsKKyAgYXNzZXJ0X2Vx
dWFscyhtZXNzYWdlLnJlc3VsdCwgJ25vIGV4Y2VwdGlvbicsCisgICAgICAgICAgICAgICAgJ25h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCkgc2hvdWxkIG5vdCB0aHJvdycpOworfSwgJ25hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KCkgaW4gbm9uLXNhbmRib3hlZCBpZnJhbWUgc2hvdWxkIG5vdCB0aHJv
dycpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGlmcmFtZSA9IGF3YWl0
IGxvYWRfaWZyYW1lKHNjcmlwdCwgJ2FsbG93LXNjcmlwdHMnKTsKKyAgaWZyYW1lLmNvbnRlbnRX
aW5kb3cucG9zdE1lc3NhZ2UoInJlcXVlc3QiLCAnKicpOworICBjb25zdCBtZXNzYWdlID0gYXdh
aXQgd2FpdF9mb3JfbWVzc2FnZShpZnJhbWUpOworICBhc3NlcnRfZXF1YWxzKG1lc3NhZ2UucmVz
dWx0LCAnU2VjdXJpdHlFcnJvcicsCisgICAgICAgICAgICAgICAgJ0V4Y2VwdGlvbiBzaG91bGQg
YmUgU2VjdXJpdHlFcnJvcicpOworfSwgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCkgaW4gc2Fu
ZGJveGVkIGlmcmFtZSBzaG91bGQgdGhyb3cgU2VjdXJpdHlFcnJvcicpOworCitwcm9taXNlX3Rl
c3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGlmcmFtZSA9IGF3YWl0IGxvYWRfaWZyYW1lKHNjcmlw
dCk7CisgIGlmcmFtZS5jb250ZW50V2luZG93LnBvc3RNZXNzYWdlKCJxdWVyeSIsICcqJyk7Cisg
IGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCB3YWl0X2Zvcl9tZXNzYWdlKGlmcmFtZSk7CisgIGFzc2Vy
dF9lcXVhbHMobWVzc2FnZS5yZXN1bHQsICdubyBleGNlcHRpb24nLAorICAgICAgICAgICAgICAg
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgpIHNob3VsZCBub3QgdGhyb3cnKTsKK30sICduYXZp
Z2F0b3IubG9ja3MucXVlcnkoKSBpbiBub24tc2FuZGJveGVkIGlmcmFtZSBzaG91bGQgbm90IHRo
cm93Jyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgaWZyYW1lID0gYXdh
aXQgbG9hZF9pZnJhbWUoc2NyaXB0LCAnYWxsb3ctc2NyaXB0cycpOworICBpZnJhbWUuY29udGVu
dFdpbmRvdy5wb3N0TWVzc2FnZSgicXVlcnkiLCAnKicpOworICBjb25zdCBtZXNzYWdlID0gYXdh
aXQgd2FpdF9mb3JfbWVzc2FnZShpZnJhbWUpOworICBhc3NlcnRfZXF1YWxzKG1lc3NhZ2UucmVz
dWx0LCAnU2VjdXJpdHlFcnJvcicsCisgICAgICAgICAgICAgICAgJ0V4Y2VwdGlvbiBzaG91bGQg
YmUgU2VjdXJpdHlFcnJvcicpOworfSwgJ25hdmlnYXRvci5sb2Nrcy5xdWVyeSgpIGluIHNhbmRi
b3hlZCBpZnJhbWUgc2hvdWxkIHRocm93IFNlY3VyaXR5RXJyb3InKTsKKzwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1l
bXB0eS50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MzYyNzFi
NDI5NmJjM2Y4ZWZiZTVlMTA3ZWNhYmY0YjdiMDdjNDUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnkt
ZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisK
K0ZBSUwgcXVlcnkoKSByZXR1cm5zIGRpY3Rpb25hcnkgd2l0aCBlbXB0eSBhcnJheXMgd2hlbiBu
byBsb2NrcyBhcmUgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICduYXZpZ2F0b3IubG9ja3MucXVlcnknKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHku
dGVudGF0aXZlLmh0dHBzLmFueS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKQEAg
LTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGlu
ZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODhmZmRiN2Y4
MTBkNmQzZTY5OGE1MDdkYTk3MjIwNjg0YWQzZWNmZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVt
cHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKQEAgLTAsMCArMSwxOCBAQAorLy8gTUVUQTogdGl0
bGU9V2ViIExvY2tzIEFQSTogbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5IG1ldGhvZCAtIG5vIGxvY2tz
IGhlbGQKKy8vIE1FVEE6IHNjcmlwdD1yZXNvdXJjZXMvaGVscGVycy5qcworLy8gTUVUQTogZ2xv
YmFsPXdpbmRvdyxkZWRpY2F0ZWR3b3JrZXIsc2hhcmVkd29ya2VyLHNlcnZpY2V3b3JrZXIKKwor
J3VzZSBzdHJpY3QnOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHN0YXRl
ID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisKKyAgYXNzZXJ0X293bl9wcm9wZXJ0
eShzdGF0ZSwgJ3BlbmRpbmcnLCAnU3RhdGUgaGFzIGBwZW5kaW5nYCBwcm9wZXJ0eScpOworICBh
c3NlcnRfdHJ1ZShBcnJheS5pc0FycmF5KHN0YXRlLnBlbmRpbmcpLAorICAgICAgICAgICAgICAn
U3RhdGUgYHBlbmRpbmdgIHByb3BlcnR5IGlzIGFuIGFycmF5Jyk7CisgIGFzc2VydF9hcnJheV9l
cXVhbHMoc3RhdGUucGVuZGluZywgW10sICdQZW5kaW5nIGFycmF5IGlzIGVtcHR5Jyk7CisKKyAg
YXNzZXJ0X293bl9wcm9wZXJ0eShzdGF0ZSwgJ2hlbGQnLCAnU3RhdGUgaGFzIGBoZWxkYCBwcm9w
ZXJ0eScpOworICBhc3NlcnRfdHJ1ZShBcnJheS5pc0FycmF5KHN0YXRlLmhlbGQpLCAnU3RhdGUg
YGhlbGRgIHByb3BlcnR5IGlzIGFuIGFycmF5Jyk7CisgIGFzc2VydF9hcnJheV9lcXVhbHMoc3Rh
dGUuaGVsZCwgW10sICdIZWxkIGFycmF5IGlzIGVtcHR5Jyk7Cit9LCAncXVlcnkoKSByZXR1cm5z
IGRpY3Rpb25hcnkgd2l0aCBlbXB0eSBhcnJheXMgd2hlbiBubyBsb2NrcyBhcmUgaGVsZCcpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzM2MjcxYjQyOTZiYzNmOGVmYmU1ZTEwN2VjYWJmNGI3
YjA3YzQ1MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgcXVlcnko
KSByZXR1cm5zIGRpY3Rpb25hcnkgd2l0aCBlbXB0eSBhcnJheXMgd2hlbiBubyBsb2NrcyBhcmUg
aGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0b3IubG9ja3MucXVlcnknKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYw
YTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUg
aXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVt
cGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVl
cnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1w
dHkudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjcz
NjI3MWI0Mjk2YmMzZjhlZmJlNWUxMDdlY2FiZjRiN2IwN2M0NTEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9x
dWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwzIEBACisKK0ZBSUwgcXVlcnkoKSByZXR1cm5zIGRpY3Rpb25hcnkgd2l0aCBlbXB0eSBh
cnJheXMgd2hlbiBubyBsb2NrcyBhcmUgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucXVlcnknKSIKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRl
bnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNi
M2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRl
bnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZp
bGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUg
dGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cXVlcnktb3JkZXJpbmcudGVudGF0aXZlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LW9yZGVyaW5n
LnRlbnRhdGl2ZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDg5MWUyOWMyMDcyZTEw
NzJhNThhOWVhOTcxYWRkYTQxNTI5ZDZiNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LW9yZGVyaW5n
LnRlbnRhdGl2ZS5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgUmVx
dWVzdHMgYXBwZWFyIGluIHN0YXRlIGluIG9yZGVyIG1hZGUuIGFzc2VydF9pbXBsZW1lbnRzOiB1
bmRlZmluZWQKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktb3JkZXJpbmcudGVudGF0aXZlLmh0dHBzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9x
dWVyeS1vcmRlcmluZy50ZW50YXRpdmUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNzJhMWRiODdi
N2QyNTdlOGUzYTI3OGM0NmJjY2Y0MjZlYmY0YTJlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktb3Jk
ZXJpbmcudGVudGF0aXZlLmh0dHBzLmh0bWwKQEAgLTAsMCArMSwxMzEgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5XZWIgTG9ja3MgQVBJOiBuYXZpZ2F0
b3IubG9ja3MucXVlcnkgb3JkZXJpbmc8L3RpdGxlPgorPGxpbmsgcmVsPWhlbHAgaHJlZj0iaHR0
cHM6Ly93aWNnLmdpdGh1Yi5pby93ZWItbG9ja3MvIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVy
cy5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+aWZyYW1lIHsgZGlzcGxheTogbm9uZTsgfTwvc3R5bGU+
Cis8c2NyaXB0PgorJ3VzZSBzdHJpY3QnOworCisvLyBHcmFiIGEgbG9jayBhbmQgaG9sZCB1bnRp
bCBhIHJlbGVhc2UgZnVuY3Rpb24gaXMgY2FsbGVkLiBSZXNvbHZlcworLy8gdG8gYSByZWxlYXNl
IGZ1bmN0aW9uLgorZnVuY3Rpb24gZ2V0TG9ja0FuZEhvbGRVbnRpbFJlbGVhc2VkKG5hbWUsIG9w
dGlvbnMpIHsKKyAgbGV0IHJlbGVhc2U7CisgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShy
ZXNvbHZlID0+IHsgcmVsZWFzZSA9IHJlc29sdmU7IH0pOworICByZXR1cm4gbmV3IFByb21pc2Uo
cmVzb2x2ZSA9PiB7CisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QobmFtZSwgb3B0aW9ucyB8
fCB7fSwgbG9jayA9PiB7CisgICAgICByZXNvbHZlKHJlbGVhc2UpOworICAgICAgcmV0dXJuIHBy
b21pc2U7CisgICAgfSkuY2F0Y2goXyA9PiB7fSk7CisgIH0pOworfQorCisvLyBSZXR1cm5zIGEg
cHJvbWlzZSByZXNvbHZlZCBieSB0aGUgbmV4dCBtZXNzYWdlIGV2ZW50LgorZnVuY3Rpb24gbmV4
dE1lc3NhZ2UoKSB7CisgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGV2ZW50ID0+IHsKKyAgICAgIHJlc29sdmUo
ZXZlbnQuZGF0YSk7CisgICAgfSwge29uY2U6IHRydWV9KTsKKyAgfSk7Cit9CisKKy8vIFRlc3Rz
IHRoZSBvcmRlcmluZyBjb25zdHJhaW50cyBvbiB0aGUgcmVxdWVzdGVkIGxvY2sgc3RhdGUgcmV0
dXJuZWQgYnkKKy8vIG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpLiBUaHJlZSBzZXBhcmF0ZSBpZnJh
bWVzIGFyZSBpbnN0YW50aWF0ZWQgdG8gbWFrZQorLy8gbG9jayByZXF1ZXN0cyBvbiB0aGUgc2Ft
ZSByZXNvdXJjZSwgZmlyc3QgaW4gb25lIG9yZGVyIGFuZCB0aGVuIGluIGFub3RoZXIsCisvLyBk
aWZmZXJlbnQgb3JkZXIuIEZvciBlYWNoIHNldCBvZiByZXF1ZXN0cywgaXQgaXMgdmVyaWZpZWQg
dGhhdCB0aGUgcmVxdWVzdHMKKy8vIGFwcGVhciBpbiB0aGUgcmVzdWx0IG9mIG5hdmlnYXRvci5s
b2Nrcy5xdWVyeSgpIGluIHRoZSBzYW1lIG9yZGVyIGluIHdoaWNoCisvLyB0aGV5IHdlcmUgbWFk
ZS4KKy8vCisvLyBJdCBpcyBuZWNlc3NhcnkgdG8gdXNlIHNlcGFyYXRlIGlmcmFtZXMgaGVyZSBz
byB0aGF0IHRoZSBsb2NrIHJlcXVlc3RzIGhhdmUKKy8vIGRpc3Rpbmd1aXNoYWJsZSBjbGllbnRf
aWRzIChvdGhlcndpc2UgaXQgd291bGQgbm90IGJlIHBvc3NpYmxlIHRvCisvLyBkaXN0aW5ndWlz
aCB0aGUgcmVxdWVzdHMgYW5kIHRodXMgaW1wb3NzaWJsZSB0byB2ZXJpZnkgb3JkZXJpbmcpLgor
cHJvbWlzZV90ZXN0KGFzeW5jIHRlc3RDYXNlID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2
aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgcmVzb3VyY2VOYW1lID0gdW5pcXVlTmFtZSh0ZXN0Q2Fz
ZSk7CisKKyAgLy8gU2V0IHVwIGNsaWVudHMuCisgIGNvbnN0IGZyYW1lMSA9IGF3YWl0IGlmcmFt
ZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNvbnN0IGZyYW1lMiA9IGF3YWl0IGlmcmFt
ZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNvbnN0IGZyYW1lMyA9IGF3YWl0IGlmcmFt
ZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIHRlc3RDYXNlLmFkZF9jbGVhbnVwKCgpID0+
IHsgZnJhbWUxLnJlbW92ZSgpOyB9KTsKKyAgdGVzdENhc2UuYWRkX2NsZWFudXAoKCkgPT4geyBm
cmFtZTIucmVtb3ZlKCk7IH0pOworICB0ZXN0Q2FzZS5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1l
My5yZW1vdmUoKTsgfSk7CisKKyAgLy8gQ29sbGVjdCB0aGUgY2xpZW50IGlkcy4KKyAgY29uc3Qg
Y2xpZW50SWQxID0KKyAgICAgIChhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUxLCB7b3A6
ICdjbGllbnRfaWQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBu
YW1lOiByZXNvdXJjZU5hbWV9KSkuY2xpZW50X2lkOworICBjb25zdCBjbGllbnRJZDIgPQorICAg
ICAgKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTIsIHtvcDogJ2NsaWVudF9pZCcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHJlc291cmNlTmFt
ZX0pKS5jbGllbnRfaWQ7CisgIGNvbnN0IGNsaWVudElkMyA9CisgICAgICAoYXdhaXQgcG9zdFRv
RnJhbWVBbmRXYWl0KGZyYW1lMywge29wOiAnY2xpZW50X2lkJywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogcmVzb3VyY2VOYW1lfSkpLmNsaWVudF9pZDsK
KworICAvLyBQcmVlbXB0aXZlbHkgdGFrZSB0aGUgbG9jay4KKyAgY29uc3QgZmlyc3RSZXF1ZXN0
R3JvdXBSZWxlYXNlRnVuY3Rpb24gPQorICAgICAgYXdhaXQgZ2V0TG9ja0FuZEhvbGRVbnRpbFJl
bGVhc2VkKHJlc291cmNlTmFtZSk7CisKKyAgLy8gUXVldWUgdGhlIGZpcnN0IGdyb3VwIG9mIGxv
Y2sgcmVxdWVzdHMgZnJvbSB0aGUgZGlmZmVyZW50IGNsaWVudHMuIFRoZXNlCisgIC8vIHdpbGwg
YmUgYmxvY2tlZCB1bnRpbCBmaXJzdFJlcXVlc3RHcm91cFJlbGVhc2VGdW5jdGlvbigpIGlzIGNh
bGxlZC4KKyAgbGV0IGxvY2tJZDE7CisgIGxldCBsb2NrSWQyOworICBjb25zdCBsb2NrUHJvbWlz
ZTEgPQorICAgICAgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lMSwge29wOiAncmVxdWVzdCcsIG5h
bWU6IHJlc291cmNlTmFtZX0pCisgICAgICAgICAgLnRoZW4odmFsID0+IHtsb2NrSWQxID0gdmFs
LmxvY2tfaWQ7fSk7CisgIGNvbnN0IGxvY2tQcm9taXNlMiA9CisgICAgICBwb3N0VG9GcmFtZUFu
ZFdhaXQoZnJhbWUyLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzb3VyY2VOYW1lfSkKKyAgICAg
ICAgICAudGhlbih2YWwgPT4ge2xvY2tJZDIgPSB2YWwubG9ja19pZDt9KTsKKworICAvLyBUaGlz
IHRoaXJkIHJlcXVlc3Qgd2lsbCBsYXRlciBiZSBncmFudGVkIGFuZCBoZWxkIGluIG9yZGVyIHRv
IGJsb2NrIGEKKyAgLy8gc2Vjb25kIGdyb3VwIG9mIHJlcXVlc3RzIHRvIHRlc3QgYSBkaWZmZXJl
bnQgY2xpZW50IG9yZGVyaW5nLiBJdCBpcyBub3QKKyAgLy8gbWVhbnQgdG8gYmUgcmVsZWFzZWQu
CisgIHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTMsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXNv
dXJjZU5hbWV9KTsKKworICAvLyBSZXF1ZXN0IGFuZCB3YWl0IGZvciB0aGUgcmVsZWFzZSBvZiBh
IHNlcGFyYXRlIGxvY2sgdG8gZW5zdXJlIGFsbCBwcmV2aW91cworICAvLyByZXF1ZXN0cyBhcmUg
cHJvY2Vzc2VkLgorICBjb25zdCBjaGVja3BvaW50TmFtZSA9IHVuaXF1ZU5hbWUodGVzdENhc2Us
ICdjaGVja3BvaW50Jyk7CisgIGNvbnN0IGNoZWNrcG9pbnRJZCA9IChhd2FpdCBwb3N0VG9GcmFt
ZUFuZFdhaXQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiBjaGVj
a3BvaW50TmFtZX0pKS5sb2NrX2lkOworICBhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUz
LCB7b3A6ICdyZWxlYXNlJywgbG9ja19pZDogY2hlY2twb2ludElkfSk7CisKKyAgLy8gUXVlcnkg
dGhlIHN0YXRlIGFuZCB0ZXN0IHRoZSBvcmRlcmluZyBvZiByZXF1ZXN0ZWQgbG9ja3MuCisgIGNv
bnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgIGNvbnN0IHJlbGV2
YW50X3BlbmRpbmdfaWRzID0gc3RhdGUucGVuZGluZworICAgICAgLmZpbHRlcihsb2NrID0+IFtj
bGllbnRJZDEsIGNsaWVudElkMiwgY2xpZW50SWQzXS5pbmNsdWRlcyhsb2NrLmNsaWVudElkKSkK
KyAgICAgIC5tYXAobG9jayA9PiBsb2NrLmNsaWVudElkKTsKKyAgYXNzZXJ0X2FycmF5X2VxdWFs
cygKKyAgICAgIFtjbGllbnRJZDEsIGNsaWVudElkMiwgY2xpZW50SWQzXSwKKyAgICAgIHJlbGV2
YW50X3BlbmRpbmdfaWRzLAorICAgICAgJ1F1ZXJ5aW5nIHRoZSBzdGF0ZSBzaG91bGQgcmV0dXJu
IHJlcXVlc3RlZCBsb2NrcyBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlICcKKyAgICAgICsgJ3JlcXVl
c3RlZC4nKTsKKworICAvLyBBZGQgdGhlIHNlY29uZCBncm91cCBvZiByZXF1ZXN0cyBmcm9tIHRo
ZSBjbGllbnRzIGluIGEgbmV3IG9yZGVyLgorICBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUzLCB7
b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzb3VyY2VOYW1lfSk7CisgIHBvc3RUb0ZyYW1lQW5kV2Fp
dChmcmFtZTEsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXNvdXJjZU5hbWV9KTsKKyAgcG9zdFRv
RnJhbWVBbmRXYWl0KGZyYW1lMiwge29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc291cmNlTmFtZX0p
OworCisgIC8vIFJlbGVhc2UgbG9ja3Mgc3VjaCB0aGF0IG9ubHkgdGhlIG5ld2x5IGFkZGVkIGxv
Y2tzIGFyZSByZXF1ZXN0ZWQuIFRoaXMKKyAgLy8gYWN0cyBsaWtlIGEgY2hlY2twb2ludCBmb3Ig
dGhlIG5ld2x5IHF1ZXVlZCByZXF1ZXN0cy4KKyAgZmlyc3RSZXF1ZXN0R3JvdXBSZWxlYXNlRnVu
Y3Rpb24oKTsKKyAgYXdhaXQgbG9ja1Byb21pc2UxOworICBhd2FpdCBwb3N0VG9GcmFtZUFuZFdh
aXQoZnJhbWUxLCB7b3A6ICdyZWxlYXNlJywgbG9ja19pZDogbG9ja0lkMX0pOworICBhd2FpdCBs
b2NrUHJvbWlzZTI7CisgIGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTIsIHtvcDogJ3Jl
bGVhc2UnLCBsb2NrX2lkOiBsb2NrSWQyfSk7CisKKyAgLy8gUXVlcnkgdGhlIHN0YXRlIGFuZCB0
ZXN0IHRoZSBuZXcgb3JkZXJpbmcuCisgIGNvbnN0IHN0YXRlMiA9IGF3YWl0IG5hdmlnYXRvci5s
b2Nrcy5xdWVyeSgpOworICBjb25zdCByZWxldmFudF9wZW5kaW5nX2lkczIgPSBzdGF0ZTIucGVu
ZGluZworICAgICAgLmZpbHRlcihsb2NrID0+IFtjbGllbnRJZDEsIGNsaWVudElkMiwgY2xpZW50
SWQzXS5pbmNsdWRlcyhsb2NrLmNsaWVudElkKSkKKyAgICAgIC5tYXAobG9jayA9PiBsb2NrLmNs
aWVudElkKTsKKyAgYXNzZXJ0X2FycmF5X2VxdWFscygKKyAgICAgIFtjbGllbnRJZDMsIGNsaWVu
dElkMSwgY2xpZW50SWQyXSwKKyAgICAgIHJlbGV2YW50X3BlbmRpbmdfaWRzMiwKKyAgICAgICdR
dWVyeWluZyB0aGUgc3RhdGUgc2hvdWxkIHJldHVybiByZXF1ZXN0ZWQgbG9ja3MgaW4gdGhlIG9y
ZGVyIHRoZXkgd2VyZSAnCisgICAgICArICdyZXF1ZXN0ZWQuJyk7CisKK30sICdSZXF1ZXN0cyBh
cHBlYXIgaW4gc3RhdGUgaW4gb3JkZXIgbWFkZS4nKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVl
cnkudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jY2RiMDQxMTY4ODQ4Yzk4NDkzMzYwOWM5NjNm
MzVlNTNlYWJlYjUyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpCisKK0hhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1
bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJl
cXVlc3QnKQorCitGQUlMIHF1ZXJ5KCkgcmV0dXJucyBkaWN0aW9uYXJpZXMgd2l0aCBleHBlY3Rl
ZCBwcm9wZXJ0aWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIHF1ZXJ5KCkgcmVwb3J0cyBpbmRp
dmlkdWFsIGhlbGQgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRz
IG11bHRpcGxlIGhlbGQgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBv
cnRzIHBlbmRpbmcgYW5kIGhlbGQgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnko
KSByZXBvcnRzIGhlbGQgc2hhcmVkIGxvY2tzIHdpdGggYXBwcm9wcmlhdGUgY291bnQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRzIHBlbmRpbmcgc2hhcmVkIGxvY2tzIHdp
dGggYXBwcm9wcmlhdGUgY291bnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBv
cnRzIHRoZSBzYW1lIGNsaWVudElkIGZvciBoZWxkIGxvY2tzIGZyb20gdGhlIHNhbWUgY29udGV4
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorVElNRU9VVCBxdWVyeSgpIHJlcG9ydHMgZGlmZmVyZW50IGlk
cyBmb3IgaGVsZCBsb2NrcyBmcm9tIGRpZmZlcmVudCBjb250ZXh0cyBUZXN0IHRpbWVkIG91dAor
Tk9UUlVOIHF1ZXJ5KCkgY2FuIG9ic2VydmUgYSBkZWFkbG9jaworCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50
ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL3F1ZXJ5LnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8
IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUg
dG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0
dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNGZkZWNhN2E0MjZjNDRhYzkwMjdhM2EyNDk0ZTIzNWQw
YWMxODQ0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAt
MCwwICsxLDIyNyBAQAorLy8gTUVUQTogdGl0bGU9V2ViIExvY2tzIEFQSTogbmF2aWdhdG9yLmxv
Y2tzLnF1ZXJ5IG1ldGhvZAorLy8gTUVUQTogc2NyaXB0PXJlc291cmNlcy9oZWxwZXJzLmpzCisK
Kyd1c2Ugc3RyaWN0JzsKKworLy8gUmV0dXJucyBhbiBhcnJheSBvZiB0aGUgbW9kZXMgZm9yIHRo
ZSBsb2NrcyB3aXRoIG1hdGNoaW5nIG5hbWUuCitmdW5jdGlvbiBtb2RlcyhsaXN0LCBuYW1lKSB7
CisgIHJldHVybiBsaXN0LmZpbHRlcihpdGVtID0+IGl0ZW0ubmFtZSA9PT0gbmFtZSkubWFwKGl0
ZW0gPT4gaXRlbS5tb2RlKTsKK30KKy8vIFJldHVybnMgYW4gYXJyYXkgb2YgdGhlIGNsaWVudElk
cyBmb3IgdGhlIGxvY2tzIHdpdGggbWF0Y2hpbmcgbmFtZS4KK2Z1bmN0aW9uIGNsaWVudHMobGlz
dCwgbmFtZSkgeworICByZXR1cm4gbGlzdC5maWx0ZXIoaXRlbSA9PiBpdGVtLm5hbWUgPT09IG5h
bWUpLm1hcChpdGVtID0+IGl0ZW0uY2xpZW50SWQpOworfQorCitwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisKKyAgYXdhaXQgbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QocmVzLCBhc3luYyBsb2NrMSA9PiB7CisgICAgLy8gQXR0ZW1wdCB0byBy
ZXF1ZXN0IHRoaXMgYWdhaW4gLSBzaG91bGQgYmUgYmxvY2tlZC4KKyAgICBsZXQgbG9jazJfYWNx
dWlyZWQgPSBmYWxzZTsKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2syID0+
IHsgbG9jazJfYWNxdWlyZWQgPSB0cnVlOyB9KTsKKworICAgIC8vIFZlcmlmeSB0aGF0IGl0IHdh
cyBibG9ja2VkLgorICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge2lmQXZh
aWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jazMgPT4geworICAgICAgYXNzZXJ0X2ZhbHNlKGxvY2sy
X2FjcXVpcmVkLCAnc2Vjb25kIHJlcXVlc3Qgc2hvdWxkIGJlIGJsb2NrZWQnKTsKKyAgICAgIGFz
c2VydF9lcXVhbHMobG9jazMsIG51bGwsICd0aGlyZCByZXF1ZXN0IHNob3VsZCBoYXZlIGZhaWxl
ZCcpOworCisgICAgICBjb25zdCBzdGF0ZSA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgp
OworCisgICAgICBhc3NlcnRfb3duX3Byb3BlcnR5KHN0YXRlLCAncGVuZGluZycsICdTdGF0ZSBo
YXMgYHBlbmRpbmdgIHByb3BlcnR5Jyk7CisgICAgICBhc3NlcnRfdHJ1ZShBcnJheS5pc0FycmF5
KHN0YXRlLnBlbmRpbmcpLAorICAgICAgICAgICAgICAgICAgJ1N0YXRlIGBwZW5kaW5nYCBwcm9w
ZXJ0eSBpcyBhbiBhcnJheScpOworICAgICAgY29uc3QgcGVuZGluZ19pbmZvID0gc3RhdGUucGVu
ZGluZ1swXTsKKyAgICAgIGFzc2VydF9vd25fcHJvcGVydHkocGVuZGluZ19pbmZvLCAnbmFtZScs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICdQZW5kaW5nIGluZm8gZGljdGlvbmFyeSBoYXMg
YG5hbWVgIHByb3BlcnR5Jyk7CisgICAgICBhc3NlcnRfb3duX3Byb3BlcnR5KHBlbmRpbmdfaW5m
bywgJ21vZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnUGVuZGluZyBpbmZvIGRpY3Rp
b25hcnkgaGFzIGBtb2RlYCBwcm9wZXJ0eScpOworICAgICAgYXNzZXJ0X293bl9wcm9wZXJ0eShw
ZW5kaW5nX2luZm8sICdjbGllbnRJZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdQZW5k
aW5nIGluZm8gZGljdGlvbmFyeSBoYXMgYGNsaWVudElkYCBwcm9wZXJ0eScpOworCisgICAgICBh
c3NlcnRfb3duX3Byb3BlcnR5KHN0YXRlLCAnaGVsZCcsICdTdGF0ZSBoYXMgYGhlbGRgIHByb3Bl
cnR5Jyk7CisgICAgICBhc3NlcnRfdHJ1ZShBcnJheS5pc0FycmF5KHN0YXRlLmhlbGQpLAorICAg
ICAgICAgICAgICAgICAgJ1N0YXRlIGBoZWxkYCBwcm9wZXJ0eSBpcyBhbiBhcnJheScpOworICAg
ICAgY29uc3QgaGVsZF9pbmZvID0gc3RhdGUuaGVsZFswXTsKKyAgICAgIGFzc2VydF9vd25fcHJv
cGVydHkoaGVsZF9pbmZvLCAnbmFtZScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdIZWxk
IGluZm8gZGljdGlvbmFyeSBoYXMgYG5hbWVgIHByb3BlcnR5Jyk7CisgICAgICBhc3NlcnRfb3du
X3Byb3BlcnR5KGhlbGRfaW5mbywgJ21vZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAn
SGVsZCBpbmZvIGRpY3Rpb25hcnkgaGFzIGBtb2RlYCBwcm9wZXJ0eScpOworICAgICAgYXNzZXJ0
X293bl9wcm9wZXJ0eShoZWxkX2luZm8sICdjbGllbnRJZCcsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICdIZWxkIGluZm8gZGljdGlvbmFyeSBoYXMgYGNsaWVudElkYCBwcm9wZXJ0eScpOwor
ICAgIH0pOworICB9KTsKK30sICdxdWVyeSgpIHJldHVybnMgZGljdGlvbmFyaWVzIHdpdGggZXhw
ZWN0ZWQgcHJvcGVydGllcycpOworCisKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBj
b25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KHJlcywgYXN5bmMgbG9jazEgPT4geworICAgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdh
dG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhtb2RlcyhzdGF0ZS5o
ZWxkLCByZXMpLCBbJ2V4Y2x1c2l2ZSddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ0hlbGQg
bG9jayBzaG91bGQgYXBwZWFyIG9uY2UnKTsKKyAgfSk7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QocmVzLCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrMSA9PiB7CisgICAg
Y29uc3Qgc3RhdGUgPSBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucXVlcnkoKTsKKyAgICBhc3NlcnRf
YXJyYXlfZXF1YWxzKG1vZGVzKHN0YXRlLmhlbGQsIHJlcyksIFsnc2hhcmVkJ10sCisgICAgICAg
ICAgICAgICAgICAgICAgICAnSGVsZCBsb2NrIHNob3VsZCBhcHBlYXIgb25jZScpOworICB9KTsK
K30sICdxdWVyeSgpIHJlcG9ydHMgaW5kaXZpZHVhbCBoZWxkIGxvY2tzJyk7CisKK3Byb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzMSA9IHVuaXF1ZU5hbWUodCk7CisgIGNvbnN0
IHJlczIgPSB1bmlxdWVOYW1lKHQpOworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KHJlczEsIGFzeW5jIGxvY2sxID0+IHsKKyAgICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVz
dChyZXMyLCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrMiA9PiB7CisgICAgICBjb25zdCBz
dGF0ZSA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICAgICAgYXNzZXJ0X2FycmF5
X2VxdWFscyhtb2RlcyhzdGF0ZS5oZWxkLCByZXMxKSwgWydleGNsdXNpdmUnXSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgJ0hlbGQgbG9jayBzaG91bGQgYXBwZWFyIG9uY2UnKTsKKyAgICAg
IGFzc2VydF9hcnJheV9lcXVhbHMobW9kZXMoc3RhdGUuaGVsZCwgcmVzMiksIFsnc2hhcmVkJ10s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICdIZWxkIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNl
Jyk7CisgICAgfSk7CisgIH0pOworfSwgJ3F1ZXJ5KCkgcmVwb3J0cyBtdWx0aXBsZSBoZWxkIGxv
Y2tzJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVl
TmFtZSh0KTsKKworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGFzeW5jIGxv
Y2sxID0+IHsKKyAgICAvLyBBdHRlbXB0IHRvIHJlcXVlc3QgdGhpcyBhZ2FpbiAtIHNob3VsZCBi
ZSBibG9ja2VkLgorICAgIGxldCBsb2NrMl9hY3F1aXJlZCA9IGZhbHNlOworICAgIG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgbG9jazIgPT4geyBsb2NrMl9hY3F1aXJlZCA9IHRydWU7IH0p
OworCisgICAgLy8gVmVyaWZ5IHRoYXQgaXQgd2FzIGJsb2NrZWQuCisgICAgYXdhaXQgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7aWZBdmFpbGFibGU6IHRydWV9LCBhc3luYyBsb2NrMyA9
PiB7CisgICAgICBhc3NlcnRfZmFsc2UobG9jazJfYWNxdWlyZWQsICdzZWNvbmQgcmVxdWVzdCBz
aG91bGQgYmUgYmxvY2tlZCcpOworICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrMywgbnVsbCwgJ3Ro
aXJkIHJlcXVlc3Qgc2hvdWxkIGhhdmUgZmFpbGVkJyk7CisKKyAgICAgIGNvbnN0IHN0YXRlID0g
YXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxz
KG1vZGVzKHN0YXRlLnBlbmRpbmcsIHJlcyksIFsnZXhjbHVzaXZlJ10sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICdQZW5kaW5nIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNlJyk7CisgICAgICBh
c3NlcnRfYXJyYXlfZXF1YWxzKG1vZGVzKHN0YXRlLmhlbGQsIHJlcyksIFsnZXhjbHVzaXZlJ10s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICdIZWxkIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNl
Jyk7CisgICAgfSk7CisgIH0pOworfSwgJ3F1ZXJ5KCkgcmVwb3J0cyBwZW5kaW5nIGFuZCBoZWxk
IGxvY2tzJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5p
cXVlTmFtZSh0KTsKKworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHttb2Rl
OiAnc2hhcmVkJ30sIGFzeW5jIGxvY2sxID0+IHsKKyAgICBhd2FpdCBuYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdChyZXMsIHttb2RlOiAnc2hhcmVkJ30sIGFzeW5jIGxvY2syID0+IHsKKyAgICAgIGNv
bnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICBhc3NlcnRf
YXJyYXlfZXF1YWxzKG1vZGVzKHN0YXRlLmhlbGQsIHJlcyksIFsnc2hhcmVkJywgJ3NoYXJlZCdd
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAnSGVsZCBsb2NrIHNob3VsZCBhcHBlYXIgdHdp
Y2UnKTsKKyAgICB9KTsKKyAgfSk7Cit9LCAncXVlcnkoKSByZXBvcnRzIGhlbGQgc2hhcmVkIGxv
Y2tzIHdpdGggYXBwcm9wcmlhdGUgY291bnQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4g
eworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jazEgPT4geworICAgIGxldCBsb2NrMl9hY3F1aXJlZCA9
IGZhbHNlLCBsb2NrM19hY3F1aXJlZCA9IGZhbHNlOworICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KHJlcywge21vZGU6ICdzaGFyZWQnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBs
b2NrMiA9PiB7IGxvY2syX2FjcXVpcmVkID0gdHJ1ZTsgfSk7CisgICAgbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QocmVzLCB7bW9kZTogJ3NoYXJlZCd9LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGxvY2szID0+IHsgbG9jazNfYWNxdWlyZWQgPSB0cnVlOyB9KTsKKworICAgIGF3YWl0IG5h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9j
azQgPT4geworICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrNCwgbnVsbCwgJ2xvY2sgc2hvdWxkIG5v
dCBiZSBhdmFpbGFibGUnKTsKKyAgICAgIGFzc2VydF9mYWxzZShsb2NrMl9hY3F1aXJlZCwgJ3Nl
Y29uZCBhdHRlbXB0IHNob3VsZCBiZSBibG9ja2VkJyk7CisgICAgICBhc3NlcnRfZmFsc2UobG9j
azNfYWNxdWlyZWQsICd0aGlyZCBhdHRlbXB0IHNob3VsZCBiZSBibG9ja2VkJyk7CisKKyAgICAg
IGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICBhc3Nl
cnRfYXJyYXlfZXF1YWxzKG1vZGVzKHN0YXRlLmhlbGQsIHJlcyksIFsnZXhjbHVzaXZlJ10sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICdIZWxkIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNlJyk7
CisKKyAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMobW9kZXMoc3RhdGUucGVuZGluZywgcmVzKSwg
WydzaGFyZWQnLCAnc2hhcmVkJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICdQZW5kaW5n
IGxvY2sgc2hvdWxkIGFwcGVhciB0d2ljZScpOworICAgIH0pOworICB9KTsKK30sICdxdWVyeSgp
IHJlcG9ydHMgcGVuZGluZyBzaGFyZWQgbG9ja3Mgd2l0aCBhcHByb3ByaWF0ZSBjb3VudCcpOwor
Citwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlczEgPSB1bmlxdWVOYW1lKHQp
OworICBjb25zdCByZXMyID0gdW5pcXVlTmFtZSh0KTsKKworICBhd2FpdCBuYXZpZ2F0b3IubG9j
a3MucmVxdWVzdChyZXMxLCBhc3luYyBsb2NrMSA9PiB7CisgICAgYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QocmVzMiwgYXN5bmMgbG9jazIgPT4geworICAgICAgY29uc3Qgc3RhdGUgPSBh
d2FpdCBuYXZpZ2F0b3IubG9ja3MucXVlcnkoKTsKKworICAgICAgY29uc3QgcmVzMV9jbGllbnRz
ID0gY2xpZW50cyhzdGF0ZS5oZWxkLCByZXMxKTsKKyAgICAgIGNvbnN0IHJlczJfY2xpZW50cyA9
IGNsaWVudHMoc3RhdGUuaGVsZCwgcmVzMik7CisKKyAgICAgIGFzc2VydF9lcXVhbHMocmVzMV9j
bGllbnRzLmxlbmd0aCwgMSwgJ0VhY2ggbG9jayBzaG91bGQgaGF2ZSBvbmUgaG9sZGVyJyk7Cisg
ICAgICBhc3NlcnRfZXF1YWxzKHJlczJfY2xpZW50cy5sZW5ndGgsIDEsICdFYWNoIGxvY2sgc2hv
dWxkIGhhdmUgb25lIGhvbGRlcicpOworCisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKHJlczFf
Y2xpZW50cywgcmVzMl9jbGllbnRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnQm90aCBs
b2NrcyBzaG91bGQgaGF2ZSBzYW1lIGNsaWVudElkJyk7CisgICAgfSk7CisgIH0pOworfSwgJ3F1
ZXJ5KCkgcmVwb3J0cyB0aGUgc2FtZSBjbGllbnRJZCBmb3IgaGVsZCBsb2NrcyBmcm9tIHRoZSBz
YW1lIGNvbnRleHQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMg
PSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNl
cy93b3JrZXIuanMnKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IHdvcmtlci50ZXJtaW5hdGUo
KTsgfSk7CisKKyAgYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCgKKyAgICB3b3JrZXIsIHtvcDog
J3JlcXVlc3QnLCBuYW1lOiByZXMsIG1vZGU6ICdzaGFyZWQnfSk7CisKKyAgYXdhaXQgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrID0+IHsK
KyAgICBjb25zdCBzdGF0ZSA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICAgIGNv
bnN0IHJlc19jbGllbnRzID0gY2xpZW50cyhzdGF0ZS5oZWxkLCByZXMpOworICAgIGFzc2VydF9l
cXVhbHMocmVzX2NsaWVudHMubGVuZ3RoLCAyLCAnQ2xpZW50cyBzaG91bGQgaGF2ZSBzYW1lIHJl
c291cmNlJyk7CisgICAgYXNzZXJ0X25vdF9lcXVhbHMocmVzX2NsaWVudHNbMF0sIHJlc19jbGll
bnRzWzFdLAorICAgICAgICAgICAgICAgICAgICAgICdDbGllbnRzIHNob3VsZCBoYXZlIGRpZmZl
cmVudCBpZHMnKTsKKyAgfSk7Cit9LCAncXVlcnkoKSByZXBvcnRzIGRpZmZlcmVudCBpZHMgZm9y
IGhlbGQgbG9ja3MgZnJvbSBkaWZmZXJlbnQgY29udGV4dHMnKTsKKworcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICBjb25zdCByZXMxID0gdW5pcXVlTmFtZSh0KTsKKyAgY29uc3QgcmVzMiA9
IHVuaXF1ZU5hbWUodCk7CisKKyAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcigncmVzb3VyY2Vz
L3dvcmtlci5qcycpOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHsgd29ya2VyLnRlcm1pbmF0ZSgp
OyB9KTsKKworICAvLyBBY3F1aXJlIDEgaW4gdGhlIHdvcmtlci4KKyAgYXdhaXQgcG9zdFRvV29y
a2VyQW5kV2FpdCh3b3JrZXIsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMxfSkKKworICAvLyBB
Y3F1aXJlIDIgaGVyZS4KKyAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzMiwgbG9jayA9PiB7CisgICAgICByZXNvbHZlKCk7Cisg
ICAgICByZXR1cm4gbmV3IFByb21pc2UoKCkgPT4ge30pOyAvLyBOZXZlciByZWxlYXNlZC4KKyAg
ICB9KTsKKyAgfSk7CisKKyAgLy8gUmVxdWVzdCAyIGluIHRoZSB3b3JrZXIuCisgIHBvc3RUb1dv
cmtlckFuZFdhaXQod29ya2VyLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzMn0pOworICBhc3Nl
cnRfdHJ1ZSgoYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCh3b3JrZXIsIHsKKyAgICBvcDogJ3Jl
cXVlc3QnLCBuYW1lOiByZXMyLCBpZkF2YWlsYWJsZTogdHJ1ZQorICB9KSkuZmFpbGVkLCAnTG9j
ayByZXF1ZXN0IHNob3VsZCBoYXZlIGZhaWxlZCcpOworCisgIC8vIFJlcXVlc3QgMSBoZXJlLgor
ICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMxLCB0LnVucmVhY2hlZF9mdW5jKCdM
b2NrIHNob3VsZCBub3QgYmUgYWNxdWlyZWQnKSk7CisKKyAgLy8gVmVyaWZ5IHRoYXQgd2UncmUg
c2VlaW5nIGEgZGVhZGxvY2suCisgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tz
LnF1ZXJ5KCk7CisgIGNvbnN0IHJlczFfaGVsZF9jbGllbnRzID0gY2xpZW50cyhzdGF0ZS5oZWxk
LCByZXMxKTsKKyAgY29uc3QgcmVzMl9oZWxkX2NsaWVudHMgPSBjbGllbnRzKHN0YXRlLmhlbGQs
IHJlczIpOworICBjb25zdCByZXMxX3BlbmRpbmdfY2xpZW50cyA9IGNsaWVudHMoc3RhdGUucGVu
ZGluZywgcmVzMSk7CisgIGNvbnN0IHJlczJfcGVuZGluZ19jbGllbnRzID0gY2xpZW50cyhzdGF0
ZS5wZW5kaW5nLCByZXMyKTsKKworICBhc3NlcnRfZXF1YWxzKHJlczFfaGVsZF9jbGllbnRzLmxl
bmd0aCwgMSk7CisgIGFzc2VydF9lcXVhbHMocmVzMl9oZWxkX2NsaWVudHMubGVuZ3RoLCAxKTsK
KyAgYXNzZXJ0X2VxdWFscyhyZXMxX3BlbmRpbmdfY2xpZW50cy5sZW5ndGgsIDEpOworICBhc3Nl
cnRfZXF1YWxzKHJlczJfcGVuZGluZ19jbGllbnRzLmxlbmd0aCwgMSk7CisKKyAgYXNzZXJ0X2Vx
dWFscyhyZXMxX2hlbGRfY2xpZW50c1swXSwgcmVzMl9wZW5kaW5nX2NsaWVudHNbMF0pOworICBh
c3NlcnRfZXF1YWxzKHJlczJfaGVsZF9jbGllbnRzWzBdLCByZXMxX3BlbmRpbmdfY2xpZW50c1sw
XSk7Cit9LCAncXVlcnkoKSBjYW4gb2JzZXJ2ZSBhIGRlYWRsb2NrJyk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVy
eS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUu
aHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDMwYmE4NDE1MDk3MjU4
MDQxZTM4N2E2Mzk3MDRlY2Y1YWNjM2ZjZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LnRlbnRhdGl2
ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisKK0ZBSUwg
cXVlcnkoKSByZXR1cm5zIGRpY3Rpb25hcmllcyB3aXRoIGV4cGVjdGVkIHByb3BlcnRpZXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRzIGluZGl2aWR1YWwgaGVsZCBsb2Nr
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgbXVsdGlwbGUgaGVsZCBs
b2NrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgcGVuZGluZyBhbmQg
aGVsZCBsb2NrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgaGVsZCBz
aGFyZWQgbG9ja3Mgd2l0aCBhcHByb3ByaWF0ZSBjb3VudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBxdWVyeSgpIHJlcG9ydHMgcGVuZGluZyBzaGFyZWQgbG9ja3Mgd2l0aCBhcHByb3ByaWF0ZSBj
b3VudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgdGhlIHNhbWUgY2xp
ZW50SWQgZm9yIGhlbGQgbG9ja3MgZnJvbSB0aGUgc2FtZSBjb250ZXh0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
JykiCitGQUlMIHF1ZXJ5KCkgcmVwb3J0cyBkaWZmZXJlbnQgaWRzIGZvciBoZWxkIGxvY2tzIGZy
b20gZGlmZmVyZW50IGNvbnRleHRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBX
b3JrZXIiCitGQUlMIHF1ZXJ5KCkgY2FuIG9ic2VydmUgYSBkZWFkbG9jayBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjog
Q2FuJ3QgZmluZCB2YXJpYWJsZTogV29ya2VyIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUu
aHR0cHMuYW55Lndvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAt
MCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5m
cmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjZkYzY3Y2QzMDE5NGQ1ZWUwYjNiMTA3NmZjYTQwMzM3YjRjYThiYzgK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDEwIEBACisKK0ZBSUwgRE9NU3RyaW5nOiAgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QnKSIKK0ZBSUwgRE9NU3RyaW5nOiAweDYxIDB4NjIgMHg2MyAweDAgMHg2NCAweDY1IDB4NjYg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgRE9NU3RyaW5nOiAweEQ4MDAgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qn
KSIKK0ZBSUwgRE9NU3RyaW5nOiAweERDMDAgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgRE9NU3Ry
aW5nOiAweERDMDAgMHhEODAwIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhG
RkZGIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFJlc291cmNlIG5hbWVzIHRoYXQgYXJlIG5vdCB2
YWxpZCBVVEYtMTYgYXJlIG5vdCBtYW5nbGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIE5hbWVz
IGNhbm5vdCBzdGFydCB3aXRoICItIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNv
dXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRp
dmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0
NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBm
b3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAt
LT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50
ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xMDMxYjNmN2JhMmUzNDEyOTg3MGRiNzMwODhiZTBiYzM4NGFiMmY4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAt
MCwwICsxLDU2IEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBSZXNvdXJjZXMgRE9N
U3RyaW5nIGVkZ2UgY2FzZXMKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2Vy
LHNoYXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisKKyd1c2Ugc3RyaWN0JzsKKworZnVuY3Rpb24g
Y29kZV9wb2ludHMocykgeworICByZXR1cm4gWy4uLnNdCisgICAgLm1hcChjID0+ICcweCcgKyBj
LmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkpCisgICAgLmpvaW4oJyAn
KTsKK30KKworWworICAnJywgLy8gRW1wdHkgc3RyaW5ncworICAnYWJjXHgwMGRlZicsIC8vIEVt
YmVkZGVkIE5VTAorICAnXHVEODAwJywgLy8gVW5wYWlyZWQgbG93IHN1cnJvZ2FnZQorICAnXHVE
QzAwJywgLy8gVW5wYWlyZWQgaGlnaCBzdXJyb2dhZ2UKKyAgJ1x1REMwMFx1RDgwMCcsIC8vIFN3
YXBwZWQgc3Vycm9nYXRlIHBhaXIKKyAgJ1x1RkZGRicgLy8gTm9uLWNoYXJhY3RlcgorXS5mb3JF
YWNoKHN0cmluZyA9PiB7CisgIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBhd2FpdCBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdChzdHJpbmcsIGxvY2sgPT4geworICAgICAgYXNzZXJ0X2Vx
dWFscyhsb2NrLm5hbWUsIHN0cmluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ1JlcXVl
c3RlZCBuYW1lIG1hdGNoZXMgZ3JhbnRlZCBuYW1lJyk7CisgICAgfSk7CisgIH0sICdET01TdHJp
bmc6ICcgKyBjb2RlX3BvaW50cyhzdHJpbmcpKTsKK30pOworCitwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7CisgIC8vICdcdUQ4MDAnIHRyZWF0ZWQgYXMgYSBVU1ZTdHJpbmcgd291bGQgYmVjb21l
ICdcdUZGRkQnLgorICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnXHVEODAwJywgYXN5
bmMgbG9jayA9PiB7CisgICAgYXNzZXJ0X2VxdWFscyhsb2NrLm5hbWUsICdcdUQ4MDAnKTsKKwor
ICAgIC8vIHxsb2NrfCBpcyBoZWxkIGZvciB0aGUgZHVyYXRpb24gb2YgdGhpcyBuYW1lLiBJdAor
ICAgIC8vIFNob3VsZCBub3QgYmxvY2sgYWNxdWlyaW5nIHxsb2NrMnwgd2l0aCBhIGRpc3RpbmN0
CisgICAgLy8gRE9NU3RyaW5nLgorICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdc
dUZGRkQnLCBsb2NrMiA9PiB7CisgICAgICBhc3NlcnRfZXF1YWxzKGxvY2syLm5hbWUsICdcdUZG
RkQnKTsKKyAgICB9KTsKKworICAgIC8vIElmIHdlIGRpZCBub3QgdGltZSBvdXQsIHRoaXMgcGFz
c2VkLgorICB9KTsKK30sICdSZXNvdXJjZSBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgVVRGLTE2
IGFyZSBub3QgbWFuZ2xlZCcpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGZvciAo
Y29uc3QgbmFtZSBvZiBbJy0nLCAnLWZvbyddKSB7CisgICAgYXdhaXQgcHJvbWlzZV9yZWplY3Rz
X2RvbSgKKyAgICAgIHQsICdOb3RTdXBwb3J0ZWRFcnJvcicsCisgICAgICBuYXZpZ2F0b3IubG9j
a3MucmVxdWVzdChuYW1lLCBsb2NrID0+IHt9KSwKKyAgICAgICdOYW1lcyBzdGFydGluZyB3aXRo
ICItIiBzaG91bGQgYmUgcmVqZWN0ZWQnKTsKKyAgfQorICBsZXQgZ290X2xvY2sgPSBmYWxzZTsK
KyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ3gtYW55dGhpbmcnLCBsb2NrID0+IHsK
KyAgICBnb3RfbG9jayA9IHRydWU7CisgIH0pOworICBhc3NlcnRfdHJ1ZShnb3RfbG9jaywgJ05h
bWVzIHdpdGggZW1iZWRkZWQgIi0iIHNob3VsZCBiZSBhY2NlcHRlZCcpOworfSwgJ05hbWVzIGNh
bm5vdCBzdGFydCB3aXRoICItIicpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZl
Lmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRh
dGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmRj
NjdjZDMwMTk0ZDVlZTBiM2IxMDc2ZmNhNDAzMzdiNGNhOGJjOAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jl
c291cmNlLW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxMCBAQAorCitGQUlMIERPTVN0cmluZzogIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIERPTVN0cmluZzogMHg2MSAweDYyIDB4NjMgMHgwIDB4NjQgMHg2NSAweDY2IHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhEODAwIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitG
QUlMIERPTVN0cmluZzogMHhEQzAwIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzog
MHhEQzAwIDB4RDgwMCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBET01TdHJpbmc6IDB4RkZGRiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXNvdXJjZSBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQg
VVRGLTE2IGFyZSBub3QgbWFuZ2xlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBOYW1lcyBjYW5u
b3Qgc3RhcnQgd2l0aCAiLSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2Ut
bmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1l
cy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgy
OTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVz
b3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAgLTAs
MCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJh
c3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS53
b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkYzY3Y2QzMDE5NGQ1ZWUwYjNiMTA3NmZjYTQw
MzM3YjRjYThiYzgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0
cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorCitGQUlMIERPTVN0
cmluZzogIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHg2MSAweDYyIDB4NjMg
MHgwIDB4NjQgMHg2NSAweDY2IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhE
ODAwIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhEQzAwIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhEQzAwIDB4RDgwMCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
RkFJTCBET01TdHJpbmc6IDB4RkZGRiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXNvdXJjZSBu
YW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgVVRGLTE2IGFyZSBub3QgbWFuZ2xlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBOYW1lcyBjYW5ub3Qgc3RhcnQgd2l0aCAiLSIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qn
KSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKQEAg
LTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGlu
ZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL2hlbHBlcnMuanMgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvaGVs
cGVycy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yZTM4ZWVjYTMxZTBkOTk4ZjNhYmRjYWM4Mzg4NmIyMmM3ODJk
YWNiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL2hlbHBlcnMuanMKQEAgLTAsMCArMSw3OSBA
QAorLy8gVGVzdCBoZWxwZXJzIHVzZWQgYnkgbXVsdGlwbGUgV2ViIExvY2tzIEFQSSB0ZXN0cy4K
KygoKSA9PiB7CisKKyAgLy8gR2VuZXJhdGUgYSB1bmlxdWUgcmVzb3VyY2UgaWRlbnRpZmllciwg
dXNpbmcgdGhlIHNjcmlwdCBwYXRoIGFuZAorICAvLyB0ZXN0IGNhc2UgbmFtZS4gVGhpcyBpcyB1
c2VmdWwgdG8gYXZvaWQgbG9jayBpbnRlcmZlcmVuY2UgYmV0d2VlbgorICAvLyB0ZXN0IGNhc2Vz
LgorICBsZXQgcmVzX251bSA9IDA7CisgIHNlbGYudW5pcXVlTmFtZSA9ICh0ZXN0Q2FzZSwgcHJl
Zml4KSA9PiB7CisgICAgcmV0dXJuIGAke3NlbGYubG9jYXRpb24ucGF0aG5hbWV9LSR7cHJlZml4
fS0ke3Rlc3RDYXNlLm5hbWV9LSR7KytyZXNfbnVtfWA7CisgIH07CisKKyAgLy8gSW5qZWN0IGFu
IGlmcmFtZSBzaG93aW5nIHRoZSBnaXZlbiB1cmwgaW50byB0aGUgcGFnZSwgYW5kIHJlc29sdmUK
KyAgLy8gdGhlIHJldHVybmVkIHByb21pc2Ugd2hlbiB0aGUgZnJhbWUgaXMgbG9hZGVkLgorICBz
ZWxmLmlmcmFtZSA9IHVybCA9PiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBjb25zdCBl
bGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CisgICAgZWxlbWVudC5h
ZGRFdmVudExpc3RlbmVyKAorICAgICAgJ2xvYWQnLCAoKSA9PiB7IHJlc29sdmUoZWxlbWVudCk7
IH0sIHsgb25jZTogdHJ1ZSB9KTsKKyAgICBlbGVtZW50LnNyYyA9IHVybDsKKyAgICBkb2N1bWVu
dC5kb2N1bWVudEVsZW1lbnQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7CisgIH0pOworCisgIC8vIFBv
c3QgYSBtZXNzYWdlIHRvIHRoZSB0YXJnZXQgZnJhbWUsIGFuZCByZXNvbHZlIHRoZSByZXR1cm5l
ZAorICAvLyBwcm9taXNlIHdoZW4gYSByZXNwb25zZSBjb21lcyBiYWNrLiBUaGUgcG9zdGVkIGRh
dGEgaXMgYW5ub3RhdGVkCisgIC8vIHdpdGggdW5pcXVlIGlkIHRvIHRyYWNrIHRoZSByZXNwb25z
ZS4gVGhpcyBhc3N1bWVzIHRoZSB1c2Ugb2YKKyAgLy8gJ2lmcmFtZS5odG1sJyBhcyB0aGUgZnJh
bWUsIHdoaWNoIGltcGxlbWVudHMgdGhpcyBwcm90b2NvbC4KKyAgbGV0IG5leHRfcmVxdWVzdF9p
ZCA9IDA7CisgIHNlbGYucG9zdFRvRnJhbWVBbmRXYWl0ID0gKGZyYW1lLCBkYXRhKSA9PiB7Cisg
ICAgY29uc3QgaWZyYW1lX3dpbmRvdyA9IGZyYW1lLmNvbnRlbnRXaW5kb3c7CisgICAgZGF0YS5y
cWlkID0gbmV4dF9yZXF1ZXN0X2lkKys7CisgICAgaWZyYW1lX3dpbmRvdy5wb3N0TWVzc2FnZShk
YXRhLCAnKicpOworICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAgIGNv
bnN0IGxpc3RlbmVyID0gZXZlbnQgPT4geworICAgICAgICBpZiAoZXZlbnQuc291cmNlICE9PSBp
ZnJhbWVfd2luZG93IHx8IGV2ZW50LmRhdGEucnFpZCAhPT0gZGF0YS5ycWlkKQorICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgc2VsZi5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgbGlz
dGVuZXIpOworICAgICAgICByZXNvbHZlKGV2ZW50LmRhdGEpOworICAgICAgfTsKKyAgICAgIHNl
bGYuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyKTsKKyAgICB9KTsKKyAgfTsK
KworICAvLyBQb3N0IGEgbWVzc2FnZSB0byB0aGUgdGFyZ2V0IHdvcmtlciwgYW5kIHJlc29sdmUg
dGhlIHJldHVybmVkCisgIC8vIHByb21pc2Ugd2hlbiBhIHJlc3BvbnNlIGNvbWVzIGJhY2suIFRo
ZSBwb3N0ZWQgZGF0YSBpcyBhbm5vdGF0ZWQKKyAgLy8gd2l0aCB1bmlxdWUgaWQgdG8gdHJhY2sg
dGhlIHJlc3BvbnNlLiBUaGlzIGFzc3VtZXMgdGhlIHVzZSBvZgorICAvLyAnd29ya2VyLmpzJyBh
cyB0aGUgd29ya2VyLCB3aGljaCBpbXBsZW1lbnRzIHRoaXMgcHJvdG9jb2wuCisgIHNlbGYucG9z
dFRvV29ya2VyQW5kV2FpdCA9ICh3b3JrZXIsIGRhdGEpID0+IHsKKyAgICByZXR1cm4gbmV3IFBy
b21pc2UocmVzb2x2ZSA9PiB7CisgICAgICBkYXRhLnJxaWQgPSBuZXh0X3JlcXVlc3RfaWQrKzsK
KyAgICAgIHdvcmtlci5wb3N0TWVzc2FnZShkYXRhKTsKKyAgICAgIGNvbnN0IGxpc3RlbmVyID0g
ZXZlbnQgPT4geworICAgICAgICBpZiAoZXZlbnQuZGF0YS5ycWlkICE9PSBkYXRhLnJxaWQpCisg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB3b3JrZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVz
c2FnZScsIGxpc3RlbmVyKTsKKyAgICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICAgIH07
CisgICAgICB3b3JrZXIuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyKTsKKyAg
ICB9KTsKKyAgfTsKKworICAvKioKKyAgICogUmVxdWVzdCBhIGxvY2sgYW5kIGhvbGQgaXQgdW50
aWwgdGhlIHN1YnRlc3QgZW5kcy4KKyAgICogQHBhcmFtIHsqfSB0IHRlc3QgcnVubmVyIG9iamVj
dAorICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBsb2NrIG5hbWUKKyAgICogQHBhcmFtIHtMb2Nr
T3B0aW9ucz19IG9wdGlvbnMgbG9jayBvcHRpb25zCisgICAqIEByZXR1cm5zCisgICAqLworICBz
ZWxmLnJlcXVlc3RMb2NrQW5kSG9sZCA9ICh0LCBuYW1lLCBvcHRpb25zID0ge30pID0+IHsKKyAg
ICByZXR1cm4gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QobmFtZSwgb3B0aW9ucywgKCkgPT4gewor
ICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4gdC5hZGRfY2xlYW51cChyZXNvbHZl
KSk7CisgICAgfSk7CisgIH07CisKKyAgc2VsZi5tYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jID0g
KCkgPT4geworICAgIGxldCByZXNvbHZlOworICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlz
ZShyID0+IHsgcmVzb2x2ZSA9IHI7IH0pOworICAgIHJldHVybiBbcHJvbWlzZSwgcmVzb2x2ZV07
CisgIH07CisKK30pKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvaWZyYW1lLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMv
aWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmE2M2M3N2JhZTUwZDdlNjFiYjFjMDcxNzk5YWEyMzVh
YzE4MzZjMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy9pZnJhbWUuaHRtbApAQCAtMCwwICsx
LDUyIEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5IZWxwZXIgSUZyYW1lPC90aXRsZT4KKzxz
Y3JpcHQ+CisndXNlIHN0cmljdCc7CisKKy8vIE1hcCBvZiBsb2NrX2lkID0+IGZ1bmN0aW9uIHRo
YXQgcmVsZWFzZXMgYSBsb2NrLgorCitjb25zdCBoZWxkID0gbmV3IE1hcCgpOworbGV0IG5leHRf
bG9ja19pZCA9IDE7CisKK3NlbGYuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGUgPT4gewor
ICBmdW5jdGlvbiByZXNwb25kKGRhdGEpIHsKKyAgICBwYXJlbnQucG9zdE1lc3NhZ2UoT2JqZWN0
LmFzc2lnbihkYXRhLCB7cnFpZDogZS5kYXRhLnJxaWR9KSwgJyonKTsKKyAgfQorCisgIHN3aXRj
aCAoZS5kYXRhLm9wKSB7CisgICAgY2FzZSAncmVxdWVzdCc6CisgICAgICBuYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCgKKyAgICAgICAgZS5kYXRhLm5hbWUsIHsKKyAgICAgICAgICBtb2RlOiBlLmRh
dGEubW9kZSB8fCAnZXhjbHVzaXZlJywKKyAgICAgICAgICBpZkF2YWlsYWJsZTogZS5kYXRhLmlm
QXZhaWxhYmxlIHx8IGZhbHNlCisgICAgICAgIH0sIGxvY2sgPT4geworICAgICAgICAgIGlmIChs
b2NrID09PSBudWxsKSB7CisgICAgICAgICAgICByZXNwb25kKHthY2s6ICdyZXF1ZXN0JywgZmFp
bGVkOiB0cnVlfSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfQorICAgICAgICAg
IGxldCBsb2NrX2lkID0gbmV4dF9sb2NrX2lkKys7CisgICAgICAgICAgbGV0IHJlbGVhc2U7Cisg
ICAgICAgICAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlKHIgPT4geyByZWxlYXNlID0gcjsg
fSk7CisgICAgICAgICAgaGVsZC5zZXQobG9ja19pZCwgcmVsZWFzZSk7CisgICAgICAgICAgcmVz
cG9uZCh7YWNrOiAncmVxdWVzdCcsIGxvY2tfaWQ6IGxvY2tfaWR9KTsKKyAgICAgICAgICByZXR1
cm4gcHJvbWlzZQorICAgICAgICB9KTsKKyAgICAgIGJyZWFrOworCisgICAgY2FzZSAncmVsZWFz
ZSc6CisgICAgICBoZWxkLmdldChlLmRhdGEubG9ja19pZCkoKTsKKyAgICAgIGhlbGQuZGVsZXRl
KGUuZGF0YS5sb2NrX2lkKTsKKyAgICAgIHJlc3BvbmQoe2FjazogJ3JlbGVhc2UnLCBsb2NrX2lk
OiBlLmRhdGEubG9ja19pZH0pOworICAgICAgYnJlYWs7CisKKyAgICBjYXNlICdjbGllbnRfaWQn
OgorICAgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoZS5kYXRhLm5hbWUsIGFzeW5jIGxvY2sg
PT4geworICAgICAgICBjb25zdCBsb2NrX3N0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1
ZXJ5KCk7CisgICAgICAgIGNvbnN0IGhlbGRfbG9jayA9CisgICAgICAgICAgICBsb2NrX3N0YXRl
LmhlbGQuZmlsdGVyKGwgPT4gbC5uYW1lID09PSBsb2NrLm5hbWUpWzBdOworICAgICAgICByZXNw
b25kKHthY2s6ICdjbGllbnRfaWQnLCBjbGllbnRfaWQ6IGhlbGRfbG9jay5jbGllbnRJZH0pOwor
ICAgICAgfSk7CisgICAgICBicmVhazsKKyAgfQorfSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jl
c291cmNlcy9zZXJ2aWNlLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy9zZXJ2aWNlLXdvcmtlci5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wMjc4NjNlMzNlMDQ1NzQ0OTE3M2U4MmJjOTQyYzNhZTIyNzY0ZWVlCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvcmVzb3VyY2VzL3NlcnZpY2Utd29ya2VyLmpzCkBAIC0wLDAgKzEsNyBAQAorLy8g
UmVzcG9uZHMgdG8gJy9jbGllbnRJZCcgd2l0aCB0aGUgcmVxdWVzdCdzIGNsaWVudElkLgorc2Vs
Zi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGUgPT4geworICBpZiAobmV3IFVSTChlLnJlcXVl
c3QudXJsKS5wYXRobmFtZSA9PT0gJy9jbGllbnRJZCcpIHsKKyAgICBlLnJlc3BvbmRXaXRoKG5l
dyBSZXNwb25zZShKU09OLnN0cmluZ2lmeSh7Y2xpZW50SWQ6IGUuY2xpZW50SWR9KSkpOworICAg
IHJldHVybjsKKyAgfQorfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvc3ctY29udHJvbGxlZC1pZnJh
bWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL3Jlc291cmNlcy9zdy1jb250cm9sbGVkLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJj
NWM5YmRiODM4MjU3Y2I2OGUyYWRiMDQwMDk3NWZhNjhiZGYzMGYKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9y
ZXNvdXJjZXMvc3ctY29udHJvbGxlZC1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+aWZyYW1lIHVzZWQgaW4g
Y2xpZW50SWQgdGVzdDwvdGl0bGU+Cis8c2NyaXB0PgorCitzZWxmLm9ubWVzc2FnZSA9IGFzeW5j
IGV2ZW50ID0+IHsKKyAgdHJ5IHsKKyAgICBpZiAoZXZlbnQuZGF0YSA9PT0gJ2dldF9zd19jbGll
bnRfaWQnKSB7CisgICAgICAvLyBVc2UgdGhlIGNvbnRyb2xsaW5nIHNlcnZpY2Ugd29ya2VyIHRv
IGRldGVybWluZQorICAgICAgLy8gdGhpcyBjbGllbnQncyBpZCBhY2NvcmRpbmcgdG8gdGhlIFNl
cnZpY2UgV29ya2VyLgorICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2NsaWVu
dElkJyk7CisgICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpOworICAgICAg
d2luZG93LnBhcmVudC5wb3N0TWVzc2FnZShkYXRhLmNsaWVudElkLCAnKicpOworICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIGlmIChldmVudC5kYXRhID09PSAnZ2V0X2xvY2tfY2xpZW50X2lk
JykgeworICAgICAgLy8gR3JhYiBhIGxvY2ssIHRoZW4gcXVlcnkgdGhlIGxvY2sgbWFuYWdlciBm
b3Igc3RhdGUgdG8KKyAgICAgIC8vIGRldGVybWluZSB0aGlzIGNsaWVudCdzIGlkIGFjY29yZGlu
ZyB0byB0aGUgbG9jayBtYW5hZ2VyLgorICAgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QoJ2xvY2stbmFtZScsIGFzeW5jIGxvY2sgPT4geworICAgICAgICBjb25zdCBsb2NrX3N0YXRl
ID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICAgIGNvbnN0IGhlbGRfbG9j
ayA9IGxvY2tfc3RhdGUuaGVsZC5maWx0ZXIobCA9PiBsLm5hbWUgPT09IGxvY2submFtZSlbMF07
CisgICAgICAgIHdpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoaGVsZF9sb2NrLmNsaWVudElkLCAn
KicpOworICAgICAgfSk7CisgICAgICByZXR1cm47CisgICAgfQorCisgICAgd2luZG93LnBhcmVu
dC5wb3N0TWVzc2FnZShgdW5rbm93biByZXF1ZXN0OiAke2V2ZW50LmRhdGF9YCwgJyonKTsKKyAg
fSBjYXRjaCAoZXgpIHsKKyAgICAvLyBJbiBjYXNlIG9mIHRlc3QgZmFpbHVyZSwgZG9uJ3QgbGVh
dmUgcGFyZW50IHdpbmRvdyBoYW5naW5nLgorICAgIHdpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2Uo
YCR7ZXgubmFtZX06ICR7ZXgubWVzc2FnZX1gLCAnKicpOworICB9Cit9OworCis8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL3Jlc291cmNlcy93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy93M2MtaW1wb3J0Lmxv
ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5jMzg0Y2M3OGZlOWEyZTUxN2EzMWY4MzQwMzgyNTNlMjRhZjZmN2U2Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3czYy1pbXBvcnQubG9nCkBAIC0wLDAgKzEsMjEgQEAK
K1RoZSB0ZXN0cyBpbiB0aGlzIGRpcmVjdG9yeSB3ZXJlIGltcG9ydGVkIGZyb20gdGhlIFczQyBy
ZXBvc2l0b3J5LgorRG8gTk9UIG1vZGlmeSB0aGVzZSB0ZXN0cyBkaXJlY3RseSBpbiBXZWJLaXQu
CitJbnN0ZWFkLCBjcmVhdGUgYSBwdWxsIHJlcXVlc3Qgb24gdGhlIFdQVCBnaXRodWI6CisJaHR0
cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQKKworVGhlbiBydW4gdGhlIFRv
b2xzL1NjcmlwdHMvaW1wb3J0LXczYy10ZXN0cyBpbiBXZWJLaXQgdG8gcmVpbXBvcnQKKworRG8g
Tk9UIG1vZGlmeSBvciByZW1vdmUgdGhpcyBmaWxlLgorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK1Byb3Bl
cnRpZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoKK05vbmUKK1Byb3BlcnR5IHZhbHVlcyBy
ZXF1aXJpbmcgdmVuZG9yIHByZWZpeGVzOgorTm9uZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitMaXN0IG9m
IGZpbGVzOgorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL3Jlc291cmNlcy9oZWxwZXJzLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL2lmcmFtZS5odG1sCisvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2Vz
L3NlcnZpY2Utd29ya2VyLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3N3LWNvbnRyb2xsZWQtaWZyYW1lLmh0bWwKKy9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNv
dXJjZXMvd29ya2VyLmpzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvd29ya2VyLmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3dv
cmtlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45YmI1ZDNkNmFhZDE4NTY3ZWQwNTQ0ZWFjNjE0MTI1ZTgzNjRm
MzEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3dvcmtlci5qcwpAQCAtMCwwICsxLDM5IEBA
CisndXNlIHN0cmljdCc7CisKKy8vIE1hcCBvZiBpZCA9PiBmdW5jdGlvbiB0aGF0IHJlbGVhc2Vz
IGEgbG9jay4KKworY29uc3QgaGVsZCA9IG5ldyBNYXAoKTsKK2xldCBuZXh0X2xvY2tfaWQgPSAx
OworCitzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBlID0+IHsKKyAgZnVuY3Rpb24g
cmVzcG9uZChkYXRhKSB7CisgICAgc2VsZi5wb3N0TWVzc2FnZShPYmplY3QuYXNzaWduKGRhdGEs
IHtycWlkOiBlLmRhdGEucnFpZH0pKTsKKyAgfQorCisgIHN3aXRjaCAoZS5kYXRhLm9wKSB7Cisg
IGNhc2UgJ3JlcXVlc3QnOgorICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgICAgZS5k
YXRhLm5hbWUsIHsKKyAgICAgICAgbW9kZTogZS5kYXRhLm1vZGUgfHwgJ2V4Y2x1c2l2ZScsCisg
ICAgICAgIGlmQXZhaWxhYmxlOiBlLmRhdGEuaWZBdmFpbGFibGUgfHwgZmFsc2UKKyAgICAgIH0s
IGxvY2sgPT4geworICAgICAgICBpZiAobG9jayA9PT0gbnVsbCkgeworICAgICAgICAgIHJlc3Bv
bmQoe2FjazogJ3JlcXVlc3QnLCBmYWlsZWQ6IHRydWV9KTsKKyAgICAgICAgICByZXR1cm47Cisg
ICAgICAgIH0KKyAgICAgICAgbGV0IGxvY2tfaWQgPSBuZXh0X2xvY2tfaWQrKzsKKyAgICAgICAg
bGV0IHJlbGVhc2U7CisgICAgICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHsg
cmVsZWFzZSA9IHI7IH0pOworICAgICAgICBoZWxkLnNldChsb2NrX2lkLCByZWxlYXNlKTsKKyAg
ICAgICAgcmVzcG9uZCh7YWNrOiAncmVxdWVzdCcsIGxvY2tfaWQ6IGxvY2tfaWR9KTsKKyAgICAg
ICAgcmV0dXJuIHByb21pc2U7CisgICAgICB9KTsKKyAgICBicmVhazsKKworICBjYXNlICdyZWxl
YXNlJzoKKyAgICBoZWxkLmdldChlLmRhdGEubG9ja19pZCkoKTsKKyAgICBoZWxkLmRlbGV0ZShl
LmRhdGEubG9ja19pZCk7CisgICAgcmVzcG9uZCh7YWNrOiAncmVsZWFzZScsIGxvY2tfaWQ6IGUu
ZGF0YS5sb2NrX2lkfSk7CisgICAgYnJlYWs7CisgIH0KK30pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNv
bnRleHQudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zZWN1cmUtY29udGV4dC50ZW50
YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZTEzNjcwOTFlNWNjNjAy
ZDY0MmNhMzFiNDk4ZjYzMTBlNmRhM2E0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQu
dGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwg
QVBJIHByZXNlbmNlIGluIHNlY3VyZSBjb250ZXh0cyBhc3NlcnRfaWRsX2F0dHJpYnV0ZTogbmF2
aWdhdG9yLmxvY2tzIGV4aXN0cyBpbiBzZWN1cmUgY29udGV4dCBwcm9wZXJ0eSAibG9ja3MiIG5v
dCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVu
dGF0aXZlLmh0dHBzLmFueS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwK
QEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0
IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBz
LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MjlhZTdhZWE0NzVmMmRiMTY5NzE4NTA3NDMxYWRiNGM2ZmY3OGVlYgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKQEAgLTAsMCArMSwxNCBAQAor
Ly8gTUVUQTogdGl0bGU9V2ViIExvY2tzIEFQSTogQVBJIHJlcXVpcmVzIHNlY3VyZSBjb250ZXh0
CisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3b3JrZXIsc2Vy
dmljZXdvcmtlcgorCisndXNlIHN0cmljdCc7CisKK3Rlc3QodCA9PiB7CisgIGFzc2VydF90cnVl
KHNlbGYuaXNTZWN1cmVDb250ZXh0KTsKKyAgYXNzZXJ0X2lkbF9hdHRyaWJ1dGUobmF2aWdhdG9y
LCAnbG9ja3MnLAorICAgICAgICAgICAgICAgICAgICAgICAnbmF2aWdhdG9yLmxvY2tzIGV4aXN0
cyBpbiBzZWN1cmUgY29udGV4dCcpOworICBhc3NlcnRfdHJ1ZSgnTG9ja01hbmFnZXInIGluIHNl
bGYsCisgICAgICAgICAgICAgICdMb2NrTWFuYWdlciBpcyBwcmVzZW50IGluIHNlY3VyZSBjb250
ZXh0cycpOworICBhc3NlcnRfdHJ1ZSgnTG9jaycgaW4gc2VsZiwKKyAgICAgICAgICAgICAgJ0xv
Y2sgaW50ZXJmYWNlIGlzIHByZXNlbnQgaW4gc2VjdXJlIGNvbnRleHRzJyk7Cit9LCAnQVBJIHBy
ZXNlbmNlIGluIHNlY3VyZSBjb250ZXh0cycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVu
dGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0
LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uN2UxMzY3MDkxZTVjYzYwMmQ2NDJjYTMxYjQ5OGY2MzEwZTZkYTNhNAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgQVBJIHByZXNlbmNlIGluIHNlY3VyZSBj
b250ZXh0cyBhc3NlcnRfaWRsX2F0dHJpYnV0ZTogbmF2aWdhdG9yLmxvY2tzIGV4aXN0cyBpbiBz
ZWN1cmUgY29udGV4dCBwcm9wZXJ0eSAibG9ja3MiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hh
aW4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNl
d29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3Jr
ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0
OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5z
ZXJ2aWNld29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWly
ZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRl
c3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRl
eHQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQu
dGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdlMTM2
NzA5MWU1Y2M2MDJkNjQyY2EzMWI0OThmNjMxMGU2ZGEzYTQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zZWN1
cmUtY29udGV4dC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwzIEBACisKK0ZBSUwgQVBJIHByZXNlbmNlIGluIHNlY3VyZSBjb250ZXh0cyBhc3NlcnRf
aWRsX2F0dHJpYnV0ZTogbmF2aWdhdG9yLmxvY2tzIGV4aXN0cyBpbiBzZWN1cmUgY29udGV4dCBw
cm9wZXJ0eSAibG9ja3MiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
c2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250
ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1j
b250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEt
LSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRv
IHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRl
bnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5OGE4OTIwYWE0ZDYw
ZDBmZjU2Yzk1M2Q5ZTExOTAzYTQ3MTU4ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0
aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitGQUlMIFRoZSBz
aWduYWwgb3B0aW9uIG11c3QgYmUgYW4gQWJvcnRTaWduYWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgUGFzc2luZyBhbiBhbHJlYWR5IGFib3J0ZWQgc2lnbmFsIGFib3J0cyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorRkFJTCBBbiBhYm9ydGVkIHJlcXVlc3QgcmVzdWx0cyBpbiBBYm9ydEVycm9yIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCitGQUlMIEFib3J0IGFmdGVyIGEgdGltZW91dCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcp
IgorRkFJTCBTaWduYWwgdGhhdCBpcyBub3QgYWJvcnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBTeW5jaHJvbm91c2x5IHNpZ25hbGVkIGFib3J0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFi
b3J0IHNpZ25hbGVkIGFmdGVyIGxvY2sgZ3JhbnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBB
Ym9ydCBzaWduYWxlZCBhZnRlciBsb2NrIHJlbGVhc2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlM
IEFib3J0IHNob3VsZCBwcm9jZXNzIHRoZSBuZXh0IHBlbmRpbmcgbG9jayByZXF1ZXN0IHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9z
aWduYWwudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkz
YjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0
aXZlLmh0dHBzLmFueS5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVp
cmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0
ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50
YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYzQ1MDlkZTYzN2I4MWY1NWEzYmMyOWE3NWY0YjM4MWI5M2YxMWI3YgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsMjA4IEBACisvLyBN
RVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBBYm9ydFNpZ25hbCBpbnRlZ3JhdGlvbgorLy8gTUVU
QTogc2NyaXB0PXJlc291cmNlcy9oZWxwZXJzLmpzCisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRl
ZGljYXRlZHdvcmtlcixzaGFyZWR3b3JrZXIsc2VydmljZXdvcmtlcgorCisndXNlIHN0cmljdCc7
CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0
KTsKKworICAvLyBUaGVzZSBjYXNlcyBzaG91bGQgbm90IHdvcms6CisgIGZvciAoY29uc3Qgc2ln
bmFsIG9mIFsnc3RyaW5nJywgMTIuMzQsIGZhbHNlLCB7fSwgU3ltYm9sKCksICgpID0+IHt9LCBz
ZWxmXSkgeworICAgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICAgIHQsIFR5cGVFcnJv
ciwKKyAgICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgICAgICByZXMsIHtzaWduYWx9
LCB0LnVucmVhY2hlZF9mdW5jKCdjYWxsYmFjayBzaG91bGQgbm90IHJ1bicpKSwKKyAgICAgICdC
aW5kaW5ncyBzaG91bGQgdGhyb3cgaWYgdGhlIHNpZ25hbCBvcHRpb24gaXMgYSBub3QgYW4gQWJv
cnRTaWduYWwnKTsKKyAgfQorfSwgJ1RoZSBzaWduYWwgb3B0aW9uIG11c3QgYmUgYW4gQWJvcnRT
aWduYWwnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlx
dWVOYW1lKHQpOworICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpOwor
ICBjb250cm9sbGVyLmFib3J0KCk7CisKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2RvbSgKKyAg
ICB0LCAnQWJvcnRFcnJvcicsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7c2ln
bmFsOiBjb250cm9sbGVyLnNpZ25hbH0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdC51
bnJlYWNoZWRfZnVuYygnY2FsbGJhY2sgc2hvdWxkIG5vdCBydW4nKSksCisgICAgJ1JlcXVlc3Qg
c2hvdWxkIHJlamVjdCB3aXRoIEFib3J0RXJyb3InKTsKK30sICdQYXNzaW5nIGFuIGFscmVhZHkg
YWJvcnRlZCBzaWduYWwgYWJvcnRzJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAg
Y29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICAvLyBHcmFiIGEgbG9jayBhbmQgaG9sZCBp
dCB1bnRpbCB0aGlzIHN1YnRlc3QgY29tcGxldGVzLgorICByZXF1ZXN0TG9ja0FuZEhvbGQodCwg
cmVzKTsKKworICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpOworCisg
IGNvbnN0IHByb21pc2UgPQorICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge3NpZ25h
bDogY29udHJvbGxlci5zaWduYWx9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQudW5y
ZWFjaGVkX2Z1bmMoJ2NhbGxiYWNrIHNob3VsZCBub3QgcnVuJykpOworCisgIC8vIFZlcmlmeSB0
aGUgcmVxdWVzdCBpcyBlbnF1ZXVlZDoKKyAgY29uc3Qgc3RhdGUgPSBhd2FpdCBuYXZpZ2F0b3Iu
bG9ja3MucXVlcnkoKTsKKyAgYXNzZXJ0X2VxdWFscyhzdGF0ZS5oZWxkLmZpbHRlcihsb2NrID0+
IGxvY2submFtZSA9PT0gcmVzKS5sZW5ndGgsIDEsCisgICAgICAgICAgICAgICAgJ051bWJlciBv
ZiBoZWxkIGxvY2tzJyk7CisgIGFzc2VydF9lcXVhbHMoc3RhdGUucGVuZGluZy5maWx0ZXIobG9j
ayA9PiBsb2NrLm5hbWUgPT09IHJlcykubGVuZ3RoLCAxLAorICAgICAgICAgICAgICAgICdOdW1i
ZXIgb2YgcGVuZGluZyBsb2NrcycpOworCisgIGNvbnN0IHJlamVjdGVkID0gcHJvbWlzZV9yZWpl
Y3RzX2RvbSgKKyAgICB0LCAnQWJvcnRFcnJvcicsIHByb21pc2UsICdSZXF1ZXN0IHNob3VsZCBy
ZWplY3Qgd2l0aCBBYm9ydEVycm9yJyk7CisKKyAgY29udHJvbGxlci5hYm9ydCgpOworCisgIGF3
YWl0IHJlamVjdGVkOworCit9LCAnQW4gYWJvcnRlZCByZXF1ZXN0IHJlc3VsdHMgaW4gQWJvcnRF
cnJvcicpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1
ZU5hbWUodCk7CisKKyAgLy8gR3JhYiBhIGxvY2sgYW5kIGhvbGQgaXQgdW50aWwgdGhpcyBzdWJ0
ZXN0IGNvbXBsZXRlcy4KKyAgcmVxdWVzdExvY2tBbmRIb2xkKHQsIHJlcyk7CisKKyAgY29uc3Qg
Y29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTsKKworICBjb25zdCBwcm9taXNlID0K
KyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtzaWduYWw6IGNvbnRyb2xsZXIuc2ln
bmFsfSwgbG9jayA9PiB7fSk7CisKKyAgLy8gVmVyaWZ5IHRoZSByZXF1ZXN0IGlzIGVucXVldWVk
OgorICBjb25zdCBzdGF0ZSA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3Nl
cnRfZXF1YWxzKHN0YXRlLmhlbGQuZmlsdGVyKGxvY2sgPT4gbG9jay5uYW1lID09PSByZXMpLmxl
bmd0aCwgMSwKKyAgICAgICAgICAgICAgICAnTnVtYmVyIG9mIGhlbGQgbG9ja3MnKTsKKyAgYXNz
ZXJ0X2VxdWFscyhzdGF0ZS5wZW5kaW5nLmZpbHRlcihsb2NrID0+IGxvY2submFtZSA9PT0gcmVz
KS5sZW5ndGgsIDEsCisgICAgICAgICAgICAgICAgJ051bWJlciBvZiBwZW5kaW5nIGxvY2tzJyk7
CisKKyAgY29uc3QgcmVqZWN0ZWQgPSBwcm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdBYm9y
dEVycm9yJywgcHJvbWlzZSwgJ1JlcXVlc3Qgc2hvdWxkIHJlamVjdCB3aXRoIEFib3J0RXJyb3In
KTsKKworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIHQuc3RlcF90aW1lb3V0KCgp
ID0+IHsKKyAgICBjYWxsYmFja19jYWxsZWQgPSB0cnVlOworICAgIGNvbnRyb2xsZXIuYWJvcnQo
KTsKKyAgfSwgMTApOworCisgIGF3YWl0IHJlamVjdGVkOworICBhc3NlcnRfdHJ1ZShjYWxsYmFj
a19jYWxsZWQsICd0aW1lb3V0IHNob3VsZCBoYXZlIGNhdXNlZCB0aGUgYWJvcnQnKTsKKworfSwg
J0Fib3J0IGFmdGVyIGEgdGltZW91dCcpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Cisg
IGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisKKyAgY29uc3QgY29udHJvbGxlciA9IG5ldyBB
Ym9ydENvbnRyb2xsZXIoKTsKKworICBsZXQgZ290X2xvY2sgPSBmYWxzZTsKKyAgYXdhaXQgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QoCisgICAgcmVzLCB7c2lnbmFsOiBjb250cm9sbGVyLnNpZ25h
bH0sIGFzeW5jIGxvY2sgPT4geyBnb3RfbG9jayA9IHRydWU7IH0pOworCisgIGFzc2VydF90cnVl
KGdvdF9sb2NrLCAnTG9jayBzaG91bGQgYmUgYWNxdWlyZWQgaWYgYWJvcnQgaXMgbm90IHNpZ25h
bGVkLicpOworCit9LCAnU2lnbmFsIHRoYXQgaXMgbm90IGFib3J0ZWQnKTsKKworcHJvbWlzZV90
ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0
IGNvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7CisKKyAgbGV0IGdvdF9sb2NrID0g
ZmFsc2U7CisgIGNvbnN0IHAgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIHtz
aWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsfSwgbG9jayA9PiB7IGdvdF9sb2NrID0gdHJ1ZTsgfSk7
CisKKyAgLy8gRXZlbiB0aG91Z2ggbG9jayBpcyBncmFudGFibGUsIHRoaXMgYWJvcnQgc2hvdWxk
IGJlIHByb2Nlc3NlZCBzeW5jaHJvbm91c2x5LgorICBjb250cm9sbGVyLmFib3J0KCk7CisKKyAg
YXdhaXQgcHJvbWlzZV9yZWplY3RzX2RvbSh0LCAnQWJvcnRFcnJvcicsIHAsICdSZXF1ZXN0IHNo
b3VsZCBhYm9ydCcpOworCisgIGFzc2VydF9mYWxzZShnb3RfbG9jaywgJ1JlcXVlc3Qgc2hvdWxk
IGJlIGFib3J0ZWQgaWYgc2lnbmFsIGlzIHN5bmNocm9ub3VzJyk7CisKKyAgYXdhaXQgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QocmVzLCBsb2NrID0+IHsgZ290X2xvY2sgPSB0cnVlOyB9KTsKKyAg
YXNzZXJ0X3RydWUoZ290X2xvY2ssICdTdWJzZXF1ZW50IHJlcXVlc3Qgc2hvdWxkIG5vdCBiZSBi
bG9ja2VkJyk7CisKK30sICdTeW5jaHJvbm91c2x5IHNpZ25hbGVkIGFib3J0Jyk7CisKK3Byb21p
c2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBj
b25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpOworCisgIC8vIE1ha2UgYSBw
cm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgbG9jayBpcyBhY3F1aXJlZC4KKyAgY29uc3Qg
W2FjcXVpcmVkX3Byb21pc2UsIGFjcXVpcmVkX2Z1bmNdID0gbWFrZVByb21pc2VBbmRSZXNvbHZl
RnVuYygpOworCisgIC8vIFJlcXVlc3QgdGhlIGxvY2suCisgIGxldCByZWxlYXNlX2Z1bmM7Cisg
IGNvbnN0IHJlbGVhc2VkX3Byb21pc2UgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICBy
ZXMsIHtzaWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsfSwgbG9jayA9PiB7CisgICAgICBhY3F1aXJl
ZF9mdW5jKCk7CisKKyAgICAgIC8vIEhvbGQgbG9jayB1bnRpbCByZWxlYXNlX2Z1bmMgaXMgY2Fs
bGVkLgorICAgICAgY29uc3QgW3dhaXRpbmdfcHJvbWlzZSwgd2FpdGluZ19mdW5jXSA9IG1ha2VQ
cm9taXNlQW5kUmVzb2x2ZUZ1bmMoKTsKKyAgICAgIHJlbGVhc2VfZnVuYyA9IHdhaXRpbmdfZnVu
YzsKKyAgICAgIHJldHVybiB3YWl0aW5nX3Byb21pc2U7CisgICAgfSk7CisKKyAgLy8gV2FpdCBm
b3IgdGhlIGxvY2sgdG8gYmUgYWNxdWlyZWQuCisgIGF3YWl0IGFjcXVpcmVkX3Byb21pc2U7CisK
KyAgLy8gU2lnbmFsIGFuIGFib3J0LgorICBjb250cm9sbGVyLmFib3J0KCk7CisKKyAgLy8gUmVs
ZWFzZSB0aGUgbG9jay4KKyAgcmVsZWFzZV9mdW5jKCdyZXNvbHZlZCBvaycpOworCisgIGFzc2Vy
dF9lcXVhbHMoYXdhaXQgcmVsZWFzZWRfcHJvbWlzZSwgJ3Jlc29sdmVkIG9rJywKKyAgICAgICAg
ICAgICAgICAnTG9jayByZWxlYXNlZCBwcm9taXNlIHNob3VsZCBub3QgcmVqZWN0Jyk7CisKK30s
ICdBYm9ydCBzaWduYWxlZCBhZnRlciBsb2NrIGdyYW50ZWQnKTsKKworcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGNvbnRy
b2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7CisKKyAgLy8gTWFrZSBhIHByb21pc2UgdGhh
dCByZXNvbHZlcyB3aGVuIHRoZSBsb2NrIGlzIGFjcXVpcmVkLgorICBjb25zdCBbYWNxdWlyZWRf
cHJvbWlzZSwgYWNxdWlyZWRfZnVuY10gPSBtYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jKCk7CisK
KyAgLy8gUmVxdWVzdCB0aGUgbG9jay4KKyAgbGV0IHJlbGVhc2VfZnVuYzsKKyAgY29uc3QgcmVs
ZWFzZWRfcHJvbWlzZSA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge3NpZ25h
bDogY29udHJvbGxlci5zaWduYWx9LCBsb2NrID0+IHsKKyAgICAgIGFjcXVpcmVkX2Z1bmMoKTsK
KworICAgICAgLy8gSG9sZCBsb2NrIHVudGlsIHJlbGVhc2VfZnVuYyBpcyBjYWxsZWQuCisgICAg
ICBjb25zdCBbd2FpdGluZ19wcm9taXNlLCB3YWl0aW5nX2Z1bmNdID0gbWFrZVByb21pc2VBbmRS
ZXNvbHZlRnVuYygpOworICAgICAgcmVsZWFzZV9mdW5jID0gd2FpdGluZ19mdW5jOworICAgICAg
cmV0dXJuIHdhaXRpbmdfcHJvbWlzZTsKKyAgICB9KTsKKworICAvLyBXYWl0IGZvciB0aGUgbG9j
ayB0byBiZSBhY3F1aXJlZC4KKyAgYXdhaXQgYWNxdWlyZWRfcHJvbWlzZTsKKworICAvLyBSZWxl
YXNlIHRoZSBsb2NrLgorICByZWxlYXNlX2Z1bmMoJ3Jlc29sdmVkIG9rJyk7CisKKyAgLy8gU2ln
bmFsIGFuIGFib3J0LgorICBjb250cm9sbGVyLmFib3J0KCk7CisKKyAgYXNzZXJ0X2VxdWFscyhh
d2FpdCByZWxlYXNlZF9wcm9taXNlLCAncmVzb2x2ZWQgb2snLAorICAgICAgICAgICAgICAgICdM
b2NrIHJlbGVhc2VkIHByb21pc2Ugc2hvdWxkIG5vdCByZWplY3QnKTsKKworfSwgJ0Fib3J0IHNp
Z25hbGVkIGFmdGVyIGxvY2sgcmVsZWFzZWQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4g
eworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGNvbnRyb2xsZXIgPSBu
ZXcgQWJvcnRDb250cm9sbGVyKCk7CisgIGNvbnN0IGZpcnN0ID0gcmVxdWVzdExvY2tBbmRIb2xk
KHQsIHJlcywgeyBzaWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsIH0pOworICBjb25zdCBuZXh0ID0g
bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCAoKSA9PiAicmVzb2x2ZWQiKTsKKyAgY29udHJv
bGxlci5hYm9ydCgpOworCisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19kb20odCwgIkFib3J0RXJy
b3IiLCBmaXJzdCwgIlJlcXVlc3Qgc2hvdWxkIGFib3J0Iik7CisgIGFzc2VydF9lcXVhbHMoCisg
ICAgYXdhaXQgbmV4dCwKKyAgICAicmVzb2x2ZWQiLAorICAgICJUaGUgbmV4dCByZXF1ZXN0IGlz
IHByb2Nlc3NlZCBhZnRlciBhYm9ydCIKKyAgKTsKK30sICJBYm9ydCBzaG91bGQgcHJvY2VzcyB0
aGUgbmV4dCBwZW5kaW5nIGxvY2sgcmVxdWVzdCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2
ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kOThhODkyMGFh
NGQ2MGQwZmY1NmM5NTNkOWUxMTkwM2E0NzE1OGQwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRl
bnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MSBAQAorCitGQUlMIFRoZSBzaWduYWwgb3B0aW9uIG11c3QgYmUgYW4gQWJvcnRTaWduYWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QnKSIKK0ZBSUwgUGFzc2luZyBhbiBhbHJlYWR5IGFib3J0ZWQgc2lnbmFsIGFi
b3J0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBbiBhYm9ydGVkIHJlcXVlc3QgcmVzdWx0cyBp
biBBYm9ydEVycm9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFib3J0IGFmdGVyIGEgdGltZW91
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBTaWduYWwgdGhhdCBpcyBub3QgYWJvcnRlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCcpIgorRkFJTCBTeW5jaHJvbm91c2x5IHNpZ25hbGVkIGFib3J0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIEFib3J0IHNpZ25hbGVkIGFmdGVyIGxvY2sgZ3JhbnRlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBBYm9ydCBzaWduYWxlZCBhZnRlciBsb2NrIHJlbGVhc2VkIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCitGQUlMIEFib3J0IHNob3VsZCBwcm9jZXNzIHRoZSBuZXh0IHBlbmRpbmcg
bG9jayByZXF1ZXN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRp
dmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYw
YTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5h
bnkuc2VydmljZXdvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJl
cXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRl
ZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50
ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0
dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5OGE4OTIwYWE0ZDYwZDBm
ZjU2Yzk1M2Q5ZTExOTAzYTQ3MTU4ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZl
Lmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworRkFJTCBU
aGUgc2lnbmFsIG9wdGlvbiBtdXN0IGJlIGFuIEFib3J0U2lnbmFsIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIFBhc3NpbmcgYW4gYWxyZWFkeSBhYm9ydGVkIHNpZ25hbCBhYm9ydHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1
bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJl
cXVlc3QnKSIKK0ZBSUwgQW4gYWJvcnRlZCByZXF1ZXN0IHJlc3VsdHMgaW4gQWJvcnRFcnJvciBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCcpIgorRkFJTCBBYm9ydCBhZnRlciBhIHRpbWVvdXQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QnKSIKK0ZBSUwgU2lnbmFsIHRoYXQgaXMgbm90IGFib3J0ZWQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIK
K0ZBSUwgU3luY2hyb25vdXNseSBzaWduYWxlZCBhYm9ydCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBBYm9ydCBzaWduYWxlZCBhZnRlciBsb2NrIGdyYW50ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgQWJvcnQgc2lnbmFsZWQgYWZ0ZXIgbG9jayByZWxlYXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
RkFJTCBBYm9ydCBzaG91bGQgcHJvY2VzcyB0aGUgbmV4dCBwZW5kaW5nIGxvY2sgcmVxdWVzdCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS53
b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBA
Cis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1
cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9zdGVhbC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFs
LnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5OGQzMjgwZWRj
YjgyNzI0MzZhNDRjNTliM2Y2MjU0OTg3NDM2NDYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zdGVhbC50ZW50
YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKKworRkFJTCBMb2Nr
IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIG5vdCBhdmFpbGFibGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QnKSIKK0ZBSUwgQnJva2VuIGxvY2sncyByZWxlYXNlIHByb21pc2UgcmVqZWN0
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXF1ZXN0ZWQgbG9jaydzIHJlbGVhc2UgcHJvbWlz
ZSBpcyBkZWZlcnJlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMYXN0IGNhbGxlciB3aW5zIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5
M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0
aXZlLmh0dHBzLmFueS5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVp
cmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0
ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRh
dGl2ZS5odHRwcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9zdGVhbC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmQxNjViOWQxNzlmYjE0YWM5ODQzNDAxZGI2YjhlZTA3Yzk0NzBhZmUKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9zdGVhbC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsOTEgQEAKKy8vIE1FVEE6
IHRpdGxlPVdlYiBMb2NrcyBBUEk6IHN0ZWFsIG9wdGlvbgorLy8gTUVUQTogc2NyaXB0PXJlc291
cmNlcy9oZWxwZXJzLmpzCisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRlZGljYXRlZHdvcmtlcixz
aGFyZWR3b3JrZXIsc2VydmljZXdvcmtlcgorCisndXNlIHN0cmljdCc7CisKK2NvbnN0IG5ldmVy
X3NldHRsZWQgPSBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgLyogbmV2ZXIgKi8gfSk7CisKK3By
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKyAg
bGV0IGNhbGxiYWNrX2NhbGxlZCA9IGZhbHNlOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdChyZXMsIHtzdGVhbDogdHJ1ZX0sIGxvY2sgPT4geworICAgIGNhbGxiYWNrX2NhbGxlZCA9
IHRydWU7CisgICAgYXNzZXJ0X25vdF9lcXVhbHMobG9jaywgbnVsbCwgJ0xvY2sgc2hvdWxkIGJl
IGdyYW50ZWQnKTsKKyAgfSk7CisgIGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ0NhbGxi
YWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdMb2NrIGF2YWlsYWJsZScpOworCitwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGxldCBj
YWxsYmFja19jYWxsZWQgPSBmYWxzZTsKKworICAvLyBHcmFiIGFuZCBob2xkIHRoZSBsb2NrLgor
ICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2sgPT4gbmV2ZXJfc2V0dGxlZCkuY2F0
Y2goXyA9PiB7fSk7CisKKyAgLy8gU3RlYWwgaXQuCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0KHJlcywge3N0ZWFsOiB0cnVlfSwgbG9jayA9PiB7CisgICAgY2FsbGJhY2tfY2FsbGVk
ID0gdHJ1ZTsKKyAgICBhc3NlcnRfbm90X2VxdWFscyhsb2NrLCBudWxsLCAnTG9jayBzaG91bGQg
YmUgZ3JhbnRlZCcpOworICB9KTsKKworICBhc3NlcnRfdHJ1ZShjYWxsYmFja19jYWxsZWQsICdD
YWxsYmFjayBzaG91bGQgYmUgY2FsbGVkJyk7Cit9LCAnTG9jayBub3QgYXZhaWxhYmxlJyk7CisK
K3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsK
KworICAvLyBHcmFiIGFuZCBob2xkIHRoZSBsb2NrLgorICBjb25zdCBwcm9taXNlID0gbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QocmVzLCBsb2NrID0+IG5ldmVyX3NldHRsZWQpOworICBjb25zdCBh
c3NlcnRpb24gPSBwcm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdBYm9ydEVycm9yJywgcHJv
bWlzZSwgYEluaXRpYWwgcmVxdWVzdCdzIHByb21pc2Ugc2hvdWxkIHJlamVjdGApOworCisgIC8v
IFN0ZWFsIGl0LgorICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtzdGVhbDog
dHJ1ZX0sIGxvY2sgPT4ge30pOworCisgIGF3YWl0IGFzc2VydGlvbjsKKworfSwgYEJyb2tlbiBs
b2NrJ3MgcmVsZWFzZSBwcm9taXNlIHJlamVjdHNgKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQg
PT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIC8vIEdyYWIgYW5kIGhvbGQg
dGhlIGxvY2suCisgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgbG9jayA9PiBuZXZlcl9z
ZXR0bGVkKS5jYXRjaChfID0+IHt9KTsKKworICAvLyBNYWtlIGEgcmVxdWVzdCBmb3IgaXQuCisg
IGxldCByZXF1ZXN0X2dyYW50ZWQgPSBmYWxzZTsKKyAgY29uc3QgcHJvbWlzZSA9IG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgbG9jayA9PiB7CisgICAgcmVxdWVzdF9ncmFudGVkID0gdHJ1
ZTsKKyAgfSk7CisKKyAgLy8gU3RlYWwgaXQuCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KHJlcywge3N0ZWFsOiB0cnVlfSwgbG9jayA9PiB7CisgICAgYXNzZXJ0X2ZhbHNlKHJlcXVl
c3RfZ3JhbnRlZCwgJ1N0ZWFsIHNob3VsZCBvdmVycmlkZSByZXF1ZXN0Jyk7CisgIH0pOworCisg
IGF3YWl0IHByb21pc2U7CisgIGFzc2VydF90cnVlKHJlcXVlc3RfZ3JhbnRlZCwgJ1JlcXVlc3Qg
c2hvdWxkIGV2ZW50dWFsbHkgYmUgZ3JhbnRlZCcpOworCit9LCBgUmVxdWVzdGVkIGxvY2sncyBy
ZWxlYXNlIHByb21pc2UgaXMgZGVmZXJyZWRgKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4g
eworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIC8vIEdyYWIgYW5kIGhvbGQgdGhl
IGxvY2suCisgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgbG9jayA9PiBuZXZlcl9zZXR0
bGVkKS5jYXRjaChfID0+IHt9KTsKKworICAvLyBTdGVhbCBpdC4KKyAgbGV0IHNhd19hYm9ydCA9
IGZhbHNlOworICBjb25zdCBmaXJzdF9zdGVhbCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAor
ICAgIHJlcywge3N0ZWFsOiB0cnVlfSwgbG9jayA9PiBuZXZlcl9zZXR0bGVkKS5jYXRjaChlcnJv
ciA9PiB7CisgICAgICBzYXdfYWJvcnQgPSB0cnVlOworICAgIH0pOworCisgIC8vIFN0ZWFsIGl0
IGFnYWluLgorICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtzdGVhbDogdHJ1
ZX0sIGxvY2sgPT4ge30pOworCisgIGF3YWl0IGZpcnN0X3N0ZWFsOworICBhc3NlcnRfdHJ1ZShz
YXdfYWJvcnQsICdGaXJzdCBzdGVhbCBzaG91bGQgaGF2ZSBhYm9ydGVkJyk7CisKK30sICdMYXN0
IGNhbGxlciB3aW5zJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zdGVhbC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZp
Y2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29y
a2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OThkMzI4MGVkY2I4MjcyNDM2YTQ0YzU5YjNm
NjI1NDk4NzQzNjQ2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5z
ZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKKworRkFJTCBMb2NrIGF2
YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIG5vdCBhdmFpbGFibGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QnKSIKK0ZBSUwgQnJva2VuIGxvY2sncyByZWxlYXNlIHByb21pc2UgcmVqZWN0cyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXF1ZXN0ZWQgbG9jaydzIHJlbGVhc2UgcHJvbWlzZSBp
cyBkZWZlcnJlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMYXN0IGNhbGxlciB3aW5zIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vydmlj
ZXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1s
CkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVz
dCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkud29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi43OThkMzI4MGVkY2I4MjcyNDM2YTQ0YzU5YjNmNjI1NDk4NzQzNjQ2
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorCitGQUlMIExvY2sgYXZhaWxhYmxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCitGQUlMIExvY2sgbm90IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBC
cm9rZW4gbG9jaydzIHJlbGVhc2UgcHJvbWlzZSByZWplY3RzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitG
QUlMIFJlcXVlc3RlZCBsb2NrJ3MgcmVsZWFzZSBwcm9taXNlIGlzIGRlZmVycmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIExhc3QgY2FsbGVyIHdpbnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2
ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2
YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRw
cy5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWly
ZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRl
c3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvdzNjLWltcG9ydC5s
b2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy93M2MtaW1wb3J0LmxvZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYTU3NjUwYWVlY2JjMDc3MDJjZDZiNDRkN2Yz
YjM2NDM5MDk5ZWYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvdzNjLWltcG9ydC5sb2cKQEAgLTAsMCArMSwz
OCBAQAorVGhlIHRlc3RzIGluIHRoaXMgZGlyZWN0b3J5IHdlcmUgaW1wb3J0ZWQgZnJvbSB0aGUg
VzNDIHJlcG9zaXRvcnkuCitEbyBOT1QgbW9kaWZ5IHRoZXNlIHRlc3RzIGRpcmVjdGx5IGluIFdl
YktpdC4KK0luc3RlYWQsIGNyZWF0ZSBhIHB1bGwgcmVxdWVzdCBvbiB0aGUgV1BUIGdpdGh1YjoK
KwlodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdAorCitUaGVuIHJ1biB0
aGUgVG9vbHMvU2NyaXB0cy9pbXBvcnQtdzNjLXRlc3RzIGluIFdlYktpdCB0byByZWltcG9ydAor
CitEbyBOT1QgbW9kaWZ5IG9yIHJlbW92ZSB0aGlzIGZpbGUuCisKKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor
UHJvcGVydGllcyByZXF1aXJpbmcgdmVuZG9yIHByZWZpeGVzOgorTm9uZQorUHJvcGVydHkgdmFs
dWVzIHJlcXVpcmluZyB2ZW5kb3IgcHJlZml4ZXM6CitOb25lCistLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0xp
c3Qgb2YgZmlsZXM6CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvTUVUQS55bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9SRUFETUUubWQKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnku
anMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9jbGllbnRpZHMudGVudGF0aXZlLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9mcmFtZXMudGVudGF0aXZlLmh0dHBzLmh0
bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5h
bnkuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRl
bnRhdGl2ZS5odHRwcy5hbnkuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50ZW50YXRpdmUuaHR0cHMuYW55Lmpz
CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZlLmh0
dHBzLmFueS5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL25vbi1zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55LmpzCisvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdp
bi50ZW50YXRpdmUuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMK
Ky9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9x
dWVyeS1vcmRlcmluZy50ZW50YXRpdmUuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LnRlbnRhdGl2ZS5odHRwcy5h
bnkuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQu
dGVudGF0aXZlLmh0dHBzLmFueS5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwu
dGVudGF0aXZlLmh0dHBzLmFueS5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3dvcmtlcnMudGVudGF0aXZlLmh0dHBzLmh0bWwKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3dvcmtlcnMudGVudGF0aXZlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3dvcmtlcnMudGVudGF0aXZl
Lmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNWE5OGFmYWNhZWJjYjA2MTdiOTZjNjM3
MzMwN2VkYjEzYTJlZTFhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvd29ya2Vycy50ZW50YXRpdmUuaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorCitGQUlMIFdpbmRvdyBhbmQgV29ya2VyIC0g
c2hhcmVkIG1vZGUgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBXaW5kb3cgYW5k
IFdvcmtlciAtIGV4Y2x1c2l2ZSBtb2RlIGFzc2VydF9pbXBsZW1lbnRzOiB1bmRlZmluZWQKK0ZB
SUwgV29ya2VyIGFuZCBXb3JrZXIgLSBleGNsdXNpdmUgbW9kZSBhc3NlcnRfaW1wbGVtZW50czog
dW5kZWZpbmVkCitGQUlMIFRlcm1pbmF0ZWQgV29ya2VyIC0gZXhjbHVzaXZlIG1vZGUgYXNzZXJ0
X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy93b3JrZXJzLnRlbnRhdGl2ZS5odHRw
cy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3Mvd29ya2Vycy50ZW50YXRpdmUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMWYxMWM2MDNh
NGRlYjkyMWEwZDQ3ODA2ZjNmN2NiYTg2MzEyNWU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvd29ya2Vycy50
ZW50YXRpdmUuaHR0cHMuaHRtbApAQCAtMCwwICsxLDEyMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8
bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPldlYiBMb2NrcyBBUEk6IFdvcmtlcnM8L3RpdGxl
PgorPGxpbmsgcmVsPWhlbHAgaHJlZj0iaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby93ZWItbG9ja3Mv
Ij4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVycy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorJ3Vz
ZSBzdHJpY3QnOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1l
bnRzKG5hdmlnYXRvci5sb2Nrcyk7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291
cmNlcy93b3JrZXIuanMnKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IHdvcmtlci50ZXJtaW5h
dGUoKTsgfSk7CisKKyAgY29uc3QgcmVzID0gJ3NoYXJlZCByZXNvdXJjZSAxJzsKKworICBjb25z
dCBsb2NrX2lkID0gKGF3YWl0IHBvc3RUb1dvcmtlckFuZFdhaXQoCisgICAgd29ya2VyLCB7b3A6
ICdyZXF1ZXN0JywgbmFtZTogcmVzLCBtb2RlOiAnc2hhcmVkJ30pKS5sb2NrX2lkOworCisgIGF3
YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge21vZGU6ICdzaGFyZWQnfSwgYXN5bmMg
bG9jayA9PiB7CisgICAgYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCh3b3JrZXIsIHtvcDogJ3Jl
bGVhc2UnLCBsb2NrX2lkfSk7CisgIH0pOworCit9LCAnV2luZG93IGFuZCBXb3JrZXIgLSBzaGFy
ZWQgbW9kZScpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1l
bnRzKG5hdmlnYXRvci5sb2Nrcyk7CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291
cmNlcy93b3JrZXIuanMnKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IHdvcmtlci50ZXJtaW5h
dGUoKTsgfSk7CisKKyAgY29uc3QgcmVzID0gJ2V4Y2x1c2l2ZSByZXNvdXJjZSAxJzsKKworICAv
LyB3b3JrZXIgYWNxdWlyZXMgdGhlIGxvY2suCisgIGNvbnN0IGxvY2tfaWQgPSAoYXdhaXQgcG9z
dFRvV29ya2VyQW5kV2FpdCgKKyAgICB3b3JrZXIsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9
KSkubG9ja19pZDsKKworICAvLyBUaGlzIHJlcXVlc3Qgc2hvdWxkIGJlIGJsb2NrZWQuCisgIGxl
dCBsb2NrX2dyYW50ZWQgPSBmYWxzZTsKKyAgY29uc3QgYmxvY2tlZCA9IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KAorICAgIHJlcywgbG9jayA9PiB7IGxvY2tfZ3JhbnRlZCA9IHRydWU7IH0pOwor
CisgIC8vIFZlcmlmeSB3ZSBjYW4ndCBnZXQgaXQuCisgIGxldCBhdmFpbGFibGUgPSB1bmRlZmlu
ZWQ7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge2lmQXZhaWxh
YmxlOiB0cnVlfSwgbG9jayA9PiB7IGF2YWlsYWJsZSA9IGxvY2sgIT09IG51bGw7IH0pOworICBh
c3NlcnRfZmFsc2UoYXZhaWxhYmxlKTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tfZ3JhbnRlZCk7CisK
KyAgLy8gQXNrIHRoZSB3b3JrZXIgdG8gcmVsZWFzZSBpdC4KKyAgYXdhaXQgcG9zdFRvV29ya2Vy
QW5kV2FpdCh3b3JrZXIsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7CisKKyAgLy8gTm93IHdl
J3ZlIGdvdCBpdC4KKyAgY29uc3QgbG9jazIgPSBhd2FpdCBibG9ja2VkOworICBhc3NlcnRfdHJ1
ZShsb2NrX2dyYW50ZWQpOworCit9LCAnV2luZG93IGFuZCBXb3JrZXIgLSBleGNsdXNpdmUgbW9k
ZScpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1lbnRzKG5h
dmlnYXRvci5sb2Nrcyk7CisgIGNvbnN0IHdvcmtlcjEgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMv
d29ya2VyLmpzJyk7CisgIGNvbnN0IHdvcmtlcjIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvd29y
a2VyLmpzJyk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyB3b3JrZXIxLnRlcm1pbmF0ZSgpOyB3
b3JrZXIyLnRlcm1pbmF0ZSgpOyB9KTsKKworICBjb25zdCByZXMgPSAnZXhjbHVzaXZlIHJlc291
cmNlIDInOworCisgIC8vIHdvcmtlcjEgYWNxdWlyZXMgdGhlIGxvY2suCisgIGNvbnN0IGxvY2tf
aWQgPSAoYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCgKKyAgICB3b3JrZXIxLCB7b3A6ICdyZXF1
ZXN0JywgbmFtZTogcmVzfSkpLmxvY2tfaWQ7CisKKyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBi
ZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQg
PSBwb3N0VG9Xb3JrZXJBbmRXYWl0KAorICAgIHdvcmtlcjIsIHtvcDogJ3JlcXVlc3QnLCBuYW1l
OiByZXN9KTsKKyAgYmxvY2tlZC50aGVuKGYgPT4geyBsb2NrX2dyYW50ZWQgPSB0cnVlOyB9KTsK
KworICAvLyBWZXJpZnkgd29ya2VyMiBjYW4ndCBnZXQgaXQuCisgIGFzc2VydF90cnVlKChhd2Fp
dCBwb3N0VG9Xb3JrZXJBbmRXYWl0KHdvcmtlcjIsIHsKKyAgICBvcDogJ3JlcXVlc3QnLCBuYW1l
OiByZXMsIGlmQXZhaWxhYmxlOiB0cnVlCisgIH0pKS5mYWlsZWQsICdMb2NrIHJlcXVlc3Qgc2hv
dWxkIGhhdmUgZmFpbGVkJyk7CisgIGFzc2VydF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8v
IEFzayB3b3JrZXIxIHRvIHJlbGVhc2UgaXQuCisgIGF3YWl0IHBvc3RUb1dvcmtlckFuZFdhaXQo
d29ya2VyMSwge29wOiAncmVsZWFzZScsIGxvY2tfaWR9KTsKKworICAvLyBOb3cgd29ya2VyMiBj
YW4gZ2V0IGl0LgorICBjb25zdCBsb2NrID0gYXdhaXQgYmxvY2tlZDsKKyAgYXNzZXJ0X3RydWUo
bG9ja19ncmFudGVkKTsKKworfSwgJ1dvcmtlciBhbmQgV29ya2VyIC0gZXhjbHVzaXZlIG1vZGUn
KTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZp
Z2F0b3IubG9ja3MpOworICBjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvd29y
a2VyLmpzJyk7CisKKyAgY29uc3QgcmVzID0gJ2V4Y2x1c2l2ZSByZXNvdXJjZSAzJzsKKworICAv
LyBXb3JrZXIgYWNxdWlyZXMgdGhlIGxvY2suCisgIGF3YWl0IHBvc3RUb1dvcmtlckFuZFdhaXQo
d29ya2VyLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSk7CisKKyAgLy8gVGhpcyByZXF1ZXN0
IHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0
IGJsb2NrZWQgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIGxvY2sgPT4geyBs
b2NrX2dyYW50ZWQgPSB0cnVlOyB9KTsKKworICAvLyBWZXJpZnkgd2UgY2FuJ3QgZ2V0IGl0Lgor
ICBsZXQgYXZhaWxhYmxlID0gdW5kZWZpbmVkOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCgKKyAgICByZXMsIHtpZkF2YWlsYWJsZTogdHJ1ZX0sIGxvY2sgPT4geyBhdmFpbGFibGUg
PSBsb2NrICE9PSBudWxsOyB9KTsKKyAgYXNzZXJ0X2ZhbHNlKGF2YWlsYWJsZSk7CisgIGFzc2Vy
dF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8vIEltcGxpY2l0bHkgcmVsZWFzZSBpdCBieSB0
ZXJtaW5hdGluZyB0aGUgd29ya2VyLgorICB3b3JrZXIudGVybWluYXRlKCk7CisKKyAgLy8gTm93
IHdlJ3ZlIGdvdCBpdC4KKyAgY29uc3QgbG9jayA9IGF3YWl0IGJsb2NrZWQ7CisgIGFzc2VydF90
cnVlKGxvY2tfZ3JhbnRlZCk7CisKK30sICdUZXJtaW5hdGVkIFdvcmtlciAtIGV4Y2x1c2l2ZSBt
b2RlJyk7CisKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442707</attachid>
            <date>2021-10-28 07:48:40 -0700</date>
            <delta_ts>2021-10-28 09:04:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232406-20211028074839.patch</filename>
            <type>text/plain</type>
            <size>196900</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0OTc2CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCBhYjg3NzM3YWExNzg2ZmUxMDg5MWIzMzQxMzU2Zjk0YzA2ZjU1M2JkLi4yOTFiYTg3NmU1
NWQ1ODQ2MGUyNWViZDZmMTMzY2Q4YzhkMjY3NGEyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0xMC0yNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgorCisgICAgICAgIEltcG9ydCB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
IEFQSSB0ZXN0cyBmcm9tIHVwc3RyZWFtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzI0MDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJbXBvcnQgd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2NrcyBBUEkg
dGVzdHMgZnJvbSB1cHN0cmVhbSBhOGU3ZDI5NGM2MjZkY2ViNi4KKworICAgICAgICAqIHJlc291
cmNlcy9pbXBvcnQtZXhwZWN0YXRpb25zLmpzb246CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy8qOiBBZGRlZC4KKwogMjAyMS0xMC0yOCAgQW50dGkgS29pdmlzdG8gIDxh
bnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgU3VwcG9ydCA6OmJlZm9yZSBhbmQgOjphZnRlciBw
c2V1ZG8gZWxlbWVudHMgYWZ0ZXIgOjpzbG90dGVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvcmVzb3VyY2VzL2ltcG9ydC1leHBlY3RhdGlvbnMuanNvbiBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9ucy5qc29uCmluZGV4
IDI2YzIzMzY5MWRhOTdkZWY1MWQ0YzJjNTI0MTIyY2JjN2YxZTQ3MGMuLjAyZTdjNTFiMDQ2Yjg2
YTVlMmI1NGE1MGYzYTg4NDNkZDk5MjkxN2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9ucy5qc29uCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9ucy5qc29uCkBAIC00
NTMsNiArNDUzLDcgQEAKICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL3dhc20iOiAiaW1wb3J0Iiwg
CiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy93YXNtL2pzYXBpIjogImltcG9ydCIsIAogICAgICJ3
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMiOiAiaW1wb3J0IiwgCisgICAgIndlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvIjogImltcG9ydCIsIAogICAgICJ3ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLW5mYyI6ICJza2lwIiwgCiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy93ZWItc2hh
cmUiOiAiaW1wb3J0IiwgCiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpbyI6ICJpbXBv
cnQiLCAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL01FVEEueW1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvTUVUQS55bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjRlN2QyODM0MDYw
NmQ5YTYyOTBhZjljZWFjNGY0ZmI5MTU2YWJmMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL01FVEEueW1sCkBA
IC0wLDAgKzEsNCBAQAorc3BlYzogaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby93ZWItbG9ja3MvCitz
dWdnZXN0ZWRfcmV2aWV3ZXJzOgorICAtIGluZXhvcmFibGV0YXNoCisgIC0gcHduYWxsCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9SRUFETUUubWQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9SRUFETUUubWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZmNTM0ZTFiNmYxNDNkZTk1MGU4
NzRkOWI5N2RhZTk1MTIwNTExMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL1JFQURNRS5tZApAQCAtMCwwICsx
LDUgQEAKK1RoaXMgZGlyZWN0b3J5IGNvbnRhaW5zIGEgdGVzdCBzdWl0ZSBmb3IgdGhlIHByb3Bv
c2VkIFdlYiBMb2NrcyBBUEkuCisKK0V4cGxhaW5lcjogaHR0cHM6Ly9naXRodWIuY29tL1dJQ0cv
d2ViLWxvY2tzLworCitTcGVjOiBodHRwczovL3dpY2cuZ2l0aHViLmlvL3dlYi1sb2Nrcy8KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL2FjcXVpcmUudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRl
bnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhMzE2YjM2YzE2MGE4
ZmM0ZDg0N2ExM2RhZjU3NzZkZjNhZDFkZjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRh
dGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKKworRkFJTCBuYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCByZXF1aXJlcyBhIG5hbWUgYW5kIGEgY2FsbGJhY2sgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QnKSIKK0ZBSUwgbW9kZSBtdXN0IGJlICJzaGFyZWQiIG9yICJleGNsdXNpdmUiIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCitGQUlMIFRoZSAnc3RlYWwnIGFuZCAnaWZBdmFpbGFibGUnIG9wdGlv
bnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBUaGUgJ3N0
ZWFsJyBvcHRpb24gbXVzdCBiZSB1c2VkIHdpdGggZXhjbHVzaXZlIGxvY2tzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCitGQUlMIFRoZSAnc2lnbmFsJyBhbmQgJ3N0ZWFsJyBvcHRpb25zIGFyZSBtdXR1YWxs
eSBleGNsdXNpdmUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgVGhlICdzaWduYWwnIGFuZCAnaWZB
dmFpbGFibGUnIG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcp
IgorRkFJTCBjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QncyByZXR1cm5lZCBwcm9taXNlIHJlc29sdmVzIGFm
dGVyIGxvY2sgaXMgcmVsZWFzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmV0dXJuZWQgUHJv
bWlzZSByZWplY3RzIGlmIGNhbGxiYWNrIHRocm93cyBzeW5jaHJvbm91c2x5IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCitGQUlMIFJldHVybmVkIFByb21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0aHJvd3Mg
YXN5bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50
YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAor
PCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJl
IHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRp
dmUuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkNzY4OWIzZTE4MmMyMTAxYjhkMjdhYTExMDRk
ODhkM2JiZDFmN2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnku
anMKQEAgLTAsMCArMSwxMjQgQEAKKy8vIE1FVEE6IHRpdGxlPVdlYiBMb2NrcyBBUEk6IG5hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0IG1ldGhvZAorLy8gTUVUQTogc2NyaXB0PXJlc291cmNlcy9oZWxw
ZXJzLmpzCisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3b3Jr
ZXIsc2VydmljZXdvcmtlcgorCisndXNlIHN0cmljdCc7CisKK3Byb21pc2VfdGVzdChhc3luYyB0
ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKyAgYXdhaXQgcHJvbWlzZV9yZWpl
Y3RzX2pzKHQsIFR5cGVFcnJvciwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoKSk7CisgIGF3YWl0
IHByb21pc2VfcmVqZWN0c19qcyh0LCBUeXBlRXJyb3IsIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KHJlcykpOworfSwgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0IHJlcXVpcmVzIGEgbmFtZSBhbmQg
YSBjYWxsYmFjaycpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9
IHVuaXF1ZU5hbWUodCk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICB0LCBUeXBl
RXJyb3IsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTogJ2Zvbyd9LCBs
b2NrID0+IHt9KSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICB0LCBUeXBlRXJy
b3IsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTogbnVsbCB9LCBsb2Nr
ID0+IHt9KSk7CisgIGFzc2VydF9lcXVhbHMoYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
CisgICAgcmVzLCB7bW9kZTogJ2V4Y2x1c2l2ZSd9LCBsb2NrID0+IGxvY2subW9kZSksICdleGNs
dXNpdmUnLAorICAgICAgICAgICAgICAgICdtb2RlIGlzIGV4Y2x1c2l2ZScpOworICBhc3NlcnRf
ZXF1YWxzKGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge21vZGU6ICdz
aGFyZWQnfSwgbG9jayA9PiBsb2NrLm1vZGUpLCAnc2hhcmVkJywKKyAgICAgICAgICAgICAgICAn
bW9kZSBpcyBzaGFyZWQnKTsKK30sICdtb2RlIG11c3QgYmUgInNoYXJlZCIgb3IgImV4Y2x1c2l2
ZSInKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVO
YW1lKHQpOworICBhd2FpdCBwcm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdOb3RTdXBwb3J0
ZWRFcnJvcicsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoCisgICAgICByZXMsIHtzdGVh
bDogdHJ1ZSwgaWZBdmFpbGFibGU6IHRydWV9LCBsb2NrID0+IHt9KSwKKyAgICAiQSBOb3RTdXBw
b3J0ZWRFcnJvciBzaG91bGQgYmUgdGhyb3duIGlmIGJvdGggIiArCisgICAgIidzdGVhbCcgYW5k
ICdpZkF2YWlsYWJsZScgYXJlIHNwZWNpZmllZC4iKTsKK30sICJUaGUgJ3N0ZWFsJyBhbmQgJ2lm
QXZhaWxhYmxlJyBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiKTsKKworcHJvbWlzZV90
ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBhd2FpdCBw
cm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdOb3RTdXBwb3J0ZWRFcnJvcicsCisgICAgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTogJ3NoYXJlZCcsIHN0ZWFsOiB0cnVlfSwg
bG9jayA9PiB7fSksCisgICAgJ1JlcXVlc3Qgd2l0aCBtb2RlPXNoYXJlZCBhbmQgc3RlYWw9dHJ1
ZSBzaG91bGQgZmFpbCcpOworfSwgIlRoZSAnc3RlYWwnIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0
aCBleGNsdXNpdmUgbG9ja3MiKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25z
dCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29u
dHJvbGxlcigpOworICBhd2FpdCBwcm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdOb3RTdXBw
b3J0ZWRFcnJvcicsCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoCisgICAgICByZXMsIHtz
aWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsLCBzdGVhbDogdHJ1ZX0sIGxvY2sgPT4ge30pLAorICAg
ICdSZXF1ZXN0IHdpdGggc2lnbmFsIGFuZCBzdGVhbD10cnVlIHNob3VsZCBmYWlsJyk7Cit9LCAi
VGhlICdzaWduYWwnIGFuZCAnc3RlYWwnIG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIp
OworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUo
dCk7CisgIGNvbnN0IGNvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7CisgIGF3YWl0
IHByb21pc2VfcmVqZWN0c19kb20oCisgICAgdCwgJ05vdFN1cHBvcnRlZEVycm9yJywKKyAgICBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICAgIHJlcywge3NpZ25hbDogY29udHJvbGxlci5z
aWduYWwsIGlmQXZhaWxhYmxlOiB0cnVlfSwgbG9jayA9PiB7fSksCisgICAgJ1JlcXVlc3Qgd2l0
aCBzaWduYWwgYW5kIGlmQXZhaWxhYmxlPXRydWUgc2hvdWxkIGZhaWwnKTsKK30sICJUaGUgJ3Np
Z25hbCcgYW5kICdpZkF2YWlsYWJsZScgb3B0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIik7
CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0
KTsKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKAorICAgIHQsIFR5cGVFcnJvciwgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QocmVzLCB1bmRlZmluZWQpKTsKKyAgYXdhaXQgcHJvbWlzZV9yZWpl
Y3RzX2pzKAorICAgIHQsIFR5cGVFcnJvciwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBu
dWxsKSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICB0LCBUeXBlRXJyb3IsIG5h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgMTIzKSk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0
c19qcygKKyAgICB0LCBUeXBlRXJyb3IsIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgJ2Fi
YycpKTsKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKAorICAgIHQsIFR5cGVFcnJvciwgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBbXSkpOworICBhd2FpdCBwcm9taXNlX3JlamVjdHNf
anMoCisgICAgdCwgVHlwZUVycm9yLCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHt9KSk7
CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcygKKyAgICB0LCBUeXBlRXJyb3IsIG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgbmV3IFByb21pc2UociA9PiB7fSkpKTsKK30sICdjYWxsYmFj
ayBtdXN0IGJlIGEgZnVuY3Rpb24nKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBj
b25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBsZXQgcmVsZWFzZTsKKyAgY29uc3QgcHJvbWlz
ZSA9IG5ldyBQcm9taXNlKHIgPT4geyByZWxlYXNlID0gcjsgfSk7CisKKyAgbGV0IHJldHVybmVk
ID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBsb2NrID0+IHsgcmV0dXJuIHByb21pc2U7
IH0pOworCisgIGNvbnN0IG9yZGVyID0gW107CisKKyAgcmV0dXJuZWQudGhlbigoKSA9PiB7IG9y
ZGVyLnB1c2goJ3JldHVybmVkJyk7IH0pOworICBwcm9taXNlLnRoZW4oKCkgPT4geyBvcmRlci5w
dXNoKCdob2xkaW5nJyk7IH0pOworCisgIHJlbGVhc2UoKTsKKworICBhd2FpdCBQcm9taXNlLmFs
bChbcmV0dXJuZWQsIHByb21pc2VdKTsKKworICBhc3NlcnRfYXJyYXlfZXF1YWxzKG9yZGVyLCBb
J2hvbGRpbmcnLCAncmV0dXJuZWQnXSk7CisKK30sICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdFwn
cyByZXR1cm5lZCBwcm9taXNlIHJlc29sdmVzIGFmdGVyJyArCisgICAnIGxvY2sgaXMgcmVsZWFz
ZWQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVO
YW1lKHQpOworICBjb25zdCB0ZXN0X2Vycm9yID0ge25hbWU6ICd0ZXN0J307CisgIGNvbnN0IHAg
PSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2sgPT4geworICAgIHRocm93IHRlc3Rf
ZXJyb3I7CisgIH0pOworICBhc3NlcnRfZXF1YWxzKFByb21pc2UucmVzb2x2ZShwKSwgcCwgJ3Jl
cXVlc3QoKSByZXN1bHQgaXMgYSBQcm9taXNlJyk7CisgIGF3YWl0IHByb21pc2VfcmVqZWN0c19l
eGFjdGx5KHQsIHRlc3RfZXJyb3IsIHAsICdyZXN1bHQgc2hvdWxkIHJlamVjdCcpOworfSwgJ1Jl
dHVybmVkIFByb21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0aHJvd3Mgc3luY2hyb25vdXNseScp
OworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUo
dCk7CisgIGNvbnN0IHRlc3RfZXJyb3IgPSB7bmFtZTogJ3Rlc3QnfTsKKyAgY29uc3QgcCA9IG5h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgdGhyb3cgdGVz
dF9lcnJvcjsKKyAgfSk7CisgIGFzc2VydF9lcXVhbHMoUHJvbWlzZS5yZXNvbHZlKHApLCBwLCAn
cmVxdWVzdCgpIHJlc3VsdCBpcyBhIFByb21pc2UnKTsKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3Rz
X2V4YWN0bHkodCwgdGVzdF9lcnJvciwgcCwgJ3Jlc3VsdCBzaG91bGQgcmVqZWN0Jyk7Cit9LCAn
UmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGNhbGxiYWNrIHRocm93cyBhc3luY2hyb25vdXNs
eScpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhMzE2YjM2YzE2MGE4ZmM0ZDg0N2ExM2RhZjU3NzZkZjNh
ZDFkZjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vydmlj
ZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorCitGQUlMIG5hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0IHJlcXVpcmVzIGEgbmFtZSBhbmQgYSBjYWxsYmFjayBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorRkFJTCBtb2RlIG11c3QgYmUgInNoYXJlZCIgb3IgImV4Y2x1c2l2ZSIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1
bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJl
cXVlc3QnKSIKK0ZBSUwgVGhlICdzdGVhbCcgYW5kICdpZkF2YWlsYWJsZScgb3B0aW9ucyBhcmUg
bXV0dWFsbHkgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFRoZSAnc3RlYWwnIG9w
dGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBleGNsdXNpdmUgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIK
K0ZBSUwgVGhlICdzaWduYWwnIGFuZCAnc3RlYWwnIG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1
c2l2ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBUaGUgJ3NpZ25hbCcgYW5kICdpZkF2YWlsYWJs
ZScgb3B0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlM
IGNhbGxiYWNrIG11c3QgYmUgYSBmdW5jdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBuYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCdzIHJldHVybmVkIHByb21pc2UgcmVzb2x2ZXMgYWZ0ZXIgbG9j
ayBpcyByZWxlYXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJl
amVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIK
K0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGNhbGxiYWNrIHRocm93cyBhc3luY2hy
b25vdXNseSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55LnNl
cnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1
MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1
aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQg
dGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRl
bnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2FjcXVpcmUudGVudGF0aXZlLmh0
dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhMzE2YjM2YzE2MGE4ZmM0
ZDg0N2ExM2RhZjU3NzZkZjNhZDFkZjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2
ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisKK0ZBSUwg
bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QgcmVxdWlyZXMgYSBuYW1lIGFuZCBhIGNhbGxiYWNrIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCitGQUlMIG1vZGUgbXVzdCBiZSAic2hhcmVkIiBvciAiZXhjbHVzaXZl
IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBUaGUgJ3N0ZWFsJyBhbmQgJ2lmQXZhaWxhYmxlJyBv
cHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgVGhl
ICdzdGVhbCcgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIGV4Y2x1c2l2ZSBsb2NrcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBUaGUgJ3NpZ25hbCcgYW5kICdzdGVhbCcgb3B0aW9ucyBhcmUgbXV0
dWFsbHkgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFRoZSAnc2lnbmFsJyBhbmQg
J2lmQXZhaWxhYmxlJyBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QnKSIKK0ZBSUwgY2FsbGJhY2sgbXVzdCBiZSBhIGZ1bmN0aW9uIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0J3MgcmV0dXJuZWQgcHJvbWlzZSByZXNvbHZl
cyBhZnRlciBsb2NrIGlzIHJlbGVhc2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFJldHVybmVk
IFByb21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0aHJvd3Mgc3luY2hyb25vdXNseSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMgaWYgY2FsbGJhY2sgdGhy
b3dzIGFzeW5jaHJvbm91c2x5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2FjcXVpcmUu
dGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2FjcXVpcmUudGVudGF0aXZlLmh0dHBzLmFu
eS53b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYw
OTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55Lndv
cmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBX
ZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2NsaWVudGlkcy50ZW50YXRpdmUu
aHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvY2xpZW50aWRzLnRlbnRhdGl2ZS5odHRwcy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjEwNWU4MDVmMmViNjE2YTk2ZTkwNTQzNGFmMzAxYzVhN2IyMWQ0NAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL2NsaWVudGlkcy50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMyBAQAorCitGQUlMIENsaWVudCBJRHMgbWF0Y2ggYmV0d2VlbiBMb2NrcyBBUEkgYW5k
IFNlcnZpY2UgV29ya2VycyBhc3NlcnRfaW1wbGVtZW50czogdW5kZWZpbmVkCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L2NsaWVudGlkcy50ZW50YXRpdmUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2NsaWVudGlkcy50ZW50YXRpdmUuaHR0cHMu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jNWQwNjZkMTU1NTgyYTg3YTBmODk0ZmZhMTM0YmZhNTVkOGEzYmM5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvY2xpZW50aWRzLnRlbnRhdGl2ZS5odHRwcy5odG1sCkBAIC0wLDAg
KzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPG1ldGEgY2hhcnNldD11dGYtOD4KKzx0aXRsZT5X
ZWIgTG9ja3MgQVBJOiBDbGllbnQgSURzIGluIHF1ZXJ5KCkgdnMuIFNlcnZpY2UgV29ya2VyPC90
aXRsZT4KKzxsaW5rIHJlbD1oZWxwIGhyZWY9Imh0dHBzOi8vd2ljZy5naXRodWIuaW8vd2ViLWxv
Y2tzLyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
dGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCisvLyBSZXR1cm5zIGEg
cHJvbWlzZSByZXNvbHZlZCBieSB0aGUgbmV4dCBtZXNzYWdlIGV2ZW50LgorZnVuY3Rpb24gbmV4
dE1lc3NhZ2UoKSB7CisgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGV2ZW50ID0+IHsKKyAgICAgIHJlc29sdmUo
ZXZlbnQuZGF0YSk7CisgICAgfSwge29uY2U6IHRydWV9KTsKKyAgfSk7Cit9CisKK3Byb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsK
KyAgY29uc3QgaWZyYW1lX3VybCA9ICdyZXNvdXJjZXMvc3ctY29udHJvbGxlZC1pZnJhbWUuaHRt
bCc7CisKKyAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlciB0aGF0IHdpbGwgY29udHJvbCBh
biBpZnJhbWUuCisgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3Vu
cmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKAorICAgIHQsICdyZXNvdXJjZXMvc2VydmljZS13b3JrZXIu
anMnLCBpZnJhbWVfdXJsKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9u
Lmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKworICBjb25zdCBpZnJhbWUgPSBhd2FpdCB3aXRo
X2lmcmFtZShpZnJhbWVfdXJsKTsKKworICBpZnJhbWUuY29udGVudFdpbmRvdy5wb3N0TWVzc2Fn
ZSgnZ2V0X3N3X2NsaWVudF9pZCcsICcqJyk7CisgIGNvbnN0IHN3X2NsaWVudF9pZCA9IGF3YWl0
IG5leHRNZXNzYWdlKCk7CisKKyAgaWZyYW1lLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UoJ2dl
dF9sb2NrX2NsaWVudF9pZCcsICcqJyk7CisgIGNvbnN0IGxvY2tfY2xpZW50X2lkID0gYXdhaXQg
bmV4dE1lc3NhZ2UoKTsKKworICAvLyBOT1RFOiBOb3QgYXNzZXJ0X2VxdWFscygpLCBhcyB3ZSBk
b24ndCB3YW50IGxvZyB0aGUgcmFuZG9tbHkgZ2VuZXJhdGVkCisgIC8vIGNsaWVudElkcywgc2lu
Y2UgdGhleSB3b3VsZCBub3QgbWF0Y2ggYW55IGZhaWx1cmUgZXhwZWN0YXRpb24gZmlsZXMuCisg
IGFzc2VydF9lcXVhbHMobG9ja19jbGllbnRfaWQsIHN3X2NsaWVudF9pZCwKKyAgICAgICAgICAg
ICAgJ2NsaWVudElkcyBzaG91bGQgbWF0Y2gsIGJ1dCBhcmUgZGlmZmVyZW50Jyk7CisKKyAgYXdh
aXQgcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKTsKKworfSwgJ0NsaWVudCBJRHMgbWF0Y2ggYmV0
d2VlbiBMb2NrcyBBUEkgYW5kIFNlcnZpY2UgV29ya2VycycpOworCis8L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL2ZyYW1lcy50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvZnJhbWVzLnRlbnRhdGl2ZS5o
dHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNiOGExZjk5YjY4MGI2NmM5MWY5NDA1NmVk
MmMwOTNhMDE0NDUxYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2ZyYW1lcy50ZW50YXRpdmUuaHR0cHMtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKKworRkFJTCBXaW5kb3cgYW5kIEZyYW1lIC0gc2hh
cmVkIG1vZGUgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBXaW5kb3cgYW5kIEZy
YW1lIC0gZXhjbHVzaXZlIG1vZGUgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBG
cmFtZSBhbmQgRnJhbWUgLSBleGNsdXNpdmUgbW9kZSBhc3NlcnRfaW1wbGVtZW50czogdW5kZWZp
bmVkCitGQUlMIFRlcm1pbmF0ZWQgRnJhbWUgd2l0aCBoZWxkIGxvY2sgYXNzZXJ0X2ltcGxlbWVu
dHM6IHVuZGVmaW5lZAorRkFJTCBOYXZpZ2F0ZWQgRnJhbWUgd2l0aCBoZWxkIGxvY2sgYXNzZXJ0
X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBOYXZpZ2F0ZWQgRnJhbWUgd2l0aCBwZW5kaW5n
IHJlcXVlc3QgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBSZW1vdmVkIEZyYW1l
IHdpdGggcGVuZGluZyByZXF1ZXN0IGFzc2VydF9pbXBsZW1lbnRzOiB1bmRlZmluZWQKK0ZBSUwg
UmVtb3ZlZCBGcmFtZSBhcyBsb2NrIGlzIGdyYW50ZWQgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVm
aW5lZAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9mcmFtZXMudGVudGF0aXZlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9mcmFtZXMudGVudGF0
aXZlLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTg4ZjZjMDgyZjQxOWRjYTdmNjM1ODVkOTZkMDhh
M2MyNWMzODU3MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2ZyYW1lcy50ZW50YXRpdmUuaHR0cHMuaHRtbApA
QCAtMCwwICsxLDI2NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04Pgor
PHRpdGxlPldlYiBMb2NrcyBBUEk6IEZyYW1lczwvdGl0bGU+Cis8bGluayByZWw9aGVscCBocmVm
PSJodHRwczovL3dpY2cuZ2l0aHViLmlvL3dlYi1sb2Nrcy8iPgorPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9o
ZWxwZXJzLmpzIj48L3NjcmlwdD4KKzxzdHlsZT5pZnJhbWUgeyBkaXNwbGF5OiBub25lOyB9PC9z
dHlsZT4KKzxzY3JpcHQ+CisndXNlIHN0cmljdCc7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+
IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgcmVzID0g
dW5pcXVlTmFtZSh0KTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2Vz
L2lmcmFtZS5odG1sJyk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsg
fSk7CisKKyAgY29uc3QgbG9ja19pZCA9IChhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoCisgICAg
ZnJhbWUsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMsIG1vZGU6ICdzaGFyZWQnfSkpLmxvY2tf
aWQ7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTogJ3NoYXJl
ZCd9LCBhc3luYyBsb2NrID0+IHsKKyAgICBhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUs
IHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7CisgIH0pOworCit9LCAnV2luZG93IGFuZCBGcmFt
ZSAtIHNoYXJlZCBtb2RlJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgYXNzZXJ0
X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0
KTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1s
Jyk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisKKyAgLy8g
ZnJhbWUgYWNxdWlyZXMgdGhlIGxvY2suCisgIGNvbnN0IGxvY2tfaWQgPSAoYXdhaXQgcG9zdFRv
RnJhbWVBbmRXYWl0KAorICAgIGZyYW1lLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSkpLmxv
Y2tfaWQ7CisKKyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9j
a19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdChyZXMsIGxvY2sgPT4geyBsb2NrX2dyYW50ZWQgPSB0cnVlOyB9KTsKKworICAvLyBWZXJp
ZnkgdGhhdCB3ZSBjYW4ndCBnZXQgaXQuCisgIGxldCBhdmFpbGFibGUgPSB1bmRlZmluZWQ7Cisg
IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge2lmQXZhaWxhYmxlOiB0
cnVlfSwgbG9jayA9PiB7IGF2YWlsYWJsZSA9IGxvY2sgIT09IG51bGw7IH0pOworICBhc3NlcnRf
ZmFsc2UoYXZhaWxhYmxlKTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tfZ3JhbnRlZCk7CisKKyAgLy8g
QXNrIHRoZSBmcmFtZSB0byByZWxlYXNlIGl0LgorICBhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQo
ZnJhbWUsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7CisKKyAgYXdhaXQgYmxvY2tlZDsKKyAg
Ly8gTm93IHdlJ3ZlIGdvdCBpdC4KKyAgYXNzZXJ0X3RydWUobG9ja19ncmFudGVkKTsKK30sICdX
aW5kb3cgYW5kIEZyYW1lIC0gZXhjbHVzaXZlIG1vZGUnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5j
IHQgPT4geworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZpZ2F0b3IubG9ja3MpOworICBjb25zdCBy
ZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGZyYW1lMSA9IGF3YWl0IGlmcmFtZSgncmVz
b3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNvbnN0IGZyYW1lMiA9IGF3YWl0IGlmcmFtZSgncmVz
b3VyY2VzL2lmcmFtZS5odG1sJyk7CisKKyAgLy8gZnJhbWUxIGFjcXVpcmVzIHRoZSBsb2NrLgor
ICBjb25zdCBsb2NrX2lkID0gKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdCgKKyAgICBmcmFtZTEs
IHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9KSkubG9ja19pZDsKKworICAvLyBmcmFtZTIncyBy
ZXF1ZXN0IHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7Cisg
IGNvbnN0IGJsb2NrZWQgPSBwb3N0VG9GcmFtZUFuZFdhaXQoCisgICAgZnJhbWUyLCB7b3A6ICdy
ZXF1ZXN0JywgbmFtZTogcmVzfSk7CisgIGJsb2NrZWQudGhlbihmID0+IHsgbG9ja19ncmFudGVk
ID0gdHJ1ZTsgfSk7CisKKyAgLy8gVmVyaWZ5IHRoYXQgZnJhbWUyIGNhbid0IGdldCBpdC4KKyAg
YXNzZXJ0X3RydWUoKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTIsIHsKKyAgICBvcDog
J3JlcXVlc3QnLCBuYW1lOiByZXMsIGlmQXZhaWxhYmxlOiB0cnVlCisgIH0pKS5mYWlsZWQsICdM
b2NrIHJlcXVlc3Qgc2hvdWxkIGhhdmUgZmFpbGVkJyk7CisgIGFzc2VydF9mYWxzZShsb2NrX2dy
YW50ZWQpOworCisgIC8vIEFzayBmcmFtZTEgdG8gcmVsZWFzZSBpdC4KKyAgYXdhaXQgcG9zdFRv
RnJhbWVBbmRXYWl0KGZyYW1lMSwge29wOiAncmVsZWFzZScsIGxvY2tfaWR9KTsKKworICBhd2Fp
dCBibG9ja2VkOworICAvLyBOb3cgZnJhbWUyIGNhbiBnZXQgaXQuCisgIGFzc2VydF90cnVlKGxv
Y2tfZ3JhbnRlZCk7CisgIGZyYW1lMS5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGZyYW1lMSk7
CisgIGZyYW1lMi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGZyYW1lMik7Cit9LCAnRnJhbWUg
YW5kIEZyYW1lIC0gZXhjbHVzaXZlIG1vZGUnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4g
eworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZpZ2F0b3IubG9ja3MpOworICBjb25zdCByZXMgPSB1
bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGZyYW1lID0gYXdhaXQgaWZyYW1lKCdyZXNvdXJjZXMv
aWZyYW1lLmh0bWwnKTsKKworICAvLyBGcmFtZSBhY3F1aXJlcyB0aGUgbG9jay4KKyAgYXdhaXQg
cG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSk7CisK
KyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVk
ID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAg
ICByZXMsIGxvY2sgPT4geyBsb2NrX2dyYW50ZWQgPSB0cnVlOyB9KTsKKworICAvLyBWZXJpZnkg
dGhhdCB3ZSBjYW4ndCBnZXQgaXQuCisgIGxldCBhdmFpbGFibGUgPSB1bmRlZmluZWQ7CisgIGF3
YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge2lmQXZhaWxhYmxlOiB0cnVl
fSwgbG9jayA9PiB7IGF2YWlsYWJsZSA9IGxvY2sgIT09IG51bGw7IH0pOworICBhc3NlcnRfZmFs
c2UoYXZhaWxhYmxlKTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tfZ3JhbnRlZCk7CisKKyAgLy8gSW1w
bGljaXRseSByZWxlYXNlIGl0IGJ5IHRlcm1pbmF0aW5nIHRoZSBmcmFtZS4KKyAgZnJhbWUucmVt
b3ZlKCk7CisgIGF3YWl0IGJsb2NrZWQ7CisgIC8vIE5vdyB3ZSd2ZSBnb3QgaXQuCisgIGFzc2Vy
dF90cnVlKGxvY2tfZ3JhbnRlZCk7CisKK30sICdUZXJtaW5hdGVkIEZyYW1lIHdpdGggaGVsZCBs
b2NrJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMo
bmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBjb25z
dCBmcmFtZSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisKKyAgLy8g
RnJhbWUgYWNxdWlyZXMgdGhlIGxvY2suCisgIGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFt
ZSwge29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc30pOworCisgIC8vIFRoaXMgcmVxdWVzdCBzaG91
bGQgYmUgYmxvY2tlZC4KKyAgbGV0IGxvY2tfZ3JhbnRlZCA9IGZhbHNlOworICBjb25zdCBibG9j
a2VkID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoCisgICAgcmVzLCBsb2NrID0+IHsgbG9ja19n
cmFudGVkID0gdHJ1ZTsgfSk7CisKKyAgLy8gVmVyaWZ5IHRoYXQgd2UgY2FuJ3QgZ2V0IGl0Lgor
ICBsZXQgYXZhaWxhYmxlID0gdW5kZWZpbmVkOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCgKKyAgICByZXMsIHtpZkF2YWlsYWJsZTogdHJ1ZX0sIGxvY2sgPT4geyBhdmFpbGFibGUg
PSBsb2NrICE9PSBudWxsOyB9KTsKKyAgYXNzZXJ0X2ZhbHNlKGF2YWlsYWJsZSk7CisgIGFzc2Vy
dF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8vIEltcGxpY2l0bHkgcmVsZWFzZSBpdCBieSBu
YXZpZ2F0aW5nIHRoZSBmcmFtZS4KKyAgZnJhbWUuc3JjID0gJ2Fib3V0OmJsYW5rJzsKKyAgYXdh
aXQgYmxvY2tlZDsKKyAgLy8gTm93IHdlJ3ZlIGdvdCBpdC4KKyAgYXNzZXJ0X3RydWUobG9ja19n
cmFudGVkKTsKKworfSwgJ05hdmlnYXRlZCBGcmFtZSB3aXRoIGhlbGQgbG9jaycpOworCitwcm9t
aXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1lbnRzKG5hdmlnYXRvci5sb2Nr
cyk7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisKKyAgLy8gZnJhbWUxIHJlcXVlc3Rz
IGFuZCBob2xkcyByZXMgLSBzaG91bGQgYmUgZ3JhbnRlZCBpbW1lZGlhdGVseS4KKyAgLy8gZnJh
bWUyIHJlcXVlc3RzIHJlcyAtIHNob3VsZCBiZSBibG9ja2VkLgorICAvLyBmcmFtZTMgcmVxdWVz
dHMgcmVzIC0gc2hvdWxkIGJlIGJsb2NrZWQuCisgIC8vIGZyYW1lMiBpcyBuYXZpZ2F0ZWQuCisg
IC8vIGZyYW1lMSByZWxlYXNlcyByZXMuCisgIC8vIGZyYW1lMydzIHJlcXVlc3Qgc2hvdWxkIGJl
IGdyYW50ZWQuCisKKyAgY29uc3QgZnJhbWUxID0gYXdhaXQgaWZyYW1lKCdyZXNvdXJjZXMvaWZy
YW1lLmh0bWwnKTsKKyAgY29uc3QgZnJhbWUyID0gYXdhaXQgaWZyYW1lKCdyZXNvdXJjZXMvaWZy
YW1lLmh0bWwnKTsKKyAgY29uc3QgZnJhbWUzID0gYXdhaXQgaWZyYW1lKCdyZXNvdXJjZXMvaWZy
YW1lLmh0bWwnKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lMS5yZW1vdmUoKTsgfSk7
CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZTIucmVtb3ZlKCk7IH0pOworICB0LmFkZF9j
bGVhbnVwKCgpID0+IHsgZnJhbWUzLnJlbW92ZSgpOyB9KTsKKworICAvLyBmcmFtZTEgcmVxdWVz
dHMgYW5kIGhvbGRzIHJlcyAtIHNob3VsZCBiZSBncmFudGVkIGltbWVkaWF0ZWx5LgorICBjb25z
dCBsb2NrX2lkID0gKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdCgKKyAgICBmcmFtZTEsIHtvcDog
J3JlcXVlc3QnLCBuYW1lOiByZXN9KSkubG9ja19pZDsKKworICAvLyBmcmFtZTIgcmVxdWVzdHMg
cmVzIC0gc2hvdWxkIGJlIGJsb2NrZWQuCisgIC8vIChkb24ndCBhdHRhY2ggbGlzdGVuZXJzIGFz
IHRoZXkgd2lsbCBrZWVwIHRoZSBmcmFtZSBhbGl2ZSkKKyAgZnJhbWUyLmNvbnRlbnRXaW5kb3cu
cG9zdE1lc3NhZ2Uoe29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc30sICcqJyk7CisKKyAgLy8gZnJh
bWUzIHJlcXVlc3RzIHJlcyAtIHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVk
ID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUzLCB7
b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSk7CisgIGJsb2NrZWQudGhlbihmID0+IHsgbG9ja19n
cmFudGVkID0gdHJ1ZTsgfSk7CisKKyAgLy8gVmVyaWZ5IHRoYXQgZnJhbWUzIGNhbid0IGdldCBp
dC4KKyAgYXNzZXJ0X3RydWUoKGF3YWl0IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTMsIHsKKyAg
ICBvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMsIGlmQXZhaWxhYmxlOiB0cnVlCisgIH0pKS5mYWls
ZWQsICdMb2NrIHJlcXVlc3Qgc2hvdWxkIGhhdmUgZmFpbGVkJyk7CisgIGFzc2VydF9mYWxzZShs
b2NrX2dyYW50ZWQpOworCisgIC8vIE5hdmlnYXRlIGZyYW1lMi4KKyAgZnJhbWUyLnNyYyA9ICdh
Ym91dDpibGFuayc7CisKKyAgLy8gZnJhbWUxIHJlbGVhc2VzIGxvY2sKKyAgYXdhaXQgcG9zdFRv
RnJhbWVBbmRXYWl0KGZyYW1lMSwge29wOiAncmVsZWFzZScsIGxvY2tfaWR9KTsKKworICAvLyBm
cmFtZTMncyByZXF1ZXN0IHNob3VsZCBiZSBncmFudGVkLgorICBhd2FpdCBibG9ja2VkOworICBh
c3NlcnRfdHJ1ZShsb2NrX2dyYW50ZWQpOworCit9LCAnTmF2aWdhdGVkIEZyYW1lIHdpdGggcGVu
ZGluZyByZXF1ZXN0Jyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgYXNzZXJ0X2lt
cGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsK
KworICAvLyBmcmFtZTEgcmVxdWVzdHMgYW5kIGhvbGRzIHJlcyAtIHNob3VsZCBiZSBncmFudGVk
IGltbWVkaWF0ZWx5LgorICAvLyBmcmFtZTIgcmVxdWVzdHMgcmVzIC0gc2hvdWxkIGJlIGJsb2Nr
ZWQuCisgIC8vIGZyYW1lMyByZXF1ZXN0cyByZXMgLSBzaG91bGQgYmUgYmxvY2tlZC4KKyAgLy8g
ZnJhbWUyIGlzIHJlbW92ZWQuCisgIC8vIGZyYW1lMSBkcm9wcyBsb2NrLgorICAvLyBmcmFtZTMn
cyByZXF1ZXN0IHNob3VsZCBiZSBncmFudGVkLgorCisgIGNvbnN0IGZyYW1lMSA9IGF3YWl0IGlm
cmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNvbnN0IGZyYW1lMiA9IGF3YWl0IGlm
cmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIGNvbnN0IGZyYW1lMyA9IGF3YWl0IGlm
cmFtZSgncmVzb3VyY2VzL2lmcmFtZS5odG1sJyk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBm
cmFtZTEucmVtb3ZlKCk7IH0pOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUzLnJlbW92
ZSgpOyB9KTsKKworICAvLyBmcmFtZTEgcmVxdWVzdHMgYW5kIGhvbGRzIHJlcyAtIHNob3VsZCBi
ZSBncmFudGVkIGltbWVkaWF0ZWx5LgorICBjb25zdCBsb2NrX2lkID0gKGF3YWl0IHBvc3RUb0Zy
YW1lQW5kV2FpdCgKKyAgICBmcmFtZTEsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9KSkubG9j
a19pZDsKKworICAvLyBmcmFtZTIgcmVxdWVzdHMgcmVzIC0gc2hvdWxkIGJlIGJsb2NrZWQuCisg
IC8vIChkb24ndCBhdHRhY2ggbGlzdGVuZXJzIGFzIHRoZXkgd2lsbCBrZWVwIHRoZSBmcmFtZSBh
bGl2ZSkKKyAgZnJhbWUyLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2Uoe29wOiAncmVxdWVzdCcs
IG5hbWU6IHJlc30sICcqJyk7CisKKyAgLy8gZnJhbWUzIHJlcXVlc3RzIHJlcyAtIHNob3VsZCBi
ZSBibG9ja2VkLgorICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQg
PSBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUzLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSk7
CisgIGJsb2NrZWQudGhlbihmID0+IHsgbG9ja19ncmFudGVkID0gdHJ1ZTsgfSk7CisKKyAgLy8g
U28gZnJhbWUzIGNhbid0IGdldCBpdAorICBhc3NlcnRfdHJ1ZSgoYXdhaXQgcG9zdFRvRnJhbWVB
bmRXYWl0KGZyYW1lMywgeworICAgIG9wOiAncmVxdWVzdCcsIG5hbWU6IHJlcywgaWZBdmFpbGFi
bGU6IHRydWUKKyAgfSkpLmZhaWxlZCwgJ0xvY2sgcmVxdWVzdCBzaG91bGQgaGF2ZSBmYWlsZWQn
KTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tfZ3JhbnRlZCk7CisKKyAgLy8gUmVtb3ZlIGZyYW1lMi4K
KyAgZnJhbWUyLnJlbW92ZSgpOworCisgIC8vIGZyYW1lMSByZWxlYXNlcyBsb2NrCisgIGF3YWl0
IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTEsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7CisK
KyAgLy8gZnJhbWUzJ3MgcmVxdWVzdCBzaG91bGQgYmUgZ3JhbnRlZC4KKyAgYXdhaXQgYmxvY2tl
ZDsKKyAgYXNzZXJ0X3RydWUobG9ja19ncmFudGVkKTsKKworfSwgJ1JlbW92ZWQgRnJhbWUgd2l0
aCBwZW5kaW5nIHJlcXVlc3QnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhc3Nl
cnRfaW1wbGVtZW50cyhuYXZpZ2F0b3IubG9ja3MpOworICBjb25zdCByZXMgPSB1bmlxdWVOYW1l
KHQpOworCisgIGNvbnN0IGZyYW1lID0gYXdhaXQgaWZyYW1lKCdhYm91dDpibGFuaycpOworCisg
IC8vIFJlbW92ZSBhIGZyYW1lIHdoaWxlIGl0IGlzIGluIHRoZSBwcm9jZXNzIG9mIHJlcXVlc3Rp
bmcgYSBsb2NrLgorICAvLyBUaGUgcHJvbWlzZSByZXR1cm5lZCBieSBgcmVxdWVzdGAgd2lsbCBu
ZXZlciByZXNvbHZlIHNpbmNlIGl0cyBmcmFtZSBubworICAvLyBsb25nZXIgZXhpc3RzLCBidXQg
dGhlIGxvY2sgc2hvdWxkIHN0aWxsIGJlIHJlbGVhc2VkLgorICBhd2FpdCBuZXcgUHJvbWlzZShy
ZXNvbHZlID0+IHsKKyAgICBmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KHJlcywgKCkgPT4geworICAgICAgZnJhbWUucmVtb3ZlKCk7CisgICAgICByZXNvbHZlKCk7
CisgICAgfSk7CisgIH0pOworCisgIGFzc2VydF9mYWxzZSgoYXdhaXQgbmF2aWdhdG9yLmxvY2tz
LnF1ZXJ5KCkpLmhlbGQuaW5jbHVkZXMocmVzKSk7Cit9LCAnUmVtb3ZlZCBGcmFtZSBhcyBsb2Nr
IGlzIGdyYW50ZWQnKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yMjE1OGQxNzZhODI3YzhmN2Q4ZGFiMWUzNGMxZTQwMzFlYmNiMzZiCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDYgQEAKKworRkFJTCBjYWxsYmFjaydzIHJlc3VsdCBpcyBwcm9taXNpZmllZCBpZiBub3Qg
YXN5bmMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgbG9jayBpcyBoZWxkIHVudGlsIGNhbGxiYWNr
J3MgcmV0dXJuZWQgcHJvbWlzZSByZXNvbHZlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBsb2Nr
IGlzIGhlbGQgdW50aWwgY2FsbGJhY2sncyByZXR1cm5lZCBwcm9taXNlIHJlamVjdHMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QnKSIKK0ZBSUwgaGVsZCBsb2NrIHByZXZlbnRzIHRoZSBzYW1lIGNsaWVudCBmcm9t
IGFjcXVpcmluZyBpdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2
ZS5odHRwcy5hbnkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMg
ZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRo
ZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uN2ZjNGM3MzU0MDU0YzA4YTcwZTZiMWFkMDUwOTU4YzAzMDNhZjVmYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDkxIEBA
CisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBMb2NrIGhlbGQgdW50aWwgY2FsbGJhY2sg
cmVzdWx0IHJlc29sdmVzCisvLyBNRVRBOiBzY3JpcHQ9cmVzb3VyY2VzL2hlbHBlcnMuanMKKy8v
IE1FVEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNl
d29ya2VyCisKKyd1c2Ugc3RyaWN0JzsKKworLy8gRm9yIHVuY2F1Z2h0IHJlamVjdGlvbnMuCitz
ZXR1cCh7YWxsb3dfdW5jYXVnaHRfZXhjZXB0aW9uOiB0cnVlfSk7CisKK2Z1bmN0aW9uIHNub296
ZSh0LCBtcykgeyByZXR1cm4gbmV3IFByb21pc2UociA9PiB0LnN0ZXBfdGltZW91dChyLCBtcykp
OyB9CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFt
ZSh0KTsKKyAgY29uc3QgcCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgbG9jayA9PiAx
MjMpOworICBhc3NlcnRfZXF1YWxzKFByb21pc2UucmVzb2x2ZShwKSwgcCwgJ3JlcXVlc3QoKSBy
ZXN1bHQgaXMgYSBQcm9taXNlJyk7CisgIGFzc2VydF9lcXVhbHMoYXdhaXQgcCwgMTIzLCAncHJv
bWlzZSByZXNvbHZlcyB0byB0aGUgcmV0dXJuZWQgdmFsdWUnKTsKK30sICdjYWxsYmFja1wncyBy
ZXN1bHQgaXMgcHJvbWlzaWZpZWQgaWYgbm90IGFzeW5jJyk7CisKK3Byb21pc2VfdGVzdChhc3lu
YyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKyAgLy8gUmVzb2x2ZWQgd2hl
biB0aGUgbG9jayBpcyBncmFudGVkLgorICBsZXQgZ3JhbnRlZDsKKyAgY29uc3QgbG9ja19ncmFu
dGVkX3Byb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHsgZ3JhbnRlZCA9IHI7IH0pOworCisgIC8v
IExvY2sgaXMgaGVsZCB1bnRpbCB0aGlzIGlzIHJlc29sdmVkLgorICBsZXQgcmVzb2x2ZTsKKyAg
Y29uc3QgbG9ja19yZWxlYXNlX3Byb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHsgcmVzb2x2ZSA9
IHI7IH0pOworCisgIGNvbnN0IG9yZGVyID0gW107CisKKyAgbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QocmVzLCBsb2NrID0+IHsKKyAgICBncmFudGVkKGxvY2spOworICAgIHJldHVybiBsb2NrX3Jl
bGVhc2VfcHJvbWlzZTsKKyAgfSk7CisgIGF3YWl0IGxvY2tfZ3JhbnRlZF9wcm9taXNlOworCisg
IGF3YWl0IFByb21pc2UuYWxsKFsKKyAgICBzbm9vemUodCwgNTApLnRoZW4oKCkgPT4geworICAg
ICAgb3JkZXIucHVzaCgnMXN0IGxvY2sgcmVsZWFzZWQnKTsKKyAgICAgIHJlc29sdmUoKTsKKyAg
ICB9KSwKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsICgpID0+IHsKKyAgICAgIG9y
ZGVyLnB1c2goJzJuZCBsb2NrIGdyYW50ZWQnKTsKKyAgICB9KQorICBdKTsKKworICBhc3NlcnRf
YXJyYXlfZXF1YWxzKG9yZGVyLCBbJzFzdCBsb2NrIHJlbGVhc2VkJywgJzJuZCBsb2NrIGdyYW50
ZWQnXSk7Cit9LCAnbG9jayBpcyBoZWxkIHVudGlsIGNhbGxiYWNrXCdzIHJldHVybmVkIHByb21p
c2UgcmVzb2x2ZXMnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMg
PSB1bmlxdWVOYW1lKHQpOworICAvLyBSZXNvbHZlZCB3aGVuIHRoZSBsb2NrIGlzIGdyYW50ZWQu
CisgIGxldCBncmFudGVkOworICBjb25zdCBsb2NrX2dyYW50ZWRfcHJvbWlzZSA9IG5ldyBQcm9t
aXNlKHIgPT4geyBncmFudGVkID0gcjsgfSk7CisKKyAgLy8gTG9jayBpcyBoZWxkIHVudGlsIHRo
aXMgaXMgcmVqZWN0ZWQuCisgIGxldCByZWplY3Q7CisgIGNvbnN0IGxvY2tfcmVsZWFzZV9wcm9t
aXNlID0gbmV3IFByb21pc2UoKF8sIHIpID0+IHsgcmVqZWN0ID0gcjsgfSk7CisKKyAgY29uc3Qg
b3JkZXIgPSBbXTsKKworICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2sgPT4gewor
ICAgIGdyYW50ZWQobG9jayk7CisgICAgcmV0dXJuIGxvY2tfcmVsZWFzZV9wcm9taXNlOworICB9
KTsKKyAgYXdhaXQgbG9ja19ncmFudGVkX3Byb21pc2U7CisKKyAgYXdhaXQgUHJvbWlzZS5hbGwo
WworICAgIHNub296ZSh0LCA1MCkudGhlbigoKSA9PiB7CisgICAgICBvcmRlci5wdXNoKCdyZWpl
Y3QnKTsKKyAgICAgIHJlamVjdChuZXcgRXJyb3IoJ3RoaXMgdW5jYXVnaHQgcmVqZWN0aW9uIGlz
IGV4cGVjdGVkJykpOworICAgIH0pLAorICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywg
KCkgPT4geworICAgICAgb3JkZXIucHVzaCgnMm5kIGxvY2sgZ3JhbnRlZCcpOworICAgIH0pCisg
IF0pOworCisgIGFzc2VydF9hcnJheV9lcXVhbHMob3JkZXIsIFsncmVqZWN0JywgJzJuZCBsb2Nr
IGdyYW50ZWQnXSk7Cit9LCAnbG9jayBpcyBoZWxkIHVudGlsIGNhbGxiYWNrXCdzIHJldHVybmVk
IHByb21pc2UgcmVqZWN0cycpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0
IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGxldCBjYWxsYmFja19jYWxsZWQgPSBmYWxzZTsKKyAg
YXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBhc3luYyBsb2NrID0+IHsKKyAgICBh
d2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtpZkF2YWlsYWJsZTogdHJ1ZX0sIGxv
Y2sgPT4geworICAgICAgY2FsbGJhY2tfY2FsbGVkID0gdHJ1ZTsKKyAgICAgIGFzc2VydF9lcXVh
bHMobG9jaywgbnVsbCwgJ2xvY2sgcmVxdWVzdCBzaG91bGQgZmFpbCBpZiBoZWxkJyk7CisgICAg
fSk7CisgIH0pOworICBhc3NlcnRfdHJ1ZShjYWxsYmFja19jYWxsZWQsICdjYWxsYmFjayBzaG91
bGQgaGF2ZSBleGVjdXRlZCcpOworfSwgJ2hlbGQgbG9jayBwcmV2ZW50cyB0aGUgc2FtZSBjbGll
bnQgZnJvbSBhY3F1aXJpbmcgaXQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFu
eS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2
aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMjE1OGQxNzZhODI3YzhmN2Q4ZGFi
MWUzNGMxZTQwMzFlYmNiMzZiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMu
YW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorCitGQUlMIGNh
bGxiYWNrJ3MgcmVzdWx0IGlzIHByb21pc2lmaWVkIGlmIG5vdCBhc3luYyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorRkFJTCBsb2NrIGlzIGhlbGQgdW50aWwgY2FsbGJhY2sncyByZXR1cm5lZCBwcm9taXNl
IHJlc29sdmVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIGxvY2sgaXMgaGVsZCB1bnRpbCBjYWxs
YmFjaydzIHJldHVybmVkIHByb21pc2UgcmVqZWN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBo
ZWxkIGxvY2sgcHJldmVudHMgdGhlIHNhbWUgY2xpZW50IGZyb20gYWNxdWlyaW5nIGl0IHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNl
d29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCkBA
IC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBp
bmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjIxNThkMTc2YTgyN2M4ZjdkOGRhYjFlMzRjMWU0MDMxZWJjYjM2YgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNiBAQAorCitGQUlMIGNhbGxiYWNrJ3MgcmVzdWx0IGlzIHByb21pc2lmaWVk
IGlmIG5vdCBhc3luYyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBsb2NrIGlzIGhlbGQgdW50aWwg
Y2FsbGJhY2sncyByZXR1cm5lZCBwcm9taXNlIHJlc29sdmVzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitG
QUlMIGxvY2sgaXMgaGVsZCB1bnRpbCBjYWxsYmFjaydzIHJldHVybmVkIHByb21pc2UgcmVqZWN0
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBoZWxkIGxvY2sgcHJldmVudHMgdGhlIHNhbWUgY2xp
ZW50IGZyb20gYWNxdWlyaW5nIGl0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQu
dGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2hlbGQudGVudGF0aXZlLmh0dHBzLmFueS53
b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgw
YjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5o
dG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQg
dGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjk2ODc2MjVhMzQ3YWFjYzFmMzk3Yjg3NDM3MzI4YzUwNDIzMzBhMTUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNDggQEAKKworUEFTUyBpZGxfdGVzdCBzZXR1cAorUEFTUyBpZGxfdGVz
dCB2YWxpZGF0aW9uCitQQVNTIFBhcnRpYWwgaW50ZXJmYWNlIG1peGluIE5hdmlnYXRvcklEOiBt
ZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9y
TG9ja3M6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIFdvcmtlck5hdmlnYXRvciBpbmNs
dWRlcyBOYXZpZ2F0b3JMb2NrczogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdh
dG9yIGluY2x1ZGVzIE5hdmlnYXRvcklEOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBO
YXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yTGFuZ3VhZ2U6IG1lbWJlciBuYW1lcyBhcmUgdW5p
cXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JPbkxpbmU6IG1lbWJlciBuYW1l
cyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JDb250ZW50VXRp
bHM6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZp
Z2F0b3JDb29raWVzOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5j
bHVkZXMgTmF2aWdhdG9yUGx1Z2luczogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2
aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckNvbmN1cnJlbnRIYXJkd2FyZTogbWVtYmVyIG5hbWVz
IGFyZSB1bmlxdWUKK1BBU1MgV29ya2VyTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvcklEOiBt
ZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2
aWdhdG9yTGFuZ3VhZ2U6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIFdvcmtlck5hdmln
YXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JPbkxpbmU6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQ
QVNTIFdvcmtlck5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JDb25jdXJyZW50SGFyZHdhcmU6
IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogZXhp
c3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVj
dGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRl
cmZhY2Ugb2JqZWN0IGxlbmd0aCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhh
dmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5h
Z2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZSBvYmplY3QgbmFtZSBhc3Nl
cnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFu
YWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tN
YW5hZ2VyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBw
cm90b3R5cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBv
d24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIi
IG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3Bl
cnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHByb3Bl
cnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkg
IkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZB
SUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50
ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IGFzc2VydF9v
d25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2Vy
IiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFn
ZXIgaW50ZXJmYWNlOiBvcGVyYXRpb24gcmVxdWVzdChET01TdHJpbmcsIExvY2tHcmFudGVkQ2Fs
bGJhY2spIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVy
dHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcK
K0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBvcGVyYXRpb24gcmVxdWVzdChET01TdHJpbmcs
IExvY2tPcHRpb25zLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJv
cGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTog
b3BlcmF0aW9uIHF1ZXJ5KCkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZl
IG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdl
ciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBtdXN0IGJlIHByaW1hcnkgaW50ZXJmYWNlIG9m
IG5hdmlnYXRvci5sb2NrcyBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVj
dGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgU3RyaW5naWZpY2F0aW9uIG9m
IG5hdmlnYXRvci5sb2NrcyBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVj
dGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJm
YWNlOiBuYXZpZ2F0b3IubG9ja3MgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJyZXF1ZXN0KERPTVN0
cmluZywgTG9ja0dyYW50ZWRDYWxsYmFjaykiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9l
cXVhbHM6IHdyb25nIHR5cGVvZiBvYmplY3QgZXhwZWN0ZWQgIm9iamVjdCIgYnV0IGdvdCAidW5k
ZWZpbmVkIgorRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGNhbGxpbmcgcmVxdWVzdChET01T
dHJpbmcsIExvY2tHcmFudGVkQ2FsbGJhY2spIG9uIG5hdmlnYXRvci5sb2NrcyB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IHdyb25nIHR5
cGVvZiBvYmplY3QgZXhwZWN0ZWQgIm9iamVjdCIgYnV0IGdvdCAidW5kZWZpbmVkIgorRkFJTCBM
b2NrTWFuYWdlciBpbnRlcmZhY2U6IG5hdmlnYXRvci5sb2NrcyBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgInJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxsYmFjayki
IHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IHdyb25nIHR5cGVvZiBvYmplY3Qg
ZXhwZWN0ZWQgIm9iamVjdCIgYnV0IGdvdCAidW5kZWZpbmVkIgorRkFJTCBMb2NrTWFuYWdlciBp
bnRlcmZhY2U6IGNhbGxpbmcgcmVxdWVzdChET01TdHJpbmcsIExvY2tPcHRpb25zLCBMb2NrR3Jh
bnRlZENhbGxiYWNrKSBvbiBuYXZpZ2F0b3IubG9ja3Mgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBt
dXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4
cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50
ZXJmYWNlOiBuYXZpZ2F0b3IubG9ja3MgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJxdWVyeSgpIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4
cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9jayBpbnRlcmZhY2U6
IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IGFzc2VydF9vd25f
cHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVk
IHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlIG9iamVjdCBsZW5n
dGggYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
TG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZh
Y2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93
biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwg
TG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJv
dG90eXBlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3du
IHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJTCBM
b2NrIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5
OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0
eSAiTG9jayIgbWlzc2luZworRkFJTCBMb2NrIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9w
ZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9w
ZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5
ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJTCBMb2NrIGludGVy
ZmFjZTogYXR0cmlidXRlIG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBo
YXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcK
K0ZBSUwgTG9jayBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBtb2RlIGFzc2VydF9vd25fcHJvcGVydHk6
IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5
ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgbXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBs
b2NrIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBv
YmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0
IGZpbmQgdmFyaWFibGU6IGxvY2siCitGQUlMIFN0cmluZ2lmaWNhdGlvbiBvZiBsb2NrIGFzc2Vy
dF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhw
ZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFy
aWFibGU6IGxvY2siCitGQUlMIExvY2sgaW50ZXJmYWNlOiBsb2NrIG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAibmFtZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3Rl
ZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qg
b2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogbG9jayIKK0ZBSUwg
TG9jayBpbnRlcmZhY2U6IGxvY2sgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJtb2RlIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2
YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVy
cm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2NrIgorRkFJTCBOYXZpZ2F0b3IgaW50ZXJmYWNl
OiBhdHRyaWJ1dGUgbG9ja3MgYXNzZXJ0X3RydWU6IFRoZSBwcm90b3R5cGUgb2JqZWN0IG11c3Qg
aGF2ZSBhIHByb3BlcnR5ICJsb2NrcyIgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgTmF2
aWdhdG9yIGludGVyZmFjZTogbmF2aWdhdG9yIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibG9ja3Mi
IHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImxvY2tzIiBu
b3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0
aXZlLmh0dHBzLmFueS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCkBAIC0wLDAgKzEg
QEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVj
dHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5l
c3MudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGY3ODMxYzM0MDU3MjBmNjI0
MjhlYjJjODcyMmM3ZDE3MmY3NDNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRp
dmUuaHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsMjkgQEAKKy8vIE1FVEE6IHNjcmlwdD0vcmVzb3Vy
Y2VzL1dlYklETFBhcnNlci5qcworLy8gTUVUQTogc2NyaXB0PS9yZXNvdXJjZXMvaWRsaGFybmVz
cy5qcworLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyxkZWRpY2F0ZWR3b3JrZXIsc2hhcmVkd29ya2Vy
LHNlcnZpY2V3b3JrZXIKKy8vIE1FVEE6IHRpbWVvdXQ9bG9uZworCisndXNlIHN0cmljdCc7CisK
K2lkbF90ZXN0KAorICBbJ3dlYi1sb2NrcyddLAorICBbJ2h0bWwnXSwKKyAgYXN5bmMgaWRsX2Fy
cmF5ID0+IHsKKyAgICBpZGxfYXJyYXkuYWRkX29iamVjdHMoeworICAgICAgTG9ja01hbmFnZXI6
IFsnbmF2aWdhdG9yLmxvY2tzJ10sCisgICAgICBMb2NrOiBbJ2xvY2snXSwKKyAgICB9KTsKKwor
ICAgIGlmIChzZWxmLldpbmRvdykgeworICAgICAgaWRsX2FycmF5LmFkZF9vYmplY3RzKHsgTmF2
aWdhdG9yOiBbJ25hdmlnYXRvciddIH0pOworICAgIH0gZWxzZSB7CisgICAgICBpZGxfYXJyYXku
YWRkX29iamVjdHMoeyBXb3JrZXJOYXZpZ2F0b3I6IFsnbmF2aWdhdG9yJ10gfSk7CisgICAgfQor
CisgICAgdHJ5IHsKKyAgICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCduYW1lJywg
bCA9PiB7IHNlbGYubG9jayA9IGw7IH0pOworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgIC8vIFN1
cmZhY2VkIGluIGlkbGhhcm5lc3MuanMncyB0ZXN0X29iamVjdCBiZWxvdy4KKyAgICB9CisgIH0K
Kyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtl
ci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTQ0YjAxOTZjMjI0YWZmYzg2YjM4MzllZGFkM2Fk
MDk4NWM0ODc5MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFu
eS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ4IEBACisKK1BBU1MgaWRs
X3Rlc3Qgc2V0dXAKK1BBU1MgaWRsX3Rlc3QgdmFsaWRhdGlvbgorUEFTUyBQYXJ0aWFsIGludGVy
ZmFjZSBtaXhpbiBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2
aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxvY2tzOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQor
UEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yTG9ja3M6IG1lbWJlciBuYW1l
cyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JJRDogbWVtYmVy
IG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxhbmd1
YWdlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2
aWdhdG9yT25MaW5lOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5j
bHVkZXMgTmF2aWdhdG9yQ29udGVudFV0aWxzOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFT
UyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29va2llczogbWVtYmVyIG5hbWVzIGFyZSB1
bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvclBsdWdpbnM6IG1lbWJlciBu
YW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JDb25jdXJy
ZW50SGFyZHdhcmU6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIFdvcmtlck5hdmlnYXRv
ciBpbmNsdWRlcyBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgV29y
a2VyTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxhbmd1YWdlOiBtZW1iZXIgbmFtZXMgYXJl
IHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yT25MaW5lOiBt
ZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2
aWdhdG9yQ29uY3VycmVudEhhcmR3YXJlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorRkFJTCBM
b2NrTWFuYWdlciBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZh
Y2Ugb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJv
cGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3Np
bmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggYXNzZXJ0X293bl9w
cm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4
cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBp
bnRlcmZhY2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBo
YXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFu
YWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQg
cHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0
ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVy
ZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2Jq
ZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRv
ZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkg
IkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogZXhpc3Rl
bmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgQEB1bnNj
b3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUg
b3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2Vy
IiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogb3BlcmF0aW9uIHJlcXVlc3Qo
RE9NU3RyaW5nLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxm
IGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVy
dHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogb3Bl
cmF0aW9uIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxsYmFj
aykgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
TG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJ
TCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IG9wZXJhdGlvbiBxdWVyeSgpIGFzc2VydF9vd25fcHJv
cGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBl
Y3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgbXVz
dCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuYXZpZ2F0b3IubG9ja3MgYXNzZXJ0X2VxdWFsczog
d3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRlZmluZWQi
CitGQUlMIFN0cmluZ2lmaWNhdGlvbiBvZiBuYXZpZ2F0b3IubG9ja3MgYXNzZXJ0X2VxdWFsczog
d3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRlZmluZWQi
CitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2aWdhdG9yLmxvY2tzIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAicmVxdWVzdChET01TdHJpbmcsIExvY2tHcmFudGVkQ2FsbGJhY2spIiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVj
dGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJm
YWNlOiBjYWxsaW5nIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBvbiBu
YXZpZ2F0b3IubG9ja3Mgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
ciBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1
dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBuYXZpZ2F0b3Iu
bG9ja3MgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJyZXF1ZXN0KERPTVN0cmluZywgTG9ja09wdGlv
bnMsIExvY2tHcmFudGVkQ2FsbGJhY2spIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1
YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVm
aW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBjYWxsaW5nIHJlcXVlc3QoRE9NU3Ry
aW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxsYmFjaykgb24gbmF2aWdhdG9yLmxvY2tz
IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFs
czogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRlZmlu
ZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2aWdhdG9yLmxvY2tzIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAicXVlcnkoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFs
czogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRlZmlu
ZWQiCitGQUlMIExvY2sgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50
ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3du
IHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJTCBM
b2NrIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9l
cyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrIiBt
aXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlIG9iamVjdCBuYW1lIGFzc2VydF9vd25fcHJvcGVy
dHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3Bl
cnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHBy
b3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0
eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVy
dHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJv
cGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJv
cGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0
eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9i
amVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBk
b2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2si
IG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBuYW1lIGFzc2VydF9vd25f
cHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVk
IHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlOiBhdHRyaWJ1dGUg
bW9kZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5
ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJTCBMb2NrIG11c3Qg
YmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbG9jayBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4
Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmpl
Y3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2NrIgorRkFJTCBTdHJp
bmdpZmljYXRpb24gb2YgbG9jayBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3
aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVy
ZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2NrIgorRkFJTCBMb2NrIGludGVyZmFj
ZTogbG9jayBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm5hbWUiIHdpdGggdGhlIHByb3BlciB0eXBl
IGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmpl
Y3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZp
bmQgdmFyaWFibGU6IGxvY2siCitGQUlMIExvY2sgaW50ZXJmYWNlOiBsb2NrIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAibW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5l
eHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1
dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogbG9jayIK
K0ZBSUwgV29ya2VyTmF2aWdhdG9yIGludGVyZmFjZTogYXR0cmlidXRlIGxvY2tzIGFzc2VydF90
cnVlOiBUaGUgcHJvdG90eXBlIG9iamVjdCBtdXN0IGhhdmUgYSBwcm9wZXJ0eSAibG9ja3MiIGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFdvcmtlck5hdmlnYXRvciBpbnRlcmZhY2U6IG5h
dmlnYXRvciBtdXN0IGluaGVyaXQgcHJvcGVydHkgImxvY2tzIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJsb2NrcyIgbm90IGZvdW5kIGluIHByb3RvdHlw
ZSBjaGFpbgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vydmlj
ZXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3
b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3Ig
V2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2
ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBz
LmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE0NGIwMTk2YzIyNGFmZmM4NmIz
ODM5ZWRhZDNhZDA5ODVjNDg3OTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2
ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ4IEBACisKK1BBU1Mg
aWRsX3Rlc3Qgc2V0dXAKK1BBU1MgaWRsX3Rlc3QgdmFsaWRhdGlvbgorUEFTUyBQYXJ0aWFsIGlu
dGVyZmFjZSBtaXhpbiBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1Mg
TmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxvY2tzOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1
ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yTG9ja3M6IG1lbWJlciBu
YW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JJRDogbWVt
YmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxh
bmd1YWdlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMg
TmF2aWdhdG9yT25MaW5lOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBOYXZpZ2F0b3Ig
aW5jbHVkZXMgTmF2aWdhdG9yQ29udGVudFV0aWxzOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQor
UEFTUyBOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yQ29va2llczogbWVtYmVyIG5hbWVzIGFy
ZSB1bmlxdWUKK1BBU1MgTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvclBsdWdpbnM6IG1lbWJl
ciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIE5hdmlnYXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JDb25j
dXJyZW50SGFyZHdhcmU6IG1lbWJlciBuYW1lcyBhcmUgdW5pcXVlCitQQVNTIFdvcmtlck5hdmln
YXRvciBpbmNsdWRlcyBOYXZpZ2F0b3JJRDogbWVtYmVyIG5hbWVzIGFyZSB1bmlxdWUKK1BBU1Mg
V29ya2VyTmF2aWdhdG9yIGluY2x1ZGVzIE5hdmlnYXRvckxhbmd1YWdlOiBtZW1iZXIgbmFtZXMg
YXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMgTmF2aWdhdG9yT25MaW5l
OiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorUEFTUyBXb3JrZXJOYXZpZ2F0b3IgaW5jbHVkZXMg
TmF2aWdhdG9yQ29uY3VycmVudEhhcmR3YXJlOiBtZW1iZXIgbmFtZXMgYXJlIHVuaXF1ZQorRkFJ
TCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRl
cmZhY2Ugb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24g
cHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1p
c3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggYXNzZXJ0X293
bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIi
IGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdl
ciBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5v
dCBoYXZlIG93biBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2Nr
TWFuYWdlciIgbWlzc2luZworRkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBh
bmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBhc3NlcnRfb3duX3By
b3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhw
ZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGlu
dGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUg
b2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxm
IGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVy
dHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogZXhp
c3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgQEB1
bnNjb3BhYmxlcyBwcm9wZXJ0eSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhh
dmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2tNYW5h
Z2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogb3BlcmF0aW9uIHJlcXVl
c3QoRE9NU3RyaW5nLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgZXhwZWN0ZWQgcHJv
cGVydHkgIkxvY2tNYW5hZ2VyIiBtaXNzaW5nCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTog
b3BlcmF0aW9uIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxs
YmFjaykgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0
eSAiTG9ja01hbmFnZXIiIGV4cGVjdGVkIHByb3BlcnR5ICJMb2NrTWFuYWdlciIgbWlzc2luZwor
RkFJTCBMb2NrTWFuYWdlciBpbnRlcmZhY2U6IG9wZXJhdGlvbiBxdWVyeSgpIGFzc2VydF9vd25f
cHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2tNYW5hZ2VyIiBl
eHBlY3RlZCBwcm9wZXJ0eSAiTG9ja01hbmFnZXIiIG1pc3NpbmcKK0ZBSUwgTG9ja01hbmFnZXIg
bXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuYXZpZ2F0b3IubG9ja3MgYXNzZXJ0X2VxdWFs
czogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRlZmlu
ZWQiCitGQUlMIFN0cmluZ2lmaWNhdGlvbiBvZiBuYXZpZ2F0b3IubG9ja3MgYXNzZXJ0X2VxdWFs
czogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRlZmlu
ZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2aWdhdG9yLmxvY2tzIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAicmVxdWVzdChET01TdHJpbmcsIExvY2tHcmFudGVkQ2FsbGJhY2spIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4
cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50
ZXJmYWNlOiBjYWxsaW5nIHJlcXVlc3QoRE9NU3RyaW5nLCBMb2NrR3JhbnRlZENhbGxiYWNrKSBv
biBuYXZpZ2F0b3IubG9ja3Mgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciBhc3NlcnRfZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3Qi
IGJ1dCBnb3QgInVuZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBuYXZpZ2F0
b3IubG9ja3MgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJyZXF1ZXN0KERPTVN0cmluZywgTG9ja09w
dGlvbnMsIExvY2tHcmFudGVkQ2FsbGJhY2spIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRf
ZXF1YWxzOiB3cm9uZyB0eXBlb2Ygb2JqZWN0IGV4cGVjdGVkICJvYmplY3QiIGJ1dCBnb3QgInVu
ZGVmaW5lZCIKK0ZBSUwgTG9ja01hbmFnZXIgaW50ZXJmYWNlOiBjYWxsaW5nIHJlcXVlc3QoRE9N
U3RyaW5nLCBMb2NrT3B0aW9ucywgTG9ja0dyYW50ZWRDYWxsYmFjaykgb24gbmF2aWdhdG9yLmxv
Y2tzIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2Vx
dWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRl
ZmluZWQiCitGQUlMIExvY2tNYW5hZ2VyIGludGVyZmFjZTogbmF2aWdhdG9yLmxvY2tzIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAicXVlcnkoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2Vx
dWFsczogd3JvbmcgdHlwZW9mIG9iamVjdCBleHBlY3RlZCAib2JqZWN0IiBidXQgZ290ICJ1bmRl
ZmluZWQiCitGQUlMIExvY2sgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2Yg
aW50ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUg
b3duIHByb3BlcnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJ
TCBMb2NrIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYg
ZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVkIHByb3BlcnR5ICJMb2Nr
IiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlIG9iamVjdCBuYW1lIGFzc2VydF9vd25fcHJv
cGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVjdGVkIHBy
b3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5k
IHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJv
cGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQg
cHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIg
cHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9w
ZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxvY2siIG1pc3NpbmcKK0ZBSUwgTG9jayBp
bnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBl
IG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2Vs
ZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiTG9jayIgZXhwZWN0ZWQgcHJvcGVydHkgIkxv
Y2siIG1pc3NpbmcKK0ZBSUwgTG9jayBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBuYW1lIGFzc2VydF9v
d25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIkxvY2siIGV4cGVj
dGVkIHByb3BlcnR5ICJMb2NrIiBtaXNzaW5nCitGQUlMIExvY2sgaW50ZXJmYWNlOiBhdHRyaWJ1
dGUgbW9kZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3Bl
cnR5ICJMb2NrIiBleHBlY3RlZCBwcm9wZXJ0eSAiTG9jayIgbWlzc2luZworRkFJTCBMb2NrIG11
c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbG9jayBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVk
IGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBv
YmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2NrIgorRkFJTCBT
dHJpbmdpZmljYXRpb24gb2YgbG9jayBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlv
biB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBsb2NrIgorRkFJTCBMb2NrIGludGVy
ZmFjZTogbG9jayBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm5hbWUiIHdpdGggdGhlIHByb3BlciB0
eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBv
YmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0
IGZpbmQgdmFyaWFibGU6IGxvY2siCitGQUlMIExvY2sgaW50ZXJmYWNlOiBsb2NrIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAibW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczog
VW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxs
IGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogbG9j
ayIKK0ZBSUwgV29ya2VyTmF2aWdhdG9yIGludGVyZmFjZTogYXR0cmlidXRlIGxvY2tzIGFzc2Vy
dF90cnVlOiBUaGUgcHJvdG90eXBlIG9iamVjdCBtdXN0IGhhdmUgYSBwcm9wZXJ0eSAibG9ja3Mi
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFdvcmtlck5hdmlnYXRvciBpbnRlcmZhY2U6
IG5hdmlnYXRvciBtdXN0IGluaGVyaXQgcHJvcGVydHkgImxvY2tzIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJsb2NrcyIgbm90IGZvdW5kIGluIHByb3Rv
dHlwZSBjaGFpbgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29y
a2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL2lkbGhhcm5lc3MudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCww
ICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFz
dHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL2lmQXZhaWxhYmxlLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjg5MTBjMjdhNTJjMTQ0MGFmNjZlNjA0MTBkZWJmM2JhZGVmYWM0MjcKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEyIEBACisKK0ZBSUwgTG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBsb2Nr
IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2
YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2Nr
IHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSwgY2FsbGJhY2sg
dGhyb3dzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxh
YmxlIC0gdW5yZWxhdGVkIGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBTaGFyZWQg
bG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFyZWQgbG9jayBoZWxkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIEV4Y2x1c2l2ZSBsb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAt
IHNoYXJlZCBsb2NrIGhlbGQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU2hhcmVkIGxvY2sgcmVx
dWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gZXhjbHVzaXZlIGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIHN5
bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWpl
Y3RzIGlmIGFzeW5jIGNhbGxiYWNrIHlpZWxkcyByZWplY3RlZCBwcm9taXNlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0JykiCitGQUlMIExvY2tzIGFyZSBhdmFpbGFibGUgb25jZSBwcmV2aW91cyByZWxlYXNlIGlz
IHByb2Nlc3NlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50
YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL2lmQXZhaWxhYmxlLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCww
ICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFz
dHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWZB
dmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42M2U2ZDU2OGZlNTEz
NTEyY2I1NThiZDY2ZWViZWExYjYyNWQ1NGM2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUu
dGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDE2MyBAQAorLy8gTUVUQTogdGl0bGU9
V2ViIExvY2tzIEFQSTogaWZBdmFpbGFibGUgb3B0aW9uCisvLyBNRVRBOiBzY3JpcHQ9cmVzb3Vy
Y2VzL2hlbHBlcnMuanMKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2VyLHNo
YXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisKKyd1c2Ugc3RyaWN0JzsKKworcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSBzZWxmLnVuaXF1ZU5hbWUodCk7CisgIGxldCBj
YWxsYmFja19jYWxsZWQgPSBmYWxzZTsKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
cmVzLCB7aWZBdmFpbGFibGU6IHRydWV9LCBhc3luYyBsb2NrID0+IHsKKyAgICBjYWxsYmFja19j
YWxsZWQgPSB0cnVlOworICAgIGFzc2VydF9ub3RfZXF1YWxzKGxvY2ssIG51bGwsICdsb2NrIHNo
b3VsZCBiZSBncmFudGVkJyk7CisgIH0pOworICBhc3NlcnRfdHJ1ZShjYWxsYmFja19jYWxsZWQs
ICdjYWxsYmFjayBzaG91bGQgYmUgY2FsbGVkJyk7Cit9LCAnTG9jayByZXF1ZXN0IHdpdGggaWZB
dmFpbGFibGUgLSBsb2NrIGF2YWlsYWJsZScpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7
CisgIGNvbnN0IHJlcyA9IHNlbGYudW5pcXVlTmFtZSh0KTsKKyAgbGV0IGNhbGxiYWNrX2NhbGxl
ZCA9IGZhbHNlOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGFzeW5jIGxv
Y2sgPT4geworICAgIC8vIFJlcXVlc3Qgd291bGQgdGltZSBvdXQgaWYgfGlmQXZhaWxhYmxlfCB3
YXMgbm90IHNwZWNpZmllZC4KKyAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBuYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCgKKyAgICAgIHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9
PiB7CisgICAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgICAgIGFzc2VydF9lcXVh
bHMobG9jaywgbnVsbCwgJ2xvY2sgc2hvdWxkIG5vdCBiZSBncmFudGVkJyk7CisgICAgICAgIHJl
dHVybiAxMjM7CisgICAgICB9KTsKKyAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgMTIzLCAncmVz
dWx0IHNob3VsZCBiZSB2YWx1ZSByZXR1cm5lZCBieSBjYWxsYmFjaycpOworICB9KTsKKyAgYXNz
ZXJ0X3RydWUoY2FsbGJhY2tfY2FsbGVkLCAnY2FsbGJhY2sgc2hvdWxkIGJlIGNhbGxlZCcpOwor
fSwgJ0xvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gbG9jayBub3QgYXZhaWxhYmxlJyk7
CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51bmlxdWVO
YW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgdHJ5IHsKKyAgICAgIC8v
IFJlcXVlc3Qgd291bGQgdGltZSBvdXQgaWYgfGlmQXZhaWxhYmxlfCB3YXMgbm90IHNwZWNpZmll
ZC4KKyAgICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge2lmQXZhaWxhYmxl
OiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7
CisgICAgICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwgJ2xvY2sgc2hvdWxkIG5vdCBiZSBn
cmFudGVkJyk7CisgICAgICAgIHRocm93IDEyMzsKKyAgICAgIH0pOworICAgICAgYXNzZXJ0X3Vu
cmVhY2hlZCgnY2FsbCBzaG91bGQgdGhyb3cnKTsKKyAgICB9IGNhdGNoIChleCkgeworICAgICAg
YXNzZXJ0X2VxdWFscyhleCwgMTIzLCAnZXggc2hvdWxkIGJlIHZhbHVlIHRocm93biBieSBjYWxs
YmFjaycpOworICAgIH0KKyAgfSk7CisgIGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2Nh
bGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWls
YWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSwgY2FsbGJhY2sgdGhyb3dzJyk7CisKK3Byb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51bmlxdWVOYW1lKHQpOworICBs
ZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgLy8gUmVxdWVzdCB3aXRoIGEgZGlmZmVyZW50
IG5hbWUgLSBzaG91bGQgYmUgZ3JhbnRhYmxlLgorICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0KCdkaWZmZXJlbnQnLCB7aWZBdmFpbGFibGU6IHRydWV9LCBhc3luYyBsb2NrID0+IHsK
KyAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgICBhc3NlcnRfbm90X2VxdWFscyhs
b2NrLCBudWxsLCAnbG9jayBzaG91bGQgYmUgZ3JhbnRlZCcpOworICAgIH0pOworICB9KTsKKyAg
YXNzZXJ0X3RydWUoY2FsbGJhY2tfY2FsbGVkLCAnY2FsbGJhY2sgc2hvdWxkIGJlIGNhbGxlZCcp
OworfSwgJ0xvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gdW5yZWxhdGVkIGxvY2sgaGVs
ZCcpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHNlbGYudW5p
cXVlTmFtZSh0KTsKKyAgbGV0IGNhbGxiYWNrX2NhbGxlZCA9IGZhbHNlOworICBhd2FpdCBuYXZp
Z2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHttb2RlOiAnc2hhcmVkJ30sIGFzeW5jIGxvY2sgPT4g
eworICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgICAgcmVzLCB7bW9kZTog
J3NoYXJlZCcsIGlmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGNh
bGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGxvY2ssIG51
bGwsICdsb2NrIHNob3VsZCBiZSBncmFudGVkJyk7CisgICAgICB9KTsKKyAgfSk7CisgIGFzc2Vy
dF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30s
ICdTaGFyZWQgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFyZWQgbG9jayBoZWxk
Jyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51bmlx
dWVOYW1lKHQpOworICBsZXQgY2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge21vZGU6ICdzaGFyZWQnfSwgYXN5bmMgbG9jayA9PiB7
CisgICAgLy8gUmVxdWVzdCB3b3VsZCB0aW1lIG91dCBpZiB8aWZBdmFpbGFibGV8IHdhcyBub3Qg
c3BlY2lmaWVkLgorICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge2lmQXZh
aWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICBjYWxsYmFja19jYWxsZWQgPSB0
cnVlOworICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrLCBudWxsLCAnbG9jayBzaG91bGQgbm90IGJl
IGdyYW50ZWQnKTsKKyAgICB9KTsKKyAgfSk7CisgIGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxl
ZCwgJ2NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdFeGNsdXNpdmUgbG9jayByZXF1
ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFyZWQgbG9jayBoZWxkJyk7CisKK3Byb21pc2VfdGVz
dChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51bmlxdWVOYW1lKHQpOworICBsZXQg
Y2FsbGJhY2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KHJlcywgYXN5bmMgbG9jayA9PiB7CisgICAgLy8gUmVxdWVzdCB3b3VsZCB0aW1lIG91dCBpZiB8
aWZBdmFpbGFibGV8IHdhcyBub3Qgc3BlY2lmaWVkLgorICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KAorICAgICAgcmVzLCB7bW9kZTogJ3NoYXJlZCcsIGlmQXZhaWxhYmxlOiB0cnVl
fSwgYXN5bmMgbG9jayA9PiB7CisgICAgICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAg
ICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwgJ2xvY2sgc2hvdWxkIG5vdCBiZSBncmFudGVk
Jyk7CisgICAgICB9KTsKKyAgfSk7CisgIGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2Nh
bGxiYWNrIHNob3VsZCBiZSBjYWxsZWQnKTsKK30sICdTaGFyZWQgbG9jayByZXF1ZXN0IHdpdGgg
aWZBdmFpbGFibGUgLSBleGNsdXNpdmUgbG9jayBoZWxkJyk7CisKK3Byb21pc2VfdGVzdChhc3lu
YyB0ID0+IHsKKyAgY29uc3QgcmVzID0gc2VsZi51bmlxdWVOYW1lKHQpOworICBsZXQgY2FsbGJh
Y2tfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywg
YXN5bmMgbG9jayA9PiB7CisgICAgY2FsbGJhY2tfY2FsbGVkID0gdHJ1ZTsKKyAgICBjb25zdCB0
ZXN0X2Vycm9yID0ge25hbWU6ICd0ZXN0J307CisgICAgY29uc3QgcCA9IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KAorICAgICAgcmVzLCB7aWZBdmFpbGFibGU6IHRydWV9LCBsb2NrID0+IHsKKyAg
ICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrLCBudWxsLCAnbG9jayBzaG91bGQgbm90IGJlIGF2YWls
YWJsZScpOworICAgICAgICB0aHJvdyB0ZXN0X2Vycm9yOworICAgICAgfSk7CisgICAgYXNzZXJ0
X2VxdWFscyhQcm9taXNlLnJlc29sdmUocCksIHAsICdyZXF1ZXN0KCkgcmVzdWx0IGlzIGEgUHJv
bWlzZScpOworICAgIGF3YWl0IHByb21pc2VfcmVqZWN0c19leGFjdGx5KHQsIHRlc3RfZXJyb3Is
IHAsICdyZXN1bHQgc2hvdWxkIHJlamVjdCcpOworICB9KTsKKyAgYXNzZXJ0X3RydWUoY2FsbGJh
Y2tfY2FsbGVkLCAnY2FsbGJhY2sgc2hvdWxkIGJlIGNhbGxlZCcpOworfSwgJ1JldHVybmVkIFBy
b21pc2UgcmVqZWN0cyBpZiBjYWxsYmFjayB0aHJvd3Mgc3luY2hyb25vdXNseScpOworCitwcm9t
aXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHNlbGYudW5pcXVlTmFtZSh0KTsK
KyAgbGV0IGNhbGxiYWNrX2NhbGxlZCA9IGZhbHNlOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdChyZXMsIGFzeW5jIGxvY2sgPT4geworICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7
CisgICAgY29uc3QgdGVzdF9lcnJvciA9IHtuYW1lOiAndGVzdCd9OworICAgIGNvbnN0IHAgPSBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICAgIHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwg
YXN5bmMgbG9jayA9PiB7CisgICAgICAgIGFzc2VydF9lcXVhbHMobG9jaywgbnVsbCwgJ2xvY2sg
c2hvdWxkIG5vdCBiZSBhdmFpbGFibGUnKTsKKyAgICAgICAgdGhyb3cgdGVzdF9lcnJvcjsKKyAg
ICAgIH0pOworICAgIGFzc2VydF9lcXVhbHMoUHJvbWlzZS5yZXNvbHZlKHApLCBwLCAncmVxdWVz
dCgpIHJlc3VsdCBpcyBhIFByb21pc2UnKTsKKyAgICBhd2FpdCBwcm9taXNlX3JlamVjdHNfZXhh
Y3RseSh0LCB0ZXN0X2Vycm9yLCBwLCAncmVzdWx0IHNob3VsZCByZWplY3QnKTsKKyAgfSk7Cisg
IGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ2NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQn
KTsKK30sICdSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMgaWYgYXN5bmMgY2FsbGJhY2sgeWllbGRz
IHJlamVjdGVkIHByb21pc2UnKTsKKworLy8gUmVncmVzc2lvbiB0ZXN0IGZvcjogaHR0cHM6Ly9j
cmJ1Zy5jb20vODQwOTk0Citwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlczEg
PSBzZWxmLnVuaXF1ZU5hbWUodCk7CisgIGNvbnN0IHJlczIgPSBzZWxmLnVuaXF1ZU5hbWUodCk7
CisgIGxldCBjYWxsYmFjazFfY2FsbGVkID0gZmFsc2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KHJlczEsIGFzeW5jIGxvY2sgPT4geworICAgIGNhbGxiYWNrMV9jYWxsZWQgPSB0
cnVlOworICAgIGxldCBjYWxsYmFjazJfY2FsbGVkID0gZmFsc2U7CisgICAgYXdhaXQgbmF2aWdh
dG9yLmxvY2tzLnJlcXVlc3QocmVzMiwgYXN5bmMgbG9jayA9PiB7CisgICAgICBjYWxsYmFjazJf
Y2FsbGVkID0gdHJ1ZTsKKyAgICB9KTsKKyAgICBhc3NlcnRfdHJ1ZShjYWxsYmFjazJfY2FsbGVk
LCAnY2FsbGJhY2syIHNob3VsZCBiZSBjYWxsZWQnKTsKKworICAgIGxldCBjYWxsYmFjazNfY2Fs
bGVkID0gZmFsc2U7CisgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzMiwge2lm
QXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jayA9PiB7CisgICAgICBjYWxsYmFjazNfY2FsbGVk
ID0gdHJ1ZTsKKyAgICAgIC8vIFRoaXMgcmVxdWVzdCB3b3VsZCBmYWlsIGlmIHRoZSAiaXMgdGhp
cyBncmFudGFibGU/IiB0ZXN0CisgICAgICAvLyBmYWlsZWQsIGUuZy4gZHVlIHRvIHRoZSByZWxl
YXNlIHdpdGhvdXQgYSBwZW5kaW5nIHJlcXVlc3QKKyAgICAgIC8vIHNraXBwaW5nIHN0ZXBzLgor
ICAgICAgYXNzZXJ0X25vdF9lcXVhbHMobG9jaywgbnVsbCwgJ0xvY2sgc2hvdWxkIGJlIGF2YWls
YWJsZScpOworICAgIH0pOworICAgIGFzc2VydF90cnVlKGNhbGxiYWNrM19jYWxsZWQsICdjYWxs
YmFjazIgc2hvdWxkIGJlIGNhbGxlZCcpOworICB9KTsKKyAgYXNzZXJ0X3RydWUoY2FsbGJhY2sx
X2NhbGxlZCwgJ2NhbGxiYWNrMSBzaG91bGQgYmUgY2FsbGVkJyk7Cit9LCAnTG9ja3MgYXJlIGF2
YWlsYWJsZSBvbmNlIHByZXZpb3VzIHJlbGVhc2UgaXMgcHJvY2Vzc2VkJyk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9p
ZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
aWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44OTEwYzI3YTUyYzE0NDBhZjY2ZTYwNDEwZGViZjNiYWRlZmFjNDI3Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29y
a2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisKK0ZBSUwgTG9jayByZXF1ZXN0IHdp
dGggaWZBdmFpbGFibGUgLSBsb2NrIGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBM
b2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90
IGF2YWlsYWJsZSwgY2FsbGJhY2sgdGhyb3dzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sg
cmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gdW5yZWxhdGVkIGxvY2sgaGVsZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBTaGFyZWQgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBzaGFy
ZWQgbG9jayBoZWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEV4Y2x1c2l2ZSBsb2NrIHJlcXVl
c3Qgd2l0aCBpZkF2YWlsYWJsZSAtIHNoYXJlZCBsb2NrIGhlbGQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIK
K0ZBSUwgU2hhcmVkIGxvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gZXhjbHVzaXZlIGxv
Y2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJlamVjdHMg
aWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwg
UmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGFzeW5jIGNhbGxiYWNrIHlpZWxkcyByZWplY3Rl
ZCBwcm9taXNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2tzIGFyZSBhdmFpbGFibGUgb25j
ZSBwcmV2aW91cyByZWxlYXNlIGlzIHByb2Nlc3NlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lm
QXZhaWxhYmxlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApA
QCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3Qg
aW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtl
ci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODkxMGMyN2E1MmMxNDQwYWY2NmU2MDQxMGRlYmYz
YmFkZWZhYzQyNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2lmQXZhaWxhYmxlLnRlbnRhdGl2ZS5odHRwcy5h
bnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisKK0ZBSUwgTG9jayByZXF1
ZXN0IHdpdGggaWZBdmFpbGFibGUgLSBsb2NrIGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
RkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxvY2sgbm90IGF2YWlsYWJsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIGxv
Y2sgbm90IGF2YWlsYWJsZSwgY2FsbGJhY2sgdGhyb3dzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlM
IExvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gdW5yZWxhdGVkIGxvY2sgaGVsZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9j
a3MucmVxdWVzdCcpIgorRkFJTCBTaGFyZWQgbG9jayByZXF1ZXN0IHdpdGggaWZBdmFpbGFibGUg
LSBzaGFyZWQgbG9jayBoZWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEV4Y2x1c2l2ZSBsb2Nr
IHJlcXVlc3Qgd2l0aCBpZkF2YWlsYWJsZSAtIHNoYXJlZCBsb2NrIGhlbGQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QnKSIKK0ZBSUwgU2hhcmVkIGxvY2sgcmVxdWVzdCB3aXRoIGlmQXZhaWxhYmxlIC0gZXhjbHVz
aXZlIGxvY2sgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXR1cm5lZCBQcm9taXNlIHJl
amVjdHMgaWYgY2FsbGJhY2sgdGhyb3dzIHN5bmNocm9ub3VzbHkgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQg
aXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIK
K0ZBSUwgUmV0dXJuZWQgUHJvbWlzZSByZWplY3RzIGlmIGFzeW5jIGNhbGxiYWNrIHlpZWxkcyBy
ZWplY3RlZCBwcm9taXNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2tzIGFyZSBhdmFpbGFi
bGUgb25jZSBwcmV2aW91cyByZWxlYXNlIGlzIHByb2Nlc3NlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWZB
dmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgy
OTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWZB
dmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8
IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUg
dG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTVkOTc3YTEzZWQyMGRhODg1Yzc3MTQxMjVkYjNjOTVjMjMwYzE0OAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDQgQEAKKworRkFJTCBMb2NrIGF0dHJpYnV0ZXMgcmVmbGVjdCByZXF1ZXN0ZWQg
cHJvcGVydGllcyAoZXhjbHVzaXZlKSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBMb2NrIGF0dHJp
YnV0ZXMgcmVmbGVjdCByZXF1ZXN0ZWQgcHJvcGVydGllcyAoc2hhcmVkKSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgy
OTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbG9j
ay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0t
IFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8g
cnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmli
dXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQxYzAzMTAzZTBiN2Q3Y2Y0
NjBiNTFlN2NkOTc0YTc2MTVjODk5NTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMu
dGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDE4IEBACisvLyBNRVRBOiB0aXRsZT1X
ZWIgTG9ja3MgQVBJOiBMb2NrIEF0dHJpYnV0ZXMKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csZGVk
aWNhdGVkd29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisKKyd1c2Ugc3RyaWN0JzsK
KworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCgncmVzb3VyY2UnLCBsb2NrID0+IHsKKyAgICBhc3NlcnRfZXF1YWxzKGxvY2submFtZSwg
J3Jlc291cmNlJyk7CisgICAgYXNzZXJ0X2VxdWFscyhsb2NrLm1vZGUsICdleGNsdXNpdmUnKTsK
KyAgfSk7Cit9LCAnTG9jayBhdHRyaWJ1dGVzIHJlZmxlY3QgcmVxdWVzdGVkIHByb3BlcnRpZXMg
KGV4Y2x1c2l2ZSknKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhd2FpdCBuYXZp
Z2F0b3IubG9ja3MucmVxdWVzdCgncmVzb3VyY2UnLCB7bW9kZTogJ3NoYXJlZCd9LCBsb2NrID0+
IHsKKyAgICBhc3NlcnRfZXF1YWxzKGxvY2submFtZSwgJ3Jlc291cmNlJyk7CisgICAgYXNzZXJ0
X2VxdWFscyhsb2NrLm1vZGUsICdzaGFyZWQnKTsKKyAgfSk7Cit9LCAnTG9jayBhdHRyaWJ1dGVz
IHJlZmxlY3QgcmVxdWVzdGVkIHByb3BlcnRpZXMgKHNoYXJlZCknKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2st
YXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOTVkOTc3YTEzZWQyMGRhODg1Yzc3MTQxMjVkYjNjOTVjMjMwYzE0
OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNl
cnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlMIExvY2sgYXR0
cmlidXRlcyByZWZsZWN0IHJlcXVlc3RlZCBwcm9wZXJ0aWVzIChleGNsdXNpdmUpIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIExvY2sgYXR0cmlidXRlcyByZWZsZWN0IHJlcXVlc3RlZCBwcm9wZXJ0
aWVzIChzaGFyZWQpIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRl
cy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50
ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEz
NTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbG9jay1h
dHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCkBAIC0wLDAg
KzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0
cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55Lndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1ZDk3N2ExM2VkMjBkYTg4NWM3NzE0MTI1ZGIz
Yzk1YzIzMGMxNDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9sb2NrLWF0dHJpYnV0ZXMudGVudGF0aXZlLmh0
dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlMIExvY2sg
YXR0cmlidXRlcyByZWZsZWN0IHJlcXVlc3RlZCBwcm9wZXJ0aWVzIChleGNsdXNpdmUpIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0JykiCitGQUlMIExvY2sgYXR0cmlidXRlcyByZWZsZWN0IHJlcXVlc3RlZCBwcm9w
ZXJ0aWVzIChzaGFyZWQpIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmli
dXRlcy50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRlbnRh
dGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1
ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2stYXR0cmlidXRlcy50
ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBm
aWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhl
IHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNs
dXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjJjMjdi
YjkwOGNjMzhjODA5MzRkN2I4NzA3YTMxZWZkN2VlZWM3NgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUt
ZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBA
QAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRl
ZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QnKSIKK0ZBSUwgUmVxdWVzdHMgZm9yIGRpc3RpbmN0IHJlc291cmNlcyBjYW4gYmUgZ3JhbnRl
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50ZW50YXRpdmUu
aHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCww
ICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFz
dHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50ZW50YXRpdmUuaHR0cHMuYW55Lmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NDUwZTIz
N2MzNTU1YTc1YjkyOWQ4YjFjNDE5Njc4OTA4NjI4ZGRkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1l
eGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBNRVRB
OiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBFeGNsdXNpdmUgTW9kZQorLy8gTUVUQTogZ2xvYmFsPXdp
bmRvdyxkZWRpY2F0ZWR3b3JrZXIsc2hhcmVkd29ya2VyLHNlcnZpY2V3b3JrZXIKKworJ3VzZSBz
dHJpY3QnOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGdyYW50ZWQgPSBb
XTsKKyAgZnVuY3Rpb24gbG9nX2dyYW50KG4pIHsgcmV0dXJuICgpID0+IHsgZ3JhbnRlZC5wdXNo
KG4pOyB9OyB9CisKKyAgYXdhaXQgUHJvbWlzZS5hbGwoWworICAgIG5hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0KCdhJywgbG9nX2dyYW50KDEpKSwKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgn
YScsIGxvZ19ncmFudCgyKSksCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2EnLCBsb2df
Z3JhbnQoMykpCisgIF0pOworICBhc3NlcnRfYXJyYXlfZXF1YWxzKGdyYW50ZWQsIFsxLCAyLCAz
XSk7Cit9LCAnTG9jayByZXF1ZXN0cyBhcmUgZ3JhbnRlZCBpbiBvcmRlcicpOworCitwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGdyYW50ZWQgPSBbXTsKKyAgZnVuY3Rpb24gbG9n
X2dyYW50KG4pIHsgcmV0dXJuICgpID0+IHsgZ3JhbnRlZC5wdXNoKG4pOyB9OyB9CisKKyAgbGV0
IGlubmVyX3Byb21pc2U7CisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywgYXN5
bmMgbG9jayA9PiB7CisgICAgaW5uZXJfcHJvbWlzZSA9IFByb21pc2UuYWxsKFsKKyAgICAgIC8v
IFRoaXMgd2lsbCBiZSBibG9ja2VkLgorICAgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2En
LCBsb2dfZ3JhbnQoMSkpLAorICAgICAgLy8gQnV0IHRoaXMgc2hvdWxkIGJlIGdyYW50YWJsZSBp
bW1lZGlhdGVseS4KKyAgICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdiJywgbG9nX2dyYW50
KDIpKQorICAgIF0pOworICB9KTsKKworICBhd2FpdCBpbm5lcl9wcm9taXNlOworICBhc3NlcnRf
YXJyYXlfZXF1YWxzKGdyYW50ZWQsIFsyLCAxXSk7Cit9LCAnUmVxdWVzdHMgZm9yIGRpc3RpbmN0
IHJlc291cmNlcyBjYW4gYmUgZ3JhbnRlZCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVu
dGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZl
LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZjJjMjdiYjkwOGNjMzhjODA5MzRkN2I4NzA3YTMxZWZkN2VlZWM3NgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKK0ZBSUwgTG9jayByZXF1ZXN0cyBhcmUgZ3JhbnRl
ZCBpbiBvcmRlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXF1ZXN0cyBmb3IgZGlzdGluY3Qg
cmVzb3VyY2VzIGNhbiBiZSBncmFudGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21v
ZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1l
eGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1s
CkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVz
dCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRw
cy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtZXhjbHVzaXZlLnRlbnRhdGl2ZS5odHRwcy5h
bnkud29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMmMyN2JiOTA4Y2MzOGM4MDkzNGQ3
Yjg3MDdhMzFlZmQ3ZWVlYzc2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0
aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlM
IExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgUmVxdWVzdHMgZm9yIGRpc3RpbmN0IHJlc291cmNlcyBjYW4gYmUgZ3JhbnRlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLWV4Y2x1c2l2ZS50ZW50YXRpdmUuaHR0cHMuYW55
Lndvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIu
aHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0
IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLW1peGVkLnRlbnRhdGl2ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi44OGM2Y2JmZjQ3NjdmMDc3MzMzNmQzYmQyN2IzM2FjYTBlNjE1ZDcx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDUgQEAKKworRkFJTCBMb2NrIHJlcXVlc3RzIGFyZSBncmFudGVkIGlu
IG9yZGVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFJlbGVhc2luZyBleGNsdXNpdmUgbG9jayBn
cmFudHMgbXVsdGlwbGUgc2hhcmVkIGxvY2tzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFuIGV4
Y2x1c2l2ZSBsb2NrIGJldHdlZW4gc2hhcmVkIGxvY2tzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50
YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2
MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0
dHBzLmFueS5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZv
ciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0t
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0
aXZlLmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi41ZjM0NTg4NjkzZjk0ZTRjN2Q0MmI1OTQzOTMxOTc4YTYwYmU5ZThhCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsOTggQEAK
Ky8vIE1FVEE6IHRpdGxlPVdlYiBMb2NrcyBBUEk6IE1peGVkIE1vZGVzCisvLyBNRVRBOiBzY3Jp
cHQ9cmVzb3VyY2VzL2hlbHBlcnMuanMKKy8vIE1FVEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVk
d29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNld29ya2VyCisKKyd1c2Ugc3RyaWN0JzsKKworcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBsZXQgdW5ibG9jazsKKyAgY29uc3QgYmxvY2tlZCA9
IG5ldyBQcm9taXNlKHIgPT4geyB1bmJsb2NrID0gcjsgfSk7CisKKyAgY29uc3QgZ3JhbnRlZCA9
IFtdOworCisgIC8vIFRoZXNlIHNob3VsZCBiZSBncmFudGVkIGltbWVkaWF0ZWx5LCBhbmQgaGVs
ZCB1bnRpbCB1bmJsb2NrZWQuCisgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywge21vZGU6
ICdzaGFyZWQnfSwgYXN5bmMgbG9jayA9PiB7CisgICAgZ3JhbnRlZC5wdXNoKCdhLXNoYXJlZC0x
Jyk7IGF3YWl0IGJsb2NrZWQ7IH0pOworICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnYScsIHtt
b2RlOiAnc2hhcmVkJ30sIGFzeW5jIGxvY2sgPT4geworICAgIGdyYW50ZWQucHVzaCgnYS1zaGFy
ZWQtMicpOyBhd2FpdCBibG9ja2VkOyB9KTsKKyAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2En
LCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrID0+IHsKKyAgICBncmFudGVkLnB1c2goJ2Et
c2hhcmVkLTMnKTsgYXdhaXQgYmxvY2tlZDsgfSk7CisKKyAgLy8gVGhpcyBzaG91bGQgYmUgYmxv
Y2tlZC4KKyAgbGV0IGV4Y2x1c2l2ZV9sb2NrOworICBjb25zdCBleGNsdXNpdmVfcmVxdWVzdCA9
IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywgYXN5bmMgbG9jayA9PiB7CisgICAgZ3JhbnRl
ZC5wdXNoKCdhLWV4Y2x1c2l2ZScpOworICAgIGV4Y2x1c2l2ZV9sb2NrID0gbG9jazsKKyAgfSk7
CisKKyAgLy8gVGhpcyBzaG91bGQgYmUgZ3JhbnRlZCBpbW1lZGlhdGVseSAoZGlmZmVyZW50IG5h
bWUpLgorICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnYicsIHttb2RlOiAnZXhjbHVz
aXZlJ30sIGxvY2sgPT4geworICAgIGdyYW50ZWQucHVzaCgnYi1leGNsdXNpdmUnKTsgfSk7CisK
KyAgYXNzZXJ0X2FycmF5X2VxdWFscygKKyAgICBncmFudGVkLCBbJ2Etc2hhcmVkLTEnLCAnYS1z
aGFyZWQtMicsICdhLXNoYXJlZC0zJywgJ2ItZXhjbHVzaXZlJ10pOworCisgIC8vIFJlbGVhc2Ug
dGhlIHNoYXJlZCBsb2NrcyBncmFudGVkIGFib3ZlLgorICB1bmJsb2NrKCk7CisKKyAgLy8gTm93
IHRoZSBibG9ja2VkIHJlcXVlc3QgY2FuIGJlIGdyYW50ZWQuCisgIGF3YWl0IGV4Y2x1c2l2ZV9y
ZXF1ZXN0OworICBhc3NlcnRfZXF1YWxzKGV4Y2x1c2l2ZV9sb2NrLm1vZGUsICdleGNsdXNpdmUn
KTsKKworICBhc3NlcnRfYXJyYXlfZXF1YWxzKAorICAgIGdyYW50ZWQsCisgICAgWydhLXNoYXJl
ZC0xJywgJ2Etc2hhcmVkLTInLCAnYS1zaGFyZWQtMycsICdiLWV4Y2x1c2l2ZScsICdhLWV4Y2x1
c2l2ZSddKTsKKworfSwgJ0xvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXInKTsKKwor
cHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOwor
CisgIGxldCBbcHJvbWlzZSwgcmVzb2x2ZV0gPSBtYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jKCk7
CisKKyAgY29uc3QgZXhjbHVzaXZlID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCAoKSA9
PiBwcm9taXNlKTsKKyAgZm9yIChsZXQgaSA9IDA7IGkgPCA1OyBpKyspIHsKKyAgICByZXF1ZXN0
TG9ja0FuZEhvbGQodCwgcmVzLCB7IG1vZGU6ICJzaGFyZWQiIH0pOworICB9CisKKyAgbGV0IGFu
c3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3NlcnRfZXF1YWxzKGFu
c3dlci5oZWxkLmxlbmd0aCwgMSwgIkFuIGV4Y2x1c2l2ZSBsb2NrIGlzIGhlbGQiKTsKKyAgYXNz
ZXJ0X2VxdWFscyhhbnN3ZXIucGVuZGluZy5sZW5ndGgsIDUsICJSZXF1ZXN0cyBmb3Igc2hhcmVk
IGxvY2tzIGFyZSBwZW5kaW5nIik7CisgIHJlc29sdmUoKTsKKyAgYXdhaXQgZXhjbHVzaXZlOwor
CisgIGFuc3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3NlcnRfZXF1
YWxzKGFuc3dlci5oZWxkLmxlbmd0aCwgNSwgIlNoYXJlZCBsb2NrcyBhcmUgaGVsZCIpOworICBh
c3NlcnRfdHJ1ZShhbnN3ZXIuaGVsZC5ldmVyeShsID0+IGwubW9kZSA9PT0gInNoYXJlZCIpLCAi
QWxsIGhlbGQgbG9ja3MgYXJlIHNoYXJlZCBvbmVzIik7Cit9LCAnUmVsZWFzaW5nIGV4Y2x1c2l2
ZSBsb2NrIGdyYW50cyBtdWx0aXBsZSBzaGFyZWQgbG9ja3MnKTsKKworcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGxldCBbc2hhcmVk
UHJvbWlzZSwgc2hhcmVkUmVzb2x2ZV0gPSBtYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jKCk7Cisg
IGxldCBbZXhjbHVzaXZlUHJvbWlzZSwgZXhjbHVzaXZlUmVzb2x2ZV0gPSBtYWtlUHJvbWlzZUFu
ZFJlc29sdmVGdW5jKCk7CisKKyAgY29uc3Qgc2hhcmVkUmVsZWFzZWRQcm9taXNlID0gUHJvbWlz
ZS5hbGwobmV3IEFycmF5KDUpLmZpbGwoMCkubWFwKAorICAgICgpID0+IG5hdmlnYXRvci5sb2Nr
cy5yZXF1ZXN0KHJlcywgeyBtb2RlOiAic2hhcmVkIiB9LCAoKSA9PiBzaGFyZWRQcm9taXNlKSkK
KyAgKTsKKyAgY29uc3QgZXhjbHVzaXZlUmVsZWFzZWRQcm9taXNlID0gbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QocmVzLCAoKSA9PiBleGNsdXNpdmVQcm9taXNlKTsKKyAgZm9yIChsZXQgaSA9IDA7
IGkgPCA1OyBpKyspIHsKKyAgICByZXF1ZXN0TG9ja0FuZEhvbGQodCwgcmVzLCB7IG1vZGU6ICJz
aGFyZWQiIH0pOworICB9CisKKyAgbGV0IGFuc3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5x
dWVyeSgpOworICBhc3NlcnRfZXF1YWxzKGFuc3dlci5oZWxkLmxlbmd0aCwgNSwgIlNoYXJlZCBs
b2NrcyBhcmUgaGVsZCIpOworICBhc3NlcnRfdHJ1ZShhbnN3ZXIuaGVsZC5ldmVyeShsID0+IGwu
bW9kZSA9PT0gInNoYXJlZCIpLCAiQWxsIGhlbGQgbG9ja3MgYXJlIHNoYXJlZCBvbmVzIik7Cisg
IHNoYXJlZFJlc29sdmUoKTsKKyAgYXdhaXQgc2hhcmVkUmVsZWFzZWRQcm9taXNlOworCisgIGFu
c3dlciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3NlcnRfZXF1YWxzKGFu
c3dlci5oZWxkLmxlbmd0aCwgMSwgIkFuIGV4Y2x1c2l2ZSBsb2NrIGlzIGhlbGQiKTsKKyAgYXNz
ZXJ0X2VxdWFscyhhbnN3ZXIuaGVsZFswXS5tb2RlLCAiZXhjbHVzaXZlIik7CisgIGV4Y2x1c2l2
ZVJlc29sdmUoKTsKKyAgYXdhaXQgZXhjbHVzaXZlUmVsZWFzZWRQcm9taXNlOworCisgIGFuc3dl
ciA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3NlcnRfZXF1YWxzKGFuc3dl
ci5oZWxkLmxlbmd0aCwgNSwgIlRoZSBuZXh0IHNoYXJlZCBsb2NrcyBhcmUgaGVsZCIpOworICBh
c3NlcnRfdHJ1ZShhbnN3ZXIuaGVsZC5ldmVyeShsID0+IGwubW9kZSA9PT0gInNoYXJlZCIpLCAi
QWxsIGhlbGQgbG9ja3MgYXJlIHNoYXJlZCBvbmVzIik7Cit9LCAnQW4gZXhjbHVzaXZlIGxvY2sg
YmV0d2VlbiBzaGFyZWQgbG9ja3MnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZlLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OGM2Y2JmZjQ3
NjdmMDc3MzMzNmQzYmQyN2IzM2FjYTBlNjE1ZDcxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhl
ZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNSBAQAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tz
LnJlcXVlc3QnKSIKK0ZBSUwgUmVsZWFzaW5nIGV4Y2x1c2l2ZSBsb2NrIGdyYW50cyBtdWx0aXBs
ZSBzaGFyZWQgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgQW4gZXhjbHVzaXZlIGxvY2sg
YmV0d2VlbiBzaGFyZWQgbG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1t
aXhlZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVu
dGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4
ZWQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAor
PCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJl
IHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9tb2RlLW1peGVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44OGM2Y2JmZjQ3NjdmMDc3MzMzNmQzYmQyN2IzM2FjYTBlNjE1ZDcxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw1IEBACisKK0ZBSUwgTG9jayByZXF1ZXN0cyBhcmUgZ3JhbnRlZCBp
biBvcmRlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZWxlYXNpbmcgZXhjbHVzaXZlIGxvY2sg
Z3JhbnRzIG11bHRpcGxlIHNoYXJlZCBsb2NrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBbiBl
eGNsdXNpdmUgbG9jayBiZXR3ZWVuIHNoYXJlZCBsb2NrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9tb2RlLW1peGVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLW1p
eGVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4
ZWQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRo
aXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVu
IHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hh
cmVkLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5MzA5NDAx
YjlkMTQwMDJjOTE2NGY5NjAyYTE0MjlhNTIyMDliMmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNo
YXJlZC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKwor
RkFJTCBMb2NrIHJlcXVlc3RzIGFyZSBncmFudGVkIGluIG9yZGVyIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIFNoYXJlZCBsb2NrcyBhcmUgbm90IGV4Y2x1c2l2ZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJl
ZC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1
ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRh
dGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1
aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQg
dGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJl
ZC50ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZlLmh0dHBzLmFueS5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5mYzRhNjAxMmZhYjU2NzViY2NlYWZkZDZmN2QxN2I2YmM1YTY3ZTY0Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCww
ICsxLDM4IEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBTaGFyZWQgTW9kZQorLy8g
TUVUQTogZ2xvYmFsPXdpbmRvdyxkZWRpY2F0ZWR3b3JrZXIsc2hhcmVkd29ya2VyLHNlcnZpY2V3
b3JrZXIKKworJ3VzZSBzdHJpY3QnOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNv
bnN0IGdyYW50ZWQgPSBbXTsKKyAgZnVuY3Rpb24gbG9nX2dyYW50KG4pIHsgcmV0dXJuICgpID0+
IHsgZ3JhbnRlZC5wdXNoKG4pOyB9OyB9CisKKyAgYXdhaXQgUHJvbWlzZS5hbGwoWworICAgIG5h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywge21vZGU6ICdzaGFyZWQnfSwgbG9nX2dyYW50KDEp
KSwKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnYicsIHttb2RlOiAnc2hhcmVkJ30sIGxv
Z19ncmFudCgyKSksCisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2MnLCB7bW9kZTogJ3No
YXJlZCd9LCBsb2dfZ3JhbnQoMykpLAorICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdhJywg
e21vZGU6ICdzaGFyZWQnfSwgbG9nX2dyYW50KDQpKSwKKyAgICBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCgnYicsIHttb2RlOiAnc2hhcmVkJ30sIGxvZ19ncmFudCg1KSksCisgICAgbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QoJ2MnLCB7bW9kZTogJ3NoYXJlZCd9LCBsb2dfZ3JhbnQoNikpLAorICBd
KTsKKworICBhc3NlcnRfYXJyYXlfZXF1YWxzKGdyYW50ZWQsIFsxLCAyLCAzLCA0LCA1LCA2XSk7
Cit9LCAnTG9jayByZXF1ZXN0cyBhcmUgZ3JhbnRlZCBpbiBvcmRlcicpOworCitwcm9taXNlX3Rl
c3QoYXN5bmMgdCA9PiB7CisgIGxldCBhX2FjcXVpcmVkID0gZmFsc2UsIGFfYWNxdWlyZWRfYWdh
aW4gPSBmYWxzZTsKKworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnYScsIHttb2Rl
OiAnc2hhcmVkJ30sIGFzeW5jIGxvY2sgPT4geworICAgIGFfYWNxdWlyZWQgPSB0cnVlOworCisg
ICAgLy8gU2luY2UgbG9jayBpcyBoZWxkLCB0aGlzIHJlcXVlc3Qgd291bGQgYmUgYmxvY2tlZCBp
ZiB0aGUKKyAgICAvLyBsb2NrIHdhcyBub3QgJ3NoYXJlZCcsIGNhdXNpbmcgdGhpcyB0ZXN0IHRv
IHRpbWUgb3V0LgorCisgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2EnLCB7bW9k
ZTogJ3NoYXJlZCd9LCBsb2NrID0+IHsKKyAgICAgIGFfYWNxdWlyZWRfYWdhaW4gPSB0cnVlOwor
ICAgIH0pOworICB9KTsKKworICBhc3NlcnRfdHJ1ZShhX2FjcXVpcmVkLCAnZmlyc3QgbG9jayBh
Y3F1aXJlZCcpOworICBhc3NlcnRfdHJ1ZShhX2FjcXVpcmVkX2FnYWluLCAnc2Vjb25kIGxvY2sg
YWNxdWlyZWQnKTsKK30sICdTaGFyZWQgbG9ja3MgYXJlIG5vdCBleGNsdXNpdmUnKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ5MzA5NDAxYjlkMTQwMDJjOTE2NGY5NjAyYTE0MjlhNTIyMDli
MmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZp
Y2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlMIExvY2sgcmVxdWVz
dHMgYXJlIGdyYW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU2hhcmVkIGxv
Y2tzIGFyZSBub3QgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUt
c2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQu
dGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4Mjkx
MzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUt
c2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCkBAIC0wLDAgKzEg
QEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVj
dHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5kOTMwOTQwMWI5ZDE0MDAyYzkxNjRmOTYwMmExNDI5YTUyMjA5YjJk
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitGQUlMIExvY2sgcmVxdWVzdHMgYXJlIGdy
YW50ZWQgaW4gb3JkZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU2hhcmVkIGxvY2tzIGFyZSBu
b3QgZXhjbHVzaXZlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRl
bnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMu
YW55Lndvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUw
NjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9tb2RlLXNoYXJlZC50ZW50YXRpdmUuaHR0cHMu
YW55Lndvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVk
IGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0
IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1cmUtY29u
dGV4dC50ZW50YXRpdmUuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1cmUtY29udGV4dC50ZW50YXRp
dmUuYW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNmViMzk0NTFhOGRjOTY0N2Q2NmUwNGIx
ODNlODkxOTgxMzMxZmEzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRh
dGl2ZS5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitGQUlMIEFQSSBwcmVzZW5j
ZSBpbiBub24tc2VjdXJlIGNvbnRleHRzIGFzc2VydF9mYWxzZTogZXhwZWN0ZWQgZmFsc2UgZ290
IHRydWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnkuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25v
bi1zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1
cmUtY29udGV4dC50ZW50YXRpdmUuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZp
bGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUg
dGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
bm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnkuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9ub24tc2VjdXJlLWNvbnRleHQudGVu
dGF0aXZlLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NDU1MzU5MWYzNzI0OTJhMWQxMDg1ZDZlZGYyMzcx
NTg3MmMwZDgzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5h
bnkuanMKQEAgLTAsMCArMSwxNCBAQAorLy8gTUVUQTogdGl0bGU9V2ViIExvY2tzIEFQSTogQVBJ
IG5vdCBhdmFpbGFibGUgaW4gbm9uLXNlY3VyZSBjb250ZXh0CisvLyBNRVRBOiBnbG9iYWw9d2lu
ZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3b3JrZXIKKworJ3VzZSBzdHJpY3QnOworCit0ZXN0
KHQgPT4geworICBhc3NlcnRfZmFsc2Uoc2VsZi5pc1NlY3VyZUNvbnRleHQpOworICBhc3NlcnRf
ZmFsc2UoJ2xvY2tzJyBpbiBuYXZpZ2F0b3IsCisgICAgICAgICAgICAgICAnbmF2aWdhdG9yLmxv
Y2tzIGlzIG9ubHkgcHJlc2VudCBpbiBzZWN1cmUgY29udGV4dHMnKTsKKyAgYXNzZXJ0X2ZhbHNl
KCdMb2NrTWFuYWdlcicgaW4gc2VsZiwKKyAgICAgICAgICAgICAgICdMb2NrTWFuYWdlciBpcyBv
bmx5IHByZXNlbnQgaW4gc2VjdXJlIGNvbnRleHRzJyk7CisgIGFzc2VydF9mYWxzZSgnTG9jaycg
aW4gc2VsZiwKKyAgICAgICAgICAgICAgICdMb2NrIGludGVyZmFjZSBpcyBvbmx5IHByZXNlbnQg
aW4gc2VjdXJlIGNvbnRleHRzJyk7Cit9LCAnQVBJIHByZXNlbmNlIGluIG5vbi1zZWN1cmUgY29u
dGV4dHMnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuYW55Lndvcmtl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9ub24tc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmFueS53b3JrZXItZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2ZWIzOTQ1MWE4ZGM5NjQ3ZDY2ZTA0YjE4M2U4OTE5ODEz
MzFmYTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9ub24tc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmFueS53
b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitGQUlMIEFQSSBwcmVzZW5jZSBp
biBub24tc2VjdXJlIGNvbnRleHRzIGFzc2VydF9mYWxzZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRy
dWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnkud29ya2VyLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9ub24tc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmFueS53b3JrZXIuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3Mvbm9uLXNlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCAr
MSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3Ry
dWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjZlOWQzMTY3ODYzYTdlZWY5ZTc0ZDBlZmM1MDdkYWEzMjk5NWI0MTAKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9vcGFxdWUtb3JpZ2luLnRlbnRhdGl2ZS5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2
IEBACisKK0ZBSUwgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoKSBpbiBub24tc2FuZGJveGVkIGlm
cmFtZSBzaG91bGQgbm90IHRocm93IGFzc2VydF9lcXVhbHM6IG5hdmlnYXRvci5sb2Nrcy5yZXF1
ZXN0KCkgc2hvdWxkIG5vdCB0aHJvdyBleHBlY3RlZCAibm8gZXhjZXB0aW9uIiBidXQgZ290ICJU
eXBlRXJyb3IiCitGQUlMIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCkgaW4gc2FuZGJveGVkIGlm
cmFtZSBzaG91bGQgdGhyb3cgU2VjdXJpdHlFcnJvciBhc3NlcnRfZXF1YWxzOiBFeGNlcHRpb24g
c2hvdWxkIGJlIFNlY3VyaXR5RXJyb3IgZXhwZWN0ZWQgIlNlY3VyaXR5RXJyb3IiIGJ1dCBnb3Qg
IlR5cGVFcnJvciIKK0ZBSUwgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCkgaW4gbm9uLXNhbmRib3hl
ZCBpZnJhbWUgc2hvdWxkIG5vdCB0aHJvdyBhc3NlcnRfZXF1YWxzOiBuYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCgpIHNob3VsZCBub3QgdGhyb3cgZXhwZWN0ZWQgIm5vIGV4Y2VwdGlvbiIgYnV0IGdv
dCAiVHlwZUVycm9yIgorRkFJTCBuYXZpZ2F0b3IubG9ja3MucXVlcnkoKSBpbiBzYW5kYm94ZWQg
aWZyYW1lIHNob3VsZCB0aHJvdyBTZWN1cml0eUVycm9yIGFzc2VydF9lcXVhbHM6IEV4Y2VwdGlv
biBzaG91bGQgYmUgU2VjdXJpdHlFcnJvciBleHBlY3RlZCAiU2VjdXJpdHlFcnJvciIgYnV0IGdv
dCAiVHlwZUVycm9yIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9vcGFxdWUtb3JpZ2luLnRlbnRhdGl2ZS5odHRwcy5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xY2I3YTJk
MmU2MDA3OTdiOGUzY2M4ZTVkMTdhODM3NGM5YmRlNGVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVl
LW9yaWdpbi50ZW50YXRpdmUuaHR0cHMuaHRtbApAQCAtMCwwICsxLDg3IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+V2ViIExvY2tzIEFQSTogT3BhcXVl
IG9yaWdpbnM8L3RpdGxlPgorPGxpbmsgcmVsPWhlbHAgaHJlZj0iaHR0cHM6Ly93aWNnLmdpdGh1
Yi5pby93ZWItbG9ja3MvIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQ+CisKK2Z1bmN0aW9uIGxvYWRfaWZyYW1lKHNyYywgc2FuZGJv
eCkgeworICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgY29uc3QgaWZyYW1l
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CisgICAgaWZyYW1lLm9ubG9hZCA9
ICgpID0+IHsgcmVzb2x2ZShpZnJhbWUpOyB9OworICAgIGlmIChzYW5kYm94KQorICAgICAgaWZy
YW1lLnNhbmRib3ggPSBzYW5kYm94OworICAgIGlmcmFtZS5zcmNkb2MgPSBzcmM7CisgICAgaWZy
YW1lLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CisgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LmFwcGVuZENoaWxkKGlmcmFtZSk7CisgIH0pOworfQorCitmdW5jdGlvbiB3YWl0X2Zvcl9tZXNz
YWdlKGlmcmFtZSkgeworICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgc2Vs
Zi5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZnVuY3Rpb24gbGlzdGVuZXIoZSkgeworICAg
ICAgaWYgKGUuc291cmNlID09PSBpZnJhbWUuY29udGVudFdpbmRvdykgeworICAgICAgICByZXNv
bHZlKGUuZGF0YSk7CisgICAgICAgIHNlbGYucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScs
IGxpc3RlbmVyKTsKKyAgICAgIH0KKyAgICB9KTsKKyAgfSk7Cit9CisKK2NvbnN0IHNjcmlwdCA9
IGAKKzxzY3JpcHQ+CisgICJ1c2Ugc3RyaWN0IjsKKyAgd2luZG93Lm9ubWVzc2FnZSA9IGFzeW5j
IChldikgPT4geworICAgIHRyeSB7CisgICAgICBzd2l0Y2ggKGV2LmRhdGEpIHsKKyAgICAgICAg
Y2FzZSAicmVxdWVzdCI6CisgICAgICAgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
J25hbWUnLCBsb2NrID0+IHt9KTsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAicXVl
cnkiOgorICAgICAgICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICAgICAgICAg
IGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgIHdpbmRvdy5wYXJlbnQucG9zdE1l
c3NhZ2Uoe3Jlc3VsdDogInVuZXhwZWN0ZWQgbWVzc2FnZSJ9LCAiKiIpOworICAgICAgICAgIHJl
dHVybjsKKyAgICAgIH0KKyAgICAgIHdpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2Uoe3Jlc3VsdDog
Im5vIGV4Y2VwdGlvbiJ9LCAiKiIpOworICAgIH0gY2F0Y2ggKGV4KSB7CisgICAgICB3aW5kb3cu
cGFyZW50LnBvc3RNZXNzYWdlKHtyZXN1bHQ6IGV4Lm5hbWV9LCAiKiIpOworICAgIH07CisgIH07
Cis8XC9zY3JpcHQ+CitgOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGlm
cmFtZSA9IGF3YWl0IGxvYWRfaWZyYW1lKHNjcmlwdCk7CisgIGlmcmFtZS5jb250ZW50V2luZG93
LnBvc3RNZXNzYWdlKCJyZXF1ZXN0IiwgJyonKTsKKyAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHdh
aXRfZm9yX21lc3NhZ2UoaWZyYW1lKTsKKyAgYXNzZXJ0X2VxdWFscyhtZXNzYWdlLnJlc3VsdCwg
J25vIGV4Y2VwdGlvbicsCisgICAgICAgICAgICAgICAgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KCkgc2hvdWxkIG5vdCB0aHJvdycpOworfSwgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCkgaW4g
bm9uLXNhbmRib3hlZCBpZnJhbWUgc2hvdWxkIG5vdCB0aHJvdycpOworCitwcm9taXNlX3Rlc3Qo
YXN5bmMgdCA9PiB7CisgIGNvbnN0IGlmcmFtZSA9IGF3YWl0IGxvYWRfaWZyYW1lKHNjcmlwdCwg
J2FsbG93LXNjcmlwdHMnKTsKKyAgaWZyYW1lLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UoInJl
cXVlc3QiLCAnKicpOworICBjb25zdCBtZXNzYWdlID0gYXdhaXQgd2FpdF9mb3JfbWVzc2FnZShp
ZnJhbWUpOworICBhc3NlcnRfZXF1YWxzKG1lc3NhZ2UucmVzdWx0LCAnU2VjdXJpdHlFcnJvcics
CisgICAgICAgICAgICAgICAgJ0V4Y2VwdGlvbiBzaG91bGQgYmUgU2VjdXJpdHlFcnJvcicpOwor
fSwgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCkgaW4gc2FuZGJveGVkIGlmcmFtZSBzaG91bGQg
dGhyb3cgU2VjdXJpdHlFcnJvcicpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNv
bnN0IGlmcmFtZSA9IGF3YWl0IGxvYWRfaWZyYW1lKHNjcmlwdCk7CisgIGlmcmFtZS5jb250ZW50
V2luZG93LnBvc3RNZXNzYWdlKCJxdWVyeSIsICcqJyk7CisgIGNvbnN0IG1lc3NhZ2UgPSBhd2Fp
dCB3YWl0X2Zvcl9tZXNzYWdlKGlmcmFtZSk7CisgIGFzc2VydF9lcXVhbHMobWVzc2FnZS5yZXN1
bHQsICdubyBleGNlcHRpb24nLAorICAgICAgICAgICAgICAgICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCgpIHNob3VsZCBub3QgdGhyb3cnKTsKK30sICduYXZpZ2F0b3IubG9ja3MucXVlcnkoKSBp
biBub24tc2FuZGJveGVkIGlmcmFtZSBzaG91bGQgbm90IHRocm93Jyk7CisKK3Byb21pc2VfdGVz
dChhc3luYyB0ID0+IHsKKyAgY29uc3QgaWZyYW1lID0gYXdhaXQgbG9hZF9pZnJhbWUoc2NyaXB0
LCAnYWxsb3ctc2NyaXB0cycpOworICBpZnJhbWUuY29udGVudFdpbmRvdy5wb3N0TWVzc2FnZSgi
cXVlcnkiLCAnKicpOworICBjb25zdCBtZXNzYWdlID0gYXdhaXQgd2FpdF9mb3JfbWVzc2FnZShp
ZnJhbWUpOworICBhc3NlcnRfZXF1YWxzKG1lc3NhZ2UucmVzdWx0LCAnU2VjdXJpdHlFcnJvcics
CisgICAgICAgICAgICAgICAgJ0V4Y2VwdGlvbiBzaG91bGQgYmUgU2VjdXJpdHlFcnJvcicpOwor
fSwgJ25hdmlnYXRvci5sb2Nrcy5xdWVyeSgpIGluIHNhbmRib3hlZCBpZnJhbWUgc2hvdWxkIHRo
cm93IFNlY3VyaXR5RXJyb3InKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVu
dGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MzYyNzFiNDI5NmJjM2Y4ZWZiZTVlMTA3ZWNh
YmY0YjdiMDdjNDUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgcXVlcnkoKSByZXR1cm5z
IGRpY3Rpb25hcnkgd2l0aCBlbXB0eSBhcnJheXMgd2hlbiBubyBsb2NrcyBhcmUgaGVsZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9j
a3MucXVlcnknKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5
MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVy
eS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlz
IGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0
aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2
ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODhmZmRiN2Y4MTBkNmQzZTY5OGE1MDdkYTk3MjIw
Njg0YWQzZWNmZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5h
bnkuanMKQEAgLTAsMCArMSwxOCBAQAorLy8gTUVUQTogdGl0bGU9V2ViIExvY2tzIEFQSTogbmF2
aWdhdG9yLmxvY2tzLnF1ZXJ5IG1ldGhvZCAtIG5vIGxvY2tzIGhlbGQKKy8vIE1FVEE6IHNjcmlw
dD1yZXNvdXJjZXMvaGVscGVycy5qcworLy8gTUVUQTogZ2xvYmFsPXdpbmRvdyxkZWRpY2F0ZWR3
b3JrZXIsc2hhcmVkd29ya2VyLHNlcnZpY2V3b3JrZXIKKworJ3VzZSBzdHJpY3QnOworCitwcm9t
aXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnF1ZXJ5KCk7CisKKyAgYXNzZXJ0X293bl9wcm9wZXJ0eShzdGF0ZSwgJ3BlbmRpbmcnLCAn
U3RhdGUgaGFzIGBwZW5kaW5nYCBwcm9wZXJ0eScpOworICBhc3NlcnRfdHJ1ZShBcnJheS5pc0Fy
cmF5KHN0YXRlLnBlbmRpbmcpLAorICAgICAgICAgICAgICAnU3RhdGUgYHBlbmRpbmdgIHByb3Bl
cnR5IGlzIGFuIGFycmF5Jyk7CisgIGFzc2VydF9hcnJheV9lcXVhbHMoc3RhdGUucGVuZGluZywg
W10sICdQZW5kaW5nIGFycmF5IGlzIGVtcHR5Jyk7CisKKyAgYXNzZXJ0X293bl9wcm9wZXJ0eShz
dGF0ZSwgJ2hlbGQnLCAnU3RhdGUgaGFzIGBoZWxkYCBwcm9wZXJ0eScpOworICBhc3NlcnRfdHJ1
ZShBcnJheS5pc0FycmF5KHN0YXRlLmhlbGQpLCAnU3RhdGUgYGhlbGRgIHByb3BlcnR5IGlzIGFu
IGFycmF5Jyk7CisgIGFzc2VydF9hcnJheV9lcXVhbHMoc3RhdGUuaGVsZCwgW10sICdIZWxkIGFy
cmF5IGlzIGVtcHR5Jyk7Cit9LCAncXVlcnkoKSByZXR1cm5zIGRpY3Rpb25hcnkgd2l0aCBlbXB0
eSBhcnJheXMgd2hlbiBubyBsb2NrcyBhcmUgaGVsZCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHku
dGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5
LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNzM2MjcxYjQyOTZiYzNmOGVmYmU1ZTEwN2VjYWJmNGI3YjA3YzQ1MQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgcXVlcnkoKSByZXR1cm5zIGRpY3Rpb25hcnkg
d2l0aCBlbXB0eSBhcnJheXMgd2hlbiBubyBsb2NrcyBhcmUgaGVsZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucXVlcnknKSIK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2Vy
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2Vy
Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktp
dCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0
dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZlLmh0dHBzLmFu
eS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczNjI3MWI0Mjk2YmMzZjhlZmJlNWUx
MDdlY2FiZjRiN2IwN2M0NTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUu
aHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgcXVl
cnkoKSByZXR1cm5zIGRpY3Rpb25hcnkgd2l0aCBlbXB0eSBhcnJheXMgd2hlbiBubyBsb2NrcyBh
cmUgaGVsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdu
YXZpZ2F0b3IubG9ja3MucXVlcnknKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktZW1wdHkudGVudGF0aXZl
Lmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkud29y
a2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1
NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkud29y
a2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdl
YktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktb3JkZXJpbmcudGVudGF0
aXZlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LW9yZGVyaW5nLnRlbnRhdGl2ZS5odHRwcy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDg5MWUyOWMyMDcyZTEwNzJhNThhOWVhOTcxYWRkYTQxNTI5
ZDZiNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LW9yZGVyaW5nLnRlbnRhdGl2ZS5odHRwcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgUmVxdWVzdHMgYXBwZWFyIGluIHN0YXRl
IGluIG9yZGVyIG1hZGUuIGFzc2VydF9pbXBsZW1lbnRzOiB1bmRlZmluZWQKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cXVlcnktb3JkZXJpbmcudGVudGF0aXZlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1vcmRlcmluZy50ZW50YXRp
dmUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNzJhMWRiODdiN2QyNTdlOGUzYTI3OGM0NmJjY2Y0
MjZlYmY0YTJlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnktb3JkZXJpbmcudGVudGF0aXZlLmh0dHBz
Lmh0bWwKQEAgLTAsMCArMSwxMzEgQEAKKzwhRE9DVFlQRSBodG1sPgorPG1ldGEgY2hhcnNldD11
dGYtOD4KKzx0aXRsZT5XZWIgTG9ja3MgQVBJOiBuYXZpZ2F0b3IubG9ja3MucXVlcnkgb3JkZXJp
bmc8L3RpdGxlPgorPGxpbmsgcmVsPWhlbHAgaHJlZj0iaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby93
ZWItbG9ja3MvIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVycy5qcyI+PC9zY3JpcHQ+Cis8c3R5
bGU+aWZyYW1lIHsgZGlzcGxheTogbm9uZTsgfTwvc3R5bGU+Cis8c2NyaXB0PgorJ3VzZSBzdHJp
Y3QnOworCisvLyBHcmFiIGEgbG9jayBhbmQgaG9sZCB1bnRpbCBhIHJlbGVhc2UgZnVuY3Rpb24g
aXMgY2FsbGVkLiBSZXNvbHZlcworLy8gdG8gYSByZWxlYXNlIGZ1bmN0aW9uLgorZnVuY3Rpb24g
Z2V0TG9ja0FuZEhvbGRVbnRpbFJlbGVhc2VkKG5hbWUsIG9wdGlvbnMpIHsKKyAgbGV0IHJlbGVh
c2U7CisgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsgcmVsZWFzZSA9
IHJlc29sdmU7IH0pOworICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QobmFtZSwgb3B0aW9ucyB8fCB7fSwgbG9jayA9PiB7CisgICAg
ICByZXNvbHZlKHJlbGVhc2UpOworICAgICAgcmV0dXJuIHByb21pc2U7CisgICAgfSkuY2F0Y2go
XyA9PiB7fSk7CisgIH0pOworfQorCisvLyBSZXR1cm5zIGEgcHJvbWlzZSByZXNvbHZlZCBieSB0
aGUgbmV4dCBtZXNzYWdlIGV2ZW50LgorZnVuY3Rpb24gbmV4dE1lc3NhZ2UoKSB7CisgIHJldHVy
biBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcign
bWVzc2FnZScsIGV2ZW50ID0+IHsKKyAgICAgIHJlc29sdmUoZXZlbnQuZGF0YSk7CisgICAgfSwg
e29uY2U6IHRydWV9KTsKKyAgfSk7Cit9CisKKy8vIFRlc3RzIHRoZSBvcmRlcmluZyBjb25zdHJh
aW50cyBvbiB0aGUgcmVxdWVzdGVkIGxvY2sgc3RhdGUgcmV0dXJuZWQgYnkKKy8vIG5hdmlnYXRv
ci5sb2Nrcy5xdWVyeSgpLiBUaHJlZSBzZXBhcmF0ZSBpZnJhbWVzIGFyZSBpbnN0YW50aWF0ZWQg
dG8gbWFrZQorLy8gbG9jayByZXF1ZXN0cyBvbiB0aGUgc2FtZSByZXNvdXJjZSwgZmlyc3QgaW4g
b25lIG9yZGVyIGFuZCB0aGVuIGluIGFub3RoZXIsCisvLyBkaWZmZXJlbnQgb3JkZXIuIEZvciBl
YWNoIHNldCBvZiByZXF1ZXN0cywgaXQgaXMgdmVyaWZpZWQgdGhhdCB0aGUgcmVxdWVzdHMKKy8v
IGFwcGVhciBpbiB0aGUgcmVzdWx0IG9mIG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpIGluIHRoZSBz
YW1lIG9yZGVyIGluIHdoaWNoCisvLyB0aGV5IHdlcmUgbWFkZS4KKy8vCisvLyBJdCBpcyBuZWNl
c3NhcnkgdG8gdXNlIHNlcGFyYXRlIGlmcmFtZXMgaGVyZSBzbyB0aGF0IHRoZSBsb2NrIHJlcXVl
c3RzIGhhdmUKKy8vIGRpc3Rpbmd1aXNoYWJsZSBjbGllbnRfaWRzIChvdGhlcndpc2UgaXQgd291
bGQgbm90IGJlIHBvc3NpYmxlIHRvCisvLyBkaXN0aW5ndWlzaCB0aGUgcmVxdWVzdHMgYW5kIHRo
dXMgaW1wb3NzaWJsZSB0byB2ZXJpZnkgb3JkZXJpbmcpLgorcHJvbWlzZV90ZXN0KGFzeW5jIHRl
c3RDYXNlID0+IHsKKyAgYXNzZXJ0X2ltcGxlbWVudHMobmF2aWdhdG9yLmxvY2tzKTsKKyAgY29u
c3QgcmVzb3VyY2VOYW1lID0gdW5pcXVlTmFtZSh0ZXN0Q2FzZSk7CisKKyAgLy8gU2V0IHVwIGNs
aWVudHMuCisgIGNvbnN0IGZyYW1lMSA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5o
dG1sJyk7CisgIGNvbnN0IGZyYW1lMiA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5o
dG1sJyk7CisgIGNvbnN0IGZyYW1lMyA9IGF3YWl0IGlmcmFtZSgncmVzb3VyY2VzL2lmcmFtZS5o
dG1sJyk7CisgIHRlc3RDYXNlLmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUxLnJlbW92ZSgpOyB9
KTsKKyAgdGVzdENhc2UuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZTIucmVtb3ZlKCk7IH0pOwor
ICB0ZXN0Q2FzZS5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lMy5yZW1vdmUoKTsgfSk7CisKKyAg
Ly8gQ29sbGVjdCB0aGUgY2xpZW50IGlkcy4KKyAgY29uc3QgY2xpZW50SWQxID0KKyAgICAgIChh
d2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUxLCB7b3A6ICdjbGllbnRfaWQnLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiByZXNvdXJjZU5hbWV9KSku
Y2xpZW50X2lkOworICBjb25zdCBjbGllbnRJZDIgPQorICAgICAgKGF3YWl0IHBvc3RUb0ZyYW1l
QW5kV2FpdChmcmFtZTIsIHtvcDogJ2NsaWVudF9pZCcsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG5hbWU6IHJlc291cmNlTmFtZX0pKS5jbGllbnRfaWQ7CisgIGNv
bnN0IGNsaWVudElkMyA9CisgICAgICAoYXdhaXQgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lMywg
e29wOiAnY2xpZW50X2lkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbmFtZTogcmVzb3VyY2VOYW1lfSkpLmNsaWVudF9pZDsKKworICAvLyBQcmVlbXB0aXZlbHkg
dGFrZSB0aGUgbG9jay4KKyAgY29uc3QgZmlyc3RSZXF1ZXN0R3JvdXBSZWxlYXNlRnVuY3Rpb24g
PQorICAgICAgYXdhaXQgZ2V0TG9ja0FuZEhvbGRVbnRpbFJlbGVhc2VkKHJlc291cmNlTmFtZSk7
CisKKyAgLy8gUXVldWUgdGhlIGZpcnN0IGdyb3VwIG9mIGxvY2sgcmVxdWVzdHMgZnJvbSB0aGUg
ZGlmZmVyZW50IGNsaWVudHMuIFRoZXNlCisgIC8vIHdpbGwgYmUgYmxvY2tlZCB1bnRpbCBmaXJz
dFJlcXVlc3RHcm91cFJlbGVhc2VGdW5jdGlvbigpIGlzIGNhbGxlZC4KKyAgbGV0IGxvY2tJZDE7
CisgIGxldCBsb2NrSWQyOworICBjb25zdCBsb2NrUHJvbWlzZTEgPQorICAgICAgcG9zdFRvRnJh
bWVBbmRXYWl0KGZyYW1lMSwge29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc291cmNlTmFtZX0pCisg
ICAgICAgICAgLnRoZW4odmFsID0+IHtsb2NrSWQxID0gdmFsLmxvY2tfaWQ7fSk7CisgIGNvbnN0
IGxvY2tQcm9taXNlMiA9CisgICAgICBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUyLCB7b3A6ICdy
ZXF1ZXN0JywgbmFtZTogcmVzb3VyY2VOYW1lfSkKKyAgICAgICAgICAudGhlbih2YWwgPT4ge2xv
Y2tJZDIgPSB2YWwubG9ja19pZDt9KTsKKworICAvLyBUaGlzIHRoaXJkIHJlcXVlc3Qgd2lsbCBs
YXRlciBiZSBncmFudGVkIGFuZCBoZWxkIGluIG9yZGVyIHRvIGJsb2NrIGEKKyAgLy8gc2Vjb25k
IGdyb3VwIG9mIHJlcXVlc3RzIHRvIHRlc3QgYSBkaWZmZXJlbnQgY2xpZW50IG9yZGVyaW5nLiBJ
dCBpcyBub3QKKyAgLy8gbWVhbnQgdG8gYmUgcmVsZWFzZWQuCisgIHBvc3RUb0ZyYW1lQW5kV2Fp
dChmcmFtZTMsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXNvdXJjZU5hbWV9KTsKKworICAvLyBS
ZXF1ZXN0IGFuZCB3YWl0IGZvciB0aGUgcmVsZWFzZSBvZiBhIHNlcGFyYXRlIGxvY2sgdG8gZW5z
dXJlIGFsbCBwcmV2aW91cworICAvLyByZXF1ZXN0cyBhcmUgcHJvY2Vzc2VkLgorICBjb25zdCBj
aGVja3BvaW50TmFtZSA9IHVuaXF1ZU5hbWUodGVzdENhc2UsICdjaGVja3BvaW50Jyk7CisgIGNv
bnN0IGNoZWNrcG9pbnRJZCA9IChhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiBjaGVja3BvaW50TmFtZX0pKS5sb2NrX2lk
OworICBhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUzLCB7b3A6ICdyZWxlYXNlJywgbG9j
a19pZDogY2hlY2twb2ludElkfSk7CisKKyAgLy8gUXVlcnkgdGhlIHN0YXRlIGFuZCB0ZXN0IHRo
ZSBvcmRlcmluZyBvZiByZXF1ZXN0ZWQgbG9ja3MuCisgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2
aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgIGNvbnN0IHJlbGV2YW50X3BlbmRpbmdfaWRzID0gc3Rh
dGUucGVuZGluZworICAgICAgLmZpbHRlcihsb2NrID0+IFtjbGllbnRJZDEsIGNsaWVudElkMiwg
Y2xpZW50SWQzXS5pbmNsdWRlcyhsb2NrLmNsaWVudElkKSkKKyAgICAgIC5tYXAobG9jayA9PiBs
b2NrLmNsaWVudElkKTsKKyAgYXNzZXJ0X2FycmF5X2VxdWFscygKKyAgICAgIFtjbGllbnRJZDEs
IGNsaWVudElkMiwgY2xpZW50SWQzXSwKKyAgICAgIHJlbGV2YW50X3BlbmRpbmdfaWRzLAorICAg
ICAgJ1F1ZXJ5aW5nIHRoZSBzdGF0ZSBzaG91bGQgcmV0dXJuIHJlcXVlc3RlZCBsb2NrcyBpbiB0
aGUgb3JkZXIgdGhleSB3ZXJlICcKKyAgICAgICsgJ3JlcXVlc3RlZC4nKTsKKworICAvLyBBZGQg
dGhlIHNlY29uZCBncm91cCBvZiByZXF1ZXN0cyBmcm9tIHRoZSBjbGllbnRzIGluIGEgbmV3IG9y
ZGVyLgorICBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUzLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTog
cmVzb3VyY2VOYW1lfSk7CisgIHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTEsIHtvcDogJ3JlcXVl
c3QnLCBuYW1lOiByZXNvdXJjZU5hbWV9KTsKKyAgcG9zdFRvRnJhbWVBbmRXYWl0KGZyYW1lMiwg
e29wOiAncmVxdWVzdCcsIG5hbWU6IHJlc291cmNlTmFtZX0pOworCisgIC8vIFJlbGVhc2UgbG9j
a3Mgc3VjaCB0aGF0IG9ubHkgdGhlIG5ld2x5IGFkZGVkIGxvY2tzIGFyZSByZXF1ZXN0ZWQuIFRo
aXMKKyAgLy8gYWN0cyBsaWtlIGEgY2hlY2twb2ludCBmb3IgdGhlIG5ld2x5IHF1ZXVlZCByZXF1
ZXN0cy4KKyAgZmlyc3RSZXF1ZXN0R3JvdXBSZWxlYXNlRnVuY3Rpb24oKTsKKyAgYXdhaXQgbG9j
a1Byb21pc2UxOworICBhd2FpdCBwb3N0VG9GcmFtZUFuZFdhaXQoZnJhbWUxLCB7b3A6ICdyZWxl
YXNlJywgbG9ja19pZDogbG9ja0lkMX0pOworICBhd2FpdCBsb2NrUHJvbWlzZTI7CisgIGF3YWl0
IHBvc3RUb0ZyYW1lQW5kV2FpdChmcmFtZTIsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkOiBsb2Nr
SWQyfSk7CisKKyAgLy8gUXVlcnkgdGhlIHN0YXRlIGFuZCB0ZXN0IHRoZSBuZXcgb3JkZXJpbmcu
CisgIGNvbnN0IHN0YXRlMiA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBjb25z
dCByZWxldmFudF9wZW5kaW5nX2lkczIgPSBzdGF0ZTIucGVuZGluZworICAgICAgLmZpbHRlcihs
b2NrID0+IFtjbGllbnRJZDEsIGNsaWVudElkMiwgY2xpZW50SWQzXS5pbmNsdWRlcyhsb2NrLmNs
aWVudElkKSkKKyAgICAgIC5tYXAobG9jayA9PiBsb2NrLmNsaWVudElkKTsKKyAgYXNzZXJ0X2Fy
cmF5X2VxdWFscygKKyAgICAgIFtjbGllbnRJZDMsIGNsaWVudElkMSwgY2xpZW50SWQyXSwKKyAg
ICAgIHJlbGV2YW50X3BlbmRpbmdfaWRzMiwKKyAgICAgICdRdWVyeWluZyB0aGUgc3RhdGUgc2hv
dWxkIHJldHVybiByZXF1ZXN0ZWQgbG9ja3MgaW4gdGhlIG9yZGVyIHRoZXkgd2VyZSAnCisgICAg
ICArICdyZXF1ZXN0ZWQuJyk7CisKK30sICdSZXF1ZXN0cyBhcHBlYXIgaW4gc3RhdGUgaW4gb3Jk
ZXIgbWFkZS4nKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jY2RiMDQxMTY4ODQ4Yzk4NDkzMzYwOWM5NjNmMzVlNTNlYWJlYjUyCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxNCBAQAorQ09OU09MRSBNRVNTQUdFOiBUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpCisKK0hhcm5lc3Mg
RXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKQorCitGQUlMIHF1ZXJ5
KCkgcmV0dXJucyBkaWN0aW9uYXJpZXMgd2l0aCBleHBlY3RlZCBwcm9wZXJ0aWVzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIHF1ZXJ5KCkgcmVwb3J0cyBpbmRpdmlkdWFsIGhlbGQgbG9ja3MgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRzIG11bHRpcGxlIGhlbGQgbG9ja3Mg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRzIHBlbmRpbmcgYW5kIGhlbGQg
bG9ja3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRzIGhlbGQgc2hhcmVk
IGxvY2tzIHdpdGggYXBwcm9wcmlhdGUgY291bnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVl
cnkoKSByZXBvcnRzIHBlbmRpbmcgc2hhcmVkIGxvY2tzIHdpdGggYXBwcm9wcmlhdGUgY291bnQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9y
LmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgcXVlcnkoKSByZXBvcnRzIHRoZSBzYW1lIGNsaWVudElk
IGZvciBoZWxkIGxvY2tzIGZyb20gdGhlIHNhbWUgY29udGV4dCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
VElNRU9VVCBxdWVyeSgpIHJlcG9ydHMgZGlmZmVyZW50IGlkcyBmb3IgaGVsZCBsb2NrcyBmcm9t
IGRpZmZlcmVudCBjb250ZXh0cyBUZXN0IHRpbWVkIG91dAorTk9UUlVOIHF1ZXJ5KCkgY2FuIG9i
c2VydmUgYSBkZWFkbG9jaworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2
OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LnRlbnRh
dGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1
aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQg
dGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50
YXRpdmUuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4xNGZkZWNhN2E0MjZjNDRhYzkwMjdhM2EyNDk0ZTIzNWQwYWMxODQ0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvcXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDIyNyBAQAorLy8gTUVU
QTogdGl0bGU9V2ViIExvY2tzIEFQSTogbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5IG1ldGhvZAorLy8g
TUVUQTogc2NyaXB0PXJlc291cmNlcy9oZWxwZXJzLmpzCisKKyd1c2Ugc3RyaWN0JzsKKworLy8g
UmV0dXJucyBhbiBhcnJheSBvZiB0aGUgbW9kZXMgZm9yIHRoZSBsb2NrcyB3aXRoIG1hdGNoaW5n
IG5hbWUuCitmdW5jdGlvbiBtb2RlcyhsaXN0LCBuYW1lKSB7CisgIHJldHVybiBsaXN0LmZpbHRl
cihpdGVtID0+IGl0ZW0ubmFtZSA9PT0gbmFtZSkubWFwKGl0ZW0gPT4gaXRlbS5tb2RlKTsKK30K
Ky8vIFJldHVybnMgYW4gYXJyYXkgb2YgdGhlIGNsaWVudElkcyBmb3IgdGhlIGxvY2tzIHdpdGgg
bWF0Y2hpbmcgbmFtZS4KK2Z1bmN0aW9uIGNsaWVudHMobGlzdCwgbmFtZSkgeworICByZXR1cm4g
bGlzdC5maWx0ZXIoaXRlbSA9PiBpdGVtLm5hbWUgPT09IG5hbWUpLm1hcChpdGVtID0+IGl0ZW0u
Y2xpZW50SWQpOworfQorCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9
IHVuaXF1ZU5hbWUodCk7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCBh
c3luYyBsb2NrMSA9PiB7CisgICAgLy8gQXR0ZW1wdCB0byByZXF1ZXN0IHRoaXMgYWdhaW4gLSBz
aG91bGQgYmUgYmxvY2tlZC4KKyAgICBsZXQgbG9jazJfYWNxdWlyZWQgPSBmYWxzZTsKKyAgICBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGxvY2syID0+IHsgbG9jazJfYWNxdWlyZWQgPSB0
cnVlOyB9KTsKKworICAgIC8vIFZlcmlmeSB0aGF0IGl0IHdhcyBibG9ja2VkLgorICAgIGF3YWl0
IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMg
bG9jazMgPT4geworICAgICAgYXNzZXJ0X2ZhbHNlKGxvY2syX2FjcXVpcmVkLCAnc2Vjb25kIHJl
cXVlc3Qgc2hvdWxkIGJlIGJsb2NrZWQnKTsKKyAgICAgIGFzc2VydF9lcXVhbHMobG9jazMsIG51
bGwsICd0aGlyZCByZXF1ZXN0IHNob3VsZCBoYXZlIGZhaWxlZCcpOworCisgICAgICBjb25zdCBz
dGF0ZSA9IGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworCisgICAgICBhc3NlcnRfb3du
X3Byb3BlcnR5KHN0YXRlLCAncGVuZGluZycsICdTdGF0ZSBoYXMgYHBlbmRpbmdgIHByb3BlcnR5
Jyk7CisgICAgICBhc3NlcnRfdHJ1ZShBcnJheS5pc0FycmF5KHN0YXRlLnBlbmRpbmcpLAorICAg
ICAgICAgICAgICAgICAgJ1N0YXRlIGBwZW5kaW5nYCBwcm9wZXJ0eSBpcyBhbiBhcnJheScpOwor
ICAgICAgY29uc3QgcGVuZGluZ19pbmZvID0gc3RhdGUucGVuZGluZ1swXTsKKyAgICAgIGFzc2Vy
dF9vd25fcHJvcGVydHkocGVuZGluZ19pbmZvLCAnbmFtZScsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICdQZW5kaW5nIGluZm8gZGljdGlvbmFyeSBoYXMgYG5hbWVgIHByb3BlcnR5Jyk7Cisg
ICAgICBhc3NlcnRfb3duX3Byb3BlcnR5KHBlbmRpbmdfaW5mbywgJ21vZGUnLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAnUGVuZGluZyBpbmZvIGRpY3Rpb25hcnkgaGFzIGBtb2RlYCBwcm9w
ZXJ0eScpOworICAgICAgYXNzZXJ0X293bl9wcm9wZXJ0eShwZW5kaW5nX2luZm8sICdjbGllbnRJ
ZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdQZW5kaW5nIGluZm8gZGljdGlvbmFyeSBo
YXMgYGNsaWVudElkYCBwcm9wZXJ0eScpOworCisgICAgICBhc3NlcnRfb3duX3Byb3BlcnR5KHN0
YXRlLCAnaGVsZCcsICdTdGF0ZSBoYXMgYGhlbGRgIHByb3BlcnR5Jyk7CisgICAgICBhc3NlcnRf
dHJ1ZShBcnJheS5pc0FycmF5KHN0YXRlLmhlbGQpLAorICAgICAgICAgICAgICAgICAgJ1N0YXRl
IGBoZWxkYCBwcm9wZXJ0eSBpcyBhbiBhcnJheScpOworICAgICAgY29uc3QgaGVsZF9pbmZvID0g
c3RhdGUuaGVsZFswXTsKKyAgICAgIGFzc2VydF9vd25fcHJvcGVydHkoaGVsZF9pbmZvLCAnbmFt
ZScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdIZWxkIGluZm8gZGljdGlvbmFyeSBoYXMg
YG5hbWVgIHByb3BlcnR5Jyk7CisgICAgICBhc3NlcnRfb3duX3Byb3BlcnR5KGhlbGRfaW5mbywg
J21vZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnSGVsZCBpbmZvIGRpY3Rpb25hcnkg
aGFzIGBtb2RlYCBwcm9wZXJ0eScpOworICAgICAgYXNzZXJ0X293bl9wcm9wZXJ0eShoZWxkX2lu
Zm8sICdjbGllbnRJZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdIZWxkIGluZm8gZGlj
dGlvbmFyeSBoYXMgYGNsaWVudElkYCBwcm9wZXJ0eScpOworICAgIH0pOworICB9KTsKK30sICdx
dWVyeSgpIHJldHVybnMgZGljdGlvbmFyaWVzIHdpdGggZXhwZWN0ZWQgcHJvcGVydGllcycpOwor
CisKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1l
KHQpOworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMgbG9jazEg
PT4geworICAgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7Cisg
ICAgYXNzZXJ0X2FycmF5X2VxdWFscyhtb2RlcyhzdGF0ZS5oZWxkLCByZXMpLCBbJ2V4Y2x1c2l2
ZSddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ0hlbGQgbG9jayBzaG91bGQgYXBwZWFyIG9u
Y2UnKTsKKyAgfSk7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9k
ZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrMSA9PiB7CisgICAgY29uc3Qgc3RhdGUgPSBhd2FpdCBu
YXZpZ2F0b3IubG9ja3MucXVlcnkoKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKG1vZGVzKHN0
YXRlLmhlbGQsIHJlcyksIFsnc2hhcmVkJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAnSGVs
ZCBsb2NrIHNob3VsZCBhcHBlYXIgb25jZScpOworICB9KTsKK30sICdxdWVyeSgpIHJlcG9ydHMg
aW5kaXZpZHVhbCBoZWxkIGxvY2tzJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAg
Y29uc3QgcmVzMSA9IHVuaXF1ZU5hbWUodCk7CisgIGNvbnN0IHJlczIgPSB1bmlxdWVOYW1lKHQp
OworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlczEsIGFzeW5jIGxvY2sxID0+
IHsKKyAgICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMyLCB7bW9kZTogJ3NoYXJl
ZCd9LCBhc3luYyBsb2NrMiA9PiB7CisgICAgICBjb25zdCBzdGF0ZSA9IGF3YWl0IG5hdmlnYXRv
ci5sb2Nrcy5xdWVyeSgpOworICAgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhtb2RlcyhzdGF0ZS5o
ZWxkLCByZXMxKSwgWydleGNsdXNpdmUnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ0hl
bGQgbG9jayBzaG91bGQgYXBwZWFyIG9uY2UnKTsKKyAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMo
bW9kZXMoc3RhdGUuaGVsZCwgcmVzMiksIFsnc2hhcmVkJ10sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICdIZWxkIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNlJyk7CisgICAgfSk7CisgIH0pOwor
fSwgJ3F1ZXJ5KCkgcmVwb3J0cyBtdWx0aXBsZSBoZWxkIGxvY2tzJyk7CisKK3Byb21pc2VfdGVz
dChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBhd2FpdCBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIGFzeW5jIGxvY2sxID0+IHsKKyAgICAvLyBBdHRl
bXB0IHRvIHJlcXVlc3QgdGhpcyBhZ2FpbiAtIHNob3VsZCBiZSBibG9ja2VkLgorICAgIGxldCBs
b2NrMl9hY3F1aXJlZCA9IGZhbHNlOworICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywg
bG9jazIgPT4geyBsb2NrMl9hY3F1aXJlZCA9IHRydWU7IH0pOworCisgICAgLy8gVmVyaWZ5IHRo
YXQgaXQgd2FzIGJsb2NrZWQuCisgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVz
LCB7aWZBdmFpbGFibGU6IHRydWV9LCBhc3luYyBsb2NrMyA9PiB7CisgICAgICBhc3NlcnRfZmFs
c2UobG9jazJfYWNxdWlyZWQsICdzZWNvbmQgcmVxdWVzdCBzaG91bGQgYmUgYmxvY2tlZCcpOwor
ICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrMywgbnVsbCwgJ3RoaXJkIHJlcXVlc3Qgc2hvdWxkIGhh
dmUgZmFpbGVkJyk7CisKKyAgICAgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tz
LnF1ZXJ5KCk7CisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKG1vZGVzKHN0YXRlLnBlbmRpbmcs
IHJlcyksIFsnZXhjbHVzaXZlJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICdQZW5kaW5n
IGxvY2sgc2hvdWxkIGFwcGVhciBvbmNlJyk7CisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKG1v
ZGVzKHN0YXRlLmhlbGQsIHJlcyksIFsnZXhjbHVzaXZlJ10sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICdIZWxkIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNlJyk7CisgICAgfSk7CisgIH0pOwor
fSwgJ3F1ZXJ5KCkgcmVwb3J0cyBwZW5kaW5nIGFuZCBoZWxkIGxvY2tzJyk7CisKK3Byb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBhd2Fp
dCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHttb2RlOiAnc2hhcmVkJ30sIGFzeW5jIGxv
Y2sxID0+IHsKKyAgICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHttb2RlOiAn
c2hhcmVkJ30sIGFzeW5jIGxvY2syID0+IHsKKyAgICAgIGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2
aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKG1vZGVzKHN0
YXRlLmhlbGQsIHJlcyksIFsnc2hhcmVkJywgJ3NoYXJlZCddLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAnSGVsZCBsb2NrIHNob3VsZCBhcHBlYXIgdHdpY2UnKTsKKyAgICB9KTsKKyAgfSk7
Cit9LCAncXVlcnkoKSByZXBvcnRzIGhlbGQgc2hhcmVkIGxvY2tzIHdpdGggYXBwcm9wcmlhdGUg
Y291bnQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlx
dWVOYW1lKHQpOworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywgYXN5bmMg
bG9jazEgPT4geworICAgIGxldCBsb2NrMl9hY3F1aXJlZCA9IGZhbHNlLCBsb2NrM19hY3F1aXJl
ZCA9IGZhbHNlOworICAgIG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge21vZGU6ICdzaGFy
ZWQnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NrMiA9PiB7IGxvY2syX2FjcXVp
cmVkID0gdHJ1ZTsgfSk7CisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7bW9kZTog
J3NoYXJlZCd9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2szID0+IHsgbG9jazNf
YWNxdWlyZWQgPSB0cnVlOyB9KTsKKworICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
KHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgYXN5bmMgbG9jazQgPT4geworICAgICAgYXNzZXJ0
X2VxdWFscyhsb2NrNCwgbnVsbCwgJ2xvY2sgc2hvdWxkIG5vdCBiZSBhdmFpbGFibGUnKTsKKyAg
ICAgIGFzc2VydF9mYWxzZShsb2NrMl9hY3F1aXJlZCwgJ3NlY29uZCBhdHRlbXB0IHNob3VsZCBi
ZSBibG9ja2VkJyk7CisgICAgICBhc3NlcnRfZmFsc2UobG9jazNfYWNxdWlyZWQsICd0aGlyZCBh
dHRlbXB0IHNob3VsZCBiZSBibG9ja2VkJyk7CisKKyAgICAgIGNvbnN0IHN0YXRlID0gYXdhaXQg
bmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKG1vZGVz
KHN0YXRlLmhlbGQsIHJlcyksIFsnZXhjbHVzaXZlJ10sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICdIZWxkIGxvY2sgc2hvdWxkIGFwcGVhciBvbmNlJyk7CisKKyAgICAgIGFzc2VydF9hcnJh
eV9lcXVhbHMobW9kZXMoc3RhdGUucGVuZGluZywgcmVzKSwgWydzaGFyZWQnLCAnc2hhcmVkJ10s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICdQZW5kaW5nIGxvY2sgc2hvdWxkIGFwcGVhciB0
d2ljZScpOworICAgIH0pOworICB9KTsKK30sICdxdWVyeSgpIHJlcG9ydHMgcGVuZGluZyBzaGFy
ZWQgbG9ja3Mgd2l0aCBhcHByb3ByaWF0ZSBjb3VudCcpOworCitwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7CisgIGNvbnN0IHJlczEgPSB1bmlxdWVOYW1lKHQpOworICBjb25zdCByZXMyID0gdW5p
cXVlTmFtZSh0KTsKKworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMxLCBhc3lu
YyBsb2NrMSA9PiB7CisgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzMiwgYXN5
bmMgbG9jazIgPT4geworICAgICAgY29uc3Qgc3RhdGUgPSBhd2FpdCBuYXZpZ2F0b3IubG9ja3Mu
cXVlcnkoKTsKKworICAgICAgY29uc3QgcmVzMV9jbGllbnRzID0gY2xpZW50cyhzdGF0ZS5oZWxk
LCByZXMxKTsKKyAgICAgIGNvbnN0IHJlczJfY2xpZW50cyA9IGNsaWVudHMoc3RhdGUuaGVsZCwg
cmVzMik7CisKKyAgICAgIGFzc2VydF9lcXVhbHMocmVzMV9jbGllbnRzLmxlbmd0aCwgMSwgJ0Vh
Y2ggbG9jayBzaG91bGQgaGF2ZSBvbmUgaG9sZGVyJyk7CisgICAgICBhc3NlcnRfZXF1YWxzKHJl
czJfY2xpZW50cy5sZW5ndGgsIDEsICdFYWNoIGxvY2sgc2hvdWxkIGhhdmUgb25lIGhvbGRlcicp
OworCisgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKHJlczFfY2xpZW50cywgcmVzMl9jbGllbnRz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAnQm90aCBsb2NrcyBzaG91bGQgaGF2ZSBzYW1l
IGNsaWVudElkJyk7CisgICAgfSk7CisgIH0pOworfSwgJ3F1ZXJ5KCkgcmVwb3J0cyB0aGUgc2Ft
ZSBjbGllbnRJZCBmb3IgaGVsZCBsb2NrcyBmcm9tIHRoZSBzYW1lIGNvbnRleHQnKTsKKworcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisg
IGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNlcy93b3JrZXIuanMnKTsKKyAgdC5h
ZGRfY2xlYW51cCgoKSA9PiB7IHdvcmtlci50ZXJtaW5hdGUoKTsgfSk7CisKKyAgYXdhaXQgcG9z
dFRvV29ya2VyQW5kV2FpdCgKKyAgICB3b3JrZXIsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMs
IG1vZGU6ICdzaGFyZWQnfSk7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVz
LCB7bW9kZTogJ3NoYXJlZCd9LCBhc3luYyBsb2NrID0+IHsKKyAgICBjb25zdCBzdGF0ZSA9IGF3
YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICAgIGNvbnN0IHJlc19jbGllbnRzID0gY2xp
ZW50cyhzdGF0ZS5oZWxkLCByZXMpOworICAgIGFzc2VydF9lcXVhbHMocmVzX2NsaWVudHMubGVu
Z3RoLCAyLCAnQ2xpZW50cyBzaG91bGQgaGF2ZSBzYW1lIHJlc291cmNlJyk7CisgICAgYXNzZXJ0
X25vdF9lcXVhbHMocmVzX2NsaWVudHNbMF0sIHJlc19jbGllbnRzWzFdLAorICAgICAgICAgICAg
ICAgICAgICAgICdDbGllbnRzIHNob3VsZCBoYXZlIGRpZmZlcmVudCBpZHMnKTsKKyAgfSk7Cit9
LCAncXVlcnkoKSByZXBvcnRzIGRpZmZlcmVudCBpZHMgZm9yIGhlbGQgbG9ja3MgZnJvbSBkaWZm
ZXJlbnQgY29udGV4dHMnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCBy
ZXMxID0gdW5pcXVlTmFtZSh0KTsKKyAgY29uc3QgcmVzMiA9IHVuaXF1ZU5hbWUodCk7CisKKyAg
Y29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcigncmVzb3VyY2VzL3dvcmtlci5qcycpOworICB0LmFk
ZF9jbGVhbnVwKCgpID0+IHsgd29ya2VyLnRlcm1pbmF0ZSgpOyB9KTsKKworICAvLyBBY3F1aXJl
IDEgaW4gdGhlIHdvcmtlci4KKyAgYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCh3b3JrZXIsIHtv
cDogJ3JlcXVlc3QnLCBuYW1lOiByZXMxfSkKKworICAvLyBBY3F1aXJlIDIgaGVyZS4KKyAgYXdh
aXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
cmVzMiwgbG9jayA9PiB7CisgICAgICByZXNvbHZlKCk7CisgICAgICByZXR1cm4gbmV3IFByb21p
c2UoKCkgPT4ge30pOyAvLyBOZXZlciByZWxlYXNlZC4KKyAgICB9KTsKKyAgfSk7CisKKyAgLy8g
UmVxdWVzdCAyIGluIHRoZSB3b3JrZXIuCisgIHBvc3RUb1dvcmtlckFuZFdhaXQod29ya2VyLCB7
b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzMn0pOworICBhc3NlcnRfdHJ1ZSgoYXdhaXQgcG9zdFRv
V29ya2VyQW5kV2FpdCh3b3JrZXIsIHsKKyAgICBvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMyLCBp
ZkF2YWlsYWJsZTogdHJ1ZQorICB9KSkuZmFpbGVkLCAnTG9jayByZXF1ZXN0IHNob3VsZCBoYXZl
IGZhaWxlZCcpOworCisgIC8vIFJlcXVlc3QgMSBoZXJlLgorICBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCgKKyAgICByZXMxLCB0LnVucmVhY2hlZF9mdW5jKCdMb2NrIHNob3VsZCBub3QgYmUgYWNx
dWlyZWQnKSk7CisKKyAgLy8gVmVyaWZ5IHRoYXQgd2UncmUgc2VlaW5nIGEgZGVhZGxvY2suCisg
IGNvbnN0IHN0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgIGNvbnN0IHJl
czFfaGVsZF9jbGllbnRzID0gY2xpZW50cyhzdGF0ZS5oZWxkLCByZXMxKTsKKyAgY29uc3QgcmVz
Ml9oZWxkX2NsaWVudHMgPSBjbGllbnRzKHN0YXRlLmhlbGQsIHJlczIpOworICBjb25zdCByZXMx
X3BlbmRpbmdfY2xpZW50cyA9IGNsaWVudHMoc3RhdGUucGVuZGluZywgcmVzMSk7CisgIGNvbnN0
IHJlczJfcGVuZGluZ19jbGllbnRzID0gY2xpZW50cyhzdGF0ZS5wZW5kaW5nLCByZXMyKTsKKwor
ICBhc3NlcnRfZXF1YWxzKHJlczFfaGVsZF9jbGllbnRzLmxlbmd0aCwgMSk7CisgIGFzc2VydF9l
cXVhbHMocmVzMl9oZWxkX2NsaWVudHMubGVuZ3RoLCAxKTsKKyAgYXNzZXJ0X2VxdWFscyhyZXMx
X3BlbmRpbmdfY2xpZW50cy5sZW5ndGgsIDEpOworICBhc3NlcnRfZXF1YWxzKHJlczJfcGVuZGlu
Z19jbGllbnRzLmxlbmd0aCwgMSk7CisKKyAgYXNzZXJ0X2VxdWFscyhyZXMxX2hlbGRfY2xpZW50
c1swXSwgcmVzMl9wZW5kaW5nX2NsaWVudHNbMF0pOworICBhc3NlcnRfZXF1YWxzKHJlczJfaGVs
ZF9jbGllbnRzWzBdLCByZXMxX3BlbmRpbmdfY2xpZW50c1swXSk7Cit9LCAncXVlcnkoKSBjYW4g
b2JzZXJ2ZSBhIGRlYWRsb2NrJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDMwYmE4NDE1MDk3MjU4MDQxZTM4N2E2Mzk3MDRlY2Y1YWNj
M2ZjZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3F1ZXJ5LnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACisKK0ZBSUwgcXVlcnkoKSByZXR1cm5zIGRpY3Rp
b25hcmllcyB3aXRoIGV4cGVjdGVkIHByb3BlcnRpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwg
cXVlcnkoKSByZXBvcnRzIGluZGl2aWR1YWwgaGVsZCBsb2NrcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
RkFJTCBxdWVyeSgpIHJlcG9ydHMgbXVsdGlwbGUgaGVsZCBsb2NrcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcp
IgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgcGVuZGluZyBhbmQgaGVsZCBsb2NrcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgaGVsZCBzaGFyZWQgbG9ja3Mgd2l0aCBhcHBy
b3ByaWF0ZSBjb3VudCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgcGVu
ZGluZyBzaGFyZWQgbG9ja3Mgd2l0aCBhcHByb3ByaWF0ZSBjb3VudCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcp
IgorRkFJTCBxdWVyeSgpIHJlcG9ydHMgdGhlIHNhbWUgY2xpZW50SWQgZm9yIGhlbGQgbG9ja3Mg
ZnJvbSB0aGUgc2FtZSBjb250ZXh0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIHF1ZXJ5KCkgcmVw
b3J0cyBkaWZmZXJlbnQgaWRzIGZvciBoZWxkIGxvY2tzIGZyb20gZGlmZmVyZW50IGNvbnRleHRz
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBXb3JrZXIiCitGQUlMIHF1ZXJ5KCkg
Y2FuIG9ic2VydmUgYSBkZWFkbG9jayBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTog
V29ya2VyIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cXVlcnkudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEz
NTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcXVlcnku
dGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMg
ZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRo
ZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nr
cy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNl
LW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkYzY3
Y2QzMDE5NGQ1ZWUwYjNiMTA3NmZjYTQwMzM3YjRjYThiYzgKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNv
dXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEw
IEBACisKK0ZBSUwgRE9NU3RyaW5nOiAgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgRE9NU3RyaW5n
OiAweDYxIDB4NjIgMHg2MyAweDAgMHg2NCAweDY1IDB4NjYgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZB
SUwgRE9NU3RyaW5nOiAweEQ4MDAgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgRE9NU3RyaW5nOiAw
eERDMDAgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2
aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgRE9NU3RyaW5nOiAweERDMDAgMHhEODAwIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhGRkZGIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIFJlc291cmNlIG5hbWVzIHRoYXQgYXJlIG5vdCB2YWxpZCBVVEYtMTYgYXJlIG5vdCBt
YW5nbGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25h
dmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIE5hbWVzIGNhbm5vdCBzdGFydCB3aXRoICIt
IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUu
aHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbApAQCAtMCww
ICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFz
dHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55Lmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMDMxYjNm
N2JhMmUzNDEyOTg3MGRiNzMwODhiZTBiYzM4NGFiMmY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3Vy
Y2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDU2IEBACisvLyBNRVRB
OiB0aXRsZT1XZWIgTG9ja3MgQVBJOiBSZXNvdXJjZXMgRE9NU3RyaW5nIGVkZ2UgY2FzZXMKKy8v
IE1FVEE6IGdsb2JhbD13aW5kb3csZGVkaWNhdGVkd29ya2VyLHNoYXJlZHdvcmtlcixzZXJ2aWNl
d29ya2VyCisKKyd1c2Ugc3RyaWN0JzsKKworZnVuY3Rpb24gY29kZV9wb2ludHMocykgeworICBy
ZXR1cm4gWy4uLnNdCisgICAgLm1hcChjID0+ICcweCcgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJp
bmcoMTYpLnRvVXBwZXJDYXNlKCkpCisgICAgLmpvaW4oJyAnKTsKK30KKworWworICAnJywgLy8g
RW1wdHkgc3RyaW5ncworICAnYWJjXHgwMGRlZicsIC8vIEVtYmVkZGVkIE5VTAorICAnXHVEODAw
JywgLy8gVW5wYWlyZWQgbG93IHN1cnJvZ2FnZQorICAnXHVEQzAwJywgLy8gVW5wYWlyZWQgaGln
aCBzdXJyb2dhZ2UKKyAgJ1x1REMwMFx1RDgwMCcsIC8vIFN3YXBwZWQgc3Vycm9nYXRlIHBhaXIK
KyAgJ1x1RkZGRicgLy8gTm9uLWNoYXJhY3RlcgorXS5mb3JFYWNoKHN0cmluZyA9PiB7CisgIHBy
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVz
dChzdHJpbmcsIGxvY2sgPT4geworICAgICAgYXNzZXJ0X2VxdWFscyhsb2NrLm5hbWUsIHN0cmlu
ZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ1JlcXVlc3RlZCBuYW1lIG1hdGNoZXMgZ3Jh
bnRlZCBuYW1lJyk7CisgICAgfSk7CisgIH0sICdET01TdHJpbmc6ICcgKyBjb2RlX3BvaW50cyhz
dHJpbmcpKTsKK30pOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIC8vICdcdUQ4MDAn
IHRyZWF0ZWQgYXMgYSBVU1ZTdHJpbmcgd291bGQgYmVjb21lICdcdUZGRkQnLgorICBhd2FpdCBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCgnXHVEODAwJywgYXN5bmMgbG9jayA9PiB7CisgICAgYXNz
ZXJ0X2VxdWFscyhsb2NrLm5hbWUsICdcdUQ4MDAnKTsKKworICAgIC8vIHxsb2NrfCBpcyBoZWxk
IGZvciB0aGUgZHVyYXRpb24gb2YgdGhpcyBuYW1lLiBJdAorICAgIC8vIFNob3VsZCBub3QgYmxv
Y2sgYWNxdWlyaW5nIHxsb2NrMnwgd2l0aCBhIGRpc3RpbmN0CisgICAgLy8gRE9NU3RyaW5nLgor
ICAgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KCdcdUZGRkQnLCBsb2NrMiA9PiB7Cisg
ICAgICBhc3NlcnRfZXF1YWxzKGxvY2syLm5hbWUsICdcdUZGRkQnKTsKKyAgICB9KTsKKworICAg
IC8vIElmIHdlIGRpZCBub3QgdGltZSBvdXQsIHRoaXMgcGFzc2VkLgorICB9KTsKK30sICdSZXNv
dXJjZSBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgVVRGLTE2IGFyZSBub3QgbWFuZ2xlZCcpOwor
Citwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGZvciAoY29uc3QgbmFtZSBvZiBbJy0nLCAn
LWZvbyddKSB7CisgICAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2RvbSgKKyAgICAgIHQsICdOb3RT
dXBwb3J0ZWRFcnJvcicsCisgICAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChuYW1lLCBsb2Nr
ID0+IHt9KSwKKyAgICAgICdOYW1lcyBzdGFydGluZyB3aXRoICItIiBzaG91bGQgYmUgcmVqZWN0
ZWQnKTsKKyAgfQorICBsZXQgZ290X2xvY2sgPSBmYWxzZTsKKyAgYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QoJ3gtYW55dGhpbmcnLCBsb2NrID0+IHsKKyAgICBnb3RfbG9jayA9IHRydWU7
CisgIH0pOworICBhc3NlcnRfdHJ1ZShnb3RfbG9jaywgJ05hbWVzIHdpdGggZW1iZWRkZWQgIi0i
IHNob3VsZCBiZSBhY2NlcHRlZCcpOworfSwgJ05hbWVzIGNhbm5vdCBzdGFydCB3aXRoICItIicp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29y
a2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vydmlj
ZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmRjNjdjZDMwMTk0ZDVlZTBiM2IxMDc2
ZmNhNDAzMzdiNGNhOGJjOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRlbnRhdGl2
ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAor
CitGQUlMIERPTVN0cmluZzogIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHg2
MSAweDYyIDB4NjMgMHgwIDB4NjQgMHg2NSAweDY2IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERP
TVN0cmluZzogMHhEODAwIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhEQzAw
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhEQzAwIDB4RDgwMCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBET01TdHJpbmc6IDB4RkZGRiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBSZXNvdXJjZSBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgVVRGLTE2IGFyZSBub3QgbWFuZ2xl
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBOYW1lcyBjYW5ub3Qgc3RhcnQgd2l0aCAiLSIgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QnKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBz
LmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYw
YTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZl
Lmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZp
bGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUg
dGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVz
b3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjZkYzY3Y2QzMDE5NGQ1ZWUwYjNiMTA3NmZjYTQwMzM3YjRjYThiYzgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50ZW50YXRpdmUuaHR0cHMuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMCBAQAorCitGQUlMIERPTVN0cmluZzogIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0
JykiCitGQUlMIERPTVN0cmluZzogMHg2MSAweDYyIDB4NjMgMHgwIDB4NjQgMHg2NSAweDY2IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmluZzogMHhEODAwIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0Jyki
CitGQUlMIERPTVN0cmluZzogMHhEQzAwIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIERPTVN0cmlu
ZzogMHhEQzAwIDB4RDgwMCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBET01TdHJpbmc6IDB4RkZG
RiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0
b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBSZXNvdXJjZSBuYW1lcyB0aGF0IGFyZSBub3QgdmFs
aWQgVVRGLTE2IGFyZSBub3QgbWFuZ2xlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2Jq
ZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBOYW1lcyBj
YW5ub3Qgc3RhcnQgd2l0aCAiLSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAo
ZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3Vy
Y2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVzLnRl
bnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNi
M2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlLW5hbWVz
LnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlz
IGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0
aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvcmVzb3VyY2VzL2hlbHBlcnMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvaGVscGVycy5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
ZTM4ZWVjYTMxZTBkOTk4ZjNhYmRjYWM4Mzg4NmIyMmM3ODJkYWNiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cmVzb3VyY2VzL2hlbHBlcnMuanMKQEAgLTAsMCArMSw3OSBAQAorLy8gVGVzdCBoZWxwZXJzIHVz
ZWQgYnkgbXVsdGlwbGUgV2ViIExvY2tzIEFQSSB0ZXN0cy4KKygoKSA9PiB7CisKKyAgLy8gR2Vu
ZXJhdGUgYSB1bmlxdWUgcmVzb3VyY2UgaWRlbnRpZmllciwgdXNpbmcgdGhlIHNjcmlwdCBwYXRo
IGFuZAorICAvLyB0ZXN0IGNhc2UgbmFtZS4gVGhpcyBpcyB1c2VmdWwgdG8gYXZvaWQgbG9jayBp
bnRlcmZlcmVuY2UgYmV0d2VlbgorICAvLyB0ZXN0IGNhc2VzLgorICBsZXQgcmVzX251bSA9IDA7
CisgIHNlbGYudW5pcXVlTmFtZSA9ICh0ZXN0Q2FzZSwgcHJlZml4KSA9PiB7CisgICAgcmV0dXJu
IGAke3NlbGYubG9jYXRpb24ucGF0aG5hbWV9LSR7cHJlZml4fS0ke3Rlc3RDYXNlLm5hbWV9LSR7
KytyZXNfbnVtfWA7CisgIH07CisKKyAgLy8gSW5qZWN0IGFuIGlmcmFtZSBzaG93aW5nIHRoZSBn
aXZlbiB1cmwgaW50byB0aGUgcGFnZSwgYW5kIHJlc29sdmUKKyAgLy8gdGhlIHJldHVybmVkIHBy
b21pc2Ugd2hlbiB0aGUgZnJhbWUgaXMgbG9hZGVkLgorICBzZWxmLmlmcmFtZSA9IHVybCA9PiBu
ZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgnaWZyYW1lJyk7CisgICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKAorICAg
ICAgJ2xvYWQnLCAoKSA9PiB7IHJlc29sdmUoZWxlbWVudCk7IH0sIHsgb25jZTogdHJ1ZSB9KTsK
KyAgICBlbGVtZW50LnNyYyA9IHVybDsKKyAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuYXBw
ZW5kQ2hpbGQoZWxlbWVudCk7CisgIH0pOworCisgIC8vIFBvc3QgYSBtZXNzYWdlIHRvIHRoZSB0
YXJnZXQgZnJhbWUsIGFuZCByZXNvbHZlIHRoZSByZXR1cm5lZAorICAvLyBwcm9taXNlIHdoZW4g
YSByZXNwb25zZSBjb21lcyBiYWNrLiBUaGUgcG9zdGVkIGRhdGEgaXMgYW5ub3RhdGVkCisgIC8v
IHdpdGggdW5pcXVlIGlkIHRvIHRyYWNrIHRoZSByZXNwb25zZS4gVGhpcyBhc3N1bWVzIHRoZSB1
c2Ugb2YKKyAgLy8gJ2lmcmFtZS5odG1sJyBhcyB0aGUgZnJhbWUsIHdoaWNoIGltcGxlbWVudHMg
dGhpcyBwcm90b2NvbC4KKyAgbGV0IG5leHRfcmVxdWVzdF9pZCA9IDA7CisgIHNlbGYucG9zdFRv
RnJhbWVBbmRXYWl0ID0gKGZyYW1lLCBkYXRhKSA9PiB7CisgICAgY29uc3QgaWZyYW1lX3dpbmRv
dyA9IGZyYW1lLmNvbnRlbnRXaW5kb3c7CisgICAgZGF0YS5ycWlkID0gbmV4dF9yZXF1ZXN0X2lk
Kys7CisgICAgaWZyYW1lX3dpbmRvdy5wb3N0TWVzc2FnZShkYXRhLCAnKicpOworICAgIHJldHVy
biBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAgIGNvbnN0IGxpc3RlbmVyID0gZXZlbnQg
PT4geworICAgICAgICBpZiAoZXZlbnQuc291cmNlICE9PSBpZnJhbWVfd2luZG93IHx8IGV2ZW50
LmRhdGEucnFpZCAhPT0gZGF0YS5ycWlkKQorICAgICAgICAgIHJldHVybjsKKyAgICAgICAgc2Vs
Zi5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgbGlzdGVuZXIpOworICAgICAgICByZXNv
bHZlKGV2ZW50LmRhdGEpOworICAgICAgfTsKKyAgICAgIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcign
bWVzc2FnZScsIGxpc3RlbmVyKTsKKyAgICB9KTsKKyAgfTsKKworICAvLyBQb3N0IGEgbWVzc2Fn
ZSB0byB0aGUgdGFyZ2V0IHdvcmtlciwgYW5kIHJlc29sdmUgdGhlIHJldHVybmVkCisgIC8vIHBy
b21pc2Ugd2hlbiBhIHJlc3BvbnNlIGNvbWVzIGJhY2suIFRoZSBwb3N0ZWQgZGF0YSBpcyBhbm5v
dGF0ZWQKKyAgLy8gd2l0aCB1bmlxdWUgaWQgdG8gdHJhY2sgdGhlIHJlc3BvbnNlLiBUaGlzIGFz
c3VtZXMgdGhlIHVzZSBvZgorICAvLyAnd29ya2VyLmpzJyBhcyB0aGUgd29ya2VyLCB3aGljaCBp
bXBsZW1lbnRzIHRoaXMgcHJvdG9jb2wuCisgIHNlbGYucG9zdFRvV29ya2VyQW5kV2FpdCA9ICh3
b3JrZXIsIGRhdGEpID0+IHsKKyAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7Cisg
ICAgICBkYXRhLnJxaWQgPSBuZXh0X3JlcXVlc3RfaWQrKzsKKyAgICAgIHdvcmtlci5wb3N0TWVz
c2FnZShkYXRhKTsKKyAgICAgIGNvbnN0IGxpc3RlbmVyID0gZXZlbnQgPT4geworICAgICAgICBp
ZiAoZXZlbnQuZGF0YS5ycWlkICE9PSBkYXRhLnJxaWQpCisgICAgICAgICAgcmV0dXJuOworICAg
ICAgICB3b3JrZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyKTsKKyAg
ICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICAgIH07CisgICAgICB3b3JrZXIuYWRkRXZl
bnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyKTsKKyAgICB9KTsKKyAgfTsKKworICAvKioK
KyAgICogUmVxdWVzdCBhIGxvY2sgYW5kIGhvbGQgaXQgdW50aWwgdGhlIHN1YnRlc3QgZW5kcy4K
KyAgICogQHBhcmFtIHsqfSB0IHRlc3QgcnVubmVyIG9iamVjdAorICAgKiBAcGFyYW0ge3N0cmlu
Z30gbmFtZSBsb2NrIG5hbWUKKyAgICogQHBhcmFtIHtMb2NrT3B0aW9ucz19IG9wdGlvbnMgbG9j
ayBvcHRpb25zCisgICAqIEByZXR1cm5zCisgICAqLworICBzZWxmLnJlcXVlc3RMb2NrQW5kSG9s
ZCA9ICh0LCBuYW1lLCBvcHRpb25zID0ge30pID0+IHsKKyAgICByZXR1cm4gbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QobmFtZSwgb3B0aW9ucywgKCkgPT4geworICAgICAgcmV0dXJuIG5ldyBQcm9t
aXNlKHJlc29sdmUgPT4gdC5hZGRfY2xlYW51cChyZXNvbHZlKSk7CisgICAgfSk7CisgIH07CisK
KyAgc2VsZi5tYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jID0gKCkgPT4geworICAgIGxldCByZXNv
bHZlOworICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHsgcmVzb2x2ZSA9IHI7
IH0pOworICAgIHJldHVybiBbcHJvbWlzZSwgcmVzb2x2ZV07CisgIH07CisKK30pKCk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9yZXNvdXJjZXMvaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvaWZyYW1lLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYmE2M2M3N2JhZTUwZDdlNjFiYjFjMDcxNzk5YWEyMzVhYzE4MzZjMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3Jlc291cmNlcy9pZnJhbWUuaHRtbApAQCAtMCwwICsxLDUyIEBACis8IURPQ1RZUEUgaHRt
bD4KKzx0aXRsZT5IZWxwZXIgSUZyYW1lPC90aXRsZT4KKzxzY3JpcHQ+CisndXNlIHN0cmljdCc7
CisKKy8vIE1hcCBvZiBsb2NrX2lkID0+IGZ1bmN0aW9uIHRoYXQgcmVsZWFzZXMgYSBsb2NrLgor
Citjb25zdCBoZWxkID0gbmV3IE1hcCgpOworbGV0IG5leHRfbG9ja19pZCA9IDE7CisKK3NlbGYu
YWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGUgPT4geworICBmdW5jdGlvbiByZXNwb25kKGRh
dGEpIHsKKyAgICBwYXJlbnQucG9zdE1lc3NhZ2UoT2JqZWN0LmFzc2lnbihkYXRhLCB7cnFpZDog
ZS5kYXRhLnJxaWR9KSwgJyonKTsKKyAgfQorCisgIHN3aXRjaCAoZS5kYXRhLm9wKSB7CisgICAg
Y2FzZSAncmVxdWVzdCc6CisgICAgICBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICAgICAg
ZS5kYXRhLm5hbWUsIHsKKyAgICAgICAgICBtb2RlOiBlLmRhdGEubW9kZSB8fCAnZXhjbHVzaXZl
JywKKyAgICAgICAgICBpZkF2YWlsYWJsZTogZS5kYXRhLmlmQXZhaWxhYmxlIHx8IGZhbHNlCisg
ICAgICAgIH0sIGxvY2sgPT4geworICAgICAgICAgIGlmIChsb2NrID09PSBudWxsKSB7CisgICAg
ICAgICAgICByZXNwb25kKHthY2s6ICdyZXF1ZXN0JywgZmFpbGVkOiB0cnVlfSk7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgICAgfQorICAgICAgICAgIGxldCBsb2NrX2lkID0gbmV4dF9s
b2NrX2lkKys7CisgICAgICAgICAgbGV0IHJlbGVhc2U7CisgICAgICAgICAgY29uc3QgcHJvbWlz
ZSA9IG5ldyBQcm9taXNlKHIgPT4geyByZWxlYXNlID0gcjsgfSk7CisgICAgICAgICAgaGVsZC5z
ZXQobG9ja19pZCwgcmVsZWFzZSk7CisgICAgICAgICAgcmVzcG9uZCh7YWNrOiAncmVxdWVzdCcs
IGxvY2tfaWQ6IGxvY2tfaWR9KTsKKyAgICAgICAgICByZXR1cm4gcHJvbWlzZQorICAgICAgICB9
KTsKKyAgICAgIGJyZWFrOworCisgICAgY2FzZSAncmVsZWFzZSc6CisgICAgICBoZWxkLmdldChl
LmRhdGEubG9ja19pZCkoKTsKKyAgICAgIGhlbGQuZGVsZXRlKGUuZGF0YS5sb2NrX2lkKTsKKyAg
ICAgIHJlc3BvbmQoe2FjazogJ3JlbGVhc2UnLCBsb2NrX2lkOiBlLmRhdGEubG9ja19pZH0pOwor
ICAgICAgYnJlYWs7CisKKyAgICBjYXNlICdjbGllbnRfaWQnOgorICAgICAgbmF2aWdhdG9yLmxv
Y2tzLnJlcXVlc3QoZS5kYXRhLm5hbWUsIGFzeW5jIGxvY2sgPT4geworICAgICAgICBjb25zdCBs
b2NrX3N0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCk7CisgICAgICAgIGNvbnN0
IGhlbGRfbG9jayA9CisgICAgICAgICAgICBsb2NrX3N0YXRlLmhlbGQuZmlsdGVyKGwgPT4gbC5u
YW1lID09PSBsb2NrLm5hbWUpWzBdOworICAgICAgICByZXNwb25kKHthY2s6ICdjbGllbnRfaWQn
LCBjbGllbnRfaWQ6IGhlbGRfbG9jay5jbGllbnRJZH0pOworICAgICAgfSk7CisgICAgICBicmVh
azsKKyAgfQorfSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy9zZXJ2aWNlLXdvcmtl
ci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3Jlc291cmNlcy9zZXJ2aWNlLXdvcmtlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjc4NjNlMzNlMDQ1
NzQ0OTE3M2U4MmJjOTQyYzNhZTIyNzY0ZWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3Nl
cnZpY2Utd29ya2VyLmpzCkBAIC0wLDAgKzEsNyBAQAorLy8gUmVzcG9uZHMgdG8gJy9jbGllbnRJ
ZCcgd2l0aCB0aGUgcmVxdWVzdCdzIGNsaWVudElkLgorc2VsZi5hZGRFdmVudExpc3RlbmVyKCdm
ZXRjaCcsIGUgPT4geworICBpZiAobmV3IFVSTChlLnJlcXVlc3QudXJsKS5wYXRobmFtZSA9PT0g
Jy9jbGllbnRJZCcpIHsKKyAgICBlLnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZShKU09OLnN0cmlu
Z2lmeSh7Y2xpZW50SWQ6IGUuY2xpZW50SWR9KSkpOworICAgIHJldHVybjsKKyAgfQorfSk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9yZXNvdXJjZXMvc3ctY29udHJvbGxlZC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy9zdy1j
b250cm9sbGVkLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJjNWM5YmRiODM4MjU3Y2I2OGUyYWRi
MDQwMDk3NWZhNjhiZGYzMGYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvc3ctY29udHJvbGxl
ZC1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNo
YXJzZXQ9dXRmLTg+Cis8dGl0bGU+aWZyYW1lIHVzZWQgaW4gY2xpZW50SWQgdGVzdDwvdGl0bGU+
Cis8c2NyaXB0PgorCitzZWxmLm9ubWVzc2FnZSA9IGFzeW5jIGV2ZW50ID0+IHsKKyAgdHJ5IHsK
KyAgICBpZiAoZXZlbnQuZGF0YSA9PT0gJ2dldF9zd19jbGllbnRfaWQnKSB7CisgICAgICAvLyBV
c2UgdGhlIGNvbnRyb2xsaW5nIHNlcnZpY2Ugd29ya2VyIHRvIGRldGVybWluZQorICAgICAgLy8g
dGhpcyBjbGllbnQncyBpZCBhY2NvcmRpbmcgdG8gdGhlIFNlcnZpY2UgV29ya2VyLgorICAgICAg
Y29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2NsaWVudElkJyk7CisgICAgICBjb25zdCBk
YXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpOworICAgICAgd2luZG93LnBhcmVudC5wb3N0TWVz
c2FnZShkYXRhLmNsaWVudElkLCAnKicpOworICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlm
IChldmVudC5kYXRhID09PSAnZ2V0X2xvY2tfY2xpZW50X2lkJykgeworICAgICAgLy8gR3JhYiBh
IGxvY2ssIHRoZW4gcXVlcnkgdGhlIGxvY2sgbWFuYWdlciBmb3Igc3RhdGUgdG8KKyAgICAgIC8v
IGRldGVybWluZSB0aGlzIGNsaWVudCdzIGlkIGFjY29yZGluZyB0byB0aGUgbG9jayBtYW5hZ2Vy
LgorICAgICAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QoJ2xvY2stbmFtZScsIGFzeW5j
IGxvY2sgPT4geworICAgICAgICBjb25zdCBsb2NrX3N0YXRlID0gYXdhaXQgbmF2aWdhdG9yLmxv
Y2tzLnF1ZXJ5KCk7CisgICAgICAgIGNvbnN0IGhlbGRfbG9jayA9IGxvY2tfc3RhdGUuaGVsZC5m
aWx0ZXIobCA9PiBsLm5hbWUgPT09IGxvY2submFtZSlbMF07CisgICAgICAgIHdpbmRvdy5wYXJl
bnQucG9zdE1lc3NhZ2UoaGVsZF9sb2NrLmNsaWVudElkLCAnKicpOworICAgICAgfSk7CisgICAg
ICByZXR1cm47CisgICAgfQorCisgICAgd2luZG93LnBhcmVudC5wb3N0TWVzc2FnZShgdW5rbm93
biByZXF1ZXN0OiAke2V2ZW50LmRhdGF9YCwgJyonKTsKKyAgfSBjYXRjaCAoZXgpIHsKKyAgICAv
LyBJbiBjYXNlIG9mIHRlc3QgZmFpbHVyZSwgZG9uJ3QgbGVhdmUgcGFyZW50IHdpbmRvdyBoYW5n
aW5nLgorICAgIHdpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoYCR7ZXgubmFtZX06ICR7ZXgubWVz
c2FnZX1gLCAnKicpOworICB9Cit9OworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy93
M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL3Jlc291cmNlcy93M2MtaW1wb3J0LmxvZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMzg0Y2M3
OGZlOWEyZTUxN2EzMWY4MzQwMzgyNTNlMjRhZjZmN2U2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3Vy
Y2VzL3czYy1pbXBvcnQubG9nCkBAIC0wLDAgKzEsMjEgQEAKK1RoZSB0ZXN0cyBpbiB0aGlzIGRp
cmVjdG9yeSB3ZXJlIGltcG9ydGVkIGZyb20gdGhlIFczQyByZXBvc2l0b3J5LgorRG8gTk9UIG1v
ZGlmeSB0aGVzZSB0ZXN0cyBkaXJlY3RseSBpbiBXZWJLaXQuCitJbnN0ZWFkLCBjcmVhdGUgYSBw
dWxsIHJlcXVlc3Qgb24gdGhlIFdQVCBnaXRodWI6CisJaHR0cHM6Ly9naXRodWIuY29tL3dlYi1w
bGF0Zm9ybS10ZXN0cy93cHQKKworVGhlbiBydW4gdGhlIFRvb2xzL1NjcmlwdHMvaW1wb3J0LXcz
Yy10ZXN0cyBpbiBXZWJLaXQgdG8gcmVpbXBvcnQKKworRG8gTk9UIG1vZGlmeSBvciByZW1vdmUg
dGhpcyBmaWxlLgorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK1Byb3BlcnRpZXMgcmVxdWlyaW5nIHZlbmRv
ciBwcmVmaXhlczoKK05vbmUKK1Byb3BlcnR5IHZhbHVlcyByZXF1aXJpbmcgdmVuZG9yIHByZWZp
eGVzOgorTm9uZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitMaXN0IG9mIGZpbGVzOgorL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3Jlc291cmNlcy9oZWxw
ZXJzLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3MvcmVzb3VyY2VzL2lmcmFtZS5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3NlcnZpY2Utd29ya2VyLmpzCisv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVz
b3VyY2VzL3N3LWNvbnRyb2xsZWQtaWZyYW1lLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZXMvd29ya2VyLmpzCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9yZXNvdXJjZXMvd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvcmVzb3VyY2VzL3dvcmtlci5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
YmI1ZDNkNmFhZDE4NTY3ZWQwNTQ0ZWFjNjE0MTI1ZTgzNjRmMzEyCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
cmVzb3VyY2VzL3dvcmtlci5qcwpAQCAtMCwwICsxLDM5IEBACisndXNlIHN0cmljdCc7CisKKy8v
IE1hcCBvZiBpZCA9PiBmdW5jdGlvbiB0aGF0IHJlbGVhc2VzIGEgbG9jay4KKworY29uc3QgaGVs
ZCA9IG5ldyBNYXAoKTsKK2xldCBuZXh0X2xvY2tfaWQgPSAxOworCitzZWxmLmFkZEV2ZW50TGlz
dGVuZXIoJ21lc3NhZ2UnLCBlID0+IHsKKyAgZnVuY3Rpb24gcmVzcG9uZChkYXRhKSB7CisgICAg
c2VsZi5wb3N0TWVzc2FnZShPYmplY3QuYXNzaWduKGRhdGEsIHtycWlkOiBlLmRhdGEucnFpZH0p
KTsKKyAgfQorCisgIHN3aXRjaCAoZS5kYXRhLm9wKSB7CisgIGNhc2UgJ3JlcXVlc3QnOgorICAg
IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgICAgZS5kYXRhLm5hbWUsIHsKKyAgICAgICAg
bW9kZTogZS5kYXRhLm1vZGUgfHwgJ2V4Y2x1c2l2ZScsCisgICAgICAgIGlmQXZhaWxhYmxlOiBl
LmRhdGEuaWZBdmFpbGFibGUgfHwgZmFsc2UKKyAgICAgIH0sIGxvY2sgPT4geworICAgICAgICBp
ZiAobG9jayA9PT0gbnVsbCkgeworICAgICAgICAgIHJlc3BvbmQoe2FjazogJ3JlcXVlc3QnLCBm
YWlsZWQ6IHRydWV9KTsKKyAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgbGV0
IGxvY2tfaWQgPSBuZXh0X2xvY2tfaWQrKzsKKyAgICAgICAgbGV0IHJlbGVhc2U7CisgICAgICAg
IGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHsgcmVsZWFzZSA9IHI7IH0pOworICAg
ICAgICBoZWxkLnNldChsb2NrX2lkLCByZWxlYXNlKTsKKyAgICAgICAgcmVzcG9uZCh7YWNrOiAn
cmVxdWVzdCcsIGxvY2tfaWQ6IGxvY2tfaWR9KTsKKyAgICAgICAgcmV0dXJuIHByb21pc2U7Cisg
ICAgICB9KTsKKyAgICBicmVhazsKKworICBjYXNlICdyZWxlYXNlJzoKKyAgICBoZWxkLmdldChl
LmRhdGEubG9ja19pZCkoKTsKKyAgICBoZWxkLmRlbGV0ZShlLmRhdGEubG9ja19pZCk7CisgICAg
cmVzcG9uZCh7YWNrOiAncmVsZWFzZScsIGxvY2tfaWQ6IGUuZGF0YS5sb2NrX2lkfSk7CisgICAg
YnJlYWs7CisgIH0KK30pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9zZWN1cmUtY29udGV4dC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi43ZTEzNjcwOTFlNWNjNjAyZDY0MmNhMzFiNDk4ZjYzMTBlNmRh
M2E0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgQVBJIHByZXNlbmNlIGluIHNlY3Vy
ZSBjb250ZXh0cyBhc3NlcnRfaWRsX2F0dHJpYnV0ZTogbmF2aWdhdG9yLmxvY2tzIGV4aXN0cyBp
biBzZWN1cmUgY29udGV4dCBwcm9wZXJ0eSAibG9ja3MiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUg
Y2hhaW4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
c2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5
MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zZWN1
cmUtY29udGV4dC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBU
aGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1
biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0
LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjlhZTdhZWE0NzVmMmRiMTY5NzE4
NTA3NDMxYWRiNGM2ZmY3OGVlYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0LnRlbnRh
dGl2ZS5odHRwcy5hbnkuanMKQEAgLTAsMCArMSwxNCBAQAorLy8gTUVUQTogdGl0bGU9V2ViIExv
Y2tzIEFQSTogQVBJIHJlcXVpcmVzIHNlY3VyZSBjb250ZXh0CisvLyBNRVRBOiBnbG9iYWw9d2lu
ZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3b3JrZXIsc2VydmljZXdvcmtlcgorCisndXNlIHN0
cmljdCc7CisKK3Rlc3QodCA9PiB7CisgIGFzc2VydF90cnVlKHNlbGYuaXNTZWN1cmVDb250ZXh0
KTsKKyAgYXNzZXJ0X2lkbF9hdHRyaWJ1dGUobmF2aWdhdG9yLCAnbG9ja3MnLAorICAgICAgICAg
ICAgICAgICAgICAgICAnbmF2aWdhdG9yLmxvY2tzIGV4aXN0cyBpbiBzZWN1cmUgY29udGV4dCcp
OworICBhc3NlcnRfdHJ1ZSgnTG9ja01hbmFnZXInIGluIHNlbGYsCisgICAgICAgICAgICAgICdM
b2NrTWFuYWdlciBpcyBwcmVzZW50IGluIHNlY3VyZSBjb250ZXh0cycpOworICBhc3NlcnRfdHJ1
ZSgnTG9jaycgaW4gc2VsZiwKKyAgICAgICAgICAgICAgJ0xvY2sgaW50ZXJmYWNlIGlzIHByZXNl
bnQgaW4gc2VjdXJlIGNvbnRleHRzJyk7Cit9LCAnQVBJIHByZXNlbmNlIGluIHNlY3VyZSBjb250
ZXh0cycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2
aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2UxMzY3MDkxZTVjYzYwMmQ2
NDJjYTMxYjQ5OGY2MzEwZTZkYTNhNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0LnRl
bnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwz
IEBACisKK0ZBSUwgQVBJIHByZXNlbmNlIGluIHNlY3VyZSBjb250ZXh0cyBhc3NlcnRfaWRsX2F0
dHJpYnV0ZTogbmF2aWdhdG9yLmxvY2tzIGV4aXN0cyBpbiBzZWN1cmUgY29udGV4dCBwcm9wZXJ0
eSAibG9ja3MiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJl
LWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zZWN1cmUtY29u
dGV4dC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
MzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
c2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAg
LTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGlu
ZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFu
eS53b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS53
b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdlMTM2NzA5MWU1Y2M2MDJkNjQyY2EzMWI0
OThmNjMxMGU2ZGEzYTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zZWN1cmUtY29udGV4dC50ZW50YXRpdmUu
aHR0cHMuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgQVBJ
IHByZXNlbmNlIGluIHNlY3VyZSBjb250ZXh0cyBhc3NlcnRfaWRsX2F0dHJpYnV0ZTogbmF2aWdh
dG9yLmxvY2tzIGV4aXN0cyBpbiBzZWN1cmUgY29udGV4dCBwcm9wZXJ0eSAibG9ja3MiIG5vdCBm
b3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0
aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5h
bnkud29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2
MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRw
cy5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWly
ZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRl
c3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRh
dGl2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5OGE4OTIwYWE0ZDYwZDBmZjU2Yzk1M2Q5ZTExOTAzYTQ3
MTU4ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitGQUlMIFRoZSBzaWduYWwgb3B0aW9uIG11c3QgYmUg
YW4gQWJvcnRTaWduYWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgUGFzc2luZyBhbiBhbHJlYWR5
IGFib3J0ZWQgc2lnbmFsIGFib3J0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0
IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBbiBhYm9ydGVk
IHJlcXVlc3QgcmVzdWx0cyBpbiBBYm9ydEVycm9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFi
b3J0IGFmdGVyIGEgdGltZW91dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBTaWduYWwgdGhhdCBp
cyBub3QgYWJvcnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBTeW5jaHJvbm91c2x5IHNpZ25h
bGVkIGFib3J0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFib3J0IHNpZ25hbGVkIGFmdGVyIGxv
Y2sgZ3JhbnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBYm9ydCBzaWduYWxlZCBhZnRlciBs
b2NrIHJlbGVhc2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRp
bmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFib3J0IHNob3VsZCBwcm9jZXNz
IHRoZSBuZXh0IHBlbmRpbmcgbG9jayByZXF1ZXN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBz
LmFueS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBi
NTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCkBA
IC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBp
bmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2ln
bmFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzQ1MDlkZTYzN2I4MWY1NWEz
YmMyOWE3NWY0YjM4MWI5M2YxMWI3YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUu
aHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsMjA4IEBACisvLyBNRVRBOiB0aXRsZT1XZWIgTG9ja3Mg
QVBJOiBBYm9ydFNpZ25hbCBpbnRlZ3JhdGlvbgorLy8gTUVUQTogc2NyaXB0PXJlc291cmNlcy9o
ZWxwZXJzLmpzCisvLyBNRVRBOiBnbG9iYWw9d2luZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3
b3JrZXIsc2VydmljZXdvcmtlcgorCisndXNlIHN0cmljdCc7CisKK3Byb21pc2VfdGVzdChhc3lu
YyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICAvLyBUaGVzZSBjYXNl
cyBzaG91bGQgbm90IHdvcms6CisgIGZvciAoY29uc3Qgc2lnbmFsIG9mIFsnc3RyaW5nJywgMTIu
MzQsIGZhbHNlLCB7fSwgU3ltYm9sKCksICgpID0+IHt9LCBzZWxmXSkgeworICAgIGF3YWl0IHBy
b21pc2VfcmVqZWN0c19qcygKKyAgICAgIHQsIFR5cGVFcnJvciwKKyAgICAgIG5hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0KAorICAgICAgICByZXMsIHtzaWduYWx9LCB0LnVucmVhY2hlZF9mdW5jKCdj
YWxsYmFjayBzaG91bGQgbm90IHJ1bicpKSwKKyAgICAgICdCaW5kaW5ncyBzaG91bGQgdGhyb3cg
aWYgdGhlIHNpZ25hbCBvcHRpb24gaXMgYSBub3QgYW4gQWJvcnRTaWduYWwnKTsKKyAgfQorfSwg
J1RoZSBzaWduYWwgb3B0aW9uIG11c3QgYmUgYW4gQWJvcnRTaWduYWwnKTsKKworcHJvbWlzZV90
ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworICBjb25zdCBj
b250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpOworICBjb250cm9sbGVyLmFib3J0KCk7
CisKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3RzX2RvbSgKKyAgICB0LCAnQWJvcnRFcnJvcicsCisg
ICAgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVzLCB7c2lnbmFsOiBjb250cm9sbGVyLnNpZ25h
bH0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdC51bnJlYWNoZWRfZnVuYygnY2FsbGJh
Y2sgc2hvdWxkIG5vdCBydW4nKSksCisgICAgJ1JlcXVlc3Qgc2hvdWxkIHJlamVjdCB3aXRoIEFi
b3J0RXJyb3InKTsKK30sICdQYXNzaW5nIGFuIGFscmVhZHkgYWJvcnRlZCBzaWduYWwgYWJvcnRz
Jyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFt
ZSh0KTsKKworICAvLyBHcmFiIGEgbG9jayBhbmQgaG9sZCBpdCB1bnRpbCB0aGlzIHN1YnRlc3Qg
Y29tcGxldGVzLgorICByZXF1ZXN0TG9ja0FuZEhvbGQodCwgcmVzKTsKKworICBjb25zdCBjb250
cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpOworCisgIGNvbnN0IHByb21pc2UgPQorICAg
IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge3NpZ25hbDogY29udHJvbGxlci5zaWduYWx9
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQudW5yZWFjaGVkX2Z1bmMoJ2NhbGxiYWNr
IHNob3VsZCBub3QgcnVuJykpOworCisgIC8vIFZlcmlmeSB0aGUgcmVxdWVzdCBpcyBlbnF1ZXVl
ZDoKKyAgY29uc3Qgc3RhdGUgPSBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucXVlcnkoKTsKKyAgYXNz
ZXJ0X2VxdWFscyhzdGF0ZS5oZWxkLmZpbHRlcihsb2NrID0+IGxvY2submFtZSA9PT0gcmVzKS5s
ZW5ndGgsIDEsCisgICAgICAgICAgICAgICAgJ051bWJlciBvZiBoZWxkIGxvY2tzJyk7CisgIGFz
c2VydF9lcXVhbHMoc3RhdGUucGVuZGluZy5maWx0ZXIobG9jayA9PiBsb2NrLm5hbWUgPT09IHJl
cykubGVuZ3RoLCAxLAorICAgICAgICAgICAgICAgICdOdW1iZXIgb2YgcGVuZGluZyBsb2Nrcycp
OworCisgIGNvbnN0IHJlamVjdGVkID0gcHJvbWlzZV9yZWplY3RzX2RvbSgKKyAgICB0LCAnQWJv
cnRFcnJvcicsIHByb21pc2UsICdSZXF1ZXN0IHNob3VsZCByZWplY3Qgd2l0aCBBYm9ydEVycm9y
Jyk7CisKKyAgY29udHJvbGxlci5hYm9ydCgpOworCisgIGF3YWl0IHJlamVjdGVkOworCit9LCAn
QW4gYWJvcnRlZCByZXF1ZXN0IHJlc3VsdHMgaW4gQWJvcnRFcnJvcicpOworCitwcm9taXNlX3Rl
c3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisKKyAgLy8gR3Jh
YiBhIGxvY2sgYW5kIGhvbGQgaXQgdW50aWwgdGhpcyBzdWJ0ZXN0IGNvbXBsZXRlcy4KKyAgcmVx
dWVzdExvY2tBbmRIb2xkKHQsIHJlcyk7CisKKyAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9y
dENvbnRyb2xsZXIoKTsKKworICBjb25zdCBwcm9taXNlID0KKyAgICBuYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdChyZXMsIHtzaWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsfSwgbG9jayA9PiB7fSk7CisK
KyAgLy8gVmVyaWZ5IHRoZSByZXF1ZXN0IGlzIGVucXVldWVkOgorICBjb25zdCBzdGF0ZSA9IGF3
YWl0IG5hdmlnYXRvci5sb2Nrcy5xdWVyeSgpOworICBhc3NlcnRfZXF1YWxzKHN0YXRlLmhlbGQu
ZmlsdGVyKGxvY2sgPT4gbG9jay5uYW1lID09PSByZXMpLmxlbmd0aCwgMSwKKyAgICAgICAgICAg
ICAgICAnTnVtYmVyIG9mIGhlbGQgbG9ja3MnKTsKKyAgYXNzZXJ0X2VxdWFscyhzdGF0ZS5wZW5k
aW5nLmZpbHRlcihsb2NrID0+IGxvY2submFtZSA9PT0gcmVzKS5sZW5ndGgsIDEsCisgICAgICAg
ICAgICAgICAgJ051bWJlciBvZiBwZW5kaW5nIGxvY2tzJyk7CisKKyAgY29uc3QgcmVqZWN0ZWQg
PSBwcm9taXNlX3JlamVjdHNfZG9tKAorICAgIHQsICdBYm9ydEVycm9yJywgcHJvbWlzZSwgJ1Jl
cXVlc3Qgc2hvdWxkIHJlamVjdCB3aXRoIEFib3J0RXJyb3InKTsKKworICBsZXQgY2FsbGJhY2tf
Y2FsbGVkID0gZmFsc2U7CisgIHQuc3RlcF90aW1lb3V0KCgpID0+IHsKKyAgICBjYWxsYmFja19j
YWxsZWQgPSB0cnVlOworICAgIGNvbnRyb2xsZXIuYWJvcnQoKTsKKyAgfSwgMTApOworCisgIGF3
YWl0IHJlamVjdGVkOworICBhc3NlcnRfdHJ1ZShjYWxsYmFja19jYWxsZWQsICd0aW1lb3V0IHNo
b3VsZCBoYXZlIGNhdXNlZCB0aGUgYWJvcnQnKTsKKworfSwgJ0Fib3J0IGFmdGVyIGEgdGltZW91
dCcpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHJlcyA9IHVuaXF1ZU5h
bWUodCk7CisKKyAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTsKKwor
ICBsZXQgZ290X2xvY2sgPSBmYWxzZTsKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Qo
CisgICAgcmVzLCB7c2lnbmFsOiBjb250cm9sbGVyLnNpZ25hbH0sIGFzeW5jIGxvY2sgPT4geyBn
b3RfbG9jayA9IHRydWU7IH0pOworCisgIGFzc2VydF90cnVlKGdvdF9sb2NrLCAnTG9jayBzaG91
bGQgYmUgYWNxdWlyZWQgaWYgYWJvcnQgaXMgbm90IHNpZ25hbGVkLicpOworCit9LCAnU2lnbmFs
IHRoYXQgaXMgbm90IGFib3J0ZWQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBj
b25zdCByZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGNvbnRyb2xsZXIgPSBuZXcgQWJv
cnRDb250cm9sbGVyKCk7CisKKyAgbGV0IGdvdF9sb2NrID0gZmFsc2U7CisgIGNvbnN0IHAgPSBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIHtzaWduYWw6IGNvbnRyb2xsZXIuc2ln
bmFsfSwgbG9jayA9PiB7IGdvdF9sb2NrID0gdHJ1ZTsgfSk7CisKKyAgLy8gRXZlbiB0aG91Z2gg
bG9jayBpcyBncmFudGFibGUsIHRoaXMgYWJvcnQgc2hvdWxkIGJlIHByb2Nlc3NlZCBzeW5jaHJv
bm91c2x5LgorICBjb250cm9sbGVyLmFib3J0KCk7CisKKyAgYXdhaXQgcHJvbWlzZV9yZWplY3Rz
X2RvbSh0LCAnQWJvcnRFcnJvcicsIHAsICdSZXF1ZXN0IHNob3VsZCBhYm9ydCcpOworCisgIGFz
c2VydF9mYWxzZShnb3RfbG9jaywgJ1JlcXVlc3Qgc2hvdWxkIGJlIGFib3J0ZWQgaWYgc2lnbmFs
IGlzIHN5bmNocm9ub3VzJyk7CisKKyAgYXdhaXQgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVz
LCBsb2NrID0+IHsgZ290X2xvY2sgPSB0cnVlOyB9KTsKKyAgYXNzZXJ0X3RydWUoZ290X2xvY2ss
ICdTdWJzZXF1ZW50IHJlcXVlc3Qgc2hvdWxkIG5vdCBiZSBibG9ja2VkJyk7CisKK30sICdTeW5j
aHJvbm91c2x5IHNpZ25hbGVkIGFib3J0Jyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsK
KyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICBjb25zdCBjb250cm9sbGVyID0gbmV3
IEFib3J0Q29udHJvbGxlcigpOworCisgIC8vIE1ha2UgYSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMg
d2hlbiB0aGUgbG9jayBpcyBhY3F1aXJlZC4KKyAgY29uc3QgW2FjcXVpcmVkX3Byb21pc2UsIGFj
cXVpcmVkX2Z1bmNdID0gbWFrZVByb21pc2VBbmRSZXNvbHZlRnVuYygpOworCisgIC8vIFJlcXVl
c3QgdGhlIGxvY2suCisgIGxldCByZWxlYXNlX2Z1bmM7CisgIGNvbnN0IHJlbGVhc2VkX3Byb21p
c2UgPSBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIHtzaWduYWw6IGNvbnRyb2xs
ZXIuc2lnbmFsfSwgbG9jayA9PiB7CisgICAgICBhY3F1aXJlZF9mdW5jKCk7CisKKyAgICAgIC8v
IEhvbGQgbG9jayB1bnRpbCByZWxlYXNlX2Z1bmMgaXMgY2FsbGVkLgorICAgICAgY29uc3QgW3dh
aXRpbmdfcHJvbWlzZSwgd2FpdGluZ19mdW5jXSA9IG1ha2VQcm9taXNlQW5kUmVzb2x2ZUZ1bmMo
KTsKKyAgICAgIHJlbGVhc2VfZnVuYyA9IHdhaXRpbmdfZnVuYzsKKyAgICAgIHJldHVybiB3YWl0
aW5nX3Byb21pc2U7CisgICAgfSk7CisKKyAgLy8gV2FpdCBmb3IgdGhlIGxvY2sgdG8gYmUgYWNx
dWlyZWQuCisgIGF3YWl0IGFjcXVpcmVkX3Byb21pc2U7CisKKyAgLy8gU2lnbmFsIGFuIGFib3J0
LgorICBjb250cm9sbGVyLmFib3J0KCk7CisKKyAgLy8gUmVsZWFzZSB0aGUgbG9jay4KKyAgcmVs
ZWFzZV9mdW5jKCdyZXNvbHZlZCBvaycpOworCisgIGFzc2VydF9lcXVhbHMoYXdhaXQgcmVsZWFz
ZWRfcHJvbWlzZSwgJ3Jlc29sdmVkIG9rJywKKyAgICAgICAgICAgICAgICAnTG9jayByZWxlYXNl
ZCBwcm9taXNlIHNob3VsZCBub3QgcmVqZWN0Jyk7CisKK30sICdBYm9ydCBzaWduYWxlZCBhZnRl
ciBsb2NrIGdyYW50ZWQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCBy
ZXMgPSB1bmlxdWVOYW1lKHQpOworCisgIGNvbnN0IGNvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250
cm9sbGVyKCk7CisKKyAgLy8gTWFrZSBhIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBs
b2NrIGlzIGFjcXVpcmVkLgorICBjb25zdCBbYWNxdWlyZWRfcHJvbWlzZSwgYWNxdWlyZWRfZnVu
Y10gPSBtYWtlUHJvbWlzZUFuZFJlc29sdmVGdW5jKCk7CisKKyAgLy8gUmVxdWVzdCB0aGUgbG9j
ay4KKyAgbGV0IHJlbGVhc2VfZnVuYzsKKyAgY29uc3QgcmVsZWFzZWRfcHJvbWlzZSA9IG5hdmln
YXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge3NpZ25hbDogY29udHJvbGxlci5zaWduYWx9
LCBsb2NrID0+IHsKKyAgICAgIGFjcXVpcmVkX2Z1bmMoKTsKKworICAgICAgLy8gSG9sZCBsb2Nr
IHVudGlsIHJlbGVhc2VfZnVuYyBpcyBjYWxsZWQuCisgICAgICBjb25zdCBbd2FpdGluZ19wcm9t
aXNlLCB3YWl0aW5nX2Z1bmNdID0gbWFrZVByb21pc2VBbmRSZXNvbHZlRnVuYygpOworICAgICAg
cmVsZWFzZV9mdW5jID0gd2FpdGluZ19mdW5jOworICAgICAgcmV0dXJuIHdhaXRpbmdfcHJvbWlz
ZTsKKyAgICB9KTsKKworICAvLyBXYWl0IGZvciB0aGUgbG9jayB0byBiZSBhY3F1aXJlZC4KKyAg
YXdhaXQgYWNxdWlyZWRfcHJvbWlzZTsKKworICAvLyBSZWxlYXNlIHRoZSBsb2NrLgorICByZWxl
YXNlX2Z1bmMoJ3Jlc29sdmVkIG9rJyk7CisKKyAgLy8gU2lnbmFsIGFuIGFib3J0LgorICBjb250
cm9sbGVyLmFib3J0KCk7CisKKyAgYXNzZXJ0X2VxdWFscyhhd2FpdCByZWxlYXNlZF9wcm9taXNl
LCAncmVzb2x2ZWQgb2snLAorICAgICAgICAgICAgICAgICdMb2NrIHJlbGVhc2VkIHByb21pc2Ug
c2hvdWxkIG5vdCByZWplY3QnKTsKKworfSwgJ0Fib3J0IHNpZ25hbGVkIGFmdGVyIGxvY2sgcmVs
ZWFzZWQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlx
dWVOYW1lKHQpOworCisgIGNvbnN0IGNvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7
CisgIGNvbnN0IGZpcnN0ID0gcmVxdWVzdExvY2tBbmRIb2xkKHQsIHJlcywgeyBzaWduYWw6IGNv
bnRyb2xsZXIuc2lnbmFsIH0pOworICBjb25zdCBuZXh0ID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVl
c3QocmVzLCAoKSA9PiAicmVzb2x2ZWQiKTsKKyAgY29udHJvbGxlci5hYm9ydCgpOworCisgIGF3
YWl0IHByb21pc2VfcmVqZWN0c19kb20odCwgIkFib3J0RXJyb3IiLCBmaXJzdCwgIlJlcXVlc3Qg
c2hvdWxkIGFib3J0Iik7CisgIGFzc2VydF9lcXVhbHMoCisgICAgYXdhaXQgbmV4dCwKKyAgICAi
cmVzb2x2ZWQiLAorICAgICJUaGUgbmV4dCByZXF1ZXN0IGlzIHByb2Nlc3NlZCBhZnRlciBhYm9y
dCIKKyAgKTsKK30sICJBYm9ydCBzaG91bGQgcHJvY2VzcyB0aGUgbmV4dCBwZW5kaW5nIGxvY2sg
cmVxdWVzdCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2Vy
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kOThhODkyMGFhNGQ2MGQwZmY1NmM5NTNkOWUxMTkw
M2E0NzE1OGQwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vy
dmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorCitGQUlMIFRoZSBzaWdu
YWwgb3B0aW9uIG11c3QgYmUgYW4gQWJvcnRTaWduYWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwg
UGFzc2luZyBhbiBhbHJlYWR5IGFib3J0ZWQgc2lnbmFsIGFib3J0cyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5l
ZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcp
IgorRkFJTCBBbiBhYm9ydGVkIHJlcXVlc3QgcmVzdWx0cyBpbiBBYm9ydEVycm9yIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCitGQUlMIEFib3J0IGFmdGVyIGEgdGltZW91dCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
RkFJTCBTaWduYWwgdGhhdCBpcyBub3QgYWJvcnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBT
eW5jaHJvbm91c2x5IHNpZ25hbGVkIGFib3J0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFib3J0
IHNpZ25hbGVkIGFmdGVyIGxvY2sgZ3JhbnRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBYm9y
dCBzaWduYWxlZCBhZnRlciBsb2NrIHJlbGVhc2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIEFi
b3J0IHNob3VsZCBwcm9jZXNzIHRoZSBuZXh0IHBlbmRpbmcgbG9jayByZXF1ZXN0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
dW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0JykiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3
b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3Mvc2lnbmFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1s
CkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVz
dCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55Lndv
cmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ5OGE4OTIwYWE0ZDYwZDBmZjU2Yzk1M2Q5ZTExOTAzYTQ3MTU4
ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKKworRkFJTCBUaGUgc2lnbmFsIG9wdGlvbiBtdXN0
IGJlIGFuIEFib3J0U2lnbmFsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFBhc3NpbmcgYW4gYWxy
ZWFkeSBhYm9ydGVkIHNpZ25hbCBhYm9ydHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgQW4gYWJv
cnRlZCByZXF1ZXN0IHJlc3VsdHMgaW4gQWJvcnRFcnJvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBBYm9ydCBhZnRlciBhIHRpbWVvdXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVj
dCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU2lnbmFsIHRo
YXQgaXMgbm90IGFib3J0ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgU3luY2hyb25vdXNseSBz
aWduYWxlZCBhYm9ydCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBYm9ydCBzaWduYWxlZCBhZnRl
ciBsb2NrIGdyYW50ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgQWJvcnQgc2lnbmFsZWQgYWZ0
ZXIgbG9jayByZWxlYXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFs
dWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBBYm9ydCBzaG91bGQgcHJv
Y2VzcyB0aGUgbmV4dCBwZW5kaW5nIGxvY2sgcmVxdWVzdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9zaWduYWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NpZ25hbC50ZW50
YXRpdmUuaHR0cHMuYW55Lndvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNh
NWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0aXZl
Lmh0dHBzLmFueS53b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyBy
ZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0
ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zdGVhbC50
ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5OGQzMjgwZWRjYjgyNzI0MzZhNDRjNTliM2Y2MjU0
OTg3NDM2NDYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zdGVhbC50ZW50YXRpdmUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDcgQEAKKworRkFJTCBMb2NrIGF2YWlsYWJsZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBMb2NrIG5vdCBhdmFpbGFibGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwg
QnJva2VuIGxvY2sncyByZWxlYXNlIHByb21pc2UgcmVqZWN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgor
RkFJTCBSZXF1ZXN0ZWQgbG9jaydzIHJlbGVhc2UgcHJvbWlzZSBpcyBkZWZlcnJlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3Mu
cmVxdWVzdCcpIgorRkFJTCBMYXN0IGNhbGxlciB3aW5zIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5v
dCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRw
cy5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgw
YjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5odG1sCkBA
IC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBp
bmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zdGVh
bC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQxNjViOWQxNzlmYjE0YWM5ODQz
NDAxZGI2YjhlZTA3Yzk0NzBhZmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zdGVhbC50ZW50YXRpdmUuaHR0
cHMuYW55LmpzCkBAIC0wLDAgKzEsOTEgQEAKKy8vIE1FVEE6IHRpdGxlPVdlYiBMb2NrcyBBUEk6
IHN0ZWFsIG9wdGlvbgorLy8gTUVUQTogc2NyaXB0PXJlc291cmNlcy9oZWxwZXJzLmpzCisvLyBN
RVRBOiBnbG9iYWw9d2luZG93LGRlZGljYXRlZHdvcmtlcixzaGFyZWR3b3JrZXIsc2VydmljZXdv
cmtlcgorCisndXNlIHN0cmljdCc7CisKK2NvbnN0IG5ldmVyX3NldHRsZWQgPSBuZXcgUHJvbWlz
ZShyZXNvbHZlID0+IHsgLyogbmV2ZXIgKi8gfSk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+
IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKyAgbGV0IGNhbGxiYWNrX2NhbGxlZCA9
IGZhbHNlOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtzdGVhbDogdHJ1
ZX0sIGxvY2sgPT4geworICAgIGNhbGxiYWNrX2NhbGxlZCA9IHRydWU7CisgICAgYXNzZXJ0X25v
dF9lcXVhbHMobG9jaywgbnVsbCwgJ0xvY2sgc2hvdWxkIGJlIGdyYW50ZWQnKTsKKyAgfSk7Cisg
IGFzc2VydF90cnVlKGNhbGxiYWNrX2NhbGxlZCwgJ0NhbGxiYWNrIHNob3VsZCBiZSBjYWxsZWQn
KTsKK30sICdMb2NrIGF2YWlsYWJsZScpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Cisg
IGNvbnN0IHJlcyA9IHVuaXF1ZU5hbWUodCk7CisgIGxldCBjYWxsYmFja19jYWxsZWQgPSBmYWxz
ZTsKKworICAvLyBHcmFiIGFuZCBob2xkIHRoZSBsb2NrLgorICBuYXZpZ2F0b3IubG9ja3MucmVx
dWVzdChyZXMsIGxvY2sgPT4gbmV2ZXJfc2V0dGxlZCkuY2F0Y2goXyA9PiB7fSk7CisKKyAgLy8g
U3RlYWwgaXQuCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge3N0ZWFsOiB0
cnVlfSwgbG9jayA9PiB7CisgICAgY2FsbGJhY2tfY2FsbGVkID0gdHJ1ZTsKKyAgICBhc3NlcnRf
bm90X2VxdWFscyhsb2NrLCBudWxsLCAnTG9jayBzaG91bGQgYmUgZ3JhbnRlZCcpOworICB9KTsK
KworICBhc3NlcnRfdHJ1ZShjYWxsYmFja19jYWxsZWQsICdDYWxsYmFjayBzaG91bGQgYmUgY2Fs
bGVkJyk7Cit9LCAnTG9jayBub3QgYXZhaWxhYmxlJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0
ID0+IHsKKyAgY29uc3QgcmVzID0gdW5pcXVlTmFtZSh0KTsKKworICAvLyBHcmFiIGFuZCBob2xk
IHRoZSBsb2NrLgorICBjb25zdCBwcm9taXNlID0gbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QocmVz
LCBsb2NrID0+IG5ldmVyX3NldHRsZWQpOworICBjb25zdCBhc3NlcnRpb24gPSBwcm9taXNlX3Jl
amVjdHNfZG9tKAorICAgIHQsICdBYm9ydEVycm9yJywgcHJvbWlzZSwgYEluaXRpYWwgcmVxdWVz
dCdzIHByb21pc2Ugc2hvdWxkIHJlamVjdGApOworCisgIC8vIFN0ZWFsIGl0LgorICBhd2FpdCBu
YXZpZ2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtzdGVhbDogdHJ1ZX0sIGxvY2sgPT4ge30pOwor
CisgIGF3YWl0IGFzc2VydGlvbjsKKworfSwgYEJyb2tlbiBsb2NrJ3MgcmVsZWFzZSBwcm9taXNl
IHJlamVjdHNgKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1
bmlxdWVOYW1lKHQpOworCisgIC8vIEdyYWIgYW5kIGhvbGQgdGhlIGxvY2suCisgIG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KHJlcywgbG9jayA9PiBuZXZlcl9zZXR0bGVkKS5jYXRjaChfID0+IHt9
KTsKKworICAvLyBNYWtlIGEgcmVxdWVzdCBmb3IgaXQuCisgIGxldCByZXF1ZXN0X2dyYW50ZWQg
PSBmYWxzZTsKKyAgY29uc3QgcHJvbWlzZSA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywg
bG9jayA9PiB7CisgICAgcmVxdWVzdF9ncmFudGVkID0gdHJ1ZTsKKyAgfSk7CisKKyAgLy8gU3Rl
YWwgaXQuCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHJlcywge3N0ZWFsOiB0cnVl
fSwgbG9jayA9PiB7CisgICAgYXNzZXJ0X2ZhbHNlKHJlcXVlc3RfZ3JhbnRlZCwgJ1N0ZWFsIHNo
b3VsZCBvdmVycmlkZSByZXF1ZXN0Jyk7CisgIH0pOworCisgIGF3YWl0IHByb21pc2U7CisgIGFz
c2VydF90cnVlKHJlcXVlc3RfZ3JhbnRlZCwgJ1JlcXVlc3Qgc2hvdWxkIGV2ZW50dWFsbHkgYmUg
Z3JhbnRlZCcpOworCit9LCBgUmVxdWVzdGVkIGxvY2sncyByZWxlYXNlIHByb21pc2UgaXMgZGVm
ZXJyZWRgKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCByZXMgPSB1bmlx
dWVOYW1lKHQpOworCisgIC8vIEdyYWIgYW5kIGhvbGQgdGhlIGxvY2suCisgIG5hdmlnYXRvci5s
b2Nrcy5yZXF1ZXN0KHJlcywgbG9jayA9PiBuZXZlcl9zZXR0bGVkKS5jYXRjaChfID0+IHt9KTsK
KworICAvLyBTdGVhbCBpdC4KKyAgbGV0IHNhd19hYm9ydCA9IGZhbHNlOworICBjb25zdCBmaXJz
dF9zdGVhbCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge3N0ZWFsOiB0cnVl
fSwgbG9jayA9PiBuZXZlcl9zZXR0bGVkKS5jYXRjaChlcnJvciA9PiB7CisgICAgICBzYXdfYWJv
cnQgPSB0cnVlOworICAgIH0pOworCisgIC8vIFN0ZWFsIGl0IGFnYWluLgorICBhd2FpdCBuYXZp
Z2F0b3IubG9ja3MucmVxdWVzdChyZXMsIHtzdGVhbDogdHJ1ZX0sIGxvY2sgPT4ge30pOworCisg
IGF3YWl0IGZpcnN0X3N0ZWFsOworICBhc3NlcnRfdHJ1ZShzYXdfYWJvcnQsICdGaXJzdCBzdGVh
bCBzaG91bGQgaGF2ZSBhYm9ydGVkJyk7CisKK30sICdMYXN0IGNhbGxlciB3aW5zJyk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1s
b2Nrcy9zdGVhbC50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mv
c3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43OThkMzI4MGVkY2I4MjcyNDM2YTQ0YzU5YjNmNjI1NDk4NzQzNjQ2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDcgQEAKKworRkFJTCBMb2NrIGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVz
dCcpIgorRkFJTCBMb2NrIG5vdCBhdmFpbGFibGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKK0ZBSUwgQnJv
a2VuIGxvY2sncyByZWxlYXNlIHByb21pc2UgcmVqZWN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBu
b3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJ
TCBSZXF1ZXN0ZWQgbG9jaydzIHJlbGVhc2UgcHJvbWlzZSBpcyBkZWZlcnJlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICduYXZpZ2F0b3IubG9ja3MucmVx
dWVzdCcpIgorRkFJTCBMYXN0IGNhbGxlciB3aW5zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVu
dGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRl
bnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0g
VGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBy
dW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFs
LnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OThk
MzI4MGVkY2I4MjcyNDM2YTQ0YzU5YjNmNjI1NDk4NzQzNjQ2Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3Rl
YWwudGVudGF0aXZlLmh0dHBzLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBA
QAorCitGQUlMIExvY2sgYXZhaWxhYmxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExvY2sgbm90
IGF2YWlsYWJsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5n
ICduYXZpZ2F0b3IubG9ja3MucmVxdWVzdCcpIgorRkFJTCBCcm9rZW4gbG9jaydzIHJlbGVhc2Ug
cHJvbWlzZSByZWplY3RzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIFJlcXVlc3RlZCBsb2NrJ3Mg
cmVsZWFzZSBwcm9taXNlIGlzIGRlZmVycmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBv
YmplY3QgKGV2YWx1YXRpbmcgJ25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0JykiCitGQUlMIExhc3Qg
Y2FsbGVyIHdpbnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGlu
ZyAnbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QnKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZl
Lmh0dHBzLmFueS53b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkud29ya2VyLmh0bWwKQEAg
LTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGlu
ZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy93M2MtaW1wb3J0LmxvZwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4zYTU3NjUwYWVlY2JjMDc3MDJjZDZiNDRkN2YzYjM2NDM5MDk5ZWYyCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItbG9ja3MvdzNjLWltcG9ydC5sb2cKQEAgLTAsMCArMSwzOCBAQAorVGhlIHRlc3RzIGluIHRo
aXMgZGlyZWN0b3J5IHdlcmUgaW1wb3J0ZWQgZnJvbSB0aGUgVzNDIHJlcG9zaXRvcnkuCitEbyBO
T1QgbW9kaWZ5IHRoZXNlIHRlc3RzIGRpcmVjdGx5IGluIFdlYktpdC4KK0luc3RlYWQsIGNyZWF0
ZSBhIHB1bGwgcmVxdWVzdCBvbiB0aGUgV1BUIGdpdGh1YjoKKwlodHRwczovL2dpdGh1Yi5jb20v
d2ViLXBsYXRmb3JtLXRlc3RzL3dwdAorCitUaGVuIHJ1biB0aGUgVG9vbHMvU2NyaXB0cy9pbXBv
cnQtdzNjLXRlc3RzIGluIFdlYktpdCB0byByZWltcG9ydAorCitEbyBOT1QgbW9kaWZ5IG9yIHJl
bW92ZSB0aGlzIGZpbGUuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorUHJvcGVydGllcyByZXF1aXJpbmcg
dmVuZG9yIHByZWZpeGVzOgorTm9uZQorUHJvcGVydHkgdmFsdWVzIHJlcXVpcmluZyB2ZW5kb3Ig
cHJlZml4ZXM6CitOb25lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0xpc3Qgb2YgZmlsZXM6CisvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvTUVUQS55bWwK
Ky9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9S
RUFETUUubWQKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9hY3F1aXJlLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9jbGllbnRpZHMudGVudGF0aXZl
Lmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1sb2Nrcy9mcmFtZXMudGVudGF0aXZlLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9oZWxkLnRlbnRhdGl2ZS5odHRw
cy5hbnkuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1sb2Nrcy9pZGxoYXJuZXNzLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKKy9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9pZkF2YWlsYWJsZS50ZW50
YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvbG9jay1hdHRyaWJ1dGVzLnRlbnRhdGl2ZS5odHRwcy5hbnkuanMK
Ky9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9t
b2RlLWV4Y2x1c2l2ZS50ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1taXhlZC50ZW50YXRpdmUu
aHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvbW9kZS1zaGFyZWQudGVudGF0aXZlLmh0dHBzLmFueS5qcworL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL25vbi1zZWN1cmUt
Y29udGV4dC50ZW50YXRpdmUuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvb3BhcXVlLW9yaWdpbi50ZW50YXRpdmUuaHR0cHMuaHRt
bAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L3F1ZXJ5LWVtcHR5LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1vcmRlcmluZy50ZW50YXRp
dmUuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWxvY2tzL3F1ZXJ5LnRlbnRhdGl2ZS5odHRwcy5hbnkuanMKKy9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9yZXNvdXJjZS1uYW1lcy50
ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc2VjdXJlLWNvbnRleHQudGVudGF0aXZlLmh0dHBzLmFueS5q
cworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L3NpZ25hbC50ZW50YXRpdmUuaHR0cHMuYW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvc3RlYWwudGVudGF0aXZlLmh0dHBzLmFueS5q
cworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tz
L3dvcmtlcnMudGVudGF0aXZlLmh0dHBzLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3dvcmtlcnMudGVudGF0aXZl
Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWxvY2tzL3dvcmtlcnMudGVudGF0aXZlLmh0dHBzLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hNWE5OGFmYWNhZWJjYjA2MTdiOTZjNjM3MzMwN2VkYjEzYTJlZTFhCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3Mvd29ya2Vycy50ZW50YXRpdmUuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNiBAQAorCitGQUlMIFdpbmRvdyBhbmQgV29ya2VyIC0gc2hhcmVkIG1vZGUgYXNzZXJ0X2lt
cGxlbWVudHM6IHVuZGVmaW5lZAorRkFJTCBXaW5kb3cgYW5kIFdvcmtlciAtIGV4Y2x1c2l2ZSBt
b2RlIGFzc2VydF9pbXBsZW1lbnRzOiB1bmRlZmluZWQKK0ZBSUwgV29ya2VyIGFuZCBXb3JrZXIg
LSBleGNsdXNpdmUgbW9kZSBhc3NlcnRfaW1wbGVtZW50czogdW5kZWZpbmVkCitGQUlMIFRlcm1p
bmF0ZWQgV29ya2VyIC0gZXhjbHVzaXZlIG1vZGUgYXNzZXJ0X2ltcGxlbWVudHM6IHVuZGVmaW5l
ZAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy93b3JrZXJzLnRlbnRhdGl2ZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvd29ya2Vycy50ZW50YXRp
dmUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMWYxMWM2MDNhNGRlYjkyMWEwZDQ3ODA2ZjNmN2Ni
YTg2MzEyNWU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3Mvd29ya2Vycy50ZW50YXRpdmUuaHR0cHMuaHRtbApA
QCAtMCwwICsxLDEyMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04Pgor
PHRpdGxlPldlYiBMb2NrcyBBUEk6IFdvcmtlcnM8L3RpdGxlPgorPGxpbmsgcmVsPWhlbHAgaHJl
Zj0iaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby93ZWItbG9ja3MvIj4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
aGVscGVycy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorJ3VzZSBzdHJpY3QnOworCitwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1lbnRzKG5hdmlnYXRvci5sb2Nrcyk7
CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNlcy93b3JrZXIuanMnKTsKKyAg
dC5hZGRfY2xlYW51cCgoKSA9PiB7IHdvcmtlci50ZXJtaW5hdGUoKTsgfSk7CisKKyAgY29uc3Qg
cmVzID0gJ3NoYXJlZCByZXNvdXJjZSAxJzsKKworICBjb25zdCBsb2NrX2lkID0gKGF3YWl0IHBv
c3RUb1dvcmtlckFuZFdhaXQoCisgICAgd29ya2VyLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVz
LCBtb2RlOiAnc2hhcmVkJ30pKS5sb2NrX2lkOworCisgIGF3YWl0IG5hdmlnYXRvci5sb2Nrcy5y
ZXF1ZXN0KHJlcywge21vZGU6ICdzaGFyZWQnfSwgYXN5bmMgbG9jayA9PiB7CisgICAgYXdhaXQg
cG9zdFRvV29ya2VyQW5kV2FpdCh3b3JrZXIsIHtvcDogJ3JlbGVhc2UnLCBsb2NrX2lkfSk7Cisg
IH0pOworCit9LCAnV2luZG93IGFuZCBXb3JrZXIgLSBzaGFyZWQgbW9kZScpOworCitwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1lbnRzKG5hdmlnYXRvci5sb2Nrcyk7
CisgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNlcy93b3JrZXIuanMnKTsKKyAg
dC5hZGRfY2xlYW51cCgoKSA9PiB7IHdvcmtlci50ZXJtaW5hdGUoKTsgfSk7CisKKyAgY29uc3Qg
cmVzID0gJ2V4Y2x1c2l2ZSByZXNvdXJjZSAxJzsKKworICAvLyB3b3JrZXIgYWNxdWlyZXMgdGhl
IGxvY2suCisgIGNvbnN0IGxvY2tfaWQgPSAoYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCgKKyAg
ICB3b3JrZXIsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9KSkubG9ja19pZDsKKworICAvLyBU
aGlzIHJlcXVlc3Qgc2hvdWxkIGJlIGJsb2NrZWQuCisgIGxldCBsb2NrX2dyYW50ZWQgPSBmYWxz
ZTsKKyAgY29uc3QgYmxvY2tlZCA9IG5hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywg
bG9jayA9PiB7IGxvY2tfZ3JhbnRlZCA9IHRydWU7IH0pOworCisgIC8vIFZlcmlmeSB3ZSBjYW4n
dCBnZXQgaXQuCisgIGxldCBhdmFpbGFibGUgPSB1bmRlZmluZWQ7CisgIGF3YWl0IG5hdmlnYXRv
ci5sb2Nrcy5yZXF1ZXN0KAorICAgIHJlcywge2lmQXZhaWxhYmxlOiB0cnVlfSwgbG9jayA9PiB7
IGF2YWlsYWJsZSA9IGxvY2sgIT09IG51bGw7IH0pOworICBhc3NlcnRfZmFsc2UoYXZhaWxhYmxl
KTsKKyAgYXNzZXJ0X2ZhbHNlKGxvY2tfZ3JhbnRlZCk7CisKKyAgLy8gQXNrIHRoZSB3b3JrZXIg
dG8gcmVsZWFzZSBpdC4KKyAgYXdhaXQgcG9zdFRvV29ya2VyQW5kV2FpdCh3b3JrZXIsIHtvcDog
J3JlbGVhc2UnLCBsb2NrX2lkfSk7CisKKyAgLy8gTm93IHdlJ3ZlIGdvdCBpdC4KKyAgY29uc3Qg
bG9jazIgPSBhd2FpdCBibG9ja2VkOworICBhc3NlcnRfdHJ1ZShsb2NrX2dyYW50ZWQpOworCit9
LCAnV2luZG93IGFuZCBXb3JrZXIgLSBleGNsdXNpdmUgbW9kZScpOworCitwcm9taXNlX3Rlc3Qo
YXN5bmMgdCA9PiB7CisgIGFzc2VydF9pbXBsZW1lbnRzKG5hdmlnYXRvci5sb2Nrcyk7CisgIGNv
bnN0IHdvcmtlcjEgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvd29ya2VyLmpzJyk7CisgIGNvbnN0
IHdvcmtlcjIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvd29ya2VyLmpzJyk7CisgIHQuYWRkX2Ns
ZWFudXAoKCkgPT4geyB3b3JrZXIxLnRlcm1pbmF0ZSgpOyB3b3JrZXIyLnRlcm1pbmF0ZSgpOyB9
KTsKKworICBjb25zdCByZXMgPSAnZXhjbHVzaXZlIHJlc291cmNlIDInOworCisgIC8vIHdvcmtl
cjEgYWNxdWlyZXMgdGhlIGxvY2suCisgIGNvbnN0IGxvY2tfaWQgPSAoYXdhaXQgcG9zdFRvV29y
a2VyQW5kV2FpdCgKKyAgICB3b3JrZXIxLCB7b3A6ICdyZXF1ZXN0JywgbmFtZTogcmVzfSkpLmxv
Y2tfaWQ7CisKKyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBiZSBibG9ja2VkLgorICBsZXQgbG9j
a19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBwb3N0VG9Xb3JrZXJBbmRXYWl0
KAorICAgIHdvcmtlcjIsIHtvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXN9KTsKKyAgYmxvY2tlZC50
aGVuKGYgPT4geyBsb2NrX2dyYW50ZWQgPSB0cnVlOyB9KTsKKworICAvLyBWZXJpZnkgd29ya2Vy
MiBjYW4ndCBnZXQgaXQuCisgIGFzc2VydF90cnVlKChhd2FpdCBwb3N0VG9Xb3JrZXJBbmRXYWl0
KHdvcmtlcjIsIHsKKyAgICBvcDogJ3JlcXVlc3QnLCBuYW1lOiByZXMsIGlmQXZhaWxhYmxlOiB0
cnVlCisgIH0pKS5mYWlsZWQsICdMb2NrIHJlcXVlc3Qgc2hvdWxkIGhhdmUgZmFpbGVkJyk7Cisg
IGFzc2VydF9mYWxzZShsb2NrX2dyYW50ZWQpOworCisgIC8vIEFzayB3b3JrZXIxIHRvIHJlbGVh
c2UgaXQuCisgIGF3YWl0IHBvc3RUb1dvcmtlckFuZFdhaXQod29ya2VyMSwge29wOiAncmVsZWFz
ZScsIGxvY2tfaWR9KTsKKworICAvLyBOb3cgd29ya2VyMiBjYW4gZ2V0IGl0LgorICBjb25zdCBs
b2NrID0gYXdhaXQgYmxvY2tlZDsKKyAgYXNzZXJ0X3RydWUobG9ja19ncmFudGVkKTsKKworfSwg
J1dvcmtlciBhbmQgV29ya2VyIC0gZXhjbHVzaXZlIG1vZGUnKTsKKworcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICBhc3NlcnRfaW1wbGVtZW50cyhuYXZpZ2F0b3IubG9ja3MpOworICBjb25z
dCB3b3JrZXIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvd29ya2VyLmpzJyk7CisKKyAgY29uc3Qg
cmVzID0gJ2V4Y2x1c2l2ZSByZXNvdXJjZSAzJzsKKworICAvLyBXb3JrZXIgYWNxdWlyZXMgdGhl
IGxvY2suCisgIGF3YWl0IHBvc3RUb1dvcmtlckFuZFdhaXQod29ya2VyLCB7b3A6ICdyZXF1ZXN0
JywgbmFtZTogcmVzfSk7CisKKyAgLy8gVGhpcyByZXF1ZXN0IHNob3VsZCBiZSBibG9ja2VkLgor
ICBsZXQgbG9ja19ncmFudGVkID0gZmFsc2U7CisgIGNvbnN0IGJsb2NrZWQgPSBuYXZpZ2F0b3Iu
bG9ja3MucmVxdWVzdCgKKyAgICByZXMsIGxvY2sgPT4geyBsb2NrX2dyYW50ZWQgPSB0cnVlOyB9
KTsKKworICAvLyBWZXJpZnkgd2UgY2FuJ3QgZ2V0IGl0LgorICBsZXQgYXZhaWxhYmxlID0gdW5k
ZWZpbmVkOworICBhd2FpdCBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdCgKKyAgICByZXMsIHtpZkF2
YWlsYWJsZTogdHJ1ZX0sIGxvY2sgPT4geyBhdmFpbGFibGUgPSBsb2NrICE9PSBudWxsOyB9KTsK
KyAgYXNzZXJ0X2ZhbHNlKGF2YWlsYWJsZSk7CisgIGFzc2VydF9mYWxzZShsb2NrX2dyYW50ZWQp
OworCisgIC8vIEltcGxpY2l0bHkgcmVsZWFzZSBpdCBieSB0ZXJtaW5hdGluZyB0aGUgd29ya2Vy
LgorICB3b3JrZXIudGVybWluYXRlKCk7CisKKyAgLy8gTm93IHdlJ3ZlIGdvdCBpdC4KKyAgY29u
c3QgbG9jayA9IGF3YWl0IGJsb2NrZWQ7CisgIGFzc2VydF90cnVlKGxvY2tfZ3JhbnRlZCk7CisK
K30sICdUZXJtaW5hdGVkIFdvcmtlciAtIGV4Y2x1c2l2ZSBtb2RlJyk7CisKKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25z
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGJl
NmI3YTZiZmJhOGM3MzBjMDU5ZmJjZjgxYzNjZGVmODNmNTBiYTAuLjI2MTg0ZTQ0ZjA1MTg0NTM4
OTZmNmMzOTAyYjFlZTE0MzQxN2ZiMmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azEvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
d2sxL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM2Nyw2ICszNjcsMTkgQEAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIva2V5LWdlbmVyYXRvcnMvcmVhZGluZy1hdXRvaW5j
cmVtZW50LXMKIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvSW5kZXhlZERCL2tleS1n
ZW5lcmF0b3JzL3JlYWRpbmctYXV0b2luY3JlbWVudC1zdG9yZS5hbnkuc2VydmljZXdvcmtlci5o
dG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBw
YXBpcy9zY3JpcHRpbmcvcHJvY2Vzc2luZy1tb2RlbC0yL2ludGVncmF0aW9uLXdpdGgtdGhlLWph
dmFzY3JpcHQtYWdlbnQtZm9ybWFsaXNtL3JlcXVpcmVzLWZhaWx1cmUuaHR0cHMuYW55LnNlcnZp
Y2V3b3JrZXIuaHRtbCBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
YXNtL3NlcmlhbGl6YXRpb24vbW9kdWxlL3dpbmRvdy1zZXJ2aWNld29ya2VyLWZhaWx1cmUuaHR0
cHMuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvYWNxdWlyZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBbIFNraXAg
XQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRp
dmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItbG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29y
a2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL2xvY2stYXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRt
bCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9k
ZS1leGNsdXNpdmUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgWyBTa2lw
IF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQu
dGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5o
dHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55LnNl
cnZpY2V3b3JrZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItbG9ja3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29y
a2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxv
Y2tzL3NlY3VyZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1s
IFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWdu
YWwudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRw
cy5hbnkuc2VydmljZXdvcmtlci5odG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dvcmtsZXRzL2FuaW1hdGlvbi13b3JrbGV0LXNlcnZpY2Utd29ya2VyLWludGVy
Y2VwdGlvbi5odHRwcy5odG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dvcmtsZXRzL2F1ZGlvLXdvcmtsZXQtc2VydmljZS13b3JrZXItaW50ZXJjZXB0aW9uLmh0
dHBzLmh0bWwgWyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd29ya2xl
dHMvbGF5b3V0LXdvcmtsZXQtc2VydmljZS13b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwg
WyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0
YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXgg
NDVjMDUzNGM0YmM2ODNkNThjZmI1NTIwNDkzNzE0NmU3NGZkYzQ3NS4uNjc0ZTQyZWY3NTY0ZDg5
ZWZlYTZhYzhkMDlhMDc0MmE3ZDllNzBiMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTM3MzYsNiArMzczNiwyMyBAQCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3B1c2gtYXBpIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZlci10aW1pbmcvc2VydmljZV93b3JrZXJfaWRsLmh0bWwgWyBTa2lwIF0KIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzIFsgU2tpcCBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3JpcHRpbmcv
cHJvY2Vzc2luZy1tb2RlbC0yL2ludGVncmF0aW9uLXdpdGgtdGhlLWphdmFzY3JpcHQtYWdlbnQt
Zm9ybWFsaXNtL3JlcXVpcmVzLWZhaWx1cmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBb
IFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvYWNxdWly
ZS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvaGVsZC50ZW50YXRpdmUuaHR0cHMu
YW55LnNlcnZpY2V3b3JrZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItbG9ja3MvaWRsaGFybmVzcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3
b3JrZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWIt
bG9ja3MvaWZBdmFpbGFibGUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwg
WyBTa2lwIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL2xvY2st
YXR0cmlidXRlcy50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBbIFNraXAg
XQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9ja3MvbW9kZS1leGNsdXNp
dmUudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtbWl4ZWQudGVudGF0aXZl
Lmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL21vZGUtc2hhcmVkLnRlbnRhdGl2ZS5odHRwcy5hbnku
c2VydmljZXdvcmtlci5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1sb2Nrcy9xdWVyeS1lbXB0eS50ZW50YXRpdmUuaHR0cHMuYW55LnNlcnZpY2V3b3Jr
ZXIuaHRtbCBbIFNraXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItbG9j
a3MvcmVzb3VyY2UtbmFtZXMudGVudGF0aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwg
WyBTa2lwIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3NlY3Vy
ZS1jb250ZXh0LnRlbnRhdGl2ZS5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sIFsgU2tpcCBd
CitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1sb2Nrcy9zaWduYWwudGVudGF0
aXZlLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgWyBTa2lwIF0KK2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWxvY2tzL3N0ZWFsLnRlbnRhdGl2ZS5odHRwcy5hbnkuc2Vy
dmljZXdvcmtlci5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dvcmtsZXRzL2FuaW1hdGlvbi13b3JrbGV0LXNlcnZpY2Utd29ya2VyLWludGVyY2VwdGlvbi5o
dHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dvcmts
ZXRzL2F1ZGlvLXdvcmtsZXQtc2VydmljZS13b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwg
WyBTa2lwIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd29ya2xldHMvbGF5b3V0
LXdvcmtsZXQtc2VydmljZS13b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwgWyBTa2lwIF0K
K2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd29ya2xldHMvcGFpbnQtd29ya2xldC1z
ZXJ2aWNlLXdvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMuaHRtbCBbIFNraXAgXQogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93b3JrbGV0cy9hbmltYXRpb24td29ya2xldC1zZXJ2aWNl
LXdvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMuaHRtbCBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93b3JrbGV0cy9hdWRpby13b3JrbGV0LXNlcnZpY2Utd29ya2VyLWlu
dGVyY2VwdGlvbi5odHRwcy5odG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dvcmtsZXRzL2xheW91dC13b3JrbGV0LXNlcnZpY2Utd29ya2VyLWludGVyY2VwdGlv
bi5odHRwcy5odG1sIFsgU2tpcCBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>