<?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>189561</bug_id>
          
          <creation_ts>2018-09-12 15:07:32 -0700</creation_ts>
          <short_desc>Update availability annotations to match the macOS and iOS SDKs in the Xcode 10 GM seed</short_desc>
          <delta_ts>2018-09-12 17:15:58 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1459124</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2018-09-12 15:07:32 -0700</bug_when>
    <thetext>Patch forthcoming</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459126</commentid>
    <comment_count>1</comment_count>
      <attachid>349587</attachid>
    <who name="">mitz</who>
    <bug_when>2018-09-12 15:10:30 -0700</bug_when>
    <thetext>Created attachment 349587
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459178</commentid>
    <comment_count>2</comment_count>
    <who name="">mitz</who>
    <bug_when>2018-09-12 17:14:39 -0700</bug_when>
    <thetext>Committed &lt;https://trac.webkit.org/r235961&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459180</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-12 17:15:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/44400653&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349587</attachid>
            <date>2018-09-12 15:10:30 -0700</date>
            <delta_ts>2018-09-12 15:20:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189561-20180912151029.patch</filename>
            <type>text/plain</type>
            <size>65648</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzU5NTMpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM5IEBACisyMDE4LTA5LTEyICBEYW4gQmVybnN0
ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIGF2YWlsYWJpbGl0eSBhbm5v
dGF0aW9ucyB0byBtYXRjaCB0aGUgbWFjT1MgYW5kIGlPUyBTREtzIGluIHRoZSBYY29kZSAxMCBH
TSBzZWVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODk1NjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBD
aGFuZ2VkIFdLX01BQ19UQkEgYW5kIFdLX0lPU19UQkEgdG8gMTAuMTQgYW5kIDEyLjAsIHJlc3Bl
Y3RpdmVseSwgaW4gYWxsIGRlY2xhcmF0aW9ucyB0aGF0CisgICAgICAgIGFwcGVhciBpbiB0aGUg
R00gc2VlZCBTREtzLgorCisgICAgICAgICogU2hhcmVkL0FQSS9Db2NvYS9fV0tSZW5kZXJpbmdQ
cm9ncmVzc0V2ZW50cy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tNZW51SXRl
bUlkZW50aWZpZXJzUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tO
YXZpZ2F0aW9uRGVsZWdhdGVQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tQcm9jZXNzUG9vbFByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dL
VUlEZWxlZ2F0ZVByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLVXNl
ckNvbnRlbnRDb250cm9sbGVyUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29j
b2EvV0tWaWV3UHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3Q29uZmlndXJhdGlvblByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29h
L1dLV2ViVmlld1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vi
c2l0ZURhdGFSZWNvcmRQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tBdHRhY2htZW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRv
bWF0aW9uRGVsZWdhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dG9t
YXRpb25TZXNzaW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRvbWF0
aW9uU2Vzc2lvbkRlbGVnYXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tG
b3JtSW5wdXRTZXNzaW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnB1
dERlbGVnYXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tMaW5rSWNvblBh
cmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1Byb2Nlc3NQb29s
Q29uZmlndXJhdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0
ZVBvbGljaWVzLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29j
b2EvV0tXZWJQcm9jZXNzUGx1Z0luRWRpdGluZ0RlbGVnYXRlLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luU2NyaXB0V29y
bGQuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9tYWMvV0tET01E
b2N1bWVudC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL21hYy9X
S1dlYlByb2Nlc3NQbHVnSW4uaDoKKwogMjAxOC0wOS0xMSAgU2ltb24gRnJhc2VyICA8c2ltb24u
ZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIEdyYXBoaWNzTGF5ZXJzIHJlZi1jb3Vu
dGVkLCBzbyB0aGVpciB0cmVlIGNhbiBwZXJzaXN0IHdoZW4gZGlzY29ubmVjdGVkIGZyb20gUmVu
ZGVyTGF5ZXJCYWNraW5ncwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL0NvY29hL19X
S1JlbmRlcmluZ1Byb2dyZXNzRXZlbnRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9T
aGFyZWQvQVBJL0NvY29hL19XS1JlbmRlcmluZ1Byb2dyZXNzRXZlbnRzLmgJKHJldmlzaW9uIDIz
NTk0OSkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9Db2NvYS9fV0tSZW5kZXJpbmdQcm9n
cmVzc0V2ZW50cy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw3ICszNSw3IEBAIHR5cGVkZWYgTlNf
T1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tSZW5kZXIKICAgICBfV0tSZW5kZXJpbmdQcm9ncmVzc0V2
ZW50Rmlyc3RMYXlvdXRBZnRlclN1cHByZXNzZWRJbmNyZW1lbnRhbFJlbmRlcmluZyBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKSA9IDEgPDwgNCwKICAgICBfV0tSZW5k
ZXJpbmdQcm9ncmVzc0V2ZW50Rmlyc3RQYWludEFmdGVyU3VwcHJlc3NlZEluY3JlbWVudGFsUmVu
ZGVyaW5nIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjExKSwgaW9zKDkuMCkpID0gMSA8PCA1
LAogICAgIF9XS1JlbmRlcmluZ1Byb2dyZXNzRXZlbnRGaXJzdFBhaW50IFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KDEwLjExKSwgaW9zKDkuMCkpID0gMSA8PCA2LAotICAgIF9XS1JlbmRlcmluZ1By
b2dyZXNzRXZlbnREaWRSZW5kZXJTaWduaWZpY2FudEFtb3VudE9mVGV4dCBXS19BUElfQVZBSUxB
QkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKSA9IDEgPDwgNywKKyAgICBf
V0tSZW5kZXJpbmdQcm9ncmVzc0V2ZW50RGlkUmVuZGVyU2lnbmlmaWNhbnRBbW91bnRPZlRleHQg
V0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpID0gMSA8PCA3LAogfSBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMCksIGlvcyg4LjApKTsKIAogI2VuZGlmCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tNZW51SXRlbUlkZW50aWZpZXJz
UHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS01lbnVJdGVtSWRlbnRpZmllcnNQcml2YXRlLmgJKHJldmlzaW9uIDIzNTk0OSkKKysrIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS01lbnVJdGVtSWRlbnRpZmllcnNQcml2
YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDEwICszMywxMCBAQAogV0tfRVhQT1JUIGV4dGVy
biBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckNvcHkgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogV0tfRVhQT1JUIGV4dGVybiBOU1N0cmlu
ZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckNvcHlJbWFnZSBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiBXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICog
Y29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyQ29weUxpbmsgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goMTAuMTIpLCBpb3MoMTAuMCkpOwotV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0
IF9XS01lbnVJdGVtSWRlbnRpZmllckNvcHlNZWRpYUxpbmsgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5TU3Ry
aW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyQ29weU1lZGlhTGluayBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiBXS19FWFBPUlQgZXh0ZXJuIE5TU3Ry
aW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyRG93bmxvYWRJbWFnZSBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiBXS19FWFBPUlQgZXh0ZXJuIE5TU3Ry
aW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyRG93bmxvYWRMaW5rZWRGaWxlIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKLVdLX0VYUE9SVCBleHRlcm4g
TlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJEb3dubG9hZE1lZGlhIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworV0tfRVhQ
T1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckRvd25sb2Fk
TWVkaWEgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogV0tfRVhQ
T1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllckdvQmFjayBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiBXS19FWFBPUlQgZXh0
ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyR29Gb3J3YXJkIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIFdLX0VYUE9SVCBleHRlcm4g
TlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJJbnNwZWN0RWxlbWVudCBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CkBAIC00NSwxMiArNDUsMTIg
QEAgV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbgogV0tfRVhQT1JUIGV4
dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllck9wZW5JbWFnZUluTmV3
V2luZG93IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIFdLX0VY
UE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJPcGVuTGlu
ayBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiBXS19FWFBPUlQg
ZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyT3BlbkxpbmtJbk5l
d1dpbmRvdyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7Ci1XS19F
WFBPUlQgZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyT3Blbk1l
ZGlhSW5OZXdXaW5kb3cgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhX
S19JT1NfVEJBKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0
ZW1JZGVudGlmaWVyT3Blbk1lZGlhSW5OZXdXaW5kb3cgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
MTAuMTQpLCBpb3MoMTIuMCkpOwogV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9X
S01lbnVJdGVtSWRlbnRpZmllclBhc3RlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwg
aW9zKDEwLjApKTsKIFdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRl
bUlkZW50aWZpZXJSZWxvYWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAu
MCkpOwogV0tfRVhQT1JUIGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRp
ZmllclNlYXJjaFdlYiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7
CiBXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVy
U2hvd0hpZGVNZWRpYUNvbnRyb2xzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9z
KDEwLjApKTsKLVdLX0VYUE9SVCBleHRlcm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlk
ZW50aWZpZXJUb2dnbGVFbmhhbmNlZEZ1bGxTY3JlZW4gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
V0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitXS19FWFBPUlQgZXh0ZXJuIE5TU3RyaW5n
ICogY29uc3QgX1dLTWVudUl0ZW1JZGVudGlmaWVyVG9nZ2xlRW5oYW5jZWRGdWxsU2NyZWVuIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKIFdLX0VYUE9SVCBleHRl
cm4gTlNTdHJpbmcgKiBjb25zdCBfV0tNZW51SXRlbUlkZW50aWZpZXJUb2dnbGVGdWxsU2NyZWVu
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEwLjApKTsKIAogV0tfRVhQT1JU
IGV4dGVybiBOU1N0cmluZyAqIGNvbnN0IF9XS01lbnVJdGVtSWRlbnRpZmllclNoYXJlTWVudSBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CkluZGV4OiBTb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uRGVsZWdhdGVQcml2YXRlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdh
dGlvbkRlbGVnYXRlUHJpdmF0ZS5oCShyZXZpc2lvbiAyMzU5NDkpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uRGVsZWdhdGVQcml2YXRlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQ1LDcgKzQ1LDcgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgX1dL
UGx1Z2luTW9kdQogICAgIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lMb2FkVW5zYW5kYm94ZWQs
CiAgICAgX1dLUGx1Z2luTW9kdWxlTG9hZFBvbGljeUJsb2NrZWRGb3JTZWN1cml0eSwKICAgICBf
V0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5QmxvY2tlZEZvckNvbXBhdGliaWxpdHksCi19IFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK30gV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goMTAuMTQpKTsKICNlbmRpZgogCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBfV0tQcm9j
ZXNzVGVybWluYXRpb25SZWFzb24pIHsKQEAgLTUzLDcgKzUzLDcgQEAgdHlwZWRlZiBOU19FTlVN
KE5TSW50ZWdlciwgX1dLUHJvY2Vzc1RlcgogICAgIF9XS1Byb2Nlc3NUZXJtaW5hdGlvblJlYXNv
bkV4Y2VlZGVkQ1BVTGltaXQsCiAgICAgX1dLUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uUmVxdWVz
dGVkQnlDbGllbnQsCiAgICAgX1dLUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uQ3Jhc2gsCi19IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworfSBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKIHN0YXRpYyBjb25z
dCBXS05hdmlnYXRpb25BY3Rpb25Qb2xpY3kgX1dLTmF2aWdhdGlvbkFjdGlvblBvbGljeURvd25s
b2FkID0gKFdLTmF2aWdhdGlvbkFjdGlvblBvbGljeSkoV0tOYXZpZ2F0aW9uQWN0aW9uUG9saWN5
QWxsb3cgKyAxKTsKIHN0YXRpYyBjb25zdCBXS05hdmlnYXRpb25BY3Rpb25Qb2xpY3kgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTEpLCBpb3MoOS4wKSkgX1dLTmF2aWdhdGlvbkFjdGlvblBv
bGljeUFsbG93V2l0aG91dFRyeWluZ0FwcExpbmsgPSAoV0tOYXZpZ2F0aW9uQWN0aW9uUG9saWN5
KShfV0tOYXZpZ2F0aW9uQWN0aW9uUG9saWN5RG93bmxvYWQgKyAxKTsKQEAgLTk0LDcgKzk0LDcg
QEAgc3RhdGljIGNvbnN0IFdLTmF2aWdhdGlvblJlc3BvbnNlUG9saWN5IAogLSAodm9pZClfd2Vi
VmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBkaWRGYWlsTmF2aWdhdGlvbjooV0tOYXZpZ2F0aW9u
ICopbmF2aWdhdGlvbiB3aXRoRXJyb3I6KE5TRXJyb3IgKillcnJvciB1c2VySW5mbzooaWQgPE5T
U2VjdXJlQ29kaW5nPil1c2VySW5mbyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSwg
aW9zKDExLjMpKTsKIAogLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBVUkw6
KE5TVVJMICopdXJsIGNvbnRlbnRSdWxlTGlzdElkZW50aWZpZXJzOihOU0FycmF5PE5TU3RyaW5n
ICo+ICopaWRlbnRpZmllcnMgbm90aWZpY2F0aW9uczooTlNBcnJheTxOU1N0cmluZyAqPiAqKW5v
dGlmaWNhdGlvbnMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlvcygxMS4zKSk7
Ci0tICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHdlYkNvbnRlbnRQcm9jZXNz
RGlkVGVybWluYXRlV2l0aFJlYXNvbjooX1dLUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uKXJlYXNv
biBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsK
Ky0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgd2ViQ29udGVudFByb2Nlc3NE
aWRUZXJtaW5hdGVXaXRoUmVhc29uOihfV0tQcm9jZXNzVGVybWluYXRpb25SZWFzb24pcmVhc29u
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKIAogI2lmIFRBUkdF
VF9PU19JUEhPTkUKIC0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkU3Rh
cnRMb2FkRm9yUXVpY2tMb29rRG9jdW1lbnRJbk1haW5GcmFtZVdpdGhGaWxlTmFtZTooTlNTdHJp
bmcgKilmaWxlTmFtZSB1dGk6KE5TU3RyaW5nICopdXRpOwpAQCAtMTA1LDcgKzEwNSw3IEBAIHN0
YXRpYyBjb25zdCBXS05hdmlnYXRpb25SZXNwb25zZVBvbGljeSAKIC0gKHZvaWQpX3dlYlZpZXc6
KFdLV2ViVmlldyAqKXdlYlZpZXcgcmVzb2x2ZVdlYkdMTG9hZFBvbGljeUZvclVSTDooTlNVUkwg
Kil1cmwgZGVjaXNpb25IYW5kbGVyOih2b2lkICheKShfV0tXZWJHTExvYWRQb2xpY3kpKWRlY2lz
aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSk7CiAtICh2b2lkKV93
ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHdpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbToo
V0tCYWNrRm9yd2FyZExpc3RJdGVtICopaXRlbSBpblBhZ2VDYWNoZTooQk9PTClpblBhZ2VDYWNo
ZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSk7CiAtICh2b2lkKV93ZWJWaWV3OihX
S1dlYlZpZXcgKil3ZWJWaWV3IGRpZEZhaWxUb0luaXRpYWxpemVQbHVnSW5XaXRoSW5mbzooTlNE
aWN0aW9uYXJ5ICopaW5mbyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSk7Ci0tICh2
b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRpZEJsb2NrSW5zZWN1cmVQbHVnaW5W
ZXJzaW9uV2l0aEluZm86KE5TRGljdGlvbmFyeSAqKWluZm8gV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSkpOworLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBk
aWRCbG9ja0luc2VjdXJlUGx1Z2luVmVyc2lvbldpdGhJbmZvOihOU0RpY3Rpb25hcnkgKilpbmZv
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSk7CiAtICh2b2lkKV93ZWJWaWV3OihXS1dl
YlZpZXcgKil3ZWJWaWV3IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGlj
eTooX1dLUGx1Z2luTW9kdWxlTG9hZFBvbGljeSlwb2xpY3kgcGx1Z2luSW5mbzooTlNEaWN0aW9u
YXJ5ICopaW5mbyBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCAoXikoX1dLUGx1Z2luTW9kdWxlTG9h
ZFBvbGljeSBwb2xpY3ksIE5TU3RyaW5nICogdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbikpY29t
cGxldGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwogLSAo
dm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBiYWNrRm9yd2FyZExpc3RJdGVtQWRk
ZWQ6KFdLQmFja0ZvcndhcmRMaXN0SXRlbSAqKWl0ZW1BZGRlZCByZW1vdmVkOihOU0FycmF5PFdL
QmFja0ZvcndhcmRMaXN0SXRlbSAqPiAqKWl0ZW1zUmVtb3ZlZCBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMy40KSk7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCShyZXZpc2lvbiAy
MzU5NDkpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmVmZXJlbmNl
c1ByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtMTI5LDcgKzEyOSw3IEBAIHR5cGVkZWYgTlNf
RU5VTShOU0ludGVnZXIsIF9XS0VkaXRhYmxlTGkKIAogQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0RWRpdGFibGVMaW5rQmVoYXZpb3I6KSBfV0tFZGl0YWJsZUxpbmtCZWhhdmlvciBf
ZWRpdGFibGVMaW5rQmVoYXZpb3IgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlv
cygxMS4zKSk7CiAKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFWRm91bmRhdGlv
bkVuYWJsZWQ6KSBCT09MIF9hdkZvdW5kYXRpb25FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjEwKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0
ZXI9X3NldEFWRm91bmRhdGlvbkVuYWJsZWQ6KSBCT09MIF9hdkZvdW5kYXRpb25FbmFibGVkIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEwKSwgaW9zKDEyLjApKTsKIAogKyAoTlNBcnJheTxf
V0tJbnRlcm5hbERlYnVnRmVhdHVyZSAqPiAqKV9pbnRlcm5hbERlYnVnRmVhdHVyZXMgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAtIChCT09M
KV9pc0VuYWJsZWRGb3JJbnRlcm5hbERlYnVnRmVhdHVyZTooX1dLSW50ZXJuYWxEZWJ1Z0ZlYXR1
cmUgKilmZWF0dXJlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOwpAQCAtMTQxLDExICsxNDEsMTEgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdl
ciwgX1dLRWRpdGFibGVMaQogLSAoQk9PTClfaXNFbmFibGVkRm9yRXhwZXJpbWVudGFsRmVhdHVy
ZTooX1dLRXhwZXJpbWVudGFsRmVhdHVyZSAqKWZlYXR1cmUgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goMTAuMTIpLCBpb3MoMTAuMCkpOwogLSAodm9pZClfc2V0RW5hYmxlZDooQk9PTCl2YWx1ZSBm
b3JFeHBlcmltZW50YWxGZWF0dXJlOihfV0tFeHBlcmltZW50YWxGZWF0dXJlICopZmVhdHVyZSBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7CiAKLUBwcm9wZXJ0eSAo
bm9uYXRvbWljLCBzZXR0ZXI9X3NldFNob3VsZEVuYWJsZVRleHRBdXRvc2l6aW5nQm9vc3Q6KSBC
T09MIF9zaG91bGRFbmFibGVUZXh0QXV0b3NpemluZ0Jvb3N0IFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMs
IHNldHRlcj1fc2V0U2hvdWxkRW5hYmxlVGV4dEF1dG9zaXppbmdCb29zdDopIEJPT0wgX3Nob3Vs
ZEVuYWJsZVRleHRBdXRvc2l6aW5nQm9vc3QgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQp
LCBpb3MoMTIuMCkpOwogCi1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRTdG9yYWdl
QWNjZXNzUHJvbXB0c0VuYWJsZWQ6KSBCT09MIF9zdG9yYWdlQWNjZXNzUHJvbXB0c0VuYWJsZWQg
V0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1A
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRDb2xvckZpbHRlckVuYWJsZWQ6KSBCT09M
IF9jb2xvckZpbHRlckVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSks
IGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRQdW5j
aE91dFdoaXRlQmFja2dyb3VuZHNJbkRhcmtNb2RlOikgQk9PTCBfcHVuY2hPdXRXaGl0ZUJhY2tn
cm91bmRzSW5EYXJrTW9kZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9z
KFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFN0b3JhZ2VB
Y2Nlc3NQcm9tcHRzRW5hYmxlZDopIEJPT0wgX3N0b3JhZ2VBY2Nlc3NQcm9tcHRzRW5hYmxlZCBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CitAcHJvcGVydHkgKG5v
bmF0b21pYywgc2V0dGVyPV9zZXRDb2xvckZpbHRlckVuYWJsZWQ6KSBCT09MIF9jb2xvckZpbHRl
ckVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOworQHBy
b3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0UHVuY2hPdXRXaGl0ZUJhY2tncm91bmRzSW5E
YXJrTW9kZTopIEJPT0wgX3B1bmNoT3V0V2hpdGVCYWNrZ3JvdW5kc0luRGFya01vZGUgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogQHByb3BlcnR5IChub25hdG9t
aWMsIHNldHRlcj1fc2V0TG93UG93ZXJWaWRlb0F1ZGlvQnVmZmVyU2l6ZUVuYWJsZWQ6KSBCT09M
IF9sb3dQb3dlclZpZGVvQXVkaW9CdWZmZXJTaXplRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIAogI2lmICFUQVJHRVRfT1NfSVBI
T05FCkBAIC0xNzQsMjkgKzE3NCwyOSBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBfV0tF
ZGl0YWJsZUxpCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNZWRpYVNvdXJjZUVu
YWJsZWQ6KSBCT09MIF9tZWRpYVNvdXJjZUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
MTAuMTMuNCkpOwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Vmlld0dlc3R1cmVE
ZWJ1Z2dpbmdFbmFibGVkOikgQk9PTCBfdmlld0dlc3R1cmVEZWJ1Z2dpbmdFbmFibGVkIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0
ZXI9X3NldENTU0FuaW1hdGlvblRyaWdnZXJzRW5hYmxlZDopIEJPT0wgX2Nzc0FuaW1hdGlvblRy
aWdnZXJzRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSk7Ci1AcHJvcGVy
dHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRXZWJBbmltYXRpb25zQ1NTSW50ZWdyYXRpb25FbmFi
bGVkOikgQk9PTCBfd2ViQW5pbWF0aW9uc0NTU0ludGVncmF0aW9uRW5hYmxlZCBXS19BUElfQVZB
SUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRXZWJBbmltYXRpb25zQ1NTSW50ZWdyYXRpb25FbmFibGVkOikgQk9PTCBfd2ViQW5pbWF0
aW9uc0NTU0ludGVncmF0aW9uRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCkp
OwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0U3RhbmRhcmRGb250RmFtaWx5Oikg
TlNTdHJpbmcgKl9zdGFuZGFyZEZvbnRGYW1pbHkgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAu
MTMuNCkpOwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Tm90aWZpY2F0aW9uc0Vu
YWJsZWQ6KSBCT09MIF9ub3RpZmljYXRpb25zRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29z
eCgxMC4xMy40KSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRCYWNrc3BhY2VL
ZXlOYXZpZ2F0aW9uRW5hYmxlZDopIEJPT0wgX2JhY2tzcGFjZUtleU5hdmlnYXRpb25FbmFibGVk
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWlj
LCBzZXR0ZXI9X3NldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2s6KSBCT09MIF9hbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKLUBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFwcGxlUGF5RW5hYmxlZDopIEJPT0wgX2Fw
cGxlUGF5RW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci1AcHJv
cGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRETlNQcmVmZXRjaGluZ0VuYWJsZWQ6KSBCT09M
IF9kbnNQcmVmZXRjaGluZ0VuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RC
QSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0SW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU6KSBCT09MIF9pbmxpbmVNZWRpYVBsYXliYWNr
UmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbnZpc2libGVNZWRp
YUF1dG9wbGF5Tm90UGVybWl0dGVkOikgQk9PTCBfaW52aXNpYmxlTWVkaWFBdXRvcGxheU5vdFBl
cm1pdHRlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci1AcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXRMZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQ6KSBC
T09MIF9sZWdhY3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0TWFpbkNv
bnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZDopIEJPT0wgX21haW5Db250ZW50VXNlckdl
c3R1cmVPdmVycmlkZUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkp
OwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0TWVkaWFTdHJlYW1FbmFibGVkOikg
Qk9PTCBfbWVkaWFTdHJlYW1FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19U
QkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldE5lZWRzU3RvcmFnZUFjY2Vz
c0Zyb21GaWxlVVJMc1F1aXJrOikgQk9PTCBfbmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxz
UXVpcmsgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwotQHByb3BlcnR5IChu
b25hdG9taWMsIHNldHRlcj1fc2V0UERGUGx1Z2luRW5hYmxlZDopIEJPT0wgX3BkZlBsdWdpbkVu
YWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwotQHByb3BlcnR5IChu
b25hdG9taWMsIHNldHRlcj1fc2V0UmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxheWJhY2s6
KSBCT09MIF9yZXF1aXJlc1VzZXJHZXN0dXJlRm9yQXVkaW9QbGF5YmFjayBXS19BUElfQVZBSUxB
QkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9z
ZXRSZXF1aXJlc1VzZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFjazopIEJPT0wgX3JlcXVpcmVzVXNl
ckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19U
QkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNlcnZpY2VDb250cm9sc0Vu
YWJsZWQ6KSBCT09MIF9zZXJ2aWNlQ29udHJvbHNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KFdLX01BQ19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNob3dz
VG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0OikgQk9PTCBfc2hvd3NUb29sVGlwT3ZlclRydW5jYXRl
ZFRleHQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwotQHByb3BlcnR5IChu
b25hdG9taWMsIHNldHRlcj1fc2V0VGV4dEFyZWFzQXJlUmVzaXphYmxlOikgQk9PTCBfdGV4dEFy
ZWFzQXJlUmVzaXphYmxlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKLUBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFVzZUdpYW50VGlsZXM6KSBCT09MIF91c2VH
aWFudFRpbGVzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKLUBwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFdhbnRzQmFsYW5jZWRTZXREZWZlcnNMb2FkaW5nQmVo
YXZpb3I6KSBCT09MIF93YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBz
ZXR0ZXI9X3NldFdlYkF1ZGlvRW5hYmxlZDopIEJPT0wgX3dlYkF1ZGlvRW5hYmxlZCBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRBZ2dyZXNzaXZlVGlsZVJldGVudGlvbkVuYWJsZWQ6KSBCT09MIF9hZ2dyZXNzaXZl
VGlsZVJldGVudGlvbkVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkp
OworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5
YmFjazopIEJPT0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2sgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTQpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFwcGxlUGF5
RW5hYmxlZDopIEJPT0wgX2FwcGxlUGF5RW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgx
MC4xNCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0RE5TUHJlZmV0Y2hpbmdF
bmFibGVkOikgQk9PTCBfZG5zUHJlZmV0Y2hpbmdFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjE0KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbmxpbmVNZWRp
YVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZTopIEJPT0wgX2lubGluZU1lZGlh
UGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjE0KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbnZpc2libGVN
ZWRpYUF1dG9wbGF5Tm90UGVybWl0dGVkOikgQk9PTCBfaW52aXNpYmxlTWVkaWFBdXRvcGxheU5v
dFBlcm1pdHRlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCkpOworQHByb3BlcnR5IChu
b25hdG9taWMsIHNldHRlcj1fc2V0TGVnYWN5RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkOikgQk9P
TCBfbGVnYWN5RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjE0KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNYWluQ29udGVudFVz
ZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkOikgQk9PTCBfbWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92
ZXJyaWRlRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCkpOworQHByb3BlcnR5
IChub25hdG9taWMsIHNldHRlcj1fc2V0TWVkaWFTdHJlYW1FbmFibGVkOikgQk9PTCBfbWVkaWFT
dHJlYW1FbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSk7CitAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXROZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWly
azopIEJPT0wgX25lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KDEwLjE0KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRQ
REZQbHVnaW5FbmFibGVkOikgQk9PTCBfcGRmUGx1Z2luRW5hYmxlZCBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xNCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0UmVxdWly
ZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxheWJhY2s6KSBCT09MIF9yZXF1aXJlc1VzZXJHZXN0dXJl
Rm9yQXVkaW9QbGF5YmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCkpOworQHByb3Bl
cnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0UmVxdWlyZXNVc2VyR2VzdHVyZUZvclZpZGVvUGxh
eWJhY2s6KSBCT09MIF9yZXF1aXJlc1VzZXJHZXN0dXJlRm9yVmlkZW9QbGF5YmFjayBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xNCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1f
c2V0U2VydmljZUNvbnRyb2xzRW5hYmxlZDopIEJPT0wgX3NlcnZpY2VDb250cm9sc0VuYWJsZWQg
V0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBz
ZXR0ZXI9X3NldFNob3dzVG9vbFRpcE92ZXJUcnVuY2F0ZWRUZXh0OikgQk9PTCBfc2hvd3NUb29s
VGlwT3ZlclRydW5jYXRlZFRleHQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpKTsKK0Bw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFRleHRBcmVhc0FyZVJlc2l6YWJsZTopIEJP
T0wgX3RleHRBcmVhc0FyZVJlc2l6YWJsZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCkp
OworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0VXNlR2lhbnRUaWxlczopIEJPT0wg
X3VzZUdpYW50VGlsZXMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpKTsKK0Bwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFdhbnRzQmFsYW5jZWRTZXREZWZlcnNMb2FkaW5nQmVo
YXZpb3I6KSBCT09MIF93YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yIFdLX0FQ
SV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRXZWJBdWRpb0VuYWJsZWQ6KSBCT09MIF93ZWJBdWRpb0VuYWJsZWQgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTQpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFn
Z3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZDopIEJPT0wgX2FnZ3Jlc3NpdmVUaWxlUmV0ZW50
aW9uRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCkpOwogI2VuZGlmCiAKIEBl
bmQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1Byb2Nlc3NQb29s
UHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1Byb2Nlc3NQb29sUHJpdmF0ZS5oCShyZXZpc2lvbiAyMzU5NDkpCisrKyBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcm9jZXNzUG9vbFByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtNDIsNyArNDIsNyBAQAogCiArIChXS1Byb2Nlc3NQb29sICopX3NoYXJlZFByb2Nl
c3NQb29sOwogCi0rIChOU0FycmF5PFdLUHJvY2Vzc1Bvb2wgKj4gKilfYWxsUHJvY2Vzc1Bvb2xz
Rm9yVGVzdGluZyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKKysgKE5TQXJyYXk8V0tQcm9jZXNzUG9vbCAqPiAqKV9hbGxQcm9jZXNzUG9vbHNG
b3JUZXN0aW5nIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKIAog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRp
b24gKl9jb25maWd1cmF0aW9uOwogCkBAIC03NCwxOCArNzQsMTggQEAKIC0gKHZvaWQpX2F1dG9t
YXRpb25DYXBhYmlsaXRpZXNEaWRDaGFuZ2UgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIp
LCBpb3MoMTAuMCkpOwogLSAodm9pZClfc2V0QXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRp
b25TZXNzaW9uICopYXV0b21hdGlvblNlc3Npb24gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAu
MTIpLCBpb3MoMTAuMCkpOwogCi0tICh2b2lkKV9hZGRTdXBwb3J0ZWRQbHVnaW46KE5TU3RyaW5n
ICopIGRvbWFpbiBuYW1lZDooTlNTdHJpbmcgKikgbmFtZSB3aXRoTWltZVR5cGVzOiAoTlNTZXQ8
TlNTdHJpbmcgKj4gKikgbWltZVR5cGVzIHdpdGhFeHRlbnNpb25zOiAoTlNTZXQ8TlNTdHJpbmcg
Kj4gKikgZXh0ZW5zaW9ucyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9z
KFdLX0lPU19UQkEpKTsKLS0gKHZvaWQpX2NsZWFyU3VwcG9ydGVkUGx1Z2lucyBXS19BUElfQVZB
SUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX2Fk
ZFN1cHBvcnRlZFBsdWdpbjooTlNTdHJpbmcgKikgZG9tYWluIG5hbWVkOihOU1N0cmluZyAqKSBu
YW1lIHdpdGhNaW1lVHlwZXM6IChOU1NldDxOU1N0cmluZyAqPiAqKSBtaW1lVHlwZXMgd2l0aEV4
dGVuc2lvbnM6IChOU1NldDxOU1N0cmluZyAqPiAqKSBleHRlbnNpb25zIFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKKy0gKHZvaWQpX2NsZWFyU3VwcG9ydGVkUGx1
Z2lucyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKLS0gKHZv
aWQpX3JlZ2lzdGVyVVJMU2NoZW1lQXNDYW5EaXNwbGF5T25seUlmQ2FuUmVxdWVzdDooTlNTdHJp
bmcgKilzY2hlbWUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19J
T1NfVEJBKSk7CistICh2b2lkKV9yZWdpc3RlclVSTFNjaGVtZUFzQ2FuRGlzcGxheU9ubHlJZkNh
blJlcXVlc3Q6KE5TU3RyaW5nICopc2NoZW1lIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0
KSwgaW9zKDEyLjApKTsKIAogKyAoaW50KV93ZWJDb250ZW50UHJvY2Vzc1hQQ01haW4gV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAKIC8vIFRl
c3Qgb25seS4gU2hvdWxkIGJlIGNhbGxlZCBvbmx5IHdoaWxlIG5vIHdlYiBjb250ZW50IHByb2Nl
c3NlcyBhcmUgcnVubmluZy4KIC0gKHZvaWQpX3Rlcm1pbmF0ZVN0b3JhZ2VQcm9jZXNzOwogLSAo
dm9pZClfdGVybWluYXRlTmV0d29ya1Byb2Nlc3M7Ci0tICh2b2lkKV90ZXJtaW5hdGVTZXJ2aWNl
V29ya2VyUHJvY2Vzc2VzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOwotLSAodm9pZClfZGlzYWJsZVNlcnZpY2VXb3JrZXJQcm9jZXNzVGVybWlu
YXRpb25EZWxheSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKKy0gKHZvaWQpX3Rlcm1pbmF0ZVNlcnZpY2VXb3JrZXJQcm9jZXNzZXMgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOworLSAodm9pZClfZGlzYWJsZVNl
cnZpY2VXb3JrZXJQcm9jZXNzVGVybWluYXRpb25EZWxheSBXS19BUElfQVZBSUxBQkxFKG1hY29z
eCgxMC4xNCksIGlvcygxMi4wKSk7CiAKIC8vIFRlc3Qgb25seS4KIC0gKHBpZF90KV9uZXR3b3Jr
UHJvY2Vzc0lkZW50aWZpZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMpLCBpb3MoMTEu
MCkpOwpAQCAtOTQsMTIgKzk0LDEyIEBACiAvLyBUZXN0IG9ubHkuCiAtIChzaXplX3QpX3dlYlBy
b2Nlc3NDb3VudCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4wKSk7CiAt
IChCT09MKV9oYXNQcmV3YXJtZWRXZWJQcm9jZXNzIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotLSAoc2l6ZV90KV93ZWJQcm9jZXNzQ291bnRJ
Z25vcmluZ1ByZXdhcm1lZCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9z
KFdLX0lPU19UQkEpKTsKKy0gKHNpemVfdClfd2ViUHJvY2Vzc0NvdW50SWdub3JpbmdQcmV3YXJt
ZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogLSAoc2l6ZV90
KV9wbHVnaW5Qcm9jZXNzQ291bnQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlv
cygxMS4zKSk7Ci0tIChzaXplX3QpX3NlcnZpY2VXb3JrZXJQcm9jZXNzQ291bnQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistIChzaXplX3Qp
X3NlcnZpY2VXb3JrZXJQcm9jZXNzQ291bnQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQp
LCBpb3MoMTIuMCkpOwogLSAodm9pZClfc3luY05ldHdvcmtQcm9jZXNzQ29va2llcyBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4wKSk7Ci0tICh2b2lkKV9tYWtlTmV4dFdl
YlByb2Nlc3NMYXVuY2hGYWlsRm9yVGVzdGluZyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLS0gKHZvaWQpX21ha2VOZXh0TmV0d29ya1Byb2Nl
c3NMYXVuY2hGYWlsRm9yVGVzdGluZyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJB
KSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX21ha2VOZXh0V2ViUHJvY2Vzc0xhdW5jaEZh
aWxGb3JUZXN0aW5nIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsK
Ky0gKHZvaWQpX21ha2VOZXh0TmV0d29ya1Byb2Nlc3NMYXVuY2hGYWlsRm9yVGVzdGluZyBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKIC8vIFRlc3Qgb25seS4g
UmV0dXJucyB3ZWIgcHJvY2Vzc2VzIHJ1bm5pbmcgd2ViIHBhZ2VzIChkb2VzIG5vdCBpbmNsdWRl
IHdlYiBwcm9jZXNzZXMgcnVubmluZyBzZXJ2aWNlIHdvcmtlcnMpCiAtIChzaXplX3QpX3dlYlBh
Z2VDb250ZW50UHJvY2Vzc0NvdW50IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpLCBp
b3MoMTEuMykpOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVUlE
ZWxlZ2F0ZVByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tVSURlbGVnYXRlUHJpdmF0ZS5oCShyZXZpc2lvbiAyMzU5NDkpCisrKyBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVSURlbGVnYXRlUHJpdmF0ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTUsMTEgKzExNSwxMSBAQCBzdHJ1Y3QgVUlFZGdlSW5zZXRzOwogLSAo
dm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBlZGl0b3JTdGF0ZURpZENoYW5nZToo
TlNEaWN0aW9uYXJ5ICopZWRpdG9yU3RhdGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMu
NCksIGlvcygxMS4zKSk7CiAKIC0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcg
ZGlkUmVtb3ZlQXR0YWNobWVudDooX1dLQXR0YWNobWVudCAqKWF0dGFjaG1lbnQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlvcygxMS4zKSk7Ci0tICh2b2lkKV93ZWJWaWV3OihX
S1dlYlZpZXcgKil3ZWJWaWV3IGRpZEluc2VydEF0dGFjaG1lbnQ6KF9XS0F0dGFjaG1lbnQgKilh
dHRhY2htZW50IHdpdGhTb3VyY2U6KE5TU3RyaW5nICopc291cmNlIFdLX0FQSV9BVkFJTEFCTEUo
bWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworLSAodm9pZClfd2ViVmlldzoo
V0tXZWJWaWV3ICopd2ViVmlldyBkaWRJbnNlcnRBdHRhY2htZW50OihfV0tBdHRhY2htZW50ICop
YXR0YWNobWVudCB3aXRoU291cmNlOihOU1N0cmluZyAqKXNvdXJjZSBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKLS0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmll
dyAqKXdlYlZpZXcgZGlkUmVzaWduSW5wdXRFbGVtZW50U3Ryb25nUGFzc3dvcmRBcHBlYXJhbmNl
V2l0aFVzZXJJbmZvOihpZCA8TlNTZWN1cmVDb2Rpbmc+KXVzZXJJbmZvIFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworLSAodm9pZClfd2ViVmll
dzooV0tXZWJWaWV3ICopd2ViVmlldyBkaWRSZXNpZ25JbnB1dEVsZW1lbnRTdHJvbmdQYXNzd29y
ZEFwcGVhcmFuY2VXaXRoVXNlckluZm86KGlkIDxOU1NlY3VyZUNvZGluZz4pdXNlckluZm8gV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogCi0tICh2b2lkKV93ZWJW
aWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHJlcXVlc3RTdG9yYWdlQWNjZXNzUGFuZWxGb3JEb21h
aW46KE5TU3RyaW5nICopcmVxdWVzdGluZ0RvbWFpbiB1bmRlckN1cnJlbnREb21haW46KE5TU3Ry
aW5nICopY3VycmVudERvbWFpbiBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCAoXikoQk9PTCByZXN1
bHQpKWNvbXBsZXRpb25IYW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEp
LCBpb3MoV0tfSU9TX1RCQSkpOworLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmll
dyByZXF1ZXN0U3RvcmFnZUFjY2Vzc1BhbmVsRm9yRG9tYWluOihOU1N0cmluZyAqKXJlcXVlc3Rp
bmdEb21haW4gdW5kZXJDdXJyZW50RG9tYWluOihOU1N0cmluZyAqKWN1cnJlbnREb21haW4gY29t
cGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKEJPT0wgcmVzdWx0KSljb21wbGV0aW9uSGFuZGxlciBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKICNpZiBUQVJHRVRf
T1NfSVBIT05FCiAtIChCT09MKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHNob3VsZElu
Y2x1ZGVBcHBMaW5rQWN0aW9uc0ZvckVsZW1lbnQ6KF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZvICop
ZWxlbWVudCBXS19BUElfQVZBSUxBQkxFKGlvcyg5LjApKTsKQEAgLTE2MCw4ICsxNjAsOCBAQCBz
dHJ1Y3QgVUlFZGdlSW5zZXRzOwogLSAoTlNJbnRlZ2VyKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3
ZWJWaWV3IGRhdGFPd25lckZvckRyYWdTZXNzaW9uOihpZCA8VUlEcmFnU2Vzc2lvbj4pc2Vzc2lv
biBXS19BUElfQVZBSUxBQkxFKGlvcygxMS4wKSk7CiAjZW5kaWYKIC0gKHZvaWQpX3dlYlZpZXc6
KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkQ2hhbmdlU2FmZUFyZWFTaG91bGRBZmZlY3RPYnNjdXJl
ZEluc2V0czooQk9PTClzYWZlQXJlYVNob3VsZEFmZmVjdE9ic2N1cmVkSW5zZXRzIFdLX0FQSV9B
VkFJTEFCTEUoaW9zKDExLjApKTsKLS0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZp
ZXcgZGlkUHJlc2VudEZvY3VzZWRFbGVtZW50Vmlld0NvbnRyb2xsZXI6KFVJVmlld0NvbnRyb2xs
ZXIgKiljb250cm9sbGVyIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKLS0gKHZv
aWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkRGlzbWlzc0ZvY3VzZWRFbGVtZW50
Vmlld0NvbnRyb2xsZXI6KFVJVmlld0NvbnRyb2xsZXIgKiljb250cm9sbGVyIFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdl
YlZpZXcgZGlkUHJlc2VudEZvY3VzZWRFbGVtZW50Vmlld0NvbnRyb2xsZXI6KFVJVmlld0NvbnRy
b2xsZXIgKiljb250cm9sbGVyIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEyLjApKTsKKy0gKHZvaWQp
X3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkRGlzbWlzc0ZvY3VzZWRFbGVtZW50Vmll
d0NvbnRyb2xsZXI6KFVJVmlld0NvbnRyb2xsZXIgKiljb250cm9sbGVyIFdLX0FQSV9BVkFJTEFC
TEUoaW9zKDEyLjApKTsKICNlbHNlIC8vIFRBUkdFVF9PU19JUEhPTkUKIC0gKHZvaWQpX3ByZXBh
cmVGb3JJbW1lZGlhdGVBY3Rpb25BbmltYXRpb25Gb3JXZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJW
aWV3IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpKTsKIC0gKHZvaWQpX2NhbmNlbElt
bWVkaWF0ZUFjdGlvbkFuaW1hdGlvbkZvcldlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCkpOwpAQCAtMTkwLDcgKzE5MCw3IEBAIHN0cnVj
dCBVSUVkZ2VJbnNldHM7CiAtICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IHVu
YXZhaWxhYmxlUGx1Z0luQnV0dG9uQ2xpY2tlZFdpdGhSZWFzb246KF9XS1BsdWdJblVuYXZhaWxh
YmlsaXR5UmVhc29uKXJlYXNvbiBwbHVnSW5JbmZvOihOU0RpY3Rpb25hcnkgKilwbHVnSW5JbmZv
OwogLSAoTlNNZW51ICopX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgY29udGV4dE1lbnU6
KE5TTWVudSAqKW1lbnUgZm9yRWxlbWVudDooX1dLQ29udGV4dE1lbnVFbGVtZW50SW5mbyAqKWVs
ZW1lbnQgV0tfQVBJX0RFUFJFQ0FURURfV0lUSF9SRVBMQUNFTUVOVCgiX3dlYlZpZXc6Z2V0Q29u
dGV4dE1lbnVGcm9tUHJvcG9zZWRNZW51OmZvckVsZW1lbnQ6dXNlckluZm86Y29tcGxldGlvbkhh
bmRsZXI6IiwgbWFjb3N4KDEwLjEyLCBXS19NQUNfVEJBKSk7CiAtIChOU01lbnUgKilfd2ViVmll
dzooV0tXZWJWaWV3ICopd2ViVmlldyBjb250ZXh0TWVudTooTlNNZW51ICopbWVudSBmb3JFbGVt
ZW50OihfV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvICopZWxlbWVudCB1c2VySW5mbzooaWQgPE5T
U2VjdXJlQ29kaW5nPil1c2VySW5mbyBXS19BUElfREVQUkVDQVRFRF9XSVRIX1JFUExBQ0VNRU5U
KCJfd2ViVmlldzpnZXRDb250ZXh0TWVudUZyb21Qcm9wb3NlZE1lbnU6Zm9yRWxlbWVudDp1c2Vy
SW5mbzpjb21wbGV0aW9uSGFuZGxlcjoiLCBtYWNvc3goMTAuMTIsIFdLX01BQ19UQkEpKTsKLS0g
KHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZ2V0Q29udGV4dE1lbnVGcm9tUHJv
cG9zZWRNZW51OihOU01lbnUgKiltZW51IGZvckVsZW1lbnQ6KF9XS0NvbnRleHRNZW51RWxlbWVu
dEluZm8gKillbGVtZW50IHVzZXJJbmZvOihpZCA8TlNTZWN1cmVDb2Rpbmc+KXVzZXJJbmZvIGNv
bXBsZXRpb25IYW5kbGVyOih2b2lkICheKShOU01lbnUgKikpY29tcGxldGlvbkhhbmRsZXIgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOworLSAodm9pZClfd2ViVmlldzooV0tX
ZWJWaWV3ICopd2ViVmlldyBnZXRDb250ZXh0TWVudUZyb21Qcm9wb3NlZE1lbnU6KE5TTWVudSAq
KW1lbnUgZm9yRWxlbWVudDooX1dLQ29udGV4dE1lbnVFbGVtZW50SW5mbyAqKWVsZW1lbnQgdXNl
ckluZm86KGlkIDxOU1NlY3VyZUNvZGluZz4pdXNlckluZm8gY29tcGxldGlvbkhhbmRsZXI6KHZv
aWQgKF4pKE5TTWVudSAqKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29z
eCgxMC4xNCkpOwogLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBkaWRQZXJm
b3JtRHJhZ09wZXJhdGlvbjooQk9PTCloYW5kbGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpKTsKICNlbmRpZiAvLyBUQVJHRVRfT1NfSVBIT05FCiAKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VzZXJDb250ZW50Q29udHJvbGxlclByaXZhdGUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVc2Vy
Q29udGVudENvbnRyb2xsZXJQcml2YXRlLmgJKHJldmlzaW9uIDIzNTk0OSkKKysrIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VzZXJDb250ZW50Q29udHJvbGxlclByaXZhdGUu
aAkod29ya2luZyBjb3B5KQpAQCAtMzcsNyArMzcsNyBAQAogLSAodm9pZClfcmVtb3ZlVXNlclNj
cmlwdDooV0tVc2VyU2NyaXB0ICopdXNlclNjcmlwdCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgx
MC4xMiksIGlvcygxMC4wKSk7CiAtICh2b2lkKV9yZW1vdmVBbGxVc2VyU2NyaXB0c0Fzc29jaWF0
ZWRXaXRoVXNlckNvbnRlbnRXb3JsZDooX1dLVXNlckNvbnRlbnRXb3JsZCAqKXVzZXJDb250ZW50
V29ybGQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAuMCkpOwogCi0tICh2
b2lkKV9hZGRVc2VyU2NyaXB0SW1tZWRpYXRlbHk6KFdLVXNlclNjcmlwdCAqKXVzZXJTY3JpcHQg
V0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Cist
ICh2b2lkKV9hZGRVc2VyU2NyaXB0SW1tZWRpYXRlbHk6KFdLVXNlclNjcmlwdCAqKXVzZXJTY3Jp
cHQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogCiAtICh2b2lk
KV9hZGRVc2VyQ29udGVudEZpbHRlcjooX1dLVXNlckNvbnRlbnRGaWx0ZXIgKil1c2VyQ29udGVu
dEZpbHRlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKTsKIC0gKHZv
aWQpX3JlbW92ZVVzZXJDb250ZW50RmlsdGVyOihOU1N0cmluZyAqKXVzZXJDb250ZW50RmlsdGVy
TmFtZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMSksIGlvcyg5LjApKTsKSW5kZXg6IFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ZpZXdQcml2YXRlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaAko
cmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
Vmlld1ByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtODQsNyArODQsNyBAQAogQHByb3BlcnR5
IChyZWFkb25seSkgTlNDb2xvciAqX3BhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvcjsKIEBwcm9w
ZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0NvbG9yICp1bmRlcmxheUNvbG9yOwogCi1AcHJvcGVy
dHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRCYWNrZ3JvdW5kQ29sb3I6KSBOU0NvbG9yICpfYmFj
a2dyb3VuZENvbG9yIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEJhY2tncm91bmRDb2xvcjopIE5TQ29sb3IgKl9i
YWNrZ3JvdW5kQ29sb3IgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpKTsKIAogI2lmIFdL
X0FQSV9FTkFCTEVECiBAcHJvcGVydHkgKHN0cm9uZywgbm9uYXRvbWljLCBzZXR0ZXI9X3NldElu
c3BlY3RvckF0dGFjaG1lbnRWaWV3OikgTlNWaWV3ICpfaW5zcGVjdG9yQXR0YWNobWVudFZpZXcg
V0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTEpKTsKQEAgLTE0NCw3ICsxNDQsNyBAQAogCiAt
ICh2b2lkKV9kb0FmdGVyTmV4dFByZXNlbnRhdGlvblVwZGF0ZToodm9pZCAoXikodm9pZCkpdXBk
YXRlQmxvY2sgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCkpOwogCi1AcHJvcGVydHkg
KG5vbmF0b21pYywgcmVhZHdyaXRlLCBzZXR0ZXI9X3NldFVzZVN5c3RlbUFwcGVhcmFuY2U6KSBC
T09MIF91c2VTeXN0ZW1BcHBlYXJhbmNlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19U
QkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkd3JpdGUsIHNldHRlcj1fc2V0VXNlU3lz
dGVtQXBwZWFyYW5jZTopIEJPT0wgX3VzZVN5c3RlbUFwcGVhcmFuY2UgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goMTAuMTQpKTsKIAogQGVuZAogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvblByaXZhdGUuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlv
blByaXZhdGUuaAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTcwLDE5ICs3MCwxOSBAQCB0eXBlZGVmIE5TX0VOVU0oTlNVSW50ZWdlciwgX1dLRHJhZ0xp
ZnRECiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRXYWl0c0ZvclBhaW50QWZ0ZXJW
aWV3RGlkTW92ZVRvV2luZG93OikgQk9PTCBfd2FpdHNGb3JQYWludEFmdGVyVmlld0RpZE1vdmVU
b1dpbmRvdyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMi4zKSwgaW9zKDEwLjMpKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldENvbnRyb2xsZWRCeUF1dG9tYXRpb246LCBn
ZXR0ZXI9X2lzQ29udHJvbGxlZEJ5QXV0b21hdGlvbikgQk9PTCBfY29udHJvbGxlZEJ5QXV0b21h
dGlvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMi4zKSwgaW9zKDEwLjMpKTsKIEBwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFwcGxpY2F0aW9uTWFuaWZlc3Q6KSBfV0tBcHBs
aWNhdGlvbk1hbmlmZXN0ICpfYXBwbGljYXRpb25NYW5pZmVzdCBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMy40KSwgaW9zKDExLjMpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9
X3NldENvbG9yRmlsdGVyRW5hYmxlZDopIEJPT0wgX2NvbG9yRmlsdGVyRW5hYmxlZCBXS19BUElf
QVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEluY29tcGxldGVJbWFnZUJvcmRlckVuYWJsZWQ6KSBC
T09MIF9pbmNvbXBsZXRlSW1hZ2VCb3JkZXJFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0RHJhd3NCYWNrZ3JvdW5kOikgQk9PTCBfZHJhd3NCYWNrZ3JvdW5kIFdLX0FQSV9B
VkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotQHByb3BlcnR5
IChub25hdG9taWMsIHNldHRlcj1fc2V0U2hvdWxkRGVmZXJBc3luY2hyb25vdXNTY3JpcHRzVW50
aWxBZnRlckRvY3VtZW50TG9hZDopIEJPT0wgX3Nob3VsZERlZmVyQXN5bmNocm9ub3VzU2NyaXB0
c1VudGlsQWZ0ZXJEb2N1bWVudExvYWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RC
QSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRD
b2xvckZpbHRlckVuYWJsZWQ6KSBCT09MIF9jb2xvckZpbHRlckVuYWJsZWQgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0SW5jb21wbGV0ZUltYWdlQm9yZGVyRW5hYmxlZDopIEJPT0wgX2luY29tcGxldGVJ
bWFnZUJvcmRlckVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIu
MCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0RHJhd3NCYWNrZ3JvdW5kOikg
Qk9PTCBfZHJhd3NCYWNrZ3JvdW5kIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9z
KDEyLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNob3VsZERlZmVyQXN5
bmNocm9ub3VzU2NyaXB0c1VudGlsQWZ0ZXJEb2N1bWVudExvYWQ6KSBCT09MIF9zaG91bGREZWZl
ckFzeW5jaHJvbm91c1NjcmlwdHNVbnRpbEFmdGVyRG9jdW1lbnRMb2FkIFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKIAogI2lmIFRBUkdFVF9PU19JUEhPTkUKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsd2F5c1J1bnNBdEZvcmVncm91bmRQcmlv
cml0eTopIEJPT0wgX2Fsd2F5c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eSBXS19BUElfQVZBSUxB
QkxFKGlvcyg5XzApKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldElubGluZU1l
ZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlOikgQk9PTCBfaW5saW5lTWVk
aWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUgV0tfQVBJX0FWQUlMQUJMRShp
b3MoMTAuMCkpOwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbjopIEJPT0wgX2FsbG93c0lubGluZU1lZGlhUGxh
eWJhY2tBZnRlckZ1bGxzY3JlZW4gIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjApKTsKIEBwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldERyYWdMaWZ0RGVsYXk6KSBfV0tEcmFnTGlmdERl
bGF5IF9kcmFnTGlmdERlbGF5IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDExLjApKTsKLUBwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFRleHRJbnRlcmFjdGlvbkdlc3R1cmVzRW5hYmxlZDop
IEJPT0wgX3RleHRJbnRlcmFjdGlvbkdlc3R1cmVzRW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKGlv
cyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRMb25nUHJl
c3NBY3Rpb25zRW5hYmxlZDopIEJPT0wgX2xvbmdQcmVzc0FjdGlvbnNFbmFibGVkIFdLX0FQSV9B
VkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9
X3NldFN5c3RlbVByZXZpZXdFbmFibGVkOikgQk9PTCBfc3lzdGVtUHJldmlld0VuYWJsZWQgV0tf
QVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNl
dHRlcj1fc2V0VGV4dEludGVyYWN0aW9uR2VzdHVyZXNFbmFibGVkOikgQk9PTCBfdGV4dEludGVy
YWN0aW9uR2VzdHVyZXNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEyLjApKTsKK0Bwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldExvbmdQcmVzc0FjdGlvbnNFbmFibGVkOikgQk9P
TCBfbG9uZ1ByZXNzQWN0aW9uc0VuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOwor
QHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0U3lzdGVtUHJldmlld0VuYWJsZWQ6KSBC
T09MIF9zeXN0ZW1QcmV2aWV3RW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKGlvcygxMi4wKSk7CiAj
ZWxzZQogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0U2hvd3NVUkxzSW5Ub29sVGlw
czopIEJPT0wgX3Nob3dzVVJMc0luVG9vbFRpcHMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAu
MTIpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFNlcnZpY2VDb250cm9sc0Vu
YWJsZWQ6KSBCT09MIF9zZXJ2aWNlQ29udHJvbHNFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjEyKSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3UHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmgJKHJldmlzaW9uIDIzNTk0OSkKKysrIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI1NSw3ICsyNTUsNyBAQCB0eXBlZGVmIE5TX09QVElPTlMoTlNVSW50ZWdlciwgX1dL
UmVjdEVkCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRSdWJiZXJCYW5kaW5nRW5h
YmxlZDopIF9XS1JlY3RFZGdlIF9ydWJiZXJCYW5kaW5nRW5hYmxlZCBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xMy40KSk7CiAKIEBwcm9wZXJ0eSAocmVhZG9ubHkpIE5TQ29sb3IgKl9wYWdl
RXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3I7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9z
ZXRCYWNrZ3JvdW5kQ29sb3I6KSBOU0NvbG9yICpfYmFja2dyb3VuZENvbG9yIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9
X3NldEJhY2tncm91bmRDb2xvcjopIE5TQ29sb3IgKl9iYWNrZ3JvdW5kQ29sb3IgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTQpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3Nl
dERyYXdzQmFja2dyb3VuZDopIEJPT0wgX2RyYXdzQmFja2dyb3VuZDsKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldFRvcENvbnRlbnRJbnNldDopIENHRmxvYXQgX3RvcENvbnRlbnRJ
bnNldDsKIApAQCAtMjY2LDcgKzI2Niw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2Vy
LCBfV0tSZWN0RWQKIAogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0V2luZG93T2Nj
bHVzaW9uRGV0ZWN0aW9uRW5hYmxlZDopIEJPT0wgX3dpbmRvd09jY2x1c2lvbkRldGVjdGlvbkVu
YWJsZWQ7CiAKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNJbnRlZ2VyIF9zcGVs
bENoZWNrZXJEb2N1bWVudFRhZyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7
CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TSW50ZWdlciBfc3BlbGxDaGVja2Vy
RG9jdW1lbnRUYWcgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpKTsKIAogLSAodm9pZClf
c2V0U2hvdWxkU3VwcHJlc3NGaXJzdFJlc3BvbmRlckNoYW5nZXM6KEJPT0wpc2hvdWxkU3VwcHJl
c3M7CiAKQEAgLTM4MiwxMCArMzgyLDEwIEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2Vy
LCBfV0tSZWN0RWQKIC0gKHZvaWQpa2V5Ym9hcmRBY2Nlc3NvcnlCYXJQcmV2aW91cyBXS19BUElf
QVZBSUxBQkxFKGlvcygxMC4wKSk7CiAtICh2b2lkKWRpc21pc3NGb3JtQWNjZXNzb3J5VmlldyBX
S19BUElfQVZBSUxBQkxFKGlvcygxMC4zKSk7CiAtICh2b2lkKXNlbGVjdEZvcm1BY2Nlc3NvcnlQ
aWNrZXJSb3c6KGludClyb3dJbmRleCBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4zKSk7Ci1AcHJv
cGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TU3RyaW5nICp0ZXh0Q29udGVudFR5cGVGb3JU
ZXN0aW5nIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9u
YXRvbWljLCByZWFkb25seSkgTlNTdHJpbmcgKnNlbGVjdEZvcm1Qb3BvdmVyVGl0bGUgV0tfQVBJ
X0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5KSBOU1N0cmluZyAqZm9ybUlucHV0TGFiZWwgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9T
X1RCQSkpOwotLSAodm9pZClzZXRUaW1lUGlja2VyVmFsdWVUb0hvdXI6KE5TSW50ZWdlcilob3Vy
IG1pbnV0ZTooTlNJbnRlZ2VyKW1pbnV0ZSBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJB
KSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TU3RyaW5nICp0ZXh0Q29udGVu
dFR5cGVGb3JUZXN0aW5nIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEyLjApKTsKK0Bwcm9wZXJ0eSAo
bm9uYXRvbWljLCByZWFkb25seSkgTlNTdHJpbmcgKnNlbGVjdEZvcm1Qb3BvdmVyVGl0bGUgV0tf
QVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5
KSBOU1N0cmluZyAqZm9ybUlucHV0TGFiZWwgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOwor
LSAodm9pZClzZXRUaW1lUGlja2VyVmFsdWVUb0hvdXI6KE5TSW50ZWdlcilob3VyIG1pbnV0ZToo
TlNJbnRlZ2VyKW1pbnV0ZSBXS19BUElfQVZBSUxBQkxFKGlvcygxMi4wKSk7CiAKIC0gKHZvaWQp
X2ludm9rZVNoYXJlU2hlZXRXaXRoUmVzb2x1dGlvbjooQk9PTClyZXNvbHZlZCBXS19BUElfQVZB
SUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CiAKQEAgLTQwOCw3ICs0MDgsNyBAQCB0eXBlZGVmIE5T
X09QVElPTlMoTlNVSW50ZWdlciwgX1dLUmVjdEVkCiAKIC0gKE5TRGljdGlvbmFyeSAqKV9wcm9w
ZXJ0aWVzT2ZMYXllcldpdGhJRDoodW5zaWduZWQgbG9uZyBsb25nKWxheWVySUQgV0tfQVBJX0FW
QUlMQUJMRShpb3MoMTEuMCkpOwogLSAodm9pZClfc2ltdWxhdGVMb25nUHJlc3NBY3Rpb25BdExv
Y2F0aW9uOihDR1BvaW50KWxvY2F0aW9uIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDExLjApKTsKLS0g
KHZvaWQpX3NpbXVsYXRlVGV4dEVudGVyZWQ6KE5TU3RyaW5nICopdGV4dCBXS19BUElfQVZBSUxB
QkxFKGlvcyhXS19JT1NfVEJBKSk7CistICh2b2lkKV9zaW11bGF0ZVRleHRFbnRlcmVkOihOU1N0
cmluZyAqKXRleHQgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOwogCiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHkpIENHUmVjdCBfZHJhZ0NhcmV0UmVjdCBXS19BUElfQVZBSUxBQkxF
KGlvcygxMS4wKSk7CiAKQEAgLTQxNiw3ICs0MTYsNyBAQCB0eXBlZGVmIE5TX09QVElPTlMoTlNV
SW50ZWdlciwgX1dLUmVjdEVkCiAtICh2b2lkKV9hY2Nlc3NpYmlsaXR5UmV0cmlldmVSZWN0c0F0
U2VsZWN0aW9uT2Zmc2V0OihOU0ludGVnZXIpb2Zmc2V0IHdpdGhUZXh0OihOU1N0cmluZyAqKXRl
eHQgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKE5TQXJyYXk8TlNWYWx1ZSAqPiAqcmVjdHMp
KWNvbXBsZXRpb25IYW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDExLjMpKTsKIC0gKHZvaWQp
X2FjY2Vzc2liaWxpdHlTdG9yZVNlbGVjdGlvbiBXS19BUElfQVZBSUxBQkxFKGlvcygxMS4zKSk7
CiAtICh2b2lkKV9hY2Nlc3NpYmlsaXR5Q2xlYXJTZWxlY3Rpb24gV0tfQVBJX0FWQUlMQUJMRShp
b3MoMTEuMykpOwotLSAoVUlWaWV3ICopX2Z1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgV0tfQVBJ
X0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOworLSAoVUlWaWV3ICopX2Z1bGxTY3JlZW5QbGFj
ZWhvbGRlclZpZXcgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOwogCiAjZWxzZQogLSAodm9p
ZClfZGlzbWlzc0NvbnRlbnRSZWxhdGl2ZUNoaWxkV2luZG93cyBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMy40KSk7CkBAIC00NTEsNyArNDUxLDcgQEAgdHlwZWRlZiBOU19PUFRJT05TKE5T
VUludGVnZXIsIF9XS1JlY3RFZAogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09M
IF9zaG91bGRSZXF1ZXN0Q2FuZGlkYXRlcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMi4z
KSk7CiAtICh2b2lkKV9pbnNlcnRUZXh0OihpZClzdHJpbmcgcmVwbGFjZW1lbnRSYW5nZTooTlNS
YW5nZSlyZXBsYWNlbWVudFJhbmdlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEyLjMpKTsK
IC0gKE5TUmVjdClfY2FuZGlkYXRlUmVjdCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMykp
OwotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWR3cml0ZSwgc2V0dGVyPV9zZXRVc2VTeXN0ZW1B
cHBlYXJhbmNlOikgQk9PTCBfdXNlU3lzdGVtQXBwZWFyYW5jZSBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeChXS19NQUNfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZHdyaXRlLCBzZXR0
ZXI9X3NldFVzZVN5c3RlbUFwcGVhcmFuY2U6KSBCT09MIF91c2VTeXN0ZW1BcHBlYXJhbmNlIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSk7CiAKIC0gKHZvaWQpX3NldEhlYWRlckJhbm5l
ckhlaWdodDooaW50KWhlaWdodCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMi4zKSk7CiAt
ICh2b2lkKV9zZXRGb290ZXJCYW5uZXJIZWlnaHQ6KGludCloZWlnaHQgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goMTAuMTIuMykpOwpAQCAtNDY0LDE0ICs0NjQsMTQgQEAgdHlwZWRlZiBOU19PUFRJ
T05TKE5TVUludGVnZXIsIF9XS1JlY3RFZAogLSAoQ0dGbG9hdClfcGFnZVNjYWxlIFdLX0FQSV9B
VkFJTEFCTEUoaW9zKDEwLjMpKTsKIAogLSAodm9pZClfZG9BZnRlck5leHRQcmVzZW50YXRpb25V
cGRhdGU6KHZvaWQgKF4pKHZvaWQpKXVwZGF0ZUJsb2NrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjEyKSwgaW9zKDEwLjApKTsKLS0gKHZvaWQpX2RvQWZ0ZXJOZXh0UHJlc2VudGF0aW9uVXBk
YXRlV2l0aG91dFdhaXRpbmdGb3JBbmltYXRlZFJlc2l6ZUZvclRlc3Rpbmc6KHZvaWQgKF4pKHZv
aWQpKXVwZGF0ZUJsb2NrIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOworLSAodm9pZClfZG9BZnRlck5leHRQcmVzZW50YXRpb25VcGRhdGVXaXRo
b3V0V2FpdGluZ0ZvckFuaW1hdGVkUmVzaXplRm9yVGVzdGluZzoodm9pZCAoXikodm9pZCkpdXBk
YXRlQmxvY2sgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogLSAo
dm9pZClfZG9BZnRlck5leHRQcmVzZW50YXRpb25VcGRhdGVXaXRob3V0V2FpdGluZ0ZvclBhaW50
aW5nOih2b2lkICheKSh2b2lkKSl1cGRhdGVCbG9jayBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgx
MC4xMi4zKSwgaW9zKDEwLjMpKTsKIC0gKHZvaWQpX2RvQWZ0ZXJOZXh0VmlzaWJsZUNvbnRlbnRS
ZWN0VXBkYXRlOih2b2lkICheKSh2b2lkKSl1cGRhdGVCbG9jayBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMyksIGlvcygxMS4wKSk7CiAKIC0gKHZvaWQpX2Rpc2FibGVCYWNrRm9yd2FyZFNu
YXBzaG90Vm9sYXRpbGl0eUZvclRlc3RpbmcgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIu
MyksIGlvcygxMC4zKSk7CiAtICh2b2lkKV9leGVjdXRlRWRpdENvbW1hbmQ6KE5TU3RyaW5nICop
Y29tbWFuZCBhcmd1bWVudDooTlNTdHJpbmcgKilhcmd1bWVudCBjb21wbGV0aW9uOih2b2lkIChe
KShCT09MKSljb21wbGV0aW9uIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpLCBpb3Mo
MTEuMykpOwogCi0tICh2b2lkKV9kZW55TmV4dFVzZXJNZWRpYVJlcXVlc3QgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistICh2b2lkKV9kZW55
TmV4dFVzZXJNZWRpYVJlcXVlc3QgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3Mo
MTIuMCkpOwogCiAtIChCT09MKV9iZWdpbkJhY2tTd2lwZUZvclRlc3Rpbmc7CiAtIChCT09MKV9j
b21wbGV0ZUJhY2tTd2lwZUZvclRlc3Rpbmc7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVJlY29yZFByaXZhdGUuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVJlY29yZFByaXZh
dGUuaAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2Vic2l0ZURhdGFSZWNvcmRQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDcg
KzQ2LDcgQEAgV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgX1dLV2Vic2l0ZURhdAogCiBAcHJv
cGVydHkgKG51bGxhYmxlLCBub25hdG9taWMsIHJlYWRvbmx5KSBfV0tXZWJzaXRlRGF0YVNpemUg
Kl9kYXRhU2l6ZTsKIAotLSAoTlNBcnJheTxOU1N0cmluZyAqPiAqKV9vcmlnaW5zU3RyaW5ncyBX
S19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0g
KE5TQXJyYXk8TlNTdHJpbmcgKj4gKilfb3JpZ2luc1N0cmluZ3MgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogCiBAZW5kCiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9y
ZVByaXZhdGUuaAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZVByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAt
NDYsMjAgKzQ2LDIwIEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tXZWJzaXQK
IC0gKHZvaWQpX2ZldGNoRGF0YVJlY29yZHNPZlR5cGVzOihOU1NldDxOU1N0cmluZyAqPiAqKWRh
dGFUeXBlcyB3aXRoT3B0aW9uczooX1dLV2Vic2l0ZURhdGFTdG9yZUZldGNoT3B0aW9ucylvcHRp
b25zIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShOU0FycmF5PFdLV2Vic2l0ZURhdGFSZWNv
cmQgKj4gKikpY29tcGxldGlvbkhhbmRsZXI7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0
ZXI9X3NldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkOikgQk9PTCBfcmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0VuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTIpLCBpb3MoMTAu
MCkpOwotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0UmVzb3VyY2VMb2FkU3RhdGlz
dGljc0RlYnVnTW9kZTopIEJPT0wgX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJv
cGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdN
b2RlOikgQk9PTCBfcmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSBXS19BUElfQVZBSUxB
QkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRDYWNoZVN0b3JhZ2VQZXJPcmlnaW5RdW90YTopIE5TVUludGVnZXIgX2NhY2hlU3Rv
cmFnZVBlck9yaWdpblF1b3RhIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpLCBpb3Mo
MTEuMykpOwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Q2FjaGVTdG9yYWdlRGly
ZWN0b3J5OikgTlNTdHJpbmcqIF9jYWNoZVN0b3JhZ2VEaXJlY3RvcnkgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goMTAuMTMuNCksIGlvcygxMS4zKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5OikgTlNTdHJpbmcqIF9z
ZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KDEwLjEzLjQpLCBpb3MoMTEuMykpOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9z
ZXRCb3VuZEludGVyZmFjZUlkZW50aWZpZXI6KSBOU1N0cmluZyAqX2JvdW5kSW50ZXJmYWNlSWRl
bnRpZmllciBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSwgaW9zKDExLjMpKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsbG93c0NlbGx1bGFyQWNjZXNzOikgQk9P
TCBfYWxsb3dzQ2VsbHVsYXJBY2Nlc3MgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCks
IGlvcygxMS4zKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRQcm94eUNvbmZp
Z3VyYXRpb246KSBOU0RpY3Rpb25hcnkgKl9wcm94eUNvbmZpZ3VyYXRpb24gV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5v
bmF0b21pYywgc2V0dGVyPV9zZXRQcm94eUNvbmZpZ3VyYXRpb246KSBOU0RpY3Rpb25hcnkgKl9w
cm94eUNvbmZpZ3VyYXRpb24gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIu
MCkpOwogCiAtICh2b2lkKV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU2V0U2hvdWxkU3VibWl0VGVs
ZW1ldHJ5OihCT09MKXZhbHVlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzKSwgaW9zKDEx
LjApKTsKIC0gKHZvaWQpX3NldFJlc291cmNlTG9hZFN0YXRpc3RpY3NUZXN0aW5nQ2FsbGJhY2s6
KG51bGxhYmxlIHZvaWQgKF4pKFdLV2Vic2l0ZURhdGFTdG9yZSAqLCBOU1N0cmluZyAqKSljYWxs
YmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4wKSk7Ci0tICh2b2lk
KV9nZXRBbGxTdG9yYWdlQWNjZXNzRW50cmllc0ZvcjooV0tXZWJWaWV3ICopd2ViVmlldyBjb21w
bGV0aW9uSGFuZGxlcjoodm9pZCAoXikoTlNBcnJheTxOU1N0cmluZyAqPiAqZG9tYWlucykpY29t
cGxldGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhX
S19JT1NfVEJBKSk7CistICh2b2lkKV9nZXRBbGxTdG9yYWdlQWNjZXNzRW50cmllc0ZvcjooV0tX
ZWJWaWV3ICopd2ViVmlldyBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCAoXikoTlNBcnJheTxOU1N0
cmluZyAqPiAqZG9tYWlucykpY29tcGxldGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goMTAuMTQpLCBpb3MoMTIuMCkpOwogKyAodm9pZClfYWxsb3dXZWJzaXRlRGF0YVJlY29yZHNG
b3JBbGxPcmlnaW5zIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpLCBpb3MoMTEuMykp
OwotLSAoYm9vbClfaGFzUmVnaXN0ZXJlZFNlcnZpY2VXb3JrZXIgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistIChib29sKV9oYXNSZWdpc3Rl
cmVkU2VydmljZVdvcmtlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4w
KSk7CiAKIEBlbmQKIApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19X
S0F0dGFjaG1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLQXR0YWNobWVudC5oCShyZXZpc2lvbiAyMzU5NDkpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLQXR0YWNobWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00
Miw3ICs0Miw3IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlvcygKIEBw
cm9wZXJ0eSAobm9uYXRvbWljKSBfV0tBdHRhY2htZW50RGlzcGxheU1vZGUgbW9kZTsKIEBlbmQK
IAotV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEp
KQorV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSkKIEBpbnRlcmZh
Y2UgX1dLQXR0YWNobWVudEluZm8gOiBOU09iamVjdAogQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWRvbmx5LCBudWxsYWJsZSkgTlNTdHJpbmcgKmNvbnRlbnRUeXBlOwogQHByb3BlcnR5IChub25h
dG9taWMsIHJlYWRvbmx5LCBudWxsYWJsZSkgTlNTdHJpbmcgKm5hbWU7CkBAIC02MSw3ICs2MSw3
IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlvcygKIEBwcm9wZXJ0eSAo
bm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVyPWlzQ29ubmVjdGVkKSBCT09MIGNvbm5lY3RlZCBX
S19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIAog
Ly8gRGVwcmVjYXRlZCBTUEkuCi0tICh2b2lkKXJlcXVlc3RJbmZvOih2b2lkKF4pKF9XS0F0dGFj
aG1lbnRJbmZvICogX051bGxhYmxlLCBOU0Vycm9yICogX051bGxhYmxlKSljb21wbGV0aW9uSGFu
ZGxlciBXS19BUElfREVQUkVDQVRFRF9XSVRIX1JFUExBQ0VNRU5UKCItaW5mbyIsIG1hY29zeChX
S19NQUNfVEJBLCBXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEsIFdLX0lPU19UQkEpKTsKKy0g
KHZvaWQpcmVxdWVzdEluZm86KHZvaWQoXikoX1dLQXR0YWNobWVudEluZm8gKiBfTnVsbGFibGUs
IE5TRXJyb3IgKiBfTnVsbGFibGUpKWNvbXBsZXRpb25IYW5kbGVyIFdLX0FQSV9ERVBSRUNBVEVE
X1dJVEhfUkVQTEFDRU1FTlQoIi1pbmZvIiwgbWFjb3N4KDEwLjE0LCBXS19NQUNfVEJBKSwgaW9z
KDEyLjAsIFdLX0lPU19UQkEpKTsKIC0gKHZvaWQpc2V0RGF0YTooTlNEYXRhICopZGF0YSBuZXdD
b250ZW50VHlwZToobnVsbGFibGUgTlNTdHJpbmcgKiluZXdDb250ZW50VHlwZSBuZXdGaWxlbmFt
ZToobnVsbGFibGUgTlNTdHJpbmcgKiluZXdGaWxlbmFtZSBjb21wbGV0aW9uOih2b2lkKF4gX051
bGxhYmxlKShOU0Vycm9yICogX051bGxhYmxlKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfREVQ
UkVDQVRFRF9XSVRIX1JFUExBQ0VNRU5UKCJQbGVhc2UgdXNlIC1zZXRGaWxlV3JhcHBlcjpjb250
ZW50VHlwZTpjb21wbGV0aW9uOiBpbnN0ZWFkLiIsIG1hY29zeCgxMC4xMy40LCBXS19NQUNfVEJB
KSwgaW9zKDExLjMsIFdLX0lPU19UQkEpKTsKIAogQGVuZApJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dG9tYXRpb25EZWxlZ2F0ZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRvbWF0aW9uRGVsZWdhdGUu
aAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS0F1dG9tYXRpb25EZWxlZ2F0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw4ICszNSw4IEBA
CiAtIChCT09MKV9wcm9jZXNzUG9vbEFsbG93c1JlbW90ZUF1dG9tYXRpb246KFdLUHJvY2Vzc1Bv
b2wgKilwcm9jZXNzUG9vbCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4w
KSk7CiAtICh2b2lkKV9wcm9jZXNzUG9vbDooV0tQcm9jZXNzUG9vbCAqKXByb2Nlc3NQb29sIGRp
ZFJlcXVlc3RBdXRvbWF0aW9uU2Vzc2lvbldpdGhJZGVudGlmaWVyOihOU1N0cmluZyAqKWlkZW50
aWZpZXIgY29uZmlndXJhdGlvbjooX1dLQXV0b21hdGlvblNlc3Npb25Db25maWd1cmF0aW9uICop
Y29uZmlndXJhdGlvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSwgaW9zKDExLjMp
KTsKIAotLSAoTlNTdHJpbmcgKilfcHJvY2Vzc1Bvb2xCcm93c2VyTmFtZUZvckF1dG9tYXRpb246
KFdLUHJvY2Vzc1Bvb2wgKilwcm9jZXNzUG9vbCBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLS0gKE5TU3RyaW5nICopX3Byb2Nlc3NQb29sQnJv
d3NlclZlcnNpb25Gb3JBdXRvbWF0aW9uOihXS1Byb2Nlc3NQb29sICopcHJvY2Vzc1Bvb2wgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistIChO
U1N0cmluZyAqKV9wcm9jZXNzUG9vbEJyb3dzZXJOYW1lRm9yQXV0b21hdGlvbjooV0tQcm9jZXNz
UG9vbCAqKXByb2Nlc3NQb29sIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEy
LjApKTsKKy0gKE5TU3RyaW5nICopX3Byb2Nlc3NQb29sQnJvd3NlclZlcnNpb25Gb3JBdXRvbWF0
aW9uOihXS1Byb2Nlc3NQb29sICopcHJvY2Vzc1Bvb2wgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
MTAuMTQpLCBpb3MoMTIuMCkpOwogQGVuZAogCiAjZW5kaWYgLy8gV0tfQVBJX0VOQUJMRUQKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tBdXRvbWF0aW9uU2Vzc2lv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tB
dXRvbWF0aW9uU2Vzc2lvbi5oCShyZXZpc2lvbiAyMzU5NDkpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvX1dLQXV0b21hdGlvblNlc3Npb24uaAkod29ya2luZyBjb3B5KQpA
QCAtNDcsNyArNDcsNyBAQCBXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KDEwLjEyKSwgaW9zKDEw
CiAKIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aENvbmZpZ3VyYXRpb246KF9XS0F1dG9tYXRpb25T
ZXNzaW9uQ29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24gTlNfREVTSUdOQVRFRF9JTklUSUFM
SVpFUjsKIAotLSAodm9pZCl0ZXJtaW5hdGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFD
X1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistICh2b2lkKXRlcm1pbmF0ZSBXS19BUElfQVZBSUxB
QkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKICNpZiAhVEFSR0VUX09TX0lQSE9ORQog
LSAoQk9PTCl3YXNFdmVudFN5bnRoZXNpemVkRm9yQXV0b21hdGlvbjooTlNFdmVudCAqKWV2ZW50
OwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0F1dG9tYXRpb25T
ZXNzaW9uRGVsZWdhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvX1dLQXV0b21hdGlvblNlc3Npb25EZWxlZ2F0ZS5oCShyZXZpc2lvbiAyMzU5NDkp
CisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLQXV0b21hdGlvblNlc3Np
b25EZWxlZ2F0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw0MiArNDAsNDIgQEAgdHlwZWRlZiBO
U19FTlVNKE5TSW50ZWdlciwgX1dLQXV0b21hdGlvbgogICAgIF9XS0F1dG9tYXRpb25TZXNzaW9u
SmF2YVNjcmlwdERpYWxvZ1R5cGVBbGVydCwKICAgICBfV0tBdXRvbWF0aW9uU2Vzc2lvbkphdmFT
Y3JpcHREaWFsb2dUeXBlQ29uZmlybSwKICAgICBfV0tBdXRvbWF0aW9uU2Vzc2lvbkphdmFTY3Jp
cHREaWFsb2dUeXBlUHJvbXB0LAotfSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJB
KSwgaW9zKFdLX0lPU19UQkEpKTsKK30gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBp
b3MoMTIuMCkpOwogCiB0eXBlZGVmIE5TX0VOVU0oTlNVSW50ZWdlciwgX1dLQXV0b21hdGlvblNl
c3Npb25Ccm93c2luZ0NvbnRleHRPcHRpb25zKSB7CiAgICAgX1dLQXV0b21hdGlvblNlc3Npb25C
cm93c2luZ0NvbnRleHRPcHRpb25zUHJlZmVyTmV3VGFiID0gMSA8PCAwLAotfSBXS19BUElfQVZB
SUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK30gV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogCiBAcHJvdG9jb2wgX1dLQXV0b21h
dGlvblNlc3Npb25EZWxlZ2F0ZSA8TlNPYmplY3Q+CiBAb3B0aW9uYWwKIAogLSAodm9pZClfYXV0
b21hdGlvblNlc3Npb25EaWREaXNjb25uZWN0RnJvbVJlbW90ZTooX1dLQXV0b21hdGlvblNlc3Np
b24gKilhdXRvbWF0aW9uU2Vzc2lvbjsKIAotLSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9X
S0F1dG9tYXRpb25TZXNzaW9uICopYXV0b21hdGlvblNlc3Npb24gcmVxdWVzdE5ld1dlYlZpZXdX
aXRoT3B0aW9uczooX1dLQXV0b21hdGlvblNlc3Npb25Ccm93c2luZ0NvbnRleHRPcHRpb25zKW9w
dGlvbnMgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikoV0tXZWJWaWV3ICogX051bGxhYmxlKSlj
b21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9z
KFdLX0lPU19UQkEpKTsKLS0gKHZvaWQpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9u
U2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIHJlcXVlc3RIaWRlV2luZG93T2ZXZWJWaWV3OihX
S1dlYlZpZXcgKil3ZWJWaWV3IGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKHZvaWQpKWNvbXBs
ZXRpb25IYW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOwotLSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNz
aW9uICopYXV0b21hdGlvblNlc3Npb24gcmVxdWVzdFJlc3RvcmVXaW5kb3dPZldlYlZpZXc6KFdL
V2ViVmlldyAqKXdlYlZpZXcgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikodm9pZCkpY29tcGxl
dGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19J
T1NfVEJBKSk7Ci0tICh2b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Np
b24gKilhdXRvbWF0aW9uU2Vzc2lvbiByZXF1ZXN0TWF4aW1pemVXaW5kb3dPZldlYlZpZXc6KFdL
V2ViVmlldyAqKXdlYlZpZXcgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikodm9pZCkpY29tcGxl
dGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19J
T1NfVEJBKSk7Ci0tICh2b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Np
b24gKilhdXRvbWF0aW9uU2Vzc2lvbiByZXF1ZXN0U3dpdGNoVG9XZWJWaWV3OihXS1dlYlZpZXcg
Kil3ZWJWaWV3IGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKHZvaWQpKWNvbXBsZXRpb25IYW5k
bGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkp
OworLSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNzaW9uICopYXV0
b21hdGlvblNlc3Npb24gcmVxdWVzdE5ld1dlYlZpZXdXaXRoT3B0aW9uczooX1dLQXV0b21hdGlv
blNlc3Npb25Ccm93c2luZ0NvbnRleHRPcHRpb25zKW9wdGlvbnMgY29tcGxldGlvbkhhbmRsZXI6
KHZvaWQoXikoV0tXZWJWaWV3ICogX051bGxhYmxlKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CistICh2b2lkKV9hdXRvbWF0aW9u
U2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiByZXF1ZXN0
SGlkZVdpbmRvd09mV2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBjb21wbGV0aW9uSGFuZGxl
cjoodm9pZCheKSh2b2lkKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29z
eCgxMC4xNCksIGlvcygxMi4wKSk7CistICh2b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0
b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiByZXF1ZXN0UmVzdG9yZVdpbmRvd09m
V2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCheKSh2
b2lkKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlv
cygxMi4wKSk7CistICh2b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Np
b24gKilhdXRvbWF0aW9uU2Vzc2lvbiByZXF1ZXN0TWF4aW1pemVXaW5kb3dPZldlYlZpZXc6KFdL
V2ViVmlldyAqKXdlYlZpZXcgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikodm9pZCkpY29tcGxl
dGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwor
LSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNzaW9uICopYXV0b21h
dGlvblNlc3Npb24gcmVxdWVzdFN3aXRjaFRvV2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBj
b21wbGV0aW9uSGFuZGxlcjoodm9pZCheKSh2b2lkKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAtIChCT09MKV9hdXRvbWF0aW9u
U2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiBpc1Nob3dp
bmdKYXZhU2NyaXB0RGlhbG9nRm9yV2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBXS19BUElf
QVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4wKSk7CiAtICh2b2lkKV9hdXRvbWF0aW9u
U2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiBkaXNtaXNz
Q3VycmVudEphdmFTY3JpcHREaWFsb2dGb3JXZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzKSwgaW9zKDExLjApKTsKIC0gKHZvaWQpX2F1dG9t
YXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIGFj
Y2VwdEN1cnJlbnRKYXZhU2NyaXB0RGlhbG9nRm9yV2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmll
dyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4wKSk7CiAtIChudWxsYWJs
ZSBOU1N0cmluZyAqKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Npb24gKilh
dXRvbWF0aW9uU2Vzc2lvbiBtZXNzYWdlT2ZDdXJyZW50SmF2YVNjcmlwdERpYWxvZ0ZvcldlYlZp
ZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMpLCBp
b3MoMTEuMCkpOwogLSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNz
aW9uICopYXV0b21hdGlvblNlc3Npb24gc2V0VXNlcklucHV0OihOU1N0cmluZyAqKXZhbHVlIGZv
ckN1cnJlbnRKYXZhU2NyaXB0RGlhbG9nRm9yV2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBX
S19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMyksIGlvcygxMS4wKSk7Ci0tIChfV0tBdXRvbWF0
aW9uU2Vzc2lvbkphdmFTY3JpcHREaWFsb2dUeXBlKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0
b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiB0eXBlT2ZDdXJyZW50SmF2YVNjcmlw
dERpYWxvZ0ZvcldlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistIChfV0tBdXRvbWF0aW9uU2Vz
c2lvbkphdmFTY3JpcHREaWFsb2dUeXBlKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlv
blNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiB0eXBlT2ZDdXJyZW50SmF2YVNjcmlwdERpYWxv
Z0ZvcldlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3go
MTAuMTQpLCBpb3MoMTIuMCkpOwogCiAvLyBGSVhNRSAzNzQwODcxODogT2JqZWN0aXZlLUMgZGVs
ZWdhdGUgbWV0aG9kcyBzaG91bGRuJ3QgdXNlIEMgQVBJIHR5cGVzIGxpa2UgV0tQYWdlUmVmLiBX
ZSBuZWVkIHRvCiAvLyBtaWdyYXRlIGNsaWVudHMgdG8gdXNlIFdLV2ViVmlldywgb3IgZXhwb3Nl
IHRoZSBzYW1lIGJlaGF2aW9yIHZpYSBhIEMgU1BJIGZvciB0aG9zZSBjbGllbnRzLgotLSAodm9p
ZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNzaW9uICopYXV0b21hdGlvblNl
c3Npb24gcmVxdWVzdE5ld1BhZ2VXaXRoT3B0aW9uczooX1dLQXV0b21hdGlvblNlc3Npb25Ccm93
c2luZ0NvbnRleHRPcHRpb25zKW9wdGlvbnMgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikoV0tQ
YWdlUmVmKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNf
VEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLS0gKHZvaWQpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tB
dXRvbWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIHJlcXVlc3RIaWRlV2luZG93T2ZQ
YWdlOihXS1BhZ2VSZWYpcGFnZSBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCheKSh2b2lkKSljb21w
bGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdL
X0lPU19UQkEpKTsKLS0gKHZvaWQpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9uU2Vz
c2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIHJlcXVlc3RSZXN0b3JlV2luZG93T2ZQYWdlOihXS1Bh
Z2VSZWYpcGFnZSBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCheKSh2b2lkKSljb21wbGV0aW9uSGFu
ZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEp
KTsKLS0gKHZvaWQpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9uU2Vzc2lvbiAqKWF1
dG9tYXRpb25TZXNzaW9uIHJlcXVlc3RNYXhpbWl6ZVdpbmRvd09mUGFnZTooV0tQYWdlUmVmKXBh
Z2UgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikodm9pZCkpY29tcGxldGlvbkhhbmRsZXIgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci0tICh2
b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNlc3Npb24gKilhdXRvbWF0aW9u
U2Vzc2lvbiByZXF1ZXN0U3dpdGNoVG9QYWdlOihXS1BhZ2VSZWYpcGFnZSBjb21wbGV0aW9uSGFu
ZGxlcjoodm9pZCheKSh2b2lkKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX2F1dG9tYXRpb25T
ZXNzaW9uOihfV0tBdXRvbWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIHJlcXVlc3RO
ZXdQYWdlV2l0aE9wdGlvbnM6KF9XS0F1dG9tYXRpb25TZXNzaW9uQnJvd3NpbmdDb250ZXh0T3B0
aW9ucylvcHRpb25zIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKFdLUGFnZVJlZikpY29tcGxl
dGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwor
LSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNzaW9uICopYXV0b21h
dGlvblNlc3Npb24gcmVxdWVzdEhpZGVXaW5kb3dPZlBhZ2U6KFdLUGFnZVJlZilwYWdlIGNvbXBs
ZXRpb25IYW5kbGVyOih2b2lkKF4pKHZvaWQpKWNvbXBsZXRpb25IYW5kbGVyIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKKy0gKHZvaWQpX2F1dG9tYXRpb25TZXNz
aW9uOihfV0tBdXRvbWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIHJlcXVlc3RSZXN0
b3JlV2luZG93T2ZQYWdlOihXS1BhZ2VSZWYpcGFnZSBjb21wbGV0aW9uSGFuZGxlcjoodm9pZChe
KSh2b2lkKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCks
IGlvcygxMi4wKSk7CistICh2b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21hdGlvblNl
c3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiByZXF1ZXN0TWF4aW1pemVXaW5kb3dPZlBhZ2U6KFdL
UGFnZVJlZilwYWdlIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkKF4pKHZvaWQpKWNvbXBsZXRpb25I
YW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKKy0gKHZv
aWQpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25T
ZXNzaW9uIHJlcXVlc3RTd2l0Y2hUb1BhZ2U6KFdLUGFnZVJlZilwYWdlIGNvbXBsZXRpb25IYW5k
bGVyOih2b2lkKF4pKHZvaWQpKWNvbXBsZXRpb25IYW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFj
b3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKIC0gKEJPT0wpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tB
dXRvbWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIGlzU2hvd2luZ0phdmFTY3JpcHRE
aWFsb2dPblBhZ2U6KFdLUGFnZVJlZilwYWdlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEz
KSwgaW9zKDExLjApKTsKIC0gKHZvaWQpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9u
U2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIGRpc21pc3NDdXJyZW50SmF2YVNjcmlwdERpYWxv
Z09uUGFnZTooV0tQYWdlUmVmKXBhZ2UgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMpLCBp
b3MoMTEuMCkpOwogLSAodm9pZClfYXV0b21hdGlvblNlc3Npb246KF9XS0F1dG9tYXRpb25TZXNz
aW9uICopYXV0b21hdGlvblNlc3Npb24gYWNjZXB0Q3VycmVudEphdmFTY3JpcHREaWFsb2dPblBh
Z2U6KFdLUGFnZVJlZilwYWdlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzKSwgaW9zKDEx
LjApKTsKIC0gKG51bGxhYmxlIE5TU3RyaW5nICopX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRv
bWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIG1lc3NhZ2VPZkN1cnJlbnRKYXZhU2Ny
aXB0RGlhbG9nT25QYWdlOihXS1BhZ2VSZWYpcGFnZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgx
MC4xMyksIGlvcygxMS4wKSk7CiAtICh2b2lkKV9hdXRvbWF0aW9uU2Vzc2lvbjooX1dLQXV0b21h
dGlvblNlc3Npb24gKilhdXRvbWF0aW9uU2Vzc2lvbiBzZXRVc2VySW5wdXQ6KE5TU3RyaW5nICop
dmFsdWUgZm9yQ3VycmVudEphdmFTY3JpcHREaWFsb2dPblBhZ2U6KFdLUGFnZVJlZilwYWdlIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzKSwgaW9zKDExLjApKTsKLS0gKF9XS0F1dG9tYXRp
b25TZXNzaW9uSmF2YVNjcmlwdERpYWxvZ1R5cGUpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRv
bWF0aW9uU2Vzc2lvbiAqKWF1dG9tYXRpb25TZXNzaW9uIHR5cGVPZkN1cnJlbnRKYXZhU2NyaXB0
RGlhbG9nT25QYWdlOihXS1BhZ2VSZWYpcGFnZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKF9XS0F1dG9tYXRpb25TZXNzaW9uSmF2YVNj
cmlwdERpYWxvZ1R5cGUpX2F1dG9tYXRpb25TZXNzaW9uOihfV0tBdXRvbWF0aW9uU2Vzc2lvbiAq
KWF1dG9tYXRpb25TZXNzaW9uIHR5cGVPZkN1cnJlbnRKYXZhU2NyaXB0RGlhbG9nT25QYWdlOihX
S1BhZ2VSZWYpcGFnZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7
CiBAZW5kCiAKIE5TX0FTU1VNRV9OT05OVUxMX0VORApJbmRleDogU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS0Zvcm1JbnB1dFNlc3Npb24uaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLRm9ybUlucHV0U2Vzc2lvbi5oCShyZXZp
c2lvbiAyMzU5NDkpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLRm9y
bUlucHV0U2Vzc2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw5ICs0NCw5IEBACiBAcHJvcGVy
dHkgKG5vbmF0b21pYywgY29weSkgTlNBcnJheTxVSVRleHRTdWdnZXN0aW9uICo+ICpzdWdnZXN0
aW9ucyBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4wKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYykg
Qk9PTCBhY2Nlc3NvcnlWaWV3U2hvdWxkTm90U2hvdyBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4w
KSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBmb3JjZVNlY3VyZVRleHRFbnRyeSBXS19B
UElfQVZBSUxBQkxFKGlvcygxMC4wKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkp
IEJPT0wgcmVxdWlyZXNTdHJvbmdQYXNzd29yZEFzc2lzdGFuY2UgV0tfQVBJX0FWQUlMQUJMRShp
b3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIHJl
cXVpcmVzU3Ryb25nUGFzc3dvcmRBc3Npc3RhbmNlIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEyLjAp
KTsKIAotLSAodm9pZClyZWxvYWRGb2N1c2VkRWxlbWVudENvbnRleHRWaWV3IFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpcmVsb2FkRm9jdXNlZEVsZW1lbnRDb250
ZXh0VmlldyBXS19BUElfQVZBSUxBQkxFKGlvcygxMi4wKSk7CiAjZW5kaWYKIAogQGVuZApJbmRl
eDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0lucHV0RGVsZWdhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5wdXRE
ZWxlZ2F0ZS5oCShyZXZpc2lvbiAyMzU5NDkpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvX1dLSW5wdXREZWxlZ2F0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw3ICszOSw3
IEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIF9XS0ZvY3VzU3RhcnQKICAgICBfV0tGb2N1
c1N0YXJ0c0lucHV0U2Vzc2lvblBvbGljeUF1dG8sCiAgICAgX1dLRm9jdXNTdGFydHNJbnB1dFNl
c3Npb25Qb2xpY3lBbGxvdywKICAgICBfV0tGb2N1c1N0YXJ0c0lucHV0U2Vzc2lvblBvbGljeURp
c2FsbG93LAotfSBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7Cit9IFdLX0FQSV9B
VkFJTEFCTEUoaW9zKDEyLjApKTsKICNlbmRpZgogCiBAcHJvdG9jb2wgX1dLSW5wdXREZWxlZ2F0
ZSA8TlNPYmplY3Q+CkBAIC01MSwxNSArNTEsMTUgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdl
ciwgX1dLRm9jdXNTdGFydAogCiAjaWYgVEFSR0VUX09TX0lQSE9ORQogLSAoQk9PTClfd2ViVmll
dzooV0tXZWJWaWV3ICopd2ViVmlldyBmb2N1c1Nob3VsZFN0YXJ0SW5wdXRTZXNzaW9uOihpZCA8
X1dLRm9jdXNlZEVsZW1lbnRJbmZvPilpbmZvOwotLSAoX1dLRm9jdXNTdGFydHNJbnB1dFNlc3Np
b25Qb2xpY3kpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGVjaWRlUG9saWN5Rm9yRm9j
dXNlZEVsZW1lbnQ6KGlkIDxfV0tGb2N1c2VkRWxlbWVudEluZm8+KWluZm8gV0tfQVBJX0FWQUlM
QUJMRShpb3MoV0tfSU9TX1RCQSkpOworLSAoX1dLRm9jdXNTdGFydHNJbnB1dFNlc3Npb25Qb2xp
Y3kpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGVjaWRlUG9saWN5Rm9yRm9jdXNlZEVs
ZW1lbnQ6KGlkIDxfV0tGb2N1c2VkRWxlbWVudEluZm8+KWluZm8gV0tfQVBJX0FWQUlMQUJMRShp
b3MoMTIuMCkpOwogLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBhY2Nlc3Nv
cnlWaWV3Q3VzdG9tQnV0dG9uVGFwcGVkSW5Gb3JtSW5wdXRTZXNzaW9uOihpZCA8X1dLRm9ybUlu
cHV0U2Vzc2lvbj4paW5wdXRTZXNzaW9uOwogLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3ICop
d2ViVmlldyBpbnNlcnRUZXh0U3VnZ2VzdGlvbjooVUlUZXh0U3VnZ2VzdGlvbiAqKXN1Z2dlc3Rp
b24gaW5JbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5wdXRTZXNzaW9uPilpbnB1dFNlc3Npb24g
V0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMCkpOwotLSAodm9pZClfd2ViVmlldzooV0tXZWJWaWV3
ICopd2ViVmlldyB3aWxsU3RhcnRJbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5wdXRTZXNzaW9u
PilpbnB1dFNlc3Npb24gV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwotLSAoQk9P
TClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBmb2N1c1JlcXVpcmVzU3Ryb25nUGFzc3dv
cmRBc3Npc3RhbmNlOihpZCA8X1dLRm9jdXNlZEVsZW1lbnRJbmZvPilpbmZvIFdLX0FQSV9BVkFJ
TEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdl
YlZpZXcgd2lsbFN0YXJ0SW5wdXRTZXNzaW9uOihpZCA8X1dLRm9ybUlucHV0U2Vzc2lvbj4paW5w
dXRTZXNzaW9uIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEyLjApKTsKKy0gKEJPT0wpX3dlYlZpZXc6
KFdLV2ViVmlldyAqKXdlYlZpZXcgZm9jdXNSZXF1aXJlc1N0cm9uZ1Bhc3N3b3JkQXNzaXN0YW5j
ZTooaWQgPF9XS0ZvY3VzZWRFbGVtZW50SW5mbz4paW5mbyBXS19BUElfQVZBSUxBQkxFKGlvcygx
Mi4wKSk7CiAKLS0gKEJPT0wpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgc2hvdWxkUmV2
ZWFsRm9jdXNPdmVybGF5Rm9ySW5wdXRTZXNzaW9uOihpZCA8X1dLRm9ybUlucHV0U2Vzc2lvbj4p
aW5wdXRTZXNzaW9uIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKLS0gKENHRmxv
YXQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZm9jdXNlZEVsZW1lbnRDb250ZXh0Vmll
d0hlaWdodEZvckZpdHRpbmdTaXplOihDR1NpemUpZml0dGluZ1NpemUgaW5wdXRTZXNzaW9uOihp
ZCA8X1dLRm9ybUlucHV0U2Vzc2lvbj4paW5wdXRTZXNzaW9uIFdLX0FQSV9BVkFJTEFCTEUoaW9z
KFdLX0lPU19UQkEpKTsKLS0gKFVJVmlldyAqKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3
IGZvY3VzZWRFbGVtZW50Q29udGV4dFZpZXdGb3JJbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5w
dXRTZXNzaW9uPilpbnB1dFNlc3Npb24gV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkp
OworLSAoQk9PTClfd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldyBzaG91bGRSZXZlYWxGb2N1
c092ZXJsYXlGb3JJbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5wdXRTZXNzaW9uPilpbnB1dFNl
c3Npb24gV0tfQVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOworLSAoQ0dGbG9hdClfd2ViVmlldzoo
V0tXZWJWaWV3ICopd2ViVmlldyBmb2N1c2VkRWxlbWVudENvbnRleHRWaWV3SGVpZ2h0Rm9yRml0
dGluZ1NpemU6KENHU2l6ZSlmaXR0aW5nU2l6ZSBpbnB1dFNlc3Npb246KGlkIDxfV0tGb3JtSW5w
dXRTZXNzaW9uPilpbnB1dFNlc3Npb24gV0tfQVBJX0FWQUlMQUJMRShpb3MoMTIuMCkpOworLSAo
VUlWaWV3ICopX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZm9jdXNlZEVsZW1lbnRDb250
ZXh0Vmlld0ZvcklucHV0U2Vzc2lvbjooaWQgPF9XS0Zvcm1JbnB1dFNlc3Npb24+KWlucHV0U2Vz
c2lvbiBXS19BUElfQVZBSUxBQkxFKGlvcygxMi4wKSk7CiAjZW5kaWYKIAogQGVuZApJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFyYW1ldGVycy5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tMaW5r
SWNvblBhcmFtZXRlcnMuaAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkpCkBA
IC00Myw3ICs0Myw3IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTIuMyksIGlvcygK
IEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgY29weSkgTlNTdHJpbmcgKm1pbWVUeXBl
OwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU051bWJlciAqc2l6ZTsK
IAotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBjb3B5KSBOU0RpY3Rpb25hcnkgKmF0
dHJpYnV0ZXMgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1Nf
VEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGNvcHkpIE5TRGljdGlvbmFy
eSAqYXR0cmlidXRlcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7
CiAKIEBlbmQKIApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1By
b2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAkocmV2aXNpb24g
MjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Byb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC02MiwxMiArNjIsMTIgQEAgV0tf
Q0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMCksIGlvcyg4LgogQHByb3BlcnR5IChub25hdG9t
aWMpIEJPT0wgc2hvdWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlvbiBXS19BUElfQVZBSUxBQkxF
KGlvcygxMS4wKSk7CiAjZW5kaWYKIEBwcm9wZXJ0eSAobm9uYXRvbWljKSBwaWRfdCBwcmVzZW50
aW5nQXBwbGljYXRpb25QSUQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMpLCBpb3MoMTEu
MCkpOwotQHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgcHJvY2Vzc1N3YXBzT25OYXZpZ2F0aW9u
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwot
QHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgYWx3YXlzS2VlcEFuZFJldXNlU3dhcHBlZFByb2Nl
c3NlcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEp
KTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIHByb2Nlc3NTd2Fwc09uV2luZG93T3Blbldp
dGhPcGVuZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1Nf
VEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBwcm9jZXNzU3dhcHNPbk5hdmlnYXRp
b24gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOworQHByb3BlcnR5
IChub25hdG9taWMpIEJPT0wgYWx3YXlzS2VlcEFuZFJldXNlU3dhcHBlZFByb2Nlc3NlcyBXS19B
UElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CitAcHJvcGVydHkgKG5vbmF0
b21pYykgQk9PTCBwcm9jZXNzU3dhcHNPbldpbmRvd09wZW5XaXRoT3BlbmVyIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljKSBC
T09MIHByZXdhcm1zUHJvY2Vzc2VzQXV0b21hdGljYWxseSBXS19BUElfQVZBSUxBQkxFKG1hY29z
eChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBC
T09MIHBhZ2VDYWNoZUVuYWJsZWQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSks
IGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBzdXBwcmVzc2Vz
Q29ubmVjdGlvblRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2UgV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYykg
Qk9PTCBwYWdlQ2FjaGVFbmFibGVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9z
KDEyLjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIHN1cHByZXNzZXNDb25uZWN0aW9u
VGVybWluYXRpb25PblN5c3RlbUNoYW5nZSBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCks
IGlvcygxMi4wKSk7CiAKIEBlbmQKIApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL19XS1dlYnNpdGVQb2xpY2llcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMuaAkocmV2aXNpb24gMjM1OTQ5
KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVQb2xpY2ll
cy5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw3ICs0NCw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhO
U1VJbnRlZ2VyLCBfV0tXZWJzaXQKICAgICBfV0tXZWJzaXRlUG9wVXBQb2xpY3lEZWZhdWx0LAog
ICAgIF9XS1dlYnNpdGVQb3BVcFBvbGljeUFsbG93LAogICAgIF9XS1dlYnNpdGVQb3BVcFBvbGlj
eUJsb2NrLAotfSBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lP
U19UQkEpKTsKK30gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwog
CiBAY2xhc3MgV0tXZWJzaXRlRGF0YVN0b3JlOwogCkBAIC01NSw3ICs1NSw3IEBAIFdLX0NMQVNT
X0FWQUlMQUJMRShtYWNvc3goMTAuMTIuMyksIGlvcygKIEBwcm9wZXJ0eSAobm9uYXRvbWljKSBf
V0tXZWJzaXRlQXV0b3BsYXlRdWlyayBhbGxvd2VkQXV0b3BsYXlRdWlya3MgV0tfQVBJX0FWQUlM
QUJMRShtYWNvc3goMTAuMTMpLCBpb3MoMTEuMCkpOwogQHByb3BlcnR5IChub25hdG9taWMpIF9X
S1dlYnNpdGVBdXRvcGxheVBvbGljeSBhdXRvcGxheVBvbGljeSBXS19BUElfQVZBSUxBQkxFKG1h
Y29zeCgxMC4xMyksIGlvcygxMS4wKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNE
aWN0aW9uYXJ5PE5TU3RyaW5nICosIE5TU3RyaW5nICo+ICpjdXN0b21IZWFkZXJGaWVsZHMgV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCksIGlvcygxMS4zKSk7Ci1AcHJvcGVydHkgKG5v
bmF0b21pYykgX1dLV2Vic2l0ZVBvcFVwUG9saWN5IHBvcFVwUG9saWN5IFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworQHByb3BlcnR5IChub25h
dG9taWMpIF9XS1dlYnNpdGVQb3BVcFBvbGljeSBwb3BVcFBvbGljeSBXS19BUElfQVZBSUxBQkxF
KG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc3Ryb25n
KSBXS1dlYnNpdGVEYXRhU3RvcmUgKndlYnNpdGVEYXRhU3RvcmUgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTMuNCksIGlvcygxMS4zKSk7CiAKIEBlbmQKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luRWRp
dGluZ0RlbGVnYXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5FZGl0aW5nRGVsZWdhdGUu
aAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5FZGl0aW5nRGVsZWdhdGUuaAkod29y
a2luZyBjb3B5KQpAQCAtNjEsNyArNjEsNyBAQCBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4x
Mi4zKSwgaW9zKDEwCiAtIChOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgTlNEYXRhICo+ICopX3dl
YlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJ
bkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgcGFzdGVib2FyZERhdGFGb3JS
YW5nZTooV0tXZWJQcm9jZXNzUGx1Z0luUmFuZ2VIYW5kbGUgKilyYW5nZTsKIC0gKHZvaWQpX3dl
YlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXJEaWRXcml0ZVRvUGFzdGVib2Fy
ZDooV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY29udHJvbGxl
cjsKIC0gKEJPT0wpX3dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdL
V2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgcGVy
Zm9ybVR3b1N0ZXBEcm9wOihXS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlICopZnJhZ21lbnQg
YXREZXN0aW5hdGlvbjooV0tXZWJQcm9jZXNzUGx1Z0luUmFuZ2VIYW5kbGUgKilkZXN0aW5hdGlv
biBpc01vdmU6KEJPT0wpaXNNb3ZlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzKSwgaW9z
KDExLjApKTsKLS0gKE5TU3RyaW5nICopX3dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENv
bnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNv
bnRyb2xsZXIgcmVwbGFjZW1lbnRVUkxGb3JSZXNvdXJjZTooTlNEYXRhICopcmVzb3VyY2VEYXRh
IG1pbWVUeXBlOihOU1N0cmluZyAqKW1pbWVUeXBlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworLSAoTlNTdHJpbmcgKilfd2ViUHJvY2Vzc1Bs
dWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjooV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNv
bnRleHRDb250cm9sbGVyICopY29udHJvbGxlciByZXBsYWNlbWVudFVSTEZvclJlc291cmNlOihO
U0RhdGEgKilyZXNvdXJjZURhdGEgbWltZVR5cGU6KE5TU3RyaW5nICopbWltZVR5cGUgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBpb3MoMTIuMCkpOwogCiBAZW5kCiAKSW5kZXg6IFNv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9j
ZXNzUGx1Z0luU2NyaXB0V29ybGQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJblNjcmlwdFdv
cmxkLmgJKHJldmlzaW9uIDIzNTk0OSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luU2NyaXB0V29ybGQuaAkod29y
a2luZyBjb3B5KQpAQCAtMzksNyArMzksNyBAQCBXS19DTEFTU19BVkFJTEFCTEUobWFjb3N4KDEw
LjEwKSwgaW9zKDguCiAKIC0gKHZvaWQpY2xlYXJXcmFwcGVyczsKIC0gKHZvaWQpbWFrZUFsbFNo
YWRvd1Jvb3RzT3BlbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMiksIGlvcygxMC4wKSk7
Ci0tICh2b2lkKWRpc2FibGVPdmVycmlkZUJ1aWx0aW5zQmVoYXZpb3IgV0tfQVBJX0FWQUlMQUJM
RShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistICh2b2lkKWRpc2FibGVP
dmVycmlkZUJ1aWx0aW5zQmVoYXZpb3IgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTQpLCBp
b3MoMTIuMCkpOwogCiBAZW5kCiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvbWFjL1dLRE9NRG9jdW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL21hYy9XS0RPTURvY3VtZW50LmgJ
KHJldmlzaW9uIDIzNTk0OSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9BUEkvbWFjL1dLRE9NRG9jdW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDIsNyArNDIs
NyBAQCBAaW50ZXJmYWNlIFdLRE9NRG9jdW1lbnQgOiBXS0RPTU5vZGUKIAogQHByb3BlcnR5KHJl
YWRvbmx5KSBXS0RPTUVsZW1lbnQgKmJvZHk7CiAKLS0gKGlkKXBhcnNlcllpZWxkVG9rZW4gV0tf
QVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CistIChp
ZClwYXJzZXJZaWVsZFRva2VuIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEy
LjApKTsKIAogQGVuZAogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL21hYy9XS1dlYlByb2Nlc3NQbHVnSW4uaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL21hYy9XS1dlYlByb2Nlc3NQbHVn
SW4uaAkocmV2aXNpb24gMjM1OTQ5KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luLmgJKHdvcmtpbmcgY29weSkKQEAg
LTQzLDcgKzQzLDcgQEAKIAogV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMCksIGlvcyg4
LjApKQogQGludGVyZmFjZSBXS1dlYlByb2Nlc3NQbHVnSW5Db250cm9sbGVyIDogTlNPYmplY3QK
LS0gKHZvaWQpZXh0ZW5kQ2xhc3Nlc0ZvclBhcmFtZXRlckNvZGVyOihOU0FycmF5ICopY2xhc3Nl
cyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsK
Ky0gKHZvaWQpZXh0ZW5kQ2xhc3Nlc0ZvclBhcmFtZXRlckNvZGVyOihOU0FycmF5ICopY2xhc3Nl
cyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CiAKIEBwcm9wZXJ0
eSAocmVhZG9ubHkpIFdLQ29ubmVjdGlvbiAqY29ubmVjdGlvbjsKIAo=
</data>
<flag name="review"
          id="367131"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>