<?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>208819</bug_id>
          
          <creation_ts>2020-03-09 10:14:51 -0700</creation_ts>
          <short_desc>ResourceLoadStatistics: Remove unused code for data removal settings no longer used</short_desc>
          <delta_ts>2020-03-09 10:21:36 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="John Wilander">wilander</reporter>
          <assigned_to name="John Wilander">wilander</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1627825</commentid>
    <comment_count>0</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-03-09 10:14:51 -0700</bug_when>
    <thetext>We have old ITP data removal code that should be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627826</commentid>
    <comment_count>1</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-03-09 10:15:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/57673418&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627829</commentid>
    <comment_count>2</comment_count>
      <attachid>393048</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-03-09 10:20:45 -0700</bug_when>
    <thetext>Created attachment 393048
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627830</commentid>
    <comment_count>3</comment_count>
      <attachid>393048</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-03-09 10:21:36 -0700</bug_when>
    <thetext>Comment on attachment 393048
Patch

WiP patch. Not looking for a review now.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393048</attachid>
            <date>2020-03-09 10:20:45 -0700</date>
            <delta_ts>2020-03-09 10:21:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208819-20200309102042.patch</filename>
            <type>text/plain</type>
            <size>53715</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MDEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk0MWVkZDU5ZjMzZTg2
Nzg3OTg2MDc0NjhmMGM1MDRhZjYxZDM0OC4uNjQ2YWVjYWRjMjQwZDk3NzJlODNjYzEzOTE3YmU0
ZDljYmIyNzViYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAzLTA5ICBKb2hu
IFdpbGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlTG9hZFN0
YXRpc3RpY3M6IFJlbW92ZSB1bnVzZWQgY29kZSBmb3IgZGF0YSByZW1vdmFsIHNldHRpbmdzIG5v
IGxvbmdlciB1c2VkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDg4MTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3NjczNDE4PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgaXMgYSB3b3JrLWlu
LXByb2dyZXNzIHBhdGNoLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gRXhpc3RpbmcgdGVzdHMg
dXBkYXRlZC4gT2Jzb2xldGUgdGVzdHMgcmVtb3ZlZC4KKworICAgICAgICAqIHBhZ2UvU2V0dGlu
Z3MueWFtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lv
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNob3VsZEJs
b2NrQ29va2llcyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaDoKKwogMjAyMC0wMy0wNiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2Vy
QGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIHN5bmNocm9ub3VzU2Nyb2xsaW5nUmVhc29ucyB0
byBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBiYWFjYmM5NWQxZGQyYjMx
NDAyYjRlNDVlYmZkODY4MzNhOTI3YWQ1Li5jODMyZWEwYWE5NTRiNDBlYjg2Yjg1NDQwYmIwNTZm
ODUyYTQzNTdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTAzLTA5ICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlTG9hZFN0YXRp
c3RpY3M6IFJlbW92ZSB1bnVzZWQgY29kZSBmb3IgZGF0YSByZW1vdmFsIHNldHRpbmdzIG5vIGxv
bmdlciB1c2VkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDg4MTkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3NjczNDE4PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgaXMgYSB3b3JrLWluLXBy
b2dyZXNzIHBhdGNoLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5jcHA6CisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmU6OmFyZUFs
bFRoaXJkUGFydHlDb29raWVzQmxvY2tlZFVuZGVyKToKKyAgICAgICAgKFdlYktpdDo6UmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlOjpzaG91bGRSZW1vdmVBbGxCdXRDb29raWVzRm9y
IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9h
ZFN0YXRpc3RpY3NTdG9yZTo6c2V0Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUpOgor
ICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6c2V0U2hvdWxkQmxvY2tUaGlyZFBh
cnR5Q29va2llc0ZvclRlc3RpbmcpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQ
cm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFNoYXJlZC9XZWJQcmVmZXJlbmNlcy55YW1s
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1dlYnNpdGVEYXRhU3RvcmVSZWYuY3BwOgor
ICAgICAgICAoV0tXZWJzaXRlRGF0YVN0b3JlU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc1Nob3Vs
ZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNGb3JUZXN0aW5nKToKKyAgICAgICAgKFdLV2Vic2l0ZURh
dGFTdG9yZVN0YXRpc3RpY3NSZXNldFRvQ29uc2lzdGVudFN0YXRlKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0YVN0b3JlUmVmLmg6CisgICAgICAgICogVUlQcm9jZXNz
L1dlYlByb2Nlc3NQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2Nv
YS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRh
U3RvcmU6OnRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpwYXJhbWV0ZXJzKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYnNp
dGVEYXRhU3RvcmU6OnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFy
dHlDb29raWVzRm9yVGVzdGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6
OnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9k
ZUZvclRlc3RpbmcpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0
YVN0b3JlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgor
CiAyMDIwLTAzLTA2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIE1vdmUgc3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zIHRvIFNjcm9sbGluZ1RyZWVT
Y3JvbGxpbmdOb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLnlh
bWwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLnlhbWwKaW5kZXggYTZkMzQyOGQ3ZGEz
ZGJlZGFmMDEzMDI4YTQ0OTEyNzUxNTc0YjViNC4uMjJmMzYyZTdhNDYxMmJkODUyMTdhZGZiMmQy
NGJlNDFiNTlhZDljYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55
YW1sCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbApAQCAtODk3LDE4ICs4
OTcsNiBAQCB3ZWJSVENFbmNyeXB0aW9uRW5hYmxlZDoKICAgaW5pdGlhbDogdHJ1ZQogICBpbnNw
ZWN0b3JPdmVycmlkZTogdHJ1ZQogCi1pc1RoaXJkUGFydHlDb29raWVCbG9ja2luZ0Rpc2FibGVk
OgotICBpbml0aWFsOiBmYWxzZQotCi1pc0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxEaXNh
YmxlZDoKLSAgaW5pdGlhbDogZmFsc2UKLQotaXNGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFs
TGl2ZU9uVGVzdGluZ0VuYWJsZWQ6Ci0gIGluaXRpYWw6IGZhbHNlCi0KLWlzRmlyc3RQYXJ0eVdl
YnNpdGVEYXRhUmVtb3ZhbFJlcHJvVGVzdGluZ0VuYWJsZWQ6Ci0gIGluaXRpYWw6IGZhbHNlCi0K
IGlzTG9nZ2VkSW5BUElFbmFibGVkOgogICBpbml0aWFsOiBmYWxzZQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5j
cHAKaW5kZXggYTRlZWRlMTZhZGQ1NmRmNWY2ZjA3ZDVhMmQ1MTM5YjY4ZjBlMWFkNS4uZWM3OWJj
ZDhiOTY1MTFiMzBiNzQwOTZhYjZjMzJmYjEzMTFjNmRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmNwcApA
QCAtMTI2LDEyICsxMjYsOCBAQCBib29sIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hvdWxkQmxv
Y2tDb29raWVzKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eUZvckNvb2tpZXMsCiAgICAgc3dpdGNoICht
X3RoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUpIHsKICAgICBjYXNlIFRoaXJkUGFydHlDb29r
aWVCbG9ja2luZ01vZGU6OkFsbDoKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgY2FzZSBUaGly
ZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpBbGxPblNpdGVzV2l0aG91dFVzZXJJbnRlcmFjdGlv
bjoKLSAgICAgICAgaWYgKCFoYXNIYWRVc2VySW50ZXJhY3Rpb25Bc0ZpcnN0UGFydHkoZmlyc3RQ
YXJ0eURvbWFpbikpCi0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgRkFMTFRIUk9V
R0g7Ci0gICAgY2FzZSBUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpPbmx5QWNjb3JkaW5n
VG9QZXJEb21haW5Qb2xpY3k6Ci0gICAgICAgIHJldHVybiBzaG91bGRCbG9ja1RoaXJkUGFydHlD
b29raWVzKHJlc291cmNlRG9tYWluKTsKKyAgICBjYXNlIFRoaXJkUGFydHlDb29raWVCbG9ja2lu
Z01vZGU6Ok5vbmVGb3JUZXN0aW5nOgorICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oCmlu
ZGV4IDE5NmQzOThmODVlMTg5NDczOTg5NzFkYjJiZGJhNTQ0MjkxNmZjOGQuLjRjMGUyNGFhZDk3
ZjgzMTA1NTJjMzRlNGFmMTE2ZGUzNjUwZDM5N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaApAQCAtNzcsOCAr
NzcsOCBAQCBzdHJ1Y3QgU2FtZVNpdGVJbmZvOwogZW51bSBjbGFzcyBIVFRQQ29va2llQWNjZXB0
UG9saWN5IDogdWludDhfdDsKIGVudW0gY2xhc3MgSW5jbHVkZVNlY3VyZUNvb2tpZXMgOiBib29s
OwogZW51bSBjbGFzcyBJbmNsdWRlSHR0cE9ubHlDb29raWVzIDogYm9vbDsKLWVudW0gY2xhc3Mg
VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSA6IHVpbnQ4X3QgeyBBbGwsIEFsbE9uU2l0ZXNX
aXRob3V0VXNlckludGVyYWN0aW9uLCBPbmx5QWNjb3JkaW5nVG9QZXJEb21haW5Qb2xpY3kgfTsK
LWVudW0gY2xhc3MgRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgOiB1aW50OF90IHsg
QWxsQnV0Q29va2llcywgTm9uZSwgQWxsQnV0Q29va2llc0xpdmVPblRlc3RpbmdUaW1lb3V0LCBB
bGxCdXRDb29raWVzUmVwcm9UZXN0aW5nVGltZW91dCB9OworZW51bSBjbGFzcyBUaGlyZFBhcnR5
Q29va2llQmxvY2tpbmdNb2RlIDogYm9vbCB7IEFsbCwgTm9uZUZvclRlc3RpbmcgfTsKK2VudW0g
Y2xhc3MgRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgOiBib29sIHsgQWxsQnV0Q29v
a2llcywgTm9uZUZvclRlc3RpbmcgfTsKIGVudW0gY2xhc3MgU2hvdWxkQXNrSVRQIDogYm9vbCB7
IE5vLCBZZXMgfTsKIAogI2lmIEhBVkUoQ09PS0lFX0NIQU5HRV9MSVNURU5FUl9BUEkpCkBAIC0y
NjksMjYgKzI2OSwzIEBAIFdFQkNPUkVfRVhQT1JUIENGVVJMU3RvcmFnZVNlc3Npb25SZWYgY3Jl
YXRlUHJpdmF0ZVN0b3JhZ2VTZXNzaW9uKENGU3RyaW5nUmVmIGlkCiAjZW5kaWYKIAogfQotCi1u
YW1lc3BhY2UgV1RGIHsKLQotdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpU
aGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlPiB7Ci0gICAgdXNpbmcgdmFsdWVzID0gRW51bVZh
bHVlczwKLSAgICAgICAgV2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSwKLSAg
ICAgICAgV2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsLAotICAgICAg
ICBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpBbGxPblNpdGVzV2l0aG91
dFVzZXJJbnRlcmFjdGlvbiwKLSAgICAgICAgV2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2Nr
aW5nTW9kZTo6T25seUFjY29yZGluZ1RvUGVyRG9tYWluUG9saWN5Ci0gICAgPjsKLX07Ci0KLXRl
bXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRh
UmVtb3ZhbE1vZGU+IHsKLSAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAotICAgICAgICBX
ZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSwKLSAgICAgICAgV2ViQ29y
ZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGU6OkFsbEJ1dENvb2tpZXMsCi0gICAg
ICAgIFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpOb25lLAotICAg
ICAgICBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29v
a2llc0xpdmVPblRlc3RpbmdUaW1lb3V0LAotICAgICAgICBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vi
c2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29va2llc1JlcHJvVGVzdGluZ1RpbWVvdXQKLSAg
ICA+OwotfTsKLQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9D
bGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNz
RGF0YWJhc2VTdG9yZS5jcHAKaW5kZXggNWQ4NTNmZGQ0Zjk4YmRkMzNmYTgyMTkzYjQzMzVhYmU2
OWI4MDBlZi4uNjdjMmVjMzVkNDYzNjk0ZTQxODBiMjAxZWUwZTM4ZThmNjY4MDExOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9h
ZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmUuY3Bw
CkBAIC0yMDAzLDEzICsyMDAzLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJh
c2VTdG9yZTo6Y2xlYXIoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXAKIAogYm9vbCBS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZTo6YXJlQWxsVGhpcmRQYXJ0eUNvb2tp
ZXNCbG9ja2VkVW5kZXIoY29uc3QgVG9wRnJhbWVEb21haW4mIHRvcEZyYW1lRG9tYWluKQogewot
ICAgIGlmICh0aGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlKCkgPT0gVGhpcmRQYXJ0eUNvb2tp
ZUJsb2NraW5nTW9kZTo6QWxsKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIGlmICh0aGly
ZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlKCkgPT0gVGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9k
ZTo6QWxsT25TaXRlc1dpdGhvdXRVc2VySW50ZXJhY3Rpb24gJiYgIWhhc0hhZFVzZXJJbnRlcmFj
dGlvbih0b3BGcmFtZURvbWFpbiwgT3BlcmF0aW5nRGF0ZXNXaW5kb3c6OkxvbmcpKQotICAgICAg
ICByZXR1cm4gdHJ1ZTsKLQotICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gdGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nTW9kZSgpID09IFRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGU6OkFs
bDsKIH0KIAogQ29va2llQWNjZXNzIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3Jl
Ojpjb29raWVBY2Nlc3MoY29uc3QgU3ViUmVzb3VyY2VEb21haW4mIHN1YnJlc291cmNlRG9tYWlu
LCBjb25zdCBUb3BGcmFtZURvbWFpbiYgdG9wRnJhbWVEb21haW4pCkBAIC0yMjM1LDI0ICsyMjI5
LDEwIEBAIGJvb2wgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnNob3VsZFJl
bW92ZUFsbFdlYnNpdGVEYXRhRm9yKGNvbnN0IERvCiAKIGJvb2wgUmVzb3VyY2VMb2FkU3RhdGlz
dGljc0RhdGFiYXNlU3RvcmU6OnNob3VsZFJlbW92ZUFsbEJ1dENvb2tpZXNGb3IoY29uc3QgRG9t
YWluRGF0YSYgcmVzb3VyY2VTdGF0aXN0aWMsIGJvb2wgc2hvdWxkQ2hlY2tGb3JHcmFuZGZhdGhl
cmluZykKIHsKLSAgICBib29sIGlzUmVtb3ZhbEVuYWJsZWQgPSBmaXJzdFBhcnR5V2Vic2l0ZURh
dGFSZW1vdmFsTW9kZSgpICE9IEZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpOb25l
IHx8IHJlc291cmNlU3RhdGlzdGljLmlzU2NoZWR1bGVkRm9yQWxsQnV0Q29va2llRGF0YVJlbW92
YWw7CisgICAgYm9vbCBpc1JlbW92YWxFbmFibGVkID0gZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVt
b3ZhbE1vZGUoKSAhPSBGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6Tm9uZUZvclRl
c3RpbmcgfHwgcmVzb3VyY2VTdGF0aXN0aWMuaXNTY2hlZHVsZWRGb3JBbGxCdXRDb29raWVEYXRh
UmVtb3ZhbDsKICAgICBib29sIGlzUmVzb3VyY2VHcmFuZGZhdGhlcmVkID0gc2hvdWxkQ2hlY2tG
b3JHcmFuZGZhdGhlcmluZyAmJiByZXNvdXJjZVN0YXRpc3RpYy5ncmFuZGZhdGhlcmVkOwogCi0g
ICAgT3BlcmF0aW5nRGF0ZXNXaW5kb3cgd2luZG93IHsgfTsKLSAgICBzd2l0Y2ggKGZpcnN0UGFy
dHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlKCkpIHsKLSAgICBjYXNlIEZpcnN0UGFydHlXZWJzaXRl
RGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzOgotICAgICAgICBGQUxMVEhST1VHSDsKLSAg
ICBjYXNlIEZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpOb25lOgotICAgICAgICB3
aW5kb3cgPSBPcGVyYXRpbmdEYXRlc1dpbmRvdzo6U2hvcnQ7Ci0gICAgICAgIGJyZWFrOwotICAg
IGNhc2UgRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGU6OkFsbEJ1dENvb2tpZXNMaXZl
T25UZXN0aW5nVGltZW91dDoKLSAgICAgICAgd2luZG93ID0gT3BlcmF0aW5nRGF0ZXNXaW5kb3c6
OkZvckxpdmVPblRlc3Rpbmc7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgRmlyc3RQYXJ0eVdl
YnNpdGVEYXRhUmVtb3ZhbE1vZGU6OkFsbEJ1dENvb2tpZXNSZXByb1Rlc3RpbmdUaW1lb3V0Ogot
ICAgICAgICB3aW5kb3cgPSBPcGVyYXRpbmdEYXRlc1dpbmRvdzo6Rm9yUmVwcm9UZXN0aW5nOwot
ICAgIH0KLQotICAgIHJldHVybiBpc1JlbW92YWxFbmFibGVkICYmICFpc1Jlc291cmNlR3JhbmRm
YXRoZXJlZCAmJiAhaGFzSGFkVW5leHBpcmVkUmVjZW50VXNlckludGVyYWN0aW9uKHJlc291cmNl
U3RhdGlzdGljLCB3aW5kb3cpOworICAgIHJldHVybiBpc1JlbW92YWxFbmFibGVkICYmICFpc1Jl
c291cmNlR3JhbmRmYXRoZXJlZCAmJiAhaGFzSGFkVW5leHBpcmVkUmVjZW50VXNlckludGVyYWN0
aW9uKHJlc291cmNlU3RhdGlzdGljLCBPcGVyYXRpbmdEYXRlc1dpbmRvdzo6U2hvcnQpOwogfQog
CiBWZWN0b3I8c3RkOjpwYWlyPFJlZ2lzdHJhYmxlRG9tYWluLCBXZWJzaXRlRGF0YVRvUmVtb3Zl
Pj4gUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OnJlZ2lzdHJhYmxlRG9tYWlu
c1RvUmVtb3ZlV2Vic2l0ZURhdGFGb3IoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc01lbW9yeVN0b3JlLmNwcAppbmRleCA3YTg0YzBjZDliYjY0MzZmMmVjNzRmNTlm
OTk3YTY3YTMyYTliMGI3Li4wMzk2Y2M1NTRjMTE2MzgxMTIxNjgwOGExMWMxMzI5NWFhMThiNDBj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVz
b3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3Jl
LmNwcApAQCAtMjU0LDEzICsyNTQsNyBAQCB2b2lkIFJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1v
cnlTdG9yZTo6c3luY1N0b3JhZ2VJbW1lZGlhdGVseSgpCiAKIGJvb2wgUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc01lbW9yeVN0b3JlOjphcmVBbGxUaGlyZFBhcnR5Q29va2llc0Jsb2NrZWRVbmRlcihj
b25zdCBUb3BGcmFtZURvbWFpbiYgdG9wRnJhbWVEb21haW4pCiB7Ci0gICAgaWYgKHRoaXJkUGFy
dHlDb29raWVCbG9ja2luZ01vZGUoKSA9PSBUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpB
bGwpCi0gICAgICAgIHJldHVybiB0cnVlOwotCi0gICAgaWYgKHRoaXJkUGFydHlDb29raWVCbG9j
a2luZ01vZGUoKSA9PSBUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpBbGxPblNpdGVzV2l0
aG91dFVzZXJJbnRlcmFjdGlvbiAmJiAhaGFzSGFkVXNlckludGVyYWN0aW9uKHRvcEZyYW1lRG9t
YWluLCBPcGVyYXRpbmdEYXRlc1dpbmRvdzo6TG9uZykpCi0gICAgICAgIHJldHVybiB0cnVlOwot
Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiB0aGlyZFBhcnR5Q29va2llQmxvY2tpbmdN
b2RlKCkgPT0gVGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsOwogfQogCiBDb29raWVB
Y2Nlc3MgUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlOjpjb29raWVBY2Nlc3MoY29u
c3QgUmVzb3VyY2VMb2FkU3RhdGlzdGljcyYgcmVzb3VyY2VTdGF0aXN0aWMsIGNvbnN0IFRvcEZy
YW1lRG9tYWluJiB0b3BGcmFtZURvbWFpbikKQEAgLTg5NCwyNCArODg4LDEwIEBAIGJvb2wgUmVz
b3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlOjpzaG91bGRSZW1vdmVBbGxXZWJzaXRlRGF0
YUZvcihSZXNvdXJjZUxvCiAKIGJvb2wgUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3Jl
OjpzaG91bGRSZW1vdmVBbGxCdXRDb29raWVzRm9yKFJlc291cmNlTG9hZFN0YXRpc3RpY3MmIHJl
c291cmNlU3RhdGlzdGljLCBib29sIHNob3VsZENoZWNrRm9yR3JhbmRmYXRoZXJpbmcpIGNvbnN0
CiB7Ci0gICAgYm9vbCBpc1JlbW92YWxFbmFibGVkID0gZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVt
b3ZhbE1vZGUoKSAhPSBGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6Tm9uZSB8fCBy
ZXNvdXJjZVN0YXRpc3RpYy5nb3RMaW5rRGVjb3JhdGlvbkZyb21QcmV2YWxlbnRSZXNvdXJjZTsK
KyAgICBib29sIGlzUmVtb3ZhbEVuYWJsZWQgPSBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFs
TW9kZSgpICE9IEZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpOb25lRm9yVGVzdGlu
ZyB8fCByZXNvdXJjZVN0YXRpc3RpYy5nb3RMaW5rRGVjb3JhdGlvbkZyb21QcmV2YWxlbnRSZXNv
dXJjZTsKICAgICBib29sIGlzUmVzb3VyY2VHcmFuZGZhdGhlcmVkID0gc2hvdWxkQ2hlY2tGb3JH
cmFuZGZhdGhlcmluZyAmJiByZXNvdXJjZVN0YXRpc3RpYy5ncmFuZGZhdGhlcmVkOwotICAgIAot
ICAgIE9wZXJhdGluZ0RhdGVzV2luZG93IHdpbmRvdyB7IH07Ci0gICAgc3dpdGNoIChmaXJzdFBh
cnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSgpKSB7Ci0gICAgY2FzZSBGaXJzdFBhcnR5V2Vic2l0
ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29va2llczoKLSAgICAgICAgRkFMTFRIUk9VR0g7Ci0g
ICAgY2FzZSBGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6Tm9uZToKLSAgICAgICAg
d2luZG93ID0gT3BlcmF0aW5nRGF0ZXNXaW5kb3c6OlNob3J0OwotICAgICAgICBicmVhazsKLSAg
ICBjYXNlIEZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzTGl2
ZU9uVGVzdGluZ1RpbWVvdXQ6Ci0gICAgICAgIHdpbmRvdyA9IE9wZXJhdGluZ0RhdGVzV2luZG93
OjpGb3JMaXZlT25UZXN0aW5nOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEZpcnN0UGFydHlX
ZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzUmVwcm9UZXN0aW5nVGltZW91dDoK
LSAgICAgICAgd2luZG93ID0gT3BlcmF0aW5nRGF0ZXNXaW5kb3c6OkZvclJlcHJvVGVzdGluZzsK
LSAgICB9CiAKLSAgICByZXR1cm4gaXNSZW1vdmFsRW5hYmxlZCAmJiAhaXNSZXNvdXJjZUdyYW5k
ZmF0aGVyZWQgJiYgIWhhc0hhZFVuZXhwaXJlZFJlY2VudFVzZXJJbnRlcmFjdGlvbihyZXNvdXJj
ZVN0YXRpc3RpYywgd2luZG93KTsKKyAgICByZXR1cm4gaXNSZW1vdmFsRW5hYmxlZCAmJiAhaXNS
ZXNvdXJjZUdyYW5kZmF0aGVyZWQgJiYgIWhhc0hhZFVuZXhwaXJlZFJlY2VudFVzZXJJbnRlcmFj
dGlvbihyZXNvdXJjZVN0YXRpc3RpYywgT3BlcmF0aW5nRGF0ZXNXaW5kb3c6OlNob3J0KTsKIH0K
IAogVmVjdG9yPHN0ZDo6cGFpcjxSZWdpc3RyYWJsZURvbWFpbiwgV2Vic2l0ZURhdGFUb1JlbW92
ZT4+IFJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZTo6cmVnaXN0cmFibGVEb21haW5z
VG9SZW1vdmVXZWJzaXRlRGF0YUZvcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzU3RvcmUuY3BwCmluZGV4IGVmZTk5MTliOGM1M2NiYWRlNDE1Mjg5YmVmZTJmZTVh
MWZjYTkzOWIuLjJlMjVmNGYwYTI4NzQ4YjJiZGZhZmMyMjE5ODUwZmQ2ZDE2ZDNiNmYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCkBAIC02MDYs
MTEgKzYwNiw4IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpzZXRGaXJz
dFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZShGaXJzdFBhCiAgICAgfQogCiAgICAgcG9zdFRh
c2soW3RoaXMsIG1vZGUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildKCkgbXV0YWJsZSB7Ci0gICAgICAgIGlmIChtX3N0YXRpc3RpY3NTdG9yZSkgeworICAg
ICAgICBpZiAobV9zdGF0aXN0aWNzU3RvcmUpCiAgICAgICAgICAgICBtX3N0YXRpc3RpY3NTdG9y
ZS0+c2V0Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUobW9kZSk7Ci0gICAgICAgICAg
ICBpZiAobW9kZSA9PSBGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29v
a2llc1JlcHJvVGVzdGluZ1RpbWVvdXQpCi0gICAgICAgICAgICAgICAgbV9zdGF0aXN0aWNzU3Rv
cmUtPnNldElzUnVubmluZ1Rlc3QodHJ1ZSk7Ci0gICAgICAgIH0KICAgICAgICAgcG9zdFRhc2tS
ZXBseShbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBt
dXRhYmxlIHsKICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiAgICAgICAgIH0pOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCmluZGV4IGVmMWI4
MTA5YmFjNGUxOWFmMWYwZTM3NmQwYTUyZjljZTNjY2QyMzMuLmY0YTVjODQzMzJiOGM4N2YyYTk4
ZDEwOGE2OTFkNjlkMWQ3ODU3NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlLmgKQEAgLTU3LDcgKzU3LDcgQEAgZW51bSBjbGFzcyBTaG91bGRTYW1wbGUg
OiBib29sOwogZW51bSBjbGFzcyBJbmNsdWRlSHR0cE9ubHlDb29raWVzIDogYm9vbDsKIGVudW0g
Y2xhc3MgU3RvcmFnZUFjY2Vzc1Byb21wdFdhc1Nob3duIDogYm9vbDsKIGVudW0gY2xhc3MgU3Rv
cmFnZUFjY2Vzc1dhc0dyYW50ZWQgOiBib29sOwotZW51bSBjbGFzcyBUaGlyZFBhcnR5Q29va2ll
QmxvY2tpbmdNb2RlIDogdWludDhfdDsKK2VudW0gY2xhc3MgVGhpcmRQYXJ0eUNvb2tpZUJsb2Nr
aW5nTW9kZSA6IGJvb2w7CiB9CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCAwOWJjNDJjYjUzMTE0
ZDA4OWMzNzk0YWU3YjAwNTAzNjU1YTQ0OTlkLi5lNDllODkxODhhY2M1MWFkMDllYjAxNWU2YzFj
N2VhZjA4OWU1N2VmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmNwcApAQCAtMTI5NCwxMSArMTI5NCwxNSBAQCB2b2lkIE5ldHdvcmtQcm9jZXNz
OjpzZXRTaG91bGREb3duZ3JhZGVSZWZlcnJlckZvclRlc3RpbmcoYm9vbCBlbmFibGVkLCBDb21w
bGV0aQogCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRTaG91bGRCbG9ja1RoaXJkUGFydHlDb29r
aWVzRm9yVGVzdGluZyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIFdlYkNvcmU6OlRoaXJkUGFy
dHlDb29raWVCbG9ja2luZ01vZGUgYmxvY2tpbmdNb2RlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CisgICAgV1RGTG9nQWx3YXlzKCJSZXNvdXJjZUxv
YWRMb2cgfCBzZXRTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9yVGVzdGluZyAxICVzIiwg
YmxvY2tpbmdNb2RlID09IFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGU6OkFs
bCA/ICJ0cnVlIiA6ICJmYWxzZSIpOworCiAgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0g
dGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkKICAgICAgICAgbmV0d29ya1Nlc3Npb24t
PnNldFRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUoYmxvY2tpbmdNb2RlKTsKICAgICBlbHNl
CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7
CisKKyAgICBXVEZMb2dBbHdheXMoIlJlc291cmNlTG9hZExvZyB8IHNldFNob3VsZEJsb2NrVGhp
cmRQYXJ0eUNvb2tpZXNGb3JUZXN0aW5nIDIgJXMiLCBibG9ja2luZ01vZGUgPT0gV2ViQ29yZTo6
VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsID8gInRydWUiIDogImZhbHNlIik7CiB9
CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldEZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxN
b2RlRm9yVGVzdGluZyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIFdlYkNvcmU6OkZpcnN0UGFy
dHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlIG1vZGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IGViZWJhZGRmYmQyZTAzNmRk
MDJmNGVmYmY5OTY0NTYxM2ViMjgyMDYuLjU0Y2M0OWMxMDY4MGIzYjk1YTJjYzBmOGRkOTdkZTlh
MTYzN2NjYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Byb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAtMTQxLDggKzE0MSw4IEBAIG1lc3NhZ2VzIC0+
IE5ldHdvcmtQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBEZWxldGVDb29raWVzRm9yVGVz
dGluZyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWlu
IGRvbWFpbiwgYm9vbCBpbmNsdWRlSHR0cE9ubHlDb29raWVzKSAtPiAoKSBBc3luYwogICAgIEhh
c0lzb2xhdGVkU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIFdlYkNvcmU6OlJlZ2lz
dHJhYmxlRG9tYWluIGRvbWFpbikgLT4gKGJvb2wgaGFzSXNvbGF0ZWRTZXNzaW9uKSBBc3luYwog
ICAgIFNldFNob3VsZERvd25ncmFkZVJlZmVycmVyRm9yVGVzdGluZyhib29sIGVuYWJsZWQpIC0+
ICgpIEFzeW5jCi0gICAgU2V0U2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3Rpbmco
UEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nTW9kZSBibG9ja2luZ01vZGUpIC0+ICgpIEFzeW5jCi0gICAgU2V0Rmly
c3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGVGb3JUZXN0aW5nKFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCwgZW51bTp1aW50OF90IFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92
YWxNb2RlIG1vZGUpIC0+ICgpIEFzeW5jCisgICAgU2V0U2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29v
a2llc0ZvclRlc3RpbmcoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBlbnVtOmJvb2wgV2ViQ29y
ZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSBibG9ja2luZ01vZGUpIC0+ICgpIEFzeW5j
CisgICAgU2V0Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGVGb3JUZXN0aW5nKFBBTDo6
U2Vzc2lvbklEIHNlc3Npb25JRCwgZW51bTpib29sIFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRl
RGF0YVJlbW92YWxNb2RlIG1vZGUpIC0+ICgpIEFzeW5jCiAjZW5kaWYKIAogICAgIFNldFNlc3Np
b25Jc0NvbnRyb2xsZWRCeUF1dG9tYXRpb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBib29s
IGNvbnRyb2xsZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJlZmVy
ZW5jZXMueWFtbCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwKaW5k
ZXggOTcxNTI4NTIwNzU3ZjllNDBlNjBmYmUwYjk1ZWFmMjQ1YmI5ODdhMi4uMzhhN2ViOGI2ZjVm
NTIyMWM1N2QxNjU1ZmMwYTc4YjdmMzQzNzY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViUHJlZmVyZW5jZXMueWFtbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQ
cmVmZXJlbmNlcy55YW1sCkBAIC0xODcyLDM0ICsxODcyLDYgQEAgTGF6eUltYWdlTG9hZGluZ0Vu
YWJsZWQ6CiAgIHdlYmNvcmVCaW5kaW5nOiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzCiAgIGNhdGVn
b3J5OiBleHBlcmltZW50YWwKIAotSXNUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdEaXNhYmxlZDoK
LSAgdHlwZTogYm9vbAotICBkZWZhdWx0VmFsdWU6IGZhbHNlCi0gIGh1bWFuUmVhZGFibGVOYW1l
OiAiRGlzYWJsZSBGdWxsIDNyZC1QYXJ0eSBDb29raWUgQmxvY2tpbmcgKElUUCkiCi0gIGh1bWFu
UmVhZGFibGVEZXNjcmlwdGlvbjogIkRpc2FibGUgZnVsbCB0aGlyZC1wYXJ0eSBjb29raWUgYmxv
Y2tpbmcgd2hlbiBJbnRlbGxpZ2VudCBUcmFja2luZyBQcmV2ZW50aW9uIGlzIGVuYWJsZWQiCi0g
IGNhdGVnb3J5OiBleHBlcmltZW50YWwKLQotSXNGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFs
RGlzYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAgZGVmYXVsdFZhbHVlOiBmYWxzZQotICBodW1hblJl
YWRhYmxlTmFtZTogIkRpc2FibGUgUmVtb3ZhbCBvZiBOb24tQ29va2llIERhdGEgQWZ0ZXIgNyBE
YXlzIG9mIE5vIFVzZXIgSW50ZXJhY3Rpb24gKElUUCkiCi0gIGh1bWFuUmVhZGFibGVEZXNjcmlw
dGlvbjogIkRpc2FibGUgcmVtb3ZhbCBvZiBhbGwgbm9uLWNvb2tpZSB3ZWJzaXRlIGRhdGEgYWZ0
ZXIgc2V2ZW4gZGF5cyBvZiBubyB1c2VyIGludGVyYWN0aW9uIHdoZW4gSW50ZWxsaWdlbnQgVHJh
Y2tpbmcgUHJldmVudGlvbiBpcyBlbmFibGVkIgotICBjYXRlZ29yeTogZXhwZXJpbWVudGFsCi0K
LUlzRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbExpdmVPblRlc3RpbmdFbmFibGVkOgotICB0
eXBlOiBib29sCi0gIGRlZmF1bHRWYWx1ZTogZmFsc2UKLSAgaHVtYW5SZWFkYWJsZU5hbWU6ICJb
SVRQIExpdmUtT25dIDEgSG91ciBUaW1lb3V0IEZvciBOb24tQ29va2llIERhdGEgUmVtb3ZhbCIK
LSAgaHVtYW5SZWFkYWJsZURlc2NyaXB0aW9uOiAiUmVtb3ZlIGFsbCBub24tY29va2llIHdlYnNp
dGUgZGF0YSBhZnRlciBqdXN0IG9uZSBob3VyIG9mIG5vIHVzZXIgaW50ZXJhY3Rpb24gd2hlbiBJ
bnRlbGxpZ2VudCBUcmFja2luZyBQcmV2ZW50aW9uIGlzIGVuYWJsZWQiCi0gIGNhdGVnb3J5OiBp
bnRlcm5hbAotCi1Jc0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxSZXByb1Rlc3RpbmdFbmFi
bGVkOgotICB0eXBlOiBib29sCi0gIGRlZmF1bHRWYWx1ZTogZmFsc2UKLSAgaHVtYW5SZWFkYWJs
ZU5hbWU6ICJbSVRQIFJlcHJvXSAzMCBTZWNvbmQgVGltZW91dCBGb3IgTm9uLUNvb2tpZSBEYXRh
IFJlbW92YWwiCi0gIGh1bWFuUmVhZGFibGVEZXNjcmlwdGlvbjogIlJlbW92ZSBhbGwgbm9uLWNv
b2tpZSB3ZWJzaXRlIGRhdGEgYWZ0ZXIganVzdCAzMCBzZWNvbmRzIG9mIG5vIHVzZXIgaW50ZXJh
Y3Rpb24gd2hlbiBJbnRlbGxpZ2VudCBUcmFja2luZyBQcmV2ZW50aW9uIGlzIGVuYWJsZWQiCi0g
IGNhdGVnb3J5OiBpbnRlcm5hbAotCiBJc0xvZ2dlZEluQVBJRW5hYmxlZDoKICAgICB0eXBlOiBi
b29sCiAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0YVN0b3JlUmVmLmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9DL1dLV2Vic2l0ZURhdGFTdG9yZVJlZi5jcHAKaW5kZXggOTUwZDJlZjVi
NGU1MWNjYTE4ZTYxYjA0MDM1OGU5YmNjYWJhZDNhMy4uN2MxM2U1MWE5ZTA1NzllNGRiZTlhOGNk
NjQ0M2JmMTkwMTg4YzQ5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0MvV0tXZWJzaXRlRGF0YVN0b3JlUmVmLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1dlYnNpdGVEYXRhU3RvcmVSZWYuY3BwCkBAIC01NjAsMTEgKzU2MCwxNCBAQCB2
b2lkIFdLV2Vic2l0ZURhdGFTdG9yZVNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGREb3du
Z3JhZGVSZWZlcnJlckZvclRlc3RpbgogI2VuZGlmCiB9CiAKLXZvaWQgV0tXZWJzaXRlRGF0YVN0
b3JlU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNG
b3JUZXN0aW5nKFdLV2Vic2l0ZURhdGFTdG9yZVJlZiBkYXRhU3RvcmVSZWYsIGJvb2wgZW5hYmxl
ZCwgYm9vbCBvbmx5T25TaXRlc1dpdGhvdXRVc2VySW50ZXJhY3Rpb24sIHZvaWQqIGNvbnRleHQs
IFdLV2Vic2l0ZURhdGFTdG9yZVNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1Ro
aXJkUGFydHlDb29raWVzRm9yVGVzdGluZ0Z1bmN0aW9uIGNvbXBsZXRpb25IYW5kbGVyKQordm9p
ZCBXS1dlYnNpdGVEYXRhU3RvcmVTZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tU
aGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmcoV0tXZWJzaXRlRGF0YVN0b3JlUmVmIGRhdGFTdG9y
ZVJlZiwgYm9vbCBlbmFibGVkLCB2b2lkKiBjb250ZXh0LCBXS1dlYnNpdGVEYXRhU3RvcmVTZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3Rp
bmdGdW5jdGlvbiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9B
RF9TVEFUSVNUSUNTKQotICAgIFdlYktpdDo6dG9JbXBsKGRhdGFTdG9yZVJlZiktPnNldFJlc291
cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9yVGVzdGluZyhl
bmFibGVkLCBvbmx5T25TaXRlc1dpdGhvdXRVc2VySW50ZXJhY3Rpb24sIFtjb250ZXh0LCBjb21w
bGV0aW9uSGFuZGxlcl0geworICAgIFdURkxvZ0Fsd2F5cygiUmVzb3VyY2VMb2FkTG9nIHwgV0tX
ZWJzaXRlRGF0YVN0b3JlU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQ
YXJ0eUNvb2tpZXNGb3JUZXN0aW5nIDEgJXMiLCBlbmFibGVkID8gInRydWUiIDogImZhbHNlIik7
CisKKyAgICBXZWJLaXQ6OnRvSW1wbChkYXRhU3RvcmVSZWYpLT5zZXRSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmcoZW5hYmxlZCwgW2Nv
bnRleHQsIGNvbXBsZXRpb25IYW5kbGVyXSB7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGNv
bnRleHQpOworICAgICAgICBXVEZMb2dBbHdheXMoIlJlc291cmNlTG9hZExvZyB8IFdLV2Vic2l0
ZURhdGFTdG9yZVNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlD
b29raWVzRm9yVGVzdGluZyAyIik7CiAgICAgfSk7CiAjZWxzZQogICAgIGNvbXBsZXRpb25IYW5k
bGVyKGNvbnRleHQpOwpAQCAtNTk0LDcgKzU5Nyw3IEBAIHZvaWQgV0tXZWJzaXRlRGF0YVN0b3Jl
U3RhdGlzdGljc1Jlc2V0VG9Db25zaXN0ZW50U3RhdGUoV0tXZWJzaXRlRGF0YVN0b3JlUmVmIGRh
CiAgICAgc3RvcmUucmVzZXRDYWNoZU1heEFnZUNhcEZvclByZXZhbGVudFJlc291cmNlcyhbY2Fs
bGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0geyB9KTsKICAg
ICBzdG9yZS5yZXNldENyb3NzU2l0ZUxvYWRzV2l0aExpbmtEZWNvcmF0aW9uRm9yVGVzdGluZyhb
Y2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0geyB9KTsK
ICAgICBzdG9yZS5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkRG93bmdyYWRlUmVmZXJy
ZXJGb3JUZXN0aW5nKHRydWUsIFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0
b3IuY29weVJlZigpXSB7IH0pOwotICAgIHN0b3JlLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NT
aG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9yVGVzdGluZyhmYWxzZSwgZmFsc2UsIFtjYWxs
YmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOworICAg
IHN0b3JlLnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlDb29r
aWVzRm9yVGVzdGluZyhmYWxzZSwgW2NhbGxiYWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVn
YXRvci5jb3B5UmVmKCldIHsgfSk7CiAgICAgc3RvcmUuc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlRm9yVGVzdGluZyhmYWxzZSwgW2NhbGxi
YWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCldIHsgfSk7CiAgICAg
c3RvcmUucmVzZXRQYXJhbWV0ZXJzVG9EZWZhdWx0VmFsdWVzKFtjYWxsYmFja0FnZ3JlZ2F0b3Ig
PSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOwogICAgIHN0b3JlLnNjaGVkdWxl
Q2xlYXJJbk1lbW9yeUFuZFBlcnNpc3RlbnQoV2ViS2l0OjpTaG91bGRHcmFuZGZhdGhlclN0YXRp
c3RpY3M6Ok5vLCBbY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlS
ZWYoKV0geyB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dL
V2Vic2l0ZURhdGFTdG9yZVJlZi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tX
ZWJzaXRlRGF0YVN0b3JlUmVmLmgKaW5kZXggZDJhNWU3YTE2MzI4ZGJjMmZjMzNhZTZlZjIzNjI2
ZGFkZDA1NWQ4Yi4uYTVkMGIzMDZjMWRlMTljY2RkZmVkY2IyYWY4MGM5MzRlYjlhM2ExZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0YVN0b3Jl
UmVmLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tXZWJzaXRlRGF0YVN0
b3JlUmVmLmgKQEAgLTEyNCw3ICsxMjQsNyBAQCBXS19FWFBPUlQgdm9pZCBXS1dlYnNpdGVEYXRh
U3RvcmVIYXNBcHBCb3VuZFNlc3Npb24oV0tXZWJzaXRlRGF0YVN0b3JlUmVmIGRhdGFTdAogdHlw
ZWRlZiB2b2lkICgqV0tXZWJzaXRlRGF0YVN0b3JlU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc1No
b3VsZERvd25ncmFkZVJlZmVycmVyRm9yVGVzdGluZ0Z1bmN0aW9uKSh2b2lkKiBmdW5jdGlvbkNv
bnRleHQpOwogV0tfRVhQT1JUIHZvaWQgV0tXZWJzaXRlRGF0YVN0b3JlU2V0UmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1Nob3VsZERvd25ncmFkZVJlZmVycmVyRm9yVGVzdGluZyhXS1dlYnNpdGVEYXRh
U3RvcmVSZWYgZGF0YVN0b3JlUmVmLCBib29sIGVuYWJsZWQsIHZvaWQqIGNvbnRleHQsIFdLV2Vi
c2l0ZURhdGFTdG9yZVNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGREb3duZ3JhZGVSZWZl
cnJlckZvclRlc3RpbmdGdW5jdGlvbiBjb21wbGV0aW9uSGFuZGxlcik7CiB0eXBlZGVmIHZvaWQg
KCpXS1dlYnNpdGVEYXRhU3RvcmVTZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tU
aGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmdGdW5jdGlvbikodm9pZCogZnVuY3Rpb25Db250ZXh0
KTsKLVdLX0VYUE9SVCB2b2lkIFdLV2Vic2l0ZURhdGFTdG9yZVNldFJlc291cmNlTG9hZFN0YXRp
c3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9yVGVzdGluZyhXS1dlYnNpdGVEYXRh
U3RvcmVSZWYgZGF0YVN0b3JlUmVmLCBib29sIGVuYWJsZWQsIGJvb2wgb25seU9uU2l0ZXNXaXRo
b3V0VXNlckludGVyYWN0aW9uLCB2b2lkKiBjb250ZXh0LCBXS1dlYnNpdGVEYXRhU3RvcmVTZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3Rp
bmdGdW5jdGlvbiBjb21wbGV0aW9uSGFuZGxlcik7CitXS19FWFBPUlQgdm9pZCBXS1dlYnNpdGVE
YXRhU3RvcmVTZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29v
a2llc0ZvclRlc3RpbmcoV0tXZWJzaXRlRGF0YVN0b3JlUmVmIGRhdGFTdG9yZVJlZiwgYm9vbCBl
bmFibGVkLCB2b2lkKiBjb250ZXh0LCBXS1dlYnNpdGVEYXRhU3RvcmVTZXRSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmdGdW5jdGlvbiBj
b21wbGV0aW9uSGFuZGxlcik7CiB0eXBlZGVmIHZvaWQgKCpXS1dlYnNpdGVEYXRhU3RvcmVTZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGVGb3JU
ZXN0aW5nRnVuY3Rpb24pKHZvaWQqIGZ1bmN0aW9uQ29udGV4dCk7CiBXS19FWFBPUlQgdm9pZCBX
S1dlYnNpdGVEYXRhU3RvcmVTZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRmlyc3RQYXJ0eVdlYnNp
dGVEYXRhUmVtb3ZhbE1vZGVGb3JUZXN0aW5nKFdLV2Vic2l0ZURhdGFTdG9yZVJlZiBkYXRhU3Rv
cmVSZWYsIGJvb2wgZW5hYmxlZCwgdm9pZCogY29udGV4dCwgV0tXZWJzaXRlRGF0YVN0b3JlU2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlRm9y
VGVzdGluZ0Z1bmN0aW9uIGNvbXBsZXRpb25IYW5kbGVyKTsKIHR5cGVkZWYgdm9pZCAoKldLV2Vi
c2l0ZURhdGFTdG9yZVN0YXRpc3RpY3NSZXNldFRvQ29uc2lzdGVudFN0YXRlRnVuY3Rpb24pKHZv
aWQqIGZ1bmN0aW9uQ29udGV4dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
cm94eS5oCmluZGV4IGEwYzczMDM2ZDU3Y2ZjNzVmMmU2NmJhZWUyYTMxZDM2ZmEzNzdiNjYuLjQw
YTEzNDRiNjg0NDVjMmI5ZTE5ZjQwYjVmMzcyZDM5ZjBjMDNiOWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCkBAIC03MSw3ICs3MSw3IEBAIGNsYXNzIFJlc291
cmNlUmVxdWVzdDsKIHN0cnVjdCBQbHVnaW5JbmZvOwogc3RydWN0IFByZXdhcm1JbmZvcm1hdGlv
bjsKIHN0cnVjdCBTZWN1cml0eU9yaWdpbkRhdGE7Ci1lbnVtIGNsYXNzIFRoaXJkUGFydHlDb29r
aWVCbG9ja2luZ01vZGUgOiB1aW50OF90OworZW51bSBjbGFzcyBUaGlyZFBhcnR5Q29va2llQmxv
Y2tpbmdNb2RlIDogYm9vbDsKIH0KIAogbmFtZXNwYWNlIFdlYktpdCB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3Jl
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJz
aXRlRGF0YVN0b3JlQ29jb2EubW0KaW5kZXggZGJkMzBkMDQzMDdkMTgxMzk1OWQ5NTNjMjU0NTE3
ZjdlOTIxZDFhYS4uODc1MDg4ZmNmMTU3NzBlZTJjMTBlMzIwZTY1MTUzZjRhZjk3ZWE0YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0
ZURhdGFTdG9yZUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVE
YXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtNjQsMTMgKzY0LDggQEAgc3Rh
dGljIE5TU3RyaW5nICogY29uc3QgV2ViS2l0TmV0d29ya0xvYWRUaHJvdHRsZUxhdGVuY3lNaWxs
aXNlY29uZHNEZWZhdWx0c0tleQogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1Mp
CiBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlIFdlYnNpdGVEYXRhU3RvcmU6
OnRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUoKSBjb25zdAogewotICAgIGlmICghbV90aGly
ZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlKSB7Ci0gICAgICAgIE5TVXNlckRlZmF1bHRzICpkZWZh
dWx0cyA9IFtOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c107Ci0gICAgICAgIGlm
IChbZGVmYXVsdHMgYm9vbEZvcktleTpbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIkV4cGVy
aW1lbnRhbCVAIiwgV2ViUHJlZmVyZW5jZXNLZXk6OmlzVGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5n
RGlzYWJsZWRLZXkoKS5jcmVhdGVDRlN0cmluZygpLmdldCgpXV0pCi0gICAgICAgICAgICBtX3Ro
aXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgPSBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxv
Y2tpbmdNb2RlOjpBbGxPblNpdGVzV2l0aG91dFVzZXJJbnRlcmFjdGlvbjsKLSAgICAgICAgZWxz
ZQotICAgICAgICAgICAgbV90aGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlID0gV2ViQ29yZTo6
VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsOwotICAgIH0KKyAgICBpZiAoIW1fdGhp
cmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSkKKyAgICAgICAgbV90aGlyZFBhcnR5Q29va2llQmxv
Y2tpbmdNb2RlID0gV2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsOwog
ICAgIHJldHVybiAqbV90aGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOwogfQogI2VuZGlmCkBA
IC04OCwxNiArODMsNiBAQCBXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0
b3JlOjpwYXJhbWV0ZXJzKCkKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiByZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UgeyB9OwogI2lmIEVOQUJMRShS
RVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCiAgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0RlYnVnTW9kZSA9IFtkZWZhdWx0cyBib29sRm9yS2V5OkAiSVRQRGVidWdNb2RlIl07Ci0gICAg
aWYgKFtkZWZhdWx0cyBib29sRm9yS2V5OltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiRXhw
ZXJpbWVudGFsJUAiLCBXZWJQcmVmZXJlbmNlc0tleTo6aXNGaXJzdFBhcnR5V2Vic2l0ZURhdGFS
ZW1vdmFsRGlzYWJsZWRLZXkoKS5jcmVhdGVDRlN0cmluZygpLmdldCgpXV0pCi0gICAgICAgIGZp
cnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlID0gV2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNp
dGVEYXRhUmVtb3ZhbE1vZGU6Ok5vbmU7Ci0gICAgZWxzZSB7Ci0gICAgICAgIGlmIChbZGVmYXVs
dHMgYm9vbEZvcktleTpbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIkludGVybmFsRGVidWcl
QCIsIFdlYlByZWZlcmVuY2VzS2V5Ojppc0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxSZXBy
b1Rlc3RpbmdFbmFibGVkS2V5KCkuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKV1dKQotICAgICAgICAg
ICAgZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgPSBXZWJDb3JlOjpGaXJzdFBhcnR5
V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29va2llc1JlcHJvVGVzdGluZ1RpbWVvdXQ7
Ci0gICAgICAgIGVsc2UgaWYgKFtkZWZhdWx0cyBib29sRm9yS2V5OltOU1N0cmluZyBzdHJpbmdX
aXRoRm9ybWF0OkAiSW50ZXJuYWxEZWJ1ZyVAIiwgV2ViUHJlZmVyZW5jZXNLZXk6OmlzRmlyc3RQ
YXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbExpdmVPblRlc3RpbmdFbmFibGVkS2V5KCkuY3JlYXRlQ0ZT
dHJpbmcoKS5nZXQoKV1dKQotICAgICAgICAgICAgZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3Zh
bE1vZGUgPSBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0
Q29va2llc0xpdmVPblRlc3RpbmdUaW1lb3V0OwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBm
aXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSA9IFdlYkNvcmU6OkZpcnN0UGFydHlXZWJz
aXRlRGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzOwotICAgIH0KICAgICBhdXRvKiBtYW51
YWxQcmV2YWxlbnRSZXNvdXJjZSA9IFtkZWZhdWx0cyBzdHJpbmdGb3JLZXk6QCJJVFBNYW51YWxQ
cmV2YWxlbnRSZXNvdXJjZSJdOwogICAgIGlmIChtYW51YWxQcmV2YWxlbnRSZXNvdXJjZSkgewog
ICAgICAgICBVUkwgdXJsIHsgVVJMKCksIG1hbnVhbFByZXZhbGVudFJlc291cmNlIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0
b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRh
U3RvcmUuY3BwCmluZGV4IDA1OGU0OWY4NzNlMzM2YzE3NGViNDI4MThmNGU1YTFmMmVjMjBjNjMu
LmFkMzA2ZTVmMWU2NzFiOTU4MTNlNGQzZWJkZDM2M2FiMWFiN2E5Y2EgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUu
Y3BwCkBAIC0xODI4LDI5ICsxODI4LDMwIEBAIFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9j
a2luZ01vZGUgV2Vic2l0ZURhdGFTdG9yZTo6dGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nCiB9CiAj
ZW5kaWYKIAotdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmcoYm9vbCBlbmFibGVkLCBib29s
IG9ubHlPblNpdGVzV2l0aG91dFVzZXJJbnRlcmFjdGlvbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3Rpbmco
Ym9vbCBlbmFibGVkLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCiB7CisgICAgV1RGTG9nQWx3YXlzKCJSZXNvdXJjZUxvYWRMb2cgfCBzZXRSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmcgMSAlcyIs
IGVuYWJsZWQgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKICAgICBhdXRvIGNhbGxiYWNrQWdncmVnYXRv
ciA9IENhbGxiYWNrQWdncmVnYXRvcjo6Y3JlYXRlKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
KTsKLSAgICBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlIGJsb2NraW5nTW9k
ZSA9IFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGU6Ok9ubHlBY2NvcmRpbmdU
b1BlckRvbWFpblBvbGljeTsKLSAgICBpZiAoZW5hYmxlZCkKLSAgICAgICAgYmxvY2tpbmdNb2Rl
ID0gb25seU9uU2l0ZXNXaXRob3V0VXNlckludGVyYWN0aW9uID8gV2ViQ29yZTo6VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsT25TaXRlc1dpdGhvdXRVc2VySW50ZXJhY3Rpb24gOiBX
ZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpBbGw7CiAKKyAgICBhdXRvIGJs
b2NraW5nTW9kZSA9IGVuYWJsZWQgPyBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdN
b2RlOjpBbGwgOiBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpOb25lRm9y
VGVzdGluZzsKICAgICBpZiAodGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSgpICE9IGJsb2Nr
aW5nTW9kZSkgewogICAgICAgICBtX3RoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgPSBibG9j
a2luZ01vZGU7CiAgICAgICAgIGZvciAoYXV0byYgd2ViUHJvY2VzcyA6IHByb2Nlc3NlcygpKQog
ICAgICAgICAgICAgd2ViUHJvY2Vzcy5zZXRTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9y
VGVzdGluZyhibG9ja2luZ01vZGUsIFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3Jl
Z2F0b3IuY29weVJlZigpXSB7IH0pOwotICAgIH0KIAotICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bv
b2wgOiBwcm9jZXNzUG9vbHMoKSkgewotICAgICAgICBpZiAoYXV0byogbmV0d29ya1Byb2Nlc3Mg
PSBwcm9jZXNzUG9vbC0+bmV0d29ya1Byb2Nlc3MoKSkKLSAgICAgICAgICAgIG5ldHdvcmtQcm9j
ZXNzLT5zZXRTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9yVGVzdGluZyhtX3Nlc3Npb25J
RCwgYmxvY2tpbmdNb2RlLCBbY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9y
LmNvcHlSZWYoKV0geyB9KTsKKyAgICAgICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IHByb2Nl
c3NQb29scygpKSB7CisgICAgICAgICAgICBpZiAoYXV0byogbmV0d29ya1Byb2Nlc3MgPSBwcm9j
ZXNzUG9vbC0+bmV0d29ya1Byb2Nlc3MoKSkKKyAgICAgICAgICAgICAgICBuZXR3b3JrUHJvY2Vz
cy0+c2V0U2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRlc3RpbmcobV9zZXNzaW9uSUQs
IGJsb2NraW5nTW9kZSwgW2NhbGxiYWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVnYXRvci5j
b3B5UmVmKCldIHsgfSk7CisgICAgICAgIH0KICAgICB9CisKKyAgICBXVEZMb2dBbHdheXMoIlJl
c291cmNlTG9hZExvZyB8IHNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJk
UGFydHlDb29raWVzRm9yVGVzdGluZyAyICVzIiwgZW5hYmxlZCA/ICJ0cnVlIiA6ICJmYWxzZSIp
OwogfQogCiB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NG
aXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZUZvclRlc3RpbmcoYm9vbCBlbmFibGVkLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgYXV0
byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKSk7Ci0gICAgYXV0byBtb2RlID0gZW5hYmxlZCA/IFdlYkNvcmU6
OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzIDogV2ViQ29y
ZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGU6Ok5vbmU7CisgICAgYXV0byBtb2Rl
ID0gZW5hYmxlZCA/IFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpB
bGxCdXRDb29raWVzIDogV2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGU6
Ok5vbmVGb3JUZXN0aW5nOwogCiAgICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IHByb2Nlc3NQ
b29scygpKSB7CiAgICAgICAgIGlmIChhdXRvKiBuZXR3b3JrUHJvY2VzcyA9IHByb2Nlc3NQb29s
LT5uZXR3b3JrUHJvY2VzcygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IDU2YWYzZjk5NzYxZjQ4Yzc4YzMz
MDJhMzJkYzNhNTU0YjFlZWM4YWEuLjkyZGQyYTVlMmIyYmZjM2U5YTYzN2ZhMWVkYTcyMGU0NWU4
ZTYzYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dl
YnNpdGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0
YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTE5Myw3ICsxOTMsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBoYXNMb2NhbFN0b3JhZ2VGb3JUZXN0aW5nKGNvbnN0IFVSTCYsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoYm9vbCk+JiYpIGNvbnN0OwogICAgIHZvaWQgaGFzSXNvbGF0ZWRTZXNzaW9uRm9yVGVz
dGluZyhjb25zdCBVUkwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBjb25zdDsK
ICAgICB2b2lkIHNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGREb3duZ3JhZGVSZWZlcnJl
ckZvclRlc3RpbmcoYm9vbCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKLSAgICB2b2lk
IHNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzRm9y
VGVzdGluZyhib29sIGVuYWJsZWQsIGJvb2wgb25seU9uU2l0ZXNXaXRob3V0VXNlckludGVyYWN0
aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgc2V0UmVzb3VyY2VM
b2FkU3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNGb3JUZXN0aW5nKGJvb2wg
ZW5hYmxlZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKICAgICB2b2lkIHNldFJlc291
cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZUZvclRlc3Rp
bmcoYm9vbCBlbmFibGVkLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwogICAgIFdlYkNv
cmU6OlRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgdGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5n
TW9kZSgpIGNvbnN0OwogICAgIGJvb2wgaXNJdHBTdGF0ZUV4cGxpY2l0bHlTZXQoKSBjb25zdCB7
IHJldHVybiBtX2lzSXRwU3RhdGVFeHBsaWNpdGx5U2V0OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IGY0M2M2M2U3MTk4MmEwNTBi
N2VmNzMzMjNkNmMxNWY1NjRjZmZmYzUuLjlkODdlNDc4ZWVkMmE3N2UyZGQyNzMyY2Y0NTlhMWI0
NTQxMzNmNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1l
c3NhZ2VzLmluCkBAIC0xNjQsNyArMTY0LDcgQEAgbWVzc2FnZXMgLT4gV2ViUHJvY2VzcyBMZWdh
Y3lSZWNlaXZlciBOb3RSZWZDb3VudGVkIHsKIAogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NU
QVRJU1RJQ1MpCiAgICAgU2VlZFJlc291cmNlTG9hZFN0YXRpc3RpY3NGb3JUZXN0aW5nKFdlYkNv
cmU6OlJlZ2lzdHJhYmxlRG9tYWluIGZpcnN0UGFydHlEb21haW4sIFdlYkNvcmU6OlJlZ2lzdHJh
YmxlRG9tYWluIHRoaXJkUGFydHlEb21haW4sIGJvb2wgc2hvdWxkU2NoZWR1bGVOb3RpZmljYXRp
b24pIC0+ICgpIEFzeW5jCi0gICAgU2V0U2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc0ZvclRl
c3RpbmcoZW51bTp1aW50OF90IFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUg
YmxvY2tpbmdNb2RlKSAtPiAoKSBBc3luYworICAgIFNldFNob3VsZEJsb2NrVGhpcmRQYXJ0eUNv
b2tpZXNGb3JUZXN0aW5nKGVudW06Ym9vbCBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tp
bmdNb2RlIGJsb2NraW5nTW9kZSkgLT4gKCkgQXN5bmMKICNlbmRpZgogCiAjaWYgUExBVEZPUk0o
SU9TKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4
IGYxOGUzODM3ZmNiOWY0MjQyMzVkNTQ1NzRkYTcwNzQxN2E3YzNlMWIuLjg1MGQ4MWFjMzExNDNj
NTg4YTMzMWQyM2ZjODFkNDdlNDc1YzIwODkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZwor
KysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAyMC0wMy0wOSAgSm9obiBX
aWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzOiBSZW1vdmUgdW51c2VkIGNvZGUgZm9yIGRhdGEgcmVtb3ZhbCBzZXR0aW5ncyBubyBs
b25nZXIgdXNlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA4ODE5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzY3MzQxOD4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGEgd29yay1pbi1w
cm9ncmVzcyBwYXRjaC4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGw6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdFJ1bm5lcjo6
c2V0U3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMpOgorICAgICAgICAoV1RS
OjpUZXN0UnVubmVyOjpzdGF0aXN0aWNzQ2FsbERpZFNldFNob3VsZEJsb2NrVGhpcmRQYXJ0eUNv
b2tpZXNDYWxsYmFjayk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9UZXN0UnVubmVyLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxl
ci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpzZXRTdGF0aXN0aWNzU2hvdWxk
QmxvY2tUaGlyZFBhcnR5Q29va2llcyk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0
Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24u
Y3BwOgorICAgICAgICAoV1RSOjpUZXN0SW52b2NhdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2VGcm9t
SW5qZWN0ZWRCdW5kbGUpOgorCiAyMDIwLTAzLTA2ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBw
bGUuY29tPgogCiAgICAgICAgIFVJUHJvY2VzcyBjcmFzaCBhZnRlciB1c2luZyBfcHJlcGFyZUZv
ck1vdmVUb1dpbmRvdywgdGhlbiBkZWFsbG9jYXRpbmcgdGhlIFdLV2ViVmlldyBiZWZvcmUgbW92
aW5nIHRvIHRoZSB3aW5kb3cKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5q
ZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwgYi9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsCmluZGV4IDQ5MDFlMDg2
ZWQxOWY1MjBkYTAwOGYxNDBlMmVkNjljNmIzYzYxZDAuLmI4ZTllNGYxZTBhYWMwNGRiMDRmZDdm
NWIyMzI4NmIxZDBjMjlkZjcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5q
ZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKKysrIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbApAQCAtMzQzLDcg
KzM0Myw3IEBAIGludGVyZmFjZSBUZXN0UnVubmVyIHsKICAgICB2b2lkIHN0YXRpc3RpY3NSZXNl
dFRvQ29uc2lzdGVudFN0YXRlKG9iamVjdCBjb21wbGV0aW9uSGFuZGxlcik7CiAgICAgYm9vbGVh
biBoYXNTdGF0aXN0aWNzSXNvbGF0ZWRTZXNzaW9uKERPTVN0cmluZyBob3N0TmFtZSk7CiAgICAg
dm9pZCBzZXRTdGF0aXN0aWNzU2hvdWxkRG93bmdyYWRlUmVmZXJyZXIoYm9vbGVhbiB2YWx1ZSwg
b2JqZWN0IGNhbGxiYWNrKTsKLSAgICB2b2lkIHNldFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJk
UGFydHlDb29raWVzKGJvb2xlYW4gdmFsdWUsIG9iamVjdCBjYWxsYmFjaywgb3B0aW9uYWwgYm9v
bGVhbiBvbmx5T25TaXRlc1dpdGhvdXRVc2VySW50ZXJhY3Rpb24pOworICAgIHZvaWQgc2V0U3Rh
dGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoYm9vbGVhbiB2YWx1ZSwgb2JqZWN0
IGNhbGxiYWNrKTsKICAgICB2b2lkIHNldFN0YXRpc3RpY3NGaXJzdFBhcnR5V2Vic2l0ZURhdGFS
ZW1vdmFsTW9kZShib29sZWFuIHZhbHVlLCBvYmplY3QgY2FsbGJhY2spOwogICAgIHZvaWQgZ2V0
UHJldmFsZW50RG9tYWlucyhvYmplY3QgY2FsbGJhY2spOwogCmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwIGIvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcAppbmRleCA4MmRkNmFh
ZTI2MWY4ODhhMWUzMmJlYjY2OWM2MmQwN2ZmNjBjZWU5Li5kNTMxZTFjZGYwOWIwYTU4ZTJiMTE2
MjFkYmI4MWIxYjZjODFhMTZhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKQEAgLTIyMzcsMTUgKzIyMzcsMTUgQEAgdm9p
ZCBUZXN0UnVubmVyOjpzdGF0aXN0aWNzQ2FsbERpZFNldFNob3VsZERvd25ncmFkZVJlZmVycmVy
Q2FsbGJhY2soKQogICAgIG1faGFzU2V0RG93bmdyYWRlUmVmZXJyZXJDYWxsYmFjayA9IGZhbHNl
OwogfQogCi12b2lkIFRlc3RSdW5uZXI6OnNldFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFy
dHlDb29raWVzKGJvb2wgdmFsdWUsIEpTVmFsdWVSZWYgY29tcGxldGlvbkhhbmRsZXIsIGJvb2wg
b25seU9uU2l0ZXNXaXRob3V0VXNlckludGVyYWN0aW9uKQordm9pZCBUZXN0UnVubmVyOjpzZXRT
dGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llcyhib29sIHZhbHVlLCBKU1ZhbHVl
UmVmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGlmIChtX2hhc1NldEJsb2NrVGhpcmRQYXJ0
eUNvb2tpZXNDYWxsYmFjaykKICAgICAgICAgcmV0dXJuOwogCisgICAgV1RGTG9nQWx3YXlzKCJS
ZXNvdXJjZUxvYWRMb2cgfCBzZXRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2ll
cyIpOworCiAgICAgY2FjaGVUZXN0UnVubmVyQ2FsbGJhY2soU3RhdGlzdGljc0RpZFNldFNob3Vs
ZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNDYWxsYmFja0lELCBjb21wbGV0aW9uSGFuZGxlcik7CiAg
ICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IG1lc3NhZ2VOYW1lID0gYWRvcHRXSyhXS1N0cmlu
Z0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiU2V0U3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0
eUNvb2tpZXMiKSk7Ci0gICAgaWYgKG9ubHlPblNpdGVzV2l0aG91dFVzZXJJbnRlcmFjdGlvbikK
LSAgICAgICAgbWVzc2FnZU5hbWUgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3Ry
aW5nKCJTZXRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llc09uU2l0ZXNXaXRo
b3V0VXNlckludGVyYWN0aW9uIikpOwogICAgIFdLUmV0YWluUHRyPFdLQm9vbGVhblJlZj4gbWVz
c2FnZUJvZHkgPSBhZG9wdFdLKFdLQm9vbGVhbkNyZWF0ZSh2YWx1ZSkpOwogICAgIFdLQnVuZGxl
UG9zdE1lc3NhZ2UoSW5qZWN0ZWRCdW5kbGU6OnNpbmdsZXRvbigpLmJ1bmRsZSgpLCBtZXNzYWdl
TmFtZS5nZXQoKSwgbWVzc2FnZUJvZHkuZ2V0KCkpOwogICAgIG1faGFzU2V0QmxvY2tUaGlyZFBh
cnR5Q29va2llc0NhbGxiYWNrID0gdHJ1ZTsKQEAgLTIyNTMsNiArMjI1Myw3IEBAIHZvaWQgVGVz
dFJ1bm5lcjo6c2V0U3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoYm9vbCB2
YWx1ZSwgSlNWYWx1ZVJlCiAKIHZvaWQgVGVzdFJ1bm5lcjo6c3RhdGlzdGljc0NhbGxEaWRTZXRT
aG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzQ2FsbGJhY2soKQogeworICAgIFdURkxvZ0Fsd2F5
cygiUmVzb3VyY2VMb2FkTG9nIHwgc3RhdGlzdGljc0NhbGxEaWRTZXRTaG91bGRCbG9ja1RoaXJk
UGFydHlDb29raWVzQ2FsbGJhY2siKTsKICAgICBjYWxsVGVzdFJ1bm5lckNhbGxiYWNrKFN0YXRp
c3RpY3NEaWRTZXRTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzQ2FsbGJhY2tJRCk7CiAgICAg
bV9oYXNTZXRCbG9ja1RoaXJkUGFydHlDb29raWVzQ2FsbGJhY2sgPSBmYWxzZTsKIH0KZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5o
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKaW5k
ZXggMGIxMjQ4MWQ3ZDE5MmJkNmIyZTQ2MDQ4ODVhNWFiMzQ0ZmM1YmJiZC4uYWQyMTNkZDdkNzdi
YTE3MzkwMjNjYWRlZjBjNjg4YzFjYzM4YzMwMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKKysrIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKQEAgLTQ0Myw3ICs0NDMsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBoYXNTdGF0aXN0aWNzSXNvbGF0ZWRTZXNzaW9uKEpTU3RyaW5nUmVm
IGhvc3ROYW1lKTsKICAgICB2b2lkIHNldFN0YXRpc3RpY3NTaG91bGREb3duZ3JhZGVSZWZlcnJl
cihib29sLCBKU1ZhbHVlUmVmIGNhbGxiYWNrKTsKICAgICB2b2lkIHN0YXRpc3RpY3NDYWxsRGlk
U2V0U2hvdWxkRG93bmdyYWRlUmVmZXJyZXJDYWxsYmFjaygpOwotICAgIHZvaWQgc2V0U3RhdGlz
dGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoYm9vbCB2YWx1ZSwgSlNWYWx1ZVJlZiBj
YWxsYmFjaywgYm9vbCBvbmx5T25TaXRlc1dpdGhvdXRVc2VySW50ZXJhY3Rpb24pOworICAgIHZv
aWQgc2V0U3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoYm9vbCB2YWx1ZSwg
SlNWYWx1ZVJlZiBjYWxsYmFjayk7CiAgICAgdm9pZCBzdGF0aXN0aWNzQ2FsbERpZFNldFNob3Vs
ZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNDYWxsYmFjaygpOwogICAgIHZvaWQgc2V0U3RhdGlzdGlj
c0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlKGJvb2wgdmFsdWUsIEpTVmFsdWVSZWYg
Y2FsbGJhY2spOwogICAgIHZvaWQgc3RhdGlzdGljc0NhbGxEaWRTZXRGaXJzdFBhcnR5V2Vic2l0
ZURhdGFSZW1vdmFsTW9kZUNhbGxiYWNrKCk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENv
bnRyb2xsZXIuY3BwCmluZGV4IGFlZjk2YjdhYzRkNDliZmUxMGYyNmNmMTBhZmZjZTczZDJlZmM1
ZWMuLjdhZjY3M2I3OWIxYzg2ODczZDFkMmI1YjIwZTgzN2YxMWE4MWIyOTggMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC0zNjc1LDEwICszNjc1LDEwIEBA
IHZvaWQgVGVzdENvbnRyb2xsZXI6OnNldFN0YXRpc3RpY3NTaG91bGREb3duZ3JhZGVSZWZlcnJl
cihib29sIHZhbHVlKQogICAgIG1fY3VycmVudEludm9jYXRpb24tPmRpZFNldFNob3VsZERvd25n
cmFkZVJlZmVycmVyKCk7CiB9CiAKLXZvaWQgVGVzdENvbnRyb2xsZXI6OnNldFN0YXRpc3RpY3NT
aG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzKGJvb2wgdmFsdWUsIGJvb2wgb25seU9uU2l0ZXNX
aXRob3V0VXNlckludGVyYWN0aW9uKQordm9pZCBUZXN0Q29udHJvbGxlcjo6c2V0U3RhdGlzdGlj
c1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoYm9vbCB2YWx1ZSkKIHsKICAgICBSZXNvdXJj
ZVN0YXRpc3RpY3NDYWxsYmFja0NvbnRleHQgY29udGV4dCgqdGhpcyk7Ci0gICAgV0tXZWJzaXRl
RGF0YVN0b3JlU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNv
b2tpZXNGb3JUZXN0aW5nKHdlYnNpdGVEYXRhU3RvcmUoKSwgdmFsdWUsIG9ubHlPblNpdGVzV2l0
aG91dFVzZXJJbnRlcmFjdGlvbiwgJmNvbnRleHQsIHJlc291cmNlU3RhdGlzdGljc1ZvaWRSZXN1
bHRDYWxsYmFjayk7CisgICAgV0tXZWJzaXRlRGF0YVN0b3JlU2V0UmVzb3VyY2VMb2FkU3RhdGlz
dGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNGb3JUZXN0aW5nKHdlYnNpdGVEYXRhU3Rv
cmUoKSwgdmFsdWUsICZjb250ZXh0LCByZXNvdXJjZVN0YXRpc3RpY3NWb2lkUmVzdWx0Q2FsbGJh
Y2spOwogICAgIHJ1blVudGlsKGNvbnRleHQuZG9uZSwgbm9UaW1lb3V0KTsKICAgICBtX2N1cnJl
bnRJbnZvY2F0aW9uLT5kaWRTZXRTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzKCk7CiB9CmRp
ZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmggYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgKaW5kZXggZjNhYTg4YWM2MjkxODll
YzEzN2QyZDkyOTRiZmUyOTRjYjU4NDRmYy4uOTM4NjZhODQ4ZTE2YjBmOTI4NDA4NTAxNTBmNzA1
ZDBlMDExNTU3NyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJv
bGxlci5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaApAQCAt
MjU2LDcgKzI1Niw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFN0YXRpc3RpY3NDYWNoZU1heEFn
ZUNhcChkb3VibGUgc2Vjb25kcyk7CiAgICAgYm9vbCBoYXNTdGF0aXN0aWNzSXNvbGF0ZWRTZXNz
aW9uKFdLU3RyaW5nUmVmIGhvc3ROYW1lKTsKICAgICB2b2lkIHNldFN0YXRpc3RpY3NTaG91bGRE
b3duZ3JhZGVSZWZlcnJlcihib29sIHZhbHVlKTsKLSAgICB2b2lkIHNldFN0YXRpc3RpY3NTaG91
bGRCbG9ja1RoaXJkUGFydHlDb29raWVzKGJvb2wgdmFsdWUsIGJvb2wgb25seU9uU2l0ZXNXaXRo
b3V0VXNlckludGVyYWN0aW9uKTsKKyAgICB2b2lkIHNldFN0YXRpc3RpY3NTaG91bGRCbG9ja1Ro
aXJkUGFydHlDb29raWVzKGJvb2wgdmFsdWUpOwogICAgIHZvaWQgc2V0U3RhdGlzdGljc0ZpcnN0
UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlKGJvb2wgdmFsdWUpOwogICAgIHZvaWQgc3RhdGlz
dGljc1Jlc2V0VG9Db25zaXN0ZW50U3RhdGUoKTsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rl
c3RJbnZvY2F0aW9uLmNwcAppbmRleCA0MTZmNmVmMWE3MTNlZThiNGZlYWU5MGU5ZjlmZjM4MGYw
ZDk5ZTQ0Li4wYmYzYzk2MGI5ZTFhZmNlYjgwYzgzMDRlOWQ3OWJkNWU5M2I0ZWVjIDEwMDY0NAot
LS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmNwcAorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmNwcApAQCAtNzQ3LDE3ICs3NDcsMTAg
QEAgdm9pZCBUZXN0SW52b2NhdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5k
bGUoV0tTdHJpbmdSZWYgbWVzc2FnZU5hbWUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VOYW1lLCAiU2V0U3RhdGlz
dGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXNPblNpdGVzV2l0aG91dFVzZXJJbnRlcmFj
dGlvbiIpKSB7Ci0gICAgICAgIEFTU0VSVChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkgPT0gV0tC
b29sZWFuR2V0VHlwZUlEKCkpOwotICAgICAgICBXS0Jvb2xlYW5SZWYgdmFsdWUgPSBzdGF0aWNf
Y2FzdDxXS0Jvb2xlYW5SZWY+KG1lc3NhZ2VCb2R5KTsKLSAgICAgICAgVGVzdENvbnRyb2xsZXI6
OnNpbmdsZXRvbigpLnNldFN0YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzKFdL
Qm9vbGVhbkdldFZhbHVlKHZhbHVlKSwgdHJ1ZSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0K
ICAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhtZXNzYWdlTmFtZSwgIlNldFN0
YXRpc3RpY3NTaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzIikpIHsKICAgICAgICAgQVNTRVJU
KFdLR2V0VHlwZUlEKG1lc3NhZ2VCb2R5KSA9PSBXS0Jvb2xlYW5HZXRUeXBlSUQoKSk7CiAgICAg
ICAgIFdLQm9vbGVhblJlZiB2YWx1ZSA9IHN0YXRpY19jYXN0PFdLQm9vbGVhblJlZj4obWVzc2Fn
ZUJvZHkpOwotICAgICAgICBUZXN0Q29udHJvbGxlcjo6c2luZ2xldG9uKCkuc2V0U3RhdGlzdGlj
c1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoV0tCb29sZWFuR2V0VmFsdWUodmFsdWUpLCBm
YWxzZSk7CisgICAgICAgIFRlc3RDb250cm9sbGVyOjpzaW5nbGV0b24oKS5zZXRTdGF0aXN0aWNz
U2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llcyhXS0Jvb2xlYW5HZXRWYWx1ZSh2YWx1ZSkpOwog
ICAgICAgICByZXR1cm47CiAgICAgfQogICAgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU5ZWZiNWM0OWY1NDRlMjRlZDFm
ZjBmNDNjMTMwZjA4OTAxMDUyNmQuLmZhOWM2ZmU3YmY4N2E3ZThhZWJlYWE4MDI0OTkwNTJkYmU0
ZDIxYWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMC0wMy0wOSAgSm9obiBXaWxhbmRlciAg
PHdpbGFuZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzOiBS
ZW1vdmUgdW51c2VkIGNvZGUgZm9yIGRhdGEgcmVtb3ZhbCBzZXR0aW5ncyBubyBsb25nZXIgdXNl
ZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODE5
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzY3MzQxOD4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGEgd29yay1pbi1wcm9ncmVzcyBw
YXRjaC4KKworICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZXNv
dXJjZXMvdXRpbC5qczoKKyAgICAgICAgKHNldEVuYWJsZUZlYXR1cmUpOgorICAgICAgICAqIGh0
dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tp
bmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWRhdGFiYXNlLWV4cGVjdGVkLnR4
dDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
dGhpcmQtcGFydHktY29va2llLWJsb2NraW5nLW9uLXNpdGVzLXdpdGhvdXQtdXNlci1pbnRlcmFj
dGlvbi1kYXRhYmFzZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0
aG91dC11c2VyLWludGVyYWN0aW9uLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvdGhpcmQtcGFydHktY29va2llLWJsb2Nr
aW5nLW9uLXNpdGVzLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi5odG1sOiBSZW1vdmVkLgorCiAy
MDIwLTAzLTA2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAg
ICAgIE1vdmUgc3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zIHRvIFNjcm9sbGluZ1RyZWVTY3Jv
bGxpbmdOb2RlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9h
ZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0aWwuanMgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0aWwuanMKaW5kZXggZWZlNzk4MmNmZTdk
YTVjOWY1YmZhNjUyN2YwMzk3YWU2MjMyMGZkYS4uNDkyZTk3MTM0NDEwOTRlOWVjMGUxZDU5YTBm
NDIwZWE4MjNiZDlkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy91dGlsLmpzCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZXNvdXJjZXMvdXRpbC5qcwpAQCAtNCw2ICs0
LDcgQEAgZnVuY3Rpb24gc2V0RW5hYmxlRmVhdHVyZShlbmFibGUsIGNvbXBsZXRpb25IYW5kbGVy
KSB7CiAgICAgaWYgKGVuYWJsZSkgewogICAgICAgICBpbnRlcm5hbHMuc2V0UmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0VuYWJsZWQodHJ1ZSk7CiAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGlj
c0lzUnVubmluZ1Rlc3QodHJ1ZSk7CisgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1No
b3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXModHJ1ZSwgZnVuY3Rpb24oKSB7fSk7CiAgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKCk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgdGVzdFJ1bm5lci5z
dGF0aXN0aWNzUmVzZXRUb0NvbnNpc3RlbnRTdGF0ZShmdW5jdGlvbigpIHsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90aGlyZC1wYXJ0
eS1jb29raWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWRhdGFi
YXNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3Rh
dGlzdGljcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2Vy
LWludGVyYWN0aW9uLWRhdGFiYXNlLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYTkwOGM4ZTRiZGZjZjk5ZmZjMDU5Yjc3MGNiZTMzYTMwMWVkYmY2OS4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvdGhpcmQtcGFydHktY29va2llLWJsb2NraW5n
LW9uLXNpdGVzLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS1leHBlY3RlZC50eHQK
KysrIC9kZXYvbnVsbApAQCAtMSwyMyArMCwwIEBACi1UZXN0cyB0aGF0IGFsbCB0aGlyZC1wYXJ0
eSBjb29raWVzIGFyZSBibG9ja2VkIHVuZGVyIHdlYnNpdGVzIHRoYXQgaGF2ZSBub3QgcmVjZWl2
ZWQgdXNlciBpbnRlcmFjdGlvbi4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotICAKLQotLS0t
LS0tLS0KLUZyYW1lOiAnPCEtLWZyYW1lMS0tPicKLS0tLS0tLS0tCi1CZWZvcmUgdXNlciBpbnRl
cmFjdGlvbiwgc2hvdWxkIHJlY2VpdmUgbm8gY29va2llcy4KLURpZCBub3QgcmVjZWl2ZSBjb29r
aWUgbmFtZWQgJ2ZpcnN0UGFydHlDb29raWUnLgotQ2xpZW50LXNpZGUgZG9jdW1lbnQuY29va2ll
OgotCi0tLS0tLS0tLQotRnJhbWU6ICc8IS0tZnJhbWUyLS0+JwotLS0tLS0tLS0KLUFmdGVyIHVz
ZXIgaW50ZXJhY3Rpb24sIHNob3VsZCByZWNlaXZlIGZpcnN0LXBhcnR5IGNvb2tpZS4KLVJlY2Vp
dmVkIGNvb2tpZSBuYW1lZCAnZmlyc3RQYXJ0eUNvb2tpZScuCi1DbGllbnQtc2lkZSBkb2N1bWVu
dC5jb29raWU6IGZpcnN0UGFydHlDb29raWU9dmFsdWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90aGlyZC1wYXJ0eS1jb29raWUtYmxv
Y2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWRhdGFiYXNlLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvdGhpcmQtcGFydHkt
Y29va2llLWJsb2NraW5nLW9uLXNpdGVzLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFz
ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyN2FlMDczNWY0MDU2MDJjM2Qw
NTdhNzYwMzY0OWY0MzY3ZGIxMTkxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVy
YWN0aW9uLWRhdGFiYXNlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw3NSArMCwwIEBACi08IURP
Q1RZUEUgaHRtbD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9
IlVURi04Ij4KLSAgICA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMi
Pjwvc2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdXRpbC5qcyI+PC9zY3JpcHQ+
Ci08L2hlYWQ+Ci08Ym9keT4KLTxzY3JpcHQ+Ci0gICAgZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQg
YWxsIHRoaXJkLXBhcnR5IGNvb2tpZXMgYXJlIGJsb2NrZWQgdW5kZXIgd2Vic2l0ZXMgdGhhdCBo
YXZlIG5vdCByZWNlaXZlZCB1c2VyIGludGVyYWN0aW9uLiIpOwotICAgIGpzVGVzdElzQXN5bmMg
PSB0cnVlOwotCi0gICAgY29uc3QgcGFydGl0aW9uSG9zdCA9ICIxMjcuMC4wLjE6ODAwMCI7Ci0g
ICAgY29uc3QgcGFydGl0aW9uT3JpZ2luID0gImh0dHA6Ly8iICsgcGFydGl0aW9uSG9zdDsKLSAg
ICBjb25zdCB0aGlyZFBhcnR5T3JpZ2luID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMCI7Ci0gICAg
Y29uc3QgcmVzb3VyY2VQYXRoID0gIi9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcyI7
Ci0gICAgY29uc3QgdGhpcmRQYXJ0eUJhc2VVcmwgPSB0aGlyZFBhcnR5T3JpZ2luICsgcmVzb3Vy
Y2VQYXRoOwotICAgIGNvbnN0IGZpcnN0UGFydHlDb29raWVOYW1lID0gImZpcnN0UGFydHlDb29r
aWUiOwotICAgIGNvbnN0IHN1YlBhdGhUb1NldEZpcnN0UGFydHlDb29raWUgPSAiL3NldC1jb29r
aWUucGhwP25hbWU9IiArIGZpcnN0UGFydHlDb29raWVOYW1lICsgIiZ2YWx1ZT12YWx1ZSI7Ci0g
ICAgY29uc3QgcmV0dXJuVXJsID0gcGFydGl0aW9uT3JpZ2luICsgIi9yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzL3RoaXJkLXBhcnR5LWNvb2tpZS1ibG9ja2luZy1vbi1zaXRlcy13aXRob3V0LXVzZXIt
aW50ZXJhY3Rpb24tZGF0YWJhc2UuaHRtbCI7Ci0gICAgY29uc3Qgc3ViUGF0aFRvR2V0Q29va2ll
cyA9ICIvZ2V0LWNvb2tpZXMucGhwP25hbWUxPSIgKyBmaXJzdFBhcnR5Q29va2llTmFtZTsKLQot
ICAgIGZ1bmN0aW9uIG9wZW5JZnJhbWUodXJsLCBvbkxvYWRIYW5kbGVyKSB7Ci0gICAgICAgIGNv
bnN0IGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICAgICAg
ZWxlbWVudC5zcmMgPSB1cmw7Ci0gICAgICAgIGlmIChvbkxvYWRIYW5kbGVyKSB7Ci0gICAgICAg
ICAgICBlbGVtZW50Lm9ubG9hZCA9IG9uTG9hZEhhbmRsZXI7Ci0gICAgICAgIH0KLSAgICAgICAg
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbGVtZW50KTsKLSAgICB9Ci0KLSAgICBmdW5jdGlv
biBydW5UZXN0KCkgewotICAgICAgICBzd2l0Y2ggKGRvY3VtZW50LmxvY2F0aW9uLmhhc2gpIHsK
LSAgICAgICAgICAgIGNhc2UgIiNzdGVwMSI6Ci0gICAgICAgICAgICAgICAgLy8gU2V0IGZpcnN0
LXBhcnR5IGNvb2tpZSBmb3IgbG9jYWxob3N0LgotICAgICAgICAgICAgICAgIGRvY3VtZW50Lmxv
Y2F0aW9uLmhyZWYgPSB0aGlyZFBhcnR5QmFzZVVybCArIHN1YlBhdGhUb1NldEZpcnN0UGFydHlD
b29raWUgKyAiIyIgKyByZXR1cm5VcmwgKyAiI3N0ZXAyIjsKLSAgICAgICAgICAgICAgICBicmVh
azsKLSAgICAgICAgICAgIGNhc2UgIiNzdGVwMiI6Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQu
bG9jYXRpb24uaGFzaCA9ICJzdGVwMyI7Ci0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgdGhhdCB0
aGUgY29va2llIGlzIGJsb2NrZWQgZm9yIGxvY2FsaG9zdCB1bmRlciAxMjcuMC4wLjEgZXZlbiB0
aG91Z2ggbG9jYWxob3N0IGlzIG5vdCBwcmV2YWxlbnQuCi0gICAgICAgICAgICAgICAgb3Blbklm
cmFtZSh0aGlyZFBhcnR5QmFzZVVybCArIHN1YlBhdGhUb0dldENvb2tpZXMgKyAiJm1lc3NhZ2U9
QmVmb3JlIHVzZXIgaW50ZXJhY3Rpb24sIHNob3VsZCByZWNlaXZlIG5vIGNvb2tpZXMuIiwgcnVu
VGVzdCk7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlICIjc3RlcDMi
OgotICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAic3RlcDQiOwotICAg
ICAgICAgICAgICAgIC8vIFByb2R1Y2UgdXNlciBpbnRlcmFjdGlvbiBmb3IgdGhlIGZpcnN0LXBh
cnR5IHRvIGFsbG93IHRoaXJkLXBhcnR5IGNvb2tpZSBhY2Nlc3MuCi0gICAgICAgICAgICAgICAg
dGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHBhcnRpdGlvbk9y
aWdpbiwgdHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIu
c3RhdGlzdGljc1VwZGF0ZUNvb2tpZUJsb2NraW5nKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAg
ICAgICAgICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgY29va2llIGlzIG5vIGxvbmdlciBibG9ja2Vk
IGZvciBsb2NhbGhvc3QgdW5kZXIgMTI3LjAuMC4xLgotICAgICAgICAgICAgICAgICAgICAgICAg
b3BlbklmcmFtZSh0aGlyZFBhcnR5QmFzZVVybCArIHN1YlBhdGhUb0dldENvb2tpZXMgKyAgIiZt
ZXNzYWdlPUFmdGVyIHVzZXIgaW50ZXJhY3Rpb24sIHNob3VsZCByZWNlaXZlIGZpcnN0LXBhcnR5
IGNvb2tpZS4iLCBydW5UZXN0KTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAg
ICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlICIjc3Rl
cDQiOgotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1Nob3VsZEJsb2Nr
VGhpcmRQYXJ0eUNvb2tpZXMoZmFsc2UsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICBzZXRFbmFibGVGZWF0dXJlKGZhbHNlLCBmaW5pc2hKU1Rlc3QpOwotICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYg
KGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPT09ICIiKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuc2V0
VXNlSVRQRGF0YWJhc2UodHJ1ZSk7Ci0gICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVu
Y3Rpb24gKCkgewotICAgICAgICAgICAgaWYgKHRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzUHJldmFs
ZW50UmVzb3VyY2UodGhpcmRQYXJ0eU9yaWdpbikpCi0gICAgICAgICAgICAgICAgdGVzdEZhaWxl
ZCgiTG9jYWxob3N0IHdhcyBjbGFzc2lmaWVkIGFzIHByZXZhbGVudCByZXNvdXJjZSBiZWZvcmUg
dGhlIHRlc3Qgc3RhcnRzLiIpOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFt
ZXNBc1RleHQoKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAic3RlcDEi
OwotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBh
cnR5Q29va2llcyh0cnVlLCBydW5UZXN0LCB0cnVlKTsKLSAgICAgICAgfSk7Ci0gICAgfSBlbHNl
IHsKLSAgICAgICAgcnVuVGVzdCgpOwotICAgIH0KLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tp
bmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90aGlyZC1wYXJ0eS1jb29r
aWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkwOGM4ZTRiZGZjZjk5ZmZjMDU5Yjc3
MGNiZTMzYTMwMWVkYmY2OS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvdGhp
cmQtcGFydHktY29va2llLWJsb2NraW5nLW9uLXNpdGVzLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlv
bi1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyMyArMCwwIEBACi1UZXN0cyB0aGF0
IGFsbCB0aGlyZC1wYXJ0eSBjb29raWVzIGFyZSBibG9ja2VkIHVuZGVyIHdlYnNpdGVzIHRoYXQg
aGF2ZSBub3QgcmVjZWl2ZWQgdXNlciBpbnRlcmFjdGlvbi4KLQotT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgotCi0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotICAKLQotLS0tLS0tLS0KLUZyYW1lOiAnPCEtLWZyYW1lMS0tPicKLS0tLS0tLS0tCi1C
ZWZvcmUgdXNlciBpbnRlcmFjdGlvbiwgc2hvdWxkIHJlY2VpdmUgbm8gY29va2llcy4KLURpZCBu
b3QgcmVjZWl2ZSBjb29raWUgbmFtZWQgJ2ZpcnN0UGFydHlDb29raWUnLgotQ2xpZW50LXNpZGUg
ZG9jdW1lbnQuY29va2llOgotCi0tLS0tLS0tLQotRnJhbWU6ICc8IS0tZnJhbWUyLS0+JwotLS0t
LS0tLS0KLUFmdGVyIHVzZXIgaW50ZXJhY3Rpb24sIHNob3VsZCByZWNlaXZlIGZpcnN0LXBhcnR5
IGNvb2tpZS4KLVJlY2VpdmVkIGNvb2tpZSBuYW1lZCAnZmlyc3RQYXJ0eUNvb2tpZScuCi1DbGll
bnQtc2lkZSBkb2N1bWVudC5jb29raWU6IGZpcnN0UGFydHlDb29raWU9dmFsdWUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90aGlyZC1w
YXJ0eS1jb29raWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0aW9uLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvdGhpcmQt
cGFydHktY29va2llLWJsb2NraW5nLW9uLXNpdGVzLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0YTIxMTRhOTMxNzg0NjkxMzRjZmE5
NjdlOWVhNmQyYWFmYmEzMTcyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy90
aGlyZC1wYXJ0eS1jb29raWUtYmxvY2tpbmctb24tc2l0ZXMtd2l0aG91dC11c2VyLWludGVyYWN0
aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw3NCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KLSAg
ICA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0Pgot
ICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdXRpbC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxzY3JpcHQ+Ci0gICAgZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYWxsIHRoaXJkLXBh
cnR5IGNvb2tpZXMgYXJlIGJsb2NrZWQgdW5kZXIgd2Vic2l0ZXMgdGhhdCBoYXZlIG5vdCByZWNl
aXZlZCB1c2VyIGludGVyYWN0aW9uLiIpOwotICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi0g
ICAgY29uc3QgcGFydGl0aW9uSG9zdCA9ICIxMjcuMC4wLjE6ODAwMCI7Ci0gICAgY29uc3QgcGFy
dGl0aW9uT3JpZ2luID0gImh0dHA6Ly8iICsgcGFydGl0aW9uSG9zdDsKLSAgICBjb25zdCB0aGly
ZFBhcnR5T3JpZ2luID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMCI7Ci0gICAgY29uc3QgcmVzb3Vy
Y2VQYXRoID0gIi9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcyI7Ci0gICAgY29uc3Qg
dGhpcmRQYXJ0eUJhc2VVcmwgPSB0aGlyZFBhcnR5T3JpZ2luICsgcmVzb3VyY2VQYXRoOwotICAg
IGNvbnN0IGZpcnN0UGFydHlDb29raWVOYW1lID0gImZpcnN0UGFydHlDb29raWUiOwotICAgIGNv
bnN0IHN1YlBhdGhUb1NldEZpcnN0UGFydHlDb29raWUgPSAiL3NldC1jb29raWUucGhwP25hbWU9
IiArIGZpcnN0UGFydHlDb29raWVOYW1lICsgIiZ2YWx1ZT12YWx1ZSI7Ci0gICAgY29uc3QgcmV0
dXJuVXJsID0gcGFydGl0aW9uT3JpZ2luICsgIi9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3RoaXJk
LXBhcnR5LWNvb2tpZS1ibG9ja2luZy1vbi1zaXRlcy13aXRob3V0LXVzZXItaW50ZXJhY3Rpb24u
aHRtbCI7Ci0gICAgY29uc3Qgc3ViUGF0aFRvR2V0Q29va2llcyA9ICIvZ2V0LWNvb2tpZXMucGhw
P25hbWUxPSIgKyBmaXJzdFBhcnR5Q29va2llTmFtZTsKLQotICAgIGZ1bmN0aW9uIG9wZW5JZnJh
bWUodXJsLCBvbkxvYWRIYW5kbGVyKSB7Ci0gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICAgICAgZWxlbWVudC5zcmMgPSB1cmw7Ci0g
ICAgICAgIGlmIChvbkxvYWRIYW5kbGVyKSB7Ci0gICAgICAgICAgICBlbGVtZW50Lm9ubG9hZCA9
IG9uTG9hZEhhbmRsZXI7Ci0gICAgICAgIH0KLSAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRD
aGlsZChlbGVtZW50KTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiBydW5UZXN0KCkgewotICAgICAg
ICBzd2l0Y2ggKGRvY3VtZW50LmxvY2F0aW9uLmhhc2gpIHsKLSAgICAgICAgICAgIGNhc2UgIiNz
dGVwMSI6Ci0gICAgICAgICAgICAgICAgLy8gU2V0IGZpcnN0LXBhcnR5IGNvb2tpZSBmb3IgbG9j
YWxob3N0LgotICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhyZWYgPSB0aGlyZFBh
cnR5QmFzZVVybCArIHN1YlBhdGhUb1NldEZpcnN0UGFydHlDb29raWUgKyAiIyIgKyByZXR1cm5V
cmwgKyAiI3N0ZXAyIjsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNhc2Ug
IiNzdGVwMiI6Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQubG9jYXRpb24uaGFzaCA9ICJzdGVw
MyI7Ci0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgY29va2llIGlzIGJsb2NrZWQg
Zm9yIGxvY2FsaG9zdCB1bmRlciAxMjcuMC4wLjEgZXZlbiB0aG91Z2ggbG9jYWxob3N0IGlzIG5v
dCBwcmV2YWxlbnQuCi0gICAgICAgICAgICAgICAgb3BlbklmcmFtZSh0aGlyZFBhcnR5QmFzZVVy
bCArIHN1YlBhdGhUb0dldENvb2tpZXMgKyAiJm1lc3NhZ2U9QmVmb3JlIHVzZXIgaW50ZXJhY3Rp
b24sIHNob3VsZCByZWNlaXZlIG5vIGNvb2tpZXMuIiwgcnVuVGVzdCk7Ci0gICAgICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlICIjc3RlcDMiOgotICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmxvY2F0aW9uLmhhc2ggPSAic3RlcDQiOwotICAgICAgICAgICAgICAgIC8vIFByb2R1
Y2UgdXNlciBpbnRlcmFjdGlvbiBmb3IgdGhlIGZpcnN0LXBhcnR5IHRvIGFsbG93IHRoaXJkLXBh
cnR5IGNvb2tpZSBhY2Nlc3MuCi0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0
aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHBhcnRpdGlvbk9yaWdpbiwgdHJ1ZSwgZnVuY3Rpb24o
KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1VwZGF0ZUNvb2tp
ZUJsb2NraW5nKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2hlY2sg
dGhhdCB0aGUgY29va2llIGlzIG5vIGxvbmdlciBibG9ja2VkIGZvciBsb2NhbGhvc3QgdW5kZXIg
MTI3LjAuMC4xLgotICAgICAgICAgICAgICAgICAgICAgICAgb3BlbklmcmFtZSh0aGlyZFBhcnR5
QmFzZVVybCArIHN1YlBhdGhUb0dldENvb2tpZXMgKyAgIiZtZXNzYWdlPUFmdGVyIHVzZXIgaW50
ZXJhY3Rpb24sIHNob3VsZCByZWNlaXZlIGZpcnN0LXBhcnR5IGNvb2tpZS4iLCBydW5UZXN0KTsK
LSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlICIjc3RlcDQiOgotICAgICAgICAgICAgICAg
IHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1Nob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoZmFs
c2UsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKGZh
bHNlLCBmaW5pc2hKU1Rlc3QpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGRvY3VtZW50LmxvY2F0aW9uLmhh
c2ggPT09ICIiKSB7Ci0gICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24gKCkg
ewotICAgICAgICAgICAgaWYgKHRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3Vy
Y2UodGhpcmRQYXJ0eU9yaWdpbikpCi0gICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiTG9jYWxo
b3N0IHdhcyBjbGFzc2lmaWVkIGFzIHByZXZhbGVudCByZXNvdXJjZSBiZWZvcmUgdGhlIHRlc3Qg
c3RhcnRzLiIpOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQo
KTsKLSAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAic3RlcDEiOwotICAgICAg
ICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2ll
cyh0cnVlLCBydW5UZXN0LCB0cnVlKTsKLSAgICAgICAgfSk7Ci0gICAgfSBlbHNlIHsKLSAgICAg
ICAgcnVuVGVzdCgpOwotICAgIH0KLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>