<?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>211420</bug_id>
          
          <creation_ts>2020-05-04 18:33:04 -0700</creation_ts>
          <short_desc>[Mac] Remove __MAC_OS_X_VERSION_MIN_REQUIRED checks for versions older than 10.14</short_desc>
          <delta_ts>2020-05-04 22:52:13 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mifenton</cc>
    
    <cc>pdr</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1648886</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-04 18:33:04 -0700</bug_when>
    <thetext>[Mac] Remove __MAC_OS_X_VERSION_MIN_REQUIRED checks for versions older than 10.14</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648889</commentid>
    <comment_count>1</comment_count>
      <attachid>398451</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-04 18:46:48 -0700</bug_when>
    <thetext>Created attachment 398451
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648901</commentid>
    <comment_count>2</comment_count>
      <attachid>398457</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-04 19:31:11 -0700</bug_when>
    <thetext>Created attachment 398457
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648952</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-04 22:15:49 -0700</bug_when>
    <thetext>Tools/Scripts/svn-apply failed to apply attachment 398457 to trunk.
Please resolve the conflicts and upload a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648963</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-04 22:51:52 -0700</bug_when>
    <thetext>Committed r261153: &lt;https://trac.webkit.org/changeset/261153&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648964</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-05-04 22:52:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/62876018&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398451</attachid>
            <date>2020-05-04 18:46:48 -0700</date>
            <delta_ts>2020-05-04 19:31:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211420-20200504184647.patch</filename>
            <type>text/plain</type>
            <size>56004</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMTM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDNkNGY0MTMwZTEyNDdjNWMzODZhMDE5
Y2Q1NGU2OWQyMWE3YTMyYzUuLjllYWI4MzMyNzVkNmZlMTM2N2U2ZjMyZjY2NjM2OTRjMTg3ZDA2
M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlO
X1JFUVVJUkVEIGNoZWNrcyBmb3IgdmVyc2lvbnMgb2xkZXIgdGhhbiAxMC4xNAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDIwCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXVEYueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajogUmVtb3ZlZCBEZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbS4K
KworICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmg6IFJlbW92ZWQgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAuCisgICAgICAgICogd3RmL1BsYXRmb3Jt
SGF2ZS5oOiBEaXR0by4gVGhpcyBsZWF2ZXMgYmVoaW5kIHNvbWUgY2FzZXMgb2YKKyAgICAgICAg
IlBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oSU9TKSIgdGhhdCBzaG91bGQgcHJvYmFibHkgYmUg
dHVybmVkIG9uIGZvciB3YXRjaE9TCisgICAgICAgIGFuZCB0dk9TIHRvbywgZXZlbnR1YWxseS4g
QWxzbyAiUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFM
WVNUKSIuCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1NYWMuY21ha2U6IFJlbW92ZWQgRGVwcmVj
YXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0uCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1Vc2Uu
aDogUmVtb3ZlZCBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMC4KKwor
ICAgICAgICAqIHd0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW06IFJlbW92
ZWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rhcndpbi9Qcm9jZXNzTWVtb3J5Rm9vdHByaW50Lmg6
IFJlbW92ZWQKKyAgICAgICAgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0
MDAuCisKIDIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlbW92ZSB1bm5lZWRlZCBVU0UoTUVESUFSRU1PVEUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDQ2YTFj
YWFjODI3MDAyNjVkNWIyODRlOWE4Yjk5YzY4M2YxZjBmYy4uOWEwMDY4YWRiODg5ZGE2ZTdkYmI0
YTI5YzkxODU0NWMyNzRiYTViMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIwLTA1
LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBSZW1v
dmUgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCBjaGVja3MgZm9yIHZlcnNpb25zIG9s
ZGVyIHRoYW4gMTAuMTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxMTQyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogZWRpdGluZy9jb2NvYS9EYXRhRGV0ZWN0aW9uLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6ZGV0ZWN0SXRlbSk6IFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49
IDEwMTQwMC4KKyAgICAgICAgKiBlZGl0aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW06CisgICAg
ICAgIChfV2ViTWVzc2FnZURvY3VtZW50Q2xhc3MpOiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHA6IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbToKKyAgICAgICAg
KC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgaW5pdFdpdGhGcmFtZTpdKTogRGl0
dG8uCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jb2NvYS9Db29raWVDb2NvYS5tbToKKyAg
ICAgICAgKFdlYkNvcmU6Om5zU2FtZVNpdGVQb2xpY3kpOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkNvb2tpZTo6b3BlcmF0b3IgTlNIVFRQQ29va2llICogX051bGxhYmxlICBjb25zdCk6IERp
dHRvLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya1N0b3JhZ2VTZXNz
aW9uQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpjb29raWVzRm9yVVJMKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldEhUVFBDb29raWVzRm9y
VVJMIGNvbnN0KTogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jb2NvYS9SZXNv
dXJjZVJlcXVlc3RDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdDo6
ZG9VcGRhdGVSZXNvdXJjZVJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OnNpdGVG
b3JDb29raWVzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Q6OmRv
VXBkYXRlUGxhdGZvcm1SZXF1ZXN0KTogRGl0dG8uCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
clRoZW1lTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OnBhaW50VGV4
dEZpZWxkKTogRGl0dG8uCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDogRGl0dG8uCisK
IDIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSBIQVZFKElPU1VSRkFDRSkgY2hlY2tzIGluIENvY29hLXBsYXRmb3JtLXNwZWNpZmljIGNv
ZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IDk4ZTcwNDk2NjEzMjM2YzlmMWI2MjU3YzI2YzBiMzNi
ZmI3M2VkNzMuLjBjZGRkNzVhNDRiNzBkNWVhMzczOTFiNjA1NDg5NTVlNzU3OWNkYmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBSZW1vdmUgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCBjaGVja3MgZm9yIHZlcnNpb25zIG9sZGVyIHRoYW4gMTAuMTQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTQyMAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9j
b2NvYS9OU0NvbG9yU1BJLmg6IFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDEwMTQwMC4KKyAgICAgICAgKiBwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaDogRGl0
dG8uCisgICAgICAgICogcGFsL3NwaS9tYWMvRGF0YURldGVjdG9yc1NQSS5oOiBEaXR0by4KKyAg
ICAgICAgKiBwYWwvc3BpL21hYy9OU0FwcGxpY2F0aW9uU1BJLmg6IERpdHRvLgorCiAyMDIwLTA1
LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgSEFW
RShJT1NVUkZBQ0UpIGNoZWNrcyBpbiBDb2NvYS1wbGF0Zm9ybS1zcGVjaWZpYyBjb2RlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CmluZGV4IDFkNzhkMGEyNTExMGU1NWRhYTJjOWEyNTA5NTMzZDJkYjE5ZmU1MWQuLmVkYmU3ODky
OGE4YjNiYjQ2Yzc0YzA4NDg2MTNkNmE1ZjExMWNiNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAg
IFtNYWNdIFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIGNoZWNrcyBmb3Ig
dmVyc2lvbnMgb2xkZXIgdGhhbiAxMC4xNAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9Eb3dubG9hZHMvY29jb2EvRG93bmxv
YWRDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWQ6OnJlc3VtZSk6IFJlbW92ZSBf
X01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMC4KKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU2Vzc2lvbkNvY29hOjpOZXR3b3JrU2Vzc2lvbkNvY29hKTogRGl0dG8uCisgICAg
ICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAgKFdl
YktpdDo6UGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2Vzcyk6IERp
dHRvLgorICAgICAgICAqIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZp
Y2UvWFBDU2VydmljZU1haW4ubW06CisgICAgICAgIChXZWJLaXQ6OlhQQ1NlcnZpY2VNYWluKTog
RGl0dG8uCisgICAgICAgICogVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIubW06Cisg
ICAgICAgIChXZWJLaXQ6Omhhc0NvbXBhdGlibGVTZXJ2aWNlc0Zvckl0ZW1zKTogRGl0dG8uCisg
ICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJQcm9jZXNzUHJveHlNYWMubW06CisgICAgICAgIChX
ZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6c2hvdWxkQWxsb3dOb25WYWxpZEluamVjdGVkQ29kZSBj
b25zdCk6IERpdHRvLgorCiAyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNv
bT4KIAogICAgICAgICBbQ29jb2FdIFJlbW92ZSBhIGZldyB1bm5lZWRlZCBfX0lQSE9ORV9PU19W
RVJTSU9OX01JTl9SRVFVSVJFRCBjaGVja3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRl
eCAwMjFjMTk3YmE4YmYzYWEzM2ViN2VkOTc3N2ExOGQ4YTE2NDgyY2Y5Li4yZTBjZTkwMTBjZGU5
NDM0NTBiNDg3ODc0ZWE5NzE1MzE2Mjk4MGFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTkgQEAKKzIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFtNYWNdIFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJ
UkVEIGNoZWNrcyBmb3IgdmVyc2lvbnMgb2xkZXIgdGhhbiAxMC4xNAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDIwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1t
OiBSZW1vdmUgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAuCisgICAg
ICAgICgtW1dlYkhUTUxWaWV3IF9yZWN1cnNpdmU6ZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6
aW5Db250ZXh0OnN0b3BBdExheWVyQmFja2VkVmlld3M6X3JlY3Vyc2l2ZTpkaXNwbGF5UmVjdEln
bm9yaW5nT3BhY2l0eTppbkNvbnRleHQ6c2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOnN0
b3BBdExheWVyQmFja2VkVmlld3M6XSk6IERpdHRvLgorICAgICAgICAoLVtXZWJIVE1MVmlldyBf
cmVjdXJzaXZlOmRpc3BsYXlSZWN0SWdub3JpbmdPcGFjaXR5OmluQ29udGV4dDpzdG9wQXRMYXll
ckJhY2tlZFZpZXdzOl9yZWN1cnNpdmU6ZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6aW5Db250
ZXh0OnNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjpzdG9wQXRMYXllckJhY2tlZFZpZXdz
Ol9yZWN1cnNpdmU6ZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6aW5Db250ZXh0OnNob3VsZENo
YW5nZUZvbnRSZWZlcmVuY2VDb2xvcjpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2ViSFRNTFZp
ZXcgX3JlY3Vyc2l2ZTpkaXNwbGF5UmVjdElnbm9yaW5nT3BhY2l0eTppbkdyYXBoaWNzQ29udGV4
dDpzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3I6XSk6IERlbGV0ZWQuCisKKyAgICAgICAg
KiBXZWJWaWV3L1dlYlRleHRDb21wbGV0aW9uQ29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV2Vi
VGV4dENvbXBsZXRpb25Db250cm9sbGVyIF9idWlsZFVJXSk6IFJlbW92ZSBzb21lIGNvZGUgb25s
eSBjb21waWxlZCB3aXRoCisgICAgICAgIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
PCAxMDE0MDAuCisKIDIwMjAtMDUtMDQgIEVtaWxpbyBDb2JvcyDDgWx2YXJleiAgPGVtaWxpb0Bj
cmlzYWwuaW8+CiAKICAgICAgICAgUHV0IGxoIC8gcmxoIHVuaXRzIGJlaGluZCBhIGZsYWcgdW50
aWwgYnVnIDIxMTM1MSBpcyBzb3J0ZWQgb3V0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9XVEYu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKaW5kZXggNWFjZGM3MTMyYjlmNzg1NTkyYzk4ZmQ3M2IxZDM2ZmU4MGI5YzM0
My4uM2U1OGY1YzliMmVkYjU0MjQ3YTdkOWMzNGY3MmFiNTY2MGZjMDM3MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV1RG
L1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01NCw3ICs1NCw2IEBACiAJCTE0M0Y2
MTFGMTU2NUYwRjkwMERCNTE0QSAvKiBSQU1TaXplLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0M0Y2MTFEMTU2NUYwRjkwMERCNTE0QSAvKiBSQU1T
aXplLmNwcCAqLzsgfTsKIAkJMTQ2OTQxOUQxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVk
UG9vbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
NDY5NDE5QjE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29sLmNwcCAqLzsgfTsKIAkJ
MUExRDhCOUUxNzMxODc5ODAwMTQxREE0IC8qIEZ1bmN0aW9uRGlzcGF0Y2hlci5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTFEOEI5RDE3MzE4Nzk4
MDAxNDFEQTQgLyogRnVuY3Rpb25EaXNwYXRjaGVyLmNwcCAqLzsgfTsKLQkJMUFDQUREODQxODg0
NDgwMTAwRDhCNzFEIC8qIERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFDQUREODIxODg0NDgwMTAw
RDhCNzFEIC8qIERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tICovOyB9OwogCQkxQzE4
MUM3RjFEMzA3OERBMDBGNUZBMTYgLyogVGV4dEJyZWFrSXRlcmF0b3IuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMxODFDN0QxRDMwNzhEQTAwRjVG
QTE2IC8qIFRleHRCcmVha0l0ZXJhdG9yLmNwcCAqLzsgfTsKIAkJMUMxODFDOEYxRDMwN0FCODAw
RjVGQTE2IC8qIFVUZXh0UHJvdmlkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUMxODFDODkxRDMwN0FCODAwRjVGQTE2IC8qIFVUZXh0UHJvdmlk
ZXIuY3BwICovOyB9OwogCQkxQzE4MUM5MTFEMzA3QUI4MDBGNUZBMTYgLyogVVRleHRQcm92aWRl
ckxhdGluMS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQzE4MUM4QjFEMzA3QUI4MDBGNUZBMTYgLyogVVRleHRQcm92aWRlckxhdGluMS5jcHAgKi87
IH07CkBAIC0zMjgsNyArMzI3LDYgQEAKIAkJMUE2QkI3NjgxNjJGMzAwNTAwREQxNkRCIC8qIFN0
cmVhbUJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHJlYW1CdWZm
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE2RUIxREYxODdEMEJEMzAwMzAx
MjZGIC8qIFN0cmluZ1ZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3Ry
aW5nVmlldy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTk0NEY0NjFDM0Q4ODE0
MDA1QkQyOEMgLyogQmxvY2tQdHIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QmxvY2tQdHIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFDQUREODIxODg0NDgw
MTAwRDhCNzFEIC8qIERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZh
cmkubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBRUE4OEUxMUQ2QkJDRjQwMEU1
QUQ2NCAvKiBFbnVtVHJhaXRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVu
dW1UcmFpdHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFGREU2NDcxOTUyMDFD
MzAwQzQ4RkZBIC8qIFR5cGVDYXN0c0NGLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFR5cGVDYXN0c0NGLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBRkRFNjUy
MTk1M0IyM0QwMEM0OEZGQSAvKiBPcHRpb25hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBPcHRpb25hbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTM0MSw3
ICsxMzM5LDYgQEAKIAkJQThBNDcyQzQxNTFBODI1QTAwNDEyM0ZGIC8qIG1hYyAqLyA9IHsKIAkJ
CWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCi0JCQkJMUFDQUREODIxODg0NDgwMTAw
RDhCNzFEIC8qIERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tICovLAogCQkJCUEzMzFE
OTYwMjFGMjRBMEEwMDlGMDJBQSAvKiBGaWxlU3lzdGVtTWFjLm1tICovLAogCQkJCTUzNTM0RjI5
MUVDMEUxMEUwMDE0MUIyRiAvKiBNYWNoRXhjZXB0aW9ucy5kZWZzICovLAogCQkJCUEzRUU1QzNG
MjFGRkFDQTIwMEZBQkQ2MSAvKiBTY2hlZHVsZVBhaXJNYWMubW0gKi8sCkBAIC0xNDM5LDggKzE0
MzYsOCBAQAogCQlBOEE0NzM0RjE1MUE4MjVCMDA0MTIzRkYgLyogaWN1ICovID0gewogCQkJaXNh
ID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQk1MkIyMjhDMTI0NThEQzgyMDA3NTNE
OTEgLyogSUNVSGVscGVycy5oICovLAogCQkJCUE4QTQ3MzUwMTUxQTgyNUIwMDQxMjNGRiAvKiBD
b2xsYXRvcklDVS5jcHAgKi8sCisJCQkJNTJCMjI4QzEyNDU4REM4MjAwNzUzRDkxIC8qIElDVUhl
bHBlcnMuaCAqLywKIAkJCSk7CiAJCQlwYXRoID0gaWN1OwogCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKQEAgLTE2NDIsNyArMTYzOSw2IEBACiAJCQkJQThBNDczOUUxNTFBODI1QjAwNDEyM0ZG
IC8qIERhdGFMb2cuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQThBNDczQTAxNTFBODI1QjAwNDEy
M0ZGIC8qIERhdGVNYXRoLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGOTVCNjMzMjBDQjRCNzcw
MDQ3OTYzNSAvKiBEZWJ1Z0hlYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMUFDQUREODQxODg0
NDgwMTAwRDhCNzFEIC8qIERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQThBNDczQUUxNTFBODI1QjAwNDEyM0ZGIC8qIGRpeS1mcC5jYyBpbiBTb3Vy
Y2VzICovLAogCQkJCUE4QTQ3M0IwMTUxQTgyNUIwMDQxMjNGRiAvKiBkb3VibGUtY29udmVyc2lv
bi5jYyBpbiBTb3VyY2VzICovLAogCQkJCUE4QTQ3M0JBMTUxQTgyNUIwMDQxMjNGRiAvKiBkdG9h
LmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1F
bmFibGVDb2NvYS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCmluZGV4
IDU1NDI0M2Y0NjI0NTdmYjcxMmVkNGM4ZjZhY2QzZWM3ODVjYWY5MDYuLjY3YjVjYzYyOGNmZjBk
YzgwYWVlOWY3MTIzZjg2ZWE5YTIwNzZiZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1Bs
YXRmb3JtRW5hYmxlQ29jb2EuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNv
Y29hLmgKQEAgLTE4NywxMSArMTg3LDExIEBACiAjZGVmaW5lIEVOQUJMRV9NQUNfR0VTVFVSRV9F
VkVOVFMgMQogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfV0VCUFJPQ0VTU19OU1JVTkxP
T1ApICYmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
Pj0gMTAxNDAwKQorI2lmICFkZWZpbmVkKEVOQUJMRV9XRUJQUk9DRVNTX05TUlVOTE9PUCkgJiYg
UExBVEZPUk0oTUFDKQogI2RlZmluZSBFTkFCTEVfV0VCUFJPQ0VTU19OU1JVTkxPT1AgMQogI2Vu
ZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfV0VCUFJPQ0VTU19XSU5ET1dTRVJWRVJfQkxPQ0tJ
TkcpICYmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
Pj0gMTAxNDAwKQorI2lmICFkZWZpbmVkKEVOQUJMRV9XRUJQUk9DRVNTX1dJTkRPV1NFUlZFUl9C
TE9DS0lORykgJiYgUExBVEZPUk0oTUFDKQogI2RlZmluZSBFTkFCTEVfV0VCUFJPQ0VTU19XSU5E
T1dTRVJWRVJfQkxPQ0tJTkcgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtSGF2ZS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgKaW5kZXggMGQw
ZmM5NjAzYzQ3ZWFkMTk3NzkxNjJkNGU1Y2FhOWFkYTdmZWY3Zi4uNDhkN2JkYmEzNmFkNTk4YjQ2
NzNlMzY0MDEzNDRiMzY1NjVkMTg4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZv
cm1IYXZlLmgKKysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgKQEAgLTk3LDcgKzk3
LDcgQEAKICNkZWZpbmUgSEFWRV9BVlNUUkVBTVNFU1NJT04gMQogI2VuZGlmCiAKLSNpZiAhZGVm
aW5lZChIQVZFX1BBU1NLSVRfQk9VTkRfSU5URVJGQUNFX0lERU5USUZJRVIpICYmIChQTEFURk9S
TShJT1MpIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlS
RUQgPj0gMTAxNDAwKSkKKyNpZiAhZGVmaW5lZChIQVZFX1BBU1NLSVRfQk9VTkRfSU5URVJGQUNF
X0lERU5USUZJRVIpICYmIChQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQykpCiAjZGVmaW5l
IEhBVkVfUEFTU0tJVF9CT1VORF9JTlRFUkZBQ0VfSURFTlRJRklFUiAxCiAjZW5kaWYKIApAQCAt
MzM3LDcgKzMzNyw3IEBACiAjZGVmaW5lIEhBVkVfSFNUU19TVE9SQUdFX1BBVEggMQogI2VuZGlm
CiAKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDEwMTQwMCkgfHwgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKKyNp
ZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CiAjZGVmaW5lIEhBVkVfVVJMX0ZPUk1BVFRJTkcgMQogI2VuZGlmCiAKQEAgLTM0OSwxNyArMzQ5
LDE3IEBACiAjZGVmaW5lIEhBVkVfQVZDT05URU5US0VZU0VTU0lPTiAxCiAjZW5kaWYKIAotI2lm
IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAx
NDAwKSB8fCBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorI2lmIFBMQVRG
T1JNKE1BQykgfHwgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKICNkZWZp
bmUgSEFWRV9TRUNfS0VZX1BST1hZIDEKICNlbmRpZgogCiAvKiBGSVhNRTogU2hvdWxkIHRoaXMg
YmUgZW5hYmxlZCBvciBJT1NfRkFNSUxZLCBub3QganVzdCBJT1M/ICovCi0jaWYgKFBMQVRGT1JN
KE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBM
QVRGT1JNKElPUykKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykKICNkZWZpbmUg
SEFWRV9GT1VOREFUSU9OX1dJVEhfU0FWRV9DT09LSUVTX1dJVEhfQ09NUExFVElPTl9IQU5ETEVS
IDEKICNlbmRpZgogCiAvKiBGSVhNRTogU2hvdWxkIHRoaXMgYmUgZW5hYmxlZCBmb3IgSU9TX0ZB
TUlMWSwgbm90IGp1c3QgSU9TPyAqLwotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hf
VkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1MpCisjaWYgUExB
VEZPUk0oTUFDKSB8fCBQTEFURk9STShJT1MpCiAjZGVmaW5lIEhBVkVfRk9VTkRBVElPTl9XSVRI
X1NBTUVfU0lURV9DT09LSUVfU1VQUE9SVCAxCiAjZW5kaWYKIApAQCAtMzY3LDExICszNjcsMTEg
QEAKICNkZWZpbmUgSEFWRV9OU0hUVFBDT09LSUVTVE9SQUdFX19JTklUV0lUSElERU5USUZJRVJf
V0lUSF9JTkFDQ1VSQVRFX05VTExBQklMSVRZIDEKICNlbmRpZgogCi0jaWYgKFBMQVRGT1JNKE1B
QykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRG
T1JNKElPUykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQ
TEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogI2RlZmluZSBIQVZFX09TX0RB
UktfTU9ERV9TVVBQT1JUIDEKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19P
U19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAorI2lmIFBMQVRGT1JNKE1BQykKICNk
ZWZpbmUgSEFWRV9DR19GT05UX1JFTkRFUklOR19HRVRfRk9OVF9TTU9PVEhJTkdfRElTQUJMRUQg
MQogI2VuZGlmCiAKQEAgLTQwNCw3ICs0MDQsNyBAQAogI2RlZmluZSBIQVZFX0xJTktfUFJFVklF
VyAxCiAjZW5kaWYKIAotI2lmIChQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkpCisjaWYgUExB
VEZPUk0oQ09DT0EpCiAjZGVmaW5lIEhBVkVfQUNDRVNTSUJJTElUWV9TVVBQT1JUIDEKICNlbmRp
ZgogCkBAIC00MTIsNyArNDEyLDcgQEAKICNkZWZpbmUgSEFWRV9BQ0NFU1NJQklMSVRZX0JVTkRM
RVNfUEFUSCAxCiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9S
TShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKQorI2lm
IFBMQVRGT1JNKENPQ09BKQogI2RlZmluZSBIQVZFX0FVVEhPUklaQVRJT05fU1RBVFVTX0ZPUl9N
RURJQV9UWVBFIDEKICNlbmRpZgogCkBAIC00NTAsMTEgKzQ1MCwxMSBAQAogI2RlZmluZSBIQVZF
X0NTQ0hFQ0tGSVhESVNBQkxFIDEKICNlbmRpZgogCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPU19G
QU1JTFkpCisjaWYgUExBVEZPUk0oQ09DT0EpCiAjZGVmaW5lIEhBVkVfU0FOREJPWF9JU1NVRV9N
QUNIX0VYVEVOU0lPTl9UT19QUk9DRVNTX0JZX0FVRElUX1RPS0VOIDEKICNlbmRpZgogCi0jaWYg
KFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0
MDApIHx8IFBMQVRGT1JNKElPU19GQU1JTFkpCisjaWYgUExBVEZPUk0oQ09DT0EpCiAjZGVmaW5l
IEhBVkVfU0FOREJPWF9JU1NVRV9SRUFEX0VYVEVOU0lPTl9UT19QUk9DRVNTX0JZX0FVRElUX1RP
S0VOIDEKICNlbmRpZgogCkBAIC00NjIsNyArNDYyLDcgQEAKICNkZWZpbmUgSEFWRV9NRE5TX0ZB
U1RfUkVHSVNUUkFUSU9OIDEKICNlbmRpZgogCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNf
T1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPU19GQU1J
TFkpCisjaWYgUExBVEZPUk0oQ09DT0EpCiAjZGVmaW5lIEhBVkVfRElTQUxMT1dBQkxFX1VTRVJf
SU5TVEFMTEVEX0ZPTlRTIDEKICNlbmRpZgogCkBAIC01MjcsNyArNTI3LDcgQEAKICNkZWZpbmUg
SEFWRV9WSURFT19QRVJGT1JNQU5DRV9NRVRSSUNTIDEKICNlbmRpZgogCi0jaWYgUExBVEZPUk0o
Q09DT0EpICYmICEoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJ
UkVEIDwgMTAxNDAwKSAmJiAhUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisjaWYgUExBVEZPUk0oQ09D
T0EpICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkKICNkZWZpbmUgSEFWRV9DT1JFVEVYVF9BVVRP
X09QVElDQUxfU0laSU5HIDEKICNlbmRpZgogCkBAIC01NDMsNyArNTQzLDcgQEAKICNkZWZpbmUg
SEFWRV9UTFNfUFJPVE9DT0xfVkVSU0lPTl9UIDEKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oSU9T
KSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49
IDEwMTQwMCkgfHwgUExBVEZPUk0oV0FUQ0hPUykgfHwgUExBVEZPUk0oQVBQTEVUVikgfHwgUExB
VEZPUk0oTUFDQ0FUQUxZU1QpCisjaWYgUExBVEZPUk0oQ09DT0EpCiAjZGVmaW5lIEhBVkVfU0VD
X1RSVVNUX0VWQUxVQVRFX1dJVEhfRVJST1IgMQogI2VuZGlmCiAKQEAgLTU3NSw3ICs1NzUsNyBA
QAogI2RlZmluZSBIQVZFX05FQVJfRklFTEQgMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkKKyNpZiBQTEFURk9STShDT0NPQSkKICNkZWZpbmUgSEFWRV9PU19TSUdO
UE9TVCAxCiAjZW5kaWYKIApAQCAtNTg0LDcgKzU4NCw3IEBACiAjZGVmaW5lIEhBVkVfU1lTVEVN
X0ZPTlRfU1RZTEVfVElUTEVfNCAxCiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKENPQ09BKSAmJiAh
KFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTQw
MCkgJiYgIVBMQVRGT1JNKFdBVENIT1MpICYmICFQTEFURk9STShBUFBMRVRWKQorI2lmIFBMQVRG
T1JNKENPQ09BKSAmJiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExFVFYpCiAj
ZGVmaW5lIEhBVkVfQ0dfUEFUSF9VTkVWRU5fQ09STkVSU19ST1VOREVEUkVDVCAxCiAjZW5kaWYK
IApAQCAtNTk2LDcgKzU5Niw3IEBACiAjZGVmaW5lIEhBVkVfR0NFWFRFTkRFREdBTUVQQURfQlVU
VE9OU19PUFRJT05TX01FTlUgMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01B
Q19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkgfHwgKFBMQVRGT1JNKElPU19G
QU1JTFkpKQorI2lmIFBMQVRGT1JNKENPQ09BKQogI2RlZmluZSBIQVZFX0dDRVhURU5ERURHQU1F
UEFEX0JVVFRPTlNfVEhVTUJTVElDSyAxCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvUGxhdGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFr
ZQppbmRleCBiNzRhMjc3MjhlYzU1MDA3NTU4N2UwYTQ4MjVjMjE4MWZiOTU5MTlhLi4wN2NiMDE4
NmQxM2Q1Y2QyM2Q2NDU3MWUxOWNhMDNhNzc0NTdiYzUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RG
L3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZQorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5j
bWFrZQpAQCAtNzIsNyArNzIsNiBAQCBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwogICAgIGNvY29h
L1VSTENvY29hLm1tCiAgICAgY29jb2EvV29ya1F1ZXVlQ29jb2EuY3BwCiAKLSAgICBtYWMvRGVw
cmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0KICAgICBtYWMvRmlsZVN5c3RlbU1hYy5tbQog
ICAgIG1hYy9TY2hlZHVsZVBhaXJNYWMubW0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYv
UGxhdGZvcm1Vc2UuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtVXNlLmgKaW5kZXggNDE5NDY1
MjI0MTIwNWUyZTNkOGM2ZGMyNzdiMTM0NmUyZDM3NTE5Mi4uYjljOTAyOTMzNTA2ZWE2MTY5YmE3
MWYyMDRkMTg2ZTMzMjg5MjMyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1V
c2UuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybVVzZS5oCkBAIC0yODIsOCArMjgyLDcg
QEAKICNlbmRpZgogCiAvKiBUaGUgb3ZlcnJpZGUgaXNuJ3QgbmVlZGVkIG9uIGlPUyBmYW1pbHks
IGFzIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGlzIHRvIG5vdCBzbmlmZi4gKi8KLS8qIEZJWE1FOiBU
aGlzIHNob3VsZCBwcm9iYWJseSBiZSBlbmFibGVkIG9uIDEwLjEzLjIgYW5kIG5ld2VyLCBub3Qg
anVzdCAxMC4xNCBhbmQgbmV3ZXIuICovCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAorI2lmIFBMQVRGT1JNKE1BQykKICNkZWZp
bmUgVVNFX0NGTkVUV09SS19DT05URU5UX0VOQ09ESU5HX1NOSUZGSU5HX09WRVJSSURFIDEKICNl
bmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNV
c2VkQnlTYWZhcmkubW0gYi9Tb3VyY2UvV1RGL3d0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNVc2Vk
QnlTYWZhcmkubW0KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE3MjJkNjc4NjA0YzVm
ZDdhZmIxNTc0ODE4YWRjZDU5YTJiZTRjNzAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dURi93dGYvbWFjL0RlcHJlY2F0ZWRTeW1ib2xzVXNl
ZEJ5U2FmYXJpLm1tCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpbXBvcnQgImNvbmZpZy5oIgotCi0jaW1wb3J0IDxzdGRpbnQuaD4KLSNpbXBvcnQgPHd0Zi9I
YXNoTWFwLmg+Ci0jaW1wb3J0IDx3dGYvSGFzaFNldC5oPgotI2ltcG9ydCA8d3RmL0xvY2suaD4K
LSNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KLSNpbXBvcnQgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KLQotLy8gVGhpcyBmaWxlIGNvbnRhaW5z
IGRlcHJlY2F0ZWQgc3ltYm9scyB0aGF0IHRoZSBsYXN0IHJlbGVhc2VkIHZlcnNpb24gb2YgU2Fm
YXJpIHVzZXMuCi0vLyBPbmNlIFNhZmFyaSBzdG9wcyB1c2luZyB0aGVtLCB3ZSBzaG91bGQgcmVt
b3ZlIHRoZW0uCi0KLW5hbWVzcGFjZSBXVEYgewotCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01B
Q19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNDAwCi1zdHJ1Y3QgTG9ja0Jhc2Ugewot
cHJpdmF0ZToKLSAgICBXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBsb2NrU2xvdygpOwotICAgIFdU
Rl9FWFBPUlRfUFJJVkFURSB2b2lkIHVubG9ja1Nsb3coKTsKLSAgICBBdG9taWM8dWludDhfdD4g
bV9ieXRlOwotfTsKLQotdm9pZCBMb2NrQmFzZTo6bG9ja1Nsb3coKQotewotICAgIERlZmF1bHRM
b2NrQWxnb3JpdGhtOjpsb2NrU2xvdyhtX2J5dGUpOwotfQotCi12b2lkIExvY2tCYXNlOjp1bmxv
Y2tTbG93KCkKLXsKLSAgICBEZWZhdWx0TG9ja0FsZ29yaXRobTo6dW5sb2NrU2xvdyhtX2J5dGUs
IERlZmF1bHRMb2NrQWxnb3JpdGhtOjpVbmZhaXIpOwotfQotI2VuZGlmCi0KLX0gLy8gbmFtZXNw
YWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvc3BpL2Rhcndpbi9Qcm9jZXNzTWVt
b3J5Rm9vdHByaW50LmggYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL1Byb2Nlc3NNZW1vcnlG
b290cHJpbnQuaAppbmRleCA3YjAzZWQ0MzA2ZDY4MGNhMDY5NzdjZjFjODFhMDc5NDM3ZjgyMTAw
Li41ZjE3NDg4YzI0ZTYzNzM3MzQyN2UwYTNjMzU0ZDI4OGE0OTE4M2ZhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL1Byb2Nlc3NNZW1vcnlGb290cHJpbnQuaAorKysgYi9T
b3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL1Byb2Nlc3NNZW1vcnlGb290cHJpbnQuaApAQCAtMzEs
OSArMzEsNyBAQAogIyAgICBpbmNsdWRlIDxsaWJwcm9jLmg+CiAjICAgIGlmIFJVU0FHRV9JTkZP
X0NVUlJFTlQgPj0gNAogIyAgICAgICAgZGVmaW5lIEhBU19NQVhfRk9PVFBSSU5UCi0jICAgICAg
ICBpZiBkZWZpbmVkKFJMSU1JVF9GT09UUFJJTlRfSU5URVJWQUwpICYmIF9faGFzX2luY2x1ZGUo
PGxpYnByb2NfaW50ZXJuYWwuaD4pIFwKLSAgICAgICAgICAgICAmJiAoUExBVEZPUk0oSU9TX0ZB
TUlMWSkgXAotICAgICAgICAgICAgICAgICB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkpCisjICAgICAgICBpZiBkZWZpbmVkKFJM
SU1JVF9GT09UUFJJTlRfSU5URVJWQUwpICYmIF9faGFzX2luY2x1ZGUoPGxpYnByb2NfaW50ZXJu
YWwuaD4pICYmIFBMQVRGT1JNKENPQ09BKQogIyAgICAgICAgICAgIGRlZmluZSBIQVNfUkVTRVRf
Rk9PVFBSSU5UX0lOVEVSVkFMCiAjICAgICAgICAgICAgZGVmaW5lIE1BWF9GT09UUFJJTlRfRklF
TEQgcmlfaW50ZXJ2YWxfbWF4X3BoeXNfZm9vdHByaW50CiAjICAgICAgICAgICAgaW5jbHVkZSA8
bGlicHJvY19pbnRlcm5hbC5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvTlNDb2xvclNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2Ev
TlNDb2xvclNQSS5oCmluZGV4IDQ0ZjdlYmQ0YmMwMDI3MjZjYjQ3MGM0MmI5Y2M2Yzc5MmM3MWNk
ODcuLjI4Njc2NGU2MzIwOTcyNjA1ZmEyN2NiMDVkMTgzMjI5Yzc3M2JkMWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL05TQ29sb3JTUEkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9OU0NvbG9yU1BJLmgKQEAgLTI4LDEwICsyOCw3
IEBACiAjaWYgUExBVEZPUk0oTUFDKSAmJiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQogCiAjaW1w
b3J0IDxBcHBLaXQvTlNDb2xvcl9Qcml2YXRlLmg+Ci0KLSNpZiBfX01BQ19PU19YX1ZFUlNJT05f
TUlOX1JFUVVJUkVEID49IDEwMTQwMAogI2ltcG9ydCA8QXBwS2l0L05TQ29sb3JfVXNlckFjY2Vu
dC5oPgotI2VuZGlmCiAKICNlbHNlCiAKQEAgLTUxLDcgKzQ4LDYgQEAKICsgKE5TQ29sb3IgKilj
b250YWluZXJCb3JkZXJDb2xvcjsKIEBlbmQKIAotI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxNDAwCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBOU1VzZXJBY2Nl
bnRDb2xvcikgewogICAgIE5TVXNlckFjY2VudENvbG9yUmVkID0gMCwKICAgICBOU1VzZXJBY2Nl
bnRDb2xvck9yYW5nZSwKQEAgLTY1LDYgKzYxLDUgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdl
ciwgTlNVc2VyQWNjZW50Q29sb3IpIHsKIH07CiAKIGV4dGVybiAiQyIgTlNVc2VyQWNjZW50Q29s
b3IgTlNDb2xvckdldFVzZXJBY2NlbnRDb2xvcih2b2lkKTsKLSNlbmRpZgogCiAjZW5kaWYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEku
aCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaAppbmRl
eCAyZGZlNmE0NzVlZjdmMjhlOGI2ZDkxYTJiYTg1NDllZGE3NTA4OTQ1Li44ZmM1NGE1YjdhM2Qx
MTJhNTNmNDM3NDcwNzAwYTViODg1NTE3MGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5oCkBAIC03NSw3ICs3NSw3IEBAIHR5cGVkZWYg
c3RydWN0IF9DQVJlbmRlckNvbnRleHQgQ0FSZW5kZXJDb250ZXh0OwogLSAodm9pZClzZXRGZW5j
ZVBvcnQ6KG1hY2hfcG9ydF90KXBvcnQ7CiAtICh2b2lkKXNldEZlbmNlUG9ydDoobWFjaF9wb3J0
X3QpcG9ydCBjb21taXRIYW5kbGVyOih2b2lkKF4pKHZvaWQpKWJsb2NrOwogCi0jaWYgUExBVEZP
Uk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAorI2lm
IFBMQVRGT1JNKE1BQykKICsgKHZvaWQpc2V0QWxsb3dzQ0dTQ29ubmVjdGlvbnM6KEJPT0wpZmxh
ZzsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMv
RGF0YURldGVjdG9yc1NQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL0RhdGFE
ZXRlY3RvcnNTUEkuaAppbmRleCA0M2JhYWIwZjVlNGIwNTJlYmU5NjY5Y2FjMTQ3NjM4ZTkzNDgy
YzA0Li4wMmE5ODI4ZTdmZmE0NDM0M2FkN2JjMjA1MmU0MmE4MzcyMDVhNmIzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvRGF0YURldGVjdG9yc1NQSS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9EYXRhRGV0ZWN0b3JzU1BJLmgKQEAgLTg3
LDcgKzg3LDcgQEAgZW51bSB7CiAKICNlbmRpZiAvLyAhVVNFKEFQUExFX0lOVEVSTkFMX1NESykK
IAotI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDE0MDAKKyNpZiBQTEFURk9STShNQUMpCiAKIFdURl9FWFRFUk5fQ19CRUdJTgogQ0ZUeXBl
SUQgRERSZXN1bHRHZXRDRlR5cGVJRCh2b2lkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1BBTC9wYWwvc3BpL21hYy9OU0FwcGxpY2F0aW9uU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9tYWMvTlNBcHBsaWNhdGlvblNQSS5oCmluZGV4IDUwZGVkNzMyZTIwMjJiM2M3OTkx
Njg5NDY3MDZhNzBlMjQzMmVlOTAuLmNmMWMxYjQ1NjA4MjZjYWU0YmY5MGJmNmNhYjU0ZWExMmRk
MjAyZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU0FwcGxp
Y2F0aW9uU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TQXBwbGlj
YXRpb25TUEkuaApAQCAtMjYsMTUgKzI2LDEwIEBACiAjaWYgVVNFKEFQUEtJVCkKIAogQGludGVy
ZmFjZSBOU0FwcGxpY2F0aW9uICgpCi0KIC0gKHZvaWQpc3BlYWtTdHJpbmc6KE5TU3RyaW5nICop
c3RyaW5nOwogLSAodm9pZClfc2V0Q3VycmVudEV2ZW50OihOU0V2ZW50ICopZXZlbnQ7Ci0KLSNp
ZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAogKyAodm9pZClfYWNj
ZXNzaWJpbGl0eUluaXRpYWxpemU7CiArICh2b2lkKV9wcmV2ZW50RG9ja0Nvbm5lY3Rpb25zOwot
I2VuZGlmCi0KIEBlbmQKIAogI2VuZGlmIC8vIFVTRShBUFBLSVQpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0RhdGFEZXRlY3Rpb24ubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL2NvY29hL0RhdGFEZXRlY3Rpb24ubW0KaW5kZXggNDcyOWVmOGY2NTE3NWNmNzNi
NmVkMmFmMTQ4ZjA5MTZkNmVhNjhkNi4uYTI2ZDgzYjc1ZWU2MGFmMjBhNjkyY2NlMTJlMDNmY2Fm
NDcwYTA5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9EYXRhRGV0
ZWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRGF0YURldGVjdGlv
bi5tbQpAQCAtNTQsNyArNTQsNyBAQAogCiAjaW1wb3J0ICJEYXRhRGV0ZWN0b3JzQ29yZVNvZnRM
aW5rLmgiCiAKLSNpZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPj0gMTAxNDAwCisjaWYgUExBVEZPUk0oTUFDKQogdGVtcGxhdGU8PiBzdHJ1Y3QgV1RG
OjpDRlR5cGVUcmFpdDxERFJlc3VsdFJlZj4gewogICAgIHN0YXRpYyBpbmxpbmUgQ0ZUeXBlSUQg
dHlwZUlEKHZvaWQpIHsgcmV0dXJuIEREUmVzdWx0R2V0Q0ZUeXBlSUQoKTsgfQogfTsKQEAgLTg2
LDExICs4Niw3IEBAIHN0YXRpYyBPcHRpb25hbDxEZXRlY3RlZEl0ZW0+IGRldGVjdEl0ZW0oY29u
c3QgVmlzaWJsZVBvc2l0aW9uJiBwb3NpdGlvbiwgY29uc3QKICAgICBPcHRpb25hbDxTaW1wbGVS
YW5nZT4gbWFpblJlc3VsdFJhbmdlOwogICAgIENGSW5kZXggcmVzdWx0Q291bnQgPSBDRkFycmF5
R2V0Q291bnQocmVzdWx0cy5nZXQoKSk7CiAgICAgZm9yIChDRkluZGV4IGkgPSAwOyBpIDwgcmVz
dWx0Q291bnQ7IGkrKykgewotI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0g
MTAxNDAwCi0gICAgICAgIEREUmVzdWx0UmVmIHJlc3VsdCA9IGNoZWNrZWRfY2ZfY2FzdDxERFJl
c3VsdFJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRleChyZXN1bHRzLmdldCgpLCBpKSk7Ci0jZWxz
ZQotICAgICAgICBERFJlc3VsdFJlZiByZXN1bHQgPSBzdGF0aWNfY2FzdDxERFJlc3VsdFJlZj4o
Y29uc3RfY2FzdDxDRl9CUklER0VEX1RZUEUoaWQpIHZvaWQqPihDRkFycmF5R2V0VmFsdWVBdElu
ZGV4KHJlc3VsdHMuZ2V0KCksIGkpKSk7Ci0jZW5kaWYKKyAgICAgICAgYXV0byByZXN1bHQgPSBj
aGVja2VkX2NmX2Nhc3Q8RERSZXN1bHRSZWY+KENGQXJyYXlHZXRWYWx1ZUF0SW5kZXgocmVzdWx0
cy5nZXQoKSwgaSkpOwogICAgICAgICBDRlJhbmdlIHJlc3VsdFJhbmdlSW5Db250ZXh0ID0gRERS
ZXN1bHRHZXRSYW5nZShyZXN1bHQpOwogICAgICAgICBpZiAoaGl0TG9jYXRpb24gPj0gcmVzdWx0
UmFuZ2VJbkNvbnRleHQubG9jYXRpb24gJiYgKGhpdExvY2F0aW9uIC0gcmVzdWx0UmFuZ2VJbkNv
bnRleHQubG9jYXRpb24pIDwgcmVzdWx0UmFuZ2VJbkNvbnRleHQubGVuZ3RoKSB7CiAgICAgICAg
ICAgICBtYWluUmVzdWx0ID0gcmVzdWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9jb2NvYS9IVE1MQ29udmVydGVyLm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2Nv
YS9IVE1MQ29udmVydGVyLm1tCmluZGV4IGUwMmFhZjNkNDJjYTcyNTUxNTU5ZTYzMTFkNDg3NTNl
M2E1YzAyMzcuLmY1ZTNjYmYyMWExYTM2ZDI3ZjdmOGYzNTE4N2MxMTc4YTU2ODVlMjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvSFRNTENvbnZlcnRlci5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW0KQEAgLTEyNTcs
NyArMTI1Nyw3IEBAIHN0YXRpYyBDbGFzcyBfV2ViTWVzc2FnZURvY3VtZW50Q2xhc3MoKQogICAg
IHN0YXRpYyBCT09MIGxvb2tlZFVwQ2xhc3MgPSBOTzsKICAgICBpZiAoIWxvb2tlZFVwQ2xhc3Mp
IHsKICAgICAgICAgLy8gSWYgdGhlIGNsYXNzIGlzIG5vdCB0aGVyZSwgd2UgZG9uJ3Qgd2FudCB0
byB0cnkgYWdhaW4KLSNpZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxNDAwCisjaWYgUExBVEZPUk0oTUFDKQogICAgICAgICBfV2ViTWVzc2Fn
ZURvY3VtZW50Q2xhc3MgPSBvYmpjX2xvb2tVcENsYXNzKCJFZGl0YWJsZVdlYk1lc3NhZ2VEb2N1
bWVudCIpOwogI2VuZGlmCiAgICAgICAgIGlmICghX1dlYk1lc3NhZ2VEb2N1bWVudENsYXNzKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3ND
b250ZXh0Q0cuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhp
Y3NDb250ZXh0Q0cuY3BwCmluZGV4IGM1NzE4ZDIxYTU4MjlmMTM4MzgzNGZiOGJkMzI5MTdjNWEx
ZTAzZDguLmQ5MDg4ODA4YWI4YmNiYjE2YTUzNDhjMDliMDVlNmM2ZDJiNGRlMzcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENH
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0Nv
bnRleHRDRy5jcHAKQEAgLTQ3LDcgKzQ3LDggQEAKICNpbmNsdWRlIDx3dGYvVVJMLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvVGV4dFN0cmVhbS5oPgogCi0jZGVmaW5lIFVTRV9EUkFXX1BBVEhfRElS
RUNUIChQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkpCisvLyBGSVhNRTogVGhpcyBzaG91bGQg
cHJvYmFibHkgYmUgSEFWRShDR19DT05URVhUX0RSQVdfUEFUSF9ESVJFQ1QpIGFuZCBiZSBpbiBQ
bGF0Zm9ybUhhdmUuaC4KKyNkZWZpbmUgVVNFX0RSQVdfUEFUSF9ESVJFQ1QgUExBVEZPUk0oQ09D
T0EpCiAKIC8vIEZJWE1FOiBUaGUgZm9sbG93aW5nIHVzaW5nIGRlY2xhcmF0aW9uIHNob3VsZCBi
ZSBpbiA8d3RmL0hhc2hGdW5jdGlvbnMuaD4uCiB1c2luZyBXVEY6OnBhaXJJbnRIYXNoOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVGdWxsU2NyZWVuUGxh
Y2Vob2xkZXJWaWV3Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVGdWxs
U2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tCmluZGV4IGMwY2Q1MjNmMmNkYmFhNzkxODQ5NDgwMmU4
ZmYwOWZlMjExODZjYmMuLmMyMmEwMGZkN2ZkZmNkYmM0NTExZDhkZjA2ZjAxNTVhNjA2ZmYwMmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVl
blBsYWNlaG9sZGVyVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2Vi
Q29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0KQEAgLTUyLDE0ICs1Miw3IEBAIC0gKGlk
KWluaXRXaXRoRnJhbWU6KE5TUmVjdClmcmFtZVJlY3QKICAgICBfZWZmZWN0Vmlldy5nZXQoKS5i
bGVuZGluZ01vZGUgPSBOU1Zpc3VhbEVmZmVjdEJsZW5kaW5nTW9kZVdpdGhpbldpbmRvdzsKICAg
ICBfZWZmZWN0Vmlldy5nZXQoKS5oaWRkZW4gPSBZRVM7CiAgICAgX2VmZmVjdFZpZXcuZ2V0KCku
c3RhdGUgPSBOU1Zpc3VhbEVmZmVjdFN0YXRlQWN0aXZlOwotCi0jaWYgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKICAgICBfZWZmZWN0Vmlldy5nZXQoKS5tYXRlcmlh
bCA9IE5TVmlzdWFsRWZmZWN0TWF0ZXJpYWxQb3BvdmVyOwotI2Vsc2UKLSAgICBfZWZmZWN0Vmll
dy5nZXQoKS5tYXRlcmlhbCA9IE5TVmlzdWFsRWZmZWN0TWF0ZXJpYWxMaWdodDsKLSAgICBfZWZm
ZWN0Vmlldy5nZXQoKS5hcHBlYXJhbmNlID0gW05TQXBwZWFyYW5jZSBhcHBlYXJhbmNlTmFtZWQ6
TlNBcHBlYXJhbmNlTmFtZVZpYnJhbnRMaWdodF07Ci0jZW5kaWYKLQogICAgIFtzZWxmIGFkZFN1
YnZpZXc6X2VmZmVjdFZpZXcuZ2V0KCldOwogCiAgICAgX2V4aXRXYXJuaW5nID0gYWRvcHROUyhb
W05TVGV4dEZpZWxkIGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3RdKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvQ29va2llQ29jb2EubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL0Nvb2tpZUNvY29hLm1tCmlu
ZGV4IGM5N2FlYmQ3ZGY4ZjBiYWQyNjkxNDJhZWUzZjUyZDNiZTA3ZDMxODguLmFhMzkwMjcxODJk
Nzg0YTdkOTQ2NzdhOGUwMGZmMDAwMGQ3ZWY1NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY29jb2EvQ29va2llQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9Db29raWVDb2NvYS5tbQpAQCAtMjksNyArMjksNyBA
QAogLy8gRklYTUU6IFJlbW92ZSBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTi9FTkQgYW5kIGFsbCBf
TnVsbGFibGUgYW5ub3RhdGlvbnMgb25jZSB3ZSByZW1vdmUgdGhlIE5TSFRUUENvb2tpZSBmb3J3
YXJkIGRlY2xhcmF0aW9uIGJlbG93LgogTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIAotI2lmIChQ
TEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAw
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NQVhfQUxMT1dFRCA8IDEwMTUwMCkKKyNpZiBQTEFURk9S
TShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NQVhfQUxMT1dFRCA8IDEwMTUwMAogdHlwZWRl
ZiBOU1N0cmluZyAqIE5TSFRUUENvb2tpZVN0cmluZ1BvbGljeTsKIEBpbnRlcmZhY2UgTlNIVFRQ
Q29va2llIChTdGFnaW5nKQogQHByb3BlcnR5IChudWxsYWJsZSwgcmVhZG9ubHksIGNvcHkpIE5T
SFRUUENvb2tpZVN0cmluZ1BvbGljeSBzYW1lU2l0ZVBvbGljeTsKQEAgLTkyLDcgKzkyLDYgQEAg
c3RhdGljIE9wdGlvbmFsPGRvdWJsZT4gY29va2llRXhwaXJ5KE5TSFRUUENvb2tpZSAqY29va2ll
KQogICAgIHJldHVybiBbZXhwaXJ5RGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZTE5NzBdICogMTAwMC4w
OwogfQogCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPU19GQU1JTFkpCiBzdGF0aWMgQ29va2llOjpT
YW1lU2l0ZVBvbGljeSBjb3JlU2FtZVNpdGVQb2xpY3koTlNIVFRQQ29va2llU3RyaW5nUG9saWN5
IF9OdWxsYWJsZSBwb2xpY3kpCiB7CiAgICAgaWYgKCFwb2xpY3kpCkBAIC0xMjAsNyArMTE5LDYg
QEAgc3RhdGljIE5TSFRUUENvb2tpZVN0cmluZ1BvbGljeSBfTnVsbGFibGUgbnNTYW1lU2l0ZVBv
bGljeShDb29raWU6OlNhbWVTaXRlUG9saWMKICAgICBBTExPV19ORVdfQVBJX1dJVEhPVVRfR1VB
UkRTX0VORAogICAgIH0KIH0KLSNlbmRpZgogCiBDb29raWU6OkNvb2tpZShOU0hUVFBDb29raWUg
KmNvb2tpZSkKICAgICA6IG5hbWUgeyBjb29raWUubmFtZSB9CkBAIC0xMzYsMTIgKzEzNCwxMCBA
QCBDb29raWU6OkNvb2tpZShOU0hUVFBDb29raWUgKmNvb2tpZSkKICAgICAsIGNvbW1lbnRVUkwg
eyBjb29raWUuY29tbWVudFVSTCB9CiAgICAgLCBwb3J0cyB7IHBvcnRWZWN0b3JGcm9tTGlzdChj
b29raWUucG9ydExpc3QpIH0KIHsKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAg
ICBBTExPV19ORVdfQVBJX1dJVEhPVVRfR1VBUkRTX0JFR0lOCiAgICAgaWYgKFtjb29raWUgcmVz
cG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzYW1lU2l0ZVBvbGljeSldKQogICAgICAgICBzYW1l
U2l0ZSA9IGNvcmVTYW1lU2l0ZVBvbGljeShjb29raWUuc2FtZVNpdGVQb2xpY3kpOwogICAgIEFM
TE9XX05FV19BUElfV0lUSE9VVF9HVUFSRFNfRU5ECi0jZW5kaWYKIH0KIAogQ29va2llOjpvcGVy
YXRvciBOU0hUVFBDb29raWUgKiBfTnVsbGFibGUgKCkgY29uc3QKQEAgLTE3NCw5ICsxNzAsNyBA
QCBDb29raWU6Om9wZXJhdG9yIE5TSFRUUENvb2tpZSAqIF9OdWxsYWJsZSAoKSBjb25zdAogICAg
ICAgICBbcHJvcGVydGllcyBzZXRPYmplY3Q6ZXhwaXJhdGlvbkRhdGUgZm9yS2V5Ok5TSFRUUENv
b2tpZUV4cGlyZXNdOwogICAgIH0KIAotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hf
VkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1NfRkFNSUxZKQog
ICAgIFtwcm9wZXJ0aWVzIHNldE9iamVjdDpAKGNyZWF0ZWQgLyAxMDAwLjAgLSBOU1RpbWVJbnRl
cnZhbFNpbmNlMTk3MCkgZm9yS2V5OkAiQ3JlYXRlZCJdOwotI2VuZGlmCiAKICAgICBhdXRvKiBw
b3J0U3RyaW5nID0gcG9ydFN0cmluZ0Zyb21WZWN0b3IocG9ydHMpOwogICAgIGlmIChwb3J0U3Ry
aW5nKQpAQCAtMTkxLDEwICsxODUsOCBAQCBDb29raWU6Om9wZXJhdG9yIE5TSFRUUENvb2tpZSAq
IF9OdWxsYWJsZSAoKSBjb25zdAogICAgIGlmIChodHRwT25seSkKICAgICAgICAgW3Byb3BlcnRp
ZXMgc2V0T2JqZWN0OkBZRVMgZm9yS2V5OkAiSHR0cE9ubHkiXTsKIAotI2lmIChQTEFURk9STShN
QUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFU
Rk9STShJT1NfRkFNSUxZKQogICAgIGlmIChhdXRvKiBzYW1lU2l0ZVBvbGljeSA9IG5zU2FtZVNp
dGVQb2xpY3koc2FtZVNpdGUpKQogICAgICAgICBbcHJvcGVydGllcyBzZXRPYmplY3Q6c2FtZVNp
dGVQb2xpY3kgZm9yS2V5OkAiU2FtZVNpdGUiXTsKLSNlbmRpZgogCiAgICAgW3Byb3BlcnRpZXMg
c2V0T2JqZWN0OkAiMSIgZm9yS2V5Ok5TSFRUUENvb2tpZVZlcnNpb25dOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdvcmtTdG9yYWdlU2Vz
c2lvbkNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9OZXR3
b3JrU3RvcmFnZVNlc3Npb25Db2NvYS5tbQppbmRleCA5NTdjMzNlZjJlZGNkM2U0NTgxYjE1ZTMy
ZTYzNmYwN2JmOGQxN2FlLi41NjhiYzE4ODk1NDBiODA0YjIyMDIxYzA3M2FhZDFlMTAwYTQyOGQx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL05ldHdv
cmtTdG9yYWdlU2Vzc2lvbkNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY29jb2EvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ29jb2EubW0KQEAgLTIzMCw3ICsyMzAs
NyBAQCB2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVsZXRlSFRUUENvb2tpZShDRkhUVFBD
b29raWVTdG9yYWdlUmVmIGNvb2tpZVN0b3JhZwogICAgIENGSFRUUENvb2tpZVN0b3JhZ2VEZWxl
dGVDb29raWUoY29va2llU3RvcmFnZSwgW2Nvb2tpZSBfR2V0SW50ZXJuYWxDRkhUVFBDb29raWVd
KTsKIH0KIAotI2lmICEoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JF
UVVJUkVEIDwgMTAxNDAwKSAmJiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExF
VFYpCisjaWYgIVBMQVRGT1JNKFdBVENIT1MpICYmICFQTEFURk9STShBUFBMRVRWKQogc3RhdGlj
IFJldGFpblB0cjxOU0RpY3Rpb25hcnk+IHBvbGljeVByb3BlcnRpZXMoY29uc3QgU2FtZVNpdGVJ
bmZvJiBzYW1lU2l0ZUluZm8sIE5TVVJMICp1cmwpCiB7CiAgICAgc3RhdGljIE5TVVJMICplbXB0
eVVSTCA9IFtbTlNVUkwgYWxsb2NdIGluaXRXaXRoU3RyaW5nOkAiIl07CkBAIC0yNDksNyArMjQ5
LDggQEAgc3RhdGljIE5TQXJyYXkgKmNvb2tpZXNGb3JVUkwoTlNIVFRQQ29va2llU3RvcmFnZSAq
c3RvcmFnZSwgTlNVUkwgKnVybCwgTlNVUkwgKm0KICAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVy
ID0gWyZjb29raWVzUHRyXSAoTlNBcnJheSAqY29va2llcykgewogICAgICAgICBjb29raWVzUHRy
ID0gcmV0YWluUHRyKGNvb2tpZXMpOwogICAgIH07Ci0jaWYgIShQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE0MDApICYmICFQTEFURk9STShXQVRD
SE9TKSAmJiAhUExBVEZPUk0oQVBQTEVUVikKKy8vIEZJWE1FOiBTZWVtcyBsaWtlIHRoaXMgbmV3
ZXIgY29kZSBwYXRoIGNhbiBiZSB1c2VkIGZvciB3YXRjaE9TIGFuZCB0dk9TIHRvby4KKyNpZiAh
UExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExFVFYpCiAgICAgaWYgKFtzdG9yYWdl
IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoX2dldENvb2tpZXNGb3JVUkw6bWFpbkRvY3Vt
ZW50VVJMOnBhcnRpdGlvbjpwb2xpY3lQcm9wZXJ0aWVzOmNvbXBsZXRpb25IYW5kbGVyOildKQog
ICAgICAgICBbc3RvcmFnZSBfZ2V0Q29va2llc0ZvclVSTDp1cmwgbWFpbkRvY3VtZW50VVJMOm1h
aW5Eb2N1bWVudFVSTCBwYXJ0aXRpb246cGFydGl0aW9uIHBvbGljeVByb3BlcnRpZXM6c2FtZVNp
dGVJbmZvID8gcG9saWN5UHJvcGVydGllcyhzYW1lU2l0ZUluZm8udmFsdWUoKSwgdXJsKS5nZXQo
KSA6IG51bGxwdHIgY29tcGxldGlvbkhhbmRsZXI6Y29tcGxldGlvbkhhbmRsZXJdOwogICAgIGVs
c2UKQEAgLTI2Niw3ICsyNjcsOCBAQCB2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0SFRU
UENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBjb29raWVTdAogewogICAgIEFT
U0VSVChoYXNQcm9jZXNzUHJpdmlsZWdlKFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFjY2Vzc1Jhd0Nv
b2tpZXMpIHx8IG1faXNJbk1lbW9yeUNvb2tpZVN0b3JlKTsKICAgICBpZiAoIWNvb2tpZVN0b3Jh
Z2UpIHsKLSNpZiAhKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA8IDEwMTQwMCkgJiYgIVBMQVRGT1JNKFdBVENIT1MpICYmICFQTEFURk9STShBUFBMRVRW
KQorLy8gRklYTUU6IFNlZW1zIGxpa2UgdGhpcyBuZXdlciBjb2RlIHBhdGggY2FuIGJlIHVzZWQg
Zm9yIHdhdGNoT1MgYW5kIHR2T1MgdG9vLgorI2lmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExB
VEZPUk0oQVBQTEVUVikKICAgICAgICAgaWYgKFtOU0hUVFBDb29raWVTdG9yYWdlIGluc3RhbmNl
c1Jlc3BvbmRUb1NlbGVjdG9yOkBzZWxlY3Rvcihfc2V0Q29va2llczpmb3JVUkw6bWFpbkRvY3Vt
ZW50VVJMOnBvbGljeVByb3BlcnRpZXM6KV0pCiAgICAgICAgICAgICBbW05TSFRUUENvb2tpZVN0
b3JhZ2Ugc2hhcmVkSFRUUENvb2tpZVN0b3JhZ2VdIF9zZXRDb29raWVzOmNvb2tpZXMgZm9yVVJM
OnVybCBtYWluRG9jdW1lbnRVUkw6bWFpbkRvY3VtZW50VVJMIHBvbGljeVByb3BlcnRpZXM6cG9s
aWN5UHJvcGVydGllcyhzYW1lU2l0ZUluZm8sIHVybCkuZ2V0KCldOwogICAgICAgICBlbHNlCkBA
IC0yNzQsNyArMjc2LDggQEAgdm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldEhUVFBDb29r
aWVzRm9yVVJMKENGSFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3QKICAgICAgICAgICAgIFtb
TlNIVFRQQ29va2llU3RvcmFnZSBzaGFyZWRIVFRQQ29va2llU3RvcmFnZV0gc2V0Q29va2llczpj
b29raWVzIGZvclVSTDp1cmwgbWFpbkRvY3VtZW50VVJMOm1haW5Eb2N1bWVudFVSTF07CiAgICAg
ICAgIHJldHVybjsKICAgICB9Ci0jaWYgIShQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE0MDApICYmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExB
VEZPUk0oQVBQTEVUVikKKy8vIEZJWE1FOiBTZWVtcyBsaWtlIHRoaXMgbmV3ZXIgY29kZSBwYXRo
IGNhbiBiZSB1c2VkIGZvciB3YXRjaE9TIGFuZCB0dk9TIHRvby4KKyNpZiAhUExBVEZPUk0oV0FU
Q0hPUykgJiYgIVBMQVRGT1JNKEFQUExFVFYpCiAgICAgaWYgKFtOU0hUVFBDb29raWVTdG9yYWdl
IGluc3RhbmNlc1Jlc3BvbmRUb1NlbGVjdG9yOkBzZWxlY3Rvcihfc2V0Q29va2llczpmb3JVUkw6
bWFpbkRvY3VtZW50VVJMOnBvbGljeVByb3BlcnRpZXM6KV0pIHsKICAgICAgICAgLy8gRklYTUU6
IFN0b3AgY3JlYXRpbmcgYSBuZXcgTlNIVFRQQ29va2llU3RvcmFnZSBvYmplY3QgZWFjaCB0aW1l
IHdlIHdhbnQgdG8gcXVlcnkgdGhlIGNvb2tpZSBqYXIuCiAgICAgICAgIC8vIE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiBjb3VsZCBpbnN0ZWFkIGtlZXAgYSBOU0hUVFBDb29raWVTdG9yYWdlIG9iamVj
dCBmb3IgdXMuCkBAIC0yODQsNyArMjg3LDcgQEAgdm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246
OnNldEhUVFBDb29raWVzRm9yVVJMKENGSFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3QKICNl
bmRpZgogICAgICAgICBhdXRvIGNmQ29va2llcyA9IGFkb3B0Q0YoW05TSFRUUENvb2tpZSBfbnMy
Y2ZDb29raWVzOmNvb2tpZXNdKTsKICAgICAgICAgQ0ZIVFRQQ29va2llU3RvcmFnZVNldENvb2tp
ZXMoY29va2llU3RvcmFnZSwgY2ZDb29raWVzLmdldCgpLCBbdXJsIF9jZnVybF0sIFttYWluRG9j
dW1lbnRVUkwgX2NmdXJsXSk7Ci0jaWYgIShQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE0MDApICYmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExB
VEZPUk0oQVBQTEVUVikKKyNpZiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExF
VFYpCiAgICAgfQogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oc2FtZVNpdGVJbmZvKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVzb3VyY2VSZXF1
ZXN0Q29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL1Jlc291
cmNlUmVxdWVzdENvY29hLm1tCmluZGV4IDM2NTM4MmRmODEwMGI4ZTM0ZGFjYTg5NTQ5MjA3Y2Vj
MTMzYTQzZTYuLjI0NTEzY2ZlZmEzOTI1MGY2Y2IyNTE3Yjc2NGQwOTliZTkxMDVkNTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVzb3VyY2VSZXF1
ZXN0Q29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9S
ZXNvdXJjZVJlcXVlc3RDb2NvYS5tbQpAQCAtODgsMTIgKzg4LDEwIEBAIHZvaWQgUmVzb3VyY2VS
ZXF1ZXN0Ojpkb1VwZGF0ZVJlc291cmNlUmVxdWVzdCgpCiAgICAgbV90aW1lb3V0SW50ZXJ2YWwg
PSBbbV9uc1JlcXVlc3QuZ2V0KCkgdGltZW91dEludGVydmFsXTsKICAgICBtX2ZpcnN0UGFydHlG
b3JDb29raWVzID0gW21fbnNSZXF1ZXN0LmdldCgpIG1haW5Eb2N1bWVudFVSTF07CiAKLSNpZiAo
UExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQw
MCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBVUkwgc2l0ZUZvckNvb2tpZXMgeyBbbV9u
c1JlcXVlc3QuZ2V0KCkgX3Byb3BlcnR5Rm9yS2V5OkAiX2tDRkhUVFBDb29raWVQb2xpY3lQcm9w
ZXJ0eVNpdGVGb3JDb29raWVzIl0gfTsKICAgICBtX3NhbWVTaXRlRGlzcG9zaXRpb24gPSBzaXRl
Rm9yQ29va2llcy5pc051bGwoKSA/IFNhbWVTaXRlRGlzcG9zaXRpb246OlVuc3BlY2lmaWVkIDog
KGFyZVJlZ2lzdHJhYmxlRG9tYWluc0VxdWFsKHNpdGVGb3JDb29raWVzLCBtX3VybCkgPyBTYW1l
U2l0ZURpc3Bvc2l0aW9uOjpTYW1lU2l0ZSA6IFNhbWVTaXRlRGlzcG9zaXRpb246OkNyb3NzU2l0
ZSk7CiAKICAgICBtX2lzVG9wU2l0ZSA9IHN0YXRpY19jYXN0PE5TTnVtYmVyKj4oW21fbnNSZXF1
ZXN0LmdldCgpIF9wcm9wZXJ0eUZvcktleTpAIl9rQ0ZIVFRQQ29va2llUG9saWN5UHJvcGVydHlJ
c1RvcExldmVsTmF2aWdhdGlvbiJdKS5ib29sVmFsdWU7Ci0jZW5kaWYKIAogICAgIGlmIChOU1N0
cmluZyogbWV0aG9kID0gW21fbnNSZXF1ZXN0LmdldCgpIEhUVFBNZXRob2RdKQogICAgICAgICBt
X2h0dHBNZXRob2QgPSBtZXRob2Q7CkBAIC0xMzcsNyArMTM1LDYgQEAgdm9pZCBSZXNvdXJjZVJl
cXVlc3Q6OmRvVXBkYXRlUmVzb3VyY2VIVFRQQm9keSgpCiAgICAgfQogfQogCi0jaWYgKFBMQVRG
T1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8
IFBMQVRGT1JNKElPU19GQU1JTFkpCiBzdGF0aWMgTlNVUkwgKnNpdGVGb3JDb29raWVzKFJlc291
cmNlUmVxdWVzdDo6U2FtZVNpdGVEaXNwb3NpdGlvbiBkaXNwb3NpdGlvbiwgTlNVUkwgKnVybCkK
IHsKICAgICBzd2l0Y2ggKGRpc3Bvc2l0aW9uKSB7CkBAIC0xNTAsNyArMTQ3LDYgQEAgc3RhdGlj
IE5TVVJMICpzaXRlRm9yQ29va2llcyhSZXNvdXJjZVJlcXVlc3Q6OlNhbWVTaXRlRGlzcG9zaXRp
b24gZGlzcG9zaXRpb24sIE4KICAgICAgICAgcmV0dXJuIGVtcHR5VVJMOwogICAgIH0KIH0KLSNl
bmRpZgogCiB2b2lkIFJlc291cmNlUmVxdWVzdDo6ZG9VcGRhdGVQbGF0Zm9ybVJlcXVlc3QoKQog
ewpAQCAtMTkwLDEwICsxODYsOCBAQCB2b2lkIFJlc291cmNlUmVxdWVzdDo6ZG9VcGRhdGVQbGF0
Zm9ybVJlcXVlc3QoKQogICAgICAgICBbbnNSZXF1ZXN0IHNldEhUVFBNZXRob2Q6aHR0cE1ldGhv
ZCgpXTsKICAgICBbbnNSZXF1ZXN0IHNldEhUVFBTaG91bGRIYW5kbGVDb29raWVzOmFsbG93Q29v
a2llcygpXTsKIAotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIFtuc1JlcXVl
c3QgX3NldFByb3BlcnR5OnNpdGVGb3JDb29raWVzKG1fc2FtZVNpdGVEaXNwb3NpdGlvbiwgbnNS
ZXF1ZXN0LlVSTCkgZm9yS2V5OkAiX2tDRkhUVFBDb29raWVQb2xpY3lQcm9wZXJ0eVNpdGVGb3JD
b29raWVzIl07CiAgICAgW25zUmVxdWVzdCBfc2V0UHJvcGVydHk6bV9pc1RvcFNpdGUgPyBAWUVT
IDogQE5PIGZvcktleTpAIl9rQ0ZIVFRQQ29va2llUG9saWN5UHJvcGVydHlJc1RvcExldmVsTmF2
aWdhdGlvbiJdOwotI2VuZGlmCiAKICAgICAvLyBDYW5ub3QganVzdCB1c2Ugc2V0QWxsSFRUUEhl
YWRlckZpZWxkcyBoZXJlLCBiZWNhdXNlIGl0IGRvZXMgbm90IHJlbW92ZSBoZWFkZXJzLgogICAg
IGZvciAoTlNTdHJpbmcgKm9sZEhlYWRlck5hbWUgaW4gW25zUmVxdWVzdCBhbGxIVFRQSGVhZGVy
RmllbGRzXSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVt
ZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQppbmRl
eCBjMTA5OTI3ZTY3NWI5MWFhZjlmYTIzNjYyMTEyODFmYjlmZmJhMGI1Li4yNTM0YmUxZmRjYzg2
MzA2ZDQwNmZjZjliOTdmZWZlNjhjYTM1NmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lTWFjLm1tCkBAIC0xMTU5LDEyICsxMTU5LDggQEAgYm9vbCBSZW5kZXJUaGVt
ZU1hYzo6cGFpbnRUZXh0RmllbGQoY29uc3QgUmVuZGVyT2JqZWN0JiBvLCBjb25zdCBQYWludElu
Zm8mIHBhaW4KICAgICBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gcGFpbnRJbmZvLmNvbnRl
eHQoKS5nZXRDVE0oKTsKICAgICBpZiAodHJhbnNmb3JtLnhTY2FsZSgpID4gMSB8fCB0cmFuc2Zv
cm0ueVNjYWxlKCkgPiAxKSB7CiAgICAgICAgIGFkanVzdGVkUGFpbnRSZWN0LmluZmxhdGVYKDEg
LyB0cmFuc2Zvcm0ueFNjYWxlKCkpOwotI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlS
RUQgPj0gMTAxNDAwCiAgICAgICAgIGFkanVzdGVkUGFpbnRSZWN0LmluZmxhdGVZKDIgLyB0cmFu
c2Zvcm0ueVNjYWxlKCkpOwogICAgICAgICBhZGp1c3RlZFBhaW50UmVjdC5tb3ZlKDAsIC0xIC8g
dHJhbnNmb3JtLnlTY2FsZSgpKTsKLSNlbHNlCi0gICAgICAgIGFkanVzdGVkUGFpbnRSZWN0Lmlu
ZmxhdGVZKDEgLyB0cmFuc2Zvcm0ueVNjYWxlKCkpOwotI2VuZGlmCiAgICAgfQogICAgIE5TVGV4
dEZpZWxkQ2VsbCAqdGV4dEZpZWxkID0gdGhpcy0+dGV4dEZpZWxkKCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oCmluZGV4IGNlMDAzNTg1MDYwN2QzNjI2Yjk1NTBjYzBiODc1ZGI0MzBh
OWMyMjQuLjI4Njg2ZTlhZGM3MGE3NjQ1MmExNWRkOTRkZjNlNGNhMDljYmEyM2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaApAQCAtMzM2LDkgKzMzNiw5IEBAIHB1YmxpYzoKIAogICAg
IHZvaWQgdXBkYXRlRWRpdG9yVUlOb3dJZlNjaGVkdWxlZCgpOwogCi0gICAgYm9vbCBzZW50ZW5j
ZVJldHJvQ29ycmVjdGlvbkVuYWJsZWQoKSBjb25zdAorICAgIHN0YXRpYyBib29sIHNlbnRlbmNl
UmV0cm9Db3JyZWN0aW9uRW5hYmxlZCgpCiAgICAgewotI2lmIFBMQVRGT1JNKE1BQykgJiYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKKyNpZiBQTEFURk9STShNQUMp
CiAgICAgICAgIHJldHVybiB0cnVlOwogI2Vsc2UKICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3dubG9hZHMvY29jb2EvRG93
bmxvYWRDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvRG93bmxvYWRzL2Nv
Y29hL0Rvd25sb2FkQ29jb2EubW0KaW5kZXggMjA5YmE3NDNlOGJiNjAzMDJlYjY2ZGRlOWM0YTk0
MjRjZmNiYjY4Ny4uZjFhOWI5N2Y3MDY4MzY2MTBlNmE5ODc4YzZhMGQ1MmE4MTI4NjgzZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3dubG9hZHMvY29jb2EvRG93
bmxvYWRDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fk
cy9jb2NvYS9Eb3dubG9hZENvY29hLm1tCkBAIC00OSw3ICs0OSw3IEBAIHZvaWQgRG93bmxvYWQ6
OnJlc3VtZShjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIHJlc3VtZURhdGEsIGNvbnN0IFN0cmlu
ZyYgcGF0aCwKICAgICBhdXRvIG5zRGF0YSA9IGFkb3B0TlMoW1tOU0RhdGEgYWxsb2NdIGluaXRX
aXRoQnl0ZXM6cmVzdW1lRGF0YS5kYXRhKCkgbGVuZ3RoOnJlc3VtZURhdGEuc2l6ZSgpXSk7CiAK
ICAgICAvLyBGSVhNRTogVGhpcyBpcyBhIHRlbXBvcmFyeSB3b3JrYXJvdW5kIGZvciA8cmRhcjov
L3Byb2JsZW0vMzQ3NDUxNzE+LiBGaXhlZCBpbiBpT1MgMTMgYW5kIG1hY09TIDEwLjE1LCBidXQg
d2Ugc3RpbGwgbmVlZCB0byBzdXBwb3J0IG1hY09TIDEwLjE0IGZvciBub3cuCi0jaWYgUExBVEZP
Uk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCAmJiBf
X01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNTAwCisjaWYgUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNTAwCiAgICAgc3RhdGlj
IE5TU2V0PENsYXNzPiAqcGxpc3RDbGFzc2VzID0gbmlsOwogICAgIHN0YXRpYyBkaXNwYXRjaF9v
bmNlX3Qgb25jZVRva2VuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KaW5kZXggNTI3Y2E3OWQ4MTA4YTJi
Y2NiYzcwNWI0ZDBlNjc0YTZjZTdhZDY4Mi4uYTJjZGI0MzdjYWVkNjc4NzFkYTNjN2VhNDgyNzBl
Nzk0YmVmNDM4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQpAQCAtMTE4OCwxMSArMTE4OCw5IEBAIE5l
dHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5l
dHdvcmtQcm9jZXNzLCBOZXR3b3JrCiAKICAgICBjb25maWd1cmF0aW9uLl90aW1pbmdEYXRhT3B0
aW9ucyA9IF9UaW1pbmdEYXRhT3B0aW9uc0VuYWJsZVczQ05hdmlnYXRpb25UaW1pbmc7CiAKLSNp
ZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICAvLyBGSVhNRTogUmVwbGFjZSBAImtD
RlN0cmVhbVByb3BlcnR5QXV0b0Vycm9yT25TeXN0ZW1DaGFuZ2UiIHdpdGggYSBjb25zdGFudCBm
cm9tIHRoZSBTREsgb25jZSByZGFyOi8vcHJvYmxlbS80MDY1MDI0NCBpcyBpbiBhIGJ1aWxkLgog
ICAgIGlmIChwYXJhbWV0ZXJzLnN1cHByZXNzZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5c3Rl
bUNoYW5nZSkKICAgICAgICAgY29uZmlndXJhdGlvbi5fc29ja2V0U3RyZWFtUHJvcGVydGllcyA9
IEB7IEAia0NGU3RyZWFtUHJvcGVydHlBdXRvRXJyb3JPblN5c3RlbUNoYW5nZSIgOiBATk8gfTsK
LSNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAgICBjb25maWd1cmF0aW9uLl9jb21w
YW5pb25Qcm94eVByZWZlcmVuY2UgPSBOU1VSTFNlc3Npb25Db21wYW5pb25Qcm94eVByZWZlcmVu
Y2VQcmVmZXJEaXJlY3RUb0Nsb3VkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbHVnaW5Q
cm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tIGIvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9j
ZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCmluZGV4IDI3MDNiMjhiMWYzNjRjMmNiMTMxZWMx
MDFkYjcwMjFkZjAyYzJmNDAuLjI5OWZjMTdhYmQzNTgyNTIyYjA1MWViODI2NWE0N2E4N2U3Yzkz
MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJv
Y2Vzc01hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblBy
b2Nlc3NNYWMubW0KQEAgLTEsNCArMSw0IEBACi0vKgorI2lmLyoKICAqIENvcHlyaWdodCAoQykg
MjAxMC0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAo
QykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTM5MiwxMCAr
MzkyLDkgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVQbHVnaW5Qcm9j
ZXNzKFBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXQKICAgICAgICAgZGlza0NhcGFjaXR5OnBs
dWdpbkRpc2tDYWNoZVNpemUKICAgICAgICAgZGlza1BhdGg6bV9uc3VybENhY2hlRGlyZWN0b3J5
XSkuZ2V0KCldOwogCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlO
X1JFUVVJUkVEID49IDEwMTQwMAogICAgIC8vIERpc2FibGUgRGFyayBNb2RlIGluIHRoZSBwbHVn
aW4gcHJvY2VzcyB0byBhdm9pZCByZW5kZXJpbmcgaXNzdWVzLgogICAgIFtOU0FwcCBzZXRBcHBl
YXJhbmNlOltOU0FwcGVhcmFuY2UgYXBwZWFyYW5jZU5hbWVkOk5TQXBwZWFyYW5jZU5hbWVBcXVh
XV07Ci0jZW5kaWYKKwogI2lmIEhBVkUoQVBQX1NTTykKICAgICBbTlNVUkxTZXNzaW9uIF9kaXNh
YmxlQXBwU1NPXTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvRW50
cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VNYWluLm1tIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQ
Q1NlcnZpY2VNYWluLm1tCmluZGV4IDg1Yjc2NTZhYWVhZDYzYTJlMTRjMjBlZjdhZWU4YjU5NjI1
YzFmM2UuLjJkZjg1N2I4MWQ0YmNmNzljMTJmZTc5ZjgzNzdiMWQwMDQ5MGQ1ZDkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2Vy
dmljZS9YUENTZXJ2aWNlTWFpbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBv
aW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW0KQEAgLTMzLDcg
KzMzLDcgQEAKICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KICNpbXBvcnQgPHd0Zi9zcGkvZGFy
d2luL1hQQ1NQSS5oPgogCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05f
TUlOX1JFUVVJUkVEID49IDEwMTQwMAorI2lmIFBMQVRGT1JNKE1BQykKICNpbXBvcnQgPHBhbC9z
cGkvbWFjL05TQXBwbGljYXRpb25TUEkuaD4KICNlbmRpZgogCkBAIC0xNjAsMTMgKzE2MCwxMSBA
QCBpbnQgWFBDU2VydmljZU1haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIqKiBhcmd2KQogICAgIC8v
IERvbid0IGFsbG93IEFwcGxlIEV2ZW50cyBpbiBXZWJLaXQgcHJvY2Vzc2VzLiBUaGlzIGNhbiBi
ZSByZW1vdmVkIHdoZW4gPHJkYXI6Ly9wcm9ibGVtLzE0MDEyODIzPiBpcyBmaXhlZC4KICAgICBz
ZXRlbnYoIl9fQVBQTEVFVkVOVFNTRVJWSUNFTkFNRSIsICIiLCAxKTsKIAotI2lmIF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCiAgICAgLy8gV2UgZG9uJ3QgbmVlZCB0
byB0YWxrIHRvIHRoZSBkb2NrLgogICAgIGlmIChDbGFzcyBuc0FwcGxpY2F0aW9uQ2xhc3MgPSBO
U0NsYXNzRnJvbVN0cmluZyhAIk5TQXBwbGljYXRpb24iKSkgewogICAgICAgICBpZiAoW25zQXBw
bGljYXRpb25DbGFzcyByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKF9wcmV2ZW50RG9ja0Nv
bm5lY3Rpb25zKV0pCiAgICAgICAgICAgICBbbnNBcHBsaWNhdGlvbkNsYXNzIF9wcmV2ZW50RG9j
a0Nvbm5lY3Rpb25zXTsKICAgICB9Ci0jZW5kaWYKICNlbmRpZgogCiAgICAgeHBjX21haW4oWFBD
U2VydmljZUV2ZW50SGFuZGxlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9tYWMvU2VydmljZXNDb250cm9sbGVyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFj
L1NlcnZpY2VzQ29udHJvbGxlci5tbQppbmRleCAwMzhkZDRkNmYwZTdlNDFlYWE0MDViMmE0NWZh
NWFmZGRkMDNmNmE4Li4xM2VhNGEwYjJiNTE5ZTkyMDMzNjRmMjBkZDNhMjQ3YWM4ZjQ4ZDM2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVy
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIu
bW0KQEAgLTY4LDcgKzY4LDYgQEAgc3RhdGljIHZvaWQgaGFzQ29tcGF0aWJsZVNlcnZpY2VzRm9y
SXRlbXMoZGlzcGF0Y2hfZ3JvdXBfdCBncm91cCwgTlNBcnJheSAqaXRlbXMKIHsKICAgICBOU1No
YXJpbmdTZXJ2aWNlTWFzayBzZXJ2aWNlc01hc2sgPSBOU1NoYXJpbmdTZXJ2aWNlTWFza1ZpZXdl
ciB8IE5TU2hhcmluZ1NlcnZpY2VNYXNrRWRpdG9yOwogCi0jaWYgX19NQUNfT1NfWF9WRVJTSU9O
X01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKICAgICBpZiAoW05TU2hhcmluZ1NlcnZpY2UgcmVzcG9u
ZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihnZXRTaGFyaW5nU2VydmljZXNGb3JJdGVtczptYXNrOmNv
bXBsZXRpb246KV0pIHsKICAgICAgICAgZGlzcGF0Y2hfZ3JvdXBfZW50ZXIoZ3JvdXApOwogICAg
ICAgICBbTlNTaGFyaW5nU2VydmljZSBnZXRTaGFyaW5nU2VydmljZXNGb3JJdGVtczppdGVtcyBt
YXNrOnNlcnZpY2VzTWFzayBjb21wbGV0aW9uOm1ha2VCbG9ja1B0cihbY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgZ3JvdXBdKE5TQXJyYXkgKnNlcnZpY2Vz
KSB7CkBAIC03Nyw5ICs3Niw2IEBAIHN0YXRpYyB2b2lkIGhhc0NvbXBhdGlibGVTZXJ2aWNlc0Zv
ckl0ZW1zKGRpc3BhdGNoX2dyb3VwX3QgZ3JvdXAsIE5TQXJyYXkgKml0ZW1zCiAgICAgICAgIH0p
LmdldCgpXTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFN
KGdyb3VwKTsKLSNlbmRpZgogICAgIAogICAgIGNvbXBsZXRpb25IYW5kbGVyKFtOU1NoYXJpbmdT
ZXJ2aWNlIHNoYXJpbmdTZXJ2aWNlc0Zvckl0ZW1zOml0ZW1zIG1hc2s6c2VydmljZXNNYXNrXS5j
b3VudCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViUHJv
Y2Vzc1Byb3h5TWFjLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dlYlByb2Nlc3NQ
cm94eU1hYy5tbQppbmRleCBiNTNiNjY3ODc0YmYxNjA0ZjE3MmE3ZmNjMWRhMjRlYWIzNGE2OGRi
Li40YWNhOGM5MTQ4MTY0YWYwMjhiNDRhNjJhNTJmOGIwMDE5ZDlmNWZlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViUHJvY2Vzc1Byb3h5TWFjLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJQcm9jZXNzUHJveHlNYWMubW0KQEAgLTMwLDEy
ICszMCw5IEBACiAjaWYgUExBVEZPUk0oTUFDKQogCiAjaW1wb3J0ICJXS0Z1bGxLZXlib2FyZEFj
Y2Vzc1dhdGNoZXIuaCIKLSNpbXBvcnQgPHd0Zi9Qcm9jZXNzUHJpdmlsZWdlLmg+Ci0KLSNpZiBf
X01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAogI2ltcG9ydCA8S2VybmVs
L2tlcm4vY3NfYmxvYnMuaD4KKyNpbXBvcnQgPHd0Zi9Qcm9jZXNzUHJpdmlsZWdlLmg+CiAjaW1w
b3J0IDx3dGYvc3BpL2NvY29hL1NlY3VyaXR5U1BJLmg+Ci0jZW5kaWYKIAogbmFtZXNwYWNlIFdl
YktpdCB7CiAKQEAgLTQ2LDcgKzQzLDYgQEAgYm9vbCBXZWJQcm9jZXNzUHJveHk6OmZ1bGxLZXli
b2FyZEFjY2Vzc0VuYWJsZWQoKQogCiBib29sIFdlYlByb2Nlc3NQcm94eTo6c2hvdWxkQWxsb3dO
b25WYWxpZEluamVjdGVkQ29kZSgpIGNvbnN0CiB7Ci0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01J
Tl9SRVFVSVJFRCA+PSAxMDE0MDAKICAgICBzdGF0aWMgYm9vbCBpc1N5c3RlbVdlYktpdCA9IFtd
IHsKICAgICAgICAgTlNCdW5kbGUgKndlYmtpdDJCdW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxlRm9y
Q2xhc3M6TlNDbGFzc0Zyb21TdHJpbmcoQCJXS1dlYlZpZXciKV07CiAgICAgICAgIHJldHVybiBb
d2Via2l0MkJ1bmRsZS5idW5kbGVQYXRoIGhhc1ByZWZpeDpAIi9TeXN0ZW0vIl07CkBAIC02MSw5
ICs1Nyw2IEBAIGJvb2wgV2ViUHJvY2Vzc1Byb3h5OjpzaG91bGRBbGxvd05vblZhbGlkSW5qZWN0
ZWRDb2RlKCkgY29uc3QKIAogICAgIGNvbnN0IFN0cmluZyYgcGF0aCA9IG1fcHJvY2Vzc1Bvb2wt
PmNvbmZpZ3VyYXRpb24oKS5pbmplY3RlZEJ1bmRsZVBhdGgoKTsKICAgICByZXR1cm4gIXBhdGgu
aXNFbXB0eSgpICYmICFwYXRoLnN0YXJ0c1dpdGgoIi9TeXN0ZW0vIik7Ci0jZWxzZQotICAgIHJl
dHVybiBmYWxzZTsKLSNlbmRpZgogfQogCiAjaWYgRU5BQkxFKFdFQlBST0NFU1NfV0lORE9XU0VS
VkVSX0JMT0NLSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJIVE1MVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRN
TFZpZXcubW0KaW5kZXggMTUzNGU2ZjJiYWMzNmNiMTI4Y2IyNGUyMTMxNjNlZGE3OWM4MDdmZC4u
NTJhZmVlMjExYmVhOWM5YTAxMjM4NDBiMzkzZDFjYjk5MDYzYjRlZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC03MjUsMTUgKzcyNSwx
MSBAQCBleHRlcm4gIkMiIE5TU3RyaW5nICpOU1RleHRJbnB1dFJlcGxhY2VtZW50UmFuZ2VBdHRy
aWJ1dGVOYW1lOwogQGludGVyZmFjZSBOU1ZpZXcgKCkKIC0gKHZvaWQpX3JlY3Vyc2l2ZURpc3Bs
YXlSZWN0SWZOZWVkZWRJZ25vcmluZ09wYWNpdHk6KE5TUmVjdClyZWN0IGlzVmlzaWJsZVJlY3Q6
KEJPT0wpaXNWaXNpYmxlUmVjdCByZWN0SXNWaXNpYmxlUmVjdEZvclZpZXc6KE5TVmlldyAqKXZp
c2libGVWaWV3IHRvcFZpZXc6KEJPT0wpdG9wVmlldzsKIC0gKHZvaWQpX3JlY3Vyc2l2ZURpc3Bs
YXlBbGxEaXJ0eVdpdGhMb2NrRm9jdXM6KEJPT0wpbmVlZHNMb2NrRm9jdXMgdmlzUmVjdDooTlNS
ZWN0KXZpc1JlY3Q7Ci0jaWYgUExBVEZPUk0oTUFDKQotI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPj0gMTAxNTAwCisjaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTUwMAogLSAodm9pZClfcmVjdXJzaXZlOihCT09MKXJl
Y3Vyc2l2ZSBkaXNwbGF5UmVjdElnbm9yaW5nT3BhY2l0eTooTlNSZWN0KWRpc3BsYXlSZWN0IGlu
Q29udGV4dDooTlNHcmFwaGljc0NvbnRleHQgKilncmFwaGljc0NvbnRleHQgc3RvcEF0TGF5ZXJC
YWNrZWRWaWV3czooQk9PTClzdG9wQXRMYXllckJhY2tlZFZpZXdzOwotI2VsaWYgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKLS0gKHZvaWQpX3JlY3Vyc2l2ZTooQk9P
TClyZWN1cnNpdmUgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5UmVj
dCBpbkNvbnRleHQ6KE5TR3JhcGhpY3NDb250ZXh0ICopZ3JhcGhpY3NDb250ZXh0IHNob3VsZENo
YW5nZUZvbnRSZWZlcmVuY2VDb2xvcjooQk9PTClzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29s
b3Igc3RvcEF0TGF5ZXJCYWNrZWRWaWV3czooQk9PTClzdG9wQXRMYXllckJhY2tlZFZpZXdzOwot
I2Vsc2UKLS0gKHZvaWQpX3JlY3Vyc2l2ZTooQk9PTClyZWN1cnNlIGRpc3BsYXlSZWN0SWdub3Jp
bmdPcGFjaXR5OihOU1JlY3QpZGlzcGxheVJlY3QgaW5Db250ZXh0OihOU0dyYXBoaWNzQ29udGV4
dCAqKWNvbnRleHQgc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOihCT09MKXNob3VsZENo
YW5nZUZvbnRSZWZlcmVuY2VDb2xvcjsKLS0gKHZvaWQpX3JlY3Vyc2l2ZTooQk9PTClyZWN1cnNl
WCBkaXNwbGF5UmVjdElnbm9yaW5nT3BhY2l0eTooTlNSZWN0KWRpc3BsYXlSZWN0IGluR3JhcGhp
Y3NDb250ZXh0OihOU0dyYXBoaWNzQ29udGV4dCAqKWdyYXBoaWNzQ29udGV4dCBzaG91bGRDaGFu
Z2VGb250UmVmZXJlbmNlQ29sb3I6KEJPT0wpc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9y
OwogI2VuZGlmCisjaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JF
UVVJUkVEIDwgMTAxNTAwCistICh2b2lkKV9yZWN1cnNpdmU6KEJPT0wpcmVjdXJzaXZlIGRpc3Bs
YXlSZWN0SWdub3JpbmdPcGFjaXR5OihOU1JlY3QpZGlzcGxheVJlY3QgaW5Db250ZXh0OihOU0dy
YXBoaWNzQ29udGV4dCAqKWdyYXBoaWNzQ29udGV4dCBzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNl
Q29sb3I6KEJPT0wpc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yIHN0b3BBdExheWVyQmFj
a2VkVmlld3M6KEJPT0wpc3RvcEF0TGF5ZXJCYWNrZWRWaWV3czsKICNlbmRpZgogLSAodm9pZClf
c2V0RHJhd3NPd25EZXNjZW5kYW50czooQk9PTClkcmF3c093bkRlc2NlbmRhbnRzOwogI2lmIFBM
QVRGT1JNKElPU19GQU1JTFkpCkBAIC0xNjcyLDQxICsxNjY4LDE5IEBAIC0gKHZvaWQpX3JlY3Vy
c2l2ZURpc3BsYXlBbGxEaXJ0eVdpdGhMb2NrRm9jdXM6KEJPT0wpbmVlZHNMb2NrRm9jdXMgdmlz
UmVjdDooTlNSCiAvLyBEb24ndCBsZXQgQXBwS2l0IGV2ZW4gZHJhdyBzdWJ2aWV3cy4gV2UgdGFr
ZSBjYXJlIG9mIHRoYXQuCiAjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAx
MDE1MDAKIC0gKHZvaWQpX3JlY3Vyc2l2ZTooQk9PTClyZWN1cnNpdmUgZGlzcGxheVJlY3RJZ25v
cmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5UmVjdCBpbkNvbnRleHQ6KE5TR3JhcGhpY3NDb250
ZXh0ICopZ3JhcGhpY3NDb250ZXh0IHN0b3BBdExheWVyQmFja2VkVmlld3M6KEJPT0wpc3RvcEF0
TGF5ZXJCYWNrZWRWaWV3cwotI2VsaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDE0MDAKLS0gKHZvaWQpX3JlY3Vyc2l2ZTooQk9PTClyZWN1cnNpdmUgZGlzcGxheVJlY3RJ
Z25vcmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5UmVjdCBpbkNvbnRleHQ6KE5TR3JhcGhpY3ND
b250ZXh0ICopZ3JhcGhpY3NDb250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjoo
Qk9PTClzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3Igc3RvcEF0TGF5ZXJCYWNrZWRWaWV3
czooQk9PTClzdG9wQXRMYXllckJhY2tlZFZpZXdzCiAjZWxzZQotLSAodm9pZClfcmVjdXJzaXZl
OihCT09MKXJlY3Vyc2UgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5
UmVjdCBpbkNvbnRleHQ6KE5TR3JhcGhpY3NDb250ZXh0ICopY29udGV4dCBzaG91bGRDaGFuZ2VG
b250UmVmZXJlbmNlQ29sb3I6KEJPT0wpc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yCist
ICh2b2lkKV9yZWN1cnNpdmU6KEJPT0wpcmVjdXJzaXZlIGRpc3BsYXlSZWN0SWdub3JpbmdPcGFj
aXR5OihOU1JlY3QpZGlzcGxheVJlY3QgaW5Db250ZXh0OihOU0dyYXBoaWNzQ29udGV4dCAqKWdy
YXBoaWNzQ29udGV4dCBzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3I6KEJPT0wpc2hvdWxk
Q2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yIHN0b3BBdExheWVyQmFja2VkVmlld3M6KEJPT0wpc3Rv
cEF0TGF5ZXJCYWNrZWRWaWV3cwogI2VuZGlmCiB7CiAgICAgW3NlbGYgX3NldEFzaWRlU3Vidmll
d3NdOwogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNTAwCiAgICAg
W3N1cGVyIF9yZWN1cnNpdmU6cmVjdXJzaXZlIGRpc3BsYXlSZWN0SWdub3JpbmdPcGFjaXR5OmRp
c3BsYXlSZWN0IGluQ29udGV4dDpncmFwaGljc0NvbnRleHQgc3RvcEF0TGF5ZXJCYWNrZWRWaWV3
czpzdG9wQXRMYXllckJhY2tlZFZpZXdzXTsKLSNlbGlmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxNDAwCi0gICAgW3N1cGVyIF9yZWN1cnNpdmU6cmVjdXJzaXZlIGRpc3Bs
YXlSZWN0SWdub3JpbmdPcGFjaXR5OmRpc3BsYXlSZWN0IGluQ29udGV4dDpncmFwaGljc0NvbnRl
eHQgc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOnNob3VsZENoYW5nZUZvbnRSZWZlcmVu
Y2VDb2xvciBzdG9wQXRMYXllckJhY2tlZFZpZXdzOnN0b3BBdExheWVyQmFja2VkVmlld3NdOwog
I2Vsc2UKLSAgICBbc3VwZXIgX3JlY3Vyc2l2ZTpyZWN1cnNlIGRpc3BsYXlSZWN0SWdub3JpbmdP
cGFjaXR5OmRpc3BsYXlSZWN0IGluQ29udGV4dDpjb250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZl
cmVuY2VDb2xvcjpzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3JdOworICAgIFtzdXBlciBf
cmVjdXJzaXZlOnJlY3Vyc2l2ZSBkaXNwbGF5UmVjdElnbm9yaW5nT3BhY2l0eTpkaXNwbGF5UmVj
dCBpbkNvbnRleHQ6Z3JhcGhpY3NDb250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xv
cjpzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3Igc3RvcEF0TGF5ZXJCYWNrZWRWaWV3czpz
dG9wQXRMYXllckJhY2tlZFZpZXdzXTsKICNlbmRpZgogICAgIFtzZWxmIF9yZXN0b3JlU3Vidmll
d3NdOwogfQogCi0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTQwMAot
Ly8gRG9uJ3QgbGV0IEFwcEtpdCBldmVuIGRyYXcgc3Vidmlld3MuIFdlIHRha2UgY2FyZSBvZiB0
aGF0LgotLSAodm9pZClfcmVjdXJzaXZlOihCT09MKXJlY3Vyc2VYIGRpc3BsYXlSZWN0SWdub3Jp
bmdPcGFjaXR5OihOU1JlY3QpZGlzcGxheVJlY3QgaW5HcmFwaGljc0NvbnRleHQ6KE5TR3JhcGhp
Y3NDb250ZXh0ICopZ3JhcGhpY3NDb250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xv
cjooQk9PTClzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3IKLXsKLSAgICBCT09MIGRpZFNl
dEFzaWRlU3Vidmlld3MgPSBOTzsKLQotICAgIGlmICghX3ByaXZhdGUtPnN1YnZpZXdzU2V0QXNp
ZGUpIHsKLSAgICAgICAgW3NlbGYgX3NldEFzaWRlU3Vidmlld3NdOwotICAgICAgICBkaWRTZXRB
c2lkZVN1YnZpZXdzID0gWUVTOwotICAgIH0KLQotICAgIFtzdXBlciBfcmVjdXJzaXZlOnJlY3Vy
c2VYIGRpc3BsYXlSZWN0SWdub3JpbmdPcGFjaXR5OmRpc3BsYXlSZWN0IGluR3JhcGhpY3NDb250
ZXh0OmdyYXBoaWNzQ29udGV4dCBzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3I6c2hvdWxk
Q2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yXTsKLQotICAgIGlmIChkaWRTZXRBc2lkZVN1YnZpZXdz
KQotICAgICAgICBbc2VsZiBfcmVzdG9yZVN1YnZpZXdzXTsKLX0KLSNlbmRpZgotCiBzdGF0aWMg
Qk9PTCBpc1F1aWNrTG9va0V2ZW50KE5TRXZlbnQgKmV2ZW50KQogewogICAgIGNvbnN0IGludCBr
Q0dTRXZlbnRTeXN0ZW1TdWJ0eXBlSG90S2V5Q29tYmluYXRpb25SZWxlYXNlZCA9IDk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlRleHRDb21wbGV0aW9u
Q29udHJvbGxlci5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dENv
bXBsZXRpb25Db250cm9sbGVyLm1tCmluZGV4IGE4ZmZkYWMwZmIyMmJmOWIxMTU0NWEyNDNkODIx
OTA5MmFiZTJhMTUuLmM1Zjg3ZGNhZDQ4NWQyYTdjN2FhODMyYzYzZTUzOTM4YmU1MjY0OGEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dENvbXBsZXRp
b25Db250cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
VGV4dENvbXBsZXRpb25Db250cm9sbGVyLm1tCkBAIC0xMTcsOSArMTE3LDYgQEAgLSAodm9pZClf
YnVpbGRVSQogICAgIFtfcG9wdXBXaW5kb3cgc2V0Q29udGVudFZpZXc6c2Nyb2xsVmlld107CiAg
ICAgW3Njcm9sbFZpZXcgcmVsZWFzZV07CiAgICAgW19wb3B1cFdpbmRvdyBzZXRIYXNTaGFkb3c6
WUVTXTsKLSNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNDAwCi0gICAg
W19wb3B1cFdpbmRvdyBzZXRPbmVTaG90OllFU107Ci0jZW5kaWYKICAgICBbX3BvcHVwV2luZG93
IF9zZXRGb3JjZUFjdGl2ZUNvbnRyb2xzOllFU107CiAgICAgW19wb3B1cFdpbmRvdyBzZXRSZWxl
YXNlZFdoZW5DbG9zZWQ6Tk9dOwogfQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9v
bHMvQ2hhbmdlTG9nCmluZGV4IDM5ZTdjNDc4YTg3NWU4NTJmZWIwMjgzN2QyOGFkNTk1ZDVhMWE1
Y2EuLmNmZjU5MGVlZDlkODIwNTg2MjQ5YTY0M2Y5MTg1NzI5NmUzNmI1OTcgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAor
MjAyMC0wNS0wNCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW01h
Y10gUmVtb3ZlIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgY2hlY2tzIGZvciB2ZXJz
aW9ucyBvbGRlciB0aGFuIDEwLjE0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTE0MjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9DdGFwUGluVGVzdC5j
cHA6IFJlbW92ZQorICAgICAgICBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTQwMC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV2Vic2l0
ZURhdGFTdG9yZUN1c3RvbVBhdGhzLm1tOgorICAgICAgICBSZW1vdmVkIGNvZGUgZGlzYWJsaW5n
IHRoaXMgdGVzdCBmb3IgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTQwMC4K
KworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvY29uZmlnLmg6IFJlbW92ZWQgX19NQUNfT1NfWF9W
RVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL2NvY29hL0FjdGl2YXRlRm9udHNDb2NvYS5tbToKKyAgICAgICAg
KFdUUjo6aW5zdGFsbEZha2VIZWx2ZXRpY2EpOiBSZW1vdmVkIF9fTUFDX09TX1hfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPj0gMTAxNDAwLgorCiAyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAgPGRhcmlu
QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIFJlbW92ZSBhIGZldyB1bm5lZWRlZCBfX0lQ
SE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCBjaGVja3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9DdGFwUGluVGVzdC5jcHAgYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYkNvcmUvQ3RhcFBpblRlc3QuY3BwCmluZGV4IDM2NTI4ZWE2OWM5NTVj
YmQ3MWNjNDg4MDQwY2Y5YjU1ZTgzY2Y1OGEuLmZiN2Y0YTA3OWMxYTBmNmZkZTBkYmNhNGQ5YTUz
MDY4ZDQ0NzAxOTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29y
ZS9DdGFwUGluVGVzdC5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3Jl
L0N0YXBQaW5UZXN0LmNwcApAQCAtMTI1LDcgKzEyNSw5IEBAIFRFU1QoQ3RhcFBpblRlc3QsIFRl
c3RLZXlBZ3JlZW1lbnRSZXNwb25zZSkKICAgICByZXN1bHQgPSBLZXlBZ3JlZW1lbnRSZXNwb25z
ZTo6cGFyc2UoY29udmVydEJ5dGVzVG9WZWN0b3IoVGVzdERhdGE6OmtDdGFwQ2xpZW50UGluVG9r
ZW5SZXNwb25zZSwgc2l6ZW9mKFRlc3REYXRhOjprQ3RhcENsaWVudFBpblRva2VuUmVzcG9uc2Up
KSk7IC8vIHdyb25nIHJlc3BvbnNlCiAgICAgRVhQRUNUX0ZBTFNFKHJlc3VsdCk7CiAKLSNpZiAo
UExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQw
MCkgfHwgUExBVEZPUk0oSU9TKQorLy8gRklYTUU6IFdoZW4gY2FuIHdlIGVuYWJsZSB0aGlzIGZv
ciBub24tQ29jb2EgcGxhdGZvcm1zPworLy8gRklYTUU6IENhbiB3ZSBlbmFibGUgdGhpcyBmb3Ig
d2F0Y2hPUyBhbmQgdHZPUz8KKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykKICAg
ICByZXN1bHQgPSBLZXlBZ3JlZW1lbnRSZXNwb25zZTo6cGFyc2UoY29udmVydEJ5dGVzVG9WZWN0
b3IoVGVzdERhdGE6OmtDdGFwQ2xpZW50UGluSW52YWxpZEtleUFncmVlbWVudFJlc3BvbnNlLCBz
aXplb2YoVGVzdERhdGE6OmtDdGFwQ2xpZW50UGluSW52YWxpZEtleUFncmVlbWVudFJlc3BvbnNl
KSkpOyAvLyBUaGUgcG9pbnQgaXMgbm90IG9uIHRoZSBjdXJ2ZS4KICAgICBFWFBFQ1RfRkFMU0Uo
cmVzdWx0KTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMubW0gYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5tbQpp
bmRleCBiNTQ4YmY5ZmQ4ZWM5NjJhMDBjMDBjY2RiMTJmMThhODljMjI5OTdiLi40ZDY3M2VlNTkx
NmZmYjFkYzQzOWFjMGQ5MTNkYzNmMWIwYmU3YjUxIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5tbQor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRhU3Rv
cmVDdXN0b21QYXRocy5tbQpAQCAtNjgzLDggKzY4Myw2IEBAIFRFU1QoV2ViS2l0LCBESVNBQkxF
RF9BbHRlcm5hdGl2ZVNlcnZpY2UpCiAKICNlbmRpZiAvLyBIQVZFKE5FVFdPUktfRlJBTUVXT1JL
KQogCi0vLyBGSVhNRTogaW52ZXN0aWdhdGUgd2h5IHRoaXMgdGVzdCB0aW1lcyBvdXQgb24gSGln
aCBTaWVycmEKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JF
UVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIFRFU1QoV2ViS2l0LCBN
ZWRpYUNhY2hlKQogewogICAgIEpTQzo6Q29uZmlnOjpjb25maWd1cmVGb3JUZXN0aW5nKCk7CkBA
IC03NTgsNCArNzU2LDMgQEAgVEVTVChXZWJLaXQsIE1lZGlhQ2FjaGUpCiAgICAgW2ZpbGVNYW5h
Z2VyIHJlbW92ZUl0ZW1BdFBhdGg6cGF0aCBlcnJvcjomZXJyb3JdOwogICAgIEVYUEVDVF9GQUxT
RShlcnJvcik7CiB9Ci0jZW5kaWYKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29u
ZmlnLmggYi9Ub29scy9UZXN0V2ViS2l0QVBJL2NvbmZpZy5oCmluZGV4IGM4OTQwNDk5ODIxNjZj
NWIzZjU4ZTYyYmEwZjdkNjYyYmE1YjZmMzQuLmM5MTczNTk3ZTBlZjU5YjE2NTAwMmE4ZWNjNTdi
ZmNkY2Y5ZjY5ZTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgKKysr
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb25maWcuaApAQCAtMTA3LDI2ICsxMDcsMzMgQEAKICNk
ZWZpbmUgV0tfSEFWRV9DX1NQSSAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhpcyB0byBQ
bGF0Zm9ybUhhdmUuaC4KICNpZiAhUExBVEZPUk0oQVBQTEVUVikgJiYgIVBMQVRGT1JNKE1BQ0NB
VEFMWVNUKQogI2RlZmluZSBIQVZFX1NTTCAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhp
cyB0byBQbGF0Zm9ybUhhdmUuaC4KICNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykK
ICNkZWZpbmUgSEFWRV9QREZLSVQgMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oSU9TX0ZBTUlM
WSkgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKSkgfHwgKFBMQVRGT1JNKE1BQ0NBVEFMWVNUKSAm
JiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTYwMCkKKy8vIEZJWE1FOiBN
b3ZlIHRoaXMgdG8gUGxhdGZvcm1IYXZlLmguCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYg
IShQTEFURk9STShNQUNDQVRBTFlTVCkgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA8IDEwMTYwMCkKICNkZWZpbmUgSEFWRV9VSVdFQlZJRVcgMQogI2VuZGlmCiAKLSNpZiAoUExB
VEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkg
fHwgUExBVEZPUk0oSU9TKQorLy8gRklYTUU6IE1vdmUgdGhpcyB0byBQbGF0Zm9ybUhhdmUuaC4K
Ky8vIEZJWE1FOiBTZWVtcyBsaWtlIHRoaXMgc2hvdWxkIGJlIG9uIGZvciB3YXRjaE9TIGFuZCB0
dk9TIHRvby4KKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykKICNkZWZpbmUgSEFW
RV9ORVRXT1JLX0ZSQU1FV09SSyAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhpcyB0byBQ
bGF0Zm9ybUhhdmUuaC4KICNpZiBQTEFURk9STShDT0NPQSkgJiYgIShQTEFURk9STShNQUMpICYm
IF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDApCiAjZGVmaW5lIEhBVkVf
VExTX1BST1RPQ09MX1ZFUlNJT05fVCAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhpcyB0
byBQbGF0Zm9ybUhhdmUuaC4KICNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDEwMTYwMCkgfHwgKFBMQVRGT1JNKElPU19GQU1JTFkpICYmIF9f
SVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkKICNkZWZpbmUgSEFWRV9U
TFNfVkVSU0lPTl9EVVJJTkdfQ0hBTExFTkdFIDEKICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9jb2NvYS9BY3RpdmF0ZUZvbnRzQ29jb2Eu
bW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2NvY29hL0FjdGl2YXRl
Rm9udHNDb2NvYS5tbQppbmRleCBiNWIzYzIyODZkNDkzYjI4Mzk5YmE0MTc3N2Q1ZGE2ZTBmZGQ2
OTU2Li4wMjRmZTYwNTczYjhmMmM1OTJlYmZkYjM1ZjNhNDQ0ODVjZGI5NzU2IDEwMDY0NAotLS0g
YS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2NvY29hL0FjdGl2YXRlRm9u
dHNDb2NvYS5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2Nv
Y29hL0FjdGl2YXRlRm9udHNDb2NvYS5tbQpAQCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgaW5zdGFs
bEZha2VIZWx2ZXRpY2EoV0tTdHJpbmdSZWYgY29uZmlndXJhdGlvbikKICAgICBOU1VSTCAqcmVz
b3VyY2VVUkwgPSBbcmVzb3VyY2VzRGlyZWN0b3J5VVJMKCkgVVJMQnlBcHBlbmRpbmdQYXRoQ29t
cG9uZW50OltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiRmFrZUhlbHZldGljYS0lQC50dGYi
LCBjb25maWd1cmF0aW9uU3RyaW5nLmdldCgpXSBpc0RpcmVjdG9yeTpOT107CiAgICAgQ0ZFcnJv
clJlZiBlcnJvciA9IG51bGxwdHI7CiAgICAgaWYgKCFDVEZvbnRNYW5hZ2VyUmVnaXN0ZXJGb250
c0ZvclVSTCgoX19icmlkZ2UgQ0ZVUkxSZWYpcmVzb3VyY2VVUkwsIGtDVEZvbnRNYW5hZ2VyU2Nv
cGVQcm9jZXNzLCAmZXJyb3IpKSB7Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9W
RVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IChQTEFURk9STShJT1MpICYmICFQTEFU
Rk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikpCisjaWYgUExBVEZPUk0oTUFDKSB8fCAoUExBVEZP
Uk0oSU9TKSAmJiAhUExBVEZPUk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1IpKQogICAgICAgICAvLyBS
ZWdpc3RlcmluZyBzaGFkb3cgZm9udHMgaXMgb25seSBzdXBwb3J0ZWQgb24gbWFjT1MgTW9qYXZl
IGFuZCBpT1MgMTIgb3IgbmV3ZXIsIGJ1dCBub3QgaU9TIFNpbXVsYXRvci4gU2VlIEJ1Z3MgMTgw
MDYyICYgMTk0NzYxLgogICAgICAgICBOU0xvZyhAIkZhaWxlZCB0byBhY3RpdmF0ZSBmYWtlIEhl
bHZldGljYTogJUAiLCBlcnJvcik7CiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398457</attachid>
            <date>2020-05-04 19:31:11 -0700</date>
            <delta_ts>2020-05-04 22:15:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211420-20200504193110.patch</filename>
            <type>text/plain</type>
            <size>56007</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMTM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDNkNGY0MTMwZTEyNDdjNWMzODZhMDE5
Y2Q1NGU2OWQyMWE3YTMyYzUuLjllYWI4MzMyNzVkNmZlMTM2N2U2ZjMyZjY2NjM2OTRjMTg3ZDA2
M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlO
X1JFUVVJUkVEIGNoZWNrcyBmb3IgdmVyc2lvbnMgb2xkZXIgdGhhbiAxMC4xNAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDIwCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXVEYueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajogUmVtb3ZlZCBEZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbS4K
KworICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmg6IFJlbW92ZWQgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAuCisgICAgICAgICogd3RmL1BsYXRmb3Jt
SGF2ZS5oOiBEaXR0by4gVGhpcyBsZWF2ZXMgYmVoaW5kIHNvbWUgY2FzZXMgb2YKKyAgICAgICAg
IlBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oSU9TKSIgdGhhdCBzaG91bGQgcHJvYmFibHkgYmUg
dHVybmVkIG9uIGZvciB3YXRjaE9TCisgICAgICAgIGFuZCB0dk9TIHRvbywgZXZlbnR1YWxseS4g
QWxzbyAiUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFM
WVNUKSIuCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1NYWMuY21ha2U6IFJlbW92ZWQgRGVwcmVj
YXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0uCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1Vc2Uu
aDogUmVtb3ZlZCBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMC4KKwor
ICAgICAgICAqIHd0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW06IFJlbW92
ZWQuCisKKyAgICAgICAgKiB3dGYvc3BpL2Rhcndpbi9Qcm9jZXNzTWVtb3J5Rm9vdHByaW50Lmg6
IFJlbW92ZWQKKyAgICAgICAgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0
MDAuCisKIDIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlbW92ZSB1bm5lZWRlZCBVU0UoTUVESUFSRU1PVEUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODRmYjll
OGU0YWM4MmQ2MTRhYmNjZjJiNDBmMjI4YWMzMjc1ZWQzMy4uYzViM2E3ZDVjODhjMWI1MWEwZjlj
OWU5YzdmYjE5NzZiOGQ0NjQwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIwLTA1
LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBSZW1v
dmUgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCBjaGVja3MgZm9yIHZlcnNpb25zIG9s
ZGVyIHRoYW4gMTAuMTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxMTQyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogZWRpdGluZy9jb2NvYS9EYXRhRGV0ZWN0aW9uLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6ZGV0ZWN0SXRlbSk6IFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49
IDEwMTQwMC4KKyAgICAgICAgKiBlZGl0aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW06CisgICAg
ICAgIChfV2ViTWVzc2FnZURvY3VtZW50Q2xhc3MpOiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHA6IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbToKKyAgICAgICAg
KC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgaW5pdFdpdGhGcmFtZTpdKTogRGl0
dG8uCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jb2NvYS9Db29raWVDb2NvYS5tbToKKyAg
ICAgICAgKFdlYkNvcmU6Om5zU2FtZVNpdGVQb2xpY3kpOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkNvb2tpZTo6b3BlcmF0b3IgTlNIVFRQQ29va2llICogX051bGxhYmxlICBjb25zdCk6IERp
dHRvLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya1N0b3JhZ2VTZXNz
aW9uQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpjb29raWVzRm9yVVJMKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldEhUVFBDb29raWVzRm9y
VVJMIGNvbnN0KTogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jb2NvYS9SZXNv
dXJjZVJlcXVlc3RDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdDo6
ZG9VcGRhdGVSZXNvdXJjZVJlcXVlc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OnNpdGVG
b3JDb29raWVzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Q6OmRv
VXBkYXRlUGxhdGZvcm1SZXF1ZXN0KTogRGl0dG8uCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
clRoZW1lTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OnBhaW50VGV4
dEZpZWxkKTogRGl0dG8uCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDogRGl0dG8uCisK
IDIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIE1h
a2UgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgY2hlY2tzIGFnYWluc3Qgb2xkIHZl
cnNpb25zIGV4cGxpY2l0IGFib3V0IHdhdGNoT1MgYW5kIHR2T1MKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmlu
ZGV4IDU5YTgyNGE3MWRhODQ2YmM2ZWRlYzcxNzkyMDgyMWQ1YjQwMDBmYjUuLmFhZjhjNzBhNDU2
NDE1NmJkN2ZhOTk4N2MyYWEwOWI5MmY1MmRlNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE1IEBACisyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKwor
ICAgICAgICBbTWFjXSBSZW1vdmUgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCBjaGVj
a3MgZm9yIHZlcnNpb25zIG9sZGVyIHRoYW4gMTAuMTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTQyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9OU0NvbG9yU1BJLmg6IFJl
bW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMC4KKyAgICAgICAg
KiBwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaDogRGl0dG8uCisgICAgICAgICogcGFsL3Nw
aS9tYWMvRGF0YURldGVjdG9yc1NQSS5oOiBEaXR0by4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U0FwcGxpY2F0aW9uU1BJLmg6IERpdHRvLgorCiAyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAgPGRh
cmluQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JF
UVVJUkVEIGNoZWNrcyBhZ2FpbnN0IG9sZCB2ZXJzaW9ucyBleHBsaWNpdCBhYm91dCB3YXRjaE9T
IGFuZCB0dk9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDYwMjAxZjM4ZTM2ODdlNDIxYTg0YzVmZWMwYzE4ZmM0YTY1
ZWY2MzcuLjFlYTAxZTAxZDA1MTBmMzU0ZmZjZjY3MTVjYmUyNjc3ZWQ1NGRkNGEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjMgQEAKKzIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFtNYWNdIFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJ
UkVEIGNoZWNrcyBmb3IgdmVyc2lvbnMgb2xkZXIgdGhhbiAxMC4xNAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNDIwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9Eb3dubG9h
ZHMvY29jb2EvRG93bmxvYWRDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWQ6OnJl
c3VtZSk6IFJlbW92ZSBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMC4K
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU2Vzc2lvbkNvY29hOjpOZXR3b3JrU2Vzc2lvbkNvY29h
KTogRGl0dG8uCisgICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5t
bToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUGx1
Z2luUHJvY2Vzcyk6IERpdHRvLgorICAgICAgICAqIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVz
L0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW06CisgICAgICAgIChXZWJLaXQ6OlhQ
Q1NlcnZpY2VNYWluKTogRGl0dG8uCisgICAgICAgICogVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0Nv
bnRyb2xsZXIubW06CisgICAgICAgIChXZWJLaXQ6Omhhc0NvbXBhdGlibGVTZXJ2aWNlc0Zvckl0
ZW1zKTogRGl0dG8uCisgICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJQcm9jZXNzUHJveHlNYWMu
bW06CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6c2hvdWxkQWxsb3dOb25WYWxp
ZEluamVjdGVkQ29kZSBjb25zdCk6IERpdHRvLgorCiAyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIF9fSVBIT05FX09TX1ZFUlNJT05fTUlO
X1JFUVVJUkVEIGNoZWNrcyBhZ2FpbnN0IG9sZCB2ZXJzaW9ucyBleHBsaWNpdCBhYm91dCB3YXRj
aE9TIGFuZCB0dk9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggNTNiZmRiODg4MGRl
NThhMzg0ZDY2ZmUzZWI3MWJhMTkyZWE0YzQ3MC4uZmQ5OTcyMGYzNTQ0OTEwN2ExNjJiZWNjYmYy
MGQ5MjYzOWVlZGQyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5
IEBACisyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAg
ICBbTWFjXSBSZW1vdmUgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCBjaGVja3MgZm9y
IHZlcnNpb25zIG9sZGVyIHRoYW4gMTAuMTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMTQyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbTogUmVtb3ZlIF9fTUFD
X09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwLgorICAgICAgICAoLVtXZWJIVE1M
VmlldyBfcmVjdXJzaXZlOmRpc3BsYXlSZWN0SWdub3JpbmdPcGFjaXR5OmluQ29udGV4dDpzdG9w
QXRMYXllckJhY2tlZFZpZXdzOl9yZWN1cnNpdmU6ZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6
aW5Db250ZXh0OnNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjpzdG9wQXRMYXllckJhY2tl
ZFZpZXdzOl0pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViSFRNTFZpZXcgX3JlY3Vyc2l2ZTpkaXNw
bGF5UmVjdElnbm9yaW5nT3BhY2l0eTppbkNvbnRleHQ6c3RvcEF0TGF5ZXJCYWNrZWRWaWV3czpf
cmVjdXJzaXZlOmRpc3BsYXlSZWN0SWdub3JpbmdPcGFjaXR5OmluQ29udGV4dDpzaG91bGRDaGFu
Z2VGb250UmVmZXJlbmNlQ29sb3I6c3RvcEF0TGF5ZXJCYWNrZWRWaWV3czpfcmVjdXJzaXZlOmRp
c3BsYXlSZWN0SWdub3JpbmdPcGFjaXR5OmluQ29udGV4dDpzaG91bGRDaGFuZ2VGb250UmVmZXJl
bmNlQ29sb3I6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYkhUTUxWaWV3IF9yZWN1cnNpdmU6
ZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6aW5HcmFwaGljc0NvbnRleHQ6c2hvdWxkQ2hhbmdl
Rm9udFJlZmVyZW5jZUNvbG9yOl0pOiBEZWxldGVkLgorCisgICAgICAgICogV2ViVmlldy9XZWJU
ZXh0Q29tcGxldGlvbkNvbnRyb2xsZXIubW06CisgICAgICAgICgtW1dlYlRleHRDb21wbGV0aW9u
Q29udHJvbGxlciBfYnVpbGRVSV0pOiBSZW1vdmUgc29tZSBjb2RlIG9ubHkgY29tcGlsZWQgd2l0
aAorICAgICAgICBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNDAwLgorCiAy
MDIwLTA1LTA0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtl
IF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEIGNoZWNrcyBhZ2FpbnN0IG9sZCB2ZXJz
aW9ucyBleHBsaWNpdCBhYm91dCB3YXRjaE9TIGFuZCB0dk9TCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1YWNkYzcxMzJiOWY3ODU1OTJjOThmZDczYjFkMzZm
ZTgwYjljMzQzLi4zZTU4ZjVjOWIyZWRiNTQyNDdhN2Q5YzM0ZjcyYWI1NjYwZmMwMzcyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1Nv
dXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU0LDcgKzU0LDYgQEAK
IAkJMTQzRjYxMUYxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQzRjYxMUQxNTY1RjBGOTAwREI1MTRB
IC8qIFJBTVNpemUuY3BwICovOyB9OwogCQkxNDY5NDE5RDE2RUFCMTBBMDAyNEUxNDYgLyogQXV0
b2RyYWluZWRQb29sLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDE0Njk0MTlCMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2wuY3BwICov
OyB9OwogCQkxQTFEOEI5RTE3MzE4Nzk4MDAxNDFEQTQgLyogRnVuY3Rpb25EaXNwYXRjaGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMUQ4QjlE
MTczMTg3OTgwMDE0MURBNCAvKiBGdW5jdGlvbkRpc3BhdGNoZXIuY3BwICovOyB9OwotCQkxQUNB
REQ4NDE4ODQ0ODAxMDBEOEI3MUQgLyogRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0g
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUNBREQ4MjE4
ODQ0ODAxMDBEOEI3MUQgLyogRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0gKi87IH07
CiAJCTFDMTgxQzdGMUQzMDc4REEwMEY1RkExNiAvKiBUZXh0QnJlYWtJdGVyYXRvci5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzE4MUM3RDFEMzA3
OERBMDBGNUZBMTYgLyogVGV4dEJyZWFrSXRlcmF0b3IuY3BwICovOyB9OwogCQkxQzE4MUM4RjFE
MzA3QUI4MDBGNUZBMTYgLyogVVRleHRQcm92aWRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzE4MUM4OTFEMzA3QUI4MDBGNUZBMTYgLyogVVRl
eHRQcm92aWRlci5jcHAgKi87IH07CiAJCTFDMTgxQzkxMUQzMDdBQjgwMEY1RkExNiAvKiBVVGV4
dFByb3ZpZGVyTGF0aW4xLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDMTgxQzhCMUQzMDdBQjgwMEY1RkExNiAvKiBVVGV4dFByb3ZpZGVyTGF0aW4x
LmNwcCAqLzsgfTsKQEAgLTMyOCw3ICszMjcsNiBAQAogCQkxQTZCQjc2ODE2MkYzMDA1MDBERDE2
REIgLyogU3RyZWFtQnVmZmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0
cmVhbUJ1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTZFQjFERjE4N0Qw
QkQzMDAzMDEyNkYgLyogU3RyaW5nVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTdHJpbmdWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBOTQ0RjQ2
MUMzRDg4MTQwMDVCRDI4QyAvKiBCbG9ja1B0ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBCbG9ja1B0ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQUNBREQ4
MjE4ODQ0ODAxMDBEOEI3MUQgLyogRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEZXByZWNhdGVkU3ltYm9sc1Vz
ZWRCeVNhZmFyaS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFFQTg4RTExRDZC
QkNGNDAwRTVBRDY0IC8qIEVudW1UcmFpdHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRW51bVRyYWl0cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUZERTY0
NzE5NTIwMUMzMDBDNDhGRkEgLyogVHlwZUNhc3RzQ0YuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gVHlwZUNhc3RzQ0YuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUFGREU2NTIxOTUzQjIzRDAwQzQ4RkZBIC8qIE9wdGlvbmFsLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE9wdGlvbmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xMzQxLDcgKzEzMzksNiBAQAogCQlBOEE0NzJDNDE1MUE4MjVBMDA0MTIzRkYgLyogbWFjICov
ID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQkxQUNBREQ4MjE4
ODQ0ODAxMDBEOEI3MUQgLyogRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0gKi8sCiAJ
CQkJQTMzMUQ5NjAyMUYyNEEwQTAwOUYwMkFBIC8qIEZpbGVTeXN0ZW1NYWMubW0gKi8sCiAJCQkJ
NTM1MzRGMjkxRUMwRTEwRTAwMTQxQjJGIC8qIE1hY2hFeGNlcHRpb25zLmRlZnMgKi8sCiAJCQkJ
QTNFRTVDM0YyMUZGQUNBMjAwRkFCRDYxIC8qIFNjaGVkdWxlUGFpck1hYy5tbSAqLywKQEAgLTE0
MzksOCArMTQzNiw4IEBACiAJCUE4QTQ3MzRGMTUxQTgyNUIwMDQxMjNGRiAvKiBpY3UgKi8gPSB7
CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAotCQkJCTUyQjIyOEMxMjQ1OERD
ODIwMDc1M0Q5MSAvKiBJQ1VIZWxwZXJzLmggKi8sCiAJCQkJQThBNDczNTAxNTFBODI1QjAwNDEy
M0ZGIC8qIENvbGxhdG9ySUNVLmNwcCAqLywKKwkJCQk1MkIyMjhDMTI0NThEQzgyMDA3NTNEOTEg
LyogSUNVSGVscGVycy5oICovLAogCQkJKTsKIAkJCXBhdGggPSBpY3U7CiAJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOwpAQCAtMTY0Miw3ICsxNjM5LDYgQEAKIAkJCQlBOEE0NzM5RTE1MUE4MjVC
MDA0MTIzRkYgLyogRGF0YUxvZy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBOEE0NzNBMDE1MUE4
MjVCMDA0MTIzRkYgLyogRGF0ZU1hdGguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEY5NUI2MzMy
MENCNEI3NzAwNDc5NjM1IC8qIERlYnVnSGVhcC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkxQUNB
REQ4NDE4ODQ0ODAxMDBEOEI3MUQgLyogRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0g
aW4gU291cmNlcyAqLywKIAkJCQlBOEE0NzNBRTE1MUE4MjVCMDA0MTIzRkYgLyogZGl5LWZwLmNj
IGluIFNvdXJjZXMgKi8sCiAJCQkJQThBNDczQjAxNTFBODI1QjAwNDEyM0ZGIC8qIGRvdWJsZS1j
b252ZXJzaW9uLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJQThBNDczQkExNTFBODI1QjAwNDEyM0ZG
IC8qIGR0b2EuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybUVuYWJsZUNvY29hLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29h
LmgKaW5kZXggNTU0MjQzZjQ2MjQ1N2ZiNzEyZWQ0YzhmNmFjZDNlYzc4NWNhZjkwNi4uNjdiNWNj
NjI4Y2ZmMGRjODBhZWU5ZjcxMjNmODZlYTlhMjA3NmJlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
RW5hYmxlQ29jb2EuaApAQCAtMTg3LDExICsxODcsMTEgQEAKICNkZWZpbmUgRU5BQkxFX01BQ19H
RVNUVVJFX0VWRU5UUyAxCiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVOQUJMRV9XRUJQUk9DRVNT
X05TUlVOTE9PUCkgJiYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMDE0MDApCisjaWYgIWRlZmluZWQoRU5BQkxFX1dFQlBST0NFU1NfTlNSVU5M
T09QKSAmJiBQTEFURk9STShNQUMpCiAjZGVmaW5lIEVOQUJMRV9XRUJQUk9DRVNTX05TUlVOTE9P
UCAxCiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVOQUJMRV9XRUJQUk9DRVNTX1dJTkRPV1NFUlZF
Ul9CTE9DS0lORykgJiYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9S
RVFVSVJFRCA+PSAxMDE0MDApCisjaWYgIWRlZmluZWQoRU5BQkxFX1dFQlBST0NFU1NfV0lORE9X
U0VSVkVSX0JMT0NLSU5HKSAmJiBQTEFURk9STShNQUMpCiAjZGVmaW5lIEVOQUJMRV9XRUJQUk9D
RVNTX1dJTkRPV1NFUlZFUl9CTE9DS0lORyAxCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi93dGYvUGxhdGZvcm1IYXZlLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaApp
bmRleCAwZDBmYzk2MDNjNDdlYWQxOTc3OTE2MmQ0ZTVjYWE5YWRhN2ZlZjdmLi40OGQ3YmRiYTM2
YWQ1OThiNDY3M2UzNjQwMTM0NGIzNjU2NWQxODgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0
Zi9QbGF0Zm9ybUhhdmUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaApAQCAt
OTcsNyArOTcsNyBAQAogI2RlZmluZSBIQVZFX0FWU1RSRUFNU0VTU0lPTiAxCiAjZW5kaWYKIAot
I2lmICFkZWZpbmVkKEhBVkVfUEFTU0tJVF9CT1VORF9JTlRFUkZBQ0VfSURFTlRJRklFUikgJiYg
KFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01J
Tl9SRVFVSVJFRCA+PSAxMDE0MDApKQorI2lmICFkZWZpbmVkKEhBVkVfUEFTU0tJVF9CT1VORF9J
TlRFUkZBQ0VfSURFTlRJRklFUikgJiYgKFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFDKSkK
ICNkZWZpbmUgSEFWRV9QQVNTS0lUX0JPVU5EX0lOVEVSRkFDRV9JREVOVElGSUVSIDEKICNlbmRp
ZgogCkBAIC0zMzcsNyArMzM3LDcgQEAKICNkZWZpbmUgSEFWRV9IU1RTX1NUT1JBR0VfUEFUSCAx
CiAjZW5kaWYKIAotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFM
WVNUKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShNQUND
QVRBTFlTVCkKICNkZWZpbmUgSEFWRV9VUkxfRk9STUFUVElORyAxCiAjZW5kaWYKIApAQCAtMzQ5
LDE3ICszNDksMTcgQEAKICNkZWZpbmUgSEFWRV9BVkNPTlRFTlRLRVlTRVNTSU9OIDEKICNlbmRp
ZgogCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisj
aWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNU
KQogI2RlZmluZSBIQVZFX1NFQ19LRVlfUFJPWFkgMQogI2VuZGlmCiAKIC8qIEZJWE1FOiBTaG91
bGQgdGhpcyBiZSBlbmFibGVkIG9yIElPU19GQU1JTFksIG5vdCBqdXN0IElPUz8gKi8KLSNpZiAo
UExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQw
MCkgfHwgUExBVEZPUk0oSU9TKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oSU9TKQog
I2RlZmluZSBIQVZFX0ZPVU5EQVRJT05fV0lUSF9TQVZFX0NPT0tJRVNfV0lUSF9DT01QTEVUSU9O
X0hBTkRMRVIgMQogI2VuZGlmCiAKIC8qIEZJWE1FOiBTaG91bGQgdGhpcyBiZSBlbmFibGVkIGZv
ciBJT1NfRkFNSUxZLCBub3QganVzdCBJT1M/ICovCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPUykK
KyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykKICNkZWZpbmUgSEFWRV9GT1VOREFU
SU9OX1dJVEhfU0FNRV9TSVRFX0NPT0tJRV9TVVBQT1JUIDEKICNlbmRpZgogCkBAIC0zNjcsMTEg
KzM2NywxMSBAQAogI2RlZmluZSBIQVZFX05TSFRUUENPT0tJRVNUT1JBR0VfX0lOSVRXSVRISURF
TlRJRklFUl9XSVRIX0lOQUNDVVJBVEVfTlVMTEFCSUxJVFkgMQogI2VuZGlmCiAKLSNpZiAoUExB
VEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkg
fHwgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKKyNpZiBQTEFURk9STShN
QUMpIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAjZGVmaW5lIEhB
VkVfT1NfREFSS19NT0RFX1NVUFBPUlQgMQogI2VuZGlmCiAKLSNpZiBQTEFURk9STShNQUMpICYm
IF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCisjaWYgUExBVEZPUk0o
TUFDKQogI2RlZmluZSBIQVZFX0NHX0ZPTlRfUkVOREVSSU5HX0dFVF9GT05UX1NNT09USElOR19E
SVNBQkxFRCAxCiAjZW5kaWYKIApAQCAtNDA0LDcgKzQwNCw3IEBACiAjZGVmaW5lIEhBVkVfTElO
S19QUkVWSUVXIDEKICNlbmRpZgogCi0jaWYgKFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSkK
KyNpZiBQTEFURk9STShDT0NPQSkKICNkZWZpbmUgSEFWRV9BQ0NFU1NJQklMSVRZX1NVUFBPUlQg
MQogI2VuZGlmCiAKQEAgLTQxMiw3ICs0MTIsNyBAQAogI2RlZmluZSBIQVZFX0FDQ0VTU0lCSUxJ
VFlfQlVORExFU19QQVRIIDEKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwg
KFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0
MDApCisjaWYgUExBVEZPUk0oQ09DT0EpCiAjZGVmaW5lIEhBVkVfQVVUSE9SSVpBVElPTl9TVEFU
VVNfRk9SX01FRElBX1RZUEUgMQogI2VuZGlmCiAKQEAgLTQ1MCwxMSArNDUwLDExIEBACiAjZGVm
aW5lIEhBVkVfQ1NDSEVDS0ZJWERJU0FCTEUgMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkKKyNpZiBQTEFURk9STShDT0NPQSkKICNkZWZpbmUgSEFWRV9TQU5EQk9Y
X0lTU1VFX01BQ0hfRVhURU5TSU9OX1RPX1BST0NFU1NfQllfQVVESVRfVE9LRU4gMQogI2VuZGlm
CiAKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDEwMTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpZiBQTEFURk9STShDT0NPQSkK
ICNkZWZpbmUgSEFWRV9TQU5EQk9YX0lTU1VFX1JFQURfRVhURU5TSU9OX1RPX1BST0NFU1NfQllf
QVVESVRfVE9LRU4gMQogI2VuZGlmCiAKQEAgLTQ2Miw3ICs0NjIsNyBAQAogI2RlZmluZSBIQVZF
X01ETlNfRkFTVF9SRUdJU1RSQVRJT04gMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oTUFDKSAm
JiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKKyNpZiBQTEFURk9STShDT0NPQSkKICNkZWZpbmUgSEFWRV9ESVNBTExPV0FC
TEVfVVNFUl9JTlNUQUxMRURfRk9OVFMgMQogI2VuZGlmCiAKQEAgLTUyNyw3ICs1MjcsNyBAQAog
I2RlZmluZSBIQVZFX1ZJREVPX1BFUkZPUk1BTkNFX01FVFJJQ1MgMQogI2VuZGlmCiAKLSNpZiBQ
TEFURk9STShDT0NPQSkgJiYgIShQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPCAxMDE0MDApICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkKKyNpZiBQTEFU
Rk9STShDT0NPQSkgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogI2RlZmluZSBIQVZFX0NPUkVU
RVhUX0FVVE9fT1BUSUNBTF9TSVpJTkcgMQogI2VuZGlmCiAKQEAgLTU0Myw3ICs1NDMsNyBAQAog
I2RlZmluZSBIQVZFX1RMU19QUk9UT0NPTF9WRVJTSU9OX1QgMQogI2VuZGlmCiAKLSNpZiBQTEFU
Rk9STShJT1MpIHx8IChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShXQVRDSE9TKSB8fCBQTEFURk9STShBUFBMRVRW
KSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKKyNpZiBQTEFURk9STShDT0NPQSkKICNkZWZpbmUg
SEFWRV9TRUNfVFJVU1RfRVZBTFVBVEVfV0lUSF9FUlJPUiAxCiAjZW5kaWYKIApAQCAtNTc1LDcg
KzU3NSw3IEBACiAjZGVmaW5lIEhBVkVfTkVBUl9GSUVMRCAxCiAjZW5kaWYKIAotI2lmIChQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSB8
fCBQTEFURk9STShJT1NfRkFNSUxZKQorI2lmIFBMQVRGT1JNKENPQ09BKQogI2RlZmluZSBIQVZF
X09TX1NJR05QT1NUIDEKICNlbmRpZgogCkBAIC01ODQsNyArNTg0LDcgQEAKICNkZWZpbmUgSEFW
RV9TWVNURU1fRk9OVF9TVFlMRV9USVRMRV80IDEKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oQ09D
T0EpICYmICEoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
IDwgMTAxNDAwKSAmJiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExFVFYpCisj
aWYgUExBVEZPUk0oQ09DT0EpICYmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZPUk0oQVBQ
TEVUVikKICNkZWZpbmUgSEFWRV9DR19QQVRIX1VORVZFTl9DT1JORVJTX1JPVU5ERURSRUNUIDEK
ICNlbmRpZgogCkBAIC01OTYsNyArNTk2LDcgQEAKICNkZWZpbmUgSEFWRV9HQ0VYVEVOREVER0FN
RVBBRF9CVVRUT05TX09QVElPTlNfTUVOVSAxCiAjZW5kaWYKIAotI2lmIChQTEFURk9STShNQUMp
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSB8fCAoUExBVEZP
Uk0oSU9TX0ZBTUlMWSkpCisjaWYgUExBVEZPUk0oQ09DT0EpCiAjZGVmaW5lIEhBVkVfR0NFWFRF
TkRFREdBTUVQQURfQlVUVE9OU19USFVNQlNUSUNLIDEKICNlbmRpZgogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZSBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
TWFjLmNtYWtlCmluZGV4IGI3NGEyNzcyOGVjNTUwMDc1NTg3ZTBhNDgyNWMyMTgxZmI5NTkxOWEu
LjA3Y2IwMTg2ZDEzZDVjZDIzZDY0NTcxZTE5Y2EwM2E3NzQ1N2JjNTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRm
b3JtTWFjLmNtYWtlCkBAIC03Miw3ICs3Miw2IEBAIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VTCiAg
ICAgY29jb2EvVVJMQ29jb2EubW0KICAgICBjb2NvYS9Xb3JrUXVldWVDb2NvYS5jcHAKIAotICAg
IG1hYy9EZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbQogICAgIG1hYy9GaWxlU3lzdGVt
TWFjLm1tCiAgICAgbWFjL1NjaGVkdWxlUGFpck1hYy5tbQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9QbGF0Zm9ybVVzZS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1Vc2UuaAppbmRl
eCA0MTk0NjUyMjQxMjA1ZTJlM2Q4YzZkYzI3N2IxMzQ2ZTJkMzc1MTkyLi5iOWM5MDI5MzM1MDZl
YTYxNjliYTcxZjIwNGQxODZlMzMyODkyMzJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybVVzZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtVXNlLmgKQEAgLTI4Miw4
ICsyODIsNyBAQAogI2VuZGlmCiAKIC8qIFRoZSBvdmVycmlkZSBpc24ndCBuZWVkZWQgb24gaU9T
IGZhbWlseSwgYXMgdGhlIGRlZmF1bHQgYmVoYXZpb3IgaXMgdG8gbm90IHNuaWZmLiAqLwotLyog
RklYTUU6IFRoaXMgc2hvdWxkIHByb2JhYmx5IGJlIGVuYWJsZWQgb24gMTAuMTMuMiBhbmQgbmV3
ZXIsIG5vdCBqdXN0IDEwLjE0IGFuZCBuZXdlci4gKi8KLSNpZiBQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCisjaWYgUExBVEZPUk0oTUFD
KQogI2RlZmluZSBVU0VfQ0ZORVRXT1JLX0NPTlRFTlRfRU5DT0RJTkdfU05JRkZJTkdfT1ZFUlJJ
REUgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL21hYy9EZXByZWNhdGVk
U3ltYm9sc1VzZWRCeVNhZmFyaS5tbSBiL1NvdXJjZS9XVEYvd3RmL21hYy9EZXByZWNhdGVkU3lt
Ym9sc1VzZWRCeVNhZmFyaS5tbQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTcyMmQ2
Nzg2MDRjNWZkN2FmYjE1NzQ4MThhZGNkNTlhMmJlNGM3MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9tYWMvRGVwcmVjYXRlZFN5
bWJvbHNVc2VkQnlTYWZhcmkubW0KKysrIC9kZXYvbnVsbApAQCAtMSw2MCArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2ltcG9ydCAiY29uZmlnLmgiCi0KLSNpbXBvcnQgPHN0ZGludC5oPgotI2ltcG9y
dCA8d3RmL0hhc2hNYXAuaD4KLSNpbXBvcnQgPHd0Zi9IYXNoU2V0Lmg+Ci0jaW1wb3J0IDx3dGYv
TG9jay5oPgotI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KLSNpbXBvcnQgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgotI2ltcG9ydCA8d3RmL1N0ZExpYkV4dHJhcy5oPgotCi0vLyBUaGlzIGZpbGUg
Y29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzIHRoYXQgdGhlIGxhc3QgcmVsZWFzZWQgdmVyc2lv
biBvZiBTYWZhcmkgdXNlcy4KLS8vIE9uY2UgU2FmYXJpIHN0b3BzIHVzaW5nIHRoZW0sIHdlIHNo
b3VsZCByZW1vdmUgdGhlbS4KLQotbmFtZXNwYWNlIFdURiB7Ci0KLSNpZiBQTEFURk9STShNQUMp
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE0MDAKLXN0cnVjdCBMb2Nr
QmFzZSB7Ci1wcml2YXRlOgotICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGxvY2tTbG93KCk7
Ci0gICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgdW5sb2NrU2xvdygpOwotICAgIEF0b21pYzx1
aW50OF90PiBtX2J5dGU7Ci19OwotCi12b2lkIExvY2tCYXNlOjpsb2NrU2xvdygpCi17Ci0gICAg
RGVmYXVsdExvY2tBbGdvcml0aG06OmxvY2tTbG93KG1fYnl0ZSk7Ci19Ci0KLXZvaWQgTG9ja0Jh
c2U6OnVubG9ja1Nsb3coKQotewotICAgIERlZmF1bHRMb2NrQWxnb3JpdGhtOjp1bmxvY2tTbG93
KG1fYnl0ZSwgRGVmYXVsdExvY2tBbGdvcml0aG06OlVuZmFpcik7Ci19Ci0jZW5kaWYKLQotfSAv
LyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL1By
b2Nlc3NNZW1vcnlGb290cHJpbnQuaCBiL1NvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vUHJvY2Vz
c01lbW9yeUZvb3RwcmludC5oCmluZGV4IDdiMDNlZDQzMDZkNjgwY2EwNjk3N2NmMWM4MWEwNzk0
MzdmODIxMDAuLjVmMTc0ODhjMjRlNjM3MzczNDI3ZTBhM2MzNTRkMjg4YTQ5MTgzZmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vUHJvY2Vzc01lbW9yeUZvb3RwcmludC5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vUHJvY2Vzc01lbW9yeUZvb3RwcmludC5o
CkBAIC0zMSw5ICszMSw3IEBACiAjICAgIGluY2x1ZGUgPGxpYnByb2MuaD4KICMgICAgaWYgUlVT
QUdFX0lORk9fQ1VSUkVOVCA+PSA0CiAjICAgICAgICBkZWZpbmUgSEFTX01BWF9GT09UUFJJTlQK
LSMgICAgICAgIGlmIGRlZmluZWQoUkxJTUlUX0ZPT1RQUklOVF9JTlRFUlZBTCkgJiYgX19oYXNf
aW5jbHVkZSg8bGlicHJvY19pbnRlcm5hbC5oPikgXAotICAgICAgICAgICAgICYmIChQTEFURk9S
TShJT1NfRkFNSUxZKSBcCi0gICAgICAgICAgICAgICAgIHx8IChQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSkKKyMgICAgICAgIGlmIGRl
ZmluZWQoUkxJTUlUX0ZPT1RQUklOVF9JTlRFUlZBTCkgJiYgX19oYXNfaW5jbHVkZSg8bGlicHJv
Y19pbnRlcm5hbC5oPikgJiYgUExBVEZPUk0oQ09DT0EpCiAjICAgICAgICAgICAgZGVmaW5lIEhB
U19SRVNFVF9GT09UUFJJTlRfSU5URVJWQUwKICMgICAgICAgICAgICBkZWZpbmUgTUFYX0ZPT1RQ
UklOVF9GSUVMRCByaV9pbnRlcnZhbF9tYXhfcGh5c19mb290cHJpbnQKICMgICAgICAgICAgICBp
bmNsdWRlIDxsaWJwcm9jX2ludGVybmFsLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jb2NvYS9OU0NvbG9yU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jb2NvYS9OU0NvbG9yU1BJLmgKaW5kZXggNDRmN2ViZDRiYzAwMjcyNmNiNDcwYzQyYjljYzZj
NzkyYzcxY2Q4Ny4uMjg2NzY0ZTYzMjA5NzI2MDVmYTI3Y2IwNWQxODMyMjljNzczYmQxZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvTlNDb2xvclNQSS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL05TQ29sb3JTUEkuaApAQCAtMjgs
MTAgKzI4LDcgQEAKICNpZiBQTEFURk9STShNQUMpICYmIFVTRShBUFBMRV9JTlRFUk5BTF9TREsp
CiAKICNpbXBvcnQgPEFwcEtpdC9OU0NvbG9yX1ByaXZhdGUuaD4KLQotI2lmIF9fTUFDX09TX1hf
VkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCiAjaW1wb3J0IDxBcHBLaXQvTlNDb2xvcl9V
c2VyQWNjZW50Lmg+Ci0jZW5kaWYKIAogI2Vsc2UKIApAQCAtNTEsNyArNDgsNiBAQAogKyAoTlND
b2xvciAqKWNvbnRhaW5lckJvcmRlckNvbG9yOwogQGVuZAogCi0jaWYgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIE5T
VXNlckFjY2VudENvbG9yKSB7CiAgICAgTlNVc2VyQWNjZW50Q29sb3JSZWQgPSAwLAogICAgIE5T
VXNlckFjY2VudENvbG9yT3JhbmdlLApAQCAtNjUsNiArNjEsNSBAQCB0eXBlZGVmIE5TX0VOVU0o
TlNJbnRlZ2VyLCBOU1VzZXJBY2NlbnRDb2xvcikgewogfTsKIAogZXh0ZXJuICJDIiBOU1VzZXJB
Y2NlbnRDb2xvciBOU0NvbG9yR2V0VXNlckFjY2VudENvbG9yKHZvaWQpOwotI2VuZGlmCiAKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvUXVhcnR6
Q29yZVNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvUXVhcnR6Q29yZVNQ
SS5oCmluZGV4IDJkZmU2YTQ3NWVmN2YyOGU4YjZkOTFhMmJhODU0OWVkYTc1MDg5NDUuLjhmYzU0
YTViN2EzZDExMmE1M2Y0Mzc0NzA3MDBhNWI4ODU1MTcwYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmgKQEAgLTc1LDcgKzc1LDcgQEAg
dHlwZWRlZiBzdHJ1Y3QgX0NBUmVuZGVyQ29udGV4dCBDQVJlbmRlckNvbnRleHQ7CiAtICh2b2lk
KXNldEZlbmNlUG9ydDoobWFjaF9wb3J0X3QpcG9ydDsKIC0gKHZvaWQpc2V0RmVuY2VQb3J0Oiht
YWNoX3BvcnRfdClwb3J0IGNvbW1pdEhhbmRsZXI6KHZvaWQoXikodm9pZCkpYmxvY2s7CiAKLSNp
ZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAx
NDAwCisjaWYgUExBVEZPUk0oTUFDKQogKyAodm9pZClzZXRBbGxvd3NDR1NDb25uZWN0aW9uczoo
Qk9PTClmbGFnOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL21hYy9EYXRhRGV0ZWN0b3JzU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvRGF0YURldGVjdG9yc1NQSS5oCmluZGV4IDQzYmFhYjBmNWU0YjA1MmViZTk2NjljYWMxNDc2
MzhlOTM0ODJjMDQuLjAyYTk4MjhlN2ZmYTQ0MzQzYWQ3YmMyMDUyZTQyYTgzNzIwNWE2YjMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9EYXRhRGV0ZWN0b3JzU1BJ
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL0RhdGFEZXRlY3RvcnNTUEku
aApAQCAtODcsNyArODcsNyBAQCBlbnVtIHsKIAogI2VuZGlmIC8vICFVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQogCi0jaWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JF
UVVJUkVEID49IDEwMTQwMAorI2lmIFBMQVRGT1JNKE1BQykKIAogV1RGX0VYVEVSTl9DX0JFR0lO
CiBDRlR5cGVJRCBERFJlc3VsdEdldENGVHlwZUlEKHZvaWQpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TQXBwbGljYXRpb25TUEkuaCBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL21hYy9OU0FwcGxpY2F0aW9uU1BJLmgKaW5kZXggNTBkZWQ3MzJlMjAy
MmIzYzc5OTE2ODk0NjcwNmE3MGUyNDMyZWU5MC4uY2YxYzFiNDU2MDgyNmNhZTRiZjkwYmY2Y2Fi
NTRlYTEyZGQyMDJkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFj
L05TQXBwbGljYXRpb25TUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMv
TlNBcHBsaWNhdGlvblNQSS5oCkBAIC0yNiwxNSArMjYsMTAgQEAKICNpZiBVU0UoQVBQS0lUKQog
CiBAaW50ZXJmYWNlIE5TQXBwbGljYXRpb24gKCkKLQogLSAodm9pZClzcGVha1N0cmluZzooTlNT
dHJpbmcgKilzdHJpbmc7CiAtICh2b2lkKV9zZXRDdXJyZW50RXZlbnQ6KE5TRXZlbnQgKilldmVu
dDsKLQotI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCiArICh2
b2lkKV9hY2Nlc3NpYmlsaXR5SW5pdGlhbGl6ZTsKICsgKHZvaWQpX3ByZXZlbnREb2NrQ29ubmVj
dGlvbnM7Ci0jZW5kaWYKLQogQGVuZAogCiAjZW5kaWYgLy8gVVNFKEFQUEtJVCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRGF0YURldGVjdGlvbi5tbSBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRGF0YURldGVjdGlvbi5tbQppbmRleCA0NzI5ZWY4ZjY1
MTc1Y2Y3M2I2ZWQyYWYxNDhmMDkxNmQ2ZWE2OGQ2Li5hMjZkODNiNzVlZTYwYWYyMGE2OTJjY2Ux
MmUwM2ZjYWY0NzBhMDkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29h
L0RhdGFEZXRlY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9EYXRh
RGV0ZWN0aW9uLm1tCkBAIC01NCw3ICs1NCw3IEBACiAKICNpbXBvcnQgIkRhdGFEZXRlY3RvcnND
b3JlU29mdExpbmsuaCIKIAotI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9O
X01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKKyNpZiBQTEFURk9STShNQUMpCiB0ZW1wbGF0ZTw+IHN0
cnVjdCBXVEY6OkNGVHlwZVRyYWl0PEREUmVzdWx0UmVmPiB7CiAgICAgc3RhdGljIGlubGluZSBD
RlR5cGVJRCB0eXBlSUQodm9pZCkgeyByZXR1cm4gRERSZXN1bHRHZXRDRlR5cGVJRCgpOyB9CiB9
OwpAQCAtODYsMTEgKzg2LDcgQEAgc3RhdGljIE9wdGlvbmFsPERldGVjdGVkSXRlbT4gZGV0ZWN0
SXRlbShjb25zdCBWaXNpYmxlUG9zaXRpb24mIHBvc2l0aW9uLCBjb25zdAogICAgIE9wdGlvbmFs
PFNpbXBsZVJhbmdlPiBtYWluUmVzdWx0UmFuZ2U7CiAgICAgQ0ZJbmRleCByZXN1bHRDb3VudCA9
IENGQXJyYXlHZXRDb3VudChyZXN1bHRzLmdldCgpKTsKICAgICBmb3IgKENGSW5kZXggaSA9IDA7
IGkgPCByZXN1bHRDb3VudDsgaSsrKSB7Ci0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA+PSAxMDE0MDAKLSAgICAgICAgRERSZXN1bHRSZWYgcmVzdWx0ID0gY2hlY2tlZF9jZl9j
YXN0PEREUmVzdWx0UmVmPihDRkFycmF5R2V0VmFsdWVBdEluZGV4KHJlc3VsdHMuZ2V0KCksIGkp
KTsKLSNlbHNlCi0gICAgICAgIEREUmVzdWx0UmVmIHJlc3VsdCA9IHN0YXRpY19jYXN0PEREUmVz
dWx0UmVmPihjb25zdF9jYXN0PENGX0JSSURHRURfVFlQRShpZCkgdm9pZCo+KENGQXJyYXlHZXRW
YWx1ZUF0SW5kZXgocmVzdWx0cy5nZXQoKSwgaSkpKTsKLSNlbmRpZgorICAgICAgICBhdXRvIHJl
c3VsdCA9IGNoZWNrZWRfY2ZfY2FzdDxERFJlc3VsdFJlZj4oQ0ZBcnJheUdldFZhbHVlQXRJbmRl
eChyZXN1bHRzLmdldCgpLCBpKSk7CiAgICAgICAgIENGUmFuZ2UgcmVzdWx0UmFuZ2VJbkNvbnRl
eHQgPSBERFJlc3VsdEdldFJhbmdlKHJlc3VsdCk7CiAgICAgICAgIGlmIChoaXRMb2NhdGlvbiA+
PSByZXN1bHRSYW5nZUluQ29udGV4dC5sb2NhdGlvbiAmJiAoaGl0TG9jYXRpb24gLSByZXN1bHRS
YW5nZUluQ29udGV4dC5sb2NhdGlvbikgPCByZXN1bHRSYW5nZUluQ29udGV4dC5sZW5ndGgpIHsK
ICAgICAgICAgICAgIG1haW5SZXN1bHQgPSByZXN1bHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW0KaW5kZXggZTAyYWFmM2Q0MmNhNzI1NTE1NTllNjMx
MWQ0ODc1M2UzYTVjMDIzNy4uZjVlM2NiZjIxYTFhMzZkMjdmN2Y4ZjM1MTg3YzExNzhhNTY4NWUy
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9IVE1MQ29udmVydGVy
Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvSFRNTENvbnZlcnRlci5tbQpA
QCAtMTI1Nyw3ICsxMjU3LDcgQEAgc3RhdGljIENsYXNzIF9XZWJNZXNzYWdlRG9jdW1lbnRDbGFz
cygpCiAgICAgc3RhdGljIEJPT0wgbG9va2VkVXBDbGFzcyA9IE5POwogICAgIGlmICghbG9va2Vk
VXBDbGFzcykgewogICAgICAgICAvLyBJZiB0aGUgY2xhc3MgaXMgbm90IHRoZXJlLCB3ZSBkb24n
dCB3YW50IHRvIHRyeSBhZ2FpbgotI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKKyNpZiBQTEFURk9STShNQUMpCiAgICAgICAgIF9X
ZWJNZXNzYWdlRG9jdW1lbnRDbGFzcyA9IG9iamNfbG9va1VwQ2xhc3MoIkVkaXRhYmxlV2ViTWVz
c2FnZURvY3VtZW50Iik7CiAjZW5kaWYKICAgICAgICAgaWYgKCFfV2ViTWVzc2FnZURvY3VtZW50
Q2xhc3MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9H
cmFwaGljc0NvbnRleHRDRy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
Zy9HcmFwaGljc0NvbnRleHRDRy5jcHAKaW5kZXggYzU3MThkMjFhNTgyOWYxMzgzODM0ZmI4YmQz
MjkxN2M1YTFlMDNkOC4uZDkwODg4MDhhYjhiY2JiMTZhNTM0OGMwOWIwNWU2YzZkMmI0ZGUzNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3ND
b250ZXh0Q0cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dy
YXBoaWNzQ29udGV4dENHLmNwcApAQCAtNDcsNyArNDcsOCBAQAogI2luY2x1ZGUgPHd0Zi9VUkwu
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CiAKLSNkZWZpbmUgVVNFX0RSQVdf
UEFUSF9ESVJFQ1QgKFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSkKKy8vIEZJWE1FOiBUaGlz
IHNob3VsZCBwcm9iYWJseSBiZSBIQVZFKENHX0NPTlRFWFRfRFJBV19QQVRIX0RJUkVDVCkgYW5k
IGJlIGluIFBsYXRmb3JtSGF2ZS5oLgorI2RlZmluZSBVU0VfRFJBV19QQVRIX0RJUkVDVCBQTEFU
Rk9STShDT0NPQSkKIAogLy8gRklYTUU6IFRoZSBmb2xsb3dpbmcgdXNpbmcgZGVjbGFyYXRpb24g
c2hvdWxkIGJlIGluIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPi4KIHVzaW5nIFdURjo6cGFpckludEhh
c2g7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZUZ1bGxT
Y3JlZW5QbGFjZWhvbGRlclZpZXcubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2Vi
Q29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0KaW5kZXggYzBjZDUyM2YyY2RiYWE3OTE4
NDk0ODAyZThmZjA5ZmUyMTE4NmNiYy4uYzIyYTAwZmQ3ZmRmY2RiYzQ1MTFkOGRmMDZmMDE1NWE2
MDZmZjAyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVG
dWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbQpAQCAtNTIsMTQgKzUyLDcg
QEAgLSAoaWQpaW5pdFdpdGhGcmFtZTooTlNSZWN0KWZyYW1lUmVjdAogICAgIF9lZmZlY3RWaWV3
LmdldCgpLmJsZW5kaW5nTW9kZSA9IE5TVmlzdWFsRWZmZWN0QmxlbmRpbmdNb2RlV2l0aGluV2lu
ZG93OwogICAgIF9lZmZlY3RWaWV3LmdldCgpLmhpZGRlbiA9IFlFUzsKICAgICBfZWZmZWN0Vmll
dy5nZXQoKS5zdGF0ZSA9IE5TVmlzdWFsRWZmZWN0U3RhdGVBY3RpdmU7Ci0KLSNpZiBfX01BQ19P
U19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAogICAgIF9lZmZlY3RWaWV3LmdldCgp
Lm1hdGVyaWFsID0gTlNWaXN1YWxFZmZlY3RNYXRlcmlhbFBvcG92ZXI7Ci0jZWxzZQotICAgIF9l
ZmZlY3RWaWV3LmdldCgpLm1hdGVyaWFsID0gTlNWaXN1YWxFZmZlY3RNYXRlcmlhbExpZ2h0Owot
ICAgIF9lZmZlY3RWaWV3LmdldCgpLmFwcGVhcmFuY2UgPSBbTlNBcHBlYXJhbmNlIGFwcGVhcmFu
Y2VOYW1lZDpOU0FwcGVhcmFuY2VOYW1lVmlicmFudExpZ2h0XTsKLSNlbmRpZgotCiAgICAgW3Nl
bGYgYWRkU3VidmlldzpfZWZmZWN0Vmlldy5nZXQoKV07CiAKICAgICBfZXhpdFdhcm5pbmcgPSBh
ZG9wdE5TKFtbTlNUZXh0RmllbGQgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdF0pOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9Db29raWVD
b2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvQ29va2llQ29j
b2EubW0KaW5kZXggYzk3YWViZDdkZjhmMGJhZDI2OTE0MmFlZTNmNTJkM2JlMDdkMzE4OC4uYWEz
OTAyNzE4MmQ3ODRhN2Q5NDY3N2E4ZTAwZmYwMDAwZDdlZjU3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9Db29raWVDb2NvYS5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL0Nvb2tpZUNvY29hLm1tCkBAIC0yOSw3
ICsyOSw3IEBACiAvLyBGSVhNRTogUmVtb3ZlIE5TX0FTU1VNRV9OT05OVUxMX0JFR0lOL0VORCBh
bmQgYWxsIF9OdWxsYWJsZSBhbm5vdGF0aW9ucyBvbmNlIHdlIHJlbW92ZSB0aGUgTlNIVFRQQ29v
a2llIGZvcndhcmQgZGVjbGFyYXRpb24gYmVsb3cuCiBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgog
Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDE0MDAgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01BWF9BTExPV0VEIDwgMTAxNTAwKQorI2lm
IFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01BWF9BTExPV0VEIDwgMTAxNTAw
CiB0eXBlZGVmIE5TU3RyaW5nICogTlNIVFRQQ29va2llU3RyaW5nUG9saWN5OwogQGludGVyZmFj
ZSBOU0hUVFBDb29raWUgKFN0YWdpbmcpCiBAcHJvcGVydHkgKG51bGxhYmxlLCByZWFkb25seSwg
Y29weSkgTlNIVFRQQ29va2llU3RyaW5nUG9saWN5IHNhbWVTaXRlUG9saWN5OwpAQCAtOTIsNyAr
OTIsNiBAQCBzdGF0aWMgT3B0aW9uYWw8ZG91YmxlPiBjb29raWVFeHBpcnkoTlNIVFRQQ29va2ll
ICpjb29raWUpCiAgICAgcmV0dXJuIFtleHBpcnlEYXRlIHRpbWVJbnRlcnZhbFNpbmNlMTk3MF0g
KiAxMDAwLjA7CiB9CiAKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05f
TUlOX1JFUVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIHN0YXRpYyBD
b29raWU6OlNhbWVTaXRlUG9saWN5IGNvcmVTYW1lU2l0ZVBvbGljeShOU0hUVFBDb29raWVTdHJp
bmdQb2xpY3kgX051bGxhYmxlIHBvbGljeSkKIHsKICAgICBpZiAoIXBvbGljeSkKQEAgLTEyMCw3
ICsxMTksNiBAQCBzdGF0aWMgTlNIVFRQQ29va2llU3RyaW5nUG9saWN5IF9OdWxsYWJsZSBuc1Nh
bWVTaXRlUG9saWN5KENvb2tpZTo6U2FtZVNpdGVQb2xpYwogICAgIEFMTE9XX05FV19BUElfV0lU
SE9VVF9HVUFSRFNfRU5ECiAgICAgfQogfQotI2VuZGlmCiAKIENvb2tpZTo6Q29va2llKE5TSFRU
UENvb2tpZSAqY29va2llKQogICAgIDogbmFtZSB7IGNvb2tpZS5uYW1lIH0KQEAgLTEzNiwxMiAr
MTM0LDEwIEBAIENvb2tpZTo6Q29va2llKE5TSFRUUENvb2tpZSAqY29va2llKQogICAgICwgY29t
bWVudFVSTCB7IGNvb2tpZS5jb21tZW50VVJMIH0KICAgICAsIHBvcnRzIHsgcG9ydFZlY3RvckZy
b21MaXN0KGNvb2tpZS5wb3J0TGlzdCkgfQogewotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFD
X09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIEFMTE9XX05FV19BUElfV0lUSE9VVF9HVUFSRFNfQkVHSU4KICAgICBpZiAoW2Nv
b2tpZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNhbWVTaXRlUG9saWN5KV0pCiAgICAg
ICAgIHNhbWVTaXRlID0gY29yZVNhbWVTaXRlUG9saWN5KGNvb2tpZS5zYW1lU2l0ZVBvbGljeSk7
CiAgICAgQUxMT1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKLSNlbmRpZgogfQogCiBDb29r
aWU6Om9wZXJhdG9yIE5TSFRUUENvb2tpZSAqIF9OdWxsYWJsZSAoKSBjb25zdApAQCAtMTc0LDkg
KzE3MCw3IEBAIENvb2tpZTo6b3BlcmF0b3IgTlNIVFRQQ29va2llICogX051bGxhYmxlICgpIGNv
bnN0CiAgICAgICAgIFtwcm9wZXJ0aWVzIHNldE9iamVjdDpleHBpcmF0aW9uRGF0ZSBmb3JLZXk6
TlNIVFRQQ29va2llRXhwaXJlc107CiAgICAgfQogCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPU19G
QU1JTFkpCiAgICAgW3Byb3BlcnRpZXMgc2V0T2JqZWN0OkAoY3JlYXRlZCAvIDEwMDAuMCAtIE5T
VGltZUludGVydmFsU2luY2UxOTcwKSBmb3JLZXk6QCJDcmVhdGVkIl07Ci0jZW5kaWYKIAogICAg
IGF1dG8qIHBvcnRTdHJpbmcgPSBwb3J0U3RyaW5nRnJvbVZlY3Rvcihwb3J0cyk7CiAgICAgaWYg
KHBvcnRTdHJpbmcpCkBAIC0xOTEsMTAgKzE4NSw4IEBAIENvb2tpZTo6b3BlcmF0b3IgTlNIVFRQ
Q29va2llICogX051bGxhYmxlICgpIGNvbnN0CiAgICAgaWYgKGh0dHBPbmx5KQogICAgICAgICBb
cHJvcGVydGllcyBzZXRPYmplY3Q6QFlFUyBmb3JLZXk6QCJIdHRwT25seSJdOwogCi0jaWYgKFBM
QVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAp
IHx8IFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgaWYgKGF1dG8qIHNhbWVTaXRlUG9saWN5ID0g
bnNTYW1lU2l0ZVBvbGljeShzYW1lU2l0ZSkpCiAgICAgICAgIFtwcm9wZXJ0aWVzIHNldE9iamVj
dDpzYW1lU2l0ZVBvbGljeSBmb3JLZXk6QCJTYW1lU2l0ZSJdOwotI2VuZGlmCiAKICAgICBbcHJv
cGVydGllcyBzZXRPYmplY3Q6QCIxIiBmb3JLZXk6TlNIVFRQQ29va2llVmVyc2lvbl07CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvTmV0d29ya1N0
b3JhZ2VTZXNzaW9uQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2Nv
Y29hL05ldHdvcmtTdG9yYWdlU2Vzc2lvbkNvY29hLm1tCmluZGV4IDk1N2MzM2VmMmVkY2QzZTQ1
ODFiMTVlMzJlNjM2ZjA3YmY4ZDE3YWUuLjU2OGJjMTg4OTU0MGI4MDRiMjIwMjFjMDczYWFkMWUx
MDBhNDI4ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29j
b2EvTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jb2NvYS9OZXR3b3JrU3RvcmFnZVNlc3Npb25Db2NvYS5tbQpAQCAtMjMw
LDcgKzIzMCw3IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWxldGVIVFRQQ29va2ll
KENGSFRUUENvb2tpZVN0b3JhZ2VSZWYgY29va2llU3RvcmFnCiAgICAgQ0ZIVFRQQ29va2llU3Rv
cmFnZURlbGV0ZUNvb2tpZShjb29raWVTdG9yYWdlLCBbY29va2llIF9HZXRJbnRlcm5hbENGSFRU
UENvb2tpZV0pOwogfQogCi0jaWYgIShQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lP
Tl9NSU5fUkVRVUlSRUQgPCAxMDE0MDApICYmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZP
Uk0oQVBQTEVUVikKKyNpZiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JNKEFQUExFVFYp
CiBzdGF0aWMgUmV0YWluUHRyPE5TRGljdGlvbmFyeT4gcG9saWN5UHJvcGVydGllcyhjb25zdCBT
YW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgTlNVUkwgKnVybCkKIHsKICAgICBzdGF0aWMgTlNV
UkwgKmVtcHR5VVJMID0gW1tOU1VSTCBhbGxvY10gaW5pdFdpdGhTdHJpbmc6QCIiXTsKQEAgLTI0
OSw3ICsyNDksOCBAQCBzdGF0aWMgTlNBcnJheSAqY29va2llc0ZvclVSTChOU0hUVFBDb29raWVT
dG9yYWdlICpzdG9yYWdlLCBOU1VSTCAqdXJsLCBOU1VSTCAqbQogICAgIGF1dG8gY29tcGxldGlv
bkhhbmRsZXIgPSBbJmNvb2tpZXNQdHJdIChOU0FycmF5ICpjb29raWVzKSB7CiAgICAgICAgIGNv
b2tpZXNQdHIgPSByZXRhaW5QdHIoY29va2llcyk7CiAgICAgfTsKLSNpZiAhKFBMQVRGT1JNKE1B
QykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTQwMCkgJiYgIVBMQVRG
T1JNKFdBVENIT1MpICYmICFQTEFURk9STShBUFBMRVRWKQorLy8gRklYTUU6IFNlZW1zIGxpa2Ug
dGhpcyBuZXdlciBjb2RlIHBhdGggY2FuIGJlIHVzZWQgZm9yIHdhdGNoT1MgYW5kIHR2T1MgdG9v
LgorI2lmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZPUk0oQVBQTEVUVikKICAgICBpZiAo
W3N0b3JhZ2UgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihfZ2V0Q29va2llc0ZvclVSTDpt
YWluRG9jdW1lbnRVUkw6cGFydGl0aW9uOnBvbGljeVByb3BlcnRpZXM6Y29tcGxldGlvbkhhbmRs
ZXI6KV0pCiAgICAgICAgIFtzdG9yYWdlIF9nZXRDb29raWVzRm9yVVJMOnVybCBtYWluRG9jdW1l
bnRVUkw6bWFpbkRvY3VtZW50VVJMIHBhcnRpdGlvbjpwYXJ0aXRpb24gcG9saWN5UHJvcGVydGll
czpzYW1lU2l0ZUluZm8gPyBwb2xpY3lQcm9wZXJ0aWVzKHNhbWVTaXRlSW5mby52YWx1ZSgpLCB1
cmwpLmdldCgpIDogbnVsbHB0ciBjb21wbGV0aW9uSGFuZGxlcjpjb21wbGV0aW9uSGFuZGxlcl07
CiAgICAgZWxzZQpAQCAtMjY2LDcgKzI2Nyw4IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VTZXNzaW9u
OjpzZXRIVFRQQ29va2llc0ZvclVSTChDRkhUVFBDb29raWVTdG9yYWdlUmVmIGNvb2tpZVN0CiB7
CiAgICAgQVNTRVJUKGhhc1Byb2Nlc3NQcml2aWxlZ2UoUHJvY2Vzc1ByaXZpbGVnZTo6Q2FuQWNj
ZXNzUmF3Q29va2llcykgfHwgbV9pc0luTWVtb3J5Q29va2llU3RvcmUpOwogICAgIGlmICghY29v
a2llU3RvcmFnZSkgewotI2lmICEoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05f
TUlOX1JFUVVJUkVEIDwgMTAxNDAwKSAmJiAhUExBVEZPUk0oV0FUQ0hPUykgJiYgIVBMQVRGT1JN
KEFQUExFVFYpCisvLyBGSVhNRTogU2VlbXMgbGlrZSB0aGlzIG5ld2VyIGNvZGUgcGF0aCBjYW4g
YmUgdXNlZCBmb3Igd2F0Y2hPUyBhbmQgdHZPUyB0b28uCisjaWYgIVBMQVRGT1JNKFdBVENIT1Mp
ICYmICFQTEFURk9STShBUFBMRVRWKQogICAgICAgICBpZiAoW05TSFRUUENvb2tpZVN0b3JhZ2Ug
aW5zdGFuY2VzUmVzcG9uZFRvU2VsZWN0b3I6QHNlbGVjdG9yKF9zZXRDb29raWVzOmZvclVSTDpt
YWluRG9jdW1lbnRVUkw6cG9saWN5UHJvcGVydGllczopXSkKICAgICAgICAgICAgIFtbTlNIVFRQ
Q29va2llU3RvcmFnZSBzaGFyZWRIVFRQQ29va2llU3RvcmFnZV0gX3NldENvb2tpZXM6Y29va2ll
cyBmb3JVUkw6dXJsIG1haW5Eb2N1bWVudFVSTDptYWluRG9jdW1lbnRVUkwgcG9saWN5UHJvcGVy
dGllczpwb2xpY3lQcm9wZXJ0aWVzKHNhbWVTaXRlSW5mbywgdXJsKS5nZXQoKV07CiAgICAgICAg
IGVsc2UKQEAgLTI3NCw3ICsyNzYsOCBAQCB2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0
SFRUUENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBjb29raWVTdAogICAgICAg
ICAgICAgW1tOU0hUVFBDb29raWVTdG9yYWdlIHNoYXJlZEhUVFBDb29raWVTdG9yYWdlXSBzZXRD
b29raWVzOmNvb2tpZXMgZm9yVVJMOnVybCBtYWluRG9jdW1lbnRVUkw6bWFpbkRvY3VtZW50VVJM
XTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSNpZiAhKFBMQVRGT1JNKE1BQykgJiYgX19NQUNf
T1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTQwMCkgJiYgIVBMQVRGT1JNKFdBVENIT1Mp
ICYmICFQTEFURk9STShBUFBMRVRWKQorLy8gRklYTUU6IFNlZW1zIGxpa2UgdGhpcyBuZXdlciBj
b2RlIHBhdGggY2FuIGJlIHVzZWQgZm9yIHdhdGNoT1MgYW5kIHR2T1MgdG9vLgorI2lmICFQTEFU
Rk9STShXQVRDSE9TKSAmJiAhUExBVEZPUk0oQVBQTEVUVikKICAgICBpZiAoW05TSFRUUENvb2tp
ZVN0b3JhZ2UgaW5zdGFuY2VzUmVzcG9uZFRvU2VsZWN0b3I6QHNlbGVjdG9yKF9zZXRDb29raWVz
OmZvclVSTDptYWluRG9jdW1lbnRVUkw6cG9saWN5UHJvcGVydGllczopXSkgewogICAgICAgICAv
LyBGSVhNRTogU3RvcCBjcmVhdGluZyBhIG5ldyBOU0hUVFBDb29raWVTdG9yYWdlIG9iamVjdCBl
YWNoIHRpbWUgd2Ugd2FudCB0byBxdWVyeSB0aGUgY29va2llIGphci4KICAgICAgICAgLy8gTmV0
d29ya1N0b3JhZ2VTZXNzaW9uIGNvdWxkIGluc3RlYWQga2VlcCBhIE5TSFRUUENvb2tpZVN0b3Jh
Z2Ugb2JqZWN0IGZvciB1cy4KQEAgLTI4NCw3ICsyODcsNyBAQCB2b2lkIE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbjo6c2V0SFRUUENvb2tpZXNGb3JVUkwoQ0ZIVFRQQ29va2llU3RvcmFnZVJlZiBjb29r
aWVTdAogI2VuZGlmCiAgICAgICAgIGF1dG8gY2ZDb29raWVzID0gYWRvcHRDRihbTlNIVFRQQ29v
a2llIF9uczJjZkNvb2tpZXM6Y29va2llc10pOwogICAgICAgICBDRkhUVFBDb29raWVTdG9yYWdl
U2V0Q29va2llcyhjb29raWVTdG9yYWdlLCBjZkNvb2tpZXMuZ2V0KCksIFt1cmwgX2NmdXJsXSwg
W21haW5Eb2N1bWVudFVSTCBfY2Z1cmxdKTsKLSNpZiAhKFBMQVRGT1JNKE1BQykgJiYgX19NQUNf
T1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTQwMCkgJiYgIVBMQVRGT1JNKFdBVENIT1Mp
ICYmICFQTEFURk9STShBUFBMRVRWKQorI2lmICFQTEFURk9STShXQVRDSE9TKSAmJiAhUExBVEZP
Uk0oQVBQTEVUVikKICAgICB9CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShzYW1lU2l0ZUluZm8p
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9SZXNv
dXJjZVJlcXVlc3RDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29j
b2EvUmVzb3VyY2VSZXF1ZXN0Q29jb2EubW0KaW5kZXggMzY1MzgyZGY4MTAwYjhlMzRkYWNhODk1
NDkyMDdjZWMxMzNhNDNlNi4uMjQ1MTNjZmVmYTM5MjUwZjZjYjI1MTdiNzY0ZDA5OWJlOTEwNWQ1
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9SZXNv
dXJjZVJlcXVlc3RDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2NvY29hL1Jlc291cmNlUmVxdWVzdENvY29hLm1tCkBAIC04OCwxMiArODgsMTAgQEAgdm9pZCBS
ZXNvdXJjZVJlcXVlc3Q6OmRvVXBkYXRlUmVzb3VyY2VSZXF1ZXN0KCkKICAgICBtX3RpbWVvdXRJ
bnRlcnZhbCA9IFttX25zUmVxdWVzdC5nZXQoKSB0aW1lb3V0SW50ZXJ2YWxdOwogICAgIG1fZmly
c3RQYXJ0eUZvckNvb2tpZXMgPSBbbV9uc1JlcXVlc3QuZ2V0KCkgbWFpbkRvY3VtZW50VVJMXTsK
IAotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
Pj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIFVSTCBzaXRlRm9yQ29va2ll
cyB7IFttX25zUmVxdWVzdC5nZXQoKSBfcHJvcGVydHlGb3JLZXk6QCJfa0NGSFRUUENvb2tpZVBv
bGljeVByb3BlcnR5U2l0ZUZvckNvb2tpZXMiXSB9OwogICAgIG1fc2FtZVNpdGVEaXNwb3NpdGlv
biA9IHNpdGVGb3JDb29raWVzLmlzTnVsbCgpID8gU2FtZVNpdGVEaXNwb3NpdGlvbjo6VW5zcGVj
aWZpZWQgOiAoYXJlUmVnaXN0cmFibGVEb21haW5zRXF1YWwoc2l0ZUZvckNvb2tpZXMsIG1fdXJs
KSA/IFNhbWVTaXRlRGlzcG9zaXRpb246OlNhbWVTaXRlIDogU2FtZVNpdGVEaXNwb3NpdGlvbjo6
Q3Jvc3NTaXRlKTsKIAogICAgIG1faXNUb3BTaXRlID0gc3RhdGljX2Nhc3Q8TlNOdW1iZXIqPihb
bV9uc1JlcXVlc3QuZ2V0KCkgX3Byb3BlcnR5Rm9yS2V5OkAiX2tDRkhUVFBDb29raWVQb2xpY3lQ
cm9wZXJ0eUlzVG9wTGV2ZWxOYXZpZ2F0aW9uIl0pLmJvb2xWYWx1ZTsKLSNlbmRpZgogCiAgICAg
aWYgKE5TU3RyaW5nKiBtZXRob2QgPSBbbV9uc1JlcXVlc3QuZ2V0KCkgSFRUUE1ldGhvZF0pCiAg
ICAgICAgIG1faHR0cE1ldGhvZCA9IG1ldGhvZDsKQEAgLTEzNyw3ICsxMzUsNiBAQCB2b2lkIFJl
c291cmNlUmVxdWVzdDo6ZG9VcGRhdGVSZXNvdXJjZUhUVFBCb2R5KCkKICAgICB9CiB9CiAKLSNp
ZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIHN0YXRpYyBOU1VSTCAqc2l0ZUZvckNvb2tp
ZXMoUmVzb3VyY2VSZXF1ZXN0OjpTYW1lU2l0ZURpc3Bvc2l0aW9uIGRpc3Bvc2l0aW9uLCBOU1VS
TCAqdXJsKQogewogICAgIHN3aXRjaCAoZGlzcG9zaXRpb24pIHsKQEAgLTE1MCw3ICsxNDcsNiBA
QCBzdGF0aWMgTlNVUkwgKnNpdGVGb3JDb29raWVzKFJlc291cmNlUmVxdWVzdDo6U2FtZVNpdGVE
aXNwb3NpdGlvbiBkaXNwb3NpdGlvbiwgTgogICAgICAgICByZXR1cm4gZW1wdHlVUkw7CiAgICAg
fQogfQotI2VuZGlmCiAKIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojpkb1VwZGF0ZVBsYXRmb3JtUmVx
dWVzdCgpCiB7CkBAIC0xOTAsMTAgKzE4Niw4IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojpkb1Vw
ZGF0ZVBsYXRmb3JtUmVxdWVzdCgpCiAgICAgICAgIFtuc1JlcXVlc3Qgc2V0SFRUUE1ldGhvZDpo
dHRwTWV0aG9kKCldOwogICAgIFtuc1JlcXVlc3Qgc2V0SFRUUFNob3VsZEhhbmRsZUNvb2tpZXM6
YWxsb3dDb29raWVzKCldOwogCi0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAg
W25zUmVxdWVzdCBfc2V0UHJvcGVydHk6c2l0ZUZvckNvb2tpZXMobV9zYW1lU2l0ZURpc3Bvc2l0
aW9uLCBuc1JlcXVlc3QuVVJMKSBmb3JLZXk6QCJfa0NGSFRUUENvb2tpZVBvbGljeVByb3BlcnR5
U2l0ZUZvckNvb2tpZXMiXTsKICAgICBbbnNSZXF1ZXN0IF9zZXRQcm9wZXJ0eTptX2lzVG9wU2l0
ZSA/IEBZRVMgOiBATk8gZm9yS2V5OkAiX2tDRkhUVFBDb29raWVQb2xpY3lQcm9wZXJ0eUlzVG9w
TGV2ZWxOYXZpZ2F0aW9uIl07Ci0jZW5kaWYKIAogICAgIC8vIENhbm5vdCBqdXN0IHVzZSBzZXRB
bGxIVFRQSGVhZGVyRmllbGRzIGhlcmUsIGJlY2F1c2UgaXQgZG9lcyBub3QgcmVtb3ZlIGhlYWRl
cnMuCiAgICAgZm9yIChOU1N0cmluZyAqb2xkSGVhZGVyTmFtZSBpbiBbbnNSZXF1ZXN0IGFsbEhU
VFBIZWFkZXJGaWVsZHNdKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclRoZW1lTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFj
Lm1tCmluZGV4IGMxMDk5MjdlNjc1YjkxYWFmOWZhMjM2NjIxMTI4MWZiOWZmYmEwYjUuLjI1MzRi
ZTFmZGNjODYzMDZkNDA2ZmNmOWI5N2ZlZmU2OGNhMzU2YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KQEAgLTExNTksMTIgKzExNTksOCBAQCBib29sIFJl
bmRlclRoZW1lTWFjOjpwYWludFRleHRGaWVsZChjb25zdCBSZW5kZXJPYmplY3QmIG8sIGNvbnN0
IFBhaW50SW5mbyYgcGFpbgogICAgIEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBwYWludElu
Zm8uY29udGV4dCgpLmdldENUTSgpOwogICAgIGlmICh0cmFuc2Zvcm0ueFNjYWxlKCkgPiAxIHx8
IHRyYW5zZm9ybS55U2NhbGUoKSA+IDEpIHsKICAgICAgICAgYWRqdXN0ZWRQYWludFJlY3QuaW5m
bGF0ZVgoMSAvIHRyYW5zZm9ybS54U2NhbGUoKSk7Ci0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01J
Tl9SRVFVSVJFRCA+PSAxMDE0MDAKICAgICAgICAgYWRqdXN0ZWRQYWludFJlY3QuaW5mbGF0ZVko
MiAvIHRyYW5zZm9ybS55U2NhbGUoKSk7CiAgICAgICAgIGFkanVzdGVkUGFpbnRSZWN0Lm1vdmUo
MCwgLTEgLyB0cmFuc2Zvcm0ueVNjYWxlKCkpOwotI2Vsc2UKLSAgICAgICAgYWRqdXN0ZWRQYWlu
dFJlY3QuaW5mbGF0ZVkoMSAvIHRyYW5zZm9ybS55U2NhbGUoKSk7Ci0jZW5kaWYKICAgICB9CiAg
ICAgTlNUZXh0RmllbGRDZWxsICp0ZXh0RmllbGQgPSB0aGlzLT50ZXh0RmllbGQoKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggY2UwMDM1ODUwNjA3ZDM2MjZiOTU1MGNjMGI4
NzVkYjQzMGE5YzIyNC4uMjg2ODZlOWFkYzcwYTc2NDUyYTE1ZGQ5NGRmM2U0Y2EwOWNiYTIzZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC0zMzYsOSArMzM2LDkgQEAgcHVibGlj
OgogCiAgICAgdm9pZCB1cGRhdGVFZGl0b3JVSU5vd0lmU2NoZWR1bGVkKCk7CiAKLSAgICBib29s
IHNlbnRlbmNlUmV0cm9Db3JyZWN0aW9uRW5hYmxlZCgpIGNvbnN0CisgICAgc3RhdGljIGJvb2wg
c2VudGVuY2VSZXRyb0NvcnJlY3Rpb25FbmFibGVkKCkKICAgICB7Ci0jaWYgUExBVEZPUk0oTUFD
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAorI2lmIFBMQVRG
T1JNKE1BQykKICAgICAgICAgcmV0dXJuIHRydWU7CiAjZWxzZQogICAgICAgICByZXR1cm4gZmFs
c2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9j
b2NvYS9Eb3dubG9hZENvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9Eb3du
bG9hZHMvY29jb2EvRG93bmxvYWRDb2NvYS5tbQppbmRleCAyMDliYTc0M2U4YmI2MDMwMmViNjZk
ZGU5YzRhOTQyNGNmY2JiNjg3Li5mMWE5Yjk3ZjcwNjgzNjYxMGU2YTk4NzhjNmEwZDUyYTgxMjg2
ODNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0Rvd25sb2Fkcy9j
b2NvYS9Eb3dubG9hZENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
RG93bmxvYWRzL2NvY29hL0Rvd25sb2FkQ29jb2EubW0KQEAgLTQ5LDcgKzQ5LDcgQEAgdm9pZCBE
b3dubG9hZDo6cmVzdW1lKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgcmVzdW1lRGF0YSwgY29u
c3QgU3RyaW5nJiBwYXRoLAogICAgIGF1dG8gbnNEYXRhID0gYWRvcHROUyhbW05TRGF0YSBhbGxv
Y10gaW5pdFdpdGhCeXRlczpyZXN1bWVEYXRhLmRhdGEoKSBsZW5ndGg6cmVzdW1lRGF0YS5zaXpl
KCldKTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIGlzIGEgdGVtcG9yYXJ5IHdvcmthcm91bmQgZm9y
IDxyZGFyOi8vcHJvYmxlbS8zNDc0NTE3MT4uIEZpeGVkIGluIGlPUyAxMyBhbmQgbWFjT1MgMTAu
MTUsIGJ1dCB3ZSBzdGlsbCBuZWVkIHRvIHN1cHBvcnQgbWFjT1MgMTAuMTQgZm9yIG5vdy4KLSNp
ZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAx
NDAwICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDAKKyNpZiBQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDAKICAg
ICBzdGF0aWMgTlNTZXQ8Q2xhc3M+ICpwbGlzdENsYXNzZXMgPSBuaWw7CiAgICAgc3RhdGljIGRp
c3BhdGNoX29uY2VfdCBvbmNlVG9rZW47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQppbmRleCA1MjdjYTc5
ZDgxMDhhMmJjY2JjNzA1YjRkMGU2NzRhNmNlN2FkNjgyLi5hMmNkYjQzN2NhZWQ2Nzg3MWRhM2M3
ZWE0ODI3MGU3OTRiZWY0MzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCkBAIC0xMTg4LDExICsxMTg4
LDkgQEAgTmV0d29ya1Nlc3Npb25Db2NvYTo6TmV0d29ya1Nlc3Npb25Db2NvYShOZXR3b3JrUHJv
Y2VzcyYgbmV0d29ya1Byb2Nlc3MsIE5ldHdvcmsKIAogICAgIGNvbmZpZ3VyYXRpb24uX3RpbWlu
Z0RhdGFPcHRpb25zID0gX1RpbWluZ0RhdGFPcHRpb25zRW5hYmxlVzNDTmF2aWdhdGlvblRpbWlu
ZzsKIAotI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlS
RUQgPj0gMTAxNDAwKSB8fCBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIC8vIEZJWE1FOiBSZXBs
YWNlIEAia0NGU3RyZWFtUHJvcGVydHlBdXRvRXJyb3JPblN5c3RlbUNoYW5nZSIgd2l0aCBhIGNv
bnN0YW50IGZyb20gdGhlIFNESyBvbmNlIHJkYXI6Ly9wcm9ibGVtLzQwNjUwMjQ0IGlzIGluIGEg
YnVpbGQuCiAgICAgaWYgKHBhcmFtZXRlcnMuc3VwcHJlc3Nlc0Nvbm5lY3Rpb25UZXJtaW5hdGlv
bk9uU3lzdGVtQ2hhbmdlKQogICAgICAgICBjb25maWd1cmF0aW9uLl9zb2NrZXRTdHJlYW1Qcm9w
ZXJ0aWVzID0gQHsgQCJrQ0ZTdHJlYW1Qcm9wZXJ0eUF1dG9FcnJvck9uU3lzdGVtQ2hhbmdlIiA6
IEBOTyB9OwotI2VuZGlmCiAKICNpZiBQTEFURk9STShXQVRDSE9TKQogICAgIGNvbmZpZ3VyYXRp
b24uX2NvbXBhbmlvblByb3h5UHJlZmVyZW5jZSA9IE5TVVJMU2Vzc2lvbkNvbXBhbmlvblByb3h5
UHJlZmVyZW5jZVByZWZlckRpcmVjdFRvQ2xvdWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1Bs
dWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KaW5kZXggMjcwM2IyOGIxZjM2NGMy
Y2IxMzFlYzEwMWRiNzAyMWRmMDJjMmY0MC4uMGY4YWEzMWZjYmMxNzg4ZWNiMTIxMzhhNmJiNGU4
M2VmMTdhMjE2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL21hYy9Q
bHVnaW5Qcm9jZXNzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9tYWMv
UGx1Z2luUHJvY2Vzc01hYy5tbQpAQCAtMzkyLDEwICszOTIsOSBAQCB2b2lkIFBsdWdpblByb2Nl
c3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVBsdWdpblByb2Nlc3MoUGx1Z2luUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldAogICAgICAgICBkaXNrQ2FwYWNpdHk6cGx1Z2luRGlza0NhY2hlU2l6ZQogICAgICAg
ICBkaXNrUGF0aDptX25zdXJsQ2FjaGVEaXJlY3RvcnldKS5nZXQoKV07CiAKLSNpZiBQTEFURk9S
TShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCiAgICAg
Ly8gRGlzYWJsZSBEYXJrIE1vZGUgaW4gdGhlIHBsdWdpbiBwcm9jZXNzIHRvIGF2b2lkIHJlbmRl
cmluZyBpc3N1ZXMuCiAgICAgW05TQXBwIHNldEFwcGVhcmFuY2U6W05TQXBwZWFyYW5jZSBhcHBl
YXJhbmNlTmFtZWQ6TlNBcHBlYXJhbmNlTmFtZUFxdWFdXTsKLSNlbmRpZgorCiAjaWYgSEFWRShB
UFBfU1NPKQogICAgIFtOU1VSTFNlc3Npb24gX2Rpc2FibGVBcHBTU09dOwogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQ
Q1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBv
aW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW0KaW5kZXggODVi
NzY1NmFhZWFkNjNhMmUxNGMyMGVmN2FlZThiNTk2MjVjMWYzZS4uMmRmODU3YjgxZDRiY2Y3OWMx
MmZlNzlmODM3N2IxZDAwNDkwZDVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
RW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VNYWluLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2Vy
dmljZS9YUENTZXJ2aWNlTWFpbi5tbQpAQCAtMzMsNyArMzMsNyBAQAogI2ltcG9ydCA8d3RmL1Jl
dGFpblB0ci5oPgogI2ltcG9ydCA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CiAKLSNpZiBQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCisj
aWYgUExBVEZPUk0oTUFDKQogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNBcHBsaWNhdGlvblNQSS5o
PgogI2VuZGlmCiAKQEAgLTE2MCwxMyArMTYwLDExIEBAIGludCBYUENTZXJ2aWNlTWFpbihpbnQg
YXJnYywgY29uc3QgY2hhcioqIGFyZ3YpCiAgICAgLy8gRG9uJ3QgYWxsb3cgQXBwbGUgRXZlbnRz
IGluIFdlYktpdCBwcm9jZXNzZXMuIFRoaXMgY2FuIGJlIHJlbW92ZWQgd2hlbiA8cmRhcjovL3By
b2JsZW0vMTQwMTI4MjM+IGlzIGZpeGVkLgogICAgIHNldGVudigiX19BUFBMRUVWRU5UU1NFUlZJ
Q0VOQU1FIiwgIiIsIDEpOwogCi0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDE0MDAKICAgICAvLyBXZSBkb24ndCBuZWVkIHRvIHRhbGsgdG8gdGhlIGRvY2suCiAgICAg
aWYgKENsYXNzIG5zQXBwbGljYXRpb25DbGFzcyA9IE5TQ2xhc3NGcm9tU3RyaW5nKEAiTlNBcHBs
aWNhdGlvbiIpKSB7CiAgICAgICAgIGlmIChbbnNBcHBsaWNhdGlvbkNsYXNzIHJlc3BvbmRzVG9T
ZWxlY3RvcjpAc2VsZWN0b3IoX3ByZXZlbnREb2NrQ29ubmVjdGlvbnMpXSkKICAgICAgICAgICAg
IFtuc0FwcGxpY2F0aW9uQ2xhc3MgX3ByZXZlbnREb2NrQ29ubmVjdGlvbnNdOwogICAgIH0KLSNl
bmRpZgogI2VuZGlmCiAKICAgICB4cGNfbWFpbihYUENTZXJ2aWNlRXZlbnRIYW5kbGVyKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIu
bW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVyLm1tCmlu
ZGV4IDAzOGRkNGQ2ZjBlN2U0MWVhYTQwNWIyYTQ1ZmE1YWZkZGQwM2Y2YTguLjEzZWE0YTBiMmI1
MTllOTIwMzM2NGYyMGRkM2EyNDdhYzhmNDhkMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5tbQpAQCAtNjgsNyArNjgsNiBAQCBzdGF0
aWMgdm9pZCBoYXNDb21wYXRpYmxlU2VydmljZXNGb3JJdGVtcyhkaXNwYXRjaF9ncm91cF90IGdy
b3VwLCBOU0FycmF5ICppdGVtcwogewogICAgIE5TU2hhcmluZ1NlcnZpY2VNYXNrIHNlcnZpY2Vz
TWFzayA9IE5TU2hhcmluZ1NlcnZpY2VNYXNrVmlld2VyIHwgTlNTaGFyaW5nU2VydmljZU1hc2tF
ZGl0b3I7CiAKLSNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAog
ICAgIGlmIChbTlNTaGFyaW5nU2VydmljZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGdl
dFNoYXJpbmdTZXJ2aWNlc0Zvckl0ZW1zOm1hc2s6Y29tcGxldGlvbjopXSkgewogICAgICAgICBk
aXNwYXRjaF9ncm91cF9lbnRlcihncm91cCk7CiAgICAgICAgIFtOU1NoYXJpbmdTZXJ2aWNlIGdl
dFNoYXJpbmdTZXJ2aWNlc0Zvckl0ZW1zOml0ZW1zIG1hc2s6c2VydmljZXNNYXNrIGNvbXBsZXRp
b246bWFrZUJsb2NrUHRyKFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpLCBncm91cF0oTlNBcnJheSAqc2VydmljZXMpIHsKQEAgLTc3LDkgKzc2LDYgQEAgc3Rh
dGljIHZvaWQgaGFzQ29tcGF0aWJsZVNlcnZpY2VzRm9ySXRlbXMoZGlzcGF0Y2hfZ3JvdXBfdCBn
cm91cCwgTlNBcnJheSAqaXRlbXMKICAgICAgICAgfSkuZ2V0KCldOwogICAgICAgICByZXR1cm47
CiAgICAgfQotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oZ3JvdXApOwotI2VuZGlmCiAgICAgCiAg
ICAgY29tcGxldGlvbkhhbmRsZXIoW05TU2hhcmluZ1NlcnZpY2Ugc2hhcmluZ1NlcnZpY2VzRm9y
SXRlbXM6aXRlbXMgbWFzazpzZXJ2aWNlc01hc2tdLmNvdW50KTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJQcm9jZXNzUHJveHlNYWMubW0gYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViUHJvY2Vzc1Byb3h5TWFjLm1tCmluZGV4IGI1M2I2Njc4
NzRiZjE2MDRmMTcyYTdmY2MxZGEyNGVhYjM0YTY4ZGIuLjRhY2E4YzkxNDgxNjRhZjAyOGI0NGE2
MmE1MmY4YjAwMTlkOWY1ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21h
Yy9XZWJQcm9jZXNzUHJveHlNYWMubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFj
L1dlYlByb2Nlc3NQcm94eU1hYy5tbQpAQCAtMzAsMTIgKzMwLDkgQEAKICNpZiBQTEFURk9STShN
QUMpCiAKICNpbXBvcnQgIldLRnVsbEtleWJvYXJkQWNjZXNzV2F0Y2hlci5oIgotI2ltcG9ydCA8
d3RmL1Byb2Nlc3NQcml2aWxlZ2UuaD4KLQotI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPj0gMTAxNDAwCiAjaW1wb3J0IDxLZXJuZWwva2Vybi9jc19ibG9icy5oPgorI2ltcG9y
dCA8d3RmL1Byb2Nlc3NQcml2aWxlZ2UuaD4KICNpbXBvcnQgPHd0Zi9zcGkvY29jb2EvU2VjdXJp
dHlTUEkuaD4KLSNlbmRpZgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIApAQCAtNDYsNyArNDMsNiBA
QCBib29sIFdlYlByb2Nlc3NQcm94eTo6ZnVsbEtleWJvYXJkQWNjZXNzRW5hYmxlZCgpCiAKIGJv
b2wgV2ViUHJvY2Vzc1Byb3h5OjpzaG91bGRBbGxvd05vblZhbGlkSW5qZWN0ZWRDb2RlKCkgY29u
c3QKIHsKLSNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAogICAg
IHN0YXRpYyBib29sIGlzU3lzdGVtV2ViS2l0ID0gW10gewogICAgICAgICBOU0J1bmRsZSAqd2Vi
a2l0MkJ1bmRsZSA9IFtOU0J1bmRsZSBidW5kbGVGb3JDbGFzczpOU0NsYXNzRnJvbVN0cmluZyhA
IldLV2ViVmlldyIpXTsKICAgICAgICAgcmV0dXJuIFt3ZWJraXQyQnVuZGxlLmJ1bmRsZVBhdGgg
aGFzUHJlZml4OkAiL1N5c3RlbS8iXTsKQEAgLTYxLDkgKzU3LDYgQEAgYm9vbCBXZWJQcm9jZXNz
UHJveHk6OnNob3VsZEFsbG93Tm9uVmFsaWRJbmplY3RlZENvZGUoKSBjb25zdAogCiAgICAgY29u
c3QgU3RyaW5nJiBwYXRoID0gbV9wcm9jZXNzUG9vbC0+Y29uZmlndXJhdGlvbigpLmluamVjdGVk
QnVuZGxlUGF0aCgpOwogICAgIHJldHVybiAhcGF0aC5pc0VtcHR5KCkgJiYgIXBhdGguc3RhcnRz
V2l0aCgiL1N5c3RlbS8iKTsKLSNlbHNlCi0gICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCiB9CiAK
ICNpZiBFTkFCTEUoV0VCUFJPQ0VTU19XSU5ET1dTRVJWRVJfQkxPQ0tJTkcpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQppbmRleCBlZTVhNjVlOGZl
MzNkMjkwZTM1ZmI2ZTIyMzJjNWRhODA4MDNjYWU4Li44MDFkZmNkNTljOWJmZjUwMmE5N2I1ODM1
ZGY1Y2VhZWU5NGFmMmQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkhUTUxWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViSFRNTFZpZXcubW0KQEAgLTcyNiwxNSArNzI2LDExIEBAIGV4dGVybiAiQyIgTlNTdHJpbmcg
Kk5TVGV4dElucHV0UmVwbGFjZW1lbnRSYW5nZUF0dHJpYnV0ZU5hbWU7CiBAaW50ZXJmYWNlIE5T
VmlldyAoKQogLSAodm9pZClfcmVjdXJzaXZlRGlzcGxheVJlY3RJZk5lZWRlZElnbm9yaW5nT3Bh
Y2l0eTooTlNSZWN0KXJlY3QgaXNWaXNpYmxlUmVjdDooQk9PTClpc1Zpc2libGVSZWN0IHJlY3RJ
c1Zpc2libGVSZWN0Rm9yVmlldzooTlNWaWV3ICopdmlzaWJsZVZpZXcgdG9wVmlldzooQk9PTCl0
b3BWaWV3OwogLSAodm9pZClfcmVjdXJzaXZlRGlzcGxheUFsbERpcnR5V2l0aExvY2tGb2N1czoo
Qk9PTCluZWVkc0xvY2tGb2N1cyB2aXNSZWN0OihOU1JlY3QpdmlzUmVjdDsKLSNpZiBQTEFURk9S
TShNQUMpCi0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE1MDAKKyNp
ZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAx
NTAwCiAtICh2b2lkKV9yZWN1cnNpdmU6KEJPT0wpcmVjdXJzaXZlIGRpc3BsYXlSZWN0SWdub3Jp
bmdPcGFjaXR5OihOU1JlY3QpZGlzcGxheVJlY3QgaW5Db250ZXh0OihOU0dyYXBoaWNzQ29udGV4
dCAqKWdyYXBoaWNzQ29udGV4dCBzdG9wQXRMYXllckJhY2tlZFZpZXdzOihCT09MKXN0b3BBdExh
eWVyQmFja2VkVmlld3M7Ci0jZWxpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49
IDEwMTQwMAotLSAodm9pZClfcmVjdXJzaXZlOihCT09MKXJlY3Vyc2l2ZSBkaXNwbGF5UmVjdEln
bm9yaW5nT3BhY2l0eTooTlNSZWN0KWRpc3BsYXlSZWN0IGluQ29udGV4dDooTlNHcmFwaGljc0Nv
bnRleHQgKilncmFwaGljc0NvbnRleHQgc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOihC
T09MKXNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvciBzdG9wQXRMYXllckJhY2tlZFZpZXdz
OihCT09MKXN0b3BBdExheWVyQmFja2VkVmlld3M7Ci0jZWxzZQotLSAodm9pZClfcmVjdXJzaXZl
OihCT09MKXJlY3Vyc2UgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5
UmVjdCBpbkNvbnRleHQ6KE5TR3JhcGhpY3NDb250ZXh0ICopY29udGV4dCBzaG91bGRDaGFuZ2VG
b250UmVmZXJlbmNlQ29sb3I6KEJPT0wpc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOwot
LSAodm9pZClfcmVjdXJzaXZlOihCT09MKXJlY3Vyc2VYIGRpc3BsYXlSZWN0SWdub3JpbmdPcGFj
aXR5OihOU1JlY3QpZGlzcGxheVJlY3QgaW5HcmFwaGljc0NvbnRleHQ6KE5TR3JhcGhpY3NDb250
ZXh0ICopZ3JhcGhpY3NDb250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjooQk9P
TClzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3I7CiAjZW5kaWYKKyNpZiBQTEFURk9STShN
QUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDAKKy0gKHZvaWQp
X3JlY3Vyc2l2ZTooQk9PTClyZWN1cnNpdmUgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6KE5T
UmVjdClkaXNwbGF5UmVjdCBpbkNvbnRleHQ6KE5TR3JhcGhpY3NDb250ZXh0ICopZ3JhcGhpY3ND
b250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjooQk9PTClzaG91bGRDaGFuZ2VG
b250UmVmZXJlbmNlQ29sb3Igc3RvcEF0TGF5ZXJCYWNrZWRWaWV3czooQk9PTClzdG9wQXRMYXll
ckJhY2tlZFZpZXdzOwogI2VuZGlmCiAtICh2b2lkKV9zZXREcmF3c093bkRlc2NlbmRhbnRzOihC
T09MKWRyYXdzT3duRGVzY2VuZGFudHM7CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKQEAgLTE2
NzMsNDEgKzE2NjksMTkgQEAgLSAodm9pZClfcmVjdXJzaXZlRGlzcGxheUFsbERpcnR5V2l0aExv
Y2tGb2N1czooQk9PTCluZWVkc0xvY2tGb2N1cyB2aXNSZWN0OihOU1IKIC8vIERvbid0IGxldCBB
cHBLaXQgZXZlbiBkcmF3IHN1YnZpZXdzLiBXZSB0YWtlIGNhcmUgb2YgdGhhdC4KICNpZiBfX01B
Q19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTUwMAogLSAodm9pZClfcmVjdXJzaXZl
OihCT09MKXJlY3Vyc2l2ZSBkaXNwbGF5UmVjdElnbm9yaW5nT3BhY2l0eTooTlNSZWN0KWRpc3Bs
YXlSZWN0IGluQ29udGV4dDooTlNHcmFwaGljc0NvbnRleHQgKilncmFwaGljc0NvbnRleHQgc3Rv
cEF0TGF5ZXJCYWNrZWRWaWV3czooQk9PTClzdG9wQXRMYXllckJhY2tlZFZpZXdzCi0jZWxpZiBf
X01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQwMAotLSAodm9pZClfcmVjdXJz
aXZlOihCT09MKXJlY3Vyc2l2ZSBkaXNwbGF5UmVjdElnbm9yaW5nT3BhY2l0eTooTlNSZWN0KWRp
c3BsYXlSZWN0IGluQ29udGV4dDooTlNHcmFwaGljc0NvbnRleHQgKilncmFwaGljc0NvbnRleHQg
c2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOihCT09MKXNob3VsZENoYW5nZUZvbnRSZWZl
cmVuY2VDb2xvciBzdG9wQXRMYXllckJhY2tlZFZpZXdzOihCT09MKXN0b3BBdExheWVyQmFja2Vk
Vmlld3MKICNlbHNlCi0tICh2b2lkKV9yZWN1cnNpdmU6KEJPT0wpcmVjdXJzZSBkaXNwbGF5UmVj
dElnbm9yaW5nT3BhY2l0eTooTlNSZWN0KWRpc3BsYXlSZWN0IGluQ29udGV4dDooTlNHcmFwaGlj
c0NvbnRleHQgKiljb250ZXh0IHNob3VsZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjooQk9PTClz
aG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3IKKy0gKHZvaWQpX3JlY3Vyc2l2ZTooQk9PTCly
ZWN1cnNpdmUgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5UmVjdCBp
bkNvbnRleHQ6KE5TR3JhcGhpY3NDb250ZXh0ICopZ3JhcGhpY3NDb250ZXh0IHNob3VsZENoYW5n
ZUZvbnRSZWZlcmVuY2VDb2xvcjooQk9PTClzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3Ig
c3RvcEF0TGF5ZXJCYWNrZWRWaWV3czooQk9PTClzdG9wQXRMYXllckJhY2tlZFZpZXdzCiAjZW5k
aWYKIHsKICAgICBbc2VsZiBfc2V0QXNpZGVTdWJ2aWV3c107CiAjaWYgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDE1MDAKICAgICBbc3VwZXIgX3JlY3Vyc2l2ZTpyZWN1cnNp
dmUgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6ZGlzcGxheVJlY3QgaW5Db250ZXh0OmdyYXBo
aWNzQ29udGV4dCBzdG9wQXRMYXllckJhY2tlZFZpZXdzOnN0b3BBdExheWVyQmFja2VkVmlld3Nd
OwotI2VsaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKLSAgICBb
c3VwZXIgX3JlY3Vyc2l2ZTpyZWN1cnNpdmUgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6ZGlz
cGxheVJlY3QgaW5Db250ZXh0OmdyYXBoaWNzQ29udGV4dCBzaG91bGRDaGFuZ2VGb250UmVmZXJl
bmNlQ29sb3I6c2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yIHN0b3BBdExheWVyQmFja2Vk
Vmlld3M6c3RvcEF0TGF5ZXJCYWNrZWRWaWV3c107CiAjZWxzZQotICAgIFtzdXBlciBfcmVjdXJz
aXZlOnJlY3Vyc2UgZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6ZGlzcGxheVJlY3QgaW5Db250
ZXh0OmNvbnRleHQgc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOnNob3VsZENoYW5nZUZv
bnRSZWZlcmVuY2VDb2xvcl07CisgICAgW3N1cGVyIF9yZWN1cnNpdmU6cmVjdXJzaXZlIGRpc3Bs
YXlSZWN0SWdub3JpbmdPcGFjaXR5OmRpc3BsYXlSZWN0IGluQ29udGV4dDpncmFwaGljc0NvbnRl
eHQgc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOnNob3VsZENoYW5nZUZvbnRSZWZlcmVu
Y2VDb2xvciBzdG9wQXRMYXllckJhY2tlZFZpZXdzOnN0b3BBdExheWVyQmFja2VkVmlld3NdOwog
I2VuZGlmCiAgICAgW3NlbGYgX3Jlc3RvcmVTdWJ2aWV3c107CiB9CiAKLSNpZiBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNDAwCi0vLyBEb24ndCBsZXQgQXBwS2l0IGV2ZW4g
ZHJhdyBzdWJ2aWV3cy4gV2UgdGFrZSBjYXJlIG9mIHRoYXQuCi0tICh2b2lkKV9yZWN1cnNpdmU6
KEJPT0wpcmVjdXJzZVggZGlzcGxheVJlY3RJZ25vcmluZ09wYWNpdHk6KE5TUmVjdClkaXNwbGF5
UmVjdCBpbkdyYXBoaWNzQ29udGV4dDooTlNHcmFwaGljc0NvbnRleHQgKilncmFwaGljc0NvbnRl
eHQgc2hvdWxkQ2hhbmdlRm9udFJlZmVyZW5jZUNvbG9yOihCT09MKXNob3VsZENoYW5nZUZvbnRS
ZWZlcmVuY2VDb2xvcgotewotICAgIEJPT0wgZGlkU2V0QXNpZGVTdWJ2aWV3cyA9IE5POwotCi0g
ICAgaWYgKCFfcHJpdmF0ZS0+c3Vidmlld3NTZXRBc2lkZSkgewotICAgICAgICBbc2VsZiBfc2V0
QXNpZGVTdWJ2aWV3c107Ci0gICAgICAgIGRpZFNldEFzaWRlU3Vidmlld3MgPSBZRVM7Ci0gICAg
fQotCi0gICAgW3N1cGVyIF9yZWN1cnNpdmU6cmVjdXJzZVggZGlzcGxheVJlY3RJZ25vcmluZ09w
YWNpdHk6ZGlzcGxheVJlY3QgaW5HcmFwaGljc0NvbnRleHQ6Z3JhcGhpY3NDb250ZXh0IHNob3Vs
ZENoYW5nZUZvbnRSZWZlcmVuY2VDb2xvcjpzaG91bGRDaGFuZ2VGb250UmVmZXJlbmNlQ29sb3Jd
OwotCi0gICAgaWYgKGRpZFNldEFzaWRlU3Vidmlld3MpCi0gICAgICAgIFtzZWxmIF9yZXN0b3Jl
U3Vidmlld3NdOwotfQotI2VuZGlmCi0KIHN0YXRpYyBCT09MIGlzUXVpY2tMb29rRXZlbnQoTlNF
dmVudCAqZXZlbnQpCiB7CiAgICAgY29uc3QgaW50IGtDR1NFdmVudFN5c3RlbVN1YnR5cGVIb3RL
ZXlDb21iaW5hdGlvblJlbGVhc2VkID0gOTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViVGV4dENvbXBsZXRpb25Db250cm9sbGVyLm1tIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0Q29tcGxldGlvbkNvbnRyb2xsZXIubW0KaW5k
ZXggYThmZmRhYzBmYjIyYmY5YjExNTQ1YTI0M2Q4MjE5MDkyYWJlMmExNS4uYzVmODdkY2FkNDg1
ZDJhN2M3YWE4MzJjNjNlNTM5MzhiZTUyNjQ4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0Q29tcGxldGlvbkNvbnRyb2xsZXIubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0Q29tcGxldGlvbkNvbnRyb2xsZXIu
bW0KQEAgLTExNyw5ICsxMTcsNiBAQCAtICh2b2lkKV9idWlsZFVJCiAgICAgW19wb3B1cFdpbmRv
dyBzZXRDb250ZW50VmlldzpzY3JvbGxWaWV3XTsKICAgICBbc2Nyb2xsVmlldyByZWxlYXNlXTsK
ICAgICBbX3BvcHVwV2luZG93IHNldEhhc1NoYWRvdzpZRVNdOwotI2lmIF9fTUFDX09TX1hfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE0MDAKLSAgICBbX3BvcHVwV2luZG93IHNldE9uZVNob3Q6
WUVTXTsKLSNlbmRpZgogICAgIFtfcG9wdXBXaW5kb3cgX3NldEZvcmNlQWN0aXZlQ29udHJvbHM6
WUVTXTsKICAgICBbX3BvcHVwV2luZG93IHNldFJlbGVhc2VkV2hlbkNsb3NlZDpOT107CiB9CmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTRiYzg5
MDQ2ODlmZWZlYzY5NGExZmY3ZWIzMDliYzlmMjcyYzhiZS4uNDFiY2M2MmYyMDAwYjA5ZDQxYmY5
ZDNlY2JhYTQzNDY1OGU0NzE3MyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rv
b2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA1LTA0ICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBSZW1vdmUgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCBjaGVja3MgZm9yIHZlcnNpb25zIG9sZGVyIHRoYW4gMTAuMTQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTQyMAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJDb3JlL0N0YXBQaW5UZXN0LmNwcDogUmVtb3ZlCisgICAgICAgIF9fTUFD
X09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwLgorCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMubW06
CisgICAgICAgIFJlbW92ZWQgY29kZSBkaXNhYmxpbmcgdGhpcyB0ZXN0IGZvciBfX01BQ19PU19Y
X1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxNDAwLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9jb25maWcuaDogUmVtb3ZlZCBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTQwMC4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvY29jb2Ev
QWN0aXZhdGVGb250c0NvY29hLm1tOgorICAgICAgICAoV1RSOjppbnN0YWxsRmFrZUhlbHZldGlj
YSk6IFJlbW92ZWQgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAuCisK
IDIwMjAtMDUtMDQgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIE1h
a2UgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgY2hlY2tzIGFnYWluc3Qgb2xkIHZl
cnNpb25zIGV4cGxpY2l0IGFib3V0IHdhdGNoT1MgYW5kIHR2T1MKZGlmZiAtLWdpdCBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9DdGFwUGluVGVzdC5jcHAgYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvQ3RhcFBpblRlc3QuY3BwCmluZGV4IDM2NTI4ZWE2OWM5
NTVjYmQ3MWNjNDg4MDQwY2Y5YjU1ZTgzY2Y1OGEuLmZiN2Y0YTA3OWMxYTBmNmZkZTBkYmNhNGQ5
YTUzMDY4ZDQ0NzAxOTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
Q29yZS9DdGFwUGluVGVzdC5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJD
b3JlL0N0YXBQaW5UZXN0LmNwcApAQCAtMTI1LDcgKzEyNSw5IEBAIFRFU1QoQ3RhcFBpblRlc3Qs
IFRlc3RLZXlBZ3JlZW1lbnRSZXNwb25zZSkKICAgICByZXN1bHQgPSBLZXlBZ3JlZW1lbnRSZXNw
b25zZTo6cGFyc2UoY29udmVydEJ5dGVzVG9WZWN0b3IoVGVzdERhdGE6OmtDdGFwQ2xpZW50UGlu
VG9rZW5SZXNwb25zZSwgc2l6ZW9mKFRlc3REYXRhOjprQ3RhcENsaWVudFBpblRva2VuUmVzcG9u
c2UpKSk7IC8vIHdyb25nIHJlc3BvbnNlCiAgICAgRVhQRUNUX0ZBTFNFKHJlc3VsdCk7CiAKLSNp
ZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTQwMCkgfHwgUExBVEZPUk0oSU9TKQorLy8gRklYTUU6IFdoZW4gY2FuIHdlIGVuYWJsZSB0aGlz
IGZvciBub24tQ29jb2EgcGxhdGZvcm1zPworLy8gRklYTUU6IENhbiB3ZSBlbmFibGUgdGhpcyBm
b3Igd2F0Y2hPUyBhbmQgdHZPUz8KKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykK
ICAgICByZXN1bHQgPSBLZXlBZ3JlZW1lbnRSZXNwb25zZTo6cGFyc2UoY29udmVydEJ5dGVzVG9W
ZWN0b3IoVGVzdERhdGE6OmtDdGFwQ2xpZW50UGluSW52YWxpZEtleUFncmVlbWVudFJlc3BvbnNl
LCBzaXplb2YoVGVzdERhdGE6OmtDdGFwQ2xpZW50UGluSW52YWxpZEtleUFncmVlbWVudFJlc3Bv
bnNlKSkpOyAvLyBUaGUgcG9pbnQgaXMgbm90IG9uIHRoZSBjdXJ2ZS4KICAgICBFWFBFQ1RfRkFM
U0UocmVzdWx0KTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMubW0gYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5t
bQppbmRleCBiNTQ4YmY5ZmQ4ZWM5NjJhMDBjMDBjY2RiMTJmMThhODljMjI5OTdiLi40ZDY3M2Vl
NTkxNmZmYjFkYzQzOWFjMGQ5MTNkYzNmMWIwYmU3YjUxIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5t
bQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRh
U3RvcmVDdXN0b21QYXRocy5tbQpAQCAtNjgzLDggKzY4Myw2IEBAIFRFU1QoV2ViS2l0LCBESVNB
QkxFRF9BbHRlcm5hdGl2ZVNlcnZpY2UpCiAKICNlbmRpZiAvLyBIQVZFKE5FVFdPUktfRlJBTUVX
T1JLKQogCi0vLyBGSVhNRTogaW52ZXN0aWdhdGUgd2h5IHRoaXMgdGVzdCB0aW1lcyBvdXQgb24g
SGlnaCBTaWVycmEKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlO
X1JFUVVJUkVEID49IDEwMTQwMCkgfHwgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIFRFU1QoV2ViS2l0
LCBNZWRpYUNhY2hlKQogewogICAgIEpTQzo6Q29uZmlnOjpjb25maWd1cmVGb3JUZXN0aW5nKCk7
CkBAIC03NTgsNCArNzU2LDMgQEAgVEVTVChXZWJLaXQsIE1lZGlhQ2FjaGUpCiAgICAgW2ZpbGVN
YW5hZ2VyIHJlbW92ZUl0ZW1BdFBhdGg6cGF0aCBlcnJvcjomZXJyb3JdOwogICAgIEVYUEVDVF9G
QUxTRShlcnJvcik7CiB9Ci0jZW5kaWYKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
Y29uZmlnLmggYi9Ub29scy9UZXN0V2ViS2l0QVBJL2NvbmZpZy5oCmluZGV4IGM4OTQwNDk5ODIx
NjZjNWIzZjU4ZTYyYmEwZjdkNjYyYmE1YjZmMzQuLmM5MTczNTk3ZTBlZjU5YjE2NTAwMmE4ZWNj
NTdiZmNkY2Y5ZjY5ZTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgK
KysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb25maWcuaApAQCAtMTA3LDI2ICsxMDcsMzMgQEAK
ICNkZWZpbmUgV0tfSEFWRV9DX1NQSSAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhpcyB0
byBQbGF0Zm9ybUhhdmUuaC4KICNpZiAhUExBVEZPUk0oQVBQTEVUVikgJiYgIVBMQVRGT1JNKE1B
Q0NBVEFMWVNUKQogI2RlZmluZSBIQVZFX1NTTCAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUg
dGhpcyB0byBQbGF0Zm9ybUhhdmUuaC4KICNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElP
UykKICNkZWZpbmUgSEFWRV9QREZLSVQgMQogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oSU9TX0ZB
TUlMWSkgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKSkgfHwgKFBMQVRGT1JNKE1BQ0NBVEFMWVNU
KSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTYwMCkKKy8vIEZJWE1F
OiBNb3ZlIHRoaXMgdG8gUGxhdGZvcm1IYXZlLmguCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkg
JiYgIShQTEFURk9STShNQUNDQVRBTFlTVCkgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA8IDEwMTYwMCkKICNkZWZpbmUgSEFWRV9VSVdFQlZJRVcgMQogI2VuZGlmCiAKLSNpZiAo
UExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTQw
MCkgfHwgUExBVEZPUk0oSU9TKQorLy8gRklYTUU6IE1vdmUgdGhpcyB0byBQbGF0Zm9ybUhhdmUu
aC4KKy8vIEZJWE1FOiBTZWVtcyBsaWtlIHRoaXMgc2hvdWxkIGJlIG9uIGZvciB3YXRjaE9TIGFu
ZCB0dk9TIHRvby4KKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykKICNkZWZpbmUg
SEFWRV9ORVRXT1JLX0ZSQU1FV09SSyAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhpcyB0
byBQbGF0Zm9ybUhhdmUuaC4KICNpZiBQTEFURk9STShDT0NPQSkgJiYgIShQTEFURk9STShNQUMp
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDApCiAjZGVmaW5lIEhB
VkVfVExTX1BST1RPQ09MX1ZFUlNJT05fVCAxCiAjZW5kaWYKIAorLy8gRklYTUU6IE1vdmUgdGhp
cyB0byBQbGF0Zm9ybUhhdmUuaC4KICNpZiAoUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTYwMCkgfHwgKFBMQVRGT1JNKElPU19GQU1JTFkpICYm
IF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkKICNkZWZpbmUgSEFW
RV9UTFNfVkVSU0lPTl9EVVJJTkdfQ0hBTExFTkdFIDEKICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9jb2NvYS9BY3RpdmF0ZUZvbnRzQ29j
b2EubW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2NvY29hL0FjdGl2
YXRlRm9udHNDb2NvYS5tbQppbmRleCBiNWIzYzIyODZkNDkzYjI4Mzk5YmE0MTc3N2Q1ZGE2ZTBm
ZGQ2OTU2Li4wMjRmZTYwNTczYjhmMmM1OTJlYmZkYjM1ZjNhNDQ0ODVjZGI5NzU2IDEwMDY0NAot
LS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2NvY29hL0FjdGl2YXRl
Rm9udHNDb2NvYS5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L2NvY29hL0FjdGl2YXRlRm9udHNDb2NvYS5tbQpAQCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgaW5z
dGFsbEZha2VIZWx2ZXRpY2EoV0tTdHJpbmdSZWYgY29uZmlndXJhdGlvbikKICAgICBOU1VSTCAq
cmVzb3VyY2VVUkwgPSBbcmVzb3VyY2VzRGlyZWN0b3J5VVJMKCkgVVJMQnlBcHBlbmRpbmdQYXRo
Q29tcG9uZW50OltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiRmFrZUhlbHZldGljYS0lQC50
dGYiLCBjb25maWd1cmF0aW9uU3RyaW5nLmdldCgpXSBpc0RpcmVjdG9yeTpOT107CiAgICAgQ0ZF
cnJvclJlZiBlcnJvciA9IG51bGxwdHI7CiAgICAgaWYgKCFDVEZvbnRNYW5hZ2VyUmVnaXN0ZXJG
b250c0ZvclVSTCgoX19icmlkZ2UgQ0ZVUkxSZWYpcmVzb3VyY2VVUkwsIGtDVEZvbnRNYW5hZ2Vy
U2NvcGVQcm9jZXNzLCAmZXJyb3IpKSB7Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IChQTEFURk9STShJT1MpICYmICFQ
TEFURk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikpCisjaWYgUExBVEZPUk0oTUFDKSB8fCAoUExB
VEZPUk0oSU9TKSAmJiAhUExBVEZPUk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1IpKQogICAgICAgICAv
LyBSZWdpc3RlcmluZyBzaGFkb3cgZm9udHMgaXMgb25seSBzdXBwb3J0ZWQgb24gbWFjT1MgTW9q
YXZlIGFuZCBpT1MgMTIgb3IgbmV3ZXIsIGJ1dCBub3QgaU9TIFNpbXVsYXRvci4gU2VlIEJ1Z3Mg
MTgwMDYyICYgMTk0NzYxLgogICAgICAgICBOU0xvZyhAIkZhaWxlZCB0byBhY3RpdmF0ZSBmYWtl
IEhlbHZldGljYTogJUAiLCBlcnJvcik7CiAjZW5kaWYK
</data>
<flag name="review"
          id="413848"
          type_id="1"
          status="+"
          setter="achristensen"
    />
    <flag name="commit-queue"
          id="413866"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>