<?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>127299</bug_id>
          
          <creation_ts>2014-01-20 11:13:57 -0800</creation_ts>
          <short_desc>Remove PLATFORM(NIX) from WebCore</short_desc>
          <delta_ts>2014-01-21 10:42:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Lauro Moura Maranhao Neto">lauro.neto</reporter>
          <assigned_to name="Lauro Moura Maranhao Neto">lauro.neto</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>969927</commentid>
    <comment_count>0</comment_count>
    <who name="Lauro Moura Maranhao Neto">lauro.neto</who>
    <bug_when>2014-01-20 11:13:57 -0800</bug_when>
    <thetext>Removing the PLATFORM(NIX) directives from WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970034</commentid>
    <comment_count>1</comment_count>
      <attachid>221696</attachid>
    <who name="Lauro Moura Maranhao Neto">lauro.neto</who>
    <bug_when>2014-01-20 15:11:43 -0800</bug_when>
    <thetext>Created attachment 221696
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970225</commentid>
    <comment_count>2</comment_count>
      <attachid>221696</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-21 05:47:29 -0800</bug_when>
    <thetext>Comment on attachment 221696
Patch

Rejecting attachment 221696 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 221696, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
er.h
patching file Source/WebCore/platform/network/ResourceHandle.h
patching file Source/WebCore/plugins/PluginPackage.cpp
patching file Source/WebCore/plugins/PluginView.cpp
patching file Source/WebCore/plugins/PluginView.h
patching file Source/WebCore/plugins/PluginViewNone.cpp
patching file Source/WebCore/rendering/SimpleLineLayout.cpp

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Anders Carlsson&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.appspot.com/results/5636456710144000</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970298</commentid>
    <comment_count>3</comment_count>
      <attachid>221758</attachid>
    <who name="Lauro Moura Maranhao Neto">lauro.neto</who>
    <bug_when>2014-01-21 10:01:18 -0800</bug_when>
    <thetext>Created attachment 221758
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970301</commentid>
    <comment_count>4</comment_count>
      <attachid>221758</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-21 10:03:17 -0800</bug_when>
    <thetext>Comment on attachment 221758
Patch for landing

Rejecting attachment 221758 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 221758, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in Source/WebCore/ChangeLog contains OOPS!.

Full output: http://webkit-queues.appspot.com/results/5320741381734400</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970302</commentid>
    <comment_count>5</comment_count>
      <attachid>221759</attachid>
    <who name="Lauro Moura Maranhao Neto">lauro.neto</who>
    <bug_when>2014-01-21 10:08:21 -0800</bug_when>
    <thetext>Created attachment 221759
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970314</commentid>
    <comment_count>6</comment_count>
      <attachid>221759</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-21 10:42:30 -0800</bug_when>
    <thetext>Comment on attachment 221759
Patch for landing

Clearing flags on attachment: 221759

Committed r162451: &lt;http://trac.webkit.org/changeset/162451&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970315</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-21 10:42:32 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221696</attachid>
            <date>2014-01-20 15:11:43 -0800</date>
            <delta_ts>2014-01-21 10:00:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127299-20140120201144.patch</filename>
            <type>text/plain</type>
            <size>37814</size>
            <attacher name="Lauro Moura Maranhao Neto">lauro.neto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyMzQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWNjZjMyZTNiMjI5MmRj
ZWVlMGQ5YzgyMDk1OThhMGQ1MDkxNDExMi4uYzU3YmNiNWY5ZDk2MDgyNjY3ZjdkNDE0NTNiMjMy
ODRkOTM5OTdlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY4IEBACisyMDE0LTAxLTIwICBMYXVy
byBOZXRvICA8bGF1cm8ubmV0b0BvcGVuYm9zc2Eub3JnPgorCisgICAgICAgIFJlbW92ZSBQTEFU
Rk9STShOSVgpIGZyb20gV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTI3Mjk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpF
ZGl0b3I6OmN1dCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmNvcHkpOgorICAgICAgICAo
V2ViQ29yZTo6RWRpdG9yOjpjb3B5SW1hZ2UpOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6
CisgICAgICAgICogaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oOgorICAgICAgICAqIGxvYWRlci9F
bXB0eUNsaWVudHMuaDoKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmRlZmF1bHRPYmplY3RDb250ZW50VHlwZSk6CisgICAg
ICAgICogcGFnZS9DaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKiBwYWdlL0RyYWdDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250cm9sbGVyOjpzdGFydERyYWcpOgorICAg
ICAgICAqIHBsYXRmb3JtL0N1cnNvci5oOgorICAgICAgICAqIHBsYXRmb3JtL0RyYWdEYXRhLmg6
CisgICAgICAgICogcGxhdGZvcm0vRHJhZ0ltYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vRmls
ZVN5c3RlbS5oOgorICAgICAgICAqIHBsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9XaWRnZXQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9GRlRGcmFt
ZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0hSVEZFbGV2YXRpb24uY3BwOgorICAgICAg
ICAqIHBsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZS5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dM
Q29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHTENvbnRleHQ6OmNyZWF0ZUNvbnRleHRG
b3JXaW5kb3cpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6R3JhcGhpY3NDb250ZXh0M0RQcml2
YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xFU1NoaW1zLmg6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Z2V0UHJvY0FkZHJlc3MpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNo
aW1zLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1MYXllci5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGFGcmVlVHlw
ZS5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9w
ZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFeHRlbnNpb25zM0RPcGVuR0w6OmNyZWF0ZVZl
cnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9wZW5HTDo6ZGVs
ZXRlVmVydGV4QXJyYXlPRVMpOgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNET3BlbkdM
Ojppc1ZlcnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9wZW5H
TDo6YmluZFZlcnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9w
ZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9v
cGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMQ29tbW9uLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMRVMuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTENvbW1vbi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6cmVzaGFwZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RlbXBvcmFyeU9wZW5HTFNldHRpbmcuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZS5oOgorICAgICAgICAqIHBs
dWdpbnMvUGx1Z2luUGFja2FnZS5jcHA6CisgICAgICAgICogcGx1Z2lucy9QbHVnaW5WaWV3LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OlBsdWdpblZpZXcpOgorICAgICAgICAq
IHBsdWdpbnMvUGx1Z2luVmlldy5oOgorICAgICAgICAqIHBsdWdpbnMvUGx1Z2luVmlld05vbmUu
Y3BwOgorICAgICAgICAqIHJlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlNpbXBsZUxpbmVMYXlvdXQ6OmNhblVzZUZvcik6CisKIDIwMTMtMTEtMjIgIFNl
cmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5jb20+CiAKICAgICAgICAgTnVsbC1w
b2ludGVyIGRlcmVmZXJlbmNlIGluIFdlYkNvcmU6OkNTU1ZhbHVlOjppc1ByaW1pdGl2ZVZhbHVl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKaW5kZXggMmI3NzgwNTE2MGM4MmU0YjIzOTQ1YmYx
M2MxMWM0NjA4OTI4YmMzZS4uMGU1ZGJlYWE0NWJmNjFjMTljNDg3MTZiYjRjNDE5YzNkMGFmNzRk
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcApAQCAtNTYzLDcgKzU2Myw3IEBAIFN0cmlu
ZyBFZGl0b3I6OnBsYWluVGV4dEZyb21QYXN0ZWJvYXJkKGNvbnN0IFBhc3RlYm9hcmRQbGFpblRl
eHQmIHRleHQpCiAKICNlbmRpZgogCi0jaWYgIVBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEVG
TCkgJiYgIVBMQVRGT1JNKE5JWCkKKyNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oRUZM
KQogdm9pZCBFZGl0b3I6OnBhc3RlV2l0aFBhc3RlYm9hcmQoUGFzdGVib2FyZCogcGFzdGVib2Fy
ZCwgYm9vbCBhbGxvd1BsYWluVGV4dCkKIHsKICAgICBSZWZQdHI8UmFuZ2U+IHJhbmdlID0gc2Vs
ZWN0ZWRSYW5nZSgpOwpAQCAtMTI4Myw3ICsxMjgzLDcgQEAgdm9pZCBFZGl0b3I6OmN1dCgpCiAg
ICAgICAgIGlmIChlbmNsb3NpbmdUZXh0Rm9ybUNvbnRyb2wobV9mcmFtZS5zZWxlY3Rpb24oKS5z
dGFydCgpKSkKICAgICAgICAgICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgp
LT53cml0ZVBsYWluVGV4dChzZWxlY3RlZFRleHRGb3JDbGlwYm9hcmQoKSwgY2FuU21hcnRDb3B5
T3JEZWxldGUoKSA/IFBhc3RlYm9hcmQ6OkNhblNtYXJ0UmVwbGFjZSA6IFBhc3RlYm9hcmQ6OkNh
bm5vdFNtYXJ0UmVwbGFjZSk7CiAgICAgICAgIGVsc2UgewotI2lmIFBMQVRGT1JNKE1BQykgfHwg
UExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFU
Rk9STShFRkwpCiAgICAgICAgICAgICB3cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgqUGFzdGVi
b2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIC8vIEZJ
WE1FOiBDb252ZXJ0IGFsbCBvdGhlciBwbGF0Zm9ybXMgdG8gbWF0Y2ggTWFjIGFuZCBkZWxldGUg
dGhpcy4KQEAgLTEzMTAsMTMgKzEzMTAsMTMgQEAgdm9pZCBFZGl0b3I6OmNvcHkoKQogICAgICAg
ICAgICAgY2FuU21hcnRDb3B5T3JEZWxldGUoKSA/IFBhc3RlYm9hcmQ6OkNhblNtYXJ0UmVwbGFj
ZSA6IFBhc3RlYm9hcmQ6OkNhbm5vdFNtYXJ0UmVwbGFjZSk7CiAgICAgfSBlbHNlIHsKICAgICAg
ICAgaWYgKEhUTUxJbWFnZUVsZW1lbnQqIGltYWdlRWxlbWVudCA9IGltYWdlRWxlbWVudEZyb21J
bWFnZURvY3VtZW50KGRvY3VtZW50KCkpKSB7Ci0jaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9S
TShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVG
TCkKICAgICAgICAgICAgIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0
ZUZvckNvcHlBbmRQYXN0ZSgpLCAqaW1hZ2VFbGVtZW50LCBkb2N1bWVudCgpLnVybCgpLCBkb2N1
bWVudCgpLnRpdGxlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZv
ckNvcHlBbmRQYXN0ZSgpLT53cml0ZUltYWdlKCppbWFnZUVsZW1lbnQsIGRvY3VtZW50KCkudXJs
KCksIGRvY3VtZW50KCkudGl0bGUoKSk7CiAjZW5kaWYKICAgICAgICAgfSBlbHNlIHsKLSNpZiBQ
TEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRG
T1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQogICAgICAgICAgICAgd3JpdGVTZWxlY3Rpb25Ub1Bh
c3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgpKTsKICNlbHNlCiAg
ICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwgb3RoZXIgcGxhdGZvcm1zIHRvIG1hdGNo
IE1hYyBhbmQgZGVsZXRlIHRoaXMuCkBAIC0xNDIwLDcgKzE0MjAsNyBAQCB2b2lkIEVkaXRvcjo6
Y29weUltYWdlKGNvbnN0IEhpdFRlc3RSZXN1bHQmIHJlc3VsdCkKICAgICBpZiAodXJsLmlzRW1w
dHkoKSkKICAgICAgICAgdXJsID0gcmVzdWx0LmFic29sdXRlSW1hZ2VVUkwoKTsKIAotI2lmIFBM
QVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZP
Uk0oTUFDKSB8fCBQTEFURk9STShFRkwpCiAgICAgd3JpdGVJbWFnZVRvUGFzdGVib2FyZCgqUGFz
dGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCksICplbGVtZW50LCB1cmwsIHJlc3VsdC5h
bHREaXNwbGF5U3RyaW5nKCkpOwogI2Vsc2UKICAgICBQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5
QW5kUGFzdGUoKS0+d3JpdGVJbWFnZSgqZWxlbWVudCwgdXJsLCByZXN1bHQuYWx0RGlzcGxheVN0
cmluZygpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmggYi9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCmluZGV4IDIwZTE3NGI1ZTViYTc0NjI4MzEy
YzAyNDgxZjRiMjMyYTMxMTZhZjEuLjVlNzM1NGQwMDVkNjg4YzgxMGQxMDk3NjMyOGM4MThiYjdi
NTBmOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaApAQCAtNDM0LDcgKzQzNCw3IEBAIHB1Ymxp
YzoKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TKQogI2VuZGlmCiAKLSNpZiBQTEFURk9STShNQUMp
IHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKE1BQykgfHwg
UExBVEZPUk0oRUZMKQogICAgIHZvaWQgd3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoUGFzdGVi
b2FyZCYpOwogICAgIHZvaWQgd3JpdGVJbWFnZVRvUGFzdGVib2FyZChQYXN0ZWJvYXJkJiwgRWxl
bWVudCYgaW1hZ2VFbGVtZW50LCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHRpdGxlKTsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCmluZGV4IDUwODEzMmI2
MTc0NGZhMzEzOTBlNGU0OTVlNTQzMmI3Y2UxNTgyYWUuLjM4M2ExODhlN2NmMjgzNWEyYTgwNTQw
NzJkNzBjMzA1ZjkzMjJkMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENh
bnZhc0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50
LmgKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRlICJJbnRTaXplLmgiCiAjaW5jbHVkZSA8d3Rm
L0ZvcndhcmQuaD4KIAotI2lmIFVTRShDRykgfHwgUExBVEZPUk0oTklYKQorI2lmIFVTRShDRykK
ICNkZWZpbmUgRGVmYXVsdEludGVycG9sYXRpb25RdWFsaXR5IEludGVycG9sYXRpb25Mb3cKICNl
bHNlCiAjZGVmaW5lIERlZmF1bHRJbnRlcnBvbGF0aW9uUXVhbGl0eSBJbnRlcnBvbGF0aW9uRGVm
YXVsdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCmluZGV4IDljNDhmOWMzNzA5ZGEx
OTQyNWMxOGRlMzA2ZmI3YzcyMWM3Nzk0MDEuLjg2NWRhNmMyOTJiZGM1MTIyNGI0MjU4YjhiZTQ3
YjY3NmU5ZDAyNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVu
dHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTE5NSwx
MCArMTk1LDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBBWEZpbmlzaEZyYW1lTG9hZCgp
IG92ZXJyaWRlIHsgfQogI2VuZGlmCiAKLSNpZiBQTEFURk9STShOSVgpCi0gICAgdmlydHVhbCBG
bG9hdFJlY3Qgc2NyZWVuUmVjdCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIEZsb2F0UmVjdCgp
OyB9Ci0jZW5kaWYKLQogI2lmIFBMQVRGT1JNKElPUykKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRT
KQogICAgIHZpcnR1YWwgdm9pZCBkaWRQcmV2ZW50RGVmYXVsdEZvckV2ZW50KCkgb3ZlcnJpZGUg
eyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCAxYzRhMjdmMzZmYWJl
MTVkOGQzMmViODIxMzBkYjQxYjZlNTM0YTlkLi5iY2UwN2FiY2YxYjE5ZDE1ODU2ZWUwYWM3YTZl
YmRkM2M0MDI2Mjc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTk1
NCw3ICs5NTQsNyBAQCBPYmplY3RDb250ZW50VHlwZSBGcmFtZUxvYWRlcjo6ZGVmYXVsdE9iamVj
dENvbnRlbnRUeXBlKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdAogICAgIGlmIChtaW1lVHlwZS5p
c0VtcHR5KCkpCiAgICAgICAgIG1pbWVUeXBlID0gbWltZVR5cGVGcm9tVVJMKHVybCk7CiAKLSNp
ZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oTklYKSAvLyBN
YWMgaGFzIG5vIFBsdWdpbkRhdGFiYXNlLCBub3IgZG9lcyBOaXggb3IgRUZMCisjaWYgIVBMQVRG
T1JNKE1BQykgJiYgIVBMQVRGT1JNKEVGTCkgLy8gTWFjIGhhcyBubyBQbHVnaW5EYXRhYmFzZSwg
bm9yIGRvZXMgRUZMCiAgICAgaWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkgewogICAgICAgICBTdHJp
bmcgZGVjb2RlZFBhdGggPSBkZWNvZGVVUkxFc2NhcGVTZXF1ZW5jZXModXJsLnBhdGgoKSk7CiAg
ICAgICAgIG1pbWVUeXBlID0gUGx1Z2luRGF0YWJhc2U6Omluc3RhbGxlZFBsdWdpbnMoKS0+TUlN
RVR5cGVGb3JFeHRlbnNpb24oZGVjb2RlZFBhdGguc3Vic3RyaW5nKGRlY29kZWRQYXRoLnJldmVy
c2VGaW5kKCcuJykgKyAxKSk7CkBAIC05NjQsNyArOTY0LDcgQEAgT2JqZWN0Q29udGVudFR5cGUg
RnJhbWVMb2FkZXI6OmRlZmF1bHRPYmplY3RDb250ZW50VHlwZShjb25zdCBVUkwmIHVybCwgY29u
c3QgU3QKICAgICBpZiAobWltZVR5cGUuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gT2JqZWN0
Q29udGVudEZyYW1lOyAvLyBHbyBhaGVhZCBhbmQgaG9wZSB0aGF0IHdlIGNhbiBkaXNwbGF5IHRo
ZSBjb250ZW50LgogCi0jaWYgIVBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEVGTCkgJiYgIVBM
QVRGT1JNKE5JWCkgLy8gTWFjIGhhcyBubyBQbHVnaW5EYXRhYmFzZSwgbm9yIGRvZXMgTml4IG9y
IEVGTAorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShFRkwpIC8vIE1hYyBoYXMgbm8g
UGx1Z2luRGF0YWJhc2UsIG5vciBkb2VzIEVGTAogICAgIGJvb2wgcGx1Z0luU3VwcG9ydHNNSU1F
VHlwZSA9IFBsdWdpbkRhdGFiYXNlOjppbnN0YWxsZWRQbHVnaW5zKCktPmlzTUlNRVR5cGVSZWdp
c3RlcmVkKG1pbWVUeXBlKTsKICNlbHNlCiAgICAgYm9vbCBwbHVnSW5TdXBwb3J0c01JTUVUeXBl
ID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAppbmRleCA4NDk4YWM4ZmMxZDBk
NTIwMmZlNGVmM2FkN2I3OTk1ODQ1MjM3ZjNmLi5hMzUzZTkwOWI2MzlkYWE5Mjg2ZjVmYWNhY2Rh
YjI1ZmFhMjA2ODgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTM2NiwxMCAr
MzY2LDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBBWEZpbmlzaEZyYW1lTG9hZCgpID0g
MDsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTklYKQotICAgIHZpcnR1YWwgRmxvYXRSZWN0IHNj
cmVlblJlY3QoKSBjb25zdCA9IDA7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMp
CiAgICAgdmlydHVhbCB2b2lkIG5lZWRUb3VjaEV2ZW50cyhib29sKSA9IDA7CiAjZW5kaWYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRHJhZ0NvbnRyb2xsZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAKaW5kZXggNDg0NWEzNDViNWYxZjc2M2Vm
ZWI5OTUxOGJkOGE1ZTNlNzQyZTViNy4uZDFhNDg5OTBmMWExMDFiYzI0NjkxOTI2YzMzZDZiYzgy
NmRjZDdmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAKQEAgLTc2OCw3
ICs3NjgsNyBAQCBib29sIERyYWdDb250cm9sbGVyOjpzdGFydERyYWcoRnJhbWUmIHNyYywgY29u
c3QgRHJhZ1N0YXRlJiBzdGF0ZSwgRHJhZ09wZXJhdGlvbgogICAgICAgICAgICAgaWYgKGVuY2xv
c2luZ1RleHRGb3JtQ29udHJvbChzcmMuc2VsZWN0aW9uKCkuc3RhcnQoKSkpCiAgICAgICAgICAg
ICAgICAgY2xpcGJvYXJkLnBhc3RlYm9hcmQoKS53cml0ZVBsYWluVGV4dChzcmMuZWRpdG9yKCku
c2VsZWN0ZWRUZXh0Rm9yQ2xpcGJvYXJkKCksIFBhc3RlYm9hcmQ6OkNhbm5vdFNtYXJ0UmVwbGFj
ZSk7CiAgICAgICAgICAgICBlbHNlIHsKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVG
TCkgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQog
ICAgICAgICAgICAgICAgIHNyYy5lZGl0b3IoKS53cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChj
bGlwYm9hcmQucGFzdGVib2FyZCgpKTsKICNlbHNlCiAgICAgICAgICAgICAgICAgLy8gRklYTUU6
IENvbnZlcnQgYWxsIG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBNYWMgYW5kIGRlbGV0ZSB0aGlz
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3Vyc29yLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaAppbmRleCA0MDY3ZTkyYmM4MzI3M2Q2OTVlNTQ2YzMx
OWIwNDc5YjAxZDM4YjY4Li4yMjQwN2FhMjRlYWM5MzhmZWNiOWMwZmNhNjI4NzJhNzIxMTBkMGQ5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaApAQCAtNzIsOCArNzIsNiBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgdHlwZWRlZiBHUmVmUHRyPEdka0N1cnNvcj4gUGxhdGZvcm1DdXJzb3I7
CiAjZWxpZiBQTEFURk9STShFRkwpCiAgICAgdHlwZWRlZiBjb25zdCBjaGFyKiBQbGF0Zm9ybUN1
cnNvcjsKLSNlbGlmIFBMQVRGT1JNKE5JWCkKLSAgICB0eXBlZGVmIHVuc2lnbmVkIFBsYXRmb3Jt
Q3Vyc29yOwogI2Vsc2UKICAgICB0eXBlZGVmIHZvaWQqIFBsYXRmb3JtQ3Vyc29yOwogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnRGF0YS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vRHJhZ0RhdGEuaAppbmRleCBkMTA4MTRkZGVmMzZiZDI3ZDVlNWUx
ODI3ZDBiNjI4OGVmMzkyZmZkLi44ZmMwMTYzMjk0N2VjMWUyZWJkNmYzMmZlZDI2ZjdmNWNhMDNk
MjdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnRGF0YS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdEYXRhLmgKQEAgLTU0LDcgKzU0LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRGF0YU9iamVjdEd0azsKIH0KIHR5cGVkZWYgV2ViQ29y
ZTo6RGF0YU9iamVjdEd0ayogRHJhZ0RhdGFSZWY7Ci0jZWxpZiBQTEFURk9STShFRkwpIHx8IFBM
QVRGT1JNKE5JWCkgfHwgUExBVEZPUk0oSU9TKQorI2VsaWYgUExBVEZPUk0oRUZMKSB8fCBQTEFU
Rk9STShJT1MpCiB0eXBlZGVmIHZvaWQqIERyYWdEYXRhUmVmOwogI2VuZGlmCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vRHJhZ0ltYWdlLmgKaW5kZXggMjJhMWEwNTE1OTUyYjI5NDk1NmIzMjk2ODk2NTk0
NzZlNTU5YTZlNS4uNGU0ZjcxYTQyZDUxZGM5ZGU0NzZhZmJkYzg2NjcwNGNjZDg2OGI5MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRHJhZ0ltYWdlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vRHJhZ0ltYWdlLmgKQEAgLTQxLDcgKzQxLDcgQEAgdHlwZWRlZiBz
dHJ1Y3QgQ0dJbWFnZSAqQ0dJbWFnZVJlZjsKIE9CSkNfQ0xBU1MgTlNJbWFnZTsKICNlbGlmIFBM
QVRGT1JNKFdJTikKIHR5cGVkZWYgc3RydWN0IEhCSVRNQVBfXyogSEJJVE1BUDsKLSNlbGlmIFBM
QVRGT1JNKEdUSykgfHwgUExBVEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oR1RLKQogdHlwZWRl
ZiBzdHJ1Y3QgX2NhaXJvX3N1cmZhY2UgY2Fpcm9fc3VyZmFjZV90OwogI2VuZGlmCiAKQEAgLTYz
LDcgKzYzLDcgQEAgdHlwZWRlZiBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gRHJhZ0ltYWdlUmVmOwog
dHlwZWRlZiBSZXRhaW5QdHI8TlNJbWFnZT4gRHJhZ0ltYWdlUmVmOwogI2VsaWYgUExBVEZPUk0o
V0lOKQogdHlwZWRlZiBIQklUTUFQIERyYWdJbWFnZVJlZjsKLSNlbGlmIFBMQVRGT1JNKEdUSykg
fHwgUExBVEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oR1RLKQogdHlwZWRlZiBjYWlyb19zdXJm
YWNlX3QqIERyYWdJbWFnZVJlZjsKICNlbGlmIFBMQVRGT1JNKEVGTCkKIHR5cGVkZWYgdm9pZCog
RHJhZ0ltYWdlUmVmOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRmlsZVN5
c3RlbS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRmlsZVN5c3RlbS5oCmluZGV4IDM0ZmUw
YTQzMGY3ZTZhMzMzYzIzZmUzMDM1Y2Q5OWUxMTFmOTZhYWYuLjgyZGQ1MDgwNWViYzg4YWRiYjhm
NjY5NDM1OWU2YzViMzFlYjgzYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L0ZpbGVTeXN0ZW0uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9GaWxlU3lzdGVtLmgK
QEAgLTE5MSw3ICsxOTEsNyBAQCBTdHJpbmcgZW5jb2RlRm9yRmlsZU5hbWUoY29uc3QgU3RyaW5n
Jik7CiBSZXRhaW5QdHI8Q0ZVUkxSZWY+IHBhdGhBc1VSTChjb25zdCBTdHJpbmcmKTsKICNlbmRp
ZgogCi0jaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0oR1RL
KQogU3RyaW5nIGZpbGVuYW1lVG9TdHJpbmcoY29uc3QgY2hhciopOwogU3RyaW5nIGZpbGVuYW1l
Rm9yRGlzcGxheShjb25zdCBTdHJpbmcmKTsKIENTdHJpbmcgYXBwbGljYXRpb25EaXJlY3RvcnlQ
YXRoKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJp
bmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKaW5kZXgg
ZTNmNzNjYjBkMmMwMTY4YmJhZmE2MWMwZTc5ZjFhNGUzNzhiZjY3YS4uMGIyY2NkMTMwYzY0ZDZm
YmZjMmY2MTA4YzRjZWEzYTRiZjM1ZTQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xv
Y2FsaXplZFN0cmluZ3MuaApAQCAtNTQsNyArNTQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ09wZW5JbWFnZUluTmV3V2luZG93KCk7CiAgICAg
U3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0Rvd25sb2FkSW1hZ2VUb0Rpc2soKTsKICAgICBTdHJp
bmcgY29udGV4dE1lbnVJdGVtVGFnQ29weUltYWdlVG9DbGlwYm9hcmQoKTsKLSNpZiBQTEFURk9S
TShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKEdU
SykgfHwgUExBVEZPUk0oRUZMKQogICAgIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdDb3B5SW1h
Z2VVcmxUb0NsaXBib2FyZCgpOwogI2VuZGlmCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRh
Z09wZW5GcmFtZUluTmV3V2luZG93KCk7CkBAIC04MCw3ICs4MCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnVW5pY29kZUluc2VydFpXSk1hcmso
KTsKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnVW5pY29kZUluc2VydFpXTkpNYXJrKCk7
CiAjZW5kaWYKLSNpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0o
TklYKQorI2lmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKQogICAgIFN0cmluZyBjb250
ZXh0TWVudUl0ZW1UYWdTZWxlY3RBbGwoKTsKICNlbmRpZgogICAgIFN0cmluZyBjb250ZXh0TWVu
dUl0ZW1UYWdOb0d1ZXNzZXNGb3VuZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vV2lkZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaAppbmRleCAz
N2U5OTE2ZjZkYmJhZjg3Y2FlOTY5ZWZkZGFkM2YyMjc5MjFiZmViLi4yZjNmMjdjZjM3MWJiZmVl
OWFhYmQwY2MxZTY4MzU5NjFiYmNkNjZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9XaWRnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaApAQCAt
NTksMTAgKzU5LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgX0d0a0NvbnRhaW5lciBHdGtDb250YWluZXI7
CiB0eXBlZGVmIEd0a1dpZGdldCogUGxhdGZvcm1XaWRnZXQ7CiAjZW5kaWYKIAotI2lmIFBMQVRG
T1JNKE5JWCkKLXR5cGVkZWYgdm9pZCogUGxhdGZvcm1XaWRnZXQ7Ci0jZW5kaWYKLQogI2lmIFBM
QVRGT1JNKEVGTCkKICNpZiBVU0UoRU8pCiB0eXBlZGVmIHN0cnVjdCBfRW9fT3BhcXVlIEV2YXNf
T2JqZWN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJh
bWUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmgKaW5kZXggOTI0
ZDQ3NDlhNTIwOGY2NDA5YzYwOTE2OTMxYWJmMzljNmIwNTBjZC4uN2JmMDcxNTFmOTQ2YmM0OTc5
YjkwOGFhMWFmY2ZiZGNiZGYwYTMxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vRkZURnJhbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9G
RlRGcmFtZS5oCkBAIC02OCwxMCArNjgsNiBAQCBzdHJ1Y3QgUkRGVENvbnRleHQ7CiAjaW5jbHVk
ZSA8aXBwcy5oPgogI2VuZGlmIC8vIFVTRShXRUJBVURJT19JUFApCiAKLSNpZiBQTEFURk9STShO
SVgpCi0jaW5jbHVkZSA8cHVibGljL0ZGVEZyYW1lLmg+Ci0jZW5kaWYKLQogI2luY2x1ZGUgPHd0
Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KICNpbmNsdWRlIDx3dGYv
VGhyZWFkaW5nLmg+CkBAIC0xODMsMTAgKzE3OSw2IEBAIHByaXZhdGU6CiAgICAgQXVkaW9GbG9h
dEFycmF5IG1faW1hZ0RhdGE7CiAjZW5kaWYgLy8gVVNFKFdFQkFVRElPX0lQUCkKIAotI2lmIFBM
QVRGT1JNKE5JWCkKLSAgICBPd25QdHI8Tml4OjpGRlRGcmFtZT4gbV9mZnRGcmFtZTsKLSNlbmRp
ZiAvLyBQTEFURk9STShOSVgpCi0KICNpZiBVU0UoV0VCQVVESU9fT1BFTk1BWF9ETF9GRlQpCiAg
ICAgc3RhdGljIE9NWEZGVFNwZWNfUl9GMzIqIGNvbnRleHRGb3JTaXplKHVuc2lnbmVkIGxvZzJG
RlRTaXplKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSFJU
RkVsZXZhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0
aW9uLmNwcAppbmRleCAzOGMxZDE2YWE0MTdkZmFkZmIyZTY1ZjFmYWY5ZWMzZTIyZTgxZjNjLi44
NGFhOGNkOTU4OGMxODhkYjhmMDkxNGU0NGQxMGViM2YzZmYwNzRlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0aW9uLmNwcApAQCAtNjAsNyArNjAsNyBA
QCBjb25zdCBzaXplX3QgUmVzcG9uc2VGcmFtZVNpemUgPSAyNTY7CiAvLyBUaGUgaW1wdWxzZSBy
ZXNwb25zZXMgbWF5IGJlIHJlc2FtcGxlZCB0byBhIGRpZmZlcmVudCBzYW1wbGUtcmF0ZSAoZGVw
ZW5kaW5nIG9uIHRoZSBhdWRpbyBoYXJkd2FyZSkgd2hlbiB0aGV5IGFyZSBsb2FkZWQuCiBjb25z
dCBmbG9hdCBSZXNwb25zZVNhbXBsZVJhdGUgPSA0NDEwMDsKIAotI2lmIFBMQVRGT1JNKE1BQykg
fHwgVVNFKFdFQkFVRElPX0dTVFJFQU1FUikgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JN
KE1BQykgfHwgVVNFKFdFQkFVRElPX0dTVFJFQU1FUikKICNkZWZpbmUgVVNFX0NPTkNBVEVOQVRF
RF9JTVBVTFNFX1JFU1BPTlNFUwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY2Fpcm8vV2lkZ2V0QmFja2luZ1N0b3JlLmgKaW5kZXggN2IxNmJiNTAxNWI5NDQ2M2Qx
ZTNlMDk3YzE2YTk3MzFiZTM0ZmNjYy4uZjRiYjI1NTNkYTY3ZDYzMjFjM2IwMzk4Mjk1ODI0MmIw
ZjQ4YTdlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2Fpcm8vV2lkZ2V0
QmFja2luZ1N0b3JlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2Fpcm8vV2lkZ2V0
QmFja2luZ1N0b3JlLmgKQEAgLTM5LDggKzM5LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdHlw
ZWRlZiBHdGtXaWRnZXQqIFBsYXRmb3JtV2lkZ2V0OwogI2VsaWYgUExBVEZPUk0oRUZMKQogdHlw
ZWRlZiBFdmFzX09iamVjdCogUGxhdGZvcm1XaWRnZXQ7Ci0jZWxpZiBQTEFURk9STShOSVgpCi10
eXBlZGVmIHZvaWQqIFBsYXRmb3JtV2lkZ2V0OwogI2VuZGlmCiAKIGNsYXNzIFdpZGdldEJhY2tp
bmdTdG9yZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9B
TkdMRVdlYktpdEJyaWRnZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5H
TEVXZWJLaXRCcmlkZ2UuaAppbmRleCBiYmIzYmMzNDI0NDMxNmE5YzVmZDU1Y2MyNTlmYjA0Y2Zi
MzA2OWQyLi40NDlhYjQ1M2JiODcwZWY5MjhkZTUyZTUzMTMwYjNjZmQ3NzdkNTc0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdl
LmgKQEAgLTI5LDcgKzI5LDcgQEAKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKLSNpZiAhUExBVEZPUk0oR1RLKSAmJiAhUExB
VEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oV0lOKSAmJiAhUExBVEZPUk0oTklYKQorI2lmICFQTEFU
Rk9STShHVEspICYmICFQTEFURk9STShFRkwpICYmICFQTEFURk9STShXSU4pCiAjaW5jbHVkZSAi
QU5HTEUvU2hhZGVyTGFuZy5oIgogI2VsaWYgUExBVEZPUk0oV0lOKQogI2luY2x1ZGUgIkdMU0xB
TkcvU2hhZGVyTGFuZy5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udFBsYXRmb3JtRGF0YS5oCmluZGV4IDNiZGIzY2NhOTg0Zjk5MmZiNGUxODI0YTk4MTFh
NWE3NzNhZWI5MTAuLmJmYTU3MDk1ZTllZDRjZTQyNGU5MzAyMGQzZmY1ZGNiYTE4YTQwYTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQbGF0Zm9ybURh
dGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGxhdGZvcm1E
YXRhLmgKQEAgLTI1LDcgKzI1LDcgQEAKIC8vIEZJWE1FOiBUaGlzIGlzIHRlbXBvcmFyeSB1bnRp
bCBhbGwgcG9ydHMgc3dpdGNoIHRvIHVzaW5nIHRoaXMgZmlsZS4KICNpZiBVU0UoV0lOR0RJKQog
I2luY2x1ZGUgIndpbmNlL0ZvbnRQbGF0Zm9ybURhdGEuaCIKLSNlbGlmIFBMQVRGT1JNKEVGTCkg
fHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShFRkwpIHx8
IFBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJmcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhLmgiCiAj
ZWxzZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENv
bnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmNw
cAppbmRleCAxNjk5M2ExNDc5Y2MyMTc1MGU5OTZiYjY2MDhkMjRjZDkyOWViNzUxLi44Mjc1MmFl
OWRjZGFjZDVmZWUzNGFjMmI4OTJhYWQ4OGI0YWUwYzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5jcHAKQEAgLTE5LDcgKzE5LDcgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJHTENvbnRleHQuaCIKIAotI2lmIFVTRShPUEVOR0wp
IHx8IChQTEFURk9STShOSVgpICYmIFVTRShPUEVOR0xfRVNfMikpCisjaWYgVVNFKE9QRU5HTCkK
IAogI2lmIFVTRShFR0wpCiAjaW5jbHVkZSAiR0xDb250ZXh0RUdMLmgiCkBAIC0xNTQsNyArMTU0
LDYgQEAgUGFzc093blB0cjxHTENvbnRleHQ+IEdMQ29udGV4dDo6Y3JlYXRlQ29udGV4dEZvcldp
bmRvdyhHTE5hdGl2ZVdpbmRvd1R5cGUgd2luZG8KICAgICB9CiAjZW5kaWYKIAotI2lmICFQTEFU
Rk9STShOSVgpCiAjaWYgVVNFKEdMWCkKICAgICBpZiAoT3duUHRyPEdMQ29udGV4dD4gZ2x4Q29u
dGV4dCA9IEdMQ29udGV4dEdMWDo6Y3JlYXRlQ29udGV4dCh3aW5kb3dIYW5kbGUsIHNoYXJpbmdD
b250ZXh0KSkKICAgICAgICAgcmV0dXJuIGdseENvbnRleHQucmVsZWFzZSgpOwpAQCAtMTYzLDcg
KzE2Miw2IEBAIFBhc3NPd25QdHI8R0xDb250ZXh0PiBHTENvbnRleHQ6OmNyZWF0ZUNvbnRleHRG
b3JXaW5kb3coR0xOYXRpdmVXaW5kb3dUeXBlIHdpbmRvCiAgICAgaWYgKE93blB0cjxHTENvbnRl
eHQ+IGVnbENvbnRleHQgPSBHTENvbnRleHRFR0w6OmNyZWF0ZUNvbnRleHQod2luZG93SGFuZGxl
LCBzaGFyaW5nQ29udGV4dCkpCiAgICAgICAgIHJldHVybiBlZ2xDb250ZXh0LnJlbGVhc2UoKTsK
ICNlbmRpZgotI2VuZGlmCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmgKaW5kZXggNGU5ZDM5ZTMxNWRhOWE1ODJm
M2JhMDBhZjNlYmE0ZTZmNzFkMDc4Ni4uMDNiNTdiNWU4MjQ0NDg4YTVmOWU2MjJmNzA2NDU5OGQ2
MjhmNWYyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xD
b250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0
LmgKQEAgLTI1LDcgKzI1LDcgQEAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNs
dWRlIDx3dGYvUGFzc093blB0ci5oPgogCi0jaWYgVVNFKEVHTCkgJiYgIVBMQVRGT1JNKEdUSykg
JiYgIVBMQVRGT1JNKE5JWCkKKyNpZiBVU0UoRUdMKSAmJiAhUExBVEZPUk0oR1RLKQogI2luY2x1
ZGUgImVnbHBsYXRmb3JtLmgiCiB0eXBlZGVmIEVHTE5hdGl2ZVdpbmRvd1R5cGUgR0xOYXRpdmVX
aW5kb3dUeXBlOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHQzRC5oCmluZGV4IDNlZjkwZDM4ZWE4Y2Q3YWIwNTJlNGQwZGYw
NjE3OGM0N2QxYWY4MzMuLmM0ZDcyYTcxYmNiNWI1NWE3MTExZDZiN2MxN2IzZjMyNjhjZTIyYjAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29u
dGV4dDNELmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuaApAQCAtNjAsNyArNjAsNyBAQAogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4K
IE9CSkNfQ0xBU1MgQ0FMYXllcjsKIE9CSkNfQ0xBU1MgV2ViR0xMYXllcjsKLSNlbGlmIFBMQVRG
T1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9S
TShHVEspIHx8IFBMQVRGT1JNKEVGTCkKIHR5cGVkZWYgdW5zaWduZWQgaW50IEdMdWludDsKICNl
bmRpZgogCkBAIC05ODcsNyArOTg3LDcgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgcmVzaGFwZUZC
T3MoY29uc3QgSW50U2l6ZSYpOwogICAgIHZvaWQgcmVzb2x2ZU11bHRpc2FtcGxpbmdJZk5lY2Vz
c2FyeShjb25zdCBJbnRSZWN0JiA9IEludFJlY3QoKSk7Ci0jaWYgKFBMQVRGT1JNKEVGTCkgfHwg
UExBVEZPUk0oTklYKSkgJiYgVVNFKEdSQVBISUNTX1NVUkZBQ0UpCisjaWYgUExBVEZPUk0oRUZM
KSAmJiBVU0UoR1JBUEhJQ1NfU1VSRkFDRSkKICAgICB2b2lkIGNyZWF0ZUdyYXBoaWNzU3VyZmFj
ZXMoY29uc3QgSW50U2l6ZSYpOwogI2VuZGlmCiAKQEAgLTEwOTIsNyArMTA5Miw3IEBAIHByaXZh
dGU6CiAKICAgICBPd25QdHI8U2hhZGVyTmFtZUhhc2g+IG5hbWVIYXNoTWFwRm9yU2hhZGVyczsK
IAotI2lmICgoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikg
fHwgUExBVEZPUk0oTklYKSkgJiYgVVNFKE9QRU5HTF9FU18yKSkKKyNpZiAoKFBMQVRGT1JNKEdU
SykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pKSAmJiBVU0UoT1BFTkdMX0VTXzIp
KQogICAgIGZyaWVuZCBjbGFzcyBFeHRlbnNpb25zM0RPcGVuR0xFUzsKICAgICBPd25QdHI8RXh0
ZW5zaW9uczNET3BlbkdMRVM+IG1fZXh0ZW5zaW9uczsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0RQcml2
YXRlLmNwcAppbmRleCBmNzMyNGQwZDY5NmEwMjgwY2QwMjMwZTg1OGZjYWZlNTVhYTRkMTUwLi4w
NDlmZGQyZDEyZjFkZTI1YTEyNDY4Mjk5YzlkOTI0ZmVlNGE0NTdmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNE
UHJpdmF0ZS5jcHAKQEAgLTI2LDEwICsyNiw2IEBACiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQu
aCIKICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CiAKLSNpZiBQTEFURk9STShOSVgpICYm
IFVTRShFR0wpCi0jaW5jbHVkZSAiR0xDb250ZXh0RnJvbUN1cnJlbnRFR0wuaCIKLSNlbmRpZgot
CiAjaWYgVVNFKENBSVJPKQogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dENhaXJvLmgiCiAjZW5k
aWYKQEAgLTYzLDkgKzU5LDYgQEAgR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlOjpHcmFwaGljc0Nv
bnRleHQzRFByaXZhdGUoR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQsIEcKICAgICAgICAgbV9n
bENvbnRleHQgPSBHTENvbnRleHQ6OmNyZWF0ZU9mZnNjcmVlbkNvbnRleHQoR0xDb250ZXh0Ojpz
aGFyaW5nQ29udGV4dCgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBHcmFwaGljc0NvbnRl
eHQzRDo6UmVuZGVyVG9DdXJyZW50R0xDb250ZXh0OgotI2lmIFBMQVRGT1JNKE5JWCkgJiYgVVNF
KEVHTCkKLSAgICAgICAgbV9nbENvbnRleHQgPSBHTENvbnRleHRGcm9tQ3VycmVudEVHTDo6Y3Jl
YXRlRnJvbUN1cnJlbnRHTENvbnRleHQoKTsKLSNlbmRpZgogICAgICAgICBicmVhazsKICAgICBj
YXNlIEdyYXBoaWNzQ29udGV4dDNEOjpSZW5kZXJEaXJlY3RseVRvSG9zdFdpbmRvdzoKICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9PcGVuR0xFU1NoaW1zLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9PcGVuR0xFU1NoaW1zLmgKaW5kZXggYzRjNjA0NWM4Njk3YzVhYWRiZTBmZmQ4ZmVi
MjdiODA1ZDY2NDhmMi4uZjI5OTE1NmM4MGQ3ZDAyMDI3MjIxOGE2Y2NhNzBjZjhmYTg1OGIwNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMRVNTaGlt
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTEVTU2hpbXMu
aApAQCAtMjYsNyArMjYsNyBAQAogI2lmbmRlZiBPcGVuR0xFU1NoaW1zX2gKICNkZWZpbmUgT3Bl
bkdMRVNTaGltc19oCiAKLSNpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExB
VEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9S
TShFRkwpIHx8IFBMQVRGT1JNKFdJTikKICNkZWZpbmUgZ2xCaW5kRnJhbWVidWZmZXJFWFQgZ2xC
aW5kRnJhbWVidWZmZXIKICNkZWZpbmUgZ2xGcmFtZWJ1ZmZlclRleHR1cmUyREVYVCBnbEZyYW1l
YnVmZmVyVGV4dHVyZTJECiAjZGVmaW5lIGdsQmluZFJlbmRlcmJ1ZmZlckVYVCBnbEJpbmRSZW5k
ZXJidWZmZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09w
ZW5HTFNoaW1zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNo
aW1zLmNwcAppbmRleCA1MDczNGY5MjVlOTgzYTc0NTg4MTk0YTlhZDY4MWZjNDA3ODI1MTdlLi45
MTZhOTA4YzI0MDY2ODBmNzJjMWY3NDBiMjM5MTM5NDU4NTg0MjZlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwCkBAIC0yNiwxMCArMjYs
NiBAQAogI2luY2x1ZGUgPGRsZmNuLmg+CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE5JWCkgJiYg
VVNFKEVHTCkKLSNpbmNsdWRlIDxFR0wvZWdsLmg+Ci0jZW5kaWYKLQogI2luY2x1ZGUgPHd0Zi90
ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNDYs
MTEgKzQyLDYgQEAgc3RhdGljIHZvaWQqIGdldFByb2NBZGRyZXNzKGNvbnN0IGNoYXIqIHByb2NO
YW1lKQogewogICAgIHJldHVybiBHZXRQcm9jQWRkcmVzcyhHZXRNb2R1bGVIYW5kbGVBKCJsaWJH
TEVTdjIiKSwgcHJvY05hbWUpOwogfQotI2VsaWYgUExBVEZPUk0oTklYKSAmJiBVU0UoRUdMKQot
c3RhdGljIHZvaWQqIGdldFByb2NBZGRyZXNzKGNvbnN0IGNoYXIqIHByb2NOYW1lKQotewotICAg
IHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQqPihlZ2xHZXRQcm9jQWRkcmVzcyhwcm9jTmFt
ZSkpOwotfQogI2Vsc2UKIHR5cGVkZWYgdm9pZCogKCpnbEdldFByb2NBZGRyZXNzVHlwZSkgKGNv
bnN0IGNoYXIqIHByb2NOYW1lKTsKIHN0YXRpYyB2b2lkKiBnZXRQcm9jQWRkcmVzcyhjb25zdCBj
aGFyKiBwcm9jTmFtZSkKQEAgLTEwOCwxOSArOTksOSBAQCBzdGF0aWMgdm9pZCogbG9va3VwT3Bl
bkdMRnVuY3Rpb25BZGRyZXNzKGNvbnN0IGNoYXIqIGZ1bmN0aW9uTmFtZSwgYm9vbCogc3VjY2Vz
cwogICAgIHJldHVybiB0YXJnZXQ7CiB9CiAKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShPUEVO
R0xfRVNfMikKLQotLy8gV2l0aCBBbmdsZSBvbmx5IEVHTC9HTEVTMiBleHRlbnNpb25zIGFyZSBh
dmFpbGFibGUgdGhyb3VnaCBlZ2xHZXRQcm9jQWRkcmVzcywgbm90IHRoZSByZWd1bGFyIHN0YW5k
YXJkaXplZCBmdW5jdGlvbnMuCi0jZGVmaW5lIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShG
dW5jdGlvbk5hbWUsIHN1Y2Nlc3MpIFwKLSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0
aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPig6OkZ1bmN0aW9u
TmFtZSkKLQotI2Vsc2UKLQogI2RlZmluZSBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlkoRnVu
Y3Rpb25OYW1lLCBzdWNjZXNzKSBcCiAgICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlv
bk5hbWUgPSByZWludGVycHJldF9jYXN0PEZ1bmN0aW9uTmFtZSMjVHlwZT4obG9va3VwT3BlbkdM
RnVuY3Rpb25BZGRyZXNzKCNGdW5jdGlvbk5hbWUsICZzdWNjZXNzKSkKIAotI2VuZGlmCi0KICNk
ZWZpbmUgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZX0VYVChGdW5jdGlvbk5hbWUpIFwKICAg
ICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8
RnVuY3Rpb25OYW1lIyNUeXBlPihsb29rdXBPcGVuR0xGdW5jdGlvbkFkZHJlc3MoI0Z1bmN0aW9u
TmFtZSkpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09w
ZW5HTFNoaW1zLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGlt
cy5oCmluZGV4IGZhNjk2ZjMxMmQxY2NmZmNlNWUzYzc4ZTZlMDA4Yzk2MjdhOGVlZjcuLmMwZTZl
NjAxMmZkOWQ3ZjRmOTdmYTA4Y2NlZmI2ZWU5NTE0YjA1ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuaApAQCAtMjAsMTIgKzIwLDggQEAKICNp
Zm5kZWYgT3BlbkdMU2hpbXNfaAogI2RlZmluZSBPcGVuR0xTaGltc19oCiAKLSNpZiBQTEFURk9S
TShOSVgpICYmIFVTRShPUEVOR0xfRVNfMikKLSNpbmNsdWRlIDxHTEVTMi9nbDIuaD4KLSNlbHNl
CiAjaW5jbHVkZSA8R0wvZ2wuaD4KICNpbmNsdWRlIDxHTC9nbGV4dC5oPgotI2VuZGlmCiAKICNp
ZiBkZWZpbmVkKEdMX0VTX1ZFUlNJT05fMl8wKQogLy8gU29tZSBvcGVuR0wgRVMgc3lzdGVtcyBt
aXNzIHRoaXMgdHlwZWRlZi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL1BsYXRmb3JtTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L1BsYXRmb3JtTGF5ZXIuaAppbmRleCA0MTkwOGVmNDAzNjc5YjU5NGEyOTAwZDRmMjFiNDQ0NWU0
MDU0ZDJmLi5hMThmOWI5YzNmNDk3NDdmMWRkN2UyYzZhOTY4YTU1Njc4ODJhNGVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybUxheWVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1MYXllci5oCkBAIC00
NSw3ICs0NSw3IEBAIGNsYXNzIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyOwogdHlwZWRlZiBU
ZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllciBQbGF0Zm9ybUxheWVyOwogfTsKICNlbmRpZgotI2Vs
aWYgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShFRkwpCiAj
aWYgVVNFKFRFWFRVUkVfTUFQUEVSKQogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgVGV4dHVy
ZU1hcHBlclBsYXRmb3JtTGF5ZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVU
eXBlLmNwcAppbmRleCA1NWNkOWNlZDBmZDlkYjFmYTkzMzg5ZjJiM2E5Y2QzMDgzYWU2NmNlLi4w
YjZjZGQxYTI0MDk5Yzc1YWJlMGVlN2M1NmMxNzY0MjRjODNiMGNmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJl
ZVR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBl
L0ZvbnRQbGF0Zm9ybURhdGFGcmVlVHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
IEZUX1RSVUVUWVBFX1RBQkxFU19ICiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAK
LSNpZiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oTklYKQorI2lmICFQTEFURk9STShFRkwp
CiAjaW5jbHVkZSA8Z2RrL2dkay5oPgogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5j
cHAKaW5kZXggMTE0NmZhMWFkYzk0ZDJmZjE2MDEwMGU0ZWJhOWI1MmVhNGEzMTY0Yy4uZjgzMjFj
YWMwNDA1NWU0YjIzMzZmNmMxM2RjYjgxYjkzMWNiYmI1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9w
ZW5HTC5jcHAKQEAgLTM4LDcgKzM4LDcgQEAKICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRl
ICJBTkdMRS9TaGFkZXJMYW5nLmgiCiAjaW5jbHVkZSA8T3BlbkdML2dsLmg+Ci0jZWxpZiBQTEFU
Rk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShO
SVgpCisjZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lO
KQogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAjZW5kaWYKIApAQCAtODYsNyArODYsNyBAQCBQ
bGF0Zm9ybTNET2JqZWN0IEV4dGVuc2lvbnMzRE9wZW5HTDo6Y3JlYXRlVmVydGV4QXJyYXlPRVMo
KQogewogICAgIG1fY29udGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7CiAgICAgR0x1aW50IGFy
cmF5ID0gMDsKLSNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JN
KFdJTikgfHwgUExBVEZPUk0oTklYKSkKKyNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShF
RkwpIHx8IFBMQVRGT1JNKFdJTikpCiAgICAgaWYgKGlzVmVydGV4QXJyYXlPYmplY3RTdXBwb3J0
ZWQoKSkKICAgICAgICAgZ2xHZW5WZXJ0ZXhBcnJheXMoMSwgJmFycmF5KTsKICNlbGlmIGRlZmlu
ZWQoR0xfQVBQTEVfdmVydGV4X2FycmF5X29iamVjdCkgJiYgR0xfQVBQTEVfdmVydGV4X2FycmF5
X29iamVjdApAQCAtMTAxLDcgKzEwMSw3IEBAIHZvaWQgRXh0ZW5zaW9uczNET3BlbkdMOjpkZWxl
dGVWZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0IGFycmF5KQogICAgICAgICByZXR1cm47
CiAKICAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotI2lmIChQTEFURk9STShH
VEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpKQor
I2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSkKICAg
ICBpZiAoaXNWZXJ0ZXhBcnJheU9iamVjdFN1cHBvcnRlZCgpKQogICAgICAgICBnbERlbGV0ZVZl
cnRleEFycmF5cygxLCAmYXJyYXkpOwogI2VsaWYgZGVmaW5lZChHTF9BUFBMRV92ZXJ0ZXhfYXJy
YXlfb2JqZWN0KSAmJiBHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0CkBAIC0xMTUsNyArMTE1
LDcgQEAgR0MzRGJvb2xlYW4gRXh0ZW5zaW9uczNET3BlbkdMOjppc1ZlcnRleEFycmF5T0VTKFBs
YXRmb3JtM0RPYmplY3QgYXJyYXkpCiAgICAgICAgIHJldHVybiBHTF9GQUxTRTsKIAogICAgIG1f
Y29udGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0jaWYgKFBMQVRGT1JNKEdUSykgfHwgUExB
VEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkpCisjaWYgKFBMQVRG
T1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pKQogICAgIGlmIChpc1Zl
cnRleEFycmF5T2JqZWN0U3VwcG9ydGVkKCkpCiAgICAgICAgIHJldHVybiBnbElzVmVydGV4QXJy
YXkoYXJyYXkpOwogI2VsaWYgZGVmaW5lZChHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0KSAm
JiBHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0CkBAIC0xMzEsNyArMTMxLDcgQEAgdm9pZCBF
eHRlbnNpb25zM0RPcGVuR0w6OmJpbmRWZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0IGFy
cmF5KQogI2VuZGlmCiAKICAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotI2lm
IChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFU
Rk9STShOSVgpKQorI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZP
Uk0oV0lOKSkKICAgICBpZiAoaXNWZXJ0ZXhBcnJheU9iamVjdFN1cHBvcnRlZCgpKQogICAgICAg
ICBnbEJpbmRWZXJ0ZXhBcnJheShhcnJheSk7CiAjZWxpZiBkZWZpbmVkKEdMX0FQUExFX3ZlcnRl
eF9hcnJheV9vYmplY3QpICYmIEdMX0FQUExFX3ZlcnRleF9hcnJheV9vYmplY3QKQEAgLTE4NSw3
ICsxODUsNyBAQCBib29sIEV4dGVuc2lvbnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24oY29u
c3QgU3RyaW5nJiBuYW1lKQogCiAgICAgLy8gR0xfT0VTX3ZlcnRleF9hcnJheV9vYmplY3QKICAg
ICBpZiAobmFtZSA9PSAiR0xfT0VTX3ZlcnRleF9hcnJheV9vYmplY3QiKSB7Ci0jaWYgKFBMQVRG
T1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9S
TShHVEspIHx8IFBMQVRGT1JNKEVGTCkpCiAgICAgICAgIHJldHVybiBtX2F2YWlsYWJsZUV4dGVu
c2lvbnMuY29udGFpbnMoIkdMX0FSQl92ZXJ0ZXhfYXJyYXlfb2JqZWN0Iik7CiAjZWxzZQogICAg
ICAgICByZXR1cm4gbV9hdmFpbGFibGVFeHRlbnNpb25zLmNvbnRhaW5zKCJHTF9BUFBMRV92ZXJ0
ZXhfYXJyYXlfb2JqZWN0Iik7CkBAIC0yMzYsNyArMjM2LDcgQEAgU3RyaW5nIEV4dGVuc2lvbnMz
RE9wZW5HTDo6Z2V0RXh0ZW5zaW9ucygpCiAgICAgcmV0dXJuIFN0cmluZyhyZWludGVycHJldF9j
YXN0PGNvbnN0IGNoYXIqPig6OmdsR2V0U3RyaW5nKEdMX0VYVEVOU0lPTlMpKSk7CiB9CiAKLSNp
ZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExB
VEZPUk0oTklYKSkKKyNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRG
T1JNKFdJTikpCiBib29sIEV4dGVuc2lvbnMzRE9wZW5HTDo6aXNWZXJ0ZXhBcnJheU9iamVjdFN1
cHBvcnRlZCgpCiB7CiAgICAgc3RhdGljIGNvbnN0IGJvb2wgc3VwcG9ydHNWZXJ0ZXhBcnJheU9i
amVjdCA9IHN1cHBvcnRzKCJHTF9PRVNfdmVydGV4X2FycmF5X29iamVjdCIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9w
ZW5HTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lv
bnMzRE9wZW5HTC5oCmluZGV4IDVjZTAyOWExZTM4NTNmOWZkMTU0NDRlY2IwMTc2OGE4YTlhMDJj
ZDcuLjgxYzVlNDlkNWQ4ZjVhOTk4MWE4ZWQyM2IxOWIxZjJkODY5MDE4ZGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVu
R0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5z
aW9uczNET3BlbkdMLmgKQEAgLTYwLDcgKzYwLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVh
bCBib29sIHN1cHBvcnRzRXh0ZW5zaW9uKGNvbnN0IFdURjo6U3RyaW5nJik7CiAgICAgdmlydHVh
bCBTdHJpbmcgZ2V0RXh0ZW5zaW9ucygpOwotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JN
KEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9STShH
VEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSkKIHByaXZhdGU6CiAgICAgYm9v
bCBpc1ZlcnRleEFycmF5T2JqZWN0U3VwcG9ydGVkKCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xD
b21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVu
c2lvbnMzRE9wZW5HTENvbW1vbi5jcHAKaW5kZXggODQ4OTk2Njc1NDJiNjhkOWI4NGI1Y2Y1ODE0
NmVlMTgyYmU4ODI3Yy4uZjE3MTNkODk1YmVlNzMyNmY1MzRiMmQzZmQxYzAyZTZhMTZkZTczMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVu
c2lvbnMzRE9wZW5HTENvbW1vbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTENvbW1vbi5jcHAKQEAgLTQxLDcgKzQxLDcg
QEAKICNpbmNsdWRlIDxHTEVTMi9nbDJleHQuaD4KICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNs
dWRlIDxPcGVuR0wvZ2wuaD4KLSNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8
fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEdUSykgfHwg
UExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pCiAjaW5jbHVkZSAiT3BlbkdMU2hpbXMuaCIK
ICNlbmRpZgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMRVMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xFUy5oCmluZGV4IDMyNmQyOTI1
MzE2YjMwN2YxMTAxMDIyNjZmMzVlYjhhNjU0NTljNDQuLjdjNDA1NjZlOTMwZjc1NjdmYjFjN2Jh
MTAxZmQ4ZGFhYjkwN2VlOWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xFUy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xFUy5oCkBAIC01Nywx
MSArNTcsNiBAQCB0eXBlZGVmIHZvaWQgKEdMX0FQSUVOVFJZUCBQRk5HTEdFVE5VTklGT1JNRlZF
WFRQUk9DKSAoR0x1aW50IHByb2dyYW0sIEdMaW50IGxvYwogdHlwZWRlZiB2b2lkIChHTF9BUElF
TlRSWVAgUEZOR0xHRVROVU5JRk9STUlWRVhUUFJPQykgKEdMdWludCBwcm9ncmFtLCBHTGludCBs
b2NhdGlvbiwgR0MzRHNpemVpIGJ1ZlNpemUsIEdMaW50ICpwYXJhbXMpOwogI2VuZGlmCiAKLSNp
ZiBQTEFURk9STShOSVgpICYmIFVTRShPUEVOR0xfRVNfMikgJiYgIUdMX0lNR19tdWx0aXNhbXBs
ZWRfcmVuZGVyX3RvX3RleHR1cmUKLS8vIG9uIHJQaSwgUEZOR0xGUkFNRUJVRkZFUlRFWFRVUkUy
RE1VTFRJU0FNUExFSU1HIGlzIGNhbGxlZCBQRk5HTENMSVBQTEFORVhJTUcuCi10eXBlZGVmIFBG
TkdMQ0xJUFBMQU5FWElNRyBQRk5HTEZSQU1FQlVGRkVSVEVYVFVSRTJETVVMVElTQU1QTEVJTUc7
Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBFeHRlbnNpb25zM0RPcGVu
R0xFUyA6IHB1YmxpYyBFeHRlbnNpb25zM0RPcGVuR0xDb21tb24gewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3Bl
bkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGlj
c0NvbnRleHQzRE9wZW5HTC5jcHAKaW5kZXggNjM5NDFlODU1NzY3ZWFmOWQzMDY5NzNjYTk5MzRi
N2E3OGNlMjQzMS4uZTA0ODQxOGI0ZDQyZDYzMDgxZDgyMjA1NTc0MjhmMTg4NWU5NjUyMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNz
Q29udGV4dDNET3BlbkdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwCkBAIC01MSw3ICs1MSw3IEBACiAj
ZGVmaW5lIEdMX1JHQjMyRl9BUkIgICAgICAgICAgICAgICAgICAgICAgIDB4ODgxNQogI2VsaWYg
UExBVEZPUk0oTUFDKQogI2luY2x1ZGUgPE9wZW5HTC9nbC5oPgotI2VsaWYgUExBVEZPUk0oR1RL
KSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKQorI2Vs
aWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikKICNpbmNs
dWRlICJPcGVuR0xTaGltcy5oIgogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTENvbW1vbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250
ZXh0M0RPcGVuR0xDb21tb24uY3BwCmluZGV4IGNjM2QzOThhOTYyMjliMTg1ODg2NDhhMjk0NTBi
OGNkZDVmYTA4NWYuLmI0MTFjMDg0NGE2NTllZmVkYzU0OTQ5MDk5YzQ3OWI3OTFmMDQ4ZjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGlj
c0NvbnRleHQzRE9wZW5HTENvbW1vbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMQ29tbW9uLmNwcApAQCAtNjgs
NyArNjgsNyBAQAogI2luY2x1ZGUgIk9wZW5HTEVTU2hpbXMuaCIKICNlbGlmIFBMQVRGT1JNKE1B
QykKICNpbmNsdWRlIDxPcGVuR0wvZ2wuaD4KLSNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZP
Uk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JN
KEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pCiAjaW5jbHVkZSAiT3BlbkdM
U2hpbXMuaCIKICNlbmRpZgogI2VuZGlmCkBAIC0yNzEsNyArMjcxLDcgQEAgdm9pZCBHcmFwaGlj
c0NvbnRleHQzRDo6cmVzaGFwZShpbnQgd2lkdGgsIGludCBoZWlnaHQpCiAKICAgICBtYXJrQ29u
dGV4dENoYW5nZWQoKTsKIAotI2lmIChQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkpICYm
IFVTRShHUkFQSElDU19TVVJGQUNFKQorI2lmIFBMQVRGT1JNKEVGTCkgJiYgVVNFKEdSQVBISUNT
X1NVUkZBQ0UpCiAgICAgOjpnbEZsdXNoKCk7IC8vIE1ha2Ugc3VyZSBhbGwgR0wgY2FsbHMgaGF2
ZSBiZWVuIGNvbW1pdHRlZCBiZWZvcmUgcmVzaXppbmcuCiAgICAgY3JlYXRlR3JhcGhpY3NTdXJm
YWNlcyhJbnRTaXplKHdpZHRoLCBoZWlnaHQpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RlbXBvcmFyeU9wZW5HTFNldHRpbmcu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RlbXBvcmFyeU9w
ZW5HTFNldHRpbmcuY3BwCmluZGV4IGRlYThkZWExOGU5MzcyNWZlYzIxOGMzNmVmYjgyMGQwOGRh
NTJhN2UuLmEwMTYzNzcwY2RkNzlmZDFmMTBjMDFhMDMxYWZiYjQ2MmE2OWRhMjMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZW1wb3JhcnlPcGVu
R0xTZXR0aW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVu
Z2wvVGVtcG9yYXJ5T3BlbkdMU2V0dGluZy5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKICNpbmNsdWRl
IDxPcGVuR0xFUy9FUzIvZ2wuaD4KICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlIDxPcGVu
R0wvZ2wuaD4KLSNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9S
TShXSU4pIHx8IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0o
RUZMKSB8fCBQTEFURk9STShXSU4pCiAjaW5jbHVkZSAiT3BlbkdMU2hpbXMuaCIKICNlbmRpZgog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4
dHVyZU1hcHBlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1Rl
eHR1cmVNYXBwZXIuaAppbmRleCA0NTBjZDBlMmYyZTcyMjliMThiNTk3MTAwZjk3NzEzOTAwMTY4
YTgwLi40YzgwZDEzOGI4NjU0YzdhZjhhOTk4N2EzNDAyZjA0YTdjZTM4MmNjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyLmgKQEAgLTIyLDcgKzIyLDcgQEAKIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElO
RykgJiYgVVNFKFRFWFRVUkVfTUFQUEVSKQogCi0jaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZP
Uk0oRUZMKSB8fCBQTEFURk9STShOSVgpKSAmJiBVU0UoT1BFTkdMX0VTXzIpCisjaWYgKFBMQVRG
T1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSkgJiYgVVNFKE9QRU5HTF9FU18yKQogI2RlZmluZSBU
RVhNQVBfT1BFTkdMX0VTXzIKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlLmgKaW5kZXggNmFhMWExNjBlMjRjNWZmMGIwMzJhMTNm
M2NiMDBiNTJlZWFlMDIxNi4uZTU1YWQwMDM5YzlhN2M2ZGVlYjFmZjU1OWJjOTNiODU4ZjE3OWM1
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhh
bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5k
bGUuaApAQCAtMTUwLDcgKzE1MCw3IEBAIHB1YmxpYzoKIAogI2VuZGlmIC8vIFVTRShDRk5FVFdP
UkspCiAKLSNpZiAoUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpKSAmJiBVU0UoQ1VSTCkK
KyNpZiBQTEFURk9STShXSU4pICYmIFVTRShDVVJMKQogICAgIHN0YXRpYyB2b2lkIHNldEhvc3RB
bGxvd3NBbnlIVFRQU0NlcnRpZmljYXRlKGNvbnN0IFN0cmluZyYpOwogI2VuZGlmCiAjaWYgUExB
VEZPUk0oV0lOKSAmJiBVU0UoQ1VSTCkgJiYgVVNFKENGKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGx1Z2lucy9QbHVnaW5QYWNrYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMv
UGx1Z2luUGFja2FnZS5jcHAKaW5kZXggYWE1ZDYxZDVjMmI5YmI0MDhiNzFjY2M0MWJlNDM4ZTFm
MDk0MDZlYS4uYjE0OWQzYWNmZDNlZmU4MWQwNzI2Y2E1N2NmNzI0ZDBlMDc4YjQ4NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5QYWNrYWdlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblBhY2thZ2UuY3BwCkBAIC0xNzYsNyArMTc2LDcgQEAg
UGFzc1JlZlB0cjxQbHVnaW5QYWNrYWdlPiBQbHVnaW5QYWNrYWdlOjpjcmVhdGVQYWNrYWdlRnJv
bUNhY2hlKGNvbnN0IFN0cmluZyYgcGEKIH0KICNlbmRpZgogCi0jaWYgZGVmaW5lZChYUF9VTklY
KSAmJiAhUExBVEZPUk0oTklYKQorI2lmIGRlZmluZWQoWFBfVU5JWCkKIHZvaWQgUGx1Z2luUGFj
a2FnZTo6ZGV0ZXJtaW5lUXVpcmtzKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCiB7CiAgICAgaWYg
KE1JTUVUeXBlUmVnaXN0cnk6OmlzSmF2YUFwcGxldE1JTUVUeXBlKG1pbWVUeXBlKSkgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5kZXggZjg0NWNjMDJhMDAzYmJjYzkwOTAz
MWUzNjM4NGZjYTg2YzI4MmJjMS4uYTdlZTUzMmQ1ZTE1NGMwNTFlMjkxYTAzMGQ5MzY0MmZjNmVh
YmJjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuY3BwCkBAIC04MzMsNyArODMz
LDcgQEAgUGx1Z2luVmlldzo6UGx1Z2luVmlldyhGcmFtZSogcGFyZW50RnJhbWUsIGNvbnN0IElu
dFNpemUmIHNpemUsIFBsdWdpblBhY2thZ2UqIHAKICAgICAsIG1fd21QcmludEhEQygwKQogICAg
ICwgbV9oYXZlVXBkYXRlZFBsdWdpbldpZGdldChmYWxzZSkKICNlbmRpZgotI2lmIFBMQVRGT1JN
KEVGTCkgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKEVGTCkKICAgICAsIG1fd2luZG93
KDApCiAjZW5kaWYKICNpZiBkZWZpbmVkKFhQX01BQ09TWCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5WaWV3LmgKaW5kZXggOGEzNjYyMjZlNDc2YWYxMDQzZmRmZjBjNzRjOGE0OTcwZjA4NmZiNy4u
NWZkMzhkMmZkYWM1Mjk4OGM2Y2YxYjQ4YzFlMTU2NTEzZDQzZGY3OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1
Z2lucy9QbHVnaW5WaWV3LmgKQEAgLTM1NCw3ICszNTQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIGJvb2wgbV9oYXZlVXBkYXRlZFBsdWdpbldpZGdldDsKICNlbmRpZgogCi0jaWYg
KFBMQVRGT1JNKEdUSykgJiYgT1MoV0lORE9XUykpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZP
Uk0oTklYKQorI2lmIChQTEFURk9STShHVEspICYmIE9TKFdJTkRPV1MpKSB8fCBQTEFURk9STShF
RkwpCiAgICAgICAgIC8vIE9uIE1hYyBPU1ggYW5kIFF0L1dpbmRvd3MgdGhlIHBsdWdpbiBkb2Vz
IG5vdCBoYXZlIGl0cyBvd24gbmF0aXZlIHdpZGdldCwKICAgICAgICAgLy8gYnV0IGlzIHVzaW5n
IHRoZSBjb250YWluaW5nIHdpbmRvdyBhcyBpdHMgcmVmZXJlbmNlIGZvciBwb3NpdGlvbmluZy9w
YWludGluZy4KICAgICAgICAgUGxhdGZvcm1QbHVnaW5XaWRnZXQgbV93aW5kb3c7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXdOb25lLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlld05vbmUuY3BwCmluZGV4IGI5NjJjMDZkODk1YjJkYmUx
Y2U2MzVmMWEyZmFiZGMwMzY3NzczNmUuLjk5MzU0MWU0OTlmNTU5MjcxNjQ1YTcxM2M2Y2U2NTll
M2QyNWM2ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlld05v
bmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlld05vbmUuY3BwCkBA
IC0xMzIsNyArMTMyLDcgQEAgdm9pZCBQbHVnaW5WaWV3OjpoYW5kbGVGb2N1c091dEV2ZW50KCkK
IC8vIHBvcnRzIHVzaW5nIFBsdWdpblZpZXcsIGJ1dCB1bnRpbCB0aGVuLCBpZiBuZXcgZnVuY3Rp
b25zIGxpa2UgdGhpcyBhcmUgCiAvLyBhZGRlZCwgcGxlYXNlIG1ha2Ugc3VyZSB0aGV5IGhhdmUg
dGhlIHByb3BlciBwbGF0Zm9ybSAjaWZzIHNvIHRoYXQgY2hhbmdlcwogLy8gZG8gbm90IGJyZWFr
IHBvcnRzIHdobyBjb21waWxlIGJvdGggdGhpcyBmaWxlIGFuZCBQbHVnaW5WaWV3LmNwcC4gICAK
LSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgT1MoV0lOQ0UpIHx8IFBMQVRG
T1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgT1MoV0lOQ0Up
CiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiB2b2lkIFBsdWdpblZpZXc6OmtlZXBB
bGl2ZShOUFApCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxl
TGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91
dC5jcHAKaW5kZXggZTZlMGZhMDg1MGM1YzgwYThmMzlkMGQ1MzE0ZDdiZWFlZGQyM2I3NS4uYjBm
MGIzMWFmMGZjNzc2OWZhZTk5OTAzYjAxNmNiZTgzMmU3OWQwMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcApAQCAtOTAsNyArOTAsNyBAQCBzdGF0
aWMgYm9vbCBjYW5Vc2VGb3JUZXh0KGNvbnN0IFJlbmRlclRleHQmIHRleHRSZW5kZXJlciwgY29u
c3QgU2ltcGxlRm9udERhdGEmCiAKIGJvb2wgY2FuVXNlRm9yKGNvbnN0IFJlbmRlckJsb2NrRmxv
dyYgZmxvdykKIHsKLSNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExB
VEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oTklYKQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFU
Rk9STShHVEspICYmICFQTEFURk9STShFRkwpCiAgICAgLy8gRklYTUU6IE5vbi1tYWMgcGxhdGZv
cm1zIGFyZSBoaXR0aW5nIEFTU0VSVChydW4uY2hhcmFjdGVyc0xlbmd0aCgpID49IHJ1bi5sZW5n
dGgoKSkKICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIz
MzM4CiAgICAgcmV0dXJuIGZhbHNlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221758</attachid>
            <date>2014-01-21 10:01:18 -0800</date>
            <delta_ts>2014-01-21 10:08:06 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-127299-20140121150119.patch</filename>
            <type>text/plain</type>
            <size>37790</size>
            <attacher name="Lauro Moura Maranhao Neto">lauro.neto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhhZDQwYjVmZDc2NDgz
ODFlZGI1YjZlOTJkNDU2NGI3ZDM1OWU4MS4uMzJjNGU0OWE1MjJkMmM2NGFiOGE5ZTI0YWM3OGVl
NzQ1NTljNDhmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY4IEBACisyMDE0LTAxLTIxICBMYXVy
byBOZXRvICA8bGF1cm8ubmV0b0BvcGVuYm9zc2Eub3JnPgorCisgICAgICAgIFJlbW92ZSBQTEFU
Rk9STShOSVgpIGZyb20gV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTI3Mjk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpF
ZGl0b3I6OmN1dCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmNvcHkpOgorICAgICAgICAo
V2ViQ29yZTo6RWRpdG9yOjpjb3B5SW1hZ2UpOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6
CisgICAgICAgICogaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oOgorICAgICAgICAqIGxvYWRlci9F
bXB0eUNsaWVudHMuaDoKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmRlZmF1bHRPYmplY3RDb250ZW50VHlwZSk6CisgICAg
ICAgICogcGFnZS9DaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKiBwYWdlL0RyYWdDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250cm9sbGVyOjpzdGFydERyYWcpOgorICAg
ICAgICAqIHBsYXRmb3JtL0N1cnNvci5oOgorICAgICAgICAqIHBsYXRmb3JtL0RyYWdEYXRhLmg6
CisgICAgICAgICogcGxhdGZvcm0vRHJhZ0ltYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vRmls
ZVN5c3RlbS5oOgorICAgICAgICAqIHBsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9XaWRnZXQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9GRlRGcmFt
ZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0hSVEZFbGV2YXRpb24uY3BwOgorICAgICAg
ICAqIHBsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZS5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dM
Q29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHTENvbnRleHQ6OmNyZWF0ZUNvbnRleHRG
b3JXaW5kb3cpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6R3JhcGhpY3NDb250ZXh0M0RQcml2
YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xFU1NoaW1zLmg6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Z2V0UHJvY0FkZHJlc3MpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNo
aW1zLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1MYXllci5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGFGcmVlVHlw
ZS5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9w
ZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFeHRlbnNpb25zM0RPcGVuR0w6OmNyZWF0ZVZl
cnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9wZW5HTDo6ZGVs
ZXRlVmVydGV4QXJyYXlPRVMpOgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNET3BlbkdM
Ojppc1ZlcnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9wZW5H
TDo6YmluZFZlcnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9w
ZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9v
cGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMQ29tbW9uLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMRVMuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTENvbW1vbi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6cmVzaGFwZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RlbXBvcmFyeU9wZW5HTFNldHRpbmcuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZS5oOgorICAgICAgICAqIHBs
dWdpbnMvUGx1Z2luUGFja2FnZS5jcHA6CisgICAgICAgICogcGx1Z2lucy9QbHVnaW5WaWV3LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OlBsdWdpblZpZXcpOgorICAgICAgICAq
IHBsdWdpbnMvUGx1Z2luVmlldy5oOgorICAgICAgICAqIHBsdWdpbnMvUGx1Z2luVmlld05vbmUu
Y3BwOgorICAgICAgICAqIHJlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlNpbXBsZUxpbmVMYXlvdXQ6OmNhblVzZUZvcik6CisKIDIwMTQtMDEtMjEgIEFu
dHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIERlbGF5IGluaXRpYWwg
bGF5ZXIgZmx1c2ggZHVyaW5nIGxvYWRpbmcgb24gYWxsIHBsYXRmb3JtcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuY3BwCmluZGV4IDJiNzc4MDUxNjBjODJlNGIyMzk0NWJmMTNjMTFjNDYwODkyOGJj
M2UuLjBlNWRiZWFhNDViZjYxYzE5YzQ4NzE2YmI0YzQxOWMzZDBhZjc0ZDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0VkaXRvci5jcHAKQEAgLTU2Myw3ICs1NjMsNyBAQCBTdHJpbmcgRWRpdG9yOjpwbGFp
blRleHRGcm9tUGFzdGVib2FyZChjb25zdCBQYXN0ZWJvYXJkUGxhaW5UZXh0JiB0ZXh0KQogCiAj
ZW5kaWYKIAotI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShFRkwpICYmICFQTEFURk9S
TShOSVgpCisjaWYgIVBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEVGTCkKIHZvaWQgRWRpdG9y
OjpwYXN0ZVdpdGhQYXN0ZWJvYXJkKFBhc3RlYm9hcmQqIHBhc3RlYm9hcmQsIGJvb2wgYWxsb3dQ
bGFpblRleHQpCiB7CiAgICAgUmVmUHRyPFJhbmdlPiByYW5nZSA9IHNlbGVjdGVkUmFuZ2UoKTsK
QEAgLTEyODMsNyArMTI4Myw3IEBAIHZvaWQgRWRpdG9yOjpjdXQoKQogICAgICAgICBpZiAoZW5j
bG9zaW5nVGV4dEZvcm1Db250cm9sKG1fZnJhbWUuc2VsZWN0aW9uKCkuc3RhcnQoKSkpCiAgICAg
ICAgICAgICBQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKS0+d3JpdGVQbGFpblRl
eHQoc2VsZWN0ZWRUZXh0Rm9yQ2xpcGJvYXJkKCksIGNhblNtYXJ0Q29weU9yRGVsZXRlKCkgPyBQ
YXN0ZWJvYXJkOjpDYW5TbWFydFJlcGxhY2UgOiBQYXN0ZWJvYXJkOjpDYW5ub3RTbWFydFJlcGxh
Y2UpOwogICAgICAgICBlbHNlIHsKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkg
fHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQogICAg
ICAgICAgICAgd3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0ZUZv
ckNvcHlBbmRQYXN0ZSgpKTsKICNlbHNlCiAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBh
bGwgb3RoZXIgcGxhdGZvcm1zIHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCkBAIC0xMzEw
LDEzICsxMzEwLDEzIEBAIHZvaWQgRWRpdG9yOjpjb3B5KCkKICAgICAgICAgICAgIGNhblNtYXJ0
Q29weU9yRGVsZXRlKCkgPyBQYXN0ZWJvYXJkOjpDYW5TbWFydFJlcGxhY2UgOiBQYXN0ZWJvYXJk
OjpDYW5ub3RTbWFydFJlcGxhY2UpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIGlmIChIVE1MSW1h
Z2VFbGVtZW50KiBpbWFnZUVsZW1lbnQgPSBpbWFnZUVsZW1lbnRGcm9tSW1hZ2VEb2N1bWVudChk
b2N1bWVudCgpKSkgewotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFU
Rk9STShOSVgpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpCiAgICAgICAgICAg
ICB3cml0ZUltYWdlVG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFz
dGUoKSwgKmltYWdlRWxlbWVudCwgZG9jdW1lbnQoKS51cmwoKSwgZG9jdW1lbnQoKS50aXRsZSgp
KTsKICNlbHNlCiAgICAgICAgICAgICBQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUo
KS0+d3JpdGVJbWFnZSgqaW1hZ2VFbGVtZW50LCBkb2N1bWVudCgpLnVybCgpLCBkb2N1bWVudCgp
LnRpdGxlKCkpOwogI2VuZGlmCiAgICAgICAgIH0gZWxzZSB7Ci0jaWYgUExBVEZPUk0oTUFDKSB8
fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBM
QVRGT1JNKEVGTCkKICAgICAgICAgICAgIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKCpQYXN0
ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSk7CiAjZWxzZQogICAgICAgICAgICAgLy8g
RklYTUU6IENvbnZlcnQgYWxsIG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBNYWMgYW5kIGRlbGV0
ZSB0aGlzLgpAQCAtMTQyMCw3ICsxNDIwLDcgQEAgdm9pZCBFZGl0b3I6OmNvcHlJbWFnZShjb25z
dCBIaXRUZXN0UmVzdWx0JiByZXN1bHQpCiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAg
IHVybCA9IHJlc3VsdC5hYnNvbHV0ZUltYWdlVVJMKCk7CiAKLSNpZiBQTEFURk9STShNQUMpIHx8
IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExB
VEZPUk0oRUZMKQogICAgIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0
ZUZvckNvcHlBbmRQYXN0ZSgpLCAqZWxlbWVudCwgdXJsLCByZXN1bHQuYWx0RGlzcGxheVN0cmlu
ZygpKTsKICNlbHNlCiAgICAgUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCktPndy
aXRlSW1hZ2UoKmVsZW1lbnQsIHVybCwgcmVzdWx0LmFsdERpc3BsYXlTdHJpbmcoKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9FZGl0b3IuaAppbmRleCAyMGUxNzRiNWU1YmE3NDYyODMxMmMwMjQ4MWY0YjIzMmEz
MTE2YWYxLi41ZTczNTRkMDA1ZDY4OGM4MTBkMTA5NzYzMjhjODE4YmI3YjUwZjhjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvRWRpdG9yLmgKQEAgLTQzNCw3ICs0MzQsNyBAQCBwdWJsaWM6CiAjZW5kaWYgLy8g
IVBMQVRGT1JNKElPUykKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShF
RkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkK
ICAgICB2b2lkIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmKTsKICAgICB2
b2lkIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoUGFzdGVib2FyZCYsIEVsZW1lbnQmIGltYWdlRWxl
bWVudCwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiB0aXRsZSk7CiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaAppbmRleCA1MDgxMzJiNjE3NDRmYTMxMzkwZTRl
NDk1ZTU0MzJiN2NlMTU4MmFlLi4zODNhMTg4ZTdjZjI4MzVhMmE4MDU0MDcyZDcwYzMwNWY5MzIy
ZDMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCkBAIC0zMyw3ICsz
Myw3IEBACiAjaW5jbHVkZSAiSW50U2l6ZS5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAK
LSNpZiBVU0UoQ0cpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBVU0UoQ0cpCiAjZGVmaW5lIERlZmF1
bHRJbnRlcnBvbGF0aW9uUXVhbGl0eSBJbnRlcnBvbGF0aW9uTG93CiAjZWxzZQogI2RlZmluZSBE
ZWZhdWx0SW50ZXJwb2xhdGlvblF1YWxpdHkgSW50ZXJwb2xhdGlvbkRlZmF1bHQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9FbXB0eUNsaWVudHMuaAppbmRleCA5YzQ4ZjljMzcwOWRhMTk0MjVjMThkZTMwNmZi
N2M3MjFjNzc5NDAxLi44NjVkYTZjMjkyYmRjNTEyMjRiNDI1OGI4YmU0N2I2NzZlOWQwMjc1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC0xOTUsMTAgKzE5NSw2IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgQVhGaW5pc2hGcmFtZUxvYWQoKSBvdmVycmlkZSB7IH0K
ICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTklYKQotICAgIHZpcnR1YWwgRmxvYXRSZWN0IHNjcmVl
blJlY3QoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBGbG9hdFJlY3QoKTsgfQotI2VuZGlmCi0K
ICNpZiBQTEFURk9STShJT1MpCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICB2aXJ0dWFs
IHZvaWQgZGlkUHJldmVudERlZmF1bHRGb3JFdmVudCgpIG92ZXJyaWRlIHsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggMWM0YTI3ZjM2ZmFiZTE1ZDhkMzJlYjgyMTMw
ZGI0MWI2ZTUzNGE5ZC4uYmNlMDdhYmNmMWIxOWQxNTg1NmVlMGFjN2E2ZWJkZDNjNDAyNjI3NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC05NTQsNyArOTU0LDcgQEAg
T2JqZWN0Q29udGVudFR5cGUgRnJhbWVMb2FkZXI6OmRlZmF1bHRPYmplY3RDb250ZW50VHlwZShj
b25zdCBVUkwmIHVybCwgY29uc3QgU3QKICAgICBpZiAobWltZVR5cGUuaXNFbXB0eSgpKQogICAg
ICAgICBtaW1lVHlwZSA9IG1pbWVUeXBlRnJvbVVSTCh1cmwpOwogCi0jaWYgIVBMQVRGT1JNKE1B
QykgJiYgIVBMQVRGT1JNKEVGTCkgJiYgIVBMQVRGT1JNKE5JWCkgLy8gTWFjIGhhcyBubyBQbHVn
aW5EYXRhYmFzZSwgbm9yIGRvZXMgTml4IG9yIEVGTAorI2lmICFQTEFURk9STShNQUMpICYmICFQ
TEFURk9STShFRkwpIC8vIE1hYyBoYXMgbm8gUGx1Z2luRGF0YWJhc2UsIG5vciBkb2VzIEVGTAog
ICAgIGlmIChtaW1lVHlwZS5pc0VtcHR5KCkpIHsKICAgICAgICAgU3RyaW5nIGRlY29kZWRQYXRo
ID0gZGVjb2RlVVJMRXNjYXBlU2VxdWVuY2VzKHVybC5wYXRoKCkpOwogICAgICAgICBtaW1lVHlw
ZSA9IFBsdWdpbkRhdGFiYXNlOjppbnN0YWxsZWRQbHVnaW5zKCktPk1JTUVUeXBlRm9yRXh0ZW5z
aW9uKGRlY29kZWRQYXRoLnN1YnN0cmluZyhkZWNvZGVkUGF0aC5yZXZlcnNlRmluZCgnLicpICsg
MSkpOwpAQCAtOTY0LDcgKzk2NCw3IEBAIE9iamVjdENvbnRlbnRUeXBlIEZyYW1lTG9hZGVyOjpk
ZWZhdWx0T2JqZWN0Q29udGVudFR5cGUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0CiAgICAgaWYg
KG1pbWVUeXBlLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIE9iamVjdENvbnRlbnRGcmFtZTsg
Ly8gR28gYWhlYWQgYW5kIGhvcGUgdGhhdCB3ZSBjYW4gZGlzcGxheSB0aGUgY29udGVudC4KIAot
I2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShFRkwpICYmICFQTEFURk9STShOSVgpIC8v
IE1hYyBoYXMgbm8gUGx1Z2luRGF0YWJhc2UsIG5vciBkb2VzIE5peCBvciBFRkwKKyNpZiAhUExB
VEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oRUZMKSAvLyBNYWMgaGFzIG5vIFBsdWdpbkRhdGFiYXNl
LCBub3IgZG9lcyBFRkwKICAgICBib29sIHBsdWdJblN1cHBvcnRzTUlNRVR5cGUgPSBQbHVnaW5E
YXRhYmFzZTo6aW5zdGFsbGVkUGx1Z2lucygpLT5pc01JTUVUeXBlUmVnaXN0ZXJlZChtaW1lVHlw
ZSk7CiAjZWxzZQogICAgIGJvb2wgcGx1Z0luU3VwcG9ydHNNSU1FVHlwZSA9IGZhbHNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKaW5kZXggODQ5OGFjOGZjMWQwZDUyMDJmZTRlZjNhZDdi
Nzk5NTg0NTIzN2YzZi4uYTM1M2U5MDliNjM5ZGFhOTI4NmY1ZmFjYWNkYWIyNWZhYTIwNjg4MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCkBAIC0zNjYsMTAgKzM2Niw2IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgQVhGaW5pc2hGcmFtZUxvYWQoKSA9IDA7CiAjZW5kaWYKIAot
I2lmIFBMQVRGT1JNKE5JWCkKLSAgICB2aXJ0dWFsIEZsb2F0UmVjdCBzY3JlZW5SZWN0KCkgY29u
c3QgPSAwOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQogICAgIHZpcnR1YWwg
dm9pZCBuZWVkVG91Y2hFdmVudHMoYm9vbCkgPSAwOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RHJhZ0NvbnRyb2xsZXIuY3BwCmluZGV4IDQ4NDVhMzQ1YjVmMWY3NjNlZmViOTk1MThiZDhhNWUz
ZTc0MmU1YjcuLmQxYTQ4OTkwZjFhMTAxYmMyNDY5MTkyNmMzM2Q2YmM4MjZkY2Q3ZmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRHJhZ0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRHJhZ0NvbnRyb2xsZXIuY3BwCkBAIC03NjgsNyArNzY4LDcgQEAgYm9v
bCBEcmFnQ29udHJvbGxlcjo6c3RhcnREcmFnKEZyYW1lJiBzcmMsIGNvbnN0IERyYWdTdGF0ZSYg
c3RhdGUsIERyYWdPcGVyYXRpb24KICAgICAgICAgICAgIGlmIChlbmNsb3NpbmdUZXh0Rm9ybUNv
bnRyb2woc3JjLnNlbGVjdGlvbigpLnN0YXJ0KCkpKQogICAgICAgICAgICAgICAgIGNsaXBib2Fy
ZC5wYXN0ZWJvYXJkKCkud3JpdGVQbGFpblRleHQoc3JjLmVkaXRvcigpLnNlbGVjdGVkVGV4dEZv
ckNsaXBib2FyZCgpLCBQYXN0ZWJvYXJkOjpDYW5ub3RTbWFydFJlcGxhY2UpOwogICAgICAgICAg
ICAgZWxzZSB7Ci0jaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JN
KE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkKICAgICAgICAgICAgICAg
ICBzcmMuZWRpdG9yKCkud3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoY2xpcGJvYXJkLnBhc3Rl
Ym9hcmQoKSk7CiAjZWxzZQogICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBDb252ZXJ0IGFsbCBv
dGhlciBwbGF0Zm9ybXMgdG8gbWF0Y2ggTWFjIGFuZCBkZWxldGUgdGhpcy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0N1cnNvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vQ3Vyc29yLmgKaW5kZXggNDA2N2U5MmJjODMyNzNkNjk1ZTU0NmMzMTliMDQ3OWIwMWQzOGI2
OC4uMjI0MDdhYTI0ZWFjOTM4ZmVjYjljMGZjYTYyODcyYTcyMTEwZDBkOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3Vyc29yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vQ3Vyc29yLmgKQEAgLTcyLDggKzcyLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
IHR5cGVkZWYgR1JlZlB0cjxHZGtDdXJzb3I+IFBsYXRmb3JtQ3Vyc29yOwogI2VsaWYgUExBVEZP
Uk0oRUZMKQogICAgIHR5cGVkZWYgY29uc3QgY2hhciogUGxhdGZvcm1DdXJzb3I7Ci0jZWxpZiBQ
TEFURk9STShOSVgpCi0gICAgdHlwZWRlZiB1bnNpZ25lZCBQbGF0Zm9ybUN1cnNvcjsKICNlbHNl
CiAgICAgdHlwZWRlZiB2b2lkKiBQbGF0Zm9ybUN1cnNvcjsKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRHJhZ0RhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL0RyYWdEYXRhLmgKaW5kZXggZDEwODE0ZGRlZjM2YmQyN2Q1ZTVlMTgyN2QwYjYyODhlZjM5
MmZmZC4uOGZjMDE2MzI5NDdlYzFlMmViZDZmMzJmZWQyNmY3ZjVjYTAzZDI3YyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRHJhZ0RhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9EcmFnRGF0YS5oCkBAIC01NCw3ICs1NCw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIGNsYXNzIERhdGFPYmplY3RHdGs7CiB9CiB0eXBlZGVmIFdlYkNvcmU6OkRhdGFPYmplY3RH
dGsqIERyYWdEYXRhUmVmOwotI2VsaWYgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpIHx8
IFBMQVRGT1JNKElPUykKKyNlbGlmIFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oSU9TKQogdHlw
ZWRlZiB2b2lkKiBEcmFnRGF0YVJlZjsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9EcmFnSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdJ
bWFnZS5oCmluZGV4IDIyYTFhMDUxNTk1MmIyOTQ5NTZiMzI5Njg5NjU5NDc2ZTU1OWE2ZTUuLjRl
NGY3MWE0MmQ1MWRjOWRlNDc2YWZiZGM4NjY3MDRjY2Q4NjhiOTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL0RyYWdJbWFnZS5oCkBAIC00MSw3ICs0MSw3IEBAIHR5cGVkZWYgc3RydWN0IENHSW1hZ2Ug
KkNHSW1hZ2VSZWY7CiBPQkpDX0NMQVNTIE5TSW1hZ2U7CiAjZWxpZiBQTEFURk9STShXSU4pCiB0
eXBlZGVmIHN0cnVjdCBIQklUTUFQX18qIEhCSVRNQVA7Ci0jZWxpZiBQTEFURk9STShHVEspIHx8
IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEdUSykKIHR5cGVkZWYgc3RydWN0IF9jYWly
b19zdXJmYWNlIGNhaXJvX3N1cmZhY2VfdDsKICNlbmRpZgogCkBAIC02Myw3ICs2Myw3IEBAIHR5
cGVkZWYgUmV0YWluUHRyPENHSW1hZ2VSZWY+IERyYWdJbWFnZVJlZjsKIHR5cGVkZWYgUmV0YWlu
UHRyPE5TSW1hZ2U+IERyYWdJbWFnZVJlZjsKICNlbGlmIFBMQVRGT1JNKFdJTikKIHR5cGVkZWYg
SEJJVE1BUCBEcmFnSW1hZ2VSZWY7Ci0jZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKE5J
WCkKKyNlbGlmIFBMQVRGT1JNKEdUSykKIHR5cGVkZWYgY2Fpcm9fc3VyZmFjZV90KiBEcmFnSW1h
Z2VSZWY7CiAjZWxpZiBQTEFURk9STShFRkwpCiB0eXBlZGVmIHZvaWQqIERyYWdJbWFnZVJlZjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ZpbGVTeXN0ZW0uaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0ZpbGVTeXN0ZW0uaAppbmRleCAzNGZlMGE0MzBmN2U2YTMzM2My
M2ZlMzAzNWNkOTllMTExZjk2YWFmLi44MmRkNTA4MDVlYmM4OGFkYmI4ZjY2OTQzNTllNmM1YjMx
ZWI4M2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9GaWxlU3lzdGVtLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRmlsZVN5c3RlbS5oCkBAIC0xOTEsNyArMTkx
LDcgQEAgU3RyaW5nIGVuY29kZUZvckZpbGVOYW1lKGNvbnN0IFN0cmluZyYpOwogUmV0YWluUHRy
PENGVVJMUmVmPiBwYXRoQXNVUkwoY29uc3QgU3RyaW5nJik7CiAjZW5kaWYKIAotI2lmIFBMQVRG
T1JNKEdUSykgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKEdUSykKIFN0cmluZyBmaWxl
bmFtZVRvU3RyaW5nKGNvbnN0IGNoYXIqKTsKIFN0cmluZyBmaWxlbmFtZUZvckRpc3BsYXkoY29u
c3QgU3RyaW5nJik7CiBDU3RyaW5nIGFwcGxpY2F0aW9uRGlyZWN0b3J5UGF0aCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCmluZGV4IGUzZjczY2IwZDJjMDE2
OGJiYWZhNjFjMGU3OWYxYTRlMzc4YmY2N2EuLjBiMmNjZDEzMGM2NGQ2ZmJmYzJmNjEwOGM0Y2Vh
M2E0YmYzNWU0NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXpl
ZFN0cmluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdz
LmgKQEAgLTU0LDcgKzU0LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIFN0cmluZyBjb250
ZXh0TWVudUl0ZW1UYWdPcGVuSW1hZ2VJbk5ld1dpbmRvdygpOwogICAgIFN0cmluZyBjb250ZXh0
TWVudUl0ZW1UYWdEb3dubG9hZEltYWdlVG9EaXNrKCk7CiAgICAgU3RyaW5nIGNvbnRleHRNZW51
SXRlbVRhZ0NvcHlJbWFnZVRvQ2xpcGJvYXJkKCk7Ci0jaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFU
Rk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JN
KEVGTCkKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnQ29weUltYWdlVXJsVG9DbGlwYm9h
cmQoKTsKICNlbmRpZgogICAgIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdPcGVuRnJhbWVJbk5l
d1dpbmRvdygpOwpAQCAtODAsNyArODAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgU3Ry
aW5nIGNvbnRleHRNZW51SXRlbVRhZ1VuaWNvZGVJbnNlcnRaV0pNYXJrKCk7CiAgICAgU3RyaW5n
IGNvbnRleHRNZW51SXRlbVRhZ1VuaWNvZGVJbnNlcnRaV05KTWFyaygpOwogI2VuZGlmCi0jaWYg
UExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFU
Rk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFn
U2VsZWN0QWxsKCk7CiAjZW5kaWYKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnTm9HdWVz
c2VzRm91bmQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKaW5kZXggMzdlOTkxNmY2ZGJiYWY4
N2NhZTk2OWVmZGRhZDNmMjI3OTIxYmZlYi4uMmYzZjI3Y2YzNzFiYmZlZTlhYWJkMGNjMWU2ODM1
OTYxYmJjZDY2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKQEAgLTU5LDEwICs1OSw2IEBA
IHR5cGVkZWYgc3RydWN0IF9HdGtDb250YWluZXIgR3RrQ29udGFpbmVyOwogdHlwZWRlZiBHdGtX
aWRnZXQqIFBsYXRmb3JtV2lkZ2V0OwogI2VuZGlmCiAKLSNpZiBQTEFURk9STShOSVgpCi10eXBl
ZGVmIHZvaWQqIFBsYXRmb3JtV2lkZ2V0OwotI2VuZGlmCi0KICNpZiBQTEFURk9STShFRkwpCiAj
aWYgVVNFKEVPKQogdHlwZWRlZiBzdHJ1Y3QgX0VvX09wYXF1ZSBFdmFzX09iamVjdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5oCmluZGV4IDAxYWUxYTRhYjA1ZjE2MTFi
YzBmZDY3ZDhiNjM2MmM3YjAxZWFiYmMuLmNkMDQ4MzA1NmYwZDYxODhhNzI3ZDgzMDZkODk3MTY0
NGIzMDkzMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZy
YW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJhbWUuaApAQCAt
NjcsMTAgKzY3LDYgQEAgc3RydWN0IFJERlRDb250ZXh0OwogI2luY2x1ZGUgPGlwcHMuaD4KICNl
bmRpZiAvLyBVU0UoV0VCQVVESU9fSVBQKQogCi0jaWYgUExBVEZPUk0oTklYKQotI2luY2x1ZGUg
PHB1YmxpYy9GRlRGcmFtZS5oPgotI2VuZGlmCi0KICNpbmNsdWRlIDxtZW1vcnk+CiAjaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CkBAIC0xODIsMTAg
KzE3OCw2IEBAIHByaXZhdGU6CiAgICAgQXVkaW9GbG9hdEFycmF5IG1faW1hZ0RhdGE7CiAjZW5k
aWYgLy8gVVNFKFdFQkFVRElPX0lQUCkKIAotI2lmIFBMQVRGT1JNKE5JWCkKLSAgICBPd25QdHI8
Tml4OjpGRlRGcmFtZT4gbV9mZnRGcmFtZTsKLSNlbmRpZiAvLyBQTEFURk9STShOSVgpCi0KICNp
ZiBVU0UoV0VCQVVESU9fT1BFTk1BWF9ETF9GRlQpCiAgICAgc3RhdGljIE9NWEZGVFNwZWNfUl9G
MzIqIGNvbnRleHRGb3JTaXplKHVuc2lnbmVkIGxvZzJGRlRTaXplKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSFJURkVsZXZhdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0aW9uLmNwcAppbmRleCA2MDhjZWQ0ZDhi
YTNhNDRmMDJlZjM2ZjIwN2VkZGU4OTIyZmNlYTkyLi45ODJkOGQ0OGZhNmY4NTI5ZTkwOGJlMzBl
YmZkMGYxY2JmYmY4YzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRp
by9IUlRGRWxldmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9I
UlRGRWxldmF0aW9uLmNwcApAQCAtNTgsNyArNTgsNyBAQCBjb25zdCBzaXplX3QgUmVzcG9uc2VG
cmFtZVNpemUgPSAyNTY7CiAvLyBUaGUgaW1wdWxzZSByZXNwb25zZXMgbWF5IGJlIHJlc2FtcGxl
ZCB0byBhIGRpZmZlcmVudCBzYW1wbGUtcmF0ZSAoZGVwZW5kaW5nIG9uIHRoZSBhdWRpbyBoYXJk
d2FyZSkgd2hlbiB0aGV5IGFyZSBsb2FkZWQuCiBjb25zdCBmbG9hdCBSZXNwb25zZVNhbXBsZVJh
dGUgPSA0NDEwMDsKIAotI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKFdFQkFVRElPX0dTVFJFQU1F
UikgfHwgUExBVEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKFdFQkFVRElPX0dT
VFJFQU1FUikKICNkZWZpbmUgVVNFX0NPTkNBVEVOQVRFRF9JTVBVTFNFX1JFU1BPTlNFUwogI2Vu
ZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NhaXJvL1dpZGdldEJh
Y2tpbmdTdG9yZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2Fpcm8vV2lkZ2V0QmFja2lu
Z1N0b3JlLmgKaW5kZXggN2IxNmJiNTAxNWI5NDQ2M2QxZTNlMDk3YzE2YTk3MzFiZTM0ZmNjYy4u
ZjRiYjI1NTNkYTY3ZDYzMjFjM2IwMzk4Mjk1ODI0MmIwZjQ4YTdlNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2Fpcm8vV2lkZ2V0QmFja2luZ1N0b3JlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2Fpcm8vV2lkZ2V0QmFja2luZ1N0b3JlLmgKQEAgLTM5LDgg
KzM5LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogdHlwZWRlZiBHdGtXaWRnZXQqIFBsYXRmb3Jt
V2lkZ2V0OwogI2VsaWYgUExBVEZPUk0oRUZMKQogdHlwZWRlZiBFdmFzX09iamVjdCogUGxhdGZv
cm1XaWRnZXQ7Ci0jZWxpZiBQTEFURk9STShOSVgpCi10eXBlZGVmIHZvaWQqIFBsYXRmb3JtV2lk
Z2V0OwogI2VuZGlmCiAKIGNsYXNzIFdpZGdldEJhY2tpbmdTdG9yZSB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaAppbmRleCBi
YmIzYmMzNDI0NDMxNmE5YzVmZDU1Y2MyNTlmYjA0Y2ZiMzA2OWQyLi40NDlhYjQ1M2JiODcwZWY5
MjhkZTUyZTUzMTMwYjNjZmQ3NzdkNTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmgKQEAgLTI5LDcgKzI5LDcgQEAKICNp
bmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CiAKLSNpZiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0o
V0lOKSAmJiAhUExBVEZPUk0oTklYKQorI2lmICFQTEFURk9STShHVEspICYmICFQTEFURk9STShF
RkwpICYmICFQTEFURk9STShXSU4pCiAjaW5jbHVkZSAiQU5HTEUvU2hhZGVyTGFuZy5oIgogI2Vs
aWYgUExBVEZPUk0oV0lOKQogI2luY2x1ZGUgIkdMU0xBTkcvU2hhZGVyTGFuZy5oIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBsYXRmb3JtRGF0YS5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oCmlu
ZGV4IDNiZGIzY2NhOTg0Zjk5MmZiNGUxODI0YTk4MTFhNWE3NzNhZWI5MTAuLmJmYTU3MDk1ZTll
ZDRjZTQyNGU5MzAyMGQzZmY1ZGNiYTE4YTQwYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQbGF0Zm9ybURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGxhdGZvcm1EYXRhLmgKQEAgLTI1LDcgKzI1LDcgQEAK
IC8vIEZJWE1FOiBUaGlzIGlzIHRlbXBvcmFyeSB1bnRpbCBhbGwgcG9ydHMgc3dpdGNoIHRvIHVz
aW5nIHRoaXMgZmlsZS4KICNpZiBVU0UoV0lOR0RJKQogI2luY2x1ZGUgIndpbmNlL0ZvbnRQbGF0
Zm9ybURhdGEuaCIKLSNlbGlmIFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFU
Rk9STShOSVgpCisjZWxpZiBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKEdUSykKICNpbmNsdWRl
ICJmcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhLmgiCiAjZWxzZQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmNwcAppbmRleCAxNjk5M2ExNDc5Y2MyMTc1
MGU5OTZiYjY2MDhkMjRjZDkyOWViNzUxLi44Mjc1MmFlOWRjZGFjZDVmZWUzNGFjMmI4OTJhYWQ4
OGI0YWUwYzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
TENvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29u
dGV4dC5jcHAKQEAgLTE5LDcgKzE5LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJHTENvbnRleHQuaCIKIAotI2lmIFVTRShPUEVOR0wpIHx8IChQTEFURk9STShOSVgpICYmIFVT
RShPUEVOR0xfRVNfMikpCisjaWYgVVNFKE9QRU5HTCkKIAogI2lmIFVTRShFR0wpCiAjaW5jbHVk
ZSAiR0xDb250ZXh0RUdMLmgiCkBAIC0xNTQsNyArMTU0LDYgQEAgUGFzc093blB0cjxHTENvbnRl
eHQ+IEdMQ29udGV4dDo6Y3JlYXRlQ29udGV4dEZvcldpbmRvdyhHTE5hdGl2ZVdpbmRvd1R5cGUg
d2luZG8KICAgICB9CiAjZW5kaWYKIAotI2lmICFQTEFURk9STShOSVgpCiAjaWYgVVNFKEdMWCkK
ICAgICBpZiAoT3duUHRyPEdMQ29udGV4dD4gZ2x4Q29udGV4dCA9IEdMQ29udGV4dEdMWDo6Y3Jl
YXRlQ29udGV4dCh3aW5kb3dIYW5kbGUsIHNoYXJpbmdDb250ZXh0KSkKICAgICAgICAgcmV0dXJu
IGdseENvbnRleHQucmVsZWFzZSgpOwpAQCAtMTYzLDcgKzE2Miw2IEBAIFBhc3NPd25QdHI8R0xD
b250ZXh0PiBHTENvbnRleHQ6OmNyZWF0ZUNvbnRleHRGb3JXaW5kb3coR0xOYXRpdmVXaW5kb3dU
eXBlIHdpbmRvCiAgICAgaWYgKE93blB0cjxHTENvbnRleHQ+IGVnbENvbnRleHQgPSBHTENvbnRl
eHRFR0w6OmNyZWF0ZUNvbnRleHQod2luZG93SGFuZGxlLCBzaGFyaW5nQ29udGV4dCkpCiAgICAg
ICAgIHJldHVybiBlZ2xDb250ZXh0LnJlbGVhc2UoKTsKICNlbmRpZgotI2VuZGlmCiAgICAgcmV0
dXJuIG51bGxwdHI7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dMQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xD
b250ZXh0LmgKaW5kZXggNGU5ZDM5ZTMxNWRhOWE1ODJmM2JhMDBhZjNlYmE0ZTZmNzFkMDc4Ni4u
MDNiNTdiNWU4MjQ0NDg4YTVmOWU2MjJmNzA2NDU5OGQ2MjhmNWYyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmgKQEAgLTI1LDcgKzI1LDcgQEAKICNp
bmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgog
Ci0jaWYgVVNFKEVHTCkgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JNKE5JWCkKKyNpZiBV
U0UoRUdMKSAmJiAhUExBVEZPUk0oR1RLKQogI2luY2x1ZGUgImVnbHBsYXRmb3JtLmgiCiB0eXBl
ZGVmIEVHTE5hdGl2ZVdpbmRvd1R5cGUgR0xOYXRpdmVXaW5kb3dUeXBlOwogI2Vsc2UKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNE
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5o
CmluZGV4IDNlZjkwZDM4ZWE4Y2Q3YWIwNTJlNGQwZGYwNjE3OGM0N2QxYWY4MzMuLmM0ZDcyYTcx
YmNiNWI1NWE3MTExZDZiN2MxN2IzZjMyNjhjZTIyYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaApAQCAtNjAsNyArNjAs
NyBAQAogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIE9CSkNfQ0xBU1MgQ0FMYXllcjsKIE9C
SkNfQ0xBU1MgV2ViR0xMYXllcjsKLSNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZM
KSB8fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkK
IHR5cGVkZWYgdW5zaWduZWQgaW50IEdMdWludDsKICNlbmRpZgogCkBAIC05ODcsNyArOTg3LDcg
QEAgcHJpdmF0ZToKIAogICAgIGJvb2wgcmVzaGFwZUZCT3MoY29uc3QgSW50U2l6ZSYpOwogICAg
IHZvaWQgcmVzb2x2ZU11bHRpc2FtcGxpbmdJZk5lY2Vzc2FyeShjb25zdCBJbnRSZWN0JiA9IElu
dFJlY3QoKSk7Ci0jaWYgKFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKSkgJiYgVVNFKEdS
QVBISUNTX1NVUkZBQ0UpCisjaWYgUExBVEZPUk0oRUZMKSAmJiBVU0UoR1JBUEhJQ1NfU1VSRkFD
RSkKICAgICB2b2lkIGNyZWF0ZUdyYXBoaWNzU3VyZmFjZXMoY29uc3QgSW50U2l6ZSYpOwogI2Vu
ZGlmCiAKQEAgLTEwOTIsNyArMTA5Miw3IEBAIHByaXZhdGU6CiAKICAgICBPd25QdHI8U2hhZGVy
TmFtZUhhc2g+IG5hbWVIYXNoTWFwRm9yU2hhZGVyczsKIAotI2lmICgoUExBVEZPUk0oR1RLKSB8
fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKSkgJiYgVVNF
KE9QRU5HTF9FU18yKSkKKyNpZiAoKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQ
TEFURk9STShXSU4pKSAmJiBVU0UoT1BFTkdMX0VTXzIpKQogICAgIGZyaWVuZCBjbGFzcyBFeHRl
bnNpb25zM0RPcGVuR0xFUzsKICAgICBPd25QdHI8RXh0ZW5zaW9uczNET3BlbkdMRVM+IG1fZXh0
ZW5zaW9uczsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcAppbmRleCBmNzMyNGQwZDY5
NmEwMjgwY2QwMjMwZTg1OGZjYWZlNTVhYTRkMTUwLi4wNDlmZGQyZDEyZjFkZTI1YTEyNDY4Mjk5
YzlkOTI0ZmVlNGE0NTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5jcHAKQEAgLTI2LDEwICsy
Niw2IEBACiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlIDx3dGYvU3RkTGli
RXh0cmFzLmg+CiAKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShFR0wpCi0jaW5jbHVkZSAiR0xD
b250ZXh0RnJvbUN1cnJlbnRFR0wuaCIKLSNlbmRpZgotCiAjaWYgVVNFKENBSVJPKQogI2luY2x1
ZGUgIlBsYXRmb3JtQ29udGV4dENhaXJvLmgiCiAjZW5kaWYKQEAgLTYzLDkgKzU5LDYgQEAgR3Jh
cGhpY3NDb250ZXh0M0RQcml2YXRlOjpHcmFwaGljc0NvbnRleHQzRFByaXZhdGUoR3JhcGhpY3ND
b250ZXh0M0QqIGNvbnRleHQsIEcKICAgICAgICAgbV9nbENvbnRleHQgPSBHTENvbnRleHQ6OmNy
ZWF0ZU9mZnNjcmVlbkNvbnRleHQoR0xDb250ZXh0OjpzaGFyaW5nQ29udGV4dCgpKTsKICAgICAg
ICAgYnJlYWs7CiAgICAgY2FzZSBHcmFwaGljc0NvbnRleHQzRDo6UmVuZGVyVG9DdXJyZW50R0xD
b250ZXh0OgotI2lmIFBMQVRGT1JNKE5JWCkgJiYgVVNFKEVHTCkKLSAgICAgICAgbV9nbENvbnRl
eHQgPSBHTENvbnRleHRGcm9tQ3VycmVudEVHTDo6Y3JlYXRlRnJvbUN1cnJlbnRHTENvbnRleHQo
KTsKLSNlbmRpZgogICAgICAgICBicmVhazsKICAgICBjYXNlIEdyYXBoaWNzQ29udGV4dDNEOjpS
ZW5kZXJEaXJlY3RseVRvSG9zdFdpbmRvdzoKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xFU1No
aW1zLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xFU1NoaW1zLmgK
aW5kZXggYzRjNjA0NWM4Njk3YzVhYWRiZTBmZmQ4ZmViMjdiODA1ZDY2NDhmMi4uZjI5OTE1NmM4
MGQ3ZDAyMDI3MjIxOGE2Y2NhNzBjZjhmYTg1OGIwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMRVNTaGltcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTEVTU2hpbXMuaApAQCAtMjYsNyArMjYsNyBAQAogI2lm
bmRlZiBPcGVuR0xFU1NoaW1zX2gKICNkZWZpbmUgT3BlbkdMRVNTaGltc19oCiAKLSNpZiBQTEFU
Rk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShO
SVgpCisjaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikK
ICNkZWZpbmUgZ2xCaW5kRnJhbWVidWZmZXJFWFQgZ2xCaW5kRnJhbWVidWZmZXIKICNkZWZpbmUg
Z2xGcmFtZWJ1ZmZlclRleHR1cmUyREVYVCBnbEZyYW1lYnVmZmVyVGV4dHVyZTJECiAjZGVmaW5l
IGdsQmluZFJlbmRlcmJ1ZmZlckVYVCBnbEJpbmRSZW5kZXJidWZmZXIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmNwcAppbmRleCA1MDczNGY5MjVl
OTgzYTc0NTg4MTk0YTlhZDY4MWZjNDA3ODI1MTdlLi45MTZhOTA4YzI0MDY2ODBmNzJjMWY3NDBi
MjM5MTM5NDU4NTg0MjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9PcGVuR0xTaGltcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvT3BlbkdMU2hpbXMuY3BwCkBAIC0yNiwxMCArMjYsNiBAQAogI2luY2x1ZGUgPGRsZmNuLmg+
CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE5JWCkgJiYgVVNFKEVHTCkKLSNpbmNsdWRlIDxFR0wv
ZWdsLmg+Ci0jZW5kaWYKLQogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRl
IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNDYsMTEgKzQyLDYgQEAgc3RhdGljIHZvaWQq
IGdldFByb2NBZGRyZXNzKGNvbnN0IGNoYXIqIHByb2NOYW1lKQogewogICAgIHJldHVybiBHZXRQ
cm9jQWRkcmVzcyhHZXRNb2R1bGVIYW5kbGVBKCJsaWJHTEVTdjIiKSwgcHJvY05hbWUpOwogfQot
I2VsaWYgUExBVEZPUk0oTklYKSAmJiBVU0UoRUdMKQotc3RhdGljIHZvaWQqIGdldFByb2NBZGRy
ZXNzKGNvbnN0IGNoYXIqIHByb2NOYW1lKQotewotICAgIHJldHVybiByZWludGVycHJldF9jYXN0
PHZvaWQqPihlZ2xHZXRQcm9jQWRkcmVzcyhwcm9jTmFtZSkpOwotfQogI2Vsc2UKIHR5cGVkZWYg
dm9pZCogKCpnbEdldFByb2NBZGRyZXNzVHlwZSkgKGNvbnN0IGNoYXIqIHByb2NOYW1lKTsKIHN0
YXRpYyB2b2lkKiBnZXRQcm9jQWRkcmVzcyhjb25zdCBjaGFyKiBwcm9jTmFtZSkKQEAgLTEwOCwx
OSArOTksOSBAQCBzdGF0aWMgdm9pZCogbG9va3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKGNvbnN0
IGNoYXIqIGZ1bmN0aW9uTmFtZSwgYm9vbCogc3VjY2VzcwogICAgIHJldHVybiB0YXJnZXQ7CiB9
CiAKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShPUEVOR0xfRVNfMikKLQotLy8gV2l0aCBBbmds
ZSBvbmx5IEVHTC9HTEVTMiBleHRlbnNpb25zIGFyZSBhdmFpbGFibGUgdGhyb3VnaCBlZ2xHZXRQ
cm9jQWRkcmVzcywgbm90IHRoZSByZWd1bGFyIHN0YW5kYXJkaXplZCBmdW5jdGlvbnMuCi0jZGVm
aW5lIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShGdW5jdGlvbk5hbWUsIHN1Y2Nlc3MpIFwK
LSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nh
c3Q8RnVuY3Rpb25OYW1lIyNUeXBlPig6OkZ1bmN0aW9uTmFtZSkKLQotI2Vsc2UKLQogI2RlZmlu
ZSBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlkoRnVuY3Rpb25OYW1lLCBzdWNjZXNzKSBcCiAg
ICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSByZWludGVycHJldF9jYXN0
PEZ1bmN0aW9uTmFtZSMjVHlwZT4obG9va3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKCNGdW5jdGlv
bk5hbWUsICZzdWNjZXNzKSkKIAotI2VuZGlmCi0KICNkZWZpbmUgQVNTSUdOX0ZVTkNUSU9OX1RB
QkxFX0VOVFJZX0VYVChGdW5jdGlvbk5hbWUpIFwKICAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCkt
PkZ1bmN0aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPihsb29r
dXBPcGVuR0xGdW5jdGlvbkFkZHJlc3MoI0Z1bmN0aW9uTmFtZSkpCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5oCmluZGV4IGZhNjk2ZjMxMmQxY2Nm
ZmNlNWUzYzc4ZTZlMDA4Yzk2MjdhOGVlZjcuLmMwZTZlNjAxMmZkOWQ3ZjRmOTdmYTA4Y2NlZmI2
ZWU5NTE0YjA1ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L09wZW5HTFNoaW1zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3Bl
bkdMU2hpbXMuaApAQCAtMjAsMTIgKzIwLDggQEAKICNpZm5kZWYgT3BlbkdMU2hpbXNfaAogI2Rl
ZmluZSBPcGVuR0xTaGltc19oCiAKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShPUEVOR0xfRVNf
MikKLSNpbmNsdWRlIDxHTEVTMi9nbDIuaD4KLSNlbHNlCiAjaW5jbHVkZSA8R0wvZ2wuaD4KICNp
bmNsdWRlIDxHTC9nbGV4dC5oPgotI2VuZGlmCiAKICNpZiBkZWZpbmVkKEdMX0VTX1ZFUlNJT05f
Ml8wKQogLy8gU29tZSBvcGVuR0wgRVMgc3lzdGVtcyBtaXNzIHRoaXMgdHlwZWRlZi4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1BsYXRmb3JtTGF5ZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1BsYXRmb3JtTGF5ZXIuaAppbmRleCA0
MTkwOGVmNDAzNjc5YjU5NGEyOTAwZDRmMjFiNDQ0NWU0MDU0ZDJmLi5hMThmOWI5YzNmNDk3NDdm
MWRkN2UyYzZhOTY4YTU1Njc4ODJhNGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybUxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvUGxhdGZvcm1MYXllci5oCkBAIC00NSw3ICs0NSw3IEBAIGNsYXNzIFRleHR1
cmVNYXBwZXJQbGF0Zm9ybUxheWVyOwogdHlwZWRlZiBUZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXll
ciBQbGF0Zm9ybUxheWVyOwogfTsKICNlbmRpZgotI2VsaWYgUExBVEZPUk0oRUZMKSB8fCBQTEFU
Rk9STShOSVgpCisjZWxpZiBQTEFURk9STShFRkwpCiAjaWYgVVNFKFRFWFRVUkVfTUFQUEVSKQog
bmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250
UGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcAppbmRleCA1NWNkOWNlZDBm
ZDlkYjFmYTkzMzg5ZjJiM2E5Y2QzMDgzYWU2NmNlLi4wYjZjZGQxYTI0MDk5Yzc1YWJlMGVlN2M1
NmMxNzY0MjRjODNiMGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGFGcmVlVHlw
ZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRlIEZUX1RSVUVUWVBFX1RBQkxFU19ICiAj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKLSNpZiAhUExBVEZPUk0oRUZMKSAmJiAh
UExBVEZPUk0oTklYKQorI2lmICFQTEFURk9STShFRkwpCiAjaW5jbHVkZSA8Z2RrL2dkay5oPgog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKaW5kZXggMTE0NmZhMWFkYzk0ZDJm
ZjE2MDEwMGU0ZWJhOWI1MmVhNGEzMTY0Yy4uZjgzMjFjYWMwNDA1NWU0YjIzMzZmNmMxM2RjYjgx
YjkzMWNiYmI1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
b3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5jcHAKQEAgLTM4LDcgKzM4LDcg
QEAKICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlICJBTkdMRS9TaGFkZXJMYW5nLmgiCiAj
aW5jbHVkZSA8T3BlbkdML2dsLmg+Ci0jZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVG
TCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShHVEsp
IHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKQogI2luY2x1ZGUgIk9wZW5HTFNoaW1z
LmgiCiAjZW5kaWYKIApAQCAtODYsNyArODYsNyBAQCBQbGF0Zm9ybTNET2JqZWN0IEV4dGVuc2lv
bnMzRE9wZW5HTDo6Y3JlYXRlVmVydGV4QXJyYXlPRVMoKQogewogICAgIG1fY29udGV4dC0+bWFr
ZUNvbnRleHRDdXJyZW50KCk7CiAgICAgR0x1aW50IGFycmF5ID0gMDsKLSNpZiAoUExBVEZPUk0o
R1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKSkK
KyNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikpCiAg
ICAgaWYgKGlzVmVydGV4QXJyYXlPYmplY3RTdXBwb3J0ZWQoKSkKICAgICAgICAgZ2xHZW5WZXJ0
ZXhBcnJheXMoMSwgJmFycmF5KTsKICNlbGlmIGRlZmluZWQoR0xfQVBQTEVfdmVydGV4X2FycmF5
X29iamVjdCkgJiYgR0xfQVBQTEVfdmVydGV4X2FycmF5X29iamVjdApAQCAtMTAxLDcgKzEwMSw3
IEBAIHZvaWQgRXh0ZW5zaW9uczNET3BlbkdMOjpkZWxldGVWZXJ0ZXhBcnJheU9FUyhQbGF0Zm9y
bTNET2JqZWN0IGFycmF5KQogICAgICAgICByZXR1cm47CiAKICAgICBtX2NvbnRleHQtPm1ha2VD
b250ZXh0Q3VycmVudCgpOwotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwg
UExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9STShHVEspIHx8IFBM
QVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSkKICAgICBpZiAoaXNWZXJ0ZXhBcnJheU9iamVj
dFN1cHBvcnRlZCgpKQogICAgICAgICBnbERlbGV0ZVZlcnRleEFycmF5cygxLCAmYXJyYXkpOwog
I2VsaWYgZGVmaW5lZChHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0KSAmJiBHTF9BUFBMRV92
ZXJ0ZXhfYXJyYXlfb2JqZWN0CkBAIC0xMTUsNyArMTE1LDcgQEAgR0MzRGJvb2xlYW4gRXh0ZW5z
aW9uczNET3BlbkdMOjppc1ZlcnRleEFycmF5T0VTKFBsYXRmb3JtM0RPYmplY3QgYXJyYXkpCiAg
ICAgICAgIHJldHVybiBHTF9GQUxTRTsKIAogICAgIG1fY29udGV4dC0+bWFrZUNvbnRleHRDdXJy
ZW50KCk7Ci0jaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShX
SU4pIHx8IFBMQVRGT1JNKE5JWCkpCisjaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZM
KSB8fCBQTEFURk9STShXSU4pKQogICAgIGlmIChpc1ZlcnRleEFycmF5T2JqZWN0U3VwcG9ydGVk
KCkpCiAgICAgICAgIHJldHVybiBnbElzVmVydGV4QXJyYXkoYXJyYXkpOwogI2VsaWYgZGVmaW5l
ZChHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0KSAmJiBHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlf
b2JqZWN0CkBAIC0xMzEsNyArMTMxLDcgQEAgdm9pZCBFeHRlbnNpb25zM0RPcGVuR0w6OmJpbmRW
ZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0IGFycmF5KQogI2VuZGlmCiAKICAgICBtX2Nv
bnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRG
T1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9S
TShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSkKICAgICBpZiAoaXNWZXJ0
ZXhBcnJheU9iamVjdFN1cHBvcnRlZCgpKQogICAgICAgICBnbEJpbmRWZXJ0ZXhBcnJheShhcnJh
eSk7CiAjZWxpZiBkZWZpbmVkKEdMX0FQUExFX3ZlcnRleF9hcnJheV9vYmplY3QpICYmIEdMX0FQ
UExFX3ZlcnRleF9hcnJheV9vYmplY3QKQEAgLTE4NSw3ICsxODUsNyBAQCBib29sIEV4dGVuc2lv
bnMzRE9wZW5HTDo6c3VwcG9ydHNFeHRlbnNpb24oY29uc3QgU3RyaW5nJiBuYW1lKQogCiAgICAg
Ly8gR0xfT0VTX3ZlcnRleF9hcnJheV9vYmplY3QKICAgICBpZiAobmFtZSA9PSAiR0xfT0VTX3Zl
cnRleF9hcnJheV9vYmplY3QiKSB7Ci0jaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZM
KSB8fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkp
CiAgICAgICAgIHJldHVybiBtX2F2YWlsYWJsZUV4dGVuc2lvbnMuY29udGFpbnMoIkdMX0FSQl92
ZXJ0ZXhfYXJyYXlfb2JqZWN0Iik7CiAjZWxzZQogICAgICAgICByZXR1cm4gbV9hdmFpbGFibGVF
eHRlbnNpb25zLmNvbnRhaW5zKCJHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0Iik7CkBAIC0y
MzYsNyArMjM2LDcgQEAgU3RyaW5nIEV4dGVuc2lvbnMzRE9wZW5HTDo6Z2V0RXh0ZW5zaW9ucygp
CiAgICAgcmV0dXJuIFN0cmluZyhyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPig6OmdsR2V0
U3RyaW5nKEdMX0VYVEVOU0lPTlMpKSk7CiB9CiAKLSNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFU
Rk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKSkKKyNpZiAoUExBVEZP
Uk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikpCiBib29sIEV4dGVuc2lv
bnMzRE9wZW5HTDo6aXNWZXJ0ZXhBcnJheU9iamVjdFN1cHBvcnRlZCgpCiB7CiAgICAgc3RhdGlj
IGNvbnN0IGJvb2wgc3VwcG9ydHNWZXJ0ZXhBcnJheU9iamVjdCA9IHN1cHBvcnRzKCJHTF9PRVNf
dmVydGV4X2FycmF5X29iamVjdCIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5oCmluZGV4IDVjZTAy
OWExZTM4NTNmOWZkMTU0NDRlY2IwMTc2OGE4YTlhMDJjZDcuLjgxYzVlNDlkNWQ4ZjVhOTk4MWE4
ZWQyM2IxOWIxZjJkODY5MDE4ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmgKQEAgLTYwLDcg
KzYwLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzRXh0ZW5zaW9u
KGNvbnN0IFdURjo6U3RyaW5nJik7CiAgICAgdmlydHVhbCBTdHJpbmcgZ2V0RXh0ZW5zaW9ucygp
OwotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8
fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwg
UExBVEZPUk0oV0lOKSkKIHByaXZhdGU6CiAgICAgYm9vbCBpc1ZlcnRleEFycmF5T2JqZWN0U3Vw
cG9ydGVkKCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xDb21tb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTENvbW1vbi5jcHAK
aW5kZXggODQ4OTk2Njc1NDJiNjhkOWI4NGI1Y2Y1ODE0NmVlMTgyYmU4ODI3Yy4uZjE3MTNkODk1
YmVlNzMyNmY1MzRiMmQzZmQxYzAyZTZhMTZkZTczMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTENvbW1vbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMz
RE9wZW5HTENvbW1vbi5jcHAKQEAgLTQxLDcgKzQxLDcgQEAKICNpbmNsdWRlIDxHTEVTMi9nbDJl
eHQuaD4KICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlIDxPcGVuR0wvZ2wuaD4KLSNlbGlm
IFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRG
T1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9S
TShXSU4pCiAjaW5jbHVkZSAiT3BlbkdMU2hpbXMuaCIKICNlbmRpZgogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNE
T3BlbkdMRVMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRl
bnNpb25zM0RPcGVuR0xFUy5oCmluZGV4IDMyNmQyOTI1MzE2YjMwN2YxMTAxMDIyNjZmMzVlYjhh
NjU0NTljNDQuLjdjNDA1NjZlOTMwZjc1NjdmYjFjN2JhMTAxZmQ4ZGFhYjkwN2VlOWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25z
M0RPcGVuR0xFUy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5n
bC9FeHRlbnNpb25zM0RPcGVuR0xFUy5oCkBAIC01NywxMSArNTcsNiBAQCB0eXBlZGVmIHZvaWQg
KEdMX0FQSUVOVFJZUCBQRk5HTEdFVE5VTklGT1JNRlZFWFRQUk9DKSAoR0x1aW50IHByb2dyYW0s
IEdMaW50IGxvYwogdHlwZWRlZiB2b2lkIChHTF9BUElFTlRSWVAgUEZOR0xHRVROVU5JRk9STUlW
RVhUUFJPQykgKEdMdWludCBwcm9ncmFtLCBHTGludCBsb2NhdGlvbiwgR0MzRHNpemVpIGJ1ZlNp
emUsIEdMaW50ICpwYXJhbXMpOwogI2VuZGlmCiAKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShP
UEVOR0xfRVNfMikgJiYgIUdMX0lNR19tdWx0aXNhbXBsZWRfcmVuZGVyX3RvX3RleHR1cmUKLS8v
IG9uIHJQaSwgUEZOR0xGUkFNRUJVRkZFUlRFWFRVUkUyRE1VTFRJU0FNUExFSU1HIGlzIGNhbGxl
ZCBQRk5HTENMSVBQTEFORVhJTUcuCi10eXBlZGVmIFBGTkdMQ0xJUFBMQU5FWElNRyBQRk5HTEZS
QU1FQlVGRkVSVEVYVFVSRTJETVVMVElTQU1QTEVJTUc7Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBjbGFzcyBFeHRlbnNpb25zM0RPcGVuR0xFUyA6IHB1YmxpYyBFeHRlbnNpb25z
M0RPcGVuR0xDb21tb24gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKaW5k
ZXggNjM5NDFlODU1NzY3ZWFmOWQzMDY5NzNjYTk5MzRiN2E3OGNlMjQzMS4uZTA0ODQxOGI0ZDQy
ZDYzMDgxZDgyMjA1NTc0MjhmMTg4NWU5NjUyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0
M0RPcGVuR0wuY3BwCkBAIC01MSw3ICs1MSw3IEBACiAjZGVmaW5lIEdMX1JHQjMyRl9BUkIgICAg
ICAgICAgICAgICAgICAgICAgIDB4ODgxNQogI2VsaWYgUExBVEZPUk0oTUFDKQogI2luY2x1ZGUg
PE9wZW5HTC9nbC5oPgotI2VsaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBM
QVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFU
Rk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikKICNpbmNsdWRlICJPcGVuR0xTaGltcy5oIgogI2Vu
ZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5n
bC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTENvbW1vbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwCmlu
ZGV4IGNjM2QzOThhOTYyMjliMTg1ODg2NDhhMjk0NTBiOGNkZDVmYTA4NWYuLmI0MTFjMDg0NGE2
NTllZmVkYzU0OTQ5MDk5YzQ3OWI3OTFmMDQ4ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTENvbW1vbi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNz
Q29udGV4dDNET3BlbkdMQ29tbW9uLmNwcApAQCAtNjgsNyArNjgsNyBAQAogI2luY2x1ZGUgIk9w
ZW5HTEVTU2hpbXMuaCIKICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlIDxPcGVuR0wvZ2wu
aD4KLSNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4p
IHx8IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8
fCBQTEFURk9STShXSU4pCiAjaW5jbHVkZSAiT3BlbkdMU2hpbXMuaCIKICNlbmRpZgogI2VuZGlm
CkBAIC0yNzEsNyArMjcxLDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cmVzaGFwZShpbnQg
d2lkdGgsIGludCBoZWlnaHQpCiAKICAgICBtYXJrQ29udGV4dENoYW5nZWQoKTsKIAotI2lmIChQ
TEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkpICYmIFVTRShHUkFQSElDU19TVVJGQUNFKQor
I2lmIFBMQVRGT1JNKEVGTCkgJiYgVVNFKEdSQVBISUNTX1NVUkZBQ0UpCiAgICAgOjpnbEZsdXNo
KCk7IC8vIE1ha2Ugc3VyZSBhbGwgR0wgY2FsbHMgaGF2ZSBiZWVuIGNvbW1pdHRlZCBiZWZvcmUg
cmVzaXppbmcuCiAgICAgY3JlYXRlR3JhcGhpY3NTdXJmYWNlcyhJbnRTaXplKHdpZHRoLCBoZWln
aHQpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3Mvb3BlbmdsL1RlbXBvcmFyeU9wZW5HTFNldHRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RlbXBvcmFyeU9wZW5HTFNldHRpbmcuY3BwCmluZGV4IGRl
YThkZWExOGU5MzcyNWZlYzIxOGMzNmVmYjgyMGQwOGRhNTJhN2UuLmEwMTYzNzcwY2RkNzlmZDFm
MTBjMDFhMDMxYWZiYjQ2MmE2OWRhMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL29wZW5nbC9UZW1wb3JhcnlPcGVuR0xTZXR0aW5nLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGVtcG9yYXJ5T3BlbkdMU2V0dGlu
Zy5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKICNpbmNsdWRlIDxPcGVuR0xFUy9FUzIvZ2wuaD4KICNl
bGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlIDxPcGVuR0wvZ2wuaD4KLSNlbGlmIFBMQVRGT1JN
KEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkK
KyNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pCiAj
aW5jbHVkZSAiT3BlbkdMU2hpbXMuaCIKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaAppbmRleCA0NTBj
ZDBlMmYyZTcyMjliMThiNTk3MTAwZjk3NzEzOTAwMTY4YTgwLi40YzgwZDEzOGI4NjU0YzdhZjhh
OTk4N2EzNDAyZjA0YTdjZTM4MmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmgKQEAgLTIyLDcgKzIyLDcgQEAK
IAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykgJiYgVVNFKFRFWFRVUkVfTUFQUEVS
KQogCi0jaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgp
KSAmJiBVU0UoT1BFTkdMX0VTXzIpCisjaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZM
KSkgJiYgVVNFKE9QRU5HTF9FU18yKQogI2RlZmluZSBURVhNQVBfT1BFTkdMX0VTXzIKICNlbmRp
ZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNl
SGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxl
LmgKaW5kZXggNmFhMWExNjBlMjRjNWZmMGIwMzJhMTNmM2NiMDBiNTJlZWFlMDIxNi4uZTU1YWQw
MDM5YzlhN2M2ZGVlYjFmZjU1OWJjOTNiODU4ZjE3OWM1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUuaApAQCAtMTUwLDcgKzE1MCw3IEBA
IHB1YmxpYzoKIAogI2VuZGlmIC8vIFVTRShDRk5FVFdPUkspCiAKLSNpZiAoUExBVEZPUk0oV0lO
KSB8fCBQTEFURk9STShOSVgpKSAmJiBVU0UoQ1VSTCkKKyNpZiBQTEFURk9STShXSU4pICYmIFVT
RShDVVJMKQogICAgIHN0YXRpYyB2b2lkIHNldEhvc3RBbGxvd3NBbnlIVFRQU0NlcnRpZmljYXRl
KGNvbnN0IFN0cmluZyYpOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oV0lOKSAmJiBVU0UoQ1VSTCkg
JiYgVVNFKENGKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5QYWNr
YWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFja2FnZS5jcHAKaW5kZXgg
YWE1ZDYxZDVjMmI5YmI0MDhiNzFjY2M0MWJlNDM4ZTFmMDk0MDZlYS4uYjE0OWQzYWNmZDNlZmU4
MWQwNzI2Y2E1N2NmNzI0ZDBlMDc4YjQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1
Z2lucy9QbHVnaW5QYWNrYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdp
blBhY2thZ2UuY3BwCkBAIC0xNzYsNyArMTc2LDcgQEAgUGFzc1JlZlB0cjxQbHVnaW5QYWNrYWdl
PiBQbHVnaW5QYWNrYWdlOjpjcmVhdGVQYWNrYWdlRnJvbUNhY2hlKGNvbnN0IFN0cmluZyYgcGEK
IH0KICNlbmRpZgogCi0jaWYgZGVmaW5lZChYUF9VTklYKSAmJiAhUExBVEZPUk0oTklYKQorI2lm
IGRlZmluZWQoWFBfVU5JWCkKIHZvaWQgUGx1Z2luUGFja2FnZTo6ZGV0ZXJtaW5lUXVpcmtzKGNv
bnN0IFN0cmluZyYgbWltZVR5cGUpCiB7CiAgICAgaWYgKE1JTUVUeXBlUmVnaXN0cnk6OmlzSmF2
YUFwcGxldE1JTUVUeXBlKG1pbWVUeXBlKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGx1Z2lucy9QbHVnaW5WaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmll
dy5jcHAKaW5kZXggZjg0NWNjMDJhMDAzYmJjYzkwOTAzMWUzNjM4NGZjYTg2YzI4MmJjMS4uYTdl
ZTUzMmQ1ZTE1NGMwNTFlMjkxYTAzMGQ5MzY0MmZjNmVhYmJjNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVn
aW5zL1BsdWdpblZpZXcuY3BwCkBAIC04MzMsNyArODMzLDcgQEAgUGx1Z2luVmlldzo6UGx1Z2lu
VmlldyhGcmFtZSogcGFyZW50RnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUsIFBsdWdpblBhY2th
Z2UqIHAKICAgICAsIG1fd21QcmludEhEQygwKQogICAgICwgbV9oYXZlVXBkYXRlZFBsdWdpbldp
ZGdldChmYWxzZSkKICNlbmRpZgotI2lmIFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQor
I2lmIFBMQVRGT1JNKEVGTCkKICAgICAsIG1fd2luZG93KDApCiAjZW5kaWYKICNpZiBkZWZpbmVk
KFhQX01BQ09TWCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmll
dy5oIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggOGEzNjYyMjZl
NDc2YWYxMDQzZmRmZjBjNzRjOGE0OTcwZjA4NmZiNy4uNWZkMzhkMmZkYWM1Mjk4OGM2Y2YxYjQ4
YzFlMTU2NTEzZDQzZGY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5WaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmgKQEAgLTM1
NCw3ICszNTQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGJvb2wgbV9oYXZlVXBk
YXRlZFBsdWdpbldpZGdldDsKICNlbmRpZgogCi0jaWYgKFBMQVRGT1JNKEdUSykgJiYgT1MoV0lO
RE9XUykpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQorI2lmIChQTEFURk9STShH
VEspICYmIE9TKFdJTkRPV1MpKSB8fCBQTEFURk9STShFRkwpCiAgICAgICAgIC8vIE9uIE1hYyBP
U1ggYW5kIFF0L1dpbmRvd3MgdGhlIHBsdWdpbiBkb2VzIG5vdCBoYXZlIGl0cyBvd24gbmF0aXZl
IHdpZGdldCwKICAgICAgICAgLy8gYnV0IGlzIHVzaW5nIHRoZSBjb250YWluaW5nIHdpbmRvdyBh
cyBpdHMgcmVmZXJlbmNlIGZvciBwb3NpdGlvbmluZy9wYWludGluZy4KICAgICAgICAgUGxhdGZv
cm1QbHVnaW5XaWRnZXQgbV93aW5kb3c7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVn
aW5zL1BsdWdpblZpZXdOb25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmll
d05vbmUuY3BwCmluZGV4IGI5NjJjMDZkODk1YjJkYmUxY2U2MzVmMWEyZmFiZGMwMzY3NzczNmUu
Ljk5MzU0MWU0OTlmNTU5MjcxNjQ1YTcxM2M2Y2U2NTllM2QyNWM2ZjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlld05vbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsdWdpbnMvUGx1Z2luVmlld05vbmUuY3BwCkBAIC0xMzIsNyArMTMyLDcgQEAgdm9pZCBQ
bHVnaW5WaWV3OjpoYW5kbGVGb2N1c091dEV2ZW50KCkKIC8vIHBvcnRzIHVzaW5nIFBsdWdpblZp
ZXcsIGJ1dCB1bnRpbCB0aGVuLCBpZiBuZXcgZnVuY3Rpb25zIGxpa2UgdGhpcyBhcmUgCiAvLyBh
ZGRlZCwgcGxlYXNlIG1ha2Ugc3VyZSB0aGV5IGhhdmUgdGhlIHByb3BlciBwbGF0Zm9ybSAjaWZz
IHNvIHRoYXQgY2hhbmdlcwogLy8gZG8gbm90IGJyZWFrIHBvcnRzIHdobyBjb21waWxlIGJvdGgg
dGhpcyBmaWxlIGFuZCBQbHVnaW5WaWV3LmNwcC4gICAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBM
QVRGT1JNKEVGTCkgfHwgT1MoV0lOQ0UpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShN
QUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgT1MoV0lOQ0UpCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BM
VUdJTl9BUEkpCiB2b2lkIFBsdWdpblZpZXc6OmtlZXBBbGl2ZShOUFApCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAKaW5kZXggZTZlMGZhMDg1MGM1
YzgwYThmMzlkMGQ1MzE0ZDdiZWFlZGQyM2I3NS4uYjBmMGIzMWFmMGZjNzc2OWZhZTk5OTAzYjAx
NmNiZTgzMmU3OWQwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBs
ZUxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9TaW1wbGVMaW5l
TGF5b3V0LmNwcApAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgYm9vbCBjYW5Vc2VGb3JUZXh0KGNv
bnN0IFJlbmRlclRleHQmIHRleHRSZW5kZXJlciwgY29uc3QgU2ltcGxlRm9udERhdGEmCiAKIGJv
b2wgY2FuVXNlRm9yKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgZmxvdykKIHsKLSNpZiAhUExBVEZP
Uk0oTUFDKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0o
TklYKQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShHVEspICYmICFQTEFURk9STShF
RkwpCiAgICAgLy8gRklYTUU6IE5vbi1tYWMgcGxhdGZvcm1zIGFyZSBoaXR0aW5nIEFTU0VSVChy
dW4uY2hhcmFjdGVyc0xlbmd0aCgpID49IHJ1bi5sZW5ndGgoKSkKICAgICAvLyBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzMzM4CiAgICAgcmV0dXJuIGZhbHNlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221759</attachid>
            <date>2014-01-21 10:08:21 -0800</date>
            <delta_ts>2014-01-21 10:42:30 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-127299-20140121150822.patch</filename>
            <type>text/plain</type>
            <size>37791</size>
            <attacher name="Lauro Moura Maranhao Neto">lauro.neto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDhhZDQwYjVmZDc2NDgz
ODFlZGI1YjZlOTJkNDU2NGI3ZDM1OWU4MS4uZDFiZjg3Mjg5ZTkzNzIzYjA1MzdhNDI4YjdiMDNj
YTllMWE2M2Q0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY4IEBACisyMDE0LTAxLTIxICBMYXVy
byBOZXRvICA8bGF1cm8ubmV0b0BvcGVuYm9zc2Eub3JnPgorCisgICAgICAgIFJlbW92ZSBQTEFU
Rk9STShOSVgpIGZyb20gV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTI3Mjk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxz
c29uLgorCisgICAgICAgICogZWRpdGluZy9FZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RWRpdG9yOjpjdXQpOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpjb3B5KToKKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6Y29weUltYWdlKToKKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5o
OgorICAgICAgICAqIGh0bWwvSFRNTENhbnZhc0VsZW1lbnQuaDoKKyAgICAgICAgKiBsb2FkZXIv
RW1wdHlDbGllbnRzLmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpkZWZhdWx0T2JqZWN0Q29udGVudFR5cGUpOgorICAg
ICAgICAqIHBhZ2UvQ2hyb21lQ2xpZW50Lmg6CisgICAgICAgICogcGFnZS9EcmFnQ29udHJvbGxl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEcmFnQ29udHJvbGxlcjo6c3RhcnREcmFnKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9DdXJzb3IuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9EcmFnRGF0YS5o
OgorICAgICAgICAqIHBsYXRmb3JtL0RyYWdJbWFnZS5oOgorICAgICAgICAqIHBsYXRmb3JtL0Zp
bGVTeXN0ZW0uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmg6CisgICAg
ICAgICogcGxhdGZvcm0vV2lkZ2V0Lmg6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vRkZURnJh
bWUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0aW9uLmNwcDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9jYWlyby9XaWRnZXRCYWNraW5nU3RvcmUuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL0ZvbnRQbGF0Zm9ybURhdGEuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9H
TENvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R0xDb250ZXh0OjpjcmVhdGVDb250ZXh0
Rm9yV2luZG93KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6OkdyYXBoaWNzQ29udGV4dDNEUHJp
dmF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMRVNTaGltcy5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmdldFByb2NBZGRyZXNzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xT
aGltcy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1BsYXRmb3JtTGF5ZXIuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJlZVR5
cGUuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RP
cGVuR0wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNET3BlbkdMOjpjcmVhdGVW
ZXJ0ZXhBcnJheU9FUyk6CisgICAgICAgIChXZWJDb3JlOjpFeHRlbnNpb25zM0RPcGVuR0w6OmRl
bGV0ZVZlcnRleEFycmF5T0VTKToKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRE9wZW5H
TDo6aXNWZXJ0ZXhBcnJheU9FUyk6CisgICAgICAgIChXZWJDb3JlOjpFeHRlbnNpb25zM0RPcGVu
R0w6OmJpbmRWZXJ0ZXhBcnJheU9FUyk6CisgICAgICAgIChXZWJDb3JlOjpFeHRlbnNpb25zM0RP
cGVuR0w6OnN1cHBvcnRzRXh0ZW5zaW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9v
cGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
b3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTENvbW1vbi5jcHA6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTEVTLmg6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0Q6OnJlc2hhcGUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZW1wb3JhcnlPcGVuR0xTZXR0aW5nLmNw
cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oOgor
ICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUuaDoKKyAgICAgICAgKiBw
bHVnaW5zL1BsdWdpblBhY2thZ2UuY3BwOgorICAgICAgICAqIHBsdWdpbnMvUGx1Z2luVmlldy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KToKKyAgICAgICAg
KiBwbHVnaW5zL1BsdWdpblZpZXcuaDoKKyAgICAgICAgKiBwbHVnaW5zL1BsdWdpblZpZXdOb25l
LmNwcDoKKyAgICAgICAgKiByZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTaW1wbGVMaW5lTGF5b3V0OjpjYW5Vc2VGb3IpOgorCiAyMDE0LTAxLTIxICBB
bnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBEZWxheSBpbml0aWFs
IGxheWVyIGZsdXNoIGR1cmluZyBsb2FkaW5nIG9uIGFsbCBwbGF0Zm9ybXMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRWRpdG9yLmNwcAppbmRleCAyYjc3ODA1MTYwYzgyZTRiMjM5NDViZjEzYzExYzQ2MDg5Mjhi
YzNlLi4wZTVkYmVhYTQ1YmY2MWMxOWM0ODcxNmJiNGM0MTljM2QwYWY3NGQ3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9FZGl0b3IuY3BwCkBAIC01NjMsNyArNTYzLDcgQEAgU3RyaW5nIEVkaXRvcjo6cGxh
aW5UZXh0RnJvbVBhc3RlYm9hcmQoY29uc3QgUGFzdGVib2FyZFBsYWluVGV4dCYgdGV4dCkKIAog
I2VuZGlmCiAKLSNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZP
Uk0oTklYKQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShFRkwpCiB2b2lkIEVkaXRv
cjo6cGFzdGVXaXRoUGFzdGVib2FyZChQYXN0ZWJvYXJkKiBwYXN0ZWJvYXJkLCBib29sIGFsbG93
UGxhaW5UZXh0KQogewogICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBzZWxlY3RlZFJhbmdlKCk7
CkBAIC0xMjgzLDcgKzEyODMsNyBAQCB2b2lkIEVkaXRvcjo6Y3V0KCkKICAgICAgICAgaWYgKGVu
Y2xvc2luZ1RleHRGb3JtQ29udHJvbChtX2ZyYW1lLnNlbGVjdGlvbigpLnN0YXJ0KCkpKQogICAg
ICAgICAgICAgUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCktPndyaXRlUGxhaW5U
ZXh0KHNlbGVjdGVkVGV4dEZvckNsaXBib2FyZCgpLCBjYW5TbWFydENvcHlPckRlbGV0ZSgpID8g
UGFzdGVib2FyZDo6Q2FuU21hcnRSZXBsYWNlIDogUGFzdGVib2FyZDo6Q2Fubm90U21hcnRSZXBs
YWNlKTsKICAgICAgICAgZWxzZSB7Ci0jaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwp
IHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkKICAg
ICAgICAgICAgIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVhdGVG
b3JDb3B5QW5kUGFzdGUoKSk7CiAjZWxzZQogICAgICAgICAgICAgLy8gRklYTUU6IENvbnZlcnQg
YWxsIG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBNYWMgYW5kIGRlbGV0ZSB0aGlzLgpAQCAtMTMx
MCwxMyArMTMxMCwxMyBAQCB2b2lkIEVkaXRvcjo6Y29weSgpCiAgICAgICAgICAgICBjYW5TbWFy
dENvcHlPckRlbGV0ZSgpID8gUGFzdGVib2FyZDo6Q2FuU21hcnRSZXBsYWNlIDogUGFzdGVib2Fy
ZDo6Q2Fubm90U21hcnRSZXBsYWNlKTsKICAgICB9IGVsc2UgewogICAgICAgICBpZiAoSFRNTElt
YWdlRWxlbWVudCogaW1hZ2VFbGVtZW50ID0gaW1hZ2VFbGVtZW50RnJvbUltYWdlRG9jdW1lbnQo
ZG9jdW1lbnQoKSkpIHsKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExB
VEZPUk0oTklYKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQogICAgICAgICAg
ICAgd3JpdGVJbWFnZVRvUGFzdGVib2FyZCgqUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBh
c3RlKCksICppbWFnZUVsZW1lbnQsIGRvY3VtZW50KCkudXJsKCksIGRvY3VtZW50KCkudGl0bGUo
KSk7CiAjZWxzZQogICAgICAgICAgICAgUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3Rl
KCktPndyaXRlSW1hZ2UoKmltYWdlRWxlbWVudCwgZG9jdW1lbnQoKS51cmwoKSwgZG9jdW1lbnQo
KS50aXRsZSgpKTsKICNlbmRpZgogICAgICAgICB9IGVsc2UgewotI2lmIFBMQVRGT1JNKE1BQykg
fHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQ
TEFURk9STShFRkwpCiAgICAgICAgICAgICB3cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgqUGFz
dGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIC8v
IEZJWE1FOiBDb252ZXJ0IGFsbCBvdGhlciBwbGF0Zm9ybXMgdG8gbWF0Y2ggTWFjIGFuZCBkZWxl
dGUgdGhpcy4KQEAgLTE0MjAsNyArMTQyMCw3IEBAIHZvaWQgRWRpdG9yOjpjb3B5SW1hZ2UoY29u
c3QgSGl0VGVzdFJlc3VsdCYgcmVzdWx0KQogICAgIGlmICh1cmwuaXNFbXB0eSgpKQogICAgICAg
ICB1cmwgPSByZXN1bHQuYWJzb2x1dGVJbWFnZVVSTCgpOwogCi0jaWYgUExBVEZPUk0oTUFDKSB8
fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBM
QVRGT1JNKEVGTCkKICAgICB3cml0ZUltYWdlVG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVh
dGVGb3JDb3B5QW5kUGFzdGUoKSwgKmVsZW1lbnQsIHVybCwgcmVzdWx0LmFsdERpc3BsYXlTdHJp
bmcoKSk7CiAjZWxzZQogICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgpLT53
cml0ZUltYWdlKCplbGVtZW50LCB1cmwsIHJlc3VsdC5hbHREaXNwbGF5U3RyaW5nKCkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaCBiL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvRWRpdG9yLmgKaW5kZXggMjBlMTc0YjVlNWJhNzQ2MjgzMTJjMDI0ODFmNGIyMzJh
MzExNmFmMS4uNWU3MzU0ZDAwNWQ2ODhjODEwZDEwOTc2MzI4YzgxOGJiN2I1MGY4YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5oCkBAIC00MzQsNyArNDM0LDcgQEAgcHVibGljOgogI2VuZGlmIC8v
ICFQTEFURk9STShJT1MpCiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0o
RUZMKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwp
CiAgICAgdm9pZCB3cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChQYXN0ZWJvYXJkJik7CiAgICAg
dm9pZCB3cml0ZUltYWdlVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmLCBFbGVtZW50JiBpbWFnZUVs
ZW1lbnQsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgdGl0bGUpOwogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmgKaW5kZXggNTA4MTMyYjYxNzQ0ZmEzMTM5MGU0
ZTQ5NWU1NDMyYjdjZTE1ODJhZS4uMzgzYTE4OGU3Y2YyODM1YTJhODA1NDA3MmQ3MGMzMDVmOTMy
MmQzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaApAQCAtMzMsNyAr
MzMsNyBAQAogI2luY2x1ZGUgIkludFNpemUuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgog
Ci0jaWYgVVNFKENHKSB8fCBQTEFURk9STShOSVgpCisjaWYgVVNFKENHKQogI2RlZmluZSBEZWZh
dWx0SW50ZXJwb2xhdGlvblF1YWxpdHkgSW50ZXJwb2xhdGlvbkxvdwogI2Vsc2UKICNkZWZpbmUg
RGVmYXVsdEludGVycG9sYXRpb25RdWFsaXR5IEludGVycG9sYXRpb25EZWZhdWx0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKaW5kZXggOWM0OGY5YzM3MDlkYTE5NDI1YzE4ZGUzMDZm
YjdjNzIxYzc3OTQwMS4uODY1ZGE2YzI5MmJkYzUxMjI0YjQyNThiOGJlNDdiNjc2ZTlkMDI3NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaApAQCAtMTk1LDEwICsxOTUsNiBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIEFYRmluaXNoRnJhbWVMb2FkKCkgb3ZlcnJpZGUgeyB9
CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE5JWCkKLSAgICB2aXJ0dWFsIEZsb2F0UmVjdCBzY3Jl
ZW5SZWN0KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gRmxvYXRSZWN0KCk7IH0KLSNlbmRpZgot
CiAjaWYgUExBVEZPUk0oSU9TKQogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCiAgICAgdmlydHVh
bCB2b2lkIGRpZFByZXZlbnREZWZhdWx0Rm9yRXZlbnQoKSBvdmVycmlkZSB7IH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IDFjNGEyN2YzNmZhYmUxNWQ4ZDMyZWI4MjEz
MGRiNDFiNmU1MzRhOWQuLmJjZTA3YWJjZjFiMTlkMTU4NTZlZTBhYzdhNmViZGQzYzQwMjYyNzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcApAQCAtOTU0LDcgKzk1NCw3IEBA
IE9iamVjdENvbnRlbnRUeXBlIEZyYW1lTG9hZGVyOjpkZWZhdWx0T2JqZWN0Q29udGVudFR5cGUo
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0CiAgICAgaWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkKICAg
ICAgICAgbWltZVR5cGUgPSBtaW1lVHlwZUZyb21VUkwodXJsKTsKIAotI2lmICFQTEFURk9STShN
QUMpICYmICFQTEFURk9STShFRkwpICYmICFQTEFURk9STShOSVgpIC8vIE1hYyBoYXMgbm8gUGx1
Z2luRGF0YWJhc2UsIG5vciBkb2VzIE5peCBvciBFRkwKKyNpZiAhUExBVEZPUk0oTUFDKSAmJiAh
UExBVEZPUk0oRUZMKSAvLyBNYWMgaGFzIG5vIFBsdWdpbkRhdGFiYXNlLCBub3IgZG9lcyBFRkwK
ICAgICBpZiAobWltZVR5cGUuaXNFbXB0eSgpKSB7CiAgICAgICAgIFN0cmluZyBkZWNvZGVkUGF0
aCA9IGRlY29kZVVSTEVzY2FwZVNlcXVlbmNlcyh1cmwucGF0aCgpKTsKICAgICAgICAgbWltZVR5
cGUgPSBQbHVnaW5EYXRhYmFzZTo6aW5zdGFsbGVkUGx1Z2lucygpLT5NSU1FVHlwZUZvckV4dGVu
c2lvbihkZWNvZGVkUGF0aC5zdWJzdHJpbmcoZGVjb2RlZFBhdGgucmV2ZXJzZUZpbmQoJy4nKSAr
IDEpKTsKQEAgLTk2NCw3ICs5NjQsNyBAQCBPYmplY3RDb250ZW50VHlwZSBGcmFtZUxvYWRlcjo6
ZGVmYXVsdE9iamVjdENvbnRlbnRUeXBlKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdAogICAgIGlm
IChtaW1lVHlwZS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiBPYmplY3RDb250ZW50RnJhbWU7
IC8vIEdvIGFoZWFkIGFuZCBob3BlIHRoYXQgd2UgY2FuIGRpc3BsYXkgdGhlIGNvbnRlbnQuCiAK
LSNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oTklYKSAv
LyBNYWMgaGFzIG5vIFBsdWdpbkRhdGFiYXNlLCBub3IgZG9lcyBOaXggb3IgRUZMCisjaWYgIVBM
QVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEVGTCkgLy8gTWFjIGhhcyBubyBQbHVnaW5EYXRhYmFz
ZSwgbm9yIGRvZXMgRUZMCiAgICAgYm9vbCBwbHVnSW5TdXBwb3J0c01JTUVUeXBlID0gUGx1Z2lu
RGF0YWJhc2U6Omluc3RhbGxlZFBsdWdpbnMoKS0+aXNNSU1FVHlwZVJlZ2lzdGVyZWQobWltZVR5
cGUpOwogI2Vsc2UKICAgICBib29sIHBsdWdJblN1cHBvcnRzTUlNRVR5cGUgPSBmYWxzZTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCmluZGV4IDg0OThhYzhmYzFkMGQ1MjAyZmU0ZWYzYWQ3
Yjc5OTU4NDUyMzdmM2YuLmEzNTNlOTA5YjYzOWRhYTkyODZmNWZhY2FjZGFiMjVmYWEyMDY4ODMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaApAQCAtMzY2LDEwICszNjYsNiBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCB2b2lkIEFYRmluaXNoRnJhbWVMb2FkKCkgPSAwOwogI2VuZGlmCiAK
LSNpZiBQTEFURk9STShOSVgpCi0gICAgdmlydHVhbCBGbG9hdFJlY3Qgc2NyZWVuUmVjdCgpIGNv
bnN0ID0gMDsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICB2aXJ0dWFs
IHZvaWQgbmVlZFRvdWNoRXZlbnRzKGJvb2wpID0gMDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RyYWdDb250cm9sbGVyLmNwcAppbmRleCA0ODQ1YTM0NWI1ZjFmNzYzZWZlYjk5NTE4YmQ4YTVl
M2U3NDJlNWI3Li5kMWE0ODk5MGYxYTEwMWJjMjQ2OTE5MjZjMzNkNmJjODI2ZGNkN2ZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcApAQCAtNzY4LDcgKzc2OCw3IEBAIGJv
b2wgRHJhZ0NvbnRyb2xsZXI6OnN0YXJ0RHJhZyhGcmFtZSYgc3JjLCBjb25zdCBEcmFnU3RhdGUm
IHN0YXRlLCBEcmFnT3BlcmF0aW9uCiAgICAgICAgICAgICBpZiAoZW5jbG9zaW5nVGV4dEZvcm1D
b250cm9sKHNyYy5zZWxlY3Rpb24oKS5zdGFydCgpKSkKICAgICAgICAgICAgICAgICBjbGlwYm9h
cmQucGFzdGVib2FyZCgpLndyaXRlUGxhaW5UZXh0KHNyYy5lZGl0b3IoKS5zZWxlY3RlZFRleHRG
b3JDbGlwYm9hcmQoKSwgUGFzdGVib2FyZDo6Q2Fubm90U21hcnRSZXBsYWNlKTsKICAgICAgICAg
ICAgIGVsc2UgewotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9S
TShOSVgpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpCiAgICAgICAgICAgICAg
ICAgc3JjLmVkaXRvcigpLndyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKGNsaXBib2FyZC5wYXN0
ZWJvYXJkKCkpOwogI2Vsc2UKICAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwg
b3RoZXIgcGxhdGZvcm1zIHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL0N1cnNvci5oCmluZGV4IDQwNjdlOTJiYzgzMjczZDY5NWU1NDZjMzE5YjA0NzliMDFkMzhi
NjguLjIyNDA3YWEyNGVhYzkzOGZlY2I5YzBmY2E2Mjg3MmE3MjExMGQwZDkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0N1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL0N1cnNvci5oCkBAIC03Miw4ICs3Miw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICB0eXBlZGVmIEdSZWZQdHI8R2RrQ3Vyc29yPiBQbGF0Zm9ybUN1cnNvcjsKICNlbGlmIFBMQVRG
T1JNKEVGTCkKICAgICB0eXBlZGVmIGNvbnN0IGNoYXIqIFBsYXRmb3JtQ3Vyc29yOwotI2VsaWYg
UExBVEZPUk0oTklYKQotICAgIHR5cGVkZWYgdW5zaWduZWQgUGxhdGZvcm1DdXJzb3I7CiAjZWxz
ZQogICAgIHR5cGVkZWYgdm9pZCogUGxhdGZvcm1DdXJzb3I7CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9EcmFnRGF0YS5oCmluZGV4IGQxMDgxNGRkZWYzNmJkMjdkNWU1ZTE4MjdkMGI2Mjg4ZWYz
OTJmZmQuLjhmYzAxNjMyOTQ3ZWMxZTJlYmQ2ZjMyZmVkMjZmN2Y1Y2EwM2QyN2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RyYWdEYXRhLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vRHJhZ0RhdGEuaApAQCAtNTQsNyArNTQsNyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBjbGFzcyBEYXRhT2JqZWN0R3RrOwogfQogdHlwZWRlZiBXZWJDb3JlOjpEYXRhT2JqZWN0
R3RrKiBEcmFnRGF0YVJlZjsKLSNlbGlmIFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKSB8
fCBQTEFURk9STShJT1MpCisjZWxpZiBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKElPUykKIHR5
cGVkZWYgdm9pZCogRHJhZ0RhdGFSZWY7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vRHJhZ0ltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFn
SW1hZ2UuaAppbmRleCAyMmExYTA1MTU5NTJiMjk0OTU2YjMyOTY4OTY1OTQ3NmU1NTlhNmU1Li40
ZTRmNzFhNDJkNTFkYzlkZTQ3NmFmYmRjODY2NzA0Y2NkODY4YjkxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9EcmFnSW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9EcmFnSW1hZ2UuaApAQCAtNDEsNyArNDEsNyBAQCB0eXBlZGVmIHN0cnVjdCBDR0ltYWdl
ICpDR0ltYWdlUmVmOwogT0JKQ19DTEFTUyBOU0ltYWdlOwogI2VsaWYgUExBVEZPUk0oV0lOKQog
dHlwZWRlZiBzdHJ1Y3QgSEJJVE1BUF9fKiBIQklUTUFQOwotI2VsaWYgUExBVEZPUk0oR1RLKSB8
fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShHVEspCiB0eXBlZGVmIHN0cnVjdCBfY2Fp
cm9fc3VyZmFjZSBjYWlyb19zdXJmYWNlX3Q7CiAjZW5kaWYKIApAQCAtNjMsNyArNjMsNyBAQCB0
eXBlZGVmIFJldGFpblB0cjxDR0ltYWdlUmVmPiBEcmFnSW1hZ2VSZWY7CiB0eXBlZGVmIFJldGFp
blB0cjxOU0ltYWdlPiBEcmFnSW1hZ2VSZWY7CiAjZWxpZiBQTEFURk9STShXSU4pCiB0eXBlZGVm
IEhCSVRNQVAgRHJhZ0ltYWdlUmVmOwotI2VsaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShO
SVgpCisjZWxpZiBQTEFURk9STShHVEspCiB0eXBlZGVmIGNhaXJvX3N1cmZhY2VfdCogRHJhZ0lt
YWdlUmVmOwogI2VsaWYgUExBVEZPUk0oRUZMKQogdHlwZWRlZiB2b2lkKiBEcmFnSW1hZ2VSZWY7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9GaWxlU3lzdGVtLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9GaWxlU3lzdGVtLmgKaW5kZXggMzRmZTBhNDMwZjdlNmEzMzNj
MjNmZTMwMzVjZDk5ZTExMWY5NmFhZi4uODJkZDUwODA1ZWJjODhhZGJiOGY2Njk0MzU5ZTZjNWIz
MWViODNjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRmlsZVN5c3RlbS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0ZpbGVTeXN0ZW0uaApAQCAtMTkxLDcgKzE5
MSw3IEBAIFN0cmluZyBlbmNvZGVGb3JGaWxlTmFtZShjb25zdCBTdHJpbmcmKTsKIFJldGFpblB0
cjxDRlVSTFJlZj4gcGF0aEFzVVJMKGNvbnN0IFN0cmluZyYpOwogI2VuZGlmCiAKLSNpZiBQTEFU
Rk9STShHVEspIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShHVEspCiBTdHJpbmcgZmls
ZW5hbWVUb1N0cmluZyhjb25zdCBjaGFyKik7CiBTdHJpbmcgZmlsZW5hbWVGb3JEaXNwbGF5KGNv
bnN0IFN0cmluZyYpOwogQ1N0cmluZyBhcHBsaWNhdGlvbkRpcmVjdG9yeVBhdGgoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaAppbmRleCBlM2Y3M2NiMGQyYzAx
NjhiYmFmYTYxYzBlNzlmMWE0ZTM3OGJmNjdhLi4wYjJjY2QxMzBjNjRkNmZiZmMyZjYxMDhjNGNl
YTNhNGJmMzVlNDZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6
ZWRTdHJpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5n
cy5oCkBAIC01NCw3ICs1NCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBTdHJpbmcgY29u
dGV4dE1lbnVJdGVtVGFnT3BlbkltYWdlSW5OZXdXaW5kb3coKTsKICAgICBTdHJpbmcgY29udGV4
dE1lbnVJdGVtVGFnRG93bmxvYWRJbWFnZVRvRGlzaygpOwogICAgIFN0cmluZyBjb250ZXh0TWVu
dUl0ZW1UYWdDb3B5SW1hZ2VUb0NsaXBib2FyZCgpOwotI2lmIFBMQVRGT1JNKEdUSykgfHwgUExB
VEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9S
TShFRkwpCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0NvcHlJbWFnZVVybFRvQ2xpcGJv
YXJkKCk7CiAjZW5kaWYKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnT3BlbkZyYW1lSW5O
ZXdXaW5kb3coKTsKQEAgLTgwLDcgKzgwLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIFN0
cmluZyBjb250ZXh0TWVudUl0ZW1UYWdVbmljb2RlSW5zZXJ0WldKTWFyaygpOwogICAgIFN0cmlu
ZyBjb250ZXh0TWVudUl0ZW1UYWdVbmljb2RlSW5zZXJ0WldOSk1hcmsoKTsKICNlbmRpZgotI2lm
IFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExB
VEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRh
Z1NlbGVjdEFsbCgpOwogI2VuZGlmCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ05vR3Vl
c3Nlc0ZvdW5kKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCmluZGV4IDM3ZTk5MTZmNmRiYmFm
ODdjYWU5NjllZmRkYWQzZjIyNzkyMWJmZWIuLjJmM2YyN2NmMzcxYmJmZWU5YWFiZDBjYzFlNjgz
NTk2MWJiY2Q2NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCkBAIC01OSwxMCArNTksNiBA
QCB0eXBlZGVmIHN0cnVjdCBfR3RrQ29udGFpbmVyIEd0a0NvbnRhaW5lcjsKIHR5cGVkZWYgR3Rr
V2lkZ2V0KiBQbGF0Zm9ybVdpZGdldDsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTklYKQotdHlw
ZWRlZiB2b2lkKiBQbGF0Zm9ybVdpZGdldDsKLSNlbmRpZgotCiAjaWYgUExBVEZPUk0oRUZMKQog
I2lmIFVTRShFTykKIHR5cGVkZWYgc3RydWN0IF9Fb19PcGFxdWUgRXZhc19PYmplY3Q7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJhbWUuaAppbmRleCAwMWFlMWE0YWIwNWYxNjEx
YmMwZmQ2N2Q4YjYzNjJjN2IwMWVhYmJjLi5jZDA0ODMwNTZmMGQ2MTg4YTcyN2Q4MzA2ZDg5NzE2
NDRiMzA5MzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRG
cmFtZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmgKQEAg
LTY3LDEwICs2Nyw2IEBAIHN0cnVjdCBSREZUQ29udGV4dDsKICNpbmNsdWRlIDxpcHBzLmg+CiAj
ZW5kaWYgLy8gVVNFKFdFQkFVRElPX0lQUCkKIAotI2lmIFBMQVRGT1JNKE5JWCkKLSNpbmNsdWRl
IDxwdWJsaWMvRkZURnJhbWUuaD4KLSNlbmRpZgotCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1
ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgpAQCAtMTgyLDEw
ICsxNzgsNiBAQCBwcml2YXRlOgogICAgIEF1ZGlvRmxvYXRBcnJheSBtX2ltYWdEYXRhOwogI2Vu
ZGlmIC8vIFVTRShXRUJBVURJT19JUFApCiAKLSNpZiBQTEFURk9STShOSVgpCi0gICAgT3duUHRy
PE5peDo6RkZURnJhbWU+IG1fZmZ0RnJhbWU7Ci0jZW5kaWYgLy8gUExBVEZPUk0oTklYKQotCiAj
aWYgVVNFKFdFQkFVRElPX09QRU5NQVhfRExfRkZUKQogICAgIHN0YXRpYyBPTVhGRlRTcGVjX1Jf
RjMyKiBjb250ZXh0Rm9yU2l6ZSh1bnNpZ25lZCBsb2cyRkZUU2l6ZSk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0hSVEZFbGV2YXRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSFJURkVsZXZhdGlvbi5jcHAKaW5kZXggNjA4Y2VkNGQ4
YmEzYTQ0ZjAyZWYzNmYyMDdlZGRlODkyMmZjZWE5Mi4uOTgyZDhkNDhmYTZmODUyOWU5MDhiZTMw
ZWJmZDBmMWNiZmJmOGM0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vSFJURkVsZXZhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
SFJURkVsZXZhdGlvbi5jcHAKQEAgLTU4LDcgKzU4LDcgQEAgY29uc3Qgc2l6ZV90IFJlc3BvbnNl
RnJhbWVTaXplID0gMjU2OwogLy8gVGhlIGltcHVsc2UgcmVzcG9uc2VzIG1heSBiZSByZXNhbXBs
ZWQgdG8gYSBkaWZmZXJlbnQgc2FtcGxlLXJhdGUgKGRlcGVuZGluZyBvbiB0aGUgYXVkaW8gaGFy
ZHdhcmUpIHdoZW4gdGhleSBhcmUgbG9hZGVkLgogY29uc3QgZmxvYXQgUmVzcG9uc2VTYW1wbGVS
YXRlID0gNDQxMDA7CiAKLSNpZiBQTEFURk9STShNQUMpIHx8IFVTRShXRUJBVURJT19HU1RSRUFN
RVIpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFVTRShXRUJBVURJT19H
U1RSRUFNRVIpCiAjZGVmaW5lIFVTRV9DT05DQVRFTkFURURfSU1QVUxTRV9SRVNQT05TRVMKICNl
bmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jYWlyby9XaWRnZXRC
YWNraW5nU3RvcmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tp
bmdTdG9yZS5oCmluZGV4IDdiMTZiYjUwMTViOTQ0NjNkMWUzZTA5N2MxNmE5NzMxYmUzNGZjY2Mu
LmY0YmIyNTUzZGE2N2Q2MzIxYzNiMDM5ODI5NTgyNDJiMGY0OGE3ZTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZS5oCkBAIC0zOSw4
ICszOSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHR5cGVkZWYgR3RrV2lkZ2V0KiBQbGF0Zm9y
bVdpZGdldDsKICNlbGlmIFBMQVRGT1JNKEVGTCkKIHR5cGVkZWYgRXZhc19PYmplY3QqIFBsYXRm
b3JtV2lkZ2V0OwotI2VsaWYgUExBVEZPUk0oTklYKQotdHlwZWRlZiB2b2lkKiBQbGF0Zm9ybVdp
ZGdldDsKICNlbmRpZgogCiBjbGFzcyBXaWRnZXRCYWNraW5nU3RvcmUgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmgKaW5kZXgg
YmJiM2JjMzQyNDQzMTZhOWM1ZmQ1NWNjMjU5ZmIwNGNmYjMwNjlkMi4uNDQ5YWI0NTNiYjg3MGVm
OTI4ZGU1MmU1MzEzMGIzY2ZkNzc3ZDU3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5oCkBAIC0yOSw3ICsyOSw3IEBACiAj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgogCi0jaWYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JNKEVGTCkgJiYgIVBMQVRGT1JN
KFdJTikgJiYgIVBMQVRGT1JNKE5JWCkKKyNpZiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0o
RUZMKSAmJiAhUExBVEZPUk0oV0lOKQogI2luY2x1ZGUgIkFOR0xFL1NoYWRlckxhbmcuaCIKICNl
bGlmIFBMQVRGT1JNKFdJTikKICNpbmNsdWRlICJHTFNMQU5HL1NoYWRlckxhbmcuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQbGF0Zm9ybURhdGEu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQbGF0Zm9ybURhdGEuaApp
bmRleCAzYmRiM2NjYTk4NGY5OTJmYjRlMTgyNGE5ODExYTVhNzczYWViOTEwLi5iZmE1NzA5NWU5
ZWQ0Y2U0MjRlOTMwMjBkM2ZmNWRjYmExOGE0MGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGxhdGZvcm1EYXRhLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oCkBAIC0yNSw3ICsyNSw3IEBA
CiAvLyBGSVhNRTogVGhpcyBpcyB0ZW1wb3JhcnkgdW50aWwgYWxsIHBvcnRzIHN3aXRjaCB0byB1
c2luZyB0aGlzIGZpbGUuCiAjaWYgVVNFKFdJTkdESSkKICNpbmNsdWRlICJ3aW5jZS9Gb250UGxh
dGZvcm1EYXRhLmgiCi0jZWxpZiBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKEdUSykgfHwgUExB
VEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShHVEspCiAjaW5jbHVk
ZSAiZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YS5oIgogI2Vsc2UKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5jcHAKaW5kZXggMTY5OTNhMTQ3OWNjMjE3
NTBlOTk2YmI2NjA4ZDI0Y2Q5MjllYjc1MS4uODI3NTJhZTlkY2RhY2Q1ZmVlMzRhYzJiODkyYWFk
ODhiNGFlMGM1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
R0xDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENv
bnRleHQuY3BwCkBAIC0xOSw3ICsxOSw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiR0xDb250ZXh0LmgiCiAKLSNpZiBVU0UoT1BFTkdMKSB8fCAoUExBVEZPUk0oTklYKSAmJiBV
U0UoT1BFTkdMX0VTXzIpKQorI2lmIFVTRShPUEVOR0wpCiAKICNpZiBVU0UoRUdMKQogI2luY2x1
ZGUgIkdMQ29udGV4dEVHTC5oIgpAQCAtMTU0LDcgKzE1NCw2IEBAIFBhc3NPd25QdHI8R0xDb250
ZXh0PiBHTENvbnRleHQ6OmNyZWF0ZUNvbnRleHRGb3JXaW5kb3coR0xOYXRpdmVXaW5kb3dUeXBl
IHdpbmRvCiAgICAgfQogI2VuZGlmCiAKLSNpZiAhUExBVEZPUk0oTklYKQogI2lmIFVTRShHTFgp
CiAgICAgaWYgKE93blB0cjxHTENvbnRleHQ+IGdseENvbnRleHQgPSBHTENvbnRleHRHTFg6OmNy
ZWF0ZUNvbnRleHQod2luZG93SGFuZGxlLCBzaGFyaW5nQ29udGV4dCkpCiAgICAgICAgIHJldHVy
biBnbHhDb250ZXh0LnJlbGVhc2UoKTsKQEAgLTE2Myw3ICsxNjIsNiBAQCBQYXNzT3duUHRyPEdM
Q29udGV4dD4gR0xDb250ZXh0OjpjcmVhdGVDb250ZXh0Rm9yV2luZG93KEdMTmF0aXZlV2luZG93
VHlwZSB3aW5kbwogICAgIGlmIChPd25QdHI8R0xDb250ZXh0PiBlZ2xDb250ZXh0ID0gR0xDb250
ZXh0RUdMOjpjcmVhdGVDb250ZXh0KHdpbmRvd0hhbmRsZSwgc2hhcmluZ0NvbnRleHQpKQogICAg
ICAgICByZXR1cm4gZWdsQ29udGV4dC5yZWxlYXNlKCk7CiAjZW5kaWYKLSNlbmRpZgogICAgIHJl
dHVybiBudWxscHRyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HTENvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dM
Q29udGV4dC5oCmluZGV4IDRlOWQzOWUzMTVkYTlhNTgyZjNiYTAwYWYzZWJhNGU2ZjcxZDA3ODYu
LjAzYjU3YjVlODI0NDQ4OGE1ZjllNjIyZjcwNjQ1OThkNjI4ZjVmMjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oCkBAIC0yNSw3ICsyNSw3IEBACiAj
aW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4K
IAotI2lmIFVTRShFR0wpICYmICFQTEFURk9STShHVEspICYmICFQTEFURk9STShOSVgpCisjaWYg
VVNFKEVHTCkgJiYgIVBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJlZ2xwbGF0Zm9ybS5oIgogdHlw
ZWRlZiBFR0xOYXRpdmVXaW5kb3dUeXBlIEdMTmF0aXZlV2luZG93VHlwZTsKICNlbHNlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQz
RC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0Qu
aAppbmRleCAzZWY5MGQzOGVhOGNkN2FiMDUyZTRkMGRmMDYxNzhjNDdkMWFmODMzLi5jNGQ3MmE3
MWJjYjViNTVhNzExMWQ2YjdjMTdiM2YzMjY4Y2UyMmIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKQEAgLTYwLDcgKzYw
LDcgQEAKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiBPQkpDX0NMQVNTIENBTGF5ZXI7CiBP
QkpDX0NMQVNTIFdlYkdMTGF5ZXI7Ci0jZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVG
TCkgfHwgUExBVEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwp
CiB0eXBlZGVmIHVuc2lnbmVkIGludCBHTHVpbnQ7CiAjZW5kaWYKIApAQCAtOTg3LDcgKzk4Nyw3
IEBAIHByaXZhdGU6CiAKICAgICBib29sIHJlc2hhcGVGQk9zKGNvbnN0IEludFNpemUmKTsKICAg
ICB2b2lkIHJlc29sdmVNdWx0aXNhbXBsaW5nSWZOZWNlc3NhcnkoY29uc3QgSW50UmVjdCYgPSBJ
bnRSZWN0KCkpOwotI2lmIChQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkpICYmIFVTRShH
UkFQSElDU19TVVJGQUNFKQorI2lmIFBMQVRGT1JNKEVGTCkgJiYgVVNFKEdSQVBISUNTX1NVUkZB
Q0UpCiAgICAgdm9pZCBjcmVhdGVHcmFwaGljc1N1cmZhY2VzKGNvbnN0IEludFNpemUmKTsKICNl
bmRpZgogCkBAIC0xMDkyLDcgKzEwOTIsNyBAQCBwcml2YXRlOgogCiAgICAgT3duUHRyPFNoYWRl
ck5hbWVIYXNoPiBuYW1lSGFzaE1hcEZvclNoYWRlcnM7CiAKLSNpZiAoKFBMQVRGT1JNKEdUSykg
fHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkpICYmIFVT
RShPUEVOR0xfRVNfMikpCisjaWYgKChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwg
UExBVEZPUk0oV0lOKSkgJiYgVVNFKE9QRU5HTF9FU18yKSkKICAgICBmcmllbmQgY2xhc3MgRXh0
ZW5zaW9uczNET3BlbkdMRVM7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMzRE9wZW5HTEVTPiBtX2V4
dGVuc2lvbnM7CiAjZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5jcHAKaW5kZXggZjczMjRkMGQ2
OTZhMDI4MGNkMDIzMGU4NThmY2FmZTU1YWE0ZDE1MC4uMDQ5ZmRkMmQxMmYxZGUyNWExMjQ2ODI5
OWM5ZDkyNGZlZTRhNDU3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3BwCkBAIC0yNiwxMCAr
MjYsNiBAQAogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5jbHVkZSA8d3RmL1N0ZExp
YkV4dHJhcy5oPgogCi0jaWYgUExBVEZPUk0oTklYKSAmJiBVU0UoRUdMKQotI2luY2x1ZGUgIkdM
Q29udGV4dEZyb21DdXJyZW50RUdMLmgiCi0jZW5kaWYKLQogI2lmIFVTRShDQUlSTykKICNpbmNs
dWRlICJQbGF0Zm9ybUNvbnRleHRDYWlyby5oIgogI2VuZGlmCkBAIC02Myw5ICs1OSw2IEBAIEdy
YXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6R3JhcGhpY3NDb250ZXh0M0RQcml2YXRlKEdyYXBoaWNz
Q29udGV4dDNEKiBjb250ZXh0LCBHCiAgICAgICAgIG1fZ2xDb250ZXh0ID0gR0xDb250ZXh0Ojpj
cmVhdGVPZmZzY3JlZW5Db250ZXh0KEdMQ29udGV4dDo6c2hhcmluZ0NvbnRleHQoKSk7CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgR3JhcGhpY3NDb250ZXh0M0Q6OlJlbmRlclRvQ3VycmVudEdM
Q29udGV4dDoKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShFR0wpCi0gICAgICAgIG1fZ2xDb250
ZXh0ID0gR0xDb250ZXh0RnJvbUN1cnJlbnRFR0w6OmNyZWF0ZUZyb21DdXJyZW50R0xDb250ZXh0
KCk7Ci0jZW5kaWYKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBHcmFwaGljc0NvbnRleHQzRDo6
UmVuZGVyRGlyZWN0bHlUb0hvc3RXaW5kb3c6CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMRVNT
aGltcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMRVNTaGltcy5o
CmluZGV4IGM0YzYwNDVjODY5N2M1YWFkYmUwZmZkOGZlYjI3YjgwNWQ2NjQ4ZjIuLmYyOTkxNTZj
ODBkN2QwMjAyNzIyMThhNmNjYTcwY2Y4ZmE4NThiMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTEVTU2hpbXMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xFU1NoaW1zLmgKQEAgLTI2LDcgKzI2LDcgQEAKICNp
Zm5kZWYgT3BlbkdMRVNTaGltc19oCiAjZGVmaW5lIE9wZW5HTEVTU2hpbXNfaAogCi0jaWYgUExB
VEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0o
TklYKQorI2lmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4p
CiAjZGVmaW5lIGdsQmluZEZyYW1lYnVmZmVyRVhUIGdsQmluZEZyYW1lYnVmZmVyCiAjZGVmaW5l
IGdsRnJhbWVidWZmZXJUZXh0dXJlMkRFWFQgZ2xGcmFtZWJ1ZmZlclRleHR1cmUyRAogI2RlZmlu
ZSBnbEJpbmRSZW5kZXJidWZmZXJFWFQgZ2xCaW5kUmVuZGVyYnVmZmVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAKaW5kZXggNTA3MzRmOTI1
ZTk4M2E3NDU4ODE5NGE5YWQ2ODFmYzQwNzgyNTE3ZS4uOTE2YTkwOGMyNDA2NjgwZjcyYzFmNzQw
YjIzOTEzOTQ1ODU4NDI2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvT3BlbkdMU2hpbXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL09wZW5HTFNoaW1zLmNwcApAQCAtMjYsMTAgKzI2LDYgQEAKICNpbmNsdWRlIDxkbGZjbi5o
PgogI2VuZGlmCiAKLSNpZiBQTEFURk9STShOSVgpICYmIFVTRShFR0wpCi0jaW5jbHVkZSA8RUdM
L2VnbC5oPgotI2VuZGlmCi0KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTQ2LDExICs0Miw2IEBAIHN0YXRpYyB2b2lk
KiBnZXRQcm9jQWRkcmVzcyhjb25zdCBjaGFyKiBwcm9jTmFtZSkKIHsKICAgICByZXR1cm4gR2V0
UHJvY0FkZHJlc3MoR2V0TW9kdWxlSGFuZGxlQSgibGliR0xFU3YyIiksIHByb2NOYW1lKTsKIH0K
LSNlbGlmIFBMQVRGT1JNKE5JWCkgJiYgVVNFKEVHTCkKLXN0YXRpYyB2b2lkKiBnZXRQcm9jQWRk
cmVzcyhjb25zdCBjaGFyKiBwcm9jTmFtZSkKLXsKLSAgICByZXR1cm4gcmVpbnRlcnByZXRfY2Fz
dDx2b2lkKj4oZWdsR2V0UHJvY0FkZHJlc3MocHJvY05hbWUpKTsKLX0KICNlbHNlCiB0eXBlZGVm
IHZvaWQqICgqZ2xHZXRQcm9jQWRkcmVzc1R5cGUpIChjb25zdCBjaGFyKiBwcm9jTmFtZSk7CiBz
dGF0aWMgdm9pZCogZ2V0UHJvY0FkZHJlc3MoY29uc3QgY2hhciogcHJvY05hbWUpCkBAIC0xMDgs
MTkgKzk5LDkgQEAgc3RhdGljIHZvaWQqIGxvb2t1cE9wZW5HTEZ1bmN0aW9uQWRkcmVzcyhjb25z
dCBjaGFyKiBmdW5jdGlvbk5hbWUsIGJvb2wqIHN1Y2Nlc3MKICAgICByZXR1cm4gdGFyZ2V0Owog
fQogCi0jaWYgUExBVEZPUk0oTklYKSAmJiBVU0UoT1BFTkdMX0VTXzIpCi0KLS8vIFdpdGggQW5n
bGUgb25seSBFR0wvR0xFUzIgZXh0ZW5zaW9ucyBhcmUgYXZhaWxhYmxlIHRocm91Z2ggZWdsR2V0
UHJvY0FkZHJlc3MsIG5vdCB0aGUgcmVndWxhciBzdGFuZGFyZGl6ZWQgZnVuY3Rpb25zLgotI2Rl
ZmluZSBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlkoRnVuY3Rpb25OYW1lLCBzdWNjZXNzKSBc
Ci0gICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSByZWludGVycHJldF9j
YXN0PEZ1bmN0aW9uTmFtZSMjVHlwZT4oOjpGdW5jdGlvbk5hbWUpCi0KLSNlbHNlCi0KICNkZWZp
bmUgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKEZ1bmN0aW9uTmFtZSwgc3VjY2VzcykgXAog
ICAgIG9wZW5HTEZ1bmN0aW9uVGFibGUoKS0+RnVuY3Rpb25OYW1lID0gcmVpbnRlcnByZXRfY2Fz
dDxGdW5jdGlvbk5hbWUjI1R5cGU+KGxvb2t1cE9wZW5HTEZ1bmN0aW9uQWRkcmVzcygjRnVuY3Rp
b25OYW1lLCAmc3VjY2VzcykpCiAKLSNlbmRpZgotCiAjZGVmaW5lIEFTU0lHTl9GVU5DVElPTl9U
QUJMRV9FTlRSWV9FWFQoRnVuY3Rpb25OYW1lKSBcCiAgICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgp
LT5GdW5jdGlvbk5hbWUgPSByZWludGVycHJldF9jYXN0PEZ1bmN0aW9uTmFtZSMjVHlwZT4obG9v
a3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKCNGdW5jdGlvbk5hbWUpKQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuaAppbmRleCBmYTY5NmYzMTJkMWNj
ZmZjZTVlM2M3OGU2ZTAwOGM5NjI3YThlZWY3Li5jMGU2ZTYwMTJmZDlkN2Y0Zjk3ZmEwOGNjZWZi
NmVlOTUxNGIwNWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9PcGVuR0xTaGltcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09w
ZW5HTFNoaW1zLmgKQEAgLTIwLDEyICsyMCw4IEBACiAjaWZuZGVmIE9wZW5HTFNoaW1zX2gKICNk
ZWZpbmUgT3BlbkdMU2hpbXNfaAogCi0jaWYgUExBVEZPUk0oTklYKSAmJiBVU0UoT1BFTkdMX0VT
XzIpCi0jaW5jbHVkZSA8R0xFUzIvZ2wyLmg+Ci0jZWxzZQogI2luY2x1ZGUgPEdML2dsLmg+CiAj
aW5jbHVkZSA8R0wvZ2xleHQuaD4KLSNlbmRpZgogCiAjaWYgZGVmaW5lZChHTF9FU19WRVJTSU9O
XzJfMCkKIC8vIFNvbWUgb3BlbkdMIEVTIHN5c3RlbXMgbWlzcyB0aGlzIHR5cGVkZWYuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybUxheWVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybUxheWVyLmgKaW5kZXgg
NDE5MDhlZjQwMzY3OWI1OTRhMjkwMGQ0ZjIxYjQ0NDVlNDA1NGQyZi4uYTE4ZjliOWMzZjQ5NzQ3
ZjFkZDdlMmM2YTk2OGE1NTY3ODgyYTRlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1MYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL1BsYXRmb3JtTGF5ZXIuaApAQCAtNDUsNyArNDUsNyBAQCBjbGFzcyBUZXh0
dXJlTWFwcGVyUGxhdGZvcm1MYXllcjsKIHR5cGVkZWYgVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5
ZXIgUGxhdGZvcm1MYXllcjsKIH07CiAjZW5kaWYKLSNlbGlmIFBMQVRGT1JNKEVGTCkgfHwgUExB
VEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oRUZMKQogI2lmIFVTRShURVhUVVJFX01BUFBFUikK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9u
dFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZyZWV0eXBlL0ZvbnRQbGF0Zm9ybURhdGFGcmVlVHlwZS5jcHAKaW5kZXggNTVjZDljZWQw
ZmQ5ZGIxZmE5MzM4OWYyYjNhOWNkMzA4M2FlNjZjZS4uMGI2Y2RkMWEyNDA5OWM3NWFiZTBlZTdj
NTZjMTc2NDI0YzgzYjBjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250UGxhdGZvcm1EYXRhRnJlZVR5
cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAjaW5jbHVkZSBGVF9UUlVFVFlQRV9UQUJMRVNfSAog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCi0jaWYgIVBMQVRGT1JNKEVGTCkgJiYg
IVBMQVRGT1JNKE5JWCkKKyNpZiAhUExBVEZPUk0oRUZMKQogI2luY2x1ZGUgPGdkay9nZGsuaD4K
ICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9v
cGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwCmluZGV4IDExNDZmYTFhZGM5NGQy
ZmYxNjAxMDBlNGViYTliNTJlYTRhMzE2NGMuLmY4MzIxY2FjMDQwNTVlNGIyMzM2ZjZjMTNkY2I4
MWI5MzFjYmJiNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuY3BwCkBAIC0zOCw3ICszOCw3
IEBACiAjZWxpZiBQTEFURk9STShNQUMpCiAjaW5jbHVkZSAiQU5HTEUvU2hhZGVyTGFuZy5oIgog
I2luY2x1ZGUgPE9wZW5HTC9nbC5oPgotI2VsaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShF
RkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKQorI2VsaWYgUExBVEZPUk0oR1RL
KSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikKICNpbmNsdWRlICJPcGVuR0xTaGlt
cy5oIgogI2VuZGlmCiAKQEAgLTg2LDcgKzg2LDcgQEAgUGxhdGZvcm0zRE9iamVjdCBFeHRlbnNp
b25zM0RPcGVuR0w6OmNyZWF0ZVZlcnRleEFycmF5T0VTKCkKIHsKICAgICBtX2NvbnRleHQtPm1h
a2VDb250ZXh0Q3VycmVudCgpOwogICAgIEdMdWludCBhcnJheSA9IDA7Ci0jaWYgKFBMQVRGT1JN
KEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkp
CisjaWYgKFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pKQog
ICAgIGlmIChpc1ZlcnRleEFycmF5T2JqZWN0U3VwcG9ydGVkKCkpCiAgICAgICAgIGdsR2VuVmVy
dGV4QXJyYXlzKDEsICZhcnJheSk7CiAjZWxpZiBkZWZpbmVkKEdMX0FQUExFX3ZlcnRleF9hcnJh
eV9vYmplY3QpICYmIEdMX0FQUExFX3ZlcnRleF9hcnJheV9vYmplY3QKQEAgLTEwMSw3ICsxMDEs
NyBAQCB2b2lkIEV4dGVuc2lvbnMzRE9wZW5HTDo6ZGVsZXRlVmVydGV4QXJyYXlPRVMoUGxhdGZv
cm0zRE9iamVjdCBhcnJheSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9jb250ZXh0LT5tYWtl
Q29udGV4dEN1cnJlbnQoKTsKLSNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8
IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKSkKKyNpZiAoUExBVEZPUk0oR1RLKSB8fCBQ
TEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikpCiAgICAgaWYgKGlzVmVydGV4QXJyYXlPYmpl
Y3RTdXBwb3J0ZWQoKSkKICAgICAgICAgZ2xEZWxldGVWZXJ0ZXhBcnJheXMoMSwgJmFycmF5KTsK
ICNlbGlmIGRlZmluZWQoR0xfQVBQTEVfdmVydGV4X2FycmF5X29iamVjdCkgJiYgR0xfQVBQTEVf
dmVydGV4X2FycmF5X29iamVjdApAQCAtMTE1LDcgKzExNSw3IEBAIEdDM0Rib29sZWFuIEV4dGVu
c2lvbnMzRE9wZW5HTDo6aXNWZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0IGFycmF5KQog
ICAgICAgICByZXR1cm4gR0xfRkFMU0U7CiAKICAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3Vy
cmVudCgpOwotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0o
V0lOKSB8fCBQTEFURk9STShOSVgpKQorI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVG
TCkgfHwgUExBVEZPUk0oV0lOKSkKICAgICBpZiAoaXNWZXJ0ZXhBcnJheU9iamVjdFN1cHBvcnRl
ZCgpKQogICAgICAgICByZXR1cm4gZ2xJc1ZlcnRleEFycmF5KGFycmF5KTsKICNlbGlmIGRlZmlu
ZWQoR0xfQVBQTEVfdmVydGV4X2FycmF5X29iamVjdCkgJiYgR0xfQVBQTEVfdmVydGV4X2FycmF5
X29iamVjdApAQCAtMTMxLDcgKzEzMSw3IEBAIHZvaWQgRXh0ZW5zaW9uczNET3BlbkdMOjpiaW5k
VmVydGV4QXJyYXlPRVMoUGxhdGZvcm0zRE9iamVjdCBhcnJheSkKICNlbmRpZgogCiAgICAgbV9j
b250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLSNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFU
Rk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oTklYKSkKKyNpZiAoUExBVEZP
Uk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikpCiAgICAgaWYgKGlzVmVy
dGV4QXJyYXlPYmplY3RTdXBwb3J0ZWQoKSkKICAgICAgICAgZ2xCaW5kVmVydGV4QXJyYXkoYXJy
YXkpOwogI2VsaWYgZGVmaW5lZChHTF9BUFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0KSAmJiBHTF9B
UFBMRV92ZXJ0ZXhfYXJyYXlfb2JqZWN0CkBAIC0xODUsNyArMTg1LDcgQEAgYm9vbCBFeHRlbnNp
b25zM0RPcGVuR0w6OnN1cHBvcnRzRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgbmFtZSkKIAogICAg
IC8vIEdMX09FU192ZXJ0ZXhfYXJyYXlfb2JqZWN0CiAgICAgaWYgKG5hbWUgPT0gIkdMX09FU192
ZXJ0ZXhfYXJyYXlfb2JqZWN0IikgewotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVG
TCkgfHwgUExBVEZPUk0oTklYKSkKKyNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwp
KQogICAgICAgICByZXR1cm4gbV9hdmFpbGFibGVFeHRlbnNpb25zLmNvbnRhaW5zKCJHTF9BUkJf
dmVydGV4X2FycmF5X29iamVjdCIpOwogI2Vsc2UKICAgICAgICAgcmV0dXJuIG1fYXZhaWxhYmxl
RXh0ZW5zaW9ucy5jb250YWlucygiR0xfQVBQTEVfdmVydGV4X2FycmF5X29iamVjdCIpOwpAQCAt
MjM2LDcgKzIzNiw3IEBAIFN0cmluZyBFeHRlbnNpb25zM0RPcGVuR0w6OmdldEV4dGVuc2lvbnMo
KQogICAgIHJldHVybiBTdHJpbmcocmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oOjpnbEdl
dFN0cmluZyhHTF9FWFRFTlNJT05TKSkpOwogfQogCi0jaWYgKFBMQVRGT1JNKEdUSykgfHwgUExB
VEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkpCisjaWYgKFBMQVRG
T1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pKQogYm9vbCBFeHRlbnNp
b25zM0RPcGVuR0w6OmlzVmVydGV4QXJyYXlPYmplY3RTdXBwb3J0ZWQoKQogewogICAgIHN0YXRp
YyBjb25zdCBib29sIHN1cHBvcnRzVmVydGV4QXJyYXlPYmplY3QgPSBzdXBwb3J0cygiR0xfT0VT
X3ZlcnRleF9hcnJheV9vYmplY3QiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0wuaAppbmRleCA1Y2Uw
MjlhMWUzODUzZjlmZDE1NDQ0ZWNiMDE3NjhhOGE5YTAyY2Q3Li44MWM1ZTQ5ZDVkOGY1YTk5ODFh
OGVkMjNiMTliMWYyZDg2OTAxOGRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMzRE9wZW5HTC5oCkBAIC02MCw3
ICs2MCw3IEBAIHByb3RlY3RlZDoKIAogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c0V4dGVuc2lv
bihjb25zdCBXVEY6OlN0cmluZyYpOwogICAgIHZpcnR1YWwgU3RyaW5nIGdldEV4dGVuc2lvbnMo
KTsKLSNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKFdJTikg
fHwgUExBVEZPUk0oTklYKSkKKyNpZiAoUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpIHx8
IFBMQVRGT1JNKFdJTikpCiBwcml2YXRlOgogICAgIGJvb2wgaXNWZXJ0ZXhBcnJheU9iamVjdFN1
cHBvcnRlZCgpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9uczNET3BlbkdMQ29tbW9uLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xDb21tb24uY3Bw
CmluZGV4IDg0ODk5NjY3NTQyYjY4ZDliODRiNWNmNTgxNDZlZTE4MmJlODgyN2MuLmYxNzEzZDg5
NWJlZTczMjZmNTM0YjJkM2ZkMWMwMmU2YTE2ZGU3MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25zM0RPcGVuR0xDb21tb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9FeHRlbnNpb25z
M0RPcGVuR0xDb21tb24uY3BwCkBAIC00MSw3ICs0MSw3IEBACiAjaW5jbHVkZSA8R0xFUzIvZ2wy
ZXh0Lmg+CiAjZWxpZiBQTEFURk9STShNQUMpCiAjaW5jbHVkZSA8T3BlbkdML2dsLmg+Ci0jZWxp
ZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFU
Rk9STShOSVgpCisjZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZP
Uk0oV0lOKQogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0V4dGVuc2lvbnMz
RE9wZW5HTEVTLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0
ZW5zaW9uczNET3BlbkdMRVMuaAppbmRleCAzMjZkMjkyNTMxNmIzMDdmMTEwMTAyMjY2ZjM1ZWI4
YTY1NDU5YzQ0Li43YzQwNTY2ZTkzMGY3NTY3ZmIxYzdiYTEwMWZkOGRhYWI5MDdlZTlmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvRXh0ZW5zaW9u
czNET3BlbkdMRVMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVu
Z2wvRXh0ZW5zaW9uczNET3BlbkdMRVMuaApAQCAtNTcsMTEgKzU3LDYgQEAgdHlwZWRlZiB2b2lk
IChHTF9BUElFTlRSWVAgUEZOR0xHRVROVU5JRk9STUZWRVhUUFJPQykgKEdMdWludCBwcm9ncmFt
LCBHTGludCBsb2MKIHR5cGVkZWYgdm9pZCAoR0xfQVBJRU5UUllQIFBGTkdMR0VUTlVOSUZPUk1J
VkVYVFBST0MpIChHTHVpbnQgcHJvZ3JhbSwgR0xpbnQgbG9jYXRpb24sIEdDM0RzaXplaSBidWZT
aXplLCBHTGludCAqcGFyYW1zKTsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTklYKSAmJiBVU0Uo
T1BFTkdMX0VTXzIpICYmICFHTF9JTUdfbXVsdGlzYW1wbGVkX3JlbmRlcl90b190ZXh0dXJlCi0v
LyBvbiByUGksIFBGTkdMRlJBTUVCVUZGRVJURVhUVVJFMkRNVUxUSVNBTVBMRUlNRyBpcyBjYWxs
ZWQgUEZOR0xDTElQUExBTkVYSU1HLgotdHlwZWRlZiBQRk5HTENMSVBQTEFORVhJTUcgUEZOR0xG
UkFNRUJVRkZFUlRFWFRVUkUyRE1VTFRJU0FNUExFSU1HOwotI2VuZGlmCi0KIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgRXh0ZW5zaW9uczNET3BlbkdMRVMgOiBwdWJsaWMgRXh0ZW5zaW9u
czNET3BlbkdMQ29tbW9uIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwCmlu
ZGV4IDYzOTQxZTg1NTc2N2VhZjlkMzA2OTczY2E5OTM0YjdhNzhjZTI0MzEuLmUwNDg0MThiNGQ0
MmQ2MzA4MWQ4MjIwNTU3NDI4ZjE4ODVlOTY1MjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4
dDNET3BlbkdMLmNwcApAQCAtNTEsNyArNTEsNyBAQAogI2RlZmluZSBHTF9SR0IzMkZfQVJCICAg
ICAgICAgICAgICAgICAgICAgICAweDg4MTUKICNlbGlmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRl
IDxPcGVuR0wvZ2wuaD4KLSNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oRUZMKSB8fCBQ
TEFURk9STShXSU4pIHx8IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEdUSykgfHwgUExB
VEZPUk0oRUZMKSB8fCBQTEFURk9STShXSU4pCiAjaW5jbHVkZSAiT3BlbkdMU2hpbXMuaCIKICNl
bmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVu
Z2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMQ29tbW9uLmNwcApp
bmRleCBjYzNkMzk4YTk2MjI5YjE4NTg4NjQ4YTI5NDUwYjhjZGQ1ZmEwODVmLi5iNDExYzA4NDRh
NjU5ZWZlZGM1NDk0OTA5OWM0NzliNzkxZjA0OGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGlj
c0NvbnRleHQzRE9wZW5HTENvbW1vbi5jcHAKQEAgLTY4LDcgKzY4LDcgQEAKICNpbmNsdWRlICJP
cGVuR0xFU1NoaW1zLmgiCiAjZWxpZiBQTEFURk9STShNQUMpCiAjaW5jbHVkZSA8T3BlbkdML2ds
Lmg+Ci0jZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lO
KSB8fCBQTEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkg
fHwgUExBVEZPUk0oV0lOKQogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAjZW5kaWYKICNlbmRp
ZgpAQCAtMjcxLDcgKzI3MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnJlc2hhcGUoaW50
IHdpZHRoLCBpbnQgaGVpZ2h0KQogCiAgICAgbWFya0NvbnRleHRDaGFuZ2VkKCk7CiAKLSNpZiAo
UExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpKSAmJiBVU0UoR1JBUEhJQ1NfU1VSRkFDRSkK
KyNpZiBQTEFURk9STShFRkwpICYmIFVTRShHUkFQSElDU19TVVJGQUNFKQogICAgIDo6Z2xGbHVz
aCgpOyAvLyBNYWtlIHN1cmUgYWxsIEdMIGNhbGxzIGhhdmUgYmVlbiBjb21taXR0ZWQgYmVmb3Jl
IHJlc2l6aW5nLgogICAgIGNyZWF0ZUdyYXBoaWNzU3VyZmFjZXMoSW50U2l6ZSh3aWR0aCwgaGVp
Z2h0KSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL29wZW5nbC9UZW1wb3JhcnlPcGVuR0xTZXR0aW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL29wZW5nbC9UZW1wb3JhcnlPcGVuR0xTZXR0aW5nLmNwcAppbmRleCBk
ZWE4ZGVhMThlOTM3MjVmZWMyMThjMzZlZmI4MjBkMDhkYTUyYTdlLi5hMDE2Mzc3MGNkZDc5ZmQx
ZjEwYzAxYTAzMWFmYmI0NjJhNjlkYTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9vcGVuZ2wvVGVtcG9yYXJ5T3BlbkdMU2V0dGluZy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL1RlbXBvcmFyeU9wZW5HTFNldHRp
bmcuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAjaW5jbHVkZSA8T3BlbkdMRVMvRVMyL2dsLmg+CiAj
ZWxpZiBQTEFURk9STShNQUMpCiAjaW5jbHVkZSA8T3BlbkdML2dsLmg+Ci0jZWxpZiBQTEFURk9S
TShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShOSVgp
CisjZWxpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oV0lOKQog
I2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmgKaW5kZXggNDUw
Y2QwZTJmMmU3MjI5YjE4YjU5NzEwMGY5NzcxMzkwMDE2OGE4MC4uNGM4MGQxMzhiODY1NGM3YWY4
YTk5ODdhMzQwMmYwNGE3Y2UzODJjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oCkBAIC0yMiw3ICsyMiw3IEBA
CiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpICYmIFVTRShURVhUVVJFX01BUFBF
UikKIAotI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklY
KSkgJiYgVVNFKE9QRU5HTF9FU18yKQorI2lmIChQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKEVG
TCkpICYmIFVTRShPUEVOR0xfRVNfMikKICNkZWZpbmUgVEVYTUFQX09QRU5HTF9FU18yCiAjZW5k
aWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJj
ZUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRs
ZS5oCmluZGV4IDZhYTFhMTYwZTI0YzVmZjBiMDMyYTEzZjNjYjAwYjUyZWVhZTAyMTYuLmU1NWFk
MDAzOWM5YTdjNmRlZWIxZmY1NTliYzkzYjg1OGYxNzljNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VIYW5kbGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlSGFuZGxlLmgKQEAgLTE1MCw3ICsxNTAsNyBA
QCBwdWJsaWM6CiAKICNlbmRpZiAvLyBVU0UoQ0ZORVRXT1JLKQogCi0jaWYgKFBMQVRGT1JNKFdJ
TikgfHwgUExBVEZPUk0oTklYKSkgJiYgVVNFKENVUkwpCisjaWYgUExBVEZPUk0oV0lOKSAmJiBV
U0UoQ1VSTCkKICAgICBzdGF0aWMgdm9pZCBzZXRIb3N0QWxsb3dzQW55SFRUUFNDZXJ0aWZpY2F0
ZShjb25zdCBTdHJpbmcmKTsKICNlbmRpZgogI2lmIFBMQVRGT1JNKFdJTikgJiYgVVNFKENVUkwp
ICYmIFVTRShDRikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFj
a2FnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblBhY2thZ2UuY3BwCmluZGV4
IGFhNWQ2MWQ1YzJiOWJiNDA4YjcxY2NjNDFiZTQzOGUxZjA5NDA2ZWEuLmIxNDlkM2FjZmQzZWZl
ODFkMDcyNmNhNTdjZjcyNGQwZTA3OGI0ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
dWdpbnMvUGx1Z2luUGFja2FnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5QYWNrYWdlLmNwcApAQCAtMTc2LDcgKzE3Niw3IEBAIFBhc3NSZWZQdHI8UGx1Z2luUGFja2Fn
ZT4gUGx1Z2luUGFja2FnZTo6Y3JlYXRlUGFja2FnZUZyb21DYWNoZShjb25zdCBTdHJpbmcmIHBh
CiB9CiAjZW5kaWYKIAotI2lmIGRlZmluZWQoWFBfVU5JWCkgJiYgIVBMQVRGT1JNKE5JWCkKKyNp
ZiBkZWZpbmVkKFhQX1VOSVgpCiB2b2lkIFBsdWdpblBhY2thZ2U6OmRldGVybWluZVF1aXJrcyhj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKQogewogICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc0ph
dmFBcHBsZXRNSU1FVHlwZShtaW1lVHlwZSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsdWdpbnMvUGx1Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZp
ZXcuY3BwCmluZGV4IGY4NDVjYzAyYTAwM2JiY2M5MDkwMzFlMzYzODRmY2E4NmMyODJiYzEuLmE3
ZWU1MzJkNWUxNTRjMDUxZTI5MWEwMzBkOTM2NDJmYzZlYWJiYzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1
Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtODMzLDcgKzgzMyw3IEBAIFBsdWdpblZpZXc6OlBsdWdp
blZpZXcoRnJhbWUqIHBhcmVudEZyYW1lLCBjb25zdCBJbnRTaXplJiBzaXplLCBQbHVnaW5QYWNr
YWdlKiBwCiAgICAgLCBtX3dtUHJpbnRIREMoMCkKICAgICAsIG1faGF2ZVVwZGF0ZWRQbHVnaW5X
aWRnZXQoZmFsc2UpCiAjZW5kaWYKLSNpZiBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkK
KyNpZiBQTEFURk9STShFRkwpCiAgICAgLCBtX3dpbmRvdygwKQogI2VuZGlmCiAjaWYgZGVmaW5l
ZChYUF9NQUNPU1gpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZp
ZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5oCmluZGV4IDhhMzY2MjI2
ZTQ3NmFmMTA0M2ZkZmYwYzc0YzhhNDk3MGYwODZmYjcuLjVmZDM4ZDJmZGFjNTI5ODhjNmNmMWI0
OGMxZTE1NjUxM2Q0M2RmNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1
Z2luVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5oCkBAIC0z
NTQsNyArMzU0LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBib29sIG1faGF2ZVVw
ZGF0ZWRQbHVnaW5XaWRnZXQ7CiAjZW5kaWYKIAotI2lmIChQTEFURk9STShHVEspICYmIE9TKFdJ
TkRPV1MpKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKKyNpZiAoUExBVEZPUk0o
R1RLKSAmJiBPUyhXSU5ET1dTKSkgfHwgUExBVEZPUk0oRUZMKQogICAgICAgICAvLyBPbiBNYWMg
T1NYIGFuZCBRdC9XaW5kb3dzIHRoZSBwbHVnaW4gZG9lcyBub3QgaGF2ZSBpdHMgb3duIG5hdGl2
ZSB3aWRnZXQsCiAgICAgICAgIC8vIGJ1dCBpcyB1c2luZyB0aGUgY29udGFpbmluZyB3aW5kb3cg
YXMgaXRzIHJlZmVyZW5jZSBmb3IgcG9zaXRpb25pbmcvcGFpbnRpbmcuCiAgICAgICAgIFBsYXRm
b3JtUGx1Z2luV2lkZ2V0IG1fd2luZG93OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1
Z2lucy9QbHVnaW5WaWV3Tm9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZp
ZXdOb25lLmNwcAppbmRleCBiOTYyYzA2ZDg5NWIyZGJlMWNlNjM1ZjFhMmZhYmRjMDM2Nzc3MzZl
Li45OTM1NDFlNDk5ZjU1OTI3MTY0NWE3MTNjNmNlNjU5ZTNkMjVjNmY0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXdOb25lLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbHVnaW5zL1BsdWdpblZpZXdOb25lLmNwcApAQCAtMTMyLDcgKzEzMiw3IEBAIHZvaWQg
UGx1Z2luVmlldzo6aGFuZGxlRm9jdXNPdXRFdmVudCgpCiAvLyBwb3J0cyB1c2luZyBQbHVnaW5W
aWV3LCBidXQgdW50aWwgdGhlbiwgaWYgbmV3IGZ1bmN0aW9ucyBsaWtlIHRoaXMgYXJlIAogLy8g
YWRkZWQsIHBsZWFzZSBtYWtlIHN1cmUgdGhleSBoYXZlIHRoZSBwcm9wZXIgcGxhdGZvcm0gI2lm
cyBzbyB0aGF0IGNoYW5nZXMKIC8vIGRvIG5vdCBicmVhayBwb3J0cyB3aG8gY29tcGlsZSBib3Ro
IHRoaXMgZmlsZSBhbmQgUGx1Z2luVmlldy5jcHAuICAgCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBQ
TEFURk9STShFRkwpIHx8IE9TKFdJTkNFKSB8fCBQTEFURk9STShOSVgpCisjaWYgUExBVEZPUk0o
TUFDKSB8fCBQTEFURk9STShFRkwpIHx8IE9TKFdJTkNFKQogI2lmIEVOQUJMRShORVRTQ0FQRV9Q
TFVHSU5fQVBJKQogdm9pZCBQbHVnaW5WaWV3OjprZWVwQWxpdmUoTlBQKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwCmluZGV4IGU2ZTBmYTA4NTBj
NWM4MGE4ZjM5ZDBkNTMxNGQ3YmVhZWRkMjNiNzUuLmIwZjBiMzFhZjBmYzc3NjlmYWU5OTkwM2Iw
MTZjYmU4MzJlNzlkMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9TaW1w
bGVMaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGlu
ZUxheW91dC5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgc3RhdGljIGJvb2wgY2FuVXNlRm9yVGV4dChj
b25zdCBSZW5kZXJUZXh0JiB0ZXh0UmVuZGVyZXIsIGNvbnN0IFNpbXBsZUZvbnREYXRhJgogCiBi
b29sIGNhblVzZUZvcihjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIGZsb3cpCiB7Ci0jaWYgIVBMQVRG
T1JNKE1BQykgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JNKEVGTCkgJiYgIVBMQVRGT1JN
KE5JWCkKKyNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0o
RUZMKQogICAgIC8vIEZJWE1FOiBOb24tbWFjIHBsYXRmb3JtcyBhcmUgaGl0dGluZyBBU1NFUlQo
cnVuLmNoYXJhY3RlcnNMZW5ndGgoKSA+PSBydW4ubGVuZ3RoKCkpCiAgICAgLy8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzMzOAogICAgIHJldHVybiBmYWxzZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>