<?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>161704</bug_id>
          
          <creation_ts>2016-09-07 12:21:56 -0700</creation_ts>
          <short_desc>[Cocoa] Update availability attributes per the macOS Sierra and iOS 10 GM seeds</short_desc>
          <delta_ts>2016-09-07 12:25:57 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1227287</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2016-09-07 12:21:56 -0700</bug_when>
    <thetext>It’s no longer TBA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1227290</commentid>
    <comment_count>1</comment_count>
      <attachid>288168</attachid>
    <who name="">mitz</who>
    <bug_when>2016-09-07 12:23:59 -0700</bug_when>
    <thetext>Created attachment 288168
Update attributes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1227291</commentid>
    <comment_count>2</comment_count>
    <who name="">mitz</who>
    <bug_when>2016-09-07 12:25:57 -0700</bug_when>
    <thetext>Committed &lt;https://trac.webkit.org/r205559&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>288168</attachid>
            <date>2016-09-07 12:23:59 -0700</date>
            <delta_ts>2016-09-07 12:24:56 -0700</delta_ts>
            <desc>Update attributes</desc>
            <filename>bug-161704-20160907122135.patch</filename>
            <type>text/plain</type>
            <size>73595</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwNTU1OCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ4IEBACisyMDE2LTA5LTA3ICBEYW4gQmVy
bnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBVcGRhdGUgYXZhaWxh
YmlsaXR5IGF0dHJpYnV0ZXMgcGVyIHRoZSBtYWNPUyBTaWVycmEgYW5kIGlPUyAxMCBHTSBzZWVk
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYxNzA0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQVBJL0NvY29hL19XS0hpdFRlc3RSZXN1bHQuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0NvY29hL1dLRXJyb3JQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S0ZyYW1lSW5mb1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLTWVu
dUl0ZW1JZGVudGlmaWVyc1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29h
L1dLTmF2aWdhdGlvbkRlbGVnYXRlUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tPcGVuUGFuZWxQYXJhbWV0ZXJzLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29j
b2EvV0tQcmV2aWV3QWN0aW9uSXRlbS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tQcmV2aWV3QWN0aW9uSXRlbUlkZW50aWZpZXJzLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1ByZXZpZXdFbGVtZW50SW5mby5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tQcm9jZXNzUG9vbFByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLVUlEZWxlZ2F0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVSURl
bGVnYXRlUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVc2VyQ29u
dGVudENvbnRyb2xsZXJQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1VzZXJTY3JpcHRQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXcuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3Vy
YXRpb24uaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3Vy
YXRpb25Qcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQ
cml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhUmVj
b3JkUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0
YVN0b3JlUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLQWN0aXZh
dGVkRWxlbWVudEluZm8uaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dG9t
YXRpb25TZXNzaW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tDb250ZXh0
TWVudUVsZW1lbnRJbmZvLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tFbGVt
ZW50QWN0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tFeHBlcmltZW50
YWxGZWF0dXJlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tGb3JtSW5wdXRT
ZXNzaW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnB1dERlbGVnYXRl
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb24uaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1VzZXJDb250ZW50RXh0
ZW5zaW9uU3RvcmUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1VzZXJDb250
ZW50V29ybGQuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1VzZXJJbml0aWF0
ZWRBY3Rpb24uaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1VzZXJTdHlsZVNo
ZWV0Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlRGF0YVNpemUu
aDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlBy
b2Nlc3NQbHVnSW5Gb3JtRGVsZWdhdGVQcml2YXRlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVn
SW5TY3JpcHRXb3JsZC5oOgorCiAyMDE2LTA5LTA3ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRh
bnphcm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbRUZMXSBTd2l0Y2ggdG8gRU5BQkxFX05FVFdP
UktfQ0FDSEUKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvQ29jb2EvX1dLSGl0VGVz
dFJlc3VsdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvQ29jb2Ev
X1dLSGl0VGVzdFJlc3VsdC5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQVBJL0NvY29hL19XS0hpdFRlc3RSZXN1bHQuaAkod29ya2luZyBjb3B5KQpAQCAtMjks
NyArMjksNyBAQAogCiAjaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KIAotV0tfQ0xB
U1NfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSkKK1dLX0NMQVNTX0FWQUlMQUJMRShtYWNv
c3goMTAuMTIpKQogQGludGVyZmFjZSBfV0tIaXRUZXN0UmVzdWx0IDogTlNPYmplY3QgPE5TQ29w
eWluZz4KIAogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU1VSTCAqYWJz
b2x1dGVJbWFnZVVSTDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tFcnJvclByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLRXJyb3JQcml2YXRlLmgJKHJldmlzaW9uIDIwNTU1NykKKysrIFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tFcnJvclByaXZhdGUuaAkod29ya2luZyBjb3B5
KQpAQCAtMzYsMTggKzM2LDE4IEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIF9XS0xlZ2Fj
eUVycm8KIAogLyohIEBjb25zdGFudCBfV0tKYXZhU2NyaXB0RXhjZXB0aW9uTWVzc2FnZUVycm9y
S2V5IEtleSBpbiB1c2VySW5mbyByZXByZXNlbnRpbmcKICB0aGUgZXhjZXB0aW9uIG1lc3NhZ2Ug
KGFzIGFuIE5TU3RyaW5nKSBmb3IgV0tFcnJvckphdmFTY3JpcHRFeGNlcHRpb25PY2N1cnJlZCBl
cnJvcnMuICovCi1XS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBfV0tKYXZhU2NyaXB0RXhjZXB0
aW9uTWVzc2FnZUVycm9yS2V5IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBp
b3MoV0tfSU9TX1RCQSkpOworV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgX1dLSmF2YVNjcmlw
dEV4Y2VwdGlvbk1lc3NhZ2VFcnJvcktleSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiks
IGlvcygxMC4wKSk7CiAKIC8qISBAY29uc3RhbnQgX1dLSmF2YVNjcmlwdEV4Y2VwdGlvbkxpbmVO
dW1iZXJFcnJvcktleSBLZXkgaW4gdXNlckluZm8gcmVwcmVzZW50aW5nCiAgdGhlIGV4Y2VwdGlv
biBsaW5lIG51bWJlciAoYXMgYW4gTlNOdW1iZXIpIGZvciBXS0Vycm9ySmF2YVNjcmlwdEV4Y2Vw
dGlvbk9jY3VycmVkIGVycm9ycy4gKi8KLVdLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IF9XS0ph
dmFTY3JpcHRFeGNlcHRpb25MaW5lTnVtYmVyRXJyb3JLZXkgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitXS19FWFRFUk4gTlNTdHJpbmcgKiBj
b25zdCBfV0tKYXZhU2NyaXB0RXhjZXB0aW9uTGluZU51bWJlckVycm9yS2V5IFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIAogLyohIEBjb25zdGFudCBfV0tKYXZh
U2NyaXB0RXhjZXB0aW9uQ29sdW1uTnVtYmVyRXJyb3JLZXkgS2V5IGluIHVzZXJJbmZvIHJlcHJl
c2VudGluZwogIHRoZSBleGNlcHRpb24gY29sdW1uIG51bWJlciAoYXMgYW4gTlNOdW1iZXIpIGZv
ciBXS0Vycm9ySmF2YVNjcmlwdEV4Y2VwdGlvbk9jY3VycmVkIGVycm9ycy4gKi8KLVdLX0VYVEVS
TiBOU1N0cmluZyAqIGNvbnN0IF9XS0phdmFTY3JpcHRFeGNlcHRpb25Db2x1bW5OdW1iZXJFcnJv
cktleSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEp
KTsKK1dLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IF9XS0phdmFTY3JpcHRFeGNlcHRpb25Db2x1
bW5OdW1iZXJFcnJvcktleSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4w
KSk7CiAKIC8qISBAY29uc3RhbnQgX1dLSmF2YVNjcmlwdEV4Y2VwdGlvblNvdXJjZVVSTEVycm9y
S2V5IEtleSBpbiB1c2VySW5mbyByZXByZXNlbnRpbmcKICB0aGUgZXhjZXB0aW9uIHNvdXJjZSBV
UkwgKGFzIGFuIE5TVVJMKSBmb3IgV0tFcnJvckphdmFTY3JpcHRFeGNlcHRpb25PY2N1cnJlZCBl
cnJvcnMuICovCi1XS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBfV0tKYXZhU2NyaXB0RXhjZXB0
aW9uU291cmNlVVJMRXJyb3JLZXkgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSks
IGlvcyhXS19JT1NfVEJBKSk7CitXS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBfV0tKYXZhU2Ny
aXB0RXhjZXB0aW9uU291cmNlVVJMRXJyb3JLZXkgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAu
MTIpLCBpb3MoMTAuMCkpOwogCiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tGcmFtZUluZm9Qcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0ZyYW1lSW5mb1ByaXZhdGUuaAkocmV2aXNpb24g
MjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0ZyYW1lSW5m
b1ByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtMzEsNyArMzEsNyBAQAogCiBAaW50ZXJmYWNl
IFdLRnJhbWVJbmZvIChXS1ByaXZhdGUpCiAKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25s
eSwgc3Ryb25nKSBfV0tGcmFtZUhhbmRsZSAqX2hhbmRsZSBXS19BUElfQVZBSUxBQkxFKG1hY29z
eChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBy
ZWFkb25seSwgc3Ryb25nKSBfV0tGcmFtZUhhbmRsZSAqX2hhbmRsZSBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKIEBlbmQKIApJbmRleDogU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS01lbnVJdGVtSWRlbnRpZmllcnNQcml2YXRlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS01lbnVJdGVt
SWRlbnRpZmllcnNQcml2YXRlLmgJKHJldmlzaW9uIDIwNTU1NykKKysrIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tNZW51SXRlbUlkZW50aWZpZXJzUHJpdmF0ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMCwyNiArMzAsMjYgQEAKICNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRh
dGlvbi5oPgogI2ltcG9ydCA8V2ViS2l0L1dLRGVjbGFyYXRpb25TcGVjaWZpZXJzLmg+CiAKLVdL
X0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJDb3B5
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwot
V0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckNv
cHlJbWFnZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19U
QkEpKTsKLVdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50
aWZpZXJDb3B5TGluayBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdL
X0lPU19UQkEpKTsKLVdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRl
bUlkZW50aWZpZXJEb3dubG9hZEltYWdlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19U
QkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0
IF9XS01lbnVJdGVtSWRlbnRpZmllckRvd25sb2FkTGlua2VkRmlsZSBXS19BUElfQVZBSUxBQkxF
KG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLVdLX0VYUE9SVCBleHRlcm4g
TlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJHb0JhY2sgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1XS19FWFBPUlQgZXh0
ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyR29Gb3J3YXJkIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotV0tfRVhQ
T1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckluc3BlY3RF
bGVtZW50IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RC
QSkpOwotV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRp
Zmllckxvb2tVcCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKLVdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlk
ZW50aWZpZXJPcGVuRnJhbWVJbk5ld1dpbmRvdyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLVdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBj
b25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJPcGVuSW1hZ2VJbk5ld1dpbmRvdyBXS19BUElfQVZB
SUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLVdLX0VYUE9SVCBl
eHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJPcGVuTGluayBXS19B
UElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLVdLX0VY
UE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJPcGVuTGlu
a0luTmV3V2luZG93IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOwotV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVt
SWRlbnRpZmllclBhc3RlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOwotV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJ
dGVtSWRlbnRpZmllclJlbG9hZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwg
aW9zKFdLX0lPU19UQkEpKTsKLVdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tN
ZW51SXRlbUlkZW50aWZpZXJTZWFyY2hXZWIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFD
X1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1XS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICogY29u
c3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyU2hvd0hpZGVNZWRpYUNvbnRyb2xzIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotV0tfRVhQT1JUIGV4
dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllclRvZ2dsZUZ1bGxTY3Jl
ZW4gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7
CitXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVy
Q29weSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBP
UlQgZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyQ29weUltYWdl
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK1dLX0VYUE9SVCBl
eHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJDb3B5TGluayBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0ZXJu
IE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyRG93bmxvYWRJbWFnZSBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0ZXJu
IE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyRG93bmxvYWRMaW5rZWRGaWxl
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK1dLX0VYUE9SVCBl
eHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJHb0JhY2sgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworV0tfRVhQT1JUIGV4dGVybiBO
U1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckdvRm9yd2FyZCBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5TU3Ry
aW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVySW5zcGVjdEVsZW1lbnQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworV0tfRVhQT1JUIGV4dGVybiBOU1N0
cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckxvb2tVcCBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICog
Y29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyT3BlbkZyYW1lSW5OZXdXaW5kb3cgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworV0tfRVhQT1JUIGV4dGVybiBOU1N0
cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllck9wZW5JbWFnZUluTmV3V2luZG93IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK1dLX0VYUE9SVCBleHRl
cm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJPcGVuTGluayBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5T
U3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyT3BlbkxpbmtJbk5ld1dpbmRvdyBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0
ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyUGFzdGUgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworV0tfRVhQT1JUIGV4dGVybiBOU1N0
cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllclJlbG9hZCBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICog
Y29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyU2VhcmNoV2ViIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK1dLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25z
dCBfV0tNZW51SXRlbUlkZW50aWZpZXJTaG93SGlkZU1lZGlhQ29udHJvbHMgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworV0tfRVhQT1JUIGV4dGVybiBOU1N0cmlu
ZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllclRvZ2dsZUZ1bGxTY3JlZW4gV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCi1XS19FWFBPUlQgZXh0ZXJuIE5T
U3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyU2hhcmVNZW51IFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotV0tfRVhQT1JUIGV4
dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllclNwZWVjaE1lbnUgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitXS19F
WFBPUlQgZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyU2hhcmVN
ZW51IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK1dLX0VYUE9S
VCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJTcGVlY2hNZW51
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIAogI2VuZGlmCklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkRlbGVn
YXRlUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tOYXZpZ2F0aW9uRGVsZWdhdGVQcml2YXRlLmgJKHJldmlzaW9uIDIwNTU1NykKKysr
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uRGVsZWdhdGVQ
cml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTYyLDcgKzYyLDcgQEAgc3RhdGljIGNvbnN0IFdL
TmF2aWdhdGlvblJlc3BvbnNlUG9saWN5IAogLy8gT25seSBjYWxsZWQgaWYgaG93IHRoZSBnZXN0
dXJlIHdpbGwgZW5kICh3aXRoIG9yIHdpdGhvdXQgbmF2aWdhdGlvbikgaXMga25vd24gYmVmb3Jl
IGl0IGVuZHMuCiAtICh2b2lkKV93ZWJWaWV3V2lsbEVuZE5hdmlnYXRpb25HZXN0dXJlOihXS1dl
YlZpZXcgKil3ZWJWaWV3IHdpdGhOYXZpZ2F0aW9uVG9CYWNrRm9yd2FyZExpc3RJdGVtOihXS0Jh
Y2tGb3J3YXJkTGlzdEl0ZW0gKilpdGVtOwogLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICop
d2ViVmlldyB3aWxsU25hcHNob3RCYWNrRm9yd2FyZExpc3RJdGVtOihXS0JhY2tGb3J3YXJkTGlz
dEl0ZW0gKilpdGVtOwotLSAodm9pZClfd2ViVmlld0RpZFJlbW92ZU5hdmlnYXRpb25HZXN0dXJl
U25hcHNob3Q6KFdLV2ViVmlldyAqKXdlYlZpZXcgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tf
TUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistICh2b2lkKV93ZWJWaWV3RGlkUmVtb3ZlTmF2
aWdhdGlvbkdlc3R1cmVTbmFwc2hvdDooV0tXZWJWaWV3ICopd2ViVmlldyBXS19BUElfQVZBSUxB
QkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKICNpZiBUQVJHRVRfT1NfSVBIT05FCiAt
ICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRpZFN0YXJ0TG9hZEZvclF1aWNr
TG9va0RvY3VtZW50SW5NYWluRnJhbWVXaXRoRmlsZU5hbWU6KE5TU3RyaW5nICopZmlsZU5hbWUg
dXRpOihOU1N0cmluZyAqKXV0aTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tPcGVuUGFuZWxQYXJhbWV0ZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS09wZW5QYW5lbFBhcmFtZXRlcnMuaAkocmV2aXNpb24g
MjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS09wZW5QYW5l
bFBhcmFtZXRlcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsNyArMzMsNyBAQCBOU19BU1NVTUVf
Tk9OTlVMTF9CRUdJTgogCiAvKiEgV0tPcGVuUGFuZWxQYXJhbWV0ZXJzIGNvbnRhaW5zIHBhcmFt
ZXRlcnMgdGhhdCBhIGZpbGUgdXBsb2FkIGNvbnRyb2wgaGFzIHNwZWNpZmllZC4KICAqLwotV0tf
Q0xBU1NfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSkKK1dLX0NMQVNTX0FWQUlMQUJMRSht
YWNvc3goMTAuMTIpKQogQGludGVyZmFjZSBXS09wZW5QYW5lbFBhcmFtZXRlcnMgOiBOU09iamVj
dAogCiAvKiEgQGFic3RyYWN0IFdoZXRoZXIgdGhlIGZpbGUgdXBsb2FkIGNvbnRyb2wgc3VwcG9y
dHMgbXVsdGlwbGUgZmlsZXMuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCShyZXZpc2lvbiAyMDU1
NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLUHJlZmVyZW5jZXNQ
cml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDIxICs1NywyMSBAQCB0eXBlZGVmIE5TX09Q
VElPTlMoTlNVSW50ZWdlciwgX1dLSmF2YVNjCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRDb21wb3NpdGluZ0JvcmRlcnNWaXNpYmxlOikgQk9PTCBfY29tcG9zaXRpbmdCb3JkZXJz
VmlzaWJsZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldENvbXBvc2l0aW5nUmVw
YWludENvdW50ZXJzVmlzaWJsZTopIEJPT0wgX2NvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlz
aWJsZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFRpbGVkU2Nyb2xsaW5nSW5k
aWNhdG9yVmlzaWJsZTopIEJPT0wgX3RpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZTsKLUBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFJlc291cmNlVXNhZ2VPdmVybGF5VmlzaWJs
ZTopIEJPT0wgX3Jlc291cmNlVXNhZ2VPdmVybGF5VmlzaWJsZSBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWlj
LCBzZXR0ZXI9X3NldFJlc291cmNlVXNhZ2VPdmVybGF5VmlzaWJsZTopIEJPT0wgX3Jlc291cmNl
VXNhZ2VPdmVybGF5VmlzaWJsZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygx
MC4wKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRWaXNpYmxlRGVidWdPdmVy
bGF5UmVnaW9uczopIF9XS0RlYnVnT3ZlcmxheVJlZ2lvbnMgX3Zpc2libGVEZWJ1Z092ZXJsYXlS
ZWdpb25zIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjExKSwgaW9zKDkuMCkpOwogQHByb3Bl
cnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0U2ltcGxlTGluZUxheW91dERlYnVnQm9yZGVyc0Vu
YWJsZWQ6KSBCT09MIF9zaW1wbGVMaW5lTGF5b3V0RGVidWdCb3JkZXJzRW5hYmxlZCBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWlj
LCBzZXR0ZXI9X3NldEFjY2VsZXJhdGVkRHJhd2luZ0VuYWJsZWQ6KSBCT09MIF9hY2NlbGVyYXRl
ZERyYXdpbmdFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0RGlzcGxheUxp
c3REcmF3aW5nRW5hYmxlZDopIEJPT0wgX2Rpc3BsYXlMaXN0RHJhd2luZ0VuYWJsZWQgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVy
dHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRBY2NlbGVyYXRlZERyYXdpbmdFbmFibGVkOikgQk9P
TCBfYWNjZWxlcmF0ZWREcmF3aW5nRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4x
MiksIGlvcygxMC4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXREaXNwbGF5
TGlzdERyYXdpbmdFbmFibGVkOikgQk9PTCBfZGlzcGxheUxpc3REcmF3aW5nRW5hYmxlZCBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiBAcHJvcGVydHkgKG5vbmF0
b21pYywgc2V0dGVyPV9zZXRWaXN1YWxWaWV3cG9ydEVuYWJsZWQ6KSBCT09MIF92aXN1YWxWaWV3
cG9ydEVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19J
T1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRUZXh0QXV0b3Npemlu
Z0VuYWJsZWQ6KSBCT09MIF90ZXh0QXV0b3NpemluZ0VuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21p
Yywgc2V0dGVyPV9zZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQ6KSBCT09MIF90ZXh0QXV0b3Npemlu
Z0VuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiBA
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXREZXZlbG9wZXJFeHRyYXNFbmFibGVkOikg
Qk9PTCBfZGV2ZWxvcGVyRXh0cmFzRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4x
MSksIGlvcyg5LjApKTsKIAogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0TG9nc1Bh
Z2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQ6KSBCT09MIF9sb2dzUGFnZU1lc3NhZ2Vz
VG9TeXN0ZW1Db25zb2xlRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlv
cyg5LjApKTsKIAotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0SGlkZGVuUGFnZURP
TVRpbWVyVGhyb3R0bGluZ0VuYWJsZWQ6KSBCT09MIF9oaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRs
aW5nRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEhpZGRlblBhZ2VET01U
aW1lclRocm90dGxpbmdBdXRvSW5jcmVhc2VzOikgQk9PTCBfaGlkZGVuUGFnZURPTVRpbWVyVGhy
b3R0bGluZ0F1dG9JbmNyZWFzZXMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSks
IGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRQYWdl
VmlzaWJpbGl0eUJhc2VkUHJvY2Vzc1N1cHByZXNzaW9uRW5hYmxlZDopIEJPT0wgX3BhZ2VWaXNp
YmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMs
IHNldHRlcj1fc2V0SGlkZGVuUGFnZURPTVRpbWVyVGhyb3R0bGluZ0VuYWJsZWQ6KSBCT09MIF9o
aWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29z
eCgxMC4xMiksIGlvcygxMC4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRI
aWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nQXV0b0luY3JlYXNlczopIEJPT0wgX2hpZGRlblBh
Z2VET01UaW1lclRocm90dGxpbmdBdXRvSW5jcmVhc2VzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjEyKSwgaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFBh
Z2VWaXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVkOikgQk9PTCBfcGFnZVZp
c2liaWxpdHlCYXNlZFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRBbGxvd0ZpbGVBY2Nlc3NGcm9tRmlsZVVSTHM6KSBCT09MIF9hbGxvd0ZpbGVBY2Nlc3NG
cm9tRmlsZVVSTHMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTEpLCBpb3MoOS4wKSk7CiBA
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRKYXZhU2NyaXB0UnVudGltZUZsYWdzOikg
X1dLSmF2YVNjcmlwdFJ1bnRpbWVGbGFncyBfamF2YVNjcmlwdFJ1bnRpbWVGbGFncyBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKTsKQEAgLTgwLDIwICs4MCwyMCBAQCB0
eXBlZGVmIE5TX09QVElPTlMoTlNVSW50ZWdlciwgX1dLSmF2YVNjCiAKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldERpYWdub3N0aWNMb2dnaW5nRW5hYmxlZDopIEJPT0wgX2RpYWdu
b3N0aWNMb2dnaW5nRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5
LjApKTsKIAotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0RGVmYXVsdEZvbnRTaXpl
OikgTlNVSW50ZWdlciBfZGVmYXVsdEZvbnRTaXplIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRl
cj1fc2V0RGVmYXVsdEZpeGVkUGl0Y2hGb250U2l6ZTopIE5TVUludGVnZXIgX2RlZmF1bHRGaXhl
ZFBpdGNoRm9udFNpemUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhX
S19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgY29weSwgc2V0dGVyPV9zZXRGaXhl
ZFBpdGNoRm9udEZhbWlseTopIE5TU3RyaW5nICpfZml4ZWRQaXRjaEZvbnRGYW1pbHkgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVy
dHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXREZWZhdWx0Rm9udFNpemU6KSBOU1VJbnRlZ2VyIF9k
ZWZhdWx0Rm9udFNpemUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkp
OworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0RGVmYXVsdEZpeGVkUGl0Y2hGb250
U2l6ZTopIE5TVUludGVnZXIgX2RlZmF1bHRGaXhlZFBpdGNoRm9udFNpemUgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworQHByb3BlcnR5IChub25hdG9taWMsIGNv
cHksIHNldHRlcj1fc2V0Rml4ZWRQaXRjaEZvbnRGYW1pbHk6KSBOU1N0cmluZyAqX2ZpeGVkUGl0
Y2hGb250RmFtaWx5IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsK
IAogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGNvbmZpZ3VyZWQgb24gdGhlIFdLV2Vic2l0ZURh
dGFTdG9yZS4KIC8vIEZJWE1FOiBUaGlzIHByb3BlcnR5IHNob3VsZCBub3QgaGF2ZSB0aGUgdmVy
YiAiaXMiIGluIGl0LgogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0T2ZmbGluZUFw
cGxpY2F0aW9uQ2FjaGVJc0VuYWJsZWQ6KSBCT09MIF9vZmZsaW5lQXBwbGljYXRpb25DYWNoZUlz
RW5hYmxlZDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEZ1bGxTY3JlZW5FbmFi
bGVkOikgQk9PTCBfZnVsbFNjcmVlbkVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAu
MTEpLCBpb3MoOS4wKSk7CiAKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFwcGxl
UGF5Q2FwYWJpbGl0eURpc2Nsb3N1cmVBbGxvd2VkOikgQk9PTCBfYXBwbGVQYXlDYXBhYmlsaXR5
RGlzY2xvc3VyZUFsbG93ZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlv
cyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRBcHBsZVBh
eUNhcGFiaWxpdHlEaXNjbG9zdXJlQWxsb3dlZDopIEJPT0wgX2FwcGxlUGF5Q2FwYWJpbGl0eURp
c2Nsb3N1cmVBbGxvd2VkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjAp
KTsKIAotKyAoTlNBcnJheTxfV0tFeHBlcmltZW50YWxGZWF0dXJlICo+ICopX2V4cGVyaW1lbnRh
bEZlYXR1cmVzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9T
X1RCQSkpOwotLSAoQk9PTClfaXNFbmFibGVkRm9yRmVhdHVyZTooX1dLRXhwZXJpbWVudGFsRmVh
dHVyZSAqKWZlYXR1cmUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhX
S19JT1NfVEJBKSk7Ci0tICh2b2lkKV9zZXRFbmFibGVkOihCT09MKXZhbHVlIGZvckZlYXR1cmU6
KF9XS0V4cGVyaW1lbnRhbEZlYXR1cmUgKilmZWF0dXJlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworKyAoTlNBcnJheTxfV0tFeHBlcmltZW50
YWxGZWF0dXJlICo+ICopX2V4cGVyaW1lbnRhbEZlYXR1cmVzIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKKy0gKEJPT0wpX2lzRW5hYmxlZEZvckZlYXR1cmU6KF9X
S0V4cGVyaW1lbnRhbEZlYXR1cmUgKilmZWF0dXJlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEw
LjEyKSwgaW9zKDEwLjApKTsKKy0gKHZvaWQpX3NldEVuYWJsZWQ6KEJPT0wpdmFsdWUgZm9yRmVh
dHVyZTooX1dLRXhwZXJpbWVudGFsRmVhdHVyZSAqKWZlYXR1cmUgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiBAZW5kCiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmV2aWV3QWN0aW9uSXRlbS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmV2aWV3QWN0aW9uSXRlbS5o
CShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L1dLUHJldmlld0FjdGlvbkl0ZW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQAog
CiAjaW1wb3J0IDxVSUtpdC9VSVZpZXdDb250cm9sbGVyLmg+CiAKLVdLX0FQSV9BVkFJTEFCTEUo
aW9zKFdLX0lPU19UQkEpKQorV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpCiBAcHJvdG9jb2wg
V0tQcmV2aWV3QWN0aW9uSXRlbSA8VUlQcmV2aWV3QWN0aW9uSXRlbT4KIAogQHByb3BlcnR5IChu
b25hdG9taWMsIGNvcHksIHJlYWRvbmx5KSBOU1N0cmluZyAqaWRlbnRpZmllcjsKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmV2aWV3QWN0aW9uSXRlbUlkZW50
aWZpZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1ByZXZpZXdBY3Rpb25JdGVtSWRlbnRpZmllcnMuaAkocmV2aXNpb24gMjA1NTU3KQorKysg
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZXZpZXdBY3Rpb25JdGVtSWRl
bnRpZmllcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMzAsOSArMzAsOSBAQAogCiAjaW1wb3J0IDxG
b3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KIAotV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgV0tQ
cmV2aWV3QWN0aW9uSXRlbUlkZW50aWZpZXJPcGVuIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lP
U19UQkEpKTsKLVdLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IFdLUHJldmlld0FjdGlvbkl0ZW1J
ZGVudGlmaWVyQWRkVG9SZWFkaW5nTGlzdCBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJB
KSk7Ci1XS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBXS1ByZXZpZXdBY3Rpb25JdGVtSWRlbnRp
ZmllckNvcHkgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwotV0tfRVhURVJOIE5T
U3RyaW5nICogY29uc3QgV0tQcmV2aWV3QWN0aW9uSXRlbUlkZW50aWZpZXJTaGFyZSBXS19BUElf
QVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CitXS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBX
S1ByZXZpZXdBY3Rpb25JdGVtSWRlbnRpZmllck9wZW4gV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAu
MCkpOworV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgV0tQcmV2aWV3QWN0aW9uSXRlbUlkZW50
aWZpZXJBZGRUb1JlYWRpbmdMaXN0IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjApKTsKK1dLX0VY
VEVSTiBOU1N0cmluZyAqIGNvbnN0IFdLUHJldmlld0FjdGlvbkl0ZW1JZGVudGlmaWVyQ29weSBX
S19BUElfQVZBSUxBQkxFKGlvcygxMC4wKSk7CitXS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBX
S1ByZXZpZXdBY3Rpb25JdGVtSWRlbnRpZmllclNoYXJlIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEw
LjApKTsKIAogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L1dLUHJldmlld0VsZW1lbnRJbmZvLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1ByZXZpZXdFbGVtZW50SW5mby5oCShyZXZpc2lvbiAyMDU1NTcp
CisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLUHJldmlld0VsZW1lbnRJ
bmZvLmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDcgKzI5LDcgQEAKIAogTlNfQVNTVU1FX05PTk5V
TExfQkVHSU4KIAotV0tfQ0xBU1NfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSkKK1dLX0NMQVNT
X0FWQUlMQUJMRShpb3MoMTAuMCkpCiBAaW50ZXJmYWNlIFdLUHJldmlld0VsZW1lbnRJbmZvIDog
TlNPYmplY3QgPE5TQ29weWluZz4KIAogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBu
dWxsYWJsZSkgTlNVUkwgKmxpbmtVUkw7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1Byb2Nlc3NQb29sUHJpdmF0ZS5oCShyZXZpc2lv
biAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLUHJvY2Vz
c1Bvb2xQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDE3ICs0OSwxNyBAQAogLSAoaWQp
X29iamVjdEZvckJ1bmRsZVBhcmFtZXRlcjooTlNTdHJpbmcgKilwYXJhbWV0ZXI7CiAtICh2b2lk
KV9zZXRPYmplY3Q6KGlkIDxOU0NvcHlpbmcsIE5TU2VjdXJlQ29kaW5nPilvYmplY3QgZm9yQnVu
ZGxlUGFyYW1ldGVyOihOU1N0cmluZyAqKXBhcmFtZXRlcjsKIC8vIEZJWE1FOiBUaGlzIHNob3Vs
ZCBiZSBOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQgPE5TQ29weWluZywgTlNTZWN1cmVDb2Rp
bmc+PgotLSAodm9pZClfc2V0T2JqZWN0c0ZvckJ1bmRsZVBhcmFtZXRlcnNXaXRoRGljdGlvbmFy
eTooTlNEaWN0aW9uYXJ5ICopZGljdGlvbmFyeSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX3NldE9iamVjdHNGb3JCdW5kbGVQ
YXJhbWV0ZXJzV2l0aERpY3Rpb25hcnk6KE5TRGljdGlvbmFyeSAqKWRpY3Rpb25hcnkgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiBAcHJvcGVydHkgKG5vbmF0
b21pYywgd2Vhaywgc2V0dGVyPV9zZXREb3dubG9hZERlbGVnYXRlOikgaWQgPF9XS0Rvd25sb2Fk
RGVsZWdhdGU+IF9kb3dubG9hZERlbGVnYXRlOwotQHByb3BlcnR5IChub25hdG9taWMsIHdlYWss
IHNldHRlcj1fc2V0QXV0b21hdGlvbkRlbGVnYXRlOikgaWQgPF9XS0F1dG9tYXRpb25EZWxlZ2F0
ZT4gX2F1dG9tYXRpb25EZWxlZ2F0ZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJB
KSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCB3ZWFrLCBzZXR0ZXI9
X3NldEF1dG9tYXRpb25EZWxlZ2F0ZTopIGlkIDxfV0tBdXRvbWF0aW9uRGVsZWdhdGU+IF9hdXRv
bWF0aW9uRGVsZWdhdGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkp
OwogCiArIChOU1VSTCAqKV93ZWJzaXRlRGF0YVVSTEZvckNvbnRhaW5lcldpdGhVUkw6KE5TVVJM
ICopY29udGFpbmVyVVJMOwogKyAoTlNVUkwgKilfd2Vic2l0ZURhdGFVUkxGb3JDb250YWluZXJX
aXRoVVJMOihOU1VSTCAqKWNvbnRhaW5lclVSTCBidW5kbGVJZGVudGlmaWVySWZOb3RJbkNvbnRh
aW5lcjooTlNTdHJpbmcgKilidW5kbGVJZGVudGlmaWVyOwogCi0tICh2b2lkKV93YXJtSW5pdGlh
bFByb2Nlc3MgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1Nf
VEJBKSk7Ci0tICh2b2lkKV9hdXRvbWF0aW9uQ2FwYWJpbGl0aWVzRGlkQ2hhbmdlIFdLX0FQSV9B
VkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotLSAodm9pZClf
c2V0QXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNzaW9uICopYXV0b21hdGlvblNl
c3Npb24gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJB
KSk7CistICh2b2lkKV93YXJtSW5pdGlhbFByb2Nlc3MgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
MTAuMTIpLCBpb3MoMTAuMCkpOworLSAodm9pZClfYXV0b21hdGlvbkNhcGFiaWxpdGllc0RpZENo
YW5nZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CistICh2b2lk
KV9zZXRBdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9u
U2Vzc2lvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKIC8v
IFRlc3Qgb25seS4gU2hvdWxkIGJlIGNhbGxlZCBvbmx5IHdoaWxlIG5vIHdlYiBjb250ZW50IHBy
b2Nlc3NlcyBhcmUgcnVubmluZy4KIC0gKHZvaWQpX3Rlcm1pbmF0ZURhdGFiYXNlUHJvY2VzczsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVSURlbGVnYXRlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VJRGVs
ZWdhdGUuaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1VJRGVsZWdhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtMTI5LDcgKzEyOSw3IEBA
IE5TX0FTU1VNRV9OT05OVUxMX0JFR0lOCiAgVGhpcyBtZXRob2Qgd2lsbCBvbmx5IGJlIGludm9r
ZWQgZm9yIGVsZW1lbnRzIHRoYXQgaGF2ZSBkZWZhdWx0IHByZXZpZXcgaW4gV2ViS2l0LCB3aGlj
aCBpcwogIGxpbWl0ZWQgdG8gbGlua3MuIEluIHRoZSBmdXR1cmUsIGl0IGNvdWxkIGJlIGludm9r
ZWQgZm9yIGFkZGl0aW9uYWwgZWxlbWVudHMuCiAgKi8KLS0gKEJPT0wpd2ViVmlldzooV0tXZWJW
aWV3ICopd2ViVmlldyBzaG91bGRQcmV2aWV3RWxlbWVudDooV0tQcmV2aWV3RWxlbWVudEluZm8g
KillbGVtZW50SW5mbyBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CistIChCT09M
KXdlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgc2hvdWxkUHJldmlld0VsZW1lbnQ6KFdLUHJl
dmlld0VsZW1lbnRJbmZvICopZWxlbWVudEluZm8gV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkp
OwogCiAvKiEgQGFic3RyYWN0IEFsbG93cyB5b3VyIGFwcCB0byBwcm92aWRlIGEgY3VzdG9tIHZp
ZXcgY29udHJvbGxlciB0byBzaG93IHdoZW4gdGhlIGdpdmVuIGVsZW1lbnQgaXMgcGVla2VkLgog
IEBwYXJhbSB3ZWJWaWV3IFRoZSB3ZWIgdmlldyBpbnZva2luZyB0aGUgZGVsZWdhdGUgbWV0aG9k
LgpAQCAtMTQ0LDEzICsxNDQsMTMgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KICBSZXR1cm5p
bmcgbmlsIHdpbGwgcmVzdWx0IGluIFdlYktpdCdzIGRlZmF1bHQgcHJldmlldyBiZWhhdmlvci4g
d2ViVmlldzpjb21taXRQcmV2aWV3aW5nVmlld0NvbnRyb2xsZXI6IHdpbGwgb25seSBiZSBpbnZv
a2VkCiAgaWYgYSBub24tbmlsIHZpZXcgY29udHJvbGxlciB3YXMgcmV0dXJuZWQuCiAgKi8KLS0g
KG51bGxhYmxlIFVJVmlld0NvbnRyb2xsZXIgKil3ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3
IHByZXZpZXdpbmdWaWV3Q29udHJvbGxlckZvckVsZW1lbnQ6KFdLUHJldmlld0VsZW1lbnRJbmZv
ICopZWxlbWVudEluZm8gZGVmYXVsdEFjdGlvbnM6KE5TQXJyYXk8aWQgPFdLUHJldmlld0FjdGlv
bkl0ZW0+PiAqKXByZXZpZXdBY3Rpb25zIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEp
KTsKKy0gKG51bGxhYmxlIFVJVmlld0NvbnRyb2xsZXIgKil3ZWJWaWV3OihXS1dlYlZpZXcgKil3
ZWJWaWV3IHByZXZpZXdpbmdWaWV3Q29udHJvbGxlckZvckVsZW1lbnQ6KFdLUHJldmlld0VsZW1l
bnRJbmZvICopZWxlbWVudEluZm8gZGVmYXVsdEFjdGlvbnM6KE5TQXJyYXk8aWQgPFdLUHJldmll
d0FjdGlvbkl0ZW0+PiAqKXByZXZpZXdBY3Rpb25zIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjAp
KTsKIAogLyohIEBhYnN0cmFjdCBBbGxvd3MgeW91ciBhcHAgdG8gcG9wIHRvIHRoZSB2aWV3IGNv
bnRyb2xsZXIgaXQgY3JlYXRlZC4KICBAcGFyYW0gd2ViVmlldyBUaGUgd2ViIHZpZXcgaW52b2tp
bmcgdGhlIGRlbGVnYXRlIG1ldGhvZC4KICBAcGFyYW0gcHJldmlld2luZ1ZpZXdDb250cm9sbGVy
IFRoZSB2aWV3IGNvbnRyb2xsZXIgdGhhdCBpcyBiZWluZyBwb3BwZWQuCiAgKi8KLS0gKHZvaWQp
d2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBjb21taXRQcmV2aWV3aW5nVmlld0NvbnRyb2xs
ZXI6KFVJVmlld0NvbnRyb2xsZXIgKilwcmV2aWV3aW5nVmlld0NvbnRyb2xsZXIgV0tfQVBJX0FW
QUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOworLSAodm9pZCl3ZWJWaWV3OihXS1dlYlZpZXcgKil3
ZWJWaWV3IGNvbW1pdFByZXZpZXdpbmdWaWV3Q29udHJvbGxlcjooVUlWaWV3Q29udHJvbGxlciAq
KXByZXZpZXdpbmdWaWV3Q29udHJvbGxlciBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4wKSk7CiAK
ICNlbmRpZiAvLyBUQVJHRVRfT1NfSVBIT05FCiAKQEAgLTE2NCw3ICsxNjQsNyBAQCBOU19BU1NV
TUVfTk9OTlVMTF9CRUdJTgogCiAgSWYgeW91IGRvIG5vdCBpbXBsZW1lbnQgdGhpcyBtZXRob2Qs
IHRoZSB3ZWIgdmlldyB3aWxsIGJlaGF2ZSBhcyBpZiB0aGUgdXNlciBzZWxlY3RlZCB0aGUgQ2Fu
Y2VsIGJ1dHRvbi4KICAqLwotLSAodm9pZCl3ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHJ1
bk9wZW5QYW5lbFdpdGhQYXJhbWV0ZXJzOihXS09wZW5QYW5lbFBhcmFtZXRlcnMgKilwYXJhbWV0
ZXJzIGluaXRpYXRlZEJ5RnJhbWU6KFdLRnJhbWVJbmZvICopZnJhbWUgY29tcGxldGlvbkhhbmRs
ZXI6KHZvaWQgKF4pKE5TQXJyYXk8TlNVUkwgKj4gKiBfTnVsbGFibGUgVVJMcykpY29tcGxldGlv
bkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworLSAodm9pZCl3
ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHJ1bk9wZW5QYW5lbFdpdGhQYXJhbWV0ZXJzOihX
S09wZW5QYW5lbFBhcmFtZXRlcnMgKilwYXJhbWV0ZXJzIGluaXRpYXRlZEJ5RnJhbWU6KFdLRnJh
bWVJbmZvICopZnJhbWUgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKE5TQXJyYXk8TlNVUkwg
Kj4gKiBfTnVsbGFibGUgVVJMcykpY29tcGxldGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTIpKTsKIAogI2VuZGlmCiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tVSURlbGVnYXRlUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVSURlbGVnYXRlUHJpdmF0ZS5oCShyZXZpc2lv
biAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVUlEZWxl
Z2F0ZVByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTYsMzEgKzU2LDMxIEBAIHN0cnVjdCBV
SUVkZ2VJbnNldHM7CiAtICh2b2lkKV93ZWJWaWV3RGlkRW50ZXJGdWxsc2NyZWVuOihXS1dlYlZp
ZXcgKil3ZWJWaWV3IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjExKSwgaW9zKDguMykpOwog
LSAodm9pZClfd2ViVmlld0RpZEV4aXRGdWxsc2NyZWVuOihXS1dlYlZpZXcgKil3ZWJWaWV3IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjExKSwgaW9zKDguMykpOwogCi0tICh2b2lkKV93ZWJW
aWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGltYWdlT3JNZWRpYURvY3VtZW50U2l6ZUNoYW5nZWQ6
KENHU2l6ZSlzaXplIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOwotLSAoTlNEaWN0aW9uYXJ5ICopX2RhdGFEZXRlY3Rpb25Db250ZXh0Rm9yV2Vi
VmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNf
VEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdl
YlZpZXcgaW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZDooQ0dTaXplKXNpemUgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworLSAoTlNEaWN0aW9uYXJ5ICop
X2RhdGFEZXRlY3Rpb25Db250ZXh0Rm9yV2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAjaWYgVEFSR0VUX09TX0lQ
SE9ORQotLSAoQk9PTClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBzaG91bGRJbmNsdWRl
QXBwTGlua0FjdGlvbnNGb3JFbGVtZW50OihfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbyAqKWVsZW1l
bnQgV0tfQVBJX0FWQUlMQUJMRShpb3MoOV8wKSk7CistIChCT09MKV93ZWJWaWV3OihXS1dlYlZp
ZXcgKil3ZWJWaWV3IHNob3VsZEluY2x1ZGVBcHBMaW5rQWN0aW9uc0ZvckVsZW1lbnQ6KF9XS0Fj
dGl2YXRlZEVsZW1lbnRJbmZvICopZWxlbWVudCBXS19BUElfQVZBSUxBQkxFKGlvcyg5LjApKTsK
IC0gKE5TQXJyYXkgKilfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBhY3Rpb25zRm9yRWxl
bWVudDooX1dLQWN0aXZhdGVkRWxlbWVudEluZm8gKillbGVtZW50IGRlZmF1bHRBY3Rpb25zOihO
U0FycmF5PF9XS0VsZW1lbnRBY3Rpb24gKj4gKilkZWZhdWx0QWN0aW9uczsKIC0gKHZvaWQpX3dl
YlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkTm90SGFuZGxlVGFwQXNDbGlja0F0UG9pbnQ6
KENHUG9pbnQpcG9pbnQ7CiAtIChCT09MKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHNo
b3VsZFJlcXVlc3RHZW9sb2NhdGlvbkF1dGhvcml6YXRpb25Gb3JVUkw6KE5TVVJMICopdXJsIGlz
TWFpbkZyYW1lOihCT09MKWlzTWFpbkZyYW1lIG1haW5GcmFtZVVSTDooTlNVUkwgKiltYWluRnJh
bWVVUkw7Ci0tIChVSVZpZXdDb250cm9sbGVyICopX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZp
ZXcgcHJldmlld1ZpZXdDb250cm9sbGVyRm9yVVJMOihOU1VSTCAqKXVybCBXS19BUElfQVZBSUxB
QkxFKGlvcyg5XzApKTsKLS0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgY29t
bWl0UHJldmlld2VkVmlld0NvbnRyb2xsZXI6KFVJVmlld0NvbnRyb2xsZXIgKilwcmV2aWV3ZWRW
aWV3Q29udHJvbGxlciBXS19BUElfQVZBSUxBQkxFKGlvcyg5XzApKTsKLS0gKHZvaWQpX3dlYlZp
ZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgd2lsbFByZXZpZXdJbWFnZVdpdGhVUkw6KE5TVVJMICop
aW1hZ2VVUkwgV0tfQVBJX0FWQUlMQUJMRShpb3MoOV8wKSk7Ci0tICh2b2lkKV93ZWJWaWV3OihX
S1dlYlZpZXcgKil3ZWJWaWV3IGNvbW1pdFByZXZpZXdlZEltYWdlV2l0aFVSTDooTlNVUkwgKilp
bWFnZVVSTCBXS19BUElfQVZBSUxBQkxFKGlvcyg5XzApKTsKLS0gKHZvaWQpX3dlYlZpZXc6KFdL
V2ViVmlldyAqKXdlYlZpZXcgZGlkRGlzbWlzc1ByZXZpZXdWaWV3Q29udHJvbGxlcjooVUlWaWV3
Q29udHJvbGxlciAqKXByZXZpZXdlZFZpZXdDb250cm9sbGVyIGNvbW1pdHRpbmc6KEJPT0wpY29t
bWl0dGluZyBXS19BUElfQVZBSUxBQkxFKGlvcyg5XzApKTsKLS0gKHZvaWQpX3dlYlZpZXc6KFdL
V2ViVmlldyAqKXdlYlZpZXcgZGlkRGlzbWlzc1ByZXZpZXdWaWV3Q29udHJvbGxlcjooVUlWaWV3
Q29udHJvbGxlciAqKXByZXZpZXdlZFZpZXdDb250cm9sbGVyIFdLX0FQSV9BVkFJTEFCTEUoaW9z
KDlfMCkpOwotLSAoQk9PTClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBzaG93Q3VzdG9t
U2hlZXRGb3JFbGVtZW50OihfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbyAqKWVsZW1lbnQgV0tfQVBJ
X0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwotLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3
ICopd2ViVmlldyBhbHRlcm5hdGVBY3Rpb25Gb3JVUkw6KE5TVVJMICopdXJsIFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKLS0gKE5TQXJyYXkgKilfYXR0YWNobWVudExpc3RGb3JX
ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19U
QkEpKTsKKy0gKFVJVmlld0NvbnRyb2xsZXIgKilfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmll
dyBwcmV2aWV3Vmlld0NvbnRyb2xsZXJGb3JVUkw6KE5TVVJMICopdXJsIFdLX0FQSV9BVkFJTEFC
TEUoaW9zKDkuMCkpOworLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBjb21t
aXRQcmV2aWV3ZWRWaWV3Q29udHJvbGxlcjooVUlWaWV3Q29udHJvbGxlciAqKXByZXZpZXdlZFZp
ZXdDb250cm9sbGVyIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDkuMCkpOworLSAodm9pZClfd2ViVmll
dzooV0tXZWJWaWV3ICopd2ViVmlldyB3aWxsUHJldmlld0ltYWdlV2l0aFVSTDooTlNVUkwgKilp
bWFnZVVSTCBXS19BUElfQVZBSUxBQkxFKGlvcyg5LjApKTsKKy0gKHZvaWQpX3dlYlZpZXc6KFdL
V2ViVmlldyAqKXdlYlZpZXcgY29tbWl0UHJldmlld2VkSW1hZ2VXaXRoVVJMOihOU1VSTCAqKWlt
YWdlVVJMIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDkuMCkpOworLSAodm9pZClfd2ViVmlldzooV0tX
ZWJWaWV3ICopd2ViVmlldyBkaWREaXNtaXNzUHJldmlld1ZpZXdDb250cm9sbGVyOihVSVZpZXdD
b250cm9sbGVyICopcHJldmlld2VkVmlld0NvbnRyb2xsZXIgY29tbWl0dGluZzooQk9PTCljb21t
aXR0aW5nIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDkuMCkpOworLSAodm9pZClfd2ViVmlldzooV0tX
ZWJWaWV3ICopd2ViVmlldyBkaWREaXNtaXNzUHJldmlld1ZpZXdDb250cm9sbGVyOihVSVZpZXdD
b250cm9sbGVyICopcHJldmlld2VkVmlld0NvbnRyb2xsZXIgV0tfQVBJX0FWQUlMQUJMRShpb3Mo
OS4wKSk7CistIChCT09MKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHNob3dDdXN0b21T
aGVldEZvckVsZW1lbnQ6KF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvICopZWxlbWVudCBXS19BUElf
QVZBSUxBQkxFKGlvcygxMC4wKSk7CistICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJW
aWV3IGFsdGVybmF0ZUFjdGlvbkZvclVSTDooTlNVUkwgKil1cmwgV0tfQVBJX0FWQUlMQUJMRShp
b3MoMTAuMCkpOworLSAoTlNBcnJheSAqKV9hdHRhY2htZW50TGlzdEZvcldlYlZpZXc6KFdLV2Vi
VmlldyAqKXdlYlZpZXcgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpOwogLSAoTlNBcnJheSAq
KV9hdHRhY2htZW50TGlzdEZvcldlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgc291cmNlSXNN
YW5hZ2VkOihCT09MKilzb3VyY2VJc01hbmFnZWQgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9T
X1RCQSkpOwogLSAoTlNVSW50ZWdlcilfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBpbmRl
eEludG9BdHRhY2htZW50TGlzdEZvckVsZW1lbnQ6KF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvICop
ZWxlbWVudCBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7Ci0tIChVSUVkZ2VJbnNl
dHMpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZmluYWxPYnNjdXJlZEluc2V0c0ZvclNj
cm9sbFZpZXc6KFVJU2Nyb2xsVmlldyAqKXNjcm9sbFZpZXcgd2l0aFZlbG9jaXR5OihDR1BvaW50
KXZlbG9jaXR5IHRhcmdldENvbnRlbnRPZmZzZXQ6KGlub3V0IENHUG9pbnQgKil0YXJnZXRDb250
ZW50T2Zmc2V0IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDlfMCkpOwotLSAoVUlWaWV3Q29udHJvbGxl
ciAqKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHByZXZpZXdWaWV3Q29udHJvbGxlckZv
clVSTDooTlNVUkwgKil1cmwgZGVmYXVsdEFjdGlvbnM6KE5TQXJyYXk8X1dLRWxlbWVudEFjdGlv
biAqPiAqKWFjdGlvbnMgZWxlbWVudEluZm86KF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvICopZWxl
bWVudEluZm8gV0tfQVBJX0FWQUlMQUJMRShpb3MoOV8wKSk7Ci0tIChVSVZpZXdDb250cm9sbGVy
ICopX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgcHJldmlld1ZpZXdDb250cm9sbGVyRm9y
QW5pbWF0ZWRJbWFnZUF0VVJMOihOU1VSTCAqKXVybCBkZWZhdWx0QWN0aW9uczooTlNBcnJheTxf
V0tFbGVtZW50QWN0aW9uICo+ICopYWN0aW9ucyBlbGVtZW50SW5mbzooX1dLQWN0aXZhdGVkRWxl
bWVudEluZm8gKillbGVtZW50SW5mbyBpbWFnZVNpemU6KENHU2l6ZSlpbWFnZVNpemUgV0tfQVBJ
X0FWQUlMQUJMRShpb3MoOV8wKSk7Ci0tIChVSVZpZXdDb250cm9sbGVyICopX3ByZXNlbnRpbmdW
aWV3Q29udHJvbGxlckZvcldlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgV0tfQVBJX0FWQUlM
QUJMRShpb3MoV0tfSU9TX1RCQSkpOworLSAoVUlFZGdlSW5zZXRzKV93ZWJWaWV3OihXS1dlYlZp
ZXcgKil3ZWJWaWV3IGZpbmFsT2JzY3VyZWRJbnNldHNGb3JTY3JvbGxWaWV3OihVSVNjcm9sbFZp
ZXcgKilzY3JvbGxWaWV3IHdpdGhWZWxvY2l0eTooQ0dQb2ludCl2ZWxvY2l0eSB0YXJnZXRDb250
ZW50T2Zmc2V0Oihpbm91dCBDR1BvaW50ICopdGFyZ2V0Q29udGVudE9mZnNldCBXS19BUElfQVZB
SUxBQkxFKGlvcyg5LjApKTsKKy0gKFVJVmlld0NvbnRyb2xsZXIgKilfd2ViVmlldzooV0tXZWJW
aWV3ICopd2ViVmlldyBwcmV2aWV3Vmlld0NvbnRyb2xsZXJGb3JVUkw6KE5TVVJMICopdXJsIGRl
ZmF1bHRBY3Rpb25zOihOU0FycmF5PF9XS0VsZW1lbnRBY3Rpb24gKj4gKilhY3Rpb25zIGVsZW1l
bnRJbmZvOihfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbyAqKWVsZW1lbnRJbmZvIFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKDkuMCkpOworLSAoVUlWaWV3Q29udHJvbGxlciAqKV93ZWJWaWV3OihXS1dlYlZp
ZXcgKil3ZWJWaWV3IHByZXZpZXdWaWV3Q29udHJvbGxlckZvckFuaW1hdGVkSW1hZ2VBdFVSTDoo
TlNVUkwgKil1cmwgZGVmYXVsdEFjdGlvbnM6KE5TQXJyYXk8X1dLRWxlbWVudEFjdGlvbiAqPiAq
KWFjdGlvbnMgZWxlbWVudEluZm86KF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvICopZWxlbWVudElu
Zm8gaW1hZ2VTaXplOihDR1NpemUpaW1hZ2VTaXplIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDkuMCkp
OworLSAoVUlWaWV3Q29udHJvbGxlciAqKV9wcmVzZW50aW5nVmlld0NvbnRyb2xsZXJGb3JXZWJW
aWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjApKTsKICNl
bHNlCi0tIChOU01lbnUgKilfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBjb250ZXh0TWVu
dTooTlNNZW51ICopbWVudSBmb3JFbGVtZW50OihfV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvICop
ZWxlbWVudCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci0tIChOU01lbnUg
Kilfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBjb250ZXh0TWVudTooTlNNZW51ICopbWVu
dSBmb3JFbGVtZW50OihfV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvICopZWxlbWVudCB1c2VySW5m
bzooaWQgPE5TU2VjdXJlQ29kaW5nPil1c2VySW5mbyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChX
S19NQUNfVEJBKSk7CistIChOU01lbnUgKilfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBj
b250ZXh0TWVudTooTlNNZW51ICopbWVudSBmb3JFbGVtZW50OihfV0tDb250ZXh0TWVudUVsZW1l
bnRJbmZvICopZWxlbWVudCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMikpOworLSAoTlNN
ZW51ICopX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgY29udGV4dE1lbnU6KE5TTWVudSAq
KW1lbnUgZm9yRWxlbWVudDooX1dLQ29udGV4dE1lbnVFbGVtZW50SW5mbyAqKWVsZW1lbnQgdXNl
ckluZm86KGlkIDxOU1NlY3VyZUNvZGluZz4pdXNlckluZm8gV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goMTAuMTIpKTsKICNlbmRpZgogCiBAZW5kCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLVXNlckNvbnRlbnRDb250cm9sbGVyUHJpdmF0ZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVc2VyQ29udGVudENvbnRy
b2xsZXJQcml2YXRlLmgJKHJldmlzaW9uIDIwNTU1NykKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tVc2VyQ29udGVudENvbnRyb2xsZXJQcml2YXRlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTM0LDE4ICszNCwxOCBAQAogCiBAaW50ZXJmYWNlIFdLVXNlckNvbnRlbnRDb250
cm9sbGVyIChXS1ByaXZhdGUpCiAKLS0gKHZvaWQpX3JlbW92ZVVzZXJTY3JpcHQ6KFdLVXNlclNj
cmlwdCAqKXVzZXJTY3JpcHQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlv
cyhXS19JT1NfVEJBKSk7Ci0tICh2b2lkKV9yZW1vdmVBbGxVc2VyU2NyaXB0c0Fzc29jaWF0ZWRX
aXRoVXNlckNvbnRlbnRXb3JsZDooX1dLVXNlckNvbnRlbnRXb3JsZCAqKXVzZXJDb250ZW50V29y
bGQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7
CistICh2b2lkKV9yZW1vdmVVc2VyU2NyaXB0OihXS1VzZXJTY3JpcHQgKil1c2VyU2NyaXB0IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKKy0gKHZvaWQpX3JlbW92
ZUFsbFVzZXJTY3JpcHRzQXNzb2NpYXRlZFdpdGhVc2VyQ29udGVudFdvcmxkOihfV0tVc2VyQ29u
dGVudFdvcmxkICopdXNlckNvbnRlbnRXb3JsZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4x
MiksIGlvcygxMC4wKSk7CiAKIC0gKHZvaWQpX2FkZFVzZXJDb250ZW50RmlsdGVyOihfV0tVc2Vy
Q29udGVudEZpbHRlciAqKXVzZXJDb250ZW50RmlsdGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjExKSwgaW9zKDkuMCkpOwogLSAodm9pZClfcmVtb3ZlVXNlckNvbnRlbnRGaWx0ZXI6KE5T
U3RyaW5nICopdXNlckNvbnRlbnRGaWx0ZXJOYW1lIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEw
LjExKSwgaW9zKDkuMCkpOwogLSAodm9pZClfcmVtb3ZlQWxsVXNlckNvbnRlbnRGaWx0ZXJzIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjExKSwgaW9zKDkuMCkpOwogCi1AcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TQXJyYXk8X1dLVXNlclN0eWxlU2hlZXQgKj4gKl91
c2VyU3R5bGVTaGVldHMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhX
S19JT1NfVEJBKSk7Ci0tICh2b2lkKV9hZGRVc2VyU3R5bGVTaGVldDooX1dLVXNlclN0eWxlU2hl
ZXQgKil1c2VyU3R5bGVTaGVldCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwg
aW9zKFdLX0lPU19UQkEpKTsKLS0gKHZvaWQpX3JlbW92ZVVzZXJTdHlsZVNoZWV0OihfV0tVc2Vy
U3R5bGVTaGVldCAqKXVzZXJTdHlsZVNoZWV0IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01B
Q19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotLSAodm9pZClfcmVtb3ZlQWxsVXNlclN0eWxlU2hl
ZXRzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkp
OwotLSAodm9pZClfcmVtb3ZlQWxsVXNlclN0eWxlU2hlZXRzQXNzb2NpYXRlZFdpdGhVc2VyQ29u
dGVudFdvcmxkOihfV0tVc2VyQ29udGVudFdvcmxkICopdXNlckNvbnRlbnRXb3JsZCBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0
eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgTlNBcnJheTxfV0tVc2VyU3R5bGVTaGVldCAq
PiAqX3VzZXJTdHlsZVNoZWV0cyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygx
MC4wKSk7CistICh2b2lkKV9hZGRVc2VyU3R5bGVTaGVldDooX1dLVXNlclN0eWxlU2hlZXQgKil1
c2VyU3R5bGVTaGVldCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7
CistICh2b2lkKV9yZW1vdmVVc2VyU3R5bGVTaGVldDooX1dLVXNlclN0eWxlU2hlZXQgKil1c2Vy
U3R5bGVTaGVldCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7Cist
ICh2b2lkKV9yZW1vdmVBbGxVc2VyU3R5bGVTaGVldHMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
MTAuMTIpLCBpb3MoMTAuMCkpOworLSAodm9pZClfcmVtb3ZlQWxsVXNlclN0eWxlU2hlZXRzQXNz
b2NpYXRlZFdpdGhVc2VyQ29udGVudFdvcmxkOihfV0tVc2VyQ29udGVudFdvcmxkICopdXNlckNv
bnRlbnRXb3JsZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAK
IC0gKHZvaWQpX2FkZFNjcmlwdE1lc3NhZ2VIYW5kbGVyOihpZCA8V0tTY3JpcHRNZXNzYWdlSGFu
ZGxlcj4pc2NyaXB0TWVzc2FnZUhhbmRsZXIgbmFtZTooTlNTdHJpbmcgKiluYW1lIHVzZXJDb250
ZW50V29ybGQ6KF9XS1VzZXJDb250ZW50V29ybGQgKil1c2VyQ29udGVudFdvcmxkOwogLSAodm9p
ZClfcmVtb3ZlU2NyaXB0TWVzc2FnZUhhbmRsZXJGb3JOYW1lOihOU1N0cmluZyAqKW5hbWUgdXNl
ckNvbnRlbnRXb3JsZDooX1dLVXNlckNvbnRlbnRXb3JsZCAqKXVzZXJDb250ZW50V29ybGQ7Cklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVXNlclNjcmlwdFByaXZh
dGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
VXNlclNjcmlwdFByaXZhdGUuaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VzZXJTY3JpcHRQcml2YXRlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTMzLDEwICszMywxMCBAQCBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogCiBAaW50ZXJmYWNl
IFdLVXNlclNjcmlwdCAoV0tQcml2YXRlKQogCi0tIChpbnN0YW5jZXR5cGUpX2luaXRXaXRoU291
cmNlOihOU1N0cmluZyAqKXNvdXJjZSBpbmplY3Rpb25UaW1lOihXS1VzZXJTY3JpcHRJbmplY3Rp
b25UaW1lKWluamVjdGlvblRpbWUgZm9yTWFpbkZyYW1lT25seTooQk9PTClmb3JNYWluRnJhbWVP
bmx5IGxlZ2FjeVdoaXRlbGlzdDooTlNBcnJheTxOU1N0cmluZyAqPiAqKWxlZ2FjeVdoaXRlbGlz
dCBsZWdhY3lCbGFja2xpc3Q6KE5TQXJyYXk8TlNTdHJpbmcgKj4gKilsZWdhY3lCbGFja2xpc3Qg
dXNlckNvbnRlbnRXb3JsZDooX1dLVXNlckNvbnRlbnRXb3JsZCAqKXVzZXJDb250ZW50V29ybGQg
V0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci0t
IChpbnN0YW5jZXR5cGUpX2luaXRXaXRoU291cmNlOihOU1N0cmluZyAqKXNvdXJjZSBpbmplY3Rp
b25UaW1lOihXS1VzZXJTY3JpcHRJbmplY3Rpb25UaW1lKWluamVjdGlvblRpbWUgZm9yTWFpbkZy
YW1lT25seTooQk9PTClmb3JNYWluRnJhbWVPbmx5IGxlZ2FjeVdoaXRlbGlzdDooTlNBcnJheTxO
U1N0cmluZyAqPiAqKWxlZ2FjeVdoaXRlbGlzdCBsZWdhY3lCbGFja2xpc3Q6KE5TQXJyYXk8TlNT
dHJpbmcgKj4gKilsZWdhY3lCbGFja2xpc3QgYXNzb2NpYXRlZFVSTDooTlNVUkwgKilhc3NvY2lh
dGVkVVJMIHVzZXJDb250ZW50V29ybGQ6KF9XS1VzZXJDb250ZW50V29ybGQgKil1c2VyQ29udGVu
dFdvcmxkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RC
QSkpOworLSAoaW5zdGFuY2V0eXBlKV9pbml0V2l0aFNvdXJjZTooTlNTdHJpbmcgKilzb3VyY2Ug
aW5qZWN0aW9uVGltZTooV0tVc2VyU2NyaXB0SW5qZWN0aW9uVGltZSlpbmplY3Rpb25UaW1lIGZv
ck1haW5GcmFtZU9ubHk6KEJPT0wpZm9yTWFpbkZyYW1lT25seSBsZWdhY3lXaGl0ZWxpc3Q6KE5T
QXJyYXk8TlNTdHJpbmcgKj4gKilsZWdhY3lXaGl0ZWxpc3QgbGVnYWN5QmxhY2tsaXN0OihOU0Fy
cmF5PE5TU3RyaW5nICo+ICopbGVnYWN5QmxhY2tsaXN0IHVzZXJDb250ZW50V29ybGQ6KF9XS1Vz
ZXJDb250ZW50V29ybGQgKil1c2VyQ29udGVudFdvcmxkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjEyKSwgaW9zKDEwLjApKTsKKy0gKGluc3RhbmNldHlwZSlfaW5pdFdpdGhTb3VyY2U6KE5T
U3RyaW5nICopc291cmNlIGluamVjdGlvblRpbWU6KFdLVXNlclNjcmlwdEluamVjdGlvblRpbWUp
aW5qZWN0aW9uVGltZSBmb3JNYWluRnJhbWVPbmx5OihCT09MKWZvck1haW5GcmFtZU9ubHkgbGVn
YWN5V2hpdGVsaXN0OihOU0FycmF5PE5TU3RyaW5nICo+ICopbGVnYWN5V2hpdGVsaXN0IGxlZ2Fj
eUJsYWNrbGlzdDooTlNBcnJheTxOU1N0cmluZyAqPiAqKWxlZ2FjeUJsYWNrbGlzdCBhc3NvY2lh
dGVkVVJMOihOU1VSTCAqKWFzc29jaWF0ZWRVUkwgdXNlckNvbnRlbnRXb3JsZDooX1dLVXNlckNv
bnRlbnRXb3JsZCAqKXVzZXJDb250ZW50V29ybGQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAu
MTIpLCBpb3MoMTAuMCkpOwogCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIF9XS1Vz
ZXJDb250ZW50V29ybGQgKl91c2VyQ29udGVudFdvcmxkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWRvbmx5KSBfV0tVc2VyQ29udGVudFdvcmxkICpfdXNlckNvbnRlbnRXb3JsZCBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKIEBlbmQKIApJbmRleDogU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5oCShyZXZpc2lvbiAy
MDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xNjgsNyArMTY4LDcgQEAgV0tfQ0xBU1NfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMCksIGlvcyg4LgogIEBkaXNjdXNzaW9uIEBsaW5rIFdLV2ViVmlldyBAL2xpbmsg
aXMga2V5LXZhbHVlIG9ic2VydmluZyAoS1ZPKSBjb21wbGlhbnQgCiAgZm9yIHRoaXMgcHJvcGVy
dHkuCiAgKi8KLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgbnVsbGFibGUpIFNlY1Ry
dXN0UmVmIHNlcnZlclRydXN0IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBp
b3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBudWxsYWJs
ZSkgU2VjVHJ1c3RSZWYgc2VydmVyVHJ1c3QgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIp
LCBpb3MoMTAuMCkpOwogCiAvKiEgQGFic3RyYWN0IEEgQm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5n
IHdoZXRoZXIgdGhlcmUgaXMgYSBiYWNrIGl0ZW0gaW4KICB0aGUgYmFjay1mb3J3YXJkIGxpc3Qg
dGhhdCBjYW4gYmUgbmF2aWdhdGVkIHRvLgpAQCAtMzA2LDcgKzMwNiw3IEBAIFdLX0NMQVNTX0FW
QUlMQUJMRShtYWNvc3goMTAuMTApLCBpb3MoOC4KIAogQGludGVyZmFjZSBXS1dlYlZpZXcgKFdL
RGVwcmVjYXRlZCkKIAotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU0Fy
cmF5ICpjZXJ0aWZpY2F0ZUNoYWluIFdLX0FQSV9ERVBSRUNBVEVEX1dJVEhfUkVQTEFDRU1FTlQo
InNlcnZlclRydXN0IiwgbWFjb3N4KDEwLjExLCBXS19NQUNfVEJBKSwgaW9zKDkuMCwgV0tfSU9T
X1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU0FycmF5ICpj
ZXJ0aWZpY2F0ZUNoYWluIFdLX0FQSV9ERVBSRUNBVEVEX1dJVEhfUkVQTEFDRU1FTlQoInNlcnZl
clRydXN0IiwgbWFjb3N4KDEwLjExLCAxMC4xMiksIGlvcyg5LjAsIDEwLjApKTsKIAogQGVuZAog
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZp
Z3VyYXRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24uaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTcyLDggKzcyLDggQEAgdHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVn
ZXIsIFdLRGF0YURldAogICAgIFdLRGF0YURldGVjdG9yVHlwZUxvb2t1cFN1Z2dlc3Rpb24gPSAx
IDw8IDYsCiAgICAgV0tEYXRhRGV0ZWN0b3JUeXBlQWxsID0gTlNVSW50ZWdlck1heCwKIAotICAg
IFdLRGF0YURldGVjdG9yVHlwZVNwb3RsaWdodFN1Z2dlc3Rpb24gV0tfQVBJX0RFUFJFQ0FURURf
V0lUSF9SRVBMQUNFTUVOVCgiV0tEYXRhRGV0ZWN0b3JUeXBlTG9va3VwU3VnZ2VzdGlvbiIsIGlv
cyhXS19JT1NfVEJBLCBXS19JT1NfVEJBKSkgPSBXS0RhdGFEZXRlY3RvclR5cGVMb29rdXBTdWdn
ZXN0aW9uLAotfSBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CisgICAgV0tEYXRh
RGV0ZWN0b3JUeXBlU3BvdGxpZ2h0U3VnZ2VzdGlvbiBXS19BUElfREVQUkVDQVRFRF9XSVRIX1JF
UExBQ0VNRU5UKCJXS0RhdGFEZXRlY3RvclR5cGVMb29rdXBTdWdnZXN0aW9uIiwgaW9zKDEwLjAs
IDEwLjApKSA9IFdLRGF0YURldGVjdG9yVHlwZUxvb2t1cFN1Z2dlc3Rpb24sCit9IFdLX0FQSV9B
VkFJTEFCTEUoaW9zKDEwLjApKTsKIAogI2Vsc2UKIApAQCAtOTEsNyArOTEsNyBAQCB0eXBlZGVm
IE5TX09QVElPTlMoTlNVSW50ZWdlciwgV0tEYXRhRGV0CiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRl
Z2VyLCBXS1VzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xpY3kpIHsKICAgICBXS1VzZXJJbnRlcmZh
Y2VEaXJlY3Rpb25Qb2xpY3lDb250ZW50LAogICAgIFdLVXNlckludGVyZmFjZURpcmVjdGlvblBv
bGljeVN5c3RlbSwKLX0gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworfSBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMikpOwogCiAjZW5kaWYKIApAQCAtMTA3LDcgKzEw
Nyw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBXS0F1ZGlvdmkKICAgICBXS0F1
ZGlvdmlzdWFsTWVkaWFUeXBlQXVkaW8gPSAxIDw8IDAsCiAgICAgV0tBdWRpb3Zpc3VhbE1lZGlh
VHlwZVZpZGVvID0gMSA8PCAxLAogICAgIFdLQXVkaW92aXN1YWxNZWRpYVR5cGVBbGwgPSBOU1VJ
bnRlZ2VyTWF4Ci19IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOworfSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7
CiAKIC8qISBBIFdLV2ViVmlld0NvbmZpZ3VyYXRpb24gb2JqZWN0IGlzIGEgY29sbGVjdGlvbiBv
ZiBwcm9wZXJ0aWVzIHdpdGgKICB3aGljaCB0byBpbml0aWFsaXplIGEgd2ViIHZpZXcuCkBAIC0x
NTEsNyArMTUxLDcgQEAgV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMCksIGlvcyg4Lgog
ICovCiBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBhbGxvd3NBaXJQbGF5Rm9yTWVkaWFQbGF5
YmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKTsKIAotQHByb3Bl
cnR5IChub25hdG9taWMpIFdLQXVkaW92aXN1YWxNZWRpYVR5cGVzIG1lZGlhVHlwZXNSZXF1aXJp
bmdVc2VyQWN0aW9uRm9yUGxheWJhY2sgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RC
QSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYykgV0tBdWRpb3Zpc3Vh
bE1lZGlhVHlwZXMgbWVkaWFUeXBlc1JlcXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5YmFjayBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKICNpZiBUQVJHRVRfT1Nf
SVBIT05FCiAvKiEgQGFic3RyYWN0IEEgQm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIHdoZXRoZXIg
SFRNTDUgdmlkZW9zIHBsYXkgaW5saW5lCkBAIC0xODAsMTMgKzE4MCwxMyBAQCBXS19DTEFTU19B
VkFJTEFCTEUobWFjb3N4KDEwLjEwKSwgaW9zKDguCiAgaWYgdGhlIGRhdGFEZXRlY3RvclR5cGVz
IHByb3BlcnR5IGlzIHNldCB0byBXS0RhdGFEZXRlY3RvclR5cGVQaG9uZU51bWJlciB8IFdLRGF0
YURldGVjdG9yVHlwZUxpbmsgfCBXS0RhdGFEZXRlY3RvclR5cGVDYWxlbmRhckV2ZW50LgogCiAg
Ki8KLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBXS0RhdGFEZXRlY3RvclR5cGVzIGRhdGFEZXRlY3Rv
clR5cGVzIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljKSBXS0RhdGFEZXRlY3RvclR5cGVzIGRhdGFEZXRlY3RvclR5cGVzIFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKDEwLjApKTsKIAogLyohIEBhYnN0cmFjdCBBIEJvb2xlYW4gdmFsdWUgaW5kaWNh
dGluZyB3aGV0aGVyIHRoZSBXS1dlYlZpZXcgc2hvdWxkIGFsd2F5cyBhbGxvdyBzY2FsaW5nIG9m
IHRoZSB3ZWIgcGFnZSwgcmVnYXJkbGVzcyBvZiBhdXRob3IgaW50ZW50LgogIEBkaXNjdXNzaW9u
IFRoaXMgd2lsbCBvdmVycmlkZSB0aGUgdXNlci1zY2FsYWJsZSBwcm9wZXJ0eS4KICBUaGUgZGVm
YXVsdCB2YWx1ZSBpcyBOTy4KICAqLwotQHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaWdub3Jl
c1ZpZXdwb3J0U2NhbGVMaW1pdHMgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwor
QHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaWdub3Jlc1ZpZXdwb3J0U2NhbGVMaW1pdHMgV0tf
QVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpOwogCiAjZWxzZQogCkBAIC0xOTQsNyArMTk0LDcgQEAg
V0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMCksIGlvcyg4LgogIEBkaXNjdXNzaW9uIFBv
c3NpYmxlIHZhbHVlcyBhcmUgZGVzY3JpYmVkIGluIFdLVXNlckludGVyZmFjZURpcmVjdGlvblBv
bGljeS4KICBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBXS1VzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xp
Y3lDb250ZW50LgogICovCi1AcHJvcGVydHkgKG5vbmF0b21pYykgV0tVc2VySW50ZXJmYWNlRGly
ZWN0aW9uUG9saWN5IHVzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xpY3kgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMpIFdLVXNlckludGVy
ZmFjZURpcmVjdGlvblBvbGljeSB1c2VySW50ZXJmYWNlRGlyZWN0aW9uUG9saWN5IFdLX0FQSV9B
VkFJTEFCTEUobWFjb3N4KDEwLjEyKSk7CiAKICNlbmRpZgogCkBAIC0yMDUsNyArMjA1LDcgQEAg
V0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMCksIGlvcyg4LgogI2lmIFRBUkdFVF9PU19J
UEhPTkUKIEBwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIG1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJBY3Rpb24gV0tfQVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVCgicmVxdWlyZXNVc2Vy
QWN0aW9uRm9yTWVkaWFQbGF5YmFjayIsIGlvcyg4LjAsIDkuMCkpOwogQHByb3BlcnR5IChub25h
dG9taWMpIEJPT0wgbWVkaWFQbGF5YmFja0FsbG93c0FpclBsYXkgV0tfQVBJX0RFUFJFQ0FURURf
V0lUSF9SRVBMQUNFTUVOVCgiYWxsb3dzQWlyUGxheUZvck1lZGlhUGxheWJhY2siLCBpb3MoOC4w
LCA5LjApKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIHJlcXVpcmVzVXNlckFjdGlvbkZv
ck1lZGlhUGxheWJhY2sgV0tfQVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVCgibWVkaWFU
eXBlc1JlcXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5YmFjayIsIGlvcyg5LjAsIFdLX0lPU19UQkEp
KTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIHJlcXVpcmVzVXNlckFjdGlvbkZvck1lZGlh
UGxheWJhY2sgV0tfQVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVCgibWVkaWFUeXBlc1Jl
cXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5YmFjayIsIGlvcyg5LjAsIDEwLjApKTsKICNlbmRpZgog
CiBAZW5kCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
d0NvbmZpZ3VyYXRpb25Qcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oCShyZXZpc2lv
biAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
d0NvbmZpZ3VyYXRpb25Qcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDM0ICs0MiwzNCBA
QAogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRUcmVhdHNTSEExU2lnbmVkQ2Vy
dGlmaWNhdGVzQXNJbnNlY3VyZTopIEJPT0wgX3RyZWF0c1NIQTFTaWduZWRDZXJ0aWZpY2F0ZXNB
c0luc2VjdXJlIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDlfMCkpOwogCi1AcHJvcGVydHkgKG5vbmF0
b21pYywgc2V0dGVyPV9zZXRSZXNwZWN0c0ltYWdlT3JpZW50YXRpb246KSBCT09MIF9yZXNwZWN0
c0ltYWdlT3JpZW50YXRpb24gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlv
cyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRQcmludHNC
YWNrZ3JvdW5kczopIEJPT0wgX3ByaW50c0JhY2tncm91bmRzIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMs
IHNldHRlcj1fc2V0SW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvblRpbWVvdXQ6KSBDR0Zs
b2F0IF9pbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGltZW91dCBXS19BUElfQVZBSUxB
QkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldEFsbG93c0phdmFTY3JpcHRNYXJrdXA6KSBCT09MIF9hbGxvd3NK
YXZhU2NyaXB0TWFya3VwIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Q29udmVydHNQ
b3NpdGlvblN0eWxlT25Db3B5OikgQk9PTCBfY29udmVydHNQb3NpdGlvblN0eWxlT25Db3B5IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHBy
b3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWxsb3dzTWV0YVJlZnJlc2g6KSBCT09MIF9h
bGxvd3NNZXRhUmVmcmVzaCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9z
KFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsbG93VW5p
dmVyc2FsQWNjZXNzRnJvbUZpbGVVUkxzOikgQk9PTCBfYWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9t
RmlsZVVSTHMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1Nf
VEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNYWluQ29udGVudFVzZXJH
ZXN0dXJlT3ZlcnJpZGVFbmFibGVkOikgQk9PTCBfbWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJy
aWRlRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEludmlzaWJsZUF1dG9w
bGF5Tm90UGVybWl0dGVkOikgQk9PTCBfaW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWQgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJv
cGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNZWRpYURhdGFMb2Fkc0F1dG9tYXRpY2FsbHk6
KSBCT09MIF9tZWRpYURhdGFMb2Fkc0F1dG9tYXRpY2FsbHkgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywg
c2V0dGVyPV9zZXRBdHRhY2htZW50RWxlbWVudEVuYWJsZWQ6KSBCT09MIF9hdHRhY2htZW50RWxl
bWVudEVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19J
T1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbml0aWFsQ2FwaXRh
bGl6YXRpb25FbmFibGVkOikgQk9PTCBfaW5pdGlhbENhcGl0YWxpemF0aW9uRW5hYmxlZCBXS19B
UElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFwcGxlUGF5RW5hYmxlZDopIEJPT0wgX2FwcGxl
UGF5RW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFJlc3BlY3RzSW1hZ2VP
cmllbnRhdGlvbjopIEJPT0wgX3Jlc3BlY3RzSW1hZ2VPcmllbnRhdGlvbiBXS19BUElfQVZBSUxB
QkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRQcmludHNCYWNrZ3JvdW5kczopIEJPT0wgX3ByaW50c0JhY2tncm91bmRzIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRv
bWljLCBzZXR0ZXI9X3NldEluY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0Oikg
Q0dGbG9hdCBfaW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvblRpbWVvdXQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworQHByb3BlcnR5IChub25hdG9taWMs
IHNldHRlcj1fc2V0QWxsb3dzSmF2YVNjcmlwdE1hcmt1cDopIEJPT0wgX2FsbG93c0phdmFTY3Jp
cHRNYXJrdXAgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworQHBy
b3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Q29udmVydHNQb3NpdGlvblN0eWxlT25Db3B5
OikgQk9PTCBfY29udmVydHNQb3NpdGlvblN0eWxlT25Db3B5IFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3Nl
dEFsbG93c01ldGFSZWZyZXNoOikgQk9PTCBfYWxsb3dzTWV0YVJlZnJlc2ggV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0QWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHM6KSBCT09MIF9hbGxvd1Vu
aXZlcnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiks
IGlvcygxMC4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNYWluQ29udGVu
dFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkOikgQk9PTCBfbWFpbkNvbnRlbnRVc2VyR2VzdHVy
ZU92ZXJyaWRlRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4w
KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbnZpc2libGVBdXRvcGxheU5v
dFBlcm1pdHRlZDopIEJPT0wgX2ludmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkIFdLX0FQSV9B
VkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWlj
LCBzZXR0ZXI9X3NldE1lZGlhRGF0YUxvYWRzQXV0b21hdGljYWxseTopIEJPT0wgX21lZGlhRGF0
YUxvYWRzQXV0b21hdGljYWxseSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygx
MC4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRBdHRhY2htZW50RWxlbWVu
dEVuYWJsZWQ6KSBCT09MIF9hdHRhY2htZW50RWxlbWVudEVuYWJsZWQgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRl
cj1fc2V0SW5pdGlhbENhcGl0YWxpemF0aW9uRW5hYmxlZDopIEJPT0wgX2luaXRpYWxDYXBpdGFs
aXphdGlvbkVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkp
OworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QXBwbGVQYXlFbmFibGVkOikgQk9P
TCBfYXBwbGVQYXlFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEw
LjApKTsKIAogI2lmIFRBUkdFVF9PU19JUEhPTkUKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0
ZXI9X3NldEFsd2F5c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eTopIEJPT0wgX2Fsd2F5c1J1bnNB
dEZvcmVncm91bmRQcmlvcml0eSBXS19BUElfQVZBSUxBQkxFKGlvcyg5XzApKTsKLUBwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlz
SW5saW5lQXR0cmlidXRlOikgQk9PTCBfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJ
bmxpbmVBdHRyaWJ1dGUgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwotQHByb3Bl
cnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVy
RnVsbHNjcmVlbjopIEJPT0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3Jl
ZW4gIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRv
bWljLCBzZXR0ZXI9X3NldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0
cmlidXRlOikgQk9PTCBfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRy
aWJ1dGUgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpOworQHByb3BlcnR5IChub25hdG9taWMs
IHNldHRlcj1fc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbjopIEJP
T0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4gIFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKDEwLjApKTsKICNlbHNlCi1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9z
ZXRTaG93c1VSTHNJblRvb2xUaXBzOikgQk9PTCBfc2hvd3NVUkxzSW5Ub29sVGlwcyBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRTZXJ2aWNlQ29udHJvbHNFbmFibGVkOikgQk9PTCBfc2VydmljZUNvbnRyb2xzRW5h
YmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci1AcHJvcGVydHkgKG5v
bmF0b21pYywgc2V0dGVyPV9zZXRJbWFnZUNvbnRyb2xzRW5hYmxlZDopIEJPT0wgX2ltYWdlQ29u
dHJvbHNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKLUBwcm9w
ZXJ0eSAobm9uYXRvbWljLCByZWFkd3JpdGUsIHNldHRlcj1fc2V0UmVxdWlyZXNVc2VyQWN0aW9u
Rm9yRWRpdGluZ0NvbnRyb2xzTWFuYWdlcjopIEJPT0wgX3JlcXVpcmVzVXNlckFjdGlvbkZvckVk
aXRpbmdDb250cm9sc01hbmFnZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkp
OworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0U2hvd3NVUkxzSW5Ub29sVGlwczop
IEJPT0wgX3Nob3dzVVJMc0luVG9vbFRpcHMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIp
KTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNlcnZpY2VDb250cm9sc0VuYWJs
ZWQ6KSBCT09MIF9zZXJ2aWNlQ29udHJvbHNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjEyKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbWFnZUNvbnRyb2xz
RW5hYmxlZDopIEJPT0wgX2ltYWdlQ29udHJvbHNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjEyKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZHdyaXRlLCBzZXR0ZXI9X3Nl
dFJlcXVpcmVzVXNlckFjdGlvbkZvckVkaXRpbmdDb250cm9sc01hbmFnZXI6KSBCT09MIF9yZXF1
aXJlc1VzZXJBY3Rpb25Gb3JFZGl0aW5nQ29udHJvbHNNYW5hZ2VyIFdLX0FQSV9BVkFJTEFCTEUo
bWFjb3N4KDEwLjEyKSk7CiAjZW5kaWYKIAogQHByb3BlcnR5IChub25hdG9taWMsIHN0cm9uZywg
c2V0dGVyPV9zZXRXZWJzaXRlRGF0YVN0b3JlOikgX1dLV2Vic2l0ZURhdGFTdG9yZSAqX3dlYnNp
dGVEYXRhU3RvcmUgV0tfQVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVCgid2Vic2l0ZURh
dGFTdG9yZSIsIG1hY29zeCgxMC4xMCwgMTAuMTEpLCBpb3MoOC4wLCA5LjApKTsKLUBwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFJlcXVpcmVzVXNlckFjdGlvbkZvckF1ZGlvUGxheWJh
Y2s6KSBCT09MIF9yZXF1aXJlc1VzZXJBY3Rpb25Gb3JBdWRpb1BsYXliYWNrIFdLX0FQSV9ERVBS
RUNBVEVEX1dJVEhfUkVQTEFDRU1FTlQoIm1lZGlhVHlwZXNSZXF1aXJpbmdVc2VyQWN0aW9uRm9y
UGxheWJhY2siLCBtYWNvc3goV0tfTUFDX1RCQSwgV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJB
LCBXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRSZXF1aXJl
c1VzZXJBY3Rpb25Gb3JWaWRlb1BsYXliYWNrOikgQk9PTCBfcmVxdWlyZXNVc2VyQWN0aW9uRm9y
VmlkZW9QbGF5YmFjayBXS19BUElfREVQUkVDQVRFRF9XSVRIX1JFUExBQ0VNRU5UKCJtZWRpYVR5
cGVzUmVxdWlyaW5nVXNlckFjdGlvbkZvclBsYXliYWNrIiwgbWFjb3N4KFdLX01BQ19UQkEsIFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSwgV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25h
dG9taWMsIHNldHRlcj1fc2V0UmVxdWlyZXNVc2VyQWN0aW9uRm9yQXVkaW9QbGF5YmFjazopIEJP
T0wgX3JlcXVpcmVzVXNlckFjdGlvbkZvckF1ZGlvUGxheWJhY2sgV0tfQVBJX0RFUFJFQ0FURURf
V0lUSF9SRVBMQUNFTUVOVCgibWVkaWFUeXBlc1JlcXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5YmFj
ayIsIG1hY29zeCgxMC4xMiwgMTAuMTIpLCBpb3MoMTAuMCwgMTAuMCkpOworQHByb3BlcnR5IChu
b25hdG9taWMsIHNldHRlcj1fc2V0UmVxdWlyZXNVc2VyQWN0aW9uRm9yVmlkZW9QbGF5YmFjazop
IEJPT0wgX3JlcXVpcmVzVXNlckFjdGlvbkZvclZpZGVvUGxheWJhY2sgV0tfQVBJX0RFUFJFQ0FU
RURfV0lUSF9SRVBMQUNFTUVOVCgibWVkaWFUeXBlc1JlcXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5
YmFjayIsIG1hY29zeCgxMC4xMiwgMTAuMTIpLCBpb3MoMTAuMCwgMTAuMCkpOwogCiBAZW5kCiAK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3UHJpdmF0ZS5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtNDgs
NyArNDgsNyBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBfV0tJbW1lZGlhdGVBCiAgICAg
X1dLSW1tZWRpYXRlQWN0aW9uTG9va3VwVGV4dCwKICAgICBfV0tJbW1lZGlhdGVBY3Rpb25NYWls
dG9MaW5rLAogICAgIF9XS0ltbWVkaWF0ZUFjdGlvblRlbExpbmsKLX0gV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSkpOworfSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMikp
OwogCiAjZW5kaWYKIApAQCAtNzcsNyArNzcsNyBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2Vy
LCBfV0tJbW1lZGlhdGVBCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TVVJMICpf
dW5yZWFjaGFibGVVUkw7CiAKIC0gKHZvaWQpX2xvYWRBbHRlcm5hdGVIVE1MU3RyaW5nOihOU1N0
cmluZyAqKXN0cmluZyBiYXNlVVJMOihOU1VSTCAqKWJhc2VVUkwgZm9yVW5yZWFjaGFibGVVUkw6
KE5TVVJMICopdW5yZWFjaGFibGVVUkw7Ci0tIChXS05hdmlnYXRpb24gKilfbG9hZERhdGE6KE5T
RGF0YSAqKWRhdGEgTUlNRVR5cGU6KE5TU3RyaW5nICopTUlNRVR5cGUgY2hhcmFjdGVyRW5jb2Rp
bmdOYW1lOihOU1N0cmluZyAqKWNoYXJhY3RlckVuY29kaW5nTmFtZSBiYXNlVVJMOihOU1VSTCAq
KWJhc2VVUkwgdXNlckRhdGE6KGlkKXVzZXJEYXRhIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworLSAoV0tOYXZpZ2F0aW9uICopX2xvYWREYXRh
OihOU0RhdGEgKilkYXRhIE1JTUVUeXBlOihOU1N0cmluZyAqKU1JTUVUeXBlIGNoYXJhY3RlckVu
Y29kaW5nTmFtZTooTlNTdHJpbmcgKiljaGFyYWN0ZXJFbmNvZGluZ05hbWUgYmFzZVVSTDooTlNV
UkwgKiliYXNlVVJMIHVzZXJEYXRhOihpZCl1c2VyRGF0YSBXS19BUElfQVZBSUxBQkxFKG1hY29z
eCgxMC4xMiksIGlvcygxMC4wKSk7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkg
TlNBcnJheSAqX2NlcnRpZmljYXRlQ2hhaW4gV0tfQVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNF
TUVOVCgiY2VydGlmaWNhdGVDaGFpbiIsIG1hY29zeCgxMC4xMCwgMTAuMTEpLCBpb3MoOC4wLCA5
LjApKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNVUkwgKl9jb21taXR0ZWRV
Ukw7CkBAIC0xMDIsNyArMTAyLDcgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgX1dLSW1t
ZWRpYXRlQQogLSAoX1dLU2Vzc2lvblN0YXRlICopX3Nlc3Npb25TdGF0ZVdpdGhGaWx0ZXI6KEJP
T0wgKF4pKFdLQmFja0ZvcndhcmRMaXN0SXRlbSAqaXRlbSkpZmlsdGVyOwogCiBAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXRBbGxvd3NSZW1vdGVJbnNwZWN0aW9uOikgQk9PTCBfYWxs
b3dzUmVtb3RlSW5zcGVjdGlvbjsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5LCBzZXR0ZXI9
X3NldFJlbW90ZUluc3BlY3Rpb25OYW1lT3ZlcnJpZGU6KSBOU1N0cmluZyAqX3JlbW90ZUluc3Bl
Y3Rpb25OYW1lT3ZlcnJpZGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlv
cyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSwgc2V0dGVyPV9zZXRS
ZW1vdGVJbnNwZWN0aW9uTmFtZU92ZXJyaWRlOikgTlNTdHJpbmcgKl9yZW1vdGVJbnNwZWN0aW9u
TmFtZU92ZXJyaWRlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsK
IAogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWRkc1Zpc2l0ZWRMaW5rczopIEJP
T0wgX2FkZHNWaXNpdGVkTGlua3M7CiAKQEAgLTE5MiwxOCArMTkyLDE4IEBAIHR5cGVkZWYgTlNf
RU5VTShOU0ludGVnZXIsIF9XS0ltbWVkaWF0ZUEKIC8vIGRvIHNvbWV0aGluZyBjdXN0b20sIHJl
dHVybiBhbiBvYmplY3QgdGhhdCBjb25mb3JtcyB0byB0aGUgTlNJbW1lZGlhdGVBY3Rpb25Bbmlt
YXRpb25Db250cm9sbGVyIHByb3RvY29sLgogLSAoaWQpX2ltbWVkaWF0ZUFjdGlvbkFuaW1hdGlv
bkNvbnRyb2xsZXJGb3JIaXRUZXN0UmVzdWx0OihfV0tIaXRUZXN0UmVzdWx0ICopaGl0VGVzdFJl
c3VsdCB3aXRoVHlwZTooX1dLSW1tZWRpYXRlQWN0aW9uVHlwZSl0eXBlIHVzZXJEYXRhOihpZDxO
U1NlY3VyZUNvZGluZz4pdXNlckRhdGE7CiAKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9
X3NldE1pbmltdW1MYXlvdXRXaWR0aDopIENHRmxvYXQgX21pbmltdW1MYXlvdXRXaWR0aCBXS19B
UElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywg
c2V0dGVyPV9zZXRNaW5pbXVtTGF5b3V0V2lkdGg6KSBDR0Zsb2F0IF9taW5pbXVtTGF5b3V0V2lk
dGggV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpKTsKIAogLy8gV2hlbiB1c2luZyBfbWlu
aW11bUxheW91dFdpZHRoLCB0aGUgd2ViIGNvbnRlbnQgd2lsbCBsYXkgb3V0IHRvIHRoZSBpbnRy
aW5zaWMgaGVpZ2h0CiAvLyBvZiB0aGUgY29udGVudDsgdXNlIHRoaXMgcHJvcGVydHkgdG8gZm9y
Y2UgaXQgdG8gbGF5IG91dCB0byB0aGUgaGVpZ2h0IG9mIHRoZSB2aWV3IGluc3RlYWQuCi1AcHJv
cGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRTaG91bGRFeHBhbmRDb250ZW50VG9WaWV3SGVp
Z2h0Rm9yQXV0b0xheW91dDopIEJPT0wgX3Nob3VsZEV4cGFuZENvbnRlbnRUb1ZpZXdIZWlnaHRG
b3JBdXRvTGF5b3V0IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNob3VsZEV4cGFuZENvbnRlbnRUb1ZpZXdIZWln
aHRGb3JBdXRvTGF5b3V0OikgQk9PTCBfc2hvdWxkRXhwYW5kQ29udGVudFRvVmlld0hlaWdodEZv
ckF1dG9MYXlvdXQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpKTsKIAogLSAoTlNQcmlu
dE9wZXJhdGlvbiAqKV9wcmludE9wZXJhdGlvbldpdGhQcmludEluZm86KE5TUHJpbnRJbmZvICop
cHJpbnRJbmZvOwotLSAoTlNQcmludE9wZXJhdGlvbiAqKV9wcmludE9wZXJhdGlvbldpdGhQcmlu
dEluZm86KE5TUHJpbnRJbmZvICopcHJpbnRJbmZvIGZvckZyYW1lOihfV0tGcmFtZUhhbmRsZSAq
KWZyYW1lSGFuZGxlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOworLSAoTlNQcmludE9wZXJhdGlvbiAqKV9wcmludE9wZXJhdGlvbldpdGhQcmlu
dEluZm86KE5TUHJpbnRJbmZvICopcHJpbnRJbmZvIGZvckZyYW1lOihfV0tGcmFtZUhhbmRsZSAq
KWZyYW1lSGFuZGxlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsK
IAogI2VuZGlmCiAKLS0gKFdLTmF2aWdhdGlvbiAqKV9yZWxvYWRXaXRob3V0Q29udGVudEJsb2Nr
ZXJzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkp
OworLSAoV0tOYXZpZ2F0aW9uICopX3JlbG9hZFdpdGhvdXRDb250ZW50QmxvY2tlcnMgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiAtICh2b2lkKV9raWxsV2Vi
Q29udGVudFByb2Nlc3NBbmRSZXNldFN0YXRlOwogCkBAIC0yMzAsNyArMjMwLDcgQEAgdHlwZWRl
ZiBOU19FTlVNKE5TSW50ZWdlciwgX1dLSW1tZWRpYXRlQQogLSAodm9pZClfY291bnRTdHJpbmdN
YXRjaGVzOihOU1N0cmluZyAqKXN0cmluZyBvcHRpb25zOihfV0tGaW5kT3B0aW9ucylvcHRpb25z
IG1heENvdW50OihOU1VJbnRlZ2VyKW1heENvdW50OwogLSAodm9pZClfaGlkZUZpbmRVSTsKIAot
QHByb3BlcnR5IChub25hdG9taWMsIHdlYWssIHNldHRlcj1fc2V0SW5wdXREZWxlZ2F0ZTopIGlk
IDxfV0tJbnB1dERlbGVnYXRlPiBfaW5wdXREZWxlZ2F0ZSBXS19BUElfQVZBSUxBQkxFKG1hY29z
eChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCB3
ZWFrLCBzZXR0ZXI9X3NldElucHV0RGVsZWdhdGU6KSBpZCA8X1dLSW5wdXREZWxlZ2F0ZT4gX2lu
cHV0RGVsZWdhdGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwog
CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1faXNEaXNwbGF5aW5nU3Rh
bmRhbG9uZUltYWdlRG9jdW1lbnQpIEJPT0wgX2Rpc3BsYXlpbmdTdGFuZGFsb25lSW1hZ2VEb2N1
bWVudDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVyPV9pc0Rpc3BsYXlp
bmdTdGFuZGFsb25lTWVkaWFEb2N1bWVudCkgQk9PTCBfZGlzcGxheWluZ1N0YW5kYWxvbmVNZWRp
YURvY3VtZW50OwpAQCAtMjQyLDcgKzI0Miw3IEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIs
IF9XS0ltbWVkaWF0ZUEKIAogQHByb3BlcnR5IChub25hdG9taWMsIGdldHRlcj1fYWxsb3dzTWVk
aWFEb2N1bWVudElubGluZVBsYXliYWNrLCBzZXR0ZXI9X3NldEFsbG93c01lZGlhRG9jdW1lbnRJ
bmxpbmVQbGF5YmFjazopIEJPT0wgX2FsbG93c01lZGlhRG9jdW1lbnRJbmxpbmVQbGF5YmFjazsK
IAotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIF93ZWJQcm9jZXNzSXNSZXNw
b25zaXZlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RC
QSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIF93ZWJQcm9jZXNzSXNS
ZXNwb25zaXZlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIAog
QGVuZAogCkBAIC0yNTUsMTIgKzI1NSwxMiBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBf
V0tJbW1lZGlhdGVBCiAKICNpZiBUQVJHRVRfT1NfSVBIT05FCiAKLUBwcm9wZXJ0eSAobm9uYXRv
bWljLCByZWFkb25seSkgQ0dSZWN0IF9jb250ZW50VmlzaWJsZVJlY3QgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci0tIChDR1BvaW50KV9jb252
ZXJ0UG9pbnRGcm9tQ29udGVudHNUb1ZpZXc6KENHUG9pbnQpcG9pbnQgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci0tIChDR1BvaW50KV9jb252
ZXJ0UG9pbnRGcm9tVmlld1RvQ29udGVudHM6KENHUG9pbnQpcG9pbnQgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0
b21pYywgcmVhZG9ubHkpIENHUmVjdCBfY29udGVudFZpc2libGVSZWN0IFdLX0FQSV9BVkFJTEFC
TEUoaW9zKDEwLjApKTsKKy0gKENHUG9pbnQpX2NvbnZlcnRQb2ludEZyb21Db250ZW50c1RvVmll
dzooQ0dQb2ludClwb2ludCBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4wKSk7CistIChDR1BvaW50
KV9jb252ZXJ0UG9pbnRGcm9tVmlld1RvQ29udGVudHM6KENHUG9pbnQpcG9pbnQgV0tfQVBJX0FW
QUlMQUJMRShpb3MoMTAuMCkpOwogCi0tICh2b2lkKWtleWJvYXJkQWNjZXNzb3J5QmFyTmV4dCBX
S19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7Ci0tICh2b2lkKWtleWJvYXJkQWNjZXNz
b3J5QmFyUHJldmlvdXMgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOworLSAodm9p
ZClrZXlib2FyZEFjY2Vzc29yeUJhck5leHQgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpOwor
LSAodm9pZClrZXlib2FyZEFjY2Vzc29yeUJhclByZXZpb3VzIFdLX0FQSV9BVkFJTEFCTEUoaW9z
KDEwLjApKTsKIC0gKHZvaWQpZGlzbWlzc0Zvcm1BY2Nlc3NvcnlWaWV3IFdLX0FQSV9BVkFJTEFC
TEUoaW9zKFdLX0lPU19UQkEpKTsKIC0gKHZvaWQpc2VsZWN0Rm9ybUFjY2Vzc29yeVBpY2tlclJv
dzooaW50KXJvd0luZGV4IFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKIApAQCAt
MjcwLDE0ICsyNzAsMTMgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgX1dLSW1tZWRpYXRl
QQogI2VuZGlmCiAKICNpZiAhVEFSR0VUX09TX0lQSE9ORQotQHByb3BlcnR5IChub25hdG9taWMs
IHJlYWRvbmx5KSBCT09MIF9oYXNBY3RpdmVWaWRlb0ZvckNvbnRyb2xzTWFuYWdlciBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVh
ZG9ubHkpIEJPT0wgX2hhc0FjdGl2ZVZpZGVvRm9yQ29udHJvbHNNYW5hZ2VyIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KDEwLjEyKSk7CiAtICh2b2lkKV9yZXF1ZXN0Q29udHJvbGxlZEVsZW1lbnRJ
RCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CiAtICh2b2lkKV9oYW5kbGVD
b250cm9sbGVkRWxlbWVudElEUmVzcG9uc2U6KE5TU3RyaW5nICopaWRlbnRpZmllciBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CiAjZW5kaWYKIAotLSAodm9pZClfZG9BZnRl
ck5leHRQcmVzZW50YXRpb25VcGRhdGU6KHZvaWQgKF4pKHZvaWQpKXVwZGF0ZUJsb2NrIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworLSAodm9p
ZClfZG9BZnRlck5leHRQcmVzZW50YXRpb25VcGRhdGU6KHZvaWQgKF4pKHZvaWQpKXVwZGF0ZUJs
b2NrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIAogQGVuZAog
Ci0KICNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YnNpdGVEYXRhUmVjb3JkUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVJlY29yZFByaXZhdGUuaAkocmV2aXNpb24g
MjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVE
YXRhUmVjb3JkUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw4ICszMyw4IEBAIE5TX0FT
U1VNRV9OT05OVUxMX0JFR0lOCiAKIFdLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IF9XS1dlYnNp
dGVEYXRhVHlwZUhTVFNDYWNoZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5
LjApKTsKIFdLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IF9XS1dlYnNpdGVEYXRhVHlwZU1lZGlh
S2V5cyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKTsKLVdLX0VYVEVS
TiBOU1N0cmluZyAqIGNvbnN0IF9XS1dlYnNpdGVEYXRhVHlwZVNlYXJjaEZpZWxkUmVjZW50U2Vh
cmNoZXMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJB
KSk7Ci1XS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBfV0tXZWJzaXRlRGF0YVR5cGVSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOworV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgX1dLV2Vic2l0ZURhdGFU
eXBlU2VhcmNoRmllbGRSZWNlbnRTZWFyY2hlcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4x
MiksIGlvcygxMC4wKSk7CitXS19FWFRFUk4gTlNTdHJpbmcgKiBjb25zdCBfV0tXZWJzaXRlRGF0
YVR5cGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEy
KSwgaW9zKDEwLjApKTsKIAogCiAjaWYgIVRBUkdFVF9PU19JUEhPTkUKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRl
RGF0YVN0b3JlUHJpdmF0ZS5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZVByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMzEsMTMgKzMxLDEzIEBAIE5TX0FTU1VNRV9OT05OVUxMX0JFR0lOCiAKIHR5cGVk
ZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tXZWJzaXRlRGF0YVN0b3JlRmV0Y2hPcHRpb25z
KSB7CiAgICAgX1dLV2Vic2l0ZURhdGFTdG9yZUZldGNoT3B0aW9uQ29tcHV0ZVNpemVzID0gMSA8
PCAwLAotfSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19U
QkEpKTsKK30gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiBA
aW50ZXJmYWNlIFdLV2Vic2l0ZURhdGFTdG9yZSAoV0tQcml2YXRlKQogCiAtICh2b2lkKV9mZXRj
aERhdGFSZWNvcmRzT2ZUeXBlczooTlNTZXQ8TlNTdHJpbmcgKj4gKilkYXRhVHlwZXMgd2l0aE9w
dGlvbnM6KF9XS1dlYnNpdGVEYXRhU3RvcmVGZXRjaE9wdGlvbnMpb3B0aW9ucyBjb21wbGV0aW9u
SGFuZGxlcjoodm9pZCAoXikoTlNBcnJheTxXS1dlYnNpdGVEYXRhUmVjb3JkICo+ICopKWNvbXBs
ZXRpb25IYW5kbGVyOwogCi1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRW5hYmxlZDopIEJPT0wgX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFi
bGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkp
OworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0VuYWJsZWQ6KSBCT09MIF9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKIEBlbmQKIApJbmRleDogU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBY3RpdmF0ZWRFbGVtZW50SW5mby5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLQWN0aXZh
dGVkRWxlbWVudEluZm8uaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tBY3RpdmF0ZWRFbGVtZW50SW5mby5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zNiw3ICszNiw3IEBACiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBfV0tBY3RpdmF0
ZWRFbGVtZW50VHlwZSkgewogICAgIF9XS0FjdGl2YXRlZEVsZW1lbnRUeXBlTGluaywKICAgICBf
V0tBY3RpdmF0ZWRFbGVtZW50VHlwZUltYWdlLAotICAgIF9XS0FjdGl2YXRlZEVsZW1lbnRUeXBl
QXR0YWNobWVudCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKSwKKyAgICBfV0tBY3RpdmF0ZWRFbGVtZW50VHlwZUF0dGFjaG1lbnQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpLAogfSBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMCksIGlvcyg4LjApKTsKIAogV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4x
MCksIGlvcyg4LjApKQpAQCAtNDYsNyArNDYsNyBAQCBXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4
KDEwLjEwKSwgaW9zKDguCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TU3RyaW5n
ICp0aXRsZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgX1dLQWN0aXZhdGVkRWxl
bWVudFR5cGUgdHlwZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQ0dSZWN0IGJv
dW5kaW5nUmVjdDsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNTdHJpbmcgKklE
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwor
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU1N0cmluZyAqSUQgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogI2lmIFRBUkdFVF9PU19JUEhPTkUKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgVUlJbWFnZSAqaW1hZ2U7CiAjZWxz
ZQpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRvbWF0aW9u
U2Vzc2lvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29j
b2EvX1dLQXV0b21hdGlvblNlc3Npb24uaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRvbWF0aW9uU2Vzc2lvbi5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zMyw3ICszMyw3IEBACiAKIE5TX0FTU1VNRV9OT05OVUxMX0JFR0lOCiAKLVdL
X0NMQVNTX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSkKK1dL
X0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpCiBAaW50ZXJmYWNlIF9X
S0F1dG9tYXRpb25TZXNzaW9uIDogTlNPYmplY3QKIAogQHByb3BlcnR5IChub25hdG9taWMsIGNv
cHkpIE5TU3RyaW5nICpzZXNzaW9uSWRlbnRpZmllcjsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvX1dLQ29udGV4dE1lbnVFbGVtZW50SW5mby5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLQ29udGV4dE1lbnVFbGVt
ZW50SW5mby5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS0NvbnRleHRNZW51RWxlbWVudEluZm8uaAkod29ya2luZyBjb3B5KQpAQCAt
MjksNyArMjksNyBAQAogCiBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogCi1XS19DTEFTU19BVkFJ
TEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKQorV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4x
MikpCiBAaW50ZXJmYWNlIF9XS0NvbnRleHRNZW51RWxlbWVudEluZm8gOiBOU09iamVjdCA8TlND
b3B5aW5nPgogCiBAZW5kCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS0VsZW1lbnRBY3Rpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0NvY29hL19XS0VsZW1lbnRBY3Rpb24uaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tFbGVtZW50QWN0aW9uLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQ0LDcgKzQ0LDcgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgX1dL
RWxlbWVudEFjdAogICAgIF9XS0VsZW1lbnRBY3Rpb25UeXBlT3BlbkluRGVmYXVsdEJyb3dzZXIg
V0tfQVBJX0FWQUlMQUJMRShpb3MoOV8wKSksCiAgICAgX1dLRWxlbWVudEFjdGlvblR5cGVPcGVu
SW5FeHRlcm5hbEFwcGxpY2F0aW9uIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDlfMCkpLAogI2VuZGlm
Ci0gICAgX1dLRWxlbWVudEFjdGlvblR5cGVTaGFyZSBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19J
T1NfVEJBKSksCisgICAgX1dLRWxlbWVudEFjdGlvblR5cGVTaGFyZSBXS19BUElfQVZBSUxBQkxF
KGlvcygxMC4wKSksCiB9IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEwKSwgaW9zKDguMCkp
OwogCiBXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KDEwLjEwKSwgaW9zKDguMCkpCkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0V4cGVyaW1lbnRhbEZlYXR1cmUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0V4
cGVyaW1lbnRhbEZlYXR1cmUuaAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tFeHBlcmltZW50YWxGZWF0dXJlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI5LDcgKzI5LDcgQEAKIAogI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+
CiAKLVdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJB
KSkKK1dLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpCiBAaW50ZXJm
YWNlIF9XS0V4cGVyaW1lbnRhbEZlYXR1cmUgOiBOU09iamVjdAogCiBAcHJvcGVydHkgKG5vbmF0
b21pYywgcmVhZG9ubHksIGNvcHkpIE5TU3RyaW5nICprZXk7CkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0Zvcm1JbnB1dFNlc3Npb24uaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0Zvcm1JbnB1dFNlc3Npb24u
aAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tGb3JtSW5wdXRTZXNzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTM2LDE0ICszNiwxNCBA
QAogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1pc1ZhbGlkKSBCT09M
IHZhbGlkOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU09iamVjdCA8TlNTZWN1
cmVDb2Rpbmc+ICp1c2VyT2JqZWN0OwotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBp
ZCA8X1dLRm9jdXNlZEVsZW1lbnRJbmZvPiBmb2N1c2VkRWxlbWVudEluZm8gV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHkpIGlkIDxfV0tGb2N1c2VkRWxlbWVudEluZm8+IGZvY3VzZWRFbGVt
ZW50SW5mbyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKICNp
ZiBUQVJHRVRfT1NfSVBIT05FCiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNTdHJpbmcg
KmFjY2Vzc29yeVZpZXdDdXN0b21CdXR0b25UaXRsZTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBz
dHJvbmcpIFVJVmlldyAqY3VzdG9tSW5wdXRWaWV3IFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lP
U19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5KSBOU0FycmF5PFVJVGV4dFN1Z2dl
c3Rpb24gKj4gKnN1Z2dlc3Rpb25zIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsK
LUBwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIGFjY2Vzc29yeVZpZXdTaG91bGROb3RTaG93IFdL
X0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBC
T09MIGZvcmNlU2VjdXJlVGV4dEVudHJ5IFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEp
KTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcpIFVJVmlldyAqY3VzdG9tSW5wdXRWaWV3
IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5
KSBOU0FycmF5PFVJVGV4dFN1Z2dlc3Rpb24gKj4gKnN1Z2dlc3Rpb25zIFdLX0FQSV9BVkFJTEFC
TEUoaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIGFjY2Vzc29yeVZpZXdT
aG91bGROb3RTaG93IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjApKTsKK0Bwcm9wZXJ0eSAobm9u
YXRvbWljKSBCT09MIGZvcmNlU2VjdXJlVGV4dEVudHJ5IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEw
LjApKTsKICNlbmRpZgogCiBAZW5kCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0NvY29hL19XS0lucHV0RGVsZWdhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS0lucHV0RGVsZWdhdGUuaAkocmV2aXNpb24gMjA1NTU3KQor
KysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnB1dERlbGVnYXRlLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQ2LDcgKzQ2LDcgQEAKIC0gKHZvaWQpX3dlYlZpZXc6KFdLV2Vi
VmlldyAqKXdlYlZpZXcgYWNjZXNzb3J5Vmlld0N1c3RvbUJ1dHRvblRhcHBlZEluRm9ybUlucHV0
U2Vzc2lvbjooaWQgPF9XS0Zvcm1JbnB1dFNlc3Npb24+KWlucHV0U2Vzc2lvbjsKIC0gKEJPT0wp
X3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgaGFzU3VnZ2VzdGlvbnNGb3JDdXJyZW50U3Ry
aW5nSW5JbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5wdXRTZXNzaW9uPilpbnB1dFNlc3Npb247
CiAtIChOU0FycmF5ICopX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgc3VnZ2VzdGlvbnNG
b3JTdHJpbmc6KE5TU3RyaW5nICopc3RyaW5nIGluSW5wdXRTZXNzaW9uOihpZCA8X1dLRm9ybUlu
cHV0U2Vzc2lvbj4paW5wdXRTZXNzaW9uOwotLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICop
d2ViVmlldyBpbnNlcnRUZXh0U3VnZ2VzdGlvbjooVUlUZXh0U3VnZ2VzdGlvbiAqKXN1Z2dlc3Rp
b24gaW5JbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5wdXRTZXNzaW9uPilpbnB1dFNlc3Npb24g
V0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOworLSAodm9pZClfd2ViVmlldzooV0tX
ZWJWaWV3ICopd2ViVmlldyBpbnNlcnRUZXh0U3VnZ2VzdGlvbjooVUlUZXh0U3VnZ2VzdGlvbiAq
KXN1Z2dlc3Rpb24gaW5JbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5wdXRTZXNzaW9uPilpbnB1
dFNlc3Npb24gV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpOwogI2VuZGlmCiAKIEBlbmQKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLUHJvY2Vzc1Bvb2xDb25m
aWd1cmF0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
b2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAkocmV2aXNpb24gMjA1NTU3KQorKysg
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMzUsOSArMzUsOSBAQCBXS19DTEFTU19BVkFJTEFC
TEUobWFjb3N4KDEwLjEwKSwgaW9zKDguCiBAcHJvcGVydHkgKG5vbmF0b21pYykgTlNVSW50ZWdl
ciBtYXhpbXVtUHJvY2Vzc0NvdW50OwogQHByb3BlcnR5IChub25hdG9taWMpIE5TSW50ZWdlciBk
aXNrQ2FjaGVTaXplT3ZlcnJpZGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTEpLCBpb3Mo
OS4wKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNBcnJheSAqY2FjaGVQYXJ0aXRp
b25lZFVSTFNjaGVtZXM7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNBcnJheTxOU1N0
cmluZyAqPiAqYWx3YXlzUmV2YWxpZGF0ZWRVUkxTY2hlbWVzIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMp
IEJPT0wgZGlza0NhY2hlU3BlY3VsYXRpdmVWYWxpZGF0aW9uRW5hYmxlZCBXS19BUElfQVZBSUxB
QkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9u
YXRvbWljKSBCT09MIGlnbm9yZVN5bmNocm9ub3VzTWVzc2FnaW5nVGltZW91dHNGb3JUZXN0aW5n
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwor
QHByb3BlcnR5IChub25hdG9taWMsIGNvcHkpIE5TQXJyYXk8TlNTdHJpbmcgKj4gKmFsd2F5c1Jl
dmFsaWRhdGVkVVJMU2NoZW1lcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygx
MC4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBkaXNrQ2FjaGVTcGVjdWxhdGl2ZVZh
bGlkYXRpb25FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjAp
KTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIGlnbm9yZVN5bmNocm9ub3VzTWVzc2FnaW5n
VGltZW91dHNGb3JUZXN0aW5nIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEw
LjApKTsKIAogQGVuZAogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS1VzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1VzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmUuaAko
cmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9f
V0tVc2VyQ29udGVudEV4dGVuc2lvblN0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQxLDEzICs0
MSwxMyBAQCBXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KDEwLjExKSwgaW9zKDkuCiAKIEBlbmQK
IAotV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgX1dLVXNlckNvbnRlbnRFeHRlbnNpb25zRG9t
YWluIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkp
OworV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgX1dLVXNlckNvbnRlbnRFeHRlbnNpb25zRG9t
YWluIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIAogdHlwZWRl
ZiBOU19FTlVNKE5TSW50ZWdlciwgX1dLVXNlckNvbnRlbnRFeHRlbnNpb25TdG9yZUVycm9yQ29k
ZSkgewogICAgIF9XS1VzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmVFcnJvckxvb2t1cEZhaWxlZCA9
IDEsCiAgICAgX1dLVXNlckNvbnRlbnRFeHRlbnNpb25TdG9yZUVycm9yVmVyc2lvbk1pc21hdGNo
LAogICAgIF9XS1VzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmVFcnJvckNvbXBpbGVGYWlsZWQsCiAg
ICAgX1dLVXNlckNvbnRlbnRFeHRlbnNpb25TdG9yZUVycm9yUmVtb3ZlRmFpbGVkLAotfSBXS19B
UElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK30gV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiAjZW5kaWYgLy8gV0tf
QVBJX0VOQUJMRUQKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
VXNlckNvbnRlbnRXb3JsZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvX1dLVXNlckNvbnRlbnRXb3JsZC5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1VzZXJDb250ZW50V29ybGQuaAko
d29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQAogCiBOU19BU1NVTUVfTk9OTlVMTF9CRUdJ
TgogCi1XS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RC
QSkpCitXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKQogQGludGVy
ZmFjZSBfV0tVc2VyQ29udGVudFdvcmxkIDogTlNPYmplY3QKIAogKyAoX1dLVXNlckNvbnRlbnRX
b3JsZCAqKXdvcmxkV2l0aE5hbWU6KE5TU3RyaW5nICopbmFtZTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVXNlckluaXRpYXRlZEFjdGlvbi5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVXNlckluaXRpYXRl
ZEFjdGlvbi5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS1VzZXJJbml0aWF0ZWRBY3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMzEs
NyArMzEsNyBAQAogCiBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogCi1XS19DTEFTU19BVkFJTEFC
TEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpCitXS19DTEFTU19BVkFJTEFC
TEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKQogQGludGVyZmFjZSBfV0tVc2VySW5pdGlhdGVk
QWN0aW9uIDogTlNPYmplY3QKIAogLSAodm9pZCljb25zdW1lOwpJbmRleDogU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tVc2VyU3R5bGVTaGVldC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVXNlclN0eWxlU2hlZXQuaAko
cmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9f
V0tVc2VyU3R5bGVTaGVldC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3ICszMyw3IEBAIE5TX0FT
U1VNRV9OT05OVUxMX0JFR0lOCiAKIEBjbGFzcyBfV0tVc2VyQ29udGVudFdvcmxkOwogCi1XS19D
TEFTU19BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpCitXS19D
TEFTU19BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKQogQGludGVyZmFjZSBfV0tV
c2VyU3R5bGVTaGVldCA6IE5TT2JqZWN0IDxOU0NvcHlpbmc+CiAKIEBwcm9wZXJ0eSAobm9uYXRv
bWljLCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKnNvdXJjZTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0ZURhdGFTaXplLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlRGF0YVNpemUu
aAkocmV2aXNpb24gMjA1NTU3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tXZWJzaXRlRGF0YVNpemUuaAkod29ya2luZyBjb3B5KQpAQCAtMzEsNyArMzEsNyBAQAog
CiBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogCi1XS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpCitXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KDEw
LjEyKSwgaW9zKDEwLjApKQogQGludGVyZmFjZSBfV0tXZWJzaXRlRGF0YVNpemUgOiBOU09iamVj
dAogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIHVuc2lnbmVkIGxvbmcgbG9uZyB0
b3RhbFNpemU7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5Gb3JtRGVsZWdhdGVQcml2YXRlLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29j
b2EvV0tXZWJQcm9jZXNzUGx1Z0luRm9ybURlbGVnYXRlUHJpdmF0ZS5oCShyZXZpc2lvbiAyMDU1
NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2Nv
YS9XS1dlYlByb2Nlc3NQbHVnSW5Gb3JtRGVsZWdhdGVQcml2YXRlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ0LDcgKzQ0LDcgQEAKIAogLy8gVGhlIHJldHVybiB2YWx1ZSBpcyBleHBvc2VkIGluIHRo
ZSBVSSBwcm9jZXNzIHZpYSB0aGUgdXNlck9iamVjdCBwcm9wZXJ0eSBvZiB0aGUgX1dLRm9ybUlu
cHV0U2Vzc2lvbiBvYmplY3QuCiAtIChOU09iamVjdCA8TlNTZWN1cmVDb2Rpbmc+ICopX3dlYlBy
b2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJy
b3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgd2lsbEJlZ2luSW5wdXRTZXNzaW9u
Rm9yRWxlbWVudDooV0tXZWJQcm9jZXNzUGx1Z0luTm9kZUhhbmRsZSAqKW5vZGUgaW5GcmFtZToo
V0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUgKilmcmFtZTsKLS0gKE5TT2JqZWN0IDxOU1NlY3VyZUNv
ZGluZz4gKilfd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjooV0tXZWJQ
cm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY29udHJvbGxlciB3aWxsQmVn
aW5JbnB1dFNlc3Npb25Gb3JFbGVtZW50OihXS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlICop
bm9kZSBpbkZyYW1lOihXS1dlYlByb2Nlc3NQbHVnSW5GcmFtZSAqKWZyYW1lIHVzZXJJc0ludGVy
YWN0aW5nOihCT09MKXVzZXJJc0ludGVyYWN0aW5nIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lP
U19UQkEpKTsKKy0gKE5TT2JqZWN0IDxOU1NlY3VyZUNvZGluZz4gKilfd2ViUHJvY2Vzc1BsdWdJ
bkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjooV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRl
eHRDb250cm9sbGVyICopY29udHJvbGxlciB3aWxsQmVnaW5JbnB1dFNlc3Npb25Gb3JFbGVtZW50
OihXS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlICopbm9kZSBpbkZyYW1lOihXS1dlYlByb2Nl
c3NQbHVnSW5GcmFtZSAqKWZyYW1lIHVzZXJJc0ludGVyYWN0aW5nOihCT09MKXVzZXJJc0ludGVy
YWN0aW5nIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjApKTsKIAogLSAoQk9PTClfd2ViUHJvY2Vz
c1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlclNob3VsZE5vdGlmeU9uRm9ybUNoYW5nZXM6
KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXI7
CiAtICh2b2lkKV93ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOihXS1dl
YlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKiljb250cm9sbGVyIGRpZEFz
c29jaWF0ZUZvcm1Db250cm9sczooTlNBcnJheSAqKWVsZW1lbnRzOwpJbmRleDogU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1
Z0luRnJhbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5GcmFtZS5oCShyZXZpc2lvbiAy
MDU1NTcpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9D
b2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5GcmFtZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00Nyw4ICs0
Nyw4IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTApLCBpb3MoOC4KIAogLy8gUmV0
dXJucyBVUkxzIG9yZGVyZWQgYnkgcmVzb2x1dGlvbiBpbiBkZXNjZW5kaW5nIG9yZGVyLgogLy8g
RklYTUU6IFRoZXNlIHNob3VsZCBiZSB0YWdnZWQgbm9ubnVsbC4KLUBwcm9wZXJ0eSAobm9uYXRv
bWljLCByZWFkb25seSkgTlNBcnJheTxOU1VSTCAqPiAqYXBwbGVUb3VjaEljb25VUkxzIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHByb3Bl
cnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU0FycmF5PE5TVVJMICo+ICpmYXZpY29uVVJMcyBX
S19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNBcnJheTxOU1VSTCAqPiAqYXBwbGVUb3Vj
aEljb25VUkxzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKK0Bw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNBcnJheTxOU1VSTCAqPiAqZmF2aWNvblVS
THMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCiAtIChKU0Nv
bnRleHQgKilqc0NvbnRleHRGb3JXb3JsZDooV0tXZWJQcm9jZXNzUGx1Z0luU2NyaXB0V29ybGQg
Kil3b3JsZDsKIC0gKFdLV2ViUHJvY2Vzc1BsdWdJbkhpdFRlc3RSZXN1bHQgKiloaXRUZXN0OihD
R1BvaW50KXBvaW50OwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luU2NyaXB0V29ybGQuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9X
S1dlYlByb2Nlc3NQbHVnSW5TY3JpcHRXb3JsZC5oCShyZXZpc2lvbiAyMDU1NTcpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nl
c3NQbHVnSW5TY3JpcHRXb3JsZC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICszOCw3IEBAIFdL
X0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTApLCBpb3MoOC4KIEBwcm9wZXJ0eSAobm9uYXRv
bWljLCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKm5hbWU7CiAKIC0gKHZvaWQpY2xlYXJXcmFw
cGVyczsKLS0gKHZvaWQpbWFrZUFsbFNoYWRvd1Jvb3RzT3BlbiBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpbWFrZUFsbFNoYWRv
d1Jvb3RzT3BlbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAK
IEBlbmQKIAo=
</data>
<flag name="review"
          id="311552"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>