<?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>234610</bug_id>
          
          <creation_ts>2021-12-22 10:59:47 -0800</creation_ts>
          <short_desc>Add API testing support for modal container observation</short_desc>
          <delta_ts>2021-12-23 09:59:18 -0800</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>akeerthi</cc>
    
    <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>kangil.han</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1826346</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-12-22 10:59:47 -0800</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826491</commentid>
    <comment_count>1</comment_count>
      <attachid>447859</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-12-22 21:40:11 -0800</bug_when>
    <thetext>Created attachment 447859
WIP patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826493</commentid>
    <comment_count>2</comment_count>
      <attachid>447861</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-12-22 22:23:21 -0800</bug_when>
    <thetext>Created attachment 447861
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826561</commentid>
    <comment_count>3</comment_count>
      <attachid>447861</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-12-23 09:32:56 -0800</bug_when>
    <thetext>Comment on attachment 447861
Patch

Thanks for taking a look!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826566</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-23 09:58:47 -0800</bug_when>
    <thetext>Committed r287404 (245539@main): &lt;https://commits.webkit.org/245539@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 447861.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826567</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-23 09:59:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/86856169&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447859</attachid>
            <date>2021-12-22 21:40:11 -0800</date>
            <delta_ts>2021-12-22 22:23:19 -0800</delta_ts>
            <desc>WIP patch for EWS</desc>
            <filename>bug-234610-20211222214009.patch</filename>
            <type>text/plain</type>
            <size>39011</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MzIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGVkZWQyY2ZkODUyYWJl
NWE1OTQ1NGNmMmM2NDVlNmVlMzI0YTFkNy4uNzk0NjUyNTk1MzBhOWQxZDYxM2EwZThjOWE2ODQy
NjM4NzY1MGIwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIxLTEyLTIyICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBBUEkgdGVz
dGluZyBzdXBwb3J0IGZvciBtb2RhbCBjb250YWluZXIgb2JzZXJ2YXRpb24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDYxMAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6Cisg
ICAgICAgICogcGFnZS9Nb2RhbENvbnRhaW5lck9ic2VydmVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6Ok1vZGFsQ29udGFpbmVyT2JzZXJ2ZXI6OnVwZGF0ZU1vZGFsQ29udGFpbmVySWZOZWVkZWQp
OgorICAgICAgICAoV2ViQ29yZTo6TW9kYWxDb250YWluZXJPYnNlcnZlcjo6c2hvdWxkSGlkZSk6
IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9Nb2RhbENvbnRhaW5lck9ic2VydmVyLmg6CisgICAg
ICAgIChXZWJDb3JlOjpNb2RhbENvbnRhaW5lck9ic2VydmVyOjpvdmVycmlkZVNlYXJjaFRlcm1G
b3JUZXN0aW5nKToKKyAgICAgICAgKFdlYkNvcmU6Ok1vZGFsQ29udGFpbmVyT2JzZXJ2ZXI6OnNo
b3VsZEhpZGUgY29uc3QpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkludGVybmFsczo6b3ZlcnJpZGVNb2RhbENvbnRhaW5lclNlYXJjaFRlcm1G
b3JUZXN0aW5nKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRl
c3RpbmcvSW50ZXJuYWxzLmlkbDoKKwogMjAyMS0xMi0yMSAgV2Vuc29uIEhzaWVoICA8d2Vuc29u
X2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgYSBVSSBkZWxlZ2F0
ZSBtZXRob2QgdG8gZGVjaWRlIGhvdyB0byBoYW5kbGUgZGV0ZWN0ZWQgbW9kYWwgY29udGFpbmVy
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuaAppbmRleCBlNzMyYjJhZGE4NTBiYjcyNzlkMDdmMDk1MDk1ZTNk
M2U3MjE0NmFlLi44MDVkMGNiNTZhNDBhOTJmYWQyMmI3N2Q3ZWRmYzE2YWQ2NTU0ZjcyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuaApAQCAtMTY2Myw3ICsxNjYzLDcgQEAgcHVibGljOgogCiAgICAgVVJM
IGZhbGxiYWNrQmFzZVVSTCgpIGNvbnN0OwogCi0gICAgTW9kYWxDb250YWluZXJPYnNlcnZlciog
bW9kYWxDb250YWluZXJPYnNlcnZlcigpOworICAgIFdFQkNPUkVfRVhQT1JUIE1vZGFsQ29udGFp
bmVyT2JzZXJ2ZXIqIG1vZGFsQ29udGFpbmVyT2JzZXJ2ZXIoKTsKICAgICBNb2RhbENvbnRhaW5l
ck9ic2VydmVyKiBtb2RhbENvbnRhaW5lck9ic2VydmVySWZFeGlzdHMoKSBjb25zdDsKIAogcHJv
dGVjdGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb2RhbENvbnRhaW5lck9i
c2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5j
cHAKaW5kZXggODY3YjNiZDVjMTI2YWFlMGJhMjMwOTNlZjE2MmZjMWUwY2VmYzViMS4uZjBjZDU0
ZTE4ZDdmMGE3NzEwZDVhMGE3Y2I4ZDkxNTM0MGYwM2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Nb2RhbENvbnRhaW5lck9ic2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL01vZGFsQ29udGFpbmVyT2JzZXJ2ZXIuY3BwCkBAIC0xMjEsMTEgKzEyMSwxNiBAQCB2
b2lkIE1vZGFsQ29udGFpbmVyT2JzZXJ2ZXI6OnVwZGF0ZU1vZGFsQ29udGFpbmVySWZOZWVkZWQo
Y29uc3QgRnJhbWVWaWV3JiB2aWV3KQogICAgIGlmICghdmlldy5oYXNWaWV3cG9ydENvbnN0cmFp
bmVkT2JqZWN0cygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBhdXRvKiBwYWdlID0gdmlldy5m
cmFtZSgpLnBhZ2UoKTsKLSAgICBpZiAoIXBhZ2UpCi0gICAgICAgIHJldHVybjsKKyAgICBhdXRv
IHNlYXJjaFRlcm0gPSAoWyZdKCkgLT4gQXRvbVN0cmluZyB7CisgICAgICAgIGlmIChVTkxJS0VM
WSghbV9vdmVycmlkZVNlYXJjaFRlcm1Gb3JUZXN0aW5nLmlzTnVsbCgpKSkKKyAgICAgICAgICAg
IHJldHVybiBtX292ZXJyaWRlU2VhcmNoVGVybUZvclRlc3Rpbmc7CisKKyAgICAgICAgaWYgKGF1
dG8qIHBhZ2UgPSB2aWV3LmZyYW1lKCkucGFnZSgpKQorICAgICAgICAgICAgcmV0dXJuIHBhZ2Ut
PmNocm9tZSgpLmNsaWVudCgpLnNlYXJjaFN0cmluZ0Zvck1vZGFsQ29udGFpbmVyT2JzZXJ2ZXIo
KTsKKworICAgICAgICByZXR1cm4gbnVsbEF0b20oKTsKKyAgICB9KSgpOwogCi0gICAgYXV0byYg
c2VhcmNoVGVybSA9IHBhZ2UtPmNocm9tZSgpLmNsaWVudCgpLnNlYXJjaFN0cmluZ0Zvck1vZGFs
Q29udGFpbmVyT2JzZXJ2ZXIoKTsKICAgICBpZiAoc2VhcmNoVGVybS5pc051bGwoKSkKICAgICAg
ICAgcmV0dXJuOwogCkBAIC00MzYsOSArNDQxLDQgQEAgc3RkOjpwYWlyPFZlY3RvcjxXZWFrUHRy
PEhUTUxFbGVtZW50Pj4sIFZlY3RvcjxTdHJpbmc+PiBNb2RhbENvbnRhaW5lck9ic2VydmVyOjoK
ICAgICByZXR1cm4geyBXVEZNb3ZlKGNsYXNzaWZpYWJsZUNvbnRyb2xzKSwgV1RGTW92ZShjb250
cm9sVGV4dHNUb0NsYXNzaWZ5KSB9OwogfQogCi1ib29sIE1vZGFsQ29udGFpbmVyT2JzZXJ2ZXI6
OnNob3VsZEhpZGUoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKLXsKLSAgICByZXR1cm4gJmVsZW1l
bnQgPT0gbV9jb250YWluZXIgJiYgIW1fY29sbGVjdGluZ0NsaWNrYWJsZUVsZW1lbnRzOwotfQot
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L01vZGFsQ29udGFpbmVyT2JzZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW9kYWxDb250
YWluZXJPYnNlcnZlci5oCmluZGV4IGE3MzU2ZmVmMmZjNWQxMWJkODA0MGJmMjlhYTk4Y2E2YzUy
NDFlNjMuLjhlZjVlNzZjODNhMGM4Njg0MTA4ZTFkZWEzYWU0MWEzZDA1ZWNkYTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5oCkBAIC0zMCw2ICszMCw3
IEBACiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrSGFzaFNldC5o
PgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbVN0cmlu
Zy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CkBAIC00Nyw5ICs0OCwxMSBAQCBwdWJsaWM6CiAgICAgTW9kYWxDb250YWluZXJPYnNlcnZl
cigpOwogICAgIH5Nb2RhbENvbnRhaW5lck9ic2VydmVyKCk7CiAKLSAgICBib29sIHNob3VsZEhp
ZGUoY29uc3QgRWxlbWVudCYpOworICAgIGlubGluZSBib29sIHNob3VsZEhpZGUoY29uc3QgRWxl
bWVudCYpIGNvbnN0OwogICAgIHZvaWQgdXBkYXRlTW9kYWxDb250YWluZXJJZk5lZWRlZChjb25z
dCBGcmFtZVZpZXcmKTsKIAorICAgIGlubGluZSB2b2lkIG92ZXJyaWRlU2VhcmNoVGVybUZvclRl
c3RpbmcoY29uc3QgU3RyaW5nJik7CisKIHByaXZhdGU6CiAgICAgdm9pZCBzY2hlZHVsZUNsaWNr
YWJsZUVsZW1lbnRDb2xsZWN0aW9uKCk7CiAgICAgdm9pZCBjb2xsZWN0Q2xpY2thYmxlRWxlbWVu
dHNUaW1lckZpcmVkKCk7CkBAIC01OSw5ICs2MiwyMCBAQCBwcml2YXRlOgogCiAgICAgV2Vha0hh
c2hTZXQ8RWxlbWVudD4gbV9lbGVtZW50c1RvSWdub3JlV2hlblNlYXJjaGluZzsKICAgICBXZWFr
UHRyPEVsZW1lbnQ+IG1fY29udGFpbmVyOworICAgIEF0b21TdHJpbmcgbV9vdmVycmlkZVNlYXJj
aFRlcm1Gb3JUZXN0aW5nOwogICAgIFRpbWVyIG1fY29sbGVjdENsaWNrYWJsZUVsZW1lbnRzVGlt
ZXI7CiAgICAgYm9vbCBtX2NvbGxlY3RpbmdDbGlja2FibGVFbGVtZW50cyB7IGZhbHNlIH07CiAg
ICAgYm9vbCBtX2hhc0F0dGVtcHRlZFRvRnVsZmlsbFBvbGljeSB7IGZhbHNlIH07CiB9OwogCitp
bmxpbmUgdm9pZCBNb2RhbENvbnRhaW5lck9ic2VydmVyOjpvdmVycmlkZVNlYXJjaFRlcm1Gb3JU
ZXN0aW5nKGNvbnN0IFN0cmluZyYgc2VhcmNoVGVybSkKK3sKKyAgICBtX292ZXJyaWRlU2VhcmNo
VGVybUZvclRlc3RpbmcgPSBzZWFyY2hUZXJtOworfQorCitpbmxpbmUgYm9vbCBNb2RhbENvbnRh
aW5lck9ic2VydmVyOjpzaG91bGRIaWRlKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fY29udGFpbmVyID09ICZlbGVtZW50ICYmICFtX2NvbGxlY3RpbmdDbGlj
a2FibGVFbGVtZW50czsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IGQ4ZDcxNGFjZjI1NWNhNzFkZTgyZTkwODI3ODljMzNk
Yzk5OGE3NGEuLjNjMjc0YzUwNjIzMDhlZWNlMTVkN2ZhZjdkZTE1NzIyNThjZDRhNGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTE0OSw2ICsxNDksNyBAQAogI2luY2x1
ZGUgIk1vY2tMaWJXZWJSVENQZWVyQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3Zl
cmxheS5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheUNsaWVudC5oIgorI2luY2x1ZGUgIk1v
ZGFsQ29udGFpbmVyT2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCZWFjb24uaCIKICNp
bmNsdWRlICJOYXZpZ2F0b3JNZWRpYURldmljZXMuaCIKICNpbmNsdWRlICJOZXR3b3JrTG9hZElu
Zm9ybWF0aW9uLmgiCkBAIC02NjI0LDQgKzY2MjUsMTAgQEAgUmVmUHRyPFB1c2hTdWJzY3JpcHRp
b24+IEludGVybmFsczo6Y3JlYXRlUHVzaFN1YnNjcmlwdGlvbihjb25zdCBTdHJpbmcmIGVuZHBv
aW4KIH0KICNlbmRpZgogCit2b2lkIEludGVybmFsczo6b3ZlcnJpZGVNb2RhbENvbnRhaW5lclNl
YXJjaFRlcm1Gb3JUZXN0aW5nKGNvbnN0IFN0cmluZyYgdGVybSkKK3sKKyAgICBpZiAoYXV0byBv
YnNlcnZlciA9IGNvbnRleHREb2N1bWVudCgpLT5tb2RhbENvbnRhaW5lck9ic2VydmVyKCkpCisg
ICAgICAgIG9ic2VydmVyLT5vdmVycmlkZVNlYXJjaFRlcm1Gb3JUZXN0aW5nKHRlcm0pOworfQor
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRl
eCBmYmMxMjE5NTFlYTM5ZGQxNDhkNzVhZTIzNzc2NDg4MGYwYjNlMWQ1Li45MmM1N2NjZjI5NGVm
OTFlNmFhNGUwY2ZjNmQ4Y2FkY2ZmM2M2YTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmgKQEAgLTEyMjgsNiArMTIyOCw4IEBAIHB1YmxpYzoKICAgICBSZWZQdHI8UHVzaFN1YnNjcmlw
dGlvbj4gY3JlYXRlUHVzaFN1YnNjcmlwdGlvbihjb25zdCBTdHJpbmcmIGVuZHBvaW50LCBzdGQ6
Om9wdGlvbmFsPEVwb2NoVGltZVN0YW1wPiBleHBpcmF0aW9uVGltZSwgY29uc3QgQXJyYXlCdWZm
ZXImIHNlcnZlclZBUElEUHVibGljS2V5LCBjb25zdCBBcnJheUJ1ZmZlciYgY2xpZW50RUNESFB1
YmxpY0tleSwgY29uc3QgQXJyYXlCdWZmZXImIGF1dGgpOwogI2VuZGlmCiAKKyAgICB2b2lkIG92
ZXJyaWRlTW9kYWxDb250YWluZXJTZWFyY2hUZXJtRm9yVGVzdGluZyhjb25zdCBTdHJpbmcmIHRl
cm0pOworCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhEb2N1bWVudCYpOwogICAg
IERvY3VtZW50KiBjb250ZXh0RG9jdW1lbnQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmlkbAppbmRleCAyMzRjMjM2MjZjMDRlMWZjZDJhMmU1Y2MyYTQ0OTUxMmIzNmVmYWRm
Li5iNjhlOGViNmJmM2MyZGVmZDU1NDVlNDE1YTAyNWYwMzYyNjBlNmEyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC0xMDk3LDQgKzEwOTcsNiBAQCBlbnVtIEhFVkNQYXJh
bWV0ZXJDb2RlYyB7CiAgICAgdW5kZWZpbmVkIHJldGFpblRleHRJdGVyYXRvckZvckRvY3VtZW50
Q29udGVudCgpOwogCiAgICAgW0NvbmRpdGlvbmFsPVNFUlZJQ0VfV09SS0VSXSBQdXNoU3Vic2Ny
aXB0aW9uIGNyZWF0ZVB1c2hTdWJzY3JpcHRpb24oVVNWU3RyaW5nIGVuZHBvaW50LCBFcG9jaFRp
bWVTdGFtcD8gZXhwaXJhdGlvblRpbWUsIEFycmF5QnVmZmVyIHNlcnZlclZBUElEUHVibGljS2V5
LCBBcnJheUJ1ZmZlciBjbGllbnRFQ0RIUHVibGljS2V5LCBBcnJheUJ1ZmZlciBhdXRoKTsKKwor
ICAgIHVuZGVmaW5lZCBvdmVycmlkZU1vZGFsQ29udGFpbmVyU2VhcmNoVGVybUZvclRlc3Rpbmco
RE9NU3RyaW5nIHRlcm0pOwogfTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xz
L0NoYW5nZUxvZwppbmRleCA3YmMzMzlhYjA5NDE0YTk3NzIzY2IxYzcxMmM4ZDI1NDY1MGEwZDEz
Li41OTlhNzQwN2IzMzM1NjcwMjViZDU3Mjk0NjJiZjIxM2M4NTgxMmJmIDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIw
MjEtMTItMjIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWRkIEFQSSB0ZXN0aW5nIHN1cHBvcnQgZm9yIG1vZGFsIGNvbnRhaW5lciBvYnNlcnZhdGlv
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NjEw
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0
V2ViS2l0QVBJL1NvdXJjZXNDb2NvYS50eHQ6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQvbW9kYWwtY29udGFpbmVyLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQXBwbGljYXRpb25NYW5pZmVzdC5tbToK
KyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL01vZGFsQ29udGFpbmVy
T2JzZXJ2YXRpb24ubW06IEFkZGVkLgorICAgICAgICAoLVtOU0J1bmRsZSBzd2l6emxlZF9VUkxG
b3JSZXNvdXJjZTp3aXRoRXh0ZW5zaW9uOl0pOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6Q2xh
c3NpZmllck1vZGVsU3dpenpsZXI6OkNsYXNzaWZpZXJNb2RlbFN3aXp6bGVyKToKKyAgICAgICAg
KFRlc3RXZWJLaXRBUEk6OkNsYXNzaWZpZXJNb2RlbFN3aXp6bGVyOjp+Q2xhc3NpZmllck1vZGVs
U3dpenpsZXIpOgorICAgICAgICAoLVtNb2RhbENvbnRhaW5lcldlYlZpZXcgaW5pdFdpdGhGcmFt
ZTpjb25maWd1cmF0aW9uOl0pOgorICAgICAgICAoLVtNb2RhbENvbnRhaW5lcldlYlZpZXcgbG9h
ZEJ1bmRsZVBhZ2U6YW5kRGVjaWRlUG9saWN5Ol0pOgorICAgICAgICAoLVtNb2RhbENvbnRhaW5l
cldlYlZpZXcgX3dlYlZpZXc6ZGVjaWRlUG9saWN5Rm9yTW9kYWxDb250YWluZXI6ZGVjaXNpb25I
YW5kbGVyOl0pOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6Y3JlYXRlTW9kYWxDb250YWluZXJX
ZWJWaWV3KToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOgorICAgICAgICAqIFRlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxt
b2RlbGMvYW5hbHl0aWNzL2NvcmVtbGRhdGEuYmluOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Rlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1sbW9k
ZWxjL2NvcmVtbGRhdGEuYmluOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wYWdlL01vZGFs
Q29udGFpbmVyT2JzZXJ2ZXIuaC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL1Rlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1sbW9kZWxjL21ldGFkYXRhLmpzb246
IEFkZGVkLgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJW
aWV3VGhlbWVDb2xvci5tbToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL1dLV2ViVmlld1VuZGVyUGFnZUJhY2tncm91bmRDb2xvci5tbToKKyAgICAgICAgKiBUZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYlByb2Nlc3NUZXJtaW5hdGUubW06CisgICAg
ICAgICogVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0Q29jb2EuaDoKKwogMjAyMS0xMi0yMSAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEFTU0VS
VCBOT1QgUkVBQ0hFRCB1bmRlciBXZWJLaXQ6OkRhZW1vbjo6Q29ubmVjdGlvblRvTWFjaFNlcnZp
Y2Ugc2VlbiB3aXRoIFRlc3RXZWJLaXRBUEkuV2ViUHVzaEQuQmFzaWNDb21tdW5pY2F0aW9uIGFu
ZCBQZXJtaXNzaW9uTWFuYWdlbWVudApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9T
b3VyY2VzQ29jb2EudHh0IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9Tb3VyY2VzQ29jb2EudHh0Cmlu
ZGV4IDQ5ZmI5MjY2ZGI0MzYzNjFjZjQzM2JiNDMwOTI1NTdmMTdkZWNjYzUuLjI1NzBlNmI1NWJi
ODRjM2FiMjI2NDZiMmVmNjI5YzMyZjg4NjJjYjQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvU291cmNlc0NvY29hLnR4dAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1NvdXJjZXND
b2NvYS50eHQKQEAgLTE1OSw2ICsxNTksNyBAQCBUZXN0cy9XZWJLaXRDb2NvYS9NZWRpYVNlc3Np
b24ubW0KIFRlc3RzL1dlYktpdENvY29hL01lZGlhVHlwZS5tbQogVGVzdHMvV2ViS2l0Q29jb2Ev
TWVzc2FnZVBvcnRQcm92aWRlcnMubW0KIFRlc3RzL1dlYktpdENvY29hL01vZGFsQWxlcnRzLm1t
CitUZXN0cy9XZWJLaXRDb2NvYS9Nb2RhbENvbnRhaW5lck9ic2VydmF0aW9uLm1tCiBUZXN0cy9X
ZWJLaXRDb2NvYS9OU0F0dHJpYnV0ZWRTdHJpbmdXZWJLaXRBZGRpdGlvbnMubW0KIFRlc3RzL1dl
YktpdENvY29hL05TRmlsZU1hbmFnZXJFeHRyYXMubW0KIFRlc3RzL1dlYktpdENvY29hL05hdmln
YXRpb24ubW0KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggODZhNmU1ZTdkMTlhMzYzNGI3OGQ3
ODUxZjFjNTQ4YTc3NjE4MTgzZS4uYjdmYWU2MmQyZjEwYjEwODJmY2UzMTc2N2Y1YzNlMzYxM2Zj
YzE1MyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwNDksNiArMTA0OSw3IEBACiAJCUY0
NUQzODkxMjE1QTdCNEIwMDJBMjk3OSAvKiBUZXN0SW5zcGVjdG9yQmFyLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ1RDM4OTAyMTVBN0I0QjAwMkEy
OTc5IC8qIFRlc3RJbnNwZWN0b3JCYXIubW0gKi87IH07CiAJCUY0NUUxNTczMjExMkNFMjkwMDMw
N0U4MiAvKiBLZXlib2FyZElucHV0VGVzdHNJT1MubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDVFMTU3MjIxMTJDRTI5MDAzMDdFODIgLyogS2V5Ym9h
cmRJbnB1dFRlc3RzSU9TLm1tICovOyB9OwogCQlGNDVFMTU3NjIxMTJDRTYyMDAzMDdFODIgLyog
VGVzdElucHV0RGVsZWdhdGUubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGNDVFMTU3NTIxMTJDRTYyMDAzMDdFODIgLyogVGVzdElucHV0RGVsZWdhdGUu
bW0gKi87IH07CisJCUY0NUVCNjA0Mjc3MzlGMzQwMDM1NzFBRSAvKiBUZXN0TW9kYWxDb250YWlu
ZXJDb250cm9scy5tbG1vZGVsYyBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGNDVFQjYwMzI3NzM5RjJCMDAzNTcxQUUgLyogVGVzdE1vZGFsQ29u
dGFpbmVyQ29udHJvbHMubWxtb2RlbGMgKi87IH07CiAJCUY0NjBGNjU3MjYxMTE2RUEwMDY0RjJC
NiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3QubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGNDYwRjY1NjI2MTExNkVBMDA2NEYyQjYgLyogSW5qZWN0ZWRC
dW5kbGVIaXRUZXN0Lm1tICovOyB9OwogCQlGNDYwRjY1QjI2MTExOTU4MDA2NEYyQjYgLyogSW5q
ZWN0ZWRCdW5kbGVIaXRUZXN0UGx1Z0luLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRjQ2MEY2NTkyNjExMTdFNzAwNjRGMkI2IC8qIEluamVjdGVkQnVu
ZGxlSGl0VGVzdFBsdWdJbi5tbSAqLzsgfTsKIAkJRjQ2MEY2NjkyNjEyNjMzNzAwNjRGMkI2IC8q
IHNpbXBsZS1yZXNwb25zaXZlLXBhZ2UuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDYwRjY2ODI2MTI2MkM3MDA2NEYyQjYgLyogc2lt
cGxlLXJlc3BvbnNpdmUtcGFnZS5odG1sICovOyB9OwpAQCAtMTEwMyw2ICsxMTA0LDcgQEAKIAkJ
RjRFMEEyQjgyMTIyODQ3NDAwQUY3QzdGIC8qIFRlc3RGaWxlUHJvbWlzZVJlY2VpdmVyLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRFMEEyQjcyMTIy
ODQ3NDAwQUY3QzdGIC8qIFRlc3RGaWxlUHJvbWlzZVJlY2VpdmVyLm1tICovOyB9OwogCQlGNEUz
RDgwODIwRjcwQkI5MDA3QjU4QzUgLyogc2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNs
ZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEY0RTNEODA3MjBGNzA4RTQwMDdCNThDNSAvKiBzaWduaWZpY2FudC10ZXh0LW1pbGVzdG9u
ZS1hcnRpY2xlLmh0bWwgKi87IH07CiAJCUY0RTdBNjYzMjcyMjJDQTkwMEU3NEQzNiAvKiBjYW52
YXMtaW1hZ2UtZGF0YS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEY0RTdBNjYyMjcyMjJCQjEwMEU3NEQzNiAvKiBjYW52YXMtaW1hZ2Ut
ZGF0YS5odG1sICovOyB9OworCQlGNEU4NkY4QTI3NzNEQzFCMDAzODU5QTYgLyogbW9kYWwtY29u
dGFpbmVyLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRjRFODZGODkyNzczREMwNjAwMzg1OUE2IC8qIG1vZGFsLWNvbnRhaW5lci5odG1s
ICovOyB9OwogCQlGNEVDODA5NDI2MEQzMDU0MDAxMDMxMUQgLyogc2ltcGxlLWltYWdlLW92ZXJs
YXkuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGNEVDODA5MzI2MEQyRTYyMDAxMDMxMUQgLyogc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRt
bCAqLzsgfTsKIAkJRjRGMTM3OTIxRDlCNjgzRTAwMkJFQzU3IC8qIGxhcmdlLXZpZGVvLXRlc3Qt
bm93LXBsYXlpbmcuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGNEYxMzc5MTFEOUI2ODMyMDAyQkVDNTcgLyogbGFyZ2UtdmlkZW8tdGVz
dC1ub3ctcGxheWluZy5odG1sICovOyB9OwogCQlGNEY0MDVCQzFENEMwRDFDMDA3QTk3MDcgLyog
ZnVsbC1zaXplLWF1dG9wbGF5aW5nLXZpZGVvLXdpdGgtYXVkaW8uaHRtbCBpbiBDb3B5IFJlc291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEY0MDVCQTFENEMwQ0Y4
MDA3QTk3MDcgLyogZnVsbC1zaXplLWF1dG9wbGF5aW5nLXZpZGVvLXdpdGgtYXVkaW8uaHRtbCAq
LzsgfTsKQEAgLTE0NzIsNiArMTQ3NCw3IEBACiAJCQkJNTE3RTdFMDQxNTExMTlDMTAwRDBCMDA4
IC8qIE1lbW9yeUNhY2hlUHJ1bmVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sIGluIENv
cHkgUmVzb3VyY2VzICovLAogCQkJCTQ5NzFCMTIwMjQ1M0E4OEMwMDk2OTk0RCAvKiBtaXNzaW5n
VG9wRnJhbWVVbmlxdWVSZWRpcmVjdFNhbWVTaXRlU3RyaWN0VGFibGVTY2hlbWEuZGIgaW4gQ29w
eSBSZXNvdXJjZXMgKi8sCiAJCQkJNTFDRDFDNzIxQjM4RDQ4NDAwMTQyQ0E1IC8qIG1vZGFsLWFs
ZXJ0cy1pbi1uZXctYWJvdXQtYmxhbmstd2luZG93Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CisJCQkJRjRFODZGOEEyNzczREMxQjAwMzg1OUE2IC8qIG1vZGFsLWNvbnRhaW5lci5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovLAogCQkJCTdBMTQ1OEZDMUFENUMwNzAwMEUwNjc3MiAvKiBtb3Vz
ZS1idXR0b24tbGlzdGVuZXIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQkzM0U3OUUw
NjEzN0I1RkQ5MDBFMzJEOTkgLyogbW91c2UtbW92ZS1saXN0ZW5lci5odG1sIGluIENvcHkgUmVz
b3VyY2VzICovLAogCQkJCTlCNTlGMTJBMjAzNDA4NkYwMDlFNjNENSAvKiBtc28tbGlzdC1jb21w
YXQtbW9kZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLApAQCAtMTU1OCw2ICsxNTYxLDcgQEAK
IAkJCQk1MjRCQkNBMTE5RTMwQzc3MDAyRjFBRjEgLyogdGVzdC5tcDQgaW4gQ29weSBSZXNvdXJj
ZXMgKi8sCiAJCQkJN0FFOUU1MDkxQUU1QUU4QjAwQ0Y4NzRCIC8qIHRlc3QucGRmIGluIENvcHkg
UmVzb3VyY2VzICovLAogCQkJCTVDNzEwMUM3MjVERDk4QjYwMDY4NjIwMCAvKiB0ZXN0X3ByaW50
LnBkZiBpbiBDb3B5IFJlc291cmNlcyAqLywKKwkJCQlGNDVFQjYwNDI3NzM5RjM0MDAzNTcxQUUg
LyogVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMgaW4gQ29weSBSZXNvdXJjZXMg
Ki8sCiAJCQkJMkU5ODk2MTUxRDhGMDkzODAwNzM5ODkyIC8qIHRleHQtYW5kLXBhc3N3b3JkLWlu
cHV0cy5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUY0Q0Q3NEM2MjBGREFDRkEwMERF
Mzc5NCAvKiB0ZXh0LXdpdGgtYXN5bmMtc2NyaXB0Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CiAJCQkJRjQ0QzdBMDUyMEZBQUUzQzAwMTQ0NzhDIC8qIHRleHQtd2l0aC1kZWZlcnJlZC1zY3Jp
cHQuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKQEAgLTMwMDMsNiArMzAwNyw4IEBACiAJCUY0
NUUxNTcyMjExMkNFMjkwMDMwN0U4MiAvKiBLZXlib2FyZElucHV0VGVzdHNJT1MubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBLZXlib2FyZElucHV0VGVzdHNJT1MubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUY0NUUxNTc0MjExMkNFNjIwMDMwN0U4MiAvKiBUZXN0SW5wdXREZWxl
Z2F0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBUZXN0SW5wdXREZWxlZ2F0ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlGNDVFMTU3NTIxMTJDRTYyMDAzMDdFODIgLyogVGVzdElucHV0RGVs
ZWdhdGUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBUZXN0SW5wdXREZWxlZ2F0ZS5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ1RUI2MDMyNzczOUYyQjAwMzU3MUFFIC8qIFRl
c3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1sbW9kZWxjICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlcjsgcGF0aCA9IFRlc3RNb2RhbENvbnRh
aW5lckNvbnRyb2xzLm1sbW9kZWxjOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDVF
QjYwNjI3NzNDMzcxMDAzNTcxQUUgLyogTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbi5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IE1vZGFsQ29udGFpbmVyT2JzZXJ2YXRpb24ubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0NjBGNjU2MjYxMTE2RUEwMDY0RjJCNiAvKiBJbmplY3Rl
ZEJ1bmRsZUhpdFRlc3QubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJbmplY3RlZEJ1bmRsZUhp
dFRlc3QubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0NjBGNjU5MjYxMTE3RTcw
MDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVnSW4ubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVnSW4ubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUY0NjBGNjVBMjYxMTE4M0YwMDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhp
dFRlc3RQcm90b2NvbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90
b2NvbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMzA3MSw2ICszMDc3LDcgQEAK
IAkJRjRFMEEyQjcyMTIyODQ3NDAwQUY3QzdGIC8qIFRlc3RGaWxlUHJvbWlzZVJlY2VpdmVyLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gVGVzdEZpbGVQcm9taXNlUmVjZWl2ZXIubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0RTNEODA3MjBGNzA4RTQwMDdCNThDNSAvKiBzaWdu
aWZpY2FudC10ZXh0LW1pbGVzdG9uZS1hcnRpY2xlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7
IHBhdGggPSAic2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNsZS5odG1sIjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRFN0E2NjIyNzIyMkJCMTAwRTc0RDM2IC8qIGNhbnZh
cy1pbWFnZS1kYXRhLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAiY2FudmFzLWlt
YWdlLWRhdGEuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0RTg2Rjg5Mjc3
M0RDMDYwMDM4NTlBNiAvKiBtb2RhbC1jb250YWluZXIuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRt
bDsgcGF0aCA9ICJtb2RhbC1jb250YWluZXIuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUY0RUI0RThGMjMyOEFDMzAwMDU3NERBQiAvKiBOU0l0ZW1Qcm92aWRlckFkZGl0aW9u
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBOU0l0ZW1Qcm92aWRlckFkZGl0aW9ucy5oOyBwYXRoID0gY29j
b2EvTlNJdGVtUHJvdmlkZXJBZGRpdGlvbnMuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9
OwogCQlGNEVCNEU5MDIzMjhBQzMwMDA1NzREQUIgLyogTlNJdGVtUHJvdmlkZXJBZGRpdGlvbnMu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBOU0l0ZW1Qcm92aWRlckFkZGl0aW9ucy5tbTsgcGF0
aCA9IGNvY29hL05TSXRlbVByb3ZpZGVyQWRkaXRpb25zLm1tOyBzb3VyY2VUcmVlID0gU09VUkNF
X1JPT1Q7IH07CiAJCUY0RUM4MDkzMjYwRDJFNjIwMDEwMzExRCAvKiBzaW1wbGUtaW1hZ2Utb3Zl
cmxheS5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gInNpbXBsZS1pbWFnZS1vdmVy
bGF5Lmh0bWwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMzQ4MSw2ICszNDg4LDcg
QEAKIAkJCQk1MUJFOUU2NTIzNzYwODk1MDBCNEUxMTcgLyogTWVkaWFUeXBlLm1tICovLAogCQkJ
CTUxNjVGRTAzMjAxRUU2MTcwMDlGN0VDMyAvKiBNZXNzYWdlUG9ydFByb3ZpZGVycy5tbSAqLywK
IAkJCQk1MUNEMUM2QTFCMzhDRTM2MDAxNDJDQTUgLyogTW9kYWxBbGVydHMubW0gKi8sCisJCQkJ
RjQ1RUI2MDYyNzczQzM3MTAwMzU3MUFFIC8qIE1vZGFsQ29udGFpbmVyT2JzZXJ2YXRpb24ubW0g
Ki8sCiAJCQkJMUFCQzNERUQxODk5QkU2RDAwNEYwNjI2IC8qIE5hdmlnYXRpb24ubW0gKi8sCiAJ
CQkJNjM1MTk5MjcyMjI3NUM2QTAwODkwQUQzIC8qIE5hdmlnYXRpb25BY3Rpb24ubW0gKi8sCiAJ
CQkJNUM4QkM3OTgyMThDRjNFOTAwODEzODg2IC8qIE5ldHdvcmtQcm9jZXNzLm1tICovLApAQCAt
NDE4NCw2ICs0MTkyLDcgQEAKIAkJCQkzMUI3NkU0NDIzMjk5QkEzMDA3RkVEMkMgLyogc3lzdGVt
LXByZXZpZXctdHJpZ2dlci5odG1sICovLAogCQkJCTMxM0MzQTAxMjFFNTY3N0EwMERCQTg2RSAv
KiBTeXN0ZW1QcmV2aWV3QmxvYk5hbWluZy5odG1sICovLAogCQkJCUY0NkQ0M0FBMjZENzA5MDMw
MDk2OUU1RSAvKiB0ZXN0LmpwZyAqLywKKwkJCQlGNDVFQjYwMzI3NzM5RjJCMDAzNTcxQUUgLyog
VGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMgKi8sCiAJCQkJMkU5ODk2MTQxRDhG
MDkyQjAwNzM5ODkyIC8qIHRleHQtYW5kLXBhc3N3b3JkLWlucHV0cy5odG1sICovLAogCQkJCUY0
Q0Q3NEM1MjBGREFDRjUwMERFMzc5NCAvKiB0ZXh0LXdpdGgtYXN5bmMtc2NyaXB0Lmh0bWwgKi8s
CiAJCQkJRjQ0QzdBMDQyMEZBQUUzMjAwMTQ0NzhDIC8qIHRleHQtd2l0aC1kZWZlcnJlZC1zY3Jp
cHQuaHRtbCAqLywKQEAgLTQ2NTQsNiArNDY2Myw3IEBACiAJCQkJQ0RDOTQ0MkIxRUYxRkJEMjAw
NTlDM0M0IC8qIG1lZGlhc3RyZWFtdHJhY2stZGV0YWNoZWQuaHRtbCAqLywKIAkJCQk0OTcxQjEx
RjI0NTNBODdGMDA5Njk5NEQgLyogbWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RTYW1lU2l0
ZVN0cmljdFRhYmxlU2NoZW1hLmRiICovLAogCQkJCTUxQ0QxQzcxMUIzOEQ0ODQwMDE0MkNBNSAv
KiBtb2RhbC1hbGVydHMtaW4tbmV3LWFib3V0LWJsYW5rLXdpbmRvdy5odG1sICovLAorCQkJCUY0
RTg2Rjg5Mjc3M0RDMDYwMDM4NTlBNiAvKiBtb2RhbC1jb250YWluZXIuaHRtbCAqLywKIAkJCQk3
QTE0NThGQjFBRDVDMDM1MDBFMDY3NzIgLyogbW91c2UtYnV0dG9uLWxpc3RlbmVyLmh0bWwgKi8s
CiAJCQkJMzNFNzlFMDUxMzdCNUZDRTAwRTMyRDk5IC8qIG1vdXNlLW1vdmUtbGlzdGVuZXIuaHRt
bCAqLywKIAkJCQk1Nzk3RkUzMjFFQjE1QTg5MDBCMkY0QTAgLyogbmF2aWdhdGlvbi1jbGllbnQt
ZGVmYXVsdC1jcnlwdG8uaHRtbCAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0L21vZGFsLWNvbnRhaW5lci5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQvbW9kYWwtY29udGFpbmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWFkMGM3OWUwNTZl
Y2RiODcwODAxOTliMDJiODRiZjY4ZWM4Y2M2NwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21vZGFsLWNvbnRhaW5lci5odG1sCkBAIC0wLDAgKzEs
OTggQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+Cis8c3R5
bGU+Citib2R5LCBodG1sIHsKKyAgICBtYXJnaW46IDA7CisgICAgYmFja2dyb3VuZC1jb2xvcjog
I0VGRUZFRjsKKyAgICBmb250LWZhbWlseTogc3lzdGVtLXVpOworfQorCitidXR0b24geworICAg
IHBhZGRpbmc6IDZweDsKKyAgICBib3JkZXItcmFkaXVzOiA2cHg7CisgICAgYXBwZWFyYW5jZTog
bm9uZTsKKyAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOworICAgIHdpZHRoOiBhdXRvOworICAgIG1h
cmdpbjogNHB4OworICAgIGJvcmRlcjogbm9uZTsKKyAgICBmb250LXNpemU6IDFlbTsKKyAgICBj
dXJzb3I6IHBvaW50ZXI7Cit9CisKKyNuZXV0cmFsIHsKKyAgICBjb2xvcjogcmdiKDg4LCA4Niwg
MjE0KTsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDg4LCA4NiwgMjE0LCAwLjEpOworfQor
CisjbmVnYXRpdmUgeworICAgIGNvbG9yOiByZ2IoMjU1LCA1OSwgNDgpOworICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYmEoMjU1LCA1OSwgNDgsIDAuMSk7Cit9CisKKyNwb3NpdGl2ZSB7CisgICAg
Y29sb3I6IHJnYig3NiwgMjE3LCAxMDApOworICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNzYs
IDIxNywgMTAwLCAwLjEpOworfQorCisjZml4ZWQgeworICAgIHdpZHRoOiBjYWxjKG1pbigzMDBw
eCwgODAlKSk7CisgICAgYm90dG9tOiAxMHB4OworICAgIGxlZnQ6IDEwcHg7CisgICAgcG9zaXRp
b246IGZpeGVkOworICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOworICAgIGJvcmRlci1yYWRp
dXM6IDhweDsKKyAgICBwYWRkaW5nOiAxNnB4OworICAgIGJveC1zaGFkb3c6IDFweCAxcHggMnB4
IDJweCAjQ0NDOworfQorCisjZml4ZWQgPiBwIHsKKyAgICBmb250LXNpemU6IDE0cHg7Cit9CisK
KyNmaXhlZCA+IGg0IHsKKyAgICBmb250LXNpemU6IDE2cHg7CisgICAgbWFyZ2luLXRvcDogNnB4
OworfQorCisjZml4ZWQtY29udHJvbHMgeworICAgIGZvbnQtc2l6ZTogMTZweDsKKyAgICBtYXJn
aW4tYm90dG9tOiAxZW07CisgICAgdGV4dC1hbGlnbjogY2VudGVyOworfQorCisjcmVzdWx0IHsK
KyAgICBmb250LXNpemU6IDE2cHg7CisgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgZm9udC1m
YW1pbHk6IG1vbm9zcGFjZTsKK30KKzwvc3R5bGU+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRl
cm5hbHMpCisgICAgaW50ZXJuYWxzLm92ZXJyaWRlTW9kYWxDb250YWluZXJTZWFyY2hUZXJtRm9y
VGVzdGluZygiaGVsbG8gd29ybGQiKTsKKworYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExv
YWRlZCIsIGV2ZW50ID0+IHsKKyAgICBbbmVnYXRpdmUsIHBvc2l0aXZlLCBuZXV0cmFsXS5mb3JF
YWNoKGNvbnRyb2wgPT4geworICAgICAgICBjb250cm9sLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNr
IiwgKCkgPT4geworICAgICAgICAgICAgZml4ZWQucmVtb3ZlKCk7CisgICAgICAgICAgICByZXN1
bHQudGV4dENvbnRlbnQgPSBgQ2xpY2tlZCBvbiAiJHtjb250cm9sLnRleHRDb250ZW50fSJgOwor
ICAgICAgICB9KTsKKyAgICB9KTsKK30pOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZXRldHVyIHNhZGlwc2NpbmcgZWxpdHIs
IHNlZCBkaWFtIG5vbnVteSBlaXJtb2QgdGVtcG9yIGludmlkdW50IHV0IGxhYm9yZSBldCBkb2xv
cmUgbWFnbmEgYWxpcXV5YW0gZXJhdCwgc2VkIGRpYW0gdm9sdXB0dWEuPC9wPgorPGRpdiBpZD0i
Zml4ZWQiPgorICAgIDxoND48c3Bhbj5UaGlzIGlzIGEgdGVzdDwvc3Bhbj48L2g0PgorICAgIDxw
PkhlbGxvIHdvcmxkPC9wPgorICAgIDxkaXYgY2xhc3M9ImZpeGVkLWNvbnRyb2xzIj4KKyAgICAg
ICAgPGJ1dHRvbiBpZD0icG9zaXRpdmUiPlllczwvYnV0dG9uPgorICAgICAgICA8YnV0dG9uIGlk
PSJuZWdhdGl2ZSI+Tm88L2J1dHRvbj4KKyAgICAgICAgPGJ1dHRvbiBpZD0ibmV1dHJhbCI+TWF5
YmU8L2J1dHRvbj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorPGRpdiBpZD0icmVzdWx0Ij48YnI+PC9k
aXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL0FwcGxpY2F0aW9uTWFuaWZlc3QubW0gYi9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL0FwcGxpY2F0aW9uTWFuaWZlc3QubW0KaW5kZXggZjFhMzk5
Nzc2ZDIxMGNlN2RiMmIzNDNmZGZiYWFiN2RkNjlhMWYwYi4uZjk0YjNhOTdhZmQwOTk2YmYzNTFi
MWRkODFhMDI0ZmE5OGUwN2Q4MiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9BcHBsaWNhdGlvbk1hbmlmZXN0Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQXBwbGljYXRpb25NYW5pZmVzdC5tbQpAQCAtMjksNiAr
MjksNyBAQAogCiAjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2ltcG9ydCAiVGVzdC5o
IgorI2ltcG9ydCAiVGVzdENvY29hLmgiCiAjaW1wb3J0ICJUZXN0TmF2aWdhdGlvbkRlbGVnYXRl
LmgiCiAjaW1wb3J0ICJUZXN0V0tXZWJWaWV3LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0FwcGxpY2F0
aW9uTWFuaWZlc3QuaD4KQEAgLTM5LDggKzQwLDYgQEAKIAogbmFtZXNwYWNlIFRlc3RXZWJLaXRB
UEkgewogCi1jb25zdGV4cHIgQ0dGbG9hdCByZWRDb2xvckNvbXBvbmVudHNbNF0gPSB7IDEsIDAs
IDAsIDEgfTsKLQogVEVTVChBcHBsaWNhdGlvbk1hbmlmZXN0LCBDb2RpbmcpCiB7CiAgICAgYXV0
byBqc29uU3RyaW5nID0gQCJ7IFwibmFtZVwiOiBcIlRlc3ROYW1lXCIsIFwic2hvcnRfbmFtZVwi
OiBcIlRlc3RTaG9ydE5hbWVcIiwgXCJkZXNjcmlwdGlvblwiOiBcIlRlc3REZXNjcmlwdGlvblwi
LCBcInNjb3BlXCI6IFwiaHR0cHM6Ly90ZXN0LmNvbS9hcHBcIiwgXCJzdGFydF91cmxcIjogXCJo
dHRwczovL3Rlc3QuY29tL2FwcC9pbmRleC5odG1sXCIsIFwiZGlzcGxheVwiOiBcIm1pbmltYWwt
dWlcIiwgXCJ0aGVtZV9jb2xvclwiOiBcInJlZFwiIH0iOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Nb2RhbENvbnRhaW5lck9ic2VydmF0aW9uLm1t
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Nb2RhbENvbnRhaW5lck9i
c2VydmF0aW9uLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE1NTg4NTUxMGMwNGJiNmFmMTgxZDc3MzRiMzU2MWRm
YWVkYWJhZjAKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdENvY29hL01vZGFsQ29udGFpbmVyT2JzZXJ2YXRpb24ubW0KQEAgLTAsMCArMSwxODcgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2ltcG9ydCAiUGxhdGZvcm1VdGls
aXRpZXMuaCIKKyNpbXBvcnQgIlRlc3RQcm90b2NvbC5oIgorI2ltcG9ydCAiVGVzdFdLV2ViVmll
dy5oIgorI2ltcG9ydCAiV0tXZWJWaWV3Q29uZmlndXJhdGlvbkV4dHJhcy5oIgorI2ltcG9ydCA8
V2ViS2l0L1dLUHJlZmVyZW5jZXNQcml2YXRlLmg+CisjaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3
Q29uZmlndXJhdGlvblByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1dlYnBhZ2VQcmVmZXJl
bmNlc1ByaXZhdGUuaD4KKyNpbXBvcnQgPG9iamMvcnVudGltZS5oPgorI2ltcG9ydCA8d3RmL0Nv
bXBsZXRpb25IYW5kbGVyLmg+CisjaW1wb3J0IDx3dGYvRmFzdE1hbGxvYy5oPgorI2ltcG9ydCA8
d3RmL1NldEZvclNjb3BlLmg+CisKK3R5cGVkZWYgX1dLTW9kYWxDb250YWluZXJEZWNpc2lvbihe
TW9kYWxDb250YWluZXJEZWNpc2lvbkhhbmRsZXIpKF9XS01vZGFsQ29udGFpbmVySW5mbyAqKTsK
KworQGludGVyZmFjZSBOU0J1bmRsZSAoVGVzdFN1cHBvcnQpCistIChOU1VSTCAqKXN3aXp6bGVk
X1VSTEZvclJlc291cmNlOihOU1N0cmluZyAqKW5hbWUgd2l0aEV4dGVuc2lvbjooTlNTdHJpbmcg
KilleHRlbnNpb247CitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBOU0J1bmRsZSAoVGVzdFN1cHBv
cnQpCisKKy0gKE5TVVJMICopc3dpenpsZWRfVVJMRm9yUmVzb3VyY2U6KE5TU3RyaW5nICopbmFt
ZSB3aXRoRXh0ZW5zaW9uOihOU1N0cmluZyAqKWV4dGVuc2lvbgoreworICAgIGlmIChbbmFtZSBp
c0VxdWFsVG9TdHJpbmc6QCJNb2RhbENvbnRhaW5lckNvbnRyb2xzIl0gJiYgW2V4dGVuc2lvbiBp
c0VxdWFsVG9TdHJpbmc6QCJtbG1vZGVsYyJdKSB7CisgICAgICAgIC8vIE92ZXJyaWRlIHRoZSBk
ZWZhdWx0IENvcmVNTCBtb2RlbCB3aXRoIGEgc21hbGxlciBkYXRhc2V0IHRoYXQncyBsaW1pdGVk
IHRvIHRlc3RpbmcgcHVycG9zZXMuCisgICAgICAgIHJldHVybiBbTlNCdW5kbGUubWFpbkJ1bmRs
ZSBVUkxGb3JSZXNvdXJjZTpAIlRlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzIiB3aXRoRXh0ZW5z
aW9uOkAibWxtb2RlbGMiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl07
CisgICAgfQorICAgIC8vIENhbGwgdGhyb3VnaCB0byB0aGUgb3JpZ2luYWwgbWV0aG9kIGltcGxl
bWVudGF0aW9uIGlmIHdlJ3JlIG5vdCBzcGVjaWZpY2FsbHkgcmVxdWVzdGluZyBNb2RhbENvbnRh
aW5lckNvbnRyb2xzLm1sbW9kZWxjLgorICAgIHJldHVybiBbc2VsZiBzd2l6emxlZF9VUkxGb3JS
ZXNvdXJjZTpuYW1lIHdpdGhFeHRlbnNpb246ZXh0ZW5zaW9uXTsKK30KKworQGVuZAorCituYW1l
c3BhY2UgVGVzdFdlYktpdEFQSSB7CisKK2NsYXNzIENsYXNzaWZpZXJNb2RlbFN3aXp6bGVyIHsK
KyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBDbGFzc2lmaWVyTW9k
ZWxTd2l6emxlcigpCisgICAgICAgIDogbV9vcmlnaW5hbE1ldGhvZChjbGFzc19nZXRJbnN0YW5j
ZU1ldGhvZChOU0J1bmRsZS5jbGFzcywgQHNlbGVjdG9yKFVSTEZvclJlc291cmNlOndpdGhFeHRl
bnNpb246KSkpCisgICAgICAgICwgbV9zd2l6emxlZE1ldGhvZChjbGFzc19nZXRJbnN0YW5jZU1l
dGhvZChOU0J1bmRsZS5jbGFzcywgQHNlbGVjdG9yKHN3aXp6bGVkX1VSTEZvclJlc291cmNlOndp
dGhFeHRlbnNpb246KSkpCisgICAgeworICAgICAgICBtX29yaWdpbmFsSW1wbGVtZW50YXRpb24g
PSBtZXRob2RfZ2V0SW1wbGVtZW50YXRpb24obV9vcmlnaW5hbE1ldGhvZCk7CisgICAgICAgIG1f
c3dpenpsZWRJbXBsZW1lbnRhdGlvbiA9IG1ldGhvZF9nZXRJbXBsZW1lbnRhdGlvbihtX3N3aXp6
bGVkTWV0aG9kKTsKKyAgICAgICAgY2xhc3NfcmVwbGFjZU1ldGhvZChOU0J1bmRsZS5jbGFzcywg
QHNlbGVjdG9yKHN3aXp6bGVkX1VSTEZvclJlc291cmNlOndpdGhFeHRlbnNpb246KSwgbV9vcmln
aW5hbEltcGxlbWVudGF0aW9uLCBtZXRob2RfZ2V0VHlwZUVuY29kaW5nKG1fb3JpZ2luYWxNZXRo
b2QpKTsKKyAgICAgICAgY2xhc3NfcmVwbGFjZU1ldGhvZChOU0J1bmRsZS5jbGFzcywgQHNlbGVj
dG9yKFVSTEZvclJlc291cmNlOndpdGhFeHRlbnNpb246KSwgbV9zd2l6emxlZEltcGxlbWVudGF0
aW9uLCBtZXRob2RfZ2V0VHlwZUVuY29kaW5nKG1fc3dpenpsZWRNZXRob2QpKTsKKyAgICB9CisK
KyAgICB+Q2xhc3NpZmllck1vZGVsU3dpenpsZXIoKQorICAgIHsKKyAgICAgICAgY2xhc3NfcmVw
bGFjZU1ldGhvZChOU0J1bmRsZS5jbGFzcywgQHNlbGVjdG9yKHN3aXp6bGVkX1VSTEZvclJlc291
cmNlOndpdGhFeHRlbnNpb246KSwgbV9zd2l6emxlZEltcGxlbWVudGF0aW9uLCBtZXRob2RfZ2V0
VHlwZUVuY29kaW5nKG1fb3JpZ2luYWxNZXRob2QpKTsKKyAgICAgICAgY2xhc3NfcmVwbGFjZU1l
dGhvZChOU0J1bmRsZS5jbGFzcywgQHNlbGVjdG9yKFVSTEZvclJlc291cmNlOndpdGhFeHRlbnNp
b246KSwgbV9vcmlnaW5hbEltcGxlbWVudGF0aW9uLCBtZXRob2RfZ2V0VHlwZUVuY29kaW5nKG1f
c3dpenpsZWRNZXRob2QpKTsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgTWV0aG9kIG1fb3JpZ2lu
YWxNZXRob2Q7CisgICAgTWV0aG9kIG1fc3dpenpsZWRNZXRob2Q7CisgICAgSU1QIG1fb3JpZ2lu
YWxJbXBsZW1lbnRhdGlvbjsKKyAgICBJTVAgbV9zd2l6emxlZEltcGxlbWVudGF0aW9uOworfTsK
KworfSAvLyBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSQorCitAaW50ZXJmYWNlIE1vZGFsQ29udGFp
bmVyV2ViVmlldyA6IFRlc3RXS1dlYlZpZXcgPFdLVUlEZWxlZ2F0ZVByaXZhdGU+CitAZW5kCisK
K0BpbXBsZW1lbnRhdGlvbiBNb2RhbENvbnRhaW5lcldlYlZpZXcgeworICAgIHN0ZDo6dW5pcXVl
X3B0cjxUZXN0V2ViS2l0QVBJOjpDbGFzc2lmaWVyTW9kZWxTd2l6emxlcj4gX2NsYXNzaWZpZXJN
b2RlbFN3aXp6bGVyOworICAgIFJldGFpblB0cjxUZXN0TmF2aWdhdGlvbkRlbGVnYXRlPiBfbmF2
aWdhdGlvbkRlbGVnYXRlOworICAgIHN0ZDo6b3B0aW9uYWw8X1dLTW9kYWxDb250YWluZXJEZWNp
c2lvbj4gX2RlY2lzaW9uOworICAgIGJvb2wgX2RvbmVXYWl0aW5nRm9yRGVjaXNpb25IYW5kbGVy
OworfQorCistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhGcmFtZTooQ0dSZWN0KWZyYW1lIGNvbmZp
Z3VyYXRpb246KFdLV2ViVmlld0NvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9uCit7CisgICAg
aWYgKCEoc2VsZiA9IFtzdXBlciBpbml0V2l0aEZyYW1lOmZyYW1lIGNvbmZpZ3VyYXRpb246Y29u
ZmlndXJhdGlvbl0pKQorICAgICAgICByZXR1cm4gbmlsOworCisgICAgc3RhdGljIHN0ZDo6b25j
ZV9mbGFnIG9uY2VGbGFnOworICAgIHN0ZDo6Y2FsbF9vbmNlKG9uY2VGbGFnLCBbXSB7CisgICAg
ICAgIFtUZXN0UHJvdG9jb2wgcmVnaXN0ZXJXaXRoU2NoZW1lOkAiaHR0cCJdOworICAgIH0pOwor
CisgICAgX2NsYXNzaWZpZXJNb2RlbFN3aXp6bGVyID0gbWFrZVVuaXF1ZTxUZXN0V2ViS2l0QVBJ
OjpDbGFzc2lmaWVyTW9kZWxTd2l6emxlcj4oKTsKKyAgICBfbmF2aWdhdGlvbkRlbGVnYXRlID0g
YWRvcHROUyhbW1Rlc3ROYXZpZ2F0aW9uRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKKyAgICBfZG9u
ZVdhaXRpbmdGb3JEZWNpc2lvbkhhbmRsZXIgPSB0cnVlOworICAgIFtzZWxmIHNldE5hdmlnYXRp
b25EZWxlZ2F0ZTpfbmF2aWdhdGlvbkRlbGVnYXRlLmdldCgpXTsKKyAgICBbc2VsZiBzZXRVSURl
bGVnYXRlOnNlbGZdOworICAgIHJldHVybiBzZWxmOworfQorCistICh2b2lkKWxvYWRCdW5kbGVQ
YWdlOihOU1N0cmluZyAqKXBhZ2UgYW5kRGVjaWRlUG9saWN5OihfV0tNb2RhbENvbnRhaW5lckRl
Y2lzaW9uKWRlY2lzaW9uCit7CisgICAgU2V0Rm9yU2NvcGU8c3RkOjpvcHRpb25hbDxfV0tNb2Rh
bENvbnRhaW5lckRlY2lzaW9uPj4gZGVjaXNpb25TY29wZSB7IF9kZWNpc2lvbiwgZGVjaXNpb24g
fTsKKyAgICBfZG9uZVdhaXRpbmdGb3JEZWNpc2lvbkhhbmRsZXIgPSBmYWxzZTsKKworICAgIE5T
VVJMICpidW5kbGVVUkwgPSBbTlNCdW5kbGUubWFpbkJ1bmRsZSBVUkxGb3JSZXNvdXJjZTpwYWdl
IHdpdGhFeHRlbnNpb246QCJodG1sIiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291
cmNlcyJdOworICAgIE5TVVJMUmVxdWVzdCAqZmFrZVJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJl
cXVlc3RXaXRoVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiaHR0cDovL3dlYmtpdC5vcmciXV07
CisgICAgW3NlbGYgbG9hZFNpbXVsYXRlZFJlcXVlc3Q6ZmFrZVJlcXVlc3QgcmVzcG9uc2VIVE1M
U3RyaW5nOltOU1N0cmluZyBzdHJpbmdXaXRoQ29udGVudHNPZlVSTDpidW5kbGVVUkxdXTsKKwor
ICAgIGF1dG8gcHJlZmVyZW5jZXMgPSBhZG9wdE5TKFtbV0tXZWJwYWdlUHJlZmVyZW5jZXMgYWxs
b2NdIGluaXRdKTsKKyAgICBbcHJlZmVyZW5jZXMgX3NldE1vZGFsQ29udGFpbmVyT2JzZXJ2YXRp
b25Qb2xpY3k6X1dLV2Vic2l0ZU1vZGFsQ29udGFpbmVyT2JzZXJ2YXRpb25Qb2xpY3lQcm9tcHRd
OworICAgIFtfbmF2aWdhdGlvbkRlbGVnYXRlIHdhaXRGb3JEaWRGaW5pc2hOYXZpZ2F0aW9uV2l0
aFByZWZlcmVuY2VzOnByZWZlcmVuY2VzLmdldCgpXTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0
aWw6OnJ1bigmX2RvbmVXYWl0aW5nRm9yRGVjaXNpb25IYW5kbGVyKTsKKyAgICBbc2VsZiB3YWl0
Rm9yTmV4dFByZXNlbnRhdGlvblVwZGF0ZV07Cit9CisKKy0gKHZvaWQpX3dlYlZpZXc6KFdLV2Vi
VmlldyAqKXdlYlZpZXcgZGVjaWRlUG9saWN5Rm9yTW9kYWxDb250YWluZXI6KF9XS01vZGFsQ29u
dGFpbmVySW5mbyAqKWNvbnRhaW5lckluZm8gZGVjaXNpb25IYW5kbGVyOih2b2lkICheKShfV0tN
b2RhbENvbnRhaW5lckRlY2lzaW9uKSloYW5kbGVyCit7CisgICAgaGFuZGxlcihfZGVjaXNpb24u
dmFsdWVfb3IoX1dLTW9kYWxDb250YWluZXJEZWNpc2lvblNob3cpKTsKKyAgICBfZG9uZVdhaXRp
bmdGb3JEZWNpc2lvbkhhbmRsZXIgPSB0cnVlOworfQorCitAZW5kCisKK25hbWVzcGFjZSBUZXN0
V2ViS2l0QVBJIHsKKworc3RhdGljIFJldGFpblB0cjxNb2RhbENvbnRhaW5lcldlYlZpZXc+IGNy
ZWF0ZU1vZGFsQ29udGFpbmVyV2ViVmlldygpCit7CisgICAgYXV0byBjb25maWd1cmF0aW9uID0g
W1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gX3Rlc3RfY29uZmlndXJhdGlvbldpdGhUZXN0UGx1Z0lu
Q2xhc3NOYW1lOkAiV2ViUHJvY2Vzc1BsdWdJbldpdGhJbnRlcm5hbHMiIGNvbmZpZ3VyZUpTQ0Zv
clRlc3Rpbmc6WUVTXTsKKyAgICByZXR1cm4gYWRvcHROUyhbW01vZGFsQ29udGFpbmVyV2ViVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDQwMCwgNDAwKSBjb25maWd1
cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKK30KKworVEVTVChNb2RhbENvbnRhaW5lck9ic2VydmF0
aW9uLCBIaWRlQW5kQWxsb3dNb2RhbENvbnRhaW5lcikKK3sKKyAgICBhdXRvIHdlYlZpZXcgPSBj
cmVhdGVNb2RhbENvbnRhaW5lcldlYlZpZXcoKTsKKyAgICBbd2ViVmlldyBsb2FkQnVuZGxlUGFn
ZTpAIm1vZGFsLWNvbnRhaW5lciIgYW5kRGVjaWRlUG9saWN5Ol9XS01vZGFsQ29udGFpbmVyRGVj
aXNpb25IaWRlQW5kQWxsb3ddOworICAgIE5TU3RyaW5nICp2aXNpYmxlVGV4dCA9IFt3ZWJWaWV3
IGNvbnRlbnRzQXNTdHJpbmddOworICAgIEVYUEVDVF9UUlVFKFt2aXNpYmxlVGV4dCBjb250YWlu
c1N0cmluZzpAIkNsaWNrZWQgb24gXCJZZXNcIiJdKTsKKyAgICBFWFBFQ1RfRkFMU0UoW3Zpc2li
bGVUZXh0IGNvbnRhaW5zU3RyaW5nOkAiSGVsbG8gd29ybGQiXSk7Cit9CisKK1RFU1QoTW9kYWxD
b250YWluZXJPYnNlcnZhdGlvbiwgSGlkZUFuZERpc2FsbG93TW9kYWxDb250YWluZXIpCit7Cisg
ICAgYXV0byB3ZWJWaWV3ID0gY3JlYXRlTW9kYWxDb250YWluZXJXZWJWaWV3KCk7CisgICAgW3dl
YlZpZXcgbG9hZEJ1bmRsZVBhZ2U6QCJtb2RhbC1jb250YWluZXIiIGFuZERlY2lkZVBvbGljeTpf
V0tNb2RhbENvbnRhaW5lckRlY2lzaW9uSGlkZUFuZERpc2FsbG93XTsKKyAgICBOU1N0cmluZyAq
dmlzaWJsZVRleHQgPSBbd2ViVmlldyBjb250ZW50c0FzU3RyaW5nXTsKKyAgICBFWFBFQ1RfVFJV
RShbdmlzaWJsZVRleHQgY29udGFpbnNTdHJpbmc6QCJDbGlja2VkIG9uIFwiTm9cIiJdKTsKKyAg
ICBFWFBFQ1RfRkFMU0UoW3Zpc2libGVUZXh0IGNvbnRhaW5zU3RyaW5nOkAiSGVsbG8gd29ybGQi
XSk7Cit9CisKK1RFU1QoTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbiwgSGlkZUFuZElnbm9yZU1v
ZGFsQ29udGFpbmVyKQoreworICAgIGF1dG8gd2ViVmlldyA9IGNyZWF0ZU1vZGFsQ29udGFpbmVy
V2ViVmlldygpOworICAgIFt3ZWJWaWV3IGxvYWRCdW5kbGVQYWdlOkAibW9kYWwtY29udGFpbmVy
IiBhbmREZWNpZGVQb2xpY3k6X1dLTW9kYWxDb250YWluZXJEZWNpc2lvbkhpZGVBbmRJZ25vcmVd
OworICAgIE5TU3RyaW5nICp2aXNpYmxlVGV4dCA9IFt3ZWJWaWV3IGNvbnRlbnRzQXNTdHJpbmdd
OworICAgIEVYUEVDVF9GQUxTRShbdmlzaWJsZVRleHQgY29udGFpbnNTdHJpbmc6QCJDbGlja2Vk
IG9uIl0pOworICAgIEVYUEVDVF9GQUxTRShbdmlzaWJsZVRleHQgY29udGFpbnNTdHJpbmc6QCJI
ZWxsbyB3b3JsZCJdKTsKK30KKworVEVTVChNb2RhbENvbnRhaW5lck9ic2VydmF0aW9uLCBTaG93
TW9kYWxDb250YWluZXIpCit7CisgICAgYXV0byB3ZWJWaWV3ID0gY3JlYXRlTW9kYWxDb250YWlu
ZXJXZWJWaWV3KCk7CisgICAgW3dlYlZpZXcgbG9hZEJ1bmRsZVBhZ2U6QCJtb2RhbC1jb250YWlu
ZXIiIGFuZERlY2lkZVBvbGljeTpfV0tNb2RhbENvbnRhaW5lckRlY2lzaW9uU2hvd107CisgICAg
TlNTdHJpbmcgKnZpc2libGVUZXh0ID0gW3dlYlZpZXcgY29udGVudHNBc1N0cmluZ107CisgICAg
RVhQRUNUX0ZBTFNFKFt2aXNpYmxlVGV4dCBjb250YWluc1N0cmluZzpAIkNsaWNrZWQgb24iXSk7
CisgICAgRVhQRUNUX1RSVUUoW3Zpc2libGVUZXh0IGNvbnRhaW5zU3RyaW5nOkAiSGVsbG8gd29y
bGQiXSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkKZGlmZiAtLWdpdCBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29u
dHJvbHMubWxtb2RlbGMvYW5hbHl0aWNzL2NvcmVtbGRhdGEuYmluIGIvVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXN0TW9kYWxDb250YWluZXJDb250cm9scy5tbG1vZGVs
Yy9hbmFseXRpY3MvY29yZW1sZGF0YS5iaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTEyNDNkMDljZTI1ZGY5YTIx
YTQ5Zjc3MGQ0YWRmMjViMTAzNDU1YwpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMTU2CnpjbVdl
KGZQbW5GKWExO3glO2R6OSU9fG87KVJNJV5vTUktWjk0Q357JX0rX3FAa2xKcigxOGo+TXg9Uz1u
PHJJTwp6VEJlbUd4PnB6ITFjdjFsOGtKXmJtPEh3TXJLRlQ9N2R2fTtCb30rP2ArQ308N34rP2hu
PEBvMEJxWClDIzVYQEIKVUZ+PlBTNGBeKihZN3ZOMGwlRz0hMEZIN2dlKmdkZwoKbGl0ZXJhbCAw
CkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9UZXN0TW9kYWxDb250YWluZXJDb250cm9scy5tbG1vZGVsYy9jb3JlbWxkYXRhLmJp
biBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFp
bmVyQ29udHJvbHMubWxtb2RlbGMvY29yZW1sZGF0YS5iaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjA1OWU4NGI5
NGViNWU0MmZkZTMyZWQ5YWRiY2ExYjRiM2I2OGMxYwpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwg
MjM3MAp6Y21jSW1PSyUlaDZ1eD02c1RGOFFVbz0yRHY/K2JhYT8/VHVEcEphMWQ9cD5FbkszaXRx
IUJgTkppYlhyakF6V3UKeipzVHxBa1B4Z3shNDc0Xmw4M35PNEo7NjFne2F1X1Rsa0pVWnJ6OTJh
aXooOW8lQH5kZUNQUHl7Q1B4KERlPiQhCnpUUCRaaTluM3UyPGwqWjQlK2sqYjx4fU9eVDtJIT0k
fH47bGJLPiN4XnM7YkhtKipuQ3QpciF+aGIwPH5kRT5EMwp6YE5IelRqKmhiPXJnfDNZZ0w4a0J1
VTt3QjYqODBGRmIoJClhPUsoKnJ0N1FNdWFWS35NVmVGYFJMT2BVOHRyRDMKej5QKTh0LUtwWGZB
OVFwbCU8P3BCX3d4e19lJXpzY3JZVmRtT1pzVmBNPVJ8eF9SfUhsQzIyUlMoQV9YVXBkPW1qCnpO
azM8bFpxZjwmIW9YKlkzaSt2fm89JkBBcDZkP3YocXNeSkZ2dCZsMWJMdT02R2g0MEZ5NXlpaTh+
PTUkezI7dQp6YiM7RHwkSmVTKVB8R09VOCo+Vmg0bE1nd2omTzF4VHA4N0dDaiQre0xJPyZ5aTwz
TUliT2piK01pRHx+bWA4MyQKejtYVGQ/ZElYVWxjNkdgYyhlPFpeen5PYDxWPEwjTih9IVVINDtS
aHxrYys0fk56bWA9STNFZWxGPGVESDY2fmtjCnpePmR3dWV2fn5EZXZ+ayNISlIjaDBlRSVnbDUx
fnhKQkF8KDxFQ1M4dEQzQ1FgWXN2R1cmP3xzaTVqd01xJiR+UQp6K3d2VD4tdHVoNnI4ez5GN2lU
VkJXTHw3eFNpMi18SHkhRF5XSUxwYG5oZ2FnVV58QjhEZHw9aXQ8a0N9WXFMVD8KekE8T290cHwr
RjxHdGFJdGtYTUojciVzWitMMGklPj5pe3k9UllRNTsyYlVZbHYpSjdSezJBMFY5OGEwOGhUJCsk
Cnp2KmsyeFJ9ek8tUT9BKUMpUndHTyEyeTByWmNFRH13e0EyVmxhVnMtQ2p3PXhicVN1dklga05N
TFpDSX1OWW1xcAp6OSpzOyQyWSF0VHhsTCYqOT8wN2chNUdlTjEoR2xsQnl7Q19FIWJoN1lRfm5h
RFA2a3MtQDxUUyUkNmchbjZ0Z1gKeklCc2oqXl8xODBCeUhNdVpLU3Y+b28hYEdfWkAyM29QIU4m
eHZ+TiRwMjYtSjElaEU0PE1vIVNTVVNkMW1NMHlqCnopJTI4WVU4Y0lkMTkyUU80Vj5ueioydU8t
JHdoOCNYUDBxVmo4UFVVdntSUUBoaXEwNnA2M2BXakVoUCFJbFRgcAp6O1Q0N0JPJDFBcCstI14j
WF89QmEqJGxMIVR6USRIM2BjP0RDZytQUVlzWXxSKUN8MEhqZXkmTztZMDtQWmUqM3oKejF7dCsm
ejx+SGpFNERgfHhUPmZlSyk1WmxVWn5HTWhPMzlBMysxeXgoeWpWQGI1P14/PEVQWShjdj5Da0d7
Wkh1CnpIMWtHdl57e2xLZTE1XyVOIWJjbHBwTDQmUjFaUlp4MCgtb2RnKnotKGFwJXVHRio7Mkp1
SSExbW5ZN1JAeUZQdQp6WVhFMlhiSSZ3bThvOXJ9SDJjPXUpZj1DRl4zJlk+KU00cTF4cXQzJkFE
dENQQEdNT1VldUNiX0heQkVqelRmZlAKeiErWjRfYGZ0I0dqc0QkZkE/b1BjSi0hV0JTTU5fdiYm
PHgxY0RJPG4yaWhNbHAwV0Rmd29kSW1GVTk0R2RzQFg9Cno/I0ZAN0s5SmJ4Ymc7eWhpKD5LUVBI
aDxiLTd1SXhjSUpqREh2eDxgSEdVKVVUdDMhcEF5JE4jeG02MVBJdyE+Sgp6K0FuSi1QNzUqM2I4
c0JaUHZKUHZpUlp1bC04Iz94bSZaT15NMU08dWQ7NE5CZSp0IURIe1U7eGV0UFo0bTd9aXwKeklB
QEZWRkJrS2RpdXZuPi07KUxJM0dVKGxjd3pUeXY0NXVNRkJJITl2WSNJWVVvQTF0bUZKRXg3a0RE
cGA/ITd3CnpUSih8KFp4e3gjPyZxbD1pUDEmO1Nsa25uRjNMckcreilmdUMlRmljR31TPmFHT2F9
cmd+M042XzdCOFI8ND18Xwp6YlFaUndBeHdLKGd6P3lWczU4dHVUNmVHYEBZV3ZxeS1lV3gqOCl9
NSFRTmdYQEhVSUNLV3VCal4jR09RIU45YCsKenZefF8xUXlTTzdjWjxpVG9AbW9FR2Y0NjU7YElE
a0xifHY7JTxUQlRvZD9URT4jcXdkPEB2RUQ8QHZFRjxzKmVFCko8KytoOHt7cWZVZU1KQk8KCmxp
dGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMvbWV0YWRh
dGEuanNvbiBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFs
Q29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMvbWV0YWRhdGEuanNvbgpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNTE5
MmVmMWY0YzQyZThlMWQwZWY1ZGZhNjgwN2NmNzUzNTBmZmQ2Ci0tLSAvZGV2L251bGwKKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXN0TW9kYWxDb250YWluZXJD
b250cm9scy5tbG1vZGVsYy9tZXRhZGF0YS5qc29uCkBAIC0wLDAgKzEsNTQgQEAKK1sKKyAgewor
ICAgICJtZXRhZGF0YU91dHB1dFZlcnNpb24iIDogIjMuMCIsCisgICAgIm91dHB1dFNjaGVtYSIg
OiBbCisgICAgICB7CisgICAgICAgICJpc09wdGlvbmFsIiA6ICIwIiwKKyAgICAgICAgImZvcm1h
dHRlZFR5cGUiIDogIlN0cmluZyIsCisgICAgICAgICJ0eXBlIiA6ICJTdHJpbmciLAorICAgICAg
ICAibmFtZSIgOiAibGFiZWwiLAorICAgICAgICAic2hvcnREZXNjcmlwdGlvbiIgOiAiVGV4dCBs
YWJlbCIKKyAgICAgIH0KKyAgICBdLAorICAgICJtb2RlbFBhcmFtZXRlcnMiIDogWworCisgICAg
XSwKKyAgICAiYXV0aG9yIiA6ICJXZW5zb24gSHNpZWgiLAorICAgICJzcGVjaWZpY2F0aW9uVmVy
c2lvbiIgOiAzLAorICAgICJsaWNlbnNlIiA6ICJcLypcbiAqIENvcHlyaWdodCAoQykgMjAyMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0XG4gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnNcbiAqIGFyZSBtZXQ6XG4gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodFxuICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLlxuICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHRcbiAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGVcbiAqICAgIGRvY3VtZW50YXRpb24gYW5kXC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLlxuICpcbiAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJydcbiAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLFxuICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUlxuICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTXG4gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SXG4gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRlxuICogU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
XG4gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTlxuICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSlcbiAqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Zc
biAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS5cbiAqXC8iLAorICAgICJpc1VwZGF0
YWJsZSIgOiAiMCIsCisgICAgImF2YWlsYWJpbGl0eSIgOiB7CisgICAgICAibWFjT1MiIDogIjEw
LjE0IiwKKyAgICAgICJ0dk9TIiA6ICIxMi4wIiwKKyAgICAgICJ3YXRjaE9TIiA6ICI1LjAiLAor
ICAgICAgImlPUyIgOiAiMTIuMCIsCisgICAgICAibWFjQ2F0YWx5c3QiIDogIjEyLjAiCisgICAg
fSwKKyAgICAibW9kZWxUeXBlIiA6IHsKKyAgICAgICJuYW1lIiA6ICJNTE1vZGVsVHlwZV90ZXh0
Q2xhc3NpZmllciIKKyAgICB9LAorICAgICJpbnB1dFNjaGVtYSIgOiBbCisgICAgICB7CisgICAg
ICAgICJpc09wdGlvbmFsIiA6ICIwIiwKKyAgICAgICAgImZvcm1hdHRlZFR5cGUiIDogIlN0cmlu
ZyIsCisgICAgICAgICJ0eXBlIiA6ICJTdHJpbmciLAorICAgICAgICAibmFtZSIgOiAidGV4dCIs
CisgICAgICAgICJzaG9ydERlc2NyaXB0aW9uIiA6ICJJbnB1dCB0ZXh0IgorICAgICAgfQorICAg
IF0sCisgICAgImNsYXNzTGFiZWxzIiA6IFsKKyAgICAgICJuZWdhdGl2ZSIsCisgICAgICAicG9z
aXRpdmUiLAorICAgICAgIm5ldXRyYWwiLAorICAgICAgIm90aGVyIgorICAgIF0sCisgICAgImdl
bmVyYXRlZENsYXNzTmFtZSIgOiAiVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMiLAorICAgICJ1
c2VyRGVmaW5lZE1ldGFkYXRhIiA6IHsKKyAgICAgICJjb20uYXBwbGUuY3JlYXRlbWwudmVyc2lv
biIgOiAiMTMuMC4wIiwKKyAgICAgICJjb20uYXBwbGUuY3JlYXRlbWwuYXBwLnRhZyIgOiAiNzgu
NSIsCisgICAgICAiY29tLmFwcGxlLmNvcmVtbC5tb2RlbC5wcmV2aWV3LnR5cGUiIDogInRleHRD
bGFzc2lmaWVyIiwKKyAgICAgICJjb20uYXBwbGUuY3JlYXRlbWwuYXBwLnZlcnNpb24iIDogIjMu
MCIKKyAgICB9LAorICAgICJtZXRob2QiIDogInByZWRpY3QiCisgIH0KK10KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdENvY29hL1dLV2ViVmlld1RoZW1lQ29sb3IubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL1dLV2ViVmlld1RoZW1lQ29sb3IubW0KaW5kZXggM2RiZDg2MzAxNWFj
MmNmNGU3MTQwNTBkNzVkMGM5YzI1OWI2ZmJiNi4uZmMwYTczYzJkNmFmODgxNzhlYWIxMTcxZTQ0
NDU2ZTJhZWI2ZjRjOSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9XS1dlYlZpZXdUaGVtZUNvbG9yLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJWaWV3VGhlbWVDb2xvci5tbQpAQCAtMzgsOSArMzgsNiBA
QAogICAgIEVYUEVDVF9UUlVFKFthY3R1YWwgaXNLaW5kT2ZDbGFzczpbTlNTdHJpbmcgY2xhc3Nd
XSk7IFwKICAgICBFWFBFQ1RfV0tfU1RSRVEoZXhwZWN0ZWQsIChOU1N0cmluZyAqKWFjdHVhbCk7
CiAKLWNvbnN0ZXhwciBDR0Zsb2F0IHJlZENvbG9yQ29tcG9uZW50c1s0XSA9IHsgMSwgMCwgMCwg
MSB9OwotY29uc3RleHByIENHRmxvYXQgYmx1ZUNvbG9yQ29tcG9uZW50c1s0XSA9IHsgMCwgMCwg
MSwgMSB9OwotCiBURVNUKFdLV2ViVmlld1RoZW1lQ29sb3IsIE1ldGFFbGVtZW50VmFsaWROYW1l
QW5kQ29sb3IpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcg
YWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKZGlmZiAt
LWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJWaWV3VW5k
ZXJQYWdlQmFja2dyb3VuZENvbG9yLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9XS1dlYlZpZXdVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3IubW0KaW5kZXggOWE5MWNl
ZmQ3MzA5YzFkMWYzZDA1M2E4MDQzZDBjMDllYzY3YTUwMC4uYTFjYjdjNDAwYTQxZjcyZmJhYTcx
YzM0YzY4ZmQyM2Y4MjE1MTgwMyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9XS1dlYlZpZXdVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3IubW0KKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS1dlYlZpZXdVbmRlclBhZ2VC
YWNrZ3JvdW5kQ29sb3IubW0KQEAgLTM5LDkgKzM5LDYgQEAKICAgICBFWFBFQ1RfVFJVRShbYWN0
dWFsIGlzS2luZE9mQ2xhc3M6W05TU3RyaW5nIGNsYXNzXV0pOyBcCiAgICAgRVhQRUNUX1dLX1NU
UkVRKGV4cGVjdGVkLCAoTlNTdHJpbmcgKilhY3R1YWwpOwogCi1jb25zdGV4cHIgQ0dGbG9hdCBy
ZWRDb2xvckNvbXBvbmVudHNbNF0gPSB7IDEsIDAsIDAsIDEgfTsKLWNvbnN0ZXhwciBDR0Zsb2F0
IGJsdWVDb2xvckNvbXBvbmVudHNbNF0gPSB7IDAsIDAsIDEsIDEgfTsKLQogc3RhdGljIFJldGFp
blB0cjxDR0NvbG9yPiBkZWZhdWx0QmFja2dyb3VuZENvbG9yKCkKIHsKICNpZiBIQVZFKE9TX0RB
UktfTU9ERV9TVVBQT1JUKSAmJiBQTEFURk9STShNQUMpCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYlByb2Nlc3NUZXJtaW5hdGUubW0gYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYlByb2Nlc3NUZXJtaW5hdGUubW0K
aW5kZXggNTk1NDJlYmJhMTZlZjhkNDBjMWVmMjBhNTNiNmNiNWIyZDNmNjQyMi4uODUxMTg4OGNk
ZmFkYmM0OTMzOTg2YTJlZTRlZWRiMjkzYTAwNzIyNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJQcm9jZXNzVGVybWluYXRlLm1tCisrKyBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV2ViUHJvY2Vzc1Rlcm1pbmF0ZS5t
bQpAQCAtMzIsNiArMzIsNyBAQAogI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRl
Lmg+CiAjaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0
L1dlYktpdC5oPgorI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiBURVNUKFdlYktpdCwgV2Vi
UHJvY2Vzc1Rlcm1pbmF0ZSkKIHsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29j
b2EvVGVzdENvY29hLmggYi9Ub29scy9UZXN0V2ViS2l0QVBJL2NvY29hL1Rlc3RDb2NvYS5oCmlu
ZGV4IGVlYWRjYmI5YjMwY2ViMDk0MGFkMzMwODM2NzRiN2QyNWE0NjM2ZGQuLmE4NjljNmE1ODU4
NWM0NWU3M2Q0MTJiN2NjNjEyYzVkZWM0ZDg2YjggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvY29jb2EvVGVzdENvY29hLmgKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9U
ZXN0Q29jb2EuaApAQCAtNTAsNiArNTAsOSBAQCBzdGF0aWMgaW5saW5lIDo6dGVzdGluZzo6QXNz
ZXJ0aW9uUmVzdWx0IGFzc2VydE5TT2JqZWN0c0FyZUVxdWFsKGNvbnN0IGNoYXIqIGV4cAogc3Rk
Ojpvc3RyZWFtJiBvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSYsIGNvbnN0IENHUmVjdCYpOwogYm9v
bCBvcGVyYXRvcj09KGNvbnN0IENHUmVjdCYsIGNvbnN0IENHUmVjdCYpOwogCitjb25zdGV4cHIg
Q0dGbG9hdCByZWRDb2xvckNvbXBvbmVudHNbNF0gPSB7IDEsIDAsIDAsIDEgfTsKK2NvbnN0ZXhw
ciBDR0Zsb2F0IGJsdWVDb2xvckNvbXBvbmVudHNbNF0gPSB7IDAsIDAsIDEsIDEgfTsKKwogI2Vu
ZGlmCiAKICNpZiBQTEFURk9STShNQUMpICYmICFkZWZpbmVkKE5TR0VPTUVUUllfVFlQRVNfU0FN
RV9BU19DR0dFT01FVFJZX1RZUEVTKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447861</attachid>
            <date>2021-12-22 22:23:21 -0800</date>
            <delta_ts>2021-12-23 09:58:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234610-20211222222319.patch</filename>
            <type>text/plain</type>
            <size>41163</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MzIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGVkZWQyY2ZkODUyYWJl
NWE1OTQ1NGNmMmM2NDVlNmVlMzI0YTFkNy4uYWVjYzYxZGUzZTk5NTkxMWYyOGE0YjdhZjE3YmZk
NjM0ZGFkM2VhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDIxLTEyLTIyICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBBUEkgdGVz
dGluZyBzdXBwb3J0IGZvciBtb2RhbCBjb250YWluZXIgb2JzZXJ2YXRpb24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDYxMAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBuZXcg
QVBJIHRlc3RzIGZvciBtb2RhbCBjb250YWluZXIgb2JzZXJ2YXRpb24gU1BJLiBTZWUgVG9vbHMv
Q2hhbmdlTG9nIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICAgICAgVGVzdHM6ICBNb2RhbENvbnRh
aW5lck9ic2VydmF0aW9uLkhpZGVBbmRBbGxvd01vZGFsQ29udGFpbmVyCisgICAgICAgICAgICAg
ICAgTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbi5IaWRlQW5kRGlzYWxsb3dNb2RhbENvbnRhaW5l
cgorICAgICAgICAgICAgICAgIE1vZGFsQ29udGFpbmVyT2JzZXJ2YXRpb24uSGlkZUFuZElnbm9y
ZU1vZGFsQ29udGFpbmVyCisgICAgICAgICAgICAgICAgTW9kYWxDb250YWluZXJPYnNlcnZhdGlv
bi5TaG93TW9kYWxDb250YWluZXIKKworICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgorICAgICAg
ICAqIHBhZ2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpN
b2RhbENvbnRhaW5lck9ic2VydmVyOjp1cGRhdGVNb2RhbENvbnRhaW5lcklmTmVlZGVkKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1vZGFsQ29udGFpbmVyT2JzZXJ2ZXI6OnNob3VsZEhpZGUpOiBEZWxl
dGVkLgorCisgICAgICAgIERyaXZlLWJ5IGFkanVzdG1lbnQ6IG1ha2UgYHNob3VsZEhpZGUoKWAg
YW4gaW5saW5lIG1ldGhvZCwgYW5kIG1hcmsgaXQgYGNvbnN0YC4KKworICAgICAgICAqIHBhZ2Uv
TW9kYWxDb250YWluZXJPYnNlcnZlci5oOgorICAgICAgICAoV2ViQ29yZTo6TW9kYWxDb250YWlu
ZXJPYnNlcnZlcjo6b3ZlcnJpZGVTZWFyY2hUZXJtRm9yVGVzdGluZyk6CisKKyAgICAgICAgQWRk
IGEgdGVzdGluZy1vbmx5IG1ldGhvZCB0byBvdmVycmlkZSB0aGUgc2VhcmNoIHRlcm0gdXNlZCBm
b3IgbW9kYWwgY29udGFpbmVyIG9ic2VydmF0aW9uOyBpZiBzZXQsIHdlIGlnbm9yZQorICAgICAg
ICB0aGUgc2VhcmNoIHRlcm0gdmVuZGVkIGJ5IHRoZSBjaHJvbWUgY2xpZW50LCBhbmQgaW5zdGVh
ZCB1c2UgdGhpcyBvdmVycmlkZS4KKworICAgICAgICAoV2ViQ29yZTo6TW9kYWxDb250YWluZXJP
YnNlcnZlcjo6c2hvdWxkSGlkZSBjb25zdCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpvdmVycmlkZU1vZGFsQ29udGFpbmVy
U2VhcmNoVGVybUZvclRlc3RpbmcpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisK
KyAgICAgICAgQWRkIGFuIGBpbnRlcm5hbHNgIGhvb2sgdG8gb3ZlcnJpZGUgdGhlIG1vZGFsIGNv
bnRhaW5lciBzZWFyY2ggdGVybS4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoK
KwogMjAyMS0xMi0yMSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBBZGQgc3VwcG9ydCBmb3IgYSBVSSBkZWxlZ2F0ZSBtZXRob2QgdG8gZGVjaWRlIGhv
dyB0byBoYW5kbGUgZGV0ZWN0ZWQgbW9kYWwgY29udGFpbmVycwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApp
bmRleCBlNzMyYjJhZGE4NTBiYjcyNzlkMDdmMDk1MDk1ZTNkM2U3MjE0NmFlLi44MDVkMGNiNTZh
NDBhOTJmYWQyMmI3N2Q3ZWRmYzE2YWQ2NTU0ZjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAt
MTY2Myw3ICsxNjYzLDcgQEAgcHVibGljOgogCiAgICAgVVJMIGZhbGxiYWNrQmFzZVVSTCgpIGNv
bnN0OwogCi0gICAgTW9kYWxDb250YWluZXJPYnNlcnZlciogbW9kYWxDb250YWluZXJPYnNlcnZl
cigpOworICAgIFdFQkNPUkVfRVhQT1JUIE1vZGFsQ29udGFpbmVyT2JzZXJ2ZXIqIG1vZGFsQ29u
dGFpbmVyT2JzZXJ2ZXIoKTsKICAgICBNb2RhbENvbnRhaW5lck9ic2VydmVyKiBtb2RhbENvbnRh
aW5lck9ic2VydmVySWZFeGlzdHMoKSBjb25zdDsKIAogcHJvdGVjdGVkOgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Nb2RhbENvbnRhaW5lck9ic2VydmVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5jcHAKaW5kZXggODY3YjNiZDVjMTI2
YWFlMGJhMjMwOTNlZjE2MmZjMWUwY2VmYzViMS4uZjBjZDU0ZTE4ZDdmMGE3NzEwZDVhMGE3Y2I4
ZDkxNTM0MGYwM2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb2RhbENvbnRh
aW5lck9ic2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vZGFsQ29udGFpbmVy
T2JzZXJ2ZXIuY3BwCkBAIC0xMjEsMTEgKzEyMSwxNiBAQCB2b2lkIE1vZGFsQ29udGFpbmVyT2Jz
ZXJ2ZXI6OnVwZGF0ZU1vZGFsQ29udGFpbmVySWZOZWVkZWQoY29uc3QgRnJhbWVWaWV3JiB2aWV3
KQogICAgIGlmICghdmlldy5oYXNWaWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0cygpKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBhdXRvKiBwYWdlID0gdmlldy5mcmFtZSgpLnBhZ2UoKTsKLSAgICBp
ZiAoIXBhZ2UpCi0gICAgICAgIHJldHVybjsKKyAgICBhdXRvIHNlYXJjaFRlcm0gPSAoWyZdKCkg
LT4gQXRvbVN0cmluZyB7CisgICAgICAgIGlmIChVTkxJS0VMWSghbV9vdmVycmlkZVNlYXJjaFRl
cm1Gb3JUZXN0aW5nLmlzTnVsbCgpKSkKKyAgICAgICAgICAgIHJldHVybiBtX292ZXJyaWRlU2Vh
cmNoVGVybUZvclRlc3Rpbmc7CisKKyAgICAgICAgaWYgKGF1dG8qIHBhZ2UgPSB2aWV3LmZyYW1l
KCkucGFnZSgpKQorICAgICAgICAgICAgcmV0dXJuIHBhZ2UtPmNocm9tZSgpLmNsaWVudCgpLnNl
YXJjaFN0cmluZ0Zvck1vZGFsQ29udGFpbmVyT2JzZXJ2ZXIoKTsKKworICAgICAgICByZXR1cm4g
bnVsbEF0b20oKTsKKyAgICB9KSgpOwogCi0gICAgYXV0byYgc2VhcmNoVGVybSA9IHBhZ2UtPmNo
cm9tZSgpLmNsaWVudCgpLnNlYXJjaFN0cmluZ0Zvck1vZGFsQ29udGFpbmVyT2JzZXJ2ZXIoKTsK
ICAgICBpZiAoc2VhcmNoVGVybS5pc051bGwoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC00MzYs
OSArNDQxLDQgQEAgc3RkOjpwYWlyPFZlY3RvcjxXZWFrUHRyPEhUTUxFbGVtZW50Pj4sIFZlY3Rv
cjxTdHJpbmc+PiBNb2RhbENvbnRhaW5lck9ic2VydmVyOjoKICAgICByZXR1cm4geyBXVEZNb3Zl
KGNsYXNzaWZpYWJsZUNvbnRyb2xzKSwgV1RGTW92ZShjb250cm9sVGV4dHNUb0NsYXNzaWZ5KSB9
OwogfQogCi1ib29sIE1vZGFsQ29udGFpbmVyT2JzZXJ2ZXI6OnNob3VsZEhpZGUoY29uc3QgRWxl
bWVudCYgZWxlbWVudCkKLXsKLSAgICByZXR1cm4gJmVsZW1lbnQgPT0gbV9jb250YWluZXIgJiYg
IW1fY29sbGVjdGluZ0NsaWNrYWJsZUVsZW1lbnRzOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vZGFsQ29udGFpbmVyT2JzZXJ2
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5oCmluZGV4
IGE3MzU2ZmVmMmZjNWQxMWJkODA0MGJmMjlhYTk4Y2E2YzUyNDFlNjMuLjhlZjVlNzZjODNhMGM4
Njg0MTA4ZTFkZWEzYWU0MWEzZDA1ZWNkYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW9k
YWxDb250YWluZXJPYnNlcnZlci5oCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSA8d3RmL1Zl
Y3Rvci5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9XZWFr
UHRyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbVN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00Nyw5ICs0OCwxMSBA
QCBwdWJsaWM6CiAgICAgTW9kYWxDb250YWluZXJPYnNlcnZlcigpOwogICAgIH5Nb2RhbENvbnRh
aW5lck9ic2VydmVyKCk7CiAKLSAgICBib29sIHNob3VsZEhpZGUoY29uc3QgRWxlbWVudCYpOwor
ICAgIGlubGluZSBib29sIHNob3VsZEhpZGUoY29uc3QgRWxlbWVudCYpIGNvbnN0OwogICAgIHZv
aWQgdXBkYXRlTW9kYWxDb250YWluZXJJZk5lZWRlZChjb25zdCBGcmFtZVZpZXcmKTsKIAorICAg
IGlubGluZSB2b2lkIG92ZXJyaWRlU2VhcmNoVGVybUZvclRlc3RpbmcoY29uc3QgU3RyaW5nJik7
CisKIHByaXZhdGU6CiAgICAgdm9pZCBzY2hlZHVsZUNsaWNrYWJsZUVsZW1lbnRDb2xsZWN0aW9u
KCk7CiAgICAgdm9pZCBjb2xsZWN0Q2xpY2thYmxlRWxlbWVudHNUaW1lckZpcmVkKCk7CkBAIC01
OSw5ICs2MiwyMCBAQCBwcml2YXRlOgogCiAgICAgV2Vha0hhc2hTZXQ8RWxlbWVudD4gbV9lbGVt
ZW50c1RvSWdub3JlV2hlblNlYXJjaGluZzsKICAgICBXZWFrUHRyPEVsZW1lbnQ+IG1fY29udGFp
bmVyOworICAgIEF0b21TdHJpbmcgbV9vdmVycmlkZVNlYXJjaFRlcm1Gb3JUZXN0aW5nOwogICAg
IFRpbWVyIG1fY29sbGVjdENsaWNrYWJsZUVsZW1lbnRzVGltZXI7CiAgICAgYm9vbCBtX2NvbGxl
Y3RpbmdDbGlja2FibGVFbGVtZW50cyB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2hhc0F0dGVtcHRl
ZFRvRnVsZmlsbFBvbGljeSB7IGZhbHNlIH07CiB9OwogCitpbmxpbmUgdm9pZCBNb2RhbENvbnRh
aW5lck9ic2VydmVyOjpvdmVycmlkZVNlYXJjaFRlcm1Gb3JUZXN0aW5nKGNvbnN0IFN0cmluZyYg
c2VhcmNoVGVybSkKK3sKKyAgICBtX292ZXJyaWRlU2VhcmNoVGVybUZvclRlc3RpbmcgPSBzZWFy
Y2hUZXJtOworfQorCitpbmxpbmUgYm9vbCBNb2RhbENvbnRhaW5lck9ic2VydmVyOjpzaG91bGRI
aWRlKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29udGFp
bmVyID09ICZlbGVtZW50ICYmICFtX2NvbGxlY3RpbmdDbGlja2FibGVFbGVtZW50czsKK30KKwog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmlu
ZGV4IGQ4ZDcxNGFjZjI1NWNhNzFkZTgyZTkwODI3ODljMzNkYzk5OGE3NGEuLjNjMjc0YzUwNjIz
MDhlZWNlMTVkN2ZhZjdkZTE1NzIyNThjZDRhNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAKQEAgLTE0OSw2ICsxNDksNyBAQAogI2luY2x1ZGUgIk1vY2tMaWJXZWJSVENQZWVy
Q29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk1vY2tQYWdlT3ZlcmxheS5oIgogI2luY2x1ZGUgIk1v
Y2tQYWdlT3ZlcmxheUNsaWVudC5oIgorI2luY2x1ZGUgIk1vZGFsQ29udGFpbmVyT2JzZXJ2ZXIu
aCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCZWFjb24uaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JNZWRp
YURldmljZXMuaCIKICNpbmNsdWRlICJOZXR3b3JrTG9hZEluZm9ybWF0aW9uLmgiCkBAIC02NjI0
LDQgKzY2MjUsMTAgQEAgUmVmUHRyPFB1c2hTdWJzY3JpcHRpb24+IEludGVybmFsczo6Y3JlYXRl
UHVzaFN1YnNjcmlwdGlvbihjb25zdCBTdHJpbmcmIGVuZHBvaW4KIH0KICNlbmRpZgogCit2b2lk
IEludGVybmFsczo6b3ZlcnJpZGVNb2RhbENvbnRhaW5lclNlYXJjaFRlcm1Gb3JUZXN0aW5nKGNv
bnN0IFN0cmluZyYgdGVybSkKK3sKKyAgICBpZiAoYXV0byBvYnNlcnZlciA9IGNvbnRleHREb2N1
bWVudCgpLT5tb2RhbENvbnRhaW5lck9ic2VydmVyKCkpCisgICAgICAgIG9ic2VydmVyLT5vdmVy
cmlkZVNlYXJjaFRlcm1Gb3JUZXN0aW5nKHRlcm0pOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCBmYmMxMjE5NTFlYTM5ZGQxNDhk
NzVhZTIzNzc2NDg4MGYwYjNlMWQ1Li45MmM1N2NjZjI5NGVmOTFlNmFhNGUwY2ZjNmQ4Y2FkY2Zm
M2M2YTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTEyMjgsNiArMTIyOCw4
IEBAIHB1YmxpYzoKICAgICBSZWZQdHI8UHVzaFN1YnNjcmlwdGlvbj4gY3JlYXRlUHVzaFN1YnNj
cmlwdGlvbihjb25zdCBTdHJpbmcmIGVuZHBvaW50LCBzdGQ6Om9wdGlvbmFsPEVwb2NoVGltZVN0
YW1wPiBleHBpcmF0aW9uVGltZSwgY29uc3QgQXJyYXlCdWZmZXImIHNlcnZlclZBUElEUHVibGlj
S2V5LCBjb25zdCBBcnJheUJ1ZmZlciYgY2xpZW50RUNESFB1YmxpY0tleSwgY29uc3QgQXJyYXlC
dWZmZXImIGF1dGgpOwogI2VuZGlmCiAKKyAgICB2b2lkIG92ZXJyaWRlTW9kYWxDb250YWluZXJT
ZWFyY2hUZXJtRm9yVGVzdGluZyhjb25zdCBTdHJpbmcmIHRlcm0pOworCiBwcml2YXRlOgogICAg
IGV4cGxpY2l0IEludGVybmFscyhEb2N1bWVudCYpOwogICAgIERvY3VtZW50KiBjb250ZXh0RG9j
dW1lbnQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCAyMzRj
MjM2MjZjMDRlMWZjZDJhMmU1Y2MyYTQ0OTUxMmIzNmVmYWRmLi5iNjhlOGViNmJmM2MyZGVmZDU1
NDVlNDE1YTAyNWYwMzYyNjBlNmEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CkBAIC0xMDk3LDQgKzEwOTcsNiBAQCBlbnVtIEhFVkNQYXJhbWV0ZXJDb2RlYyB7CiAgICAgdW5k
ZWZpbmVkIHJldGFpblRleHRJdGVyYXRvckZvckRvY3VtZW50Q29udGVudCgpOwogCiAgICAgW0Nv
bmRpdGlvbmFsPVNFUlZJQ0VfV09SS0VSXSBQdXNoU3Vic2NyaXB0aW9uIGNyZWF0ZVB1c2hTdWJz
Y3JpcHRpb24oVVNWU3RyaW5nIGVuZHBvaW50LCBFcG9jaFRpbWVTdGFtcD8gZXhwaXJhdGlvblRp
bWUsIEFycmF5QnVmZmVyIHNlcnZlclZBUElEUHVibGljS2V5LCBBcnJheUJ1ZmZlciBjbGllbnRF
Q0RIUHVibGljS2V5LCBBcnJheUJ1ZmZlciBhdXRoKTsKKworICAgIHVuZGVmaW5lZCBvdmVycmlk
ZU1vZGFsQ29udGFpbmVyU2VhcmNoVGVybUZvclRlc3RpbmcoRE9NU3RyaW5nIHRlcm0pOwogfTsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3YmMz
MzlhYjA5NDE0YTk3NzIzY2IxYzcxMmM4ZDI1NDY1MGEwZDEzLi5hMTAwMjZhNzhkM2UzYTU2ODMy
YWQwNjNiOTFiZTc3YjEzZmMzNDNjIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTcgQEAKKzIwMjEtMTItMjIgIFdlbnNvbiBIc2ll
aCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIEFQSSB0ZXN0aW5nIHN1
cHBvcnQgZm9yIG1vZGFsIGNvbnRhaW5lciBvYnNlcnZhdGlvbgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NjEwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIG5ldyBBUEkgdGVz
dHMgdGhhdCBleGVyY2lzZSB0aGUgbW9kYWwgY29udGFpbmVyIG9ic2VydmF0aW9uIHBvbGljeSBp
biB3ZWJwYWdlIHByZWZlcmVuY2VzLCBhcworICAgICAgICB3ZWxsIGFzIHRoZSBVSSBkZWxlZ2F0
ZSBTUEkgbWV0aG9kIGZvciBkZWNpZGluZyBwb2xpY2llcyBpbiBkZXRlY3RlZCBtb2RhbCBjb250
YWluZXJzLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9Tb3VyY2VzQ29jb2EudHh0OgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21vZGFsLWNvbnRhaW5l
ci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L0FwcGxpY2F0aW9uTWFuaWZlc3QubW06CisKKyAgICAgICAgTm9uLXVuaWZpZWQtc291cmNlIGJ1
aWxkIGZpeCAoc2VlIGJlbG93KS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbi5tbTogQWRkZWQuCisgICAgICAgICgt
W05TQnVuZGxlIHN3aXp6bGVkX1VSTEZvclJlc291cmNlOndpdGhFeHRlbnNpb246XSk6CisgICAg
ICAgIChUZXN0V2ViS2l0QVBJOjpDbGFzc2lmaWVyTW9kZWxTd2l6emxlcjo6Q2xhc3NpZmllck1v
ZGVsU3dpenpsZXIpOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6Q2xhc3NpZmllck1vZGVsU3dp
enpsZXI6On5DbGFzc2lmaWVyTW9kZWxTd2l6emxlcik6CisgICAgICAgICgtW01vZGFsQ29udGFp
bmVyV2ViVmlldyBpbml0V2l0aEZyYW1lOmNvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW01v
ZGFsQ29udGFpbmVyV2ViVmlldyBsb2FkQnVuZGxlUGFnZTphbmREZWNpZGVQb2xpY3k6XSk6Cisg
ICAgICAgICgtW01vZGFsQ29udGFpbmVyV2ViVmlldyBfd2ViVmlldzpkZWNpZGVQb2xpY3lGb3JN
b2RhbENvbnRhaW5lcjpkZWNpc2lvbkhhbmRsZXI6XSk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJ
OjpjcmVhdGVNb2RhbENvbnRhaW5lcldlYlZpZXcpOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6
VEVTVCk6CisKKyAgICAgICAgQWRkIEFQSSB0ZXN0cyB0byBleGVyY2lzZSBlYWNoIG9mIHRoZSA0
IG1vZGFsIGNvbnRhaW5lciBwb2xpY3kgZGVjaXNpb25zIGluIGEgc2ltcGxlIG1vZGFsIGNvbnRh
aW5lci4gVHdvIGtleQorICAgICAgICBwaWVjZXMgYXJlIG5lZWRlZCBpbiBvcmRlciB0byBzaW11
bGF0ZSB0aGUgZW5kLXRvLWVuZCBmbG93IGZvciBkZXRlY3RpbmcgYW5kIGRlY2lkaW5nIHBvbGlj
aWVzIGZvciBtb2RhbAorICAgICAgICBjb250YWluZXJzOgorCisgICAgICAgIDEuICAgICAgQWRk
IGBpbnRlcm5hbHMub3ZlcnJpZGVNb2RhbENvbnRhaW5lclNlYXJjaFRlcm1Gb3JUZXN0aW5nKClg
LCB3aGljaCBhbGxvd3Mgc2NyaXB0ICh0aHJvdWdoIHRoZQorICAgICAgICAgICAgICAgIGBpbnRl
cm5hbHNgIHRlc3RpbmcgcGx1Z2luKSB0byBzZXQgTW9kYWxDb250YWluZXJPYnNlcnZlcidzIHNl
YXJjaCB0ZXJtLgorCisgICAgICAgIDIuICAgICAgU3dpenpsZSBvdXQgYC1bTlNCdW5kbGUgVVJM
Rm9yUmVzb3VyY2U6d2l0aEV4dGVuc2lvbjpdYCB0byByZXR1cm4gdGhlIGZpbGUgVVJMIHRvIFRl
c3RXZWJLaXRBUEkncworICAgICAgICAgICAgICAgIGBUZXN0TW9kYWxDb250YWluZXJDb250cm9s
cy5tbG1vZGVsY2AsIGluc3RlYWQgb2YgdGhlIHJlYWwgQ29yZU1MIG1vZGVsLgorCisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXN0TW9kYWxDb250YWluZXJDb250
cm9scy5tbG1vZGVsYy9hbmFseXRpY3MvY29yZW1sZGF0YS5iaW46IEFkZGVkLgorICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29udHJv
bHMubWxtb2RlbGMvY29yZW1sZGF0YS5iaW46IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvTW9kYWxDb250YWluZXJPYnNlcnZlci5oLgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMvbWV0YWRh
dGEuanNvbjogQWRkZWQuCisKKyAgICAgICAgQWRkIGEgbW9jayBDb3JlTUwgbW9kZWwgdGhhdCdz
IHVzZWQgdG8gc2ltdWxhdGUgY2xhc3NpZmllciByZXN1bHRzIGluIFdlYktpdDo6TW9kYWxDb250
YWluZXJDb250cm9sQ2xhc3NpZmllci4KKyAgICAgICAgU2VlIGFib3ZlIGZvciBtb3JlIGRldGFp
bHMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dLV2ViVmll
d1RoZW1lQ29sb3IubW06CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9XS1dlYlZpZXdVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3IubW06CisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJQcm9jZXNzVGVybWluYXRlLm1tOgorCisgICAg
ICAgIE1vcmUgbm9uLXVuaWZpZWQtc291cmNlIGJ1aWxkIGZpeGVzOiBob2lzdCB0aGUgZGVmaW5p
dGlvbnMgb2YgYHJlZENvbG9yQ29tcG9uZW50c2AgYW5kIGBibHVlQ29sb3JDb21wb25lbnRzYAor
ICAgICAgICBpbnRvIHRoZSBgVVNFKENHKWAgcGFydCBvZiBUZXN0Q29jb2EuaCwgYW5kIHRoZW4g
aW1wb3J0IFRlc3RDb2NvYS5oIGluIHRoZXNlIGZpbGVzLiBUaGlzIGF2b2lkcyBidWlsZCBmYWls
dXJlcworICAgICAgICBkdWUgdG8gc3ltYm9sIHJlZGVmaW5pdGlvbiB3aGVuIHdlIGFkZCB0aGUg
bmV3IHRlc3QgZmlsZSBhYm92ZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvY29jb2EvVGVz
dENvY29hLmg6CisKIDIwMjEtMTItMjEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KIAogICAgICAgICBBU1NFUlQgTk9UIFJFQUNIRUQgdW5kZXIgV2ViS2l0OjpE
YWVtb246OkNvbm5lY3Rpb25Ub01hY2hTZXJ2aWNlIHNlZW4gd2l0aCBUZXN0V2ViS2l0QVBJLldl
YlB1c2hELkJhc2ljQ29tbXVuaWNhdGlvbiBhbmQgUGVybWlzc2lvbk1hbmFnZW1lbnQKZGlmZiAt
LWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvU291cmNlc0NvY29hLnR4dCBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvU291cmNlc0NvY29hLnR4dAppbmRleCA0OWZiOTI2NmRiNDM2MzYxY2Y0MzNiYjQz
MDkyNTU3ZjE3ZGVjY2M1Li4yNTcwZTZiNTViYjg0YzNhYjIyNjQ2YjJlZjYyOWMzMmY4ODYyY2I0
IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1NvdXJjZXNDb2NvYS50eHQKKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9Tb3VyY2VzQ29jb2EudHh0CkBAIC0xNTksNiArMTU5LDcgQEAg
VGVzdHMvV2ViS2l0Q29jb2EvTWVkaWFTZXNzaW9uLm1tCiBUZXN0cy9XZWJLaXRDb2NvYS9NZWRp
YVR5cGUubW0KIFRlc3RzL1dlYktpdENvY29hL01lc3NhZ2VQb3J0UHJvdmlkZXJzLm1tCiBUZXN0
cy9XZWJLaXRDb2NvYS9Nb2RhbEFsZXJ0cy5tbQorVGVzdHMvV2ViS2l0Q29jb2EvTW9kYWxDb250
YWluZXJPYnNlcnZhdGlvbi5tbQogVGVzdHMvV2ViS2l0Q29jb2EvTlNBdHRyaWJ1dGVkU3RyaW5n
V2ViS2l0QWRkaXRpb25zLm1tCiBUZXN0cy9XZWJLaXRDb2NvYS9OU0ZpbGVNYW5hZ2VyRXh0cmFz
Lm1tCiBUZXN0cy9XZWJLaXRDb2NvYS9OYXZpZ2F0aW9uLm1tCmRpZmYgLS1naXQgYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDg2YTZlNWU3ZDE5YTM2MzRiNzhkNzg1MWYxYzU0OGE3NzYxODE4M2UuLmI3ZmFlNjJk
MmYxMGIxMDgyZmNlMzE3NjdmNWMzZTM2MTNmY2MxNTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0xMDQ5LDYgKzEwNDksNyBAQAogCQlGNDVEMzg5MTIxNUE3QjRCMDAyQTI5NzkgLyogVGVz
dEluc3BlY3RvckJhci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEY0NUQzODkwMjE1QTdCNEIwMDJBMjk3OSAvKiBUZXN0SW5zcGVjdG9yQmFyLm1tICov
OyB9OwogCQlGNDVFMTU3MzIxMTJDRTI5MDAzMDdFODIgLyogS2V5Ym9hcmRJbnB1dFRlc3RzSU9T
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ1RTE1
NzIyMTEyQ0UyOTAwMzA3RTgyIC8qIEtleWJvYXJkSW5wdXRUZXN0c0lPUy5tbSAqLzsgfTsKIAkJ
RjQ1RTE1NzYyMTEyQ0U2MjAwMzA3RTgyIC8qIFRlc3RJbnB1dERlbGVnYXRlLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ1RTE1NzUyMTEyQ0U2MjAw
MzA3RTgyIC8qIFRlc3RJbnB1dERlbGVnYXRlLm1tICovOyB9OworCQlGNDVFQjYwNDI3NzM5RjM0
MDAzNTcxQUUgLyogVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMgaW4gQ29weSBS
ZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ1RUI2MDMyNzcz
OUYyQjAwMzU3MUFFIC8qIFRlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1sbW9kZWxjICovOyB9
OwogCQlGNDYwRjY1NzI2MTExNkVBMDA2NEYyQjYgLyogSW5qZWN0ZWRCdW5kbGVIaXRUZXN0Lm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ2MEY2NTYy
NjExMTZFQTAwNjRGMkI2IC8qIEluamVjdGVkQnVuZGxlSGl0VGVzdC5tbSAqLzsgfTsKIAkJRjQ2
MEY2NUIyNjExMTk1ODAwNjRGMkI2IC8qIEluamVjdGVkQnVuZGxlSGl0VGVzdFBsdWdJbi5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NjBGNjU5MjYx
MTE3RTcwMDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVnSW4ubW0gKi87IH07CiAJ
CUY0NjBGNjY5MjYxMjYzMzcwMDY0RjJCNiAvKiBzaW1wbGUtcmVzcG9uc2l2ZS1wYWdlLmh0bWwg
aW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ2
MEY2NjgyNjEyNjJDNzAwNjRGMkI2IC8qIHNpbXBsZS1yZXNwb25zaXZlLXBhZ2UuaHRtbCAqLzsg
fTsKQEAgLTExMDMsNiArMTEwNCw3IEBACiAJCUY0RTBBMkI4MjEyMjg0NzQwMEFGN0M3RiAvKiBU
ZXN0RmlsZVByb21pc2VSZWNlaXZlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEY0RTBBMkI3MjEyMjg0NzQwMEFGN0M3RiAvKiBUZXN0RmlsZVByb21p
c2VSZWNlaXZlci5tbSAqLzsgfTsKIAkJRjRFM0Q4MDgyMEY3MEJCOTAwN0I1OEM1IC8qIHNpZ25p
ZmljYW50LXRleHQtbWlsZXN0b25lLWFydGljbGUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEUzRDgwNzIwRjcwOEU0MDA3QjU4QzUg
Lyogc2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNsZS5odG1sICovOyB9OwogCQlGNEU3
QTY2MzI3MjIyQ0E5MDBFNzREMzYgLyogY2FudmFzLWltYWdlLWRhdGEuaHRtbCBpbiBDb3B5IFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEU3QTY2MjI3MjIy
QkIxMDBFNzREMzYgLyogY2FudmFzLWltYWdlLWRhdGEuaHRtbCAqLzsgfTsKKwkJRjRFODZGOEEy
NzczREMxQjAwMzg1OUE2IC8qIG1vZGFsLWNvbnRhaW5lci5odG1sIGluIENvcHkgUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0RTg2Rjg5Mjc3M0RDMDYwMDM4
NTlBNiAvKiBtb2RhbC1jb250YWluZXIuaHRtbCAqLzsgfTsKIAkJRjRFQzgwOTQyNjBEMzA1NDAw
MTAzMTFEIC8qIHNpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRFQzgwOTMyNjBEMkU2MjAwMTAzMTFE
IC8qIHNpbXBsZS1pbWFnZS1vdmVybGF5Lmh0bWwgKi87IH07CiAJCUY0RjEzNzkyMUQ5QjY4M0Uw
MDJCRUM1NyAvKiBsYXJnZS12aWRlby10ZXN0LW5vdy1wbGF5aW5nLmh0bWwgaW4gQ29weSBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRGMTM3OTExRDlCNjgz
MjAwMkJFQzU3IC8qIGxhcmdlLXZpZGVvLXRlc3Qtbm93LXBsYXlpbmcuaHRtbCAqLzsgfTsKIAkJ
RjRGNDA1QkMxRDRDMEQxQzAwN0E5NzA3IC8qIGZ1bGwtc2l6ZS1hdXRvcGxheWluZy12aWRlby13
aXRoLWF1ZGlvLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRjRGNDA1QkExRDRDMENGODAwN0E5NzA3IC8qIGZ1bGwtc2l6ZS1hdXRvcGxh
eWluZy12aWRlby13aXRoLWF1ZGlvLmh0bWwgKi87IH07CkBAIC0xNDcyLDYgKzE0NzQsNyBAQAog
CQkJCTUxN0U3RTA0MTUxMTE5QzEwMEQwQjAwOCAvKiBNZW1vcnlDYWNoZVBydW5lV2l0aGluUmVz
b3VyY2VMb2FkRGVsZWdhdGUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk0OTcxQjEy
MDI0NTNBODhDMDA5Njk5NEQgLyogbWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RTYW1lU2l0
ZVN0cmljdFRhYmxlU2NoZW1hLmRiIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTUxQ0QxQzcy
MUIzOEQ0ODQwMDE0MkNBNSAvKiBtb2RhbC1hbGVydHMtaW4tbmV3LWFib3V0LWJsYW5rLXdpbmRv
dy5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAorCQkJCUY0RTg2RjhBMjc3M0RDMUIwMDM4NTlB
NiAvKiBtb2RhbC1jb250YWluZXIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk3QTE0
NThGQzFBRDVDMDcwMDBFMDY3NzIgLyogbW91c2UtYnV0dG9uLWxpc3RlbmVyLmh0bWwgaW4gQ29w
eSBSZXNvdXJjZXMgKi8sCiAJCQkJMzNFNzlFMDYxMzdCNUZEOTAwRTMyRDk5IC8qIG1vdXNlLW1v
dmUtbGlzdGVuZXIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk5QjU5RjEyQTIwMzQw
ODZGMDA5RTYzRDUgLyogbXNvLWxpc3QtY29tcGF0LW1vZGUuaHRtbCBpbiBDb3B5IFJlc291cmNl
cyAqLywKQEAgLTE1NTgsNiArMTU2MSw3IEBACiAJCQkJNTI0QkJDQTExOUUzMEM3NzAwMkYxQUYx
IC8qIHRlc3QubXA0IGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTdBRTlFNTA5MUFFNUFFOEIw
MENGODc0QiAvKiB0ZXN0LnBkZiBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk1QzcxMDFDNzI1
REQ5OEI2MDA2ODYyMDAgLyogdGVzdF9wcmludC5wZGYgaW4gQ29weSBSZXNvdXJjZXMgKi8sCisJ
CQkJRjQ1RUI2MDQyNzczOUYzNDAwMzU3MUFFIC8qIFRlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xz
Lm1sbW9kZWxjIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTJFOTg5NjE1MUQ4RjA5MzgwMDcz
OTg5MiAvKiB0ZXh0LWFuZC1wYXNzd29yZC1pbnB1dHMuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAq
LywKIAkJCQlGNENENzRDNjIwRkRBQ0ZBMDBERTM3OTQgLyogdGV4dC13aXRoLWFzeW5jLXNjcmlw
dC5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUY0NEM3QTA1MjBGQUFFM0MwMDE0NDc4
QyAvKiB0ZXh0LXdpdGgtZGVmZXJyZWQtc2NyaXB0Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CkBAIC0zMDAzLDYgKzMwMDcsOCBAQAogCQlGNDVFMTU3MjIxMTJDRTI5MDAzMDdFODIgLyogS2V5
Ym9hcmRJbnB1dFRlc3RzSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gS2V5Ym9hcmRJbnB1
dFRlc3RzSU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDVFMTU3NDIxMTJD
RTYyMDAzMDdFODIgLyogVGVzdElucHV0RGVsZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGVzdElu
cHV0RGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjQ1RTE1NzUyMTEy
Q0U2MjAwMzA3RTgyIC8qIFRlc3RJbnB1dERlbGVnYXRlLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gVGVzdElucHV0RGVsZWdhdGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0
NUVCNjAzMjc3MzlGMkIwMDM1NzFBRSAvKiBUZXN0TW9kYWxDb250YWluZXJDb250cm9scy5tbG1v
ZGVsYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHdy
YXBwZXI7IHBhdGggPSBUZXN0TW9kYWxDb250YWluZXJDb250cm9scy5tbG1vZGVsYzsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ1RUI2MDYyNzczQzM3MTAwMzU3MUFFIC8qIE1vZGFs
Q29udGFpbmVyT2JzZXJ2YXRpb24ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBNb2RhbENvbnRh
aW5lck9ic2VydmF0aW9uLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDYwRjY1
NjI2MTExNkVBMDA2NEYyQjYgLyogSW5qZWN0ZWRCdW5kbGVIaXRUZXN0Lm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVIaXRUZXN0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlGNDYwRjY1OTI2MTExN0U3MDA2NEYyQjYgLyogSW5qZWN0ZWRCdW5kbGVIaXRU
ZXN0UGx1Z0luLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVIaXRUZXN0
UGx1Z0luLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDYwRjY1QTI2MTExODNG
MDA2NEYyQjYgLyogSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UHJvdG9jb2wuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UHJvdG9jb2wuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTMwNzEsNiArMzA3Nyw3IEBACiAJCUY0RTBBMkI3MjEyMjg0NzQwMEFGN0M3RiAv
KiBUZXN0RmlsZVByb21pc2VSZWNlaXZlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFRlc3RG
aWxlUHJvbWlzZVJlY2VpdmVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNEUz
RDgwNzIwRjcwOEU0MDA3QjU4QzUgLyogc2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNs
ZS5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gInNpZ25pZmljYW50LXRleHQtbWls
ZXN0b25lLWFydGljbGUuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0RTdB
NjYyMjcyMjJCQjEwMEU3NEQzNiAvKiBjYW52YXMtaW1hZ2UtZGF0YS5odG1sICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dC5odG1sOyBwYXRoID0gImNhbnZhcy1pbWFnZS1kYXRhLmh0bWwiOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGNEU4NkY4OTI3NzNEQzA2MDAzODU5QTYgLyogbW9kYWwtY29udGFp
bmVyLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAibW9kYWwtY29udGFpbmVyLmh0
bWwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNEVCNEU4RjIzMjhBQzMwMDA1NzRE
QUIgLyogTlNJdGVtUHJvdmlkZXJBZGRpdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTlNJdGVtUHJv
dmlkZXJBZGRpdGlvbnMuaDsgcGF0aCA9IGNvY29hL05TSXRlbVByb3ZpZGVyQWRkaXRpb25zLmg7
IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKIAkJRjRFQjRFOTAyMzI4QUMzMDAwNTc0REFC
IC8qIE5TSXRlbVByb3ZpZGVyQWRkaXRpb25zLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gTlNJ
dGVtUHJvdmlkZXJBZGRpdGlvbnMubW07IHBhdGggPSBjb2NvYS9OU0l0ZW1Qcm92aWRlckFkZGl0
aW9ucy5tbTsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OwogCQlGNEVDODA5MzI2MEQyRTYy
MDAxMDMxMUQgLyogc2ltcGxlLWltYWdlLW92ZXJsYXkuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRt
bDsgcGF0aCA9ICJzaW1wbGUtaW1hZ2Utb3ZlcmxheS5odG1sIjsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTM0ODEsNiArMzQ4OCw3IEBACiAJCQkJNTFCRTlFNjUyMzc2MDg5NTAwQjRF
MTE3IC8qIE1lZGlhVHlwZS5tbSAqLywKIAkJCQk1MTY1RkUwMzIwMUVFNjE3MDA5RjdFQzMgLyog
TWVzc2FnZVBvcnRQcm92aWRlcnMubW0gKi8sCiAJCQkJNTFDRDFDNkExQjM4Q0UzNjAwMTQyQ0E1
IC8qIE1vZGFsQWxlcnRzLm1tICovLAorCQkJCUY0NUVCNjA2Mjc3M0MzNzEwMDM1NzFBRSAvKiBN
b2RhbENvbnRhaW5lck9ic2VydmF0aW9uLm1tICovLAogCQkJCTFBQkMzREVEMTg5OUJFNkQwMDRG
MDYyNiAvKiBOYXZpZ2F0aW9uLm1tICovLAogCQkJCTYzNTE5OTI3MjIyNzVDNkEwMDg5MEFEMyAv
KiBOYXZpZ2F0aW9uQWN0aW9uLm1tICovLAogCQkJCTVDOEJDNzk4MjE4Q0YzRTkwMDgxMzg4NiAv
KiBOZXR3b3JrUHJvY2Vzcy5tbSAqLywKQEAgLTQxODQsNiArNDE5Miw3IEBACiAJCQkJMzFCNzZF
NDQyMzI5OUJBMzAwN0ZFRDJDIC8qIHN5c3RlbS1wcmV2aWV3LXRyaWdnZXIuaHRtbCAqLywKIAkJ
CQkzMTNDM0EwMTIxRTU2NzdBMDBEQkE4NkUgLyogU3lzdGVtUHJldmlld0Jsb2JOYW1pbmcuaHRt
bCAqLywKIAkJCQlGNDZENDNBQTI2RDcwOTAzMDA5NjlFNUUgLyogdGVzdC5qcGcgKi8sCisJCQkJ
RjQ1RUI2MDMyNzczOUYyQjAwMzU3MUFFIC8qIFRlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1s
bW9kZWxjICovLAogCQkJCTJFOTg5NjE0MUQ4RjA5MkIwMDczOTg5MiAvKiB0ZXh0LWFuZC1wYXNz
d29yZC1pbnB1dHMuaHRtbCAqLywKIAkJCQlGNENENzRDNTIwRkRBQ0Y1MDBERTM3OTQgLyogdGV4
dC13aXRoLWFzeW5jLXNjcmlwdC5odG1sICovLAogCQkJCUY0NEM3QTA0MjBGQUFFMzIwMDE0NDc4
QyAvKiB0ZXh0LXdpdGgtZGVmZXJyZWQtc2NyaXB0Lmh0bWwgKi8sCkBAIC00NjU0LDYgKzQ2NjMs
NyBAQAogCQkJCUNEQzk0NDJCMUVGMUZCRDIwMDU5QzNDNCAvKiBtZWRpYXN0cmVhbXRyYWNrLWRl
dGFjaGVkLmh0bWwgKi8sCiAJCQkJNDk3MUIxMUYyNDUzQTg3RjAwOTY5OTREIC8qIG1pc3NpbmdU
b3BGcmFtZVVuaXF1ZVJlZGlyZWN0U2FtZVNpdGVTdHJpY3RUYWJsZVNjaGVtYS5kYiAqLywKIAkJ
CQk1MUNEMUM3MTFCMzhENDg0MDAxNDJDQTUgLyogbW9kYWwtYWxlcnRzLWluLW5ldy1hYm91dC1i
bGFuay13aW5kb3cuaHRtbCAqLywKKwkJCQlGNEU4NkY4OTI3NzNEQzA2MDAzODU5QTYgLyogbW9k
YWwtY29udGFpbmVyLmh0bWwgKi8sCiAJCQkJN0ExNDU4RkIxQUQ1QzAzNTAwRTA2NzcyIC8qIG1v
dXNlLWJ1dHRvbi1saXN0ZW5lci5odG1sICovLAogCQkJCTMzRTc5RTA1MTM3QjVGQ0UwMEUzMkQ5
OSAvKiBtb3VzZS1tb3ZlLWxpc3RlbmVyLmh0bWwgKi8sCiAJCQkJNTc5N0ZFMzIxRUIxNUE4OTAw
QjJGNEEwIC8qIG5hdmlnYXRpb24tY2xpZW50LWRlZmF1bHQtY3J5cHRvLmh0bWwgKi8sCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9tb2RhbC1jb250YWluZXIu
aHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L21vZGFsLWNvbnRhaW5lci5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjVhZDBjNzllMDU2ZWNkYjg3MDgwMTk5YjAyYjg0YmY2OGVjOGNjNjcK
LS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9tb2Rh
bC1jb250YWluZXIuaHRtbApAQCAtMCwwICsxLDk4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdp
ZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorPHN0eWxlPgorYm9keSwgaHRtbCB7CisgICAgbWFyZ2lu
OiAwOworICAgIGJhY2tncm91bmQtY29sb3I6ICNFRkVGRUY7CisgICAgZm9udC1mYW1pbHk6IHN5
c3RlbS11aTsKK30KKworYnV0dG9uIHsKKyAgICBwYWRkaW5nOiA2cHg7CisgICAgYm9yZGVyLXJh
ZGl1czogNnB4OworICAgIGFwcGVhcmFuY2U6IG5vbmU7CisgICAgd2hpdGUtc3BhY2U6IG5vcm1h
bDsKKyAgICB3aWR0aDogYXV0bzsKKyAgICBtYXJnaW46IDRweDsKKyAgICBib3JkZXI6IG5vbmU7
CisgICAgZm9udC1zaXplOiAxZW07CisgICAgY3Vyc29yOiBwb2ludGVyOworfQorCisjbmV1dHJh
bCB7CisgICAgY29sb3I6IHJnYig4OCwgODYsIDIxNCk7CisgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiYSg4OCwgODYsIDIxNCwgMC4xKTsKK30KKworI25lZ2F0aXZlIHsKKyAgICBjb2xvcjogcmdi
KDI1NSwgNTksIDQ4KTsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgNTksIDQ4LCAw
LjEpOworfQorCisjcG9zaXRpdmUgeworICAgIGNvbG9yOiByZ2IoNzYsIDIxNywgMTAwKTsKKyAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDc2LCAyMTcsIDEwMCwgMC4xKTsKK30KKworI2ZpeGVk
IHsKKyAgICB3aWR0aDogY2FsYyhtaW4oMzAwcHgsIDgwJSkpOworICAgIGJvdHRvbTogMTBweDsK
KyAgICBsZWZ0OiAxMHB4OworICAgIHBvc2l0aW9uOiBmaXhlZDsKKyAgICBiYWNrZ3JvdW5kLWNv
bG9yOiB3aGl0ZTsKKyAgICBib3JkZXItcmFkaXVzOiA4cHg7CisgICAgcGFkZGluZzogMTZweDsK
KyAgICBib3gtc2hhZG93OiAxcHggMXB4IDJweCAycHggI0NDQzsKK30KKworI2ZpeGVkID4gcCB7
CisgICAgZm9udC1zaXplOiAxNHB4OworfQorCisjZml4ZWQgPiBoNCB7CisgICAgZm9udC1zaXpl
OiAxNnB4OworICAgIG1hcmdpbi10b3A6IDZweDsKK30KKworI2ZpeGVkLWNvbnRyb2xzIHsKKyAg
ICBmb250LXNpemU6IDE2cHg7CisgICAgbWFyZ2luLWJvdHRvbTogMWVtOworICAgIHRleHQtYWxp
Z246IGNlbnRlcjsKK30KKworI3Jlc3VsdCB7CisgICAgZm9udC1zaXplOiAxNnB4OworICAgIGZv
bnQtd2VpZ2h0OiBib2xkOworICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7Cit9Cis8L3N0eWxl
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5vdmVycmlk
ZU1vZGFsQ29udGFpbmVyU2VhcmNoVGVybUZvclRlc3RpbmcoImhlbGxvIHdvcmxkIik7CisKK2Fk
ZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLCBldmVudCA9PiB7CisgICAgW25lZ2F0
aXZlLCBwb3NpdGl2ZSwgbmV1dHJhbF0uZm9yRWFjaChjb250cm9sID0+IHsKKyAgICAgICAgY29u
dHJvbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsICgpID0+IHsKKyAgICAgICAgICAgIGZpeGVk
LnJlbW92ZSgpOworICAgICAgICAgICAgcmVzdWx0LnRleHRDb250ZW50ID0gYENsaWNrZWQgb24g
IiR7Y29udHJvbC50ZXh0Q29udGVudH0iYDsKKyAgICAgICAgfSk7CisgICAgfSk7Cit9KTsKKzwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwg
Y29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbSBub251bXkgZWlybW9kIHRlbXBv
ciBpbnZpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1eWFtIGVyYXQsIHNlZCBk
aWFtIHZvbHVwdHVhLjwvcD4KKzxkaXYgaWQ9ImZpeGVkIj4KKyAgICA8aDQ+PHNwYW4+VGhpcyBp
cyBhIHRlc3Q8L3NwYW4+PC9oND4KKyAgICA8cD5IZWxsbyB3b3JsZDwvcD4KKyAgICA8ZGl2IGNs
YXNzPSJmaXhlZC1jb250cm9scyI+CisgICAgICAgIDxidXR0b24gaWQ9InBvc2l0aXZlIj5ZZXM8
L2J1dHRvbj4KKyAgICAgICAgPGJ1dHRvbiBpZD0ibmVnYXRpdmUiPk5vPC9idXR0b24+CisgICAg
ICAgIDxidXR0b24gaWQ9Im5ldXRyYWwiPk1heWJlPC9idXR0b24+CisgICAgPC9kaXY+Cis8L2Rp
dj4KKzxkaXYgaWQ9InJlc3VsdCI+PGJyPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9BcHBsaWNhdGlvbk1h
bmlmZXN0Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9BcHBsaWNh
dGlvbk1hbmlmZXN0Lm1tCmluZGV4IGYxYTM5OTc3NmQyMTBjZTdkYjJiMzQzZmRmYmFhYjdkZDY5
YTFmMGIuLmY5NGIzYTk3YWZkMDk5NmJmMzUxYjFkZDgxYTAyNGZhOThlMDdkODIgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQXBwbGljYXRpb25NYW5p
ZmVzdC5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0FwcGxp
Y2F0aW9uTWFuaWZlc3QubW0KQEAgLTI5LDYgKzI5LDcgQEAKIAogI2ltcG9ydCAiUGxhdGZvcm1V
dGlsaXRpZXMuaCIKICNpbXBvcnQgIlRlc3QuaCIKKyNpbXBvcnQgIlRlc3RDb2NvYS5oIgogI2lt
cG9ydCAiVGVzdE5hdmlnYXRpb25EZWxlZ2F0ZS5oIgogI2ltcG9ydCAiVGVzdFdLV2ViVmlldy5o
IgogI2ltcG9ydCA8V2ViQ29yZS9BcHBsaWNhdGlvbk1hbmlmZXN0Lmg+CkBAIC0zOSw4ICs0MCw2
IEBACiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIAotY29uc3RleHByIENHRmxvYXQgcmVk
Q29sb3JDb21wb25lbnRzWzRdID0geyAxLCAwLCAwLCAxIH07Ci0KIFRFU1QoQXBwbGljYXRpb25N
YW5pZmVzdCwgQ29kaW5nKQogewogICAgIGF1dG8ganNvblN0cmluZyA9IEAieyBcIm5hbWVcIjog
XCJUZXN0TmFtZVwiLCBcInNob3J0X25hbWVcIjogXCJUZXN0U2hvcnROYW1lXCIsIFwiZGVzY3Jp
cHRpb25cIjogXCJUZXN0RGVzY3JpcHRpb25cIiwgXCJzY29wZVwiOiBcImh0dHBzOi8vdGVzdC5j
b20vYXBwXCIsIFwic3RhcnRfdXJsXCI6IFwiaHR0cHM6Ly90ZXN0LmNvbS9hcHAvaW5kZXguaHRt
bFwiLCBcImRpc3BsYXlcIjogXCJtaW5pbWFsLXVpXCIsIFwidGhlbWVfY29sb3JcIjogXCJyZWRc
IiB9IjsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
TW9kYWxDb250YWluZXJPYnNlcnZhdGlvbi5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbi5tbQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYzE5
YzVlODM2YmE2ZWYyYTFiMzk4NWZiN2M1ZmY3ZTIyZWMyYWY0Ci0tLSAvZGV2L251bGwKKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Nb2RhbENvbnRhaW5lck9ic2Vy
dmF0aW9uLm1tCkBAIC0wLDAgKzEsMTg3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmln
LmgiCisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0UHJvdG9j
b2wuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcuaCIKKyNpbXBvcnQgIldLV2ViVmlld0NvbmZp
Z3VyYXRpb25FeHRyYXMuaCIKKyNpbXBvcnQgPFdlYktpdC9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5o
PgorI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmg+CisjaW1w
b3J0IDxXZWJLaXQvV0tXZWJwYWdlUHJlZmVyZW5jZXNQcml2YXRlLmg+CisjaW1wb3J0IDxvYmpj
L3J1bnRpbWUuaD4KKyNpbXBvcnQgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgorI2ltcG9ydCA8
d3RmL0Zhc3RNYWxsb2MuaD4KKyNpbXBvcnQgPHd0Zi9TZXRGb3JTY29wZS5oPgorCit0eXBlZGVm
IF9XS01vZGFsQ29udGFpbmVyRGVjaXNpb24oXk1vZGFsQ29udGFpbmVyRGVjaXNpb25IYW5kbGVy
KShfV0tNb2RhbENvbnRhaW5lckluZm8gKik7CisKK0BpbnRlcmZhY2UgTlNCdW5kbGUgKFRlc3RT
dXBwb3J0KQorLSAoTlNVUkwgKilzd2l6emxlZF9VUkxGb3JSZXNvdXJjZTooTlNTdHJpbmcgKilu
YW1lIHdpdGhFeHRlbnNpb246KE5TU3RyaW5nICopZXh0ZW5zaW9uOworQGVuZAorCitAaW1wbGVt
ZW50YXRpb24gTlNCdW5kbGUgKFRlc3RTdXBwb3J0KQorCistIChOU1VSTCAqKXN3aXp6bGVkX1VS
TEZvclJlc291cmNlOihOU1N0cmluZyAqKW5hbWUgd2l0aEV4dGVuc2lvbjooTlNTdHJpbmcgKill
eHRlbnNpb24KK3sKKyAgICBpZiAoW25hbWUgaXNFcXVhbFRvU3RyaW5nOkAiTW9kYWxDb250YWlu
ZXJDb250cm9scyJdICYmIFtleHRlbnNpb24gaXNFcXVhbFRvU3RyaW5nOkAibWxtb2RlbGMiXSkg
eworICAgICAgICAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdCBDb3JlTUwgbW9kZWwgd2l0aCBhIHNt
YWxsZXIgZGF0YXNldCB0aGF0J3MgbGltaXRlZCB0byB0ZXN0aW5nIHB1cnBvc2VzLgorICAgICAg
ICByZXR1cm4gW05TQnVuZGxlLm1haW5CdW5kbGUgVVJMRm9yUmVzb3VyY2U6QCJUZXN0TW9kYWxD
b250YWluZXJDb250cm9scyIgd2l0aEV4dGVuc2lvbjpAIm1sbW9kZWxjIiBzdWJkaXJlY3Rvcnk6
QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdOworICAgIH0KKyAgICAvLyBDYWxsIHRocm91Z2gg
dG8gdGhlIG9yaWdpbmFsIG1ldGhvZCBpbXBsZW1lbnRhdGlvbiBpZiB3ZSdyZSBub3Qgc3BlY2lm
aWNhbGx5IHJlcXVlc3RpbmcgTW9kYWxDb250YWluZXJDb250cm9scy5tbG1vZGVsYy4KKyAgICBy
ZXR1cm4gW3NlbGYgc3dpenpsZWRfVVJMRm9yUmVzb3VyY2U6bmFtZSB3aXRoRXh0ZW5zaW9uOmV4
dGVuc2lvbl07Cit9CisKK0BlbmQKKworbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgeworCitjbGFz
cyBDbGFzc2lmaWVyTW9kZWxTd2l6emxlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7
CitwdWJsaWM6CisgICAgQ2xhc3NpZmllck1vZGVsU3dpenpsZXIoKQorICAgICAgICA6IG1fb3Jp
Z2luYWxNZXRob2QoY2xhc3NfZ2V0SW5zdGFuY2VNZXRob2QoTlNCdW5kbGUuY2xhc3MsIEBzZWxl
Y3RvcihVUkxGb3JSZXNvdXJjZTp3aXRoRXh0ZW5zaW9uOikpKQorICAgICAgICAsIG1fc3dpenps
ZWRNZXRob2QoY2xhc3NfZ2V0SW5zdGFuY2VNZXRob2QoTlNCdW5kbGUuY2xhc3MsIEBzZWxlY3Rv
cihzd2l6emxlZF9VUkxGb3JSZXNvdXJjZTp3aXRoRXh0ZW5zaW9uOikpKQorICAgIHsKKyAgICAg
ICAgbV9vcmlnaW5hbEltcGxlbWVudGF0aW9uID0gbWV0aG9kX2dldEltcGxlbWVudGF0aW9uKG1f
b3JpZ2luYWxNZXRob2QpOworICAgICAgICBtX3N3aXp6bGVkSW1wbGVtZW50YXRpb24gPSBtZXRo
b2RfZ2V0SW1wbGVtZW50YXRpb24obV9zd2l6emxlZE1ldGhvZCk7CisgICAgICAgIGNsYXNzX3Jl
cGxhY2VNZXRob2QoTlNCdW5kbGUuY2xhc3MsIEBzZWxlY3Rvcihzd2l6emxlZF9VUkxGb3JSZXNv
dXJjZTp3aXRoRXh0ZW5zaW9uOiksIG1fb3JpZ2luYWxJbXBsZW1lbnRhdGlvbiwgbWV0aG9kX2dl
dFR5cGVFbmNvZGluZyhtX29yaWdpbmFsTWV0aG9kKSk7CisgICAgICAgIGNsYXNzX3JlcGxhY2VN
ZXRob2QoTlNCdW5kbGUuY2xhc3MsIEBzZWxlY3RvcihVUkxGb3JSZXNvdXJjZTp3aXRoRXh0ZW5z
aW9uOiksIG1fc3dpenpsZWRJbXBsZW1lbnRhdGlvbiwgbWV0aG9kX2dldFR5cGVFbmNvZGluZyht
X3N3aXp6bGVkTWV0aG9kKSk7CisgICAgfQorCisgICAgfkNsYXNzaWZpZXJNb2RlbFN3aXp6bGVy
KCkKKyAgICB7CisgICAgICAgIGNsYXNzX3JlcGxhY2VNZXRob2QoTlNCdW5kbGUuY2xhc3MsIEBz
ZWxlY3Rvcihzd2l6emxlZF9VUkxGb3JSZXNvdXJjZTp3aXRoRXh0ZW5zaW9uOiksIG1fc3dpenps
ZWRJbXBsZW1lbnRhdGlvbiwgbWV0aG9kX2dldFR5cGVFbmNvZGluZyhtX29yaWdpbmFsTWV0aG9k
KSk7CisgICAgICAgIGNsYXNzX3JlcGxhY2VNZXRob2QoTlNCdW5kbGUuY2xhc3MsIEBzZWxlY3Rv
cihVUkxGb3JSZXNvdXJjZTp3aXRoRXh0ZW5zaW9uOiksIG1fb3JpZ2luYWxJbXBsZW1lbnRhdGlv
biwgbWV0aG9kX2dldFR5cGVFbmNvZGluZyhtX3N3aXp6bGVkTWV0aG9kKSk7CisgICAgfQorCitw
cml2YXRlOgorICAgIE1ldGhvZCBtX29yaWdpbmFsTWV0aG9kOworICAgIE1ldGhvZCBtX3N3aXp6
bGVkTWV0aG9kOworICAgIElNUCBtX29yaWdpbmFsSW1wbGVtZW50YXRpb247CisgICAgSU1QIG1f
c3dpenpsZWRJbXBsZW1lbnRhdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRB
UEkKKworQGludGVyZmFjZSBNb2RhbENvbnRhaW5lcldlYlZpZXcgOiBUZXN0V0tXZWJWaWV3IDxX
S1VJRGVsZWdhdGVQcml2YXRlPgorQGVuZAorCitAaW1wbGVtZW50YXRpb24gTW9kYWxDb250YWlu
ZXJXZWJWaWV3IHsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8VGVzdFdlYktpdEFQSTo6Q2xhc3NpZmll
ck1vZGVsU3dpenpsZXI+IF9jbGFzc2lmaWVyTW9kZWxTd2l6emxlcjsKKyAgICBSZXRhaW5QdHI8
VGVzdE5hdmlnYXRpb25EZWxlZ2F0ZT4gX25hdmlnYXRpb25EZWxlZ2F0ZTsKKyAgICBzdGQ6Om9w
dGlvbmFsPF9XS01vZGFsQ29udGFpbmVyRGVjaXNpb24+IF9kZWNpc2lvbjsKKyAgICBib29sIF9k
b25lV2FpdGluZ0ZvckRlY2lzaW9uSGFuZGxlcjsKK30KKworLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoRnJhbWU6KENHUmVjdClmcmFtZSBjb25maWd1cmF0aW9uOihXS1dlYlZpZXdDb25maWd1cmF0
aW9uICopY29uZmlndXJhdGlvbgoreworICAgIGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhG
cmFtZTpmcmFtZSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKSkKKyAgICAgICAgcmV0dXJu
IG5pbDsKKworICAgIHN0YXRpYyBzdGQ6Om9uY2VfZmxhZyBvbmNlRmxhZzsKKyAgICBzdGQ6OmNh
bGxfb25jZShvbmNlRmxhZywgW10geworICAgICAgICBbVGVzdFByb3RvY29sIHJlZ2lzdGVyV2l0
aFNjaGVtZTpAImh0dHAiXTsKKyAgICB9KTsKKworICAgIF9jbGFzc2lmaWVyTW9kZWxTd2l6emxl
ciA9IG1ha2VVbmlxdWU8VGVzdFdlYktpdEFQSTo6Q2xhc3NpZmllck1vZGVsU3dpenpsZXI+KCk7
CisgICAgX25hdmlnYXRpb25EZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0TmF2aWdhdGlvbkRlbGVn
YXRlIGFsbG9jXSBpbml0XSk7CisgICAgX2RvbmVXYWl0aW5nRm9yRGVjaXNpb25IYW5kbGVyID0g
dHJ1ZTsKKyAgICBbc2VsZiBzZXROYXZpZ2F0aW9uRGVsZWdhdGU6X25hdmlnYXRpb25EZWxlZ2F0
ZS5nZXQoKV07CisgICAgW3NlbGYgc2V0VUlEZWxlZ2F0ZTpzZWxmXTsKKyAgICByZXR1cm4gc2Vs
ZjsKK30KKworLSAodm9pZClsb2FkQnVuZGxlUGFnZTooTlNTdHJpbmcgKilwYWdlIGFuZERlY2lk
ZVBvbGljeTooX1dLTW9kYWxDb250YWluZXJEZWNpc2lvbilkZWNpc2lvbgoreworICAgIFNldEZv
clNjb3BlIGRlY2lzaW9uU2NvcGUgeyBfZGVjaXNpb24sIGRlY2lzaW9uIH07CisgICAgX2RvbmVX
YWl0aW5nRm9yRGVjaXNpb25IYW5kbGVyID0gZmFsc2U7CisKKyAgICBOU1VSTCAqYnVuZGxlVVJM
ID0gW05TQnVuZGxlLm1haW5CdW5kbGUgVVJMRm9yUmVzb3VyY2U6cGFnZSB3aXRoRXh0ZW5zaW9u
OkAiaHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXTsKKyAgICBO
U1VSTFJlcXVlc3QgKmZha2VSZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpb
TlNVUkwgVVJMV2l0aFN0cmluZzpAImh0dHA6Ly93ZWJraXQub3JnIl1dOworICAgIFtzZWxmIGxv
YWRTaW11bGF0ZWRSZXF1ZXN0OmZha2VSZXF1ZXN0IHJlc3BvbnNlSFRNTFN0cmluZzpbTlNTdHJp
bmcgc3RyaW5nV2l0aENvbnRlbnRzT2ZVUkw6YnVuZGxlVVJMXV07CisKKyAgICBhdXRvIHByZWZl
cmVuY2VzID0gYWRvcHROUyhbW1dLV2VicGFnZVByZWZlcmVuY2VzIGFsbG9jXSBpbml0XSk7Cisg
ICAgW3ByZWZlcmVuY2VzIF9zZXRNb2RhbENvbnRhaW5lck9ic2VydmF0aW9uUG9saWN5Ol9XS1dl
YnNpdGVNb2RhbENvbnRhaW5lck9ic2VydmF0aW9uUG9saWN5UHJvbXB0XTsKKyAgICBbX25hdmln
YXRpb25EZWxlZ2F0ZSB3YWl0Rm9yRGlkRmluaXNoTmF2aWdhdGlvbldpdGhQcmVmZXJlbmNlczpw
cmVmZXJlbmNlcy5nZXQoKV07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJl9kb25l
V2FpdGluZ0ZvckRlY2lzaW9uSGFuZGxlcik7CisgICAgW3NlbGYgd2FpdEZvck5leHRQcmVzZW50
YXRpb25VcGRhdGVdOworfQorCistICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3
IGRlY2lkZVBvbGljeUZvck1vZGFsQ29udGFpbmVyOihfV0tNb2RhbENvbnRhaW5lckluZm8gKilj
b250YWluZXJJbmZvIGRlY2lzaW9uSGFuZGxlcjoodm9pZCAoXikoX1dLTW9kYWxDb250YWluZXJE
ZWNpc2lvbikpaGFuZGxlcgoreworICAgIGhhbmRsZXIoX2RlY2lzaW9uLnZhbHVlX29yKF9XS01v
ZGFsQ29udGFpbmVyRGVjaXNpb25TaG93KSk7CisgICAgX2RvbmVXYWl0aW5nRm9yRGVjaXNpb25I
YW5kbGVyID0gdHJ1ZTsKK30KKworQGVuZAorCituYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CisK
K3N0YXRpYyBSZXRhaW5QdHI8TW9kYWxDb250YWluZXJXZWJWaWV3PiBjcmVhdGVNb2RhbENvbnRh
aW5lcldlYlZpZXcoKQoreworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IFtXS1dlYlZpZXdDb25m
aWd1cmF0aW9uIF90ZXN0X2NvbmZpZ3VyYXRpb25XaXRoVGVzdFBsdWdJbkNsYXNzTmFtZTpAIldl
YlByb2Nlc3NQbHVnSW5XaXRoSW50ZXJuYWxzIiBjb25maWd1cmVKU0NGb3JUZXN0aW5nOllFU107
CisgICAgcmV0dXJuIGFkb3B0TlMoW1tNb2RhbENvbnRhaW5lcldlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCA0MDAsIDQwMCkgY29uZmlndXJhdGlvbjpjb25maWd1
cmF0aW9uXSk7Cit9CisKK1RFU1QoTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbiwgSGlkZUFuZEFs
bG93TW9kYWxDb250YWluZXIpCit7CisgICAgYXV0byB3ZWJWaWV3ID0gY3JlYXRlTW9kYWxDb250
YWluZXJXZWJWaWV3KCk7CisgICAgW3dlYlZpZXcgbG9hZEJ1bmRsZVBhZ2U6QCJtb2RhbC1jb250
YWluZXIiIGFuZERlY2lkZVBvbGljeTpfV0tNb2RhbENvbnRhaW5lckRlY2lzaW9uSGlkZUFuZEFs
bG93XTsKKyAgICBOU1N0cmluZyAqdmlzaWJsZVRleHQgPSBbd2ViVmlldyBjb250ZW50c0FzU3Ry
aW5nXTsKKyAgICBFWFBFQ1RfVFJVRShbdmlzaWJsZVRleHQgY29udGFpbnNTdHJpbmc6QCJDbGlj
a2VkIG9uIFwiWWVzXCIiXSk7CisgICAgRVhQRUNUX0ZBTFNFKFt2aXNpYmxlVGV4dCBjb250YWlu
c1N0cmluZzpAIkhlbGxvIHdvcmxkIl0pOworfQorCitURVNUKE1vZGFsQ29udGFpbmVyT2JzZXJ2
YXRpb24sIEhpZGVBbmREaXNhbGxvd01vZGFsQ29udGFpbmVyKQoreworICAgIGF1dG8gd2ViVmll
dyA9IGNyZWF0ZU1vZGFsQ29udGFpbmVyV2ViVmlldygpOworICAgIFt3ZWJWaWV3IGxvYWRCdW5k
bGVQYWdlOkAibW9kYWwtY29udGFpbmVyIiBhbmREZWNpZGVQb2xpY3k6X1dLTW9kYWxDb250YWlu
ZXJEZWNpc2lvbkhpZGVBbmREaXNhbGxvd107CisgICAgTlNTdHJpbmcgKnZpc2libGVUZXh0ID0g
W3dlYlZpZXcgY29udGVudHNBc1N0cmluZ107CisgICAgRVhQRUNUX1RSVUUoW3Zpc2libGVUZXh0
IGNvbnRhaW5zU3RyaW5nOkAiQ2xpY2tlZCBvbiBcIk5vXCIiXSk7CisgICAgRVhQRUNUX0ZBTFNF
KFt2aXNpYmxlVGV4dCBjb250YWluc1N0cmluZzpAIkhlbGxvIHdvcmxkIl0pOworfQorCitURVNU
KE1vZGFsQ29udGFpbmVyT2JzZXJ2YXRpb24sIEhpZGVBbmRJZ25vcmVNb2RhbENvbnRhaW5lcikK
K3sKKyAgICBhdXRvIHdlYlZpZXcgPSBjcmVhdGVNb2RhbENvbnRhaW5lcldlYlZpZXcoKTsKKyAg
ICBbd2ViVmlldyBsb2FkQnVuZGxlUGFnZTpAIm1vZGFsLWNvbnRhaW5lciIgYW5kRGVjaWRlUG9s
aWN5Ol9XS01vZGFsQ29udGFpbmVyRGVjaXNpb25IaWRlQW5kSWdub3JlXTsKKyAgICBOU1N0cmlu
ZyAqdmlzaWJsZVRleHQgPSBbd2ViVmlldyBjb250ZW50c0FzU3RyaW5nXTsKKyAgICBFWFBFQ1Rf
RkFMU0UoW3Zpc2libGVUZXh0IGNvbnRhaW5zU3RyaW5nOkAiQ2xpY2tlZCBvbiJdKTsKKyAgICBF
WFBFQ1RfRkFMU0UoW3Zpc2libGVUZXh0IGNvbnRhaW5zU3RyaW5nOkAiSGVsbG8gd29ybGQiXSk7
Cit9CisKK1RFU1QoTW9kYWxDb250YWluZXJPYnNlcnZhdGlvbiwgU2hvd01vZGFsQ29udGFpbmVy
KQoreworICAgIGF1dG8gd2ViVmlldyA9IGNyZWF0ZU1vZGFsQ29udGFpbmVyV2ViVmlldygpOwor
ICAgIFt3ZWJWaWV3IGxvYWRCdW5kbGVQYWdlOkAibW9kYWwtY29udGFpbmVyIiBhbmREZWNpZGVQ
b2xpY3k6X1dLTW9kYWxDb250YWluZXJEZWNpc2lvblNob3ddOworICAgIE5TU3RyaW5nICp2aXNp
YmxlVGV4dCA9IFt3ZWJWaWV3IGNvbnRlbnRzQXNTdHJpbmddOworICAgIEVYUEVDVF9GQUxTRShb
dmlzaWJsZVRleHQgY29udGFpbnNTdHJpbmc6QCJDbGlja2VkIG9uIl0pOworICAgIEVYUEVDVF9U
UlVFKFt2aXNpYmxlVGV4dCBjb250YWluc1N0cmluZzpAIkhlbGxvIHdvcmxkIl0pOworfQorCit9
IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL1Rlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1sbW9kZWxj
L2FuYWx5dGljcy9jb3JlbWxkYXRhLmJpbiBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMvYW5hbHl0aWNzL2Nv
cmVtbGRhdGEuYmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUxMjQzZDA5Y2UyNWRmOWEyMWE0OWY3NzBkNGFkZjI1
YjEwMzQ1NWMKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDE1Ngp6Y21XZShmUG1uRilhMTt4JTtk
ejklPXxvOylSTSVeb01JLVo5NEN+eyV9K19xQGtsSnIoMThqPk14PVM9bjxySU8KelRCZW1HeD5w
eiExY3YxbDhrSl5ibTxId01yS0ZUPTdkdn07Qm99Kz9gK0N9PDd+Kz9objxAbzBCcVgpQyM1WEBC
ClVGfj5QUzRgXiooWTd2TjBsJUc9ITBGSDdnZSpnZGcKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1v
ZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2RlbGMvY29yZW1sZGF0YS5iaW4gYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Rlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1s
bW9kZWxjL2NvcmVtbGRhdGEuYmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYwNTllODRiOTRlYjVlNDJmZGUzMmVk
OWFkYmNhMWI0YjNiNjhjMWMKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDIzNzAKemNtY0ltT0sl
JWg2dXg9NnNURjhRVW89MkR2PytiYWE/P1R1RHBKYTFkPXA+RW5LM2l0cSFCYE5KaWJYcmpBeld1
Cnoqc1R8QWtQeGd7ITQ3NF5sODN+TzRKOzYxZ3thdV9UbGtKVVpyejkyYWl6KDlvJUB+ZGVDUFB5
e0NQeChEZT4kIQp6VFAkWmk5bjN1MjxsKlo0JStrKmI8eH1PXlQ7SSE9JHx+O2xiSz4jeF5zO2JI
bSoqbkN0KXIhfmhiMDx+ZEU+RDMKemBOSHpUaipoYj1yZ3wzWWdMOGtCdVU7d0I2KjgwRkZiKCQp
YT1LKCpydDdRTXVhVkt+TVZlRmBSTE9gVTh0ckQzCno+UCk4dC1LcFhmQTlRcGwlPD9wQl93eHtf
ZSV6c2NyWVZkbU9ac1ZgTT1SfHhfUn1IbEMyMlJTKEFfWFVwZD1tagp6TmszPGxacWY8JiFvWCpZ
M2krdn5vPSZAQXA2ZD92KHFzXkpGdnQmbDFiTHU9NkdoNDBGeTV5aWk4fj01JHsyO3UKemIjO0R8
JEplUylQfEdPVTgqPlZoNGxNZ3dqJk8xeFRwODdHQ2okK3tMST8meWk8M01JYk9qYitNaUR8fm1g
ODMkCno7WFRkP2RJWFVsYzZHYGMoZTxaXnp+T2A8VjxMI04ofSFVSDQ7Umh8a2MrNH5Oem1gPUkz
RWVsRjxlREg2Nn5rYwp6Xj5kd3Vldn5+RGV2fmsjSEpSI2gwZUUlZ2w1MX54SkJBfCg8RUNTOHRE
M0NRYFlzdkdXJj98c2k1andNcSYkflEKeit3dlQ+LXR1aDZyOHs+RjdpVFZCV0x8N3hTaTItfEh5
IUReV0lMcGBuaGdhZ1VefEI4RGR8PWl0PGtDfVlxTFQ/CnpBPE9vdHB8K0Y8R3RhSXRrWE1KI3Il
c1orTDBpJT4+aXt5PVJZUTU7MmJVWWx2KUo3UnsyQTBWOThhMDhoVCQrJAp6diprMnhSfXpPLVE/
QSlDKVJ3R08hMnkwclpjRUR9d3tBMlZsYVZzLUNqdz14YnFTdXZJYGtOTUxaQ0l9TlltcXAKejkq
czskMlkhdFR4bEwmKjk/MDdnITVHZU4xKEdsbEJ5e0NfRSFiaDdZUX5uYURQNmtzLUA8VFMlJDZn
IW42dGdYCnpJQnNqKl5fMTgwQnlITXVaS1N2Pm9vIWBHX1pAMjNvUCFOJnh2fk4kcDI2LUoxJWhF
NDxNbyFTU1VTZDFtTTB5agp6KSUyOFlVOGNJZDE5MlFPNFY+bnoqMnVPLSR3aDgjWFAwcVZqOFBV
VXZ7UlFAaGlxMDZwNjNgV2pFaFAhSWxUYHAKejtUNDdCTyQxQXArLSNeI1hfPUJhKiRsTCFUelEk
SDNgYz9EQ2crUFFZc1l8UilDfDBIamV5Jk87WTA7UFplKjN6Cnoxe3QrJno8fkhqRTREYHx4VD5m
ZUspNVpsVVp+R01oTzM5QTMrMXl4KHlqVkBiNT9ePzxFUFkoY3Y+Q2tHe1pIdQp6SDFrR3Zee3ts
S2UxNV8lTiFiY2xwcEw0JlIxWlJaeDAoLW9kZyp6LShhcCV1R0YqOzJKdUkhMW1uWTdSQHlGUHUK
ellYRTJYYkkmd204bzlyfUgyYz11KWY9Q0ZeMyZZPilNNHExeHF0MyZBRHRDUEBHTU9VZXVDYl9I
XkJFanpUZmZQCnohK1o0X2BmdCNHanNEJGZBP29QY0otIVdCU01OX3YmJjx4MWNESTxuMmloTWxw
MFdEZndvZEltRlU5NEdkc0BYPQp6PyNGQDdLOUpieGJnO3loaSg+S1FQSGg8Yi03dUl4Y0lKakRI
dng8YEhHVSlVVHQzIXBBeSROI3htNjFQSXchPkoKeitBbkotUDc1KjNiOHNCWlB2SlB2aVJadWwt
OCM/eG0mWk9eTTFNPHVkOzROQmUqdCFESHtVO3hldFBaNG03fWl8CnpJQUBGVkZCa0tkaXV2bj4t
OylMSTNHVShsY3d6VHl2NDV1TUZCSSE5dlkjSVlVb0ExdG1GSkV4N2tERHBgPyE3dwp6VEoofCha
eHt4Iz8mcWw9aVAxJjtTbGtubkYzTHJHK3opZnVDJUZpY0d9Uz5hR09hfXJnfjNONl83QjhSPDQ9
fF8KemJRWlJ3QXh3Syhnej95VnM1OHR1VDZlR2BAWVd2cXktZVd4KjgpfTUhUU5nWEBIVUlDS1d1
QmpeI0dPUSFOOWArCnp2XnxfMVF5U083Y1o8aVRvQG1vRUdmNDY1O2BJRGtMYnx2OyU8VEJUb2Q/
VEU+I3F3ZDxAdkVEPEB2RUY8cyplRQpKPCsraDh7e3FmVWVNSkJPCgpsaXRlcmFsIDAKSGNtVj9k
MDAwMDEKCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1Rlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzLm1sbW9kZWxjL21ldGFkYXRhLmpzb24gYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Rlc3RNb2RhbENvbnRhaW5lckNvbnRy
b2xzLm1sbW9kZWxjL21ldGFkYXRhLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDUxOTJlZjFmNGM0MmU4ZTFk
MGVmNWRmYTY4MDdjZjc1MzUwZmZkNgotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVGVzdE1vZGFsQ29udGFpbmVyQ29udHJvbHMubWxtb2Rl
bGMvbWV0YWRhdGEuanNvbgpAQCAtMCwwICsxLDU0IEBACitbCisgIHsKKyAgICAibWV0YWRhdGFP
dXRwdXRWZXJzaW9uIiA6ICIzLjAiLAorICAgICJvdXRwdXRTY2hlbWEiIDogWworICAgICAgewor
ICAgICAgICAiaXNPcHRpb25hbCIgOiAiMCIsCisgICAgICAgICJmb3JtYXR0ZWRUeXBlIiA6ICJT
dHJpbmciLAorICAgICAgICAidHlwZSIgOiAiU3RyaW5nIiwKKyAgICAgICAgIm5hbWUiIDogImxh
YmVsIiwKKyAgICAgICAgInNob3J0RGVzY3JpcHRpb24iIDogIlRleHQgbGFiZWwiCisgICAgICB9
CisgICAgXSwKKyAgICAibW9kZWxQYXJhbWV0ZXJzIiA6IFsKKworICAgIF0sCisgICAgImF1dGhv
ciIgOiAiV2Vuc29uIEhzaWVoIiwKKyAgICAic3BlY2lmaWNhdGlvblZlcnNpb24iIDogMywKKyAg
ICAibGljZW5zZSIgOiAiXC8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dFxuICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zXG4gKiBhcmUg
bWV0OlxuICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHRcbiAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci5cbiAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0XG4gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlXG4gKiAgICBkb2N1bWVudGF0aW9uIGFuZFwvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi5cbiAqXG4gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnXG4gKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTyxcbiAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVJcbiAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SU1xuICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUlxuICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0ZcbiAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTU1xuICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU5cbiAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpXG4gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GXG4gKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuXG4gKlwvIiwKKyAgICAiaXNVcGRhdGFibGUiIDogIjAiLAor
ICAgICJhdmFpbGFiaWxpdHkiIDogeworICAgICAgIm1hY09TIiA6ICIxMC4xNCIsCisgICAgICAi
dHZPUyIgOiAiMTIuMCIsCisgICAgICAid2F0Y2hPUyIgOiAiNS4wIiwKKyAgICAgICJpT1MiIDog
IjEyLjAiLAorICAgICAgIm1hY0NhdGFseXN0IiA6ICIxMi4wIgorICAgIH0sCisgICAgIm1vZGVs
VHlwZSIgOiB7CisgICAgICAibmFtZSIgOiAiTUxNb2RlbFR5cGVfdGV4dENsYXNzaWZpZXIiCisg
ICAgfSwKKyAgICAiaW5wdXRTY2hlbWEiIDogWworICAgICAgeworICAgICAgICAiaXNPcHRpb25h
bCIgOiAiMCIsCisgICAgICAgICJmb3JtYXR0ZWRUeXBlIiA6ICJTdHJpbmciLAorICAgICAgICAi
dHlwZSIgOiAiU3RyaW5nIiwKKyAgICAgICAgIm5hbWUiIDogInRleHQiLAorICAgICAgICAic2hv
cnREZXNjcmlwdGlvbiIgOiAiSW5wdXQgdGV4dCIKKyAgICAgIH0KKyAgICBdLAorICAgICJjbGFz
c0xhYmVscyIgOiBbCisgICAgICAibmVnYXRpdmUiLAorICAgICAgInBvc2l0aXZlIiwKKyAgICAg
ICJuZXV0cmFsIiwKKyAgICAgICJvdGhlciIKKyAgICBdLAorICAgICJnZW5lcmF0ZWRDbGFzc05h
bWUiIDogIlRlc3RNb2RhbENvbnRhaW5lckNvbnRyb2xzIiwKKyAgICAidXNlckRlZmluZWRNZXRh
ZGF0YSIgOiB7CisgICAgICAiY29tLmFwcGxlLmNyZWF0ZW1sLnZlcnNpb24iIDogIjEzLjAuMCIs
CisgICAgICAiY29tLmFwcGxlLmNyZWF0ZW1sLmFwcC50YWciIDogIjc4LjUiLAorICAgICAgImNv
bS5hcHBsZS5jb3JlbWwubW9kZWwucHJldmlldy50eXBlIiA6ICJ0ZXh0Q2xhc3NpZmllciIsCisg
ICAgICAiY29tLmFwcGxlLmNyZWF0ZW1sLmFwcC52ZXJzaW9uIiA6ICIzLjAiCisgICAgfSwKKyAg
ICAibWV0aG9kIiA6ICJwcmVkaWN0IgorICB9CitdClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS1dl
YlZpZXdUaGVtZUNvbG9yLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9XS1dlYlZpZXdUaGVtZUNvbG9yLm1tCmluZGV4IDNkYmQ4NjMwMTVhYzJjZjRlNzE0MDUwZDc1
ZDBjOWMyNTliNmZiYjYuLmZjMGE3M2MyZDZhZjg4MTc4ZWFiMTE3MWU0NDQ1NmUyYWViNmY0Yzkg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJW
aWV3VGhlbWVDb2xvci5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL1dLV2ViVmlld1RoZW1lQ29sb3IubW0KQEAgLTM4LDkgKzM4LDYgQEAKICAgICBFWFBFQ1Rf
VFJVRShbYWN0dWFsIGlzS2luZE9mQ2xhc3M6W05TU3RyaW5nIGNsYXNzXV0pOyBcCiAgICAgRVhQ
RUNUX1dLX1NUUkVRKGV4cGVjdGVkLCAoTlNTdHJpbmcgKilhY3R1YWwpOwogCi1jb25zdGV4cHIg
Q0dGbG9hdCByZWRDb2xvckNvbXBvbmVudHNbNF0gPSB7IDEsIDAsIDAsIDEgfTsKLWNvbnN0ZXhw
ciBDR0Zsb2F0IGJsdWVDb2xvckNvbXBvbmVudHNbNF0gPSB7IDAsIDAsIDEsIDEgfTsKLQogVEVT
VChXS1dlYlZpZXdUaGVtZUNvbG9yLCBNZXRhRWxlbWVudFZhbGlkTmFtZUFuZENvbG9yKQogewog
ICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0
aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CmRpZmYgLS1naXQgYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dLV2ViVmlld1VuZGVyUGFnZUJhY2tncm91
bmRDb2xvci5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJW
aWV3VW5kZXJQYWdlQmFja2dyb3VuZENvbG9yLm1tCmluZGV4IDlhOTFjZWZkNzMwOWMxZDFmM2Qw
NTNhODA0M2QwYzA5ZWM2N2E1MDAuLmExY2I3YzQwMGE0MWY3MmZiYWE3MWMzNGM2OGZkMjNmODIx
NTE4MDMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
V0tXZWJWaWV3VW5kZXJQYWdlQmFja2dyb3VuZENvbG9yLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJWaWV3VW5kZXJQYWdlQmFja2dyb3VuZENvbG9y
Lm1tCkBAIC0zOSw5ICszOSw2IEBACiAgICAgRVhQRUNUX1RSVUUoW2FjdHVhbCBpc0tpbmRPZkNs
YXNzOltOU1N0cmluZyBjbGFzc11dKTsgXAogICAgIEVYUEVDVF9XS19TVFJFUShleHBlY3RlZCwg
KE5TU3RyaW5nICopYWN0dWFsKTsKIAotY29uc3RleHByIENHRmxvYXQgcmVkQ29sb3JDb21wb25l
bnRzWzRdID0geyAxLCAwLCAwLCAxIH07Ci1jb25zdGV4cHIgQ0dGbG9hdCBibHVlQ29sb3JDb21w
b25lbnRzWzRdID0geyAwLCAwLCAxLCAxIH07Ci0KIHN0YXRpYyBSZXRhaW5QdHI8Q0dDb2xvcj4g
ZGVmYXVsdEJhY2tncm91bmRDb2xvcigpCiB7CiAjaWYgSEFWRShPU19EQVJLX01PREVfU1VQUE9S
VCkgJiYgUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9XZWJQcm9jZXNzVGVybWluYXRlLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJQcm9jZXNzVGVybWluYXRlLm1tCmluZGV4IDU5NTQyZWJi
YTE2ZWY4ZDQwYzFlZjIwYTUzYjZjYjViMmQzZjY0MjIuLjg1MTE4ODhjZGZhZGJjNDkzMzk4NmEy
ZWU0ZWVkYjI5M2EwMDcyMjUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvV2ViUHJvY2Vzc1Rlcm1pbmF0ZS5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYlByb2Nlc3NUZXJtaW5hdGUubW0KQEAgLTMyLDYgKzMy
LDcgQEAKICNpbXBvcnQgPFdlYktpdC9XS1Byb2Nlc3NQb29sUHJpdmF0ZS5oPgogI2ltcG9ydCA8
V2ViS2l0L1dLV2ViVmlld1ByaXZhdGUuaD4KICNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KKyNp
bXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogVEVTVChXZWJLaXQsIFdlYlByb2Nlc3NUZXJtaW5h
dGUpCiB7CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL2NvY29hL1Rlc3RDb2NvYS5o
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0Q29jb2EuaAppbmRleCBlZWFkY2JiOWIz
MGNlYjA5NDBhZDMzMDgzNjc0YjdkMjVhNDYzNmRkLi5hODY5YzZhNTg1ODVjNDVlNzNkNDEyYjdj
YzYxMmM1ZGVjNGQ4NmI4IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL2NvY29hL1Rl
c3RDb2NvYS5oCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29jb2EvVGVzdENvY29hLmgKQEAg
LTUwLDYgKzUwLDkgQEAgc3RhdGljIGlubGluZSA6OnRlc3Rpbmc6OkFzc2VydGlvblJlc3VsdCBh
c3NlcnROU09iamVjdHNBcmVFcXVhbChjb25zdCBjaGFyKiBleHAKIHN0ZDo6b3N0cmVhbSYgb3Bl
cmF0b3I8PChzdGQ6Om9zdHJlYW0mLCBjb25zdCBDR1JlY3QmKTsKIGJvb2wgb3BlcmF0b3I9PShj
b25zdCBDR1JlY3QmLCBjb25zdCBDR1JlY3QmKTsKIAorY29uc3RleHByIENHRmxvYXQgcmVkQ29s
b3JDb21wb25lbnRzWzRdID0geyAxLCAwLCAwLCAxIH07Citjb25zdGV4cHIgQ0dGbG9hdCBibHVl
Q29sb3JDb21wb25lbnRzWzRdID0geyAwLCAwLCAxLCAxIH07CisKICNlbmRpZgogCiAjaWYgUExB
VEZPUk0oTUFDKSAmJiAhZGVmaW5lZChOU0dFT01FVFJZX1RZUEVTX1NBTUVfQVNfQ0dHRU9NRVRS
WV9UWVBFUykK
</data>

          </attachment>
      

    </bug>

</bugzilla>