<?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>226945</bug_id>
          
          <creation_ts>2021-06-11 16:01:18 -0700</creation_ts>
          <short_desc>Enable more release logging in UIProcess/WebProcess for ephemeral sessions</short_desc>
          <delta_ts>2021-06-11 16:46:21 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1769104</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-06-11 16:01:18 -0700</bug_when>
    <thetext>Enable more release logging in UIProcess/WebProcess for ephemeral sessions, to facilitate debugging.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1769105</commentid>
    <comment_count>1</comment_count>
      <attachid>431238</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-06-11 16:02:36 -0700</bug_when>
    <thetext>Created attachment 431238
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1769109</commentid>
    <comment_count>2</comment_count>
      <attachid>431238</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2021-06-11 16:17:45 -0700</bug_when>
    <thetext>Comment on attachment 431238
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1769127</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-06-11 16:45:19 -0700</bug_when>
    <thetext>Committed r278799 (238756@main): &lt;https://commits.webkit.org/238756@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 431238.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1769128</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-11 16:46:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/79222586&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>431238</attachid>
            <date>2021-06-11 16:02:36 -0700</date>
            <delta_ts>2021-06-11 16:45:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226945-20210611160235.patch</filename>
            <type>text/plain</type>
            <size>37066</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc4Nzg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDAzMTZkNjcxMTAzZWVhZmZl
NGNiYmI2ZjBkMDE3OTE3YTQ2NWI3YTkuLmZjYjY1MzgxOGQ0NWU0NjcyZTEzOTQyOGVkNTdhMzI3
ZmVhMjI2YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMjEtMDYtMTEgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBFbmFibGUgbW9yZSByZWxlYXNlIGxv
Z2dpbmcgaW4gVUlQcm9jZXNzL1dlYlByb2Nlc3MgZm9yIGVwaGVtZXJhbCBzZXNzaW9ucworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI2OTQ1CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIG1vcmUg
cmVsZWFzZSBsb2dnaW5nIGluIFVJUHJvY2Vzcy9XZWJQcm9jZXNzIGZvciBlcGhlbWVyYWwgc2Vz
c2lvbnMsIHRvIGZhY2lsaXRhdGUKKyAgICAgICAgZGVidWdnaW5nLgorCisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICogVUlQcm9jZXNzL1JlbW90
ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5Lmg6CisgICAgICAgICog
VUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5
Lm1tOgorICAgICAgICAqIFVJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVl
SG9zdC5tbToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlSG9zdDo6dXBkYXRlTGF5
ZXJUcmVlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5lY3Rp
b25Ub05ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRDbG9zZSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpmZXRjaFdlYnNpdGVEYXRhKToKKyAgICAgICAg
KFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpkZWxldGVXZWJzaXRlRGF0YSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6ZGVsZXRlV2Vic2l0ZURhdGFGb3JPcmlnaW5zKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpyZXF1ZXN0VGVybWluYXRpb24pOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNz
L05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2Fk
ZXJTdHJhdGVneTo6bG9hZFJlc291cmNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3Ry
YXRlZ3k6OnNjaGVkdWxlTG9hZCk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
Ojp0cnlMb2FkaW5nVXNpbmdVUkxTY2hlbWVIYW5kbGVyKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
TG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZEZyb21OZXR3b3JrUHJvY2Vzcyk6CisgICAgICAg
IChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpuZXR3b3JrUHJvY2Vzc0NyYXNoZWQpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6bG9hZERhdGFVUkxTeW5jaHJvbm91c2x5
KToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5bmNo
cm9ub3VzbHkpOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvV2ViUlRDTW9u
aXRvci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJUQ01vbml0b3I6OlN0YXJ0VXBkYXRpbmcp
OgorICAgICAgICAoV2ViS2l0OjpXZWJSVENNb25pdG9yOjpTdG9wVXBkYXRpbmcpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJSVENNb25pdG9yOjpuZXR3b3Jrc0NoYW5nZWQpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwOgorCiAyMDIxLTA2LTEx
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
RG9uJ3QgaW5jbHVkZSBjZXJ0aWZpY2F0ZSBpbmZvIGluIFdlYlVSTFNjaGVtZVRhc2s6OmRpZFJl
Y2VpdmVSZXNwb25zZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXcubW0KaW5kZXggYzU3ZGQyNzY5NjUyMmRkZWY4NjJkNTk5M2YzNTM3ZjA0MTVkNTQ2Ny4u
NGRlNzU4OGVmMTdhMmI5NDliNmM1MGY0MjBmMDUwZWY2ZWZhZWMwMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC0xNzQsNyArMTc0LDcg
QEAKICNpbXBvcnQgPHBhbC9zcGkvaW9zL0dyYXBoaWNzU2VydmljZXNTUEkuaD4KICNpbXBvcnQg
PHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KIAotI2RlZmluZSBSRUxFQVNFX0xPR19JRl9BTExP
V0VEKC4uLikgUkVMRUFTRV9MT0dfSUYoX3BhZ2UgJiYgX3BhZ2UtPmlzQWx3YXlzT25Mb2dnaW5n
QWxsb3dlZCgpLCBWaWV3U3RhdGUsIF9fVkFfQVJHU19fKQorI2RlZmluZSBXS1dFQlZJRVdfUkVM
RUFTRV9MT0coLi4uKSBSRUxFQVNFX0xPR19JRihWaWV3U3RhdGUsIF9fVkFfQVJHU19fKQogI2Vu
ZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKICNpZiBQTEFURk9STShNQUMpCkBAIC0zNjQ3
LDQgKzM2NDcsNCBAQCAtICh2b2lkKV9zZXRGb3JtRGVsZWdhdGU6KGlkIDxfV0tJbnB1dERlbGVn
YXRlPilmb3JtRGVsZWdhdGUKIAogQGVuZAogCi0jdW5kZWYgUkVMRUFTRV9MT0dfSUZfQUxMT1dF
RAorI3VuZGVmIFdLV0VCVklFV19SRUxFQVNFX0xPRwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXll
clRyZWVEcmF3aW5nQXJlYVByb3h5LmgKaW5kZXggYjZlYzUyZGI4MjFkOTY1MWVhMjJkOGYwYzNl
MmYzNTZjY2FmZDU2YS4uZTMyYmY3YjM1OTI2ZmM4YWIzMGU5YjQ1ZTAyNDUwYjBmZTZhMTJjZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90
ZUxheWVyVHJlZURyYXdpbmdBcmVhUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFQcm94eS5oCkBAIC01
OCw4ICs1OCw2IEBAIHB1YmxpYzoKICAgICAKICAgICBib29sIGhhc0RlYnVnSW5kaWNhdG9yKCkg
Y29uc3QgeyByZXR1cm4gISFtX2RlYnVnSW5kaWNhdG9yTGF5ZXJUcmVlSG9zdDsgfQogCi0gICAg
Ym9vbCBpc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSBjb25zdDsKLQogICAgIENBTGF5ZXIgKmxh
eWVyV2l0aElERm9yVGVzdGluZyh1aW50NjRfdCkgY29uc3Q7CiAKIHByaXZhdGU6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJU
cmVlRHJhd2luZ0FyZWFQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxh
eWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5Lm1tCmluZGV4IDE0OTVkODlj
MjI0M2NiNDhiMDUzYmJmNTk5NTU0YzkxYzk0N2U4ZjMuLmI0ZTRjNmMwZGE4MDMyNjEyOTViZGRh
ZmQ0NTViN2NhOTljODUzYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Jl
bW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5Lm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3
aW5nQXJlYVByb3h5Lm1tCkBAIC01MDIsMTEgKzUwMiw2IEBAIGJvb2wgUmVtb3RlTGF5ZXJUcmVl
RHJhd2luZ0FyZWFQcm94eTo6aGFzVmlzaWJsZUNvbnRlbnQoKSBjb25zdAogICAgIHJldHVybiBt
X3JlbW90ZUxheWVyVHJlZUhvc3QtPnJvb3RMYXllcigpOwogfQogCi1ib29sIFJlbW90ZUxheWVy
VHJlZURyYXdpbmdBcmVhUHJveHk6OmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpIGNvbnN0Ci17
Ci0gICAgcmV0dXJuIG1fd2ViUGFnZVByb3h5LnNlc3Npb25JRCgpLmlzQWx3YXlzT25Mb2dnaW5n
QWxsb3dlZCgpOwotfQotCiBDQUxheWVyICpSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5
OjpsYXllcldpdGhJREZvclRlc3RpbmcodWludDY0X3QgbGF5ZXJJRCkgY29uc3QKIHsKICAgICBy
ZXR1cm4gbV9yZW1vdGVMYXllclRyZWVIb3N0LT5sYXllcldpdGhJREZvclRlc3RpbmcobGF5ZXJJ
RCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUv
UmVtb3RlTGF5ZXJUcmVlSG9zdC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxh
eWVyVHJlZS9SZW1vdGVMYXllclRyZWVIb3N0Lm1tCmluZGV4IGEyNjdhODM1NTk2NGE5OWQ1ZDA4
MDM0NjA2YTdmYTdjZThjNDc5NWUuLjEwMDljZDgwMTY4YWVlNzViZjg5MGUxYzNlYjEwYTdiOTI3
OWFmYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJl
ZS9SZW1vdGVMYXllclRyZWVIb3N0Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Jl
bW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVIb3N0Lm1tCkBAIC00OSw3ICs0OSw3IEBACiBu
YW1lc3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCi0jZGVmaW5lIFJF
TEVBU0VfTE9HX0lGX0FMTE9XRUQoLi4uKSBSRUxFQVNFX0xPR19JRihtX2RyYXdpbmdBcmVhICYm
IG1fZHJhd2luZ0FyZWEtPmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpLCBWaWV3U3RhdGUsIF9f
VkFfQVJHU19fKQorI2RlZmluZSBSRU1PVEVfTEFZRVJfVFJFRV9IT1NUX1JFTEVBU0VfTE9HKC4u
LikgUkVMRUFTRV9MT0coVmlld1N0YXRlLCBfX1ZBX0FSR1NfXykKIAogUmVtb3RlTGF5ZXJUcmVl
SG9zdDo6UmVtb3RlTGF5ZXJUcmVlSG9zdChSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5
JiBkcmF3aW5nQXJlYSkKICAgICA6IG1fZHJhd2luZ0FyZWEoJmRyYXdpbmdBcmVhKQpAQCAtNzYs
NyArNzYsNyBAQCBib29sIFJlbW90ZUxheWVyVHJlZUhvc3Q6OnVwZGF0ZUxheWVyVHJlZShjb25z
dCBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbiYgdHJhbgogICAgIGF1dG8qIHJvb3ROb2RlID0g
bm9kZUZvcklEKHRyYW5zYWN0aW9uLnJvb3RMYXllcklEKCkpOwogICAgIAogICAgIGlmICghcm9v
dE5vZGUpCi0gICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoIiVwIFJlbW90ZUxheWVyVHJl
ZUhvc3Q6OnVwZGF0ZUxheWVyVHJlZSAtIGZhaWxlZCB0byBmaW5kIHJvb3QgbGF5ZXIgd2l0aCBJ
RCAlbGx1IiwgdGhpcywgdHJhbnNhY3Rpb24ucm9vdExheWVySUQoKSk7CisgICAgICAgIFJFTU9U
RV9MQVlFUl9UUkVFX0hPU1RfUkVMRUFTRV9MT0coIiVwIFJlbW90ZUxheWVyVHJlZUhvc3Q6OnVw
ZGF0ZUxheWVyVHJlZSAtIGZhaWxlZCB0byBmaW5kIHJvb3QgbGF5ZXIgd2l0aCBJRCAlbGx1Iiwg
dGhpcywgdHJhbnNhY3Rpb24ucm9vdExheWVySUQoKSk7CiAKICAgICBpZiAobV9yb290Tm9kZSAh
PSByb290Tm9kZSkgewogICAgICAgICBtX3Jvb3ROb2RlID0gcm9vdE5vZGU7CkBAIC0xMDQsNyAr
MTA0LDcgQEAgYm9vbCBSZW1vdGVMYXllclRyZWVIb3N0Ojp1cGRhdGVMYXllclRyZWUoY29uc3Qg
UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24mIHRyYW4KIAogICAgICAgICBpZiAoIW5vZGUpIHsK
ICAgICAgICAgICAgIC8vIFdlIGhhdmUgZXZpZGVuY2UgdGhhdCB0aGlzIGNhbiBzdGlsbCBoYXBw
ZW4sIGJ1dCBkb24ndCBrbm93IGhvdyAoc2VlIHIyNDE4OTkgZm9yIG9uZSBhbHJlYWR5LWZpeGVk
IGNhdXNlKS4KLSAgICAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoIiVwIFJlbW90ZUxh
eWVyVHJlZUhvc3Q6OnVwZGF0ZUxheWVyVHJlZSAtIGZhaWxlZCB0byBmaW5kIGxheWVyIHdpdGgg
SUQgJWxsdSIsIHRoaXMsIGxheWVySUQpOworICAgICAgICAgICAgUkVNT1RFX0xBWUVSX1RSRUVf
SE9TVF9SRUxFQVNFX0xPRygiJXAgUmVtb3RlTGF5ZXJUcmVlSG9zdDo6dXBkYXRlTGF5ZXJUcmVl
IC0gZmFpbGVkIHRvIGZpbmQgbGF5ZXIgd2l0aCBJRCAlbGx1IiwgdGhpcywgbGF5ZXJJRCk7CiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCkBAIC0xMjAsNyArMTIwLDcgQEAgYm9v
bCBSZW1vdGVMYXllclRyZWVIb3N0Ojp1cGRhdGVMYXllclRyZWUoY29uc3QgUmVtb3RlTGF5ZXJU
cmVlVHJhbnNhY3Rpb24mIHRyYW4KIAogICAgICAgICBpZiAoIW5vZGUpIHsKICAgICAgICAgICAg
IC8vIFdlIGhhdmUgZXZpZGVuY2UgdGhhdCB0aGlzIGNhbiBzdGlsbCBoYXBwZW4sIGJ1dCBkb24n
dCBrbm93IGhvdyAoc2VlIHIyNDE4OTkgZm9yIG9uZSBhbHJlYWR5LWZpeGVkIGNhdXNlKS4KLSAg
ICAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoIiVwIFJlbW90ZUxheWVyVHJlZUhvc3Q6
OnVwZGF0ZUxheWVyVHJlZSAtIGZhaWxlZCB0byBmaW5kIGxheWVyIHdpdGggSUQgJWxsdSIsIHRo
aXMsIGxheWVySUQpOworICAgICAgICAgICAgUkVNT1RFX0xBWUVSX1RSRUVfSE9TVF9SRUxFQVNF
X0xPRygiJXAgUmVtb3RlTGF5ZXJUcmVlSG9zdDo6dXBkYXRlTGF5ZXJUcmVlIC0gZmFpbGVkIHRv
IGZpbmQgbGF5ZXIgd2l0aCBJRCAlbGx1IiwgdGhpcywgbGF5ZXJJRCk7CiAgICAgICAgICAgICBj
b250aW51ZTsKICAgICAgICAgfQogCkBAIC0zMzMsNCArMzMzLDQgQEAgdm9pZCBSZW1vdGVMYXll
clRyZWVIb3N0OjptYXBBbGxJT1N1cmZhY2VCYWNraW5nU3RvcmUoKQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKIAotI3VuZGVmIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQKKyN1bmRlZiBSRU1PVEVf
TEFZRVJfVFJFRV9IT1NUX1JFTEVBU0VfTE9HCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5jcHAKaW5kZXggYzEzMzBlNzQzN2VmOTMyYjZkNTMyYTAxYjQ1NDU2ZDYxMDM2
OGU5ZC4uN2M5MDJiZTUwMmY0YTI1MjA1NzYzMjA3NGJkZTM1MTNjOGNiODg4NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtMTQ5LDggKzE0OSw2IEBA
CiAjZGVmaW5lIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HKGNoYW5uZWwsIGZtdCwgLi4uKSBS
RUxFQVNFX0xPRyhjaGFubmVsLCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMj
X19WQV9BUkdTX18pCiAjZGVmaW5lIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HX1NUQVRJQyhj
aGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0coY2hhbm5lbCwgIldlYlByb2Nlc3NQb29sOjoi
IGZtdCwgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCUFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0df
RVJST1IoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5uZWwsICIlcCAt
IFdlYlByb2Nlc3NQb29sOjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKLSNkZWZpbmUgV0VC
UFJPQ0VTU1BPT0xfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChjaGFubmVsLCBmbXQsIC4uLikgUkVM
RUFTRV9MT0dfSUYoc2Vzc2lvbklELmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpLCBjaGFubmVs
LCAiJXAgLSBXZWJQcm9jZXNzUG9vbDo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCi0jZGVm
aW5lIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HX0lGX0FMTE9XRURfU1RBVElDKGNoYW5uZWws
IGZtdCwgLi4uKSBSRUxFQVNFX0xPR19JRihzZXNzaW9uSUQuaXNBbHdheXNPbkxvZ2dpbmdBbGxv
d2VkKCksIGNoYW5uZWwsICJXZWJQcm9jZXNzUG9vbDo6IiBmbXQsICMjX19WQV9BUkdTX18pCiAK
IG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBAIC01OTIsNyAr
NTkwLDcgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6ZXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5l
Y3Rpb25Ub05ldHdvcmtQcm9jZXNzKE5ldHdvcmtQcm8KICAgICAgICAgICAgICAgICBBU1NFUlQo
IXNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHktPmlzSW5Qcm9jZXNzQ2FjaGUoKSk7CiAgICAgICAg
ICAgICB9CiAKLSAgICAgICAgICAgIFdFQlBST0NFU1NQT09MX1JFTEVBU0VfTE9HX0lGX0FMTE9X
RURfU1RBVElDKFNlcnZpY2VXb3JrZXIsICJlc3RhYmxpc2hXb3JrZXJDb250ZXh0Q29ubmVjdGlv
blRvTmV0d29ya1Byb2Nlc3MgcmV1c2luZyBhbiBleGlzdGluZyB3ZWIgcHJvY2VzcyAocHJvY2Vz
cz0lcCwgUElEPSVkKSIsIHNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHksIHNlcnZpY2VXb3JrZXJQ
cm9jZXNzUHJveHktPnByb2Nlc3NJZGVudGlmaWVyKCkpOworICAgICAgICAgICAgV0VCUFJPQ0VT
U1BPT0xfUkVMRUFTRV9MT0dfU1RBVElDKFNlcnZpY2VXb3JrZXIsICJlc3RhYmxpc2hXb3JrZXJD
b250ZXh0Q29ubmVjdGlvblRvTmV0d29ya1Byb2Nlc3MgcmV1c2luZyBhbiBleGlzdGluZyB3ZWIg
cHJvY2VzcyAocHJvY2Vzcz0lcCwgUElEPSVkKSIsIHNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHks
IHNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHktPnByb2Nlc3NJZGVudGlmaWVyKCkpOwogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9CkBAIC02MDEsNyArNTk5LDcgQEAgdm9pZCBX
ZWJQcm9jZXNzUG9vbDo6ZXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5lY3Rpb25Ub05ldHdvcmtQ
cm9jZXNzKE5ldHdvcmtQcm8KICAgICAgICAgYXV0byBuZXdQcm9jZXNzUHJveHkgPSBXZWJQcm9j
ZXNzUHJveHk6OmNyZWF0ZUZvclNlcnZpY2VXb3JrZXJzKCpwcm9jZXNzUG9vbCwgV1RGTW92ZShy
ZWdpc3RyYWJsZURvbWFpbiksICp3ZWJzaXRlRGF0YVN0b3JlKTsKICAgICAgICAgc2VydmljZVdv
cmtlclByb2Nlc3NQcm94eSA9IG5ld1Byb2Nlc3NQcm94eS5wdHIoKTsKIAotICAgICAgICBXRUJQ
Uk9DRVNTUE9PTF9SRUxFQVNFX0xPR19JRl9BTExPV0VEX1NUQVRJQyhTZXJ2aWNlV29ya2VyLCAi
ZXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5lY3Rpb25Ub05ldHdvcmtQcm9jZXNzIGNyZWF0aW5n
IGEgbmV3IHNlcnZpY2Ugd29ya2VyIHByb2Nlc3MgKHByb2Nlcz0lcCwgUElEPSVkKSIsIHNlcnZp
Y2VXb3JrZXJQcm9jZXNzUHJveHksIHNlcnZpY2VXb3JrZXJQcm9jZXNzUHJveHktPnByb2Nlc3NJ
ZGVudGlmaWVyKCkpOworICAgICAgICBXRUJQUk9DRVNTUE9PTF9SRUxFQVNFX0xPR19TVEFUSUMo
U2VydmljZVdvcmtlciwgImVzdGFibGlzaFdvcmtlckNvbnRleHRDb25uZWN0aW9uVG9OZXR3b3Jr
UHJvY2VzcyBjcmVhdGluZyBhIG5ldyBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIChwcm9jZXM9JXAs
IFBJRD0lZCkiLCBzZXJ2aWNlV29ya2VyUHJvY2Vzc1Byb3h5LCBzZXJ2aWNlV29ya2VyUHJvY2Vz
c1Byb3h5LT5wcm9jZXNzSWRlbnRpZmllcigpKTsKIAogICAgICAgICBwcm9jZXNzUG9vbC0+aW5p
dGlhbGl6ZU5ld1dlYlByb2Nlc3MobmV3UHJvY2Vzc1Byb3h5LCB3ZWJzaXRlRGF0YVN0b3JlKTsK
ICAgICAgICAgcHJvY2Vzc1Bvb2wtPm1fcHJvY2Vzc2VzLmFwcGVuZChXVEZNb3ZlKG5ld1Byb2Nl
c3NQcm94eSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vz
c1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAK
aW5kZXggNDQ3MjE2YjVjOWZhNDI4NjYwZjAzMGQ3YTk1OTlhMmUyYzc4ZmM1Zi4uMmU1MTI4MjJh
MzQ0MTgxMzgwOGQ2NTVlNDE1OWI4YjcyNmFkYmY3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCkBAIC04NDgsOSArODQ4LDkgQEAgYm9vbCBXZWJQcm9j
ZXNzUHJveHk6OmRpZFJlY2VpdmVTeW5jTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24sIElQQzo6RGUKIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRDbG9zZShJUEM6OkNvbm5lY3Rp
b24mIGNvbm5lY3Rpb24pCiB7CiAjaWYgT1MoREFSV0lOKQotICAgIFJFTEVBU0VfTE9HX0lGKGlz
UmVsZWFzZUxvZ2dpbmdBbGxvd2VkKCksIFByb2Nlc3MsICIlcCAtIFdlYlByb2Nlc3NQcm94eSBk
aWRDbG9zZSAod2ViIHByb2Nlc3MgJWQgY3Jhc2gpIiwgdGhpcywgY29ubmVjdGlvbi5yZW1vdGVQ
cm9jZXNzSUQoKSk7CisgICAgUkVMRUFTRV9MT0coUHJvY2VzcywgIiVwIC0gV2ViUHJvY2Vzc1By
b3h5IGRpZENsb3NlICh3ZWIgcHJvY2VzcyAlZCBjcmFzaCkiLCB0aGlzLCBjb25uZWN0aW9uLnJl
bW90ZVByb2Nlc3NJRCgpKTsKICNlbHNlCi0gICAgUkVMRUFTRV9MT0dfSUYoaXNSZWxlYXNlTG9n
Z2luZ0FsbG93ZWQoKSwgUHJvY2VzcywgIiVwIC0gV2ViUHJvY2Vzc1Byb3h5IGRpZENsb3NlICh3
ZWIgcHJvY2VzcyBjcmFzaCkiLCB0aGlzKTsKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzLCAiJXAg
LSBXZWJQcm9jZXNzUHJveHkgZGlkQ2xvc2UgKHdlYiBwcm9jZXNzIGNyYXNoKSIsIHRoaXMpOwog
I2VuZGlmCiAKICAgICBwcm9jZXNzRGlkVGVybWluYXRlT3JGYWlsZWRUb0xhdW5jaChQcm9jZXNz
VGVybWluYXRpb25SZWFzb246OkNyYXNoKTsKQEAgLTEwMTUsNyArMTAxNSw3IEBAIHZvaWQgV2Vi
UHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcoUHJvY2Vzc0xhdW5jaGVyKiBsYXVuY2hl
ciwgSVBDOjpDb25uZWN0CiAgICAgQXV4aWxpYXJ5UHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVu
Y2hpbmcobGF1bmNoZXIsIGNvbm5lY3Rpb25JZGVudGlmaWVyKTsKIAogICAgIGlmICghSVBDOjpD
b25uZWN0aW9uOjppZGVudGlmaWVySXNWYWxpZChjb25uZWN0aW9uSWRlbnRpZmllcikpIHsKLSAg
ICAgICAgUkVMRUFTRV9MT0dfSUYoaXNSZWxlYXNlTG9nZ2luZ0FsbG93ZWQoKSwgUHJvY2Vzcywg
IiVwIC0gV2ViUHJvY2Vzc1Byb3h5IGRpZEZpbmlzaExhdW5jaGluZyAtIGludmFsaWQgY29ubmVj
dGlvbiBpZGVudGlmaWVyICh3ZWIgcHJvY2VzcyBmYWlsZWQgdG8gbGF1bmNoKSIsIHRoaXMpOwor
ICAgICAgICBSRUxFQVNFX0xPRyhQcm9jZXNzLCAiJXAgLSBXZWJQcm9jZXNzUHJveHkgZGlkRmlu
aXNoTGF1bmNoaW5nIC0gaW52YWxpZCBjb25uZWN0aW9uIGlkZW50aWZpZXIgKHdlYiBwcm9jZXNz
IGZhaWxlZCB0byBsYXVuY2gpIiwgdGhpcyk7CiAgICAgICAgIHByb2Nlc3NEaWRUZXJtaW5hdGVP
ckZhaWxlZFRvTGF1bmNoKFByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbjo6Q3Jhc2gpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQpAQCAtMTIyNSwxNCArMTIyNSwxNCBAQCB2b2lkIFdlYlByb2Nlc3NQ
cm94eTo6ZmV0Y2hXZWJzaXRlRGF0YShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvblNl
dDxXZWJzaQogICAgIEFTU0VSVChjYW5TZW5kTWVzc2FnZSgpKTsKICAgICBBU1NFUlRfVU5VU0VE
KHNlc3Npb25JRCwgc2Vzc2lvbklEID09IHRoaXMtPnNlc3Npb25JRCgpKTsKIAotICAgIFJFTEVB
U0VfTE9HX0lGKGlzUmVsZWFzZUxvZ2dpbmdBbGxvd2VkKCksIFByb2Nlc3NTdXNwZW5zaW9uLCAi
JXAgLSBXZWJQcm9jZXNzUHJveHkgaXMgdGFraW5nIGEgYmFja2dyb3VuZCBhc3NlcnRpb24gYmVj
YXVzZSB0aGUgV2ViIHByb2Nlc3MgaXMgZmV0Y2hpbmcgV2Vic2l0ZSBkYXRhIiwgdGhpcyk7Cisg
ICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFdlYlByb2Nlc3NQcm94eSBp
cyB0YWtpbmcgYSBiYWNrZ3JvdW5kIGFzc2VydGlvbiBiZWNhdXNlIHRoZSBXZWIgcHJvY2VzcyBp
cyBmZXRjaGluZyBXZWJzaXRlIGRhdGEiLCB0aGlzKTsKIAogICAgIHNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6V2ViUHJvY2Vzczo6RmV0Y2hXZWJzaXRlRGF0YShkYXRhVHlwZXMpLCBbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdU
Rk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoYXV0byByZXBseSkgbXV0YWJsZSB7CiAjaWYgUkVM
RUFTRV9MT0dfRElTQUJMRUQKICAgICAgICAgVU5VU0VEX1BBUkFNKHRoaXMpOwogI2VuZGlmCiAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUocmVwbHkpKTsKLSAgICAgICAgUkVMRUFT
RV9MT0dfSUYoaXNSZWxlYXNlTG9nZ2luZ0FsbG93ZWQoKSwgUHJvY2Vzc1N1c3BlbnNpb24sICIl
cCAtIFdlYlByb2Nlc3NQcm94eSBpcyByZWxlYXNpbmcgYSBiYWNrZ3JvdW5kIGFzc2VydGlvbiBi
ZWNhdXNlIHRoZSBXZWIgcHJvY2VzcyBpcyBkb25lIGZldGNoaW5nIFdlYnNpdGUgZGF0YSIsIHRo
aXMpOworICAgICAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV2ViUHJv
Y2Vzc1Byb3h5IGlzIHJlbGVhc2luZyBhIGJhY2tncm91bmQgYXNzZXJ0aW9uIGJlY2F1c2UgdGhl
IFdlYiBwcm9jZXNzIGlzIGRvbmUgZmV0Y2hpbmcgV2Vic2l0ZSBkYXRhIiwgdGhpcyk7CiAgICAg
fSk7CiB9CiAKQEAgLTEyNDEsMTQgKzEyNDEsMTQgQEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6OmRl
bGV0ZVdlYnNpdGVEYXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnMK
ICAgICBBU1NFUlQoY2FuU2VuZE1lc3NhZ2UoKSk7CiAgICAgQVNTRVJUX1VOVVNFRChzZXNzaW9u
SUQsIHNlc3Npb25JRCA9PSB0aGlzLT5zZXNzaW9uSUQoKSk7CiAKLSAgICBSRUxFQVNFX0xPR19J
Rihpc1JlbGVhc2VMb2dnaW5nQWxsb3dlZCgpLCBQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV2Vi
UHJvY2Vzc1Byb3h5IGlzIHRha2luZyBhIGJhY2tncm91bmQgYXNzZXJ0aW9uIGJlY2F1c2UgdGhl
IFdlYiBwcm9jZXNzIGlzIGRlbGV0aW5nIFdlYnNpdGUgZGF0YSIsIHRoaXMpOworICAgIFJFTEVB
U0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXZWJQcm9jZXNzUHJveHkgaXMgdGFraW5n
IGEgYmFja2dyb3VuZCBhc3NlcnRpb24gYmVjYXVzZSB0aGUgV2ViIHByb2Nlc3MgaXMgZGVsZXRp
bmcgV2Vic2l0ZSBkYXRhIiwgdGhpcyk7CiAKICAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2Fn
ZXM6OldlYlByb2Nlc3M6OkRlbGV0ZVdlYnNpdGVEYXRhKGRhdGFUeXBlcywgbW9kaWZpZWRTaW5j
ZSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildICgpIG11dGFibGUgewogI2lmIFJFTEVB
U0VfTE9HX0RJU0FCTEVECiAgICAgICAgIFVOVVNFRF9QQVJBTSh0aGlzKTsKICNlbmRpZgogICAg
ICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwotICAgICAgICBSRUxFQVNFX0xPR19JRihpc1JlbGVh
c2VMb2dnaW5nQWxsb3dlZCgpLCBQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV2ViUHJvY2Vzc1By
b3h5IGlzIHJlbGVhc2luZyBhIGJhY2tncm91bmQgYXNzZXJ0aW9uIGJlY2F1c2UgdGhlIFdlYiBw
cm9jZXNzIGlzIGRvbmUgZGVsZXRpbmcgV2Vic2l0ZSBkYXRhIiwgdGhpcyk7CisgICAgICAgIFJF
TEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXZWJQcm9jZXNzUHJveHkgaXMgcmVs
ZWFzaW5nIGEgYmFja2dyb3VuZCBhc3NlcnRpb24gYmVjYXVzZSB0aGUgV2ViIHByb2Nlc3MgaXMg
ZG9uZSBkZWxldGluZyBXZWJzaXRlIGRhdGEiLCB0aGlzKTsKICAgICB9KTsKIH0KIApAQCAtMTI1
NywxNCArMTI1NywxNCBAQCB2b2lkIFdlYlByb2Nlc3NQcm94eTo6ZGVsZXRlV2Vic2l0ZURhdGFG
b3JPcmlnaW5zKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aQogICAgIEFTU0VSVChjYW5T
ZW5kTWVzc2FnZSgpKTsKICAgICBBU1NFUlRfVU5VU0VEKHNlc3Npb25JRCwgc2Vzc2lvbklEID09
IHRoaXMtPnNlc3Npb25JRCgpKTsKIAotICAgIFJFTEVBU0VfTE9HX0lGKGlzUmVsZWFzZUxvZ2dp
bmdBbGxvd2VkKCksIFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXZWJQcm9jZXNzUHJveHkgaXMg
dGFraW5nIGEgYmFja2dyb3VuZCBhc3NlcnRpb24gYmVjYXVzZSB0aGUgV2ViIHByb2Nlc3MgaXMg
ZGVsZXRpbmcgV2Vic2l0ZSBkYXRhIGZvciBzZXZlcmFsIG9yaWdpbnMiLCB0aGlzKTsKKyAgICBS
RUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV2ViUHJvY2Vzc1Byb3h5IGlzIHRh
a2luZyBhIGJhY2tncm91bmQgYXNzZXJ0aW9uIGJlY2F1c2UgdGhlIFdlYiBwcm9jZXNzIGlzIGRl
bGV0aW5nIFdlYnNpdGUgZGF0YSBmb3Igc2V2ZXJhbCBvcmlnaW5zIiwgdGhpcyk7CiAKICAgICBz
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkRlbGV0ZVdlYnNpdGVEYXRh
Rm9yT3JpZ2lucyhkYXRhVHlwZXMsIG9yaWdpbnMpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1h
a2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpXSAoKSBtdXRhYmxlIHsKICNpZiBSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgICAgICBVTlVT
RURfUEFSQU0odGhpcyk7CiAjZW5kaWYKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKLSAg
ICAgICAgUkVMRUFTRV9MT0dfSUYoaXNSZWxlYXNlTG9nZ2luZ0FsbG93ZWQoKSwgUHJvY2Vzc1N1
c3BlbnNpb24sICIlcCAtIFdlYlByb2Nlc3NQcm94eSBpcyByZWxlYXNpbmcgYSBiYWNrZ3JvdW5k
IGFzc2VydGlvbiBiZWNhdXNlIHRoZSBXZWIgcHJvY2VzcyBpcyBkb25lIGRlbGV0aW5nIFdlYnNp
dGUgZGF0YSBmb3Igc2V2ZXJhbCBvcmlnaW5zIiwgdGhpcyk7CisgICAgICAgIFJFTEVBU0VfTE9H
KFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXZWJQcm9jZXNzUHJveHkgaXMgcmVsZWFzaW5nIGEg
YmFja2dyb3VuZCBhc3NlcnRpb24gYmVjYXVzZSB0aGUgV2ViIHByb2Nlc3MgaXMgZG9uZSBkZWxl
dGluZyBXZWJzaXRlIGRhdGEgZm9yIHNldmVyYWwgb3JpZ2lucyIsIHRoaXMpOwogICAgIH0pOwog
fQogCkBAIC0xMjc0LDE4ICsxMjc0LDEzIEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpyZXF1ZXN0
VGVybWluYXRpb24oUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHJlYXNvbikKICAgICAgICAgcmV0
dXJuOwogCiAgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyk7Ci0gICAgUkVM
RUFTRV9MT0dfRVJST1JfSUYoaXNSZWxlYXNlTG9nZ2luZ0FsbG93ZWQoKSwgUHJvY2VzcywgIiVw
IC0gV2ViUHJvY2Vzc1Byb3h5OjpyZXF1ZXN0VGVybWluYXRpb24gLSBQSUQgJWQgLSByZWFzb24g
JWQiLCB0aGlzLCBwcm9jZXNzSWRlbnRpZmllcigpLCByZWFzb24pOworICAgIFJFTEVBU0VfTE9H
X0VSUk9SKFByb2Nlc3MsICIlcCAtIFdlYlByb2Nlc3NQcm94eTo6cmVxdWVzdFRlcm1pbmF0aW9u
IC0gUElEICVkIC0gcmVhc29uICVkIiwgdGhpcywgcHJvY2Vzc0lkZW50aWZpZXIoKSwgcmVhc29u
KTsKIAogICAgIEF1eGlsaWFyeVByb2Nlc3NQcm94eTo6dGVybWluYXRlKCk7CiAKICAgICBwcm9j
ZXNzRGlkVGVybWluYXRlT3JGYWlsZWRUb0xhdW5jaChyZWFzb24pOwogfQogCi1ib29sIFdlYlBy
b2Nlc3NQcm94eTo6aXNSZWxlYXNlTG9nZ2luZ0FsbG93ZWQoKSBjb25zdAotewotICAgIHJldHVy
biAhbV93ZWJzaXRlRGF0YVN0b3JlIHx8IG1fd2Vic2l0ZURhdGFTdG9yZS0+c2Vzc2lvbklEKCku
aXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCk7Ci19Ci0KIHZvaWQgV2ViUHJvY2Vzc1Byb3h5Ojpz
dG9wUmVzcG9uc2l2ZW5lc3NUaW1lcigpCiB7CiAgICAgcmVzcG9uc2l2ZW5lc3NUaW1lcigpLnN0
b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94
eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKaW5kZXggNTVj
NThjNDNjYTdhOTZhN2M5MzY4MTYxNmUzODI4NjYwYjEwNmY3Yy4uNzg5MjI5ODM0ZDVkOWFhMjgw
YmEzNTJiY2Y0ZDljYTU5NmRmZTBlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Byb3h5LmgKQEAgLTQ4MSw4ICs0ODEsNiBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBwcm9j
ZXNzRGlkVGVybWluYXRlT3JGYWlsZWRUb0xhdW5jaChQcm9jZXNzVGVybWluYXRpb25SZWFzb24p
OwogCi0gICAgYm9vbCBpc1JlbGVhc2VMb2dnaW5nQWxsb3dlZCgpIGNvbnN0OwotCiAgICAgLy8g
SVBDOjpDb25uZWN0aW9uOjpDbGllbnQKICAgICBmcmllbmQgY2xhc3MgV2ViQ29ubmVjdGlvblRv
V2ViUHJvY2VzczsKICAgICB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYs
IElQQzo6RGVjb2RlciYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCmluZGV4IDRiMGI2NmJlYmJmNzYw
OWJjYTQwZjkyOGU2NDAxOGEzMTBkOTliNWEuLmM0MmQyYzAwZjc5ODJlYTNmZTE5NDAxY2QwNzZj
MjRhMGI2NDllYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTc3LDIyICs3NywxOCBAQAogI2luY2x1ZGUg
PFdlYkNvcmUvUXVpY2tMb29rLmg+CiAjZW5kaWYKIAotCi0jZGVmaW5lIFJFTEVBU0VfTE9HX0lT
X0FMTE9XRUQgKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnNlc3Npb25JRCgpLmlzQWx3YXlzT25M
b2dnaW5nQWxsb3dlZCgpKQotCi0jdW5kZWYgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRAotI2RlZmlu
ZSBSRUxFQVNFX0xPR19JRl9BTExPV0VEKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19JRihSRUxFQVNF
X0xPR19JU19BTExPV0VELCBOZXR3b3JrLCAiJXAgLSBXZWJMb2FkZXJTdHJhdGVneTo6IiBmbXQs
IHRoaXMsICMjX19WQV9BUkdTX18pCi0jZGVmaW5lIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9X
RUQoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SX0lGKFJFTEVBU0VfTE9HX0lTX0FMTE9XRUQs
IE5ldHdvcmssICIlcCAtIFdlYkxvYWRlclN0cmF0ZWd5OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FS
R1NfXykKKyNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfQkFTSUMoZm10LCAu
Li4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFdlYkxvYWRlclN0cmF0ZWd5OjoiIGZtdCwg
dGhpcywgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9M
T0dfRVJST1JfQkFTSUMoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAt
IFdlYkxvYWRlclN0cmF0ZWd5OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKIAogI2RlZmlu
ZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAiJXAgLSBb
cmVzb3VyY2VMb2FkZXI9JXAsIGZyYW1lTG9hZGVyPSVwLCBmcmFtZT0lcCwgd2ViUGFnZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBX
ZWJMb2FkZXJTdHJhdGVneTo6IgogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xP
R19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMsICZyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2Fk
ZXIuZnJhbWVMb2FkZXIoKSwgcmVzb3VyY2VMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0
ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2
NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRAogI2RlZmluZSBXRUJMT0FERVJTVFJB
VEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgdGhp
cywgbnVsbHB0ciwgJmZyYW1lTG9hZGVyLCAmZnJhbWVMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQ
YXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50
b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRAogCi0jZGVmaW5lIFdFQkxP
QURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0lGX0FMTE9XRUQoZm10LCAuLi4pIFJFTEVBU0VfTE9H
X0lGKFJFTEVBU0VfTE9HX0lTX0FMTE9XRUQsIE5ldHdvcmssIFdFQkxPQURFUlNUUkFURUdZX1JF
TEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFT
RV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKLSNkZWZpbmUgV0VCTE9B
REVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfRVJST1JfSUZfQUxMT1dFRChmbXQsIC4uLikgUkVMRUFT
RV9MT0dfRVJST1JfSUYoUkVMRUFTRV9MT0dfSVNfQUxMT1dFRCwgTmV0d29yaywgV0VCTE9BREVS
U1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJMT0FERVJTVFJB
VEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQorI2Rl
ZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0co
TmV0d29yaywgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUg
Zm10LCBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAj
I19fVkFfQVJHU19fKQorI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19FUlJP
UihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgV0VCTE9BREVSU1RSQVRFR1lf
UkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVHWV9SRUxF
QVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQogCi0jZGVmaW5lIFdF
QkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRChm
bXQsIC4uLikgUkVMRUFTRV9MT0dfSUYoUkVMRUFTRV9MT0dfSVNfQUxMT1dFRCwgTmV0d29yaywg
V0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJM
T0FERVJTVFJBVEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFN
RVRFUlMsICMjX19WQV9BUkdTX18pCi0jZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJB
TUVMT0FERVJfUkVMRUFTRV9MT0dfRVJST1JfSUZfQUxMT1dFRChmbXQsIC4uLikgUkVMRUFTRV9M
T0dfRVJST1JfSUYoUkVMRUFTRV9MT0dfSVNfQUxMT1dFRCwgTmV0d29yaywgV0VCTE9BREVSU1RS
QVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVH
WV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMsICMjX19W
QV9BUkdTX18pCisjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJfUkVM
RUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssIFdFQkxPQURFUlNUUkFURUdZ
X1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCTE9BREVSU1RSQVRFR1lfV0lU
SF9GUkFNRUxPQURFUl9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJH
U19fKQorI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVBU0Vf
TE9HX0VSUk9SKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19FUlJPUihOZXR3b3JrLCBXRUJMT0FERVJT
VFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSBmbXQsIFdFQkxPQURFUlNUUkFU
RUdZX1dJVEhfRlJBTUVMT0FERVJfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNf
X1ZBX0FSR1NfXykKIAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29y
ZTsKQEAgLTExOSw3ICsxMTUsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3Vy
Y2UoRnJhbWUmIGZyYW1lLCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIFJlcwogICAgICAgICBp
ZiAobG9hZGVyKQogICAgICAgICAgICAgc2NoZWR1bGVMb2FkKCpsb2FkZXIsIHJlc291cmNlLmdl
dCgpLCByZWZlcnJlclBvbGljeSA9PSBSZWZlcnJlclBvbGljeTo6Tm9SZWZlcnJlcldoZW5Eb3du
Z3JhZGUpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBSRUxFQVNFX0xPR19JRihSRUxFQVNF
X0xPR19JU19BTExPV0VELCBOZXR3b3JrLCAiJXAgLSBbd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBm
cmFtZUlEPSUiIFBSSXU2NCAiXSBXZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlOiBVbmFi
bGUgdG8gY3JlYXRlIFN1YnJlc291cmNlTG9hZGVyIiwgdGhpcywgZnJhbWUtPnBhZ2VJRCgpLnZh
bHVlX29yKFBhZ2VJZGVudGlmaWVyKCkpLnRvVUludDY0KCksIGZyYW1lLT5mcmFtZUlEKCkudmFs
dWVfb3IoRnJhbWVJZGVudGlmaWVyKCkpLnRvVUludDY0KCkpOworICAgICAgICAgICAgUkVMRUFT
RV9MT0coTmV0d29yaywgIiVwIC0gW3dlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIl0gV2ViTG9hZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZTogVW5hYmxlIHRvIGNyZWF0
ZSBTdWJyZXNvdXJjZUxvYWRlciIsIHRoaXMsIGZyYW1lLT5wYWdlSUQoKS52YWx1ZV9vcihQYWdl
SWRlbnRpZmllcigpKS50b1VJbnQ2NCgpLCBmcmFtZS0+ZnJhbWVJRCgpLnZhbHVlX29yKEZyYW1l
SWRlbnRpZmllcigpKS50b1VJbnQ2NCgpKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RG
TW92ZShsb2FkZXIpKTsKICAgICB9KTsKIH0KQEAgLTE5NSw3ICsxOTEsNyBAQCB2b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVy
LCBDYWNoZWRSZXNvdQogICAgIC8vIHRoZW4gd2Ugc2hvdWxkIHJlbWVtYmVyIHRoZSBSZXNvdXJj
ZUxvYWRlciBpbiBvdXIgcmVjb3JkcyBidXQgbm90IHNjaGVkdWxlIGl0IGluIHRoZSBOZXR3b3Jr
UHJvY2Vzcy4KICAgICBpZiAocmVzb3VyY2VMb2FkZXIuZG9jdW1lbnRMb2FkZXIoKS0+c2NoZWR1
bGVBcmNoaXZlTG9hZChyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpKSkg
ewogICAgICAgICBMT0coTmV0d29ya1NjaGVkdWxpbmcsICIoV2ViUHJvY2VzcykgV2ViTG9hZGVy
U3RyYXRlZ3k6OnNjaGVkdWxlTG9hZCwgdXJsICclcycgd2lsbCBiZSBoYW5kbGVkIGFzIGFuIGFy
Y2hpdmUgcmVzb3VyY2UuIiwgcmVzb3VyY2VMb2FkZXIudXJsKCkuc3RyaW5nKCkudXRmOCgpLmRh
dGEoKSk7Ci0gICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0lGX0FMTE9XRUQo
InNjaGVkdWxlTG9hZDogVVJMIHdpbGwgYmUgaGFuZGxlZCBhcyBhbiBhcmNoaXZlIHJlc291cmNl
Iik7CisgICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HKCJzY2hlZHVsZUxvYWQ6
IFVSTCB3aWxsIGJlIGhhbmRsZWQgYXMgYW4gYXJjaGl2ZSByZXNvdXJjZSIpOwogICAgICAgICBt
X3dlYlJlc291cmNlTG9hZGVycy5zZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNy
ZWF0ZShyZXNvdXJjZUxvYWRlciwgdHJhY2tpbmdQYXJhbWV0ZXJzKSk7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CkBAIC0yMDMsMTQgKzE5OSwxNCBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpz
Y2hlZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVyLCBDYWNoZWRSZXNvdQog
CiAgICAgaWYgKHJlc291cmNlTG9hZGVyLmRvY3VtZW50TG9hZGVyKCktPmFwcGxpY2F0aW9uQ2Fj
aGVIb3N0KCkubWF5YmVMb2FkUmVzb3VyY2UocmVzb3VyY2VMb2FkZXIsIHJlc291cmNlTG9hZGVy
LnJlcXVlc3QoKSwgcmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLnVybCgpKSkgewogICAgICAgICBM
T0coTmV0d29ya1NjaGVkdWxpbmcsICIoV2ViUHJvY2VzcykgV2ViTG9hZGVyU3RyYXRlZ3k6OnNj
aGVkdWxlTG9hZCwgdXJsICclcycgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNo
ZS4iLCByZXNvdXJjZUxvYWRlci51cmwoKS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKLSAgICAg
ICAgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgic2NoZWR1bGVMb2Fk
OiBVUkwgd2lsbCBiZSBsb2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNoZSIpOworICAgICAgICBX
RUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPRygic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBs
b2FkZWQgZnJvbSBhcHBsaWNhdGlvbiBjYWNoZSIpOwogICAgICAgICBtX3dlYlJlc291cmNlTG9h
ZGVycy5zZXQoaWRlbnRpZmllciwgV2ViUmVzb3VyY2VMb2FkZXI6OmNyZWF0ZShyZXNvdXJjZUxv
YWRlciwgdHJhY2tpbmdQYXJhbWV0ZXJzKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAg
ICBpZiAocmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLnVybCgpLnByb3RvY29sSXNEYXRhKCkpIHsK
ICAgICAgICAgTE9HKE5ldHdvcmtTY2hlZHVsaW5nLCAiKFdlYlByb2Nlc3MpIFdlYkxvYWRlclN0
cmF0ZWd5OjpzY2hlZHVsZUxvYWQsIHVybCAnJXMnIHdpbGwgYmUgbG9hZGVkIGFzIGRhdGEuIiwg
cmVzb3VyY2VMb2FkZXIudXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7Ci0gICAgICAgIFdF
QkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0lGX0FMTE9XRUQoInNjaGVkdWxlTG9hZDogVVJM
IHdpbGwgYmUgbG9hZGVkIGFzIGRhdGEiKTsKKyAgICAgICAgV0VCTE9BREVSU1RSQVRFR1lfUkVM
RUFTRV9MT0coInNjaGVkdWxlTG9hZDogVVJMIHdpbGwgYmUgbG9hZGVkIGFzIGRhdGEiKTsKICAg
ICAgICAgc3RhcnRMb2NhbExvYWQocmVzb3VyY2VMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQpAQCAtMjE4LDcgKzIxNCw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxl
TG9hZChSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2VMb2FkZXIsIENhY2hlZFJlc291CiAjaWYgVVNF
KFFVSUNLX0xPT0spCiAgICAgaWYgKGlzUXVpY2tMb29rUHJldmlld1VSTChyZXNvdXJjZUxvYWRl
ci5yZXF1ZXN0KCkudXJsKCkpKSB7CiAgICAgICAgIExPRyhOZXR3b3JrU2NoZWR1bGluZywgIihX
ZWJQcm9jZXNzKSBXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkLCB1cmwgJyVzJyB3aWxs
IGJlIGhhbmRsZWQgYXMgYSBRdWlja0xvb2sgcmVzb3VyY2UuIiwgcmVzb3VyY2VMb2FkZXIudXJs
KCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7Ci0gICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1JF
TEVBU0VfTE9HX0lGX0FMTE9XRUQoInNjaGVkdWxlTG9hZDogVVJMIHdpbGwgYmUgaGFuZGxlZCBh
cyBhIFF1aWNrTG9vayByZXNvdXJjZSIpOworICAgICAgICBXRUJMT0FERVJTVFJBVEVHWV9SRUxF
QVNFX0xPRygic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBoYW5kbGVkIGFzIGEgUXVpY2tMb29r
IHJlc291cmNlIik7CiAgICAgICAgIHN0YXJ0TG9jYWxMb2FkKHJlc291cmNlTG9hZGVyKTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTIyOSwxNCArMjI1LDE0IEBAIHZvaWQgV2ViTG9hZGVy
U3RyYXRlZ3k6OnNjaGVkdWxlTG9hZChSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2VMb2FkZXIsIENh
Y2hlZFJlc291CiAgICAgLy8gaHR0cHM6Ly9ibG9ncy5nbm9tZS5vcmcvYWxleGwvMjAxMi8wMS8y
Ni9yZXNvdXJjZXMtaW4tZ2xpYi8KICAgICBpZiAocmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLnVy
bCgpLnByb3RvY29sSXMoInJlc291cmNlIikpIHsKICAgICAgICAgTE9HKE5ldHdvcmtTY2hlZHVs
aW5nLCAiKFdlYlByb2Nlc3MpIFdlYkxvYWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQsIHVybCAn
JXMnIHdpbGwgYmUgaGFuZGxlZCBhcyBhIEdSZXNvdXJjZS4iLCByZXNvdXJjZUxvYWRlci51cmwo
KS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKLSAgICAgICAgV0VCTE9BREVSU1RSQVRFR1lfUkVM
RUFTRV9MT0dfSUZfQUxMT1dFRCgic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBoYW5kbGVkIGFz
IGEgR1Jlc291cmNlIik7CisgICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HKCJz
Y2hlZHVsZUxvYWQ6IFVSTCB3aWxsIGJlIGhhbmRsZWQgYXMgYSBHUmVzb3VyY2UiKTsKICAgICAg
ICAgc3RhcnRMb2NhbExvYWQocmVzb3VyY2VMb2FkZXIpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogI2VuZGlmCiAKICAgICBpZiAoIXRyeUxvYWRpbmdVc2luZ1VSTFNjaGVtZUhhbmRsZXIocmVz
b3VyY2VMb2FkZXIsIHRyYWNraW5nUGFyYW1ldGVycykpIHsKLSAgICAgICAgV0VCTE9BREVSU1RS
QVRFR1lfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgic2NoZWR1bGVMb2FkOiBVUkwgd2lsbCBiZSBz
Y2hlZHVsZWQgd2l0aCB0aGUgTmV0d29ya1Byb2Nlc3MiKTsKKyAgICAgICAgV0VCTE9BREVSU1RS
QVRFR1lfUkVMRUFTRV9MT0coInNjaGVkdWxlTG9hZDogVVJMIHdpbGwgYmUgc2NoZWR1bGVkIHdp
dGggdGhlIE5ldHdvcmtQcm9jZXNzIik7CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAg
ICAgICAgIGlmICghcmVzb3VyY2VMb2FkZXIub3B0aW9ucygpLnNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25JZGVudGlmaWVyICYmIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6c2hvdWxk
SW50ZXJjZXB0UmVxdWVzdChyZXNvdXJjZUxvYWRlci5mcmFtZSgpLCByZXNvdXJjZUxvYWRlci5y
ZXF1ZXN0KCkpKSB7CkBAIC0yNjcsNyArMjYzLDcgQEAgYm9vbCBXZWJMb2FkZXJTdHJhdGVneTo6
dHJ5TG9hZGluZ1VzaW5nVVJMU2NoZW1lSGFuZGxlcihSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2UK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgTE9HKE5ldHdvcmtTY2hlZHVsaW5nLCAiKFdl
YlByb2Nlc3MpIFdlYkxvYWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWQsIFVSTCAnJXMnIHdpbGwg
YmUgaGFuZGxlZCBieSBhIFVJUHJvY2VzcyBVUkwgc2NoZW1lIGhhbmRsZXIuIiwgcmVzb3VyY2VM
b2FkZXIudXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7Ci0gICAgV0VCTE9BREVSU1RSQVRF
R1lfUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgidHJ5TG9hZGluZ1VzaW5nVVJMU2NoZW1lSGFuZGxl
cjogVVJMIHdpbGwgYmUgaGFuZGxlZCBieSBhIFVJUHJvY2VzcyBVUkwgc2NoZW1lIGhhbmRsZXIi
KTsKKyAgICBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPRygidHJ5TG9hZGluZ1VzaW5nVVJM
U2NoZW1lSGFuZGxlcjogVVJMIHdpbGwgYmUgaGFuZGxlZCBieSBhIFVJUHJvY2VzcyBVUkwgc2No
ZW1lIGhhbmRsZXIiKTsKIAogICAgIGhhbmRsZXItPnN0YXJ0TmV3VGFzayhyZXNvdXJjZUxvYWRl
ciwgd2ViRnJhbWUpOwogICAgIHJldHVybiB0cnVlOwpAQCAtMzg1LDcgKzM4MSw3IEBAIHZvaWQg
V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZEZyb21OZXR3b3JrUHJvY2VzcyhSZXNvdXJj
ZUxvYWRlciYgcmVzb3VyY2VMCiAgICAgaWYgKGxvYWRQYXJhbWV0ZXJzLm9wdGlvbnMubW9kZSAh
PSBGZXRjaE9wdGlvbnM6Ok1vZGU6Ok5hdmlnYXRlKSB7CiAgICAgICAgIEFTU0VSVChsb2FkUGFy
YW1ldGVycy5zb3VyY2VPcmlnaW4pOwogICAgICAgICBpZiAoIWxvYWRQYXJhbWV0ZXJzLnNvdXJj
ZU9yaWdpbikgewotICAgICAgICAgICAgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfRVJS
T1JfSUZfQUxMT1dFRCgic2NoZWR1bGVMb2FkOiBubyBzb3VyY2VPcmlnaW4gKHByaW9yaXR5PSVk
KSIsIHN0YXRpY19jYXN0PGludD4ocmVzb3VyY2VMb2FkZXIucmVxdWVzdCgpLnByaW9yaXR5KCkp
KTsKKyAgICAgICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0VSUk9SKCJzY2hl
ZHVsZUxvYWQ6IG5vIHNvdXJjZU9yaWdpbiAocHJpb3JpdHk9JWQpIiwgc3RhdGljX2Nhc3Q8aW50
PihyZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCkucHJpb3JpdHkoKSkpOwogICAgICAgICAgICAgc2No
ZWR1bGVJbnRlcm5hbGx5RmFpbGVkTG9hZChyZXNvdXJjZUxvYWRlcik7CiAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgIH0KQEAgLTQwOCw5ICs0MDQsOSBAQCB2b2lkIFdlYkxvYWRlclN0cmF0
ZWd5OjpzY2hlZHVsZUxvYWRGcm9tTmV0d29ya1Byb2Nlc3MoUmVzb3VyY2VMb2FkZXImIHJlc291
cmNlTAogCiAgICAgQVNTRVJUKChsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQgJiYgbG9hZFBhcmFt
ZXRlcnMud2ViRnJhbWVJRCkgfHwgbG9hZFBhcmFtZXRlcnMuY2xpZW50Q3JlZGVudGlhbFBvbGlj
eSA9PSBDbGllbnRDcmVkZW50aWFsUG9saWN5OjpDYW5ub3RBc2tDbGllbnRGb3JDcmVkZW50aWFs
cyk7CiAKLSAgICBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19JRl9BTExPV0VEKCJzY2hl
ZHVsZUxvYWQ6IFJlc291cmNlIGlzIGJlaW5nIHNjaGVkdWxlZCB3aXRoIHRoZSBOZXR3b3JrUHJv
Y2VzcyAocHJpb3JpdHk9JWQpIiwgc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJjZUxvYWRlci5yZXF1
ZXN0KCkucHJpb3JpdHkoKSkpOworICAgIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HKCJz
Y2hlZHVsZUxvYWQ6IFJlc291cmNlIGlzIGJlaW5nIHNjaGVkdWxlZCB3aXRoIHRoZSBOZXR3b3Jr
UHJvY2VzcyAocHJpb3JpdHk9JWQpIiwgc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJjZUxvYWRlci5y
ZXF1ZXN0KCkucHJpb3JpdHkoKSkpOwogICAgIGlmICghV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
ZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2Fn
ZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpTY2hlZHVsZVJlc291cmNlTG9hZChs
b2FkUGFyYW1ldGVycyksIDApKSB7Ci0gICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0Vf
TE9HX0VSUk9SX0lGX0FMTE9XRUQoInNjaGVkdWxlTG9hZDogVW5hYmxlIHRvIHNjaGVkdWxlIHJl
c291cmNlIHdpdGggdGhlIE5ldHdvcmtQcm9jZXNzIChwcmlvcml0eT0lZCkiLCBzdGF0aWNfY2Fz
dDxpbnQ+KHJlc291cmNlTG9hZGVyLnJlcXVlc3QoKS5wcmlvcml0eSgpKSk7CisgICAgICAgIFdF
QkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0VSUk9SKCJzY2hlZHVsZUxvYWQ6IFVuYWJsZSB0
byBzY2hlZHVsZSByZXNvdXJjZSB3aXRoIHRoZSBOZXR3b3JrUHJvY2VzcyAocHJpb3JpdHk9JWQp
Iiwgc3RhdGljX2Nhc3Q8aW50PihyZXNvdXJjZUxvYWRlci5yZXF1ZXN0KCkucHJpb3JpdHkoKSkp
OwogICAgICAgICAvLyBXZSBwcm9iYWJseSBmYWlsZWQgdG8gc2NoZWR1bGUgdGhpcyBsb2FkIHdp
dGggdGhlIE5ldHdvcmtQcm9jZXNzIGJlY2F1c2UgaXQgaGFkIGNyYXNoZWQuCiAgICAgICAgIC8v
IFRoaXMgbG9hZCB3aWxsIG5ldmVyIHN1Y2NlZWQgc28gd2Ugd2lsbCBzY2hlZHVsZSBpdCB0byBm
YWlsIGFzeW5jaHJvbm91c2x5LgogICAgICAgICBzY2hlZHVsZUludGVybmFsbHlGYWlsZWRMb2Fk
KHJlc291cmNlTG9hZGVyKTsKQEAgLTUxMiw3ICs1MDgsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0
ZWd5OjpyZXN1bWVQZW5kaW5nUmVxdWVzdHMoKQogCiB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpu
ZXR3b3JrUHJvY2Vzc0NyYXNoZWQoKQogewotICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9X
RUQoIm5ldHdvcmtQcm9jZXNzQ3Jhc2hlZDogZmFpbGluZyBhbGwgcGVuZGluZyByZXNvdXJjZSBs
b2FkZXJzIik7CisgICAgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfRVJST1JfQkFTSUMo
Im5ldHdvcmtQcm9jZXNzQ3Jhc2hlZDogZmFpbGluZyBhbGwgcGVuZGluZyByZXNvdXJjZSBsb2Fk
ZXJzIik7CiAKICAgICBmb3IgKGF1dG8mIGxvYWRlciA6IG1fd2ViUmVzb3VyY2VMb2FkZXJzLnZh
bHVlcygpKSB7CiAgICAgICAgIHNjaGVkdWxlSW50ZXJuYWxseUZhaWxlZExvYWQoKmxvYWRlci0+
cmVzb3VyY2VMb2FkZXIoKSk7CkBAIC01NDgsNyArNTQ0LDcgQEAgV2ViTG9hZGVyU3RyYXRlZ3k6
OlN5bmNMb2FkUmVzdWx0IFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkRGF0YVVSTFN5bmNocm9ub3Vz
bHkoY28KICAgICBTeW5jTG9hZFJlc3VsdCByZXN1bHQ7CiAgICAgYXV0byBkZWNvZGVSZXN1bHQg
PSBEYXRhVVJMRGVjb2Rlcjo6ZGVjb2RlKHJlcXVlc3QudXJsKCksIG1vZGUpOwogICAgIGlmICgh
ZGVjb2RlUmVzdWx0KSB7Ci0gICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoImxvYWREYXRh
VVJMU3luY2hyb25vdXNseTogZGVjb2Rpbmcgb2YgZGF0YSBmYWlsZWQiKTsKKyAgICAgICAgV0VC
TE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfQkFTSUMoImxvYWREYXRhVVJMU3luY2hyb25vdXNs
eTogZGVjb2Rpbmcgb2YgZGF0YSBmYWlsZWQiKTsKICAgICAgICAgcmVzdWx0LmVycm9yID0gaW50
ZXJuYWxFcnJvcihyZXF1ZXN0LnVybCgpKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9
CkBAIC01OTcsMTMgKzU5MywxMyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3Vy
Y2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgdW5zaQogCiAgICAgYXV0
byogZG9jdW1lbnQgPSBmcmFtZUxvYWRlci5mcmFtZSgpLmRvY3VtZW50KCk7CiAgICAgaWYgKCFk
b2N1bWVudCkgewotICAgICAgICBXRUJMT0FERVJTVFJBVEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JF
TEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQoImxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHk6IG5v
IGRvY3VtZW50Iik7CisgICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJf
UkVMRUFTRV9MT0dfRVJST1IoImxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHk6IG5vIGRvY3VtZW50
Iik7CiAgICAgICAgIGVycm9yID0gaW50ZXJuYWxFcnJvcihyZXF1ZXN0LnVybCgpKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAogICAgIGlmIChyZXF1ZXN0LnVybCgpLnByb3RvY29sSXNEYXRh
KCkpIHsKLSAgICAgICAgV0VCTE9BREVSU1RSQVRFR1lfV0lUSF9GUkFNRUxPQURFUl9SRUxFQVNF
X0xPR19FUlJPUl9JRl9BTExPV0VEKCJsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5OiBVUkwgd2ls
bCBiZSBsb2FkZWQgYXMgZGF0YSIpOworICAgICAgICBXRUJMT0FERVJTVFJBVEVHWV9XSVRIX0ZS
QU1FTE9BREVSX1JFTEVBU0VfTE9HX0VSUk9SKCJsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5OiBV
Ukwgd2lsbCBiZSBsb2FkZWQgYXMgZGF0YSIpOwogICAgICAgICBhdXRvIHN5bmNMb2FkUmVzdWx0
ID0gbG9hZERhdGFVUkxTeW5jaHJvbm91c2x5KHJlcXVlc3QpOwogICAgICAgICBlcnJvciA9IFdU
Rk1vdmUoc3luY0xvYWRSZXN1bHQuZXJyb3IpOwogICAgICAgICByZXNwb25zZSA9IFdURk1vdmUo
c3luY0xvYWRSZXN1bHQucmVzcG9uc2UpOwpAQCAtNjEyLDcgKzYwOCw3IEBAIHZvaWQgV2ViTG9h
ZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1l
TG9hZGVyLCB1bnNpCiAgICAgfQogCiAgICAgaWYgKGF1dG8gc3luY0xvYWRSZXN1bHQgPSB0cnlM
b2FkaW5nU3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihmcmFtZUxvYWRlciwgcmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgcmVxdWVzdCkpIHsKLSAgICAgICAgV0VCTE9BREVSU1RSQVRF
R1lfV0lUSF9GUkFNRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUl9JRl9BTExPV0VEKCJsb2FkUmVz
b3VyY2VTeW5jaHJvbm91c2x5OiBmYWlsZWQgY2FsbGluZyB0cnlMb2FkaW5nU3luY2hyb25vdXNs
eVVzaW5nVVJMU2NoZW1lSGFuZGxlciAoZXJyb3I9JWQpIiwgc3luY0xvYWRSZXN1bHQtPmVycm9y
LmVycm9yQ29kZSgpKTsKKyAgICAgICAgV0VCTE9BREVSU1RSQVRFR1lfV0lUSF9GUkFNRUxPQURF
Ul9SRUxFQVNFX0xPR19FUlJPUigibG9hZFJlc291cmNlU3luY2hyb25vdXNseTogZmFpbGVkIGNh
bGxpbmcgdHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIgKGVycm9y
PSVkKSIsIHN5bmNMb2FkUmVzdWx0LT5lcnJvci5lcnJvckNvZGUoKSk7CiAgICAgICAgIGVycm9y
ID0gV1RGTW92ZShzeW5jTG9hZFJlc3VsdC0+ZXJyb3IpOwogICAgICAgICByZXNwb25zZSA9IFdU
Rk1vdmUoc3luY0xvYWRSZXN1bHQtPnJlc3BvbnNlKTsKICAgICAgICAgZGF0YSA9IFdURk1vdmUo
c3luY0xvYWRSZXN1bHQtPmRhdGEpOwpAQCAtNjU2LDcgKzY1Miw3IEBAIHZvaWQgV2ViTG9hZGVy
U3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9h
ZGVyLCB1bnNpCiAgICAgSVBDOjpVbmJvdW5kZWRTeW5jaHJvbm91c0lQQ1Njb3BlIHVuYm91bmRl
ZFN5bmNocm9ub3VzSVBDU2NvcGU7CiAKICAgICBpZiAoIVdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhN
ZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OlBlcmZvcm1TeW5jaHJvbm91
c0xvYWQobG9hZFBhcmFtZXRlcnMpLCBNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OlBlcmZvcm1TeW5jaHJvbm91c0xvYWQ6OlJlcGx5KGVycm9yLCByZXNwb25zZSwgZGF0
YSksIDApKSB7Ci0gICAgICAgIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJfUkVM
RUFTRV9MT0dfRVJST1JfSUZfQUxMT1dFRCgibG9hZFJlc291cmNlU3luY2hyb25vdXNseTogZmFp
bGVkIHNlbmRpbmcgc3luY2hyb25vdXMgbmV0d29yayBwcm9jZXNzIG1lc3NhZ2UiKTsKKyAgICAg
ICAgV0VCTE9BREVSU1RSQVRFR1lfV0lUSF9GUkFNRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUigi
bG9hZFJlc291cmNlU3luY2hyb25vdXNseTogZmFpbGVkIHNlbmRpbmcgc3luY2hyb25vdXMgbmV0
d29yayBwcm9jZXNzIG1lc3NhZ2UiKTsKICAgICAgICAgaWYgKHBhZ2UpCiAgICAgICAgICAgICBw
YWdlLT5kaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgpLmxvZ0RpYWdub3N0aWNNZXNzYWdlKFdlYkNv
cmU6OkRpYWdub3N0aWNMb2dnaW5nS2V5czo6aW50ZXJuYWxFcnJvcktleSgpLCBXZWJDb3JlOjpE
aWFnbm9zdGljTG9nZ2luZ0tleXM6OnN5bmNocm9ub3VzTWVzc2FnZUZhaWxlZEtleSgpLCBXZWJD
b3JlOjpTaG91bGRTYW1wbGU6Ok5vKTsKICAgICAgICAgcmVzcG9uc2UgPSBSZXNvdXJjZVJlc3Bv
bnNlKCk7CkBAIC05MTYsNiArOTEyLDUgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJpb3Jp
dGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlN1YnJlc291cmMKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CiAKLSN1bmRlZiBSRUxFQVNFX0xPR19JRl9BTExPV0VECi0jdW5k
ZWYgUkVMRUFTRV9MT0dfRVJST1JfSUZfQUxMT1dFRAotI3VuZGVmIFJFTEVBU0VfTE9HX0lTX0FM
TE9XRUQKKyN1bmRlZiBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19CQVNJQworI3VuZGVm
IFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0VSUk9SX0JBU0lDCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvV2ViUlRDTW9uaXRvci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvV2ViUlRDTW9uaXRvci5j
cHAKaW5kZXggMDNjNjVmMDY3OWE0Mjg3YWEwY2YzMGEzMjg0YmJhMjQ5NDIwM2UyZS4uMGY5ZGFk
MmQxZDI5ZDBiMzA3OWQzODcxYjdlMTQ1NDE1MjkwNDkzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL1dlYlJUQ01vbml0b3IuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9XZWJSVENNb25pdG9yLmNwcApA
QCAtMzksNyArMzksNyBAQAogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotI2RlZmluZSBSRUxFQVNF
X0xPR19JRl9BTExPV0VEKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19JRihXZWJQcm9jZXNzOjpzaW5n
bGV0b24oKS5zZXNzaW9uSUQoKS5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSwgTmV0d29yaywg
IiVwIC0gV2ViUlRDTW9uaXRvcjo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCisjZGVmaW5l
IFdFQlJUQ19SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0g
V2ViUlRDTW9uaXRvcjo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCiAKIHZvaWQgV2ViUlRD
TW9uaXRvcjo6c2VuZE9uTWFpblRocmVhZChGdW5jdGlvbjx2b2lkKElQQzo6Q29ubmVjdGlvbiYp
PiYmIGNhbGxiYWNrKQogewpAQCAtNTUsNyArNTUsNyBAQCB2b2lkIFdlYlJUQ01vbml0b3I6OnNl
dEVudW1lcmF0aW5nQWxsTmV0d29ya0ludGVyZmFjZXNFbmFibGVkKGJvb2wgZW5hYmxlZCkKIAog
dm9pZCBXZWJSVENNb25pdG9yOjpTdGFydFVwZGF0aW5nKCkKIHsKLSAgICBSRUxFQVNFX0xPR19J
Rl9BTExPV0VEKCJTdGFydFVwZGF0aW5nIik7CisgICAgV0VCUlRDX1JFTEVBU0VfTE9HKCJTdGFy
dFVwZGF0aW5nIik7CiAgICAgaWYgKG1fcmVjZWl2ZWROZXR3b3JrTGlzdCkgewogICAgICAgICBX
ZWJDb3JlOjpMaWJXZWJSVENQcm92aWRlcjo6Y2FsbE9uV2ViUlRDTmV0d29ya1RocmVhZChbdGhp
c10gewogICAgICAgICAgICAgU2lnbmFsTmV0d29ya3NDaGFuZ2VkKCk7CkBAIC02Myw3ICs2Myw3
IEBAIHZvaWQgV2ViUlRDTW9uaXRvcjo6U3RhcnRVcGRhdGluZygpCiAgICAgfQogCiAgICAgc2Vu
ZE9uTWFpblRocmVhZChbdGhpc10oYXV0byYgY29ubmVjdGlvbikgewotICAgICAgICBSRUxFQVNF
X0xPR19JRl9BTExPV0VEKCJTdGFydFVwZGF0aW5nIC0gQXNraW5nIG5ldHdvcmsgcHJvY2VzcyB0
byBzdGFydCB1cGRhdGluZyIpOworICAgICAgICBXRUJSVENfUkVMRUFTRV9MT0coIlN0YXJ0VXBk
YXRpbmcgLSBBc2tpbmcgbmV0d29yayBwcm9jZXNzIHRvIHN0YXJ0IHVwZGF0aW5nIik7CiAgICAg
ICAgIGNvbm5lY3Rpb24uc2VuZChNZXNzYWdlczo6TmV0d29ya1JUQ01vbml0b3I6OlN0YXJ0VXBk
YXRpbmdJZk5lZWRlZChtX2VuYWJsZUVudW1lcmF0aW5nQWxsTmV0d29ya0ludGVyZmFjZXMpLCAw
KTsKICAgICB9KTsKICAgICArK21fY2xpZW50Q291bnQ7CkBAIC03MSwyMyArNzEsMjMgQEAgdm9p
ZCBXZWJSVENNb25pdG9yOjpTdGFydFVwZGF0aW5nKCkKIAogdm9pZCBXZWJSVENNb25pdG9yOjpT
dG9wVXBkYXRpbmcoKQogewotICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoIlN0b3BVcGRhdGlu
ZyIpOworICAgIFdFQlJUQ19SRUxFQVNFX0xPRygiU3RvcFVwZGF0aW5nIik7CiAgICAgQVNTRVJU
KG1fY2xpZW50Q291bnQpOwogICAgIGlmICgtLW1fY2xpZW50Q291bnQpCiAgICAgICAgIHJldHVy
bjsKIAogICAgIHNlbmRPbk1haW5UaHJlYWQoW3RoaXNdKGF1dG8mIGNvbm5lY3Rpb24pIHsKLSAg
ICAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgiU3RvcFVwZGF0aW5nIC0gQXNraW5nIG5ldHdv
cmsgcHJvY2VzcyB0byBzdG9wIHVwZGF0aW5nIik7CisgICAgICAgIFdFQlJUQ19SRUxFQVNFX0xP
RygiU3RvcFVwZGF0aW5nIC0gQXNraW5nIG5ldHdvcmsgcHJvY2VzcyB0byBzdG9wIHVwZGF0aW5n
Iik7CiAgICAgICAgIGNvbm5lY3Rpb24uc2VuZChNZXNzYWdlczo6TmV0d29ya1JUQ01vbml0b3I6
OlN0b3BVcGRhdGluZygpLCAwKTsKICAgICB9KTsKIH0KIAogdm9pZCBXZWJSVENNb25pdG9yOjpu
ZXR3b3Jrc0NoYW5nZWQoY29uc3QgVmVjdG9yPFJUQ05ldHdvcms+JiBuZXR3b3JrcywgY29uc3Qg
UlRDTmV0d29yazo6SVBBZGRyZXNzJiBpcHY0LCBjb25zdCBSVENOZXR3b3JrOjpJUEFkZHJlc3Mm
IGlwdjYpCiB7Ci0gICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgibmV0d29ya3NDaGFuZ2VkIik7
CisgICAgV0VCUlRDX1JFTEVBU0VfTE9HKCJuZXR3b3Jrc0NoYW5nZWQiKTsKICAgICAvLyBObyBu
ZWVkIHRvIHByb3RlY3QgJ3RoaXMnIGFzIGl0IGhhcyB0aGUgbGlmZXRpbWUgb2YgTGliV2ViUlRD
IHdoaWNoIGhhcyB0aGUgbGlmZXRpbWUgb2YgdGhlIHdlYiBwcm9jZXNzLgogICAgIFdlYkNvcmU6
OkxpYldlYlJUQ1Byb3ZpZGVyOjpjYWxsT25XZWJSVENOZXR3b3JrVGhyZWFkKFt0aGlzLCBuZXR3
b3JrcywgaXB2NCwgaXB2Nl0gewotICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJuZXR3
b3Jrc0NoYW5nZWQgLSBTaWduYWxpbmciKTsKKyAgICAgICAgV0VCUlRDX1JFTEVBU0VfTE9HKCJu
ZXR3b3Jrc0NoYW5nZWQgLSBTaWduYWxpbmciKTsKICAgICAgICAgc3RkOjp2ZWN0b3I8cnRjOjpO
ZXR3b3JrKj4gbmV0d29ya0xpc3QobmV0d29ya3Muc2l6ZSgpKTsKICAgICAgICAgZm9yIChzaXpl
X3QgaW5kZXggPSAwOyBpbmRleCA8IG5ldHdvcmtzLnNpemUoKTsgKytpbmRleCkKICAgICAgICAg
ICAgIG5ldHdvcmtMaXN0W2luZGV4XSA9IG5ldyBydGM6Ok5ldHdvcmsobmV0d29ya3NbaW5kZXhd
LnZhbHVlKCkpOwpAQCAtMTE4LDQgKzExOCw2IEBAIHZvaWQgV2ViUlRDTW9uaXRvcjo6bmV0d29y
a1Byb2Nlc3NDcmFzaGVkKCkKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKKyN1bmRlZiBXRUJS
VENfUkVMRUFTRV9MT0cKKwogI2VuZGlmIC8vIFVTRShMSUJXRUJSVEMpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3Bw
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5
LmNwcAppbmRleCBkZGMwNzFiM2EyNmFmODI4ZWM3YzQ2M2Q1MWM3MTM4MGU1N2U5MDVkLi45OGMw
MWRjNmMyNGFiODdhOTM1MDk2NjY5NjdiYjkzOWY5N2Q2YzAwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5j
cHAKQEAgLTM5LDE2ICszOSw5IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlci5o
PgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogCi0jZGVmaW5lIFJFTEVBU0Vf
TE9HX0lTX0FMTE9XRUQgKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnNlc3Npb25JRCgpLmlzQWx3
YXlzT25Mb2dnaW5nQWxsb3dlZCgpKQotCi0jdW5kZWYgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRAot
I2RlZmluZSBSRUxFQVNFX0xPR19JRl9BTExPV0VEKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19JRihS
RUxFQVNFX0xPR19JU19BTExPV0VELCBMb2FkaW5nLCAiJXAgLSBXZWJVUkxTY2hlbWVUYXNrUHJv
eHk6OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQotCiAjZGVmaW5lIFdFQlVSTFNDSEVNRVRB
U0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAiW3NjaGVtZUhhbmRsZXI9JSIg
UFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgdGFz
a0lEPSVsdV0gV2ViVVJMU2NoZW1lVGFza1Byb3h5OjoiCiAjZGVmaW5lIFdFQlVSTFNDSEVNRVRB
U0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIG1fdXJsU2NoZW1lSGFuZGxl
ci5pZGVudGlmaWVyKCksIHBhZ2VJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgZnJhbWVJREZyb21X
ZWJGcmFtZShtX2ZyYW1lKSwgbV9pZGVudGlmaWVyCi0KLSNkZWZpbmUgV0VCVVJMU0NIRU1FVEFT
S1BST1hZX1JFTEVBU0VfTE9HX0lGX0FMTE9XRUQoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0lGKFJF
TEVBU0VfTE9HX0lTX0FMTE9XRUQsIE5ldHdvcmssIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxF
QVNFX0xPR19TVEFOREFSRF9URU1QTEFURSBmbXQsIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxF
QVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQotCisjZGVmaW5lIFdF
QlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19JRl9BTExPV0VEKGZtdCwgLi4uKSBSRUxF
QVNFX0xPRyhOZXR3b3JrLCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRB
UkRfVEVNUExBVEUgZm10LCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRB
UkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKIAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTIwNSw4ICsxOTgsNiBAQCB2b2lkIFdlYlVSTFNjaGVt
ZVRhc2tQcm94eTo6cHJvY2Vzc05leHRQZW5kaW5nVGFzaygpCiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdAogCi0jdW5kZWYgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRAotI3VuZGVmIFJFTEVBU0VfTE9H
X0lTX0FMTE9XRUQKICN1bmRlZiBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RB
TkRBUkRfVEVNUExBVEUKICN1bmRlZiBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0df
U1RBTkRBUkRfUEFSQU1FVEVSUwogI3VuZGVmIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNF
X0xPR19JRl9BTExPV0VECg==
</data>

          </attachment>
      

    </bug>

</bugzilla>