<?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>231908</bug_id>
          
          <creation_ts>2021-10-18 13:01:33 -0700</creation_ts>
          <short_desc>Resync web-platform-tests/common from upstream</short_desc>
          <delta_ts>2021-10-18 14:43:19 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="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>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1805692</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-18 13:01:33 -0700</bug_when>
    <thetext>Resync web-platform-tests/common from upstream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805693</commentid>
    <comment_count>1</comment_count>
      <attachid>441634</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-18 13:03:04 -0700</bug_when>
    <thetext>Created attachment 441634
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805722</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-18 14:42:40 -0700</bug_when>
    <thetext>Committed r284402 (243176@main): &lt;https://commits.webkit.org/243176@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 441634.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805723</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-18 14:43:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/84388347&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441634</attachid>
            <date>2021-10-18 13:03:04 -0700</date>
            <delta_ts>2021-10-18 14:42:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231908-20211018130303.patch</filename>
            <type>text/plain</type>
            <size>38540</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0Mzg4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCAyNWM2Y2E2MzBjMTc0MTc4ZmQ3MjJjYzhjNGJkM2IyYzdhZjhmY2JiLi4zZTAyMDc2Njgy
ZjcwNTNiZTJjMzNlMjhhOWFkYTM0M2Y0YmU3ODI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0xMC0xOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgorCisgICAgICAgIFJlc3luYyB3ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uIGZy
b20gdXBzdHJlYW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIzMTkwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFJlc3luYyB3ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uIGZyb20gdXBzdHJlYW0gNDI1MGYx
NjBjMGNiOWVmMmNhYmE2My4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24v
KjogVXBkYXRlZC4KKwogMjAyMS0xMC0xOCAgS2lldCBIbyAgPHRobzIyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBJbXBsZW1lbnQgcGFyc2luZyBhbmQgYW5pbWF0aW9uIHN1cHBvcnQgZm9yIG9mZnNl
dC1kaXN0YW5jZSwgb2Zmc2V0LXBvc2l0aW9uLCBvZmZzZXQtYW5jaG9yCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9DdXN0b21D
b3JzUmVzcG9uc2UucHkgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2NvbW1vbi9DdXN0b21Db3JzUmVzcG9uc2UucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmM0ZDEyMmYxYjE4
NGJlZTdhMDQxOWM0NjRjZmMwOWJkNDc0ZjA3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL0N1c3RvbUNvcnNSZXNw
b25zZS5weQpAQCAtMCwwICsxLDMwIEBACitpbXBvcnQganNvbgorCitkZWYgbWFpbihyZXF1ZXN0
LCByZXNwb25zZSk6CisgICcnJ0hhbmRsZXIgZm9yIGdldHRpbmcgYW4gSFRUUCByZXNwb25zZSBj
dXN0b21pc2VkIGJ5IHRoZSBnaXZlbiBxdWVyeQorICBwYXJhbWV0ZXJzLgorCisgIFRoZSByZXR1
cm5lZCByZXNwb25zZSB3aWxsIGhhdmUKKyAgICAtIEhUVFAgaGVhZGVycyBkZWZpbmVkIGJ5IHRo
ZSAnaGVhZGVycycgcXVlcnkgcGFyYW1ldGVyCisgICAgICAtIE11c3QgYmUgYSBzZXJpYWxpemVk
IEpTT04gZGljdGlvbmFyeSBtYXBwaW5nIGhlYWRlciBuYW1lcyB0byBoZWFkZXIKKyAgICAgICAg
dmFsdWVzCisgICAgLSBIVFRQIHN0YXR1cyBjb2RlIGRlZmluZWQgYnkgdGhlICdzdGF0dXMnIHF1
ZXJ5IHBhcmFtZXRlcgorICAgICAgLSBNdXN0IGJlIGEgcG9zaXRpdmUgc2VyaWFsaXplZCBKU09O
IGludGVnZXIgbGlrZSB0aGUgc3RyaW5nICcyMDAnCisgICAgLSBSZXNwb25zZSBjb250ZW50IGRl
ZmluZWQgYnkgdGhlICdjb250ZW50JyBxdWVyeSBwYXJhbWV0ZXIKKyAgICAgIC0gTXVzdCBiZSBh
IHNlcmlhbGl6ZWQgSlNPTiBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBkZXNpcmVkIHJlc3BvbnNl
IGJvZHkKKyAgJycnCisgIGRlZiBxdWVyeV9wYXJhbWV0ZXJfb3JfZGVmYXVsdChwYXJhbSwgZGVm
YXVsdCk6CisgICAgcmV0dXJuIHJlcXVlc3QuR0VULmZpcnN0KHBhcmFtKSBpZiBwYXJhbSBpbiBy
ZXF1ZXN0LkdFVCBlbHNlIGRlZmF1bHQKKworICBoZWFkZXJzID0ganNvbi5sb2FkcyhxdWVyeV9w
YXJhbWV0ZXJfb3JfZGVmYXVsdChiJ2hlYWRlcnMnLCBiJyJ7fSInKSkKKyAgZm9yIGssIHYgaW4g
aGVhZGVycy5pdGVtcygpOgorICAgIHJlc3BvbnNlLmhlYWRlcnMuc2V0KGssIHYpCisKKyAgIyBO
b3RlIHRoYXQsIGluIG9yZGVyIHRvIGhhdmUgb3V0LW9mLXRoZS1ib3ggc3VwcG9ydCBmb3IgdGVz
dHMgdGhhdCBkb24ndCBjYWxsCisgICMgICBzZXR1cCh7J2FsbG93X3VuY2F1Z2h0X2V4Y2VwdGlv
bic6IHRydWV9KQorICAjIHdlIHJldHVybiBhIG5vLW9wIEpTIHBheWxvYWQuIFRoaXMgYXBwcm9h
Y2ggd2lsbCBhdm9pZCBzeW50YXggZXJyb3JzIGluCisgICMgc2NyaXB0IHJlc291cmNlcyB0aGF0
IHdvdWxkIG90aGVyd2lzZSBjYXVzZSB0aGUgdGVzdCBoYXJuZXNzIHRvIGZhaWwuCisgIHJlc3Bv
bnNlLmNvbnRlbnQgPSBqc29uLmxvYWRzKHF1ZXJ5X3BhcmFtZXRlcl9vcl9kZWZhdWx0KGInY29u
dGVudCcsCisgICAgYiciLyogQ3VzdG9tQ29yc1Jlc3BvbnNlLnB5IGNvbnRlbnQgKi8iJykpCisg
IHJlc3BvbnNlLnN0YXR1c19jb2RlID0ganNvbi5sb2FkcyhxdWVyeV9wYXJhbWV0ZXJfb3JfZGVm
YXVsdChiJ3N0YXR1cycsCisgICAgYicyMDAnKSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2N1c3RvbS1jb3JzLXJlc3BvbnNl
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24v
Y3VzdG9tLWNvcnMtcmVzcG9uc2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODg2ODg2NzVhMmFhYmYzZGM4ZDc5
MjBmYTdjYzA1YmFlNDFjN2FjMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2N1c3RvbS1jb3JzLXJlc3BvbnNlLmpz
CkBAIC0wLDAgKzEsMjggQEAKK2NvbnN0IGN1c3RvbV9jb3JzX3Jlc3BvbnNlID0gKHBheWxvYWQs
IGJhc2VfdXJsKSA9PiB7CisgIGJhc2VfdXJsID0gYmFzZV91cmwgfHwgbmV3IFVSTChsb2NhdGlv
bi5ocmVmKTsKKworICAvLyBDbG9uZSB0aGUgZ2l2ZW4gYHBheWxvYWRgIHNvIHRoYXQsIGFzIHdl
IG1vZGlmeSBpdCwgd2Ugd29uJ3QgYmUgbXV0YXRpbmcKKyAgLy8gdGhlIGNhbGxlcidzIHZhbHVl
IGluIHVuZXhwZWN0ZWQgd2F5cy4KKyAgcGF5bG9hZCA9IE9iamVjdC5hc3NpZ24oe30sIHBheWxv
YWQpOworICBwYXlsb2FkLmhlYWRlcnMgPSBwYXlsb2FkLmhlYWRlcnMgfHwge307CisgIC8vIE5v
dGUgdGhhdCwgaW4gb3JkZXIgdG8gaGF2ZSBvdXQtb2YtdGhlLWJveCBzdXBwb3J0IGZvciB0ZXN0
cyB0aGF0IGRvbid0CisgIC8vIGNhbGwgYHNldHVwKHsnYWxsb3dfdW5jYXVnaHRfZXhjZXB0aW9u
JzogdHJ1ZX0pYCB3ZSByZXR1cm4gYSBuby1vcCBKUworICAvLyBwYXlsb2FkLiBUaGlzIGFwcHJv
YWNoIHdpbGwgYXZvaWQgaGl0dGluZyBzeW50YXggZXJyb3JzIGlmIHRoZSByZXNvdXJjZSBpcwor
ICAvLyBpbnRlcnByZXRlZCBhcyBzY3JpcHQuIFdpdGhvdXQgdGhpcyB3b3JrYXJvdW5kLCB0aGUg
U3ludGF4RXJyb3Igd291bGQgYmUKKyAgLy8gY2F1Z2h0IGJ5IHRoZSB0ZXN0IGhhcm5lc3MgYW5k
IHRyaWdnZXIgYSB0ZXN0IGZhaWx1cmUuCisgIHBheWxvYWQuY29udGVudCA9IHBheWxvYWQuY29u
dGVudCB8fCAnLyogY3VzdG9tLWNvcnMtcmVzcG9uc2UuanMgY29udGVudCAqLyc7CisgIHBheWxv
YWQuc3RhdHVzX2NvZGUgPSBwYXlsb2FkLnN0YXR1c19jb2RlIHx8IDIwMDsKKworICAvLyBBc3N1
bWUgdGhhdCB3ZSdsbCBiZSBkb2luZyBhIENPUlMtZW5hYmxlZCBmZXRjaCBzbyB3ZSdsbCBuZWVk
IHRvIHNldCBBQ0FPLgorICBjb25zdCBhY2FvID0gIkFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdp
biI7CisgIGlmICghKGFjYW8gaW4gcGF5bG9hZC5oZWFkZXJzKSkgeworICAgIHBheWxvYWQuaGVh
ZGVyc1thY2FvXSA9ICcqJzsKKyAgfQorCisgIGxldCByZXQgPSBuZXcgVVJMKCIvY29tbW9uL0N1
c3RvbUNvcnNSZXNwb25zZS5weSIsIGJhc2VfdXJsKTsKKyAgZm9yIChjb25zdCBrZXkgaW4gcGF5
bG9hZCkgeworICAgIHJldC5zZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgSlNPTi5zdHJpbmdpZnko
cGF5bG9hZFtrZXldKSk7CisgIH0KKworICByZXR1cm4gcmV0OworfTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNo
ZXIvUkVBRE1FLm1kIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb21tb24vZGlzcGF0Y2hlci9SRUFETUUubWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTA1OGViYzRiNjQ2MTMx
MGU2YWI3ZGQ4MzUzN2Y4OTllYWVjZmJkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvUkVBRE1F
Lm1kCkBAIC0wLDAgKzEsMjEwIEBACisjIGBSZW1vdGVDb250ZXh0YDogQVBJIGZvciBzY3JpcHQg
ZXhlY3V0aW9uIGluIGFub3RoZXIgY29udGV4dAorCitgUmVtb3RlQ29udGV4dGAgaW4gYC9jb21t
b24vZGlzcGF0Y2hlci9kaXNwYXRjaGVyLmpzYCBwcm92aWRlcyBhbiBpbnRlcmZhY2UgdG8KK2V4
ZWN1dGUgSmF2YVNjcmlwdCBpbiBhbm90aGVyIGdsb2JhbCBvYmplY3QgKHBhZ2Ugb3Igd29ya2Vy
LCB0aGUgImV4ZWN1dG9yIiksCitiYXNlZCBvbjoKKworLSBbV1BUIFJGQyA4ODogY29udGV4dCBJ
RHMgZnJvbSB1dWlkIHNlYXJjaFBhcmFtcyBpbiBVUkxdKGh0dHBzOi8vZ2l0aHViLmNvbS93ZWIt
cGxhdGZvcm0tdGVzdHMvcmZjcy9wdWxsLzg4KSwKKy0gW1dQVCBSRkMgODk6IGV4ZWN1dGVfc2Ny
aXB0XShodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3JmY3MvcHVsbC84OSkg
YW5kCistIFtXUFQgUkZDIDkxOiBSZW1vdGVDb250ZXh0XShodHRwczovL2dpdGh1Yi5jb20vd2Vi
LXBsYXRmb3JtLXRlc3RzL3JmY3MvcHVsbC85MSkuCisKK1Rlc3RzIGNhbiBzZW5kIGFyYml0cmFy
eSBqYXZhc2NyaXB0IHRvIGV4ZWN1dG9ycyB0byBldmFsdWF0ZSBpbiBpdHMgZ2xvYmFsCitvYmpl
Y3QsIGxpa2U6CisKK2BgYAorLy8gaW5qZWN0b3IuaHRtbAorY29uc3QgYXJnT25Mb2NhbENvbnRl
eHQgPSAuLi47CisKK2FzeW5jIGZ1bmN0aW9uIGV4ZWN1dGUoKSB7CisgIHdpbmRvdy5vcGVuKCdl
eGVjdXRvci5odG1sP3V1aWQ9JyArIHV1aWQpOworICBjb25zdCBjdHggPSBuZXcgUmVtb3RlQ29u
dGV4dCh1dWlkKTsKKyAgYXdhaXQgY3R4LmV4ZWN1dGVfc2NyaXB0KAorICAgICAgKGFyZykgPT4g
ZnVuY3Rpb25PblJlbW90ZUNvbnRleHQoYXJnKSwKKyAgICAgIFthcmdPbkxvY2FsQ29udGV4dF0p
OworfTsKK2BgYAorCithbmQgb24gZXhlY3V0b3I6CisKK2BgYAorLy8gZXhlY3V0b3IuaHRtbAor
ZnVuY3Rpb24gZnVuY3Rpb25PblJlbW90ZUNvbnRleHQoYXJnKSB7IC4uLiB9CisKK2NvbnN0IHV1
aWQgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpLmdldCgndXVp
ZCcpOworY29uc3QgZXhlY3V0b3IgPSBuZXcgRXhlY3V0b3IodXVpZCk7CitgYGAKKworRm9yIGNv
bmNyZXRlIGV4YW1wbGVzLCBzZWUKK1tldmVudHMuaHRtbF0oLi4vLi4vaHRtbC9icm93c2Vycy9i
cm93c2luZy10aGUtd2ViL2JhY2stZm9yd2FyZC1jYWNoZS9ldmVudHMuaHRtbCkKK2FuZAorW2V4
ZWN1dG9yLmh0bWxdKC4uLy4uL2h0bWwvYnJvd3NlcnMvYnJvd3NpbmctdGhlLXdlYi9iYWNrLWZv
cndhcmQtY2FjaGUvcmVzb3VyY2VzL2V4ZWN1dG9yLmh0bWwpCitpbiBiYWNrLWZvcndhcmQgY2Fj
aGUgdGVzdHMuCitOb3RlIHRoYXQgZXhlY3V0b3IgZmlsZXMgdW5kZXIgYC9jb21tb24vZGlzcGF0
Y2hlci9gIGFyZSBOT1QgZm9yCitgUmVtb3RlQ29udGV4dC5leGVjdXRlX3NjcmlwdCgpYC4KKwor
VGhpcyBpcyB1bml2ZXJzYWwgYW5kIGF2b2lkcyBpbnRyb2R1Y2luZyBtYW55IHNwZWNpZmljIGBY
WFgtaGVscGVyLmh0bWxgCityZXNvdXJjZXMuCitNb3Jlb3ZlciwgdGVzdHMgYXJlIGVhc2llciB0
byByZWFkLCBiZWNhdXNlIHRoZSB3aG9sZSBsb2dpYyBvZiB0aGUgdGVzdCBjYW4gYmUKK2RlZmlu
ZWQgaW4gYSBzaW5nbGUgZmlsZS4KKworIyMgYG5ldyBSZW1vdGVDb250ZXh0KHV1aWQpYAorCist
IGB1dWlkYCBpcyBhIFVVSUQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcmVtb3RlIGNvbnRl
eHQgYW5kIHNob3VsZCBtYXRjaAorICB3aXRoIHRoZSBgdXVpZGAgcGFyYW1ldGVyIG9mIHRoZSBV
Ukwgb2YgdGhlIHJlbW90ZSBjb250ZXh0LgorLSBDYWxsZXJzIHNob3VsZCBjcmVhdGUgdGhlIHJl
bW90ZSBjb250ZXh0IG91dHNpZGUgdGhpcyBjb25zdHJ1Y3RvciAoZS5nLgorICBgd2luZG93Lm9w
ZW4oJ2V4ZWN1dG9yLmh0bWw/dXVpZD0nICsgdXVpZClgKS4KKworIyMgYFJlbW90ZUNvbnRleHQu
ZXhlY3V0ZV9zY3JpcHQoZm4sIGFyZ3MpYAorCistIGBmbmAgaXMgYSBKYXZhU2NyaXB0IGZ1bmN0
aW9uIHRvIGV4ZWN1dGUgb24gdGhlIHJlbW90ZSBjb250ZXh0LCB3aGljaCBpcworICBjb252ZXJ0
ZWQgdG8gYSBzdHJpbmcgdXNpbmcgYHRvU3RyaW5nKClgIGFuZCBzZW50IHRvIHRoZSByZW1vdGUg
Y29udGV4dC4KKy0gYGFyZ3NgIGlzIG51bGwgb3IgYW4gYXJyYXkgb2YgYXJndW1lbnRzIHRvIHBh
c3MgdG8gdGhlIGZ1bmN0aW9uIG9uIHRoZQorICByZW1vdGUgY29udGV4dC4gQXJndW1lbnRzIGFy
ZSBwYXNzZWQgYXMgSlNPTi4KKy0gSWYgdGhlIHJldHVybiB2YWx1ZSBvZiBgZm5gIHdoZW4gZXhl
Y3V0ZWQgaW4gdGhlIHJlbW90ZSBjb250ZXh0IGlzIGEgcHJvbWlzZSwKKyAgdGhlIHByb21pc2Ug
cmV0dXJuZWQgYnkgYGV4ZWN1dGVfc2NyaXB0YCByZXNvbHZlcyB0byB0aGUgcmVzb2x2ZWQgdmFs
dWUgb2YKKyAgdGhhdCBwcm9taXNlLiBPdGhlcndpc2UgdGhlIGBleGVjdXRlX3NjcmlwdGAgcHJv
bWlzZSByZXNvbHZlcyB0byB0aGUgcmV0dXJuCisgIHZhbHVlIG9mIGBmbmAuCisKK05vdGUgdGhh
dCBgZm5gIGlzIGV2YWx1YXRlZCBvbiB0aGUgcmVtb3RlIGNvbnRleHQgKGBleGVjdXRvci5odG1s
YCBpbiB0aGUKK2V4YW1wbGUgYWJvdmUpLCB3aGlsZSBgYXJnc2AgYXJlIGV2YWx1YXRlZCBvbiB0
aGUgY2FsbGVyIGNvbnRleHQKKyhgaW5qZWN0b3IuaHRtbGApIGFuZCB0aGVuIHBhc3NlZCB0byB0
aGUgcmVtb3RlIGNvbnRleHQuCisKKyMjIFJldHVybiB2YWx1ZSBvZiBpbmplY3RlZCBmdW5jdGlv
bnMgYW5kIGBleGVjdXRlX3NjcmlwdCgpYAorCitJZiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBp
bmplY3RlZCBmdW5jdGlvbiB3aGVuIGV4ZWN1dGVkIGluIHRoZSByZW1vdGUKK2NvbnRleHQgaXMg
YSBwcm9taXNlLCB0aGUgcHJvbWlzZSByZXR1cm5lZCBieSBgZXhlY3V0ZV9zY3JpcHRgIHJlc29s
dmVzIHRvIHRoZQorcmVzb2x2ZWQgdmFsdWUgb2YgdGhhdCBwcm9taXNlLiBPdGhlcndpc2UgdGhl
IGBleGVjdXRlX3NjcmlwdGAgcHJvbWlzZSByZXNvbHZlcwordG8gdGhlIHJldHVybiB2YWx1ZSBv
ZiB0aGUgZnVuY3Rpb24uCisKK1doZW4gdGhlIHJldHVybiB2YWx1ZSBvZiBhbiBpbmplY3RlZCBz
Y3JpcHQgaXMgYSBQcm9taXNlLCBpdCBzaG91bGQgYmUgcmVzb2x2ZWQKK2JlZm9yZSBhbnkgbmF2
aWdhdGlvbiBzdGFydHMgb24gdGhlIHJlbW90ZSBjb250ZXh0LiBGb3IgZXhhbXBsZSwgaXQgc2hv
dWxkbid0CitiZSByZXNvbHZlZCBhZnRlciBuYXZpZ2F0aW5nIG91dCBhbmQgbmF2aWdhdGluZyBi
YWNrIHRvIHRoZSBwYWdlIGFnYWluLgorSXQncyBmaW5lIHRvIGNyZWF0ZSBhIFByb21pc2UgdG8g
YmUgcmVzb2x2ZWQgYWZ0ZXIgbmF2aWdhdGlvbnMsIGlmIGl0J3Mgbm90IHRoZQorcmV0dXJuIHZh
bHVlIG9mIHRoZSBpbmplY3RlZCBmdW5jdGlvbi4KKworIyMgQ2FsbGluZyB0aW1pbmcgb2YgYGV4
ZWN1dGVfc2NyaXB0KClgCisKK1doZW4gYFJlbW90ZUNvbnRleHQuZXhlY3V0ZV9zY3JpcHQoKWAg
aXMgY2FsbGVkIHdoZW4gdGhlIHJlbW90ZSBjb250ZXh0IGlzIG5vdAorYWN0aXZlIChmb3IgZXhh
bXBsZSBiZWZvcmUgaXQgaXMgY3JlYXRlZCwgYmVmb3JlIG5hdmlnYXRpb24gdG8gdGhlIHBhZ2Us
IG9yCitkdXJpbmcgdGhlIHBhZ2UgaXMgaW4gYmFjay1mb3J3YXJkIGNhY2hlKSwgdGhlIGluamVj
dGVkIHNjcmlwdCBpcyBldmFsdWF0ZWQKK2FmdGVyIHRoZSByZW1vdGUgY29udGV4dCBiZWNvbWVz
IGFjdGl2ZS4KKworYFJlbW90ZUNvbnRleHQuZXhlY3V0ZV9zY3JpcHQoKWAgY2FsbHMgc2hvdWxk
IGJlIHNlcmlhbGl6ZWQgYnkgYWx3YXlzIHdhaXRpbmcKK2ZvciB0aGUgcmV0dXJuZWQgcHJvbWlz
ZSB0byBiZSByZXNvbHZlZC4KK1NvIGl0J3MgYSBnb29kIHByYWN0aWNlIHRvIGFsd2F5cyB3cml0
ZSBgYXdhaXQgY3R4LmV4ZWN1dGVfc2NyaXB0KC4uLilgLgorCisjIyBFdmFsdWF0aW9uIHRpbWlu
ZyBvZiBpbmplY3RlZCBmdW5jdGlvbnMKKworVGhlIHNjcmlwdCBpbmplY3RlZCBieSBgUmVtb3Rl
Q29udGV4dC5leGVjdXRlX3NjcmlwdCgpYCBjYW4gYmUgZXZhbHVhdGVkIGFueQordGltZSBkdXJp
bmcgdGhlIHJlbW90ZSBjb250ZXh0IGlzIGFjdGl2ZS4KK0ZvciBleGFtcGxlLCBldmVuIGJlZm9y
ZSBET01Db250ZW50TG9hZGVkIGV2ZW50cyBvciBldmVuIGR1cmluZyBuYXZpZ2F0aW9uLgorSXQn
cyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGVzdC1zcGVjaWZpYyBjb2RlL2hlbHBlcnMgdG8gZW5z
dXJlIGV2YWx1YXRpb24KK3RpbWluZyBjb25zdHJhaW50cyAod2hpY2ggY2FuIGJlIGFsc28gdGVz
dC1zcGVjaWZpYyksIGlmIGFueSBuZWVkZWQuCisKKyMjIyBFbnN1cmluZyBldmFsdWF0aW9uIHRp
bWluZyBhcm91bmQgcGFnZSBsb2FkCisKK0ZvciBleGFtcGxlLCB0byBlbnN1cmUgdGhhdCBpbmpl
Y3RlZCBmdW5jdGlvbnMgKGBtYWluRnVuY3Rpb25gIGJlbG93KSBhcmUKK2V2YWx1YXRlZCBhZnRl
ciB0aGUgZmlyc3QgYHBhZ2VzaG93YCBldmVudCwgd2UgY2FuIHVzZSBwdXJlIEphdmFTY3JpcHQg
Y29kZQorbGlrZSBiZWxvdzoKKworYGBgCisvLyBleGVjdXRvci5odG1sCit3aW5kb3cucGFnZVNo
b3dQcm9taXNlID0gbmV3IFByb21pc2UocmVzb2x2ZSA9PgorICAgIHdpbmRvdy5hZGRFdmVudExp
c3RlbmVyKCdwYWdlc2hvdycsIHJlc29sdmUsIHtvbmNlOiB0cnVlfSkpOworCisKKy8vIGluamVj
dG9yLmh0bWwKK2NvbnN0IHdhaXRGb3JQYWdlU2hvdyA9IGFzeW5jICgpID0+IHsKKyAgd2hpbGUg
KCF3aW5kb3cucGFnZVNob3dQcm9taXNlKSB7CisgICAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2
ZSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIDEwMCkpOworICB9CisgIGF3YWl0IHdpbmRvdy5wYWdl
U2hvd1Byb21pc2U7Cit9OworCithd2FpdCBjdHguZXhlY3V0ZSh3YWl0Rm9yUGFnZVNob3cpOwor
YXdhaXQgY3R4LmV4ZWN1dGUobWFpbkZ1bmN0aW9uKTsKK2BgYAorCisjIyMgRW5zdXJpbmcgZXZh
bHVhdGlvbiB0aW1pbmcgYXJvdW5kIG5hdmlnYXRpb24gb3V0L3VubG9hZGluZworCitJdCBjYW4g
YmUgaW1wb3J0YW50IHRvIGVuc3VyZSB0aGVyZSBhcmUgbm8gaW5qZWN0ZWQgZnVuY3Rpb25zIG5v
ciBjb2RlIGJlaGluZAorYFJlbW90ZUNvbnRleHRgIChzdWNoIGFzIEZldGNoIEFQSXMgYWNjZXNz
aW5nIHNlcnZlci1zaWRlIHN0YXNoKSBydW5uaW5nIGFmdGVyCituYXZpZ2F0aW9uIGlzIGluaXRp
YXRlZCwgZm9yIGV4YW1wbGUgaW4gdGhlIGNhc2Ugb2YgYmFjay1mb3J3YXJkIGNhY2hlIHRlc3Rp
bmcuCisKK1RvIGVuc3VyZSB0aGlzLAorCistIERvIG5vdCBjYWxsIHRoZSBuZXh0IGBSZW1vdGVD
b250ZXh0LmV4ZWN1dGUoKWAgZm9yIHRoZSByZW1vdGUgY29udGV4dCBhZnRlcgorICB0cmlnZ2Vy
aW5nIHRoZSBuYXZpZ2F0aW9uLCB1bnRpbCB3ZSBhcmUgc3VyZSB0aGF0IHRoZSByZW1vdGUgY29u
dGV4dCBpcyBub3QKKyAgYWN0aXZlIChlLmcuIGFmdGVyIHdlIGNvbmZpcm0gdGhhdCB0aGUgbmV3
IHBhZ2UgaXMgbG9hZGVkKS4KKy0gQ2FsbCBgRXhlY3V0b3Iuc3VzcGVuZChjYWxsYmFjaylgIHN5
bmNocm9ub3VzbHkgd2l0aGluIHRoZSBpbmplY3RlZCBzY3JpcHQuCisgIFRoaXMgc3VzcGVuZHMg
ZXhlY3V0b3ItcmVsYXRlZCBjb2RlLCBhbmQgY2FsbHMgYGNhbGxiYWNrYCB3aGVuIGl0IGlzIHJl
YWR5CisgIHRvIHN0YXJ0IG5hdmlnYXRpb24uCisKK1RoZSBjb2RlIG9uIHRoZSBpbmplY3RvciBz
aWRlIHdvdWxkIGJlIGxpa2U6CisKK2BgYAorLy8gaW5qZWN0b3IuaHRtbAorYXdhaXQgY3R4LmV4
ZWN1dGVfc2NyaXB0KCgpID0+IHsKKyAgZXhlY3V0b3Iuc3VzcGVuZCgoKSA9PiB7CisgICAgbG9j
YXRpb24uaHJlZiA9ICduZXctdXJsLmh0bWwnOworICB9KTsKK30pOworYGBgCisKKyMjIEZ1dHVy
ZSBXb3JrOiBQb3NzaWJsZSBpbnRlZ3JhdGlvbiB3aXRoIGB0ZXN0X2RyaXZlcmAKKworQ3VycmVu
dGx5IGBSZW1vdGVDb250ZXh0YCBpcyBpbXBsZW1lbnRlZCBieSBKYXZhU2NyaXB0IGFuZCBXUFQt
c2VydmVyLXNpZGUKK3N0YXNoLCBhbmQgbm90IGludGVncmF0ZWQgd2l0aCBgdGVzdF9kcml2ZXJg
IG5vciBgdGVzdGhhcm5lc3NgLgorVGhlcmUgaXMgYSBwcm9wb3NhbCBvZiBgdGVzdF9kcml2ZXJg
LWludGVncmF0ZWQgdmVyc2lvbiAoc2VlIHRoZSBSRkNzIGxpc3RlZAorYWJvdmUpLgorCitUaGUg
QVBJIHNlbWFudGljcyBhbmQgZ3VpZGVsaW5lcyBpbiB0aGlzIGRvY3VtZW50IGFyZSBkZXNpZ25l
ZCB0byBiZSBhcHBsaWNhYmxlCit0byBib3RoIHRoZSBjdXJyZW50IHN0YXNoLWJhc2VkIGBSZW1v
dGVDb250ZXh0YCBhbmQgYHRlc3RfZHJpdmVyYC1iYXNlZAordmVyc2lvbiwgYW5kIHRodXMgdGhl
IHRlc3RzIHVzaW5nIGBSZW1vdGVDb250ZXh0YCB3aWxsIGJlIG1pZ3JhdGVkIHdpdGggbWluaW11
bQorbW9kaWZpY2F0aW9ucyAobW9zdGx5IGluIGAvY29tbW9uL2Rpc3BhdGNoZXIvZGlzcGF0Y2hl
ci5qc2AgYW5kIGV4ZWN1dG9ycyksIGZvcgorZXhhbXBsZSBpbiBhCitbZHJhZnQgQ0xdKGh0dHBz
Oi8vY2hyb21pdW0tcmV2aWV3Lmdvb2dsZXNvdXJjZS5jb20vYy9jaHJvbWl1bS9zcmMvKy8zMDgy
MjE1LykuCisKKworIyBgc2VuZCgpYC9gcmVjZWl2ZSgpYCBNZXNzYWdlIHBhc3NpbmcgQVBJcwor
CitgZGlzcGF0Y2hlci5qc2AgKGFuZCBpdHMgc2VydmVyLXNpZGUgYmFja2VuZCBgZGlzcGF0Y2hl
ci5weWApIHByb3ZpZGVzIGEKK3VuaXZlcnNhbCBxdWV1ZS1iYXNlZCBtZXNzYWdlIHBhc3Npbmcg
QVBJLgorRWFjaCBxdWV1ZSBpcyBpZGVudGlmaWVkIGJ5IGEgVVVJRCwgYW5kIGFjY2Vzc2VkIHZp
YSB0aGUgZm9sbG93aW5nIEFQSXM6CisKKy0gICBgc2VuZCh1dWlkLCBtZXNzYWdlKWAgcHVzaGVz
IGEgc3RyaW5nIGBtZXNzYWdlYCB0byB0aGUgcXVldWUgYHV1aWRgLgorLSAgIGByZWNlaXZlKHV1
aWQpYCBwb3BzIHRoZSBmaXJzdCBpdGVtIGZyb20gdGhlIHF1ZXVlIGB1dWlkYC4KKy0gICBgc2hv
d1JlcXVlc3RIZWFkZXJzKG9yaWdpbiwgdXVpZClgIGFuZAorICAgIGBjYWNoZWFibGVTaG93UmVx
dWVzdEhlYWRlcnMob3JpZ2luLCB1dWlkKWAgcmV0dXJuIFVSTHMsIHRoYXQgcHVzaCByZXF1ZXN0
CisgICAgaGVhZGVycyB0byB0aGUgcXVldWUgYHV1aWRgIHVwb24gZmV0Y2hpbmcuCisKK0l0IHdv
cmtzIGNyb3NzLW9yaWdpbiwgYW5kIGV2ZW4gYWNjZXNzIGRpZmZlcmVudCBicm93c2VyIGNvbnRl
eHQgZ3JvdXBzLgorCitNZXNzYWdlcyBhcmUgcXVldWVkLCB0aGlzIG1lYW5zIG9uZSBkb2Vzbid0
IG5lZWQgdG8gd2FpdCBmb3IgdGhlIHJlY2VpdmVyIHRvCitsaXN0ZW4sIGJlZm9yZSBzZW5kaW5n
IHRoZSBmaXJzdCBtZXNzYWdlCisoYnV0IHN0aWxsIG5lZWQgdG8gd2FpdCBmb3IgdGhlIHJlc29s
dXRpb24gb2YgdGhlIHByb21pc2UgcmV0dXJuZWQgYnkgYHNlbmQoKWAKK3RvIGVuc3VyZSB0aGUg
b3JkZXIgYmV0d2VlbiBgc2VuZCgpYHMpLgorCisjIyBFeGVjdXRvcnMKKworU2ltaWxhciB0byBg
UmVtb3RlQ29udGV4dC5leGVjdXRlX3NjcmlwdCgpYCwgYHNlbmQoKWAvYHJlY2VpdmUoKWAgY2Fu
IGJlIHVzZWQKK2ZvciBzZW5kaW5nIGFyYml0cmFyeSBqYXZhc2NyaXB0IHRvIGJlIGV2YWx1YXRl
ZCBpbiBhbm90aGVyIHBhZ2Ugb3Igd29ya2VyLgorCistIGBleGVjdXRvci5odG1sYCAoYXMgYSBE
b2N1bWVudCksCistIGBleGVjdXRvci13b3JrZXIuanNgIChhcyBhIFdlYiBXb3JrZXIpLCBhbmQK
Ky0gYGV4ZWN1dG9yLXNlcnZpY2Utd29ya2VyLmpzYCAoYXMgYSBTZXJ2aWNlIFdvcmtlcikKKwor
YXJlIGV4YW1wbGVzIG9mIGV4ZWN1dG9ycy4KK05vdGUgdGhhdCB0aGVzZSBleGVjdXRvcnMgYXJl
IE5PVCBjb21wYXRpYmxlIHdpdGgKK2BSZW1vdGVDb250ZXh0LmV4ZWN1dGVfc2NyaXB0KClgLgor
CisjIyBGdXR1cmUgV29yaworCitgc2VuZCgpYCwgYHJlY2VpdmUoKWAgYW5kIHRoZSBleGVjdXRv
cnMgYmVsb3cgYXJlIGtlcHQgZm9yIENPRVAvQ09PUCB0ZXN0cy4KKworRm9yIHJlbW90ZSBzY3Jp
cHQgZXhlY3V0aW9uLCBuZXcgdGVzdHMgc2hvdWxkIHVzZQorYFJlbW90ZUNvbnRleHQuZXhlY3V0
ZV9zY3JpcHQoKWAgaW5zdGVhZC4KKworRm9yIG1lc3NhZ2UgcGFzc2luZywKK1tXUFQgUkZDIDkw
XShodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3JmY3MvcHVsbC85MCkgaXMg
c3RpbGwgdW5kZXIKK2Rpc2N1c3Npb24uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL2Rpc3BhdGNoZXIuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kaXNw
YXRjaGVyL2Rpc3BhdGNoZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjc4OWM2ZTUwYzJjY2IyZDY5MWViMjZj
YzQ0YzUxYzdmMGVkM2NiOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvZGlzcGF0Y2hlci5qcwpA
QCAtMCwwICsxLDE4OSBAQAorLy8gRGVmaW5lIGFuIHVuaXZlcnNhbCBtZXNzYWdlIHBhc3Npbmcg
QVBJLiBJdCB3b3JrcyBjcm9zcy1vcmlnaW4gYW5kIGFjcm9zcworLy8gYnJvd3NpbmcgY29udGV4
dCBncm91cHMuCitjb25zdCBkaXNwYXRjaGVyX3BhdGggPSAiL2NvbW1vbi9kaXNwYXRjaGVyL2Rp
c3BhdGNoZXIucHkiOworY29uc3QgZGlzcGF0Y2hlcl91cmwgPSBuZXcgVVJMKGRpc3BhdGNoZXJf
cGF0aCwgbG9jYXRpb24uaHJlZikuaHJlZjsKKworLy8gUmV0dXJuIGEgcHJvbWlzZSwgbGltaXRp
bmcgdGhlIG51bWJlciBvZiBjb25jdXJyZW50IGFjY2Vzc2VzIHRvIGEgc2hhcmVkCisvLyByZXNv
dXJjZXMgdG8gfG1heF9jb25jdXJyZW50X2FjY2Vzc3wuCitjb25zdCBjb25jdXJyZW5jeUxpbWl0
ZXIgPSAobWF4X2NvbmN1cnJlbmN5KSA9PiB7CisgIGxldCBwZW5kaW5nID0gMDsKKyAgbGV0IHdh
aXRpbmcgPSBbXTsKKyAgcmV0dXJuIGFzeW5jICh0YXNrKSA9PiB7CisgICAgcGVuZGluZysrOwor
ICAgIGlmIChwZW5kaW5nID4gbWF4X2NvbmN1cnJlbmN5KQorICAgICAgYXdhaXQgbmV3IFByb21p
c2UocmVzb2x2ZSA9PiB3YWl0aW5nLnB1c2gocmVzb2x2ZSkpOworICAgIGxldCByZXN1bHQgPSBh
d2FpdCB0YXNrKCk7CisgICAgcGVuZGluZy0tOworICAgIHdhaXRpbmcuc2hpZnQoKT8uKCk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKKyAgfTsKK30KKworLy8gV2FpdCBmb3IgYSByYW5kb20gYW1vdW50
IG9mIHRpbWUgaW4gdGhlIHJhbmdlIFsxMG1zLDEwMG1zXS4KK2NvbnN0IHJhbmRvbURlbGF5ID0g
KCkgPT4geworICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiBzZXRUaW1lb3V0KHJlc29s
dmUsIDEwICsgOTAqTWF0aC5yYW5kb20oKSkpOworfQorCisvLyBTZW5kaW5nIHRvbyBtYW55IHJl
cXVlc3RzIGluIHBhcmFsbGVsIGNhdXNlcyBjb25nZXN0aW9uLiBMaW1pdGluZyBpdCBpbXByb3Zl
cworLy8gdGhyb3VnaHB1dC4KKy8vCisvLyBOb3RlOiBUaGUgZm9sbG93aW5nIHRhYmxlIGhhcyBi
ZWVuIGRldGVybWluZWQgb24gdGhlIHRlc3Q6CisvLyAuLi9jYWNoZS1zdG9yYWdlLnRlbnRhdGl2
ZS5odHRwcy5odG1sCisvLyB1c2luZyBDaHJvbWUgd2l0aCBhIDY0IGNvcmUgQ1BVIC8gNjRHQiBy
YW0sIGluIHJlbGVhc2UgbW9kZToKKy8vIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKU
gOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKU
rOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUkAorLy8g4pSCY29uY3VycmVu
Y3nilIIgMSDilIIgMiDilIIgMyDilIIgNCDilIIgNSDilIIgNiDilIIgMTDilIIgMTXilIIgMjDi
lIIgMzDilIIgNTDilIIgMTAw4pSCCisvLyDilJzilIDilIDilIDilIDilIDilIDilIDilIDilIDi
lIDilIDilLzilIDilIDilIDilLzilIDilIDilIDilLzilIDilIDilIDilLzilIDilIDilIDilLzi
lIDilIDilIDilLzilIDilIDilIDilLzilIDilIDilIDilLzilIDilIDilIDilLzilIDilIDilIDi
lLzilIDilIDilIDilLzilIDilIDilIDilLzilIDilIDilIDilIDilKQKKy8vIOKUgnRpbWUgKHMp
ICAg4pSCIDU04pSCIDM44pSCIDMx4pSCIDI54pSCIDI24pSCIDI04pSCIDIy4pSCIDIy4pSCIDIy
4pSCIDIy4pSCIDM04pSCIDM2IOKUggorLy8g4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA
4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pS0
4pSA4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA
4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pS04pSA4pSA4pSA4pSA4pSYCitjb25zdCBsaW1pdGVy
ID0gY29uY3VycmVuY3lMaW1pdGVyKDYpOworCitjb25zdCBzZW5kID0gYXN5bmMgZnVuY3Rpb24o
dXVpZCwgbWVzc2FnZSkgeworICBhd2FpdCBsaW1pdGVyKGFzeW5jICgpID0+IHsKKyAgICAvLyBS
ZXF1ZXN0cyBtaWdodCBiZSBkcm9wcGVkLiBSZXRyeSB1bnRpbCBnZXR0aW5nIGEgY29uZmlybWF0
aW9uIGl0IGhhcyBiZWVuCisgICAgLy8gcHJvY2Vzc2VkLgorICAgIHdoaWxlKDEpIHsKKyAgICAg
IHRyeSB7CisgICAgICAgIGxldCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGRpc3BhdGNoZXJfdXJs
ICsgYD91dWlkPSR7dXVpZH1gLCB7CisgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsCisgICAgICAg
ICAgYm9keTogbWVzc2FnZQorICAgICAgICB9KQorICAgICAgICBpZiAoYXdhaXQgcmVzcG9uc2Uu
dGV4dCgpID09ICJkb25lIikKKyAgICAgICAgICByZXR1cm47CisgICAgICB9IGNhdGNoIChmZXRj
aF9lcnJvcikge30KKyAgICAgIGF3YWl0IHJhbmRvbURlbGF5KCk7CisgICAgfTsKKyAgfSk7Cit9
CisKK2NvbnN0IHJlY2VpdmUgPSBhc3luYyBmdW5jdGlvbih1dWlkKSB7CisgIHdoaWxlKDEpIHsK
KyAgICBsZXQgZGF0YSA9ICJub3QgcmVhZHkiOworICAgIHRyeSB7CisgICAgICBkYXRhID0gYXdh
aXQgbGltaXRlcihhc3luYyAoKSA9PiB7CisgICAgICAgIGxldCByZXNwb25zZSA9IGF3YWl0IGZl
dGNoKGRpc3BhdGNoZXJfdXJsICsgYD91dWlkPSR7dXVpZH1gKTsKKyAgICAgICAgcmV0dXJuIGF3
YWl0IHJlc3BvbnNlLnRleHQoKTsKKyAgICAgIH0pOworICAgIH0gY2F0Y2ggKGZldGNoX2Vycm9y
KSB7fQorCisgICAgaWYgKGRhdGEgPT0gIm5vdCByZWFkeSIpIHsKKyAgICAgIGF3YWl0IHJhbmRv
bURlbGF5KCk7CisgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICByZXR1cm4gZGF0YTsKKyAg
fQorfQorCisvLyBSZXR1cm5zIGFuIFVSTC4gV2hlbiBjYWxsZWQsIHRoZSBzZXJ2ZXIgc2VuZHMg
dG93YXJkIHRoZSBgdXVpZGAgcXVldWUgdGhlCisvLyByZXF1ZXN0IGhlYWRlcnMuIFVzZWZ1bCBm
b3IgZGV0ZXJtaW5pbmcgaWYgc29tZXRoaW5nIHdhcyByZXF1ZXN0ZWQgd2l0aAorLy8gQ29va2ll
cy4KK2NvbnN0IHNob3dSZXF1ZXN0SGVhZGVycyA9IGZ1bmN0aW9uKG9yaWdpbiwgdXVpZCkgewor
ICByZXR1cm4gb3JpZ2luICsgZGlzcGF0Y2hlcl9wYXRoICsgYD91dWlkPSR7dXVpZH0mc2hvdy1o
ZWFkZXJzYDsKK30KKworLy8gU2FtZSBhcyBhYm92ZSwgZXhjZXB0IGZvciB0aGUgcmVzcG9uc2Ug
aXMgY2FjaGVhYmxlLgorY29uc3QgY2FjaGVhYmxlU2hvd1JlcXVlc3RIZWFkZXJzID0gZnVuY3Rp
b24ob3JpZ2luLCB1dWlkKSB7CisgIHJldHVybiBvcmlnaW4gKyBkaXNwYXRjaGVyX3BhdGggKyBg
P3V1aWQ9JHt1dWlkfSZjYWNoZWFibGUmc2hvdy1oZWFkZXJzYDsKK30KKworLy8gVGhpcyBzY3Jp
cHQgcmVxdWlyZXMKKy8vIC0gYC9jb21tb24vdXRpbHMuanNgIGZvciBgdG9rZW4oKWAuCisKKy8v
IFJlcHJlc2VudHMgYSByZW1vdGUgZXhlY3V0b3IuIEZvciBtb3JlIGRldGFpbGVkIGV4cGxhbmF0
aW9uIHNlZSBgUkVBRE1FLm1kYC4KK2NsYXNzIFJlbW90ZUNvbnRleHQgeworICAvLyBgdXVpZGAg
aXMgYSBVVUlEIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIHJlbW90ZSBjb250ZXh0IGFuZCBz
aG91bGQKKyAgLy8gbWF0Y2ggd2l0aCB0aGUgYHV1aWRgIHBhcmFtZXRlciBvZiB0aGUgVVJMIG9m
IHRoZSByZW1vdGUgY29udGV4dC4KKyAgY29uc3RydWN0b3IodXVpZCkgeworICAgIHRoaXMuY29u
dGV4dF9pZCA9IHV1aWQ7CisgIH0KKworICAvLyBFdmFsdWF0ZXMgdGhlIHNjcmlwdCBgZXhwcmAg
b24gdGhlIGV4ZWN1dG9yLgorICAvLyAtIElmIGBleHByYCBpcyBldmFsdWF0ZWQgdG8gYSBQcm9t
aXNlIHRoYXQgaXMgcmVzb2x2ZWQgd2l0aCBhIHZhbHVlOgorICAvLyAgIGBleGVjdXRlX3Njcmlw
dCgpYCByZXR1cm5zIGEgUHJvbWlzZSByZXNvbHZlZCB3aXRoIHRoZSB2YWx1ZS4KKyAgLy8gLSBJ
ZiBgZXhwcmAgaXMgZXZhbHVhdGVkIHRvIGEgbm9uLVByb21pc2UgdmFsdWU6CisgIC8vICAgYGV4
ZWN1dGVfc2NyaXB0KClgIHJldHVybnMgYSBQcm9taXNlIHJlc29sdmVkIHdpdGggdGhlIHZhbHVl
LgorICAvLyAtIElmIGBleHByYCB0aHJvd3MgYW4gZXJyb3Igb3IgaXMgZXZhbHVhdGVkIHRvIGEg
UHJvbWlzZSB0aGF0IGlzIHJlamVjdGVkOgorICAvLyAgIGBleGVjdXRlX3NjcmlwdCgpYCByZXR1
cm5zIGEgcmVqZWN0ZWQgUHJvbWlzZSB3aXRoIHRoZSBlcnJvcidzCisgIC8vICAgYG1lc3NhZ2Vg
LgorICAvLyAgIE5vdGUgdGhhdCBjdXJyZW50bHkgdGhlIHR5cGUgb2YgZXJyb3IgKGUuZy4gRE9N
RXhjZXB0aW9uKSBpcyBub3QKKyAgLy8gICBwcmVzZXJ2ZWQuCisgIC8vIFRoZSB2YWx1ZXMgc2hv
dWxkIGJlIGFibGUgdG8gYmUgc2VyaWFsaXplZCBieSBKU09OLnN0cmluZ2lmeSgpLgorICBhc3lu
YyBleGVjdXRlX3NjcmlwdChmbiwgYXJncykgeworICAgIGNvbnN0IHJlY2VpdmVyID0gdG9rZW4o
KTsKKyAgICBhd2FpdCB0aGlzLnNlbmQoe3JlY2VpdmVyOiByZWNlaXZlciwgZm46IGZuLnRvU3Ry
aW5nKCksIGFyZ3M6IGFyZ3N9KTsKKyAgICBjb25zdCByZXNwb25zZSA9IEpTT04ucGFyc2UoYXdh
aXQgcmVjZWl2ZShyZWNlaXZlcikpOworICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09ICdzdWNj
ZXNzJykgeworICAgICAgcmV0dXJuIHJlc3BvbnNlLnZhbHVlOworICAgIH0KKworICAgIC8vIGV4
Y2VwdGlvbgorICAgIHRocm93IG5ldyBFcnJvcihyZXNwb25zZS52YWx1ZSk7CisgIH0KKworICBh
c3luYyBzZW5kKG1zZykgeworICAgIHJldHVybiBhd2FpdCBzZW5kKHRoaXMuY29udGV4dF9pZCwg
SlNPTi5zdHJpbmdpZnkobXNnKSk7CisgIH0KK307CisKK2NsYXNzIEV4ZWN1dG9yIHsKKyAgY29u
c3RydWN0b3IodXVpZCkgeworICAgIHRoaXMudXVpZCA9IHV1aWQ7CisKKyAgICAvLyBJZiBgc3Vz
cGVuZF9jYWxsYmFja2AgaXMgbm90IGBudWxsYCwgdGhlIGV4ZWN1dG9yIHNob3VsZCBiZSBzdXNw
ZW5kZWQKKyAgICAvLyB3aGVuIHRoZXJlIGFyZSBubyBvbmdvaW5nIHRhc2tzLgorICAgIHRoaXMu
c3VzcGVuZF9jYWxsYmFjayA9IG51bGw7CisKKyAgICB0aGlzLmV4ZWN1dGUoKTsKKyAgfQorCisg
IC8vIFdhaXQgdW50aWwgdGhlcmUgYXJlIG5vIG9uZ29pbmcgdGFza3Mgbm9yIGZldGNoIHJlcXVl
c3RzIGZvciBwb2xsaW5nCisgIC8vIHRhc2tzLCBhbmQgdGhlbiBzdXNwZW5kIHRoZSBleGVjdXRv
ciBhbmQgY2FsbCBgY2FsbGJhY2soKWAuCisgIC8vIE5hdmlnYXRpb24gZnJvbSB0aGUgZXhlY3V0
b3IgcGFnZSBzaG91bGQgYmUgdHJpZ2dlcmVkIGluc2lkZSBgY2FsbGJhY2soKWAsCisgIC8vIHRv
IGF2b2lkIGNvbmZsaWN0IHdpdGggaW4tZmxpZ2h0IGZldGNoIHJlcXVlc3RzLgorICBzdXNwZW5k
KGNhbGxiYWNrKSB7CisgICAgdGhpcy5zdXNwZW5kX2NhbGxiYWNrID0gY2FsbGJhY2s7CisgIH0K
KworICByZXN1bWUoKSB7CisgIH0KKworICBhc3luYyBleGVjdXRlKCkgeworICAgIHdoaWxlKHRy
dWUpIHsKKyAgICAgIGlmICh0aGlzLnN1c3BlbmRfY2FsbGJhY2sgIT09IG51bGwpIHsKKyAgICAg
ICAgdGhpcy5zdXNwZW5kX2NhbGxiYWNrKCk7CisgICAgICAgIHRoaXMuc3VzcGVuZF9jYWxsYmFj
ayA9IG51bGw7CisgICAgICAgIC8vIFdhaXQgZm9yIGByZXN1bWUoKWAgdG8gYmUgY2FsbGVkLgor
ICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHRoaXMucmVzdW1lID0gcmVzb2x2
ZSk7CisKKyAgICAgICAgLy8gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9jcmJ1Zy5jb20vMTI0NDIz
MC4KKyAgICAgICAgLy8gV2l0aG91dCB0aGlzIHdvcmthcm91bmQsIHRoZSBleGVjdXRvciBpcyBy
ZXN1bWVkIGFuZCB0aGUgZmV0Y2gKKyAgICAgICAgLy8gcmVxdWVzdCB0byBwb2xsIHRoZSBuZXh0
IHRhc2sgaXMgaW5pdGlhdGVkIHN5bmNocm9ub3VzbHkgZnJvbQorICAgICAgICAvLyBwYWdlc2hv
dyBldmVudCBhZnRlciB0aGUgcGFnZSByZXN0b3JlZCBmcm9tIEJGQ2FjaGUsIGFuZCB0aGUgZmV0
Y2gKKyAgICAgICAgLy8gcmVxdWVzdCBwcm9taXNlIGlzIG5ldmVyIHJlc29sdmVkIChhbmQgdGh1
cyB0aGUgdGVzdCByZXN1bHRzIGluCisgICAgICAgIC8vIHRpbWVvdXQpIGR1ZSB0byBodHRwczov
L2NyYnVnLmNvbS8xMjQ0MjMwLiBUaGUgcm9vdCBjYXVzZSBpcyBub3QgeWV0CisgICAgICAgIC8v
IGtub3duLCBidXQgc2V0VGltZW91dCgpIHdpdGggMG1zIGNhdXNlcyB0aGUgcmVzdW1lIHRyaWdn
ZXJlZCBvbgorICAgICAgICAvLyBhbm90aGVyIHRhc2sgYW5kIHNlZW1zIHRvIHJlc29sdmUgdGhl
IGlzc3VlLgorICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQo
cmVzb2x2ZSwgMCkpOworCisgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorCisgICAgICBjb25z
dCB0YXNrID0gSlNPTi5wYXJzZShhd2FpdCByZWNlaXZlKHRoaXMudXVpZCkpOworCisgICAgICBs
ZXQgcmVzcG9uc2U7CisgICAgICB0cnkgeworICAgICAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGV2
YWwodGFzay5mbikuYXBwbHkobnVsbCwgdGFzay5hcmdzKTsKKyAgICAgICAgcmVzcG9uc2UgPSBK
U09OLnN0cmluZ2lmeSh7CisgICAgICAgICAgc3RhdHVzOiAnc3VjY2VzcycsCisgICAgICAgICAg
dmFsdWU6IHZhbHVlCisgICAgICAgIH0pOworICAgICAgfSBjYXRjaChlKSB7CisgICAgICAgIHJl
c3BvbnNlID0gSlNPTi5zdHJpbmdpZnkoeworICAgICAgICAgIHN0YXR1czogJ2V4Y2VwdGlvbics
CisgICAgICAgICAgdmFsdWU6IGUubWVzc2FnZQorICAgICAgICB9KTsKKyAgICAgIH0KKyAgICAg
IGF3YWl0IHNlbmQodGFzay5yZWNlaXZlciwgcmVzcG9uc2UpOworICAgIH0KKyAgfQorfQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21t
b24vZGlzcGF0Y2hlci9kaXNwYXRjaGVyLnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jb21tb24vZGlzcGF0Y2hlci9kaXNwYXRjaGVyLnB5Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjlmZTdhMzhhYzg3ZGEyZjUwMzc3OGU5OTM0Mjc4ZGM1ZmFmMzAzMzgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1v
bi9kaXNwYXRjaGVyL2Rpc3BhdGNoZXIucHkKQEAgLTAsMCArMSw1MyBAQAoraW1wb3J0IGpzb24K
K2Zyb20gd3B0c2VydmUudXRpbHMgaW1wb3J0IGlzb21vcnBoaWNfZGVjb2RlCisKKyMgQSBzZXJ2
ZXIgdXNlZCB0byBzdG9yZSBhbmQgcmV0cmlldmUgYXJiaXRyYXJ5IGRhdGEuCisjIFRoaXMgaXMg
dXNlZCBieTogLi9kaXNwYXRjaGVyLmpzCitkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6Cisg
ICAgIyBUaGlzIHNlcnZlciBpcyBjb25maWd1cmVkIHNvIHRoYXQgaXMgYWNjZXB0IHRvIHJlY2Vp
dmUgYW55IHJlcXVlc3RzIGFuZAorICAgICMgYW55IGNvb2tpZXMgdGhlIHdlYiBicm93c2VyIGlz
IHdpbGxpbmcgdG8gc2VuZC4KKyAgICByZXNwb25zZS5oZWFkZXJzLnNldChiIkFjY2Vzcy1Db250
cm9sLUFsbG93LUNyZWRlbnRpYWxzIiwgYiJ0cnVlIikKKyAgICByZXNwb25zZS5oZWFkZXJzLnNl
dChiJ0FjY2Vzcy1Db250cm9sLUFsbG93LU1ldGhvZHMnLCBiJ09QVElPTlMsIEdFVCwgUE9TVCcp
CisgICAgcmVzcG9uc2UuaGVhZGVycy5zZXQoYidBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJz
JywgYidDb250ZW50LVR5cGUnKQorICAgIHJlc3BvbnNlLmhlYWRlcnMuc2V0KGIiQWNjZXNzLUNv
bnRyb2wtQWxsb3ctT3JpZ2luIiwgcmVxdWVzdC5oZWFkZXJzLmdldChiIm9yaWdpbiIpIG9yICcq
JykKKworICAgIGlmIGIiY2FjaGVhYmxlIiBpbiByZXF1ZXN0LkdFVDoKKyAgICAgICAgcmVzcG9u
c2UuaGVhZGVycy5zZXQoYiJDYWNoZS1Db250cm9sIiwgYiJtYXgtYWdlPTMxNTM2MDAwIikKKyAg
ICBlbHNlOgorICAgICAgICByZXNwb25zZS5oZWFkZXJzLnNldChiJ0NhY2hlLUNvbnRyb2wnLCBi
J25vLWNhY2hlLCBuby1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlJykKKworICAgICMgQ09SUyBwcmVm
bGlnaHQKKyAgICBpZiByZXF1ZXN0Lm1ldGhvZCA9PSB1J09QVElPTlMnOgorICAgICAgICByZXR1
cm4gYicnCisKKyAgICB1dWlkID0gcmVxdWVzdC5HRVRbYid1dWlkJ10KKyAgICBzdGFzaCA9IHJl
cXVlc3Quc2VydmVyLnN0YXNoOworCisgICAgIyBUaGUgc3Rhc2ggaXMgYWNjZXNzZWQgY29uY3Vy
cmVudGx5IGJ5IG1hbnkgY2xpZW50cy4gQSBsb2NrIGlzIHVzZWQgdG8KKyAgICAjIGF2b2lkIHVu
dGVybGVhdmVkIHJlYWQvd3JpdGUgZnJvbSBkaWZmZXJlbnQgY2xpZW50cy4KKyAgICB3aXRoIHN0
YXNoLmxvY2s6CisgICAgICAgIHF1ZXVlID0gc3Rhc2gudGFrZSh1dWlkLCAnL2NvbW1vbi9kaXNw
YXRjaGVyJykgb3IgW107CisKKyAgICAgICAgIyBQdXNoIGludG8gdGhlIHx1dWlkfCBxdWV1ZSwg
dGhlIHJlcXVlc3RlZCBoZWFkZXJzLgorICAgICAgICBpZiBiInNob3ctaGVhZGVycyIgaW4gcmVx
dWVzdC5HRVQ6CisgICAgICAgICAgICBoZWFkZXJzID0ge307CisgICAgICAgICAgICBmb3Iga2V5
LCB2YWx1ZSBpbiByZXF1ZXN0LmhlYWRlcnMuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBoZWFk
ZXJzW2lzb21vcnBoaWNfZGVjb2RlKGtleSldID0gaXNvbW9ycGhpY19kZWNvZGUocmVxdWVzdC5o
ZWFkZXJzW2tleV0pCisgICAgICAgICAgICBoZWFkZXJzID0ganNvbi5kdW1wcyhoZWFkZXJzKTsK
KyAgICAgICAgICAgIHF1ZXVlLmFwcGVuZChoZWFkZXJzKTsKKyAgICAgICAgICAgIHJldCA9IGIn
JzsKKworICAgICAgICAjIFB1c2ggaW50byB0aGUgfHV1aWR8IHF1ZXVlLCB0aGUgcG9zdGVkIGRh
dGEuCisgICAgICAgIGVsaWYgcmVxdWVzdC5tZXRob2QgPT0gdSdQT1NUJzoKKyAgICAgICAgICAg
IHF1ZXVlLmFwcGVuZChyZXF1ZXN0LmJvZHkpCisgICAgICAgICAgICByZXQgPSBiJ2RvbmUnCisK
KyAgICAgICAgIyBQdWxsIGZyb20gdGhlIHx1dWlkfCBxdWV1ZSwgdGhlIHBvc3RlZCBkYXRhLgor
ICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgbGVuKHF1ZXVlKSA9PSAwOgorICAgICAgICAg
ICAgICAgIHJldCA9IGInbm90IHJlYWR5JworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAg
ICAgICByZXQgPSBxdWV1ZS5wb3AoMCkKKworICAgICAgICBzdGFzaC5wdXQodXVpZCwgcXVldWUs
ICcvY29tbW9uL2Rpc3BhdGNoZXInKQorICAgIHJldHVybiByZXQ7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVy
L2V4ZWN1dG9yLXNlcnZpY2Utd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jb21tb24vZGlzcGF0Y2hlci9leGVjdXRvci1zZXJ2aWNlLXdvcmtl
ci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4wYjQ3ZDY2YjY1ZjA2NmZiYmY2MDUyYzBkM2FkY2RmMjY3MDZhNTJj
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb21tb24vZGlzcGF0Y2hlci9leGVjdXRvci1zZXJ2aWNlLXdvcmtlci5qcwpAQCAt
MCwwICsxLDI0IEBACitpbXBvcnRTY3JpcHRzKCcuL2Rpc3BhdGNoZXIuanMnKTsKKworY29uc3Qg
cGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpOworY29uc3QgdXVp
ZCA9IHBhcmFtcy5nZXQoJ3V1aWQnKTsKKworLy8gVGhlIGZldGNoIGhhbmRsZXIgbXVzdCBiZSBy
ZWdpc3RlcmVkIGJlZm9yZSBwYXJzaW5nIHRoZSBtYWluIHNjcmlwdCByZXNwb25zZS4KKy8vIFNv
IGRvIGl0IGhlcmUsIGZvciBmdXR1cmUgdXNlLgorZmV0Y2hIYW5kbGVyID0gKCkgPT4ge30KK2Fk
ZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZSA9PiB7CisgIGZldGNoSGFuZGxlcihlKTsKK30pOwor
CisvLyBGb3JjZSBTZXJ2aWNlV29ya2VyIHRvIGltbWVkaWF0ZWx5IGFjdGl2YXRlIGl0c2VsZi4K
K2FkZEV2ZW50TGlzdGVuZXIoJ2luc3RhbGwnLCBldmVudCA9PiB7CisgIHNraXBXYWl0aW5nKCk7
Cit9KTsKKworbGV0IGV4ZWN1dGVPcmRlcnMgPSBhc3luYyBmdW5jdGlvbigpIHsKKyAgd2hpbGUo
dHJ1ZSkgeworICAgIGxldCB0YXNrID0gYXdhaXQgcmVjZWl2ZSh1dWlkKTsKKyAgICBldmFsKGAo
YXN5bmMgKCkgPT4geyR7dGFza319KSgpYCk7CisgIH0KK307CitleGVjdXRlT3JkZXJzKCk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nv
bW1vbi9kaXNwYXRjaGVyL2V4ZWN1dG9yLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvZXhlY3V0b3Itd29ya2Vy
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmVhMDY1YTZiZjExOTU1NTVkZDA4MGNkMWFiZjJhNjNlYjVmYmRlOGQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL2V4ZWN1dG9yLXdvcmtlci5qcwpAQCAtMCwwICsxLDEy
IEBACitpbXBvcnRTY3JpcHRzKCcuL2Rpc3BhdGNoZXIuanMnKTsKKworY29uc3QgcGFyYW1zID0g
bmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpOworY29uc3QgdXVpZCA9IHBhcmFt
cy5nZXQoJ3V1aWQnKTsKKworbGV0IGV4ZWN1dGVPcmRlcnMgPSBhc3luYyBmdW5jdGlvbigpIHsK
KyAgd2hpbGUodHJ1ZSkgeworICAgIGxldCB0YXNrID0gYXdhaXQgcmVjZWl2ZSh1dWlkKTsKKyAg
ICBldmFsKGAoYXN5bmMgKCkgPT4geyR7dGFza319KSgpYCk7CisgIH0KK307CitleGVjdXRlT3Jk
ZXJzKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL2V4ZWN1dG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL2V4ZWN1dG9yLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNWZlNmE5NWVmYWY5N2Q4MmJhMmQzNzdkZDFhZjViMmU4ZjU0ZWU5MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvZXhlY3V0b3IuaHRtbApAQCAtMCwwICsxLDE1IEBACis8
c2NyaXB0IHNyYz0iLi9kaXNwYXRjaGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisKK2NvbnN0
IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7Citj
b25zdCB1dWlkID0gcGFyYW1zLmdldCgndXVpZCcpOworCitsZXQgZXhlY3V0ZU9yZGVycyA9IGFz
eW5jIGZ1bmN0aW9uKCkgeworICB3aGlsZSh0cnVlKSB7CisgICAgbGV0IHRhc2sgPSBhd2FpdCBy
ZWNlaXZlKHV1aWQpOworICAgIGV2YWwoYChhc3luYyAoKSA9PiB7JHt0YXNrfX0pKClgKTsKKyAg
fQorfTsKK2V4ZWN1dGVPcmRlcnMoKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL3cz
Yy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jb21tb24vZGlzcGF0Y2hlci93M2MtaW1wb3J0LmxvZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YjRlMGNiMmI1
YWFhOTdkMmZhNTMyZGJhMmQ2NmEyNGZhMTdhOGY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24vZGlzcGF0Y2hlci93
M2MtaW1wb3J0LmxvZwpAQCAtMCwwICsxLDIyIEBACitUaGUgdGVzdHMgaW4gdGhpcyBkaXJlY3Rv
cnkgd2VyZSBpbXBvcnRlZCBmcm9tIHRoZSBXM0MgcmVwb3NpdG9yeS4KK0RvIE5PVCBtb2RpZnkg
dGhlc2UgdGVzdHMgZGlyZWN0bHkgaW4gV2ViS2l0LgorSW5zdGVhZCwgY3JlYXRlIGEgcHVsbCBy
ZXF1ZXN0IG9uIHRoZSBXUFQgZ2l0aHViOgorCWh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZv
cm0tdGVzdHMvd3B0CisKK1RoZW4gcnVuIHRoZSBUb29scy9TY3JpcHRzL2ltcG9ydC13M2MtdGVz
dHMgaW4gV2ViS2l0IHRvIHJlaW1wb3J0CisKK0RvIE5PVCBtb2RpZnkgb3IgcmVtb3ZlIHRoaXMg
ZmlsZS4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitQcm9wZXJ0aWVzIHJlcXVpcmluZyB2ZW5kb3IgcHJl
Zml4ZXM6CitOb25lCitQcm9wZXJ0eSB2YWx1ZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoK
K05vbmUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorTGlzdCBvZiBmaWxlczoKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL1JFQURNRS5tZAor
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3Bh
dGNoZXIvZGlzcGF0Y2hlci5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvZGlzcGF0Y2hlci5weQorL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvZXhlY3V0b3It
c2VydmljZS13b3JrZXIuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2NvbW1vbi9kaXNwYXRjaGVyL2V4ZWN1dG9yLXdvcmtlci5qcworL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2Rpc3BhdGNoZXIvZXhlY3V0
b3IuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvcmVzb3VyY2VzL2NvbW1vbi5zdWIuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zZWN1
cml0eS1mZWF0dXJlcy9yZXNvdXJjZXMvY29tbW9uLnN1Yi5qcwppbmRleCA0MDJjZTliYmFjZjM0
NzMxMTVmNDU4YTE5MmE2MzRjNDQ5Yzk4ODIzLi5kMGY4OGYxNzAxMDdiMzBkMTBhMTUxYjFlOTRl
YjIxMjZhNTQ2YmY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2NvbW1vbi9zZWN1cml0eS1mZWF0dXJlcy9yZXNvdXJjZXMvY29tbW9uLnN1
Yi5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nv
bW1vbi9zZWN1cml0eS1mZWF0dXJlcy9yZXNvdXJjZXMvY29tbW9uLnN1Yi5qcwpAQCAtNjMwLDYg
KzYzMCwyNCBAQCBmdW5jdGlvbiByZXF1ZXN0VmlhU2NyaXB0KHVybCwgYWRkaXRpb25hbEF0dHJp
YnV0ZXMpIHsKICAgICAudGhlbihldmVudCA9PiB3cmFwUmVzdWx0KGV2ZW50LmRhdGEpKTsKIH0K
IAorLyoqCisgKiBDcmVhdGVzIGEgbmV3IHNjcmlwdCBlbGVtZW50IHRoYXQgcGVyZm9ybXMgYSBk
eW5hbWljIGltcG9ydCB0byBgdXJsYCwgYW5kCisgKiBhcHBlbmRzIHRoZSBzY3JpcHQgZWxlbWVu
dCB0byB7QGNvZGUgZG9jdW1lbnQuYm9keX0uCisgKiBAcGFyYW0ge3N0cmluZ30gdXJsIFRoZSBz
cmMgVVJMLgorICogQHJldHVybiB7UHJvbWlzZX0gVGhlIHByb21pc2UgZm9yIHN1Y2Nlc3MvZXJy
b3IgZXZlbnRzLgorICovCitmdW5jdGlvbiByZXF1ZXN0VmlhRHluYW1pY0ltcG9ydCh1cmwsIGFk
ZGl0aW9uYWxBdHRyaWJ1dGVzKSB7CisgIGNvbnN0IHNjcmlwdFVybCA9IGBkYXRhOnRleHQvamF2
YXNjcmlwdCxpbXBvcnQoIiR7dXJsfSIpO2A7CisgIGNvbnN0IHNjcmlwdCA9IGNyZWF0ZUVsZW1l
bnQoCisgICAgICAic2NyaXB0IiwKKyAgICAgIE9iamVjdC5hc3NpZ24oeyJzcmMiOiBzY3JpcHRV
cmx9LCBhZGRpdGlvbmFsQXR0cmlidXRlcyksCisgICAgICBkb2N1bWVudC5ib2R5LAorICAgICAg
ZmFsc2UpOworCisgIHJldHVybiBiaW5kRXZlbnRzMih3aW5kb3csICJtZXNzYWdlIiwgc2NyaXB0
LCAiZXJyb3IiLCB3aW5kb3csICJlcnJvciIpCisgICAgLnRoZW4oZXZlbnQgPT4gd3JhcFJlc3Vs
dChldmVudC5kYXRhKSk7Cit9CisKIC8qKgogICogQ3JlYXRlcyBhIG5ldyBmb3JtIGVsZW1lbnQs
IHNldHMgYXR0cmlidXRlcywgYXBwZW5kcyBpdCB0bwogICogICAgIHtAY29kZSBkb2N1bWVudC5i
b2R5fSBhbmQgc3VibWl0cyB0aGUgZm9ybS4KQEAgLTg2Niw2ICs4ODQsMTAgQEAgY29uc3Qgc3Vi
cmVzb3VyY2VNYXAgPSB7CiAgICAgcGF0aDogIi9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvc3Vi
cmVzb3VyY2Uvc2NyaXB0LnB5IiwKICAgICBpbnZva2VyOiByZXF1ZXN0VmlhU2NyaXB0LAogICB9
LAorICAic2NyaXB0LXRhZy1keW5hbWljLWltcG9ydCI6IHsKKyAgICBwYXRoOiAiL2NvbW1vbi9z
ZWN1cml0eS1mZWF0dXJlcy9zdWJyZXNvdXJjZS9zY3JpcHQucHkiLAorICAgIGludm9rZXI6IHJl
cXVlc3RWaWFEeW5hbWljSW1wb3J0LAorICB9LAogICAidmlkZW8tdGFnIjogewogICAgIHBhdGg6
ICIvY29tbW9uL3NlY3VyaXR5LWZlYXR1cmVzL3N1YnJlc291cmNlL3ZpZGVvLnB5IiwKICAgICBp
bnZva2VyOiByZXF1ZXN0VmlhVmlkZW8sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zZWN1cml0eS1mZWF0dXJlcy9zdWJyZXNv
dXJjZS9zdHlsZXNoZWV0LnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvc3VicmVzb3VyY2Uvc3R5bGVzaGVldC5w
eQppbmRleCAyOTA3OWFmOTIyODk0YTNhZTA1MmE4MDdmMjY5ZGRlMjNmYmZkZTRjLi4wNWRiMjQ5
MjUwZGFkOWExNTQ0YzY1NDU2MGRlNDU5YjAyNjJhMmVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zZWN1cml0eS1mZWF0dXJl
cy9zdWJyZXNvdXJjZS9zdHlsZXNoZWV0LnB5CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3NlY3VyaXR5LWZlYXR1cmVzL3N1YnJlc291cmNl
L3N0eWxlc2hlZXQucHkKQEAgLTIzLDYgKzIzLDEyIEBAIGRlZiBnZW5lcmF0ZV9wYXlsb2FkKHJl
cXVlc3QsIHNlcnZlcl9kYXRhKToKICAgICAgICAgICAgIHUiaWQiOiBpc29tb3JwaGljX2RlY29k
ZShyZXF1ZXN0LkdFVFtiImlkIl0pLAogICAgICAgICAgICAgdSJwcm9wZXJ0eSI6IGlzb21vcnBo
aWNfZGVjb2RlKHJlcXVlc3QuR0VUW2IicHJvcGVydHkiXSl9CiAKKyAgICAjIEEgYCdzdHlsZXNo
ZWV0LW9ubHknYC10eXBlIHN0eWxlc2hlZXQgaGFzIG5vIG5lc3RlZCByZXNvdXJjZXM7IHRoaXMg
aXMKKyAgICAjIHVzZWZ1bCBpbiB0ZXN0cyB0aGF0IGNvdmVyIHJlZmVycmVycyBmb3Igc3R5bGVz
aGVldCBmZXRjaGVzIChlLmcuIGZldGNoZXMKKyAgICAjIHRyaWdnZXJlZCBieSBgQGltcG9ydGAg
c3RhdGVtZW50cykuCisgICAgZWxpZiB0eXBlID09IGInc3R5bGVzaGVldC1vbmx5JzoKKyAgICAg
ICAgcmV0dXJuIHUnJworCiBkZWYgZ2VuZXJhdGVfaW1wb3J0X3J1bGUocmVxdWVzdCwgc2VydmVy
X2RhdGEpOgogICAgIHJldHVybiB1IkBpbXBvcnQgdXJsKCclKHVybClzJyk7IiAlIHsKICAgICAg
ICAgdSJ1cmwiOiBzdWJyZXNvdXJjZS5jcmVhdGVfdXJsKHJlcXVlc3QsIHN3YXBfb3JpZ2luPVRy
dWUsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2NvbW1vbi9zZWN1cml0eS1mZWF0dXJlcy90b29scy9nZW5lcmF0ZS5weSBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3NlY3VyaXR5LWZlYXR1
cmVzL3Rvb2xzL2dlbmVyYXRlLnB5CmluZGV4IDAxMTAzYTIzMmI2OTdmOTRjZjVjMTE3M2JhODRl
YjMyYTUxOWEwODUuLjE3NmUwZWJiZWJjMDdhYzQ0Y2JmNzM1YzY3YTFiNTBlYTAyOGQwZDcgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29t
bW9uL3NlY3VyaXR5LWZlYXR1cmVzL3Rvb2xzL2dlbmVyYXRlLnB5CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3NlY3VyaXR5LWZlYXR1cmVz
L3Rvb2xzL2dlbmVyYXRlLnB5CkBAIC0xLDQgKzEsNCBAQAotIyEvdXNyL2Jpbi9lbnYgcHl0aG9u
CisjIS91c3IvYmluL2VudiBweXRob24zCiAKIGZyb20gX19mdXR1cmVfXyBpbXBvcnQgcHJpbnRf
ZnVuY3Rpb24KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvdG9vbHMvc3BlYy5zcmMuanNvbiBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3NlY3Vy
aXR5LWZlYXR1cmVzL3Rvb2xzL3NwZWMuc3JjLmpzb24KaW5kZXggMGE0NmExY2Q2ZDMxODIxOTNj
YjEzZjA4YzYxYzFkZmY0MWY1NjdmNS4uNGE4NDQ5M2Y0NzViMDEwNzAyZjg4OWMxM2VlY2E2M2Vm
NjM4ZWFlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvdG9vbHMvc3BlYy5zcmMuanNvbgorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zZWN1
cml0eS1mZWF0dXJlcy90b29scy9zcGVjLnNyYy5qc29uCkBAIC0xMDYsNiArMTA2LDcgQEAKICAg
ICAgICAgIm9iamVjdC10YWciLAogICAgICAgICAicGljdHVyZS10YWciLAogICAgICAgICAic2Ny
aXB0LXRhZyIsCisgICAgICAgICJzY3JpcHQtdGFnLWR5bmFtaWMtaW1wb3J0IiwKICAgICAgICAg
InNoYXJlZHdvcmtlci1jbGFzc2ljIiwKICAgICAgICAgInNoYXJlZHdvcmtlci1pbXBvcnQiLAog
ICAgICAgICAic2hhcmVkd29ya2VyLWltcG9ydC1kYXRhIiwKQEAgLTMyNywyNiArMzI4LDYgQEAK
ICAgICAgIF0sCiAgICAgICAic3VicmVzb3VyY2VQb2xpY3lEZWxpdmVyaWVzIjogW10KICAgICB9
LAotICAgICJ3b3JrZXItY2xhc3NpYy1pbmhlcml0IjogewotICAgICAgLy8gVGhpcyBpcyBhcHBs
aWNhYmxlIHRvIHVwZ3JhZGUtaW5zZWN1cmUtcmVxdWVzdHMgYW5kIG1peGVkLWNvbnRlbnQgdGVz
dHMuCi0gICAgICAvLyBVc2UgIndvcmtlci1jbGFzc2ljIiBmb3IgcmVmZXJyZXItcG9saWN5Lgot
ICAgICAgImRlc2NyaXB0aW9uIjogImRlZGljYXRlZCB3b3JrZXJzIHNob3VsZCBpbmhlcml0IGl0
cyBwYXJlbnQncyBwb2xpY3kuIiwKLSAgICAgICJzb3VyY2VDb250ZXh0TGlzdCI6IFsKLSAgICAg
ICAgewotICAgICAgICAgICJzb3VyY2VDb250ZXh0VHlwZSI6ICJ0b3AiLAotICAgICAgICAgICJw
b2xpY3lEZWxpdmVyaWVzIjogWwotICAgICAgICAgICAgInBvbGljeSIKLSAgICAgICAgICBdCi0g
ICAgICAgIH0sCi0gICAgICAgIHsKLSAgICAgICAgICAic291cmNlQ29udGV4dFR5cGUiOiAid29y
a2VyLWNsYXNzaWMiLAotICAgICAgICAgICJwb2xpY3lEZWxpdmVyaWVzIjogWwotICAgICAgICAg
ICAgImFub3RoZXJQb2xpY3kiCi0gICAgICAgICAgXQotICAgICAgICB9Ci0gICAgICBdLAotICAg
ICAgInN1YnJlc291cmNlUG9saWN5RGVsaXZlcmllcyI6IFtdCi0gICAgfSwKICAgICAid29ya2Vy
LWNsYXNzaWMtZGF0YSI6IHsKICAgICAgICJkZXNjcmlwdGlvbiI6ICJkYXRhOiBkZWRpY2F0ZWQg
d29ya2VycyBzaG91bGQgaW5oZXJpdCBpdHMgcGFyZW50J3MgcG9saWN5LiIsCiAgICAgICAic291
cmNlQ29udGV4dExpc3QiOiBbCkBAIC0zNjUsNyArMzQ2LDYgQEAKICAgICB9LAogICAgICJ3b3Jr
ZXItbW9kdWxlIjogewogICAgICAgLy8gVGhpcyBpcyBhcHBsaWNhYmxlIHRvIHJlZmVycmVyLXBv
bGljeSB0ZXN0cy4KLSAgICAgIC8vIFVzZSAid29ya2VyLW1vZHVsZS1pbmhlcml0IiBmb3IgQ1NQ
IChtaXhlZC1jb250ZW50LCBldGMuKS4KICAgICAgICJkZXNjcmlwdGlvbiI6ICJkZWRpY2F0ZWQg
d29ya2VycyBzaG91bGRuJ3QgaW5oZXJpdCBpdHMgcGFyZW50J3MgcG9saWN5LiIsCiAgICAgICAi
c291cmNlQ29udGV4dExpc3QiOiBbCiAgICAgICAgIHsKQEAgLTM4MywyNiArMzYzLDYgQEAKICAg
ICAgIF0sCiAgICAgICAic3VicmVzb3VyY2VQb2xpY3lEZWxpdmVyaWVzIjogW10KICAgICB9LAot
ICAgICJ3b3JrZXItbW9kdWxlLWluaGVyaXQiOiB7Ci0gICAgICAvLyBUaGlzIGlzIGFwcGxpY2Fi
bGUgdG8gdXBncmFkZS1pbnNlY3VyZS1yZXF1ZXN0cyBhbmQgbWl4ZWQtY29udGVudCB0ZXN0cy4K
LSAgICAgIC8vIFVzZSAid29ya2VyLW1vZHVsZSIgZm9yIHJlZmVycmVyLXBvbGljeS4KLSAgICAg
ICJkZXNjcmlwdGlvbiI6ICJkZWRpY2F0ZWQgd29ya2VycyBzaG91bGQgaW5oZXJpdCBpdHMgcGFy
ZW50J3MgcG9saWN5LiIsCi0gICAgICAic291cmNlQ29udGV4dExpc3QiOiBbCi0gICAgICAgIHsK
LSAgICAgICAgICAic291cmNlQ29udGV4dFR5cGUiOiAidG9wIiwKLSAgICAgICAgICAicG9saWN5
RGVsaXZlcmllcyI6IFsKLSAgICAgICAgICAgICJwb2xpY3kiCi0gICAgICAgICAgXQotICAgICAg
ICB9LAotICAgICAgICB7Ci0gICAgICAgICAgInNvdXJjZUNvbnRleHRUeXBlIjogIndvcmtlci1t
b2R1bGUiLAotICAgICAgICAgICJwb2xpY3lEZWxpdmVyaWVzIjogWwotICAgICAgICAgICAgImFu
b3RoZXJQb2xpY3kiCi0gICAgICAgICAgXQotICAgICAgICB9Ci0gICAgICBdLAotICAgICAgInN1
YnJlc291cmNlUG9saWN5RGVsaXZlcmllcyI6IFtdCi0gICAgfSwKICAgICAid29ya2VyLW1vZHVs
ZS1kYXRhIjogewogICAgICAgImRlc2NyaXB0aW9uIjogImRhdGE6IGRlZGljYXRlZCB3b3JrZXJz
IHNob3VsZCBpbmhlcml0IGl0cyBwYXJlbnQncyBwb2xpY3kuIiwKICAgICAgICJzb3VyY2VDb250
ZXh0TGlzdCI6IFsKQEAgLTUwNSwxMCArNDY1LDggQEAKICAgICAgICJpZnJhbWUiLAogICAgICAg
ImlmcmFtZS1ibGFuay1pbmhlcml0IiwKICAgICAgICJ3b3JrZXItY2xhc3NpYyIsCi0gICAgICAi
d29ya2VyLWNsYXNzaWMtaW5oZXJpdCIsCiAgICAgICAid29ya2VyLWNsYXNzaWMtZGF0YSIsCiAg
ICAgICAid29ya2VyLW1vZHVsZSIsCi0gICAgICAid29ya2VyLW1vZHVsZS1pbmhlcml0IiwKICAg
ICAgICJ3b3JrZXItbW9kdWxlLWRhdGEiLAogICAgICAgInNoYXJlZHdvcmtlci1jbGFzc2ljIiwK
ICAgICAgICJzaGFyZWR3b3JrZXItY2xhc3NpYy1kYXRhIiwKQEAgLTU1MCw2ICs1MDgsNyBAQAog
ICAgICAgIm9iamVjdC10YWciLAogICAgICAgInBpY3R1cmUtdGFnIiwKICAgICAgICJzY3JpcHQt
dGFnIiwKKyAgICAgICJzY3JpcHQtdGFnLWR5bmFtaWMtaW1wb3J0IiwKICAgICAgICJzaGFyZWR3
b3JrZXItY2xhc3NpYyIsCiAgICAgICAic2hhcmVkd29ya2VyLWltcG9ydCIsCiAgICAgICAic2hh
cmVkd29ya2VyLWltcG9ydC1kYXRhIiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3NlY3VyaXR5LWZlYXR1cmVzL3Rvb2xzL3Nw
ZWNfdmFsaWRhdG9yLnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvdG9vbHMvc3BlY192YWxpZGF0b3IucHkKaW5k
ZXggMTVmMGUxZTczMjcyYjJlZDhmN2JhMGEyNzcwN2M1NTBmZDYyNWEwZS4uM2FjM2Y1MzAxNjll
NTQ2MWFlMDcwYTc1NjhhYWZmMmNkYmE5YzM5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvdG9v
bHMvc3BlY192YWxpZGF0b3IucHkKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVyZXMvdG9vbHMvc3BlY192YWxpZGF0
b3IucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL2VudiBweXRob24KKyMhL3Vzci9iaW4v
ZW52IHB5dGhvbjMKIAogZnJvbSBfX2Z1dHVyZV9fIGltcG9ydCBwcmludF9mdW5jdGlvbgogCkBA
IC0xMTUsNyArMTE1LDcgQEAgZGVmIHZhbGlkYXRlKHNwZWNfanNvbiwgZGV0YWlscyk6CiAgICAg
dmFsaWRfc3VicmVzb3VyY2VfbmFtZXMgPSBbCiAgICAgICAgICJhLXRhZyIsICJhcmVhLXRhZyIs
ICJhdWRpby10YWciLCAiZm9ybS10YWciLCAiaWZyYW1lLXRhZyIsICJpbWctdGFnIiwKICAgICAg
ICAgImxpbmstY3NzLXRhZyIsICJsaW5rLXByZWZldGNoLXRhZyIsICJvYmplY3QtdGFnIiwgInBp
Y3R1cmUtdGFnIiwKLSAgICAgICAgInNjcmlwdC10YWciLCAidmlkZW8tdGFnIgorICAgICAgICAi
c2NyaXB0LXRhZyIsICJzY3JpcHQtdGFnLWR5bmFtaWMtaW1wb3J0IiwgInZpZGVvLXRhZyIKICAg
ICBdICsgWyJiZWFjb24iLCAiZmV0Y2giLCAieGhyIiwgIndlYnNvY2tldCJdICsgWwogICAgICAg
ICAid29ya2VyLWNsYXNzaWMiLCAid29ya2VyLW1vZHVsZSIsICJ3b3JrZXItaW1wb3J0IiwKICAg
ICAgICAgIndvcmtlci1pbXBvcnQtZGF0YSIsICJzaGFyZWR3b3JrZXItY2xhc3NpYyIsICJzaGFy
ZWR3b3JrZXItbW9kdWxlIiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3NlY3VyaXR5LWZlYXR1cmVzL3Rvb2xzL3V0aWwucHkg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zZWN1
cml0eS1mZWF0dXJlcy90b29scy91dGlsLnB5CmluZGV4IDEyMzNmZmJjMGVjYzk3Mzg1M2U0ZmFh
ODJhYzU2OThhZDA0NTYwNjAuLjcyNTQxYzc4MTQyOWJlNDc5YTAyODA5YmVmMTQ1MzJhN2MxOTAw
YjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY29tbW9uL3NlY3VyaXR5LWZlYXR1cmVzL3Rvb2xzL3V0aWwucHkKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24vc2VjdXJpdHktZmVhdHVy
ZXMvdG9vbHMvdXRpbC5weQpAQCAtMTQ5LDcgKzE0OSwxOSBAQCBjbGFzcyBQb2xpY3lEZWxpdmVy
eShvYmplY3QpOgogICAgIGRlZiBnZXRfYW5vdGhlcl9wb2xpY3koc2VsZiwgZGVsaXZlcnlfdHlw
ZSk6CiAgICAgICAgICMgdHlwZTogKHN0cikgLT4gUG9saWN5RGVsaXZlcnkKICAgICAgICAgaWYg
c2VsZi5rZXkgPT0gJ3JlZmVycmVyUG9saWN5JzoKLSAgICAgICAgICAgIGlmIHNlbGYudmFsdWUg
PT0gJ25vLXJlZmVycmVyJzoKKyAgICAgICAgICAgICMgUmV0dXJuICd1bnNhZmUtdXJsJyAoaS5l
LiBtb3JlIHVuc2FmZSBwb2xpY3kgdGhhbiBgc2VsZi52YWx1ZWApCisgICAgICAgICAgICAjIGFz
IGxvbmcgYXMgcG9zc2libGUsIHRvIG1ha2Ugc3VyZSB0aGUgdGVzdHMgdG8gZmFpbCBpZiB0aGUK
KyAgICAgICAgICAgICMgcmV0dXJuZWQgcG9saWN5IGlzIHVzZWQgdW5leHBlY3RlZGx5IGluc3Rl
YWQgb2YgYHNlbGYudmFsdWVgLgorICAgICAgICAgICAgIyBVc2luZyBzYWZlciBwb2xpY3kgd291
bGRuJ3QgYmUgZGlzdGluZ3Vpc2hhYmxlIGZyb20gYWNjZXB0YWJsZQorICAgICAgICAgICAgIyBh
cmJpdHJhcnkgcG9saWN5IGVuZm9yY2VtZW50IGJ5IHVzZXIgYWdlbnRzLCBhcyBzcGVjaWZpZWQg
YXQKKyAgICAgICAgICAgICMgU3RlcCA3IG9mCisgICAgICAgICAgICAjIGh0dHBzOi8vdzNjLmdp
dGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNkZXRlcm1pbmUtcmVxdWVzdHMtcmVm
ZXJyZXI6CisgICAgICAgICAgICAjICJUaGUgdXNlciBhZ2VudCBNQVkgYWx0ZXIgcmVmZXJyZXJV
Ukwgb3IgcmVmZXJyZXJPcmlnaW4gYXQgdGhpcworICAgICAgICAgICAgIyBwb2ludCB0byBlbmZv
cmNlIGFyYml0cmFyeSBwb2xpY3kgY29uc2lkZXJhdGlvbnMgaW4gdGhlCisgICAgICAgICAgICAj
IGludGVyZXN0cyBvZiBtaW5pbWl6aW5nIGRhdGEgbGVha2FnZS4iCisgICAgICAgICAgICAjIFNl
ZSBhbHNvIHRoZSBjb21tZW50cyBhdCBgcmVmZXJyZXJVcmxSZXNvbHZlcmAgaW4KKyAgICAgICAg
ICAgICMgYHdwdC9yZWZlcnJlci1wb2xpY3kvZ2VuZXJpYy90ZXN0LWNhc2Uuc3ViLmpzYC4KKyAg
ICAgICAgICAgIGlmIHNlbGYudmFsdWUgIT0gJ3Vuc2FmZS11cmwnOgogICAgICAgICAgICAgICAg
IHJldHVybiBQb2xpY3lEZWxpdmVyeShkZWxpdmVyeV90eXBlLCBzZWxmLmtleSwgJ3Vuc2FmZS11
cmwnKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByZXR1cm4gUG9saWN5RGVs
aXZlcnkoZGVsaXZlcnlfdHlwZSwgc2VsZi5rZXksICduby1yZWZlcnJlcicpCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zbG93
LnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24v
c2xvdy5weQppbmRleCA1MzI5YTA0ZWQyZDdiOGE4ZGUwOTY3M2Q5ZDhhNWQzNzY4ZjNjYjVhLi45
YmU4YWFkZjM1MzZjNmQ0MmJkMTY2YjJkNGZmY2U2YWU2ZjExYWY4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zbG93LnB5Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3Ns
b3cucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgdGltZQogCiBkZWYgbWFpbihyZXF1ZXN0LCBy
ZXNwb25zZSk6Ci0gICAgdGltZS5zbGVlcCgyKQorICAgIGRlbGF5ID0gZmxvYXQocmVxdWVzdC5H
RVQuZmlyc3QoYiJkZWxheSIsIDIwMDApKSAvIDEwMDAKKyAgICB0aW1lLnNsZWVwKGRlbGF5KQog
ICAgIHJldHVybiAyMDAsIFtdLCBiJycKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3N0cmluZ2lmaWVycy5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL3N0cmluZ2lmaWVycy5q
cwppbmRleCAxOGRlNmM4YzViMzJjNWUxNGZiOGMwZmMyNGQzYjg1NjRhNDUxYWNmLi44ZGFkYWMx
ZDQ5MjlkOTFhMDIwZmFhODUwNzA4YjViMTA3Y2VkM2JjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9zdHJpbmdpZmllcnMuanMK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24v
c3RyaW5naWZpZXJzLmpzCkBAIC0xLDUgKzEsNSBAQAogLyoqCi0gKiBSdW5zIHRlc3RzIGZvciA8
aHR0cDovL2hleWNhbS5naXRodWIuaW8vd2ViaWRsLyNlcy1zdHJpbmdpZmllcj4uCisgKiBSdW5z
IHRlc3RzIGZvciA8aHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy1zdHJpbmdpZmll
cj4uCiAgKiBAcGFyYW0ge09iamVjdH0gYU9iamVjdCAtIG9iamVjdCB0byB0ZXN0CiAgKiBAcGFy
YW0ge3N0cmluZ30gYUF0dHJpYnV0ZSAtIElETCBhdHRyaWJ1dGUgbmFtZSB0aGF0IGlzIGFubm90
YXRlZCB3aXRoIGBzdHJpbmdpZmllcmAKICAqIEBwYXJhbSB7Ym9vbGVhbn0gYUlzVW5mb3JnZWFi
bGUgLSB3aGV0aGVyIHRoZSBJREwgYXR0cmlidXRlIGlzIGBbTGVnYWN5VW5mb3JnZWFibGVdYApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
b21tb24vdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2NvbW1vbi93M2MtaW1wb3J0LmxvZwppbmRleCA1NWY5YzljMjU1YzQzZjliMDkx
YzViNGVmZjA1NTEwNmRkMzdjY2I0Li45YWZlNjBmMjJhODk5ZTFlMTljZWMxMjNkMTA5Y2IwNWNl
NmQ4MWUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2NvbW1vbi93M2MtaW1wb3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi93M2MtaW1wb3J0LmxvZwpAQCAtMTQsNiArMTQs
NyBAQCBQcm9wZXJ0eSB2YWx1ZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoKIE5vbmUKIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQogTGlzdCBvZiBmaWxlczoKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9DdXN0b21Db3JzUmVzcG9uc2UucHkKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9NRVRBLnltbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL1ByZWZpeGVk
TG9jYWxTdG9yYWdlLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jb21tb24vUHJlZml4ZWRMb2NhbFN0b3JhZ2UuanMuaGVhZGVycwpAQCAtMjQsNiArMjUs
NyBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY29tbW9uL2JsYW5rLXdpdGgtY29ycy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jb21tb24vYmxhbmstd2l0aC1jb3JzLmh0bWwuaGVh
ZGVycwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9u
L2JsYW5rLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2NvbW1vbi9jdXN0b20tY29ycy1yZXNwb25zZS5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2RvbWFpbi1zZXR0ZXIuc3ViLmh0bWwKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2NvbW1vbi9kdW1teS54aHRt
bAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY29tbW9uL2R1
bW15LnhtbAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>